diff --git a/custom_components/smart_irrigation/_TODO.list b/custom_components/smart_irrigation/_TODO.list index d6051d25..bf0aa0b6 100644 --- a/custom_components/smart_irrigation/_TODO.list +++ b/custom_components/smart_irrigation/_TODO.list @@ -7,8 +7,8 @@ General: source validation same as grill buddy 2. UNIT_DEGREES_X --> UnitOfTemperature.CELSIUS also do this for Smart IRRIGATION! -3. Refactor language file (move everything in one file (frontend)) to appease hassfest - +4. [CONFIG_SCHEMA] Integrations which implement 'async_setup' or 'setup' must define either 'CONFIG_SCHEMA', 'PLATFORM_SCHEMA' or 'PLATFORM_SCHEMA_BASE'. If the integration has no configuration parameters, can only be set up from platforms or can only be set up from config entries, one of the helpers cv.empty_config_schema, cv.platform_only_config_schema or cv.config_entry_only_config_schema can be used. +5. Node.js 16 actions are deprecated. Please update the following actions to use Node.js 20: actions/checkout@v3. For more information see: https://github.blog/changelog/2023-09-22-github-actions-transitioning-from-node-16-to-node-20/. Wishlist: - calculation algorithm: PyEto / PenMon / ET_calc. See: https://github.com/jeroenterheerdt/HAsmartirrigation/issues/127 - scheduler? or just use something like https://github.com/rgc99/irrigation_unlimited? \ No newline at end of file diff --git a/custom_components/smart_irrigation/const.py b/custom_components/smart_irrigation/const.py index d69a2d19..80384d83 100644 --- a/custom_components/smart_irrigation/const.py +++ b/custom_components/smart_irrigation/const.py @@ -1,14 +1,13 @@ """Store constants.""" - -VERSION = "v2024.5.1" +VERSION = "v2024.5.2" NAME = "Smart Irrigation" MANUFACTURER = "@jeroenterheerdt" DOMAIN = "smart_irrigation" CUSTOM_COMPONENTS = "custom_components" -LANGUAGE_FILES_DIR = "translations" +LANGUAGE_FILES_DIR = "frontend/localize/languages" SUPPORTED_LANGUAGES = ["de", "en", "es", "fr", "it", "nl", "no", "sk"] START_EVENT_FIRED_TODAY = "starteventfiredtoday" diff --git a/custom_components/smart_irrigation/frontend/dist/smart-irrigation.js b/custom_components/smart_irrigation/frontend/dist/smart-irrigation.js index d95c54e5..593e26a1 100644 --- a/custom_components/smart_irrigation/frontend/dist/smart-irrigation.js +++ b/custom_components/smart_irrigation/frontend/dist/smart-irrigation.js @@ -15,13 +15,13 @@ const r=window,o=r.ShadowRoot&&(void 0===r.ShadyCSS||r.ShadyCSS.nativeShadow)&&" * Copyright 2017 Google LLC * SPDX-License-Identifier: BSD-3-Clause */ -var S;k[w]=!0,k.elementProperties=new Map,k.elementStyles=[],k.shadowRootOptions={mode:"open"},null==v||v({ReactiveElement:k}),(null!==(p=m.reactiveElementVersions)&&void 0!==p?p:m.reactiveElementVersions=[]).push("1.6.2");const E=window,$=E.trustedTypes,A=$?$.createPolicy("lit-html",{createHTML:e=>e}):void 0,M="$lit$",O=`lit$${(Math.random()+"").slice(9)}$`,T="?"+O,D=`<${T}>`,H=document,x=()=>H.createComment(""),z=e=>null===e||"object"!=typeof e&&"function"!=typeof e,P=Array.isArray,N="[ \t\n\f\r]",C=/<(?:(!--|\/[^a-zA-Z])|(\/?[a-zA-Z][^>\s]*)|(\/?$))/g,j=/-->/g,L=/>/g,B=RegExp(`>|${N}(?:([^\\s"'>=/]+)(${N}*=${N}*(?:[^ \t\n\f\r"'\`<>=]|("|')|))|$)`,"g"),R=/'/g,I=/"/g,U=/^(?:script|style|textarea|title)$/i,Y=(e=>(t,...a)=>({_$litType$:e,strings:t,values:a}))(1),G=Symbol.for("lit-noChange"),V=Symbol.for("lit-nothing"),F=new WeakMap,W=H.createTreeWalker(H,129,null,!1),Z=(e,t)=>{const a=e.length-1,i=[];let n,s=2===t?"":"",r=C;for(let t=0;t"===l[0]?(r=null!=n?n:C,u=-1):void 0===l[1]?u=-2:(u=r.lastIndex-l[2].length,o=l[1],r=void 0===l[3]?B:'"'===l[3]?I:R):r===I||r===R?r=B:r===j||r===L?r=C:(r=B,n=void 0);const c=r===B&&e[t+1].startsWith("/>")?" ":"";s+=r===C?a+D:u>=0?(i.push(o),a.slice(0,u)+M+a.slice(u)+O+c):a+O+(-2===u?(i.push(void 0),t):c)}const o=s+(e[a]||"")+(2===t?"":"");if(!Array.isArray(e)||!e.hasOwnProperty("raw"))throw Error("invalid template strings array");return[void 0!==A?A.createHTML(o):o,i]};class q{constructor({strings:e,_$litType$:t},a){let i;this.parts=[];let n=0,s=0;const r=e.length-1,o=this.parts,[l,u]=Z(e,t);if(this.el=q.createElement(l,a),W.currentNode=this.el.content,2===t){const e=this.el.content,t=e.firstChild;t.remove(),e.append(...t.childNodes)}for(;null!==(i=W.nextNode())&&o.length0){i.textContent=$?$.emptyScript:"";for(let a=0;aP(e)||"function"==typeof(null==e?void 0:e[Symbol.iterator]))(e)?this.T(e):this._(e)}k(e){return this._$AA.parentNode.insertBefore(e,this._$AB)}$(e){this._$AH!==e&&(this._$AR(),this._$AH=this.k(e))}_(e){this._$AH!==V&&z(this._$AH)?this._$AA.nextSibling.data=e:this.$(H.createTextNode(e)),this._$AH=e}g(e){var t;const{values:a,_$litType$:i}=e,n="number"==typeof i?this._$AC(e):(void 0===i.el&&(i.el=q.createElement(i.h,this.options)),i);if((null===(t=this._$AH)||void 0===t?void 0:t._$AD)===n)this._$AH.v(a);else{const e=new X(n,this),t=e.u(this.options);e.v(a),this.$(t),this._$AH=e}}_$AC(e){let t=F.get(e.strings);return void 0===t&&F.set(e.strings,t=new q(e)),t}T(e){P(this._$AH)||(this._$AH=[],this._$AR());const t=this._$AH;let a,i=0;for(const n of e)i===t.length?t.push(a=new J(this.k(x()),this.k(x()),this,this.options)):a=t[i],a._$AI(n),i++;i2||""!==a[0]||""!==a[1]?(this._$AH=Array(a.length-1).fill(new String),this.strings=a):this._$AH=V}get tagName(){return this.element.tagName}get _$AU(){return this._$AM._$AU}_$AI(e,t=this,a,i){const n=this.strings;let s=!1;if(void 0===n)e=K(this,e,t,0),s=!z(e)||e!==this._$AH&&e!==G,s&&(this._$AH=e);else{const i=e;let r,o;for(e=n[0],r=0;re}):void 0,M="$lit$",T=`lit$${(Math.random()+"").slice(9)}$`,O="?"+T,z=`<${O}>`,x=document,D=()=>x.createComment(""),H=e=>null===e||"object"!=typeof e&&"function"!=typeof e,P=Array.isArray,N="[ \t\n\f\r]",C=/<(?:(!--|\/[^a-zA-Z])|(\/?[a-zA-Z][^>\s]*)|(\/?$))/g,j=/-->/g,L=/>/g,B=RegExp(`>|${N}(?:([^\\s"'>=/]+)(${N}*=${N}*(?:[^ \t\n\f\r"'\`<>=]|("|')|))|$)`,"g"),I=/'/g,R=/"/g,U=/^(?:script|style|textarea|title)$/i,Y=(e=>(t,...a)=>({_$litType$:e,strings:t,values:a}))(1),V=Symbol.for("lit-noChange"),G=Symbol.for("lit-nothing"),F=new WeakMap,W=x.createTreeWalker(x,129,null,!1),Z=(e,t)=>{const a=e.length-1,i=[];let n,s=2===t?"":"",r=C;for(let t=0;t"===l[0]?(r=null!=n?n:C,u=-1):void 0===l[1]?u=-2:(u=r.lastIndex-l[2].length,o=l[1],r=void 0===l[3]?B:'"'===l[3]?R:I):r===R||r===I?r=B:r===j||r===L?r=C:(r=B,n=void 0);const c=r===B&&e[t+1].startsWith("/>")?" ":"";s+=r===C?a+z:u>=0?(i.push(o),a.slice(0,u)+M+a.slice(u)+T+c):a+T+(-2===u?(i.push(void 0),t):c)}const o=s+(e[a]||"")+(2===t?"":"");if(!Array.isArray(e)||!e.hasOwnProperty("raw"))throw Error("invalid template strings array");return[void 0!==$?$.createHTML(o):o,i]};class q{constructor({strings:e,_$litType$:t},a){let i;this.parts=[];let n=0,s=0;const r=e.length-1,o=this.parts,[l,u]=Z(e,t);if(this.el=q.createElement(l,a),W.currentNode=this.el.content,2===t){const e=this.el.content,t=e.firstChild;t.remove(),e.append(...t.childNodes)}for(;null!==(i=W.nextNode())&&o.length0){i.textContent=A?A.emptyScript:"";for(let a=0;aP(e)||"function"==typeof(null==e?void 0:e[Symbol.iterator]))(e)?this.T(e):this._(e)}k(e){return this._$AA.parentNode.insertBefore(e,this._$AB)}$(e){this._$AH!==e&&(this._$AR(),this._$AH=this.k(e))}_(e){this._$AH!==G&&H(this._$AH)?this._$AA.nextSibling.data=e:this.$(x.createTextNode(e)),this._$AH=e}g(e){var t;const{values:a,_$litType$:i}=e,n="number"==typeof i?this._$AC(e):(void 0===i.el&&(i.el=q.createElement(i.h,this.options)),i);if((null===(t=this._$AH)||void 0===t?void 0:t._$AD)===n)this._$AH.v(a);else{const e=new X(n,this),t=e.u(this.options);e.v(a),this.$(t),this._$AH=e}}_$AC(e){let t=F.get(e.strings);return void 0===t&&F.set(e.strings,t=new q(e)),t}T(e){P(this._$AH)||(this._$AH=[],this._$AR());const t=this._$AH;let a,i=0;for(const n of e)i===t.length?t.push(a=new J(this.k(D()),this.k(D()),this,this.options)):a=t[i],a._$AI(n),i++;i2||""!==a[0]||""!==a[1]?(this._$AH=Array(a.length-1).fill(new String),this.strings=a):this._$AH=G}get tagName(){return this.element.tagName}get _$AU(){return this._$AM._$AU}_$AI(e,t=this,a,i){const n=this.strings;let s=!1;if(void 0===n)e=K(this,e,t,0),s=!H(e)||e!==this._$AH&&e!==V,s&&(this._$AH=e);else{const i=e;let r,o;for(e=n[0],r=0;r{var i,n;const s=null!==(i=null==a?void 0:a.renderBefore)&&void 0!==i?i:t;let r=s._$litPart$;if(void 0===r){const e=null!==(n=null==a?void 0:a.renderBefore)&&void 0!==n?n:null;s._$litPart$=r=new J(t.insertBefore(x(),e),e,void 0,null!=a?a:{})}return r._$AI(e),r})(t,this.renderRoot,this.renderOptions)}connectedCallback(){var e;super.connectedCallback(),null===(e=this._$Do)||void 0===e||e.setConnected(!0)}disconnectedCallback(){var e;super.disconnectedCallback(),null===(e=this._$Do)||void 0===e||e.setConnected(!1)}render(){return G}}le.finalized=!0,le._$litElement$=!0,null===(re=globalThis.litElementHydrateSupport)||void 0===re||re.call(globalThis,{LitElement:le});const ue=globalThis.litElementPolyfillSupport;null==ue||ue({LitElement:le}),(null!==(oe=globalThis.litElementVersions)&&void 0!==oe?oe:globalThis.litElementVersions=[]).push("3.3.2"); +var re,oe;class le extends k{constructor(){super(...arguments),this.renderOptions={host:this},this._$Do=void 0}createRenderRoot(){var e,t;const a=super.createRenderRoot();return null!==(e=(t=this.renderOptions).renderBefore)&&void 0!==e||(t.renderBefore=a.firstChild),a}update(e){const t=this.render();this.hasUpdated||(this.renderOptions.isConnected=this.isConnected),super.update(e),this._$Do=((e,t,a)=>{var i,n;const s=null!==(i=null==a?void 0:a.renderBefore)&&void 0!==i?i:t;let r=s._$litPart$;if(void 0===r){const e=null!==(n=null==a?void 0:a.renderBefore)&&void 0!==n?n:null;s._$litPart$=r=new J(t.insertBefore(D(),e),e,void 0,null!=a?a:{})}return r._$AI(e),r})(t,this.renderRoot,this.renderOptions)}connectedCallback(){var e;super.connectedCallback(),null===(e=this._$Do)||void 0===e||e.setConnected(!0)}disconnectedCallback(){var e;super.disconnectedCallback(),null===(e=this._$Do)||void 0===e||e.setConnected(!1)}render(){return V}}le.finalized=!0,le._$litElement$=!0,null===(re=globalThis.litElementHydrateSupport)||void 0===re||re.call(globalThis,{LitElement:le});const ue=globalThis.litElementPolyfillSupport;null==ue||ue({LitElement:le}),(null!==(oe=globalThis.litElementVersions)&&void 0!==oe?oe:globalThis.litElementVersions=[]).push("3.3.2"); /** * @license * Copyright 2017 Google LLC @@ -48,17 +48,17 @@ function me(e,t){return(({finisher:e,descriptor:t})=>(a,i)=>{var n;if(void 0===i * @license * Copyright 2021 Google LLC * SPDX-License-Identifier: BSD-3-Clause - */var ge,fe,ve;null===(ge=window.HTMLSlotElement)||void 0===ge||ge.prototype.assignedElements,function(e){e.language="language",e.system="system",e.comma_decimal="comma_decimal",e.decimal_comma="decimal_comma",e.space_comma="space_comma",e.none="none"}(fe||(fe={})),function(e){e.language="language",e.system="system",e.am_pm="12",e.twenty_four="24"}(ve||(ve={}));var be=function(e,t,a,i){i=i||{},a=null==a?{}:a;var n=new Event(t,{bubbles:void 0===i.bubbles||i.bubbles,cancelable:Boolean(i.cancelable),composed:void 0===i.composed||i.composed});return n.detail=a,e.dispatchEvent(n),n};const ye=async()=>{if(customElements.get("ha-checkbox")&&customElements.get("ha-slider"))return;await customElements.whenDefined("partial-panel-resolver");const e=document.createElement("partial-panel-resolver");e.hass={panels:[{url_path:"tmp",component_name:"config"}]},e._updateRoutes(),await e.routerOptions.routes.tmp.load(),await customElements.whenDefined("ha-panel-config");const t=document.createElement("ha-panel-config");await t.routerOptions.routes.automation.load()},_e="smart_irrigation",we="minutes",ke="hours",Se="days",Ee="imperial",$e="metric",Ae="Dewpoint",Me="Evapotranspiration",Oe="Humidity",Te="Precipitation",De="Pressure",He="Solar Radiation",xe="Temperature",ze="Windspeed",Pe="owm",Ne="sensor",Ce="static",je="pressure_type",Le="absolute",Be="relative",Re="none",Ie="source",Ue="sensorentity",Ye="static_value",Ge="unit",Ve="aggregate",Fe=["average","first","last","maximum","median","minimum","sum"],We="size",Ze="throughput",qe="duration",Ke="bucket",Xe=e=>e.callWS({type:_e+"/config"}),Je=e=>e.callWS({type:_e+"/zones"}),Qe=e=>e.callWS({type:_e+"/modules"}),et=e=>e.callWS({type:_e+"/mappings"}),tt=e=>{class t extends e{connectedCallback(){super.connectedCallback(),this.__checkSubscribed()}disconnectedCallback(){if(super.disconnectedCallback(),this.__unsubs){for(;this.__unsubs.length;){const e=this.__unsubs.pop();e instanceof Promise?e.then((e=>e())):e()}this.__unsubs=void 0}}updated(e){super.updated(e),e.has("hass")&&this.__checkSubscribed()}hassSubscribe(){return[]}__checkSubscribed(){void 0===this.__unsubs&&this.isConnected&&void 0!==this.hass&&(this.__unsubs=this.hassSubscribe())}}return n([pe({attribute:!1})],t.prototype,"hass",void 0),t};var at,it,nt,st={actions:{delete:"Lösche"},labels:{module:"Modul",no:"Nein",select:"Wähle",yes:"Ja"}},rt={general:{cards:{"automatic-duration-calculation":{header:"Automatische Berechnung der Bewässerungsdauer",description:"Die Berechnung berücksichtigt die bis zu diesem Zeitpunkt gesammelten Wetterdaten und aktualisiert den Vorrat für jede automatische Zone. Anschließend wird die Dauer basierend auf dem neuen Vorrat angepasst und die gesammelten Wetterdaten entfernt.",labels:{"auto-calc-enabled":"Automatische Berechnung der Dauer pro Zone","auto-calc-time":"Berechne um"}},"automatic-update":{errors:{"warning-update-time-on-or-after-calc-time":"Hinweis: Die automatische Aktualisierung der Wetterdaten erfolgt bei oder nach der automatischen Berechnung der Bewässerungsdauer"},header:"Automatische Aktualisierung der Wetterdaten",description:"Die Wetterdaten werden automatisch gesammelt und gespeichert. Zur Berechnung der Zonen und Bewässerungsdauer sind Wetterdaten erforderlich.",labels:{"auto-update-enabled":"Automatisches Update der Wetterdaten","auto-update-delay":"Update Verzögerung","auto-update-interval":"Update der Sensordaten alle"},options:{days:"Tage",hours:"Stunden",minutes:"Minuten"}},"automatic-clear":{header:"Automatisches Löschen der Wetterdaten",description:"Gesammelte Wetterdaten zu einem bestimmten Zeitpunkt automatisch entfernen. Damit wird sicher gestellt, dass keine Wetterdaten von vergangenen Tagen übrig bleiben. Entferne die Wetterdaten nicht vor der Berechnung und verwende diese Option nur, wenn du erwartest, dass das automatische Update Wetterdaten erfasst hat, nachdem der Tag berechnet wurde. Idealerweise sollte dieser Schnitt so spät wie möglich Tag durchgeführt werden.",labels:{"automatic-clear-enabled":"Automatisches Löschen der Wetterdaten","automatic-clear-time":"Löschen der Wetterdaten um"}}},description:"Diese Seite ist für allgemeine Einstellungen.",title:"Allgemein"},help:{title:"Hilfe",cards:{"how-to-get-help":{title:"Hilfe bekommen","first-read-the":"Lies zuerst im",wiki:"Wiki","if-you-still-need-help":"Benötigst du weiterhin Hilfe, wende dich an das","community-forum":"Community Forum","or-open-a":"oder eröffne einen","github-issue":"Github Issue","english-only":"nur Englisch"}}},mappings:{cards:{"add-mapping":{actions:{add:"Hinzufügen"},header:"Sensorgruppe hinzufügen"},mapping:{aggregates:{average:"Durchschnitt",first:"Erster",last:"Letzter",maximum:"Maximum",median:"Median",minimum:"Minimum",sum:"Summe"},errors:{"cannot-delete-mapping-because-zones-use-it":"Diese Sensorgruppe kann nicht entfernt werden, da sie von mindestens einer Zone verwendet wird."},items:{dewpoint:"Taupunkt",evapotranspiration:"Verdunstung",humidity:"Feuchtigkeit","maximum temperature":"Maximum-Temperatur","minimum temperature":"Minimum-Temperatur",precipitation:"Gesamtniederschlag",pressure:"Luftdruck","solar radiation":"Sonnenstrahlung",temperature:"Temperatur",windspeed:"Windgeschwindigkeit"},pressure_types:{absolute:"absolut",relative:"relativ"},"pressure-type":"Der Luftdruck ist","sensor-aggregate-of-sensor-values-to-calculate":"des Sensors für die Berechnung.","sensor-aggregate-use-the":"Nutze den/die/das","sensor-entity":"Sensor Entität",static_value:"Wert","input-units":"Sensor Werte in",source:"Quelle",sources:{none:"Keine",openweathermap:"OpenWeatherMap",sensor:"Sensor",static:"Fester Wert"}}},description:"Füge eine oder mehrere Sensorgruppen hinzu, die Wetterdaten von OpenWeatherMap, Sensoren oder einer Kombination daraus abrufen. Jede Sensorgruppe kann für eine oder mehrere Zonen verwendet werden",labels:{"mapping-name":"Name"},no_items:"Es ist noch keine Sensorgruppe angelegt.",title:"Sensorgruppen"},modules:{cards:{"add-module":{actions:{add:"Hinzufügen"},header:"Modul hinzufügen"},module:{errors:{"cannot-delete-module-because-zones-use-it":"Dieses Modul kann nicht entfernt werden, da es von mindestens einer Zone verwendet wird."},labels:{configuration:"Konfiguration",required:"Feld ist erforderlich"},"translated-options":{DontEstimate:"Nicht berechnen",EstimateFromSunHours:"Basierend auf den Sonnenstunden",EstimateFromTemp:"Basierend auf der Temperatur",EstimateFromSunHoursAndTemperature:"Basierend auf dem Durchschnitt von Sonnenstunden und Temperatur"}}},description:"Füge ein oder mehrere Module hinzu. Module berechnen die Bewässerungsdauer. Jedes Modul hat seine eigene Konfiguration und kann zur Berechnung der Bewässerungsdauer für eine oder mehrere Zonen verwendet werden.",no_items:"Es ist noch kein Module angelegt.",title:"Module"},zones:{actions:{add:"Hinzufügen",calculate:"Bewässerungsdauer berechnen.",information:"Information",update:"Wetterdaten aktualisieren.","reset-bucket":"Vorrat zurücksetzen"},cards:{"add-zone":{actions:{add:"Hinzufügen"},header:"Zone hinzufügen"},"zone-actions":{actions:{"calculate-all":"Alle Zonen berechnen","update-all":"Alle Zonen aktualisieren","reset-all-buckets":"Alle Vorräte zurücksetzen","clear-all-weatherdata":"Alle Wetterdaten löschen"},header:"Aktionen für alle Zonen"}},description:"Füge eine oder mehrere Zonen hinzu. Die Bewässerungsdauer wird pro Zone, abhängig von Größe, Durchsatz, Status, Modul und Sensorgruppe berechnet.",labels:{bucket:"Vorrat",duration:"Dauer","lead-time":"Vorlaufzeit",mapping:"Sensorgruppe","maximum-duration":"Maximale Dauer",multiplier:"Multiplikator",name:"Name",size:"Größe",state:"Berechnung",states:{automatic:"Automatisch",disabled:"Aus",manual:"Manuell"},throughput:"Durchfluss","maximum-bucket":"Maximaler Vorrat",last_calculated:"Zuletzt berechnet","data-last-updated":"Daten zuletzt aktualisiert","data-number-of-data-points":"Anzahl der Messungen"},no_items:"Es ist noch keine Zone vorhanden.",title:"Zonen"}},ot="Smart Irrigation",lt={common:st,panels:rt,title:ot},ut=Object.freeze({__proto__:null,common:st,panels:rt,title:ot,default:lt}),dt={actions:{delete:"Delete"},labels:{module:"Module",no:"No",select:"Select",yes:"Yes"}},ct={general:{cards:{"automatic-duration-calculation":{header:"Automatic duration calculation",description:"Calculation takes collected weatherdata up to that point and updates the bucket for each automatic zone. Then, the duration is adjusted based on the new bucket value and the collected weatherdata is removed.",labels:{"auto-calc-enabled":"Automatically calculate zone durations","auto-calc-time":"Calculate at"}},"automatic-update":{errors:{"warning-update-time-on-or-after-calc-time":"Warning: weatherdata update time on or after calculation time"},header:"Automatic weather data update",description:"Collect and store weather data automatically. Weather data is required to calculate zone buckets and durations.",labels:{"auto-update-enabled":"Automatically update weather data","auto-update-delay":"Update delay","auto-update-interval":"Update sensor data every"},options:{days:"days",hours:"hours",minutes:"minutes"}},"automatic-clear":{header:"Automatic weather data pruning",description:"Automatically remove collected weatherdata at a configured time. Use this to make sure that there is no left over weatherdata from previous days. Don't remove the weatherdata before you calculate and only use this option if you expect the automatic update to collect weatherdata after you calculated for the day. Ideally, you want to prune as late in the day as possible.",labels:{"automatic-clear-enabled":"Automatically clear collected weather data","automatic-clear-time":"Clear weather data at"}}},description:"This page provides global settings.",title:"General"},help:{title:"Help",cards:{"how-to-get-help":{title:"How to get help","first-read-the":"First, read the",wiki:"Wiki","if-you-still-need-help":"If you still need help reach out on the","community-forum":"Community forum","or-open-a":"or open a","github-issue":"Github Issue","english-only":"English only"}}},mappings:{cards:{"add-mapping":{actions:{add:"Add sensor group"},header:"Add sensor groups"},mapping:{aggregates:{average:"Average",first:"First",last:"Last",maximum:"Maximum",median:"Median",minimum:"Minimum",sum:"Sum"},errors:{"cannot-delete-mapping-because-zones-use-it":"You cannot delete this sensor group because there is at least one zone using it."},items:{dewpoint:"Dewpoint",evapotranspiration:"Evapotranspiration",humidity:"Humidity","maximum temperature":"Maximum temperature","minimum temperature":"Minimum temperature",precipitation:"Total precipitation",pressure:"Pressure","solar radiation":"Solar radiation",temperature:"Temperature",windspeed:"Wind speed"},pressure_types:{absolute:"absolute",relative:"relative"},"pressure-type":"Pressure is","sensor-aggregate-of-sensor-values-to-calculate":"of sensor values to calculate duration","sensor-aggregate-use-the":"Use the","sensor-entity":"Sensor entity",static_value:"Value","input-units":"Input provides values in",source:"Source",sources:{none:"None",openweathermap:"OpenWeatherMap",sensor:"Sensor",static:"Static value"}}},description:"Add one or more sensor groups that retrieve weather data from OpenWeatherMap, from sensors or a combination of these. You can map each sensor group to one or more zones",labels:{"mapping-name":"Name"},no_items:"There are no sensor group defined yet.",title:"Sensor Groups"},modules:{cards:{"add-module":{actions:{add:"Add module"},header:"Add module"},module:{errors:{"cannot-delete-module-because-zones-use-it":"You cannot delete this module because there is at least one zone using it."},labels:{configuration:"Configuration",required:"indicates a required field"},"translated-options":{DontEstimate:"Do not estimate",EstimateFromSunHours:"Estimate from sun hours",EstimateFromTemp:"Estimate from temperature",EstimateFromSunHoursAndTemperature:"Estimate from average of sun hours and temperature"}}},description:"Add one or more modules that calculate irrigation duration. Each module comes with its own configuration and can be used to calculate duration for one or more zones.",no_items:"There are no modules defined yet.",title:"Modules"},zones:{actions:{add:"Add",calculate:"Calculate",information:"Information",update:"Update","reset-bucket":"Reset bucket"},cards:{"add-zone":{actions:{add:"Add zone"},header:"Add zone"},"zone-actions":{actions:{"calculate-all":"Calculate all zones","update-all":"Update all zones","reset-all-buckets":"Reset all buckets","clear-all-weatherdata":"Clear all weatherdata"},header:"Actions on all zones"}},description:"Specify one or more irrigation zones here. The irrigation duration is calculated per zone, depending on size, throughput, state, module and sensor group.",labels:{bucket:"Bucket",duration:"Duration","lead-time":"Lead time",mapping:"Sensor Group","maximum-duration":"Maximum duration",multiplier:"Multiplier",name:"Name",size:"Size",state:"State",states:{automatic:"Automatic",disabled:"Disabled",manual:"Manual"},throughput:"Throughput","maximum-bucket":"Maximum bucket",last_calculated:"Last calculated","data-last-updated":"Data last updated","data-number-of-data-points":"Number of data points"},no_items:"There are no zones defined yet.",title:"Zones"}},ht="Smart Irrigation",pt={common:dt,panels:ct,title:ht},mt=Object.freeze({__proto__:null,common:dt,panels:ct,title:ht,default:pt}),gt={actions:{delete:"Eliminar"},labels:{module:"Módulo",no:"No",select:"Seleccionar",yes:"Sí"}},ft={general:{cards:{"automatic-duration-calculation":{header:"Cálculo automático de la duración",labels:{"auto-calc-enabled":"Cálculo automático de la duración de las zonas","auto-calc-time":"Calcular en"}},"automatic-update":{errors:{"warning-update-time-on-or-after-calc-time":"Advertencia: la hora de actualización de los datos meteorológicos es igual o posterior a la hora de cálculo"},header:"Actualización automática de los datos meteorológicos",labels:{"auto-update-enabled":"Actualizar automáticamente los datos meteorológicos","auto-update-first-update":"(Primer) Actualización a las","auto-update-interval":"Actualizar datos del sensor cada"},options:{days:"días",hours:"horas",minutes:"minutos"}}},description:"Esta página provee configuraciones globales.",title:"General"},help:{title:"Ayuda",cards:{"how-to-get-help":{title:"Cómo obtener ayuda","first-read-the":"Primero lee la",wiki:"Wiki","if-you-still-need-help":"Si aún necesitas ayuda, puedes:","community-forum":"Comunidad/Foro","or-open-a":"o abrir un","github-issue":"Github Issue","english-only":"sólo en inglés"}}},mappings:{cards:{"add-mapping":{actions:{add:"Añadir grupo de sensores"},header:"Añadir grupos de sensores"},mapping:{aggregates:{average:"Promedio",first:"Primero",last:"Último",maximum:"Máximo",median:"Mediana",minimum:"Mínimo",sum:"Suma"},errors:{"cannot-delete-mapping-because-zones-use-it":"No puedes eliminar este grupo de sensores porque hay al menos una zona que lo está usando."},items:{dewpoint:"Punto de rocío",evapotranspiration:"Evapotranspiración",humidity:"Humedad","maximum temperature":"Temperatura máxima","minimum temperature":"Temperatura mínima",precipitation:"Precipitación total",pressure:"Presión","solar radiation":"Radiación solar",temperature:"Temperatura",windspeed:"Velocidad del viento"},"sensor-aggregate-of-sensor-values-to-calculate":"de los valores de los sensores para calcular la duración","sensor-aggregate-use-the":"Usar la","sensor-entity":"Entidad de sensor",static_value:"Valor estático","input-units":"Unidades de entrada",source:"Fuente",sources:{none:"Ninguno",openweathermap:"OpenWeatherMap",sensor:"Sensor",static:"Valor estático"}}},description:"Añada uno o más grupos de sensores que recuperen datos meteorológicos de OpenWeatherMap, de sensores o de una combinación de éstos. Puede asignar cada grupo de sensores a una o más zonas",labels:{"mapping-name":"Nombre del grupo de sensores"},no_items:"Aún no hay grupos de sensores definidos.",title:"Grupos de sensores"},modules:{cards:{"add-module":{actions:{add:"Añadir módulo"},header:"Añadir módulo"},module:{errors:{"cannot-delete-module-because-zones-use-it":"No puedes eliminar este módulo porque hay al menos una zona que lo está usando."},labels:{configuration:"Configuración",required:"Requerido"},"translated-options":{DontEstimate:"No estimar",EstimateFromSunHours:"Estimar desde horas de sol",EstimateFromTemp:"Estimar desde temperatura"}}},description:"Añada uno o varios módulos que calculen la duración del riego. Cada módulo tiene su propia configuración y puede utilizarse para calcular la duración de una o varias zonas.",no_items:"Aún no hay módulos definidos.",title:"Módulos"},zones:{actions:{add:"Añadir",calculate:"Calcular",information:"Información",update:"Actualizar","reset-bucket":"Resetear cubo"},cards:{"add-zone":{actions:{add:"Añadir zona"},header:"Añadir zona"},"zone-actions":{actions:{"calculate-all":"Calcular todas las zonas","update-all":"Actualizar todas las zonas","reset-all-buckets":"Resetear todos los cubos"},header:"Acciones en todas las zonas"}},description:"Especifique aquí una o varias zonas de riego. La duración del riego se calcula por zona, en función del tamaño, el rendimiento, el estado, el módulo y el grupo de sensores.",labels:{bucket:"Cubo",duration:"Duración","lead-time":"Tiempo de espera",mapping:"Grupo de sensores","maximum-duration":"Duración máxima",multiplier:"Multiplicador",name:"Nombre",size:"Tamaño",state:"Estado",states:{automatic:"Automático",disabled:"Desactivado",manual:"Manual"},throughput:"Rendimiento","maximum-bucket":"Cubo máximo"},no_items:"Aún no hay zonas definidas.",title:"Zonas"}},vt="Smart Irrigation",bt={common:gt,panels:ft,title:vt},yt=Object.freeze({__proto__:null,common:gt,panels:ft,title:vt,default:bt}),_t={actions:{delete:"Suppression"},labels:{module:"Module",no:"Non",select:"Sélectionner",yes:"Oui"}},wt={general:{cards:{"automatic-duration-calculation":{header:"Calcul automatique de la durée",labels:{"auto-calc-enabled":"Calcule automatiquement la durée par zone","auto-calc-time":"Calcule à"},description:"Le calcul prend en compte les données météo jusqu'à ce point et met à jour le seau (bucket) pour chaque zone automatique. Ensuite, la durée est ajustée par la nouvelle valeur de seau (bucket) et les données météo sont supprimées."},"automatic-update":{errors:{"warning-update-time-on-or-after-calc-time":"Attention: mise à jour des données météo au moment du, ou après le, calcul"},header:"Mise à jour automatique des données météo",labels:{"auto-update-enabled":"Met à jour les données météo automatiquement","auto-update-first-update":"(Première) Mise à jour à","auto-update-interval":"Mettre à jour les données des capteurs toutes les","auto-update-delay":"Délai de mise à jour"},options:{days:"jours",hours:"heures",minutes:"minutes"},description:"Récupère et stocke les données météo automatiquement. Des données météo sont nécessaires pour calculer les seaux (buckets) par zone et les durées."},"automatic-clear":{header:"Délestage automatique des données météo",description:"Suppression automatique des données météo collectées à une heure données. Utilisez ceci pour être sûr qu'il n'y ait plus de restes des données météo des jours précédents. Ne supprimez pas les données météo avant le calcul et n'utilisez cette option que si vous vous attendez à ce que les données météo soient récupérées après le calcul du jour. Idéalement, vous voudrez \"élaguer\" les données les plus tard possible dans la journée.",labels:{"automatic-clear-enabled":"Suppression automatique des données météo collectées","automatic-clear-time":"Supprimer les données météo à"}}},description:"Cette page fournit les réglages globaux.",title:"Général"},help:{title:"Aide",cards:{"how-to-get-help":{title:"Comment obtenir de l'aide","first-read-the":"Premièrement, lisez ",wiki:"Wiki","if-you-still-need-help":"Si vous avez toujours besoin d'aide, adressez vous sur le","community-forum":"forum communautaire","or-open-a":"ou ouvrez un","github-issue":"problème Github","english-only":"en Anglais uniquement"}}},mappings:{cards:{"add-mapping":{actions:{add:"Ajouter un groupe de capteurs"},header:"Ajouter des groupes de capteurs"},mapping:{aggregates:{average:"Moyenne",first:"Premier",last:"Dernier",maximum:"Maximum",median:"Médian",minimum:"Minimum",sum:"Somme"},errors:{"cannot-delete-mapping-because-zones-use-it":"Vous ne pouvez pas supprimer ce groupe de capteurs car au moins une zone l'utilise."},items:{dewpoint:"Point de rosée",evapotranspiration:"Évapotranspiration",humidity:"Humidité","maximum temperature":"Température maximale","minimum temperature":"Température minimale",precipitation:"Précipitation totale",pressure:"Pression","solar radiation":"Rayonnement solaire",temperature:"Température",windspeed:"Vitesse du vent"},"sensor-aggregate-of-sensor-values-to-calculate":"des valeurs des capteurs pour calculer la durée","sensor-aggregate-use-the":"Utiliser les","sensor-entity":"Entité capteur",static_value:"Valeur","input-units":"L'entité fournit des entrées en",source:"Source",sources:{none:"Aucun",openweathermap:"OpenWeatherMap",sensor:"Capteur",static:"Valeur statique"},pressure_types:{relative:"relative",absolute:"absolue"},"pressure-type":"La pression est","sensor-units":"Le capteur fournit les valeurs en"}},description:"Ajouter un ou plusieurs groupes de capteurs qui récupèrent les données météo de OpenWeatherMap, de capteurs locaux ou d'une combinaison de tous ceux-ci. Vous pouvez associer chaque groupe de capteurs avec une ou plusieurs zones",labels:{"mapping-name":"Nom"},no_items:"Il n'y a pas encore de groupe de capteurs définis.",title:"Groupes de capteurs"},modules:{cards:{"add-module":{actions:{add:"Ajouter un module"},header:"Ajout d'un module"},module:{errors:{"cannot-delete-module-because-zones-use-it":"Vous ne pouvez pas supprimer ce module car au moins une zone l'utilise."},labels:{configuration:"Configuration",required:"indique un champ requis"},"translated-options":{DontEstimate:"Ne fait pas d'estimation",EstimateFromSunHours:"Estimation à partir des heures d'ensoleillement",EstimateFromTemp:"Estimation à partir de la température"}}},description:"Ajouter un ou plusieurs modules qui calcule la durée d'irrigation. Chaque module vient avec sa propre configuration et peut être utilisé pour calculer la durée d'irrigation d'une ou plusieurs zones.",no_items:"Il n'y a aucun module défini pour l'instant.",title:"Modules"},zones:{actions:{add:"Ajouter",calculate:"Calculer",information:"Information",update:"Mise à jour","reset-bucket":"Mise à zéro du seau (bucket)"},cards:{"add-zone":{actions:{add:"Ajouter une zone"},header:"Ajout d'une zone"},"zone-actions":{actions:{"calculate-all":"Calculer pour toutes les zones","update-all":"Mise à jour de toutes les zones","reset-all-buckets":"Mise à zéro de tous les seaux (buckets)","clear-all-weatherdata":"Mise à zéro de toutes les données météo"},header:"Actions sur toutes les zones"}},description:"Spécifiez une ou plusieurs zones d'irrigation ici. La durée d'irrigation est calculée par zone, en fonction de la taille, du débit, état, module et groupe de capteurs.",labels:{bucket:"Seau",duration:"Durée","lead-time":"Délai",mapping:"Groupe de capteurs","maximum-duration":"Durée maximale",multiplier:"Multiplicateur",name:"Nom",size:"Taille",state:"État",states:{automatic:"Automatique",disabled:"Désactivé",manual:"Manuel"},throughput:"Débit","maximum-bucket":"Seau (bucket) maximum",last_calculated:"Dernier calcul","data-last-updated":"Dernière mise à jour","data-number-of-data-points":"Nombre de points de données"},no_items:"Il n'y a pas encore de zone définie.",title:"Zones"}},kt="Smart Irrigation",St={common:_t,panels:wt,title:kt},Et=Object.freeze({__proto__:null,common:_t,panels:wt,title:kt,default:St}),$t={actions:{delete:"Cancella"},labels:{module:"Modulo",no:"No",select:"Seleziona",yes:"Si"}},At={general:{cards:{"automatic-duration-calculation":{header:"Calcolo automatico della durata",description:"Il calcolo prende i dati meteorologici raccolti fino a quel momento e aggiorna il bucket per ciascuna zona automatica. Quindi, la durata viene regolata in base al nuovo valore del segmento e i dati meteorologici raccolti vengono rimossi.",labels:{"auto-calc-enabled":"Calcola automaticamente la durata delle zone","auto-calc-time":"Calcola a"}},"automatic-update":{errors:{"warning-update-time-on-or-after-calc-time":"Attenzione: ora di aggiornamento dei dati meteorologici in corrispondenza o dopo l'ora di calcolo"},header:"Aggiornamento automatico dei dati meteorologici",description:"Raccogli e archivia automaticamente i dati meteorologici. I dati meteorologici sono necessari per calcolare gli intervalli e le durate delle zone.",labels:{"auto-update-enabled":"Aggiorna automaticamente i dati meteorologici","auto-update-first-update":"(Primo) aggiornamento alle","auto-update-interval":"Aggiorna i dati del sensore ogni"},options:{days:"giorni",hours:"ore",minutes:"minuti"}},"automatic-clear":{header:"Eliminazione automatica dei dati meteo",description:"Rimuovi automaticamente i dati meteorologici raccolti all'orario configurato. Usalo per assicurarti che non siano rimasti dati meteorologici dei giorni precedenti. Non rimuovere i dati meteo prima del calcolo e utilizza questa opzione solo se prevedi che l'aggiornamento automatico raccolga i dati meteo dopo aver calcolato per la giornata. Idealmente, dovresti potare il più tardi possibile nella giornata.",labels:{"automatic-clear-enabled":"Cancella automaticamente i dati meteorologici raccolti","automatic-clear-time":"Cancella dati meteo a"}}},description:"Questa pagina fornisce le impostazioni globali.",title:"Generale"},help:{title:"Aiuto",cards:{"how-to-get-help":{title:"Come ottenere aiuto","first-read-the":"Per prima cosa, leggi il",wiki:"Wiki","if-you-still-need-help":"Se hai ancora bisogno di aiuto, contatta il","community-forum":"Forum della Comunità","or-open-a":"oppure apri un","github-issue":"Problema su Github","english-only":"soltanto in Inglese"}}},mappings:{cards:{"add-mapping":{actions:{add:"Aggiungi gruppo di sensori"},header:"Aggiungi gruppo di sensori"},mapping:{aggregates:{average:"Media",first:"Primo",last:"Ultimo",maximum:"Massimo",median:"Mediana",minimum:"Minimo",sum:"Somma"},errors:{"cannot-delete-mapping-because-zones-use-it":"Non è possibile eliminare questo gruppo di sensori perché almeno una zona lo utilizza."},items:{dewpoint:"Punto di rugiada",evapotranspiration:"Evapotraspirazione",humidity:"Umidità","maximum temperature":"Temperatura massima","minimum temperature":"Temperatura minima",precipitation:"Precipitazione",pressure:"Pressione","solar radiation":"Irradiamento solare",temperature:"Temperatura",windspeed:"Velocità del vento"},pressure_types:{absolute:"assoluta",relative:"relativa"},"pressure-type":"La pressione è","sensor-aggregate-of-sensor-values-to-calculate":"dei valori del sensore per calcolare la durata","sensor-aggregate-use-the":"Usa il","sensor-entity":"Entità sensore",static_value:"Valore","input-units":"L'input fornisce valori in",source:"Fonte",sources:{none:"Nessuna",openweathermap:"OpenWeatherMap",sensor:"Sensore",static:"Valore statico"}}},description:"Aggiungi uno o più gruppi di sensori che recuperano i dati meteorologici da OpenWeatherMap, da sensori o da una combinazione di questi. È possibile mappare ciascun gruppo di sensori su una o più zone",labels:{"mapping-name":"Nome"},no_items:"Non è ancora stato definito alcun gruppo di sensori.",title:"Gruppi di sensori"},modules:{cards:{"add-module":{actions:{add:"Aggiungi modulo"},header:"Aggiungi modulo"},module:{errors:{"cannot-delete-module-because-zones-use-it":"Non puoi eliminare questo modulo perché almeno una zona lo utilizza."},labels:{configuration:"Configurazione",required:"indica un campo richiesto"},"translated-options":{DontEstimate:"Non stimare",EstimateFromSunHours:"Stima dalle ore solari",EstimateFromTemp:"Stima dalla temperatura",EstimateFromSunHoursAndTemperature:"Stima dalla media delle ore di sole e della temperatura"}}},description:"Aggiungi uno o più moduli che calcolano la durata dell'irrigazione. Ogni modulo viene fornito con la propria configurazione e può essere utilizzato per calcolare la durata di una o più zone.",no_items:"Non ci sono ancora moduli definiti.",title:"Moduli"},zones:{actions:{add:"Aggiungi",calculate:"Calcola",information:"Informazioni",update:"Aggiorna","reset-bucket":"Reimposta il secchio"},cards:{"add-zone":{actions:{add:"Aggiungi zona"},header:"Aggiungi zona"},"zone-actions":{actions:{"calculate-all":"Calcola tutte le zone","update-all":"Aggiorna tutte le zone","reset-all-buckets":"Reimposta tutte le zone","clear-all-weatherdata":"Cancella tutti i dati meteo"},header:"Azioni su tutte le zone"}},description:"Specificare qui una o più zone di irrigazione. La durata dell'irrigazione viene calcolata per zona, a seconda delle dimensioni, della produttività, dello stato, del modulo e del gruppo di sensori.",labels:{bucket:"Secchio",duration:"Durata","lead-time":"Tempi di esecuzione",mapping:"Gruppo di sensori","maximum-duration":"Durata massima",multiplier:"Moltiplicatore",name:"Nome",size:"Misura",state:"Stato",states:{automatic:"Automatico",disabled:"Disabilitato",manual:"Manuale"},throughput:"Portata","maximum-bucket":"Secchio massimo",last_calculated:"Ultimo calcolo","data-last-updated":"Ultimo aggiornamento dei dati","data-number-of-data-points":"Numero di dati"},no_items:"Non ci sono ancora zone definite.",title:"Zone"}},Mt="Irrigazione Intelligente",Ot={common:$t,panels:At,title:Mt},Tt=Object.freeze({__proto__:null,common:$t,panels:At,title:Mt,default:Ot}),Dt={actions:{delete:"Verwijderen"},labels:{module:"Module",no:"Nee",select:"Kies",yes:"Ja"}},Ht={general:{cards:{"automatic-duration-calculation":{header:"Automatische berekening van irrigatietijd",description:"Bij het berekenen wordt de verzamelde weersinformatie gebruikt om the voorraad en irrigatieduur per zone aan te passen. Daarna wordt de verzamelde weersinformatie verwijderd.",labels:{"auto-calc-enabled":"Automatisch irrigatietijd berekening voor elke zone","auto-calc-time":"Berekenen op"}},"automatic-update":{errors:{"warning-update-time-on-or-after-calc-time":"Let op: het automatisch bijwerken van weersinformatie vind plaats op of na de automatische berekening van irrigatietijd"},header:"Automatisch bijwerken van weersinformatie",description:"Verzamel en bewaar weersinformatie automatisch. Weersinformatie is nodig om vorraad en irrigatieduur per zone te berekenen.",labels:{"auto-update-enabled":"Automatisch weersinformatie bijwerken","auto-update-delay":"Vertraging","auto-update-interval":"Sensor data bijwerken elke"},options:{days:"dagen",hours:"uren",minutes:"minuten"}},"automatic-clear":{header:"Automatisch weersinformatie opruimen",description:"Verwijder weersinformatie op het ingestelde moment. Dit zorgt ervoor dat er geen weersinformatie van de vorige dag gebruikt kan worden voor berekeningen. Let op: verwijder geen weersinformatie voordat de berekening heeft plaatsgevonden. Gebruik deze optie als je verwacht dat er weersinformatie zal worden verzameld nadat de berekeningen voor de dag gedaan zijn. Verwijder weersinformatie zo laat mogelijk op de dag.",labels:{"automatic-clear-enabled":"Automatisch weersinformatie verwijderen","automatic-clear-time":"Verwijder weersinformatie om"}}},description:"Dit zijn de algemene instellingen.",title:"Algemeen"},help:{title:"Hulp",cards:{"how-to-get-help":{title:"Hulp vragen","first-read-the":"Allereerst, lees de",wiki:"Wiki","if-you-still-need-help":"Als je hierna nog steeds hulp nodig hebt, laat een bericht achter op het","community-forum":"Community forum","or-open-a":"of open een","github-issue":"Github Issue","english-only":"alleen Engels"}}},mappings:{cards:{"add-mapping":{actions:{add:"Toevoegen"},header:"Voeg sensorgroep toe"},mapping:{aggregates:{average:"Gemiddelde",first:"Eerste",last:"Laatste",maximum:"Maximum",median:"Mediaan",minimum:"Minimum",sum:"Totaal"},errors:{"cannot-delete-mapping-because-zones-use-it":"Deze sensorgroep kan niet worden verwijderd omdat er minimaal een zone gebruik van maakt."},items:{dewpoint:"Dauwpunt",evapotranspiration:"Verdamping",humidity:"Vochtigheid","maximum temperature":"Maximum temperatuur","minimum temperature":"Minimum temperatuur",precipitation:"Totale neerslag",pressure:"Druk","solar radiation":"Zonnestraling",temperature:"Temperatuur",windspeed:"Wind snelheid"},pressure_types:{absolute:"absoluut",relative:"relatief"},"pressure-type":"Druk is","sensor-aggregate-of-sensor-values-to-calculate":"van de sensor waardes om irrigatietijd te berekenen","sensor-aggregate-use-the":"Gebruik de/het","sensor-entity":"Sensor entiteit","input-units":"Invoer geeft waardes in",static_value:"Waarde",source:"Bron",sources:{none:"Geen",openweathermap:"OpenWeatherMap",sensor:"Sensor",static:"Vaste waarde"}}},description:"Voeg een of meer sensorgroepen toe die weergegevens ophalen van OpenWeatherMap, van sensoren of een combinatie. Elke sensorgroep kan worden gebruikt voor een of meerdere zones",labels:{"mapping-name":"Name"},no_items:"Er zijn nog geen sensorgroepen.",title:"Sensorgroepen"},modules:{cards:{"add-module":{actions:{add:"Toevoegen"},header:"Voeg module toe"},module:{errors:{"cannot-delete-module-because-zones-use-it":"Deze module kan niet worden verwijderd omdat er minimaal een zone gebruik van maakt."},labels:{configuration:"Instellingen",required:"verplicht veld"},"translated-options":{DontEstimate:"Niet berekenen",EstimateFromSunHours:"Gebaseerd op zon uren",EstimateFromTemp:"Gebaseerd op temperatuur"}}},description:"Voeg een of meerdere modules toe. Modules berekenen irrigatietijd. Elke module heeft zijn eigen configuratie and kan worden gebruikt voor het berekening van irrigatietijd voor een of meerdere zones.",no_items:"Er zijn nog geen modules.",title:"Modules"},zones:{actions:{add:"Toevoegen",calculate:"Bereken",information:"Informatie",update:"Bijwerken","reset-bucket":"Leeg voorraad"},cards:{"add-zone":{actions:{add:"Toevoegen"},header:"Voeg zone toe"},"zone-actions":{actions:{"calculate-all":"Bereken alle zones","update-all":"Werk alle zone data bij","reset-all-buckets":"Leeg alle voorraden","clear-all-weatherdata":"Verwijder alle weersinformatie"},header:"Acties voor alle zones"}},description:"Voeg een of meerdere zones toe. Per zone wordt de irrigatietijd berekend, afhankelijk van de afmeting, doorvoer, status, module en sensorgroep.",labels:{bucket:"Voorraad",duration:"Irrigatieduur","lead-time":"Aanlooptijd",mapping:"Sensorgroep","maximum-duration":"Maximale duur",multiplier:"Vermenigvuldiger",name:"Naam",size:"Afmeting",state:"Status",states:{automatic:"Automatisch",disabled:"Uit",manual:"Manueel"},throughput:"Doorvoer","maximum-bucket":"Maximale voorraad",last_calculated:"Berekend op","data-last-updated":"Bijgewerkt op","data-number-of-data-points":"Aantal datapunten"},no_items:"Er zijn nog geen zones.",title:"Zones"}},xt="Smart Irrigation",zt={common:Dt,panels:Ht,title:xt},Pt=Object.freeze({__proto__:null,common:Dt,panels:Ht,title:xt,default:zt}),Nt={actions:{delete:"Slett"},labels:{module:"Modul",no:"Nei",select:"Velg",yes:"Ja"}},Ct={general:{cards:{"automatic-duration-calculation":{header:"Automatisk varighetsberegning",labels:{"auto-calc-enabled":"Beregn sonevarigheter automatisk","auto-calc-time":"Beregn ved"}},"automatic-update":{errors:{"warning-update-time-on-or-after-calc-time":"Advarsel: Oppdateringstidspunkt for værdata på eller etter beregningstidspunktet"},header:"Automatisk oppdatering av værdata",labels:{"auto-update-enabled":"Oppdater værdata automatisk","auto-update-first-update":"(Første) Oppdatering kl","auto-update-interval":"Oppdater sensordata hvert"},options:{days:"dager",hours:"timer",minutes:"minutter"}}},description:"Denne siden gir globale innstillinger.",title:"Generelt"},help:{title:"Hjelp",cards:{"how-to-get-help":{title:"Hvordan få hjelp","first-read-the":"Først, les",wiki:"Wikien","if-you-still-need-help":"Hvis du fremdeles trenger hjelp, ta kontakt på","community-forum":"Fellesskapsforumet","or-open-a":"eller åpne en","github-issue":"Github-sak","english-only":"Kun på engelsk"}}},mappings:{cards:{"add-mapping":{actions:{add:"Legg til sensorguppe"},header:"Legg til sensorgupper"},mapping:{aggregates:{average:"Gjennomsnitt",first:"Første",last:"Siste",maximum:"Maksimum",median:"Median",minimum:"Minimum",sum:"Sum"},errors:{"cannot-delete-mapping-because-zones-use-it":"Du kan ikke slette denne sensorguppen fordi minst én sone bruker den."},items:{dewpoint:"Duggpunkt",evapotranspiration:"Evapotranspirasjon",humidity:"Luftfuktighet","maximum temperature":"Maksimumstemperatur","minimum temperature":"Minimumstemperatur",precipitation:"Total nedbør",pressure:"Trykk","solar radiation":"Solstråling",temperature:"Temperatur",windspeed:"Vindhastighet"},"sensor-aggregate-of-sensor-values-to-calculate":"av sensordata for å beregne varighet","sensor-aggregate-use-the":"Bruk","sensor-entity":"Sensorenhet",static_value:"Verdi","input-units":"Inndata gir verdier i",source:"Kilde",sources:{none:"Ingen",openweathermap:"OpenWeatherMap",sensor:"Sensor",static:"Statisk verdi"}}},description:"Legg til en eller flere sensorgupper som henter værdata fra OpenWeatherMap, fra sensorer eller en kombinasjon av disse. Du kan tilordne hver sensorguppe til en eller flere soner",labels:{"mapping-name":"Navn"},no_items:"Det er ingen definerte sensorgupper ennå.",title:"Sensorgupper"},modules:{cards:{"add-module":{actions:{add:"Legg til modul"},header:"Legg til modul"},module:{errors:{"cannot-delete-module-because-zones-use-it":"Du kan ikke slette denne modulen fordi minst én sone bruker den."},labels:{configuration:"Konfigurasjon",required:"indikerer et obligatorisk felt"},"translated-options":{DontEstimate:"Ikke beregn",EstimateFromSunHours:"Beregn fra soltimer",EstimateFromTemp:"Beregn fra temperatur"}}},description:"Legg til en eller flere moduler som beregner vanningsvarighet. Hver modul har sin egen konfigurasjon og kan brukes til å beregne varighet for en eller flere soner.",no_items:"Det er ingen definerte moduler ennå.",title:"Moduler"},zones:{actions:{add:"Legg til",calculate:"Beregn",information:"Informasjon",update:"Oppdater","reset-bucket":"Nullstill bøtte"},cards:{"add-zone":{actions:{add:"Legg til sone"},header:"Legg til sone"},"zone-actions":{actions:{"calculate-all":"Beregn alle soner","update-all":"Oppdater alle soner","reset-all-buckets":"Nullstill alle bøtter"},header:"Handlinger på alle soner"}},description:"Spesifiser en eller flere vanningssoner her. Vanningens varighet beregnes per sone, avhengig av størrelse, gjennomstrømning, tilstand, modul og sensorguppe.",labels:{bucket:"Bøtte",duration:"Varighet","lead-time":"Ledetid",mapping:"Sensorguppe","maximum-duration":"Maksimal varighet",multiplier:"Multiplikator",name:"Navn",size:"Størrelse",state:"Tilstand",states:{automatic:"Automatisk",disabled:"Deaktivert",manual:"Manuell"},throughput:"Gjennomstrømning","maximum-bucket":"Maksimal bøtte"},no_items:"Det er ingen definerte soner ennå.",title:"Soner"},title:"Smart vanning"},jt={common:Nt,panels:Ct},Lt=Object.freeze({__proto__:null,common:Nt,panels:Ct,default:jt}),Bt={actions:{delete:"Zmazať"},labels:{module:"Modul",no:"Nie",select:"Zvoliť",yes:"Áno"}},Rt={general:{cards:{"automatic-duration-calculation":{header:"Automatický výpočet trvania",description:"Výpočet berie zhromaždené údaje o počasí až do tohto bodu a aktualizuje vedro pre každú automatickú zónu. Potom sa trvanie upraví na základe novej hodnoty segmentu a zhromaždené údaje o počasí sa odstránia.",labels:{"auto-calc-enabled":"Automaticky vypočítajte trvanie zón","auto-calc-time":"Vypočítajte pri"}},"automatic-update":{errors:{"warning-update-time-on-or-after-calc-time":"Upozornenie: Čas aktualizácie údajov o počasí v čase výpočtu alebo po ňom"},header:"Automatic weather data update",description:"Automaticky zbierajte a ukladajte údaje o počasí. Údaje o počasí sú potrebné na výpočet segmentov zón a trvania.",labels:{"auto-update-enabled":"Automaticky aktualizovať údaje o počasí","auto-update-delay":"Oneskorenie aktualizácie","auto-update-interval":"Aktualizujte údaje snímača každý"},options:{days:"dni",hours:"hodiny",minutes:"minúty"}},"automatic-clear":{header:"Automatické orezávanie údajov o počasí",description:"Automaticky odstráňte zhromaždené údaje o počasí v nakonfigurovanom čase. Použite to, aby ste sa uistili, že nezostali žiadne údaje o počasí z predchádzajúcich dní. Neodstraňujte údaje o počasí pred výpočtom a túto možnosť použite iba vtedy, ak očakávate, že automatická aktualizácia bude zhromažďovať údaje o počasí až po výpočte na daný deň. V ideálnom prípade chcete prerezávať tak neskoro, ako je to možné.",labels:{"automatic-clear-enabled":"Automaticky vymazať zhromaždené údaje o počasí","automatic-clear-time":"Vymazať údaje o počasí o"}}},description:"Táto stránka poskytuje globálne nastavenia.",title:"Všeobecné"},help:{title:"Pomoc",cards:{"how-to-get-help":{title:"Ako získať pomoc","first-read-the":"Najprv si prečítajte",wiki:"Wiki","if-you-still-need-help":"Ak stále potrebujete pomoc, obráťte sa na","community-forum":"komunitné fórum","or-open-a":"alebo otvorte a","github-issue":"Problém Github","english-only":"len anglicky"}}},mappings:{cards:{"add-mapping":{actions:{add:"Pridať skupinu snímačov"},header:"Pridajte skupiny senzorov"},mapping:{aggregates:{average:"Priemer",first:"Prvý",last:"Posledný",maximum:"Maximum",median:"Medián",minimum:"Minimum",sum:"Sum"},errors:{"cannot-delete-mapping-because-zones-use-it":"Túto skupinu senzorov nemôžete vymazať, pretože ju používa aspoň jedna zóna."},items:{dewpoint:"Rosný bod",evapotranspiration:"Evapotranspirácia",humidity:"Vlhkosť","maximum temperature":"Maximálna teplota","minimum temperature":"Minimálna teplota",precipitation:"Úhrn zrážok",pressure:"Tlak","solar radiation":"Slnečné žiarenie",temperature:"Teplota",windspeed:"Rýchlosť vetra"},pressure_types:{absolute:"absolútne",relative:"relatítne"},"pressure-type":"Tlak je","sensor-aggregate-of-sensor-values-to-calculate":"hodnôt snímača na výpočet trvania","sensor-aggregate-use-the":"Použiť","sensor-entity":"Entita snímača",static_value:"Hodnota","input-units":"Vstup poskytuje hodnoty v",source:"Zdroj",sources:{none:"Nie je",openweathermap:"OpenWeatherMap",sensor:"Snímač",static:"Statická hodnota"}}},description:"Pridajte jednu alebo viac skupín senzorov, ktoré získavajú údaje o počasí z OpenWeatherMap, zo senzorov alebo ich kombinácie. Každú skupinu senzorov môžete namapovať na jednu alebo viac zón",labels:{"mapping-name":"Názov"},no_items:"Zatiaľ nie je definovaná žiadna skupina senzorov.",title:"Skupiny senzorov"},modules:{cards:{"add-module":{actions:{add:"Pridať modul"},header:"Pridať modul"},module:{errors:{"cannot-delete-module-because-zones-use-it":"Tento modul nemôžete vymazať, pretože ho používa aspoň jedna zóna."},labels:{configuration:"Konfigurácia",required:"označuje povinné pole"},"translated-options":{DontEstimate:"Bez odhadu",EstimateFromSunHours:"Odhad zo slnečných hodín",EstimateFromTemp:"Odhad z teploty"}}},description:"Pridajte jeden alebo viac modulov, ktoré vypočítavajú trvanie zavlažovania. Každý modul sa dodáva s vlastnou konfiguráciou a možno ho použiť na výpočet trvania pre jednu alebo viac zón.",no_items:"Zatiaľ nie sú definované žiadne moduly.",title:"Moduly"},zones:{actions:{add:"Pridať",calculate:"Vypočítať",information:"Informácia",update:"Aktualizovať","reset-bucket":"Resetovať vedro"},cards:{"add-zone":{actions:{add:"Pridať zónu"},header:"Pridať zónu"},"zone-actions":{actions:{"calculate-all":"Vypočítajte všetky zóny","update-all":"Aktualizujte všetky zóny","reset-all-buckets":"Obnovte všetky vedrá","clear-all-weatherdata":"Vymazať všetky údaje o počasí"},header:"Akcie vo všetkých zónach"}},description:"Tu špecifikujte jednu alebo viac zavlažovacích zón. Trvanie zavlažovania sa vypočíta pre zónu v závislosti od veľkosti, výkonu, stavu, modulu a skupiny senzorov.",labels:{bucket:"Vedro",duration:"Trvanie","lead-time":"Dodacia lehota",mapping:"Skupina senzorov","maximum-duration":"Maximálne trvanie",multiplier:"Násobiteľ",name:"Názov",size:"Veľkosť",state:"Stav",states:{automatic:"Automatický",disabled:"Zakázaný",manual:"Manuány"},throughput:"Priepustnosť","maximum-bucket":"Maximálne vedro",last_calculated:"Naposledy vypočítané","data-last-updated":"Údaje boli naposledy aktualizované","data-number-of-data-points":"Počet údajových bodov"},no_items:"Zatiaľ nie sú definované žiadne zóny.",title:"Zóny"}},It="Inteligentné zavlažovanie",Ut={common:Bt,panels:Rt,title:It},Yt=Object.freeze({__proto__:null,common:Bt,panels:Rt,title:It,default:Ut});function Gt(e){return e.type===it.literal}function Vt(e){return e.type===it.argument}function Ft(e){return e.type===it.number}function Wt(e){return e.type===it.date}function Zt(e){return e.type===it.time}function qt(e){return e.type===it.select}function Kt(e){return e.type===it.plural}function Xt(e){return e.type===it.pound}function Jt(e){return e.type===it.tag}function Qt(e){return!(!e||"object"!=typeof e||e.type!==nt.number)}function ea(e){return!(!e||"object"!=typeof e||e.type!==nt.dateTime)}!function(e){e[e.EXPECT_ARGUMENT_CLOSING_BRACE=1]="EXPECT_ARGUMENT_CLOSING_BRACE",e[e.EMPTY_ARGUMENT=2]="EMPTY_ARGUMENT",e[e.MALFORMED_ARGUMENT=3]="MALFORMED_ARGUMENT",e[e.EXPECT_ARGUMENT_TYPE=4]="EXPECT_ARGUMENT_TYPE",e[e.INVALID_ARGUMENT_TYPE=5]="INVALID_ARGUMENT_TYPE",e[e.EXPECT_ARGUMENT_STYLE=6]="EXPECT_ARGUMENT_STYLE",e[e.INVALID_NUMBER_SKELETON=7]="INVALID_NUMBER_SKELETON",e[e.INVALID_DATE_TIME_SKELETON=8]="INVALID_DATE_TIME_SKELETON",e[e.EXPECT_NUMBER_SKELETON=9]="EXPECT_NUMBER_SKELETON",e[e.EXPECT_DATE_TIME_SKELETON=10]="EXPECT_DATE_TIME_SKELETON",e[e.UNCLOSED_QUOTE_IN_ARGUMENT_STYLE=11]="UNCLOSED_QUOTE_IN_ARGUMENT_STYLE",e[e.EXPECT_SELECT_ARGUMENT_OPTIONS=12]="EXPECT_SELECT_ARGUMENT_OPTIONS",e[e.EXPECT_PLURAL_ARGUMENT_OFFSET_VALUE=13]="EXPECT_PLURAL_ARGUMENT_OFFSET_VALUE",e[e.INVALID_PLURAL_ARGUMENT_OFFSET_VALUE=14]="INVALID_PLURAL_ARGUMENT_OFFSET_VALUE",e[e.EXPECT_SELECT_ARGUMENT_SELECTOR=15]="EXPECT_SELECT_ARGUMENT_SELECTOR",e[e.EXPECT_PLURAL_ARGUMENT_SELECTOR=16]="EXPECT_PLURAL_ARGUMENT_SELECTOR",e[e.EXPECT_SELECT_ARGUMENT_SELECTOR_FRAGMENT=17]="EXPECT_SELECT_ARGUMENT_SELECTOR_FRAGMENT",e[e.EXPECT_PLURAL_ARGUMENT_SELECTOR_FRAGMENT=18]="EXPECT_PLURAL_ARGUMENT_SELECTOR_FRAGMENT",e[e.INVALID_PLURAL_ARGUMENT_SELECTOR=19]="INVALID_PLURAL_ARGUMENT_SELECTOR",e[e.DUPLICATE_PLURAL_ARGUMENT_SELECTOR=20]="DUPLICATE_PLURAL_ARGUMENT_SELECTOR",e[e.DUPLICATE_SELECT_ARGUMENT_SELECTOR=21]="DUPLICATE_SELECT_ARGUMENT_SELECTOR",e[e.MISSING_OTHER_CLAUSE=22]="MISSING_OTHER_CLAUSE",e[e.INVALID_TAG=23]="INVALID_TAG",e[e.INVALID_TAG_NAME=25]="INVALID_TAG_NAME",e[e.UNMATCHED_CLOSING_TAG=26]="UNMATCHED_CLOSING_TAG",e[e.UNCLOSED_TAG=27]="UNCLOSED_TAG"}(at||(at={})),function(e){e[e.literal=0]="literal",e[e.argument=1]="argument",e[e.number=2]="number",e[e.date=3]="date",e[e.time=4]="time",e[e.select=5]="select",e[e.plural=6]="plural",e[e.pound=7]="pound",e[e.tag=8]="tag"}(it||(it={})),function(e){e[e.number=0]="number",e[e.dateTime=1]="dateTime"}(nt||(nt={}));var ta=/[ \xA0\u1680\u2000-\u200A\u202F\u205F\u3000]/,aa=/(?:[Eec]{1,6}|G{1,5}|[Qq]{1,5}|(?:[yYur]+|U{1,5})|[ML]{1,5}|d{1,2}|D{1,3}|F{1}|[abB]{1,5}|[hkHK]{1,2}|w{1,2}|W{1}|m{1,2}|s{1,2}|[zZOvVxX]{1,4})(?=([^']*'[^']*')*[^']*$)/g;function ia(e){var t={};return e.replace(aa,(function(e){var a=e.length;switch(e[0]){case"G":t.era=4===a?"long":5===a?"narrow":"short";break;case"y":t.year=2===a?"2-digit":"numeric";break;case"Y":case"u":case"U":case"r":throw new RangeError("`Y/u/U/r` (year) patterns are not supported, use `y` instead");case"q":case"Q":throw new RangeError("`q/Q` (quarter) patterns are not supported");case"M":case"L":t.month=["numeric","2-digit","short","long","narrow"][a-1];break;case"w":case"W":throw new RangeError("`w/W` (week) patterns are not supported");case"d":t.day=["numeric","2-digit"][a-1];break;case"D":case"F":case"g":throw new RangeError("`D/F/g` (day) patterns are not supported, use `d` instead");case"E":t.weekday=4===a?"short":5===a?"narrow":"short";break;case"e":if(a<4)throw new RangeError("`e..eee` (weekday) patterns are not supported");t.weekday=["short","long","narrow","short"][a-4];break;case"c":if(a<4)throw new RangeError("`c..ccc` (weekday) patterns are not supported");t.weekday=["short","long","narrow","short"][a-4];break;case"a":t.hour12=!0;break;case"b":case"B":throw new RangeError("`b/B` (period) patterns are not supported, use `a` instead");case"h":t.hourCycle="h12",t.hour=["numeric","2-digit"][a-1];break;case"H":t.hourCycle="h23",t.hour=["numeric","2-digit"][a-1];break;case"K":t.hourCycle="h11",t.hour=["numeric","2-digit"][a-1];break;case"k":t.hourCycle="h24",t.hour=["numeric","2-digit"][a-1];break;case"j":case"J":case"C":throw new RangeError("`j/J/C` (hour) patterns are not supported, use `h/H/K/k` instead");case"m":t.minute=["numeric","2-digit"][a-1];break;case"s":t.second=["numeric","2-digit"][a-1];break;case"S":case"A":throw new RangeError("`S/A` (second) patterns are not supported, use `s` instead");case"z":t.timeZoneName=a<4?"short":"long";break;case"Z":case"O":case"v":case"V":case"X":case"x":throw new RangeError("`Z/O/v/V/X/x` (timeZone) patterns are not supported, use `z` instead")}return""})),t}var na=/[\t-\r \x85\u200E\u200F\u2028\u2029]/i;var sa=/^\.(?:(0+)(\*)?|(#+)|(0+)(#+))$/g,ra=/^(@+)?(\+|#+)?[rs]?$/g,oa=/(\*)(0+)|(#+)(0+)|(0+)/g,la=/^(0+)$/;function ua(e){var t={};return"r"===e[e.length-1]?t.roundingPriority="morePrecision":"s"===e[e.length-1]&&(t.roundingPriority="lessPrecision"),e.replace(ra,(function(e,a,i){return"string"!=typeof i?(t.minimumSignificantDigits=a.length,t.maximumSignificantDigits=a.length):"+"===i?t.minimumSignificantDigits=a.length:"#"===a[0]?t.maximumSignificantDigits=a.length:(t.minimumSignificantDigits=a.length,t.maximumSignificantDigits=a.length+("string"==typeof i?i.length:0)),""})),t}function da(e){switch(e){case"sign-auto":return{signDisplay:"auto"};case"sign-accounting":case"()":return{currencySign:"accounting"};case"sign-always":case"+!":return{signDisplay:"always"};case"sign-accounting-always":case"()!":return{signDisplay:"always",currencySign:"accounting"};case"sign-except-zero":case"+?":return{signDisplay:"exceptZero"};case"sign-accounting-except-zero":case"()?":return{signDisplay:"exceptZero",currencySign:"accounting"};case"sign-never":case"+_":return{signDisplay:"never"}}}function ca(e){var t;if("E"===e[0]&&"E"===e[1]?(t={notation:"engineering"},e=e.slice(2)):"E"===e[0]&&(t={notation:"scientific"},e=e.slice(1)),t){var a=e.slice(0,2);if("+!"===a?(t.signDisplay="always",e=e.slice(2)):"+?"===a&&(t.signDisplay="exceptZero",e=e.slice(2)),!la.test(e))throw new Error("Malformed concise eng/scientific notation");t.minimumIntegerDigits=e.length}return t}function ha(e){var t=da(e);return t||{}}function pa(e){for(var t={},a=0,n=e;a1)throw new RangeError("integer-width stems only accept a single optional option");s.options[0].replace(oa,(function(e,a,i,n,s,r){if(a)t.minimumIntegerDigits=i.length;else{if(n&&s)throw new Error("We currently do not support maximum integer digits");if(r)throw new Error("We currently do not support exact integer digits")}return""}));continue}if(la.test(s.stem))t.minimumIntegerDigits=s.stem.length;else if(sa.test(s.stem)){if(s.options.length>1)throw new RangeError("Fraction-precision stems only accept a single optional option");s.stem.replace(sa,(function(e,a,i,n,s,r){return"*"===i?t.minimumFractionDigits=a.length:n&&"#"===n[0]?t.maximumFractionDigits=n.length:s&&r?(t.minimumFractionDigits=s.length,t.maximumFractionDigits=s.length+r.length):(t.minimumFractionDigits=a.length,t.maximumFractionDigits=a.length),""}));var r=s.options[0];"w"===r?t=i(i({},t),{trailingZeroDisplay:"stripIfInteger"}):r&&(t=i(i({},t),ua(r)))}else if(ra.test(s.stem))t=i(i({},t),ua(s.stem));else{var o=da(s.stem);o&&(t=i(i({},t),o));var l=ca(s.stem);l&&(t=i(i({},t),l))}}return t}var ma,ga={AX:["H"],BQ:["H"],CP:["H"],CZ:["H"],DK:["H"],FI:["H"],ID:["H"],IS:["H"],ML:["H"],NE:["H"],RU:["H"],SE:["H"],SJ:["H"],SK:["H"],AS:["h","H"],BT:["h","H"],DJ:["h","H"],ER:["h","H"],GH:["h","H"],IN:["h","H"],LS:["h","H"],PG:["h","H"],PW:["h","H"],SO:["h","H"],TO:["h","H"],VU:["h","H"],WS:["h","H"],"001":["H","h"],AL:["h","H","hB"],TD:["h","H","hB"],"ca-ES":["H","h","hB"],CF:["H","h","hB"],CM:["H","h","hB"],"fr-CA":["H","h","hB"],"gl-ES":["H","h","hB"],"it-CH":["H","h","hB"],"it-IT":["H","h","hB"],LU:["H","h","hB"],NP:["H","h","hB"],PF:["H","h","hB"],SC:["H","h","hB"],SM:["H","h","hB"],SN:["H","h","hB"],TF:["H","h","hB"],VA:["H","h","hB"],CY:["h","H","hb","hB"],GR:["h","H","hb","hB"],CO:["h","H","hB","hb"],DO:["h","H","hB","hb"],KP:["h","H","hB","hb"],KR:["h","H","hB","hb"],NA:["h","H","hB","hb"],PA:["h","H","hB","hb"],PR:["h","H","hB","hb"],VE:["h","H","hB","hb"],AC:["H","h","hb","hB"],AI:["H","h","hb","hB"],BW:["H","h","hb","hB"],BZ:["H","h","hb","hB"],CC:["H","h","hb","hB"],CK:["H","h","hb","hB"],CX:["H","h","hb","hB"],DG:["H","h","hb","hB"],FK:["H","h","hb","hB"],GB:["H","h","hb","hB"],GG:["H","h","hb","hB"],GI:["H","h","hb","hB"],IE:["H","h","hb","hB"],IM:["H","h","hb","hB"],IO:["H","h","hb","hB"],JE:["H","h","hb","hB"],LT:["H","h","hb","hB"],MK:["H","h","hb","hB"],MN:["H","h","hb","hB"],MS:["H","h","hb","hB"],NF:["H","h","hb","hB"],NG:["H","h","hb","hB"],NR:["H","h","hb","hB"],NU:["H","h","hb","hB"],PN:["H","h","hb","hB"],SH:["H","h","hb","hB"],SX:["H","h","hb","hB"],TA:["H","h","hb","hB"],ZA:["H","h","hb","hB"],"af-ZA":["H","h","hB","hb"],AR:["H","h","hB","hb"],CL:["H","h","hB","hb"],CR:["H","h","hB","hb"],CU:["H","h","hB","hb"],EA:["H","h","hB","hb"],"es-BO":["H","h","hB","hb"],"es-BR":["H","h","hB","hb"],"es-EC":["H","h","hB","hb"],"es-ES":["H","h","hB","hb"],"es-GQ":["H","h","hB","hb"],"es-PE":["H","h","hB","hb"],GT:["H","h","hB","hb"],HN:["H","h","hB","hb"],IC:["H","h","hB","hb"],KG:["H","h","hB","hb"],KM:["H","h","hB","hb"],LK:["H","h","hB","hb"],MA:["H","h","hB","hb"],MX:["H","h","hB","hb"],NI:["H","h","hB","hb"],PY:["H","h","hB","hb"],SV:["H","h","hB","hb"],UY:["H","h","hB","hb"],JP:["H","h","K"],AD:["H","hB"],AM:["H","hB"],AO:["H","hB"],AT:["H","hB"],AW:["H","hB"],BE:["H","hB"],BF:["H","hB"],BJ:["H","hB"],BL:["H","hB"],BR:["H","hB"],CG:["H","hB"],CI:["H","hB"],CV:["H","hB"],DE:["H","hB"],EE:["H","hB"],FR:["H","hB"],GA:["H","hB"],GF:["H","hB"],GN:["H","hB"],GP:["H","hB"],GW:["H","hB"],HR:["H","hB"],IL:["H","hB"],IT:["H","hB"],KZ:["H","hB"],MC:["H","hB"],MD:["H","hB"],MF:["H","hB"],MQ:["H","hB"],MZ:["H","hB"],NC:["H","hB"],NL:["H","hB"],PM:["H","hB"],PT:["H","hB"],RE:["H","hB"],RO:["H","hB"],SI:["H","hB"],SR:["H","hB"],ST:["H","hB"],TG:["H","hB"],TR:["H","hB"],WF:["H","hB"],YT:["H","hB"],BD:["h","hB","H"],PK:["h","hB","H"],AZ:["H","hB","h"],BA:["H","hB","h"],BG:["H","hB","h"],CH:["H","hB","h"],GE:["H","hB","h"],LI:["H","hB","h"],ME:["H","hB","h"],RS:["H","hB","h"],UA:["H","hB","h"],UZ:["H","hB","h"],XK:["H","hB","h"],AG:["h","hb","H","hB"],AU:["h","hb","H","hB"],BB:["h","hb","H","hB"],BM:["h","hb","H","hB"],BS:["h","hb","H","hB"],CA:["h","hb","H","hB"],DM:["h","hb","H","hB"],"en-001":["h","hb","H","hB"],FJ:["h","hb","H","hB"],FM:["h","hb","H","hB"],GD:["h","hb","H","hB"],GM:["h","hb","H","hB"],GU:["h","hb","H","hB"],GY:["h","hb","H","hB"],JM:["h","hb","H","hB"],KI:["h","hb","H","hB"],KN:["h","hb","H","hB"],KY:["h","hb","H","hB"],LC:["h","hb","H","hB"],LR:["h","hb","H","hB"],MH:["h","hb","H","hB"],MP:["h","hb","H","hB"],MW:["h","hb","H","hB"],NZ:["h","hb","H","hB"],SB:["h","hb","H","hB"],SG:["h","hb","H","hB"],SL:["h","hb","H","hB"],SS:["h","hb","H","hB"],SZ:["h","hb","H","hB"],TC:["h","hb","H","hB"],TT:["h","hb","H","hB"],UM:["h","hb","H","hB"],US:["h","hb","H","hB"],VC:["h","hb","H","hB"],VG:["h","hb","H","hB"],VI:["h","hb","H","hB"],ZM:["h","hb","H","hB"],BO:["H","hB","h","hb"],EC:["H","hB","h","hb"],ES:["H","hB","h","hb"],GQ:["H","hB","h","hb"],PE:["H","hB","h","hb"],AE:["h","hB","hb","H"],"ar-001":["h","hB","hb","H"],BH:["h","hB","hb","H"],DZ:["h","hB","hb","H"],EG:["h","hB","hb","H"],EH:["h","hB","hb","H"],HK:["h","hB","hb","H"],IQ:["h","hB","hb","H"],JO:["h","hB","hb","H"],KW:["h","hB","hb","H"],LB:["h","hB","hb","H"],LY:["h","hB","hb","H"],MO:["h","hB","hb","H"],MR:["h","hB","hb","H"],OM:["h","hB","hb","H"],PH:["h","hB","hb","H"],PS:["h","hB","hb","H"],QA:["h","hB","hb","H"],SA:["h","hB","hb","H"],SD:["h","hB","hb","H"],SY:["h","hB","hb","H"],TN:["h","hB","hb","H"],YE:["h","hB","hb","H"],AF:["H","hb","hB","h"],LA:["H","hb","hB","h"],CN:["H","hB","hb","h"],LV:["H","hB","hb","h"],TL:["H","hB","hb","h"],"zu-ZA":["H","hB","hb","h"],CD:["hB","H"],IR:["hB","H"],"hi-IN":["hB","h","H"],"kn-IN":["hB","h","H"],"ml-IN":["hB","h","H"],"te-IN":["hB","h","H"],KH:["hB","h","H","hb"],"ta-IN":["hB","h","hb","H"],BN:["hb","hB","h","H"],MY:["hb","hB","h","H"],ET:["hB","hb","h","H"],"gu-IN":["hB","hb","h","H"],"mr-IN":["hB","hb","h","H"],"pa-IN":["hB","hb","h","H"],TW:["hB","hb","h","H"],KE:["hB","hb","H","h"],MM:["hB","hb","H","h"],TZ:["hB","hb","H","h"],UG:["hB","hb","H","h"]};function fa(e){var t=e.hourCycle;if(void 0===t&&e.hourCycles&&e.hourCycles.length&&(t=e.hourCycles[0]),t)switch(t){case"h24":return"k";case"h23":return"H";case"h12":return"h";case"h11":return"K";default:throw new Error("Invalid hourCycle")}var a,i=e.language;return"root"!==i&&(a=e.maximize().region),(ga[a||""]||ga[i||""]||ga["".concat(i,"-001")]||ga["001"])[0]}var va=new RegExp("^".concat(ta.source,"*")),ba=new RegExp("".concat(ta.source,"*$"));function ya(e,t){return{start:e,end:t}}var _a=!!String.prototype.startsWith,wa=!!String.fromCodePoint,ka=!!Object.fromEntries,Sa=!!String.prototype.codePointAt,Ea=!!String.prototype.trimStart,$a=!!String.prototype.trimEnd,Aa=!!Number.isSafeInteger?Number.isSafeInteger:function(e){return"number"==typeof e&&isFinite(e)&&Math.floor(e)===e&&Math.abs(e)<=9007199254740991},Ma=!0;try{Ma="a"===(null===(ma=Na("([^\\p{White_Space}\\p{Pattern_Syntax}]*)","yu").exec("a"))||void 0===ma?void 0:ma[0])}catch(j){Ma=!1}var Oa,Ta=_a?function(e,t,a){return e.startsWith(t,a)}:function(e,t,a){return e.slice(a,a+t.length)===t},Da=wa?String.fromCodePoint:function(){for(var e=[],t=0;ts;){if((a=e[s++])>1114111)throw RangeError(a+" is not a valid code point");i+=a<65536?String.fromCharCode(a):String.fromCharCode(55296+((a-=65536)>>10),a%1024+56320)}return i},Ha=ka?Object.fromEntries:function(e){for(var t={},a=0,i=e;a=a)){var i,n=e.charCodeAt(t);return n<55296||n>56319||t+1===a||(i=e.charCodeAt(t+1))<56320||i>57343?n:i-56320+(n-55296<<10)+65536}},za=Ea?function(e){return e.trimStart()}:function(e){return e.replace(va,"")},Pa=$a?function(e){return e.trimEnd()}:function(e){return e.replace(ba,"")};function Na(e,t){return new RegExp(e,t)}if(Ma){var Ca=Na("([^\\p{White_Space}\\p{Pattern_Syntax}]*)","yu");Oa=function(e,t){var a;return Ca.lastIndex=t,null!==(a=Ca.exec(e)[1])&&void 0!==a?a:""}}else Oa=function(e,t){for(var a=[];;){var i=xa(e,t);if(void 0===i||Ra(i)||Ia(i))break;a.push(i),t+=i>=65536?2:1}return Da.apply(void 0,a)};var ja=function(){function e(e,t){void 0===t&&(t={}),this.message=e,this.position={offset:0,line:1,column:1},this.ignoreTag=!!t.ignoreTag,this.locale=t.locale,this.requiresOtherClause=!!t.requiresOtherClause,this.shouldParseSkeletons=!!t.shouldParseSkeletons}return e.prototype.parse=function(){if(0!==this.offset())throw Error("parser can only be used once");return this.parseMessage(0,"",!1)},e.prototype.parseMessage=function(e,t,a){for(var i=[];!this.isEOF();){var n=this.char();if(123===n){if((s=this.parseArgument(e,a)).err)return s;i.push(s.val)}else{if(125===n&&e>0)break;if(35!==n||"plural"!==t&&"selectordinal"!==t){if(60===n&&!this.ignoreTag&&47===this.peek()){if(a)break;return this.error(at.UNMATCHED_CLOSING_TAG,ya(this.clonePosition(),this.clonePosition()))}if(60===n&&!this.ignoreTag&&La(this.peek()||0)){if((s=this.parseTag(e,t)).err)return s;i.push(s.val)}else{var s;if((s=this.parseLiteral(e,t)).err)return s;i.push(s.val)}}else{var r=this.clonePosition();this.bump(),i.push({type:it.pound,location:ya(r,this.clonePosition())})}}}return{val:i,err:null}},e.prototype.parseTag=function(e,t){var a=this.clonePosition();this.bump();var i=this.parseTagName();if(this.bumpSpace(),this.bumpIf("/>"))return{val:{type:it.literal,value:"<".concat(i,"/>"),location:ya(a,this.clonePosition())},err:null};if(this.bumpIf(">")){var n=this.parseMessage(e+1,t,!0);if(n.err)return n;var s=n.val,r=this.clonePosition();if(this.bumpIf("")?{val:{type:it.tag,value:i,children:s,location:ya(a,this.clonePosition())},err:null}:this.error(at.INVALID_TAG,ya(r,this.clonePosition())))}return this.error(at.UNCLOSED_TAG,ya(a,this.clonePosition()))}return this.error(at.INVALID_TAG,ya(a,this.clonePosition()))},e.prototype.parseTagName=function(){var e=this.offset();for(this.bump();!this.isEOF()&&Ba(this.char());)this.bump();return this.message.slice(e,this.offset())},e.prototype.parseLiteral=function(e,t){for(var a=this.clonePosition(),i="";;){var n=this.tryParseQuote(t);if(n)i+=n;else{var s=this.tryParseUnquoted(e,t);if(s)i+=s;else{var r=this.tryParseLeftAngleBracket();if(!r)break;i+=r}}}var o=ya(a,this.clonePosition());return{val:{type:it.literal,value:i,location:o},err:null}},e.prototype.tryParseLeftAngleBracket=function(){return this.isEOF()||60!==this.char()||!this.ignoreTag&&(La(e=this.peek()||0)||47===e)?null:(this.bump(),"<");var e},e.prototype.tryParseQuote=function(e){if(this.isEOF()||39!==this.char())return null;switch(this.peek()){case 39:return this.bump(),this.bump(),"'";case 123:case 60:case 62:case 125:break;case 35:if("plural"===e||"selectordinal"===e)break;return null;default:return null}this.bump();var t=[this.char()];for(this.bump();!this.isEOF();){var a=this.char();if(39===a){if(39!==this.peek()){this.bump();break}t.push(39),this.bump()}else t.push(a);this.bump()}return Da.apply(void 0,t)},e.prototype.tryParseUnquoted=function(e,t){if(this.isEOF())return null;var a=this.char();return 60===a||123===a||35===a&&("plural"===t||"selectordinal"===t)||125===a&&e>0?null:(this.bump(),Da(a))},e.prototype.parseArgument=function(e,t){var a=this.clonePosition();if(this.bump(),this.bumpSpace(),this.isEOF())return this.error(at.EXPECT_ARGUMENT_CLOSING_BRACE,ya(a,this.clonePosition()));if(125===this.char())return this.bump(),this.error(at.EMPTY_ARGUMENT,ya(a,this.clonePosition()));var i=this.parseIdentifierIfPossible().value;if(!i)return this.error(at.MALFORMED_ARGUMENT,ya(a,this.clonePosition()));if(this.bumpSpace(),this.isEOF())return this.error(at.EXPECT_ARGUMENT_CLOSING_BRACE,ya(a,this.clonePosition()));switch(this.char()){case 125:return this.bump(),{val:{type:it.argument,value:i,location:ya(a,this.clonePosition())},err:null};case 44:return this.bump(),this.bumpSpace(),this.isEOF()?this.error(at.EXPECT_ARGUMENT_CLOSING_BRACE,ya(a,this.clonePosition())):this.parseArgumentOptions(e,t,i,a);default:return this.error(at.MALFORMED_ARGUMENT,ya(a,this.clonePosition()))}},e.prototype.parseIdentifierIfPossible=function(){var e=this.clonePosition(),t=this.offset(),a=Oa(this.message,t),i=t+a.length;return this.bumpTo(i),{value:a,location:ya(e,this.clonePosition())}},e.prototype.parseArgumentOptions=function(e,t,a,n){var s,r=this.clonePosition(),o=this.parseIdentifierIfPossible().value,l=this.clonePosition();switch(o){case"":return this.error(at.EXPECT_ARGUMENT_TYPE,ya(r,l));case"number":case"date":case"time":this.bumpSpace();var u=null;if(this.bumpIf(",")){this.bumpSpace();var d=this.clonePosition();if((b=this.parseSimpleArgStyleIfPossible()).err)return b;if(0===(m=Pa(b.val)).length)return this.error(at.EXPECT_ARGUMENT_STYLE,ya(this.clonePosition(),this.clonePosition()));u={style:m,styleLocation:ya(d,this.clonePosition())}}if((y=this.tryParseArgumentClose(n)).err)return y;var c=ya(n,this.clonePosition());if(u&&Ta(null==u?void 0:u.style,"::",0)){var h=za(u.style.slice(2));if("number"===o)return(b=this.parseNumberSkeletonFromString(h,u.styleLocation)).err?b:{val:{type:it.number,value:a,location:c,style:b.val},err:null};if(0===h.length)return this.error(at.EXPECT_DATE_TIME_SKELETON,c);var p=h;this.locale&&(p=function(e,t){for(var a="",i=0;i>1),l=fa(t);for("H"!=l&&"k"!=l||(o=0);o-- >0;)a+="a";for(;r-- >0;)a=l+a}else a+="J"===n?"H":n}return a}(h,this.locale));var m={type:nt.dateTime,pattern:p,location:u.styleLocation,parsedOptions:this.shouldParseSkeletons?ia(p):{}};return{val:{type:"date"===o?it.date:it.time,value:a,location:c,style:m},err:null}}return{val:{type:"number"===o?it.number:"date"===o?it.date:it.time,value:a,location:c,style:null!==(s=null==u?void 0:u.style)&&void 0!==s?s:null},err:null};case"plural":case"selectordinal":case"select":var g=this.clonePosition();if(this.bumpSpace(),!this.bumpIf(","))return this.error(at.EXPECT_SELECT_ARGUMENT_OPTIONS,ya(g,i({},g)));this.bumpSpace();var f=this.parseIdentifierIfPossible(),v=0;if("select"!==o&&"offset"===f.value){if(!this.bumpIf(":"))return this.error(at.EXPECT_PLURAL_ARGUMENT_OFFSET_VALUE,ya(this.clonePosition(),this.clonePosition()));var b;if(this.bumpSpace(),(b=this.tryParseDecimalInteger(at.EXPECT_PLURAL_ARGUMENT_OFFSET_VALUE,at.INVALID_PLURAL_ARGUMENT_OFFSET_VALUE)).err)return b;this.bumpSpace(),f=this.parseIdentifierIfPossible(),v=b.val}var y,_=this.tryParsePluralOrSelectOptions(e,o,t,f);if(_.err)return _;if((y=this.tryParseArgumentClose(n)).err)return y;var w=ya(n,this.clonePosition());return"select"===o?{val:{type:it.select,value:a,options:Ha(_.val),location:w},err:null}:{val:{type:it.plural,value:a,options:Ha(_.val),offset:v,pluralType:"plural"===o?"cardinal":"ordinal",location:w},err:null};default:return this.error(at.INVALID_ARGUMENT_TYPE,ya(r,l))}},e.prototype.tryParseArgumentClose=function(e){return this.isEOF()||125!==this.char()?this.error(at.EXPECT_ARGUMENT_CLOSING_BRACE,ya(e,this.clonePosition())):(this.bump(),{val:!0,err:null})},e.prototype.parseSimpleArgStyleIfPossible=function(){for(var e=0,t=this.clonePosition();!this.isEOF();){switch(this.char()){case 39:this.bump();var a=this.clonePosition();if(!this.bumpUntil("'"))return this.error(at.UNCLOSED_QUOTE_IN_ARGUMENT_STYLE,ya(a,this.clonePosition()));this.bump();break;case 123:e+=1,this.bump();break;case 125:if(!(e>0))return{val:this.message.slice(t.offset,this.offset()),err:null};e-=1;break;default:this.bump()}}return{val:this.message.slice(t.offset,this.offset()),err:null}},e.prototype.parseNumberSkeletonFromString=function(e,t){var a=[];try{a=function(e){if(0===e.length)throw new Error("Number skeleton cannot be empty");for(var t=e.split(na).filter((function(e){return e.length>0})),a=[],i=0,n=t;i=48&&r<=57))break;n=!0,s=10*s+(r-48),this.bump()}var o=ya(i,this.clonePosition());return n?Aa(s*=a)?{val:s,err:null}:this.error(t,o):this.error(e,o)},e.prototype.offset=function(){return this.position.offset},e.prototype.isEOF=function(){return this.offset()===this.message.length},e.prototype.clonePosition=function(){return{offset:this.position.offset,line:this.position.line,column:this.position.column}},e.prototype.char=function(){var e=this.position.offset;if(e>=this.message.length)throw Error("out of bound");var t=xa(this.message,e);if(void 0===t)throw Error("Offset ".concat(e," is at invalid UTF-16 code unit boundary"));return t},e.prototype.error=function(e,t){return{val:null,err:{kind:e,message:this.message,location:t}}},e.prototype.bump=function(){if(!this.isEOF()){var e=this.char();10===e?(this.position.line+=1,this.position.column=1,this.position.offset+=1):(this.position.column+=1,this.position.offset+=e<65536?1:2)}},e.prototype.bumpIf=function(e){if(Ta(this.message,e,this.offset())){for(var t=0;t=0?(this.bumpTo(a),!0):(this.bumpTo(this.message.length),!1)},e.prototype.bumpTo=function(e){if(this.offset()>e)throw Error("targetOffset ".concat(e," must be greater than or equal to the current offset ").concat(this.offset()));for(e=Math.min(e,this.message.length);;){var t=this.offset();if(t===e)break;if(t>e)throw Error("targetOffset ".concat(e," is at invalid UTF-16 code unit boundary"));if(this.bump(),this.isEOF())break}},e.prototype.bumpSpace=function(){for(;!this.isEOF()&&Ra(this.char());)this.bump()},e.prototype.peek=function(){if(this.isEOF())return null;var e=this.char(),t=this.offset(),a=this.message.charCodeAt(t+(e>=65536?2:1));return null!=a?a:null},e}();function La(e){return e>=97&&e<=122||e>=65&&e<=90}function Ba(e){return 45===e||46===e||e>=48&&e<=57||95===e||e>=97&&e<=122||e>=65&&e<=90||183==e||e>=192&&e<=214||e>=216&&e<=246||e>=248&&e<=893||e>=895&&e<=8191||e>=8204&&e<=8205||e>=8255&&e<=8256||e>=8304&&e<=8591||e>=11264&&e<=12271||e>=12289&&e<=55295||e>=63744&&e<=64975||e>=65008&&e<=65533||e>=65536&&e<=983039}function Ra(e){return e>=9&&e<=13||32===e||133===e||e>=8206&&e<=8207||8232===e||8233===e}function Ia(e){return e>=33&&e<=35||36===e||e>=37&&e<=39||40===e||41===e||42===e||43===e||44===e||45===e||e>=46&&e<=47||e>=58&&e<=59||e>=60&&e<=62||e>=63&&e<=64||91===e||92===e||93===e||94===e||96===e||123===e||124===e||125===e||126===e||161===e||e>=162&&e<=165||166===e||167===e||169===e||171===e||172===e||174===e||176===e||177===e||182===e||187===e||191===e||215===e||247===e||e>=8208&&e<=8213||e>=8214&&e<=8215||8216===e||8217===e||8218===e||e>=8219&&e<=8220||8221===e||8222===e||8223===e||e>=8224&&e<=8231||e>=8240&&e<=8248||8249===e||8250===e||e>=8251&&e<=8254||e>=8257&&e<=8259||8260===e||8261===e||8262===e||e>=8263&&e<=8273||8274===e||8275===e||e>=8277&&e<=8286||e>=8592&&e<=8596||e>=8597&&e<=8601||e>=8602&&e<=8603||e>=8604&&e<=8607||8608===e||e>=8609&&e<=8610||8611===e||e>=8612&&e<=8613||8614===e||e>=8615&&e<=8621||8622===e||e>=8623&&e<=8653||e>=8654&&e<=8655||e>=8656&&e<=8657||8658===e||8659===e||8660===e||e>=8661&&e<=8691||e>=8692&&e<=8959||e>=8960&&e<=8967||8968===e||8969===e||8970===e||8971===e||e>=8972&&e<=8991||e>=8992&&e<=8993||e>=8994&&e<=9e3||9001===e||9002===e||e>=9003&&e<=9083||9084===e||e>=9085&&e<=9114||e>=9115&&e<=9139||e>=9140&&e<=9179||e>=9180&&e<=9185||e>=9186&&e<=9254||e>=9255&&e<=9279||e>=9280&&e<=9290||e>=9291&&e<=9311||e>=9472&&e<=9654||9655===e||e>=9656&&e<=9664||9665===e||e>=9666&&e<=9719||e>=9720&&e<=9727||e>=9728&&e<=9838||9839===e||e>=9840&&e<=10087||10088===e||10089===e||10090===e||10091===e||10092===e||10093===e||10094===e||10095===e||10096===e||10097===e||10098===e||10099===e||10100===e||10101===e||e>=10132&&e<=10175||e>=10176&&e<=10180||10181===e||10182===e||e>=10183&&e<=10213||10214===e||10215===e||10216===e||10217===e||10218===e||10219===e||10220===e||10221===e||10222===e||10223===e||e>=10224&&e<=10239||e>=10240&&e<=10495||e>=10496&&e<=10626||10627===e||10628===e||10629===e||10630===e||10631===e||10632===e||10633===e||10634===e||10635===e||10636===e||10637===e||10638===e||10639===e||10640===e||10641===e||10642===e||10643===e||10644===e||10645===e||10646===e||10647===e||10648===e||e>=10649&&e<=10711||10712===e||10713===e||10714===e||10715===e||e>=10716&&e<=10747||10748===e||10749===e||e>=10750&&e<=11007||e>=11008&&e<=11055||e>=11056&&e<=11076||e>=11077&&e<=11078||e>=11079&&e<=11084||e>=11085&&e<=11123||e>=11124&&e<=11125||e>=11126&&e<=11157||11158===e||e>=11159&&e<=11263||e>=11776&&e<=11777||11778===e||11779===e||11780===e||11781===e||e>=11782&&e<=11784||11785===e||11786===e||11787===e||11788===e||11789===e||e>=11790&&e<=11798||11799===e||e>=11800&&e<=11801||11802===e||11803===e||11804===e||11805===e||e>=11806&&e<=11807||11808===e||11809===e||11810===e||11811===e||11812===e||11813===e||11814===e||11815===e||11816===e||11817===e||e>=11818&&e<=11822||11823===e||e>=11824&&e<=11833||e>=11834&&e<=11835||e>=11836&&e<=11839||11840===e||11841===e||11842===e||e>=11843&&e<=11855||e>=11856&&e<=11857||11858===e||e>=11859&&e<=11903||e>=12289&&e<=12291||12296===e||12297===e||12298===e||12299===e||12300===e||12301===e||12302===e||12303===e||12304===e||12305===e||e>=12306&&e<=12307||12308===e||12309===e||12310===e||12311===e||12312===e||12313===e||12314===e||12315===e||12316===e||12317===e||e>=12318&&e<=12319||12320===e||12336===e||64830===e||64831===e||e>=65093&&e<=65094}function Ua(e){e.forEach((function(e){if(delete e.location,qt(e)||Kt(e))for(var t in e.options)delete e.options[t].location,Ua(e.options[t].value);else Ft(e)&&Qt(e.style)||(Wt(e)||Zt(e))&&ea(e.style)?delete e.style.location:Jt(e)&&Ua(e.children)}))}function Ya(e,t){void 0===t&&(t={}),t=i({shouldParseSkeletons:!0,requiresOtherClause:!0},t);var a=new ja(e,t).parse();if(a.err){var n=SyntaxError(at[a.err.kind]);throw n.location=a.err.location,n.originalMessage=a.err.message,n}return(null==t?void 0:t.captureLocation)||Ua(a.val),a.val}function Ga(e,t){var a=t&&t.cache?t.cache:Ja,i=t&&t.serializer?t.serializer:qa;return(t&&t.strategy?t.strategy:Za)(e,{cache:a,serializer:i})}function Va(e,t,a,i){var n,s=null==(n=i)||"number"==typeof n||"boolean"==typeof n?i:a(i),r=t.get(s);return void 0===r&&(r=e.call(this,i),t.set(s,r)),r}function Fa(e,t,a){var i=Array.prototype.slice.call(arguments,3),n=a(i),s=t.get(n);return void 0===s&&(s=e.apply(this,i),t.set(n,s)),s}function Wa(e,t,a,i,n){return a.bind(t,e,i,n)}function Za(e,t){return Wa(e,this,1===e.length?Va:Fa,t.cache.create(),t.serializer)}var qa=function(){return JSON.stringify(arguments)};function Ka(){this.cache=Object.create(null)}Ka.prototype.get=function(e){return this.cache[e]},Ka.prototype.set=function(e,t){this.cache[e]=t};var Xa,Ja={create:function(){return new Ka}},Qa={variadic:function(e,t){return Wa(e,this,Fa,t.cache.create(),t.serializer)},monadic:function(e,t){return Wa(e,this,Va,t.cache.create(),t.serializer)}};!function(e){e.MISSING_VALUE="MISSING_VALUE",e.INVALID_VALUE="INVALID_VALUE",e.MISSING_INTL_API="MISSING_INTL_API"}(Xa||(Xa={}));var ei,ti=function(e){function t(t,a,i){var n=e.call(this,t)||this;return n.code=a,n.originalMessage=i,n}return a(t,e),t.prototype.toString=function(){return"[formatjs Error: ".concat(this.code,"] ").concat(this.message)},t}(Error),ai=function(e){function t(t,a,i,n){return e.call(this,'Invalid values for "'.concat(t,'": "').concat(a,'". Options are "').concat(Object.keys(i).join('", "'),'"'),Xa.INVALID_VALUE,n)||this}return a(t,e),t}(ti),ii=function(e){function t(t,a,i){return e.call(this,'Value for "'.concat(t,'" must be of type ').concat(a),Xa.INVALID_VALUE,i)||this}return a(t,e),t}(ti),ni=function(e){function t(t,a){return e.call(this,'The intl string context variable "'.concat(t,'" was not provided to the string "').concat(a,'"'),Xa.MISSING_VALUE,a)||this}return a(t,e),t}(ti);function si(e){return"function"==typeof e}function ri(e,t,a,i,n,s,r){if(1===e.length&&Gt(e[0]))return[{type:ei.literal,value:e[0].value}];for(var o=[],l=0,u=e;l0?new Intl.Locale(t[0]):new Intl.Locale("string"==typeof e?e:e[0])},e.__parse=Ya,e.formats={number:{integer:{maximumFractionDigits:0},currency:{style:"currency"},percent:{style:"percent"}},date:{short:{month:"numeric",day:"numeric",year:"2-digit"},medium:{month:"short",day:"numeric",year:"numeric"},long:{month:"long",day:"numeric",year:"numeric"},full:{weekday:"long",month:"long",day:"numeric",year:"numeric"}},time:{short:{hour:"numeric",minute:"numeric"},medium:{hour:"numeric",minute:"numeric",second:"numeric"},long:{hour:"numeric",minute:"numeric",second:"numeric",timeZoneName:"short"},full:{hour:"numeric",minute:"numeric",second:"numeric",timeZoneName:"short"}}},e}(),di=ui;const ci={de:ut,en:mt,es:yt,fr:Et,it:Tt,nl:Pt,no:Lt,sk:Yt};function hi(e,t,...a){const i=t.replace(/['"]+/g,"");let n;try{n=e.split(".").reduce(((e,t)=>e[t]),ci[i])}catch(t){n=e.split(".").reduce(((e,t)=>e[t]),ci.en)}if(void 0===n&&(n=e.split(".").reduce(((e,t)=>e[t]),ci.en)),!a.length)return n;const s={};for(let e=0;e{if(customElements.get("ha-checkbox")&&customElements.get("ha-slider"))return;await customElements.whenDefined("partial-panel-resolver");const e=document.createElement("partial-panel-resolver");e.hass={panels:[{url_path:"tmp",component_name:"config"}]},e._updateRoutes(),await e.routerOptions.routes.tmp.load(),await customElements.whenDefined("ha-panel-config");const t=document.createElement("ha-panel-config");await t.routerOptions.routes.automation.load()},_e="smart_irrigation",we="minutes",ke="hours",Se="days",Ee="imperial",Ae="metric",$e="Dewpoint",Me="Evapotranspiration",Te="Humidity",Oe="Precipitation",ze="Pressure",xe="Solar Radiation",De="Temperature",He="Windspeed",Pe="owm",Ne="sensor",Ce="static",je="pressure_type",Le="absolute",Be="relative",Ie="none",Re="source",Ue="sensorentity",Ye="static_value",Ve="unit",Ge="aggregate",Fe=["average","first","last","maximum","median","minimum","sum"],We="size",Ze="throughput",qe="duration",Ke="bucket",Xe=e=>e.callWS({type:_e+"/config"}),Je=e=>e.callWS({type:_e+"/zones"}),Qe=e=>e.callWS({type:_e+"/modules"}),et=e=>e.callWS({type:_e+"/mappings"}),tt=e=>{class t extends e{connectedCallback(){super.connectedCallback(),this.__checkSubscribed()}disconnectedCallback(){if(super.disconnectedCallback(),this.__unsubs){for(;this.__unsubs.length;){const e=this.__unsubs.pop();e instanceof Promise?e.then((e=>e())):e()}this.__unsubs=void 0}}updated(e){super.updated(e),e.has("hass")&&this.__checkSubscribed()}hassSubscribe(){return[]}__checkSubscribed(){void 0===this.__unsubs&&this.isConnected&&void 0!==this.hass&&(this.__unsubs=this.hassSubscribe())}}return n([pe({attribute:!1})],t.prototype,"hass",void 0),t};var at,it,nt,st={actions:{delete:"Lösche"},labels:{module:"Modul",no:"Nein",select:"Wähle",yes:"Ja"},attributes:{size:"Größe",throughput:"Durchfluss",state:"Zustand"}},rt={"default-zone":"Standard Zone","default-mapping":"Standard Sensorgruppe"},ot={calculation:{explanation:{"module-returned-evapotranspiration-deficiency":"Beachte: Diese Beschreibung nutzt '.' als Dezimalzeichen und zeigt gerundete Werte. Das Modul berechnete einen Evapotranspirationsmangel von","bucket-was":"Der alte Vorrat war","new-bucket-values-is":"Der neue Vorrat ist","old-bucket-variable":"alter_Vorrat",delta:"Veränderung","bucket-less-than-zero-irrigation-necessary":"Wenn der Vorrat < 0 ist, ist eine Bewässerung nötig.","steps-taken-to-calculate-duration":"Für eine exakte Berechnung der Dauer, wurden folgende Schritte durchgeführt","precipitation-rate-defined-as":"Der Niederschlag ist","duration-is-calculated-as":"Die Dauer ist",bucket:"Vorrat","precipitation-rate-variable":"Niederschlag","multiplier-is-applied":"Der Multiplikator wird angewendet. Der Multiplikator ist","duration-after-multiplier-is":"also ist die Dauer","maximum-duration-is-applied":"Die maximale Dauer wird angewendet. Diese ist","duration-after-maximum-duration-is":"also ist die Dauer","lead-time-is-applied":"Zuletzt wird die Vorlaufzeit angewendet. Die Vorlaufzeit ist","duration-after-lead-time-is":"also ist die Dauer","bucket-larger-than-or-equal-to-zero-no-irrigation-necessary":"Wenn der Vorrat >= 0 ist, ist keine Bewässerung nötig und die Dauer ist gleich","maximum-bucket-is":"Der maximale Vorrat ist"}}},lt={pyeto:{description:"Die Berechnung der Verunstungsrate basiert auf der FAO56-Formel aus der PyETO-Bibliothek"},static:{description:"Modul mit einer statisch konfigurierbaren Verdunstungsrate."},passthrough:{description:"Pass Through übernimmt den Evapotranspirationssensor und gibt seinen Wert zurück. Auf diese Weise werden alle Berechnungen der Verdunstung umgangen, außer der Anwendung von Aggregaten wie Summe, Durchschnitt etc)."}},ut={general:{cards:{"automatic-duration-calculation":{header:"Automatische Berechnung der Bewässerungsdauer",description:"Die Berechnung berücksichtigt die bis zu diesem Zeitpunkt gesammelten Wetterdaten und aktualisiert den Vorrat für jede automatische Zone. Anschließend wird die Dauer basierend auf dem neuen Vorrat angepasst und die gesammelten Wetterdaten entfernt.",labels:{"auto-calc-enabled":"Automatische Berechnung der Dauer pro Zone","auto-calc-time":"Berechne um"}},"automatic-update":{errors:{"warning-update-time-on-or-after-calc-time":"Hinweis: Die automatische Aktualisierung der Wetterdaten erfolgt bei oder nach der automatischen Berechnung der Bewässerungsdauer"},header:"Automatische Aktualisierung der Wetterdaten",description:"Die Wetterdaten werden automatisch gesammelt und gespeichert. Zur Berechnung der Zonen und Bewässerungsdauer sind Wetterdaten erforderlich.",labels:{"auto-update-enabled":"Automatisches Update der Wetterdaten","auto-update-delay":"Update Verzögerung","auto-update-interval":"Update der Sensordaten alle"},options:{days:"Tage",hours:"Stunden",minutes:"Minuten"}},"automatic-clear":{header:"Automatisches Löschen der Wetterdaten",description:"Gesammelte Wetterdaten zu einem bestimmten Zeitpunkt automatisch entfernen. Damit wird sicher gestellt, dass keine Wetterdaten von vergangenen Tagen übrig bleiben. Entferne die Wetterdaten nicht vor der Berechnung und verwende diese Option nur, wenn du erwartest, dass das automatische Update Wetterdaten erfasst hat, nachdem der Tag berechnet wurde. Idealerweise sollte dieser Schnitt so spät wie möglich Tag durchgeführt werden.",labels:{"automatic-clear-enabled":"Automatisches Löschen der Wetterdaten","automatic-clear-time":"Löschen der Wetterdaten um"}}},description:"Diese Seite ist für allgemeine Einstellungen.",title:"Allgemein"},help:{title:"Hilfe",cards:{"how-to-get-help":{title:"Hilfe bekommen","first-read-the":"Lies zuerst im",wiki:"Wiki","if-you-still-need-help":"Benötigst du weiterhin Hilfe, wende dich an das","community-forum":"Community Forum","or-open-a":"oder eröffne einen","github-issue":"Github Issue","english-only":"nur Englisch"}}},mappings:{cards:{"add-mapping":{actions:{add:"Hinzufügen"},header:"Sensorgruppe hinzufügen"},mapping:{aggregates:{average:"Durchschnitt",first:"Erster",last:"Letzter",maximum:"Maximum",median:"Median",minimum:"Minimum",sum:"Summe"},errors:{"cannot-delete-mapping-because-zones-use-it":"Diese Sensorgruppe kann nicht entfernt werden, da sie von mindestens einer Zone verwendet wird."},items:{dewpoint:"Taupunkt",evapotranspiration:"Verdunstung",humidity:"Feuchtigkeit","maximum temperature":"Maximum-Temperatur","minimum temperature":"Minimum-Temperatur",precipitation:"Gesamtniederschlag",pressure:"Luftdruck","solar radiation":"Sonnenstrahlung",temperature:"Temperatur",windspeed:"Windgeschwindigkeit"},pressure_types:{absolute:"absolut",relative:"relativ"},"pressure-type":"Der Luftdruck ist","sensor-aggregate-of-sensor-values-to-calculate":"des Sensors für die Berechnung.","sensor-aggregate-use-the":"Nutze den/die/das","sensor-entity":"Sensor Entität",static_value:"Wert","input-units":"Sensor Werte in",source:"Quelle",sources:{none:"Keine",openweathermap:"OpenWeatherMap",sensor:"Sensor",static:"Fester Wert"}}},description:"Füge eine oder mehrere Sensorgruppen hinzu, die Wetterdaten von OpenWeatherMap, Sensoren oder einer Kombination daraus abrufen. Jede Sensorgruppe kann für eine oder mehrere Zonen verwendet werden",labels:{"mapping-name":"Name"},no_items:"Es ist noch keine Sensorgruppe angelegt.",title:"Sensorgruppen"},modules:{cards:{"add-module":{actions:{add:"Hinzufügen"},header:"Modul hinzufügen"},module:{errors:{"cannot-delete-module-because-zones-use-it":"Dieses Modul kann nicht entfernt werden, da es von mindestens einer Zone verwendet wird."},labels:{configuration:"Konfiguration",required:"Feld ist erforderlich"},"translated-options":{DontEstimate:"Nicht berechnen",EstimateFromSunHours:"Basierend auf den Sonnenstunden",EstimateFromTemp:"Basierend auf der Temperatur",EstimateFromSunHoursAndTemperature:"Basierend auf dem Durchschnitt von Sonnenstunden und Temperatur"}}},description:"Füge ein oder mehrere Module hinzu. Module berechnen die Bewässerungsdauer. Jedes Modul hat seine eigene Konfiguration und kann zur Berechnung der Bewässerungsdauer für eine oder mehrere Zonen verwendet werden.",no_items:"Es ist noch kein Module angelegt.",title:"Module"},zones:{actions:{add:"Hinzufügen",calculate:"Bewässerungsdauer berechnen.",information:"Information",update:"Wetterdaten aktualisieren.","reset-bucket":"Vorrat zurücksetzen"},cards:{"add-zone":{actions:{add:"Hinzufügen"},header:"Zone hinzufügen"},"zone-actions":{actions:{"calculate-all":"Alle Zonen berechnen","update-all":"Alle Zonen aktualisieren","reset-all-buckets":"Alle Vorräte zurücksetzen","clear-all-weatherdata":"Alle Wetterdaten löschen"},header:"Aktionen für alle Zonen"}},description:"Füge eine oder mehrere Zonen hinzu. Die Bewässerungsdauer wird pro Zone, abhängig von Größe, Durchsatz, Status, Modul und Sensorgruppe berechnet.",labels:{bucket:"Vorrat",duration:"Dauer","lead-time":"Vorlaufzeit",mapping:"Sensorgruppe","maximum-duration":"Maximale Dauer",multiplier:"Multiplikator",name:"Name",size:"Größe",state:"Berechnung",states:{automatic:"Automatisch",disabled:"Aus",manual:"Manuell"},throughput:"Durchfluss","maximum-bucket":"Maximaler Vorrat",last_calculated:"Zuletzt berechnet","data-last-updated":"Daten zuletzt aktualisiert","data-number-of-data-points":"Anzahl der Messungen"},no_items:"Es ist noch keine Zone vorhanden.",title:"Zonen"}},dt="Smart Irrigation",ct={common:st,defaults:rt,module:ot,calcmodules:lt,panels:ut,title:dt},ht=Object.freeze({__proto__:null,common:st,defaults:rt,module:ot,calcmodules:lt,panels:ut,title:dt,default:ct}),pt={actions:{delete:"Delete"},labels:{module:"Module",no:"No",select:"Select",yes:"Yes"},attributes:{size:"size",throughput:"throughput",state:"state",bucket:"bucket",last_updated:"last updated",last_calculated:"last calculated",number_of_data_points:"number of data points"}},mt={"default-zone":"Default zone","default-mapping":"Default sensor group"},gt={calculation:{explanation:{"module-returned-evapotranspiration-deficiency":"Note: this explanation uses '.' as decimal separator, shows rounded and metric values. Module returned Evapotranspiration deficiency of","bucket-was":"Bucket was","new-bucket-values-is":"New bucket value is","old-bucket-variable":"old_bucket",delta:"delta","bucket-less-than-zero-irrigation-necessary":"Since bucket < 0, irrigation is necessary","steps-taken-to-calculate-duration":"To calculate the exact duration, the following steps were taken","precipitation-rate-defined-as":"The precipitation rate is defined as","duration-is-calculated-as":"The duration is calculated as",bucket:"bucket","precipitation-rate-variable":"precipitation_rate","multiplier-is-applied":"Now, the multiplier is applied. The multiplier is","duration-after-multiplier-is":"hence the duration is","maximum-duration-is-applied":"Then, the maximum duration is applied. The maximum duration is","duration-after-maximum-duration-is":"hence the duration is","lead-time-is-applied":"Finally, the lead time is applied. The lead time is","duration-after-lead-time-is":"hence the final duration is","bucket-larger-than-or-equal-to-zero-no-irrigation-necessary":"Since bucket >= 0, no irrigation is necessary and duration is set to","maximum-bucket-is":"maximum bucket size is"}}},ft={pyeto:{description:"Calculate duration based on the FAO56 calculation from the PyETO library"},static:{description:"'Dummy' module with a static configurable delta"},passthrough:{description:"Passthrough module that returns the value of an Evapotranspiration sensor as delta"}},vt={general:{cards:{"automatic-duration-calculation":{header:"Automatic duration calculation",description:"Calculation takes collected weatherdata up to that point and updates the bucket for each automatic zone. Then, the duration is adjusted based on the new bucket value and the collected weatherdata is removed.",labels:{"auto-calc-enabled":"Automatically calculate zone durations","auto-calc-time":"Calculate at"}},"automatic-update":{errors:{"warning-update-time-on-or-after-calc-time":"Warning: weatherdata update time on or after calculation time"},header:"Automatic weather data update",description:"Collect and store weather data automatically. Weather data is required to calculate zone buckets and durations.",labels:{"auto-update-enabled":"Automatically update weather data","auto-update-delay":"Update delay","auto-update-interval":"Update sensor data every"},options:{days:"days",hours:"hours",minutes:"minutes"}},"automatic-clear":{header:"Automatic weather data pruning",description:"Automatically remove collected weatherdata at a configured time. Use this to make sure that there is no left over weatherdata from previous days. Don't remove the weatherdata before you calculate and only use this option if you expect the automatic update to collect weatherdata after you calculated for the day. Ideally, you want to prune as late in the day as possible.",labels:{"automatic-clear-enabled":"Automatically clear collected weather data","automatic-clear-time":"Clear weather data at"}}},description:"This page provides global settings.",title:"General"},help:{title:"Help",cards:{"how-to-get-help":{title:"How to get help","first-read-the":"First, read the",wiki:"Wiki","if-you-still-need-help":"If you still need help reach out on the","community-forum":"Community forum","or-open-a":"or open a","github-issue":"Github Issue","english-only":"English only"}}},mappings:{cards:{"add-mapping":{actions:{add:"Add sensor group"},header:"Add sensor groups"},mapping:{aggregates:{average:"Average",first:"First",last:"Last",maximum:"Maximum",median:"Median",minimum:"Minimum",sum:"Sum"},errors:{"cannot-delete-mapping-because-zones-use-it":"You cannot delete this sensor group because there is at least one zone using it."},items:{dewpoint:"Dewpoint",evapotranspiration:"Evapotranspiration",humidity:"Humidity","maximum temperature":"Maximum temperature","minimum temperature":"Minimum temperature",precipitation:"Total precipitation",pressure:"Pressure","solar radiation":"Solar radiation",temperature:"Temperature",windspeed:"Wind speed"},pressure_types:{absolute:"absolute",relative:"relative"},"pressure-type":"Pressure is","sensor-aggregate-of-sensor-values-to-calculate":"of sensor values to calculate duration","sensor-aggregate-use-the":"Use the","sensor-entity":"Sensor entity",static_value:"Value","input-units":"Input provides values in",source:"Source",sources:{none:"None",openweathermap:"OpenWeatherMap",sensor:"Sensor",static:"Static value"}}},description:"Add one or more sensor groups that retrieve weather data from OpenWeatherMap, from sensors or a combination of these. You can map each sensor group to one or more zones",labels:{"mapping-name":"Name"},no_items:"There are no sensor group defined yet.",title:"Sensor Groups"},modules:{cards:{"add-module":{actions:{add:"Add module"},header:"Add module"},module:{errors:{"cannot-delete-module-because-zones-use-it":"You cannot delete this module because there is at least one zone using it."},labels:{configuration:"Configuration",required:"indicates a required field"},"translated-options":{DontEstimate:"Do not estimate",EstimateFromSunHours:"Estimate from sun hours",EstimateFromTemp:"Estimate from temperature",EstimateFromSunHoursAndTemperature:"Estimate from average of sun hours and temperature"}}},description:"Add one or more modules that calculate irrigation duration. Each module comes with its own configuration and can be used to calculate duration for one or more zones.",no_items:"There are no modules defined yet.",title:"Modules"},zones:{actions:{add:"Add",calculate:"Calculate",information:"Information",update:"Update","reset-bucket":"Reset bucket"},cards:{"add-zone":{actions:{add:"Add zone"},header:"Add zone"},"zone-actions":{actions:{"calculate-all":"Calculate all zones","update-all":"Update all zones","reset-all-buckets":"Reset all buckets","clear-all-weatherdata":"Clear all weatherdata"},header:"Actions on all zones"}},description:"Specify one or more irrigation zones here. The irrigation duration is calculated per zone, depending on size, throughput, state, module and sensor group.",labels:{bucket:"Bucket",duration:"Duration","lead-time":"Lead time",mapping:"Sensor Group","maximum-duration":"Maximum duration",multiplier:"Multiplier",name:"Name",size:"Size",state:"State",states:{automatic:"Automatic",disabled:"Disabled",manual:"Manual"},throughput:"Throughput","maximum-bucket":"Maximum bucket",last_calculated:"Last calculated","data-last-updated":"Data last updated","data-number-of-data-points":"Number of data points"},no_items:"There are no zones defined yet.",title:"Zones"}},bt="Smart Irrigation",yt={common:pt,defaults:mt,module:gt,calcmodules:ft,panels:vt,title:bt},_t=Object.freeze({__proto__:null,common:pt,defaults:mt,module:gt,calcmodules:ft,panels:vt,title:bt,default:yt}),wt={actions:{delete:"Eliminar"},labels:{module:"Módulo",no:"No",select:"Seleccionar",yes:"Sí"},attributes:{size:"Tamaño",throughput:"Rendimiento",state:"Estado"}},kt={"default-zone":"Zona de riego predeterminada","default-mapping":"Grupo de sensores predeterminado"},St={calculation:{explanation:{"module-returned-evapotranspiration-deficiency":"Nota: esta explicación utiliza '.' como separador decimal y muestra valores redondeados. El módulo devuelve una deficiencia de evapotranspiración de","bucket-was":"El cubo era","new-bucket-values-is":"El nuevo valor del cubo es","old-bucket-variable":"old_bucket",delta:"delta","bucket-less-than-zero-irrigation-necessary":"Dado que cubo < 0, el riego es necesario","steps-taken-to-calculate-duration":"Para calcular la duración exacta, se siguieron los siguientes pasos","precipitation-rate-defined-as":"La tasa de precipitación se define como","duration-is-calculated-as":"La duración se calcula como",bucket:"cubo","precipitation-rate-variable":"precipitation_rate","multiplier-is-applied":"A continuación, se aplica el multiplicador. El multiplicador es","duration-after-multiplier-is":"por lo que la duración es","maximum-duration-is-applied":"A continuación, se aplica la duración máxima. La duración máxima es","duration-after-maximum-duration-is":"por lo que la duración es","lead-time-is-applied":"Por último, se aplica el plazo de entrega. El plazo de entrega es","duration-after-lead-time-is":"por lo que la duración final es","bucket-larger-than-or-equal-to-zero-no-irrigation-necessary":"Como cubo >= 0, no es necesario regar y la duración se fija en","maximum-bucket-is":"El tamaño máximo de cubo es"}}},Et={pyeto:{description:"Calcular la duración a partir del cálculo FAO56 de la biblioteca PyETO"},static:{description:"Módulo 'de prueba' con un delta estático configurable"},passthrough:{description:"Módulo de paso que devuelve el valor de un sensor de evapotranspiración como delta"}},At={general:{cards:{"automatic-duration-calculation":{header:"Cálculo automático de la duración",labels:{"auto-calc-enabled":"Cálculo automático de la duración de las zonas","auto-calc-time":"Calcular en"}},"automatic-update":{errors:{"warning-update-time-on-or-after-calc-time":"Advertencia: la hora de actualización de los datos meteorológicos es igual o posterior a la hora de cálculo"},header:"Actualización automática de los datos meteorológicos",labels:{"auto-update-enabled":"Actualizar automáticamente los datos meteorológicos","auto-update-first-update":"(Primer) Actualización a las","auto-update-interval":"Actualizar datos del sensor cada"},options:{days:"días",hours:"horas",minutes:"minutos"}}},description:"Esta página provee configuraciones globales.",title:"General"},help:{title:"Ayuda",cards:{"how-to-get-help":{title:"Cómo obtener ayuda","first-read-the":"Primero lee la",wiki:"Wiki","if-you-still-need-help":"Si aún necesitas ayuda, puedes:","community-forum":"Comunidad/Foro","or-open-a":"o abrir un","github-issue":"Github Issue","english-only":"sólo en inglés"}}},mappings:{cards:{"add-mapping":{actions:{add:"Añadir grupo de sensores"},header:"Añadir grupos de sensores"},mapping:{aggregates:{average:"Promedio",first:"Primero",last:"Último",maximum:"Máximo",median:"Mediana",minimum:"Mínimo",sum:"Suma"},errors:{"cannot-delete-mapping-because-zones-use-it":"No puedes eliminar este grupo de sensores porque hay al menos una zona que lo está usando."},items:{dewpoint:"Punto de rocío",evapotranspiration:"Evapotranspiración",humidity:"Humedad","maximum temperature":"Temperatura máxima","minimum temperature":"Temperatura mínima",precipitation:"Precipitación total",pressure:"Presión","solar radiation":"Radiación solar",temperature:"Temperatura",windspeed:"Velocidad del viento"},"sensor-aggregate-of-sensor-values-to-calculate":"de los valores de los sensores para calcular la duración","sensor-aggregate-use-the":"Usar la","sensor-entity":"Entidad de sensor",static_value:"Valor estático","input-units":"Unidades de entrada",source:"Fuente",sources:{none:"Ninguno",openweathermap:"OpenWeatherMap",sensor:"Sensor",static:"Valor estático"}}},description:"Añada uno o más grupos de sensores que recuperen datos meteorológicos de OpenWeatherMap, de sensores o de una combinación de éstos. Puede asignar cada grupo de sensores a una o más zonas",labels:{"mapping-name":"Nombre del grupo de sensores"},no_items:"Aún no hay grupos de sensores definidos.",title:"Grupos de sensores"},modules:{cards:{"add-module":{actions:{add:"Añadir módulo"},header:"Añadir módulo"},module:{errors:{"cannot-delete-module-because-zones-use-it":"No puedes eliminar este módulo porque hay al menos una zona que lo está usando."},labels:{configuration:"Configuración",required:"Requerido"},"translated-options":{DontEstimate:"No estimar",EstimateFromSunHours:"Estimar desde horas de sol",EstimateFromTemp:"Estimar desde temperatura"}}},description:"Añada uno o varios módulos que calculen la duración del riego. Cada módulo tiene su propia configuración y puede utilizarse para calcular la duración de una o varias zonas.",no_items:"Aún no hay módulos definidos.",title:"Módulos"},zones:{actions:{add:"Añadir",calculate:"Calcular",information:"Información",update:"Actualizar","reset-bucket":"Resetear cubo"},cards:{"add-zone":{actions:{add:"Añadir zona"},header:"Añadir zona"},"zone-actions":{actions:{"calculate-all":"Calcular todas las zonas","update-all":"Actualizar todas las zonas","reset-all-buckets":"Resetear todos los cubos"},header:"Acciones en todas las zonas"}},description:"Especifique aquí una o varias zonas de riego. La duración del riego se calcula por zona, en función del tamaño, el rendimiento, el estado, el módulo y el grupo de sensores.",labels:{bucket:"Cubo",duration:"Duración","lead-time":"Tiempo de espera",mapping:"Grupo de sensores","maximum-duration":"Duración máxima",multiplier:"Multiplicador",name:"Nombre",size:"Tamaño",state:"Estado",states:{automatic:"Automático",disabled:"Desactivado",manual:"Manual"},throughput:"Rendimiento","maximum-bucket":"Cubo máximo"},no_items:"Aún no hay zonas definidas.",title:"Zonas"}},$t="Smart Irrigation",Mt={common:wt,defaults:kt,module:St,calcmodules:Et,panels:At,title:$t},Tt=Object.freeze({__proto__:null,common:wt,defaults:kt,module:St,calcmodules:Et,panels:At,title:$t,default:Mt}),Ot={actions:{delete:"Suppression"},labels:{module:"Module",no:"Non",select:"Sélectionner",yes:"Oui"},attributes:{size:"taille",throughput:"débit",state:"état"}},zt={"default-zone":"Zone par défaut","default-mapping":"Groupe de capteurs par défaut"},xt={calculation:{explanation:{"module-returned-evapotranspiration-deficiency":"NB: cette explication utilise '.' comme séparateur décimal, et affiche des valeurs arrondies. Le module a donné un manque d'Évapotranspiration de","bucket-was":"Le seau (bucket) était de","new-bucket-values-is":"La nouvelle valeur du seau (bucket) est","old-bucket-variable":"ancien_bucket",delta:"delta","bucket-less-than-zero-irrigation-necessary":"Puisque le seau (bucket) est < 0, l'irrigation est nécessaire","steps-taken-to-calculate-duration":"Pour calculer la durée d'irrigation, les étapes suivantes ont été réalisées","precipitation-rate-defined-as":"Le taux de précipitation est défini comme","duration-is-calculated-as":"La durée d'irrigation est calculée avec",bucket:"seau (bucket)","precipitation-rate-variable":"taux_precipitation","multiplier-is-applied":"Le multiplicateur est appliqué. Le multiplicateur est","duration-after-multiplier-is":"donc la durée d'irrigation est de","maximum-duration-is-applied":"Ensuite la durée maximale est appliquée. La durée maximale est de","duration-after-maximum-duration-is":"donc la durée d'irrigation est de","lead-time-is-applied":"Enfin, le délai est appliqué. Le délai est de","duration-after-lead-time-is":"et donc la durée finale est de","bucket-larger-than-or-equal-to-zero-no-irrigation-necessary":"Puisque le seau (bucket) est >= 0, l'irrigation n'est pas nécessaire, et la durée est réglée à","maximum-bucket-is":"la taille du seau (bucket) maximale est"}}},Dt={pyeto:{description:"Le calcul de durée est basée sur le calcul FAO56 de la bibliothèque PyETO"},static:{description:"Module 'Dummy' avec un delta statique configurable"},passthrough:{description:"Module passerelle qui renvoie la valeur d'un capteur d'Évapotranspiration comme delta"}},Ht={general:{cards:{"automatic-duration-calculation":{header:"Calcul automatique de la durée",labels:{"auto-calc-enabled":"Calcule automatiquement la durée par zone","auto-calc-time":"Calcule à"},description:"Le calcul prend en compte les données météo jusqu'à ce point et met à jour le seau (bucket) pour chaque zone automatique. Ensuite, la durée est ajustée par la nouvelle valeur de seau (bucket) et les données météo sont supprimées."},"automatic-update":{errors:{"warning-update-time-on-or-after-calc-time":"Attention: mise à jour des données météo au moment du, ou après le, calcul"},header:"Mise à jour automatique des données météo",labels:{"auto-update-enabled":"Met à jour les données météo automatiquement","auto-update-first-update":"(Première) Mise à jour à","auto-update-interval":"Mettre à jour les données des capteurs toutes les","auto-update-delay":"Délai de mise à jour"},options:{days:"jours",hours:"heures",minutes:"minutes"},description:"Récupère et stocke les données météo automatiquement. Des données météo sont nécessaires pour calculer les seaux (buckets) par zone et les durées."},"automatic-clear":{header:"Délestage automatique des données météo",description:"Suppression automatique des données météo collectées à une heure données. Utilisez ceci pour être sûr qu'il n'y ait plus de restes des données météo des jours précédents. Ne supprimez pas les données météo avant le calcul et n'utilisez cette option que si vous vous attendez à ce que les données météo soient récupérées après le calcul du jour. Idéalement, vous voudrez \"élaguer\" les données les plus tard possible dans la journée.",labels:{"automatic-clear-enabled":"Suppression automatique des données météo collectées","automatic-clear-time":"Supprimer les données météo à"}}},description:"Cette page fournit les réglages globaux.",title:"Général"},help:{title:"Aide",cards:{"how-to-get-help":{title:"Comment obtenir de l'aide","first-read-the":"Premièrement, lisez ",wiki:"Wiki","if-you-still-need-help":"Si vous avez toujours besoin d'aide, adressez vous sur le","community-forum":"forum communautaire","or-open-a":"ou ouvrez un","github-issue":"problème Github","english-only":"en Anglais uniquement"}}},mappings:{cards:{"add-mapping":{actions:{add:"Ajouter un groupe de capteurs"},header:"Ajouter des groupes de capteurs"},mapping:{aggregates:{average:"Moyenne",first:"Premier",last:"Dernier",maximum:"Maximum",median:"Médian",minimum:"Minimum",sum:"Somme"},errors:{"cannot-delete-mapping-because-zones-use-it":"Vous ne pouvez pas supprimer ce groupe de capteurs car au moins une zone l'utilise."},items:{dewpoint:"Point de rosée",evapotranspiration:"Évapotranspiration",humidity:"Humidité","maximum temperature":"Température maximale","minimum temperature":"Température minimale",precipitation:"Précipitation totale",pressure:"Pression","solar radiation":"Rayonnement solaire",temperature:"Température",windspeed:"Vitesse du vent"},"sensor-aggregate-of-sensor-values-to-calculate":"des valeurs des capteurs pour calculer la durée","sensor-aggregate-use-the":"Utiliser les","sensor-entity":"Entité capteur",static_value:"Valeur","input-units":"L'entité fournit des entrées en",source:"Source",sources:{none:"Aucun",openweathermap:"OpenWeatherMap",sensor:"Capteur",static:"Valeur statique"},pressure_types:{relative:"relative",absolute:"absolue"},"pressure-type":"La pression est","sensor-units":"Le capteur fournit les valeurs en"}},description:"Ajouter un ou plusieurs groupes de capteurs qui récupèrent les données météo de OpenWeatherMap, de capteurs locaux ou d'une combinaison de tous ceux-ci. Vous pouvez associer chaque groupe de capteurs avec une ou plusieurs zones",labels:{"mapping-name":"Nom"},no_items:"Il n'y a pas encore de groupe de capteurs définis.",title:"Groupes de capteurs"},modules:{cards:{"add-module":{actions:{add:"Ajouter un module"},header:"Ajout d'un module"},module:{errors:{"cannot-delete-module-because-zones-use-it":"Vous ne pouvez pas supprimer ce module car au moins une zone l'utilise."},labels:{configuration:"Configuration",required:"indique un champ requis"},"translated-options":{DontEstimate:"Ne fait pas d'estimation",EstimateFromSunHours:"Estimation à partir des heures d'ensoleillement",EstimateFromTemp:"Estimation à partir de la température"}}},description:"Ajouter un ou plusieurs modules qui calcule la durée d'irrigation. Chaque module vient avec sa propre configuration et peut être utilisé pour calculer la durée d'irrigation d'une ou plusieurs zones.",no_items:"Il n'y a aucun module défini pour l'instant.",title:"Modules"},zones:{actions:{add:"Ajouter",calculate:"Calculer",information:"Information",update:"Mise à jour","reset-bucket":"Mise à zéro du seau (bucket)"},cards:{"add-zone":{actions:{add:"Ajouter une zone"},header:"Ajout d'une zone"},"zone-actions":{actions:{"calculate-all":"Calculer pour toutes les zones","update-all":"Mise à jour de toutes les zones","reset-all-buckets":"Mise à zéro de tous les seaux (buckets)","clear-all-weatherdata":"Mise à zéro de toutes les données météo"},header:"Actions sur toutes les zones"}},description:"Spécifiez une ou plusieurs zones d'irrigation ici. La durée d'irrigation est calculée par zone, en fonction de la taille, du débit, état, module et groupe de capteurs.",labels:{bucket:"Seau",duration:"Durée","lead-time":"Délai",mapping:"Groupe de capteurs","maximum-duration":"Durée maximale",multiplier:"Multiplicateur",name:"Nom",size:"Taille",state:"État",states:{automatic:"Automatique",disabled:"Désactivé",manual:"Manuel"},throughput:"Débit","maximum-bucket":"Seau (bucket) maximum",last_calculated:"Dernier calcul","data-last-updated":"Dernière mise à jour","data-number-of-data-points":"Nombre de points de données"},no_items:"Il n'y a pas encore de zone définie.",title:"Zones"}},Pt="Smart Irrigation",Nt={common:Ot,defaults:zt,module:xt,calcmodules:Dt,panels:Ht,title:Pt},Ct=Object.freeze({__proto__:null,common:Ot,defaults:zt,module:xt,calcmodules:Dt,panels:Ht,title:Pt,default:Nt}),jt={actions:{delete:"Cancella"},labels:{module:"Modulo",no:"No",select:"Seleziona",yes:"Si"},attributes:{size:"size",throughput:"throughput",state:"state",bucket:"secchio",last_updated:"ultimo aggiornamento",last_calculated:"ultimo calcolo",number_of_data_points:"numero di punti dati"}},Lt={"default-zone":"Zona predefinita","default-mapping":"Mappatura predefinita"},Bt={calculation:{explanation:{"module-returned-evapotranspiration-deficiency":"Il modulo ha restituito un deficit di evapotraspirazione del","bucket-was":"Il secchio era","new-bucket-values-is":"Il nuovo valore del secchio è","old-bucket-variable":"old_bucket",delta:"delta","bucket-less-than-zero-irrigation-necessary":"Poiché secchio < 0, è necessaria l'irrigazione","steps-taken-to-calculate-duration":"Per calcolare la durata esatta, sono stati eseguiti i seguenti passaggi","precipitation-rate-defined-as":"Il tasso di precipitazione è definito come","duration-is-calculated-as":"La durata viene calcolata come",bucket:"bucket","precipitation-rate-variable":"precipitation_rate","multiplier-is-applied":"Ora viene applicato il moltiplicatore. Il moltiplicatore è","duration-after-multiplier-is":"quindi la durata è","maximum-duration-is-applied":"Quindi, viene applicata la durata massima. La durata massima è","duration-after-maximum-duration-is":"quindi la durata è","lead-time-is-applied":"Infine, viene applicato il lead time. Il tempo di consegna è","duration-after-lead-time-is":"quindi la durata finale è","bucket-larger-than-or-equal-to-zero-no-irrigation-necessary":"Poiché secchio >= 0, non è necessaria alcuna irrigazione e la durata è impostata su","maximum-bucket-is":"la dimensione massima del secchio è"}}},It={pyeto:{description:"Calcola la durata in base al calcolo FAO56 dalla libreria PyETO"},static:{description:"Modulo 'fittizio' con un delta configurabile statico"},passthrough:{description:"Modulo passthrough che restituisce il valore di un sensore di Evapotraspirazione sotto forma di delta"}},Rt={general:{cards:{"automatic-duration-calculation":{header:"Calcolo automatico della durata",description:"Il calcolo prende i dati meteorologici raccolti fino a quel momento e aggiorna il bucket per ciascuna zona automatica. Quindi, la durata viene regolata in base al nuovo valore del segmento e i dati meteorologici raccolti vengono rimossi.",labels:{"auto-calc-enabled":"Calcola automaticamente la durata delle zone","auto-calc-time":"Calcola a"}},"automatic-update":{errors:{"warning-update-time-on-or-after-calc-time":"Attenzione: ora di aggiornamento dei dati meteorologici in corrispondenza o dopo l'ora di calcolo"},header:"Aggiornamento automatico dei dati meteorologici",description:"Raccogli e archivia automaticamente i dati meteorologici. I dati meteorologici sono necessari per calcolare gli intervalli e le durate delle zone.",labels:{"auto-update-enabled":"Aggiorna automaticamente i dati meteorologici","auto-update-first-update":"(Primo) aggiornamento alle","auto-update-interval":"Aggiorna i dati del sensore ogni"},options:{days:"giorni",hours:"ore",minutes:"minuti"}},"automatic-clear":{header:"Eliminazione automatica dei dati meteo",description:"Rimuovi automaticamente i dati meteorologici raccolti all'orario configurato. Usalo per assicurarti che non siano rimasti dati meteorologici dei giorni precedenti. Non rimuovere i dati meteo prima del calcolo e utilizza questa opzione solo se prevedi che l'aggiornamento automatico raccolga i dati meteo dopo aver calcolato per la giornata. Idealmente, dovresti potare il più tardi possibile nella giornata.",labels:{"automatic-clear-enabled":"Cancella automaticamente i dati meteorologici raccolti","automatic-clear-time":"Cancella dati meteo a"}}},description:"Questa pagina fornisce le impostazioni globali.",title:"Generale"},help:{title:"Aiuto",cards:{"how-to-get-help":{title:"Come ottenere aiuto","first-read-the":"Per prima cosa, leggi il",wiki:"Wiki","if-you-still-need-help":"Se hai ancora bisogno di aiuto, contatta il","community-forum":"Forum della Comunità","or-open-a":"oppure apri un","github-issue":"Problema su Github","english-only":"soltanto in Inglese"}}},mappings:{cards:{"add-mapping":{actions:{add:"Aggiungi gruppo di sensori"},header:"Aggiungi gruppo di sensori"},mapping:{aggregates:{average:"Media",first:"Primo",last:"Ultimo",maximum:"Massimo",median:"Mediana",minimum:"Minimo",sum:"Somma"},errors:{"cannot-delete-mapping-because-zones-use-it":"Non è possibile eliminare questo gruppo di sensori perché almeno una zona lo utilizza."},items:{dewpoint:"Punto di rugiada",evapotranspiration:"Evapotraspirazione",humidity:"Umidità","maximum temperature":"Temperatura massima","minimum temperature":"Temperatura minima",precipitation:"Precipitazione",pressure:"Pressione","solar radiation":"Irradiamento solare",temperature:"Temperatura",windspeed:"Velocità del vento"},pressure_types:{absolute:"assoluta",relative:"relativa"},"pressure-type":"La pressione è","sensor-aggregate-of-sensor-values-to-calculate":"dei valori del sensore per calcolare la durata","sensor-aggregate-use-the":"Usa il","sensor-entity":"Entità sensore",static_value:"Valore","input-units":"L'input fornisce valori in",source:"Fonte",sources:{none:"Nessuna",openweathermap:"OpenWeatherMap",sensor:"Sensore",static:"Valore statico"}}},description:"Aggiungi uno o più gruppi di sensori che recuperano i dati meteorologici da OpenWeatherMap, da sensori o da una combinazione di questi. È possibile mappare ciascun gruppo di sensori su una o più zone",labels:{"mapping-name":"Nome"},no_items:"Non è ancora stato definito alcun gruppo di sensori.",title:"Gruppi di sensori"},modules:{cards:{"add-module":{actions:{add:"Aggiungi modulo"},header:"Aggiungi modulo"},module:{errors:{"cannot-delete-module-because-zones-use-it":"Non puoi eliminare questo modulo perché almeno una zona lo utilizza."},labels:{configuration:"Configurazione",required:"indica un campo richiesto"},"translated-options":{DontEstimate:"Non stimare",EstimateFromSunHours:"Stima dalle ore solari",EstimateFromTemp:"Stima dalla temperatura",EstimateFromSunHoursAndTemperature:"Stima dalla media delle ore di sole e della temperatura"}}},description:"Aggiungi uno o più moduli che calcolano la durata dell'irrigazione. Ogni modulo viene fornito con la propria configurazione e può essere utilizzato per calcolare la durata di una o più zone.",no_items:"Non ci sono ancora moduli definiti.",title:"Moduli"},zones:{actions:{add:"Aggiungi",calculate:"Calcola",information:"Informazioni",update:"Aggiorna","reset-bucket":"Reimposta il secchio"},cards:{"add-zone":{actions:{add:"Aggiungi zona"},header:"Aggiungi zona"},"zone-actions":{actions:{"calculate-all":"Calcola tutte le zone","update-all":"Aggiorna tutte le zone","reset-all-buckets":"Reimposta tutte le zone","clear-all-weatherdata":"Cancella tutti i dati meteo"},header:"Azioni su tutte le zone"}},description:"Specificare qui una o più zone di irrigazione. La durata dell'irrigazione viene calcolata per zona, a seconda delle dimensioni, della produttività, dello stato, del modulo e del gruppo di sensori.",labels:{bucket:"Secchio",duration:"Durata","lead-time":"Tempi di esecuzione",mapping:"Gruppo di sensori","maximum-duration":"Durata massima",multiplier:"Moltiplicatore",name:"Nome",size:"Misura",state:"Stato",states:{automatic:"Automatico",disabled:"Disabilitato",manual:"Manuale"},throughput:"Portata","maximum-bucket":"Secchio massimo",last_calculated:"Ultimo calcolo","data-last-updated":"Ultimo aggiornamento dei dati","data-number-of-data-points":"Numero di dati"},no_items:"Non ci sono ancora zone definite.",title:"Zone"}},Ut="Irrigazione Intelligente",Yt={common:jt,defaults:Lt,module:Bt,calcmodules:It,panels:Rt,title:Ut},Vt=Object.freeze({__proto__:null,common:jt,defaults:Lt,module:Bt,calcmodules:It,panels:Rt,title:Ut,default:Yt}),Gt={actions:{delete:"Verwijderen"},labels:{module:"Module",no:"Nee",select:"Kies",yes:"Ja"},attributes:{size:"afmeting",throughput:"doorvoer",state:"status"}},Ft={"default-zone":"Standaard zone","default-mapping":"Standaard sensorgroep"},Wt={calculation:{explanation:{"module-returned-evapotranspiration-deficiency":"NB: in deze uitleg wordt de '.' as decimaalscheidingsteken gebruikt, worden afgeronde en metrische getallen getoond. Module berekende ET waarde van","bucket-was":"Voorraad was","new-bucket-values-is":"Nieuwe voorraad is","old-bucket-variable":"oude_voorraad",delta:"verandering","bucket-less-than-zero-irrigation-necessary":"Omdat de voorraad < 0 is, is irrigatie nodig","steps-taken-to-calculate-duration":"On de exacte duur te berekenen werd het volgende gedaan","precipitation-rate-defined-as":"De neerslag is","duration-is-calculated-as":"De duur is",bucket:"voorraad","precipitation-rate-variable":"neerslag","multiplier-is-applied":"De vermenigvuldiger wordt toegepast. Deze is","duration-after-multiplier-is":"dus de duur is","maximum-duration-is-applied":"De maximum duur wordt toegepast. Deze is","duration-after-maximum-duration-is":"dus de duur is","lead-time-is-applied":"As laatste wordt de aanlooptijd toegepast. Deze is","duration-after-lead-time-is":"dus de uiteindelijke duur is","bucket-larger-than-or-equal-to-zero-no-irrigation-necessary":"Omdat de voorraad >= 0 is er geen irrigatie nodig en is de duur gelijk aan","maximum-bucket-is":"maximale voorraad grootte is"}}},Zt={pyeto:{description:"Bereken duur op basis van de FAU56 formule en de PyETO library"},static:{description:"Module met instelbare verandering"},passthrough:{description:"Geeft waarde van ET sensor as verandering terug"}},qt={general:{cards:{"automatic-duration-calculation":{header:"Automatische berekening van irrigatietijd",description:"Bij het berekenen wordt de verzamelde weersinformatie gebruikt om the voorraad en irrigatieduur per zone aan te passen. Daarna wordt de verzamelde weersinformatie verwijderd.",labels:{"auto-calc-enabled":"Automatisch irrigatietijd berekening voor elke zone","auto-calc-time":"Berekenen op"}},"automatic-update":{errors:{"warning-update-time-on-or-after-calc-time":"Let op: het automatisch bijwerken van weersinformatie vind plaats op of na de automatische berekening van irrigatietijd"},header:"Automatisch bijwerken van weersinformatie",description:"Verzamel en bewaar weersinformatie automatisch. Weersinformatie is nodig om vorraad en irrigatieduur per zone te berekenen.",labels:{"auto-update-enabled":"Automatisch weersinformatie bijwerken","auto-update-delay":"Vertraging","auto-update-interval":"Sensor data bijwerken elke"},options:{days:"dagen",hours:"uren",minutes:"minuten"}},"automatic-clear":{header:"Automatisch weersinformatie opruimen",description:"Verwijder weersinformatie op het ingestelde moment. Dit zorgt ervoor dat er geen weersinformatie van de vorige dag gebruikt kan worden voor berekeningen. Let op: verwijder geen weersinformatie voordat de berekening heeft plaatsgevonden. Gebruik deze optie als je verwacht dat er weersinformatie zal worden verzameld nadat de berekeningen voor de dag gedaan zijn. Verwijder weersinformatie zo laat mogelijk op de dag.",labels:{"automatic-clear-enabled":"Automatisch weersinformatie verwijderen","automatic-clear-time":"Verwijder weersinformatie om"}}},description:"Dit zijn de algemene instellingen.",title:"Algemeen"},help:{title:"Hulp",cards:{"how-to-get-help":{title:"Hulp vragen","first-read-the":"Allereerst, lees de",wiki:"Wiki","if-you-still-need-help":"Als je hierna nog steeds hulp nodig hebt, laat een bericht achter op het","community-forum":"Community forum","or-open-a":"of open een","github-issue":"Github Issue","english-only":"alleen Engels"}}},mappings:{cards:{"add-mapping":{actions:{add:"Toevoegen"},header:"Voeg sensorgroep toe"},mapping:{aggregates:{average:"Gemiddelde",first:"Eerste",last:"Laatste",maximum:"Maximum",median:"Mediaan",minimum:"Minimum",sum:"Totaal"},errors:{"cannot-delete-mapping-because-zones-use-it":"Deze sensorgroep kan niet worden verwijderd omdat er minimaal een zone gebruik van maakt."},items:{dewpoint:"Dauwpunt",evapotranspiration:"Verdamping",humidity:"Vochtigheid","maximum temperature":"Maximum temperatuur","minimum temperature":"Minimum temperatuur",precipitation:"Totale neerslag",pressure:"Druk","solar radiation":"Zonnestraling",temperature:"Temperatuur",windspeed:"Wind snelheid"},pressure_types:{absolute:"absoluut",relative:"relatief"},"pressure-type":"Druk is","sensor-aggregate-of-sensor-values-to-calculate":"van de sensor waardes om irrigatietijd te berekenen","sensor-aggregate-use-the":"Gebruik de/het","sensor-entity":"Sensor entiteit","input-units":"Invoer geeft waardes in",static_value:"Waarde",source:"Bron",sources:{none:"Geen",openweathermap:"OpenWeatherMap",sensor:"Sensor",static:"Vaste waarde"}}},description:"Voeg een of meer sensorgroepen toe die weergegevens ophalen van OpenWeatherMap, van sensoren of een combinatie. Elke sensorgroep kan worden gebruikt voor een of meerdere zones",labels:{"mapping-name":"Name"},no_items:"Er zijn nog geen sensorgroepen.",title:"Sensorgroepen"},modules:{cards:{"add-module":{actions:{add:"Toevoegen"},header:"Voeg module toe"},module:{errors:{"cannot-delete-module-because-zones-use-it":"Deze module kan niet worden verwijderd omdat er minimaal een zone gebruik van maakt."},labels:{configuration:"Instellingen",required:"verplicht veld"},"translated-options":{DontEstimate:"Niet berekenen",EstimateFromSunHours:"Gebaseerd op zon uren",EstimateFromTemp:"Gebaseerd op temperatuur"}}},description:"Voeg een of meerdere modules toe. Modules berekenen irrigatietijd. Elke module heeft zijn eigen configuratie and kan worden gebruikt voor het berekening van irrigatietijd voor een of meerdere zones.",no_items:"Er zijn nog geen modules.",title:"Modules"},zones:{actions:{add:"Toevoegen",calculate:"Bereken",information:"Informatie",update:"Bijwerken","reset-bucket":"Leeg voorraad"},cards:{"add-zone":{actions:{add:"Toevoegen"},header:"Voeg zone toe"},"zone-actions":{actions:{"calculate-all":"Bereken alle zones","update-all":"Werk alle zone data bij","reset-all-buckets":"Leeg alle voorraden","clear-all-weatherdata":"Verwijder alle weersinformatie"},header:"Acties voor alle zones"}},description:"Voeg een of meerdere zones toe. Per zone wordt de irrigatietijd berekend, afhankelijk van de afmeting, doorvoer, status, module en sensorgroep.",labels:{bucket:"Voorraad",duration:"Irrigatieduur","lead-time":"Aanlooptijd",mapping:"Sensorgroep","maximum-duration":"Maximale duur",multiplier:"Vermenigvuldiger",name:"Naam",size:"Afmeting",state:"Status",states:{automatic:"Automatisch",disabled:"Uit",manual:"Manueel"},throughput:"Doorvoer","maximum-bucket":"Maximale voorraad",last_calculated:"Berekend op","data-last-updated":"Bijgewerkt op","data-number-of-data-points":"Aantal datapunten"},no_items:"Er zijn nog geen zones.",title:"Zones"}},Kt="Smart Irrigation",Xt={common:Gt,defaults:Ft,module:Wt,calcmodules:Zt,panels:qt,title:Kt},Jt=Object.freeze({__proto__:null,common:Gt,defaults:Ft,module:Wt,calcmodules:Zt,panels:qt,title:Kt,default:Xt}),Qt={actions:{delete:"Slett"},labels:{module:"Modul",no:"Nei",select:"Velg",yes:"Ja"},attributes:{size:"størrelse",throughput:"kapasitet",state:"status"}},ea={"default-zone":"Standard sone","default-mapping":"Standard sensorguppe"},ta={calculation:{explanation:{"module-returned-evapotranspiration-deficiency":"Merk: Denne forklaringen bruker '.' som desimaltegn og viser avrundede verdier. Modulen returnerte evapotranspirasjonsunderskudd på","bucket-was":"Bucket var","new-bucket-values-is":"Ny bucket verdien er","old-bucket-variable":"gammel_bucket",delta:"delta","bucket-less-than-zero-irrigation-necessary":"Siden bucket < 0, Vanning er nødvendig.","steps-taken-to-calculate-duration":"For å beregne nøyaktig varighet, ble følgende trinn utført","precipitation-rate-defined-as":"Nedbørshastigheten er definert som","duration-is-calculated-as":"Varigheten beregnes som",bucket:"bucket","precipitation-rate-variable":"nedbørshastighet","multiplier-is-applied":"Nå blir multiplikatoren brukt. Multiplikatoren er","duration-after-multiplier-is":"derfor er varigheten","maximum-duration-is-applied":"Deretter blir den maksimale varigheten brukt. Den maksimale varigheten er","duration-after-maximum-duration-is":"derfor er varigheten","lead-time-is-applied":"Til slutt blir ledetiden brukt. Ledetiden er","duration-after-lead-time-is":"derfor er den endelige varigheten","bucket-larger-than-or-equal-to-zero-no-irrigation-necessary":"Siden bucket >= 0, Ingen vanning er nødvendig, og varigheten er satt til","maximum-bucket-is":"maksimum bucket stærrelse er"}}},aa={pyeto:{description:"Beregn varigheten basert på FAO56-beregningen fra PyETO-biblioteket"},static:{description:"'Dummy'-modul med en statisk konfigurerbar endring (delta)"},passthrough:{description:"En 'Passthrough'-modul som returnerer verdien av en Evapotranspiration-sensor som delta"}},ia={general:{cards:{"automatic-duration-calculation":{header:"Automatisk varighetsberegning",labels:{"auto-calc-enabled":"Beregn sonevarigheter automatisk","auto-calc-time":"Beregn ved"}},"automatic-update":{errors:{"warning-update-time-on-or-after-calc-time":"Advarsel: Oppdateringstidspunkt for værdata på eller etter beregningstidspunktet"},header:"Automatisk oppdatering av værdata",labels:{"auto-update-enabled":"Oppdater værdata automatisk","auto-update-first-update":"(Første) Oppdatering kl","auto-update-interval":"Oppdater sensordata hvert"},options:{days:"dager",hours:"timer",minutes:"minutter"}}},description:"Denne siden gir globale innstillinger.",title:"Generelt"},help:{title:"Hjelp",cards:{"how-to-get-help":{title:"Hvordan få hjelp","first-read-the":"Først, les",wiki:"Wikien","if-you-still-need-help":"Hvis du fremdeles trenger hjelp, ta kontakt på","community-forum":"Fellesskapsforumet","or-open-a":"eller åpne en","github-issue":"Github-sak","english-only":"Kun på engelsk"}}},mappings:{cards:{"add-mapping":{actions:{add:"Legg til sensorguppe"},header:"Legg til sensorgupper"},mapping:{aggregates:{average:"Gjennomsnitt",first:"Første",last:"Siste",maximum:"Maksimum",median:"Median",minimum:"Minimum",sum:"Sum"},errors:{"cannot-delete-mapping-because-zones-use-it":"Du kan ikke slette denne sensorguppen fordi minst én sone bruker den."},items:{dewpoint:"Duggpunkt",evapotranspiration:"Evapotranspirasjon",humidity:"Luftfuktighet","maximum temperature":"Maksimumstemperatur","minimum temperature":"Minimumstemperatur",precipitation:"Total nedbør",pressure:"Trykk","solar radiation":"Solstråling",temperature:"Temperatur",windspeed:"Vindhastighet"},"sensor-aggregate-of-sensor-values-to-calculate":"av sensordata for å beregne varighet","sensor-aggregate-use-the":"Bruk","sensor-entity":"Sensorenhet",static_value:"Verdi","input-units":"Inndata gir verdier i",source:"Kilde",sources:{none:"Ingen",openweathermap:"OpenWeatherMap",sensor:"Sensor",static:"Statisk verdi"}}},description:"Legg til en eller flere sensorgupper som henter værdata fra OpenWeatherMap, fra sensorer eller en kombinasjon av disse. Du kan tilordne hver sensorguppe til en eller flere soner",labels:{"mapping-name":"Navn"},no_items:"Det er ingen definerte sensorgupper ennå.",title:"Sensorgupper"},modules:{cards:{"add-module":{actions:{add:"Legg til modul"},header:"Legg til modul"},module:{errors:{"cannot-delete-module-because-zones-use-it":"Du kan ikke slette denne modulen fordi minst én sone bruker den."},labels:{configuration:"Konfigurasjon",required:"indikerer et obligatorisk felt"},"translated-options":{DontEstimate:"Ikke beregn",EstimateFromSunHours:"Beregn fra soltimer",EstimateFromTemp:"Beregn fra temperatur"}}},description:"Legg til en eller flere moduler som beregner vanningsvarighet. Hver modul har sin egen konfigurasjon og kan brukes til å beregne varighet for en eller flere soner.",no_items:"Det er ingen definerte moduler ennå.",title:"Moduler"},zones:{actions:{add:"Legg til",calculate:"Beregn",information:"Informasjon",update:"Oppdater","reset-bucket":"Nullstill bøtte"},cards:{"add-zone":{actions:{add:"Legg til sone"},header:"Legg til sone"},"zone-actions":{actions:{"calculate-all":"Beregn alle soner","update-all":"Oppdater alle soner","reset-all-buckets":"Nullstill alle bøtter"},header:"Handlinger på alle soner"}},description:"Spesifiser en eller flere vanningssoner her. Vanningens varighet beregnes per sone, avhengig av størrelse, gjennomstrømning, tilstand, modul og sensorguppe.",labels:{bucket:"Bøtte",duration:"Varighet","lead-time":"Ledetid",mapping:"Sensorguppe","maximum-duration":"Maksimal varighet",multiplier:"Multiplikator",name:"Navn",size:"Størrelse",state:"Tilstand",states:{automatic:"Automatisk",disabled:"Deaktivert",manual:"Manuell"},throughput:"Gjennomstrømning","maximum-bucket":"Maksimal bøtte"},no_items:"Det er ingen definerte soner ennå.",title:"Soner"},title:"Smart vanning"},na={common:Qt,defaults:ea,module:ta,calcmodules:aa,panels:ia},sa=Object.freeze({__proto__:null,common:Qt,defaults:ea,module:ta,calcmodules:aa,panels:ia,default:na}),ra={actions:{delete:"Zmazať"},labels:{module:"Modul",no:"Nie",select:"Zvoliť",yes:"Áno"},attributes:{size:"size",throughput:"priepustnosť",state:"stav",bucket:"nádoba"}},oa={"default-zone":"Predvolená zóna","default-mapping":"Predvolená skupina snímačov"},la={calculation:{explanation:{"module-returned-evapotranspiration-deficiency":"Poznámka: toto vysvetlenie používa '.' ako oddeľovač desatinných miest zobrazuje zaokrúhlené a metrické hodnoty. Modul vrátil nedostatok evapotranspirácie","bucket-was":"Vedro bolo","new-bucket-values-is":"Hodnota nového vedra je","old-bucket-variable":"staré_vedro",delta:"delta","bucket-less-than-zero-irrigation-necessary":"Keďže vedro < 0, je potrebné zavlažovanie","steps-taken-to-calculate-duration":"Na výpočet presného trvania sa vykonali nasledujúce kroky","precipitation-rate-defined-as":"Miera zrážok je definovaná ako","duration-is-calculated-as":"Trvanie sa vypočíta ako",bucket:"vedro","precipitation-rate-variable":"úhrn zrážok","multiplier-is-applied":"Teraz sa použije multiplikátor. Násobiteľ je","duration-after-multiplier-is":"teda trvanie je","maximum-duration-is-applied":"Potom sa použije maximálne trvanie. Maximálne trvanie je","duration-after-maximum-duration-is":"teda trvanie je","lead-time-is-applied":"Nakoniec sa použije dodacia lehota. Dodacia lehota je","duration-after-lead-time-is":"teda konečné trvanie je","bucket-larger-than-or-equal-to-zero-no-irrigation-necessary":"Keďže vedro >= 0, nie je potrebné žiadne zavlažovanie a trvanie je nastavené na","maximum-bucket-is":"maximálna veľkosť vedra je"}}},ua={pyeto:{description:"Vypočítajte trvanie na základe výpočtu FAO56 z knižnice PyETO"},static:{description:"'Atrapa' modul so statickou konfigurovateľnou deltou"},passthrough:{description:"Priechodný modul, ktorý vracia hodnotu evapotranspiračného senzora ako delta"}},da={general:{cards:{"automatic-duration-calculation":{header:"Automatický výpočet trvania",description:"Výpočet berie zhromaždené údaje o počasí až do tohto bodu a aktualizuje vedro pre každú automatickú zónu. Potom sa trvanie upraví na základe novej hodnoty segmentu a zhromaždené údaje o počasí sa odstránia.",labels:{"auto-calc-enabled":"Automaticky vypočítajte trvanie zón","auto-calc-time":"Vypočítajte pri"}},"automatic-update":{errors:{"warning-update-time-on-or-after-calc-time":"Upozornenie: Čas aktualizácie údajov o počasí v čase výpočtu alebo po ňom"},header:"Automatic weather data update",description:"Automaticky zbierajte a ukladajte údaje o počasí. Údaje o počasí sú potrebné na výpočet segmentov zón a trvania.",labels:{"auto-update-enabled":"Automaticky aktualizovať údaje o počasí","auto-update-delay":"Oneskorenie aktualizácie","auto-update-interval":"Aktualizujte údaje snímača každý"},options:{days:"dni",hours:"hodiny",minutes:"minúty"}},"automatic-clear":{header:"Automatické orezávanie údajov o počasí",description:"Automaticky odstráňte zhromaždené údaje o počasí v nakonfigurovanom čase. Použite to, aby ste sa uistili, že nezostali žiadne údaje o počasí z predchádzajúcich dní. Neodstraňujte údaje o počasí pred výpočtom a túto možnosť použite iba vtedy, ak očakávate, že automatická aktualizácia bude zhromažďovať údaje o počasí až po výpočte na daný deň. V ideálnom prípade chcete prerezávať tak neskoro, ako je to možné.",labels:{"automatic-clear-enabled":"Automaticky vymazať zhromaždené údaje o počasí","automatic-clear-time":"Vymazať údaje o počasí o"}}},description:"Táto stránka poskytuje globálne nastavenia.",title:"Všeobecné"},help:{title:"Pomoc",cards:{"how-to-get-help":{title:"Ako získať pomoc","first-read-the":"Najprv si prečítajte",wiki:"Wiki","if-you-still-need-help":"Ak stále potrebujete pomoc, obráťte sa na","community-forum":"komunitné fórum","or-open-a":"alebo otvorte a","github-issue":"Problém Github","english-only":"len anglicky"}}},mappings:{cards:{"add-mapping":{actions:{add:"Pridať skupinu snímačov"},header:"Pridajte skupiny senzorov"},mapping:{aggregates:{average:"Priemer",first:"Prvý",last:"Posledný",maximum:"Maximum",median:"Medián",minimum:"Minimum",sum:"Sum"},errors:{"cannot-delete-mapping-because-zones-use-it":"Túto skupinu senzorov nemôžete vymazať, pretože ju používa aspoň jedna zóna."},items:{dewpoint:"Rosný bod",evapotranspiration:"Evapotranspirácia",humidity:"Vlhkosť","maximum temperature":"Maximálna teplota","minimum temperature":"Minimálna teplota",precipitation:"Úhrn zrážok",pressure:"Tlak","solar radiation":"Slnečné žiarenie",temperature:"Teplota",windspeed:"Rýchlosť vetra"},pressure_types:{absolute:"absolútne",relative:"relatítne"},"pressure-type":"Tlak je","sensor-aggregate-of-sensor-values-to-calculate":"hodnôt snímača na výpočet trvania","sensor-aggregate-use-the":"Použiť","sensor-entity":"Entita snímača",static_value:"Hodnota","input-units":"Vstup poskytuje hodnoty v",source:"Zdroj",sources:{none:"Nie je",openweathermap:"OpenWeatherMap",sensor:"Snímač",static:"Statická hodnota"}}},description:"Pridajte jednu alebo viac skupín senzorov, ktoré získavajú údaje o počasí z OpenWeatherMap, zo senzorov alebo ich kombinácie. Každú skupinu senzorov môžete namapovať na jednu alebo viac zón",labels:{"mapping-name":"Názov"},no_items:"Zatiaľ nie je definovaná žiadna skupina senzorov.",title:"Skupiny senzorov"},modules:{cards:{"add-module":{actions:{add:"Pridať modul"},header:"Pridať modul"},module:{errors:{"cannot-delete-module-because-zones-use-it":"Tento modul nemôžete vymazať, pretože ho používa aspoň jedna zóna."},labels:{configuration:"Konfigurácia",required:"označuje povinné pole"},"translated-options":{DontEstimate:"Bez odhadu",EstimateFromSunHours:"Odhad zo slnečných hodín",EstimateFromTemp:"Odhad z teploty"}}},description:"Pridajte jeden alebo viac modulov, ktoré vypočítavajú trvanie zavlažovania. Každý modul sa dodáva s vlastnou konfiguráciou a možno ho použiť na výpočet trvania pre jednu alebo viac zón.",no_items:"Zatiaľ nie sú definované žiadne moduly.",title:"Moduly"},zones:{actions:{add:"Pridať",calculate:"Vypočítať",information:"Informácia",update:"Aktualizovať","reset-bucket":"Resetovať vedro"},cards:{"add-zone":{actions:{add:"Pridať zónu"},header:"Pridať zónu"},"zone-actions":{actions:{"calculate-all":"Vypočítajte všetky zóny","update-all":"Aktualizujte všetky zóny","reset-all-buckets":"Obnovte všetky vedrá","clear-all-weatherdata":"Vymazať všetky údaje o počasí"},header:"Akcie vo všetkých zónach"}},description:"Tu špecifikujte jednu alebo viac zavlažovacích zón. Trvanie zavlažovania sa vypočíta pre zónu v závislosti od veľkosti, výkonu, stavu, modulu a skupiny senzorov.",labels:{bucket:"Vedro",duration:"Trvanie","lead-time":"Dodacia lehota",mapping:"Skupina senzorov","maximum-duration":"Maximálne trvanie",multiplier:"Násobiteľ",name:"Názov",size:"Veľkosť",state:"Stav",states:{automatic:"Automatický",disabled:"Zakázaný",manual:"Manuány"},throughput:"Priepustnosť","maximum-bucket":"Maximálne vedro",last_calculated:"Naposledy vypočítané","data-last-updated":"Údaje boli naposledy aktualizované","data-number-of-data-points":"Počet údajových bodov"},no_items:"Zatiaľ nie sú definované žiadne zóny.",title:"Zóny"}},ca="Inteligentné zavlažovanie",ha={common:ra,defaults:oa,module:la,calcmodules:ua,panels:da,title:ca},pa=Object.freeze({__proto__:null,common:ra,defaults:oa,module:la,calcmodules:ua,panels:da,title:ca,default:ha});function ma(e){return e.type===it.literal}function ga(e){return e.type===it.argument}function fa(e){return e.type===it.number}function va(e){return e.type===it.date}function ba(e){return e.type===it.time}function ya(e){return e.type===it.select}function _a(e){return e.type===it.plural}function wa(e){return e.type===it.pound}function ka(e){return e.type===it.tag}function Sa(e){return!(!e||"object"!=typeof e||e.type!==nt.number)}function Ea(e){return!(!e||"object"!=typeof e||e.type!==nt.dateTime)}!function(e){e[e.EXPECT_ARGUMENT_CLOSING_BRACE=1]="EXPECT_ARGUMENT_CLOSING_BRACE",e[e.EMPTY_ARGUMENT=2]="EMPTY_ARGUMENT",e[e.MALFORMED_ARGUMENT=3]="MALFORMED_ARGUMENT",e[e.EXPECT_ARGUMENT_TYPE=4]="EXPECT_ARGUMENT_TYPE",e[e.INVALID_ARGUMENT_TYPE=5]="INVALID_ARGUMENT_TYPE",e[e.EXPECT_ARGUMENT_STYLE=6]="EXPECT_ARGUMENT_STYLE",e[e.INVALID_NUMBER_SKELETON=7]="INVALID_NUMBER_SKELETON",e[e.INVALID_DATE_TIME_SKELETON=8]="INVALID_DATE_TIME_SKELETON",e[e.EXPECT_NUMBER_SKELETON=9]="EXPECT_NUMBER_SKELETON",e[e.EXPECT_DATE_TIME_SKELETON=10]="EXPECT_DATE_TIME_SKELETON",e[e.UNCLOSED_QUOTE_IN_ARGUMENT_STYLE=11]="UNCLOSED_QUOTE_IN_ARGUMENT_STYLE",e[e.EXPECT_SELECT_ARGUMENT_OPTIONS=12]="EXPECT_SELECT_ARGUMENT_OPTIONS",e[e.EXPECT_PLURAL_ARGUMENT_OFFSET_VALUE=13]="EXPECT_PLURAL_ARGUMENT_OFFSET_VALUE",e[e.INVALID_PLURAL_ARGUMENT_OFFSET_VALUE=14]="INVALID_PLURAL_ARGUMENT_OFFSET_VALUE",e[e.EXPECT_SELECT_ARGUMENT_SELECTOR=15]="EXPECT_SELECT_ARGUMENT_SELECTOR",e[e.EXPECT_PLURAL_ARGUMENT_SELECTOR=16]="EXPECT_PLURAL_ARGUMENT_SELECTOR",e[e.EXPECT_SELECT_ARGUMENT_SELECTOR_FRAGMENT=17]="EXPECT_SELECT_ARGUMENT_SELECTOR_FRAGMENT",e[e.EXPECT_PLURAL_ARGUMENT_SELECTOR_FRAGMENT=18]="EXPECT_PLURAL_ARGUMENT_SELECTOR_FRAGMENT",e[e.INVALID_PLURAL_ARGUMENT_SELECTOR=19]="INVALID_PLURAL_ARGUMENT_SELECTOR",e[e.DUPLICATE_PLURAL_ARGUMENT_SELECTOR=20]="DUPLICATE_PLURAL_ARGUMENT_SELECTOR",e[e.DUPLICATE_SELECT_ARGUMENT_SELECTOR=21]="DUPLICATE_SELECT_ARGUMENT_SELECTOR",e[e.MISSING_OTHER_CLAUSE=22]="MISSING_OTHER_CLAUSE",e[e.INVALID_TAG=23]="INVALID_TAG",e[e.INVALID_TAG_NAME=25]="INVALID_TAG_NAME",e[e.UNMATCHED_CLOSING_TAG=26]="UNMATCHED_CLOSING_TAG",e[e.UNCLOSED_TAG=27]="UNCLOSED_TAG"}(at||(at={})),function(e){e[e.literal=0]="literal",e[e.argument=1]="argument",e[e.number=2]="number",e[e.date=3]="date",e[e.time=4]="time",e[e.select=5]="select",e[e.plural=6]="plural",e[e.pound=7]="pound",e[e.tag=8]="tag"}(it||(it={})),function(e){e[e.number=0]="number",e[e.dateTime=1]="dateTime"}(nt||(nt={}));var Aa=/[ \xA0\u1680\u2000-\u200A\u202F\u205F\u3000]/,$a=/(?:[Eec]{1,6}|G{1,5}|[Qq]{1,5}|(?:[yYur]+|U{1,5})|[ML]{1,5}|d{1,2}|D{1,3}|F{1}|[abB]{1,5}|[hkHK]{1,2}|w{1,2}|W{1}|m{1,2}|s{1,2}|[zZOvVxX]{1,4})(?=([^']*'[^']*')*[^']*$)/g;function Ma(e){var t={};return e.replace($a,(function(e){var a=e.length;switch(e[0]){case"G":t.era=4===a?"long":5===a?"narrow":"short";break;case"y":t.year=2===a?"2-digit":"numeric";break;case"Y":case"u":case"U":case"r":throw new RangeError("`Y/u/U/r` (year) patterns are not supported, use `y` instead");case"q":case"Q":throw new RangeError("`q/Q` (quarter) patterns are not supported");case"M":case"L":t.month=["numeric","2-digit","short","long","narrow"][a-1];break;case"w":case"W":throw new RangeError("`w/W` (week) patterns are not supported");case"d":t.day=["numeric","2-digit"][a-1];break;case"D":case"F":case"g":throw new RangeError("`D/F/g` (day) patterns are not supported, use `d` instead");case"E":t.weekday=4===a?"short":5===a?"narrow":"short";break;case"e":if(a<4)throw new RangeError("`e..eee` (weekday) patterns are not supported");t.weekday=["short","long","narrow","short"][a-4];break;case"c":if(a<4)throw new RangeError("`c..ccc` (weekday) patterns are not supported");t.weekday=["short","long","narrow","short"][a-4];break;case"a":t.hour12=!0;break;case"b":case"B":throw new RangeError("`b/B` (period) patterns are not supported, use `a` instead");case"h":t.hourCycle="h12",t.hour=["numeric","2-digit"][a-1];break;case"H":t.hourCycle="h23",t.hour=["numeric","2-digit"][a-1];break;case"K":t.hourCycle="h11",t.hour=["numeric","2-digit"][a-1];break;case"k":t.hourCycle="h24",t.hour=["numeric","2-digit"][a-1];break;case"j":case"J":case"C":throw new RangeError("`j/J/C` (hour) patterns are not supported, use `h/H/K/k` instead");case"m":t.minute=["numeric","2-digit"][a-1];break;case"s":t.second=["numeric","2-digit"][a-1];break;case"S":case"A":throw new RangeError("`S/A` (second) patterns are not supported, use `s` instead");case"z":t.timeZoneName=a<4?"short":"long";break;case"Z":case"O":case"v":case"V":case"X":case"x":throw new RangeError("`Z/O/v/V/X/x` (timeZone) patterns are not supported, use `z` instead")}return""})),t}var Ta=/[\t-\r \x85\u200E\u200F\u2028\u2029]/i;var Oa=/^\.(?:(0+)(\*)?|(#+)|(0+)(#+))$/g,za=/^(@+)?(\+|#+)?[rs]?$/g,xa=/(\*)(0+)|(#+)(0+)|(0+)/g,Da=/^(0+)$/;function Ha(e){var t={};return"r"===e[e.length-1]?t.roundingPriority="morePrecision":"s"===e[e.length-1]&&(t.roundingPriority="lessPrecision"),e.replace(za,(function(e,a,i){return"string"!=typeof i?(t.minimumSignificantDigits=a.length,t.maximumSignificantDigits=a.length):"+"===i?t.minimumSignificantDigits=a.length:"#"===a[0]?t.maximumSignificantDigits=a.length:(t.minimumSignificantDigits=a.length,t.maximumSignificantDigits=a.length+("string"==typeof i?i.length:0)),""})),t}function Pa(e){switch(e){case"sign-auto":return{signDisplay:"auto"};case"sign-accounting":case"()":return{currencySign:"accounting"};case"sign-always":case"+!":return{signDisplay:"always"};case"sign-accounting-always":case"()!":return{signDisplay:"always",currencySign:"accounting"};case"sign-except-zero":case"+?":return{signDisplay:"exceptZero"};case"sign-accounting-except-zero":case"()?":return{signDisplay:"exceptZero",currencySign:"accounting"};case"sign-never":case"+_":return{signDisplay:"never"}}}function Na(e){var t;if("E"===e[0]&&"E"===e[1]?(t={notation:"engineering"},e=e.slice(2)):"E"===e[0]&&(t={notation:"scientific"},e=e.slice(1)),t){var a=e.slice(0,2);if("+!"===a?(t.signDisplay="always",e=e.slice(2)):"+?"===a&&(t.signDisplay="exceptZero",e=e.slice(2)),!Da.test(e))throw new Error("Malformed concise eng/scientific notation");t.minimumIntegerDigits=e.length}return t}function Ca(e){var t=Pa(e);return t||{}}function ja(e){for(var t={},a=0,n=e;a1)throw new RangeError("integer-width stems only accept a single optional option");s.options[0].replace(xa,(function(e,a,i,n,s,r){if(a)t.minimumIntegerDigits=i.length;else{if(n&&s)throw new Error("We currently do not support maximum integer digits");if(r)throw new Error("We currently do not support exact integer digits")}return""}));continue}if(Da.test(s.stem))t.minimumIntegerDigits=s.stem.length;else if(Oa.test(s.stem)){if(s.options.length>1)throw new RangeError("Fraction-precision stems only accept a single optional option");s.stem.replace(Oa,(function(e,a,i,n,s,r){return"*"===i?t.minimumFractionDigits=a.length:n&&"#"===n[0]?t.maximumFractionDigits=n.length:s&&r?(t.minimumFractionDigits=s.length,t.maximumFractionDigits=s.length+r.length):(t.minimumFractionDigits=a.length,t.maximumFractionDigits=a.length),""}));var r=s.options[0];"w"===r?t=i(i({},t),{trailingZeroDisplay:"stripIfInteger"}):r&&(t=i(i({},t),Ha(r)))}else if(za.test(s.stem))t=i(i({},t),Ha(s.stem));else{var o=Pa(s.stem);o&&(t=i(i({},t),o));var l=Na(s.stem);l&&(t=i(i({},t),l))}}return t}var La,Ba={AX:["H"],BQ:["H"],CP:["H"],CZ:["H"],DK:["H"],FI:["H"],ID:["H"],IS:["H"],ML:["H"],NE:["H"],RU:["H"],SE:["H"],SJ:["H"],SK:["H"],AS:["h","H"],BT:["h","H"],DJ:["h","H"],ER:["h","H"],GH:["h","H"],IN:["h","H"],LS:["h","H"],PG:["h","H"],PW:["h","H"],SO:["h","H"],TO:["h","H"],VU:["h","H"],WS:["h","H"],"001":["H","h"],AL:["h","H","hB"],TD:["h","H","hB"],"ca-ES":["H","h","hB"],CF:["H","h","hB"],CM:["H","h","hB"],"fr-CA":["H","h","hB"],"gl-ES":["H","h","hB"],"it-CH":["H","h","hB"],"it-IT":["H","h","hB"],LU:["H","h","hB"],NP:["H","h","hB"],PF:["H","h","hB"],SC:["H","h","hB"],SM:["H","h","hB"],SN:["H","h","hB"],TF:["H","h","hB"],VA:["H","h","hB"],CY:["h","H","hb","hB"],GR:["h","H","hb","hB"],CO:["h","H","hB","hb"],DO:["h","H","hB","hb"],KP:["h","H","hB","hb"],KR:["h","H","hB","hb"],NA:["h","H","hB","hb"],PA:["h","H","hB","hb"],PR:["h","H","hB","hb"],VE:["h","H","hB","hb"],AC:["H","h","hb","hB"],AI:["H","h","hb","hB"],BW:["H","h","hb","hB"],BZ:["H","h","hb","hB"],CC:["H","h","hb","hB"],CK:["H","h","hb","hB"],CX:["H","h","hb","hB"],DG:["H","h","hb","hB"],FK:["H","h","hb","hB"],GB:["H","h","hb","hB"],GG:["H","h","hb","hB"],GI:["H","h","hb","hB"],IE:["H","h","hb","hB"],IM:["H","h","hb","hB"],IO:["H","h","hb","hB"],JE:["H","h","hb","hB"],LT:["H","h","hb","hB"],MK:["H","h","hb","hB"],MN:["H","h","hb","hB"],MS:["H","h","hb","hB"],NF:["H","h","hb","hB"],NG:["H","h","hb","hB"],NR:["H","h","hb","hB"],NU:["H","h","hb","hB"],PN:["H","h","hb","hB"],SH:["H","h","hb","hB"],SX:["H","h","hb","hB"],TA:["H","h","hb","hB"],ZA:["H","h","hb","hB"],"af-ZA":["H","h","hB","hb"],AR:["H","h","hB","hb"],CL:["H","h","hB","hb"],CR:["H","h","hB","hb"],CU:["H","h","hB","hb"],EA:["H","h","hB","hb"],"es-BO":["H","h","hB","hb"],"es-BR":["H","h","hB","hb"],"es-EC":["H","h","hB","hb"],"es-ES":["H","h","hB","hb"],"es-GQ":["H","h","hB","hb"],"es-PE":["H","h","hB","hb"],GT:["H","h","hB","hb"],HN:["H","h","hB","hb"],IC:["H","h","hB","hb"],KG:["H","h","hB","hb"],KM:["H","h","hB","hb"],LK:["H","h","hB","hb"],MA:["H","h","hB","hb"],MX:["H","h","hB","hb"],NI:["H","h","hB","hb"],PY:["H","h","hB","hb"],SV:["H","h","hB","hb"],UY:["H","h","hB","hb"],JP:["H","h","K"],AD:["H","hB"],AM:["H","hB"],AO:["H","hB"],AT:["H","hB"],AW:["H","hB"],BE:["H","hB"],BF:["H","hB"],BJ:["H","hB"],BL:["H","hB"],BR:["H","hB"],CG:["H","hB"],CI:["H","hB"],CV:["H","hB"],DE:["H","hB"],EE:["H","hB"],FR:["H","hB"],GA:["H","hB"],GF:["H","hB"],GN:["H","hB"],GP:["H","hB"],GW:["H","hB"],HR:["H","hB"],IL:["H","hB"],IT:["H","hB"],KZ:["H","hB"],MC:["H","hB"],MD:["H","hB"],MF:["H","hB"],MQ:["H","hB"],MZ:["H","hB"],NC:["H","hB"],NL:["H","hB"],PM:["H","hB"],PT:["H","hB"],RE:["H","hB"],RO:["H","hB"],SI:["H","hB"],SR:["H","hB"],ST:["H","hB"],TG:["H","hB"],TR:["H","hB"],WF:["H","hB"],YT:["H","hB"],BD:["h","hB","H"],PK:["h","hB","H"],AZ:["H","hB","h"],BA:["H","hB","h"],BG:["H","hB","h"],CH:["H","hB","h"],GE:["H","hB","h"],LI:["H","hB","h"],ME:["H","hB","h"],RS:["H","hB","h"],UA:["H","hB","h"],UZ:["H","hB","h"],XK:["H","hB","h"],AG:["h","hb","H","hB"],AU:["h","hb","H","hB"],BB:["h","hb","H","hB"],BM:["h","hb","H","hB"],BS:["h","hb","H","hB"],CA:["h","hb","H","hB"],DM:["h","hb","H","hB"],"en-001":["h","hb","H","hB"],FJ:["h","hb","H","hB"],FM:["h","hb","H","hB"],GD:["h","hb","H","hB"],GM:["h","hb","H","hB"],GU:["h","hb","H","hB"],GY:["h","hb","H","hB"],JM:["h","hb","H","hB"],KI:["h","hb","H","hB"],KN:["h","hb","H","hB"],KY:["h","hb","H","hB"],LC:["h","hb","H","hB"],LR:["h","hb","H","hB"],MH:["h","hb","H","hB"],MP:["h","hb","H","hB"],MW:["h","hb","H","hB"],NZ:["h","hb","H","hB"],SB:["h","hb","H","hB"],SG:["h","hb","H","hB"],SL:["h","hb","H","hB"],SS:["h","hb","H","hB"],SZ:["h","hb","H","hB"],TC:["h","hb","H","hB"],TT:["h","hb","H","hB"],UM:["h","hb","H","hB"],US:["h","hb","H","hB"],VC:["h","hb","H","hB"],VG:["h","hb","H","hB"],VI:["h","hb","H","hB"],ZM:["h","hb","H","hB"],BO:["H","hB","h","hb"],EC:["H","hB","h","hb"],ES:["H","hB","h","hb"],GQ:["H","hB","h","hb"],PE:["H","hB","h","hb"],AE:["h","hB","hb","H"],"ar-001":["h","hB","hb","H"],BH:["h","hB","hb","H"],DZ:["h","hB","hb","H"],EG:["h","hB","hb","H"],EH:["h","hB","hb","H"],HK:["h","hB","hb","H"],IQ:["h","hB","hb","H"],JO:["h","hB","hb","H"],KW:["h","hB","hb","H"],LB:["h","hB","hb","H"],LY:["h","hB","hb","H"],MO:["h","hB","hb","H"],MR:["h","hB","hb","H"],OM:["h","hB","hb","H"],PH:["h","hB","hb","H"],PS:["h","hB","hb","H"],QA:["h","hB","hb","H"],SA:["h","hB","hb","H"],SD:["h","hB","hb","H"],SY:["h","hB","hb","H"],TN:["h","hB","hb","H"],YE:["h","hB","hb","H"],AF:["H","hb","hB","h"],LA:["H","hb","hB","h"],CN:["H","hB","hb","h"],LV:["H","hB","hb","h"],TL:["H","hB","hb","h"],"zu-ZA":["H","hB","hb","h"],CD:["hB","H"],IR:["hB","H"],"hi-IN":["hB","h","H"],"kn-IN":["hB","h","H"],"ml-IN":["hB","h","H"],"te-IN":["hB","h","H"],KH:["hB","h","H","hb"],"ta-IN":["hB","h","hb","H"],BN:["hb","hB","h","H"],MY:["hb","hB","h","H"],ET:["hB","hb","h","H"],"gu-IN":["hB","hb","h","H"],"mr-IN":["hB","hb","h","H"],"pa-IN":["hB","hb","h","H"],TW:["hB","hb","h","H"],KE:["hB","hb","H","h"],MM:["hB","hb","H","h"],TZ:["hB","hb","H","h"],UG:["hB","hb","H","h"]};function Ia(e){var t=e.hourCycle;if(void 0===t&&e.hourCycles&&e.hourCycles.length&&(t=e.hourCycles[0]),t)switch(t){case"h24":return"k";case"h23":return"H";case"h12":return"h";case"h11":return"K";default:throw new Error("Invalid hourCycle")}var a,i=e.language;return"root"!==i&&(a=e.maximize().region),(Ba[a||""]||Ba[i||""]||Ba["".concat(i,"-001")]||Ba["001"])[0]}var Ra=new RegExp("^".concat(Aa.source,"*")),Ua=new RegExp("".concat(Aa.source,"*$"));function Ya(e,t){return{start:e,end:t}}var Va=!!String.prototype.startsWith,Ga=!!String.fromCodePoint,Fa=!!Object.fromEntries,Wa=!!String.prototype.codePointAt,Za=!!String.prototype.trimStart,qa=!!String.prototype.trimEnd,Ka=!!Number.isSafeInteger?Number.isSafeInteger:function(e){return"number"==typeof e&&isFinite(e)&&Math.floor(e)===e&&Math.abs(e)<=9007199254740991},Xa=!0;try{Xa="a"===(null===(La=si("([^\\p{White_Space}\\p{Pattern_Syntax}]*)","yu").exec("a"))||void 0===La?void 0:La[0])}catch(j){Xa=!1}var Ja,Qa=Va?function(e,t,a){return e.startsWith(t,a)}:function(e,t,a){return e.slice(a,a+t.length)===t},ei=Ga?String.fromCodePoint:function(){for(var e=[],t=0;ts;){if((a=e[s++])>1114111)throw RangeError(a+" is not a valid code point");i+=a<65536?String.fromCharCode(a):String.fromCharCode(55296+((a-=65536)>>10),a%1024+56320)}return i},ti=Fa?Object.fromEntries:function(e){for(var t={},a=0,i=e;a=a)){var i,n=e.charCodeAt(t);return n<55296||n>56319||t+1===a||(i=e.charCodeAt(t+1))<56320||i>57343?n:i-56320+(n-55296<<10)+65536}},ii=Za?function(e){return e.trimStart()}:function(e){return e.replace(Ra,"")},ni=qa?function(e){return e.trimEnd()}:function(e){return e.replace(Ua,"")};function si(e,t){return new RegExp(e,t)}if(Xa){var ri=si("([^\\p{White_Space}\\p{Pattern_Syntax}]*)","yu");Ja=function(e,t){var a;return ri.lastIndex=t,null!==(a=ri.exec(e)[1])&&void 0!==a?a:""}}else Ja=function(e,t){for(var a=[];;){var i=ai(e,t);if(void 0===i||di(i)||ci(i))break;a.push(i),t+=i>=65536?2:1}return ei.apply(void 0,a)};var oi=function(){function e(e,t){void 0===t&&(t={}),this.message=e,this.position={offset:0,line:1,column:1},this.ignoreTag=!!t.ignoreTag,this.locale=t.locale,this.requiresOtherClause=!!t.requiresOtherClause,this.shouldParseSkeletons=!!t.shouldParseSkeletons}return e.prototype.parse=function(){if(0!==this.offset())throw Error("parser can only be used once");return this.parseMessage(0,"",!1)},e.prototype.parseMessage=function(e,t,a){for(var i=[];!this.isEOF();){var n=this.char();if(123===n){if((s=this.parseArgument(e,a)).err)return s;i.push(s.val)}else{if(125===n&&e>0)break;if(35!==n||"plural"!==t&&"selectordinal"!==t){if(60===n&&!this.ignoreTag&&47===this.peek()){if(a)break;return this.error(at.UNMATCHED_CLOSING_TAG,Ya(this.clonePosition(),this.clonePosition()))}if(60===n&&!this.ignoreTag&&li(this.peek()||0)){if((s=this.parseTag(e,t)).err)return s;i.push(s.val)}else{var s;if((s=this.parseLiteral(e,t)).err)return s;i.push(s.val)}}else{var r=this.clonePosition();this.bump(),i.push({type:it.pound,location:Ya(r,this.clonePosition())})}}}return{val:i,err:null}},e.prototype.parseTag=function(e,t){var a=this.clonePosition();this.bump();var i=this.parseTagName();if(this.bumpSpace(),this.bumpIf("/>"))return{val:{type:it.literal,value:"<".concat(i,"/>"),location:Ya(a,this.clonePosition())},err:null};if(this.bumpIf(">")){var n=this.parseMessage(e+1,t,!0);if(n.err)return n;var s=n.val,r=this.clonePosition();if(this.bumpIf("")?{val:{type:it.tag,value:i,children:s,location:Ya(a,this.clonePosition())},err:null}:this.error(at.INVALID_TAG,Ya(r,this.clonePosition())))}return this.error(at.UNCLOSED_TAG,Ya(a,this.clonePosition()))}return this.error(at.INVALID_TAG,Ya(a,this.clonePosition()))},e.prototype.parseTagName=function(){var e=this.offset();for(this.bump();!this.isEOF()&&ui(this.char());)this.bump();return this.message.slice(e,this.offset())},e.prototype.parseLiteral=function(e,t){for(var a=this.clonePosition(),i="";;){var n=this.tryParseQuote(t);if(n)i+=n;else{var s=this.tryParseUnquoted(e,t);if(s)i+=s;else{var r=this.tryParseLeftAngleBracket();if(!r)break;i+=r}}}var o=Ya(a,this.clonePosition());return{val:{type:it.literal,value:i,location:o},err:null}},e.prototype.tryParseLeftAngleBracket=function(){return this.isEOF()||60!==this.char()||!this.ignoreTag&&(li(e=this.peek()||0)||47===e)?null:(this.bump(),"<");var e},e.prototype.tryParseQuote=function(e){if(this.isEOF()||39!==this.char())return null;switch(this.peek()){case 39:return this.bump(),this.bump(),"'";case 123:case 60:case 62:case 125:break;case 35:if("plural"===e||"selectordinal"===e)break;return null;default:return null}this.bump();var t=[this.char()];for(this.bump();!this.isEOF();){var a=this.char();if(39===a){if(39!==this.peek()){this.bump();break}t.push(39),this.bump()}else t.push(a);this.bump()}return ei.apply(void 0,t)},e.prototype.tryParseUnquoted=function(e,t){if(this.isEOF())return null;var a=this.char();return 60===a||123===a||35===a&&("plural"===t||"selectordinal"===t)||125===a&&e>0?null:(this.bump(),ei(a))},e.prototype.parseArgument=function(e,t){var a=this.clonePosition();if(this.bump(),this.bumpSpace(),this.isEOF())return this.error(at.EXPECT_ARGUMENT_CLOSING_BRACE,Ya(a,this.clonePosition()));if(125===this.char())return this.bump(),this.error(at.EMPTY_ARGUMENT,Ya(a,this.clonePosition()));var i=this.parseIdentifierIfPossible().value;if(!i)return this.error(at.MALFORMED_ARGUMENT,Ya(a,this.clonePosition()));if(this.bumpSpace(),this.isEOF())return this.error(at.EXPECT_ARGUMENT_CLOSING_BRACE,Ya(a,this.clonePosition()));switch(this.char()){case 125:return this.bump(),{val:{type:it.argument,value:i,location:Ya(a,this.clonePosition())},err:null};case 44:return this.bump(),this.bumpSpace(),this.isEOF()?this.error(at.EXPECT_ARGUMENT_CLOSING_BRACE,Ya(a,this.clonePosition())):this.parseArgumentOptions(e,t,i,a);default:return this.error(at.MALFORMED_ARGUMENT,Ya(a,this.clonePosition()))}},e.prototype.parseIdentifierIfPossible=function(){var e=this.clonePosition(),t=this.offset(),a=Ja(this.message,t),i=t+a.length;return this.bumpTo(i),{value:a,location:Ya(e,this.clonePosition())}},e.prototype.parseArgumentOptions=function(e,t,a,n){var s,r=this.clonePosition(),o=this.parseIdentifierIfPossible().value,l=this.clonePosition();switch(o){case"":return this.error(at.EXPECT_ARGUMENT_TYPE,Ya(r,l));case"number":case"date":case"time":this.bumpSpace();var u=null;if(this.bumpIf(",")){this.bumpSpace();var d=this.clonePosition();if((b=this.parseSimpleArgStyleIfPossible()).err)return b;if(0===(m=ni(b.val)).length)return this.error(at.EXPECT_ARGUMENT_STYLE,Ya(this.clonePosition(),this.clonePosition()));u={style:m,styleLocation:Ya(d,this.clonePosition())}}if((y=this.tryParseArgumentClose(n)).err)return y;var c=Ya(n,this.clonePosition());if(u&&Qa(null==u?void 0:u.style,"::",0)){var h=ii(u.style.slice(2));if("number"===o)return(b=this.parseNumberSkeletonFromString(h,u.styleLocation)).err?b:{val:{type:it.number,value:a,location:c,style:b.val},err:null};if(0===h.length)return this.error(at.EXPECT_DATE_TIME_SKELETON,c);var p=h;this.locale&&(p=function(e,t){for(var a="",i=0;i>1),l=Ia(t);for("H"!=l&&"k"!=l||(o=0);o-- >0;)a+="a";for(;r-- >0;)a=l+a}else a+="J"===n?"H":n}return a}(h,this.locale));var m={type:nt.dateTime,pattern:p,location:u.styleLocation,parsedOptions:this.shouldParseSkeletons?Ma(p):{}};return{val:{type:"date"===o?it.date:it.time,value:a,location:c,style:m},err:null}}return{val:{type:"number"===o?it.number:"date"===o?it.date:it.time,value:a,location:c,style:null!==(s=null==u?void 0:u.style)&&void 0!==s?s:null},err:null};case"plural":case"selectordinal":case"select":var g=this.clonePosition();if(this.bumpSpace(),!this.bumpIf(","))return this.error(at.EXPECT_SELECT_ARGUMENT_OPTIONS,Ya(g,i({},g)));this.bumpSpace();var f=this.parseIdentifierIfPossible(),v=0;if("select"!==o&&"offset"===f.value){if(!this.bumpIf(":"))return this.error(at.EXPECT_PLURAL_ARGUMENT_OFFSET_VALUE,Ya(this.clonePosition(),this.clonePosition()));var b;if(this.bumpSpace(),(b=this.tryParseDecimalInteger(at.EXPECT_PLURAL_ARGUMENT_OFFSET_VALUE,at.INVALID_PLURAL_ARGUMENT_OFFSET_VALUE)).err)return b;this.bumpSpace(),f=this.parseIdentifierIfPossible(),v=b.val}var y,_=this.tryParsePluralOrSelectOptions(e,o,t,f);if(_.err)return _;if((y=this.tryParseArgumentClose(n)).err)return y;var w=Ya(n,this.clonePosition());return"select"===o?{val:{type:it.select,value:a,options:ti(_.val),location:w},err:null}:{val:{type:it.plural,value:a,options:ti(_.val),offset:v,pluralType:"plural"===o?"cardinal":"ordinal",location:w},err:null};default:return this.error(at.INVALID_ARGUMENT_TYPE,Ya(r,l))}},e.prototype.tryParseArgumentClose=function(e){return this.isEOF()||125!==this.char()?this.error(at.EXPECT_ARGUMENT_CLOSING_BRACE,Ya(e,this.clonePosition())):(this.bump(),{val:!0,err:null})},e.prototype.parseSimpleArgStyleIfPossible=function(){for(var e=0,t=this.clonePosition();!this.isEOF();){switch(this.char()){case 39:this.bump();var a=this.clonePosition();if(!this.bumpUntil("'"))return this.error(at.UNCLOSED_QUOTE_IN_ARGUMENT_STYLE,Ya(a,this.clonePosition()));this.bump();break;case 123:e+=1,this.bump();break;case 125:if(!(e>0))return{val:this.message.slice(t.offset,this.offset()),err:null};e-=1;break;default:this.bump()}}return{val:this.message.slice(t.offset,this.offset()),err:null}},e.prototype.parseNumberSkeletonFromString=function(e,t){var a=[];try{a=function(e){if(0===e.length)throw new Error("Number skeleton cannot be empty");for(var t=e.split(Ta).filter((function(e){return e.length>0})),a=[],i=0,n=t;i=48&&r<=57))break;n=!0,s=10*s+(r-48),this.bump()}var o=Ya(i,this.clonePosition());return n?Ka(s*=a)?{val:s,err:null}:this.error(t,o):this.error(e,o)},e.prototype.offset=function(){return this.position.offset},e.prototype.isEOF=function(){return this.offset()===this.message.length},e.prototype.clonePosition=function(){return{offset:this.position.offset,line:this.position.line,column:this.position.column}},e.prototype.char=function(){var e=this.position.offset;if(e>=this.message.length)throw Error("out of bound");var t=ai(this.message,e);if(void 0===t)throw Error("Offset ".concat(e," is at invalid UTF-16 code unit boundary"));return t},e.prototype.error=function(e,t){return{val:null,err:{kind:e,message:this.message,location:t}}},e.prototype.bump=function(){if(!this.isEOF()){var e=this.char();10===e?(this.position.line+=1,this.position.column=1,this.position.offset+=1):(this.position.column+=1,this.position.offset+=e<65536?1:2)}},e.prototype.bumpIf=function(e){if(Qa(this.message,e,this.offset())){for(var t=0;t=0?(this.bumpTo(a),!0):(this.bumpTo(this.message.length),!1)},e.prototype.bumpTo=function(e){if(this.offset()>e)throw Error("targetOffset ".concat(e," must be greater than or equal to the current offset ").concat(this.offset()));for(e=Math.min(e,this.message.length);;){var t=this.offset();if(t===e)break;if(t>e)throw Error("targetOffset ".concat(e," is at invalid UTF-16 code unit boundary"));if(this.bump(),this.isEOF())break}},e.prototype.bumpSpace=function(){for(;!this.isEOF()&&di(this.char());)this.bump()},e.prototype.peek=function(){if(this.isEOF())return null;var e=this.char(),t=this.offset(),a=this.message.charCodeAt(t+(e>=65536?2:1));return null!=a?a:null},e}();function li(e){return e>=97&&e<=122||e>=65&&e<=90}function ui(e){return 45===e||46===e||e>=48&&e<=57||95===e||e>=97&&e<=122||e>=65&&e<=90||183==e||e>=192&&e<=214||e>=216&&e<=246||e>=248&&e<=893||e>=895&&e<=8191||e>=8204&&e<=8205||e>=8255&&e<=8256||e>=8304&&e<=8591||e>=11264&&e<=12271||e>=12289&&e<=55295||e>=63744&&e<=64975||e>=65008&&e<=65533||e>=65536&&e<=983039}function di(e){return e>=9&&e<=13||32===e||133===e||e>=8206&&e<=8207||8232===e||8233===e}function ci(e){return e>=33&&e<=35||36===e||e>=37&&e<=39||40===e||41===e||42===e||43===e||44===e||45===e||e>=46&&e<=47||e>=58&&e<=59||e>=60&&e<=62||e>=63&&e<=64||91===e||92===e||93===e||94===e||96===e||123===e||124===e||125===e||126===e||161===e||e>=162&&e<=165||166===e||167===e||169===e||171===e||172===e||174===e||176===e||177===e||182===e||187===e||191===e||215===e||247===e||e>=8208&&e<=8213||e>=8214&&e<=8215||8216===e||8217===e||8218===e||e>=8219&&e<=8220||8221===e||8222===e||8223===e||e>=8224&&e<=8231||e>=8240&&e<=8248||8249===e||8250===e||e>=8251&&e<=8254||e>=8257&&e<=8259||8260===e||8261===e||8262===e||e>=8263&&e<=8273||8274===e||8275===e||e>=8277&&e<=8286||e>=8592&&e<=8596||e>=8597&&e<=8601||e>=8602&&e<=8603||e>=8604&&e<=8607||8608===e||e>=8609&&e<=8610||8611===e||e>=8612&&e<=8613||8614===e||e>=8615&&e<=8621||8622===e||e>=8623&&e<=8653||e>=8654&&e<=8655||e>=8656&&e<=8657||8658===e||8659===e||8660===e||e>=8661&&e<=8691||e>=8692&&e<=8959||e>=8960&&e<=8967||8968===e||8969===e||8970===e||8971===e||e>=8972&&e<=8991||e>=8992&&e<=8993||e>=8994&&e<=9e3||9001===e||9002===e||e>=9003&&e<=9083||9084===e||e>=9085&&e<=9114||e>=9115&&e<=9139||e>=9140&&e<=9179||e>=9180&&e<=9185||e>=9186&&e<=9254||e>=9255&&e<=9279||e>=9280&&e<=9290||e>=9291&&e<=9311||e>=9472&&e<=9654||9655===e||e>=9656&&e<=9664||9665===e||e>=9666&&e<=9719||e>=9720&&e<=9727||e>=9728&&e<=9838||9839===e||e>=9840&&e<=10087||10088===e||10089===e||10090===e||10091===e||10092===e||10093===e||10094===e||10095===e||10096===e||10097===e||10098===e||10099===e||10100===e||10101===e||e>=10132&&e<=10175||e>=10176&&e<=10180||10181===e||10182===e||e>=10183&&e<=10213||10214===e||10215===e||10216===e||10217===e||10218===e||10219===e||10220===e||10221===e||10222===e||10223===e||e>=10224&&e<=10239||e>=10240&&e<=10495||e>=10496&&e<=10626||10627===e||10628===e||10629===e||10630===e||10631===e||10632===e||10633===e||10634===e||10635===e||10636===e||10637===e||10638===e||10639===e||10640===e||10641===e||10642===e||10643===e||10644===e||10645===e||10646===e||10647===e||10648===e||e>=10649&&e<=10711||10712===e||10713===e||10714===e||10715===e||e>=10716&&e<=10747||10748===e||10749===e||e>=10750&&e<=11007||e>=11008&&e<=11055||e>=11056&&e<=11076||e>=11077&&e<=11078||e>=11079&&e<=11084||e>=11085&&e<=11123||e>=11124&&e<=11125||e>=11126&&e<=11157||11158===e||e>=11159&&e<=11263||e>=11776&&e<=11777||11778===e||11779===e||11780===e||11781===e||e>=11782&&e<=11784||11785===e||11786===e||11787===e||11788===e||11789===e||e>=11790&&e<=11798||11799===e||e>=11800&&e<=11801||11802===e||11803===e||11804===e||11805===e||e>=11806&&e<=11807||11808===e||11809===e||11810===e||11811===e||11812===e||11813===e||11814===e||11815===e||11816===e||11817===e||e>=11818&&e<=11822||11823===e||e>=11824&&e<=11833||e>=11834&&e<=11835||e>=11836&&e<=11839||11840===e||11841===e||11842===e||e>=11843&&e<=11855||e>=11856&&e<=11857||11858===e||e>=11859&&e<=11903||e>=12289&&e<=12291||12296===e||12297===e||12298===e||12299===e||12300===e||12301===e||12302===e||12303===e||12304===e||12305===e||e>=12306&&e<=12307||12308===e||12309===e||12310===e||12311===e||12312===e||12313===e||12314===e||12315===e||12316===e||12317===e||e>=12318&&e<=12319||12320===e||12336===e||64830===e||64831===e||e>=65093&&e<=65094}function hi(e){e.forEach((function(e){if(delete e.location,ya(e)||_a(e))for(var t in e.options)delete e.options[t].location,hi(e.options[t].value);else fa(e)&&Sa(e.style)||(va(e)||ba(e))&&Ea(e.style)?delete e.style.location:ka(e)&&hi(e.children)}))}function pi(e,t){void 0===t&&(t={}),t=i({shouldParseSkeletons:!0,requiresOtherClause:!0},t);var a=new oi(e,t).parse();if(a.err){var n=SyntaxError(at[a.err.kind]);throw n.location=a.err.location,n.originalMessage=a.err.message,n}return(null==t?void 0:t.captureLocation)||hi(a.val),a.val}function mi(e,t){var a=t&&t.cache?t.cache:ki,i=t&&t.serializer?t.serializer:yi;return(t&&t.strategy?t.strategy:bi)(e,{cache:a,serializer:i})}function gi(e,t,a,i){var n,s=null==(n=i)||"number"==typeof n||"boolean"==typeof n?i:a(i),r=t.get(s);return void 0===r&&(r=e.call(this,i),t.set(s,r)),r}function fi(e,t,a){var i=Array.prototype.slice.call(arguments,3),n=a(i),s=t.get(n);return void 0===s&&(s=e.apply(this,i),t.set(n,s)),s}function vi(e,t,a,i,n){return a.bind(t,e,i,n)}function bi(e,t){return vi(e,this,1===e.length?gi:fi,t.cache.create(),t.serializer)}var yi=function(){return JSON.stringify(arguments)};function _i(){this.cache=Object.create(null)}_i.prototype.get=function(e){return this.cache[e]},_i.prototype.set=function(e,t){this.cache[e]=t};var wi,ki={create:function(){return new _i}},Si={variadic:function(e,t){return vi(e,this,fi,t.cache.create(),t.serializer)},monadic:function(e,t){return vi(e,this,gi,t.cache.create(),t.serializer)}};!function(e){e.MISSING_VALUE="MISSING_VALUE",e.INVALID_VALUE="INVALID_VALUE",e.MISSING_INTL_API="MISSING_INTL_API"}(wi||(wi={}));var Ei,Ai=function(e){function t(t,a,i){var n=e.call(this,t)||this;return n.code=a,n.originalMessage=i,n}return a(t,e),t.prototype.toString=function(){return"[formatjs Error: ".concat(this.code,"] ").concat(this.message)},t}(Error),$i=function(e){function t(t,a,i,n){return e.call(this,'Invalid values for "'.concat(t,'": "').concat(a,'". Options are "').concat(Object.keys(i).join('", "'),'"'),wi.INVALID_VALUE,n)||this}return a(t,e),t}(Ai),Mi=function(e){function t(t,a,i){return e.call(this,'Value for "'.concat(t,'" must be of type ').concat(a),wi.INVALID_VALUE,i)||this}return a(t,e),t}(Ai),Ti=function(e){function t(t,a){return e.call(this,'The intl string context variable "'.concat(t,'" was not provided to the string "').concat(a,'"'),wi.MISSING_VALUE,a)||this}return a(t,e),t}(Ai);function Oi(e){return"function"==typeof e}function zi(e,t,a,i,n,s,r){if(1===e.length&&ma(e[0]))return[{type:Ei.literal,value:e[0].value}];for(var o=[],l=0,u=e;l0?new Intl.Locale(t[0]):new Intl.Locale("string"==typeof e?e:e[0])},e.__parse=pi,e.formats={number:{integer:{maximumFractionDigits:0},currency:{style:"currency"},percent:{style:"percent"}},date:{short:{month:"numeric",day:"numeric",year:"2-digit"},medium:{month:"short",day:"numeric",year:"numeric"},long:{month:"long",day:"numeric",year:"numeric"},full:{weekday:"long",month:"long",day:"numeric",year:"numeric"}},time:{short:{hour:"numeric",minute:"numeric"},medium:{hour:"numeric",minute:"numeric",second:"numeric"},long:{hour:"numeric",minute:"numeric",second:"numeric",timeZoneName:"short"},full:{hour:"numeric",minute:"numeric",second:"numeric",timeZoneName:"short"}}},e}(),Pi=Hi;const Ni={de:ht,en:_t,es:Tt,fr:Ct,it:Vt,nl:Jt,no:sa,sk:pa};function Ci(e,t,...a){const i=t.replace(/['"]+/g,"");let n;try{n=e.split(".").reduce(((e,t)=>e[t]),Ni[i])}catch(t){n=e.split(".").reduce(((e,t)=>e[t]),Ni.en)}if(void 0===n&&(n=e.split(".").reduce(((e,t)=>e[t]),Ni.en)),!a.length)return n;const s={};for(let e=0;e(...t)=>({_$litDirective$:e,values:t}))(gi);function vi(e){return"true"===(e=null==e?void 0:e.toString().toLowerCase())||"1"===e}function bi(e,t){return(e=e.toString()).split(",")[t]}function yi(e,t){switch(t){case Ke:return e.units==$e?Y`${fi("mm")}`:Y`${fi("in")}`;case We:return e.units==$e?Y`${fi("m2")}`:Y`${fi("sq ft")}`;case Ze:return e.units==$e?Y`${fi("l/minute")}`:Y`${fi("gal/minute")}`;default:return Y``}}function _i(e,t){!function(e,t){const a=e.hasOwnProperty("tagName")?e:e.target;be(a,"show-dialog",{dialogTag:"error-dialog",dialogImport:()=>Promise.resolve().then((function(){return Ci})),dialogParams:{error:t}})}(t,Y` + */class Bi extends Li{constructor(e){if(super(e),this.et=G,e.type!==ji)throw Error(this.constructor.directiveName+"() can only be used in child bindings")}render(e){if(e===G||null==e)return this.ft=void 0,this.et=e;if(e===V)return e;if("string"!=typeof e)throw Error(this.constructor.directiveName+"() called with a non-string value");if(e===this.et)return this.ft;this.et=e;const t=[e];return t.raw=t,this.ft={_$litType$:this.constructor.resultType,strings:t,values:[]}}}Bi.directiveName="unsafeHTML",Bi.resultType=1;const Ii=(e=>(...t)=>({_$litDirective$:e,values:t}))(Bi);function Ri(e){return"true"===(e=null==e?void 0:e.toString().toLowerCase())||"1"===e}function Ui(e,t){return(e=e.toString()).split(",")[t]}function Yi(e,t){switch(t){case Ke:return e.units==Ae?Y`${Ii("mm")}`:Y`${Ii("in")}`;case We:return e.units==Ae?Y`${Ii("m2")}`:Y`${Ii("sq ft")}`;case Ze:return e.units==Ae?Y`${Ii("l/minute")}`:Y`${Ii("gal/minute")}`;default:return Y``}}function Vi(e,t){!function(e,t){const a=e.hasOwnProperty("tagName")?e:e.target;be(a,"show-dialog",{dialogTag:"error-dialog",dialogImport:()=>Promise.resolve().then((function(){return rn})),dialogParams:{error:t}})}(t,Y` Something went wrong!
${e.body.message?Y` @@ -74,7 +74,7 @@ function me(e,t){return(({finisher:e,descriptor:t})=>(a,i)=>{var n;if(void 0===i >report the bug. - `)}const wi=c` + `)}const Gi=c` ha-card { display: flex; flex-direction: column; @@ -234,7 +234,7 @@ function me(e,t){return(({finisher:e,descriptor:t})=>(a,i)=>{var n;if(void 0===i ha-dialog div.description { margin-bottom: 10px; } -`;var ki="M19,4H15.5L14.5,3H9.5L8.5,4H5V6H19M6,19A2,2 0 0,0 8,21H16A2,2 0 0,0 18,19V7H6V19Z",Si="M11,9H13V7H11M12,20C7.59,20 4,16.41 4,12C4,7.59 7.59,4 12,4C16.41,4 20,7.59 20,12C20,16.41 16.41,20 12,20M12,2A10,10 0 0,0 2,12A10,10 0 0,0 12,22A10,10 0 0,0 22,12A10,10 0 0,0 12,2M11,17H13V11H11V17Z";let Ei=class extends(tt(le)){hassSubscribe(){return this._fetchData(),[this.hass.connection.subscribeMessage((()=>this._fetchData()),{type:_e+"_config_updated"})]}async _fetchData(){var e,t;this.hass&&(this.config=await Xe(this.hass),this.data=(e=this.config,t=["calctime","autocalcenabled","autoupdateenabled","autoupdateschedule","autoupdatefirsttime","autoupdateinterval","autoclearenabled","cleardatatime"],e?Object.entries(e).filter((([e])=>t.includes(e))).reduce(((e,[t,a])=>Object.assign(e,{[t]:a})),{}):{}))}firstUpdated(){(async()=>{await ye()})()}render(){if(this.hass&&this.config&&this.data){let e=Y`
+`;var Fi="M19,4H15.5L14.5,3H9.5L8.5,4H5V6H19M6,19A2,2 0 0,0 8,21H16A2,2 0 0,0 18,19V7H6V19Z",Wi="M11,9H13V7H11M12,20C7.59,20 4,16.41 4,12C4,7.59 7.59,4 12,4C16.41,4 20,7.59 20,12C20,16.41 16.41,20 12,20M12,2A10,10 0 0,0 2,12A10,10 0 0,0 12,22A10,10 0 0,0 22,12A10,10 0 0,0 12,2M11,17H13V11H11V17Z";let Zi=class extends(tt(le)){hassSubscribe(){return this._fetchData(),[this.hass.connection.subscribeMessage((()=>this._fetchData()),{type:_e+"_config_updated"})]}async _fetchData(){var e,t;this.hass&&(this.config=await Xe(this.hass),this.data=(e=this.config,t=["calctime","autocalcenabled","autoupdateenabled","autoupdateschedule","autoupdatefirsttime","autoupdateinterval","autoclearenabled","cleardatatime"],e?Object.entries(e).filter((([e])=>t.includes(e))).reduce(((e,[t,a])=>Object.assign(e,{[t]:a})),{}):{}))}firstUpdated(){(async()=>{await ye()})()}render(){if(this.hass&&this.config&&this.data){let e=Y`
(a,i)=>{var n;if(void 0===i > > - ${hi("panels.zones.actions.information",this.hass.language)} + ${Ci("panels.zones.actions.information",this.hass.language)} - +
${Ci("panels.general.cards.automatic-duration-calculation.labels.auto-calc-enabled",this.hass.language)}: (a,i)=>{var n;if(void 0===i name="autocalcenabled" value="True" ?checked="${this.config.autocalcenabled}" - @change="${e=>{this.saveData({autocalcenabled:vi(e.target.value)})}}" + @change="${e=>{this.saveData({autocalcenabled:Ri(e.target.value)})}}" />${Ci("common.labels.yes",this.hass.language)} (a,i)=>{var n;if(void 0===i name="autocalcenabled" value="False" ?checked="${!this.config.autocalcenabled}" - @change="${e=>{this.saveData({autocalcenabled:vi(e.target.value)})}}" + @change="${e=>{this.saveData({autocalcenabled:Ri(e.target.value)})}}" />${Ci("common.labels.no",this.hass.language)}
`;this.data.autocalcenabled&&(e=Y`${e}
${Ci("panels.general.cards.automatic-duration-calculation.labels.auto-calc-time",this.hass.language)}: (a,i)=>{var n;if(void 0===i @input=${e=>{this.saveData({calctime:e.target.value})}} />
`),e=Y` ${e}`;let t=Y`
@@ -303,19 +303,19 @@ function me(e,t){return(({finisher:e,descriptor:t})=>(a,i)=>{var n;if(void 0===i > > - ${hi("panels.zones.actions.information",this.hass.language)} + ${Ci("panels.zones.actions.information",this.hass.language)} - +
${Ci("panels.general.cards.automatic-update.labels.auto-update-enabled",this.hass.language)}: (a,i)=>{var n;if(void 0===i name="autoupdateenabled" value="True" ?checked="${this.config.autoupdateenabled}" - @change="${e=>{this.saveData({autoupdateenabled:vi(e.target.value)})}}" + @change="${e=>{this.saveData({autoupdateenabled:Ri(e.target.value)})}}" />${Ci("common.labels.yes",this.hass.language)} (a,i)=>{var n;if(void 0===i name="autoupdateenabled" value="False" ?checked="${!this.config.autoupdateenabled}" - @change="${e=>{this.saveData({autoupdateenabled:vi(e.target.value)})}}" + @change="${e=>{this.saveData({autoupdateenabled:Ri(e.target.value)})}}" />${Ci("common.labels.no",this.hass.language)}
`;this.data.autoupdateenabled&&(t=Y`${t}
${Ci("panels.general.cards.automatic-update.labels.auto-update-interval",this.hass.language)}: (a,i)=>{var n;if(void 0===i value="${we}" ?selected="${this.data.autoupdateschedule===we}" > - ${hi("panels.general.cards.automatic-update.options.minutes",this.hass.language)} + ${Ci("panels.general.cards.automatic-update.options.minutes",this.hass.language)}
(a,i)=>{var n;if(void 0===i .value="${this.config.autoupdatedelay}" @input=${e=>{this.saveData({autoupdatedelay:parseInt(e.target.value)})}} /> -
`),t=Y``),t=Y`${t}`;let a=Y`
(a,i)=>{var n;if(void 0===i @click="${()=>this.toggleInformation("autocleardescription")}" > - ${hi("panels.zones.actions.information",this.hass.language)} + ${Ci("panels.zones.actions.information",this.hass.language)} - +
${Ci("panels.general.cards.automatic-clear.labels.automatic-clear-enabled",this.hass.language)}: (a,i)=>{var n;if(void 0===i name="autoclearenabled" value="True" ?checked="${this.config.autoclearenabled}" - @change="${e=>{this.saveData({autoclearenabled:vi(e.target.value)})}}" + @change="${e=>{this.saveData({autoclearenabled:Ri(e.target.value)})}}" />${Ci("common.labels.yes",this.hass.language)} (a,i)=>{var n;if(void 0===i name="autoclearenabled" value="False" ?checked="${!this.config.autoclearenabled}" - @change="${e=>{this.saveData({autoclearenabled:vi(e.target.value)})}}" + @change="${e=>{this.saveData({autoclearenabled:Ri(e.target.value)})}}" />${Ci("common.labels.no",this.hass.language)}
`;this.data.autoclearenabled&&(a=Y`${a}
${Ci("panels.general.cards.automatic-clear.labels.automatic-clear-time",this.hass.language)}: (a,i)=>{var n;if(void 0===i .value="${this.config.cleardatatime}" @input=${e=>{this.saveData({cleardatatime:e.target.value})}} /> -
`),a=Y`${a}
`;return Y``),a=Y`${a}`;return Y`
- ${hi("panels.general.description",this.hass.language)} + ${Ci("panels.general.description",this.hass.language)}
${t}${e}${a}`}return Y``}saveData(e){var t,a;this.hass&&this.data&&(this.data=Object.assign(Object.assign({},this.data),e),(t=this.hass,a=this.data,t.callApi("POST",_e+"/config",a)).catch((e=>_i(e,this.shadowRoot.querySelector("ha-card")))).then())}toggleInformation(e){var t;const a=null===(t=this.shadowRoot)||void 0===t?void 0:t.querySelector("#"+e);a&&("hidden"!=a.className?a.className="hidden":a.className="information")}static get styles(){return c` - ${wi} + >${t}${e}${a}`}return Y``}saveData(e){var t,a;this.hass&&this.data&&(this.data=Object.assign(Object.assign({},this.data),e),(t=this.hass,a=this.data,t.callApi("POST",_e+"/config",a)).catch((e=>Vi(e,this.shadowRoot.querySelector("ha-card")))).then())}toggleInformation(e){var t;const a=null===(t=this.shadowRoot)||void 0===t?void 0:t.querySelector("#"+e);a&&("hidden"!=a.className?a.className="hidden":a.className="information")}static get styles(){return c` + ${Gi} .hidden { display: none; } @@ -460,9 +460,9 @@ function me(e,t){return(({finisher:e,descriptor:t})=>(a,i)=>{var n;if(void 0===i margin-left: 20px; margin-top: 5px; } - `}};var $i;n([pe()],Ei.prototype,"narrow",void 0),n([pe()],Ei.prototype,"path",void 0),n([pe()],Ei.prototype,"data",void 0),n([pe()],Ei.prototype,"config",void 0),Ei=n([de("smart-irrigation-view-general")],Ei),function(e){e.Disabled="disabled",e.Manual="manual",e.Automatic="automatic"}($i||($i={}));"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self&&self;function Ai(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}function Mi(e){throw new Error('Could not dynamically require "'+e+'". Please configure the dynamicRequireTargets or/and ignoreDynamicRequires option of @rollup/plugin-commonjs appropriately for this require call to work.')}var Oi,Ti={exports:{}};(Oi=Ti).exports=function(){var e,t;function a(){return e.apply(null,arguments)}function i(t){e=t}function n(e){return e instanceof Array||"[object Array]"===Object.prototype.toString.call(e)}function s(e){return null!=e&&"[object Object]"===Object.prototype.toString.call(e)}function r(e,t){return Object.prototype.hasOwnProperty.call(e,t)}function o(e){if(Object.getOwnPropertyNames)return 0===Object.getOwnPropertyNames(e).length;var t;for(t in e)if(r(e,t))return!1;return!0}function l(e){return void 0===e}function u(e){return"number"==typeof e||"[object Number]"===Object.prototype.toString.call(e)}function d(e){return e instanceof Date||"[object Date]"===Object.prototype.toString.call(e)}function c(e,t){var a,i=[],n=e.length;for(a=0;a>>0;for(t=0;t0)for(a=0;a=0?a?"+":"":"-")+Math.pow(10,Math.max(0,n)).toString().substr(1)+i}var N=/(\[[^\[]*\])|(\\)?([Hh]mm(ss)?|Mo|MM?M?M?|Do|DDDo|DD?D?D?|ddd?d?|do?|w[o|w]?|W[o|W]?|Qo?|N{1,5}|YYYYYY|YYYYY|YYYY|YY|y{2,4}|yo?|gg(ggg?)?|GG(GGG?)?|e|E|a|A|hh?|HH?|kk?|mm?|ss?|S{1,9}|x|X|zz?|ZZ?|.)/g,C=/(\[[^\[]*\])|(\\)?(LTS|LT|LL?L?L?|l{1,4})/g,j={},L={};function B(e,t,a,i){var n=i;"string"==typeof i&&(n=function(){return this[i]()}),e&&(L[e]=n),t&&(L[t[0]]=function(){return P(n.apply(this,arguments),t[1],t[2])}),a&&(L[a]=function(){return this.localeData().ordinal(n.apply(this,arguments),e)})}function R(e){return e.match(/\[[\s\S]/)?e.replace(/^\[|\]$/g,""):e.replace(/\\/g,"")}function I(e){var t,a,i=e.match(N);for(t=0,a=i.length;t=0&&C.test(e);)e=e.replace(C,i),C.lastIndex=0,a-=1;return e}var G={LTS:"h:mm:ss A",LT:"h:mm A",L:"MM/DD/YYYY",LL:"MMMM D, YYYY",LLL:"MMMM D, YYYY h:mm A",LLLL:"dddd, MMMM D, YYYY h:mm A"};function V(e){var t=this._longDateFormat[e],a=this._longDateFormat[e.toUpperCase()];return t||!a?t:(this._longDateFormat[e]=a.match(N).map((function(e){return"MMMM"===e||"MM"===e||"DD"===e||"dddd"===e?e.slice(1):e})).join(""),this._longDateFormat[e])}var F="Invalid date";function W(){return this._invalidDate}var Z="%d",q=/\d{1,2}/;function K(e){return this._ordinal.replace("%d",e)}var X={future:"in %s",past:"%s ago",s:"a few seconds",ss:"%d seconds",m:"a minute",mm:"%d minutes",h:"an hour",hh:"%d hours",d:"a day",dd:"%d days",w:"a week",ww:"%d weeks",M:"a month",MM:"%d months",y:"a year",yy:"%d years"};function J(e,t,a,i){var n=this._relativeTime[a];return O(n)?n(e,t,a,i):n.replace(/%d/i,e)}function Q(e,t){var a=this._relativeTime[e>0?"future":"past"];return O(a)?a(t):a.replace(/%s/i,t)}var ee={};function te(e,t){var a=e.toLowerCase();ee[a]=ee[a+"s"]=ee[t]=e}function ae(e){return"string"==typeof e?ee[e]||ee[e.toLowerCase()]:void 0}function ie(e){var t,a,i={};for(a in e)r(e,a)&&(t=ae(a))&&(i[t]=e[a]);return i}var ne={};function se(e,t){ne[e]=t}function re(e){var t,a=[];for(t in e)r(e,t)&&a.push({unit:t,priority:ne[t]});return a.sort((function(e,t){return e.priority-t.priority})),a}function oe(e){return e%4==0&&e%100!=0||e%400==0}function le(e){return e<0?Math.ceil(e)||0:Math.floor(e)}function ue(e){var t=+e,a=0;return 0!==t&&isFinite(t)&&(a=le(t)),a}function de(e,t){return function(i){return null!=i?(he(this,e,i),a.updateOffset(this,t),this):ce(this,e)}}function ce(e,t){return e.isValid()?e._d["get"+(e._isUTC?"UTC":"")+t]():NaN}function he(e,t,a){e.isValid()&&!isNaN(a)&&("FullYear"===t&&oe(e.year())&&1===e.month()&&29===e.date()?(a=ue(a),e._d["set"+(e._isUTC?"UTC":"")+t](a,e.month(),Je(a,e.month()))):e._d["set"+(e._isUTC?"UTC":"")+t](a))}function pe(e){return O(this[e=ae(e)])?this[e]():this}function me(e,t){if("object"==typeof e){var a,i=re(e=ie(e)),n=i.length;for(a=0;a68?1900:2e3)};var gt=de("FullYear",!0);function ft(){return oe(this.year())}function vt(e,t,a,i,n,s,r){var o;return e<100&&e>=0?(o=new Date(e+400,t,a,i,n,s,r),isFinite(o.getFullYear())&&o.setFullYear(e)):o=new Date(e,t,a,i,n,s,r),o}function bt(e){var t,a;return e<100&&e>=0?((a=Array.prototype.slice.call(arguments))[0]=e+400,t=new Date(Date.UTC.apply(null,a)),isFinite(t.getUTCFullYear())&&t.setUTCFullYear(e)):t=new Date(Date.UTC.apply(null,arguments)),t}function yt(e,t,a){var i=7+t-a;return-(7+bt(e,0,i).getUTCDay()-t)%7+i-1}function _t(e,t,a,i,n){var s,r,o=1+7*(t-1)+(7+a-i)%7+yt(e,i,n);return o<=0?r=mt(s=e-1)+o:o>mt(e)?(s=e+1,r=o-mt(e)):(s=e,r=o),{year:s,dayOfYear:r}}function wt(e,t,a){var i,n,s=yt(e.year(),t,a),r=Math.floor((e.dayOfYear()-s-1)/7)+1;return r<1?i=r+kt(n=e.year()-1,t,a):r>kt(e.year(),t,a)?(i=r-kt(e.year(),t,a),n=e.year()+1):(n=e.year(),i=r),{week:i,year:n}}function kt(e,t,a){var i=yt(e,t,a),n=yt(e+1,t,a);return(mt(e)-i+n)/7}function St(e){return wt(e,this._week.dow,this._week.doy).week}B("w",["ww",2],"wo","week"),B("W",["WW",2],"Wo","isoWeek"),te("week","w"),te("isoWeek","W"),se("week",5),se("isoWeek",5),ze("w",we),ze("ww",we,ve),ze("W",we),ze("WW",we,ve),Be(["w","ww","W","WW"],(function(e,t,a,i){t[i.substr(0,1)]=ue(e)}));var Et={dow:0,doy:6};function $t(){return this._week.dow}function At(){return this._week.doy}function Mt(e){var t=this.localeData().week(this);return null==e?t:this.add(7*(e-t),"d")}function Ot(e){var t=wt(this,1,4).week;return null==e?t:this.add(7*(e-t),"d")}function Tt(e,t){return"string"!=typeof e?e:isNaN(e)?"number"==typeof(e=t.weekdaysParse(e))?e:null:parseInt(e,10)}function Dt(e,t){return"string"==typeof e?t.weekdaysParse(e)%7||7:isNaN(e)?null:e}function Ht(e,t){return e.slice(t,7).concat(e.slice(0,t))}B("d",0,"do","day"),B("dd",0,0,(function(e){return this.localeData().weekdaysMin(this,e)})),B("ddd",0,0,(function(e){return this.localeData().weekdaysShort(this,e)})),B("dddd",0,0,(function(e){return this.localeData().weekdays(this,e)})),B("e",0,0,"weekday"),B("E",0,0,"isoWeekday"),te("day","d"),te("weekday","e"),te("isoWeekday","E"),se("day",11),se("weekday",11),se("isoWeekday",11),ze("d",we),ze("e",we),ze("E",we),ze("dd",(function(e,t){return t.weekdaysMinRegex(e)})),ze("ddd",(function(e,t){return t.weekdaysShortRegex(e)})),ze("dddd",(function(e,t){return t.weekdaysRegex(e)})),Be(["dd","ddd","dddd"],(function(e,t,a,i){var n=a._locale.weekdaysParse(e,i,a._strict);null!=n?t.d=n:g(a).invalidWeekday=e})),Be(["d","e","E"],(function(e,t,a,i){t[i]=ue(e)}));var xt="Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),zt="Sun_Mon_Tue_Wed_Thu_Fri_Sat".split("_"),Pt="Su_Mo_Tu_We_Th_Fr_Sa".split("_"),Nt=xe,Ct=xe,jt=xe;function Lt(e,t){var a=n(this._weekdays)?this._weekdays:this._weekdays[e&&!0!==e&&this._weekdays.isFormat.test(t)?"format":"standalone"];return!0===e?Ht(a,this._week.dow):e?a[e.day()]:a}function Bt(e){return!0===e?Ht(this._weekdaysShort,this._week.dow):e?this._weekdaysShort[e.day()]:this._weekdaysShort}function Rt(e){return!0===e?Ht(this._weekdaysMin,this._week.dow):e?this._weekdaysMin[e.day()]:this._weekdaysMin}function It(e,t,a){var i,n,s,r=e.toLocaleLowerCase();if(!this._weekdaysParse)for(this._weekdaysParse=[],this._shortWeekdaysParse=[],this._minWeekdaysParse=[],i=0;i<7;++i)s=p([2e3,1]).day(i),this._minWeekdaysParse[i]=this.weekdaysMin(s,"").toLocaleLowerCase(),this._shortWeekdaysParse[i]=this.weekdaysShort(s,"").toLocaleLowerCase(),this._weekdaysParse[i]=this.weekdays(s,"").toLocaleLowerCase();return a?"dddd"===t?-1!==(n=Ie.call(this._weekdaysParse,r))?n:null:"ddd"===t?-1!==(n=Ie.call(this._shortWeekdaysParse,r))?n:null:-1!==(n=Ie.call(this._minWeekdaysParse,r))?n:null:"dddd"===t?-1!==(n=Ie.call(this._weekdaysParse,r))||-1!==(n=Ie.call(this._shortWeekdaysParse,r))||-1!==(n=Ie.call(this._minWeekdaysParse,r))?n:null:"ddd"===t?-1!==(n=Ie.call(this._shortWeekdaysParse,r))||-1!==(n=Ie.call(this._weekdaysParse,r))||-1!==(n=Ie.call(this._minWeekdaysParse,r))?n:null:-1!==(n=Ie.call(this._minWeekdaysParse,r))||-1!==(n=Ie.call(this._weekdaysParse,r))||-1!==(n=Ie.call(this._shortWeekdaysParse,r))?n:null}function Ut(e,t,a){var i,n,s;if(this._weekdaysParseExact)return It.call(this,e,t,a);for(this._weekdaysParse||(this._weekdaysParse=[],this._minWeekdaysParse=[],this._shortWeekdaysParse=[],this._fullWeekdaysParse=[]),i=0;i<7;i++){if(n=p([2e3,1]).day(i),a&&!this._fullWeekdaysParse[i]&&(this._fullWeekdaysParse[i]=new RegExp("^"+this.weekdays(n,"").replace(".","\\.?")+"$","i"),this._shortWeekdaysParse[i]=new RegExp("^"+this.weekdaysShort(n,"").replace(".","\\.?")+"$","i"),this._minWeekdaysParse[i]=new RegExp("^"+this.weekdaysMin(n,"").replace(".","\\.?")+"$","i")),this._weekdaysParse[i]||(s="^"+this.weekdays(n,"")+"|^"+this.weekdaysShort(n,"")+"|^"+this.weekdaysMin(n,""),this._weekdaysParse[i]=new RegExp(s.replace(".",""),"i")),a&&"dddd"===t&&this._fullWeekdaysParse[i].test(e))return i;if(a&&"ddd"===t&&this._shortWeekdaysParse[i].test(e))return i;if(a&&"dd"===t&&this._minWeekdaysParse[i].test(e))return i;if(!a&&this._weekdaysParse[i].test(e))return i}}function Yt(e){if(!this.isValid())return null!=e?this:NaN;var t=this._isUTC?this._d.getUTCDay():this._d.getDay();return null!=e?(e=Tt(e,this.localeData()),this.add(e-t,"d")):t}function Gt(e){if(!this.isValid())return null!=e?this:NaN;var t=(this.day()+7-this.localeData()._week.dow)%7;return null==e?t:this.add(e-t,"d")}function Vt(e){if(!this.isValid())return null!=e?this:NaN;if(null!=e){var t=Dt(e,this.localeData());return this.day(this.day()%7?t:t-7)}return this.day()||7}function Ft(e){return this._weekdaysParseExact?(r(this,"_weekdaysRegex")||qt.call(this),e?this._weekdaysStrictRegex:this._weekdaysRegex):(r(this,"_weekdaysRegex")||(this._weekdaysRegex=Nt),this._weekdaysStrictRegex&&e?this._weekdaysStrictRegex:this._weekdaysRegex)}function Wt(e){return this._weekdaysParseExact?(r(this,"_weekdaysRegex")||qt.call(this),e?this._weekdaysShortStrictRegex:this._weekdaysShortRegex):(r(this,"_weekdaysShortRegex")||(this._weekdaysShortRegex=Ct),this._weekdaysShortStrictRegex&&e?this._weekdaysShortStrictRegex:this._weekdaysShortRegex)}function Zt(e){return this._weekdaysParseExact?(r(this,"_weekdaysRegex")||qt.call(this),e?this._weekdaysMinStrictRegex:this._weekdaysMinRegex):(r(this,"_weekdaysMinRegex")||(this._weekdaysMinRegex=jt),this._weekdaysMinStrictRegex&&e?this._weekdaysMinStrictRegex:this._weekdaysMinRegex)}function qt(){function e(e,t){return t.length-e.length}var t,a,i,n,s,r=[],o=[],l=[],u=[];for(t=0;t<7;t++)a=p([2e3,1]).day(t),i=Ce(this.weekdaysMin(a,"")),n=Ce(this.weekdaysShort(a,"")),s=Ce(this.weekdays(a,"")),r.push(i),o.push(n),l.push(s),u.push(i),u.push(n),u.push(s);r.sort(e),o.sort(e),l.sort(e),u.sort(e),this._weekdaysRegex=new RegExp("^("+u.join("|")+")","i"),this._weekdaysShortRegex=this._weekdaysRegex,this._weekdaysMinRegex=this._weekdaysRegex,this._weekdaysStrictRegex=new RegExp("^("+l.join("|")+")","i"),this._weekdaysShortStrictRegex=new RegExp("^("+o.join("|")+")","i"),this._weekdaysMinStrictRegex=new RegExp("^("+r.join("|")+")","i")}function Kt(){return this.hours()%12||12}function Xt(){return this.hours()||24}function Jt(e,t){B(e,0,0,(function(){return this.localeData().meridiem(this.hours(),this.minutes(),t)}))}function Qt(e,t){return t._meridiemParse}function ea(e){return"p"===(e+"").toLowerCase().charAt(0)}B("H",["HH",2],0,"hour"),B("h",["hh",2],0,Kt),B("k",["kk",2],0,Xt),B("hmm",0,0,(function(){return""+Kt.apply(this)+P(this.minutes(),2)})),B("hmmss",0,0,(function(){return""+Kt.apply(this)+P(this.minutes(),2)+P(this.seconds(),2)})),B("Hmm",0,0,(function(){return""+this.hours()+P(this.minutes(),2)})),B("Hmmss",0,0,(function(){return""+this.hours()+P(this.minutes(),2)+P(this.seconds(),2)})),Jt("a",!0),Jt("A",!1),te("hour","h"),se("hour",13),ze("a",Qt),ze("A",Qt),ze("H",we),ze("h",we),ze("k",we),ze("HH",we,ve),ze("hh",we,ve),ze("kk",we,ve),ze("hmm",ke),ze("hmmss",Se),ze("Hmm",ke),ze("Hmmss",Se),Le(["H","HH"],Ve),Le(["k","kk"],(function(e,t,a){var i=ue(e);t[Ve]=24===i?0:i})),Le(["a","A"],(function(e,t,a){a._isPm=a._locale.isPM(e),a._meridiem=e})),Le(["h","hh"],(function(e,t,a){t[Ve]=ue(e),g(a).bigHour=!0})),Le("hmm",(function(e,t,a){var i=e.length-2;t[Ve]=ue(e.substr(0,i)),t[Fe]=ue(e.substr(i)),g(a).bigHour=!0})),Le("hmmss",(function(e,t,a){var i=e.length-4,n=e.length-2;t[Ve]=ue(e.substr(0,i)),t[Fe]=ue(e.substr(i,2)),t[We]=ue(e.substr(n)),g(a).bigHour=!0})),Le("Hmm",(function(e,t,a){var i=e.length-2;t[Ve]=ue(e.substr(0,i)),t[Fe]=ue(e.substr(i))})),Le("Hmmss",(function(e,t,a){var i=e.length-4,n=e.length-2;t[Ve]=ue(e.substr(0,i)),t[Fe]=ue(e.substr(i,2)),t[We]=ue(e.substr(n))}));var ta=/[ap]\.?m?\.?/i,aa=de("Hours",!0);function ia(e,t,a){return e>11?a?"pm":"PM":a?"am":"AM"}var na,sa={calendar:x,longDateFormat:G,invalidDate:F,ordinal:Z,dayOfMonthOrdinalParse:q,relativeTime:X,months:Qe,monthsShort:et,week:Et,weekdays:xt,weekdaysMin:Pt,weekdaysShort:zt,meridiemParse:ta},ra={},oa={};function la(e,t){var a,i=Math.min(e.length,t.length);for(a=0;a0;){if(i=ha(n.slice(0,t).join("-")))return i;if(a&&a.length>=t&&la(n,a)>=t-1)break;t--}s++}return na}function ca(e){return null!=e.match("^[^/\\\\]*$")}function ha(e){var t=null;if(void 0===ra[e]&&Oi&&Oi.exports&&ca(e))try{t=na._abbr,Mi("./locale/"+e),pa(t)}catch(t){ra[e]=null}return ra[e]}function pa(e,t){var a;return e&&((a=l(t)?fa(e):ma(e,t))?na=a:"undefined"!=typeof console&&console.warn&&console.warn("Locale "+e+" not found. Did you forget to load it?")),na._abbr}function ma(e,t){if(null!==t){var a,i=sa;if(t.abbr=e,null!=ra[e])M("defineLocaleOverride","use moment.updateLocale(localeName, config) to change an existing locale. moment.defineLocale(localeName, config) should only be used for creating a new locale See http://momentjs.com/guides/#/warnings/define-locale/ for more info."),i=ra[e]._config;else if(null!=t.parentLocale)if(null!=ra[t.parentLocale])i=ra[t.parentLocale]._config;else{if(null==(a=ha(t.parentLocale)))return oa[t.parentLocale]||(oa[t.parentLocale]=[]),oa[t.parentLocale].push({name:e,config:t}),null;i=a._config}return ra[e]=new H(D(i,t)),oa[e]&&oa[e].forEach((function(e){ma(e.name,e.config)})),pa(e),ra[e]}return delete ra[e],null}function ga(e,t){if(null!=t){var a,i,n=sa;null!=ra[e]&&null!=ra[e].parentLocale?ra[e].set(D(ra[e]._config,t)):(null!=(i=ha(e))&&(n=i._config),t=D(n,t),null==i&&(t.abbr=e),(a=new H(t)).parentLocale=ra[e],ra[e]=a),pa(e)}else null!=ra[e]&&(null!=ra[e].parentLocale?(ra[e]=ra[e].parentLocale,e===pa()&&pa(e)):null!=ra[e]&&delete ra[e]);return ra[e]}function fa(e){var t;if(e&&e._locale&&e._locale._abbr&&(e=e._locale._abbr),!e)return na;if(!n(e)){if(t=ha(e))return t;e=[e]}return da(e)}function va(){return $(ra)}function ba(e){var t,a=e._a;return a&&-2===g(e).overflow&&(t=a[Ye]<0||a[Ye]>11?Ye:a[Ge]<1||a[Ge]>Je(a[Ue],a[Ye])?Ge:a[Ve]<0||a[Ve]>24||24===a[Ve]&&(0!==a[Fe]||0!==a[We]||0!==a[Ze])?Ve:a[Fe]<0||a[Fe]>59?Fe:a[We]<0||a[We]>59?We:a[Ze]<0||a[Ze]>999?Ze:-1,g(e)._overflowDayOfYear&&(tGe)&&(t=Ge),g(e)._overflowWeeks&&-1===t&&(t=qe),g(e)._overflowWeekday&&-1===t&&(t=Ke),g(e).overflow=t),e}var ya=/^\s*((?:[+-]\d{6}|\d{4})-(?:\d\d-\d\d|W\d\d-\d|W\d\d|\d\d\d|\d\d))(?:(T| )(\d\d(?::\d\d(?::\d\d(?:[.,]\d+)?)?)?)([+-]\d\d(?::?\d\d)?|\s*Z)?)?$/,_a=/^\s*((?:[+-]\d{6}|\d{4})(?:\d\d\d\d|W\d\d\d|W\d\d|\d\d\d|\d\d|))(?:(T| )(\d\d(?:\d\d(?:\d\d(?:[.,]\d+)?)?)?)([+-]\d\d(?::?\d\d)?|\s*Z)?)?$/,wa=/Z|[+-]\d\d(?::?\d\d)?/,ka=[["YYYYYY-MM-DD",/[+-]\d{6}-\d\d-\d\d/],["YYYY-MM-DD",/\d{4}-\d\d-\d\d/],["GGGG-[W]WW-E",/\d{4}-W\d\d-\d/],["GGGG-[W]WW",/\d{4}-W\d\d/,!1],["YYYY-DDD",/\d{4}-\d{3}/],["YYYY-MM",/\d{4}-\d\d/,!1],["YYYYYYMMDD",/[+-]\d{10}/],["YYYYMMDD",/\d{8}/],["GGGG[W]WWE",/\d{4}W\d{3}/],["GGGG[W]WW",/\d{4}W\d{2}/,!1],["YYYYDDD",/\d{7}/],["YYYYMM",/\d{6}/,!1],["YYYY",/\d{4}/,!1]],Sa=[["HH:mm:ss.SSSS",/\d\d:\d\d:\d\d\.\d+/],["HH:mm:ss,SSSS",/\d\d:\d\d:\d\d,\d+/],["HH:mm:ss",/\d\d:\d\d:\d\d/],["HH:mm",/\d\d:\d\d/],["HHmmss.SSSS",/\d\d\d\d\d\d\.\d+/],["HHmmss,SSSS",/\d\d\d\d\d\d,\d+/],["HHmmss",/\d\d\d\d\d\d/],["HHmm",/\d\d\d\d/],["HH",/\d\d/]],Ea=/^\/?Date\((-?\d+)/i,$a=/^(?:(Mon|Tue|Wed|Thu|Fri|Sat|Sun),?\s)?(\d{1,2})\s(Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec)\s(\d{2,4})\s(\d\d):(\d\d)(?::(\d\d))?\s(?:(UT|GMT|[ECMP][SD]T)|([Zz])|([+-]\d{4}))$/,Aa={UT:0,GMT:0,EDT:-240,EST:-300,CDT:-300,CST:-360,MDT:-360,MST:-420,PDT:-420,PST:-480};function Ma(e){var t,a,i,n,s,r,o=e._i,l=ya.exec(o)||_a.exec(o),u=ka.length,d=Sa.length;if(l){for(g(e).iso=!0,t=0,a=u;tmt(s)||0===e._dayOfYear)&&(g(e)._overflowDayOfYear=!0),a=bt(s,0,e._dayOfYear),e._a[Ye]=a.getUTCMonth(),e._a[Ge]=a.getUTCDate()),t=0;t<3&&null==e._a[t];++t)e._a[t]=r[t]=i[t];for(;t<7;t++)e._a[t]=r[t]=null==e._a[t]?2===t?1:0:e._a[t];24===e._a[Ve]&&0===e._a[Fe]&&0===e._a[We]&&0===e._a[Ze]&&(e._nextDay=!0,e._a[Ve]=0),e._d=(e._useUTC?bt:vt).apply(null,r),n=e._useUTC?e._d.getUTCDay():e._d.getDay(),null!=e._tzm&&e._d.setUTCMinutes(e._d.getUTCMinutes()-e._tzm),e._nextDay&&(e._a[Ve]=24),e._w&&void 0!==e._w.d&&e._w.d!==n&&(g(e).weekdayMismatch=!0)}}function La(e){var t,a,i,n,s,r,o,l,u;null!=(t=e._w).GG||null!=t.W||null!=t.E?(s=1,r=4,a=Na(t.GG,e._a[Ue],wt(Wa(),1,4).year),i=Na(t.W,1),((n=Na(t.E,1))<1||n>7)&&(l=!0)):(s=e._locale._week.dow,r=e._locale._week.doy,u=wt(Wa(),s,r),a=Na(t.gg,e._a[Ue],u.year),i=Na(t.w,u.week),null!=t.d?((n=t.d)<0||n>6)&&(l=!0):null!=t.e?(n=t.e+s,(t.e<0||t.e>6)&&(l=!0)):n=s),i<1||i>kt(a,s,r)?g(e)._overflowWeeks=!0:null!=l?g(e)._overflowWeekday=!0:(o=_t(a,i,n,s,r),e._a[Ue]=o.year,e._dayOfYear=o.dayOfYear)}function Ba(e){if(e._f!==a.ISO_8601)if(e._f!==a.RFC_2822){e._a=[],g(e).empty=!0;var t,i,n,s,r,o,l,u=""+e._i,d=u.length,c=0;for(l=(n=Y(e._f,e._locale).match(N)||[]).length,t=0;t0&&g(e).unusedInput.push(r),u=u.slice(u.indexOf(i)+i.length),c+=i.length),L[s]?(i?g(e).empty=!1:g(e).unusedTokens.push(s),Re(s,i,e)):e._strict&&!i&&g(e).unusedTokens.push(s);g(e).charsLeftOver=d-c,u.length>0&&g(e).unusedInput.push(u),e._a[Ve]<=12&&!0===g(e).bigHour&&e._a[Ve]>0&&(g(e).bigHour=void 0),g(e).parsedDateParts=e._a.slice(0),g(e).meridiem=e._meridiem,e._a[Ve]=Ra(e._locale,e._a[Ve],e._meridiem),null!==(o=g(e).era)&&(e._a[Ue]=e._locale.erasConvertYear(o,e._a[Ue])),ja(e),ba(e)}else za(e);else Ma(e)}function Ra(e,t,a){var i;return null==a?t:null!=e.meridiemHour?e.meridiemHour(t,a):null!=e.isPM?((i=e.isPM(a))&&t<12&&(t+=12),i||12!==t||(t=0),t):t}function Ia(e){var t,a,i,n,s,r,o=!1,l=e._f.length;if(0===l)return g(e).invalidFormat=!0,void(e._d=new Date(NaN));for(n=0;nthis?this:e:v()}));function Ka(e,t){var a,i;if(1===t.length&&n(t[0])&&(t=t[0]),!t.length)return Wa();for(a=t[0],i=1;ithis.clone().month(0).utcOffset()||this.utcOffset()>this.clone().month(5).utcOffset()}function _i(){if(!l(this._isDSTShifted))return this._isDSTShifted;var e,t={};return _(t,this),(t=Ga(t))._a?(e=t._isUTC?p(t._a):Wa(t._a),this._isDSTShifted=this.isValid()&&oi(t._a,e.toArray())>0):this._isDSTShifted=!1,this._isDSTShifted}function wi(){return!!this.isValid()&&!this._isUTC}function ki(){return!!this.isValid()&&this._isUTC}function Si(){return!!this.isValid()&&this._isUTC&&0===this._offset}a.updateOffset=function(){};var Ei=/^(-|\+)?(?:(\d*)[. ])?(\d+):(\d+)(?::(\d+)(\.\d*)?)?$/,$i=/^(-|\+)?P(?:([-+]?[0-9,.]*)Y)?(?:([-+]?[0-9,.]*)M)?(?:([-+]?[0-9,.]*)W)?(?:([-+]?[0-9,.]*)D)?(?:T(?:([-+]?[0-9,.]*)H)?(?:([-+]?[0-9,.]*)M)?(?:([-+]?[0-9,.]*)S)?)?$/;function Ai(e,t){var a,i,n,s=e,o=null;return si(e)?s={ms:e._milliseconds,d:e._days,M:e._months}:u(e)||!isNaN(+e)?(s={},t?s[t]=+e:s.milliseconds=+e):(o=Ei.exec(e))?(a="-"===o[1]?-1:1,s={y:0,d:ue(o[Ge])*a,h:ue(o[Ve])*a,m:ue(o[Fe])*a,s:ue(o[We])*a,ms:ue(ri(1e3*o[Ze]))*a}):(o=$i.exec(e))?(a="-"===o[1]?-1:1,s={y:Ti(o[2],a),M:Ti(o[3],a),w:Ti(o[4],a),d:Ti(o[5],a),h:Ti(o[6],a),m:Ti(o[7],a),s:Ti(o[8],a)}):null==s?s={}:"object"==typeof s&&("from"in s||"to"in s)&&(n=Hi(Wa(s.from),Wa(s.to)),(s={}).ms=n.milliseconds,s.M=n.months),i=new ni(s),si(e)&&r(e,"_locale")&&(i._locale=e._locale),si(e)&&r(e,"_isValid")&&(i._isValid=e._isValid),i}function Ti(e,t){var a=e&&parseFloat(e.replace(",","."));return(isNaN(a)?0:a)*t}function Di(e,t){var a={};return a.months=t.month()-e.month()+12*(t.year()-e.year()),e.clone().add(a.months,"M").isAfter(t)&&--a.months,a.milliseconds=+t-+e.clone().add(a.months,"M"),a}function Hi(e,t){var a;return e.isValid()&&t.isValid()?(t=ci(t,e),e.isBefore(t)?a=Di(e,t):((a=Di(t,e)).milliseconds=-a.milliseconds,a.months=-a.months),a):{milliseconds:0,months:0}}function xi(e,t){return function(a,i){var n;return null===i||isNaN(+i)||(M(t,"moment()."+t+"(period, number) is deprecated. Please use moment()."+t+"(number, period). See http://momentjs.com/guides/#/warnings/add-inverted-param/ for more info."),n=a,a=i,i=n),zi(this,Ai(a,i),e),this}}function zi(e,t,i,n){var s=t._milliseconds,r=ri(t._days),o=ri(t._months);e.isValid()&&(n=null==n||n,o&<(e,ce(e,"Month")+o*i),r&&he(e,"Date",ce(e,"Date")+r*i),s&&e._d.setTime(e._d.valueOf()+s*i),n&&a.updateOffset(e,r||o))}Ai.fn=ni.prototype,Ai.invalid=ii;var Pi=xi(1,"add"),Ni=xi(-1,"subtract");function Ci(e){return"string"==typeof e||e instanceof String}function ji(e){return k(e)||d(e)||Ci(e)||u(e)||Bi(e)||Li(e)||null==e}function Li(e){var t,a,i=s(e)&&!o(e),n=!1,l=["years","year","y","months","month","M","days","day","d","dates","date","D","hours","hour","h","minutes","minute","m","seconds","second","s","milliseconds","millisecond","ms"],u=l.length;for(t=0;ta.valueOf():a.valueOf()9999?U(a,t?"YYYYYY-MM-DD[T]HH:mm:ss.SSS[Z]":"YYYYYY-MM-DD[T]HH:mm:ss.SSSZ"):O(Date.prototype.toISOString)?t?this.toDate().toISOString():new Date(this.valueOf()+60*this.utcOffset()*1e3).toISOString().replace("Z",U(a,"Z")):U(a,t?"YYYY-MM-DD[T]HH:mm:ss.SSS[Z]":"YYYY-MM-DD[T]HH:mm:ss.SSSZ")}function en(){if(!this.isValid())return"moment.invalid(/* "+this._i+" */)";var e,t,a,i,n="moment",s="";return this.isLocal()||(n=0===this.utcOffset()?"moment.utc":"moment.parseZone",s="Z"),e="["+n+'("]',t=0<=this.year()&&this.year()<=9999?"YYYY":"YYYYYY",a="-MM-DD[T]HH:mm:ss.SSS",i=s+'[")]',this.format(e+t+a+i)}function tn(e){e||(e=this.isUtc()?a.defaultFormatUtc:a.defaultFormat);var t=U(this,e);return this.localeData().postformat(t)}function an(e,t){return this.isValid()&&(k(e)&&e.isValid()||Wa(e).isValid())?Ai({to:this,from:e}).locale(this.locale()).humanize(!t):this.localeData().invalidDate()}function nn(e){return this.from(Wa(),e)}function sn(e,t){return this.isValid()&&(k(e)&&e.isValid()||Wa(e).isValid())?Ai({from:this,to:e}).locale(this.locale()).humanize(!t):this.localeData().invalidDate()}function rn(e){return this.to(Wa(),e)}function on(e){var t;return void 0===e?this._locale._abbr:(null!=(t=fa(e))&&(this._locale=t),this)}a.defaultFormat="YYYY-MM-DDTHH:mm:ssZ",a.defaultFormatUtc="YYYY-MM-DDTHH:mm:ss[Z]";var ln=E("moment().lang() is deprecated. Instead, use moment().localeData() to get the language configuration. Use moment().locale() to change languages.",(function(e){return void 0===e?this.localeData():this.locale(e)}));function un(){return this._locale}var dn=1e3,cn=60*dn,hn=60*cn,pn=3506328*hn;function mn(e,t){return(e%t+t)%t}function gn(e,t,a){return e<100&&e>=0?new Date(e+400,t,a)-pn:new Date(e,t,a).valueOf()}function fn(e,t,a){return e<100&&e>=0?Date.UTC(e+400,t,a)-pn:Date.UTC(e,t,a)}function vn(e){var t,i;if(void 0===(e=ae(e))||"millisecond"===e||!this.isValid())return this;switch(i=this._isUTC?fn:gn,e){case"year":t=i(this.year(),0,1);break;case"quarter":t=i(this.year(),this.month()-this.month()%3,1);break;case"month":t=i(this.year(),this.month(),1);break;case"week":t=i(this.year(),this.month(),this.date()-this.weekday());break;case"isoWeek":t=i(this.year(),this.month(),this.date()-(this.isoWeekday()-1));break;case"day":case"date":t=i(this.year(),this.month(),this.date());break;case"hour":t=this._d.valueOf(),t-=mn(t+(this._isUTC?0:this.utcOffset()*cn),hn);break;case"minute":t=this._d.valueOf(),t-=mn(t,cn);break;case"second":t=this._d.valueOf(),t-=mn(t,dn)}return this._d.setTime(t),a.updateOffset(this,!0),this}function bn(e){var t,i;if(void 0===(e=ae(e))||"millisecond"===e||!this.isValid())return this;switch(i=this._isUTC?fn:gn,e){case"year":t=i(this.year()+1,0,1)-1;break;case"quarter":t=i(this.year(),this.month()-this.month()%3+3,1)-1;break;case"month":t=i(this.year(),this.month()+1,1)-1;break;case"week":t=i(this.year(),this.month(),this.date()-this.weekday()+7)-1;break;case"isoWeek":t=i(this.year(),this.month(),this.date()-(this.isoWeekday()-1)+7)-1;break;case"day":case"date":t=i(this.year(),this.month(),this.date()+1)-1;break;case"hour":t=this._d.valueOf(),t+=hn-mn(t+(this._isUTC?0:this.utcOffset()*cn),hn)-1;break;case"minute":t=this._d.valueOf(),t+=cn-mn(t,cn)-1;break;case"second":t=this._d.valueOf(),t+=dn-mn(t,dn)-1}return this._d.setTime(t),a.updateOffset(this,!0),this}function yn(){return this._d.valueOf()-6e4*(this._offset||0)}function _n(){return Math.floor(this.valueOf()/1e3)}function wn(){return new Date(this.valueOf())}function kn(){var e=this;return[e.year(),e.month(),e.date(),e.hour(),e.minute(),e.second(),e.millisecond()]}function Sn(){var e=this;return{years:e.year(),months:e.month(),date:e.date(),hours:e.hours(),minutes:e.minutes(),seconds:e.seconds(),milliseconds:e.milliseconds()}}function En(){return this.isValid()?this.toISOString():null}function $n(){return f(this)}function An(){return h({},g(this))}function Mn(){return g(this).overflow}function On(){return{input:this._i,format:this._f,locale:this._locale,isUTC:this._isUTC,strict:this._strict}}function Tn(e,t){var i,n,s,r=this._eras||fa("en")._eras;for(i=0,n=r.length;i=0)return l[i]}function Hn(e,t){var i=e.since<=e.until?1:-1;return void 0===t?a(e.since).year():a(e.since).year()+(t-e.offset)*i}function xn(){var e,t,a,i=this.localeData().eras();for(e=0,t=i.length;e(s=kt(e,i,n))&&(t=s),Jn.call(this,e,t,a,i,n))}function Jn(e,t,a,i,n){var s=_t(e,t,a,i,n),r=bt(s.year,0,s.dayOfYear);return this.year(r.getUTCFullYear()),this.month(r.getUTCMonth()),this.date(r.getUTCDate()),this}function Qn(e){return null==e?Math.ceil((this.month()+1)/3):this.month(3*(e-1)+this.month()%3)}B("N",0,0,"eraAbbr"),B("NN",0,0,"eraAbbr"),B("NNN",0,0,"eraAbbr"),B("NNNN",0,0,"eraName"),B("NNNNN",0,0,"eraNarrow"),B("y",["y",1],"yo","eraYear"),B("y",["yy",2],0,"eraYear"),B("y",["yyy",3],0,"eraYear"),B("y",["yyyy",4],0,"eraYear"),ze("N",Bn),ze("NN",Bn),ze("NNN",Bn),ze("NNNN",Rn),ze("NNNNN",In),Le(["N","NN","NNN","NNNN","NNNNN"],(function(e,t,a,i){var n=a._locale.erasParse(e,i,a._strict);n?g(a).era=n:g(a).invalidEra=e})),ze("y",Me),ze("yy",Me),ze("yyy",Me),ze("yyyy",Me),ze("yo",Un),Le(["y","yy","yyy","yyyy"],Ue),Le(["yo"],(function(e,t,a,i){var n;a._locale._eraYearOrdinalRegex&&(n=e.match(a._locale._eraYearOrdinalRegex)),a._locale.eraYearOrdinalParse?t[Ue]=a._locale.eraYearOrdinalParse(e,n):t[Ue]=parseInt(e,10)})),B(0,["gg",2],0,(function(){return this.weekYear()%100})),B(0,["GG",2],0,(function(){return this.isoWeekYear()%100})),Gn("gggg","weekYear"),Gn("ggggg","weekYear"),Gn("GGGG","isoWeekYear"),Gn("GGGGG","isoWeekYear"),te("weekYear","gg"),te("isoWeekYear","GG"),se("weekYear",1),se("isoWeekYear",1),ze("G",Oe),ze("g",Oe),ze("GG",we,ve),ze("gg",we,ve),ze("GGGG",$e,ye),ze("gggg",$e,ye),ze("GGGGG",Ae,_e),ze("ggggg",Ae,_e),Be(["gggg","ggggg","GGGG","GGGGG"],(function(e,t,a,i){t[i.substr(0,2)]=ue(e)})),Be(["gg","GG"],(function(e,t,i,n){t[n]=a.parseTwoDigitYear(e)})),B("Q",0,"Qo","quarter"),te("quarter","Q"),se("quarter",7),ze("Q",fe),Le("Q",(function(e,t){t[Ye]=3*(ue(e)-1)})),B("D",["DD",2],"Do","date"),te("date","D"),se("date",9),ze("D",we),ze("DD",we,ve),ze("Do",(function(e,t){return e?t._dayOfMonthOrdinalParse||t._ordinalParse:t._dayOfMonthOrdinalParseLenient})),Le(["D","DD"],Ge),Le("Do",(function(e,t){t[Ge]=ue(e.match(we)[0])}));var es=de("Date",!0);function ts(e){var t=Math.round((this.clone().startOf("day")-this.clone().startOf("year"))/864e5)+1;return null==e?t:this.add(e-t,"d")}B("DDD",["DDDD",3],"DDDo","dayOfYear"),te("dayOfYear","DDD"),se("dayOfYear",4),ze("DDD",Ee),ze("DDDD",be),Le(["DDD","DDDD"],(function(e,t,a){a._dayOfYear=ue(e)})),B("m",["mm",2],0,"minute"),te("minute","m"),se("minute",14),ze("m",we),ze("mm",we,ve),Le(["m","mm"],Fe);var as=de("Minutes",!1);B("s",["ss",2],0,"second"),te("second","s"),se("second",15),ze("s",we),ze("ss",we,ve),Le(["s","ss"],We);var is,ns,ss=de("Seconds",!1);for(B("S",0,0,(function(){return~~(this.millisecond()/100)})),B(0,["SS",2],0,(function(){return~~(this.millisecond()/10)})),B(0,["SSS",3],0,"millisecond"),B(0,["SSSS",4],0,(function(){return 10*this.millisecond()})),B(0,["SSSSS",5],0,(function(){return 100*this.millisecond()})),B(0,["SSSSSS",6],0,(function(){return 1e3*this.millisecond()})),B(0,["SSSSSSS",7],0,(function(){return 1e4*this.millisecond()})),B(0,["SSSSSSSS",8],0,(function(){return 1e5*this.millisecond()})),B(0,["SSSSSSSSS",9],0,(function(){return 1e6*this.millisecond()})),te("millisecond","ms"),se("millisecond",16),ze("S",Ee,fe),ze("SS",Ee,ve),ze("SSS",Ee,be),is="SSSS";is.length<=9;is+="S")ze(is,Me);function rs(e,t){t[Ze]=ue(1e3*("0."+e))}for(is="S";is.length<=9;is+="S")Le(is,rs);function os(){return this._isUTC?"UTC":""}function ls(){return this._isUTC?"Coordinated Universal Time":""}ns=de("Milliseconds",!1),B("z",0,0,"zoneAbbr"),B("zz",0,0,"zoneName");var us=w.prototype;function ds(e){return Wa(1e3*e)}function cs(){return Wa.apply(null,arguments).parseZone()}function hs(e){return e}us.add=Pi,us.calendar=Ui,us.clone=Yi,us.diff=Ki,us.endOf=bn,us.format=tn,us.from=an,us.fromNow=nn,us.to=sn,us.toNow=rn,us.get=pe,us.invalidAt=Mn,us.isAfter=Gi,us.isBefore=Vi,us.isBetween=Fi,us.isSame=Wi,us.isSameOrAfter=Zi,us.isSameOrBefore=qi,us.isValid=$n,us.lang=ln,us.locale=on,us.localeData=un,us.max=qa,us.min=Za,us.parsingFlags=An,us.set=me,us.startOf=vn,us.subtract=Ni,us.toArray=kn,us.toObject=Sn,us.toDate=wn,us.toISOString=Qi,us.inspect=en,"undefined"!=typeof Symbol&&null!=Symbol.for&&(us[Symbol.for("nodejs.util.inspect.custom")]=function(){return"Moment<"+this.format()+">"}),us.toJSON=En,us.toString=Ji,us.unix=_n,us.valueOf=yn,us.creationData=On,us.eraName=xn,us.eraNarrow=zn,us.eraAbbr=Pn,us.eraYear=Nn,us.year=gt,us.isLeapYear=ft,us.weekYear=Vn,us.isoWeekYear=Fn,us.quarter=us.quarters=Qn,us.month=ut,us.daysInMonth=dt,us.week=us.weeks=Mt,us.isoWeek=us.isoWeeks=Ot,us.weeksInYear=qn,us.weeksInWeekYear=Kn,us.isoWeeksInYear=Wn,us.isoWeeksInISOWeekYear=Zn,us.date=es,us.day=us.days=Yt,us.weekday=Gt,us.isoWeekday=Vt,us.dayOfYear=ts,us.hour=us.hours=aa,us.minute=us.minutes=as,us.second=us.seconds=ss,us.millisecond=us.milliseconds=ns,us.utcOffset=pi,us.utc=gi,us.local=fi,us.parseZone=vi,us.hasAlignedHourOffset=bi,us.isDST=yi,us.isLocal=wi,us.isUtcOffset=ki,us.isUtc=Si,us.isUTC=Si,us.zoneAbbr=os,us.zoneName=ls,us.dates=E("dates accessor is deprecated. Use date instead.",es),us.months=E("months accessor is deprecated. Use month instead",ut),us.years=E("years accessor is deprecated. Use year instead",gt),us.zone=E("moment().zone is deprecated, use moment().utcOffset instead. http://momentjs.com/guides/#/warnings/zone/",mi),us.isDSTShifted=E("isDSTShifted is deprecated. See http://momentjs.com/guides/#/warnings/dst-shifted/ for more information",_i);var ps=H.prototype;function ms(e,t,a,i){var n=fa(),s=p().set(i,t);return n[a](s,e)}function gs(e,t,a){if(u(e)&&(t=e,e=void 0),e=e||"",null!=t)return ms(e,t,a,"month");var i,n=[];for(i=0;i<12;i++)n[i]=ms(e,i,a,"month");return n}function fs(e,t,a,i){"boolean"==typeof e?(u(t)&&(a=t,t=void 0),t=t||""):(a=t=e,e=!1,u(t)&&(a=t,t=void 0),t=t||"");var n,s=fa(),r=e?s._week.dow:0,o=[];if(null!=a)return ms(t,(a+r)%7,i,"day");for(n=0;n<7;n++)o[n]=ms(t,(n+r)%7,i,"day");return o}function vs(e,t){return gs(e,t,"months")}function bs(e,t){return gs(e,t,"monthsShort")}function ys(e,t,a){return fs(e,t,a,"weekdays")}function _s(e,t,a){return fs(e,t,a,"weekdaysShort")}function ws(e,t,a){return fs(e,t,a,"weekdaysMin")}ps.calendar=z,ps.longDateFormat=V,ps.invalidDate=W,ps.ordinal=K,ps.preparse=hs,ps.postformat=hs,ps.relativeTime=J,ps.pastFuture=Q,ps.set=T,ps.eras=Tn,ps.erasParse=Dn,ps.erasConvertYear=Hn,ps.erasAbbrRegex=jn,ps.erasNameRegex=Cn,ps.erasNarrowRegex=Ln,ps.months=nt,ps.monthsShort=st,ps.monthsParse=ot,ps.monthsRegex=ht,ps.monthsShortRegex=ct,ps.week=St,ps.firstDayOfYear=At,ps.firstDayOfWeek=$t,ps.weekdays=Lt,ps.weekdaysMin=Rt,ps.weekdaysShort=Bt,ps.weekdaysParse=Ut,ps.weekdaysRegex=Ft,ps.weekdaysShortRegex=Wt,ps.weekdaysMinRegex=Zt,ps.isPM=ea,ps.meridiem=ia,pa("en",{eras:[{since:"0001-01-01",until:1/0,offset:1,name:"Anno Domini",narrow:"AD",abbr:"AD"},{since:"0000-12-31",until:-1/0,offset:1,name:"Before Christ",narrow:"BC",abbr:"BC"}],dayOfMonthOrdinalParse:/\d{1,2}(th|st|nd|rd)/,ordinal:function(e){var t=e%10;return e+(1===ue(e%100/10)?"th":1===t?"st":2===t?"nd":3===t?"rd":"th")}}),a.lang=E("moment.lang is deprecated. Use moment.locale instead.",pa),a.langData=E("moment.langData is deprecated. Use moment.localeData instead.",fa);var ks=Math.abs;function Ss(){var e=this._data;return this._milliseconds=ks(this._milliseconds),this._days=ks(this._days),this._months=ks(this._months),e.milliseconds=ks(e.milliseconds),e.seconds=ks(e.seconds),e.minutes=ks(e.minutes),e.hours=ks(e.hours),e.months=ks(e.months),e.years=ks(e.years),this}function Es(e,t,a,i){var n=Ai(t,a);return e._milliseconds+=i*n._milliseconds,e._days+=i*n._days,e._months+=i*n._months,e._bubble()}function $s(e,t){return Es(this,e,t,1)}function As(e,t){return Es(this,e,t,-1)}function Ms(e){return e<0?Math.floor(e):Math.ceil(e)}function Os(){var e,t,a,i,n,s=this._milliseconds,r=this._days,o=this._months,l=this._data;return s>=0&&r>=0&&o>=0||s<=0&&r<=0&&o<=0||(s+=864e5*Ms(Ds(o)+r),r=0,o=0),l.milliseconds=s%1e3,e=le(s/1e3),l.seconds=e%60,t=le(e/60),l.minutes=t%60,a=le(t/60),l.hours=a%24,r+=le(a/24),o+=n=le(Ts(r)),r-=Ms(Ds(n)),i=le(o/12),o%=12,l.days=r,l.months=o,l.years=i,this}function Ts(e){return 4800*e/146097}function Ds(e){return 146097*e/4800}function Hs(e){if(!this.isValid())return NaN;var t,a,i=this._milliseconds;if("month"===(e=ae(e))||"quarter"===e||"year"===e)switch(t=this._days+i/864e5,a=this._months+Ts(t),e){case"month":return a;case"quarter":return a/3;case"year":return a/12}else switch(t=this._days+Math.round(Ds(this._months)),e){case"week":return t/7+i/6048e5;case"day":return t+i/864e5;case"hour":return 24*t+i/36e5;case"minute":return 1440*t+i/6e4;case"second":return 86400*t+i/1e3;case"millisecond":return Math.floor(864e5*t)+i;default:throw new Error("Unknown unit "+e)}}function xs(){return this.isValid()?this._milliseconds+864e5*this._days+this._months%12*2592e6+31536e6*ue(this._months/12):NaN}function zs(e){return function(){return this.as(e)}}var Ps=zs("ms"),Ns=zs("s"),Cs=zs("m"),js=zs("h"),Ls=zs("d"),Bs=zs("w"),Rs=zs("M"),Is=zs("Q"),Us=zs("y");function Ys(){return Ai(this)}function Gs(e){return e=ae(e),this.isValid()?this[e+"s"]():NaN}function Vs(e){return function(){return this.isValid()?this._data[e]:NaN}}var Fs=Vs("milliseconds"),Ws=Vs("seconds"),Zs=Vs("minutes"),qs=Vs("hours"),Ks=Vs("days"),Xs=Vs("months"),Js=Vs("years");function Qs(){return le(this.days()/7)}var er=Math.round,tr={ss:44,s:45,m:45,h:22,d:26,w:null,M:11};function ar(e,t,a,i,n){return n.relativeTime(t||1,!!a,e,i)}function ir(e,t,a,i){var n=Ai(e).abs(),s=er(n.as("s")),r=er(n.as("m")),o=er(n.as("h")),l=er(n.as("d")),u=er(n.as("M")),d=er(n.as("w")),c=er(n.as("y")),h=s<=a.ss&&["s",s]||s0,h[4]=i,ar.apply(null,h)}function nr(e){return void 0===e?er:"function"==typeof e&&(er=e,!0)}function sr(e,t){return void 0!==tr[e]&&(void 0===t?tr[e]:(tr[e]=t,"s"===e&&(tr.ss=t-1),!0))}function rr(e,t){if(!this.isValid())return this.localeData().invalidDate();var a,i,n=!1,s=tr;return"object"==typeof e&&(t=e,e=!1),"boolean"==typeof e&&(n=e),"object"==typeof t&&(s=Object.assign({},tr,t),null!=t.s&&null==t.ss&&(s.ss=t.s-1)),i=ir(this,!n,s,a=this.localeData()),n&&(i=a.pastFuture(+this,i)),a.postformat(i)}var or=Math.abs;function lr(e){return(e>0)-(e<0)||+e}function ur(){if(!this.isValid())return this.localeData().invalidDate();var e,t,a,i,n,s,r,o,l=or(this._milliseconds)/1e3,u=or(this._days),d=or(this._months),c=this.asSeconds();return c?(e=le(l/60),t=le(e/60),l%=60,e%=60,a=le(d/12),d%=12,i=l?l.toFixed(3).replace(/\.?0+$/,""):"",n=c<0?"-":"",s=lr(this._months)!==lr(c)?"-":"",r=lr(this._days)!==lr(c)?"-":"",o=lr(this._milliseconds)!==lr(c)?"-":"",n+"P"+(a?s+a+"Y":"")+(d?s+d+"M":"")+(u?r+u+"D":"")+(t||e||l?"T":"")+(t?o+t+"H":"")+(e?o+e+"M":"")+(l?o+i+"S":"")):"P0D"}var dr=ni.prototype;return dr.isValid=ai,dr.abs=Ss,dr.add=$s,dr.subtract=As,dr.as=Hs,dr.asMilliseconds=Ps,dr.asSeconds=Ns,dr.asMinutes=Cs,dr.asHours=js,dr.asDays=Ls,dr.asWeeks=Bs,dr.asMonths=Rs,dr.asQuarters=Is,dr.asYears=Us,dr.valueOf=xs,dr._bubble=Os,dr.clone=Ys,dr.get=Gs,dr.milliseconds=Fs,dr.seconds=Ws,dr.minutes=Zs,dr.hours=qs,dr.days=Ks,dr.weeks=Qs,dr.months=Xs,dr.years=Js,dr.humanize=rr,dr.toISOString=ur,dr.toString=ur,dr.toJSON=ur,dr.locale=on,dr.localeData=un,dr.toIsoString=E("toIsoString() is deprecated. Please use toISOString() instead (notice the capitals)",ur),dr.lang=ln,B("X",0,0,"unix"),B("x",0,0,"valueOf"),ze("x",Oe),ze("X",He),Le("X",(function(e,t,a){a._d=new Date(1e3*parseFloat(e))})),Le("x",(function(e,t,a){a._d=new Date(ue(e))})), + `}};var qi;n([pe()],Zi.prototype,"narrow",void 0),n([pe()],Zi.prototype,"path",void 0),n([pe()],Zi.prototype,"data",void 0),n([pe()],Zi.prototype,"config",void 0),Zi=n([de("smart-irrigation-view-general")],Zi),function(e){e.Disabled="disabled",e.Manual="manual",e.Automatic="automatic"}(qi||(qi={}));"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self&&self;function Ki(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}function Xi(e){throw new Error('Could not dynamically require "'+e+'". Please configure the dynamicRequireTargets or/and ignoreDynamicRequires option of @rollup/plugin-commonjs appropriately for this require call to work.')}var Ji={exports:{}};!function(e,t){e.exports=function(){var t,a;function i(){return t.apply(null,arguments)}function n(e){t=e}function s(e){return e instanceof Array||"[object Array]"===Object.prototype.toString.call(e)}function r(e){return null!=e&&"[object Object]"===Object.prototype.toString.call(e)}function o(e,t){return Object.prototype.hasOwnProperty.call(e,t)}function l(e){if(Object.getOwnPropertyNames)return 0===Object.getOwnPropertyNames(e).length;var t;for(t in e)if(o(e,t))return!1;return!0}function u(e){return void 0===e}function d(e){return"number"==typeof e||"[object Number]"===Object.prototype.toString.call(e)}function c(e){return e instanceof Date||"[object Date]"===Object.prototype.toString.call(e)}function h(e,t){var a,i=[],n=e.length;for(a=0;a>>0;for(t=0;t0)for(a=0;a=0?a?"+":"":"-")+Math.pow(10,Math.max(0,n)).toString().substr(1)+i}var C=/(\[[^\[]*\])|(\\)?([Hh]mm(ss)?|Mo|MM?M?M?|Do|DDDo|DD?D?D?|ddd?d?|do?|w[o|w]?|W[o|W]?|Qo?|N{1,5}|YYYYYY|YYYYY|YYYY|YY|y{2,4}|yo?|gg(ggg?)?|GG(GGG?)?|e|E|a|A|hh?|HH?|kk?|mm?|ss?|S{1,9}|x|X|zz?|ZZ?|.)/g,j=/(\[[^\[]*\])|(\\)?(LTS|LT|LL?L?L?|l{1,4})/g,L={},B={};function I(e,t,a,i){var n=i;"string"==typeof i&&(n=function(){return this[i]()}),e&&(B[e]=n),t&&(B[t[0]]=function(){return N(n.apply(this,arguments),t[1],t[2])}),a&&(B[a]=function(){return this.localeData().ordinal(n.apply(this,arguments),e)})}function R(e){return e.match(/\[[\s\S]/)?e.replace(/^\[|\]$/g,""):e.replace(/\\/g,"")}function U(e){var t,a,i=e.match(C);for(t=0,a=i.length;t=0&&j.test(e);)e=e.replace(j,i),j.lastIndex=0,a-=1;return e}var G={LTS:"h:mm:ss A",LT:"h:mm A",L:"MM/DD/YYYY",LL:"MMMM D, YYYY",LLL:"MMMM D, YYYY h:mm A",LLLL:"dddd, MMMM D, YYYY h:mm A"};function F(e){var t=this._longDateFormat[e],a=this._longDateFormat[e.toUpperCase()];return t||!a?t:(this._longDateFormat[e]=a.match(C).map((function(e){return"MMMM"===e||"MM"===e||"DD"===e||"dddd"===e?e.slice(1):e})).join(""),this._longDateFormat[e])}var W="Invalid date";function Z(){return this._invalidDate}var q="%d",K=/\d{1,2}/;function X(e){return this._ordinal.replace("%d",e)}var J={future:"in %s",past:"%s ago",s:"a few seconds",ss:"%d seconds",m:"a minute",mm:"%d minutes",h:"an hour",hh:"%d hours",d:"a day",dd:"%d days",w:"a week",ww:"%d weeks",M:"a month",MM:"%d months",y:"a year",yy:"%d years"};function Q(e,t,a,i){var n=this._relativeTime[a];return O(n)?n(e,t,a,i):n.replace(/%d/i,e)}function ee(e,t){var a=this._relativeTime[e>0?"future":"past"];return O(a)?a(t):a.replace(/%s/i,t)}var te={};function ae(e,t){var a=e.toLowerCase();te[a]=te[a+"s"]=te[t]=e}function ie(e){return"string"==typeof e?te[e]||te[e.toLowerCase()]:void 0}function ne(e){var t,a,i={};for(a in e)o(e,a)&&(t=ie(a))&&(i[t]=e[a]);return i}var se={};function re(e,t){se[e]=t}function oe(e){var t,a=[];for(t in e)o(e,t)&&a.push({unit:t,priority:se[t]});return a.sort((function(e,t){return e.priority-t.priority})),a}function le(e){return e%4==0&&e%100!=0||e%400==0}function ue(e){return e<0?Math.ceil(e)||0:Math.floor(e)}function de(e){var t=+e,a=0;return 0!==t&&isFinite(t)&&(a=ue(t)),a}function ce(e,t){return function(a){return null!=a?(pe(this,e,a),i.updateOffset(this,t),this):he(this,e)}}function he(e,t){return e.isValid()?e._d["get"+(e._isUTC?"UTC":"")+t]():NaN}function pe(e,t,a){e.isValid()&&!isNaN(a)&&("FullYear"===t&&le(e.year())&&1===e.month()&&29===e.date()?(a=de(a),e._d["set"+(e._isUTC?"UTC":"")+t](a,e.month(),Qe(a,e.month()))):e._d["set"+(e._isUTC?"UTC":"")+t](a))}function me(e){return O(this[e=ie(e)])?this[e]():this}function ge(e,t){if("object"==typeof e){var a,i=oe(e=ne(e)),n=i.length;for(a=0;a68?1900:2e3)};var ft=ce("FullYear",!0);function vt(){return le(this.year())}function bt(e,t,a,i,n,s,r){var o;return e<100&&e>=0?(o=new Date(e+400,t,a,i,n,s,r),isFinite(o.getFullYear())&&o.setFullYear(e)):o=new Date(e,t,a,i,n,s,r),o}function yt(e){var t,a;return e<100&&e>=0?((a=Array.prototype.slice.call(arguments))[0]=e+400,t=new Date(Date.UTC.apply(null,a)),isFinite(t.getUTCFullYear())&&t.setUTCFullYear(e)):t=new Date(Date.UTC.apply(null,arguments)),t}function _t(e,t,a){var i=7+t-a;return-(7+yt(e,0,i).getUTCDay()-t)%7+i-1}function wt(e,t,a,i,n){var s,r,o=1+7*(t-1)+(7+a-i)%7+_t(e,i,n);return o<=0?r=gt(s=e-1)+o:o>gt(e)?(s=e+1,r=o-gt(e)):(s=e,r=o),{year:s,dayOfYear:r}}function kt(e,t,a){var i,n,s=_t(e.year(),t,a),r=Math.floor((e.dayOfYear()-s-1)/7)+1;return r<1?i=r+St(n=e.year()-1,t,a):r>St(e.year(),t,a)?(i=r-St(e.year(),t,a),n=e.year()+1):(n=e.year(),i=r),{week:i,year:n}}function St(e,t,a){var i=_t(e,t,a),n=_t(e+1,t,a);return(gt(e)-i+n)/7}function Et(e){return kt(e,this._week.dow,this._week.doy).week}I("w",["ww",2],"wo","week"),I("W",["WW",2],"Wo","isoWeek"),ae("week","w"),ae("isoWeek","W"),re("week",5),re("isoWeek",5),Pe("w",ke),Pe("ww",ke,be),Pe("W",ke),Pe("WW",ke,be),Ie(["w","ww","W","WW"],(function(e,t,a,i){t[i.substr(0,1)]=de(e)}));var At={dow:0,doy:6};function $t(){return this._week.dow}function Mt(){return this._week.doy}function Tt(e){var t=this.localeData().week(this);return null==e?t:this.add(7*(e-t),"d")}function Ot(e){var t=kt(this,1,4).week;return null==e?t:this.add(7*(e-t),"d")}function zt(e,t){return"string"!=typeof e?e:isNaN(e)?"number"==typeof(e=t.weekdaysParse(e))?e:null:parseInt(e,10)}function xt(e,t){return"string"==typeof e?t.weekdaysParse(e)%7||7:isNaN(e)?null:e}function Dt(e,t){return e.slice(t,7).concat(e.slice(0,t))}I("d",0,"do","day"),I("dd",0,0,(function(e){return this.localeData().weekdaysMin(this,e)})),I("ddd",0,0,(function(e){return this.localeData().weekdaysShort(this,e)})),I("dddd",0,0,(function(e){return this.localeData().weekdays(this,e)})),I("e",0,0,"weekday"),I("E",0,0,"isoWeekday"),ae("day","d"),ae("weekday","e"),ae("isoWeekday","E"),re("day",11),re("weekday",11),re("isoWeekday",11),Pe("d",ke),Pe("e",ke),Pe("E",ke),Pe("dd",(function(e,t){return t.weekdaysMinRegex(e)})),Pe("ddd",(function(e,t){return t.weekdaysShortRegex(e)})),Pe("dddd",(function(e,t){return t.weekdaysRegex(e)})),Ie(["dd","ddd","dddd"],(function(e,t,a,i){var n=a._locale.weekdaysParse(e,i,a._strict);null!=n?t.d=n:f(a).invalidWeekday=e})),Ie(["d","e","E"],(function(e,t,a,i){t[i]=de(e)}));var Ht="Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),Pt="Sun_Mon_Tue_Wed_Thu_Fri_Sat".split("_"),Nt="Su_Mo_Tu_We_Th_Fr_Sa".split("_"),Ct=He,jt=He,Lt=He;function Bt(e,t){var a=s(this._weekdays)?this._weekdays:this._weekdays[e&&!0!==e&&this._weekdays.isFormat.test(t)?"format":"standalone"];return!0===e?Dt(a,this._week.dow):e?a[e.day()]:a}function It(e){return!0===e?Dt(this._weekdaysShort,this._week.dow):e?this._weekdaysShort[e.day()]:this._weekdaysShort}function Rt(e){return!0===e?Dt(this._weekdaysMin,this._week.dow):e?this._weekdaysMin[e.day()]:this._weekdaysMin}function Ut(e,t,a){var i,n,s,r=e.toLocaleLowerCase();if(!this._weekdaysParse)for(this._weekdaysParse=[],this._shortWeekdaysParse=[],this._minWeekdaysParse=[],i=0;i<7;++i)s=m([2e3,1]).day(i),this._minWeekdaysParse[i]=this.weekdaysMin(s,"").toLocaleLowerCase(),this._shortWeekdaysParse[i]=this.weekdaysShort(s,"").toLocaleLowerCase(),this._weekdaysParse[i]=this.weekdays(s,"").toLocaleLowerCase();return a?"dddd"===t?-1!==(n=Ue.call(this._weekdaysParse,r))?n:null:"ddd"===t?-1!==(n=Ue.call(this._shortWeekdaysParse,r))?n:null:-1!==(n=Ue.call(this._minWeekdaysParse,r))?n:null:"dddd"===t?-1!==(n=Ue.call(this._weekdaysParse,r))||-1!==(n=Ue.call(this._shortWeekdaysParse,r))||-1!==(n=Ue.call(this._minWeekdaysParse,r))?n:null:"ddd"===t?-1!==(n=Ue.call(this._shortWeekdaysParse,r))||-1!==(n=Ue.call(this._weekdaysParse,r))||-1!==(n=Ue.call(this._minWeekdaysParse,r))?n:null:-1!==(n=Ue.call(this._minWeekdaysParse,r))||-1!==(n=Ue.call(this._weekdaysParse,r))||-1!==(n=Ue.call(this._shortWeekdaysParse,r))?n:null}function Yt(e,t,a){var i,n,s;if(this._weekdaysParseExact)return Ut.call(this,e,t,a);for(this._weekdaysParse||(this._weekdaysParse=[],this._minWeekdaysParse=[],this._shortWeekdaysParse=[],this._fullWeekdaysParse=[]),i=0;i<7;i++){if(n=m([2e3,1]).day(i),a&&!this._fullWeekdaysParse[i]&&(this._fullWeekdaysParse[i]=new RegExp("^"+this.weekdays(n,"").replace(".","\\.?")+"$","i"),this._shortWeekdaysParse[i]=new RegExp("^"+this.weekdaysShort(n,"").replace(".","\\.?")+"$","i"),this._minWeekdaysParse[i]=new RegExp("^"+this.weekdaysMin(n,"").replace(".","\\.?")+"$","i")),this._weekdaysParse[i]||(s="^"+this.weekdays(n,"")+"|^"+this.weekdaysShort(n,"")+"|^"+this.weekdaysMin(n,""),this._weekdaysParse[i]=new RegExp(s.replace(".",""),"i")),a&&"dddd"===t&&this._fullWeekdaysParse[i].test(e))return i;if(a&&"ddd"===t&&this._shortWeekdaysParse[i].test(e))return i;if(a&&"dd"===t&&this._minWeekdaysParse[i].test(e))return i;if(!a&&this._weekdaysParse[i].test(e))return i}}function Vt(e){if(!this.isValid())return null!=e?this:NaN;var t=this._isUTC?this._d.getUTCDay():this._d.getDay();return null!=e?(e=zt(e,this.localeData()),this.add(e-t,"d")):t}function Gt(e){if(!this.isValid())return null!=e?this:NaN;var t=(this.day()+7-this.localeData()._week.dow)%7;return null==e?t:this.add(e-t,"d")}function Ft(e){if(!this.isValid())return null!=e?this:NaN;if(null!=e){var t=xt(e,this.localeData());return this.day(this.day()%7?t:t-7)}return this.day()||7}function Wt(e){return this._weekdaysParseExact?(o(this,"_weekdaysRegex")||Kt.call(this),e?this._weekdaysStrictRegex:this._weekdaysRegex):(o(this,"_weekdaysRegex")||(this._weekdaysRegex=Ct),this._weekdaysStrictRegex&&e?this._weekdaysStrictRegex:this._weekdaysRegex)}function Zt(e){return this._weekdaysParseExact?(o(this,"_weekdaysRegex")||Kt.call(this),e?this._weekdaysShortStrictRegex:this._weekdaysShortRegex):(o(this,"_weekdaysShortRegex")||(this._weekdaysShortRegex=jt),this._weekdaysShortStrictRegex&&e?this._weekdaysShortStrictRegex:this._weekdaysShortRegex)}function qt(e){return this._weekdaysParseExact?(o(this,"_weekdaysRegex")||Kt.call(this),e?this._weekdaysMinStrictRegex:this._weekdaysMinRegex):(o(this,"_weekdaysMinRegex")||(this._weekdaysMinRegex=Lt),this._weekdaysMinStrictRegex&&e?this._weekdaysMinStrictRegex:this._weekdaysMinRegex)}function Kt(){function e(e,t){return t.length-e.length}var t,a,i,n,s,r=[],o=[],l=[],u=[];for(t=0;t<7;t++)a=m([2e3,1]).day(t),i=je(this.weekdaysMin(a,"")),n=je(this.weekdaysShort(a,"")),s=je(this.weekdays(a,"")),r.push(i),o.push(n),l.push(s),u.push(i),u.push(n),u.push(s);r.sort(e),o.sort(e),l.sort(e),u.sort(e),this._weekdaysRegex=new RegExp("^("+u.join("|")+")","i"),this._weekdaysShortRegex=this._weekdaysRegex,this._weekdaysMinRegex=this._weekdaysRegex,this._weekdaysStrictRegex=new RegExp("^("+l.join("|")+")","i"),this._weekdaysShortStrictRegex=new RegExp("^("+o.join("|")+")","i"),this._weekdaysMinStrictRegex=new RegExp("^("+r.join("|")+")","i")}function Xt(){return this.hours()%12||12}function Jt(){return this.hours()||24}function Qt(e,t){I(e,0,0,(function(){return this.localeData().meridiem(this.hours(),this.minutes(),t)}))}function ea(e,t){return t._meridiemParse}function ta(e){return"p"===(e+"").toLowerCase().charAt(0)}I("H",["HH",2],0,"hour"),I("h",["hh",2],0,Xt),I("k",["kk",2],0,Jt),I("hmm",0,0,(function(){return""+Xt.apply(this)+N(this.minutes(),2)})),I("hmmss",0,0,(function(){return""+Xt.apply(this)+N(this.minutes(),2)+N(this.seconds(),2)})),I("Hmm",0,0,(function(){return""+this.hours()+N(this.minutes(),2)})),I("Hmmss",0,0,(function(){return""+this.hours()+N(this.minutes(),2)+N(this.seconds(),2)})),Qt("a",!0),Qt("A",!1),ae("hour","h"),re("hour",13),Pe("a",ea),Pe("A",ea),Pe("H",ke),Pe("h",ke),Pe("k",ke),Pe("HH",ke,be),Pe("hh",ke,be),Pe("kk",ke,be),Pe("hmm",Se),Pe("hmmss",Ee),Pe("Hmm",Se),Pe("Hmmss",Ee),Be(["H","HH"],Fe),Be(["k","kk"],(function(e,t,a){var i=de(e);t[Fe]=24===i?0:i})),Be(["a","A"],(function(e,t,a){a._isPm=a._locale.isPM(e),a._meridiem=e})),Be(["h","hh"],(function(e,t,a){t[Fe]=de(e),f(a).bigHour=!0})),Be("hmm",(function(e,t,a){var i=e.length-2;t[Fe]=de(e.substr(0,i)),t[We]=de(e.substr(i)),f(a).bigHour=!0})),Be("hmmss",(function(e,t,a){var i=e.length-4,n=e.length-2;t[Fe]=de(e.substr(0,i)),t[We]=de(e.substr(i,2)),t[Ze]=de(e.substr(n)),f(a).bigHour=!0})),Be("Hmm",(function(e,t,a){var i=e.length-2;t[Fe]=de(e.substr(0,i)),t[We]=de(e.substr(i))})),Be("Hmmss",(function(e,t,a){var i=e.length-4,n=e.length-2;t[Fe]=de(e.substr(0,i)),t[We]=de(e.substr(i,2)),t[Ze]=de(e.substr(n))}));var aa=/[ap]\.?m?\.?/i,ia=ce("Hours",!0);function na(e,t,a){return e>11?a?"pm":"PM":a?"am":"AM"}var sa,ra={calendar:H,longDateFormat:G,invalidDate:W,ordinal:q,dayOfMonthOrdinalParse:K,relativeTime:J,months:et,monthsShort:tt,week:At,weekdays:Ht,weekdaysMin:Nt,weekdaysShort:Pt,meridiemParse:aa},oa={},la={};function ua(e,t){var a,i=Math.min(e.length,t.length);for(a=0;a0;){if(i=pa(n.slice(0,t).join("-")))return i;if(a&&a.length>=t&&ua(n,a)>=t-1)break;t--}s++}return sa}function ha(e){return null!=e.match("^[^/\\\\]*$")}function pa(t){var a=null;if(void 0===oa[t]&&e&&e.exports&&ha(t))try{a=sa._abbr,Xi("./locale/"+t),ma(a)}catch(e){oa[t]=null}return oa[t]}function ma(e,t){var a;return e&&((a=u(t)?va(e):ga(e,t))?sa=a:"undefined"!=typeof console&&console.warn&&console.warn("Locale "+e+" not found. Did you forget to load it?")),sa._abbr}function ga(e,t){if(null!==t){var a,i=ra;if(t.abbr=e,null!=oa[e])T("defineLocaleOverride","use moment.updateLocale(localeName, config) to change an existing locale. moment.defineLocale(localeName, config) should only be used for creating a new locale See http://momentjs.com/guides/#/warnings/define-locale/ for more info."),i=oa[e]._config;else if(null!=t.parentLocale)if(null!=oa[t.parentLocale])i=oa[t.parentLocale]._config;else{if(null==(a=pa(t.parentLocale)))return la[t.parentLocale]||(la[t.parentLocale]=[]),la[t.parentLocale].push({name:e,config:t}),null;i=a._config}return oa[e]=new D(x(i,t)),la[e]&&la[e].forEach((function(e){ga(e.name,e.config)})),ma(e),oa[e]}return delete oa[e],null}function fa(e,t){if(null!=t){var a,i,n=ra;null!=oa[e]&&null!=oa[e].parentLocale?oa[e].set(x(oa[e]._config,t)):(null!=(i=pa(e))&&(n=i._config),t=x(n,t),null==i&&(t.abbr=e),(a=new D(t)).parentLocale=oa[e],oa[e]=a),ma(e)}else null!=oa[e]&&(null!=oa[e].parentLocale?(oa[e]=oa[e].parentLocale,e===ma()&&ma(e)):null!=oa[e]&&delete oa[e]);return oa[e]}function va(e){var t;if(e&&e._locale&&e._locale._abbr&&(e=e._locale._abbr),!e)return sa;if(!s(e)){if(t=pa(e))return t;e=[e]}return ca(e)}function ba(){return $(oa)}function ya(e){var t,a=e._a;return a&&-2===f(e).overflow&&(t=a[Ve]<0||a[Ve]>11?Ve:a[Ge]<1||a[Ge]>Qe(a[Ye],a[Ve])?Ge:a[Fe]<0||a[Fe]>24||24===a[Fe]&&(0!==a[We]||0!==a[Ze]||0!==a[qe])?Fe:a[We]<0||a[We]>59?We:a[Ze]<0||a[Ze]>59?Ze:a[qe]<0||a[qe]>999?qe:-1,f(e)._overflowDayOfYear&&(tGe)&&(t=Ge),f(e)._overflowWeeks&&-1===t&&(t=Ke),f(e)._overflowWeekday&&-1===t&&(t=Xe),f(e).overflow=t),e}var _a=/^\s*((?:[+-]\d{6}|\d{4})-(?:\d\d-\d\d|W\d\d-\d|W\d\d|\d\d\d|\d\d))(?:(T| )(\d\d(?::\d\d(?::\d\d(?:[.,]\d+)?)?)?)([+-]\d\d(?::?\d\d)?|\s*Z)?)?$/,wa=/^\s*((?:[+-]\d{6}|\d{4})(?:\d\d\d\d|W\d\d\d|W\d\d|\d\d\d|\d\d|))(?:(T| )(\d\d(?:\d\d(?:\d\d(?:[.,]\d+)?)?)?)([+-]\d\d(?::?\d\d)?|\s*Z)?)?$/,ka=/Z|[+-]\d\d(?::?\d\d)?/,Sa=[["YYYYYY-MM-DD",/[+-]\d{6}-\d\d-\d\d/],["YYYY-MM-DD",/\d{4}-\d\d-\d\d/],["GGGG-[W]WW-E",/\d{4}-W\d\d-\d/],["GGGG-[W]WW",/\d{4}-W\d\d/,!1],["YYYY-DDD",/\d{4}-\d{3}/],["YYYY-MM",/\d{4}-\d\d/,!1],["YYYYYYMMDD",/[+-]\d{10}/],["YYYYMMDD",/\d{8}/],["GGGG[W]WWE",/\d{4}W\d{3}/],["GGGG[W]WW",/\d{4}W\d{2}/,!1],["YYYYDDD",/\d{7}/],["YYYYMM",/\d{6}/,!1],["YYYY",/\d{4}/,!1]],Ea=[["HH:mm:ss.SSSS",/\d\d:\d\d:\d\d\.\d+/],["HH:mm:ss,SSSS",/\d\d:\d\d:\d\d,\d+/],["HH:mm:ss",/\d\d:\d\d:\d\d/],["HH:mm",/\d\d:\d\d/],["HHmmss.SSSS",/\d\d\d\d\d\d\.\d+/],["HHmmss,SSSS",/\d\d\d\d\d\d,\d+/],["HHmmss",/\d\d\d\d\d\d/],["HHmm",/\d\d\d\d/],["HH",/\d\d/]],Aa=/^\/?Date\((-?\d+)/i,$a=/^(?:(Mon|Tue|Wed|Thu|Fri|Sat|Sun),?\s)?(\d{1,2})\s(Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec)\s(\d{2,4})\s(\d\d):(\d\d)(?::(\d\d))?\s(?:(UT|GMT|[ECMP][SD]T)|([Zz])|([+-]\d{4}))$/,Ma={UT:0,GMT:0,EDT:-240,EST:-300,CDT:-300,CST:-360,MDT:-360,MST:-420,PDT:-420,PST:-480};function Ta(e){var t,a,i,n,s,r,o=e._i,l=_a.exec(o)||wa.exec(o),u=Sa.length,d=Ea.length;if(l){for(f(e).iso=!0,t=0,a=u;tgt(s)||0===e._dayOfYear)&&(f(e)._overflowDayOfYear=!0),a=yt(s,0,e._dayOfYear),e._a[Ve]=a.getUTCMonth(),e._a[Ge]=a.getUTCDate()),t=0;t<3&&null==e._a[t];++t)e._a[t]=r[t]=i[t];for(;t<7;t++)e._a[t]=r[t]=null==e._a[t]?2===t?1:0:e._a[t];24===e._a[Fe]&&0===e._a[We]&&0===e._a[Ze]&&0===e._a[qe]&&(e._nextDay=!0,e._a[Fe]=0),e._d=(e._useUTC?yt:bt).apply(null,r),n=e._useUTC?e._d.getUTCDay():e._d.getDay(),null!=e._tzm&&e._d.setUTCMinutes(e._d.getUTCMinutes()-e._tzm),e._nextDay&&(e._a[Fe]=24),e._w&&void 0!==e._w.d&&e._w.d!==n&&(f(e).weekdayMismatch=!0)}}function Ba(e){var t,a,i,n,s,r,o,l,u;null!=(t=e._w).GG||null!=t.W||null!=t.E?(s=1,r=4,a=Ca(t.GG,e._a[Ye],kt(Za(),1,4).year),i=Ca(t.W,1),((n=Ca(t.E,1))<1||n>7)&&(l=!0)):(s=e._locale._week.dow,r=e._locale._week.doy,u=kt(Za(),s,r),a=Ca(t.gg,e._a[Ye],u.year),i=Ca(t.w,u.week),null!=t.d?((n=t.d)<0||n>6)&&(l=!0):null!=t.e?(n=t.e+s,(t.e<0||t.e>6)&&(l=!0)):n=s),i<1||i>St(a,s,r)?f(e)._overflowWeeks=!0:null!=l?f(e)._overflowWeekday=!0:(o=wt(a,i,n,s,r),e._a[Ye]=o.year,e._dayOfYear=o.dayOfYear)}function Ia(e){if(e._f!==i.ISO_8601)if(e._f!==i.RFC_2822){e._a=[],f(e).empty=!0;var t,a,n,s,r,o,l,u=""+e._i,d=u.length,c=0;for(l=(n=V(e._f,e._locale).match(C)||[]).length,t=0;t0&&f(e).unusedInput.push(r),u=u.slice(u.indexOf(a)+a.length),c+=a.length),B[s]?(a?f(e).empty=!1:f(e).unusedTokens.push(s),Re(s,a,e)):e._strict&&!a&&f(e).unusedTokens.push(s);f(e).charsLeftOver=d-c,u.length>0&&f(e).unusedInput.push(u),e._a[Fe]<=12&&!0===f(e).bigHour&&e._a[Fe]>0&&(f(e).bigHour=void 0),f(e).parsedDateParts=e._a.slice(0),f(e).meridiem=e._meridiem,e._a[Fe]=Ra(e._locale,e._a[Fe],e._meridiem),null!==(o=f(e).era)&&(e._a[Ye]=e._locale.erasConvertYear(o,e._a[Ye])),La(e),ya(e)}else Pa(e);else Ta(e)}function Ra(e,t,a){var i;return null==a?t:null!=e.meridiemHour?e.meridiemHour(t,a):null!=e.isPM?((i=e.isPM(a))&&t<12&&(t+=12),i||12!==t||(t=0),t):t}function Ua(e){var t,a,i,n,s,r,o=!1,l=e._f.length;if(0===l)return f(e).invalidFormat=!0,void(e._d=new Date(NaN));for(n=0;nthis?this:e:b()}));function Xa(e,t){var a,i;if(1===t.length&&s(t[0])&&(t=t[0]),!t.length)return Za();for(a=t[0],i=1;ithis.clone().month(0).utcOffset()||this.utcOffset()>this.clone().month(5).utcOffset()}function wi(){if(!u(this._isDSTShifted))return this._isDSTShifted;var e,t={};return w(t,this),(t=Ga(t))._a?(e=t._isUTC?m(t._a):Za(t._a),this._isDSTShifted=this.isValid()&&li(t._a,e.toArray())>0):this._isDSTShifted=!1,this._isDSTShifted}function ki(){return!!this.isValid()&&!this._isUTC}function Si(){return!!this.isValid()&&this._isUTC}function Ei(){return!!this.isValid()&&this._isUTC&&0===this._offset}i.updateOffset=function(){};var Ai=/^(-|\+)?(?:(\d*)[. ])?(\d+):(\d+)(?::(\d+)(\.\d*)?)?$/,$i=/^(-|\+)?P(?:([-+]?[0-9,.]*)Y)?(?:([-+]?[0-9,.]*)M)?(?:([-+]?[0-9,.]*)W)?(?:([-+]?[0-9,.]*)D)?(?:T(?:([-+]?[0-9,.]*)H)?(?:([-+]?[0-9,.]*)M)?(?:([-+]?[0-9,.]*)S)?)?$/;function Mi(e,t){var a,i,n,s=e,r=null;return ri(e)?s={ms:e._milliseconds,d:e._days,M:e._months}:d(e)||!isNaN(+e)?(s={},t?s[t]=+e:s.milliseconds=+e):(r=Ai.exec(e))?(a="-"===r[1]?-1:1,s={y:0,d:de(r[Ge])*a,h:de(r[Fe])*a,m:de(r[We])*a,s:de(r[Ze])*a,ms:de(oi(1e3*r[qe]))*a}):(r=$i.exec(e))?(a="-"===r[1]?-1:1,s={y:Ti(r[2],a),M:Ti(r[3],a),w:Ti(r[4],a),d:Ti(r[5],a),h:Ti(r[6],a),m:Ti(r[7],a),s:Ti(r[8],a)}):null==s?s={}:"object"==typeof s&&("from"in s||"to"in s)&&(n=zi(Za(s.from),Za(s.to)),(s={}).ms=n.milliseconds,s.M=n.months),i=new si(s),ri(e)&&o(e,"_locale")&&(i._locale=e._locale),ri(e)&&o(e,"_isValid")&&(i._isValid=e._isValid),i}function Ti(e,t){var a=e&&parseFloat(e.replace(",","."));return(isNaN(a)?0:a)*t}function Oi(e,t){var a={};return a.months=t.month()-e.month()+12*(t.year()-e.year()),e.clone().add(a.months,"M").isAfter(t)&&--a.months,a.milliseconds=+t-+e.clone().add(a.months,"M"),a}function zi(e,t){var a;return e.isValid()&&t.isValid()?(t=hi(t,e),e.isBefore(t)?a=Oi(e,t):((a=Oi(t,e)).milliseconds=-a.milliseconds,a.months=-a.months),a):{milliseconds:0,months:0}}function xi(e,t){return function(a,i){var n;return null===i||isNaN(+i)||(T(t,"moment()."+t+"(period, number) is deprecated. Please use moment()."+t+"(number, period). See http://momentjs.com/guides/#/warnings/add-inverted-param/ for more info."),n=a,a=i,i=n),Di(this,Mi(a,i),e),this}}function Di(e,t,a,n){var s=t._milliseconds,r=oi(t._days),o=oi(t._months);e.isValid()&&(n=null==n||n,o&&ut(e,he(e,"Month")+o*a),r&&pe(e,"Date",he(e,"Date")+r*a),s&&e._d.setTime(e._d.valueOf()+s*a),n&&i.updateOffset(e,r||o))}Mi.fn=si.prototype,Mi.invalid=ni;var Hi=xi(1,"add"),Pi=xi(-1,"subtract");function Ni(e){return"string"==typeof e||e instanceof String}function Ci(e){return S(e)||c(e)||Ni(e)||d(e)||Li(e)||ji(e)||null==e}function ji(e){var t,a,i=r(e)&&!l(e),n=!1,s=["years","year","y","months","month","M","days","day","d","dates","date","D","hours","hour","h","minutes","minute","m","seconds","second","s","milliseconds","millisecond","ms"],u=s.length;for(t=0;ta.valueOf():a.valueOf()9999?Y(a,t?"YYYYYY-MM-DD[T]HH:mm:ss.SSS[Z]":"YYYYYY-MM-DD[T]HH:mm:ss.SSSZ"):O(Date.prototype.toISOString)?t?this.toDate().toISOString():new Date(this.valueOf()+60*this.utcOffset()*1e3).toISOString().replace("Z",Y(a,"Z")):Y(a,t?"YYYY-MM-DD[T]HH:mm:ss.SSS[Z]":"YYYY-MM-DD[T]HH:mm:ss.SSSZ")}function en(){if(!this.isValid())return"moment.invalid(/* "+this._i+" */)";var e,t,a,i,n="moment",s="";return this.isLocal()||(n=0===this.utcOffset()?"moment.utc":"moment.parseZone",s="Z"),e="["+n+'("]',t=0<=this.year()&&this.year()<=9999?"YYYY":"YYYYYY",a="-MM-DD[T]HH:mm:ss.SSS",i=s+'[")]',this.format(e+t+a+i)}function tn(e){e||(e=this.isUtc()?i.defaultFormatUtc:i.defaultFormat);var t=Y(this,e);return this.localeData().postformat(t)}function an(e,t){return this.isValid()&&(S(e)&&e.isValid()||Za(e).isValid())?Mi({to:this,from:e}).locale(this.locale()).humanize(!t):this.localeData().invalidDate()}function nn(e){return this.from(Za(),e)}function sn(e,t){return this.isValid()&&(S(e)&&e.isValid()||Za(e).isValid())?Mi({from:this,to:e}).locale(this.locale()).humanize(!t):this.localeData().invalidDate()}function rn(e){return this.to(Za(),e)}function on(e){var t;return void 0===e?this._locale._abbr:(null!=(t=va(e))&&(this._locale=t),this)}i.defaultFormat="YYYY-MM-DDTHH:mm:ssZ",i.defaultFormatUtc="YYYY-MM-DDTHH:mm:ss[Z]";var ln=A("moment().lang() is deprecated. Instead, use moment().localeData() to get the language configuration. Use moment().locale() to change languages.",(function(e){return void 0===e?this.localeData():this.locale(e)}));function un(){return this._locale}var dn=1e3,cn=60*dn,hn=60*cn,pn=3506328*hn;function mn(e,t){return(e%t+t)%t}function gn(e,t,a){return e<100&&e>=0?new Date(e+400,t,a)-pn:new Date(e,t,a).valueOf()}function fn(e,t,a){return e<100&&e>=0?Date.UTC(e+400,t,a)-pn:Date.UTC(e,t,a)}function vn(e){var t,a;if(void 0===(e=ie(e))||"millisecond"===e||!this.isValid())return this;switch(a=this._isUTC?fn:gn,e){case"year":t=a(this.year(),0,1);break;case"quarter":t=a(this.year(),this.month()-this.month()%3,1);break;case"month":t=a(this.year(),this.month(),1);break;case"week":t=a(this.year(),this.month(),this.date()-this.weekday());break;case"isoWeek":t=a(this.year(),this.month(),this.date()-(this.isoWeekday()-1));break;case"day":case"date":t=a(this.year(),this.month(),this.date());break;case"hour":t=this._d.valueOf(),t-=mn(t+(this._isUTC?0:this.utcOffset()*cn),hn);break;case"minute":t=this._d.valueOf(),t-=mn(t,cn);break;case"second":t=this._d.valueOf(),t-=mn(t,dn)}return this._d.setTime(t),i.updateOffset(this,!0),this}function bn(e){var t,a;if(void 0===(e=ie(e))||"millisecond"===e||!this.isValid())return this;switch(a=this._isUTC?fn:gn,e){case"year":t=a(this.year()+1,0,1)-1;break;case"quarter":t=a(this.year(),this.month()-this.month()%3+3,1)-1;break;case"month":t=a(this.year(),this.month()+1,1)-1;break;case"week":t=a(this.year(),this.month(),this.date()-this.weekday()+7)-1;break;case"isoWeek":t=a(this.year(),this.month(),this.date()-(this.isoWeekday()-1)+7)-1;break;case"day":case"date":t=a(this.year(),this.month(),this.date()+1)-1;break;case"hour":t=this._d.valueOf(),t+=hn-mn(t+(this._isUTC?0:this.utcOffset()*cn),hn)-1;break;case"minute":t=this._d.valueOf(),t+=cn-mn(t,cn)-1;break;case"second":t=this._d.valueOf(),t+=dn-mn(t,dn)-1}return this._d.setTime(t),i.updateOffset(this,!0),this}function yn(){return this._d.valueOf()-6e4*(this._offset||0)}function _n(){return Math.floor(this.valueOf()/1e3)}function wn(){return new Date(this.valueOf())}function kn(){var e=this;return[e.year(),e.month(),e.date(),e.hour(),e.minute(),e.second(),e.millisecond()]}function Sn(){var e=this;return{years:e.year(),months:e.month(),date:e.date(),hours:e.hours(),minutes:e.minutes(),seconds:e.seconds(),milliseconds:e.milliseconds()}}function En(){return this.isValid()?this.toISOString():null}function An(){return v(this)}function $n(){return p({},f(this))}function Mn(){return f(this).overflow}function Tn(){return{input:this._i,format:this._f,locale:this._locale,isUTC:this._isUTC,strict:this._strict}}function On(e,t){var a,n,s,r=this._eras||va("en")._eras;for(a=0,n=r.length;a=0)return l[i]}function xn(e,t){var a=e.since<=e.until?1:-1;return void 0===t?i(e.since).year():i(e.since).year()+(t-e.offset)*a}function Dn(){var e,t,a,i=this.localeData().eras();for(e=0,t=i.length;e(s=St(e,i,n))&&(t=s),Jn.call(this,e,t,a,i,n))}function Jn(e,t,a,i,n){var s=wt(e,t,a,i,n),r=yt(s.year,0,s.dayOfYear);return this.year(r.getUTCFullYear()),this.month(r.getUTCMonth()),this.date(r.getUTCDate()),this}function Qn(e){return null==e?Math.ceil((this.month()+1)/3):this.month(3*(e-1)+this.month()%3)}I("N",0,0,"eraAbbr"),I("NN",0,0,"eraAbbr"),I("NNN",0,0,"eraAbbr"),I("NNNN",0,0,"eraName"),I("NNNNN",0,0,"eraNarrow"),I("y",["y",1],"yo","eraYear"),I("y",["yy",2],0,"eraYear"),I("y",["yyy",3],0,"eraYear"),I("y",["yyyy",4],0,"eraYear"),Pe("N",Bn),Pe("NN",Bn),Pe("NNN",Bn),Pe("NNNN",In),Pe("NNNNN",Rn),Be(["N","NN","NNN","NNNN","NNNNN"],(function(e,t,a,i){var n=a._locale.erasParse(e,i,a._strict);n?f(a).era=n:f(a).invalidEra=e})),Pe("y",Te),Pe("yy",Te),Pe("yyy",Te),Pe("yyyy",Te),Pe("yo",Un),Be(["y","yy","yyy","yyyy"],Ye),Be(["yo"],(function(e,t,a,i){var n;a._locale._eraYearOrdinalRegex&&(n=e.match(a._locale._eraYearOrdinalRegex)),a._locale.eraYearOrdinalParse?t[Ye]=a._locale.eraYearOrdinalParse(e,n):t[Ye]=parseInt(e,10)})),I(0,["gg",2],0,(function(){return this.weekYear()%100})),I(0,["GG",2],0,(function(){return this.isoWeekYear()%100})),Vn("gggg","weekYear"),Vn("ggggg","weekYear"),Vn("GGGG","isoWeekYear"),Vn("GGGGG","isoWeekYear"),ae("weekYear","gg"),ae("isoWeekYear","GG"),re("weekYear",1),re("isoWeekYear",1),Pe("G",Oe),Pe("g",Oe),Pe("GG",ke,be),Pe("gg",ke,be),Pe("GGGG",$e,_e),Pe("gggg",$e,_e),Pe("GGGGG",Me,we),Pe("ggggg",Me,we),Ie(["gggg","ggggg","GGGG","GGGGG"],(function(e,t,a,i){t[i.substr(0,2)]=de(e)})),Ie(["gg","GG"],(function(e,t,a,n){t[n]=i.parseTwoDigitYear(e)})),I("Q",0,"Qo","quarter"),ae("quarter","Q"),re("quarter",7),Pe("Q",ve),Be("Q",(function(e,t){t[Ve]=3*(de(e)-1)})),I("D",["DD",2],"Do","date"),ae("date","D"),re("date",9),Pe("D",ke),Pe("DD",ke,be),Pe("Do",(function(e,t){return e?t._dayOfMonthOrdinalParse||t._ordinalParse:t._dayOfMonthOrdinalParseLenient})),Be(["D","DD"],Ge),Be("Do",(function(e,t){t[Ge]=de(e.match(ke)[0])}));var es=ce("Date",!0);function ts(e){var t=Math.round((this.clone().startOf("day")-this.clone().startOf("year"))/864e5)+1;return null==e?t:this.add(e-t,"d")}I("DDD",["DDDD",3],"DDDo","dayOfYear"),ae("dayOfYear","DDD"),re("dayOfYear",4),Pe("DDD",Ae),Pe("DDDD",ye),Be(["DDD","DDDD"],(function(e,t,a){a._dayOfYear=de(e)})),I("m",["mm",2],0,"minute"),ae("minute","m"),re("minute",14),Pe("m",ke),Pe("mm",ke,be),Be(["m","mm"],We);var as=ce("Minutes",!1);I("s",["ss",2],0,"second"),ae("second","s"),re("second",15),Pe("s",ke),Pe("ss",ke,be),Be(["s","ss"],Ze);var is,ns,ss=ce("Seconds",!1);for(I("S",0,0,(function(){return~~(this.millisecond()/100)})),I(0,["SS",2],0,(function(){return~~(this.millisecond()/10)})),I(0,["SSS",3],0,"millisecond"),I(0,["SSSS",4],0,(function(){return 10*this.millisecond()})),I(0,["SSSSS",5],0,(function(){return 100*this.millisecond()})),I(0,["SSSSSS",6],0,(function(){return 1e3*this.millisecond()})),I(0,["SSSSSSS",7],0,(function(){return 1e4*this.millisecond()})),I(0,["SSSSSSSS",8],0,(function(){return 1e5*this.millisecond()})),I(0,["SSSSSSSSS",9],0,(function(){return 1e6*this.millisecond()})),ae("millisecond","ms"),re("millisecond",16),Pe("S",Ae,ve),Pe("SS",Ae,be),Pe("SSS",Ae,ye),is="SSSS";is.length<=9;is+="S")Pe(is,Te);function rs(e,t){t[qe]=de(1e3*("0."+e))}for(is="S";is.length<=9;is+="S")Be(is,rs);function os(){return this._isUTC?"UTC":""}function ls(){return this._isUTC?"Coordinated Universal Time":""}ns=ce("Milliseconds",!1),I("z",0,0,"zoneAbbr"),I("zz",0,0,"zoneName");var us=k.prototype;function ds(e){return Za(1e3*e)}function cs(){return Za.apply(null,arguments).parseZone()}function hs(e){return e}us.add=Hi,us.calendar=Ri,us.clone=Ui,us.diff=qi,us.endOf=bn,us.format=tn,us.from=an,us.fromNow=nn,us.to=sn,us.toNow=rn,us.get=me,us.invalidAt=Mn,us.isAfter=Yi,us.isBefore=Vi,us.isBetween=Gi,us.isSame=Fi,us.isSameOrAfter=Wi,us.isSameOrBefore=Zi,us.isValid=An,us.lang=ln,us.locale=on,us.localeData=un,us.max=Ka,us.min=qa,us.parsingFlags=$n,us.set=ge,us.startOf=vn,us.subtract=Pi,us.toArray=kn,us.toObject=Sn,us.toDate=wn,us.toISOString=Qi,us.inspect=en,"undefined"!=typeof Symbol&&null!=Symbol.for&&(us[Symbol.for("nodejs.util.inspect.custom")]=function(){return"Moment<"+this.format()+">"}),us.toJSON=En,us.toString=Ji,us.unix=_n,us.valueOf=yn,us.creationData=Tn,us.eraName=Dn,us.eraNarrow=Hn,us.eraAbbr=Pn,us.eraYear=Nn,us.year=ft,us.isLeapYear=vt,us.weekYear=Gn,us.isoWeekYear=Fn,us.quarter=us.quarters=Qn,us.month=dt,us.daysInMonth=ct,us.week=us.weeks=Tt,us.isoWeek=us.isoWeeks=Ot,us.weeksInYear=qn,us.weeksInWeekYear=Kn,us.isoWeeksInYear=Wn,us.isoWeeksInISOWeekYear=Zn,us.date=es,us.day=us.days=Vt,us.weekday=Gt,us.isoWeekday=Ft,us.dayOfYear=ts,us.hour=us.hours=ia,us.minute=us.minutes=as,us.second=us.seconds=ss,us.millisecond=us.milliseconds=ns,us.utcOffset=mi,us.utc=fi,us.local=vi,us.parseZone=bi,us.hasAlignedHourOffset=yi,us.isDST=_i,us.isLocal=ki,us.isUtcOffset=Si,us.isUtc=Ei,us.isUTC=Ei,us.zoneAbbr=os,us.zoneName=ls,us.dates=A("dates accessor is deprecated. Use date instead.",es),us.months=A("months accessor is deprecated. Use month instead",dt),us.years=A("years accessor is deprecated. Use year instead",ft),us.zone=A("moment().zone is deprecated, use moment().utcOffset instead. http://momentjs.com/guides/#/warnings/zone/",gi),us.isDSTShifted=A("isDSTShifted is deprecated. See http://momentjs.com/guides/#/warnings/dst-shifted/ for more information",wi);var ps=D.prototype;function ms(e,t,a,i){var n=va(),s=m().set(i,t);return n[a](s,e)}function gs(e,t,a){if(d(e)&&(t=e,e=void 0),e=e||"",null!=t)return ms(e,t,a,"month");var i,n=[];for(i=0;i<12;i++)n[i]=ms(e,i,a,"month");return n}function fs(e,t,a,i){"boolean"==typeof e?(d(t)&&(a=t,t=void 0),t=t||""):(a=t=e,e=!1,d(t)&&(a=t,t=void 0),t=t||"");var n,s=va(),r=e?s._week.dow:0,o=[];if(null!=a)return ms(t,(a+r)%7,i,"day");for(n=0;n<7;n++)o[n]=ms(t,(n+r)%7,i,"day");return o}function vs(e,t){return gs(e,t,"months")}function bs(e,t){return gs(e,t,"monthsShort")}function ys(e,t,a){return fs(e,t,a,"weekdays")}function _s(e,t,a){return fs(e,t,a,"weekdaysShort")}function ws(e,t,a){return fs(e,t,a,"weekdaysMin")}ps.calendar=P,ps.longDateFormat=F,ps.invalidDate=Z,ps.ordinal=X,ps.preparse=hs,ps.postformat=hs,ps.relativeTime=Q,ps.pastFuture=ee,ps.set=z,ps.eras=On,ps.erasParse=zn,ps.erasConvertYear=xn,ps.erasAbbrRegex=jn,ps.erasNameRegex=Cn,ps.erasNarrowRegex=Ln,ps.months=st,ps.monthsShort=rt,ps.monthsParse=lt,ps.monthsRegex=pt,ps.monthsShortRegex=ht,ps.week=Et,ps.firstDayOfYear=Mt,ps.firstDayOfWeek=$t,ps.weekdays=Bt,ps.weekdaysMin=Rt,ps.weekdaysShort=It,ps.weekdaysParse=Yt,ps.weekdaysRegex=Wt,ps.weekdaysShortRegex=Zt,ps.weekdaysMinRegex=qt,ps.isPM=ta,ps.meridiem=na,ma("en",{eras:[{since:"0001-01-01",until:1/0,offset:1,name:"Anno Domini",narrow:"AD",abbr:"AD"},{since:"0000-12-31",until:-1/0,offset:1,name:"Before Christ",narrow:"BC",abbr:"BC"}],dayOfMonthOrdinalParse:/\d{1,2}(th|st|nd|rd)/,ordinal:function(e){var t=e%10;return e+(1===de(e%100/10)?"th":1===t?"st":2===t?"nd":3===t?"rd":"th")}}),i.lang=A("moment.lang is deprecated. Use moment.locale instead.",ma),i.langData=A("moment.langData is deprecated. Use moment.localeData instead.",va);var ks=Math.abs;function Ss(){var e=this._data;return this._milliseconds=ks(this._milliseconds),this._days=ks(this._days),this._months=ks(this._months),e.milliseconds=ks(e.milliseconds),e.seconds=ks(e.seconds),e.minutes=ks(e.minutes),e.hours=ks(e.hours),e.months=ks(e.months),e.years=ks(e.years),this}function Es(e,t,a,i){var n=Mi(t,a);return e._milliseconds+=i*n._milliseconds,e._days+=i*n._days,e._months+=i*n._months,e._bubble()}function As(e,t){return Es(this,e,t,1)}function $s(e,t){return Es(this,e,t,-1)}function Ms(e){return e<0?Math.floor(e):Math.ceil(e)}function Ts(){var e,t,a,i,n,s=this._milliseconds,r=this._days,o=this._months,l=this._data;return s>=0&&r>=0&&o>=0||s<=0&&r<=0&&o<=0||(s+=864e5*Ms(zs(o)+r),r=0,o=0),l.milliseconds=s%1e3,e=ue(s/1e3),l.seconds=e%60,t=ue(e/60),l.minutes=t%60,a=ue(t/60),l.hours=a%24,r+=ue(a/24),o+=n=ue(Os(r)),r-=Ms(zs(n)),i=ue(o/12),o%=12,l.days=r,l.months=o,l.years=i,this}function Os(e){return 4800*e/146097}function zs(e){return 146097*e/4800}function xs(e){if(!this.isValid())return NaN;var t,a,i=this._milliseconds;if("month"===(e=ie(e))||"quarter"===e||"year"===e)switch(t=this._days+i/864e5,a=this._months+Os(t),e){case"month":return a;case"quarter":return a/3;case"year":return a/12}else switch(t=this._days+Math.round(zs(this._months)),e){case"week":return t/7+i/6048e5;case"day":return t+i/864e5;case"hour":return 24*t+i/36e5;case"minute":return 1440*t+i/6e4;case"second":return 86400*t+i/1e3;case"millisecond":return Math.floor(864e5*t)+i;default:throw new Error("Unknown unit "+e)}}function Ds(){return this.isValid()?this._milliseconds+864e5*this._days+this._months%12*2592e6+31536e6*de(this._months/12):NaN}function Hs(e){return function(){return this.as(e)}}var Ps=Hs("ms"),Ns=Hs("s"),Cs=Hs("m"),js=Hs("h"),Ls=Hs("d"),Bs=Hs("w"),Is=Hs("M"),Rs=Hs("Q"),Us=Hs("y");function Ys(){return Mi(this)}function Vs(e){return e=ie(e),this.isValid()?this[e+"s"]():NaN}function Gs(e){return function(){return this.isValid()?this._data[e]:NaN}}var Fs=Gs("milliseconds"),Ws=Gs("seconds"),Zs=Gs("minutes"),qs=Gs("hours"),Ks=Gs("days"),Xs=Gs("months"),Js=Gs("years");function Qs(){return ue(this.days()/7)}var er=Math.round,tr={ss:44,s:45,m:45,h:22,d:26,w:null,M:11};function ar(e,t,a,i,n){return n.relativeTime(t||1,!!a,e,i)}function ir(e,t,a,i){var n=Mi(e).abs(),s=er(n.as("s")),r=er(n.as("m")),o=er(n.as("h")),l=er(n.as("d")),u=er(n.as("M")),d=er(n.as("w")),c=er(n.as("y")),h=s<=a.ss&&["s",s]||s0,h[4]=i,ar.apply(null,h)}function nr(e){return void 0===e?er:"function"==typeof e&&(er=e,!0)}function sr(e,t){return void 0!==tr[e]&&(void 0===t?tr[e]:(tr[e]=t,"s"===e&&(tr.ss=t-1),!0))}function rr(e,t){if(!this.isValid())return this.localeData().invalidDate();var a,i,n=!1,s=tr;return"object"==typeof e&&(t=e,e=!1),"boolean"==typeof e&&(n=e),"object"==typeof t&&(s=Object.assign({},tr,t),null!=t.s&&null==t.ss&&(s.ss=t.s-1)),i=ir(this,!n,s,a=this.localeData()),n&&(i=a.pastFuture(+this,i)),a.postformat(i)}var or=Math.abs;function lr(e){return(e>0)-(e<0)||+e}function ur(){if(!this.isValid())return this.localeData().invalidDate();var e,t,a,i,n,s,r,o,l=or(this._milliseconds)/1e3,u=or(this._days),d=or(this._months),c=this.asSeconds();return c?(e=ue(l/60),t=ue(e/60),l%=60,e%=60,a=ue(d/12),d%=12,i=l?l.toFixed(3).replace(/\.?0+$/,""):"",n=c<0?"-":"",s=lr(this._months)!==lr(c)?"-":"",r=lr(this._days)!==lr(c)?"-":"",o=lr(this._milliseconds)!==lr(c)?"-":"",n+"P"+(a?s+a+"Y":"")+(d?s+d+"M":"")+(u?r+u+"D":"")+(t||e||l?"T":"")+(t?o+t+"H":"")+(e?o+e+"M":"")+(l?o+i+"S":"")):"P0D"}var dr=si.prototype;return dr.isValid=ii,dr.abs=Ss,dr.add=As,dr.subtract=$s,dr.as=xs,dr.asMilliseconds=Ps,dr.asSeconds=Ns,dr.asMinutes=Cs,dr.asHours=js,dr.asDays=Ls,dr.asWeeks=Bs,dr.asMonths=Is,dr.asQuarters=Rs,dr.asYears=Us,dr.valueOf=Ds,dr._bubble=Ts,dr.clone=Ys,dr.get=Vs,dr.milliseconds=Fs,dr.seconds=Ws,dr.minutes=Zs,dr.hours=qs,dr.days=Ks,dr.weeks=Qs,dr.months=Xs,dr.years=Js,dr.humanize=rr,dr.toISOString=ur,dr.toString=ur,dr.toJSON=ur,dr.locale=on,dr.localeData=un,dr.toIsoString=A("toIsoString() is deprecated. Please use toISOString() instead (notice the capitals)",ur),dr.lang=ln,I("X",0,0,"unix"),I("x",0,0,"valueOf"),Pe("x",Oe),Pe("X",De),Be("X",(function(e,t,a){a._d=new Date(1e3*parseFloat(e))})),Be("x",(function(e,t,a){a._d=new Date(de(e))})), //! moment.js -a.version="2.29.4",i(Wa),a.fn=us,a.min=Xa,a.max=Ja,a.now=Qa,a.utc=p,a.unix=ds,a.months=vs,a.isDate=d,a.locale=pa,a.invalid=v,a.duration=Ai,a.isMoment=k,a.weekdays=ys,a.parseZone=cs,a.localeData=fa,a.isDuration=si,a.monthsShort=bs,a.weekdaysMin=ws,a.defineLocale=ma,a.updateLocale=ga,a.locales=va,a.weekdaysShort=_s,a.normalizeUnits=ae,a.relativeTimeRounding=nr,a.relativeTimeThreshold=sr,a.calendarFormat=Ii,a.prototype=us,a.HTML5_FMT={DATETIME_LOCAL:"YYYY-MM-DDTHH:mm",DATETIME_LOCAL_SECONDS:"YYYY-MM-DDTHH:mm:ss",DATETIME_LOCAL_MS:"YYYY-MM-DDTHH:mm:ss.SSS",DATE:"YYYY-MM-DD",TIME:"HH:mm",TIME_SECONDS:"HH:mm:ss",TIME_MS:"HH:mm:ss.SSS",WEEK:"GGGG-[W]WW",MONTH:"YYYY-MM"},a}();var Di=Ai(Ti.exports);let Hi=class extends(tt(le)){constructor(){super(...arguments),this.zones=[],this.modules=[],this.mappings=[]}firstUpdated(){(async()=>{await ye()})()}hassSubscribe(){return this._fetchData(),[this.hass.connection.subscribeMessage((()=>this._fetchData()),{type:_e+"_config_updated"})]}async _fetchData(){this.hass&&(this.config=await Xe(this.hass),this.zones=await Je(this.hass),this.modules=await Qe(this.hass),this.mappings=await et(this.hass))}handleCalculateAllZones(){this.hass&&this.hass.callApi("POST",_e+"/zones",{calculate_all:!0})}handleUpdateAllZones(){this.hass&&this.hass.callApi("POST",_e+"/zones",{update_all:!0})}handleResetAllBuckets(){this.hass&&this.hass.callApi("POST",_e+"/zones",{reset_all_buckets:!0})}handleClearAllWeatherdata(){this.hass&&this.hass.callApi("POST",_e+"/zones",{clear_all_weatherdata:!0})}handleAddZone(){const e={id:this.zones.length,name:this.nameInput.value,size:parseFloat(this.sizeInput.value),throughput:parseFloat(this.throughputInput.value),state:$i.Automatic,duration:0,bucket:0,module:void 0,old_bucket:0,delta:0,explanation:"",multiplier:1,mapping:void 0,lead_time:0,maximum_duration:void 0,maximum_bucket:void 0};this.zones=[...this.zones,e],this.saveToHA(e)}handleEditZone(e,t){this.hass&&(this.zones=Object.values(this.zones).map(((a,i)=>i===e?t:a)),this.saveToHA(t))}handleRemoveZone(e,t){if(!this.hass)return;const a=Object.values(this.zones).at(t);var i,n;a&&(this.zones=this.zones.filter(((e,a)=>a!==t)),this.hass&&(i=this.hass,n=a.id.toString(),i.callApi("POST",_e+"/zones",{id:n,remove:!0})))}handleCalculateZone(e){const t=Object.values(this.zones).at(e);var a,i;t&&(this.hass&&(a=this.hass,i=t.id.toString(),a.callApi("POST",_e+"/zones",{id:i,calculate:!0,override_cache:!0})))}handleUpdateZone(e){const t=Object.values(this.zones).at(e);var a,i;t&&(this.hass&&(a=this.hass,i=t.id.toString(),a.callApi("POST",_e+"/zones",{id:i,update:!0})))}saveToHA(e){var t,a;this.hass&&(t=this.hass,a=e,t.callApi("POST",_e+"/zones",a))}renderTheOptions(e,t){if(this.hass){let a=Y``;return Object.entries(e).map((([e,i])=>a=Y`${a} +i.version="2.29.4",n(Za),i.fn=us,i.min=Ja,i.max=Qa,i.now=ei,i.utc=m,i.unix=ds,i.months=vs,i.isDate=c,i.locale=ma,i.invalid=b,i.duration=Mi,i.isMoment=S,i.weekdays=ys,i.parseZone=cs,i.localeData=va,i.isDuration=ri,i.monthsShort=bs,i.weekdaysMin=ws,i.defineLocale=ga,i.updateLocale=fa,i.locales=ba,i.weekdaysShort=_s,i.normalizeUnits=ie,i.relativeTimeRounding=nr,i.relativeTimeThreshold=sr,i.calendarFormat=Ii,i.prototype=us,i.HTML5_FMT={DATETIME_LOCAL:"YYYY-MM-DDTHH:mm",DATETIME_LOCAL_SECONDS:"YYYY-MM-DDTHH:mm:ss",DATETIME_LOCAL_MS:"YYYY-MM-DDTHH:mm:ss.SSS",DATE:"YYYY-MM-DD",TIME:"HH:mm",TIME_SECONDS:"HH:mm:ss",TIME_MS:"HH:mm:ss.SSS",WEEK:"GGGG-[W]WW",MONTH:"YYYY-MM"},i}()}(Ji);var Qi=Ki(Ji.exports);let en=class extends(tt(le)){constructor(){super(...arguments),this.zones=[],this.modules=[],this.mappings=[]}firstUpdated(){(async()=>{await ye()})()}hassSubscribe(){return this._fetchData(),[this.hass.connection.subscribeMessage((()=>this._fetchData()),{type:_e+"_config_updated"})]}async _fetchData(){this.hass&&(this.config=await Xe(this.hass),this.zones=await Je(this.hass),this.modules=await Qe(this.hass),this.mappings=await et(this.hass))}handleCalculateAllZones(){this.hass&&this.hass.callApi("POST",_e+"/zones",{calculate_all:!0})}handleUpdateAllZones(){this.hass&&this.hass.callApi("POST",_e+"/zones",{update_all:!0})}handleResetAllBuckets(){this.hass&&this.hass.callApi("POST",_e+"/zones",{reset_all_buckets:!0})}handleClearAllWeatherdata(){this.hass&&this.hass.callApi("POST",_e+"/zones",{clear_all_weatherdata:!0})}handleAddZone(){const e={id:this.zones.length,name:this.nameInput.value,size:parseFloat(this.sizeInput.value),throughput:parseFloat(this.throughputInput.value),state:qi.Automatic,duration:0,bucket:0,module:void 0,old_bucket:0,delta:0,explanation:"",multiplier:1,mapping:void 0,lead_time:0,maximum_duration:void 0,maximum_bucket:void 0};this.zones=[...this.zones,e],this.saveToHA(e)}handleEditZone(e,t){this.hass&&(this.zones=Object.values(this.zones).map(((a,i)=>i===e?t:a)),this.saveToHA(t))}handleRemoveZone(e,t){if(!this.hass)return;const a=Object.values(this.zones).at(t);var i,n;a&&(this.zones=this.zones.filter(((e,a)=>a!==t)),this.hass&&(i=this.hass,n=a.id.toString(),i.callApi("POST",_e+"/zones",{id:n,remove:!0})))}handleCalculateZone(e){const t=Object.values(this.zones).at(e);var a,i;t&&(this.hass&&(a=this.hass,i=t.id.toString(),a.callApi("POST",_e+"/zones",{id:i,calculate:!0,override_cache:!0})))}handleUpdateZone(e){const t=Object.values(this.zones).at(e);var a,i;t&&(this.hass&&(a=this.hass,i=t.id.toString(),a.callApi("POST",_e+"/zones",{id:i,update:!0})))}saveToHA(e){var t,a;this.hass&&(t=this.hass,a=e,t.callApi("POST",_e+"/zones",a))}renderTheOptions(e,t){if(this.hass){let a=Y``;return Object.entries(e).map((([e,i])=>a=Y`${a} `,e}return Y``}renderUnitOptionsForMapping(e,t){if(this.hass&&this.config){const a=function(e){switch(e){case $e:case De:return[{unit:"°C",system:Ae},{unit:"°F",system:Ee}];case Oe:case Me:return[{unit:"mm",system:Ae},{unit:"in",system:Ee}];case Te:return[{unit:"%",system:[Ae,Ee]}];case ze:return[{unit:"millibar",system:Ae},{unit:"hPa",system:Ae},{unit:"psi",system:Ee},{unit:"inch Hg",system:Ee}];case He:return[{unit:"km/h",system:Ae},{unit:"meter/s",system:Ae},{unit:"mile/h",system:Ee}];case xe:return[{unit:"W/m2",system:Ae},{unit:"MJ/day/m2",system:Ae},{unit:"W/sq ft",system:Ee},{unit:"MJ/day/sq ft",system:Ee}];default:return[]}}(e);let i=Y``,n=t[Ve];const s=this.config.units;return t[Ve]||a.forEach((function(e){"string"==typeof e.system?s==e.system&&(n=e.unit):e.system.forEach((function(t){s==t.system&&(n=e.unit)}))})),a.forEach((function(e){i=Y`${i} `})),i}return Y``}render(){return this.hass?Y`
- ${hi("panels.mappings.description",this.hass.language)}. + ${Ci("panels.mappings.description",this.hass.language)}.
${Ci("panels.mappings.labels.mapping-name",this.hass.language)}:
${Object.entries(this.mappings).map((([e,t])=>this.renderMapping(t,parseInt(e))))} `:Y``}static get styles(){return c` - ${wi} + ${Gi} .mapping { margin-top: 25px; margin-bottom: 25px; @@ -1049,15 +1049,15 @@ a.version="2.29.4",i(Wa),a.fn=us,a.min=Xa,a.max=Ja,a.now=Qa,a.utc=p,a.unix=ds,a. .strikethrough { text-decoration: line-through; } - `}};n([pe()],zi.prototype,"config",void 0),n([pe({type:Array})],zi.prototype,"zones",void 0),n([pe({type:Array})],zi.prototype,"mappings",void 0),n([me("#mappingNameInput")],zi.prototype,"mappingNameInput",void 0),zi=n([de("smart-irrigation-view-mappings")],zi);const Pi=()=>{const e=e=>{let t={};for(let a=0;a3){let i=t.slice(3);if(t.includes("filter")){const t=i.findIndex((e=>"filter"==e)),n=i.slice(t+1);i=i.slice(0,t),a=Object.assign(Object.assign({},a),{filter:e(n)})}i.length&&(i.length%2&&(a=Object.assign(Object.assign({},a),{subpage:i.shift()})),i.length&&(a=Object.assign(Object.assign({},a),{params:e(i)})))}return a};e.SmartIrrigationPanel=class extends le{async firstUpdated(){window.addEventListener("location-changed",(()=>{window.location.pathname.includes("smart-irrigation")&&this.requestUpdate()})),await ye(),this.requestUpdate()}render(){if(!customElements.get("ha-panel-config"))return Y` loading... `;const e=Pi();return Y` + `}};n([pe()],an.prototype,"config",void 0),n([pe({type:Array})],an.prototype,"zones",void 0),n([pe({type:Array})],an.prototype,"mappings",void 0),n([me("#mappingNameInput")],an.prototype,"mappingNameInput",void 0),an=n([de("smart-irrigation-view-mappings")],an);const nn=()=>{const e=e=>{let t={};for(let a=0;a3){let i=t.slice(3);if(t.includes("filter")){const t=i.findIndex((e=>"filter"==e)),n=i.slice(t+1);i=i.slice(0,t),a=Object.assign(Object.assign({},a),{filter:e(n)})}i.length&&(i.length%2&&(a=Object.assign(Object.assign({},a),{subpage:i.shift()})),i.length&&(a=Object.assign(Object.assign({},a),{params:e(i)})))}return a};e.SmartIrrigationPanel=class extends le{async firstUpdated(){window.addEventListener("location-changed",(()=>{window.location.pathname.includes("smart-irrigation")&&this.requestUpdate()})),await ye(),this.requestUpdate()}render(){if(!customElements.get("ha-panel-config"))return Y` loading... `;const e=nn();return Y`
-
${hi("title",this.hass.language)}
-
${"v2024.5.1"}
+
${Ci("title",this.hass.language)}
+
${"v2024.5.2"}
- ${hi("panels.general.title",this.hass.language)} + ${Ci("panels.general.title",this.hass.language)} - ${hi("panels.zones.title",this.hass.language)} + ${Ci("panels.zones.title",this.hass.language)} ${hi("panels.modules.title",this.hass.language)}${Ci("panels.modules.title",this.hass.language)} ${hi("panels.mappings.title",this.hass.language)}${Ci("panels.mappings.title",this.hass.language)} ${hi("panels.help.title",this.hass.language)}${Ci("panels.help.title",this.hass.language)}
@@ -1109,22 +1109,22 @@ a.version="2.29.4",i(Wa),a.fn=us,a.min=Xa,a.max=Ja,a.now=Qa,a.utc=p,a.unix=ds,a. .path=${e} > `;case"help":return Y`
- ${hi("panels.help.cards.how-to-get-help.first-read-the",this.hass.language)} ${hi("panels.help.cards.how-to-get-help.wiki",this.hass.language)}. ${hi("panels.help.cards.how-to-get-help.if-you-still-need-help",this.hass.language)} + ${Ci("panels.help.cards.how-to-get-help.first-read-the",this.hass.language)} ${Ci("panels.help.cards.how-to-get-help.wiki",this.hass.language)}. ${Ci("panels.help.cards.how-to-get-help.if-you-still-need-help",this.hass.language)} ${hi("panels.help.cards.how-to-get-help.community-forum",this.hass.language)}${Ci("panels.help.cards.how-to-get-help.community-forum",this.hass.language)} - ${hi("panels.help.cards.how-to-get-help.or-open-a",this.hass.language)} + ${Ci("panels.help.cards.how-to-get-help.or-open-a",this.hass.language)} ${hi("panels.help.cards.how-to-get-help.github-issue",this.hass.language)}${Ci("panels.help.cards.how-to-get-help.github-issue",this.hass.language)} - (${hi("panels.help.cards.how-to-get-help.english-only",this.hass.language)}). + (${Ci("panels.help.cards.how-to-get-help.english-only",this.hass.language)}).
`;default:return Y` @@ -1133,8 +1133,8 @@ a.version="2.29.4",i(Wa),a.fn=us,a.min=Xa,a.max=Ja,a.now=Qa,a.utc=p,a.unix=ds,a. page from the menu above to continue. - `}}handlePageSelected(e){const t=e.detail.item.getAttribute("page-name");t!==Pi().page?(!function(e,t,a){void 0===a&&(a=!1),a?history.replaceState(null,"",t):history.pushState(null,"",t),be(window,"location-changed",{replace:a})}(0,((e,...t)=>{let a={page:e,params:{}};t.forEach((e=>{"string"==typeof e?a=Object.assign(Object.assign({},a),{subpage:e}):"params"in e?a=Object.assign(Object.assign({},a),{params:e.params}):"filter"in e&&(a=Object.assign(Object.assign({},a),{filter:e.filter}))}));const i=e=>{let t=Object.keys(e);t=t.filter((t=>e[t])),t.sort();let a="";return t.forEach((t=>{const i=e[t];a=a.length?`${a}/${t}/${i}`:`${t}/${i}`})),a};let n=`/${_e}/${a.page}`;return a.subpage&&(n=`${n}/${a.subpage}`),i(a.params).length&&(n=`${n}/${i(a.params)}`),a.filter&&(n=`${n}/filter/${i(a.filter)}`),n})(t)),this.requestUpdate()):scrollTo(0,0)}static get styles(){return c` - ${wi} :host { + `}}handlePageSelected(e){const t=e.detail.item.getAttribute("page-name");t!==nn().page?(!function(e,t,a){void 0===a&&(a=!1),a?history.replaceState(null,"",t):history.pushState(null,"",t),be(window,"location-changed",{replace:a})}(0,((e,...t)=>{let a={page:e,params:{}};t.forEach((e=>{"string"==typeof e?a=Object.assign(Object.assign({},a),{subpage:e}):"params"in e?a=Object.assign(Object.assign({},a),{params:e.params}):"filter"in e&&(a=Object.assign(Object.assign({},a),{filter:e.filter}))}));const i=e=>{let t=Object.keys(e);t=t.filter((t=>e[t])),t.sort();let a="";return t.forEach((t=>{const i=e[t];a=a.length?`${a}/${t}/${i}`:`${t}/${i}`})),a};let n=`/${_e}/${a.page}`;return a.subpage&&(n=`${n}/${a.subpage}`),i(a.params).length&&(n=`${n}/${i(a.params)}`),a.filter&&(n=`${n}/filter/${i(a.filter)}`),n})(t)),this.requestUpdate()):scrollTo(0,0)}static get styles(){return c` + ${Gi} :host { color: var(--primary-text-color); --paper-card-header-color: var(--primary-text-color); } @@ -1187,7 +1187,7 @@ a.version="2.29.4",i(Wa),a.fn=us,a.min=Xa,a.max=Ja,a.now=Qa,a.utc=p,a.unix=ds,a. font-weight: 500; color: rgba(var(--rgb-text-primary-color), 0.9); } - `}},n([pe()],e.SmartIrrigationPanel.prototype,"hass",void 0),n([pe({type:Boolean,reflect:!0})],e.SmartIrrigationPanel.prototype,"narrow",void 0),e.SmartIrrigationPanel=n([de("smart-irrigation")],e.SmartIrrigationPanel);let Ni=class extends le{async showDialog(e){this._params=e,await this.updateComplete}async closeDialog(){this._params=void 0}render(){return this._params?Y` + `}},n([pe()],e.SmartIrrigationPanel.prototype,"hass",void 0),n([pe({type:Boolean,reflect:!0})],e.SmartIrrigationPanel.prototype,"narrow",void 0),e.SmartIrrigationPanel=n([de("smart-irrigation")],e.SmartIrrigationPanel);let sn=class extends le{async showDialog(e){this._params=e,await this.updateComplete}async closeDialog(){this._params=void 0}render(){return this._params?Y` = 0 ist, ist keine Bewässerung nötig und die Dauer ist gleich", + "maximum-bucket-is": "Der maximale Vorrat ist" + } + } + }, + "calcmodules": { + "pyeto": { + "description": "Die Berechnung der Verunstungsrate basiert auf der FAO56-Formel aus der PyETO-Bibliothek" + }, + "static": { + "description": "Modul mit einer statisch konfigurierbaren Verdunstungsrate." + }, + "passthrough": { + "description": "Pass Through übernimmt den Evapotranspirationssensor und gibt seinen Wert zurück. Auf diese Weise werden alle Berechnungen der Verdunstung umgangen, außer der Anwendung von Aggregaten wie Summe, Durchschnitt etc)." } }, "panels": { diff --git a/custom_components/smart_irrigation/frontend/localize/languages/en.json b/custom_components/smart_irrigation/frontend/localize/languages/en.json index 442cc2b6..ba77fba1 100644 --- a/custom_components/smart_irrigation/frontend/localize/languages/en.json +++ b/custom_components/smart_irrigation/frontend/localize/languages/en.json @@ -8,6 +8,55 @@ "no": "No", "select": "Select", "yes": "Yes" + }, + "attributes": { + "size": "size", + "throughput": "throughput", + "state": "state", + "bucket": "bucket", + "last_updated": "last updated", + "last_calculated": "last calculated", + "number_of_data_points": "number of data points" + } + }, + "defaults": { + "default-zone": "Default zone", + "default-mapping": "Default sensor group" + }, + "module": { + "calculation": { + "explanation": { + "module-returned-evapotranspiration-deficiency": "Note: this explanation uses '.' as decimal separator, shows rounded and metric values. Module returned Evapotranspiration deficiency of", + "bucket-was": "Bucket was", + "new-bucket-values-is": "New bucket value is", + "old-bucket-variable": "old_bucket", + "delta": "delta", + "bucket-less-than-zero-irrigation-necessary": "Since bucket < 0, irrigation is necessary", + "steps-taken-to-calculate-duration": "To calculate the exact duration, the following steps were taken", + "precipitation-rate-defined-as": "The precipitation rate is defined as", + "duration-is-calculated-as": "The duration is calculated as", + "bucket": "bucket", + "precipitation-rate-variable": "precipitation_rate", + "multiplier-is-applied": "Now, the multiplier is applied. The multiplier is", + "duration-after-multiplier-is": "hence the duration is", + "maximum-duration-is-applied": "Then, the maximum duration is applied. The maximum duration is", + "duration-after-maximum-duration-is": "hence the duration is", + "lead-time-is-applied": "Finally, the lead time is applied. The lead time is", + "duration-after-lead-time-is": "hence the final duration is", + "bucket-larger-than-or-equal-to-zero-no-irrigation-necessary": "Since bucket >= 0, no irrigation is necessary and duration is set to", + "maximum-bucket-is": "maximum bucket size is" + } + } + }, + "calcmodules": { + "pyeto": { + "description": "Calculate duration based on the FAO56 calculation from the PyETO library" + }, + "static": { + "description": "'Dummy' module with a static configurable delta" + }, + "passthrough": { + "description": "Passthrough module that returns the value of an Evapotranspiration sensor as delta" } }, "panels": { diff --git a/custom_components/smart_irrigation/frontend/localize/languages/es.json b/custom_components/smart_irrigation/frontend/localize/languages/es.json index 7abc0ddd..bdd0839a 100644 --- a/custom_components/smart_irrigation/frontend/localize/languages/es.json +++ b/custom_components/smart_irrigation/frontend/localize/languages/es.json @@ -8,6 +8,51 @@ "no": "No", "select": "Seleccionar", "yes": "Sí" + }, + "attributes": { + "size": "Tamaño", + "throughput": "Rendimiento", + "state": "Estado" + } + }, + "defaults": { + "default-zone": "Zona de riego predeterminada", + "default-mapping": "Grupo de sensores predeterminado" + }, + "module": { + "calculation": { + "explanation": { + "module-returned-evapotranspiration-deficiency": "Nota: esta explicación utiliza '.' como separador decimal y muestra valores redondeados. El módulo devuelve una deficiencia de evapotranspiración de", + "bucket-was": "El cubo era", + "new-bucket-values-is": "El nuevo valor del cubo es", + "old-bucket-variable": "old_bucket", + "delta": "delta", + "bucket-less-than-zero-irrigation-necessary": "Dado que cubo < 0, el riego es necesario", + "steps-taken-to-calculate-duration": "Para calcular la duración exacta, se siguieron los siguientes pasos", + "precipitation-rate-defined-as": "La tasa de precipitación se define como", + "duration-is-calculated-as": "La duración se calcula como", + "bucket": "cubo", + "precipitation-rate-variable": "precipitation_rate", + "multiplier-is-applied": "A continuación, se aplica el multiplicador. El multiplicador es", + "duration-after-multiplier-is": "por lo que la duración es", + "maximum-duration-is-applied": "A continuación, se aplica la duración máxima. La duración máxima es", + "duration-after-maximum-duration-is": "por lo que la duración es", + "lead-time-is-applied": "Por último, se aplica el plazo de entrega. El plazo de entrega es", + "duration-after-lead-time-is": "por lo que la duración final es", + "bucket-larger-than-or-equal-to-zero-no-irrigation-necessary": "Como cubo >= 0, no es necesario regar y la duración se fija en", + "maximum-bucket-is": "El tamaño máximo de cubo es" + } + } + }, + "calcmodules": { + "pyeto": { + "description": "Calcular la duración a partir del cálculo FAO56 de la biblioteca PyETO" + }, + "static": { + "description": "Módulo 'de prueba' con un delta estático configurable" + }, + "passthrough": { + "description": "Módulo de paso que devuelve el valor de un sensor de evapotranspiración como delta" } }, "panels": { diff --git a/custom_components/smart_irrigation/frontend/localize/languages/fr.json b/custom_components/smart_irrigation/frontend/localize/languages/fr.json index 03fd4790..cd8dba59 100644 --- a/custom_components/smart_irrigation/frontend/localize/languages/fr.json +++ b/custom_components/smart_irrigation/frontend/localize/languages/fr.json @@ -8,6 +8,51 @@ "no": "Non", "select": "Sélectionner", "yes": "Oui" + }, + "attributes": { + "size": "taille", + "throughput": "débit", + "state": "état" + } + }, + "defaults": { + "default-zone": "Zone par défaut", + "default-mapping": "Groupe de capteurs par défaut" + }, + "module": { + "calculation": { + "explanation": { + "module-returned-evapotranspiration-deficiency": "NB: cette explication utilise '.' comme séparateur décimal, et affiche des valeurs arrondies. Le module a donné un manque d'Évapotranspiration de", + "bucket-was": "Le seau (bucket) était de", + "new-bucket-values-is": "La nouvelle valeur du seau (bucket) est", + "old-bucket-variable": "ancien_bucket", + "delta": "delta", + "bucket-less-than-zero-irrigation-necessary": "Puisque le seau (bucket) est < 0, l'irrigation est nécessaire", + "steps-taken-to-calculate-duration": "Pour calculer la durée d'irrigation, les étapes suivantes ont été réalisées", + "precipitation-rate-defined-as": "Le taux de précipitation est défini comme", + "duration-is-calculated-as": "La durée d'irrigation est calculée avec", + "bucket": "seau (bucket)", + "precipitation-rate-variable": "taux_precipitation", + "multiplier-is-applied": "Le multiplicateur est appliqué. Le multiplicateur est", + "duration-after-multiplier-is": "donc la durée d'irrigation est de", + "maximum-duration-is-applied": "Ensuite la durée maximale est appliquée. La durée maximale est de", + "duration-after-maximum-duration-is": "donc la durée d'irrigation est de", + "lead-time-is-applied": "Enfin, le délai est appliqué. Le délai est de", + "duration-after-lead-time-is": "et donc la durée finale est de", + "bucket-larger-than-or-equal-to-zero-no-irrigation-necessary": "Puisque le seau (bucket) est >= 0, l'irrigation n'est pas nécessaire, et la durée est réglée à", + "maximum-bucket-is": "la taille du seau (bucket) maximale est" + } + } + }, + "calcmodules": { + "pyeto": { + "description": "Le calcul de durée est basée sur le calcul FAO56 de la bibliothèque PyETO" + }, + "static": { + "description": "Module 'Dummy' avec un delta statique configurable" + }, + "passthrough": { + "description": "Module passerelle qui renvoie la valeur d'un capteur d'Évapotranspiration comme delta" } }, "panels": { diff --git a/custom_components/smart_irrigation/frontend/localize/languages/it.json b/custom_components/smart_irrigation/frontend/localize/languages/it.json index 9e747f70..52522fa1 100644 --- a/custom_components/smart_irrigation/frontend/localize/languages/it.json +++ b/custom_components/smart_irrigation/frontend/localize/languages/it.json @@ -8,6 +8,55 @@ "no": "No", "select": "Seleziona", "yes": "Si" + }, + "attributes": { + "size": "size", + "throughput": "throughput", + "state": "state", + "bucket": "secchio", + "last_updated": "ultimo aggiornamento", + "last_calculated": "ultimo calcolo", + "number_of_data_points": "numero di punti dati" + } + }, + "defaults": { + "default-zone": "Zona predefinita", + "default-mapping": "Mappatura predefinita" + }, + "module": { + "calculation": { + "explanation": { + "module-returned-evapotranspiration-deficiency": "Il modulo ha restituito un deficit di evapotraspirazione del", + "bucket-was": "Il secchio era", + "new-bucket-values-is": "Il nuovo valore del secchio è", + "old-bucket-variable": "old_bucket", + "delta": "delta", + "bucket-less-than-zero-irrigation-necessary": "Poiché secchio < 0, è necessaria l'irrigazione", + "steps-taken-to-calculate-duration": "Per calcolare la durata esatta, sono stati eseguiti i seguenti passaggi", + "precipitation-rate-defined-as": "Il tasso di precipitazione è definito come", + "duration-is-calculated-as": "La durata viene calcolata come", + "bucket": "bucket", + "precipitation-rate-variable": "precipitation_rate", + "multiplier-is-applied": "Ora viene applicato il moltiplicatore. Il moltiplicatore è", + "duration-after-multiplier-is": "quindi la durata è", + "maximum-duration-is-applied": "Quindi, viene applicata la durata massima. La durata massima è", + "duration-after-maximum-duration-is": "quindi la durata è", + "lead-time-is-applied": "Infine, viene applicato il lead time. Il tempo di consegna è", + "duration-after-lead-time-is": "quindi la durata finale è", + "bucket-larger-than-or-equal-to-zero-no-irrigation-necessary": "Poiché secchio >= 0, non è necessaria alcuna irrigazione e la durata è impostata su", + "maximum-bucket-is": "la dimensione massima del secchio è" + } + } + }, + "calcmodules": { + "pyeto": { + "description": "Calcola la durata in base al calcolo FAO56 dalla libreria PyETO" + }, + "static": { + "description": "Modulo 'fittizio' con un delta configurabile statico" + }, + "passthrough": { + "description": "Modulo passthrough che restituisce il valore di un sensore di Evapotraspirazione sotto forma di delta" } }, "panels": { diff --git a/custom_components/smart_irrigation/frontend/localize/languages/nl.json b/custom_components/smart_irrigation/frontend/localize/languages/nl.json index 037eb901..6de95564 100644 --- a/custom_components/smart_irrigation/frontend/localize/languages/nl.json +++ b/custom_components/smart_irrigation/frontend/localize/languages/nl.json @@ -8,6 +8,51 @@ "no": "Nee", "select": "Kies", "yes": "Ja" + }, + "attributes": { + "size": "afmeting", + "throughput": "doorvoer", + "state": "status" + } + }, + "defaults": { + "default-zone": "Standaard zone", + "default-mapping": "Standaard sensorgroep" + }, + "module": { + "calculation": { + "explanation": { + "module-returned-evapotranspiration-deficiency": "NB: in deze uitleg wordt de '.' as decimaalscheidingsteken gebruikt, worden afgeronde en metrische getallen getoond. Module berekende ET waarde van", + "bucket-was": "Voorraad was", + "new-bucket-values-is": "Nieuwe voorraad is", + "old-bucket-variable": "oude_voorraad", + "delta": "verandering", + "bucket-less-than-zero-irrigation-necessary": "Omdat de voorraad < 0 is, is irrigatie nodig", + "steps-taken-to-calculate-duration": "On de exacte duur te berekenen werd het volgende gedaan", + "precipitation-rate-defined-as": "De neerslag is", + "duration-is-calculated-as": "De duur is", + "bucket": "voorraad", + "precipitation-rate-variable": "neerslag", + "multiplier-is-applied": "De vermenigvuldiger wordt toegepast. Deze is", + "duration-after-multiplier-is": "dus de duur is", + "maximum-duration-is-applied": "De maximum duur wordt toegepast. Deze is", + "duration-after-maximum-duration-is": "dus de duur is", + "lead-time-is-applied": "As laatste wordt de aanlooptijd toegepast. Deze is", + "duration-after-lead-time-is": "dus de uiteindelijke duur is", + "bucket-larger-than-or-equal-to-zero-no-irrigation-necessary": "Omdat de voorraad >= 0 is er geen irrigatie nodig en is de duur gelijk aan", + "maximum-bucket-is": "maximale voorraad grootte is" + } + } + }, + "calcmodules": { + "pyeto": { + "description": "Bereken duur op basis van de FAU56 formule en de PyETO library" + }, + "static": { + "description": "Module met instelbare verandering" + }, + "passthrough": { + "description": "Geeft waarde van ET sensor as verandering terug" } }, "panels": { diff --git a/custom_components/smart_irrigation/frontend/localize/languages/no.json b/custom_components/smart_irrigation/frontend/localize/languages/no.json index 78ac01d0..6324edc8 100644 --- a/custom_components/smart_irrigation/frontend/localize/languages/no.json +++ b/custom_components/smart_irrigation/frontend/localize/languages/no.json @@ -8,6 +8,51 @@ "no": "Nei", "select": "Velg", "yes": "Ja" + }, + "attributes": { + "size": "størrelse", + "throughput": "kapasitet", + "state": "status" + } + }, + "defaults": { + "default-zone": "Standard sone", + "default-mapping": "Standard sensorguppe" + }, + "module": { + "calculation": { + "explanation": { + "module-returned-evapotranspiration-deficiency": "Merk: Denne forklaringen bruker '.' som desimaltegn og viser avrundede verdier. Modulen returnerte evapotranspirasjonsunderskudd på", + "bucket-was": "Bucket var", + "new-bucket-values-is": "Ny bucket verdien er", + "old-bucket-variable": "gammel_bucket", + "delta": "delta", + "bucket-less-than-zero-irrigation-necessary": "Siden bucket < 0, Vanning er nødvendig.", + "steps-taken-to-calculate-duration": "For å beregne nøyaktig varighet, ble følgende trinn utført", + "precipitation-rate-defined-as": "Nedbørshastigheten er definert som", + "duration-is-calculated-as": "Varigheten beregnes som", + "bucket": "bucket", + "precipitation-rate-variable": "nedbørshastighet", + "multiplier-is-applied": "Nå blir multiplikatoren brukt. Multiplikatoren er", + "duration-after-multiplier-is": "derfor er varigheten", + "maximum-duration-is-applied": "Deretter blir den maksimale varigheten brukt. Den maksimale varigheten er", + "duration-after-maximum-duration-is": "derfor er varigheten", + "lead-time-is-applied": "Til slutt blir ledetiden brukt. Ledetiden er", + "duration-after-lead-time-is": "derfor er den endelige varigheten", + "bucket-larger-than-or-equal-to-zero-no-irrigation-necessary": "Siden bucket >= 0, Ingen vanning er nødvendig, og varigheten er satt til", + "maximum-bucket-is": "maksimum bucket stærrelse er" + } + } + }, + "calcmodules": { + "pyeto": { + "description": "Beregn varigheten basert på FAO56-beregningen fra PyETO-biblioteket" + }, + "static": { + "description": "'Dummy'-modul med en statisk konfigurerbar endring (delta)" + }, + "passthrough": { + "description": "En 'Passthrough'-modul som returnerer verdien av en Evapotranspiration-sensor som delta" } }, "panels": { diff --git a/custom_components/smart_irrigation/frontend/localize/languages/sk.json b/custom_components/smart_irrigation/frontend/localize/languages/sk.json index 122a256f..77318d21 100644 --- a/custom_components/smart_irrigation/frontend/localize/languages/sk.json +++ b/custom_components/smart_irrigation/frontend/localize/languages/sk.json @@ -8,6 +8,52 @@ "no": "Nie", "select": "Zvoliť", "yes": "Áno" + }, + "attributes": { + "size": "size", + "throughput": "priepustnosť", + "state": "stav", + "bucket": "nádoba" + } + }, + "defaults": { + "default-zone": "Predvolená zóna", + "default-mapping": "Predvolená skupina snímačov" + }, + "module": { + "calculation": { + "explanation": { + "module-returned-evapotranspiration-deficiency": "Poznámka: toto vysvetlenie používa '.' ako oddeľovač desatinných miest zobrazuje zaokrúhlené a metrické hodnoty. Modul vrátil nedostatok evapotranspirácie", + "bucket-was": "Vedro bolo", + "new-bucket-values-is": "Hodnota nového vedra je", + "old-bucket-variable": "staré_vedro", + "delta": "delta", + "bucket-less-than-zero-irrigation-necessary": "Keďže vedro < 0, je potrebné zavlažovanie", + "steps-taken-to-calculate-duration": "Na výpočet presného trvania sa vykonali nasledujúce kroky", + "precipitation-rate-defined-as": "Miera zrážok je definovaná ako", + "duration-is-calculated-as": "Trvanie sa vypočíta ako", + "bucket": "vedro", + "precipitation-rate-variable": "úhrn zrážok", + "multiplier-is-applied": "Teraz sa použije multiplikátor. Násobiteľ je", + "duration-after-multiplier-is": "teda trvanie je", + "maximum-duration-is-applied": "Potom sa použije maximálne trvanie. Maximálne trvanie je", + "duration-after-maximum-duration-is": "teda trvanie je", + "lead-time-is-applied": "Nakoniec sa použije dodacia lehota. Dodacia lehota je", + "duration-after-lead-time-is": "teda konečné trvanie je", + "bucket-larger-than-or-equal-to-zero-no-irrigation-necessary": "Keďže vedro >= 0, nie je potrebné žiadne zavlažovanie a trvanie je nastavené na", + "maximum-bucket-is": "maximálna veľkosť vedra je" + } + } + }, + "calcmodules": { + "pyeto": { + "description": "Vypočítajte trvanie na základe výpočtu FAO56 z knižnice PyETO" + }, + "static": { + "description": "'Atrapa' modul so statickou konfigurovateľnou deltou" + }, + "passthrough": { + "description": "Priechodný modul, ktorý vracia hodnotu evapotranspiračného senzora ako delta" } }, "panels": { diff --git a/custom_components/smart_irrigation/frontend/src/const.ts b/custom_components/smart_irrigation/frontend/src/const.ts index 5c0f35af..15e7692c 100644 --- a/custom_components/smart_irrigation/frontend/src/const.ts +++ b/custom_components/smart_irrigation/frontend/src/const.ts @@ -1,4 +1,4 @@ -export const VERSION = "v2024.5.1"; +export const VERSION = "v2024.5.2"; export const REPO = "https://github.com/jeroenterheerdt/HASmartIrrigation;"; export const ISSUES_URL = REPO + "/issues"; diff --git a/custom_components/smart_irrigation/manifest.json b/custom_components/smart_irrigation/manifest.json index c0bcb494..9e945d18 100644 --- a/custom_components/smart_irrigation/manifest.json +++ b/custom_components/smart_irrigation/manifest.json @@ -8,5 +8,5 @@ "iot_class": "local_push", "issue_tracker": "https://github.com/jeroenterheerdt/HASmartIrrigation/issues", "requirements": [], - "version": "v2024.5.1" + "version": "v2024.5.2" } diff --git a/custom_components/smart_irrigation/translations/de.json b/custom_components/smart_irrigation/translations/de.json index e874add7..e4164013 100644 --- a/custom_components/smart_irrigation/translations/de.json +++ b/custom_components/smart_irrigation/translations/de.json @@ -47,52 +47,5 @@ } } } - }, - "common": { - "attributes": { - "size": "Größe", - "throughput": "Durchfluss", - "state": "Zustand" - } - }, - "defaults": { - "default-zone": "Standard Zone", - "default-mapping": "Standard Sensorgruppe" - }, - "module": { - "calculation": { - "explanation": { - "module-returned-evapotranspiration-deficiency": "Beachte: Diese Beschreibung nutzt '.' als Dezimalzeichen und zeigt gerundete Werte. Das Modul berechnete einen Evapotranspirationsmangel von", - "bucket-was": "Der alte Vorrat war", - "new-bucket-values-is": "Der neue Vorrat ist", - "old-bucket-variable": "alter_Vorrat", - "delta": "Veränderung", - "bucket-less-than-zero-irrigation-necessary": "Wenn der Vorrat < 0 ist, ist eine Bewässerung nötig.", - "steps-taken-to-calculate-duration": "Für eine exakte Berechnung der Dauer, wurden folgende Schritte durchgeführt", - "precipitation-rate-defined-as": "Der Niederschlag ist", - "duration-is-calculated-as": "Die Dauer ist", - "bucket": "Vorrat", - "precipitation-rate-variable": "Niederschlag", - "multiplier-is-applied": "Der Multiplikator wird angewendet. Der Multiplikator ist", - "duration-after-multiplier-is": "also ist die Dauer", - "maximum-duration-is-applied": "Die maximale Dauer wird angewendet. Diese ist", - "duration-after-maximum-duration-is": "also ist die Dauer", - "lead-time-is-applied": "Zuletzt wird die Vorlaufzeit angewendet. Die Vorlaufzeit ist", - "duration-after-lead-time-is": "also ist die Dauer", - "bucket-larger-than-or-equal-to-zero-no-irrigation-necessary": "Wenn der Vorrat >= 0 ist, ist keine Bewässerung nötig und die Dauer ist gleich", - "maximum-bucket-is": "Der maximale Vorrat ist" - } - } - }, - "calcmodules": { - "pyeto": { - "description": "Die Berechnung der Verunstungsrate basiert auf der FAO56-Formel aus der PyETO-Bibliothek" - }, - "static": { - "description": "Modul mit einer statisch konfigurierbaren Verdunstungsrate." - }, - "passthrough": { - "description": "Pass Through übernimmt den Evapotranspirationssensor und gibt seinen Wert zurück. Auf diese Weise werden alle Berechnungen der Verdunstung umgangen, außer der Anwendung von Aggregaten wie Summe, Durchschnitt etc)." - } } } diff --git a/custom_components/smart_irrigation/translations/en.json b/custom_components/smart_irrigation/translations/en.json index c87e62d9..74197eb7 100644 --- a/custom_components/smart_irrigation/translations/en.json +++ b/custom_components/smart_irrigation/translations/en.json @@ -48,57 +48,6 @@ } } }, - "common": { - "attributes": { - "size": "size", - "throughput": "throughput", - "state": "state", - "bucket": "bucket", - "last_updated": "last updated", - "last_calculated": "last calculated", - "number_of_data_points": "number of data points" - } - }, - "defaults": { - "default-zone": "Default zone", - "default-mapping": "Default sensor group" - }, - "module": { - "calculation": { - "explanation": { - "module-returned-evapotranspiration-deficiency": "Note: this explanation uses '.' as decimal separator, shows rounded and metric values. Module returned Evapotranspiration deficiency of", - "bucket-was": "Bucket was", - "new-bucket-values-is": "New bucket value is", - "old-bucket-variable": "old_bucket", - "delta": "delta", - "bucket-less-than-zero-irrigation-necessary": "Since bucket < 0, irrigation is necessary", - "steps-taken-to-calculate-duration": "To calculate the exact duration, the following steps were taken", - "precipitation-rate-defined-as": "The precipitation rate is defined as", - "duration-is-calculated-as": "The duration is calculated as", - "bucket": "bucket", - "precipitation-rate-variable": "precipitation_rate", - "multiplier-is-applied": "Now, the multiplier is applied. The multiplier is", - "duration-after-multiplier-is": "hence the duration is", - "maximum-duration-is-applied": "Then, the maximum duration is applied. The maximum duration is", - "duration-after-maximum-duration-is": "hence the duration is", - "lead-time-is-applied": "Finally, the lead time is applied. The lead time is", - "duration-after-lead-time-is": "hence the final duration is", - "bucket-larger-than-or-equal-to-zero-no-irrigation-necessary": "Since bucket >= 0, no irrigation is necessary and duration is set to", - "maximum-bucket-is": "maximum bucket size is" - } - } - }, - "calcmodules": { - "pyeto": { - "description": "Calculate duration based on the FAO56 calculation from the PyETO library" - }, - "static": { - "description": "'Dummy' module with a static configurable delta" - }, - "passthrough": { - "description": "Passthrough module that returns the value of an Evapotranspiration sensor as delta" - } - }, "services": { "calculate_all_zones": { "name": "Calculate all zones", diff --git a/custom_components/smart_irrigation/translations/es.json b/custom_components/smart_irrigation/translations/es.json index 584737a0..e9839fd5 100644 --- a/custom_components/smart_irrigation/translations/es.json +++ b/custom_components/smart_irrigation/translations/es.json @@ -47,52 +47,5 @@ } } } - }, - "common": { - "attributes": { - "size": "Tamaño", - "throughput": "Rendimiento", - "state": "Estado" - } - }, - "defaults": { - "default-zone": "Zona de riego predeterminada", - "default-mapping": "Grupo de sensores predeterminado" - }, - "module": { - "calculation": { - "explanation": { - "module-returned-evapotranspiration-deficiency": "Nota: esta explicación utiliza '.' como separador decimal y muestra valores redondeados. El módulo devuelve una deficiencia de evapotranspiración de", - "bucket-was": "El cubo era", - "new-bucket-values-is": "El nuevo valor del cubo es", - "old-bucket-variable": "old_bucket", - "delta": "delta", - "bucket-less-than-zero-irrigation-necessary": "Dado que cubo < 0, el riego es necesario", - "steps-taken-to-calculate-duration": "Para calcular la duración exacta, se siguieron los siguientes pasos", - "precipitation-rate-defined-as": "La tasa de precipitación se define como", - "duration-is-calculated-as": "La duración se calcula como", - "bucket": "cubo", - "precipitation-rate-variable": "precipitation_rate", - "multiplier-is-applied": "A continuación, se aplica el multiplicador. El multiplicador es", - "duration-after-multiplier-is": "por lo que la duración es", - "maximum-duration-is-applied": "A continuación, se aplica la duración máxima. La duración máxima es", - "duration-after-maximum-duration-is": "por lo que la duración es", - "lead-time-is-applied": "Por último, se aplica el plazo de entrega. El plazo de entrega es", - "duration-after-lead-time-is": "por lo que la duración final es", - "bucket-larger-than-or-equal-to-zero-no-irrigation-necessary": "Como cubo >= 0, no es necesario regar y la duración se fija en", - "maximum-bucket-is": "El tamaño máximo de cubo es" - } - } - }, - "calcmodules": { - "pyeto": { - "description": "Calcular la duración a partir del cálculo FAO56 de la biblioteca PyETO" - }, - "static": { - "description": "Módulo 'de prueba' con un delta estático configurable" - }, - "passthrough": { - "description": "Módulo de paso que devuelve el valor de un sensor de evapotranspiración como delta" - } } } diff --git a/custom_components/smart_irrigation/translations/fr.json b/custom_components/smart_irrigation/translations/fr.json index 539233d8..bbd3e765 100644 --- a/custom_components/smart_irrigation/translations/fr.json +++ b/custom_components/smart_irrigation/translations/fr.json @@ -47,52 +47,5 @@ } } } - }, - "common": { - "attributes": { - "size": "taille", - "throughput": "débit", - "state": "état" - } - }, - "defaults": { - "default-zone": "Zone par défaut", - "default-mapping": "Groupe de capteurs par défaut" - }, - "module": { - "calculation": { - "explanation": { - "module-returned-evapotranspiration-deficiency": "NB: cette explication utilise '.' comme séparateur décimal, et affiche des valeurs arrondies. Le module a donné un manque d'Évapotranspiration de", - "bucket-was": "Le seau (bucket) était de", - "new-bucket-values-is": "La nouvelle valeur du seau (bucket) est", - "old-bucket-variable": "ancien_bucket", - "delta": "delta", - "bucket-less-than-zero-irrigation-necessary": "Puisque le seau (bucket) est < 0, l'irrigation est nécessaire", - "steps-taken-to-calculate-duration": "Pour calculer la durée d'irrigation, les étapes suivantes ont été réalisées", - "precipitation-rate-defined-as": "Le taux de précipitation est défini comme", - "duration-is-calculated-as": "La durée d'irrigation est calculée avec", - "bucket": "seau (bucket)", - "precipitation-rate-variable": "taux_precipitation", - "multiplier-is-applied": "Le multiplicateur est appliqué. Le multiplicateur est", - "duration-after-multiplier-is": "donc la durée d'irrigation est de", - "maximum-duration-is-applied": "Ensuite la durée maximale est appliquée. La durée maximale est de", - "duration-after-maximum-duration-is": "donc la durée d'irrigation est de", - "lead-time-is-applied": "Enfin, le délai est appliqué. Le délai est de", - "duration-after-lead-time-is": "et donc la durée finale est de", - "bucket-larger-than-or-equal-to-zero-no-irrigation-necessary": "Puisque le seau (bucket) est >= 0, l'irrigation n'est pas nécessaire, et la durée est réglée à", - "maximum-bucket-is": "la taille du seau (bucket) maximale est" - } - } - }, - "calcmodules": { - "pyeto": { - "description": "Le calcul de durée est basée sur le calcul FAO56 de la bibliothèque PyETO" - }, - "static": { - "description": "Module 'Dummy' avec un delta statique configurable" - }, - "passthrough": { - "description": "Module passerelle qui renvoie la valeur d'un capteur d'Évapotranspiration comme delta" - } } } diff --git a/custom_components/smart_irrigation/translations/it.json b/custom_components/smart_irrigation/translations/it.json index e3dba1cf..f78e7814 100644 --- a/custom_components/smart_irrigation/translations/it.json +++ b/custom_components/smart_irrigation/translations/it.json @@ -48,57 +48,6 @@ } } }, - "common": { - "attributes": { - "size": "size", - "throughput": "throughput", - "state": "state", - "bucket": "secchio", - "last_updated": "ultimo aggiornamento", - "last_calculated": "ultimo calcolo", - "number_of_data_points": "numero di punti dati" - } - }, - "defaults": { - "default-zone": "Zona predefinita", - "default-mapping": "Mappatura predefinita" - }, - "module": { - "calculation": { - "explanation": { - "module-returned-evapotranspiration-deficiency": "Il modulo ha restituito un deficit di evapotraspirazione del", - "bucket-was": "Il secchio era", - "new-bucket-values-is": "Il nuovo valore del secchio è", - "old-bucket-variable": "old_bucket", - "delta": "delta", - "bucket-less-than-zero-irrigation-necessary": "Poiché secchio < 0, è necessaria l'irrigazione", - "steps-taken-to-calculate-duration": "Per calcolare la durata esatta, sono stati eseguiti i seguenti passaggi", - "precipitation-rate-defined-as": "Il tasso di precipitazione è definito come", - "duration-is-calculated-as": "La durata viene calcolata come", - "bucket": "bucket", - "precipitation-rate-variable": "precipitation_rate", - "multiplier-is-applied": "Ora viene applicato il moltiplicatore. Il moltiplicatore è", - "duration-after-multiplier-is": "quindi la durata è", - "maximum-duration-is-applied": "Quindi, viene applicata la durata massima. La durata massima è", - "duration-after-maximum-duration-is": "quindi la durata è", - "lead-time-is-applied": "Infine, viene applicato il lead time. Il tempo di consegna è", - "duration-after-lead-time-is": "quindi la durata finale è", - "bucket-larger-than-or-equal-to-zero-no-irrigation-necessary": "Poiché secchio >= 0, non è necessaria alcuna irrigazione e la durata è impostata su", - "maximum-bucket-is": "la dimensione massima del secchio è" - } - } - }, - "calcmodules": { - "pyeto": { - "description": "Calcola la durata in base al calcolo FAO56 dalla libreria PyETO" - }, - "static": { - "description": "Modulo 'fittizio' con un delta configurabile statico" - }, - "passthrough": { - "description": "Modulo passthrough che restituisce il valore di un sensore di Evapotraspirazione sotto forma di delta" -} - }, "services": { "calculate_all_zones": { "name": "Calcola tutte le zone", diff --git a/custom_components/smart_irrigation/translations/nl.json b/custom_components/smart_irrigation/translations/nl.json index 867caa31..c2b3cf32 100644 --- a/custom_components/smart_irrigation/translations/nl.json +++ b/custom_components/smart_irrigation/translations/nl.json @@ -47,52 +47,5 @@ } } } - }, - "common": { - "attributes": { - "size": "afmeting", - "throughput": "doorvoer", - "state": "status" - } - }, - "defaults": { - "default-zone": "Standaard zone", - "default-mapping": "Standaard sensorgroep" - }, - "module": { - "calculation": { - "explanation": { - "module-returned-evapotranspiration-deficiency": "NB: in deze uitleg wordt de '.' as decimaalscheidingsteken gebruikt, worden afgeronde en metrische getallen getoond. Module berekende ET waarde van", - "bucket-was": "Voorraad was", - "new-bucket-values-is": "Nieuwe voorraad is", - "old-bucket-variable": "oude_voorraad", - "delta": "verandering", - "bucket-less-than-zero-irrigation-necessary": "Omdat de voorraad < 0 is, is irrigatie nodig", - "steps-taken-to-calculate-duration": "On de exacte duur te berekenen werd het volgende gedaan", - "precipitation-rate-defined-as": "De neerslag is", - "duration-is-calculated-as": "De duur is", - "bucket": "voorraad", - "precipitation-rate-variable": "neerslag", - "multiplier-is-applied": "De vermenigvuldiger wordt toegepast. Deze is", - "duration-after-multiplier-is": "dus de duur is", - "maximum-duration-is-applied": "De maximum duur wordt toegepast. Deze is", - "duration-after-maximum-duration-is": "dus de duur is", - "lead-time-is-applied": "As laatste wordt de aanlooptijd toegepast. Deze is", - "duration-after-lead-time-is": "dus de uiteindelijke duur is", - "bucket-larger-than-or-equal-to-zero-no-irrigation-necessary": "Omdat de voorraad >= 0 is er geen irrigatie nodig en is de duur gelijk aan", - "maximum-bucket-is": "maximale voorraad grootte is" - } - } - }, - "calcmodules": { - "pyeto": { - "description": "Bereken duur op basis van de FAU56 formule en de PyETO library" - }, - "static": { - "description": "Module met instelbare verandering" - }, - "passthrough": { - "description": "Geeft waarde van ET sensor as verandering terug" - } } } diff --git a/custom_components/smart_irrigation/translations/no.json b/custom_components/smart_irrigation/translations/no.json index 86a30268..ec35c347 100644 --- a/custom_components/smart_irrigation/translations/no.json +++ b/custom_components/smart_irrigation/translations/no.json @@ -47,52 +47,5 @@ } } } - }, - "common": { - "attributes": { - "size": "størrelse", - "throughput": "kapasitet", - "state": "status" - } - }, - "defaults": { - "default-zone": "Standard sone", - "default-mapping": "Standard sensorguppe" - }, - "module": { - "calculation": { - "explanation": { - "module-returned-evapotranspiration-deficiency": "Merk: Denne forklaringen bruker '.' som desimaltegn og viser avrundede verdier. Modulen returnerte evapotranspirasjonsunderskudd på", - "bucket-was": "Bucket var", - "new-bucket-values-is": "Ny bucket verdien er", - "old-bucket-variable": "gammel_bucket", - "delta": "delta", - "bucket-less-than-zero-irrigation-necessary": "Siden bucket < 0, Vanning er nødvendig.", - "steps-taken-to-calculate-duration": "For å beregne nøyaktig varighet, ble følgende trinn utført", - "precipitation-rate-defined-as": "Nedbørshastigheten er definert som", - "duration-is-calculated-as": "Varigheten beregnes som", - "bucket": "bucket", - "precipitation-rate-variable": "nedbørshastighet", - "multiplier-is-applied": "Nå blir multiplikatoren brukt. Multiplikatoren er", - "duration-after-multiplier-is": "derfor er varigheten", - "maximum-duration-is-applied": "Deretter blir den maksimale varigheten brukt. Den maksimale varigheten er", - "duration-after-maximum-duration-is": "derfor er varigheten", - "lead-time-is-applied": "Til slutt blir ledetiden brukt. Ledetiden er", - "duration-after-lead-time-is": "derfor er den endelige varigheten", - "bucket-larger-than-or-equal-to-zero-no-irrigation-necessary": "Siden bucket >= 0, Ingen vanning er nødvendig, og varigheten er satt til", - "maximum-bucket-is": "maksimum bucket stærrelse er" - } - } - }, - "calcmodules": { - "pyeto": { - "description": "Beregn varigheten basert på FAO56-beregningen fra PyETO-biblioteket" - }, - "static": { - "description": "'Dummy'-modul med en statisk konfigurerbar endring (delta)" - }, - "passthrough": { - "description": "En 'Passthrough'-modul som returnerer verdien av en Evapotranspiration-sensor som delta" - } } } diff --git a/custom_components/smart_irrigation/translations/sk.json b/custom_components/smart_irrigation/translations/sk.json index 646862e4..72f40b5c 100644 --- a/custom_components/smart_irrigation/translations/sk.json +++ b/custom_components/smart_irrigation/translations/sk.json @@ -47,53 +47,5 @@ } } } - }, - "common": { - "attributes": { - "size": "size", - "throughput": "priepustnosť", - "state": "stav", - "bucket": "nádoba" - } - }, - "defaults": { - "default-zone": "Predvolená zóna", - "default-mapping": "Predvolená skupina snímačov" - }, - "module": { - "calculation": { - "explanation": { - "module-returned-evapotranspiration-deficiency": "Poznámka: toto vysvetlenie používa '.' ako oddeľovač desatinných miest zobrazuje zaokrúhlené a metrické hodnoty. Modul vrátil nedostatok evapotranspirácie", - "bucket-was": "Vedro bolo", - "new-bucket-values-is": "Hodnota nového vedra je", - "old-bucket-variable": "staré_vedro", - "delta": "delta", - "bucket-less-than-zero-irrigation-necessary": "Keďže vedro < 0, je potrebné zavlažovanie", - "steps-taken-to-calculate-duration": "Na výpočet presného trvania sa vykonali nasledujúce kroky", - "precipitation-rate-defined-as": "Miera zrážok je definovaná ako", - "duration-is-calculated-as": "Trvanie sa vypočíta ako", - "bucket": "vedro", - "precipitation-rate-variable": "úhrn zrážok", - "multiplier-is-applied": "Teraz sa použije multiplikátor. Násobiteľ je", - "duration-after-multiplier-is": "teda trvanie je", - "maximum-duration-is-applied": "Potom sa použije maximálne trvanie. Maximálne trvanie je", - "duration-after-maximum-duration-is": "teda trvanie je", - "lead-time-is-applied": "Nakoniec sa použije dodacia lehota. Dodacia lehota je", - "duration-after-lead-time-is": "teda konečné trvanie je", - "bucket-larger-than-or-equal-to-zero-no-irrigation-necessary": "Keďže vedro >= 0, nie je potrebné žiadne zavlažovanie a trvanie je nastavené na", - "maximum-bucket-is": "maximálna veľkosť vedra je" - } - } - }, - "calcmodules": { - "pyeto": { - "description": "Vypočítajte trvanie na základe výpočtu FAO56 z knižnice PyETO" - }, - "static": { - "description": "'Atrapa' modul so statickou konfigurovateľnou deltou" - }, - "passthrough": { - "description": "Priechodný modul, ktorý vracia hodnotu evapotranspiračného senzora ako delta" - } } }