Files
ha-dashboard-studio/dashboard_studio/web/i18n.js
T

429 lines
35 KiB
JavaScript
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
/* Translations. English text is the key; a missing translation falls back to English.
* Language: the device setting in Dashboard Studio, else Home Assistant's own language
* (same origin, so its localStorage is readable), else the browser's. */
(function () {
const NL = {
// --- toolbar, menus, dialogs
"Dashboard": "Dashboard",
"New dashboard": "Nieuw dashboard",
"Undo": "Ongedaan maken",
"Redo": "Opnieuw",
"More actions": "Meer acties",
"Kiosk": "Kiosk",
"Kiosk mode": "Kioskmodus",
"Edit": "Bewerken",
"Done": "Gereed",
"Offline": "Offline",
"Connected": "Verbonden",
"Saving…": "Opslaan…",
"Saved": "Opgeslagen",
"Not saved": "Niet opgeslagen",
"Rename…": "Wijzig naam…",
"Duplicate": "Dupliceer",
"New dashboard from my devices": "Nieuw dashboard met mijn apparaten",
"Created “{0}” from your devices.": "“{0}” gemaakt met je apparaten.",
"Dashboard Studio has no access to Home Assistant (SUPERVISOR_TOKEN is missing). Restart the app; if this stays, reinstall it.": "Dashboard Studio heeft geen toegang tot Home Assistant (SUPERVISOR_TOKEN ontbreekt). Herstart de app; als dit blijft, installeer de app opnieuw.",
"Export as JSON": "Exporteer als JSON",
"Import JSON…": "Importeer JSON…",
"Delete dashboard…": "Verwijder dashboard…",
"Widgets": "Widgets",
"Inspector": "Inspector",
"Add widget": "Widget toevoegen",
"Click to add. Drag to move, drag the corner to resize. Shift-click to select several. Arrow keys move the selected widget, Shift+arrows resize, ⌘D duplicates, Delete removes.":
"Klik om toe te voegen. Sleep om te verplaatsen, sleep de hoek om het formaat te wijzigen. Shift-klik om er meer te selecteren. Pijltjestoetsen verplaatsen de geselecteerde widget, Shift+pijltjes wijzigen het formaat, ⌘D dupliceert, Delete verwijdert.",
"Cancel": "Annuleer",
"Create": "Maak aan",
"Rename": "Wijzig naam",
"Rename dashboard": "Wijzig naam van dashboard",
"Delete": "Verwijder",
"Close": "Sluit",
"Run": "Voer uit",
"Turn on": "Zet aan",
"Turn off": "Zet uit",
"Lock": "Vergrendel",
"Unlock": "Ontgrendel",
"Changed {0}": "Gewijzigd {0}",
"Delete “{0}”?": "“{0}” verwijderen?",
"The dashboard and its widgets will be removed. This can’t be undone.": "Het dashboard en de widgets worden verwijderd. Dit kan niet ongedaan worden gemaakt.",
"This is your only dashboard. Create another one before deleting it.": "Dit is je enige dashboard. Maak eerst een ander dashboard aan voordat je dit verwijdert.",
"Imported “{0}”.": "“{0}” geïmporteerd.",
"Couldn’t import: {0}.": "Importeren mislukt: {0}.",
"the file has no widgets list": "het bestand bevat geen widgets",
"Widget deleted. Press ⌘Z to undo.": "Widget verwijderd. Druk op ⌘Z om dit ongedaan te maken.",
"Couldn’t save. Your changes are kept here and will save on the next edit.": "Opslaan mislukt. Je wijzigingen blijven hier bewaard en worden bij de volgende wijziging opgeslagen.",
"Couldn’t load your dashboards. Check that the app is running.": "Je dashboards konden niet worden geladen. Controleer of de app draait.",
"Not connected to Home Assistant. Retrying…": "Niet verbonden met Home Assistant. Opnieuw proberen…",
"{0} failed: {1}": "{0} mislukt: {1}",
"The button’s action data isn’t valid JSON. Fix it in the inspector.": "De actiegegevens van de knop zijn geen geldige JSON. Pas dit aan in de inspector.",
"This button has no action yet. Set one in the inspector.": "Deze knop heeft nog geen actie. Stel er een in via de inspector.",
"Unknown widget “{0}”.": "Onbekende widget “{0}”.",
"This widget couldn’t be drawn.": "Deze widget kon niet worden getekend.",
"Home": "Thuis",
"Everything at a glance": "Alles in één oogopslag",
"Quick controls": "Snelle bediening",
"Temperature, last 24 hours": "Temperatuur, afgelopen 24 uur",
"copy": "kopie",
// --- kiosk
"Kiosk mode is on. To leave, tap the {0} corner {1} times.": "Kioskmodus staat aan. Tik {1} keer op de hoek {0} om te stoppen.",
"top right": "rechtsboven", "top left": "linksboven", "bottom right": "rechtsonder", "bottom left": "linksonder",
"top-right": "Rechtsboven", "top-left": "Linksboven", "bottom-right": "Rechtsonder", "bottom-left": "Linksonder",
"Leave kiosk mode?": "Kioskmodus verlaten?",
"This closes by itself in a few seconds.": "Dit venster sluit vanzelf over een paar seconden.",
"Full screen": "Volledig scherm",
"Exit full screen": "Volledig scherm uit",
"Stay": "Blijf",
"Leave kiosk": "Verlaat kiosk",
"Full screen isn’t available in this browser.": "Volledig scherm is niet beschikbaar in deze browser.",
"Home Assistant’s frame blocks full screen. Use “New tab” in the kiosk settings instead.": "Home Assistant blokkeert volledig scherm in zijn venster. Gebruik “Nieuw tabblad” bij de kioskinstellingen.",
// --- inspector
"Name": "Naam",
"Appearance": "Weergave",
"Theme": "Thema",
"System follows your device’s light or dark appearance.": "Systeem volgt de lichte of donkere weergave van je apparaat.",
"System": "Systeem", "Light": "Licht", "Dark": "Donker", "Nord": "Nord", "Dusk": "Schemer", "Forest": "Bos", "Custom": "Aangepast",
"Tile style": "Tegelstijl",
"Cards": "Kaarten", "Outline": "Omlijnd", "Plain": "Zonder kaart",
"Corner radius (px)": "Hoekafronding (px)",
"Colors": "Kleuren",
"editing switches to Custom": "aanpassen schakelt naar Aangepast",
"Background (color or CSS gradient)": "Achtergrond (kleur of CSS-verloop)",
"Tile color": "Tegelkleur",
"Text color": "Tekstkleur",
"Secondary text color": "Kleur van secundaire tekst",
"Accent color": "Accentkleur",
"Background image URL": "URL van achtergrondafbeelding",
"Blur behind tiles (px)": "Vervaging achter tegels (px)",
"For photo backgrounds": "Voor fotoachtergronden",
"Grid": "Raster",
"Columns": "Kolommen",
"Row height (px)": "Rijhoogte (px)",
"Spacing (px)": "Tussenruimte (px)",
"Maximum width (px)": "Maximale breedte (px)",
"0 = full width": "0 = volledige breedte",
"Screen saver after (minutes)": "Schermbeveiliging na (minuten)",
"0 = off": "0 = uit",
"Exit corner (tap it 5 times to leave)": "Uitgangshoek (tik 5 keer om te stoppen)",
"Hide the pointer when idle": "Verberg de aanwijzer bij inactiviteit",
"Start kiosk": "Start kiosk",
"New tab": "Nieuw tabblad",
"On a wall tablet, open kiosk in a new tab to hide the Home Assistant sidebar too.": "Open de kiosk op een wandtablet in een nieuw tabblad om ook de zijbalk van Home Assistant te verbergen.",
"Select a widget to edit it.": "Selecteer een widget om deze te bewerken.",
"Language": "Taal",
"Language on this device": "Taal op dit apparaat",
"Automatic": "Automatisch",
"Size and position": "Formaat en positie",
"Column": "Kolom", "Row": "Rij", "Width": "Breedte", "Height": "Hoogte",
"Style": "Stijl",
"No background": "Geen achtergrond",
"Background": "Achtergrond",
"Default": "Standaard",
"Add an entity…": "Voeg een entiteit toe…",
"Remove {0}": "Verwijder {0}",
"No entity with this ID": "Geen entiteit met deze ID",
"Loading albums…": "Albums laden…",
"No albums found in Immich.": "Geen albums gevonden in Immich.",
// --- widget names and fields
"Heading": "Kop", "Entity tile": "Entiteitstegel", "Big value": "Grote waarde", "Gauge": "Meter",
"Thermostat": "Thermostaat", "History graph": "Geschiedenisgrafiek", "Clock": "Klok", "Weather": "Weer",
"Entity list": "Entiteitenlijst", "Button": "Knop", "Media player": "Mediaspeler", "Camera": "Camera",
"Car": "Auto", "Text": "Tekst", "Photos": "Foto’s", "Calendar": "Agenda", "Web page": "Webpagina",
"Subtitle": "Ondertitel", "Font size (px)": "Lettergrootte (px)", "Alignment": "Uitlijning",
"left": "Links", "center": "Midden", "right": "Rechts",
"Welcome home": "Welkom thuis",
"Entity": "Entiteit", "Entity name": "Naam van entiteit", "Icon": "Pictogram", "Tap action": "Tikactie",
"auto": "Auto", "toggle": "Schakel", "more-info": "Info", "none": "Geen",
"Show when it last changed": "Toon wanneer het laatst gewijzigd is",
"Unit": "Eenheid", "From entity": "Van entiteit", "Decimals": "Decimalen",
"Warn above": "Waarschuwing boven", "Critical above": "Kritiek boven",
"Minimum": "Minimum", "Maximum": "Maximum", "Green from": "Groen vanaf", "Yellow from": "Geel vanaf", "Red from": "Rood vanaf",
"Step": "Stap", "Title": "Titel", "Sensors": "Sensoren", "Hours to show": "Aantal uren",
"Fill under the line": "Vul onder de lijn",
"24-hour time": "24-uursnotatie", "Show seconds": "Toon seconden", "Show date": "Toon datum",
"Devices": "Apparaten", "Entities": "Entiteiten",
"Label": "Label", "Target entity (optional)": "Doelentiteit (optioneel)",
"Action (e.g. scene.turn_on)": "Actie (bijv. scene.turn_on)", "Action data (JSON)": "Actiegegevens (JSON)",
"Refresh every (seconds)": "Vernieuw elke (seconden)", "Show name": "Toon naam",
"My car": "Mijn auto", "Car image URL (optional)": "URL van autoafbeelding (optioneel)",
"Drivetrain": "Aandrijving", "electric": "Elektrisch", "fuel": "Brandstof",
"Battery or fuel level (%)": "Accu- of brandstofniveau (%)", "Range": "Actieradius",
"Charging power": "Laadvermogen", "Charge limit (%)": "Laadlimiet (%)", "Doors": "Portieren",
"Climate": "Klimaat", "Location": "Locatie", "Odometer": "Kilometerstand",
"Text — use {{ sensor.x }} for live values": "Tekst — gebruik {{ sensor.x }} voor live waarden",
"Inside it’s {{ sensor.living_room_temperature }}.": "Binnen is het {{ sensor.living_room_temperature }}.",
"Source": "Bron", "links": "Links", "immich": "Immich",
"Image URLs, one per line": "Afbeeldings-URL’s, één per regel",
"Immich albums": "Immich-albums",
"Change photo every (seconds)": "Wissel foto elke (seconden)",
"Shuffle": "Willekeurige volgorde",
"Fit": "Passend", "cover": "Vullen", "contain": "Volledig",
"Show when the photo was taken": "Toon wanneer de foto is gemaakt",
"Description (for screen readers)": "Beschrijving (voor schermlezers)",
"Upcoming": "Binnenkort", "Calendars": "Agenda’s", "Days ahead": "Aantal dagen vooruit",
"Most events to show": "Maximaal aantal afspraken", "Show which calendar": "Toon welke agenda",
// --- widget content
"Unavailable": "Niet beschikbaar", "Unknown": "Onbekend",
"On": "Aan", "Off": "Uit", "Open": "Open", "Closed": "Dicht", "Clear": "Vrij", "Motion": "Beweging",
"Occupied": "Bezet", "Dry": "Droog", "Wet": "Nat", "Smoke": "Rook", "Away": "Afwezig",
"Unplugged": "Niet aangesloten", "Plugged in": "Aangesloten", "Not charging": "Laadt niet", "Charging": "Laden",
"Scene": "Scène", "Running": "Actief", "Script": "Script",
"just now": "zojuist", "{0} min ago": "{0} min geleden", "{0} h ago": "{0} uur geleden", "{0} d ago": "{0} d geleden",
"Can’t find {0}.": "{0} niet gevonden.",
"Check the entity ID in the inspector.": "Controleer de entiteit-ID in de inspector.",
"Choose {0} in the inspector.": "Kies {0} in de inspector.",
"an entity": "een entiteit", "a light": "een lamp", "a thermostat": "een thermostaat",
"a weather entity": "een weerentiteit", "a media player": "een mediaspeler", "a camera": "een camera",
"Critical": "Kritiek", "High": "Hoog",
"Now": "Nu", "Lower to {0}°": "Verlaag naar {0}°", "Raise to {0}°": "Verhoog naar {0}°", "Mode": "Modus",
"Add one or more sensors in the inspector.": "Voeg in de inspector een of meer sensoren toe.",
"Loading history…": "Geschiedenis laden…",
"No numeric history for this period.": "Geen numerieke geschiedenis voor deze periode.",
"History for the last {0} hours": "Geschiedenis van de afgelopen {0} uur",
"−{0} h": "−{0} u",
"Humidity": "Luchtvochtigheid", "Wind": "Wind",
"Add entities in the inspector.": "Voeg entiteiten toe in de inspector.",
"Previous track": "Vorige track", "Play": "Afspelen", "Pause": "Pauzeer", "Next track": "Volgende track", "Volume": "Volume",
"{0} camera": "Camera {0}",
"Set the car’s level, range or lock entity in the inspector.": "Stel in de inspector het niveau, de actieradius of het slot van de auto in.",
"Parked at home": "Thuis geparkeerd", "Locked": "Vergrendeld", "Unlocked": "Ontgrendeld",
"Battery level": "Accuniveau", "Fuel level": "Brandstofniveau", "Charge limit {0}%": "Laadlimiet {0}%",
"Climate on": "Klimaat aan", "range": "actieradius", "Low": "Laag",
"Choose one or more Immich albums in the inspector.": "Kies in de inspector een of meer Immich-albums.",
"Add image URLs in the inspector.": "Voeg in de inspector afbeeldings-URL’s toe.",
"Photo slideshow": "Diavoorstelling",
"Loading photos…": "Foto’s laden…",
"Couldn’t load photos. {0}": "Foto’s laden mislukt. {0}",
"These albums have no photos yet.": "Deze albums bevatten nog geen foto’s.",
"Add one or more calendars in the inspector.": "Voeg in de inspector een of meer agenda’s toe.",
"Loading events…": "Afspraken laden…",
"Couldn’t load events. {0}": "Afspraken laden mislukt. {0}",
"Nothing planned for the next {0} days.": "Niets gepland voor de komende {0} dagen.",
"Embedded page": "Ingesloten pagina", "Add a URL in the inspector.": "Voeg in de inspector een URL toe.",
// tabs
"Overview": "Overzicht", "Add tab": "Tabblad toevoegen", "Tab {0}": "Tabblad {0}", "Tabs": "Tabbladen", "Tab": "Tabblad",
"A dashboard needs at least one tab.": "Een dashboard heeft minstens één tabblad nodig.",
"Delete tab “{0}”?": "Tabblad “{0}” verwijderen?",
"Its {0} widgets will be deleted too. You can undo this with ⌘Z.": "De {0} widgets erop worden ook verwijderd. Je kunt dit ongedaan maken met ⌘Z.",
"Show tabs in a side menu": "Toon tabbladen in een zijmenu", "Tab name": "Naam van tabblad",
"Move up": "Omhoog", "Move down": "Omlaag", "Moved to “{0}”.": "Verplaatst naar “{0}”.",
// waste
"Waste collection": "Afvalkalender", "Layout": "Indeling", "next": "Volgende", "list": "Lijst",
"Waste sensors (leave empty to find them automatically)": "Afvalsensoren (leeg laten om ze automatisch te vinden)",
"Most pickups to show": "Maximaal aantal ophaalmomenten", "Only pickups within (days)": "Alleen ophaalmomenten binnen (dagen)",
"No pickups in the next {0} days.": "Geen ophaalmomenten in de komende {0} dagen.",
"No Afvalwijzer sensors found. Install the Afvalwijzer integration, or pick the sensors in the inspector.": "Geen Afvalwijzer-sensoren gevonden. Installeer de Afvalwijzer-integratie of kies de sensoren in de inspector.",
"Next pickup": "Volgende ophaalmoment", "Put the bin out tonight": "Zet de container vanavond buiten",
"Day after tomorrow": "Overmorgen", "In {0} days": "Over {0} dagen",
"Organic": "GFT", "Paper": "Papier", "Residual waste": "Restafval", "Residual waste bags": "Restafvalzakken",
"Textile": "Textiel", "Bulky waste": "Grofvuil", "Hazardous waste": "KCA", "Nappies": "Luiers", "Glass": "Glas",
"Pruning waste": "Snoeiafval", "Garden waste": "Tuinafval", "Christmas trees": "Kerstbomen", "BEST bag": "BEST-tas",
"Hazardous waste van": "Milieubus",
// visibility
"Hidden now": "Nu verborgen", "Visibility": "Zichtbaarheid",
"Show this widget only when the conditions below are met. Leave empty to always show it.": "Toon deze widget alleen als aan de voorwaarden hieronder is voldaan. Laat leeg om hem altijd te tonen.",
"Show when": "Toon als", "all": "Alle voorwaarden", "any": "Eén voorwaarde", "Add condition": "Voorwaarde toevoegen",
"Remove condition": "Verwijder voorwaarde", "Condition": "Voorwaarde", "Value": "Waarde",
"is": "Is", "is not": "Is niet", "above": "Hoger dan", "below": "Lager dan",
"Visible right now": "Nu zichtbaar", "Hidden right now": "Nu verborgen",
// media
"Media players": "Mediaspelers", "Show album art": "Toon albumhoes", "Hide players that are off from the switcher": "Verberg uitgeschakelde spelers in de keuzelijst",
// appliance
"Appliance": "Apparaat", "Washing machine": "Wasmachine", "Dryer": "Droger", "Dishwasher": "Vaatwasser",
"washer": "Wasmachine", "dryer": "Droger", "dishwasher": "Vaatwasser", "other": "Anders",
"Status": "Status", "Power (W), if there is no status": "Vermogen (W), als er geen status is", "Running above (W)": "Aan boven (W)",
"Time remaining or end time": "Resterende tijd of eindtijd", "Progress (%)": "Voortgang (%)", "Program": "Programma",
"Only show while running or finished": "Alleen tonen als hij draait of klaar is",
"Choose the appliance’s status, power or remaining-time entity in the inspector.": "Kies in de inspector de status-, vermogens- of resterende-tijdentiteit van het apparaat.",
"In progress": "Bezig", "Finished": "Klaar", "Paused": "Gepauzeerd", "Ready to unload": "Klaar om uit te ruimen",
"{0} h {1} min": "{0} u {1} min", "{0} min": "{0} min", "left · ready at {0}": "te gaan · klaar om {0}", "Progress": "Voortgang",
"Weather (optional)": "Weer (optioneel)", "Show today’s high and low": "Toon de hoogste en laagste temperatuur van vandaag",
"High {0}° · Low {1}°": "Max {0}° · min {1}°", "High {0}°": "Max {0}°",
"Menu style": "Menustijl", "icons": "Alleen pictogrammen", "labels": "Met namen",
"About": "Over", "Version {0}": "Versie {0}", "Source code and changes": "Broncode en wijzigingen",
"Dashboard Studio was updated to {0}. Reload the page to use it.": "Dashboard Studio is bijgewerkt naar {0}. Herlaad de pagina om de nieuwe versie te gebruiken.",
"Dashboard Studio was updated to {0}. Reloading…": "Dashboard Studio is bijgewerkt naar {0}. Opnieuw laden…",
"Graphite": "Grafiet", "Indigo": "Indigo", "Rose": "Roze", "Ocean": "Oceaan", "Sunrise": "Zonsopgang", "Lavender": "Lavendel", "Mint": "Munt", "Sand": "Zand", "High contrast": "Hoog contrast",
"Horizontal scroll": "Horizontaal scrollen", "Swipe cards": "Veegkaarten", "Card width (px)": "Kaartbreedte (px)",
"Scroll left": "Scroll naar links", "Scroll right": "Scroll naar rechts", "Next card every (seconds)": "Volgende kaart elke (seconden)",
"Show page dots": "Toon paginapuntjes", "Card {0} of {1}": "Kaart {0} van {1}", "Cards": "Kaarten",
"None of these cards are showing right now.": "Geen van deze kaarten is nu zichtbaar.", "Add cards in the inspector.": "Voeg kaarten toe in de inspector.",
"Add the cards this container should hold.": "Voeg de kaarten toe die hierin moeten komen.", "Card type": "Soort kaart", "Add": "Toevoegen",
"Remove from container": "Verwijder uit deze kaart",
"Who sees which dashboard…": "Wie ziet welk dashboard…", "Who sees which dashboard": "Wie ziet welk dashboard",
"Choose the dashboard that opens first. A device’s choice comes before a person’s; otherwise the last dashboard used on that device opens.": "Kies welk dashboard als eerste opent. De keuze voor een apparaat gaat voor die van een persoon; anders opent het dashboard dat op dat apparaat het laatst is gebruikt.",
"This device": "Dit apparaat", "Other devices": "Andere apparaten", "People": "Personen", "Last used": "Laatst gebruikt",
"Name this device, e.g. Kitchen tablet": "Geef dit apparaat een naam, bijv. Keukentablet", "Unnamed device": "Apparaat zonder naam",
"Device name": "Apparaatnaam", "Forget this device": "Vergeet dit apparaat", "you": "jij", "Dashboard for {0}": "Dashboard voor {0}",
"People appear here once they have opened Dashboard Studio, or when they have a person entity.": "Personen verschijnen hier zodra ze Dashboard Studio hebben geopend, of als ze een persoonsentiteit hebben.",
"Text position": "Positie van de tekst", "Background image": "Achtergrondafbeelding", "none": "Geen",
"Darken the image (%)": "Afbeelding donkerder maken (%)",
"top-left": "Linksboven", "top": "Boven", "top-right": "Rechtsboven", "left": "Links", "center": "Midden", "right": "Rechts",
"bottom-left": "Linksonder", "bottom": "Onder", "bottom-right": "Rechtsonder",
"For a light group, show each light": "Toon bij een lampengroep elke lamp", "Lights in {0}": "Lampen in {0}",
"Vacuum": "Stofzuiger", "a vacuum": "een stofzuiger", "Map camera (optional)": "Kaartcamera (optioneel)",
"Refresh the map every (seconds)": "Vernieuw de kaart elke (seconden)", "Battery sensor (if not on the vacuum)": "Accusensor (als de stofzuiger die niet zelf heeft)",
"Show suction power": "Toon zuigkracht", "Battery {0}%": "Accu {0}%", "Cleaning map": "Schoonmaakkaart", "Suction power": "Zuigkracht",
"Start cleaning": "Begin met schoonmaken", "Send back to the dock": "Terug naar het dock", "Locate (makes a sound)": "Zoeken (maakt geluid)",
"Cleaning…": "Aan het schoonmaken…", "On its way to the dock": "Onderweg naar het dock",
"Next photo": "Volgende foto", "Show page dots while swiping": "Toon paginapuntjes tijdens het vegen",
"Battery": "Accu", "Cleaned area": "Schoongemaakt oppervlak", "Cleaning time": "Schoonmaaktijd",
"More sensors, e.g. filter or brush life": "Meer sensoren, bijv. levensduur van filter of borstel",
"Resume": "Hervat", "Start": "Start", "Dock": "Dock", "Locate": "Zoek",
"Designed for phones": "Ontworpen voor telefoons",
"A 4-column layout you design at phone size. On a phone it fills the screen without the top bar; touch and hold an empty spot to bring the bar back.": "Een indeling met 4 kolommen die je op telefoongrootte ontwerpt. Op een telefoon vult hij het scherm zonder de bovenbalk; houd een lege plek ingedrukt om de balk terug te halen.",
"Touch and hold an empty spot to show the menu.": "Houd een lege plek ingedrukt om het menu te tonen.",
"Room": "Kamer", "Room name": "Naam van de kamer", "Temperature sensor": "Temperatuursensor", "Humidity sensor": "Vochtigheidssensor",
"Extra entities (or all of them, without a room)": "Extra entiteiten (of allemaal, zonder kamer)", "Show devices": "Toon apparaten",
"Background image URL (optional)": "URL van achtergrondafbeelding (optioneel)", "Automatic": "Automatisch",
"Choose a room or add entities in the inspector.": "Kies een kamer of voeg entiteiten toe in de inspector.",
"Turn off all lights in {0}": "Zet alle lampen in {0} uit", "Turn on all lights in {0}": "Zet alle lampen in {0} aan",
"{0} on": "{0} aan", "Lights off": "Lampen uit", "open": "open", "Playing": "Speelt",
"Choose a room": "Kies een kamer", "Rooms couldn’t be loaded from Home Assistant. Add the entities below instead.": "Kamers konden niet uit Home Assistant worden geladen. Voeg hieronder de entiteiten toe.",
"What’s new": "Wat is er nieuw", "Source code": "Broncode", "this version": "deze versie",
"The changelog couldn’t be loaded.": "De lijst met wijzigingen kon niet worden geladen.",
"Updated to {0}. See what’s new under About in the settings.": "Bijgewerkt naar {0}. Bekijk wat er nieuw is onder Over in de instellingen.",
"Card width": "Kaartbreedte", "pixels": "Pixels", "per-view": "Aantal zichtbaar", "Cards visible at once": "Aantal kaarten tegelijk zichtbaar",
"e.g. 1, 2 or 2.5": "bijv. 1, 2 of 2,5", "Width of this card (px)": "Breedte van deze kaart (px)", "Same as the others": "Zelfde als de andere",
"Target": "Doel", "Lower": "Lager", "Raise": "Hoger", "Preset": "Voorinstelling", "Fan": "Ventilator",
"Charge limit": "Laadlimiet",
"Energy": "Energie", "Solar power": "Zonnevermogen", "Grid power (positive = from the grid)": "Netvermogen (positief = van het net)",
"My grid sensor is positive when sending back": "Mijn netsensor is positief bij teruglevering", "Battery power (positive = charging)": "Accuvermogen (positief = laden)",
"My battery sensor is positive when discharging": "Mijn accusensor is positief bij ontladen", "Battery level (%)": "Accuniveau (%)",
"Home use (optional, otherwise calculated)": "Verbruik in huis (optioneel, anders berekend)", "Totals for today, e.g. kWh produced and used": "Totalen van vandaag, bijv. opgewekte en verbruikte kWh",
"Choose your solar, grid or battery power sensors in the inspector.": "Kies in de inspector je sensoren voor zonnepanelen, het net of de thuisaccu.",
"Solar {0}, grid {1}, home {2}": "Zon {0}, net {1}, huis {2}", "Solar": "Zon", "To the grid": "Naar het net", "From the grid": "Van het net", "Discharging": "Ontladen",
"Door (optional)": "Deur (optioneel)", "Energy or water use (optional)": "Energie- of waterverbruik (optioneel)", "Door open": "Deur open", "Door closed": "Deur dicht",
"Status (with Home Connect: Operation state — the rest fills in by itself)": "Status (bij Home Connect: Bedieningsstatus — de rest vult zichzelf in)",
"Time remaining or finish time": "Resterende tijd of eindtijd", "Pause button": "Pauzeknop", "Resume button": "Hervatknop", "Stop button": "Stopknop",
"Power switch": "Aan/uit-schakelaar", "Alerts, e.g. salt or rinse aid low": "Meldingen, bijv. zout of glansspoelmiddel bijna op",
"Starts later": "Start later", "Action needed": "Actie nodig", "Error": "Fout", "Stopping": "Stoppen", "Door locked": "Deur vergrendeld",
"Ready at {0}": "Klaar om {0}", "Check the appliance": "Kijk even bij het apparaat", "Something went wrong": "Er ging iets mis", "Stop": "Stop",
"Hide this card when none of its cards are showing": "Verberg deze kaart als geen van de kaarten erin zichtbaar is",
"Text when none of its cards are showing": "Tekst als geen van de kaarten erin zichtbaar is",
"Choose an icon": "Kies een pictogram", "No icons match.": "Geen pictogrammen gevonden.", "Search, e.g. kitchen or keuken": "Zoek, bijv. keuken of slaapkamer",
"Search icons": "Zoek pictogrammen", "You can also type an emoji in the field instead.": "Je kunt in het veld ook een emoji typen.", "No icon": "Geen pictogram",
"Warm white": "Warm wit", "Neutral white": "Neutraal wit", "Cool white": "Koel wit", "Red": "Rood", "Orange": "Oranje", "Yellow": "Geel", "Green": "Groen",
"Light blue": "Lichtblauw", "Blue": "Blauw", "Purple": "Paars", "Pink": "Roze", "More colors and settings": "Meer kleuren en instellingen",
"Show colors": "Toon kleuren", "{0} of {1} on": "{0} van {1} aan", "Settings for {0}": "Instellingen voor {0}", "{0} brightness": "Helderheid {0}",
"Brightness": "Helderheid", "Color temperature": "Kleurtemperatuur", "Color": "Kleur", "Any color": "Andere kleur",
"Full at {0}": "Vol om {0}", "inside": "binnen", "Stop charging": "Stop laden", "Start charging": "Start laden",
"Time until full (minutes or end time)": "Tijd tot vol (minuten of eindtijd)", "Start/stop charging (switch)": "Laden starten/stoppen (schakelaar)",
"Car image URL (optional, a side view with a transparent background looks best)": "URL van autoafbeelding (optioneel, een zijaanzicht met transparante achtergrond werkt het best)",
"To-do list": "Takenlijst", "List": "Lijst", "List name": "Naam van de lijst", "Show completed items": "Toon afgevinkte items", "a to-do list": "een takenlijst",
"Delete {0}": "Verwijder {0}", "Add an item…": "Voeg iets toe…", "Add an item": "Voeg iets toe", "Nothing on the list.": "Er staat niets op de lijst.", "Loading…": "Laden…",
"Hide completed ({0})": "Verberg afgevinkt ({0})", "Show completed ({0})": "Toon afgevinkt ({0})",
"Who's home": "Wie is er thuis", "People (leave empty for everyone)": "Personen (leeg laten voor iedereen)", "grid": "Raster",
"No people found. Add person entities in Home Assistant.": "Geen personen gevonden. Voeg personen toe in Home Assistant.",
"Weather forecast": "Weersverwachting", "Show": "Toon", "both": "Beide", "hourly": "Per uur", "daily": "Per dag", "Hours ahead": "Aantal uren vooruit",
"Show sunrise and sunset": "Toon zonsopkomst en -ondergang", "Loading the forecast…": "Verwachting laden…",
"Timer": "Timer", "Quick starts in minutes": "Snelstart in minuten", "Beep when done": "Piep als hij klaar is", "a timer": "een timer", "Done!": "Klaar!", "OK": "OK", "min": "min",
"Blinds": "Zonwering", "e.g. Living room": "bijv. Woonkamer", "Blinds, curtains or shutters": "Jaloezieën, gordijnen of rolluiken",
"Add one or more blinds in the inspector.": "Voeg in de inspector een of meer jaloezieën toe.", "Open": "Open", "position": "positie", "tilt": "kanteling", "Tilt": "Kanteling",
"Open all": "Alles open", "Close all": "Alles dicht",
"Alarm": "Alarm", "Alarm panel": "Alarmsysteem", "Doors and windows to check (leave empty for all)": "Deuren en ramen om te controleren (leeg laten voor alle)",
"an alarm panel": "een alarmsysteem", "On · home": "Aan · thuis", "On · away": "Aan · afwezig", "On · night": "Aan · nacht", "On · vacation": "Aan · vakantie",
"Turning on…": "Inschakelen…", "Entry delay…": "Inloopvertraging…", "Alarm!": "Alarm!", "Away": "Afwezig", "Night": "Nacht", "Vacation": "Vakantie",
"Enter the code": "Voer de code in", "Clear": "Wis", "Delete last digit": "Laatste cijfer wissen", "{0} still open: {1}": "{0} nog open: {1}",
"Turn on the alarm anyway?": "Alarm toch inschakelen?",
"Notifications": "Meldingen", "Show notifications": "Toon meldingen", "Show available updates": "Toon beschikbare updates", "{0} → {1}": "{0} → {1}",
"Install": "Installeer", "Dismiss": "Wegklikken", "Dismiss all": "Alles wegklikken", "All caught up": "Alles bijgewerkt",
"Install {0}?": "{0} installeren?", "Version {0} will be installed. Home Assistant may restart.": "Versie {0} wordt geïnstalleerd. Home Assistant kan opnieuw opstarten.",
"Screen saver": "Schermbeveiliging",
"clock": "Klok",
"photos": "Foto's",
"Photos from": "Foto's uit",
"Doorbell": "Deurbel",
"Camera to show": "Camera om te tonen",
"Close after (seconds)": "Sluiten na (seconden)",
"Play a sound": "Geluid afspelen",
"When the doorbell rings in kiosk mode, the camera fills the screen.": "Als de deurbel gaat in kioskmodus, vult de camera het scherm.",
"Someone’s at the door": "Er staat iemand voor de deur",
"Night mode": "Nachtmodus",
"After sunset": "Na zonsondergang",
"Between times": "Tussen tijden",
"From": "Van",
"Until": "Tot",
"Dim the screen (%)": "Scherm dimmen (%)",
"Switch to the dark theme": "Overschakelen naar het donkere thema",
"Night mode is saved on this device only, and is off while editing.": "Nachtmodus wordt alleen op dit apparaat bewaard en staat uit tijdens het bewerken.",
"{0} widgets deleted. Press ⌘Z to undo.": "{0} widgets verwijderd. Druk op ⌘Z om ongedaan te maken.",
"Copy {0} widgets to…": "{0} widgets kopiëren naar…",
"Copy to…": "Kopiëren naar…",
"Copy": "Kopiëren",
"Copied to “{0}”.": "Gekopieerd naar “{0}”.",
"Moved into “{0}”.": "Verplaatst naar “{0}”.",
"{0} widgets selected": "{0} widgets geselecteerd",
"Align": "Uitlijnen",
"Left edges": "Linkerkanten",
"Right edges": "Rechterkanten",
"Top edges": "Bovenkanten",
"Bottom edges": "Onderkanten",
"Same width": "Zelfde breedte",
"Same height": "Zelfde hoogte",
"Same width and height follow the widget you clicked last.": "Zelfde breedte en hoogte volgen de widget waarop je het laatst klikte.",
"Shift-click or ⌘-click widgets to add or remove them. Drag one to move them all; the arrow keys move them too.": "Shift-klik of ⌘-klik op widgets om ze toe te voegen of weg te halen. Sleep er één om ze allemaal te verplaatsen; de pijltjestoetsen werken ook.",
"Take out of this card": "Uit deze kaart halen",
"Drag a widget onto a scroll or swipe card to put it inside.": "Sleep een widget op een scroll- of veegkaart om hem erin te zetten.",
"No matching entities": "Geen entiteiten gevonden",
"Search widgets": "Widgets zoeken",
"No widgets match “{0}”.": "Geen widgets gevonden voor “{0}”.",
"Version history…": "Versiegeschiedenis…",
"Version history": "Versiegeschiedenis",
"Couldn’t load the version history. {0}": "De versiegeschiedenis kon niet worden geladen. {0}",
"{0} widgets": "{0} widgets",
"{0} tabs": "{0} tabbladen",
"Current": "Huidige",
"Restore": "Terugzetten",
"Each save is kept here, up to 30 versions. Changes within five minutes count as one.": "Elke opslag wordt hier bewaard, tot 30 versies. Wijzigingen binnen vijf minuten tellen als één.",
"No earlier versions yet. They appear after your next changes.": "Nog geen eerdere versies. Ze verschijnen na je volgende wijzigingen.",
"Restored the version from {0}. Press ⌘Z to undo.": "De versie van {0} is teruggezet. Druk op ⌘Z om ongedaan te maken.",
"Today": "Vandaag", "Tomorrow": "Morgen", "All day": "Hele dag", "Busy": "Bezet",
};
// Home Assistant states, translated when shown as text.
const STATES_NL = {
on: "Aan", off: "Uit", unavailable: "Niet beschikbaar", unknown: "Onbekend", home: "Thuis", not_home: "Afwezig",
open: "Open", opening: "Gaat open", closed: "Dicht", closing: "Gaat dicht", locked: "Vergrendeld", unlocked: "Ontgrendeld",
locking: "Vergrendelen", unlocking: "Ontgrendelen", jammed: "Vastgelopen", playing: "Speelt", paused: "Gepauzeerd",
idle: "Inactief", standby: "Stand-by", buffering: "Bufferen", heat: "Verwarmen", cool: "Koelen", auto: "Automatisch",
heat_cool: "Verwarmen/koelen", dry: "Drogen", fan_only: "Alleen ventilator", cleaning: "Reinigen", docked: "Gedockt",
returning: "Keert terug", error: "Fout", eco: "Eco", comfort: "Comfort", away: "Afwezig", sleep: "Slapen", boost: "Boost", none: "Geen",
low: "Laag", medium: "Midden", high: "Hoog", heating: "Verwarmt", cooling: "Koelt", charging: "Laden", above_horizon: "Boven de horizon", below_horizon: "Onder de horizon",
"clear-night": "Helder", cloudy: "Bewolkt", exceptional: "Uitzonderlijk", fog: "Mist", hail: "Hagel", lightning: "Onweer",
"lightning-rainy": "Onweer en regen", partlycloudy: "Halfbewolkt", pouring: "Stortregen", rainy: "Regen", snowy: "Sneeuw",
"snowy-rainy": "Natte sneeuw", sunny: "Zonnig", windy: "Winderig", "windy-variant": "Winderig", armed_away: "Ingeschakeld (afwezig)",
armed_home: "Ingeschakeld (thuis)", armed_night: "Ingeschakeld (nacht)", disarmed: "Uitgeschakeld", triggered: "Geactiveerd",
};
const read = (k) => { try { return localStorage.getItem(k); } catch { return null; } };
function detect() {
const pref = read("ds.lang");
if (pref && pref !== "auto") return pref;
let ha = read("selectedLanguage"); // Home Assistant stores it as a JSON string
try { ha = ha && JSON.parse(ha); } catch { /* plain string */ }
return String(ha || navigator.language || "en").toLowerCase().startsWith("nl") ? "nl" : "en";
}
const lang = detect();
const dict = lang === "nl" ? NL : {};
const cap = (s) => (s ? String(s).charAt(0).toUpperCase() + String(s).slice(1) : "").replace(/_/g, " ");
window.I18n = {
lang,
locale: lang === "nl" ? "nl-NL" : undefined,
languages: { auto: "Automatic", en: "English", nl: "Nederlands" },
preference: () => read("ds.lang") || "auto",
/** t("Hello {0}", name) */
t(text, ...args) {
const s = dict[text] ?? text;
return args.length ? s.replace(/\{(\d)\}/g, (_, i) => args[i] ?? "") : s;
},
/** A Home Assistant state as readable text. */
state: (st) => (lang === "nl" && STATES_NL[st]) || cap(st),
};
document.documentElement.lang = lang;
})();