Compare commits

..

1 Commits

Author SHA1 Message Date
Nicolas Mowen
5615ec82dc Set log to debug 2026-02-05 12:20:07 -07:00
37 changed files with 90 additions and 481 deletions

View File

@@ -48,8 +48,7 @@
"bg": "Български (Búlgar)", "bg": "Български (Búlgar)",
"gl": "Galego (Gallec)", "gl": "Galego (Gallec)",
"id": "Bahasa Indonesia (Indonesi)", "id": "Bahasa Indonesia (Indonesi)",
"ur": "اردو (Urdú)", "ur": "اردو (Urdú)"
"hr": "Hrvatski (croat)"
}, },
"system": "Sistema", "system": "Sistema",
"systemMetrics": "Mètriques del sistema", "systemMetrics": "Mètriques del sistema",

View File

@@ -19,8 +19,7 @@
"description": { "description": {
"addFace": "Afegiu una col·lecció nova a la biblioteca de cares pujant la vostra primera imatge.", "addFace": "Afegiu una col·lecció nova a la biblioteca de cares pujant la vostra primera imatge.",
"placeholder": "Introduïu un nom per a aquesta col·lecció", "placeholder": "Introduïu un nom per a aquesta col·lecció",
"invalidName": "Nom no vàlid. Els noms només poden incloure lletres, números, espais, apòstrofs, guions baixos i guions.", "invalidName": "Nom no vàlid. Els noms només poden incloure lletres, números, espais, apòstrofs, guions baixos i guions."
"nameCannotContainHash": "El nom no pot contenir #."
}, },
"documentTitle": "Biblioteca de rostres - Frigate", "documentTitle": "Biblioteca de rostres - Frigate",
"uploadFaceImage": { "uploadFaceImage": {

View File

@@ -532,7 +532,7 @@
"hide": "Amaga contrasenya", "hide": "Amaga contrasenya",
"requirements": { "requirements": {
"title": "Requisits contrasenya:", "title": "Requisits contrasenya:",
"length": "Com a mínim 12 carácters", "length": "Com a mínim 8 carácters",
"uppercase": "Com a mínim una majúscula", "uppercase": "Com a mínim una majúscula",
"digit": "Com a mínim un digit", "digit": "Com a mínim un digit",
"special": "Com a mínim un carácter especial (!@#$%^&*(),.?\":{}|<>)" "special": "Com a mínim un carácter especial (!@#$%^&*(),.?\":{}|<>)"

View File

@@ -27,7 +27,7 @@
"harp": "Harpe", "harp": "Harpe",
"bell": "Klokke", "bell": "Klokke",
"harmonica": "Harmonika", "harmonica": "Harmonika",
"bagpipes": "Sækkepiber", "bagpipes": "Sækkepibe",
"didgeridoo": "Didgeridoo", "didgeridoo": "Didgeridoo",
"jazz": "Jazz", "jazz": "Jazz",
"opera": "Opera", "opera": "Opera",
@@ -78,7 +78,7 @@
"camera": "Kamera", "camera": "Kamera",
"tools": "Værktøj", "tools": "Værktøj",
"hammer": "Hammer", "hammer": "Hammer",
"drill": "Boremaskine", "drill": "Bore",
"explosion": "Eksplosion", "explosion": "Eksplosion",
"fireworks": "Nytårskrudt", "fireworks": "Nytårskrudt",
"babbling": "Pludren", "babbling": "Pludren",

View File

@@ -193,8 +193,7 @@
"bg": "Български (Bulgarsk)", "bg": "Български (Bulgarsk)",
"gl": "Galego (Galisisk)", "gl": "Galego (Galisisk)",
"id": "Bahasa Indonesia (Indonesisk)", "id": "Bahasa Indonesia (Indonesisk)",
"ur": "اردو (Urdu)", "ur": "اردو (Urdu)"
"hr": "Hrvatski (Kroatisk)"
}, },
"appearance": "Udseende", "appearance": "Udseende",
"darkMode": { "darkMode": {
@@ -222,7 +221,7 @@
}, },
"restart": "Genstart Frigate", "restart": "Genstart Frigate",
"live": { "live": {
"title": "Direkte", "title": "Live",
"allCameras": "Alle kameraer", "allCameras": "Alle kameraer",
"cameras": { "cameras": {
"title": "Kameraer", "title": "Kameraer",
@@ -241,17 +240,17 @@
"current": "Aktiv bruger: {{user}}", "current": "Aktiv bruger: {{user}}",
"anonymous": "anonym", "anonymous": "anonym",
"logout": "Log ud", "logout": "Log ud",
"setPassword": "Vælg kodeord" "setPassword": "Set Password"
}, },
"classification": "Kategorisering" "classification": "Kategorisering"
}, },
"toast": { "toast": {
"copyUrlToClipboard": "Kopieret URL til udklipsholder.", "copyUrlToClipboard": "Kopieret URL til klippebord.",
"save": { "save": {
"title": "Gem", "title": "Gem",
"error": { "error": {
"title": "Ændringer kunne ikke gemmes: {{errorMessage}}", "title": "Ændringer kan ikke gemmes: {{errorMessage}}",
"noMessage": "Kunne ikke gemme konfigurationsændringer" "noMessage": "Kan ikke gemme konfigurationsændringer"
} }
} }
}, },
@@ -262,7 +261,7 @@
"desc": "Admins har fuld adgang til Frigate UI. Viewers er begrænset til at se kameraer, gennemse items, og historik i UI." "desc": "Admins har fuld adgang til Frigate UI. Viewers er begrænset til at se kameraer, gennemse items, og historik i UI."
}, },
"pagination": { "pagination": {
"label": "sideinddeling", "label": "paginering",
"previous": { "previous": {
"title": "Forrige", "title": "Forrige",
"label": "Gå til forrige side" "label": "Gå til forrige side"
@@ -274,9 +273,9 @@
"more": "Flere sider" "more": "Flere sider"
}, },
"accessDenied": { "accessDenied": {
"documentTitle": "Adgang nægtet - Frigate", "documentTitle": "Adgang forbudt - Frigate",
"title": "Adgang nægtet", "title": "Adgang forbudt",
"desc": "Du har ikke rettigheder til at se denne side." "desc": "Du har ikke tiiladelse til at se denne side."
}, },
"notFound": { "notFound": {
"documentTitle": "Ikke fundet - Frigate", "documentTitle": "Ikke fundet - Frigate",

View File

@@ -4,13 +4,13 @@
"cameraDisabled": "Kamera er deaktiveret", "cameraDisabled": "Kamera er deaktiveret",
"noPreviewFoundFor": "Ingen forhåndsvisning fundet for {{cameraName}}", "noPreviewFoundFor": "Ingen forhåndsvisning fundet for {{cameraName}}",
"submitFrigatePlus": { "submitFrigatePlus": {
"title": "Indsend dette billede til Frigate+?", "title": "Indsend denne frame til Frigate+?",
"submit": "Indsend" "submit": "Indsend"
}, },
"livePlayerRequiredIOSVersion": "iOS 17.1 eller nyere kræves for denne type livestream.", "livePlayerRequiredIOSVersion": "iOS 17.1 eller nyere kræves for denne type livestream.",
"streamOffline": { "streamOffline": {
"title": "Stream offline", "title": "Stream offline",
"desc": "Der er ikke modtaget nogen billeder på {{cameraName}}-<code>detect</code>-streamen, tjek fejllogs." "desc": "Der er ikke modtaget nogen frames på {{cameraName}}-<code>detect</code>-streamen, tjek fejlloggene."
}, },
"stats": { "stats": {
"streamType": { "streamType": {
@@ -18,8 +18,8 @@
"short": "Type" "short": "Type"
}, },
"bandwidth": { "bandwidth": {
"title": "Båndbredde:", "title": "Bandbredde:",
"short": "Båndbredde" "short": "Bandbredde"
}, },
"latency": { "latency": {
"title": "Latenstid:", "title": "Latenstid:",
@@ -31,21 +31,8 @@
}, },
"droppedFrames": { "droppedFrames": {
"short": { "short": {
"title": "Tabt", "title": "Tabt"
"value": "{{droppedFrames}} billeder" }
},
"title": "Tabte billeder:"
},
"totalFrames": "Antal billeder i alt:",
"decodedFrames": "Dekodede billeder:",
"droppedFrameRate": "Rate for tabte billeder:"
},
"toast": {
"success": {
"submittedFrigatePlus": "Billede sendt til Frigate+"
},
"error": {
"submitFrigatePlusFailed": "Kunne ikke sende billede til Frigate+"
} }
} }
} }

View File

@@ -14,104 +14,8 @@
"move": { "move": {
"clickMove": { "clickMove": {
"label": "Klik i billedrammen for at centrere kameraet", "label": "Klik i billedrammen for at centrere kameraet",
"enable": "Aktivér klik for at flytte", "enable": "Aktivér klik for at flytte"
"disable": "Deaktiver klik for at flytte"
},
"left": {
"label": "Flyt PTZ-kameraet til venstre"
},
"up": {
"label": "Flyt PTZ kamera op"
},
"down": {
"label": "Flyt PTZ-kameraet ned"
},
"right": {
"label": "Flyt PTZ-kameraet til højre"
} }
}, }
"zoom": {
"in": {
"label": "Zoom PTZ-kamera ind"
},
"out": {
"label": "Zoom PTZ kamera ud"
}
},
"focus": {
"in": {
"label": "Focus PTZ kamera ind"
},
"out": {
"label": "Focus PTZ kamera ud"
}
},
"frame": {
"center": {
"label": "Klik på billedet for at centrere PTZ-kameraet"
}
},
"presets": "PTZ kamera forudindstillinger"
},
"camera": {
"enable": "Aktivér kamera",
"disable": "Deaktivér kamera"
},
"muteCameras": {
"enable": "Slå lyd på alle kameraer fra",
"disable": "Slå lyd på alle kameraer til"
},
"detect": {
"enable": "Aktiver detektering",
"disable": "Deaktiver detektering"
},
"recording": {
"enable": "Aktivér optagelse",
"disable": "Deaktiver optagelse"
},
"snapshots": {
"enable": "Aktivér Snapshots",
"disable": "Deaktivér Snapshots"
},
"snapshot": {
"takeSnapshot": "Hent instant snapshot",
"noVideoSource": "Ingen videokilde til snapshot.",
"captureFailed": "Kunne ikke tage snapshot.",
"downloadStarted": "Hentning af snapshot startet."
},
"audioDetect": {
"enable": "Aktiver lyddetektor",
"disable": "Deaktiver lyddetektor"
},
"transcription": {
"enable": "Aktiver Live Audio Transkription",
"disable": "Deaktiver Live Audio Transkription"
},
"autotracking": {
"enable": "Aktiver Autotracking",
"disable": "Deaktiver Autotracking"
},
"streamStats": {
"enable": "Vis Stream statistik",
"disable": "Skjul Stream statistik"
},
"manualRecording": {
"title": "Manuel optagelse",
"tips": "Hent et øjebliksbillede eller start en manuel begivenhed baseret på dette kameras indstillinger for optagelse af opbevaring.",
"playInBackground": {
"label": "Afspil i baggrunden",
"desc": "Aktiver denne mulighed for at fortsætte streaming, når afspilleren er skjult."
},
"showStats": {
"label": "Vis statistik",
"desc": "Aktiver denne mulighed for at vise streamstatistikker som en overlejring på kameraets feed."
},
"debugView": "Debug View",
"start": "Start on-demand optagelse",
"started": "Start manuel optagelse.",
"failedToStart": "Manuel optagelse fejlede.",
"recordDisabledTips": "Da optagelsen er deaktiveret eller begrænset i konfig for dette kamera, gemmes der kun et snapshot.",
"end": "Afslut manuel optagelse",
"ended": "Afsluttet manuel optagelse."
} }
} }

View File

@@ -179,8 +179,7 @@
"lt": "Lietuvių (Litauisch)", "lt": "Lietuvių (Litauisch)",
"bg": "Български (bulgarisch)", "bg": "Български (bulgarisch)",
"gl": "Galego (Galicisch)", "gl": "Galego (Galicisch)",
"id": "Bahasa Indonesia (Indonesisch)", "id": "Bahasa Indonesia (Indonesisch)"
"hr": "Hrvatski (Kroatisch)"
}, },
"appearance": "Erscheinung", "appearance": "Erscheinung",
"theme": { "theme": {

View File

@@ -2,8 +2,7 @@
"description": { "description": {
"placeholder": "Gib einen Name für diese Kollektion ein", "placeholder": "Gib einen Name für diese Kollektion ein",
"addFace": "Füge der Gesichtsbibliothek eine neue Sammlung hinzu, indem du ein Bild hochlädst.", "addFace": "Füge der Gesichtsbibliothek eine neue Sammlung hinzu, indem du ein Bild hochlädst.",
"invalidName": "Ungültiger Name. Namen dürfen nur Buchstaben, Zahlen, Leerzeichen, Apostrophe, Unterstriche und Bindestriche enthalten.", "invalidName": "Ungültiger Name. Namen dürfen nur Buchstaben, Zahlen, Leerzeichen, Apostrophe, Unterstriche und Bindestriche enthalten."
"nameCannotContainHash": "Der Name darf keine # enthalten."
}, },
"details": { "details": {
"person": "Person", "person": "Person",

View File

@@ -544,7 +544,7 @@
"placeholder": "Passwort eingeben", "placeholder": "Passwort eingeben",
"requirements": { "requirements": {
"title": "Passwort Anforderungen:", "title": "Passwort Anforderungen:",
"length": "Mindestens 12 Zeichen", "length": "Mindestens 8 Zeichen",
"uppercase": "Mindestens ein Großbuchstabe", "uppercase": "Mindestens ein Großbuchstabe",
"digit": "Mindestens eine Ziffer", "digit": "Mindestens eine Ziffer",
"special": "Mindestens ein Sonderzeichen (!@#$%^&*(),.?\":{}|<>)" "special": "Mindestens ein Sonderzeichen (!@#$%^&*(),.?\":{}|<>)"

View File

@@ -139,8 +139,7 @@
"bg": "Български (bulgaaria keel)", "bg": "Български (bulgaaria keel)",
"gl": "Galego (galeegi keel)", "gl": "Galego (galeegi keel)",
"id": "Bahasa Indonesia (indoneesia keel)", "id": "Bahasa Indonesia (indoneesia keel)",
"ur": "اردو (urdu keel)", "ur": "اردو (urdu keel)"
"hr": "Hrvatski (horvaadi keel)"
}, },
"system": "Süsteem", "system": "Süsteem",
"systemMetrics": "Süsteemi meetrika", "systemMetrics": "Süsteemi meetrika",

View File

@@ -30,21 +30,11 @@
"stationary": "{{label}} jäi paigale", "stationary": "{{label}} jäi paigale",
"active": "{{label}} muutus aktiivseks", "active": "{{label}} muutus aktiivseks",
"entered_zone": "{{label}} sisenes tsooni {{zones}}", "entered_zone": "{{label}} sisenes tsooni {{zones}}",
"visible": "{{label}} on tuvastatud", "visible": "{{label}} on tuvastatud"
"header": {
"zones": "Tsoonid",
"ratio": "Suhtarv",
"area": "Ala",
"score": "Punktiskoor"
}
}, },
"title": "Jälgimise üksikasjad", "title": "Jälgimise üksikasjad",
"noImageFound": "Selle ajatempli kohta ei leidu pilti.", "noImageFound": "Selle ajatempli kohta ei leidu pilti.",
"createObjectMask": "Loo objektimask", "createObjectMask": "Loo objektimask"
"carousel": {
"previous": "Eelmine slaid",
"next": "Järgmine slaid"
}
}, },
"documentTitle": "Avasta - Frigate", "documentTitle": "Avasta - Frigate",
"generativeAI": "Generatiivne tehisaru", "generativeAI": "Generatiivne tehisaru",
@@ -73,15 +63,12 @@
"tips": { "tips": {
"mismatch_one": "Tuvastasin {{count}} võõra objekti ja need on lisatud ülevaatamiseks. Need objektid kas ei ole piisavad häire või tuvastamise jaoks, aga ka võivad juba olla eemaldatud või kustutatud.", "mismatch_one": "Tuvastasin {{count}} võõra objekti ja need on lisatud ülevaatamiseks. Need objektid kas ei ole piisavad häire või tuvastamise jaoks, aga ka võivad juba olla eemaldatud või kustutatud.",
"mismatch_other": "Tuvastasin {{count}} võõrast objekti ja need on lisatud ülevaatamiseks. Need objektid kas ei ole piisavad häire või tuvastamise jaoks, aga ka võivad juba olla eemaldatud või kustutatud." "mismatch_other": "Tuvastasin {{count}} võõrast objekti ja need on lisatud ülevaatamiseks. Need objektid kas ei ole piisavad häire või tuvastamise jaoks, aga ka võivad juba olla eemaldatud või kustutatud."
}, }
"title": "Vaata objekti üksikasju",
"desc": "Vaata objekti üksikasju"
}, },
"snapshotScore": { "snapshotScore": {
"label": "Hetkvõttete punktiskoor" "label": "Hetkvõttete punktiskoor"
}, },
"regenerateFromSnapshot": "Loo uuesti hetkvõttest", "regenerateFromSnapshot": "Loo uuesti hetkvõttest",
"timestamp": "Ajatampel" "timestamp": "Ajatampel"
}, }
"trackedObjectDetails": "Jälgitava objekti üksikasjad"
} }

View File

@@ -4,23 +4,10 @@
"password": "Salasõna", "password": "Salasõna",
"passwordPlaceholder": "Valikuline", "passwordPlaceholder": "Valikuline",
"customUrlPlaceholder": "rtsp://kasutajanimi:salasõna@host:port/asukoht", "customUrlPlaceholder": "rtsp://kasutajanimi:salasõna@host:port/asukoht",
"connectionSettings": "Ühenduse seadistused", "connectionSettings": "Ühenduse seadistused"
"port": "Port",
"username": "Kasutajanimi",
"usernamePlaceholder": "Valikuline"
}, },
"step3": { "step3": {
"streamUrlPlaceholder": "rtsp://kasutajanimi:salasõna@host:port/asukoht", "streamUrlPlaceholder": "rtsp://kasutajanimi:salasõna@host:port/asukoht"
"url": "Võrguaadress",
"resolution": "Resolutsioon",
"quality": "Kvaliteet",
"roles": "Rollid",
"roleLabels": {
"record": "Salvestamine",
"audio": "Heliriba"
},
"connected": "Ühendatud",
"featuresTitle": "Funktsionaalsused"
}, },
"steps": { "steps": {
"probeOrSnapshot": "Võta proov või tee hetkvõte" "probeOrSnapshot": "Võta proov või tee hetkvõte"
@@ -28,34 +15,7 @@
"step2": { "step2": {
"testing": { "testing": {
"fetchingSnapshot": "Laadin kaamera hetkvõtet alla..." "fetchingSnapshot": "Laadin kaamera hetkvõtet alla..."
}, }
"retry": "Proovi uuesti",
"manufacturer": "Tootja",
"model": "Mudel",
"firmware": "Püsivara",
"profiles": "Profiilid",
"presets": "Eelseadistused",
"useCandidate": "Kasuta",
"uriCopy": "Kopeeri",
"connected": "Ühendatud"
},
"testResultLabels": {
"resolution": "Resolutsioon",
"video": "Video",
"audio": "Heliriba",
"fps": "Kaadrisagedus"
},
"step4": {
"reload": "Laadi uuesti",
"connecting": "Ühendan…",
"valid": "Kehtiv",
"failed": "Ebaõnnestunud",
"connectStream": "Ühenda",
"connectingStream": "Ühendan",
"disconnectStream": "Katkesta ühendus",
"roles": "Rollid",
"none": "Määramata",
"error": "Viga"
} }
}, },
"users": { "users": {
@@ -69,10 +29,7 @@
} }
}, },
"table": { "table": {
"password": "Lähtesta salasõna", "password": "Lähtesta salasõna"
"username": "Kasutajanimi",
"actions": "Tegevused",
"role": "Roll"
}, },
"dialog": { "dialog": {
"form": { "form": {
@@ -96,7 +53,7 @@
"hide": "Peida salasõna", "hide": "Peida salasõna",
"requirements": { "requirements": {
"title": "Salasõna reeglid:", "title": "Salasõna reeglid:",
"length": "Vähemalt 12 tähemärki", "length": "Vähemalt 8 tähemärki",
"uppercase": "Vähemalt üks suurtäht", "uppercase": "Vähemalt üks suurtäht",
"digit": "Vähemalt üks number", "digit": "Vähemalt üks number",
"special": "Vähemalt üks erimärk (!@#$%^&*(),.?\":{}|<>)" "special": "Vähemalt üks erimärk (!@#$%^&*(),.?\":{}|<>)"
@@ -113,9 +70,6 @@
"currentPassword": { "currentPassword": {
"title": "Senine salasõna", "title": "Senine salasõna",
"placeholder": "Sisesta oma senine salasõna" "placeholder": "Sisesta oma senine salasõna"
},
"user": {
"title": "Kasutajanimi"
} }
}, },
"createUser": { "createUser": {
@@ -130,42 +84,12 @@
"currentPasswordRequired": "Senine salasõna on vajalik", "currentPasswordRequired": "Senine salasõna on vajalik",
"incorrectCurrentPassword": "Senine salasõna pole õige", "incorrectCurrentPassword": "Senine salasõna pole õige",
"passwordVerificationFailed": "Salasõna kontrollimine ei õnnestunud" "passwordVerificationFailed": "Salasõna kontrollimine ei õnnestunud"
},
"changeRole": {
"roleInfo": {
"admin": "Peakasutaja",
"viewer": "Vaataja"
}
} }
}, }
"title": "Kasutajad"
}, },
"debug": { "debug": {
"boundingBoxes": { "boundingBoxes": {
"desc": "Näita jälgitavate objektide ümber märgiskaste" "desc": "Näita jälgitavate objektide ümber märgiskaste"
},
"title": "Silumine ja veaotsing",
"debugging": "Veaotsing ja silumine",
"audio": {
"title": "Heliriba",
"score": "punktiskoor"
},
"timestamp": {
"title": "Ajatempel"
},
"zones": {
"title": "Tsoonid"
},
"regions": {
"title": "Alad"
},
"paths": {
"title": "Asukohad"
},
"objectShapeFilterDrawing": {
"score": "Punktiskoor",
"ratio": "Suhtarv",
"area": "Ala"
} }
}, },
"documentTitle": { "documentTitle": {
@@ -189,31 +113,10 @@
"automaticLiveView": { "automaticLiveView": {
"label": "Automaatne otseülekande vaade" "label": "Automaatne otseülekande vaade"
} }
},
"calendar": {
"title": "Kalender",
"firstWeekday": {
"sunday": "Pühapäev",
"monday": "Esmaspäev",
"label": "Esimene nädalapäev"
}
},
"storedLayouts": {
"title": "Salvestatud paigutused"
},
"recordingsViewer": {
"title": "Salvestuste vaataja"
} }
}, },
"cameraManagement": { "cameraManagement": {
"backToSettings": "Tagasi kaameraseadistuste juurde", "backToSettings": "Tagasi kaameraseadistuste juurde"
"cameraConfig": {
"enabled": "Kasutusel",
"ffmpeg": {
"pathPlaceholder": "rtsp://...",
"roles": "Rollid"
}
}
}, },
"notification": { "notification": {
"notificationSettings": { "notificationSettings": {
@@ -227,16 +130,6 @@
"success": { "success": {
"settingSaved": "Teavituste seadistused on salvestatud." "settingSaved": "Teavituste seadistused on salvestatud."
} }
},
"title": "Teavitused",
"email": {
"title": "E-post"
},
"cameras": {
"title": "Kaamerad"
},
"suspendTime": {
"suspend": "Peata arvuti töö"
} }
}, },
"frigatePlus": { "frigatePlus": {
@@ -252,48 +145,20 @@
"cleanCopySnapshots": "<code>clean_copy</code> Hetkvõtted", "cleanCopySnapshots": "<code>clean_copy</code> Hetkvõtted",
"camera": "Kaamera" "camera": "Kaamera"
} }
},
"modelInfo": {
"plusModelType": {
"userModel": "Peenhäälestatud"
},
"cameras": "Kaamerad"
} }
}, },
"masksAndZones": { "masksAndZones": {
"zones": { "zones": {
"point_one": "{{count}} punkt", "point_one": "{{count}} punkt",
"point_other": "{{count}} punkti", "point_other": "{{count}} punkti"
"label": "Tsoonid",
"desc": {
"documentation": "Dokumentatsioon"
},
"name": {
"title": "Nimi"
},
"inertia": {
"title": "Inerts"
},
"objects": {
"title": "Objektid"
}
}, },
"motionMasks": { "motionMasks": {
"point_one": "{{count}} punkt", "point_one": "{{count}} punkt",
"point_other": "{{count}} punkti", "point_other": "{{count}} punkti"
"desc": {
"documentation": "Dokumentatsioon"
}
}, },
"objectMasks": { "objectMasks": {
"point_one": "{{count}} punkt", "point_one": "{{count}} punkt",
"point_other": "{{count}} punkti", "point_other": "{{count}} punkti"
"desc": {
"documentation": "Dokumentatsioon"
},
"objects": {
"title": "Objektid"
}
} }
}, },
"roles": { "roles": {
@@ -302,21 +167,6 @@
"userRolesUpdated_one": "{{count}} selle rolliga kasutaja on nüüd määratud Vaatajaks, kellel on ligipääs kõikidele kaameratele.", "userRolesUpdated_one": "{{count}} selle rolliga kasutaja on nüüd määratud Vaatajaks, kellel on ligipääs kõikidele kaameratele.",
"userRolesUpdated_other": "{{count}} selle rolliga kasutajat on nüüd määratud Vaatajaks, kellel on ligipääs kõikidele kaameratele." "userRolesUpdated_other": "{{count}} selle rolliga kasutajat on nüüd määratud Vaatajaks, kellel on ligipääs kõikidele kaameratele."
} }
},
"table": {
"role": "Roll",
"cameras": "Kaamerad",
"actions": "Tegevused"
},
"dialog": {
"deleteRole": {
"deleting": "Kustutan..."
},
"form": {
"cameras": {
"title": "Kaamerad"
}
}
} }
}, },
"menu": { "menu": {
@@ -328,8 +178,7 @@
"users": "Kasutajad", "users": "Kasutajad",
"roles": "Rollid", "roles": "Rollid",
"notifications": "Teavitused", "notifications": "Teavitused",
"frigateplus": "Frigate+", "frigateplus": "Frigate+"
"cameraReview": "Ülevaatamine"
}, },
"dialog": { "dialog": {
"unsavedChanges": { "unsavedChanges": {
@@ -340,84 +189,5 @@
"cameraSetting": { "cameraSetting": {
"camera": "Kaamera", "camera": "Kaamera",
"noCamera": "Kaamerat pole" "noCamera": "Kaamerat pole"
},
"enrichments": {
"semanticSearch": {
"reindexNow": {
"confirmButton": "Indekseeri uuesti",
"label": "Indekseeri uuesti kohe"
},
"modelSize": {
"small": {
"title": "väike"
},
"large": {
"title": "suur"
}
},
"title": "Semantiline otsing"
},
"faceRecognition": {
"modelSize": {
"small": {
"title": "väike"
},
"large": {
"title": "suur"
}
}
},
"birdClassification": {
"title": "Lindude klassifikatsioon"
}
},
"cameraReview": {
"review": {
"title": "Ülevaatamine",
"alerts": "Hoiatused ",
"detections": "Tuvastamise tulemused "
}
},
"motionDetectionTuner": {
"Threshold": {
"title": "Lävi"
}
},
"triggers": {
"documentTitle": "Päästikud",
"management": {
"title": "Päästikud"
},
"table": {
"name": "Nimi",
"type": "Tüüp",
"content": "Sisu",
"threshold": "Lävi",
"actions": "Tegevused",
"edit": "Muuda"
},
"type": {
"thumbnail": "Pisipilt",
"description": "Kirjeldus"
},
"dialog": {
"form": {
"name": {
"title": "Nimi"
},
"type": {
"title": "Tüüp"
},
"content": {
"title": "Sisu"
},
"threshold": {
"title": "Lävi"
},
"actions": {
"title": "Tegevused"
}
}
}
} }
} }

View File

@@ -175,8 +175,7 @@
"bg": "Български (Bulgare)", "bg": "Български (Bulgare)",
"gl": "Galego (Galicien)", "gl": "Galego (Galicien)",
"id": "Bahasa Indonesia (Indonésien)", "id": "Bahasa Indonesia (Indonésien)",
"ur": "اردو (Ourdou)", "ur": "اردو (Ourdou)"
"hr": "Hrvatski (Croate)"
}, },
"appearance": "Apparence", "appearance": "Apparence",
"darkMode": { "darkMode": {

View File

@@ -2,8 +2,7 @@
"description": { "description": {
"addFace": "Ajoutez une nouvelle collection à la bibliothèque de visages en téléversant votre première image.", "addFace": "Ajoutez une nouvelle collection à la bibliothèque de visages en téléversant votre première image.",
"placeholder": "Saisissez un nom pour cette collection.", "placeholder": "Saisissez un nom pour cette collection.",
"invalidName": "Nom invalide. Les noms ne peuvent contenir que des lettres, des chiffres, des espaces, des apostrophes, des traits de soulignement et des tirets.", "invalidName": "Nom invalide. Les noms ne peuvent contenir que des lettres, des chiffres, des espaces, des apostrophes, des traits de soulignement et des tirets."
"nameCannotContainHash": "Le nom ne peut pas contenir le caractère #."
}, },
"details": { "details": {
"person": "Personne", "person": "Personne",

View File

@@ -649,7 +649,7 @@
"hide": "Masquer le mot de passe", "hide": "Masquer le mot de passe",
"requirements": { "requirements": {
"title": "Critères du mot de passe :", "title": "Critères du mot de passe :",
"length": "Au moins 12 caractères", "length": "Au moins 8 caractères",
"uppercase": "Au moins une lettre majuscule", "uppercase": "Au moins une lettre majuscule",
"digit": "Au moins un chiffre", "digit": "Au moins un chiffre",
"special": "Au moins un caractère spécial (!@#$%^&*(),.?\":{}|<>)" "special": "Au moins un caractère spécial (!@#$%^&*(),.?\":{}|<>)"

View File

@@ -69,8 +69,7 @@
}, },
"inProgress": "処理中", "inProgress": "処理中",
"invalidStartTime": "開始時刻が無効です", "invalidStartTime": "開始時刻が無効です",
"invalidEndTime": "終了時刻が無効です", "invalidEndTime": "終了時刻が無効です"
"never": "なし"
}, },
"readTheDocumentation": "ドキュメントを見る", "readTheDocumentation": "ドキュメントを見る",
"unit": { "unit": {
@@ -233,8 +232,7 @@
"ur": "اردو (ウルドゥー語)", "ur": "اردو (ウルドゥー語)",
"withSystem": { "withSystem": {
"label": "システム設定に従う" "label": "システム設定に従う"
}, }
"hr": "Hrvatski (クロアチア語)"
}, },
"classification": "分類" "classification": "分類"
}, },

View File

@@ -2,8 +2,7 @@
"description": { "description": {
"placeholder": "このコレクションの名前を入力", "placeholder": "このコレクションの名前を入力",
"addFace": "最初の画像をアップロードして、フェイスライブラリに新しいコレクションを追加してください。", "addFace": "最初の画像をアップロードして、フェイスライブラリに新しいコレクションを追加してください。",
"invalidName": "無効な名前です。使用できるのは、英数字、空白、アポストロフィ、アンダースコア、ハイフンのみです。", "invalidName": "無効な名前です。使用できるのは、英数字、空白、アポストロフィ、アンダースコア、ハイフンのみです。"
"nameCannotContainHash": "名前に # は使用できません。"
}, },
"details": { "details": {
"person": "人物", "person": "人物",

View File

@@ -176,16 +176,6 @@
"restricted": { "restricted": {
"title": "利用可能なカメラがありません", "title": "利用可能なカメラがありません",
"description": "このグループ内のカメラを表示する権限がありません。" "description": "このグループ内のカメラを表示する権限がありません。"
},
"default": {
"title": "設定済みのカメラがありません",
"description": "Frigate にカメラを接続して開始しましょう。",
"buttonText": "カメラを追加"
},
"group": {
"title": "このグループにカメラがありません",
"description": "このカメラグループには、割り当て済みまたは有効なカメラがありません。",
"buttonText": "グループを管理"
} }
}, },
"snapshot": { "snapshot": {

View File

@@ -86,13 +86,7 @@
"otherProcesses": { "otherProcesses": {
"title": "その他のプロセス", "title": "その他のプロセス",
"processCpuUsage": "プロセスの CPU 使用率", "processCpuUsage": "プロセスの CPU 使用率",
"processMemoryUsage": "プロセスのメモリ使用量", "processMemoryUsage": "プロセスのメモリ使用量"
"series": {
"recording": "録画",
"review_segment": "レビューセグメント",
"audio_detector": "音声検知",
"go2rtc": "go2rtc"
}
} }
}, },
"storage": { "storage": {

View File

@@ -203,8 +203,7 @@
"bg": "Български (Bulgarsk)", "bg": "Български (Bulgarsk)",
"gl": "Galego (Galisisk)", "gl": "Galego (Galisisk)",
"id": "Bahasa Indonesia (Indonesisk)", "id": "Bahasa Indonesia (Indonesisk)",
"ur": "اردو (Urdu)", "ur": "اردو (Urdu)"
"hr": "Hrvatski (Kroatisk)"
}, },
"appearance": "Utseende", "appearance": "Utseende",
"darkMode": { "darkMode": {

View File

@@ -3,8 +3,7 @@
"description": { "description": {
"addFace": "Legg til en ny samling i ansiktsbiblioteket ved å laste opp ditt første bilde.", "addFace": "Legg til en ny samling i ansiktsbiblioteket ved å laste opp ditt første bilde.",
"placeholder": "Skriv inn et navn for denne samlingen", "placeholder": "Skriv inn et navn for denne samlingen",
"invalidName": "Ugyldig navn. Navn kan kun inneholde bokstaver, tall, mellomrom, apostrof, understrek og bindestrek.", "invalidName": "Ugyldig navn. Navn kan kun inneholde bokstaver, tall, mellomrom, apostrof, understrek og bindestrek."
"nameCannotContainHash": "Navn kan ikke inneholde #."
}, },
"details": { "details": {
"person": "Person", "person": "Person",

View File

@@ -537,7 +537,7 @@
"hide": "Skjul passord", "hide": "Skjul passord",
"requirements": { "requirements": {
"title": "Passordkrav:", "title": "Passordkrav:",
"length": "Minst 12 tegn", "length": "Minst 8 tegn",
"uppercase": "Minst en stor bokstav", "uppercase": "Minst en stor bokstav",
"digit": "Minst ett tall", "digit": "Minst ett tall",
"special": "Minst ett spesialtegn (!@#$%^&*(),.?\":{}|<>)" "special": "Minst ett spesialtegn (!@#$%^&*(),.?\":{}|<>)"
@@ -591,7 +591,7 @@
"incorrectCurrentPassword": "Nåværende passord er feil", "incorrectCurrentPassword": "Nåværende passord er feil",
"passwordVerificationFailed": "Kunne ikke verifisere passord", "passwordVerificationFailed": "Kunne ikke verifisere passord",
"multiDeviceWarning": "Andre enheter du er logget inn på vil kreve ny innlogging innen {{refresh_time}}.", "multiDeviceWarning": "Andre enheter du er logget inn på vil kreve ny innlogging innen {{refresh_time}}.",
"multiDeviceAdmin": "Du kan også tvinge alle brukere til å logge inn på nytt ved å endre JWT (JSON Web Token)-nøkkelen." "multiDeviceAdmin": "Du kan også tvinge alle brukere til å logge inn på nytt umiddelbart ved å rotere JWT-hemmeligheten din."
} }
}, },
"table": { "table": {

View File

@@ -206,8 +206,7 @@
"bg": "Български (Bułgarski)", "bg": "Български (Bułgarski)",
"gl": "Galego (Galicyjski)", "gl": "Galego (Galicyjski)",
"id": "Bahasa Indonesia (Indonezyjski)", "id": "Bahasa Indonesia (Indonezyjski)",
"ur": "اردو (Urdu)", "ur": "اردو (Urdu)"
"hr": "Hrvatski (Chorwacki)"
}, },
"appearance": "Wygląd", "appearance": "Wygląd",
"darkMode": { "darkMode": {

View File

@@ -3,8 +3,7 @@
"description": { "description": {
"addFace": "Dodaj nową kolekcję do biblioteki twarzy, przesyłając swoje pierwsze zdjęcie.", "addFace": "Dodaj nową kolekcję do biblioteki twarzy, przesyłając swoje pierwsze zdjęcie.",
"placeholder": "Wprowadź nazwę tej kolekcji", "placeholder": "Wprowadź nazwę tej kolekcji",
"invalidName": "Niepoprawna nazwa. Nazwy mogą zawierać tylko: litery, cyfry, spacje, cudzysłowy, podkreślniniki i myślniki.", "invalidName": "Niepoprawna nazwa. Nazwy mogą zawierać tylko: litery, cyfry, spacje, cudzysłowy, podkreślniniki i myślniki."
"nameCannotContainHash": "Nazwa nie może zawierać #."
}, },
"details": { "details": {
"person": "Osoba", "person": "Osoba",

View File

@@ -543,7 +543,7 @@
"hide": "Ukryj hasło", "hide": "Ukryj hasło",
"requirements": { "requirements": {
"title": "Wymagania hasła:", "title": "Wymagania hasła:",
"length": "Co najmniej 12 znaków", "length": "Co najmniej 8 znaków",
"uppercase": "Co najmniej jedna duża litera", "uppercase": "Co najmniej jedna duża litera",
"digit": "Co najmniej jedna cyfra", "digit": "Co najmniej jedna cyfra",
"special": "Co najmniej jeden znak specjalny (!@#$%^&*(),.?\":{}|<>)" "special": "Co najmniej jeden znak specjalny (!@#$%^&*(),.?\":{}|<>)"

View File

@@ -135,8 +135,7 @@
"bg": "Български (Bulgară)", "bg": "Български (Bulgară)",
"gl": "Galego (Galiciană)", "gl": "Galego (Galiciană)",
"id": "Bahasa Indonesia (Indoneziană)", "id": "Bahasa Indonesia (Indoneziană)",
"ur": "اردو (Urdu)", "ur": "اردو (Urdu)"
"hr": "Hrvatski (Croată)"
}, },
"theme": { "theme": {
"default": "Implicit", "default": "Implicit",

View File

@@ -2,8 +2,7 @@
"description": { "description": {
"addFace": "Adaugă o colecție nouă în Biblioteca de fețe încărcând prima ta imagine.", "addFace": "Adaugă o colecție nouă în Biblioteca de fețe încărcând prima ta imagine.",
"placeholder": "Introduceti un nume pentru aceasta colectie", "placeholder": "Introduceti un nume pentru aceasta colectie",
"invalidName": "Nume invalid. Numele pot include doar litere, cifre, spații, apostrofuri, underscore-uri și liniuțe.", "invalidName": "Nume invalid. Numele pot include doar litere, cifre, spații, apostrofuri, underscore-uri și liniuțe."
"nameCannotContainHash": "Numele nu poate conține #."
}, },
"details": { "details": {
"person": "Persoană", "person": "Persoană",

View File

@@ -508,7 +508,7 @@
"hide": "Ascunde parola", "hide": "Ascunde parola",
"requirements": { "requirements": {
"title": "Cerințe parolă:", "title": "Cerințe parolă:",
"length": "Cel puțin 12 caractere", "length": "Cel puțin 8 caracter",
"uppercase": "Cel puțin o literă majusculă", "uppercase": "Cel puțin o literă majusculă",
"digit": "Cel puțin o cifră", "digit": "Cel puțin o cifră",
"special": "Cel puțin un caracter special (!@#$%^&*(),.?\":{}|<>)" "special": "Cel puțin un caracter special (!@#$%^&*(),.?\":{}|<>)"

View File

@@ -159,8 +159,7 @@
"bg": "Български (Bulgariska)", "bg": "Български (Bulgariska)",
"gl": "Galego (Galiciska)", "gl": "Galego (Galiciska)",
"id": "Bahasa Indonesia (Indonesiska)", "id": "Bahasa Indonesia (Indonesiska)",
"ur": "اردو (Urdu)", "ur": "اردو (Urdu)"
"hr": "Hrvatski (kroatiska)"
}, },
"darkMode": { "darkMode": {
"withSystem": { "withSystem": {

View File

@@ -12,8 +12,7 @@
"description": { "description": {
"placeholder": "Ange ett namn för denna samling", "placeholder": "Ange ett namn för denna samling",
"addFace": "Lägg till en ny samling i ansiktsbiblioteket genom att ladda upp din första bild.", "addFace": "Lägg till en ny samling i ansiktsbiblioteket genom att ladda upp din första bild.",
"invalidName": "Ogiltigt namn. Namn får endast innehålla bokstäver, siffror, mellanslag, apostrofer, understreck och bindestreck.", "invalidName": "Ogiltigt namn. Namn får endast innehålla bokstäver, siffror, mellanslag, apostrofer, understreck och bindestreck."
"nameCannotContainHash": "Namn får inte innehålla #."
}, },
"documentTitle": "Ansiktsbibliotek - Frigate", "documentTitle": "Ansiktsbibliotek - Frigate",
"steps": { "steps": {

View File

@@ -540,7 +540,7 @@
"hide": "Dölj lösenord", "hide": "Dölj lösenord",
"requirements": { "requirements": {
"title": "Lösenordskrav:", "title": "Lösenordskrav:",
"length": "Minst 12 tecken", "length": "Minst 8 tecken",
"uppercase": "Minst en stor bokstav", "uppercase": "Minst en stor bokstav",
"digit": "Minst en siffra", "digit": "Minst en siffra",
"special": "Minst ett specialtecken (!@#$%^&*(),.?\":{}|<>)" "special": "Minst ett specialtecken (!@#$%^&*(),.?\":{}|<>)"

View File

@@ -208,8 +208,7 @@
"bg": "保加利亚语 (Български)", "bg": "保加利亚语 (Български)",
"gl": "加利西亚语 (Galego)", "gl": "加利西亚语 (Galego)",
"id": "印度尼西亚语 (Bahasa Indonesia)", "id": "印度尼西亚语 (Bahasa Indonesia)",
"ur": "乌尔都语 (اردو)", "ur": "乌尔都语 (اردو)"
"hr": "克罗地亚语Hrvatski"
}, },
"appearance": "外观", "appearance": "外观",
"darkMode": { "darkMode": {

View File

@@ -2,8 +2,7 @@
"description": { "description": {
"addFace": "我们将引导你如何向人脸库中添加新的合集。", "addFace": "我们将引导你如何向人脸库中添加新的合集。",
"placeholder": "请输入此合集的名称", "placeholder": "请输入此合集的名称",
"invalidName": "名称无效。名称只能包含字母、数字、空格、撇号、下划线和连字符。", "invalidName": "名称无效。名称只能包含字母、数字、空格、撇号、下划线和连字符。"
"nameCannotContainHash": "名称中不允许包含“#”符号。"
}, },
"details": { "details": {
"person": "人", "person": "人",

View File

@@ -282,7 +282,7 @@
}, },
"delete": { "delete": {
"title": "确认删除", "title": "确认删除",
"desc": "你确定要删除{{type}} “<strong>{{name}}</strong>” 吗?", "desc": "你确定要删除{{type}} <em>{{name}}</em> 吗?",
"success": "{{name}} 已被删除。" "success": "{{name}} 已被删除。"
}, },
"error": { "error": {
@@ -543,7 +543,7 @@
"hide": "隐藏密码", "hide": "隐藏密码",
"requirements": { "requirements": {
"title": "密码要求:", "title": "密码要求:",
"length": "至少需要 12 位字符", "length": "至少8个字符",
"uppercase": "至少一个大写字母", "uppercase": "至少一个大写字母",
"digit": "至少一位数字", "digit": "至少一位数字",
"special": "至少一个特殊符号 (!@#$%^&*(),.?\":{}|<>)" "special": "至少一个特殊符号 (!@#$%^&*(),.?\":{}|<>)"

View File

@@ -12,7 +12,7 @@ import { useCameraPreviews } from "@/hooks/use-camera-previews";
import { baseUrl } from "@/api/baseUrl"; import { baseUrl } from "@/api/baseUrl";
import { VideoPreview } from "../preview/ScrubbablePreview"; import { VideoPreview } from "../preview/ScrubbablePreview";
import { useApiHost } from "@/api"; import { useApiHost } from "@/api";
import { isSafari } from "react-device-detect"; import { isDesktop, isSafari } from "react-device-detect";
import { useUserPersistence } from "@/hooks/use-user-persistence"; import { useUserPersistence } from "@/hooks/use-user-persistence";
import { Skeleton } from "../ui/skeleton"; import { Skeleton } from "../ui/skeleton";
import { Button } from "../ui/button"; import { Button } from "../ui/button";
@@ -87,6 +87,7 @@ export function AnimatedEventCard({
}, [visibilityListener]); }, [visibilityListener]);
const [isLoaded, setIsLoaded] = useState(false); const [isLoaded, setIsLoaded] = useState(false);
const [isHovered, setIsHovered] = useState(false);
// interaction // interaction
@@ -133,27 +134,31 @@ export function AnimatedEventCard({
<Tooltip> <Tooltip>
<TooltipTrigger asChild> <TooltipTrigger asChild>
<div <div
className="group relative h-24 flex-shrink-0 overflow-hidden rounded md:rounded-lg 4k:h-32" className="relative h-24 flex-shrink-0 overflow-hidden rounded md:rounded-lg 4k:h-32"
style={{ style={{
aspectRatio: alertVideos ? aspectRatio : undefined, aspectRatio: alertVideos ? aspectRatio : undefined,
}} }}
onMouseEnter={isDesktop ? () => setIsHovered(true) : undefined}
onMouseLeave={isDesktop ? () => setIsHovered(false) : undefined}
> >
<Tooltip> {isHovered && (
<TooltipTrigger asChild> <Tooltip>
<Button <TooltipTrigger asChild>
className="pointer-events-none absolute left-2 top-1 z-40 bg-gray-500 bg-gradient-to-br from-gray-400 to-gray-500 opacity-0 transition-opacity group-hover:pointer-events-auto group-hover:opacity-100" <Button
size="xs" className="absolute left-2 top-1 z-40 bg-gray-500 bg-gradient-to-br from-gray-400 to-gray-500"
aria-label={t("markAsReviewed")} size="xs"
onClick={async () => { aria-label={t("markAsReviewed")}
await axios.post(`reviews/viewed`, { ids: [event.id] }); onClick={async () => {
updateEvents(); await axios.post(`reviews/viewed`, { ids: [event.id] });
}} updateEvents();
> }}
<FaCircleCheck className="size-3 text-white" /> >
</Button> <FaCircleCheck className="size-3 text-white" />
</TooltipTrigger> </Button>
<TooltipContent>{t("markAsReviewed")}</TooltipContent> </TooltipTrigger>
</Tooltip> <TooltipContent>{t("markAsReviewed")}</TooltipContent>
</Tooltip>
)}
{previews != undefined && alertVideosLoaded && ( {previews != undefined && alertVideosLoaded && (
<div <div
className="size-full cursor-pointer" className="size-full cursor-pointer"

View File

@@ -181,13 +181,6 @@ export default function PreviewThumbnailPlayer({
config?.ui?.timezone, config?.ui?.timezone,
); );
const getEventType = (text: string) => {
if (review.data.objects.includes(text)) return "object";
if (review.data.audio.includes(text)) return "audio";
if (review.data.sub_labels?.includes(text)) return "manual";
return "object";
};
return ( return (
<div <div
className="relative size-full cursor-pointer" className="relative size-full cursor-pointer"
@@ -302,7 +295,7 @@ export default function PreviewThumbnailPlayer({
(item) => (item) =>
item !== undefined && !item.includes("-verified"), item !== undefined && !item.includes("-verified"),
) )
.map((text) => getTranslatedLabel(text, getEventType(text))) .map((text) => getTranslatedLabel(text))
.sort() .sort()
.join(", ")} .join(", ")}
</TooltipContent> </TooltipContent>