iobroker.go-e-charger 1.0.2 → 1.0.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -26,16 +26,45 @@
26
26
 
27
27
  [![NPM](https://nodei.co/npm/iobroker.go-e-charger.png?downloads=true)](https://nodei.co/npm/iobroker.go-e-charger/)
28
28
 
29
- ## Adapter for reading data for multiple go-eCharger for iOBroker
29
+ ## ioBroker adapter for go-e Charger EV wallboxes
30
30
 
31
- Adapter for reading the data of multiple go-eCharger. Adapter creates some states and updates them sequentially. Adapter is connectable to PV-system to make use of surplus solar power for charging your cars. Working with firmware V033, V040.0, V041.0, V054.7, V054.11, V055.5, V055.7, V055.8, V56.1, V56.2, V56.8, V56.9, V56.11, V57.0, V57.1, V59.4, V60.0, V60.1, V60.2.
31
+ This adapter integrates one or more go-e Charger wallboxes into your ioBroker home automation. It cyclically polls each wallbox via its local HTTP API, provides all relevant data as ioBroker states, and lets you control charging directly from your smart home.
32
32
 
33
- For use with hardware generation 3 & 4 you have to enable "HTTP API v1" in your go-e APP.
34
- For use with phase switching you need hardware generation 3 or 4 and additionally you have to enable "HTTP API v2" in your go-e APP.
33
+ For more information about the go-e Charger hardware, visit the manufacturer's website: [go-e GmbH](https://go-e.com).
34
+
35
+ ### Features
36
+
37
+ - supports multiple go-e Chargers within a single adapter instance
38
+ - monitoring of car state, charging power, charging current, grid phases, and energy statistics
39
+ - **ChargeNOW** – start charging immediately at a configurable current
40
+ - **ChargeManager** – automatic PV surplus charging: the charging current is continuously adjusted to the available solar power, taking house consumption and the state of charge of your home battery into account. Charging of your EV can be delayed until the home battery has reached a configurable minimum state of charge.
41
+
42
+ > **Note:** PV surplus charging is currently designed for controlling a **single** charger. When ChargeManager is enabled on multiple chargers at the same time, the charging currents are not coordinated between them and the solar surplus calculation will produce incorrect values. An extension with coordinated multi-charger load management will be available soon.
43
+
44
+ - switching between 1-phase and 3-phase charging (hardware generation 3 and newer)
45
+ - energy statistics per RFID card (card name, ID, and charged energy)
46
+ - read-only mode per wallbox – monitor a charger without sending any control commands (e.g. when access is managed via RFID tags)
47
+
48
+ Tested with firmware V033, V040.0, V041.0, V054.7, V054.11, V055.5, V055.7, V055.8, V56.1, V56.2, V56.8, V56.9, V56.11, V57.0, V57.1, V59.4, V60.0, V60.1, V60.2.
49
+
50
+ ### Requirements
51
+
52
+ - For hardware generation 3 and 4 you have to enable "HTTP API v1" in your go-e app.
53
+ - For phase switching you additionally have to enable "HTTP API v2" in your go-e app (hardware generation 3 and newer).
35
54
 
36
55
  ## Configuration
37
56
 
38
- To connect a go-e charger add a new line and enter its IP-address in the config.
57
+ Add one entry per go-e Charger to the wallbox list and enter its IP address. Optionally assign a name to each charger and enable read-only mode if the adapter should not send any control commands to it.
58
+
59
+ For PV surplus charging with ChargeManager, configure the object IDs of the following states from your PV system:
60
+
61
+ - currently available solar power [W]
62
+ - current home power consumption [W]
63
+ - current state of charge of your home battery [%]
64
+
65
+ If the power consumption of the wallbox is already included in your home power consumption value, enable the corresponding checkbox so the adapter can correctly calculate the available surplus.
66
+
67
+ The poll cycle time defines how often the adapter reads data from the chargers and adjusts the charging current (minimum 3 seconds, default 10 seconds).
39
68
 
40
69
  ## Sentry
41
70
 
@@ -43,8 +72,8 @@ This adapter employs Sentry libraries to automatically report exceptions and cod
43
72
 
44
73
  ## Donate
45
74
 
46
- <a href="https://www.paypal.com/donate/?hosted_button_id=76GBRV9BX5US8"><img src="https://raw.githubusercontent.com/Hombach/ioBroker.go-e-charger/master/docu/bluePayPal.svg" height="40"></a>
47
- If you enjoyed this project � or just feeling generous, consider buying me a beer. Cheers! :beers:
75
+ <a href="https://www.paypal.com/donate/?hosted_button_id=76GBRV9BX5US8"><img src="https://raw.githubusercontent.com/Hombach/ioBroker.go-e-charger/master/docu/bluePayPal.svg" height="40"></a>
76
+ If you enjoyed this project – or are just feeling generous – consider buying me a beer. Cheers! :beers:
48
77
 
49
78
  ## Changelog
50
79
 
@@ -52,6 +81,23 @@ If you enjoyed this project � or just feeling generous, consider buying me a b
52
81
  Placeholder for the next version (at the beginning of the line):
53
82
  ### **WORK IN PROGRESS**
54
83
  -->
84
+ ### 1.0.4 (2026-07-04)
85
+
86
+ - (hombach) harmonized i18n files
87
+ - (hombach) improved README and English texts
88
+ - (hombach) reworked translations in all languages
89
+ - (hombach) added 5s timeout to all HTTP requests to chargers
90
+ - (hombach) fixed adapter stop when no charger is reachable at startup; warn per unreachable charger
91
+ - (hombach) fixed German fallback text for RFID card channel names
92
+ - (hombach) added upper bound validation for cycle time
93
+ - (hombach) added link to manufacturer's website
94
+ - (hombach) code optimizations
95
+
96
+ ### 1.0.3 (2026-07-03)
97
+
98
+ - (hombach) added translations
99
+ - (hombach) fixed state roles
100
+
55
101
  ### 1.0.2 (2026-07-01)
56
102
 
57
103
  - (hombach) fix RFID data readout for gen 3+ chargers via API V2 (#802)
@@ -76,23 +122,6 @@ If you enjoyed this project � or just feeling generous, consider buying me a b
76
122
  - (hombach) updated typescript from 5.9.3 to 6.0.3
77
123
  - (hombach) added RFID info (name, id, consumption) (#802)
78
124
 
79
- ### 0.21.4 (2026-04-19)
80
-
81
- - (hombach) prepare multi-charger support
82
- - (hombach) update axios
83
- - (hombach) switch to ES2023 code
84
- - (hombach) fix vulnerabilities
85
- - (hombach) update dependencies
86
-
87
- ### 0.21.3 (2026-01-01)
88
-
89
- - (hombach) added support for firmware V60.0
90
- - (hombach) added support for firmware V60.1
91
- - (hombach) added support for firmware V60.2
92
- - (hombach) year 2026 changes
93
- - (hombach) update axios
94
- - (hombach) update iobroker/testing (#759)
95
-
96
125
  ### Old Changes see [CHANGELOG OLD](CHANGELOG_OLD.md)
97
126
 
98
127
  ## License
@@ -1,11 +1,12 @@
1
1
  {
2
- "LBL_chargerName": "Name der Wallbox",
3
- "LBL_cycleTime": "Zeit zwischen Datenabfragen vom Ladegerät [ms]",
4
- "LBL_ipAddress": "IP-Adresse von go-eCharger",
5
- "LBL_readOnlyMode": "Nur-Lese-Modus - Ladefreigabe wird nicht an das Ladegerät gesendet (um RFID-Tags zu verwenden)",
6
- "LBL_stateHomeBatSoc": "Objekt-ID für den aktuellen Ladezustand der Heimbatterie [%]",
7
- "LBL_stateHomePowerConsumption": "Objekt-ID für den aktuellen Stromverbrauch zu Hause [W]",
8
- "LBL_stateHomeSolarPower": "Objekt-ID für derzeit verfügbare Solarenergie [W]",
9
- "LBL_subtractSelfConsumption": "Ladeverbrauch ist im Hausstromverbrauch enthalten",
10
- "LBL_wallBoxList": "Wallbox-Liste"
2
+ "LBL_standardSettings": "Standardeinstellungen",
3
+ "LBL_cycleTime": "Zeit zwischen Datenabfragen von der Wallbox [ms]",
4
+ "LBL_stateHomeSolarPower": "Objekt-ID für die aktuell verfügbare Solarleistung [W]",
5
+ "LBL_stateHomeBatSoc": "Objekt-ID für den aktuellen Ladezustand der Hausbatterie [%]",
6
+ "LBL_stateHomePowerConsumption": "Objekt-ID für den aktuellen Hausstromverbrauch [W]",
7
+ "LBL_subtractSelfConsumption": "Verbrauch der Wallbox ist im Hausstromverbrauch enthalten",
8
+ "LBL_wallBoxList": "Wallbox-Liste",
9
+ "LBL_chargerName": "Name der Wallbox",
10
+ "LBL_ipAddress": "IP-Adresse des go-eChargers",
11
+ "LBL_readOnlyMode": "Nur-Lese-Modus - Ladefreigabe wird nicht an die Wallbox gesendet (zur Nutzung von RFID-Tags)"
11
12
  }
@@ -1,11 +1,12 @@
1
1
  {
2
- "LBL_readOnlyMode": "read only mode - release of charge is not send to charger (to use RFID tags)",
3
- "LBL_stateHomeBatSoc": "object-id for current home battery state of charge [%]",
4
- "LBL_stateHomePowerConsumption": "object-id for current home power consumption [W]",
5
- "LBL_stateHomeSolarPower": "object-id for currently available solar power [W]",
6
- "LBL_subtractSelfConsumption": "Charger consumption is included in home power consumption value",
7
- "LBL_wallBoxList": "Wallbox List",
8
- "LBL_ipAddress": "IP address of go-eCharger",
9
- "LBL_cycleTime": "Time between data polls from charger [ms]",
10
- "LBL_chargerName": "Charger name"
2
+ "LBL_standardSettings": "Standard settings",
3
+ "LBL_cycleTime": "Time between data polls from the charger [ms]",
4
+ "LBL_stateHomeSolarPower": "Object ID for the currently available solar power [W]",
5
+ "LBL_stateHomeBatSoc": "Object ID for the current state of charge of the home battery [%]",
6
+ "LBL_stateHomePowerConsumption": "Object ID for the current home power consumption [W]",
7
+ "LBL_subtractSelfConsumption": "Charger consumption is included in the home power consumption value",
8
+ "LBL_wallBoxList": "Wallbox list",
9
+ "LBL_chargerName": "Charger name",
10
+ "LBL_ipAddress": "IP address of the go-eCharger",
11
+ "LBL_readOnlyMode": "Read-only mode - charging release is not sent to the charger (for use with RFID tags)"
11
12
  }
@@ -1,11 +1,12 @@
1
1
  {
2
- "LBL_chargerName": "Nombre del cargador",
3
- "LBL_cycleTime": "Tiempo entre encuestas de datos del cargador [ms]",
4
- "LBL_ipAddress": "Dirección IP de go-eCharger",
5
- "LBL_readOnlyMode": "modo de solo lectura: la liberación de la carga no se envía al cargador (para usar etiquetas RFID)",
6
- "LBL_stateHomeBatSoc": "ID de objeto para el estado de carga actual de la batería doméstica [%]",
7
- "LBL_stateHomePowerConsumption": "ID de objeto para el consumo actual de energía en el hogar [W]",
8
- "LBL_stateHomeSolarPower": "ID de objeto para la energía solar disponible actualmente [W]",
9
- "LBL_subtractSelfConsumption": "El consumo del cargador está incluido en el valor del consumo de energía del hogar",
10
- "LBL_wallBoxList": "Lista de cajas de pared"
2
+ "LBL_standardSettings": "Configuración estándar",
3
+ "LBL_cycleTime": "Tiempo entre consultas de datos del cargador [ms]",
4
+ "LBL_stateHomeSolarPower": "ID de objeto para la potencia solar disponible actualmente [W]",
5
+ "LBL_stateHomeBatSoc": "ID de objeto para el estado de carga actual de la batería doméstica [%]",
6
+ "LBL_stateHomePowerConsumption": "ID de objeto para el consumo eléctrico actual del hogar [W]",
7
+ "LBL_subtractSelfConsumption": "El consumo del cargador está incluido en el valor del consumo eléctrico del hogar",
8
+ "LBL_wallBoxList": "Lista de wallboxes",
9
+ "LBL_chargerName": "Nombre del cargador",
10
+ "LBL_ipAddress": "Dirección IP del go-eCharger",
11
+ "LBL_readOnlyMode": "Modo de solo lectura - la autorización de carga no se envía al cargador (para usar etiquetas RFID)"
11
12
  }
@@ -1,11 +1,12 @@
1
1
  {
2
- "LBL_chargerName": "Nom du chargeur",
3
- "LBL_cycleTime": "Temps entre les interrogations de données du chargeur [ms]",
4
- "LBL_ipAddress": "Adresse IP de go-eCharger",
5
- "LBL_readOnlyMode": "mode lecture seule - la libération de la charge n'est pas envoyée au chargeur (pour utiliser des étiquettes RFID)",
6
- "LBL_stateHomeBatSoc": "object-id pour l'état de charge actuel de la batterie domestique [%]",
7
- "LBL_stateHomePowerConsumption": "object-id pour la consommation électrique actuelle du domicile [W]",
8
- "LBL_stateHomeSolarPower": "object-id pour l'énergie solaire actuellement disponible [W]",
9
- "LBL_subtractSelfConsumption": "La consommation du chargeur est incluse dans la valeur de la consommation électrique de la maison",
10
- "LBL_wallBoxList": "Liste des boîtes murales"
2
+ "LBL_standardSettings": "Paramètres standard",
3
+ "LBL_cycleTime": "Intervalle entre les interrogations de données de la borne [ms]",
4
+ "LBL_stateHomeSolarPower": "ID d'objet pour la puissance solaire actuellement disponible [W]",
5
+ "LBL_stateHomeBatSoc": "ID d'objet pour l'état de charge actuel de la batterie domestique [%]",
6
+ "LBL_stateHomePowerConsumption": "ID d'objet pour la consommation électrique actuelle du domicile [W]",
7
+ "LBL_subtractSelfConsumption": "La consommation de la borne est incluse dans la valeur de consommation électrique du domicile",
8
+ "LBL_wallBoxList": "Liste des wallbox",
9
+ "LBL_chargerName": "Nom de la borne",
10
+ "LBL_ipAddress": "Adresse IP du go-eCharger",
11
+ "LBL_readOnlyMode": "Mode lecture seule - l'autorisation de charge n'est pas envoyée à la borne (pour l'utilisation de badges RFID)"
11
12
  }
@@ -1,11 +1,12 @@
1
1
  {
2
- "LBL_chargerName": "Nome del caricabatterie",
3
- "LBL_cycleTime": "Tempo tra sondaggi di dati dal caricatore [ms]",
4
- "LBL_ipAddress": "Indirizzo IP di go-eCharger",
5
- "LBL_readOnlyMode": "modalità di sola lettura - il rilascio della carica non viene inviato al caricabatterie (per utilizzare tag RFID)",
6
- "LBL_stateHomeBatSoc": "object-id per l'attuale stato di carica della batteria domestica [%]",
7
- "LBL_stateHomePowerConsumption": "object-id per il consumo energetico domestico corrente [W]",
8
- "LBL_stateHomeSolarPower": "ID oggetto per l'energia solare attualmente disponibile [W]",
9
- "LBL_subtractSelfConsumption": "Il consumo del caricabatterie è incluso nel valore del consumo energetico domestico",
10
- "LBL_wallBoxList": "Elenco delle cassette a muro"
2
+ "LBL_standardSettings": "Impostazioni standard",
3
+ "LBL_cycleTime": "Intervallo tra le letture dei dati dalla wallbox [ms]",
4
+ "LBL_stateHomeSolarPower": "ID oggetto per la potenza solare attualmente disponibile [W]",
5
+ "LBL_stateHomeBatSoc": "ID oggetto per l'attuale stato di carica della batteria domestica [%]",
6
+ "LBL_stateHomePowerConsumption": "ID oggetto per il consumo elettrico domestico attuale [W]",
7
+ "LBL_subtractSelfConsumption": "Il consumo della wallbox è incluso nel valore del consumo elettrico domestico",
8
+ "LBL_wallBoxList": "Elenco delle wallbox",
9
+ "LBL_chargerName": "Nome della wallbox",
10
+ "LBL_ipAddress": "Indirizzo IP del go-eCharger",
11
+ "LBL_readOnlyMode": "Modalità di sola lettura - l'autorizzazione alla ricarica non viene inviata alla wallbox (per l'uso di tag RFID)"
11
12
  }
@@ -1,11 +1,12 @@
1
1
  {
2
- "LBL_chargerName": "Naam van oplader",
3
- "LBL_cycleTime": "Tijd tussen gegevenspolls van oplader [ms]",
4
- "LBL_ipAddress": "IP-adres van go-eCharger",
5
- "LBL_readOnlyMode": "alleen-lezen modus - het opladen wordt niet naar de oplader gestuurd (om RFID-tags te gebruiken)",
6
- "LBL_stateHomeBatSoc": "object-ID voor de huidige laadtoestand van de thuisbatterij [%]",
7
- "LBL_stateHomePowerConsumption": "object-id voor huidig energieverbruik thuis [W]",
8
- "LBL_stateHomeSolarPower": "object-id voor momenteel beschikbare zonne-energie [W]",
9
- "LBL_subtractSelfConsumption": "Het verbruik van de oplader is inbegrepen in de waarde van het stroomverbruik van het huis",
10
- "LBL_wallBoxList": "Wallbox-lijst"
2
+ "LBL_standardSettings": "Standaardinstellingen",
3
+ "LBL_cycleTime": "Tijd tussen gegevensopvragingen van de wallbox [ms]",
4
+ "LBL_stateHomeSolarPower": "Object-ID voor het momenteel beschikbare zonnevermogen [W]",
5
+ "LBL_stateHomeBatSoc": "Object-ID voor de huidige laadtoestand van de thuisbatterij [%]",
6
+ "LBL_stateHomePowerConsumption": "Object-ID voor het huidige stroomverbruik van de woning [W]",
7
+ "LBL_subtractSelfConsumption": "Het verbruik van de wallbox is inbegrepen in het stroomverbruik van de woning",
8
+ "LBL_wallBoxList": "Wallbox-lijst",
9
+ "LBL_chargerName": "Naam van de wallbox",
10
+ "LBL_ipAddress": "IP-adres van de go-eCharger",
11
+ "LBL_readOnlyMode": "Alleen-lezen modus - laadvrijgave wordt niet naar de wallbox gestuurd (voor gebruik met RFID-tags)"
11
12
  }
@@ -1,11 +1,12 @@
1
1
  {
2
- "LBL_chargerName": "Nazwa ładowarki",
3
- "LBL_cycleTime": "Czas między sondażami danych z ładowarki [ms]",
4
- "LBL_ipAddress": "Adres IP go-eCharger",
5
- "LBL_readOnlyMode": "tryb tylko do odczytu - zwolnienie ładunku nie jest wysyłane do ładowarki (w celu użycia tagów RFID)",
6
- "LBL_stateHomeBatSoc": "id obiektu dla aktualnego stanu naładowania akumulatora w domu [%]",
7
- "LBL_stateHomePowerConsumption": "id obiektu dla bieżącego zużycia energii w domu [W]",
8
- "LBL_stateHomeSolarPower": "id obiektu dla aktualnie dostępnej energii słonecznej [W]",
9
- "LBL_subtractSelfConsumption": "Zużycie ładowarki jest uwzględnione w wartości zużycia energii w domu",
10
- "LBL_wallBoxList": "Lista Wallboxów"
2
+ "LBL_standardSettings": "Ustawienia standardowe",
3
+ "LBL_cycleTime": "Czas między odczytami danych z ładowarki [ms]",
4
+ "LBL_stateHomeSolarPower": "ID obiektu dla aktualnie dostępnej mocy solarnej [W]",
5
+ "LBL_stateHomeBatSoc": "ID obiektu dla aktualnego stanu naładowania baterii domowej [%]",
6
+ "LBL_stateHomePowerConsumption": "ID obiektu dla aktualnego zużycia energii w domu [W]",
7
+ "LBL_subtractSelfConsumption": "Zużycie ładowarki jest uwzględnione w wartości zużycia energii w domu",
8
+ "LBL_wallBoxList": "Lista wallboxów",
9
+ "LBL_chargerName": "Nazwa ładowarki",
10
+ "LBL_ipAddress": "Adres IP go-eCharger",
11
+ "LBL_readOnlyMode": "Tryb tylko do odczytu - zezwolenie na ładowanie nie jest wysyłane do ładowarki (do użycia z tagami RFID)"
11
12
  }
@@ -1,11 +1,12 @@
1
1
  {
2
- "LBL_chargerName": "Nome do carregador",
3
- "LBL_cycleTime": "Tempo entre pesquisas de dados do carregador [ms]",
4
- "LBL_ipAddress": "Endereço IP do go-eCharger",
5
- "LBL_readOnlyMode": "modo somente leitura - a liberação da carga não é enviada ao carregador (para usar etiquetas RFID)",
6
- "LBL_stateHomeBatSoc": "object-id para o estado atual de carga da bateria doméstica [%]",
7
- "LBL_stateHomePowerConsumption": "object-id para o consumo atual de energia em casa [W]",
8
- "LBL_stateHomeSolarPower": "object-id para energia solar atualmente disponível [W]",
9
- "LBL_subtractSelfConsumption": "O consumo do carregador está incluído no valor de consumo de energia doméstica",
10
- "LBL_wallBoxList": "Lista de caixas de embutir"
2
+ "LBL_standardSettings": "Configurações padrão",
3
+ "LBL_cycleTime": "Tempo entre consultas de dados do carregador [ms]",
4
+ "LBL_stateHomeSolarPower": "ID do objeto para a potência solar atualmente disponível [W]",
5
+ "LBL_stateHomeBatSoc": "ID do objeto para o estado de carga atual da bateria doméstica [%]",
6
+ "LBL_stateHomePowerConsumption": "ID do objeto para o consumo de energia atual da casa [W]",
7
+ "LBL_subtractSelfConsumption": "O consumo do carregador está incluído no valor do consumo de energia da casa",
8
+ "LBL_wallBoxList": "Lista de wallboxes",
9
+ "LBL_chargerName": "Nome do carregador",
10
+ "LBL_ipAddress": "Endereço IP do go-eCharger",
11
+ "LBL_readOnlyMode": "Modo somente leitura - a autorização de carregamento não é enviada ao carregador (para uso com etiquetas RFID)"
11
12
  }
@@ -1,11 +1,12 @@
1
1
  {
2
- "LBL_chargerName": "Название зарядного устройства",
3
- "LBL_cycleTime": "Время между опросами данных от зарядного устройства [мс]",
4
- "LBL_ipAddress": "IP-адрес go-eCharger",
5
- "LBL_readOnlyMode": "режим только для чтения - снятие заряда не отправляется на зарядное устройство (для использования меток RFID)",
6
- "LBL_stateHomeBatSoc": "идентификатор объекта для текущего состояния заряда домашнего аккумулятора [%]",
7
- "LBL_stateHomePowerConsumption": "идентификатор объекта для текущего потребления электроэнергии в доме [Вт]",
8
- "LBL_stateHomeSolarPower": "идентификатор объекта для доступной в настоящее время солнечной энергии [Вт]",
9
- "LBL_subtractSelfConsumption": "Потребление зарядного устройства включено в значение потребления электроэнергии дома",
10
- "LBL_wallBoxList": "Список настенных ящиков"
2
+ "LBL_standardSettings": "Стандартные настройки",
3
+ "LBL_cycleTime": "Интервал между опросами данных зарядной станции [мс]",
4
+ "LBL_stateHomeSolarPower": "ID объекта для текущей доступной солнечной мощности [Вт]",
5
+ "LBL_stateHomeBatSoc": "ID объекта для текущего уровня заряда домашнего аккумулятора [%]",
6
+ "LBL_stateHomePowerConsumption": "ID объекта для текущего энергопотребления дома [Вт]",
7
+ "LBL_subtractSelfConsumption": "Потребление зарядной станции включено в значение энергопотребления дома",
8
+ "LBL_wallBoxList": "Список зарядных станций",
9
+ "LBL_chargerName": "Название зарядной станции",
10
+ "LBL_ipAddress": "IP-адрес go-eCharger",
11
+ "LBL_readOnlyMode": "Режим только для чтения - разрешение на зарядку не отправляется на зарядную станцию (для использования RFID-меток)"
11
12
  }
@@ -1,11 +1,12 @@
1
1
  {
2
- "LBL_chargerName": "Назва зарядного пристрою",
3
- "LBL_cycleTime": "Time between data polls from charger [ms]",
4
- "LBL_ipAddress": "IP address of go-eCharger",
5
- "LBL_readOnlyMode": "read only mode - release of charge is not send to charger (to use RFID tags)",
6
- "LBL_stateHomeBatSoc": "object-id for current home battery state of charge [%]",
7
- "LBL_stateHomePowerConsumption": "object-id for current home power consumption [W]",
8
- "LBL_stateHomeSolarPower": "object-id for currently available solar power [W]",
9
- "LBL_subtractSelfConsumption": "Charger consumption is included in home power consumption value",
10
- "LBL_wallBoxList": "Список Wallbox"
2
+ "LBL_standardSettings": "Стандартні налаштування",
3
+ "LBL_cycleTime": "Інтервал між опитуваннями даних зарядної станції [мс]",
4
+ "LBL_stateHomeSolarPower": "ID об'єкта для поточної доступної сонячної потужності [Вт]",
5
+ "LBL_stateHomeBatSoc": "ID об'єкта для поточного рівня заряду домашньої батареї [%]",
6
+ "LBL_stateHomePowerConsumption": "ID об'єкта для поточного енергоспоживання будинку [Вт]",
7
+ "LBL_subtractSelfConsumption": "Споживання зарядної станції включено у значення енергоспоживання будинку",
8
+ "LBL_wallBoxList": "Список зарядних станцій",
9
+ "LBL_chargerName": "Назва зарядної станції",
10
+ "LBL_ipAddress": "IP-адреса go-eCharger",
11
+ "LBL_readOnlyMode": "Режим лише для читання - дозвіл на заряджання не надсилається на зарядну станцію (для використання RFID-міток)"
11
12
  }
@@ -1,11 +1,12 @@
1
1
  {
2
- "LBL_chargerName": "充电器名称",
3
- "LBL_cycleTime": "充电器进行数据轮询之间的时间[ms]",
4
- "LBL_ipAddress": "go-eCharger的IP地址",
5
- "LBL_readOnlyMode": "只读模式 - 释放电荷不发送到充电器(使用 RFID 标签",
6
- "LBL_stateHomeBatSoc": "当前家用电池充电状态的对象ID [%]",
7
- "LBL_stateHomePowerConsumption": "当前家庭功耗的对象ID [W]",
8
- "LBL_stateHomeSolarPower": "当前可用太阳能的对象ID [W]",
9
- "LBL_subtractSelfConsumption": "充电器消耗包含在家庭电力消耗值中",
10
- "LBL_wallBoxList": "墙盒列表"
2
+ "LBL_standardSettings": "标准设置",
3
+ "LBL_cycleTime": "从充电桩轮询数据的时间间隔 [ms]",
4
+ "LBL_stateHomeSolarPower": "当前可用太阳能功率的对象ID [W]",
5
+ "LBL_stateHomeBatSoc": "家庭电池当前充电状态的对象ID [%]",
6
+ "LBL_stateHomePowerConsumption": "家庭当前用电量的对象ID [W]",
7
+ "LBL_subtractSelfConsumption": "充电桩的耗电量已包含在家庭用电量数值中",
8
+ "LBL_wallBoxList": "充电桩列表",
9
+ "LBL_chargerName": "充电桩名称",
10
+ "LBL_ipAddress": "go-eCharger 的 IP 地址",
11
+ "LBL_readOnlyMode": "只读模式 - 充电许可不会发送到充电桩(用于 RFID 标签)"
11
12
  }
@@ -1,15 +1,16 @@
1
1
  {
2
2
  "i18n": true,
3
3
  "type": "tabs",
4
- "items": {
5
- "_StandardTab": {
6
- "type": "panel",
7
- "label": "Standard settings",
8
- "items": {
4
+ "items": {
5
+ "_StandardTab": {
6
+ "type": "panel",
7
+ "label": "LBL_standardSettings",
8
+ "items": {
9
9
  "cycleTime": {
10
10
  "type": "number",
11
11
  "label": "LBL_cycleTime",
12
12
  "min": 3000,
13
+ "max": 3600000,
13
14
  "step": 100,
14
15
  "xs": 12,
15
16
  "sm": 6,
@@ -105,6 +106,6 @@
105
106
  ]
106
107
  }
107
108
  }
108
- }
109
+ }
109
110
  }
110
111
  }
@@ -6,6 +6,9 @@ class ProjectUtils {
6
6
  constructor(adapter) {
7
7
  this.adapter = adapter;
8
8
  }
9
+ sanitizeIdSegment(text) {
10
+ return text.replace(this.adapter.FORBIDDEN_CHARS, "_").trim();
11
+ }
9
12
  async getStateValue(stateName) {
10
13
  try {
11
14
  const stateObject = await this.getState(stateName);
@@ -1 +1 @@
1
- {"version":3,"file":"projectUtils.js","sourceRoot":"","sources":["../../src/lib/projectUtils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"projectUtils.js","sourceRoot":"","sources":["../../src/lib/projectUtils.ts"],"names":[],"mappings":"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"}
package/build/main.js CHANGED
@@ -39,7 +39,9 @@ Object.defineProperty(exports, "__esModule", { value: true });
39
39
  const utils = __importStar(require("@iobroker/adapter-core"));
40
40
  const axios_1 = __importDefault(require("axios"));
41
41
  const projectUtils_1 = require("./lib/projectUtils");
42
- const axiosInstance = axios_1.default.create({});
42
+ const axiosInstance = axios_1.default.create({
43
+ timeout: 5000,
44
+ });
43
45
  let minHomeBatVal = 87;
44
46
  let batSoC = 0;
45
47
  let solarPower = 0;
@@ -65,10 +67,19 @@ class go_e_charger extends utils.Adapter {
65
67
  this.log.warn(`Cycletime not configured or zero - will be set to 10 seconds`);
66
68
  this.config.cycleTime = 10000;
67
69
  }
70
+ else if (this.config.cycleTime < 3000) {
71
+ this.log.warn(`Cycletime configured too small (${this.config.cycleTime} ms) - will be set to 3 seconds`);
72
+ this.config.cycleTime = 3000;
73
+ }
74
+ else if (this.config.cycleTime > 3600000) {
75
+ this.log.warn(`Cycletime configured too large (${this.config.cycleTime} ms) - will be set to 1 hour`);
76
+ this.config.cycleTime = 3600000;
77
+ }
68
78
  this.log.info(`Cycletime set to: ${this.config.cycleTime / 1000} seconds`);
69
79
  minHomeBatVal = await this.projectUtils.getStateValue("Settings.Setpoint_HomeBatSoC");
70
80
  this.log.debug(`Initial value for Setpoint HomeBatSoC: ${minHomeBatVal}%`);
71
81
  const wallBoxList = Array.isArray(this.config.wallBoxList) ? this.config.wallBoxList : [];
82
+ this.config.wallBoxList = wallBoxList;
72
83
  if (!wallBoxList.length) {
73
84
  this.log.warn("No wallBoxList configured or wallBoxList is not an array. Charger setup will be skipped.");
74
85
  }
@@ -102,7 +113,7 @@ class go_e_charger extends utils.Adapter {
102
113
  this.subscribeStates(`Settings.*`);
103
114
  this.subscribeStates(`Wallbox_*.Settings.*`);
104
115
  try {
105
- for (const [iWB, wallBox] of this.config.wallBoxList.entries()) {
116
+ for (const [iWB, wallBox] of wallBoxList.entries()) {
106
117
  this.log.debug(`Setting up Wallbox ${iWB} with IP ${wallBox.ipAddress} in config`);
107
118
  if (!wallBox.ipAddress) {
108
119
  throw new Error(`Wallbox ${iWB} - IP address not set - stopping adapter`);
@@ -115,7 +126,7 @@ class go_e_charger extends utils.Adapter {
115
126
  await this.projectUtils.checkAndSetChannel(`Wallbox_${iWB}.statistics`, `wallbox statistics data`, `go-eCharger.png`, true);
116
127
  await this.projectUtils.checkAndSetValueBoolean(`Wallbox_${iWB}.Settings.ChargeNOW`, false, `ChargeNOW enabled`, "switch", true, true);
117
128
  await this.projectUtils.checkAndSetValueBoolean(`Wallbox_${iWB}.Settings.ChargeManager`, false, `Charge Manager enabled`, "switch", true, true);
118
- await this.projectUtils.checkAndSetValueNumber(`Wallbox_${iWB}.Settings.ChargeCurrent`, this.wallboxInfoList[iWB].MinAmp, `charge current output`, "A", "value.current", true, false, true, this.wallboxInfoList[iWB].MinAmp, this.wallboxInfoList[iWB].MaxAmp, 1);
129
+ await this.projectUtils.checkAndSetValueNumber(`Wallbox_${iWB}.Settings.ChargeCurrent`, this.wallboxInfoList[iWB].MinAmp, `charge current output`, "A", "level.current", true, false, true, this.wallboxInfoList[iWB].MinAmp, this.wallboxInfoList[iWB].MaxAmp, 1);
119
130
  this.wallboxInfoList[iWB].Charge3Phase = await this.projectUtils.getStateValue(`Wallbox_${iWB}.Settings.Charge3Phase`);
120
131
  await this.projectUtils.checkAndSetValueBoolean(`Wallbox_${iWB}.Settings.Charge3Phase`, false, `Setting 3-phase charging`, "switch", true, true);
121
132
  if (wallBox.ipAddress) {
@@ -137,7 +148,7 @@ class go_e_charger extends utils.Adapter {
137
148
  return;
138
149
  }
139
150
  await this.projectUtils.checkAndSetChannel(`statisticsGlobal`, `statistical data sum of all chargers`, `go-eCharger.png`, true);
140
- await this.projectUtils.checkAndSetValueNumber(`statisticsGlobal.charged`, totalChargeEnergy, `Totally charged sum of all go-e in lifetime`, "kWh", "value", false, true);
151
+ await this.projectUtils.checkAndSetValueNumber(`statisticsGlobal.chargedEnergy`, totalChargeEnergy, `Totally charged sum of all go-e in lifetime`, "kWh", "value.energy.consumed", false, true);
141
152
  if (this.supportsFeature && this.supportsFeature("PLUGINS")) {
142
153
  const sentryInstance = this.getPluginInstance("sentry");
143
154
  if (sentryInstance) {
@@ -152,7 +163,9 @@ class go_e_charger extends utils.Adapter {
152
163
  });
153
164
  }
154
165
  }
155
- await this.firstStart();
166
+ if (!(await this.firstStart())) {
167
+ return;
168
+ }
156
169
  this.log.debug(`Start init done, launching state machine interval`);
157
170
  void this.setState(`info.connection`, { val: true, ack: true });
158
171
  const stateMachine = this.setTimeout(this.StateMachine.bind(this), Number(this.config.cycleTime));
@@ -267,14 +280,14 @@ class go_e_charger extends utils.Adapter {
267
280
  }
268
281
  }
269
282
  async firstStart() {
283
+ let reachableChargers = 0;
270
284
  for (let iWB = 0; iWB < this.config.wallBoxList.length; iWB++) {
271
285
  this.log.debug(`Initial ReadCharger done, detected charger ${iWB} firmware ${this.wallboxInfoList[iWB].Firmware}`);
272
286
  switch (this.wallboxInfoList[iWB].Firmware) {
273
287
  case "0":
274
288
  case "EHostUnreach":
275
- this.log.error(`No charger detected on given IP address for charger ${iWB} - shutting down adapter.`);
289
+ this.log.warn(`No charger detected on IP address ${this.config.wallBoxList[iWB].ipAddress} for charger ${iWB}`);
276
290
  await this.setState(`Wallbox_${iWB}.info.connection`, { val: false, ack: true });
277
- this.stop;
278
291
  break;
279
292
  case "033":
280
293
  case "040":
@@ -298,10 +311,12 @@ class go_e_charger extends utils.Adapter {
298
311
  case "60.2":
299
312
  this.log.debug(`Init done, launching state machine`);
300
313
  await this.setState(`Wallbox_${iWB}.info.connection`, { val: true, ack: true });
314
+ reachableChargers++;
301
315
  break;
302
316
  default:
303
317
  this.log.warn(`Not explicitly supported firmware ${this.wallboxInfoList[iWB].Firmware} for charger ${iWB} found!!!`);
304
318
  await this.setState(`Wallbox_${iWB}.info.connection`, { val: true, ack: true });
319
+ reachableChargers++;
305
320
  if (this.supportsFeature && this.supportsFeature("PLUGINS")) {
306
321
  const sentryInstance = this.getPluginInstance("sentry");
307
322
  if (sentryInstance) {
@@ -316,6 +331,12 @@ class go_e_charger extends utils.Adapter {
316
331
  }
317
332
  }
318
333
  }
334
+ if (reachableChargers === 0) {
335
+ this.log.error(`No charger reachable on any configured IP address - stopping adapter.`);
336
+ await this.stop?.({ exitCode: 11, reason: `no charger detected` });
337
+ return false;
338
+ }
339
+ return true;
319
340
  }
320
341
  async StateMachine() {
321
342
  this.log.debug(`StateMachine cycle start`);
@@ -395,31 +416,31 @@ class go_e_charger extends utils.Adapter {
395
416
  const basePath = `Wallbox_${iWB}`;
396
417
  void this.projectUtils.checkAndSetValueNumber(`${basePath}.statistics.rebootCounter`, Number(status.rbc), `Counter for system reboot events`, "", "value");
397
418
  void this.projectUtils.checkAndSetValueNumber(`${basePath}.statistics.rebootTimer`, Math.floor(status.rbt / 1000 / 3600), `Time since last reboot`, "h", "value");
398
- void this.projectUtils.checkAndSetValueNumber(`${basePath}.info.carState`, Number(status.car), "State of connected car", "", "value");
419
+ void this.projectUtils.checkAndSetValueNumber(`${basePath}.info.carState`, Number(status.car), `State of connected car`, "", "value");
399
420
  switch (status.car) {
400
421
  case "1":
401
- await this.projectUtils.checkAndSetValue(`${basePath}.info.carStateString`, "Wallbox ready, no car", "State of connected car", "value");
422
+ await this.projectUtils.checkAndSetValue(`${basePath}.info.carStateString`, `Wallbox ready, no car`, `State of connected car`, "text");
402
423
  break;
403
424
  case "2":
404
- await this.projectUtils.checkAndSetValue(`${basePath}.info.carStateString`, "Charging...", "State of connected car", "value");
425
+ await this.projectUtils.checkAndSetValue(`${basePath}.info.carStateString`, `Charging...`, `State of connected car`, "text");
405
426
  break;
406
427
  case "3":
407
- await this.projectUtils.checkAndSetValue(`${basePath}.info.carStateString`, "Wait for car", "State of connected car", "value");
428
+ await this.projectUtils.checkAndSetValue(`${basePath}.info.carStateString`, `Wait for car`, `State of connected car`, "text");
408
429
  break;
409
430
  case "4":
410
- await this.projectUtils.checkAndSetValue(`${basePath}.info.carStateString`, `Charge finished, car still connected`, "State of connected car", "value");
431
+ await this.projectUtils.checkAndSetValue(`${basePath}.info.carStateString`, `Charge finished, car still connected`, `State of connected car`, "text");
411
432
  break;
412
433
  default:
413
- await this.projectUtils.checkAndSetValue(`${basePath}.info.carStateString`, "Error", `State of connected car`, "value");
434
+ await this.projectUtils.checkAndSetValue(`${basePath}.info.carStateString`, `Error`, `State of connected car`, `text`);
414
435
  }
415
- void this.projectUtils.checkAndSetValueNumber(`${basePath}.Power.ChargeCurrent`, Number(status.amp), `Charge current output`, "A", "value.current");
436
+ void this.projectUtils.checkAndSetValueNumber(`${basePath}.Power.ChargeCurrent`, Number(status.amp), `Charge current output`, "A", "level.current");
416
437
  void this.projectUtils.checkAndSetValueNumber(`${basePath}.Power.ChargeCurrentVolatile`, Number(status.amx), `Charge current output volatile`, "A", "value.current");
417
438
  switch (status.alw) {
418
439
  case "0":
419
- await this.projectUtils.checkAndSetValueBoolean(`${basePath}.Power.ChargingAllowed`, false, `Charging allowed`, "switch.mode.manual");
440
+ await this.projectUtils.checkAndSetValueBoolean(`${basePath}.Power.ChargingAllowed`, false, `Charging allowed`, "indicator");
420
441
  break;
421
442
  case "1":
422
- await this.projectUtils.checkAndSetValueBoolean(`${basePath}.Power.ChargingAllowed`, true, `Charging allowed`, "switch.mode.manual");
443
+ await this.projectUtils.checkAndSetValueBoolean(`${basePath}.Power.ChargingAllowed`, true, `Charging allowed`, "indicator");
423
444
  break;
424
445
  }
425
446
  this.wallboxInfoList[iWB].GridPhases = ((32 & status.pha) >> 5) + ((16 & status.pha) >> 4) + ((8 & status.pha) >> 3);
@@ -428,7 +449,7 @@ class go_e_charger extends utils.Adapter {
428
449
  void this.projectUtils.checkAndSetValueNumber(`${basePath}.Power.Charge`, status.nrg[11] * 10, `actual charging-power`, "W", "value.power");
429
450
  void this.projectUtils.checkAndSetValueNumber(`${basePath}.Power.MeasuredMaxPhaseCurrent`, Math.max(...status.nrg.slice(4, 7)) / 10, `Measured max. current of grid phases`, "A", "value.current");
430
451
  this.wallboxInfoList[iWB].Firmware = status.fwv;
431
- void this.projectUtils.checkAndSetValue(`${basePath}.info.firmwareVersion`, status.fwv, `Firmware version of charger`);
452
+ void this.projectUtils.checkAndSetValue(`${basePath}.info.firmwareVersion`, status.fwv, `Firmware version of charger`, `info.firmware`);
432
453
  void this.projectUtils.checkAndSetValueNumber(`${basePath}.info.unlockedByRFIDNo`, Number(status.uby), `Number of current session RFID chip`);
433
454
  if (!this.wallboxInfoList[iWB].HardwareMin3) {
434
455
  await this.parseAndSetRFIDData(status, basePath);
@@ -448,7 +469,7 @@ class go_e_charger extends utils.Adapter {
448
469
  }
449
470
  const cardNumber = i + 1;
450
471
  const channelPath = `${basePath}.statistics.RFID${cardNumber}`;
451
- await this.projectUtils.checkAndSetChannel(channelPath, cardName || `Karte ${cardNumber}`);
472
+ await this.projectUtils.checkAndSetChannel(channelPath, cardName || `Card ${cardNumber}`);
452
473
  await this.projectUtils.checkAndSetValueNumber(`${channelPath}.chargedEnergy`, Number(energyRaw) / 10 || 0, `Charged energy for RFID chip ${cardNumber}`, "kWh", "value.energy.consumed");
453
474
  if (cardId !== "n/a") {
454
475
  await this.projectUtils.checkAndSetValue(`${channelPath}.cardId`, cardId, `RFID Card ID ${cardNumber}`);
@@ -463,11 +484,16 @@ class go_e_charger extends utils.Adapter {
463
484
  .get(`http://${this.config.wallBoxList[iWB].ipAddress}/api/status?filter=alw,acu,eto,amp,rbc,rbt,car,pha,fwv,nrg,psm,typ,uby,rca,rcr,rcd,rc4,rc5,rc6,rc7,rc8,rc9,rc1,rna,rnm,rne,rn4,rn5,rn6,rn7,rn8,rn9,rn1,eca,ecr,ecd,ec4,ec5,ec6,ec7,ec8,ec9,ec1`, {
464
485
  transformResponse: r => r,
465
486
  })
466
- .then(response => {
487
+ .then(async (response) => {
467
488
  const result = JSON.parse(response.data);
468
489
  this.log.debug(`Read charger ${iWB} API V2: ${response.data}`);
469
490
  this.wallboxInfoList[iWB].HardwareMin3 = true;
470
- void this.ParseStatusAPIV2(result, iWB);
491
+ try {
492
+ await this.ParseStatusAPIV2(result, iWB);
493
+ }
494
+ catch (error) {
495
+ this.log.error(`Error parsing go-e charger ${iWB} API V2 response: ${error}`);
496
+ }
471
497
  })
472
498
  .catch(error => {
473
499
  this.log.error(`Error in calling go-e charger ${iWB} API V2: ${error}`);
@@ -490,7 +516,7 @@ class go_e_charger extends utils.Adapter {
490
516
  void this.projectUtils.checkAndSetValueNumber(`${basePath}.Power.EnabledPhases`, this.wallboxInfoList[iWB].EnabledPhases, `No of enabled phases in go-e wallbox`, "phase", "value");
491
517
  this.log.debug(`got enabled phases for charger ${iWB}: ${this.wallboxInfoList[iWB].EnabledPhases}`);
492
518
  this.wallboxInfoList[iWB].Hardware = status.typ;
493
- void this.projectUtils.checkAndSetValue(`${basePath}.info.hardwareVersion`, status.typ, `Hardware version of charger`, "value");
519
+ void this.projectUtils.checkAndSetValue(`${basePath}.info.hardwareVersion`, status.typ, `Hardware version of charger`, `info.hardware`);
494
520
  await this.parseAndSetRFIDData(status, basePath);
495
521
  this.log.debug(`got and parsed go-e charger ${iWB} data with API V2`);
496
522
  }
@@ -530,13 +556,13 @@ class go_e_charger extends utils.Adapter {
530
556
  .then(async (response) => {
531
557
  this.log.debug(`Sent to charger ${iWB} with firmware 033: ${response.data}`);
532
558
  const result = JSON.parse(response.data);
533
- void this.projectUtils.checkAndSetValueNumber(`${basePath}.Power.ChargeCurrent`, Number(result.amp), `Charge current output`, "A", "value.current");
559
+ void this.projectUtils.checkAndSetValueNumber(`${basePath}.Power.ChargeCurrent`, Number(result.amp), `Charge current output`, "A", "level.current");
534
560
  switch (result.alw) {
535
561
  case "0":
536
- await this.projectUtils.checkAndSetValueBoolean(`${basePath}.Power.ChargingAllowed`, false, `Charging allowed`, "switch.mode.manual");
562
+ await this.projectUtils.checkAndSetValueBoolean(`${basePath}.Power.ChargingAllowed`, false, `Charging allowed`, `indicator`);
537
563
  break;
538
564
  case "1":
539
- await this.projectUtils.checkAndSetValueBoolean(`${basePath}.Power.ChargingAllowed`, true, `Charging allowed`, "switch.mode.manual");
565
+ await this.projectUtils.checkAndSetValueBoolean(`${basePath}.Power.ChargingAllowed`, true, `Charging allowed`, `indicator`);
540
566
  break;
541
567
  }
542
568
  })
@@ -551,13 +577,13 @@ class go_e_charger extends utils.Adapter {
551
577
  .then(async (response) => {
552
578
  this.log.debug(`Sent to charger ${iWB} with firmware > 033: ${response.data}`);
553
579
  const result = JSON.parse(response.data);
554
- void this.projectUtils.checkAndSetValueNumber(`${basePath}.Power.ChargeCurrent`, Number(result.amp), `Charge current output`, "A", "value.current");
580
+ void this.projectUtils.checkAndSetValueNumber(`${basePath}.Power.ChargeCurrent`, Number(result.amp), `Charge current output`, "A", "level.current");
555
581
  switch (result.alw) {
556
582
  case "0":
557
- await this.projectUtils.checkAndSetValueBoolean(`${basePath}.Power.ChargingAllowed`, false, `Charging allowed`, "switch.mode.manual");
583
+ await this.projectUtils.checkAndSetValueBoolean(`${basePath}.Power.ChargingAllowed`, false, `Charging allowed`, `indicator`);
558
584
  break;
559
585
  case "1":
560
- await this.projectUtils.checkAndSetValueBoolean(`${basePath}.Power.ChargingAllowed`, true, `Charging allowed`, "switch.mode.manual");
586
+ await this.projectUtils.checkAndSetValueBoolean(`${basePath}.Power.ChargingAllowed`, true, `Charging allowed`, `indicator`);
561
587
  break;
562
588
  }
563
589
  })
package/build/main.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"main.js","sourceRoot":"","sources":["../src/main.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AACA,8DAAgD;AAChD,kDAA0B;AAC1B,qDAAqE;AACrE,MAAM,aAAa,GAAG,eAAK,CAAC,MAAM,CAAC,EAElC,CAAC,CAAC;AAGH,IAAI,aAAa,GAAG,EAAE,CAAC;AACvB,IAAI,MAAM,GAAG,CAAC,CAAC;AACf,IAAI,UAAU,GAAG,CAAC,CAAC;AACnB,IAAI,gBAAgB,GAAG,CAAC,CAAC;AACzB,IAAI,iBAAiB,GAAG,CAAC,CAAC;AAI1B,MAAM,YAAa,SAAQ,KAAK,CAAC,OAAO;IAC/B,YAAY,GAAG,IAAI,2BAAY,CAAC,IAAI,CAAC,CAAC;IAG9C,WAAW,CAAqB;IAEhC,eAAe,GAAmB,EAAE,CAAC;IAKrC,YAAmB,UAAyC,EAAE;QAC7D,KAAK,CAAC;YACL,GAAG,OAAO;YACV,IAAI,EAAE,cAAc;SACpB,CAAC,CAAC;QACH,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QAE1C,IAAI,CAAC,EAAE,CAAC,aAAa,EAAE,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QAEtD,IAAI,CAAC,EAAE,CAAC,QAAQ,EAAE,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QAC5C,IAAI,CAAC,WAAW,GAAG,EAAE,CAAC;QAEtB,IAAI,CAAC,eAAe,GAAG,EAAE,CAAC;IAC3B,CAAC;IAKO,KAAK,CAAC,OAAO;QACpB,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,CAAC;YAC5B,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,8DAA8D,CAAC,CAAC;YAC9E,IAAI,CAAC,MAAM,CAAC,SAAS,GAAG,KAAK,CAAC;QAC/B,CAAC;QACD,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,qBAAqB,IAAI,CAAC,MAAM,CAAC,SAAS,GAAG,IAAI,UAAU,CAAC,CAAC;QAE3E,aAAa,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,aAAa,CAAC,8BAA8B,CAAC,CAAC;QACtF,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,0CAA0C,aAAa,GAAG,CAAC,CAAC;QAE3E,MAAM,WAAW,GAAG,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,CAAC;QAC1F,IAAI,CAAC,WAAW,CAAC,MAAM,EAAE,CAAC;YACzB,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,0FAA0F,CAAC,CAAC;QAC3G,CAAC;aAAM,CAAC;YACP,IAAI,CAAC,eAAe,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC,aAAa,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC;gBACjE,EAAE,EAAE,KAAK;gBACT,SAAS,EAAE,aAAa,CAAC,SAAS;gBAClC,YAAY,EAAE,aAAa,CAAC,YAAY;gBACxC,QAAQ,EAAE,GAAG;gBACb,QAAQ,EAAE,IAAI;gBACd,YAAY,EAAE,KAAK;gBACnB,UAAU,EAAE,CAAC;gBACb,SAAS,EAAE,KAAK;gBAChB,aAAa,EAAE,KAAK;gBACpB,aAAa,EAAE,CAAC;gBAChB,WAAW,EAAE,CAAC;gBACd,YAAY,EAAE,KAAK;gBACnB,aAAa,EAAE,CAAC;gBAChB,oBAAoB,EAAE,CAAC;gBACvB,MAAM,EAAE,CAAC;gBACT,MAAM,EAAE,EAAE;gBACV,QAAQ,EAAE,CAAC;gBACX,iBAAiB,EAAE,CAAC;gBACpB,SAAS,EAAE,CAAC;gBACZ,WAAW,EAAE,KAAK;gBAClB,MAAM,EAAE,CAAC;gBACT,QAAQ,EAAE,KAAK;aACf,CAAC,CAAC,CAAC;YACJ,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,oCAAoC,IAAI,CAAC,eAAe,CAAC,MAAM,UAAU,CAAC,CAAC;QAC1F,CAAC;QAED,IAAI,CAAC,eAAe,CAAC,YAAY,CAAC,CAAC;QACnC,IAAI,CAAC,eAAe,CAAC,sBAAsB,CAAC,CAAC;QAE7C,IAAI,CAAC;YACJ,KAAK,MAAM,CAAC,GAAG,EAAE,OAAO,CAAC,IAAI,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,OAAO,EAAE,EAAE,CAAC;gBAChE,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,sBAAsB,GAAG,YAAY,OAAO,CAAC,SAAS,YAAY,CAAC,CAAC;gBACnF,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,CAAC;oBAExB,MAAM,IAAI,KAAK,CAAC,WAAW,GAAG,0CAA0C,CAAC,CAAC;gBAC3E,CAAC;gBAGD,MAAM,IAAI,CAAC,YAAY,CAAC,iBAAiB,CACxC,WAAW,GAAG,EAAE,EAChB,OAAO,CAAC,WAAW,IAAI,WAAW,GAAG,EAAE,EACvC,iBAAiB,EACjB,iBAAiB,EACjB,IAAI,CACJ,CAAC;gBAGF,MAAM,IAAI,CAAC,YAAY,CAAC,kBAAkB,CAAC,WAAW,GAAG,OAAO,EAAE,gCAAgC,EAAE,iBAAiB,EAAE,IAAI,CAAC,CAAC;gBAC7H,MAAM,IAAI,CAAC,YAAY,CAAC,uBAAuB,CAAC,WAAW,GAAG,kBAAkB,EAAE,KAAK,EAAE,kBAAkB,EAAE,qBAAqB,CAAC,CAAC;gBACpI,MAAM,IAAI,CAAC,YAAY,CAAC,kBAAkB,CAAC,WAAW,GAAG,QAAQ,EAAE,4BAA4B,EAAE,iBAAiB,EAAE,IAAI,CAAC,CAAC;gBAC1H,MAAM,IAAI,CAAC,YAAY,CAAC,kBAAkB,CAAC,WAAW,GAAG,WAAW,EAAE,+CAA+C,EAAE,iBAAiB,EAAE,IAAI,CAAC,CAAC;gBAChJ,MAAM,IAAI,CAAC,YAAY,CAAC,kBAAkB,CAAC,WAAW,GAAG,aAAa,EAAE,yBAAyB,EAAE,iBAAiB,EAAE,IAAI,CAAC,CAAC;gBAG5H,MAAM,IAAI,CAAC,YAAY,CAAC,uBAAuB,CAAC,WAAW,GAAG,qBAAqB,EAAE,KAAK,EAAE,mBAAmB,EAAE,QAAQ,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;gBACvI,MAAM,IAAI,CAAC,YAAY,CAAC,uBAAuB,CAAC,WAAW,GAAG,yBAAyB,EAAE,KAAK,EAAE,wBAAwB,EAAE,QAAQ,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;gBAChJ,MAAM,IAAI,CAAC,YAAY,CAAC,sBAAsB,CAC7C,WAAW,GAAG,yBAAyB,EACvC,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC,MAAM,EAChC,uBAAuB,EACvB,GAAG,EACH,eAAe,EACf,IAAI,EACJ,KAAK,EACL,IAAI,EACJ,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC,MAAM,EAChC,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC,MAAM,EAChC,CAAC,CACD,CAAC;gBACF,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC,YAAY,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,aAAa,CAAC,WAAW,GAAG,wBAAwB,CAAC,CAAC;gBACvH,MAAM,IAAI,CAAC,YAAY,CAAC,uBAAuB,CAC9C,WAAW,GAAG,wBAAwB,EACtC,KAAK,EACL,0BAA0B,EAC1B,QAAQ,EACR,IAAI,EACJ,IAAI,CACJ,CAAC;gBAEF,IAAI,OAAO,CAAC,SAAS,EAAE,CAAC;oBACvB,MAAM,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,CAAC;oBAClC,MAAM,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,CAAC;oBAClC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,sBAAsB,GAAG,qBAAqB,OAAO,CAAC,SAAS,EAAE,CAAC,CAAC;oBACjF,KAAK,IAAI,CAAC,QAAQ,CAAC,WAAW,GAAG,kBAAkB,EAAE,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,CAAC,CAAC;gBAChF,CAAC;gBAED,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC,SAAS,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,aAAa,CAAC,WAAW,GAAG,qBAAqB,CAAC,CAAC;gBACjH,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC,aAAa,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,aAAa,CAAC,WAAW,GAAG,yBAAyB,CAAC,CAAC;gBACzH,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC,aAAa,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,aAAa,CAAC,WAAW,GAAG,yBAAyB,CAAC,CAAC;gBACzH,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC,YAAY,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,aAAa,CAAC,WAAW,GAAG,wBAAwB,CAAC,CAAC;YACxH,CAAC;QACF,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACZ,IAAI,CAAC,GAAG,CAAC,KAAK,CAAE,CAAW,CAAC,OAAO,CAAC,CAAC;YACrC,KAAK,IAAI,CAAC,QAAQ,CAAC,iBAAiB,EAAE,EAAE,GAAG,EAAE,KAAK,EAAE,GAAG,EAAE,IAAI,EAAE,CAAC,CAAC;YACjE,MAAM,IAAI,CAAC,IAAI,EAAE,CAAC,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,EAAE,gBAAgB,EAAE,CAAC,CAAC;YAC9D,OAAO;QACR,CAAC;QAGD,MAAM,IAAI,CAAC,YAAY,CAAC,kBAAkB,CAAC,kBAAkB,EAAE,sCAAsC,EAAE,iBAAiB,EAAE,IAAI,CAAC,CAAC;QAChI,MAAM,IAAI,CAAC,YAAY,CAAC,sBAAsB,CAC7C,0BAA0B,EAC1B,iBAAiB,EACjB,6CAA6C,EAC7C,KAAK,EACL,OAAO,EACP,KAAK,EACL,IAAI,CACJ,CAAC;QAGF,IAAI,IAAI,CAAC,eAAe,IAAI,IAAI,CAAC,eAAe,CAAC,SAAS,CAAC,EAAE,CAAC;YAC7D,MAAM,cAAc,GAAG,IAAI,CAAC,iBAAiB,CAAC,QAAQ,CAAC,CAAC;YACxD,IAAI,cAAc,EAAE,CAAC;gBACpB,MAAM,MAAM,GAAG,cAAc,CAAC,eAAe,EAAE,CAAC;gBAChD,MAAM;oBACL,MAAM,EAAE,SAAS,CAAC,CAAC,KAAU,EAAE,EAAE;wBAChC,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;wBACvB,KAAK,CAAC,MAAM,CAAC,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;wBACpF,KAAK,CAAC,MAAM,CAAC,UAAU,EAAE,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;wBACjF,KAAK,CAAC,MAAM,CAAC,UAAU,EAAE,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;wBACjF,MAAM,CAAC,cAAc,CAAC,8BAA8B,EAAE,MAAM,CAAC,CAAC;oBAC/D,CAAC,CAAC,CAAC;YACL,CAAC;QACF,CAAC;QAED,MAAM,IAAI,CAAC,UAAU,EAAE,CAAC;QACxB,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,mDAAmD,CAAC,CAAC;QACpE,KAAK,IAAI,CAAC,QAAQ,CAAC,iBAAiB,EAAE,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,CAAC,CAAC;QAEhE,MAAM,YAAY,GAAG,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC;QAClG,IAAI,YAAY,IAAI,IAAI,EAAE,CAAC;YAC1B,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QACrC,CAAC;IACF,CAAC;IAQO,aAAa,CAAC,EAAU,EAAE,KAAwC;QACzE,IAAI,CAAC;YACJ,IAAI,KAAK,EAAE,CAAC;gBAGX,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC;oBAChB,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,6CAA6C,EAAE,aAAa,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC;oBAExF,IAAI,EAAE,CAAC,QAAQ,CAAC,YAAY,CAAC,EAAE,CAAC;wBAC/B,MAAM,SAAS,GAAG,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;wBAChC,IAAI,WAAW,GAAG,EAAE,CAAC;wBACrB,IAAI,SAAS,GAAG,CAAC,CAAC,CAAC;wBAKnB,QAAQ,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC;4BACtB,KAAK,UAAU;gCACd,WAAW,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;gCAC3B,QAAQ,WAAW,EAAE,CAAC;oCACrB,KAAK,qBAAqB;wCACzB,IAAI,OAAO,KAAK,CAAC,GAAG,KAAK,QAAQ,EAAE,CAAC;4CACnC,aAAa,GAAG,KAAK,CAAC,GAAG,CAAC;4CAC1B,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,kDAAkD,aAAa,EAAE,CAAC,CAAC;4CAClF,KAAK,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,KAAK,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;wCACzC,CAAC;6CAAM,CAAC;4CACP,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,uCAAuC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC;wCACnE,CAAC;wCACD,MAAM;oCACP;wCACC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,mCAAmC,WAAW,EAAE,CAAC,CAAC;gCACnE,CAAC;gCACD,MAAM;4BACP;gCAGC,IAAI,SAAS,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,UAAU,CAAC,IAAI,SAAS,CAAC,CAAC,CAAC,KAAK,UAAU,EAAE,CAAC;oCACxE,SAAS,GAAG,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC,CAAC;oCACzD,WAAW,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;oCAE3B,QAAQ,WAAW,EAAE,CAAC;wCACrB,KAAK,WAAW;4CACf,IAAI,OAAO,KAAK,CAAC,GAAG,KAAK,SAAS,EAAE,CAAC;gDACpC,IAAI,CAAC,eAAe,CAAC,SAAS,CAAC,CAAC,SAAS,GAAG,KAAK,CAAC,GAAG,CAAC;gDACtD,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,wCAAwC,IAAI,CAAC,eAAe,CAAC,SAAS,CAAC,CAAC,SAAS,EAAE,CAAC,CAAC;gDACpG,KAAK,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,KAAK,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;4CACzC,CAAC;iDAAM,CAAC;gDACP,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,6BAA6B,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC;4CACzD,CAAC;4CACD,MAAM;wCACP,KAAK,eAAe;4CACnB,IAAI,OAAO,KAAK,CAAC,GAAG,KAAK,SAAS,EAAE,CAAC;gDACpC,IAAI,CAAC,eAAe,CAAC,SAAS,CAAC,CAAC,aAAa,GAAG,KAAK,CAAC,GAAG,CAAC;gDAC1D,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,4CAA4C,IAAI,CAAC,eAAe,CAAC,SAAS,CAAC,CAAC,aAAa,EAAE,CAAC,CAAC;gDAC5G,KAAK,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,KAAK,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;4CACzC,CAAC;iDAAM,CAAC;gDACP,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,iCAAiC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC;4CAC7D,CAAC;4CACD,MAAM;wCACP,KAAK,eAAe;4CACnB,IAAI,OAAO,KAAK,CAAC,GAAG,KAAK,QAAQ,EAAE,CAAC;gDACnC,IAAI,CAAC,eAAe,CAAC,SAAS,CAAC,CAAC,aAAa,GAAG,KAAK,CAAC,GAAG,CAAC;gDAC1D,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,4CAA4C,IAAI,CAAC,eAAe,CAAC,SAAS,CAAC,CAAC,aAAa,EAAE,CAAC,CAAC;gDAC5G,KAAK,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,KAAK,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;4CACzC,CAAC;iDAAM,CAAC;gDACP,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,iCAAiC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC;4CAC7D,CAAC;4CACD,MAAM;wCACP,KAAK,cAAc;4CAClB,IAAI,OAAO,KAAK,CAAC,GAAG,KAAK,SAAS,EAAE,CAAC;gDACpC,IAAI,CAAC,eAAe,CAAC,SAAS,CAAC,CAAC,YAAY,GAAG,KAAK,CAAC,GAAG,CAAC;gDACzD,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,2CAA2C,IAAI,CAAC,eAAe,CAAC,SAAS,CAAC,CAAC,YAAY,EAAE,CAAC,CAAC;gDAC1G,KAAK,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,KAAK,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;4CACzC,CAAC;iDAAM,CAAC;gDACP,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,gCAAgC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC;4CAC5D,CAAC;4CACD,MAAM;wCACP;4CACC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,mCAAmC,WAAW,EAAE,CAAC,CAAC;oCACnE,CAAC;gCACF,CAAC;qCAAM,CAAC;oCACP,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,wBAAwB,CAAC,CAAC;gCAC1C,CAAC;wBACH,CAAC;oBACF,CAAC;gBACF,CAAC;YACF,CAAC;iBAAM,CAAC;gBACP,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,EAAE,UAAU,CAAC,CAAC;YACtC,CAAC;QACF,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YAChB,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,iDAAiD,KAAc,EAAE,CAAC,CAAC;QACnF,CAAC;IACF,CAAC;IAOO,QAAQ,CAAC,QAAoB;QACpC,IAAI,CAAC;YACJ,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE,CAAC,IAAI,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC,CAAC;YACtE,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,8CAA8C,CAAC,CAAC;YAC9D,KAAK,MAAM,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,OAAO,EAAE,EAAE,CAAC;gBACvD,KAAK,IAAI,CAAC,QAAQ,CAAC,WAAW,GAAG,kBAAkB,EAAE,EAAE,GAAG,EAAE,KAAK,EAAE,GAAG,EAAE,IAAI,EAAE,CAAC,CAAC;YACjF,CAAC;YACD,KAAK,IAAI,CAAC,QAAQ,CAAC,iBAAiB,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC;YACnD,QAAQ,EAAE,CAAC;QACZ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YAChB,IAAI,CAAC,GAAG,CAAC,IAAI,CAAE,KAAe,CAAC,OAAO,CAAC,CAAC;YACxC,QAAQ,EAAE,CAAC;QACZ,CAAC;IACF,CAAC;IAWO,KAAK,CAAC,UAAU;QACvB,KAAK,IAAI,GAAG,GAAG,CAAC,EAAE,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,MAAM,EAAE,GAAG,EAAE,EAAE,CAAC;YAC/D,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,8CAA8C,GAAG,aAAa,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC;YACnH,QAAQ,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,CAAC;gBAC5C,KAAK,GAAG,CAAC;gBACT,KAAK,cAAc;oBAElB,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,uDAAuD,GAAG,2BAA2B,CAAC,CAAC;oBACtG,MAAM,IAAI,CAAC,QAAQ,CAAC,WAAW,GAAG,kBAAkB,EAAE,EAAE,GAAG,EAAE,KAAK,EAAE,GAAG,EAAE,IAAI,EAAE,CAAC,CAAC;oBACjF,IAAI,CAAC,IAAI,CAAC;oBACV,MAAM;gBACP,KAAK,KAAK,CAAC;gBACX,KAAK,KAAK,CAAC;gBACX,KAAK,OAAO,CAAC;gBACb,KAAK,OAAO,CAAC;gBACb,KAAK,OAAO,CAAC;gBACb,KAAK,QAAQ,CAAC;gBACd,KAAK,OAAO,CAAC;gBACb,KAAK,OAAO,CAAC;gBACb,KAAK,OAAO,CAAC;gBACb,KAAK,MAAM,CAAC;gBACZ,KAAK,MAAM,CAAC;gBACZ,KAAK,MAAM,CAAC;gBACZ,KAAK,MAAM,CAAC;gBACZ,KAAK,OAAO,CAAC;gBACb,KAAK,MAAM,CAAC;gBACZ,KAAK,MAAM,CAAC;gBACZ,KAAK,MAAM,CAAC;gBACZ,KAAK,MAAM,CAAC;gBACZ,KAAK,MAAM,CAAC;gBACZ,KAAK,MAAM;oBACV,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,oCAAoC,CAAC,CAAC;oBACrD,MAAM,IAAI,CAAC,QAAQ,CAAC,WAAW,GAAG,kBAAkB,EAAE,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,CAAC,CAAC;oBAChF,MAAM;gBACP;oBACC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,qCAAqC,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC,QAAQ,gBAAgB,GAAG,WAAW,CAAC,CAAC;oBACrH,MAAM,IAAI,CAAC,QAAQ,CAAC,WAAW,GAAG,kBAAkB,EAAE,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,CAAC,CAAC;oBAEhF,IAAI,IAAI,CAAC,eAAe,IAAI,IAAI,CAAC,eAAe,CAAC,SAAS,CAAC,EAAE,CAAC;wBAC7D,MAAM,cAAc,GAAG,IAAI,CAAC,iBAAiB,CAAC,QAAQ,CAAC,CAAC;wBACxD,IAAI,cAAc,EAAE,CAAC;4BACpB,MAAM,MAAM,GAAG,cAAc,CAAC,eAAe,EAAE,CAAC;4BAChD,MAAM;gCACL,MAAM,EAAE,SAAS,CAAC,CAAC,KAAU,EAAE,EAAE;oCAChC,KAAK,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;oCAC1B,KAAK,CAAC,MAAM,CAAC,UAAU,EAAE,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,CAAC;oCAC7D,MAAM,CAAC,cAAc,CAAC,6CAA6C,EAAE,SAAS,CAAC,CAAC;gCACjF,CAAC,CAAC,CAAC;wBACL,CAAC;oBACF,CAAC;YACH,CAAC;QACF,CAAC;IACF,CAAC;IAGD,KAAK,CAAC,YAAY;QACjB,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,0BAA0B,CAAC,CAAC;QAC3C,iBAAiB,GAAG,CAAC,CAAC;QACtB,KAAK,IAAI,GAAG,GAAG,CAAC,EAAE,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,MAAM,EAAE,GAAG,EAAE,EAAE,CAAC;YAC/D,IAAI,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC,SAAS,IAAI,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC,aAAa,EAAE,CAAC;gBAEpF,MAAM,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,CAAC;gBAClC,IAAI,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC,YAAY,EAAE,CAAC;oBAC5C,MAAM,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,CAAC;gBACnC,CAAC;YACF,CAAC;YAED,IAAI,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC,SAAS,EAAE,CAAC;gBAEzC,MAAM,IAAI,CAAC,aAAa,CAAC,GAAG,EAAE,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC,aAAa,EAAE,0CAA0C,EAAE,GAAG,CAAC,CAAC;gBACxH,MAAM,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC,YAAY,EAAE,GAAG,CAAC,CAAC;gBACvE,IAAI,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC,YAAY,EAAE,CAAC;oBAC5C,MAAM,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,CAAC;gBACnC,CAAC;YACF,CAAC;iBAAM,IAAI,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC,aAAa,EAAE,CAAC;gBAEpD,MAAM,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,uBAAuB,CAAC,IAAI,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC;gBAEtF,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,sCAAsC,MAAM,GAAG,CAAC,CAAC;gBAChE,IAAI,MAAM,IAAI,aAAa,EAAE,CAAC;oBAE7B,MAAM,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC,YAAY,EAAE,GAAG,CAAC,CAAC;oBACvE,MAAM,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC;gBAChC,CAAC;qBAAM,CAAC;oBAEP,IAAI,CAAC,MAAM,IAAI,CAAC,YAAY,CAAC,aAAa,CAAC,WAAW,GAAG,wBAAwB,CAAC,CAAC,IAAI,IAAI,EAAE,CAAC;wBAE7F,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC;wBACrC,MAAM,IAAI,CAAC,aAAa,CAAC,GAAG,EAAE,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,+BAA+B,aAAa,GAAG,EAAE,GAAG,CAAC,CAAC;oBACvH,CAAC;gBACF,CAAC;YACF,CAAC;iBAAM,CAAC;gBAEP,IAAI,CAAC,MAAM,IAAI,CAAC,YAAY,CAAC,aAAa,CAAC,WAAW,GAAG,wBAAwB,CAAC,CAAC,IAAI,IAAI,EAAE,CAAC;oBAE7F,MAAM,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,CAAC;oBAClC,IAAI,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC,YAAY,EAAE,CAAC;wBAC5C,MAAM,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,CAAC;oBACnC,CAAC;oBACD,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC;oBACrC,MAAM,IAAI,CAAC,aAAa,CAAC,GAAG,EAAE,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,wBAAwB,EAAE,GAAG,CAAC,CAAC;gBAChG,CAAC;qBAAM,IAAI,MAAM,CAAC,MAAM,IAAI,CAAC,YAAY,CAAC,aAAa,CAAC,WAAW,GAAG,eAAe,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC;oBAC7F,MAAM,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,CAAC;oBAClC,IAAI,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC,YAAY,EAAE,CAAC;wBAC5C,MAAM,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,CAAC;oBACnC,CAAC;gBACF,CAAC;YACF,CAAC;YACD,iBAAiB,IAAI,MAAM,CAAC,MAAM,IAAI,CAAC,YAAY,CAAC,aAAa,CAAC,WAAW,GAAG,2BAA2B,CAAC,CAAC,IAAI,CAAC,CAAC;QACpH,CAAC;QAGD,MAAM,IAAI,CAAC,YAAY,CAAC,sBAAsB,CAC7C,gCAAgC,EAChC,iBAAiB,EACjB,6CAA6C,EAC7C,KAAK,EACL,uBAAuB,CACvB,CAAC;QAEF,MAAM,YAAY,GAAG,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC;QAClG,IAAI,YAAY,IAAI,IAAI,EAAE,CAAC;YAC1B,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QACrC,CAAC;IACF,CAAC;IAUD,KAAK,CAAC,iBAAiB,CAAC,GAAW;QAClC,MAAM,aAAa;aACjB,GAAG,CAAC,UAAU,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,SAAS,SAAS,EAAE,EAAE,iBAAiB,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC;aAC7F,IAAI,CAAC,QAAQ,CAAC,EAAE;YAEhB,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;YACzC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,gBAAgB,GAAG,YAAY,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC;YAC/D,KAAK,IAAI,CAAC,gBAAgB,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;QACzC,CAAC,CAAC;aACD,KAAK,CAAC,KAAK,CAAC,EAAE;YACd,IAAI,KAAK,CAAC,OAAO,IAAI,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAC,EAAE,CAAC;gBAC7D,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,2DAA2D,KAAK,EAAE,CAAC,CAAC;gBACnF,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC,QAAQ,GAAG,cAAc,CAAC;YACrD,CAAC;iBAAM,CAAC;gBACP,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,iCAAiC,GAAG,SAAS,KAAK,EAAE,CAAC,CAAC;YACtE,CAAC;YACD,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,uCAAuC,GAAG,KAAK,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,SAAS,MAAM,CAAC,CAAC;QAC7G,CAAC,CAAC,CAAC;IACL,CAAC;IAuBD,KAAK,CAAC,gBAAgB,CACrB,MA6CC,EACD,GAAW;QAEX,MAAM,QAAQ,GAAG,WAAW,GAAG,EAAE,CAAC;QAElC,KAAK,IAAI,CAAC,YAAY,CAAC,sBAAsB,CAC5C,GAAG,QAAQ,2BAA2B,EACtC,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,EAClB,kCAAkC,EAClC,EAAE,EACF,OAAO,CACP,CAAC;QACF,KAAK,IAAI,CAAC,YAAY,CAAC,sBAAsB,CAC5C,GAAG,QAAQ,yBAAyB,EACpC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,GAAG,IAAI,GAAG,IAAI,CAAC,EACpC,wBAAwB,EACxB,GAAG,EACH,OAAO,CACP,CAAC;QACF,KAAK,IAAI,CAAC,YAAY,CAAC,sBAAsB,CAAC,GAAG,QAAQ,gBAAgB,EAAE,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,wBAAwB,EAAE,EAAE,EAAE,OAAO,CAAC,CAAC;QACtI,QAAQ,MAAM,CAAC,GAAG,EAAE,CAAC;YACpB,KAAK,GAAG;gBACP,MAAM,IAAI,CAAC,YAAY,CAAC,gBAAgB,CAAC,GAAG,QAAQ,sBAAsB,EAAE,uBAAuB,EAAE,wBAAwB,EAAE,OAAO,CAAC,CAAC;gBACxI,MAAM;YACP,KAAK,GAAG;gBACP,MAAM,IAAI,CAAC,YAAY,CAAC,gBAAgB,CAAC,GAAG,QAAQ,sBAAsB,EAAE,aAAa,EAAE,wBAAwB,EAAE,OAAO,CAAC,CAAC;gBAC9H,MAAM;YACP,KAAK,GAAG;gBACP,MAAM,IAAI,CAAC,YAAY,CAAC,gBAAgB,CAAC,GAAG,QAAQ,sBAAsB,EAAE,cAAc,EAAE,wBAAwB,EAAE,OAAO,CAAC,CAAC;gBAC/H,MAAM;YACP,KAAK,GAAG;gBACP,MAAM,IAAI,CAAC,YAAY,CAAC,gBAAgB,CACvC,GAAG,QAAQ,sBAAsB,EACjC,sCAAsC,EACtC,wBAAwB,EACxB,OAAO,CACP,CAAC;gBACF,MAAM;YACP;gBACC,MAAM,IAAI,CAAC,YAAY,CAAC,gBAAgB,CAAC,GAAG,QAAQ,sBAAsB,EAAE,OAAO,EAAE,wBAAwB,EAAE,OAAO,CAAC,CAAC;QAC1H,CAAC;QAED,KAAK,IAAI,CAAC,YAAY,CAAC,sBAAsB,CAAC,GAAG,QAAQ,sBAAsB,EAAE,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,uBAAuB,EAAE,GAAG,EAAE,eAAe,CAAC,CAAC;QACpJ,KAAK,IAAI,CAAC,YAAY,CAAC,sBAAsB,CAC5C,GAAG,QAAQ,8BAA8B,EACzC,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,EAClB,gCAAgC,EAChC,GAAG,EACH,eAAe,CACf,CAAC;QACF,QAAQ,MAAM,CAAC,GAAG,EAAE,CAAC;YACpB,KAAK,GAAG;gBACP,MAAM,IAAI,CAAC,YAAY,CAAC,uBAAuB,CAAC,GAAG,QAAQ,wBAAwB,EAAE,KAAK,EAAE,kBAAkB,EAAE,oBAAoB,CAAC,CAAC;gBACtI,MAAM;YACP,KAAK,GAAG;gBACP,MAAM,IAAI,CAAC,YAAY,CAAC,uBAAuB,CAAC,GAAG,QAAQ,wBAAwB,EAAE,IAAI,EAAE,kBAAkB,EAAE,oBAAoB,CAAC,CAAC;gBACrI,MAAM;QACR,CAAC;QACD,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC,UAAU,GAAG,CAAC,CAAC,EAAE,GAAG,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,GAAG,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC;QACrH,KAAK,IAAI,CAAC,YAAY,CAAC,sBAAsB,CAC5C,GAAG,QAAQ,mBAAmB,EAC9B,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC,UAAU,EACpC,6BAA6B,EAC7B,OAAO,EACP,OAAO,CACP,CAAC;QACF,KAAK,IAAI,CAAC,YAAY,CAAC,sBAAsB,CAC5C,GAAG,QAAQ,2BAA2B,EACtC,MAAM,CAAC,GAAG,GAAG,EAAE,EACf,qCAAqC,EACrC,KAAK,EACL,uBAAuB,CACvB,CAAC;QACF,KAAK,IAAI,CAAC,YAAY,CAAC,sBAAsB,CAAC,GAAG,QAAQ,eAAe,EAAE,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,EAAE,EAAE,uBAAuB,EAAE,GAAG,EAAE,aAAa,CAAC,CAAC;QAC5I,KAAK,IAAI,CAAC,YAAY,CAAC,sBAAsB,CAC5C,GAAG,QAAQ,gCAAgC,EAC3C,IAAI,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,EAAE,EACxC,sCAAsC,EACtC,GAAG,EACH,eAAe,CACf,CAAC;QACF,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC,QAAQ,GAAG,MAAM,CAAC,GAAG,CAAC;QAChD,KAAK,IAAI,CAAC,YAAY,CAAC,gBAAgB,CAAC,GAAG,QAAQ,uBAAuB,EAAE,MAAM,CAAC,GAAG,EAAE,6BAA6B,CAAC,CAAC;QAGvH,KAAK,IAAI,CAAC,YAAY,CAAC,sBAAsB,CAAC,GAAG,QAAQ,wBAAwB,EAAE,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,qCAAqC,CAAC,CAAC;QAI9I,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC,YAAY,EAAE,CAAC;YAC7C,MAAM,IAAI,CAAC,mBAAmB,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;QAClD,CAAC;QAGD,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,+BAA+B,GAAG,OAAO,CAAC,CAAC;IAC3D,CAAC;IAuCO,KAAK,CAAC,mBAAmB,CAChC,MA+BC,EACD,QAAgB;QAEhB,MAAM,OAAO,GAAG,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;QACvF,MAAM,SAAS,GAAG,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;QACzF,MAAM,UAAU,GAAG,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;QAE1F,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC;YAC7B,MAAM,MAAM,GAAI,MAAM,CAAC,OAAO,CAAC,CAAC,CAAwB,CAAwB,EAAE,QAAQ,EAAE,CAAC,IAAI,EAAE,CAAC;YACpG,MAAM,QAAQ,GAAI,MAAM,CAAC,SAAS,CAAC,CAAC,CAAwB,CAAwB,EAAE,QAAQ,EAAE,CAAC,IAAI,EAAE,CAAC;YACxG,MAAM,SAAS,GAAG,MAAM,CAAC,UAAU,CAAC,CAAC,CAAwB,CAAuB,CAAC;YAErF,IAAI,CAAC,MAAM,IAAI,MAAM,KAAK,GAAG,EAAE,CAAC;gBAC/B,SAAS;YACV,CAAC;YAED,MAAM,UAAU,GAAG,CAAC,GAAG,CAAC,CAAC;YACzB,MAAM,WAAW,GAAG,GAAG,QAAQ,mBAAmB,UAAU,EAAE,CAAC;YAC/D,MAAM,IAAI,CAAC,YAAY,CAAC,kBAAkB,CAAC,WAAW,EAAE,QAAQ,IAAI,SAAS,UAAU,EAAE,CAAC,CAAC;YAC3F,MAAM,IAAI,CAAC,YAAY,CAAC,sBAAsB,CAC7C,GAAG,WAAW,gBAAgB,EAC9B,MAAM,CAAC,SAAS,CAAC,GAAG,EAAE,IAAI,CAAC,EAC3B,gCAAgC,UAAU,EAAE,EAC5C,KAAK,EACL,uBAAuB,CACvB,CAAC;YACF,IAAI,MAAM,KAAK,KAAK,EAAE,CAAC;gBACtB,MAAM,IAAI,CAAC,YAAY,CAAC,gBAAgB,CAAC,GAAG,WAAW,SAAS,EAAE,MAAM,EAAE,gBAAgB,UAAU,EAAE,CAAC,CAAC;YACzG,CAAC;YACD,IAAI,QAAQ,IAAI,QAAQ,KAAK,KAAK,EAAE,CAAC;gBACpC,MAAM,IAAI,CAAC,YAAY,CAAC,gBAAgB,CAAC,GAAG,WAAW,WAAW,EAAE,QAAQ,EAAE,kBAAkB,UAAU,EAAE,CAAC,CAAC;YAC/G,CAAC;QACF,CAAC;IACF,CAAC;IAUD,KAAK,CAAC,iBAAiB,CAAC,GAAW;QAClC,MAAM,aAAa;aACjB,GAAG,CACH,UAAU,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,SAAS,gMAAgM,EAChP;YACC,iBAAiB,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;SACzB,CACD;aACA,IAAI,CAAC,QAAQ,CAAC,EAAE;YAEhB,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;YACzC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,gBAAgB,GAAG,YAAY,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC;YAC/D,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC,YAAY,GAAG,IAAI,CAAC;YAC9C,KAAK,IAAI,CAAC,gBAAgB,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;QACzC,CAAC,CAAC;aACD,KAAK,CAAC,KAAK,CAAC,EAAE;YACd,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,iCAAiC,GAAG,YAAY,KAAK,EAAE,CAAC,CAAC;YACxE,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,sFAAsF,GAAG;YAC/F,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,SAAS,EAAE,CAAC,CAAC;QACnD,CAAC,CAAC,CAAC;IACL,CAAC;IAwCO,KAAK,CAAC,gBAAgB,CAC7B,MAiCC,EACD,GAAW;QAEX,MAAM,QAAQ,GAAG,WAAW,GAAG,EAAE,CAAC;QAClC,QAAQ,MAAM,CAAC,GAAG,EAAE,CAAC;YACpB,KAAK,CAAC;gBACL,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC,aAAa,GAAG,CAAC,CAAC;gBAC5C,MAAM;YACP,KAAK,CAAC;gBACL,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC,aAAa,GAAG,CAAC,CAAC;gBAC5C,MAAM;YACP;gBACC,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC,aAAa,GAAG,CAAC,CAAC;QAC9C,CAAC;QACD,KAAK,IAAI,CAAC,YAAY,CAAC,sBAAsB,CAC5C,GAAG,QAAQ,sBAAsB,EACjC,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC,aAAa,EACvC,sCAAsC,EACtC,OAAO,EACP,OAAO,CACP,CAAC;QACF,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,kCAAkC,GAAG,KAAK,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC,aAAa,EAAE,CAAC,CAAC;QACpG,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC,QAAQ,GAAG,MAAM,CAAC,GAAG,CAAC;QAChD,KAAK,IAAI,CAAC,YAAY,CAAC,gBAAgB,CAAC,GAAG,QAAQ,uBAAuB,EAAE,MAAM,CAAC,GAAG,EAAE,6BAA6B,EAAE,OAAO,CAAC,CAAC;QAChI,MAAM,IAAI,CAAC,mBAAmB,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;QACjD,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,+BAA+B,GAAG,mBAAmB,CAAC,CAAC;IACvE,CAAC;IAUD,KAAK,CAAC,cAAc,CAAC,YAAqB,EAAE,GAAW;QACtD,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC,YAAY,EAAE,CAAC;YAC7C,OAAO;QACR,CAAC;QACD,MAAM,GAAG,GAAG,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACjC,MAAM,aAAa;aACjB,GAAG,CAAC,UAAU,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,SAAS,gBAAgB,GAAG,EAAE,EAAE,EAAE,iBAAiB,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC;aACzG,IAAI,CAAC,QAAQ,CAAC,EAAE;YAEhB,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,aAAa,GAAG,eAAe,GAAG,gBAAgB,QAAQ,CAAC,UAAU,EAAE,CAAC,CAAC;QACzF,CAAC,CAAC;aACD,KAAK,CAAC,KAAK,CAAC,EAAE;YACd,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,UAAU,KAAK,sCAAsC,GAAG,MAAM,YAAY,MAAM,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,SAAS,EAAE,CAAC,CAAC;YACxI,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,uCAAuC,GAAG,KAAK,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,SAAS,MAAM,CAAC,CAAC;QAC7G,CAAC,CAAC,CAAC;IACL,CAAC;IAGD,KAAK,CAAC,aAAa,CAAC,KAAa,EAAE,MAAc,EAAE,UAAkB,EAAE,GAAW;QACjF,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,UAAU,QAAQ,MAAM,SAAS,CAAC,CAAC;QACrD,MAAM,QAAQ,GAAG,WAAW,GAAG,EAAE,CAAC;QAClC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,YAAY,EAAE,CAAC;YAChD,MAAM,aAAa;iBACjB,GAAG,CAAC,UAAU,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,SAAS,qBAAqB,KAAK,EAAE,EAAE,EAAE,iBAAiB,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC;iBAChH,IAAI,CAAC,QAAQ,CAAC,EAAE;gBAEhB,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,mBAAmB,GAAG,KAAK,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC;YAC5D,CAAC,CAAC;iBACD,KAAK,CAAC,KAAK,CAAC,EAAE;gBACd,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,UAAU,KAAK,0BAA0B,GAAG,KAAK,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,SAAS,QAAQ,KAAK,EAAE,CAAC,CAAC;gBACtH,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,uCAAuC,GAAG,KAAK,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,SAAS,MAAM,CAAC,CAAC;YAC7G,CAAC,CAAC,CAAC;QACL,CAAC;QAED,QAAQ,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,CAAC;YAC5C,KAAK,KAAK;gBACT,MAAM,aAAa;qBACjB,GAAG,CAAC,UAAU,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,SAAS,qBAAqB,MAAM,EAAE,EAAE,EAAE,iBAAiB,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC;qBACjH,IAAI,CAAC,KAAK,EAAC,QAAQ,EAAC,EAAE;oBAEtB,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,mBAAmB,GAAG,uBAAuB,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC;oBAC7E,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;oBACzC,KAAK,IAAI,CAAC,YAAY,CAAC,sBAAsB,CAC5C,GAAG,QAAQ,sBAAsB,EACjC,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,EAClB,uBAAuB,EACvB,GAAG,EACH,eAAe,CACf,CAAC;oBACF,QAAQ,MAAM,CAAC,GAAG,EAAE,CAAC;wBACpB,KAAK,GAAG;4BACP,MAAM,IAAI,CAAC,YAAY,CAAC,uBAAuB,CAC9C,GAAG,QAAQ,wBAAwB,EACnC,KAAK,EACL,kBAAkB,EAClB,oBAAoB,CACpB,CAAC;4BACF,MAAM;wBACP,KAAK,GAAG;4BACP,MAAM,IAAI,CAAC,YAAY,CAAC,uBAAuB,CAC9C,GAAG,QAAQ,wBAAwB,EACnC,IAAI,EACJ,kBAAkB,EAClB,oBAAoB,CACpB,CAAC;4BACF,MAAM;oBACR,CAAC;gBACF,CAAC,CAAC;qBACD,KAAK,CAAC,KAAK,CAAC,EAAE;oBACd,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,UAAU,KAAK,0BAA0B,GAAG,KAAK,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,SAAS,QAAQ,MAAM,EAAE,CAAC,CAAC;oBACvH,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,uCAAuC,GAAG,KAAK,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,SAAS,MAAM,CAAC,CAAC;gBAC7G,CAAC,CAAC,CAAC;gBACJ,MAAM;YACP;gBAKC,MAAM,aAAa;qBACjB,GAAG,CAAC,UAAU,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,SAAS,qBAAqB,MAAM,EAAE,EAAE,EAAE,iBAAiB,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC;qBACjH,IAAI,CAAC,KAAK,EAAC,QAAQ,EAAC,EAAE;oBAEtB,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,mBAAmB,GAAG,yBAAyB,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC;oBAC/E,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;oBACzC,KAAK,IAAI,CAAC,YAAY,CAAC,sBAAsB,CAC5C,GAAG,QAAQ,sBAAsB,EACjC,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,EAClB,uBAAuB,EACvB,GAAG,EACH,eAAe,CACf,CAAC;oBACF,QAAQ,MAAM,CAAC,GAAG,EAAE,CAAC;wBACpB,KAAK,GAAG;4BACP,MAAM,IAAI,CAAC,YAAY,CAAC,uBAAuB,CAC9C,GAAG,QAAQ,wBAAwB,EACnC,KAAK,EACL,kBAAkB,EAClB,oBAAoB,CACpB,CAAC;4BACF,MAAM;wBACP,KAAK,GAAG;4BACP,MAAM,IAAI,CAAC,YAAY,CAAC,uBAAuB,CAC9C,GAAG,QAAQ,wBAAwB,EACnC,IAAI,EACJ,kBAAkB,EAClB,oBAAoB,CACpB,CAAC;4BACF,MAAM;oBACR,CAAC;gBACF,CAAC,CAAC;qBACD,KAAK,CAAC,KAAK,CAAC,EAAE;oBACd,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,UAAU,KAAK,0BAA0B,GAAG,KAAK,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,SAAS,QAAQ,MAAM,EAAE,CAAC,CAAC;oBACvH,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,uCAAuC,GAAG,KAAK,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,SAAS,MAAM,CAAC,CAAC;gBAC7G,CAAC,CAAC,CAAC;QACN,CAAC;IACF,CAAC;IA6BD,KAAK,CAAC,cAAc,CAAC,GAAW;QAC/B,UAAU,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,uBAAuB,CAAC,IAAI,CAAC,MAAM,CAAC,mBAAmB,CAAC,CAAC;QAC9F,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,sCAAsC,UAAU,IAAI,CAAC,CAAC;QACrE,gBAAgB,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,uBAAuB,CAAC,IAAI,CAAC,MAAM,CAAC,yBAAyB,CAAC,CAAC;QAC1G,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,kDAAkD,gBAAgB,IAAI,CAAC,CAAC;QACvF,MAAM,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,uBAAuB,CAAC,IAAI,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC;QACtF,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,sCAAsC,MAAM,GAAG,CAAC,CAAC;QAChE,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC,WAAW,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,aAAa,CAAC,WAAW,GAAG,eAAe,CAAC,CAAC;QAE7G,MAAM,MAAM,GACX,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC,YAAY,IAAI,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC,aAAa;YAChF,CAAC,CAAC,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC,aAAa;YACzC,CAAC,CAAC,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC,UAAU,CAAC;QAEzC,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC,SAAS,GAAG,IAAI,CAAC,KAAK,CAC/C,CAAC,UAAU;YACV,gBAAgB;YAChB,CAAC,IAAI,CAAC,MAAM,CAAC,uBAAuB,CAAC,CAAC,CAAC,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC;YACjF,GAAG;YACH,CAAC,IAAI,GAAG,CAAC,GAAG,GAAG,aAAa,CAAC,CAAC,GAAG,CAAC,MAAM,GAAG,aAAa,CAAC,CAAC;YAC1D,GAAG;YACH,MAAM,CACP,CAAC;QAEF,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC;QAExF,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,sCAAsC,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC,SAAS,IAAI,CAAC,CAAC;QAE9F,IAAI,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC,MAAM,GAAG,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC,SAAS,EAAE,CAAC;YAC5E,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC;QACpC,CAAC;aAAM,IAAI,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC,MAAM,GAAG,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC,SAAS,EAAE,CAAC;YACnF,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC;QACpC,CAAC;QAED,IAAI,CAAC,GAAG,CAAC,KAAK,CACb,eAAe,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC,MAAM,cAAc,UAAU,cAAc,gBAAgB,gBAAgB,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC,WAAW,IAAI,CAC9J,CAAC;QAEF,IAAI,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC,MAAM,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;YAC9C,MAAM,IAAI,CAAC,aAAa,CAAC,GAAG,EAAE,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,qBAAqB,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC,MAAM,IAAI,EAAE,GAAG,CAAC,CAAC;QACjI,CAAC;aAAM,IAAI,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAEjD,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,CAAC;YACrC,IAAI,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC,QAAQ,GAAG,EAAE,EAAE,CAAC;gBAC7C,MAAM,IAAI,CAAC,aAAa,CAAC,GAAG,EAAE,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,sBAAsB,EAAE,GAAG,CAAC,CAAC;gBAC7F,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC,QAAQ,GAAG,CAAC,CAAC;YACxC,CAAC;QACF,CAAC;IACF,CAAC;IAmBD,WAAW,CAAC,QAAiB;QAC5B,IAAI,QAAQ,KAAK,SAAS,IAAI,QAAQ,KAAK,IAAI,EAAE,CAAC;YACjD,OAAO,IAAI,CAAC;QACb,CAAC;QACD,MAAM,KAAK,GAAG,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC;aACpC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC;aACnB,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC;aAClB,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC;aAClB,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC;aACnB,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC;aACnB,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC;aACnB,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;QACtB,OAAO,KAAK,KAAK,EAAE,CAAC;IACrB,CAAC;CACD;AAGD,IAAI,OAAO,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;IAE7B,MAAM,CAAC,OAAO,GAAG,CAAC,OAAkD,EAAE,EAAE,CAAC,IAAI,YAAY,CAAC,OAAO,CAAC,CAAC;AACpG,CAAC;KAAM,CAAC;IAEP,CAAC,GAAG,EAAE,CAAC,IAAI,YAAY,EAAE,CAAC,EAAE,CAAC;AAC9B,CAAC"}
1
+ {"version":3,"file":"main.js","sourceRoot":"","sources":["../src/main.ts"],"names":[],"mappings":"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"}
package/io-package.json CHANGED
@@ -1,8 +1,34 @@
1
1
  {
2
2
  "common": {
3
3
  "name": "go-e-charger",
4
- "version": "1.0.2",
4
+ "version": "1.0.4",
5
5
  "news": {
6
+ "1.0.4": {
7
+ "en": "harmonized i18n files\nimproved README and English texts\nreworked translations in all languages\nadded 5s timeout to all HTTP requests to chargers\nfixed adapter stop when no charger is reachable at startup; warn per unreachable charger\nfixed German fallback text for RFID card channel names\nadded upper bound validation for cycle time\nadded link to manufacturer's website\ncode optimizations",
8
+ "de": "harmonisierte i18n-Dateien\nverbesserte README- und englische Texte\nüberarbeitete Übersetzungen in allen Sprachen\nAllen HTTP-Anfragen an Ladegeräte wurde ein Timeout von 5 Sekunden hinzugefügt.\nBehobene Adapterabschaltung, wenn beim Start kein Ladegerät erreichbar ist; Warnung bei nicht erreichbarem Ladegerät\nKorrigierter deutscher Ausweichtext für RFID-Kartenkanalnamen\nValidierung der oberen Grenze für die Zykluszeit hinzugefügt\nLink zur Website des Herstellers hinzugefügt.\nCodeoptimierungen",
9
+ "ru": "гармонизированные файлы i18n\nУлучшены файлы README и английский текст.\nПереработаны переводы на все языки.\nДобавлен 5-секундный таймаут ко всем HTTP-запросам к зарядным устройствам.\nАдаптер автоматически отключается при запуске, если зарядное устройство недоступно; при каждой недоступности зарядного устройства выдается предупреждение.\nИсправлен немецкий резервный текст для названий каналов RFID-карт.\nДобавлена проверка верхней границы времени цикла.\nДобавлена ссылка на сайт производителя.\nоптимизация кода",
10
+ "pt": "Arquivos i18n harmonizados\nArquivo README e textos em inglês aprimorados.\nTraduções revisadas em todos os idiomas\nAdicionado um tempo limite de 5 segundos a todas as solicitações HTTP para carregadores.\nO adaptador fixo para de funcionar quando nenhum carregador está disponível na inicialização; exibe um aviso para cada carregador inacessível.\nTexto alternativo em alemão corrigido para nomes de canais de cartões RFID.\nAdicionada validação de limite superior para o tempo de ciclo.\nAdicionado link para o site do fabricante.\notimizações de código",
11
+ "nl": "geharmoniseerde i18n-bestanden\nVerbeterde README en Engelse teksten\nHerziene vertalingen in alle talen\nEr is een time-out van 5 seconden toegevoegd aan alle HTTP-verzoeken aan opladers.\nDe vaste adapter stopt wanneer er bij het opstarten geen oplader bereikbaar is; er wordt een waarschuwing gegeven wanneer de oplader niet bereikbaar is.\nDe Duitse fallback-tekst voor RFID-kaartkanaalnamen is gecorrigeerd.\nValidatie van de bovengrens voor de cyclustijd toegevoegd.\nLink naar de website van de fabrikant toegevoegd\ncode-optimalisaties",
12
+ "fr": "fichiers i18n harmonisés\nAmélioration du fichier README et des textes en anglais\ntraductions retravaillées dans toutes les langues\nAjout d'un délai d'attente de 5 secondes à toutes les requêtes HTTP adressées aux chargeurs.\nArrêt automatique de l'adaptateur secteur si aucun chargeur n'est accessible au démarrage ; avertissement en cas de chargeur inaccessible\nTexte de repli allemand corrigé pour les noms de canaux de cartes RFID\nAjout d'une validation de limite supérieure pour le temps de cycle\najout d'un lien vers le site web du fabricant\noptimisations de code",
13
+ "it": "file i18n armonizzati\nFile README e testi in inglese migliorati.\ntraduzioni rielaborate in tutte le lingue\naggiunto un timeout di 5 secondi a tutte le richieste HTTP ai caricabatterie\nArresto fisso dell'adattatore quando nessun caricabatterie è raggiungibile all'avvio; avviso per ogni caricabatterie irraggiungibile\nTesto di fallback tedesco fisso per i nomi dei canali delle schede RFID\naggiunta la convalida del limite superiore per il tempo di ciclo\naggiunto il link al sito web del produttore\nottimizzazioni del codice",
14
+ "es": "Archivos i18n armonizados\nREADME y textos en inglés mejorados\nTraducciones revisadas en todos los idiomas\nSe agregó un tiempo de espera de 5 segundos a todas las solicitudes HTTP a los cargadores.\nEl adaptador fijo se detiene cuando no hay ningún cargador disponible al encenderse; avisa cuando no hay ningún cargador disponible.\nSe corrigió el texto alternativo en alemán para los nombres de los canales de las tarjetas RFID.\nSe agregó validación de límite superior para el tiempo de ciclo.\nSe agregó un enlace al sitio web del fabricante.\noptimizaciones de código",
15
+ "pl": "zharmonizowane pliki i18n\nulepszone pliki README i teksty w języku angielskim\nprzerobione tłumaczenia we wszystkich językach\ndodano 5-sekundowy limit czasu do wszystkich żądań HTTP do ładowarek\nstałe zatrzymanie adaptera, gdy podczas uruchamiania nie można uzyskać dostępu do ładowarki; ostrzeżenie w przypadku braku dostępu do ładowarki\nnaprawiono niemiecki tekst zastępczy dla nazw kanałów kart RFID\ndodano walidację górnej granicy czasu cyklu\ndodano link do strony producenta\noptymalizacje kodu",
16
+ "uk": "гармонізовані файли i18n\nпокращений README та англійський текст\nперероблені переклади всіма мовами\nдодано 5-секундний тайм-аут для всіх HTTP-запитів до зарядних пристроїв\nвиправлено зупинку адаптера, коли зарядний пристрій недоступний під час запуску; попередження про кожен недоступний зарядний пристрій\nвиправлено резервний текст німецькою мовою для назв каналів RFID-карт\nдодано перевірку верхньої межі для часу циклу\nдодано посилання на сайт виробника\nоптимізації коду",
17
+ "zh-cn": "统一的 i18n 文件\n改进了README文件和英文文本\n对所有语言的翻译进行了重新润色\n对所有发往充电器的HTTP请求增加5秒超时时间\n启动时,如果充电器无法连接,则固定适配器停止工作;对每个无法连接的充电器发出警告。\n修复了 RFID 卡通道名称的德语备用文本\n增加了周期时间的上限验证\n添加了制造商网站的链接\n代码优化"
18
+ },
19
+ "1.0.3": {
20
+ "en": "added translations\nfixed state roles",
21
+ "de": "hinzugefügte Übersetzungen\nfeste Statusrollen",
22
+ "ru": "добавлены переводы\nфиксированные роли состояния",
23
+ "pt": "traduções adicionadas\nfunções de estado fixas",
24
+ "nl": "toegevoegde vertalingen\nvaste statusrollen",
25
+ "fr": "traductions ajoutées\nrôles d'état fixes",
26
+ "it": "traduzioni aggiunte\nruoli di stato fissi",
27
+ "es": "Se agregaron traducciones\nroles de estado fijo",
28
+ "pl": "dodano tłumaczenia\nstałe role państwowe",
29
+ "uk": "додані переклади\nролі фіксованого стану",
30
+ "zh-cn": "新增翻译\n固定状态角色"
31
+ },
6
32
  "1.0.2": {
7
33
  "en": "fix RFID data readout for gen 3+ chargers via API V2 (#802)\nprepared for beta repo\neliminate yarn\nupgraded adapter-core\nupdated axios\nupdated dependencies",
8
34
  "de": "RFID-Datenauslesung für Ladegeräte der 3. Generation und höher über API V2 beheben (#802)\nFür das Beta-Repository vorbereitet\nGarn entfernen\naufgerüsteter Adapterkern\naktualisiertes Axios\naktualisierte Abhängigkeiten",
@@ -67,32 +93,6 @@
67
93
  "pl": "dodano obsługę oprogramowania sprzętowego V60.0, V60.1, V60.2\nzmiany roku 2026\nzaktualizować osie\nzaktualizuj iobroker/testowanie (#759)",
68
94
  "uk": "додана підтримка мікропрограм V60.0, V60.1, V60.2\n2026 рік зміни\nоновити axios\nоновлення iobroker/тестування (#759)",
69
95
  "zh-cn": "添加了对固件 V60.0、V60.1、V60.2 的支持\n2026年的变化\n更新 axios\n更新 iobroker/测试 (#759)"
70
- },
71
- "0.21.2": {
72
- "en": "update NPM deployment system\ncode optimizations\nupdate dependencies",
73
- "de": "Aktualisieren Sie das NPM-Bereitstellungssystem\nCodeoptimierungen\nAbhängigkeiten aktualisieren",
74
- "ru": "обновить систему развертывания NPM\nоптимизация кода\nобновить зависимости",
75
- "pt": "atualizar o sistema de implantação NPM\notimizações de código\natualizar dependências",
76
- "nl": "update het NPM-implementatiesysteem\ncode-optimalisaties\nafhankelijkheden bijwerken",
77
- "fr": "mettre à jour le système de déploiement NPM\noptimisations de code\nmettre à jour les dépendances",
78
- "it": "aggiornare il sistema di distribuzione NPM\nottimizzazioni del codice\naggiornare le dipendenze",
79
- "es": "actualizar el sistema de implementación de NPM\noptimizaciones de código\nactualizar dependencias",
80
- "pl": "zaktualizuj system wdrażania NPM\noptymalizacje kodu\nzaktualizować zależności",
81
- "uk": "оновити систему розгортання NPM\nоптимізація коду\nоновити залежності",
82
- "zh-cn": "更新NPM部署系统\n代码优化\n更新依赖项"
83
- },
84
- "0.21.1": {
85
- "en": "update adapter-core\nupdate adapter-dev (#742)\nupdate chai system (#729)\nfix vulnerability with axios\nbump dependencies",
86
- "de": "Aktualisieren Sie Adapter-Core\nAdapter-dev aktualisieren (#742)\nAktualisieren Sie das Chai -System (#729)\nBeheben der Verwundbarkeit mit Axios\nBeuleabhängigkeiten",
87
- "ru": "Обновление адаптер-ядер\nОбновление адаптер-DEV (#742)\nОбновить систему Chai (#729)\nисправить уязвимость с помощью Axios\nУдар зависимости",
88
- "pt": "Atualize o adaptador-core\nAtualizar adaptador-Dev (#742)\nAtualizar sistema chai (#729)\nCorrija a vulnerabilidade com axios\nBump dependências",
89
- "nl": "Update adapter-core\nUpdate Adapter-Dev (#742)\nUpdate Chai System (#729)\nVergelijk de kwetsbaarheid met Axios\nBump -afhankelijkheden",
90
- "fr": "Mettre à jour l'adaptateur-noyau\nMettre à jour l'adaptateur-DEV (# 742)\nMettre à jour le système Chai (# 729)\nFixer la vulnérabilité avec Axios\ndépendances",
91
- "it": "Aggiorna l'adattatore-core\nAggiorna Adapter-Dev (#742)\nAggiorna il sistema Chai (#729)\nRisolvi la vulnerabilità con gli assios\ndipendenze bump",
92
- "es": "Actualizar el núcleo adaptador\nActualizar adaptador-dev (#742)\nActualizar el sistema Chai (#729)\nArreglar la vulnerabilidad con Axios\ndependencias de la protuberancia",
93
- "pl": "Zaktualizuj adapter\nAktualizacja adaptera-dev (#742)\nAktualizacja systemu Chai (#729)\nnaprawić podatność na AxiOS\nzależności od wypukłości",
94
- "uk": "Оновіть адаптер-ямочко\nОновити адаптер-DEV (#742)\nОновити систему Chai (#729)\nвиправити вразливість за допомогою Axios\nзалежності від удару",
95
- "zh-cn": "更新适配器核\n更新适配器-DEV(#742)\n更新柴系统(#729)\n用Axios修复漏洞\n凸起依赖性"
96
96
  }
97
97
  },
98
98
  "titleLang": {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "iobroker.go-e-charger",
3
- "version": "1.0.2",
3
+ "version": "1.0.4",
4
4
  "description": "Adapter for reading go-eCharger data",
5
5
  "author": {
6
6
  "name": "Hombach",