iobroker.laundrylens 0.4.5
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/LICENSE +21 -0
- package/README.md +174 -0
- package/admin/i18n/de/translations.json +186 -0
- package/admin/i18n/en/translations.json +186 -0
- package/admin/i18n/es/translations.json +186 -0
- package/admin/i18n/fr/translations.json +186 -0
- package/admin/i18n/it/translations.json +186 -0
- package/admin/i18n/nl/translations.json +186 -0
- package/admin/i18n/pl/translations.json +186 -0
- package/admin/i18n/pt/translations.json +186 -0
- package/admin/i18n/ru/translations.json +186 -0
- package/admin/i18n/uk/translations.json +186 -0
- package/admin/i18n/zh-cn/translations.json +186 -0
- package/admin/icon.png +0 -0
- package/admin/jsonConfig.json +266 -0
- package/admin/tab_m.html +2489 -0
- package/io-package.json +211 -0
- package/lib/cycleDetector.js +488 -0
- package/lib/mathUtils.js +180 -0
- package/lib/profileStore.js +770 -0
- package/lib/traceStore.js +297 -0
- package/lib/washDataManager.js +1852 -0
- package/main.js +1965 -0
- package/package.json +59 -0
|
@@ -0,0 +1,186 @@
|
|
|
1
|
+
{
|
|
2
|
+
"Device name": "Apparaatnaam",
|
|
3
|
+
"e.g. Washing machine": "bijv. Wasmachine",
|
|
4
|
+
"Display name in the dashboard": "Weergavenaam in het dashboard",
|
|
5
|
+
"Device type": "Apparaattype",
|
|
6
|
+
"🧺 Washing machine": "🧺 Wasmachine",
|
|
7
|
+
"🍽️ Dishwasher": "🍽️ Vaatwasser",
|
|
8
|
+
"♨️ Dryer": "♨️ Droger",
|
|
9
|
+
"🔄 Washer-dryer": "🔄 Was-droogcombinatie",
|
|
10
|
+
"⚙️ Other": "⚙️ Overig",
|
|
11
|
+
"Power sensor (watt)": "Vermogenssensor (watt)",
|
|
12
|
+
"ioBroker data point providing the current power draw in watts": "ioBroker-datapunt met het huidige vermogensverbruik in watt",
|
|
13
|
+
"Detection thresholds": "Detectiedrempels",
|
|
14
|
+
"Power-on threshold (W)": "Inschakeldrempel (W)",
|
|
15
|
+
"Power level from which the device is considered running. Recommended: 10W for all device types": "Vermogensniveau vanaf waar het apparaat als actief wordt beschouwd. Aanbevolen: 10W voor alle apparaattypen",
|
|
16
|
+
"Off delay (min)": "Uitschakelvertraging (min)",
|
|
17
|
+
"How long power must stay below the threshold before the cycle ends. Recommended: washing machine 5 min · dryer 8 min · dishwasher 8 min · washer-dryer 10 min": "Hoe lang het vermogen onder de drempel moet blijven voordat de cyclus eindigt. Aanbevolen: wasmachine 5 min · droger 8 min · vaatwasser 8 min · was-droogcombinatie 10 min",
|
|
18
|
+
"Start energy gate (Wh)": "Startenergiedrempel (Wh)",
|
|
19
|
+
"Minimum energy after start before the cycle is counted (prevents false starts). Recommended: washing machine 2 Wh · dryer 5 Wh · washer-dryer 5 Wh": "Minimale energie na start voordat de cyclus wordt geteld (voorkomt valse starts). Aanbevolen: wasmachine 2 Wh · droger 5 Wh · was-droogcombinatie 5 Wh",
|
|
20
|
+
"Program detection": "Programmaherkenning",
|
|
21
|
+
"Duration tolerance (0.05–0.5)": "Duurtolerantie (0,05–0,5)",
|
|
22
|
+
"How much the run time may deviate from the profile. 0.2 = ±20%": "Hoeveel de looptijd mag afwijken van het profiel. 0,2 = ±20%",
|
|
23
|
+
"Matching interval (min)": "Matchinterval (min)",
|
|
24
|
+
"How often the program is matched. Recommended: 5 min for all device types": "Hoe vaak het programma wordt vergeleken. Aanbevolen: 5 min voor alle apparaattypen",
|
|
25
|
+
"Match confirmations (count)": "Matchbevestigingen (aantal)",
|
|
26
|
+
"How many times in a row the same program must be detected. 3 = reliable · 2 = faster": "Hoeveel keer achter elkaar hetzelfde programma moet worden herkend. 3 = betrouwbaar · 2 = sneller",
|
|
27
|
+
"Auto-confirm from confidence (%)": "Automatische bevestiging vanaf betrouwbaarheid (%)",
|
|
28
|
+
"From this confidence level the cycle is confirmed automatically. 0 = disabled · 85 = recommended": "Vanaf dit betrouwbaarheidsniveau wordt de cyclus automatisch bevestigd. 0 = uitgeschakeld · 85 = aanbevolen",
|
|
29
|
+
"Instant adoption from confidence (%)": "Directe overname vanaf betrouwbaarheid (%)",
|
|
30
|
+
"During a running cycle: if the live preview repeatedly (2x) shows at least this confidence, the program is adopted immediately instead of waiting for the normal, slower detection.": "Tijdens een lopende cyclus: als de live-voorbeeldweergave herhaaldelijk (2x) minstens deze betrouwbaarheid toont, wordt het programma direct overgenomen in plaats van te wachten op de normale, langzamere herkenning.",
|
|
31
|
+
"Program detection threshold (%)": "Programmaherkenningsdrempel (%)",
|
|
32
|
+
"From this confidence a program counts as detected (and is shown). Below it, it stays 'detecting...'. 55 = recommended": "Vanaf deze betrouwbaarheid telt een programma als herkend (en wordt getoond). Daaronder blijft het 'detecting...'. 55 = aanbevolen",
|
|
33
|
+
"Notify also for probable program": "Ook melden bij waarschijnlijk programma",
|
|
34
|
+
"Send a Telegram update as soon as a program is detected - even if confidence is below the auto-confirm threshold": "Stuur een Telegram-update zodra een programma wordt herkend - zelfs als de betrouwbaarheid onder de automatische bevestigingsdrempel ligt",
|
|
35
|
+
"Dryer settings": "Drogerinstellingen",
|
|
36
|
+
"Ignore anti-crease phase": "Kreukbeschermingsfase negeren",
|
|
37
|
+
"ON: cycle ends immediately at the beep, the anti-crease phase is ignored (simple, sufficient for most dryers). OFF: the adapter actively tries to detect when the cycle is really finished across the anti-crease phase (needs a saved reference pattern under 'Programs').": "AAN: cyclus eindigt direct bij de piep, de kreukbeschermingsfase wordt genegeerd (eenvoudig, voldoende voor de meeste drogers). UIT: de adapter probeert actief te detecteren wanneer de cyclus echt klaar is tijdens de kreukbeschermingsfase (heeft een opgeslagen referentiepatroon onder 'Programma's' nodig).",
|
|
38
|
+
"+ Create": "+ Aanmaken",
|
|
39
|
+
"Adapter": "Adapter",
|
|
40
|
+
"All (broadcast)": "Alle (broadcast)",
|
|
41
|
+
"All cycles confirmed!": "Alle cycli bevestigd!",
|
|
42
|
+
"All data deleted!": "Alle gegevens verwijderd!",
|
|
43
|
+
"All devices": "Alle apparaten",
|
|
44
|
+
"Anti-crease pattern deleted": "Kreukbeschermingspatroon verwijderd",
|
|
45
|
+
"Anti-crease pattern saved!": "Kreukbeschermingspatroon opgeslagen!",
|
|
46
|
+
"Apply": "Toepassen",
|
|
47
|
+
"Assign program": "Programma toewijzen",
|
|
48
|
+
"Automatic": "Automatisch",
|
|
49
|
+
"Back up configuration": "Configuratie back-uppen",
|
|
50
|
+
"Based on": "Gebaseerd op",
|
|
51
|
+
"Cancel": "Annuleren",
|
|
52
|
+
"Choose a recorded cycle as the anti-crease reference. The adapter will then automatically ignore this pattern after drying.": "Kies een opgenomen cyclus als kreukbeschermingsreferentie. De adapter negeert dit patroon daarna automatisch na het drogen.",
|
|
53
|
+
"Choose a split point in the graph": "Kies een splitspunt in de grafiek",
|
|
54
|
+
"Choose the program for this cycle:": "Kies het programma voor deze cyclus:",
|
|
55
|
+
"Confidence": "Betrouwbaarheid",
|
|
56
|
+
"Confirm or correct cycles marked with ❓. This automatically improves detection.": "Bevestig of corrigeer cycli gemarkeerd met ❓. Dit verbetert automatisch de herkenning.",
|
|
57
|
+
"Confirmed": "Bevestigd",
|
|
58
|
+
"Confirmed – adapter is learning!": "Bevestigd – adapter leert!",
|
|
59
|
+
"Consumption": "Verbruik",
|
|
60
|
+
"Correct & learn": "Corrigeren & leren",
|
|
61
|
+
"Correct – confirm": "Klopt – bevestigen",
|
|
62
|
+
"Corrected – adapter is learning!": "Gecorrigeerd – adapter leert!",
|
|
63
|
+
"Create new program": "Nieuw programma aanmaken",
|
|
64
|
+
"Cycle deleted": "Cyclus verwijderd",
|
|
65
|
+
"Cycle history": "Cyclusgeschiedenis",
|
|
66
|
+
"Delete": "Verwijderen",
|
|
67
|
+
"Delete all data for \"": "Alle gegevens verwijderen voor \"",
|
|
68
|
+
"Deleted": "Verwijderd",
|
|
69
|
+
"Detected as": "Herkend als",
|
|
70
|
+
"Device": "Apparaat",
|
|
71
|
+
"Device:": "Apparaat:",
|
|
72
|
+
"Duration": "Duur",
|
|
73
|
+
"Duration (min)": "Duur (min)",
|
|
74
|
+
"Duration tolerance": "Duurtolerantie",
|
|
75
|
+
"Elapsed time": "Verstreken tijd",
|
|
76
|
+
"Ending…": "Eindigt…",
|
|
77
|
+
"Error": "Fout",
|
|
78
|
+
"Error loading": "Fout bij laden",
|
|
79
|
+
"Export downloaded": "Export gedownload",
|
|
80
|
+
"Export failed": "Export mislukt",
|
|
81
|
+
"Go to review →": "Naar controle →",
|
|
82
|
+
"Invalid JSON file": "Ongeldig JSON-bestand",
|
|
83
|
+
"JSON appears here after export…": "JSON verschijnt hier na export…",
|
|
84
|
+
"Last cycle": "Laatste cyclus",
|
|
85
|
+
"Last cycle not confidently detected. Please confirm or correct.": "Laatste cyclus niet zeker herkend. Bevestig of corrigeer.",
|
|
86
|
+
"Learned on": "Geleerd op",
|
|
87
|
+
"Live status": "Livestatus",
|
|
88
|
+
"Loading…": "Laden…",
|
|
89
|
+
"Min. interval (min)": "Min. interval (min)",
|
|
90
|
+
"Near-done dev. %": "Afw. bijna klaar %",
|
|
91
|
+
"Near-done dev. min": "Afw. bijna klaar min",
|
|
92
|
+
"Near-done from (%)": "Bijna klaar vanaf (%)",
|
|
93
|
+
"New name": "Nieuwe naam",
|
|
94
|
+
"No anti-crease pattern saved yet.": "Nog geen kreukbeschermingspatroon opgeslagen.",
|
|
95
|
+
"No cycle recorded yet.": "Nog geen cyclus opgenomen.",
|
|
96
|
+
"No cycles recorded yet.": "Nog geen cycli opgenomen.",
|
|
97
|
+
"No cycles with curve data available": "Geen cycli met curvegegevens beschikbaar",
|
|
98
|
+
"No device selected": "Geen apparaat geselecteerd",
|
|
99
|
+
"No devices configured.": "Geen apparaten geconfigureerd.",
|
|
100
|
+
"No programs created yet.": "Nog geen programma's aangemaakt.",
|
|
101
|
+
"No suggestions available": "Geen suggesties beschikbaar",
|
|
102
|
+
"No trace available": "Geen trace beschikbaar",
|
|
103
|
+
"No trace data": "Geen tracegegevens",
|
|
104
|
+
"Off": "Uit",
|
|
105
|
+
"Off delay": "Uitschakelvertraging",
|
|
106
|
+
"Open": "Open",
|
|
107
|
+
"Paused": "Gepauzeerd",
|
|
108
|
+
"Placeholders:": "Tijdelijke aanduidingen:",
|
|
109
|
+
"Please choose an adapter": "Kies een adapter",
|
|
110
|
+
"Please select a cycle": "Selecteer een cyclus",
|
|
111
|
+
"Power curve": "Vermogenscurve",
|
|
112
|
+
"Power-on threshold": "Inschakeldrempel",
|
|
113
|
+
"Profiles, cycles, and traces will be permanently deleted!": "Profielen, cycli en traces worden permanent verwijderd!",
|
|
114
|
+
"Program": "Programma",
|
|
115
|
+
"Program name": "Programmanaam",
|
|
116
|
+
"Program override": "Programma-override",
|
|
117
|
+
"Progress": "Voortgang",
|
|
118
|
+
"Really delete program \"": "Programma \"",
|
|
119
|
+
"Really delete the saved anti-crease pattern?": "Opgeslagen kreukbeschermingspatroon echt verwijderen?",
|
|
120
|
+
"Really delete this cycle?": "Deze cyclus echt verwijderen?",
|
|
121
|
+
"Recipient": "Ontvanger",
|
|
122
|
+
"Reference cycle": "Referentiecyclus",
|
|
123
|
+
"Renamed": "Hernoemd",
|
|
124
|
+
"Running ⚙️": "Actief ⚙️",
|
|
125
|
+
"Save": "Opslaan",
|
|
126
|
+
"Save as program": "Opslaan als programma",
|
|
127
|
+
"Saved programs": "Opgeslagen programma's",
|
|
128
|
+
"Split": "Splitsen",
|
|
129
|
+
"Split!": "Gesplitst!",
|
|
130
|
+
"Start": "Start",
|
|
131
|
+
"Start energy gate": "Startenergiedrempel",
|
|
132
|
+
"Starting…": "Start…",
|
|
133
|
+
"Status": "Status",
|
|
134
|
+
"Test message sent!": "Testbericht verzonden!",
|
|
135
|
+
"Time remaining": "Resterende tijd",
|
|
136
|
+
"Trim": "Bijsnijden",
|
|
137
|
+
"Unknown": "Onbekend",
|
|
138
|
+
"Which program was it actually?": "Welk programma was het echt?",
|
|
139
|
+
"Wrong program": "Verkeerd programma",
|
|
140
|
+
"confidence": "betrouwbaarheid",
|
|
141
|
+
"cycles": "cycli",
|
|
142
|
+
"e.g. Cotton 60°": "bijv. Katoen 60°",
|
|
143
|
+
"e.g. name@example.com (blank = adapter default)": "bijv. naam@voorbeeld.com (leeg = adapterstandaard)",
|
|
144
|
+
"fields with >10% deviation only:": "alleen velden met >10% afwijking:",
|
|
145
|
+
"min lock period": "min blokkeertijd",
|
|
146
|
+
"– Choose adapter –": "– Kies adapter –",
|
|
147
|
+
"– Choose cycle –": "– Kies cyclus –",
|
|
148
|
+
"– No adapter found –": "– Geen adapter gevonden –",
|
|
149
|
+
"– No adapter –": "– Geen adapter –",
|
|
150
|
+
"– No cycle selected –": "– Geen cyclus geselecteerd –",
|
|
151
|
+
"⏹ End cycle": "⏹ Cyclus beëindigen",
|
|
152
|
+
"⚠️ Review needed": "⚠️ Controle vereist",
|
|
153
|
+
"✅ All cycles confirmed!": "✅ Alle cycli bevestigd!",
|
|
154
|
+
"✅ Done message": "✅ Voltooiingsbericht",
|
|
155
|
+
"✅ Review": "✅ Controle",
|
|
156
|
+
"✏️ Rename program": "✏️ Programma hernoemen",
|
|
157
|
+
"✓ Assign & learn": "✓ Toewijzen & leren",
|
|
158
|
+
"⬆ Import": "⬆ Importeren",
|
|
159
|
+
"⬇ Export": "⬇ Exporteren",
|
|
160
|
+
"🌀 Anti-crease detection": "🌀 Kreukbeschermingsdetectie",
|
|
161
|
+
"🌀 Save": "🌀 Opslaan",
|
|
162
|
+
"🎮 Live control": "🎮 Live-besturing",
|
|
163
|
+
"🏷 Assign program": "🏷 Programma toewijzen",
|
|
164
|
+
"💡 Suggested settings": "💡 Voorgestelde instellingen",
|
|
165
|
+
"💡 The adapter learns the real duration automatically after 2–3 cycles.": "💡 De adapter leert automatisch de echte duur na 2–3 cycli.",
|
|
166
|
+
"💾 Export": "💾 Exporteren",
|
|
167
|
+
"💾 Save": "💾 Opslaan",
|
|
168
|
+
"📊 Overview": "📊 Overzicht",
|
|
169
|
+
"🔄 Correct program": "🔄 Programma corrigeren",
|
|
170
|
+
"🔄 Update message": "🔄 Updatebericht",
|
|
171
|
+
"🔔 Notifications": "🔔 Meldingen",
|
|
172
|
+
"🔔 Test": "🔔 Test",
|
|
173
|
+
"🕐 Cycles": "🕐 Cycli",
|
|
174
|
+
"🗂 Programs": "🗂 Programma's",
|
|
175
|
+
"🗑 Delete": "🗑 Verwijderen",
|
|
176
|
+
"🟢 Start message": "🟢 Startbericht",
|
|
177
|
+
"🤖 Automatic": "🤖 Automatisch",
|
|
178
|
+
"🧺 {device} running\n⏳ Determining time…": "🧺 {device} actief\n⏳ Tijd wordt bepaald…",
|
|
179
|
+
"🧺 {device} update\n✅ Done at {endTime}\n📊 Program: {program}": "🧺 {device} update\n✅ Klaar om {endTime}\n📊 Programma: {program}",
|
|
180
|
+
"🧺 {device} update\n✅ Done at {endTime}\n[↩️ Before: {prevTime}]\n📊 Program: {program}\n📈 Progress: {progress}%": "🧺 {device} update\n✅ Klaar om {endTime}\n[↩️ Voorheen: {prevTime}]\n📊 Programma: {program}\n📈 Voortgang: {progress}%",
|
|
181
|
+
"🧺 {device} done!\n⏱️ Total runtime: {duration} min\n📊 Program: {program}\n⚡ Consumption: {energy} kWh": "🧺 {device} klaar!\n⏱️ Totale looptijd: {duration} min\n📊 Programma: {program}\n⚡ Verbruik: {energy} kWh",
|
|
182
|
+
"Apply suggested value?": "Voorgesteld waarde toepassen?",
|
|
183
|
+
"Ignore": "Negeren",
|
|
184
|
+
"Error saving": "Fout bij opslaan",
|
|
185
|
+
"Setting saved! Restarting adapter…": "Instelling opgeslagen! Adapter wordt herstart…"
|
|
186
|
+
}
|
|
@@ -0,0 +1,186 @@
|
|
|
1
|
+
{
|
|
2
|
+
"Device name": "Nazwa urządzenia",
|
|
3
|
+
"e.g. Washing machine": "np. Pralka",
|
|
4
|
+
"Display name in the dashboard": "Nazwa wyświetlana na pulpicie",
|
|
5
|
+
"Device type": "Typ urządzenia",
|
|
6
|
+
"🧺 Washing machine": "🧺 Pralka",
|
|
7
|
+
"🍽️ Dishwasher": "🍽️ Zmywarka",
|
|
8
|
+
"♨️ Dryer": "♨️ Suszarka",
|
|
9
|
+
"🔄 Washer-dryer": "🔄 Pralko-suszarka",
|
|
10
|
+
"⚙️ Other": "⚙️ Inne",
|
|
11
|
+
"Power sensor (watt)": "Czujnik mocy (wat)",
|
|
12
|
+
"ioBroker data point providing the current power draw in watts": "Punkt danych ioBroker z bieżącym poborem mocy w watach",
|
|
13
|
+
"Detection thresholds": "Progi wykrywania",
|
|
14
|
+
"Power-on threshold (W)": "Próg włączenia (W)",
|
|
15
|
+
"Power level from which the device is considered running. Recommended: 10W for all device types": "Poziom mocy, od którego urządzenie uznaje się za działające. Zalecane: 10W dla wszystkich typów urządzeń",
|
|
16
|
+
"Off delay (min)": "Opóźnienie wyłączenia (min)",
|
|
17
|
+
"How long power must stay below the threshold before the cycle ends. Recommended: washing machine 5 min · dryer 8 min · dishwasher 8 min · washer-dryer 10 min": "Jak długo moc musi pozostawać poniżej progu, zanim cykl się zakończy. Zalecane: pralka 5 min · suszarka 8 min · zmywarka 8 min · pralko-suszarka 10 min",
|
|
18
|
+
"Start energy gate (Wh)": "Próg energii startowej (Wh)",
|
|
19
|
+
"Minimum energy after start before the cycle is counted (prevents false starts). Recommended: washing machine 2 Wh · dryer 5 Wh · washer-dryer 5 Wh": "Minimalna energia po starcie, zanim cykl zostanie zaliczony (zapobiega fałszywym startom). Zalecane: pralka 2 Wh · suszarka 5 Wh · pralko-suszarka 5 Wh",
|
|
20
|
+
"Program detection": "Wykrywanie programu",
|
|
21
|
+
"Duration tolerance (0.05–0.5)": "Tolerancja czasu trwania (0,05–0,5)",
|
|
22
|
+
"How much the run time may deviate from the profile. 0.2 = ±20%": "O ile czas działania może odbiegać od profilu. 0,2 = ±20%",
|
|
23
|
+
"Matching interval (min)": "Interwał dopasowania (min)",
|
|
24
|
+
"How often the program is matched. Recommended: 5 min for all device types": "Jak często dopasowywany jest program. Zalecane: 5 min dla wszystkich typów urządzeń",
|
|
25
|
+
"Match confirmations (count)": "Potwierdzenia dopasowania (liczba)",
|
|
26
|
+
"How many times in a row the same program must be detected. 3 = reliable · 2 = faster": "Ile razy z rzędu ten sam program musi zostać wykryty. 3 = niezawodnie · 2 = szybciej",
|
|
27
|
+
"Auto-confirm from confidence (%)": "Automatyczne potwierdzenie od pewności (%)",
|
|
28
|
+
"From this confidence level the cycle is confirmed automatically. 0 = disabled · 85 = recommended": "Od tego poziomu pewności cykl jest potwierdzany automatycznie. 0 = wyłączone · 85 = zalecane",
|
|
29
|
+
"Instant adoption from confidence (%)": "Natychmiastowe przyjęcie od pewności (%)",
|
|
30
|
+
"During a running cycle: if the live preview repeatedly (2x) shows at least this confidence, the program is adopted immediately instead of waiting for the normal, slower detection.": "Podczas trwającego cyklu: jeśli podgląd na żywo wielokrotnie (2x) pokazuje co najmniej taką pewność, program jest natychmiast przyjmowany zamiast czekać na normalne, wolniejsze wykrywanie.",
|
|
31
|
+
"Program detection threshold (%)": "Próg wykrywania programu (%)",
|
|
32
|
+
"From this confidence a program counts as detected (and is shown). Below it, it stays 'detecting...'. 55 = recommended": "Od tej pewności program uznaje się za wykryty (i jest pokazywany). Poniżej pozostaje 'detecting...'. 55 = zalecane",
|
|
33
|
+
"Notify also for probable program": "Powiadamiaj także o prawdopodobnym programie",
|
|
34
|
+
"Send a Telegram update as soon as a program is detected - even if confidence is below the auto-confirm threshold": "Wyślij aktualizację Telegram, gdy tylko zostanie wykryty program - nawet jeśli pewność jest poniżej progu automatycznego potwierdzenia",
|
|
35
|
+
"Dryer settings": "Ustawienia suszarki",
|
|
36
|
+
"Ignore anti-crease phase": "Ignoruj fazę zapobiegania gnieceniu",
|
|
37
|
+
"ON: cycle ends immediately at the beep, the anti-crease phase is ignored (simple, sufficient for most dryers). OFF: the adapter actively tries to detect when the cycle is really finished across the anti-crease phase (needs a saved reference pattern under 'Programs').": "WŁ.: cykl kończy się natychmiast po sygnale dźwiękowym, faza zapobiegania gnieceniu jest ignorowana (proste, wystarczające dla większości suszarek). WYŁ.: adapter aktywnie próbuje wykryć, kiedy cykl naprawdę się zakończył podczas fazy zapobiegania gnieceniu (wymaga zapisanego wzorca referencyjnego w 'Programy').",
|
|
38
|
+
"+ Create": "+ Utwórz",
|
|
39
|
+
"Adapter": "Adapter",
|
|
40
|
+
"All (broadcast)": "Wszyscy (broadcast)",
|
|
41
|
+
"All cycles confirmed!": "Wszystkie cykle potwierdzone!",
|
|
42
|
+
"All data deleted!": "Wszystkie dane usunięte!",
|
|
43
|
+
"All devices": "Wszystkie urządzenia",
|
|
44
|
+
"Anti-crease pattern deleted": "Wzorzec zapobiegania gnieceniu usunięty",
|
|
45
|
+
"Anti-crease pattern saved!": "Wzorzec zapobiegania gnieceniu zapisany!",
|
|
46
|
+
"Apply": "Zastosuj",
|
|
47
|
+
"Assign program": "Przypisz program",
|
|
48
|
+
"Automatic": "Automatyczny",
|
|
49
|
+
"Back up configuration": "Utwórz kopię zapasową konfiguracji",
|
|
50
|
+
"Based on": "Na podstawie",
|
|
51
|
+
"Cancel": "Anuluj",
|
|
52
|
+
"Choose a recorded cycle as the anti-crease reference. The adapter will then automatically ignore this pattern after drying.": "Wybierz zarejestrowany cykl jako wzorzec zapobiegania gnieceniu. Adapter będzie następnie automatycznie ignorował ten wzorzec po suszeniu.",
|
|
53
|
+
"Choose a split point in the graph": "Wybierz punkt podziału na wykresie",
|
|
54
|
+
"Choose the program for this cycle:": "Wybierz program dla tego cyklu:",
|
|
55
|
+
"Confidence": "Pewność",
|
|
56
|
+
"Confirm or correct cycles marked with ❓. This automatically improves detection.": "Potwierdź lub popraw cykle oznaczone ❓. To automatycznie poprawia wykrywanie.",
|
|
57
|
+
"Confirmed": "Potwierdzone",
|
|
58
|
+
"Confirmed – adapter is learning!": "Potwierdzone – adapter się uczy!",
|
|
59
|
+
"Consumption": "Zużycie",
|
|
60
|
+
"Correct & learn": "Popraw i naucz",
|
|
61
|
+
"Correct – confirm": "Zgadza się – potwierdź",
|
|
62
|
+
"Corrected – adapter is learning!": "Poprawione – adapter się uczy!",
|
|
63
|
+
"Create new program": "Utwórz nowy program",
|
|
64
|
+
"Cycle deleted": "Cykl usunięty",
|
|
65
|
+
"Cycle history": "Historia cykli",
|
|
66
|
+
"Delete": "Usuń",
|
|
67
|
+
"Delete all data for \"": "Usuń wszystkie dane dla \"",
|
|
68
|
+
"Deleted": "Usunięto",
|
|
69
|
+
"Detected as": "Wykryto jako",
|
|
70
|
+
"Device": "Urządzenie",
|
|
71
|
+
"Device:": "Urządzenie:",
|
|
72
|
+
"Duration": "Czas trwania",
|
|
73
|
+
"Duration (min)": "Czas trwania (min)",
|
|
74
|
+
"Duration tolerance": "Tolerancja czasu trwania",
|
|
75
|
+
"Elapsed time": "Czas, który upłynął",
|
|
76
|
+
"Ending…": "Kończy się…",
|
|
77
|
+
"Error": "Błąd",
|
|
78
|
+
"Error loading": "Błąd ładowania",
|
|
79
|
+
"Export downloaded": "Eksport pobrany",
|
|
80
|
+
"Export failed": "Eksport nie powiódł się",
|
|
81
|
+
"Go to review →": "Przejdź do przeglądu →",
|
|
82
|
+
"Invalid JSON file": "Nieprawidłowy plik JSON",
|
|
83
|
+
"JSON appears here after export…": "JSON pojawi się tutaj po eksporcie…",
|
|
84
|
+
"Last cycle": "Ostatni cykl",
|
|
85
|
+
"Last cycle not confidently detected. Please confirm or correct.": "Ostatni cykl nie został wykryty z pewnością. Potwierdź lub popraw.",
|
|
86
|
+
"Learned on": "Nauczono się",
|
|
87
|
+
"Live status": "Status na żywo",
|
|
88
|
+
"Loading…": "Ładowanie…",
|
|
89
|
+
"Min. interval (min)": "Min. odstęp (min)",
|
|
90
|
+
"Near-done dev. %": "Odch. prawie gotowe %",
|
|
91
|
+
"Near-done dev. min": "Odch. prawie gotowe min",
|
|
92
|
+
"Near-done from (%)": "Prawie gotowe od (%)",
|
|
93
|
+
"New name": "Nowa nazwa",
|
|
94
|
+
"No anti-crease pattern saved yet.": "Nie zapisano jeszcze wzorca zapobiegania gnieceniu.",
|
|
95
|
+
"No cycle recorded yet.": "Nie zarejestrowano jeszcze żadnego cyklu.",
|
|
96
|
+
"No cycles recorded yet.": "Nie zarejestrowano jeszcze żadnych cykli.",
|
|
97
|
+
"No cycles with curve data available": "Brak cykli z danymi krzywej",
|
|
98
|
+
"No device selected": "Nie wybrano urządzenia",
|
|
99
|
+
"No devices configured.": "Nie skonfigurowano żadnych urządzeń.",
|
|
100
|
+
"No programs created yet.": "Nie utworzono jeszcze żadnych programów.",
|
|
101
|
+
"No suggestions available": "Brak dostępnych sugestii",
|
|
102
|
+
"No trace available": "Brak dostępnego śladu",
|
|
103
|
+
"No trace data": "Brak danych śladu",
|
|
104
|
+
"Off": "Wyłączony",
|
|
105
|
+
"Off delay": "Opóźnienie wyłączenia",
|
|
106
|
+
"Open": "Otwarte",
|
|
107
|
+
"Paused": "Wstrzymane",
|
|
108
|
+
"Placeholders:": "Symbole zastępcze:",
|
|
109
|
+
"Please choose an adapter": "Wybierz adapter",
|
|
110
|
+
"Please select a cycle": "Wybierz cykl",
|
|
111
|
+
"Power curve": "Krzywa mocy",
|
|
112
|
+
"Power-on threshold": "Próg włączenia",
|
|
113
|
+
"Profiles, cycles, and traces will be permanently deleted!": "Profile, cykle i ślady zostaną trwale usunięte!",
|
|
114
|
+
"Program": "Program",
|
|
115
|
+
"Program name": "Nazwa programu",
|
|
116
|
+
"Program override": "Nadpisanie programu",
|
|
117
|
+
"Progress": "Postęp",
|
|
118
|
+
"Really delete program \"": "Naprawdę usunąć program \"",
|
|
119
|
+
"Really delete the saved anti-crease pattern?": "Naprawdę usunąć zapisany wzorzec zapobiegania gnieceniu?",
|
|
120
|
+
"Really delete this cycle?": "Naprawdę usunąć ten cykl?",
|
|
121
|
+
"Recipient": "Odbiorca",
|
|
122
|
+
"Reference cycle": "Cykl referencyjny",
|
|
123
|
+
"Renamed": "Zmieniono nazwę",
|
|
124
|
+
"Running ⚙️": "Działa ⚙️",
|
|
125
|
+
"Save": "Zapisz",
|
|
126
|
+
"Save as program": "Zapisz jako program",
|
|
127
|
+
"Saved programs": "Zapisane programy",
|
|
128
|
+
"Split": "Podziel",
|
|
129
|
+
"Split!": "Podzielono!",
|
|
130
|
+
"Start": "Start",
|
|
131
|
+
"Start energy gate": "Próg energii startowej",
|
|
132
|
+
"Starting…": "Uruchamianie…",
|
|
133
|
+
"Status": "Status",
|
|
134
|
+
"Test message sent!": "Wysłano wiadomość testową!",
|
|
135
|
+
"Time remaining": "Pozostały czas",
|
|
136
|
+
"Trim": "Przytnij",
|
|
137
|
+
"Unknown": "Nieznany",
|
|
138
|
+
"Which program was it actually?": "Jaki program to był naprawdę?",
|
|
139
|
+
"Wrong program": "Zły program",
|
|
140
|
+
"confidence": "pewność",
|
|
141
|
+
"cycles": "cykli",
|
|
142
|
+
"e.g. Cotton 60°": "np. Bawełna 60°",
|
|
143
|
+
"e.g. name@example.com (blank = adapter default)": "np. nazwa@przyklad.com (puste = domyślne adaptera)",
|
|
144
|
+
"fields with >10% deviation only:": "tylko pola z odchyleniem >10%:",
|
|
145
|
+
"min lock period": "min blokady",
|
|
146
|
+
"– Choose adapter –": "– Wybierz adapter –",
|
|
147
|
+
"– Choose cycle –": "– Wybierz cykl –",
|
|
148
|
+
"– No adapter found –": "– Nie znaleziono adaptera –",
|
|
149
|
+
"– No adapter –": "– Brak adaptera –",
|
|
150
|
+
"– No cycle selected –": "– Nie wybrano cyklu –",
|
|
151
|
+
"⏹ End cycle": "⏹ Zakończ cykl",
|
|
152
|
+
"⚠️ Review needed": "⚠️ Wymagany przegląd",
|
|
153
|
+
"✅ All cycles confirmed!": "✅ Wszystkie cykle potwierdzone!",
|
|
154
|
+
"✅ Done message": "✅ Wiadomość o zakończeniu",
|
|
155
|
+
"✅ Review": "✅ Przegląd",
|
|
156
|
+
"✏️ Rename program": "✏️ Zmień nazwę programu",
|
|
157
|
+
"✓ Assign & learn": "✓ Przypisz i naucz",
|
|
158
|
+
"⬆ Import": "⬆ Import",
|
|
159
|
+
"⬇ Export": "⬇ Eksport",
|
|
160
|
+
"🌀 Anti-crease detection": "🌀 Wykrywanie zapobiegania gnieceniu",
|
|
161
|
+
"🌀 Save": "🌀 Zapisz",
|
|
162
|
+
"🎮 Live control": "🎮 Sterowanie na żywo",
|
|
163
|
+
"🏷 Assign program": "🏷 Przypisz program",
|
|
164
|
+
"💡 Suggested settings": "💡 Sugerowane ustawienia",
|
|
165
|
+
"💡 The adapter learns the real duration automatically after 2–3 cycles.": "💡 Adapter automatycznie uczy się rzeczywistego czasu trwania po 2–3 cyklach.",
|
|
166
|
+
"💾 Export": "💾 Eksport",
|
|
167
|
+
"💾 Save": "💾 Zapisz",
|
|
168
|
+
"📊 Overview": "📊 Przegląd",
|
|
169
|
+
"🔄 Correct program": "🔄 Popraw program",
|
|
170
|
+
"🔄 Update message": "🔄 Wiadomość aktualizacji",
|
|
171
|
+
"🔔 Notifications": "🔔 Powiadomienia",
|
|
172
|
+
"🔔 Test": "🔔 Test",
|
|
173
|
+
"🕐 Cycles": "🕐 Cykle",
|
|
174
|
+
"🗂 Programs": "🗂 Programy",
|
|
175
|
+
"🗑 Delete": "🗑 Usuń",
|
|
176
|
+
"🟢 Start message": "🟢 Wiadomość startowa",
|
|
177
|
+
"🤖 Automatic": "🤖 Automatyczny",
|
|
178
|
+
"🧺 {device} running\n⏳ Determining time…": "🧺 {device} działa\n⏳ Określanie czasu…",
|
|
179
|
+
"🧺 {device} update\n✅ Done at {endTime}\n📊 Program: {program}": "🧺 {device} aktualizacja\n✅ Gotowe o {endTime}\n📊 Program: {program}",
|
|
180
|
+
"🧺 {device} update\n✅ Done at {endTime}\n[↩️ Before: {prevTime}]\n📊 Program: {program}\n📈 Progress: {progress}%": "🧺 {device} aktualizacja\n✅ Gotowe o {endTime}\n[↩️ Wcześniej: {prevTime}]\n📊 Program: {program}\n📈 Postęp: {progress}%",
|
|
181
|
+
"🧺 {device} done!\n⏱️ Total runtime: {duration} min\n📊 Program: {program}\n⚡ Consumption: {energy} kWh": "🧺 {device} gotowe!\n⏱️ Całkowity czas: {duration} min\n📊 Program: {program}\n⚡ Zużycie: {energy} kWh",
|
|
182
|
+
"Apply suggested value?": "Zastosować sugerowaną wartość?",
|
|
183
|
+
"Ignore": "Ignoruj",
|
|
184
|
+
"Error saving": "Błąd zapisu",
|
|
185
|
+
"Setting saved! Restarting adapter…": "Ustawienie zapisane! Ponowne uruchamianie adaptera…"
|
|
186
|
+
}
|
|
@@ -0,0 +1,186 @@
|
|
|
1
|
+
{
|
|
2
|
+
"Device name": "Nome do dispositivo",
|
|
3
|
+
"e.g. Washing machine": "ex. Máquina de lavar",
|
|
4
|
+
"Display name in the dashboard": "Nome de exibição no painel",
|
|
5
|
+
"Device type": "Tipo de dispositivo",
|
|
6
|
+
"🧺 Washing machine": "🧺 Máquina de lavar",
|
|
7
|
+
"🍽️ Dishwasher": "🍽️ Lava-louças",
|
|
8
|
+
"♨️ Dryer": "♨️ Secadora",
|
|
9
|
+
"🔄 Washer-dryer": "🔄 Lava e seca",
|
|
10
|
+
"⚙️ Other": "⚙️ Outro",
|
|
11
|
+
"Power sensor (watt)": "Sensor de potência (watt)",
|
|
12
|
+
"ioBroker data point providing the current power draw in watts": "Ponto de dados ioBroker com o consumo de energia atual em watts",
|
|
13
|
+
"Detection thresholds": "Limiares de detecção",
|
|
14
|
+
"Power-on threshold (W)": "Limiar de ligação (W)",
|
|
15
|
+
"Power level from which the device is considered running. Recommended: 10W for all device types": "Nível de potência a partir do qual o dispositivo é considerado em funcionamento. Recomendado: 10W para todos os tipos de dispositivo",
|
|
16
|
+
"Off delay (min)": "Atraso de desligamento (min)",
|
|
17
|
+
"How long power must stay below the threshold before the cycle ends. Recommended: washing machine 5 min · dryer 8 min · dishwasher 8 min · washer-dryer 10 min": "Por quanto tempo a potência deve ficar abaixo do limiar antes que o ciclo termine. Recomendado: máquina de lavar 5 min · secadora 8 min · lava-louças 8 min · lava e seca 10 min",
|
|
18
|
+
"Start energy gate (Wh)": "Limiar de energia de início (Wh)",
|
|
19
|
+
"Minimum energy after start before the cycle is counted (prevents false starts). Recommended: washing machine 2 Wh · dryer 5 Wh · washer-dryer 5 Wh": "Energia mínima após o início antes de o ciclo ser contabilizado (evita inícios falsos). Recomendado: máquina de lavar 2 Wh · secadora 5 Wh · lava e seca 5 Wh",
|
|
20
|
+
"Program detection": "Detecção de programa",
|
|
21
|
+
"Duration tolerance (0.05–0.5)": "Tolerância de duração (0,05–0,5)",
|
|
22
|
+
"How much the run time may deviate from the profile. 0.2 = ±20%": "Quanto o tempo de execução pode desviar do perfil. 0,2 = ±20%",
|
|
23
|
+
"Matching interval (min)": "Intervalo de correspondência (min)",
|
|
24
|
+
"How often the program is matched. Recommended: 5 min for all device types": "Com que frequência o programa é correspondido. Recomendado: 5 min para todos os tipos de dispositivo",
|
|
25
|
+
"Match confirmations (count)": "Confirmações de correspondência (quantidade)",
|
|
26
|
+
"How many times in a row the same program must be detected. 3 = reliable · 2 = faster": "Quantas vezes seguidas o mesmo programa deve ser detectado. 3 = confiável · 2 = mais rápido",
|
|
27
|
+
"Auto-confirm from confidence (%)": "Confirmação automática a partir da confiança (%)",
|
|
28
|
+
"From this confidence level the cycle is confirmed automatically. 0 = disabled · 85 = recommended": "A partir deste nível de confiança, o ciclo é confirmado automaticamente. 0 = desativado · 85 = recomendado",
|
|
29
|
+
"Instant adoption from confidence (%)": "Adoção instantânea a partir da confiança (%)",
|
|
30
|
+
"During a running cycle: if the live preview repeatedly (2x) shows at least this confidence, the program is adopted immediately instead of waiting for the normal, slower detection.": "Durante um ciclo em execução: se a pré-visualização ao vivo mostrar repetidamente (2x) pelo menos essa confiança, o programa é adotado imediatamente em vez de esperar pela detecção normal, mais lenta.",
|
|
31
|
+
"Program detection threshold (%)": "Limiar de detecção de programa (%)",
|
|
32
|
+
"From this confidence a program counts as detected (and is shown). Below it, it stays 'detecting...'. 55 = recommended": "A partir desta confiança, um programa é considerado detectado (e é exibido). Abaixo disso, permanece 'detecting...'. 55 = recomendado",
|
|
33
|
+
"Notify also for probable program": "Notificar também para programa provável",
|
|
34
|
+
"Send a Telegram update as soon as a program is detected - even if confidence is below the auto-confirm threshold": "Enviar uma atualização no Telegram assim que um programa for detectado - mesmo que a confiança esteja abaixo do limiar de confirmação automática",
|
|
35
|
+
"Dryer settings": "Configurações da secadora",
|
|
36
|
+
"Ignore anti-crease phase": "Ignorar fase antiamarrotamento",
|
|
37
|
+
"ON: cycle ends immediately at the beep, the anti-crease phase is ignored (simple, sufficient for most dryers). OFF: the adapter actively tries to detect when the cycle is really finished across the anti-crease phase (needs a saved reference pattern under 'Programs').": "LIGADO: o ciclo termina imediatamente no sinal sonoro, a fase antiamarrotamento é ignorada (simples, suficiente para a maioria das secadoras). DESLIGADO: o adaptador tenta ativamente detectar quando o ciclo realmente termina durante a fase antiamarrotamento (precisa de um padrão de referência salvo em 'Programas').",
|
|
38
|
+
"+ Create": "+ Criar",
|
|
39
|
+
"Adapter": "Adaptador",
|
|
40
|
+
"All (broadcast)": "Todos (broadcast)",
|
|
41
|
+
"All cycles confirmed!": "Todos os ciclos confirmados!",
|
|
42
|
+
"All data deleted!": "Todos os dados excluídos!",
|
|
43
|
+
"All devices": "Todos os dispositivos",
|
|
44
|
+
"Anti-crease pattern deleted": "Padrão antiamarrotamento excluído",
|
|
45
|
+
"Anti-crease pattern saved!": "Padrão antiamarrotamento salvo!",
|
|
46
|
+
"Apply": "Aplicar",
|
|
47
|
+
"Assign program": "Atribuir programa",
|
|
48
|
+
"Automatic": "Automático",
|
|
49
|
+
"Back up configuration": "Fazer backup da configuração",
|
|
50
|
+
"Based on": "Baseado em",
|
|
51
|
+
"Cancel": "Cancelar",
|
|
52
|
+
"Choose a recorded cycle as the anti-crease reference. The adapter will then automatically ignore this pattern after drying.": "Escolha um ciclo gravado como referência antiamarrotamento. O adaptador ignorará automaticamente esse padrão após a secagem.",
|
|
53
|
+
"Choose a split point in the graph": "Escolha um ponto de divisão no gráfico",
|
|
54
|
+
"Choose the program for this cycle:": "Escolha o programa para este ciclo:",
|
|
55
|
+
"Confidence": "Confiança",
|
|
56
|
+
"Confirm or correct cycles marked with ❓. This automatically improves detection.": "Confirme ou corrija os ciclos marcados com ❓. Isso melhora automaticamente a detecção.",
|
|
57
|
+
"Confirmed": "Confirmado",
|
|
58
|
+
"Confirmed – adapter is learning!": "Confirmado – o adaptador está aprendendo!",
|
|
59
|
+
"Consumption": "Consumo",
|
|
60
|
+
"Correct & learn": "Corrigir e aprender",
|
|
61
|
+
"Correct – confirm": "Correto – confirmar",
|
|
62
|
+
"Corrected – adapter is learning!": "Corrigido – o adaptador está aprendendo!",
|
|
63
|
+
"Create new program": "Criar novo programa",
|
|
64
|
+
"Cycle deleted": "Ciclo excluído",
|
|
65
|
+
"Cycle history": "Histórico de ciclos",
|
|
66
|
+
"Delete": "Excluir",
|
|
67
|
+
"Delete all data for \"": "Excluir todos os dados de \"",
|
|
68
|
+
"Deleted": "Excluído",
|
|
69
|
+
"Detected as": "Detectado como",
|
|
70
|
+
"Device": "Dispositivo",
|
|
71
|
+
"Device:": "Dispositivo:",
|
|
72
|
+
"Duration": "Duração",
|
|
73
|
+
"Duration (min)": "Duração (min)",
|
|
74
|
+
"Duration tolerance": "Tolerância de duração",
|
|
75
|
+
"Elapsed time": "Tempo decorrido",
|
|
76
|
+
"Ending…": "Terminando…",
|
|
77
|
+
"Error": "Erro",
|
|
78
|
+
"Error loading": "Erro ao carregar",
|
|
79
|
+
"Export downloaded": "Exportação baixada",
|
|
80
|
+
"Export failed": "Falha na exportação",
|
|
81
|
+
"Go to review →": "Ir para revisão →",
|
|
82
|
+
"Invalid JSON file": "Arquivo JSON inválido",
|
|
83
|
+
"JSON appears here after export…": "O JSON aparece aqui após a exportação…",
|
|
84
|
+
"Last cycle": "Último ciclo",
|
|
85
|
+
"Last cycle not confidently detected. Please confirm or correct.": "O último ciclo não foi detectado com confiança. Confirme ou corrija.",
|
|
86
|
+
"Learned on": "Aprendido em",
|
|
87
|
+
"Live status": "Status ao vivo",
|
|
88
|
+
"Loading…": "Carregando…",
|
|
89
|
+
"Min. interval (min)": "Intervalo mín. (min)",
|
|
90
|
+
"Near-done dev. %": "Desv. quase pronto %",
|
|
91
|
+
"Near-done dev. min": "Desv. quase pronto min",
|
|
92
|
+
"Near-done from (%)": "Quase pronto a partir de (%)",
|
|
93
|
+
"New name": "Novo nome",
|
|
94
|
+
"No anti-crease pattern saved yet.": "Nenhum padrão antiamarrotamento salvo ainda.",
|
|
95
|
+
"No cycle recorded yet.": "Nenhum ciclo registrado ainda.",
|
|
96
|
+
"No cycles recorded yet.": "Nenhum ciclo registrado ainda.",
|
|
97
|
+
"No cycles with curve data available": "Nenhum ciclo com dados de curva disponível",
|
|
98
|
+
"No device selected": "Nenhum dispositivo selecionado",
|
|
99
|
+
"No devices configured.": "Nenhum dispositivo configurado.",
|
|
100
|
+
"No programs created yet.": "Nenhum programa criado ainda.",
|
|
101
|
+
"No suggestions available": "Nenhuma sugestão disponível",
|
|
102
|
+
"No trace available": "Nenhum traço disponível",
|
|
103
|
+
"No trace data": "Sem dados de traço",
|
|
104
|
+
"Off": "Desligado",
|
|
105
|
+
"Off delay": "Atraso de desligamento",
|
|
106
|
+
"Open": "Aberto",
|
|
107
|
+
"Paused": "Pausado",
|
|
108
|
+
"Placeholders:": "Espaços reservados:",
|
|
109
|
+
"Please choose an adapter": "Escolha um adaptador",
|
|
110
|
+
"Please select a cycle": "Selecione um ciclo",
|
|
111
|
+
"Power curve": "Curva de potência",
|
|
112
|
+
"Power-on threshold": "Limiar de ligação",
|
|
113
|
+
"Profiles, cycles, and traces will be permanently deleted!": "Perfis, ciclos e traços serão excluídos permanentemente!",
|
|
114
|
+
"Program": "Programa",
|
|
115
|
+
"Program name": "Nome do programa",
|
|
116
|
+
"Program override": "Substituição de programa",
|
|
117
|
+
"Progress": "Progresso",
|
|
118
|
+
"Really delete program \"": "Realmente excluir o programa \"",
|
|
119
|
+
"Really delete the saved anti-crease pattern?": "Excluir realmente o padrão antiamarrotamento salvo?",
|
|
120
|
+
"Really delete this cycle?": "Excluir realmente este ciclo?",
|
|
121
|
+
"Recipient": "Destinatário",
|
|
122
|
+
"Reference cycle": "Ciclo de referência",
|
|
123
|
+
"Renamed": "Renomeado",
|
|
124
|
+
"Running ⚙️": "Em execução ⚙️",
|
|
125
|
+
"Save": "Salvar",
|
|
126
|
+
"Save as program": "Salvar como programa",
|
|
127
|
+
"Saved programs": "Programas salvos",
|
|
128
|
+
"Split": "Dividir",
|
|
129
|
+
"Split!": "Dividido!",
|
|
130
|
+
"Start": "Início",
|
|
131
|
+
"Start energy gate": "Limiar de energia de início",
|
|
132
|
+
"Starting…": "Iniciando…",
|
|
133
|
+
"Status": "Status",
|
|
134
|
+
"Test message sent!": "Mensagem de teste enviada!",
|
|
135
|
+
"Time remaining": "Tempo restante",
|
|
136
|
+
"Trim": "Aparar",
|
|
137
|
+
"Unknown": "Desconhecido",
|
|
138
|
+
"Which program was it actually?": "Qual programa foi realmente?",
|
|
139
|
+
"Wrong program": "Programa errado",
|
|
140
|
+
"confidence": "confiança",
|
|
141
|
+
"cycles": "ciclos",
|
|
142
|
+
"e.g. Cotton 60°": "ex. Algodão 60°",
|
|
143
|
+
"e.g. name@example.com (blank = adapter default)": "ex. nome@exemplo.com (vazio = padrão do adaptador)",
|
|
144
|
+
"fields with >10% deviation only:": "apenas campos com desvio >10%:",
|
|
145
|
+
"min lock period": "min de bloqueio",
|
|
146
|
+
"– Choose adapter –": "– Escolher adaptador –",
|
|
147
|
+
"– Choose cycle –": "– Escolher ciclo –",
|
|
148
|
+
"– No adapter found –": "– Nenhum adaptador encontrado –",
|
|
149
|
+
"– No adapter –": "– Nenhum adaptador –",
|
|
150
|
+
"– No cycle selected –": "– Nenhum ciclo selecionado –",
|
|
151
|
+
"⏹ End cycle": "⏹ Encerrar ciclo",
|
|
152
|
+
"⚠️ Review needed": "⚠️ Revisão necessária",
|
|
153
|
+
"✅ All cycles confirmed!": "✅ Todos os ciclos confirmados!",
|
|
154
|
+
"✅ Done message": "✅ Mensagem de conclusão",
|
|
155
|
+
"✅ Review": "✅ Revisão",
|
|
156
|
+
"✏️ Rename program": "✏️ Renomear programa",
|
|
157
|
+
"✓ Assign & learn": "✓ Atribuir e aprender",
|
|
158
|
+
"⬆ Import": "⬆ Importar",
|
|
159
|
+
"⬇ Export": "⬇ Exportar",
|
|
160
|
+
"🌀 Anti-crease detection": "🌀 Detecção antiamarrotamento",
|
|
161
|
+
"🌀 Save": "🌀 Salvar",
|
|
162
|
+
"🎮 Live control": "🎮 Controle ao vivo",
|
|
163
|
+
"🏷 Assign program": "🏷 Atribuir programa",
|
|
164
|
+
"💡 Suggested settings": "💡 Configurações sugeridas",
|
|
165
|
+
"💡 The adapter learns the real duration automatically after 2–3 cycles.": "💡 O adaptador aprende automaticamente a duração real após 2–3 ciclos.",
|
|
166
|
+
"💾 Export": "💾 Exportar",
|
|
167
|
+
"💾 Save": "💾 Salvar",
|
|
168
|
+
"📊 Overview": "📊 Visão geral",
|
|
169
|
+
"🔄 Correct program": "🔄 Corrigir programa",
|
|
170
|
+
"🔄 Update message": "🔄 Mensagem de atualização",
|
|
171
|
+
"🔔 Notifications": "🔔 Notificações",
|
|
172
|
+
"🔔 Test": "🔔 Teste",
|
|
173
|
+
"🕐 Cycles": "🕐 Ciclos",
|
|
174
|
+
"🗂 Programs": "🗂 Programas",
|
|
175
|
+
"🗑 Delete": "🗑 Excluir",
|
|
176
|
+
"🟢 Start message": "🟢 Mensagem de início",
|
|
177
|
+
"🤖 Automatic": "🤖 Automático",
|
|
178
|
+
"🧺 {device} running\n⏳ Determining time…": "🧺 {device} em funcionamento\n⏳ Determinando o tempo…",
|
|
179
|
+
"🧺 {device} update\n✅ Done at {endTime}\n📊 Program: {program}": "🧺 {device} atualização\n✅ Concluído às {endTime}\n📊 Programa: {program}",
|
|
180
|
+
"🧺 {device} update\n✅ Done at {endTime}\n[↩️ Before: {prevTime}]\n📊 Program: {program}\n📈 Progress: {progress}%": "🧺 {device} atualização\n✅ Concluído às {endTime}\n[↩️ Antes: {prevTime}]\n📊 Programa: {program}\n📈 Progresso: {progress}%",
|
|
181
|
+
"🧺 {device} done!\n⏱️ Total runtime: {duration} min\n📊 Program: {program}\n⚡ Consumption: {energy} kWh": "🧺 {device} concluído!\n⏱️ Duração total: {duration} min\n📊 Programa: {program}\n⚡ Consumo: {energy} kWh",
|
|
182
|
+
"Apply suggested value?": "Aplicar valor sugerido?",
|
|
183
|
+
"Ignore": "Ignorar",
|
|
184
|
+
"Error saving": "Erro ao salvar",
|
|
185
|
+
"Setting saved! Restarting adapter…": "Configuração salva! Reiniciando o adaptador…"
|
|
186
|
+
}
|