From bbfdd80d85674b9d696b168f9cfdaef816ad45a1 Mon Sep 17 00:00:00 2001 From: Michael Geers Date: Mon, 8 Jun 2026 11:56:33 +0200 Subject: [PATCH] Battery Hold Charge: ui state; api docs --- api/batterymode.go | 2 +- assets/js/components/Energyflow/Energyflow.vue | 12 ++++++++++-- assets/js/types/evcc.ts | 1 + i18n/bg.json | 2 +- i18n/cs.json | 2 +- i18n/da.json | 2 +- i18n/de.json | 3 ++- i18n/el.json | 2 +- i18n/en.json | 3 ++- i18n/es.json | 2 +- i18n/fi.json | 2 +- i18n/fr.json | 2 +- i18n/hr.json | 2 +- i18n/hu.json | 2 +- i18n/it.json | 2 +- i18n/ja.json | 2 +- i18n/lb.json | 2 +- i18n/lt.json | 2 +- i18n/nl.json | 2 +- i18n/no.json | 2 +- i18n/pl.json | 2 +- i18n/pt.json | 2 +- i18n/ro.json | 2 +- i18n/ru.json | 2 +- i18n/sl.json | 2 +- i18n/sv.json | 2 +- i18n/ta.json | 2 +- i18n/tr.json | 2 +- i18n/uk.json | 2 +- i18n/zh-Hans.json | 2 +- server/mcp/openapi.json | 7 ++++--- server/openapi.yaml | 5 +++-- tests/battery-settings.spec.ts | 2 +- 33 files changed, 49 insertions(+), 36 deletions(-) diff --git a/api/batterymode.go b/api/batterymode.go index e2163ad652e..dde485bdd01 100644 --- a/api/batterymode.go +++ b/api/batterymode.go @@ -1,6 +1,6 @@ package api -// BatteryMode is the home battery operation mode. Valid values are normal, locked and charge +// BatteryMode is the home battery operation mode. Valid values are normal, hold, charge and holdcharge type BatteryMode int //go:generate go tool enumer -type BatteryMode -trimprefix Battery -transform=lower diff --git a/assets/js/components/Energyflow/Energyflow.vue b/assets/js/components/Energyflow/Energyflow.vue index 5dd1265dabe..5cf51857b65 100644 --- a/assets/js/components/Energyflow/Energyflow.vue +++ b/assets/js/components/Energyflow/Energyflow.vue @@ -256,6 +256,7 @@ :power="batteryCharge" :powerUnit="powerUnit" :iconProps="{ + hold: batteryChargeHold, soc: batterySoc, gridCharge: batteryGridChargeActive, }" @@ -445,14 +446,21 @@ export default defineComponent({ return this.chargePower(this.batteryPower); }, batteryChargeLabel() { - return this.$t("main.energyflow.batteryCharge"); + return this.$t( + `main.energyflow.battery${this.batteryChargeHold ? "ChargeHold" : "Charge"}` + ); }, batteryDischargeLabel() { - return this.$t(`main.energyflow.battery${this.batteryHold ? "Hold" : "Discharge"}`); + return this.$t( + `main.energyflow.battery${this.batteryHold ? "DischargeHold" : "Discharge"}` + ); }, batteryHold() { return this.batteryMode === "hold"; }, + batteryChargeHold() { + return this.batteryMode === "holdcharge"; + }, consumption() { return this.homePower + this.batteryCharge + this.loadpointsPower; }, diff --git a/assets/js/types/evcc.ts b/assets/js/types/evcc.ts index 234202b3101..9b5de09eab9 100644 --- a/assets/js/types/evcc.ts +++ b/assets/js/types/evcc.ts @@ -435,6 +435,7 @@ export enum BATTERY_MODE { NORMAL = "normal", HOLD = "hold", CHARGE = "charge", + HOLDCHARGE = "holdcharge", } export enum PHASES { diff --git a/i18n/bg.json b/i18n/bg.json index a3e03f8e89f..e558085c448 100644 --- a/i18n/bg.json +++ b/i18n/bg.json @@ -890,9 +890,9 @@ "battery": "Батерия", "batteryCharge": "Зареждане на батерията", "batteryDischarge": "Разреждане на батерията", + "batteryDischargeHold": "Батерия (заключена)", "batteryGridChargeActive": "зареждането от мрежата е актижно", "batteryGridChargeLimit": "зареждане от мрежата, когато", - "batteryHold": "Батерия (заключена)", "batteryTooltip": "{energy} от {total} ({soc})", "forecastTooltip": "прогноза: оставаща фотоволтаична продукция за днес", "gridImport": "Използвана енергия от мрежата", diff --git a/i18n/cs.json b/i18n/cs.json index 99c000855ea..971fac8fbc3 100644 --- a/i18n/cs.json +++ b/i18n/cs.json @@ -1164,13 +1164,13 @@ "battery": "Baterie domu", "batteryCharge": "Nabíjení baterie", "batteryDischarge": "Vybíjení baterie", + "batteryDischargeHold": "Baterie (udržování stavu nabití)", "batteryForecastEmpty": "Prázdné", "batteryForecastFull": "Plný", "batteryForecastNextHigh": "Špička", "batteryForecastNextLow": "Minimum", "batteryGridChargeActive": "nabíjení domácí baterie ze sítě je aktivní", "batteryGridChargeLimit": "nabíjení ze sítě, když", - "batteryHold": "Baterie (udržování stavu nabití)", "batteryTooltip": "{energy} z {total} ({soc})", "forecast": "Předpověď", "forecastTooltip": "předpověď: zbývající solární výroba dnes", diff --git a/i18n/da.json b/i18n/da.json index 0fbb579a78a..6815595174b 100644 --- a/i18n/da.json +++ b/i18n/da.json @@ -1167,13 +1167,13 @@ "battery": "Batteri", "batteryCharge": "Batteriet oplades", "batteryDischarge": "Batteriet aflades", + "batteryDischargeHold": "Batteri (låst)", "batteryForecastEmpty": "Tømt", "batteryForecastFull": "Fyldt", "batteryForecastNextHigh": "Højdepunkt", "batteryForecastNextLow": "Lavpunkt", "batteryGridChargeActive": "Opladning fra elnettet: aktiv", "batteryGridChargeLimit": "Opladning fra elnettet: når", - "batteryHold": "Batteri (låst)", "batteryTooltip": "{energy} af {total} ({soc})", "forecast": "Prognose", "forecastTooltip": "prognose: resterende solenergi produktion i dag", diff --git a/i18n/de.json b/i18n/de.json index bb48a4b9394..939a0bee4f3 100644 --- a/i18n/de.json +++ b/i18n/de.json @@ -1200,14 +1200,15 @@ "energyflow": { "battery": "Batterie", "batteryCharge": "Batterie laden", + "batteryChargeHold": "Batterie (Ladesperre)", "batteryDischarge": "Batterie entladen", + "batteryDischargeHold": "Batterie (Entladesperre)", "batteryForecastEmpty": "Leer", "batteryForecastFull": "Voll", "batteryForecastNextHigh": "Hoch", "batteryForecastNextLow": "Tief", "batteryGridChargeActive": "Netzladen: aktiv", "batteryGridChargeLimit": "Netzladen: wenn", - "batteryHold": "Batterie (gesperrt)", "batteryTooltip": "{energy} von {total} ({soc})", "forecast": "Vorhersage", "forecastTooltip": "Vorhersage: verbleibende PV-Produktion heute", diff --git a/i18n/el.json b/i18n/el.json index c1df9c54659..05395359c62 100644 --- a/i18n/el.json +++ b/i18n/el.json @@ -895,9 +895,9 @@ "battery": "Μπαταρία", "batteryCharge": "Φόρτιση μπαταρίας", "batteryDischarge": "Αποφόρτιση μπαταρίας", + "batteryDischargeHold": "Μπαταρία (κλειδωμένο)", "batteryGridChargeActive": "ενεργή φόρτιση από το δίκτυο", "batteryGridChargeLimit": "φόρτιση από το δίκτυο όταν", - "batteryHold": "Μπαταρία (κλειδωμένο)", "batteryTooltip": "{energy} από {total} ({soc})", "forecastTooltip": "πρόβλεψη: εναπομένουσα ηλιακή παραγωγή σήμερα", "gridImport": "Χρήση δικτύου", diff --git a/i18n/en.json b/i18n/en.json index d0e08233627..fb6f4b5ef10 100644 --- a/i18n/en.json +++ b/i18n/en.json @@ -1199,14 +1199,15 @@ "energyflow": { "battery": "Battery", "batteryCharge": "Battery charging", + "batteryChargeHold": "Battery (charge locked)", "batteryDischarge": "Battery discharging", + "batteryDischargeHold": "Battery (discharge locked)", "batteryForecastEmpty": "Empty", "batteryForecastFull": "Full", "batteryForecastNextHigh": "High", "batteryForecastNextLow": "Low", "batteryGridChargeActive": "Grid charging: active", "batteryGridChargeLimit": "Grid charging: when", - "batteryHold": "Battery (locked)", "batteryTooltip": "{energy} of {total} ({soc})", "forecast": "Forecast", "forecastTooltip": "forecast: remaining solar production today", diff --git a/i18n/es.json b/i18n/es.json index cd01765cd08..1ea61e8f741 100644 --- a/i18n/es.json +++ b/i18n/es.json @@ -907,9 +907,9 @@ "battery": "Batería", "batteryCharge": "Cargar la batería", "batteryDischarge": "Descargar la batería", + "batteryDischargeHold": "Batería (bloqueada)", "batteryGridChargeActive": "carga de red activa", "batteryGridChargeLimit": "carga de la red cuando", - "batteryHold": "Batería (bloqueada)", "batteryTooltip": "{energy} de {total} ({soc})", "forecastTooltip": "Previsión: producción solar restante para hoy", "gridImport": "Consumo de red", diff --git a/i18n/fi.json b/i18n/fi.json index a3f5f4c1816..9d1e2c63120 100644 --- a/i18n/fi.json +++ b/i18n/fi.json @@ -1166,13 +1166,13 @@ "battery": "Akku", "batteryCharge": "Akunlataus", "batteryDischarge": "Akku purkautuu", + "batteryDischargeHold": "Akku (lukittu)", "batteryForecastEmpty": "Varaus loppuu", "batteryForecastFull": "Varaus täynnä", "batteryForecastNextHigh": "Korkea", "batteryForecastNextLow": "Matala", "batteryGridChargeActive": "Ladataan verkosta", "batteryGridChargeLimit": "Milloin ladataan verkosta", - "batteryHold": "Akku (lukittu)", "batteryTooltip": "{energy} / {total} ({soc})", "forecast": "Ennuste", "forecastTooltip": "ennuste: jäljellä oleva aurinkotuotanto tänään", diff --git a/i18n/fr.json b/i18n/fr.json index 99b92bb6ce8..3193c39fd6a 100644 --- a/i18n/fr.json +++ b/i18n/fr.json @@ -1204,13 +1204,13 @@ "battery": "Batterie", "batteryCharge": "Batterie en charge", "batteryDischarge": "Décharge de la batterie", + "batteryDischargeHold": "Batterie (verrouillée)", "batteryForecastEmpty": "Vide", "batteryForecastFull": "Plein", "batteryForecastNextHigh": "Pic", "batteryForecastNextLow": "Creux", "batteryGridChargeActive": "Charge réseau : active", "batteryGridChargeLimit": "Charge réseau : quand", - "batteryHold": "Batterie (verrouillée)", "batteryTooltip": "{energy} sur {total} ({soc})", "forecast": "Prévisions", "forecastTooltip": "prévision : production solaire restante aujourd’hui", diff --git a/i18n/hr.json b/i18n/hr.json index fff6946b100..86b31fa24ed 100644 --- a/i18n/hr.json +++ b/i18n/hr.json @@ -896,9 +896,9 @@ "battery": "Baterija", "batteryCharge": "Punjenje baterije", "batteryDischarge": "Pražnjenje baterije", + "batteryDischargeHold": "Baterija (zaključano)", "batteryGridChargeActive": "punjenje putem mreže je aktivno", "batteryGridChargeLimit": "punjene putem mreže kada", - "batteryHold": "Baterija (zaključano)", "batteryTooltip": "{energy} od {total} ({soc})", "forecastTooltip": "predviđanje: današnja preostala solarna proizvodnja", "gridImport": "Korištenje mreže", diff --git a/i18n/hu.json b/i18n/hu.json index 5fd31e2f918..09c4b263034 100644 --- a/i18n/hu.json +++ b/i18n/hu.json @@ -906,9 +906,9 @@ "battery": "Battery", "batteryCharge": "Energiatároló töltés", "batteryDischarge": "Energiatároló kisütés", + "batteryDischargeHold": "Energiatároló (lezárva)", "batteryGridChargeActive": "hálózatból töltés aktív", "batteryGridChargeLimit": "hálózatból töltés ha", - "batteryHold": "Energiatároló (lezárva)", "batteryTooltip": "{energy} / {total} ({soc})", "forecastTooltip": "előrejelzés: ma fennmaradó napenergia-termelés", "gridImport": "Hálózatból import", diff --git a/i18n/it.json b/i18n/it.json index 4b46d7796fa..b1dd351e9f2 100644 --- a/i18n/it.json +++ b/i18n/it.json @@ -1138,11 +1138,11 @@ "battery": "Batteria", "batteryCharge": "Carica della batteria", "batteryDischarge": "Scarico della batteria", + "batteryDischargeHold": "Batteria (locked)", "batteryForecastEmpty": "vuoto {time}", "batteryForecastFull": "full {time}", "batteryGridChargeActive": "Ricarica dalla rete: attiva", "batteryGridChargeLimit": "Ricarica dalla rete: quando", - "batteryHold": "Batteria (locked)", "batteryTooltip": "{energy} di {total} ({soc})", "forecast": "Previsioni", "forecastTooltip": "previsioni: produzione solare rimanente per oggi", diff --git a/i18n/ja.json b/i18n/ja.json index 47f2722e53f..5f7ecac401f 100644 --- a/i18n/ja.json +++ b/i18n/ja.json @@ -1166,13 +1166,13 @@ "battery": "バッテリー", "batteryCharge": "蓄電池充電中", "batteryDischarge": "蓄電池放電中", + "batteryDischargeHold": "蓄電池 (制限中)", "batteryForecastEmpty": "{time} 以降 残量ゼロ", "batteryForecastFull": "{time} 以降 満充電", "batteryForecastNextHigh": "次の最高値", "batteryForecastNextLow": "次の最低値", "batteryGridChargeActive": "系統充電: アクティブ", "batteryGridChargeLimit": "系統充電: 条件待ち", - "batteryHold": "蓄電池 (制限中)", "batteryTooltip": "{energy} / {total} ({soc})", "forecast": "予測", "forecastTooltip": "予測: 本日の残り太陽光発電量", diff --git a/i18n/lb.json b/i18n/lb.json index 8b919bfc2b2..57c34a17e8c 100644 --- a/i18n/lb.json +++ b/i18n/lb.json @@ -1164,13 +1164,13 @@ "battery": "Batterie", "batteryCharge": "Batterie oplueden", "batteryDischarge": "Batterie entlueden", + "batteryDischargeHold": "Batterie (gespäert)", "batteryForecastEmpty": "Eidel", "batteryForecastFull": "Voll", "batteryForecastNextHigh": "Héich", "batteryForecastNextLow": "Déif", "batteryGridChargeActive": "Oluede vum Netz: aktiv", "batteryGridChargeLimit": "Opluede vum Netz: wann", - "batteryHold": "Batterie (gespäert)", "batteryTooltip": "{energy} vun {total} ({soc})", "forecast": "Viraussoen", "forecastTooltip": "Prognose: Rescht Solarproduktioun fir haut", diff --git a/i18n/lt.json b/i18n/lt.json index 17e81a9b315..f5ebf1b6409 100644 --- a/i18n/lt.json +++ b/i18n/lt.json @@ -1167,13 +1167,13 @@ "battery": "Kaupiklis", "batteryCharge": "Kaupiklis įkraunamas", "batteryDischarge": "Kaupiklis iškraunamas", + "batteryDischargeHold": "Kaupiklis (užblokuotas)", "batteryForecastEmpty": "Tuščias", "batteryForecastFull": "Pilnas", "batteryForecastNextHigh": "Didelė", "batteryForecastNextLow": "Žema", "batteryGridChargeActive": "Įkrovimas iš tinklo: aktyvus", "batteryGridChargeLimit": "Įkrauti iš tinklo: kai", - "batteryHold": "Kaupiklis (užblokuotas)", "batteryTooltip": "{energy} iš {total} ({soc})", "forecast": "Prognozė", "forecastTooltip": "prognozė: likusi saulės energijos gamyba šiandien", diff --git a/i18n/nl.json b/i18n/nl.json index 62a58a1c74a..e926163cb76 100644 --- a/i18n/nl.json +++ b/i18n/nl.json @@ -1163,11 +1163,11 @@ "battery": "Batterij", "batteryCharge": "Batterij opladen", "batteryDischarge": "Batterij ontladen", + "batteryDischargeHold": "Batterij (geblokkeerd)", "batteryForecastEmpty": "Leeg", "batteryForecastFull": "Vol", "batteryGridChargeActive": "Net laden: actief", "batteryGridChargeLimit": "Net laden: wanneer", - "batteryHold": "Batterij (geblokkeerd)", "batteryTooltip": "{energy} van {total} ({soc})", "forecast": "Voorspelling", "forecastTooltip": "voorspelling: resterende zonne-energieproductie voor vandaag", diff --git a/i18n/no.json b/i18n/no.json index 0091883a0ee..0f6cff24661 100644 --- a/i18n/no.json +++ b/i18n/no.json @@ -923,9 +923,9 @@ "battery": "Batteri", "batteryCharge": "Batterilading", "batteryDischarge": "Batteri utlading", + "batteryDischargeHold": "Batteri (låst)", "batteryGridChargeActive": "nettlading aktiv", "batteryGridChargeLimit": "nettlading når", - "batteryHold": "Batteri (låst)", "batteryTooltip": "{energy} av {total} ({soc})", "forecastTooltip": "prognose: gjenværende solenergiproduksjon i dag", "gridImport": "Lysnettimport", diff --git a/i18n/pl.json b/i18n/pl.json index 3a8b8694579..5cbe6b2b869 100644 --- a/i18n/pl.json +++ b/i18n/pl.json @@ -1071,11 +1071,11 @@ "battery": "Akumulator", "batteryCharge": "Ładowanie magazynu energii", "batteryDischarge": "Rozładowywanie magazynu energii", + "batteryDischargeHold": "Magazyn energii (chroniony)", "batteryForecastEmpty": "Pusty", "batteryForecastFull": "Pełny", "batteryGridChargeActive": "Ładowanie z sieci: aktywne", "batteryGridChargeLimit": "Ładowanie z sieci: gdy", - "batteryHold": "Magazyn energii (chroniony)", "batteryTooltip": "{energy} z {total} ({soc})", "forecast": "Prognoza", "forecastTooltip": "prognoza: pozostała na dziś produkcja energii słonecznej", diff --git a/i18n/pt.json b/i18n/pt.json index a9a120c3550..aa6f06cd792 100644 --- a/i18n/pt.json +++ b/i18n/pt.json @@ -1150,11 +1150,11 @@ "battery": "Bateria", "batteryCharge": "Carga de Bateria", "batteryDischarge": "Descarga de Bateria", + "batteryDischargeHold": "Bateria (suspensa)", "batteryForecastEmpty": "vazio {time}", "batteryForecastFull": "cheio {time}", "batteryGridChargeActive": "Carga da rede: ativa", "batteryGridChargeLimit": "Carga da rede: quando", - "batteryHold": "Bateria (suspensa)", "batteryTooltip": "{energy} de {total} ({soc})", "forecast": "Previsões", "forecastTooltip": "previsão: produção solar restante de hoje", diff --git a/i18n/ro.json b/i18n/ro.json index 51599b00496..e1b6843ba51 100644 --- a/i18n/ro.json +++ b/i18n/ro.json @@ -1053,11 +1053,11 @@ "battery": "Baterie", "batteryCharge": "Incarca bateria", "batteryDischarge": "Descărcare baterie", + "batteryDischargeHold": "Baterie (inchisa)", "batteryForecastEmpty": "gol {time}", "batteryForecastFull": "plin {time}", "batteryGridChargeActive": "Încărcare din rețea: activă", "batteryGridChargeLimit": "Încărcare din rețea: când", - "batteryHold": "Baterie (inchisa)", "batteryTooltip": "{energy} din {total} ({soc})", "forecast": "Prognoză", "forecastTooltip": "prognoză: producția solară rămasă astăzi", diff --git a/i18n/ru.json b/i18n/ru.json index 7a04c74f439..35c39503366 100644 --- a/i18n/ru.json +++ b/i18n/ru.json @@ -886,9 +886,9 @@ "battery": "Батарея", "batteryCharge": "Батарея заряжается", "batteryDischarge": "Батарея разряжается", + "batteryDischargeHold": "Батарея (заблокирована)", "batteryGridChargeActive": "сетевая зарядка активна", "batteryGridChargeLimit": "зарядка сети при", - "batteryHold": "Батарея (заблокирована)", "batteryTooltip": "{energy} из {total} ({soc})", "forecastTooltip": "прогноз: оставшееся производство солнечной энергии на сегодня", "gridImport": "Потребление из сети", diff --git a/i18n/sl.json b/i18n/sl.json index 6ee756ca99d..496511e280e 100644 --- a/i18n/sl.json +++ b/i18n/sl.json @@ -917,9 +917,9 @@ "battery": "Baterija", "batteryCharge": "Polnjenje baterije", "batteryDischarge": "Praznjenje baterije", + "batteryDischargeHold": "Baterija (zaklenjena)", "batteryGridChargeActive": "polnjenje iz omrežja aktivno", "batteryGridChargeLimit": "polnjenje iz omrežja ko", - "batteryHold": "Baterija (zaklenjena)", "batteryTooltip": "{energy} od {total} ({soc})", "forecastTooltip": "napoved: preostala sončna proizvodnja danes", "gridImport": "Uvoz iz omrežja", diff --git a/i18n/sv.json b/i18n/sv.json index bc0f6c6c6b0..78d9542716f 100644 --- a/i18n/sv.json +++ b/i18n/sv.json @@ -1168,13 +1168,13 @@ "battery": "Batteri", "batteryCharge": "Batteri laddas", "batteryDischarge": "Batteri laddas ur", + "batteryDischargeHold": "Batteri (låst)", "batteryForecastEmpty": "Tom", "batteryForecastFull": "Full", "batteryForecastNextHigh": "Högsta", "batteryForecastNextLow": "Lägsta", "batteryGridChargeActive": "Nätladdning: aktiv", "batteryGridChargeLimit": "Nätladdning: när", - "batteryHold": "Batteri (låst)", "batteryTooltip": "{energy} av {total} ({soc})", "forecast": "Prognos", "forecastTooltip": "Prognos: återstående solproduktion idag", diff --git a/i18n/ta.json b/i18n/ta.json index 9f887527784..02e7ae84d74 100644 --- a/i18n/ta.json +++ b/i18n/ta.json @@ -971,11 +971,11 @@ "battery": "மின்கலம்", "batteryCharge": "மின்கலம் மின்சேர்வி", "batteryDischarge": "மின்கலம் மின்நீக்கி", + "batteryDischargeHold": "மின்கலம் (பூட்டபட்டது)", "batteryForecastEmpty": "காலியாக {time}", "batteryForecastFull": "முழு {time}", "batteryGridChargeActive": "கிரிட் சார்சிங்: செயலில் உள்ளது", "batteryGridChargeLimit": "கிரிட் சார்சிங்: எப்போது", - "batteryHold": "மின்கலம் (பூட்டபட்டது)", "batteryTooltip": "{energy} ({total}) இன் {soc}", "forecast": "முன்னறிவிப்பு", "forecastTooltip": "முன்னறிவிப்பு: இன்று சூரிய விளைவாக்கம்", diff --git a/i18n/tr.json b/i18n/tr.json index 71ad1eeb06b..70fd682bc06 100644 --- a/i18n/tr.json +++ b/i18n/tr.json @@ -1164,13 +1164,13 @@ "battery": "Batarya", "batteryCharge": "Batarya doldurma", "batteryDischarge": "Batarya boşaltma", + "batteryDischargeHold": "Batarya (kilitli)", "batteryForecastEmpty": "Boş", "batteryForecastFull": "Dolu", "batteryForecastNextHigh": "Yüksek", "batteryForecastNextLow": "Düşük", "batteryGridChargeActive": "Şebekeden doldurma: etkin", "batteryGridChargeLimit": "Şebekeden doldurma: şayet", - "batteryHold": "Batarya (kilitli)", "batteryTooltip": "{total} ({soc})'ın {energy}'ı", "forecast": "Tahmin", "forecastTooltip": "“öngörü: bugün kalan güneşden üreti̇m”", diff --git a/i18n/uk.json b/i18n/uk.json index da915178009..5b0af9efa62 100644 --- a/i18n/uk.json +++ b/i18n/uk.json @@ -899,9 +899,9 @@ "battery": "Батарея", "batteryCharge": "Зарядження батареї", "batteryDischarge": "Розрядження батареї", + "batteryDischargeHold": "Акумулятор (locked)", "batteryGridChargeActive": "активна зарядка мережі", "batteryGridChargeLimit": "зарядка мережі коли", - "batteryHold": "Акумулятор (locked)", "batteryTooltip": "{energy} із {total} ({soc})", "forecastTooltip": "Прогноз: залишкове виробництво сонячної енергії сьогодні", "gridImport": "Використання мережі", diff --git a/i18n/zh-Hans.json b/i18n/zh-Hans.json index 5b687d0b480..09cd39cd6e6 100644 --- a/i18n/zh-Hans.json +++ b/i18n/zh-Hans.json @@ -643,9 +643,9 @@ "battery": "电池", "batteryCharge": "电池充电中", "batteryDischarge": "电池放电中", + "batteryDischargeHold": "电池(已锁定)", "batteryGridChargeActive": "电网充电已激活", "batteryGridChargeLimit": "电网充电条件", - "batteryHold": "电池(已锁定)", "batteryTooltip": "{energy} / {total} ({soc})", "forecastTooltip": "预测:今日剩余太阳能发电量", "gridImport": "电网用电", diff --git a/server/mcp/openapi.json b/server/mcp/openapi.json index 98a477bc570..5aa3652ab4e 100644 --- a/server/mcp/openapi.json +++ b/server/mcp/openapi.json @@ -192,8 +192,8 @@ "schema": { "properties": { "result": { - "description": "Battery mode. 0: unknown, 1: normal, 2: hold, 3: charge", - "maximum": 3, + "description": "Battery mode. 0: unknown, 1: normal, 2: hold, 3: charge, 4: holdcharge", + "maximum": 4, "minimum": 0, "type": "integer" } @@ -366,7 +366,8 @@ "unknown", "normal", "hold", - "charge" + "charge", + "holdcharge" ], "example": "normal", "type": "string" diff --git a/server/openapi.yaml b/server/openapi.yaml index 4e51f4b1bde..e6dadb881f5 100644 --- a/server/openapi.yaml +++ b/server/openapi.yaml @@ -1374,6 +1374,7 @@ components: - normal - hold - charge + - holdcharge ChangePassword: type: object properties: @@ -1905,9 +1906,9 @@ components: properties: result: type: integer - description: "Battery mode. 0: unknown, 1: normal, 2: hold, 3: charge" + description: "Battery mode. 0: unknown, 1: normal, 2: hold, 3: charge, 4: holdcharge" minimum: 0 - maximum: 3 + maximum: 4 securitySchemes: cookieAuth: type: apiKey diff --git a/tests/battery-settings.spec.ts b/tests/battery-settings.spec.ts index d7e96449a1e..434332dc9b2 100644 --- a/tests/battery-settings.spec.ts +++ b/tests/battery-settings.spec.ts @@ -94,7 +94,7 @@ test.describe("battery settings", async () => { await page.getByRole("link", { name: "Charge" }).click(); await page.getByTestId("energyflow").click(); - await expect(discharge).toContainText("Battery (locked)"); + await expect(discharge).toContainText("Battery (discharge locked)"); await expect(charge).toContainText("Battery charging"); }); });