feat: Rename the card to advanced-camera-card (#1873)
Whilst the Frigate support in this card is the best among camera engines, the name incorrectly suggests that Frigate is a requirement. Instead, to broaden the appeal, change to more camera agnostic name. This does not suggest any change in priority, role or support for Frigate. This change is likely to be bug prone, due to the size of the rename -- the code contains 1500+ references to "Frigate" most of which make sense to rename, some which do not, all of which needed human assessment. - Closes #1298 BREAKING CHANGE: References to `frigate-card` in all kinds of configuration need to be updated to `advanced-camera-card`. An automated config upgrade should take care of the majority of usecases (click `Edit -> Upgrade -> Save`), though may not be perfect.
This commit is contained in:
@@ -1,7 +1,7 @@
|
||||
{
|
||||
"common": {
|
||||
"frigate_card": "Tarjeta Frigate",
|
||||
"frigate_card_description": "Una targeta Lovelace per a utilitzar amb Frigate",
|
||||
"advanced_camera_card": "",
|
||||
"advanced_camera_card_description": "",
|
||||
"live": "En directe",
|
||||
"no_media": "No hi ha suport per mostrar",
|
||||
"recordings": "Enregistraments",
|
||||
@@ -265,7 +265,7 @@
|
||||
"modes": {
|
||||
"camera": "Instantània de l'entitat de la càmera de Home Assistant",
|
||||
"entity": "",
|
||||
"screensaver": "Logotip de Frigate incrustat",
|
||||
"screensaver": "",
|
||||
"url": "Imatge arbitrària especificada per URL"
|
||||
},
|
||||
"refresh_seconds": "Nombre de segons després dels quals cal actualitzar (0=mai)",
|
||||
@@ -394,10 +394,10 @@
|
||||
"download": "Descarregar",
|
||||
"enabled": "Botó habilitat",
|
||||
"expand": "Expandir",
|
||||
"frigate": "Menú de Frigate / Vista per defecte",
|
||||
"fullscreen": "Pantalla completa",
|
||||
"icon": "Icona",
|
||||
"image": "Imatge",
|
||||
"iris": "",
|
||||
"live": "En directe",
|
||||
"media_player": "Envia al reproductor multimèdia",
|
||||
"microphone": "Micròfon",
|
||||
@@ -646,7 +646,6 @@
|
||||
"no_camera_entity": "No s'ha pogut trobar l'entitat de la càmera",
|
||||
"no_camera_entity_for_triggers": "Es requereix una entitat de càmera per detectar automàticament els activadors",
|
||||
"no_camera_id": "No s'ha pogut determinar l'identificador de la càmera per a la següent càmera, és possible que hagis d'establir el paràmetre 'id' manualment",
|
||||
"no_camera_name": "No s'ha pogut determinar el nom de la càmera Frigate per a la càmera (o una de les seves dependències), especifiqueu 'camera_entity' o 'camera_name'",
|
||||
"no_dashboard_or_view": "Tant els paràmetres 'dashboard_path' com 'view_path' són necessaris per al mètode d'emissió 'dashboard'",
|
||||
"no_live_camera": "El paràmetre 'camera_entity' s'ha de configurar i validar per a aquest proveïdor en directe",
|
||||
"no_supported_camera": "",
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
{
|
||||
"common": {
|
||||
"frigate_card": "Frigate card",
|
||||
"frigate_card_description": "A Lovelace card for use with Frigate",
|
||||
"advanced_camera_card": "Advanced Camera Card",
|
||||
"advanced_camera_card_description": "An Advanced Camera Card",
|
||||
"live": "Live",
|
||||
"no_media": "No media to display",
|
||||
"recordings": "Recordings",
|
||||
@@ -177,7 +177,7 @@
|
||||
},
|
||||
"webrtc_card": {
|
||||
"editor_label": "WebRTC Card Options",
|
||||
"entity": "WebRTC Card Camera Entity (Not a Frigate camera)",
|
||||
"entity": "WebRTC Card Camera Entity",
|
||||
"url": "WebRTC Card Camera URL"
|
||||
}
|
||||
},
|
||||
@@ -265,7 +265,7 @@
|
||||
"modes": {
|
||||
"camera": "Home Assistant camera snapshot of camera entity",
|
||||
"entity": "Entity with entity_picture attribute",
|
||||
"screensaver": "Embedded Frigate logo",
|
||||
"screensaver": "Embedded screensaver image",
|
||||
"url": "Arbitrary image specified by URL"
|
||||
},
|
||||
"refresh_seconds": "Number of seconds after which to refresh (0=never)",
|
||||
@@ -394,10 +394,10 @@
|
||||
"download": "Download",
|
||||
"enabled": "Button enabled",
|
||||
"expand": "Expand",
|
||||
"frigate": "Frigate menu / Default view",
|
||||
"fullscreen": "Fullscreen",
|
||||
"icon": "Icon",
|
||||
"image": "Image",
|
||||
"iris": "Iris / Default View / Unhide menu",
|
||||
"live": "Live",
|
||||
"media_player": "Send to media player",
|
||||
"microphone": "Microphone",
|
||||
@@ -626,7 +626,7 @@
|
||||
"diagnostics": "Card diagnostics. Please review for confidential information prior to sharing",
|
||||
"download_no_media": "No media to download",
|
||||
"download_sign_failed": "Could not sign media URL for download",
|
||||
"duplicate_camera_id": "Duplicate Frigate camera id for the following camera, use the 'id' parameter to uniquely identify cameras",
|
||||
"duplicate_camera_id": "Duplicate camera id for the following camera, use the 'id' parameter to uniquely identify cameras",
|
||||
"empty_response": "Received empty response from Home Assistant for request",
|
||||
"failed_response": "Failed to receive response from Home Assistant for request",
|
||||
"failed_retain": "Could not retain event",
|
||||
@@ -646,7 +646,6 @@
|
||||
"no_camera_entity": "Could not find camera entity",
|
||||
"no_camera_entity_for_triggers": "A camera entity is required in order to autodetect triggers",
|
||||
"no_camera_id": "Could not determine camera id for the following camera, may need to set 'id' parameter manually",
|
||||
"no_camera_name": "Could not determine a Frigate camera name for camera (or one of its dependents), please specify either 'camera_entity' or 'camera_name'",
|
||||
"no_dashboard_or_view": "Both 'dashboard_path' and 'view_path' parameters are required for the 'dashboard' cast method",
|
||||
"no_live_camera": "The camera_entity parameter must be set and valid for this live provider",
|
||||
"no_supported_camera": "The selected camera does not support this view",
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
{
|
||||
"common": {
|
||||
"frigate_card": "Carte Frigate",
|
||||
"frigate_card_description": "Une carte Lovelace à utiliser avec Frigate",
|
||||
"advanced_camera_card": "",
|
||||
"advanced_camera_card_description": "",
|
||||
"live": "En direct",
|
||||
"no_media": "Aucun média à afficher",
|
||||
"recordings": "Enregistrements",
|
||||
@@ -265,7 +265,7 @@
|
||||
"modes": {
|
||||
"camera": "Instantané de la caméra Home Assistant de l'entité caméra",
|
||||
"entity": "Entité avec l'attribut entity_picture",
|
||||
"screensaver": "Logo Frigate intégré",
|
||||
"screensaver": "",
|
||||
"url": "Image arbitraire spécifiée par URL"
|
||||
},
|
||||
"refresh_seconds": "Nombre de secondes après lesquelles actualiser (0=jamais)",
|
||||
@@ -394,10 +394,10 @@
|
||||
"download": "Télécharger",
|
||||
"enabled": "Bouton activé",
|
||||
"expand": "Étendre",
|
||||
"frigate": "Menu Frigate / Vue par défaut",
|
||||
"fullscreen": "Plein écran",
|
||||
"icon": "Icône",
|
||||
"image": "Image",
|
||||
"iris": "",
|
||||
"live": "En direct",
|
||||
"media_player": "Envoyer au lecteur multimédia",
|
||||
"microphone": "Microphone",
|
||||
@@ -646,7 +646,6 @@
|
||||
"no_camera_entity": "Impossible de trouver l'entité de caméra",
|
||||
"no_camera_entity_for_triggers": "Une entité caméra est requise pour détecter automatiquement les déclencheurs",
|
||||
"no_camera_id": "Impossible de déterminer l'identifiant de la caméra suivante. Il faudra peut-être définir le paramètre « ID » manuellement",
|
||||
"no_camera_name": "Impossible de déterminer le nom de la caméra Frigate pour la caméra (ou l'une de ses dépendances). Veuillez spécifier soit « camera_entity » soit « camera_name ».",
|
||||
"no_dashboard_or_view": "Les paramètres 'dashboard_path' et 'view_path' sont requis pour la méthode de conversion 'dashboard'",
|
||||
"no_live_camera": "Le paramètre camera_entity doit être défini et valide pour ce fournisseur en direct",
|
||||
"no_supported_camera": "La caméra sélectionnée ne prend pas en charge cette vue",
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
{
|
||||
"common": {
|
||||
"frigate_card": "Frigate card",
|
||||
"frigate_card_description": "Una scheda Lovelace per l'uso con Frigate",
|
||||
"advanced_camera_card": "",
|
||||
"advanced_camera_card_description": "",
|
||||
"live": "Live",
|
||||
"no_media": "Nessun contenuto multimediale da visualizzare",
|
||||
"recordings": "Registrazioni",
|
||||
@@ -265,7 +265,7 @@
|
||||
"modes": {
|
||||
"camera": "Istantanea della telecamera di Home Assistant dell'entità telecamera",
|
||||
"entity": "",
|
||||
"screensaver": "Logo Frigate incorporato",
|
||||
"screensaver": "",
|
||||
"url": "Immagine arbitraria specificata dall'URL"
|
||||
},
|
||||
"refresh_seconds": "Numero di secondi dopo i quali aggiornare (0 = mai)",
|
||||
@@ -394,10 +394,10 @@
|
||||
"download": "Download",
|
||||
"enabled": "Pulsante abilitato",
|
||||
"expand": "Espandere",
|
||||
"frigate": "Frigate menu / Visualizzazione predefinita",
|
||||
"fullscreen": "A schermo intero",
|
||||
"icon": "Icona",
|
||||
"image": "Immagine",
|
||||
"iris": "",
|
||||
"live": "Abitare",
|
||||
"media_player": "Invia a Media Player",
|
||||
"microphone": "",
|
||||
@@ -646,7 +646,6 @@
|
||||
"no_camera_entity": "Impossibile trovare l'entità fotocamera",
|
||||
"no_camera_entity_for_triggers": "È necessaria un'entità telecamera per rilevare automaticamente i trigger",
|
||||
"no_camera_id": "Impossibile determinare l'ID della telecamera , potrebbe essere necessario impostare manualmente il parametro 'ID'",
|
||||
"no_camera_name": "Impossibile determinare un nome della telecamera in Frigate, si prega di specificare 'camera_enty' o 'camera_name'",
|
||||
"no_dashboard_or_view": "",
|
||||
"no_live_camera": "Il parametro fotocamera_enty deve essere impostato e valido per questo provider live",
|
||||
"no_supported_camera": "",
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
{
|
||||
"common": {
|
||||
"frigate_card": "Cartão Frigate",
|
||||
"frigate_card_description": "Um cartão da Lovelace para usar com Frigate",
|
||||
"advanced_camera_card": "",
|
||||
"advanced_camera_card_description": "",
|
||||
"live": "Ao Vivo",
|
||||
"no_media": "Nenhuma mídia para exibir",
|
||||
"recordings": "Gravações",
|
||||
@@ -265,7 +265,7 @@
|
||||
"modes": {
|
||||
"camera": "Instantâneo da câmera do Home Assistant, da entidade de câmera",
|
||||
"entity": "",
|
||||
"screensaver": "Logo Frigate embutido",
|
||||
"screensaver": "",
|
||||
"url": "Imagem arbitrária especificada por URL"
|
||||
},
|
||||
"refresh_seconds": "Número de segundos após o qual atualizar (0 = nunca)",
|
||||
@@ -394,10 +394,10 @@
|
||||
"download": "Baixe a mídia do evento",
|
||||
"enabled": "Botão ativado",
|
||||
"expand": "Expandir",
|
||||
"frigate": "Frigate menu / Visualização padrão",
|
||||
"fullscreen": "Tela cheia",
|
||||
"icon": "Ícone",
|
||||
"image": "Imagem",
|
||||
"iris": "",
|
||||
"live": "Ao vivo",
|
||||
"media_player": "Enviar para o reprodutor de mídia",
|
||||
"microphone": "",
|
||||
@@ -646,7 +646,6 @@
|
||||
"no_camera_entity": "Não foi possível encontrar a entidade da câmera",
|
||||
"no_camera_entity_for_triggers": "Uma entidade de câmera é necessária para detectar automaticamente os gatilhos",
|
||||
"no_camera_id": "Não foi possível determinar o ID da câmera para a câmera a seguir, pode ser necessário definir o parâmetro 'id' manualmente",
|
||||
"no_camera_name": "Não foi possível determinar o nome da câmera da Frigate, especifique 'camera_entity' ou 'camera_name' para a câmera a seguir",
|
||||
"no_dashboard_or_view": "",
|
||||
"no_live_camera": "O parâmetro camera_entity deve ser definido e válido para este provedor ativo",
|
||||
"no_supported_camera": "",
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
{
|
||||
"common": {
|
||||
"frigate_card": "Cartão Frigate",
|
||||
"frigate_card_description": "Um cartão da Lovelace para usar com Frigate",
|
||||
"advanced_camera_card": "",
|
||||
"advanced_camera_card_description": "",
|
||||
"live": "Ao Vivo",
|
||||
"no_media": "Sem média",
|
||||
"recordings": "Gravações",
|
||||
@@ -265,7 +265,7 @@
|
||||
"modes": {
|
||||
"camera": "Instantâneo da câmera do Home Assistant, da entidade de câmera",
|
||||
"entity": "",
|
||||
"screensaver": "Logo Frigate embutido",
|
||||
"screensaver": "",
|
||||
"url": "Imagem arbitrária especificada por URL"
|
||||
},
|
||||
"refresh_seconds": "Número de segundos após o qual atualizar (0 = nunca)",
|
||||
@@ -394,10 +394,10 @@
|
||||
"download": "Descarregar mídia do evento",
|
||||
"enabled": "Botão ativado",
|
||||
"expand": "Expandir",
|
||||
"frigate": "Frigate menu / Visualização padrão",
|
||||
"fullscreen": "Tela cheia",
|
||||
"icon": "Ícone",
|
||||
"image": "Imagem",
|
||||
"iris": "",
|
||||
"live": "Ao vivo",
|
||||
"media_player": "Enviar para o reprodutor de mídia",
|
||||
"microphone": "",
|
||||
@@ -646,7 +646,6 @@
|
||||
"no_camera_entity": "Não existe uma entidade câmera",
|
||||
"no_camera_entity_for_triggers": "Não existe camera para a acção",
|
||||
"no_camera_id": "Não foi possível determinar o ID da câmera para a câmera a seguir, pode ser necessário definir o parâmetro 'id' manualmente",
|
||||
"no_camera_name": "Não foi possível determinar o nome da câmera da Frigate, especifique 'camera_entity' ou 'camera_name' para a câmera a seguir",
|
||||
"no_dashboard_or_view": "",
|
||||
"no_live_camera": "O parâmetro camera_entity deve ser definido e válido para este serviço ativo",
|
||||
"no_supported_camera": "",
|
||||
|
||||
@@ -14,7 +14,7 @@ const languages: Record<string, any> = {
|
||||
// The language is calculated and stored once, then re-used to avoid needing to
|
||||
// repeat the lookups and to ensure minimal information needs to be plumbed
|
||||
// through on each localization call.
|
||||
let frigateCardLanguage: string | undefined;
|
||||
let advancedCameraCardLanguage: string | undefined;
|
||||
|
||||
/**
|
||||
* Get the configured language.
|
||||
@@ -67,7 +67,7 @@ export const loadLanguages = async (hass: HomeAssistant): Promise<boolean> => {
|
||||
}
|
||||
|
||||
if (lang) {
|
||||
frigateCardLanguage = lang;
|
||||
advancedCameraCardLanguage = lang;
|
||||
}
|
||||
return true;
|
||||
};
|
||||
@@ -85,7 +85,7 @@ export function localize(string: string, search = '', replace = ''): string {
|
||||
try {
|
||||
translated = string
|
||||
.split('.')
|
||||
.reduce((o, i) => o[i], languages[frigateCardLanguage ?? DEFAULT_LANG]);
|
||||
.reduce((o, i) => o[i], languages[advancedCameraCardLanguage ?? DEFAULT_LANG]);
|
||||
} catch (_) {}
|
||||
|
||||
if (!translated) {
|
||||
|
||||
Reference in New Issue
Block a user