feat(frontend): i18n expansion, admin/profile i18n, grid/list view fix, empty state

- Add 5 new locales (hi, ar, ru, ja, ko) — now 14 total
- Admin panel: 117 i18n keys, confirm modal, animated tabs, no inline handlers
- Profile page: 58 i18n keys with data-i18n attributes
- Fix i18n safeT() shadowing bug and translationsLoaded timing
- Fix grid/list view: list header no longer shows in grid mode on login
- Fix classList.toggle hidden sync for view switching across all nav functions
- Revert .hidden important that broke login page rendering
- Add files empty state (no_files + empty_hint) with translations
- Fix language selector dropdown scroll and styling
- Fix admin panel scroll with sticky tabs
This commit is contained in:
Diocrafts
2026-03-09 00:08:34 +01:00
parent f409a9edd7
commit df336da679
43 changed files with 6645 additions and 2043 deletions
+549 -369
View File
@@ -1,369 +1,549 @@
{
"app": {
"title": "OxiCloud",
"description": "Sistema de armazenamento em nuvem minimalista"
},
"nav": {
"files": "Arquivos",
"shared": "Compartilhados",
"recent": "Recentes",
"favorites": "Favoritos",
"photos": "Fotos",
"trash": "Lixeira"
},
"photos": {
"empty_state": "Nenhuma foto ainda",
"empty_hint": "Envie imagens ou vídeos para vê-los aqui",
"items_selected": "selecionados",
"view_daily": "Dia",
"view_monthly": "Mês",
"view_yearly": "Ano"
},
"actions": {
"search": "Pesquisar arquivos...",
"new_folder": "Nova pasta",
"upload": "Enviar",
"upload_files": "Enviar arquivos",
"upload_folder": "Enviar pasta",
"upload.uploading": "Enviando...",
"upload.complete": "{count} / {total} enviados",
"rename": "Renomear",
"move": "Mover para...",
"move_to": "Mover para",
"delete": "Excluir",
"download": "Baixar",
"view": "Visualizar",
"cancel": "Cancelar",
"confirm": "Confirmar",
"share": "Compartilhar",
"favorite": "Adicionar aos favoritos",
"unfavorite": "Remover dos favoritos",
"copy": "Copiar",
"notify": "Notificar",
"send": "Enviar",
"clear_recent": "Limpar recentes",
"logout": "Sair",
"create": "Criar",
"search_btn": "Pesquisar",
"close": "Fechar",
"delete_permanently": "Excluir permanentemente",
"empty_trash": "Esvaziar lixeira"
},
"user_menu": {
"appearance": "Aparência",
"about": "Sobre o OxiCloud",
"about_description": "Plataforma de armazenamento em nuvem construída com Rust e Arquitetura Limpa. Rápida, segura e privada.",
"admin_panel": "Painel de administração",
"profile": "Meu perfil",
"role_user": "Usuário"
},
"share": {
"dialogTitle": "Link de compartilhamento",
"linkLabel": "Link compartilhado:",
"copyLink": "Copiar",
"permissions": "Permissões:",
"permissionRead": "Leitura",
"permissionWrite": "Escrita",
"permissionReshare": "Recompartilhar",
"password": "Proteção por senha:",
"generatePassword": "Gerar",
"expiration": "Data de expiração:",
"update": "Atualizar compartilhamento",
"remove": "Remover compartilhamento",
"notifyTitle": "Enviar notificação",
"notifyEmailLabel": "Endereço de e-mail:",
"notifyMessageLabel": "Mensagem (opcional):",
"notifySend": "Enviar notificação",
"shareWithOthers": "Compartilhar com outros",
"sharePublicly": "Compartilhar publicamente",
"shareSettings": "Configurações de compartilhamento",
"shareCopied": "Link copiado para a área de transferência",
"shareCreated": "Link de compartilhamento criado com sucesso",
"shareUpdated": "Configurações de compartilhamento atualizadas",
"shareRemoved": "Compartilhamento removido com sucesso"
},
"share_dialogTitle": "Link de compartilhamento",
"share_linkLabel": "Link compartilhado:",
"share_copyLink": "Copiar",
"share_permissions": "Permissões:",
"share_permissionRead": "Leitura",
"share_permissionWrite": "Escrita",
"share_permissionReshare": "Recompartilhar",
"share_password": "Proteção por senha:",
"share_generatePassword": "Gerar",
"share_expiration": "Data de expiração:",
"share_update": "Atualizar compartilhamento",
"share_remove": "Remover compartilhamento",
"share_notifyTitle": "Enviar notificação",
"share_notifyEmailLabel": "Endereço de e-mail:",
"share_notifyMessageLabel": "Mensagem (opcional):",
"share_notifySend": "Enviar notificação",
"shared": {
"backToFiles": "Voltar aos arquivos",
"pageTitle": "Recursos compartilhados",
"pageDescription": "Gerencie seus arquivos e pastas compartilhados",
"filterType": "Tipo:",
"filterAll": "Todos",
"filterFiles": "Arquivos",
"filterFolders": "Pastas",
"sortBy": "Ordenar por:",
"sortByName": "Nome",
"sortByDate": "Data de compartilhamento",
"sortByExpiration": "Expiração",
"search": "Pesquisar",
"colName": "Nome",
"colType": "Tipo",
"colDateShared": "Data de compartilhamento",
"colExpiration": "Expiração",
"colPermissions": "Permissões",
"colPassword": "Senha",
"colActions": "Ações",
"emptyStateTitle": "Nenhum recurso compartilhado ainda",
"emptyStateDesc": "Quando você compartilhar arquivos ou pastas, eles aparecerão aqui",
"goToFiles": "Ir para arquivos",
"typeFile": "Arquivo",
"typeFolder": "Pasta",
"noExpiration": "Sem expiração",
"hasPassword": "Sim",
"noPassword": "Não",
"editShare": "Editar compartilhamento",
"notifyShare": "Notificar alguém",
"copyLink": "Copiar link",
"removeShare": "Remover compartilhamento",
"linkCopied": "Link copiado para a área de transferência!",
"linkCopyFailed": "Falha ao copiar o link",
"itemUpdated": "Configurações de compartilhamento atualizadas",
"itemRemoved": "Compartilhamento removido com sucesso",
"invalidEmail": "Por favor, insira um endereço de e-mail válido",
"notificationSent": "Notificação enviada com sucesso",
"notificationFailed": "Falha ao enviar a notificação"
},
"shared_backToFiles": "Voltar aos arquivos",
"shared_pageTitle": "Recursos compartilhados",
"shared_pageDescription": "Gerencie seus arquivos e pastas compartilhados",
"shared_filterType": "Tipo:",
"shared_filterAll": "Todos",
"shared_filterFiles": "Arquivos",
"shared_filterFolders": "Pastas",
"shared_sortBy": "Ordenar por:",
"shared_sortByName": "Nome",
"shared_sortByDate": "Data de compartilhamento",
"shared_sortByExpiration": "Expiração",
"shared_search": "Pesquisar",
"shared_colName": "Nome",
"shared_colType": "Tipo",
"shared_colDateShared": "Data de compartilhamento",
"shared_colExpiration": "Expiração",
"shared_colPermissions": "Permissões",
"shared_colPassword": "Senha",
"shared_colActions": "Ações",
"shared_emptyStateTitle": "Nenhum recurso compartilhado ainda",
"shared_emptyStateDesc": "Quando você compartilhar arquivos ou pastas, eles aparecerão aqui",
"shared_goToFiles": "Ir para arquivos",
"shared_typeFile": "Arquivo",
"shared_typeFolder": "Pasta",
"shared_noExpiration": "Sem expiração",
"shared_hasPassword": "Sim",
"shared_noPassword": "Não",
"shared_editShare": "Editar compartilhamento",
"shared_notifyShare": "Notificar alguém",
"shared_copyLink": "Copiar link",
"shared_removeShare": "Remover compartilhamento",
"shared_linkCopied": "Link copiado para a área de transferência!",
"shared_linkCopyFailed": "Falha ao copiar o link",
"shared_itemUpdated": "Configurações de compartilhamento atualizadas",
"shared_itemRemoved": "Compartilhamento removido com sucesso",
"shared_invalidEmail": "Por favor, insira um endereço de e-mail válido",
"shared_notificationSent": "Notificação enviada com sucesso",
"shared_notificationFailed": "Falha ao enviar a notificação",
"files": {
"name": "Nome",
"type": "Tipo",
"size": "Tamanho",
"modified": "Modificado",
"no_files": "Nenhum arquivo nesta pasta",
"loading": "Carregando arquivos…",
"view_grid": "Visualização em grade",
"view_list": "Visualização em lista",
"file_types": {
"document": "Documento",
"image": "Imagem",
"video": "Vídeo",
"audio": "Áudio",
"pdf": "PDF",
"text": "Texto",
"folder": "Pasta",
"spreadsheet": "Planilha",
"presentation": "Apresentação",
"archive": "Arquivo compactado",
"installer": "Instalador",
"code": "Código"
}
},
"dialogs": {
"rename_folder": "Renomear pasta",
"rename_file": "Renomear arquivo",
"new_name": "Novo nome",
"new_folder_title": "Nova pasta",
"folder_name": "Nome da pasta",
"folder_placeholder": "Minha pasta",
"rename_title": "Renomear",
"move_file": "Mover arquivo",
"move_folder": "Mover pasta",
"select_destination": "Selecione a pasta de destino:",
"root": "Raiz",
"delete_confirmation": "Tem certeza de que deseja excluir",
"and_contents": "e todo o seu conteúdo",
"no_undo": "Esta ação não pode ser desfeita",
"confirm_title": "Confirmar ação",
"confirm_delete": "Mover para a lixeira",
"confirm_delete_file": "Tem certeza de que deseja mover o arquivo \"{{name}}\" para a lixeira?",
"confirm_delete_folder": "Tem certeza de que deseja mover a pasta \"{{name}}\" e todo o seu conteúdo para a lixeira?",
"confirm_permanent_delete": "Excluir permanentemente",
"confirm_permanent_delete_msg": "Tem certeza de que deseja excluir permanentemente este item? Esta ação não pode ser desfeita.",
"confirm_empty_trash": "Esvaziar lixeira",
"confirm_delete_share": "Excluir link de compartilhamento",
"confirm_delete_share_msg": "Tem certeza de que deseja excluir este link de compartilhamento?",
"share_file": "Compartilhar arquivo",
"existing_shares": "Compartilhamentos existentes",
"share_options": "Opções de compartilhamento",
"password": "Senha",
"expiration": "Expiração",
"permissions": "Permissões",
"generated_link": "Link gerado",
"notify": "Enviar notificação",
"recipient": "Destinatário",
"message": "Mensagem"
},
"dropzone": {
"drag_files": "Arraste arquivos aqui ou clique para selecionar",
"drop_files": "Solte os arquivos para enviar"
},
"permissions": {
"read": "Leitura",
"write": "Escrita",
"reshare": "Recompartilhar"
},
"errors": {
"file_not_found": "Arquivo não encontrado",
"folder_not_found": "Pasta não encontrada",
"delete_error": "Erro ao excluir",
"upload_error": "Erro ao enviar o arquivo",
"rename_error": "Erro ao renomear",
"move_error": "Erro ao mover",
"empty_name": "O nome não pode estar vazio",
"name_exists": "Já existe um arquivo ou pasta com esse nome",
"generic_error": "Ocorreu um erro"
},
"breadcrumb": {
"home": "Início"
},
"trash": {
"empty_trash": "Esvaziar lixeira",
"empty_state": "A lixeira está vazia",
"original_location": "Local original",
"deleted_date": "Data de exclusão",
"actions": "Ações",
"restore": "Restaurar",
"delete_permanently": "Excluir permanentemente",
"empty_confirm": "Tem certeza de que deseja esvaziar a lixeira? Todos os itens serão excluídos permanentemente."
},
"auth": {
"login_title": "Entrar",
"username": "Usuário",
"username_placeholder": "Digite seu nome de usuário",
"password": "Senha",
"password_placeholder": "Digite sua senha",
"login_button": "Entrar",
"no_account": "Não tem uma conta?",
"register": "Cadastre-se",
"admin_setup": "Primeira vez?",
"setup": "Configurar administrador",
"register_title": "Criar conta",
"email": "E-mail",
"email_placeholder": "Digite seu e-mail",
"confirm_password": "Confirmar senha",
"confirm_password_placeholder": "Confirme sua senha",
"register_button": "Criar conta",
"have_account": "Já tem uma conta?",
"login": "Entrar",
"setup_title": "Configuração inicial",
"setup_step1": "Admin",
"setup_step2": "Sistema",
"setup_step3": "Concluído",
"admin_username": "Usuário administrador",
"admin_email": "E-mail do administrador",
"admin_password": "Senha do administrador",
"create_admin": "Criar administrador",
"back_to_login": "Já configurado?",
"admin_success": "Conta de administrador criada com sucesso! Agora você pode entrar.",
"account_success": "Conta criada com sucesso! Agora você pode entrar.",
"passwords_mismatch": "As senhas não coincidem",
"admin_create_error": "Erro ao criar conta de administrador",
"or": "ou",
"sso_login": "Entrar com SSO",
"sso_login_provider": "Entrar com {{provider}}"
},
"storage": {
"title": "Armazenamento",
"calculating": "Calculando...",
"used": "{{percentage}}% usado ({{used}} / {{total}})"
},
"viewer": {
"unsupported_file": "Este tipo de arquivo não pode ser visualizado.",
"download_file": "Baixar arquivo",
"zoom_in": "Ampliar",
"zoom_out": "Reduzir",
"zoom_reset": "Redefinir zoom"
},
"language_selector": {
"title": "Bem-vindo ao OxiCloud",
"subtitle": "Por favor, selecione seu idioma",
"continue": "Continuar",
"languages": {
"en": "English",
"es": "Español",
"zh": "中文",
"fa": "فارسی",
"fr": "Français",
"de": "Deutsch",
"pt": "Português"
}
},
"favorites": {
"empty_state": "Nenhum favorito ainda",
"empty_hint": "Marque arquivos ou pastas com estrela para adicioná-los aos seus favoritos",
"add": "Adicionar aos favoritos",
"remove": "Remover dos favoritos",
"added_title": "Adicionado aos favoritos",
"added_msg": "adicionado aos favoritos",
"removed_title": "Removido dos favoritos",
"removed_msg": "removido dos favoritos"
},
"recent": {
"title": "Recentes",
"clear": "Limpar recentes",
"accessed": "Acessado",
"empty_state": "Nenhum arquivo recente",
"empty_hint": "Os arquivos que você abrir aparecerão aqui"
},
"notifications": {
"file_renamed": "Arquivo renomeado",
"file_renamed_to": "Arquivo renomeado para \"{{name}}\"",
"folder_renamed": "Pasta renomeada",
"folder_renamed_to": "Pasta renomeada para \"{{name}}\"",
"file_uploaded": "Arquivo enviado",
"file_deleted": "Arquivo movido para a lixeira",
"folder_deleted": "Pasta movida para a lixeira",
"item_deleted_permanently": "Item excluído permanentemente",
"trash_emptied": "Lixeira esvaziada com sucesso"
},
"batch": {
"one_selected": "1 item selecionado",
"n_selected": "{{count}} itens selecionados",
"confirm_delete": "Tem certeza de que deseja mover {{count}} itens para a lixeira?",
"move_title": "Mover {{count}} item(ns)",
"add_favorites": "Adicionar aos favoritos",
"move_copy": "Mover ou copiar"
}
}
{
"app": {
"title": "OxiCloud",
"description": "Sistema de armazenamento em nuvem minimalista"
},
"nav": {
"files": "Arquivos",
"shared": "Compartilhados",
"recent": "Recentes",
"favorites": "Favoritos",
"photos": "Fotos",
"trash": "Lixeira"
},
"photos": {
"empty_state": "Nenhuma foto ainda",
"empty_hint": "Envie imagens ou vídeos para vê-los aqui",
"items_selected": "selecionados",
"view_daily": "Dia",
"view_monthly": "Mês",
"view_yearly": "Ano"
},
"actions": {
"search": "Pesquisar arquivos...",
"new_folder": "Nova pasta",
"upload": "Enviar",
"upload_files": "Enviar arquivos",
"upload_folder": "Enviar pasta",
"upload.uploading": "Enviando...",
"upload.complete": "{count} / {total} enviados",
"rename": "Renomear",
"move": "Mover para...",
"move_to": "Mover para",
"delete": "Excluir",
"download": "Baixar",
"view": "Visualizar",
"cancel": "Cancelar",
"confirm": "Confirmar",
"share": "Compartilhar",
"favorite": "Adicionar aos favoritos",
"unfavorite": "Remover dos favoritos",
"copy": "Copiar",
"notify": "Notificar",
"send": "Enviar",
"clear_recent": "Limpar recentes",
"logout": "Sair",
"create": "Criar",
"search_btn": "Pesquisar",
"close": "Fechar",
"delete_permanently": "Excluir permanentemente",
"empty_trash": "Esvaziar lixeira"
},
"user_menu": {
"appearance": "Aparência",
"about": "Sobre o OxiCloud",
"about_description": "Plataforma de armazenamento em nuvem construída com Rust e Arquitetura Limpa. Rápida, segura e privada.",
"admin_panel": "Painel de administração",
"profile": "Meu perfil",
"role_user": "Usuário"
},
"share": {
"dialogTitle": "Link de compartilhamento",
"linkLabel": "Link compartilhado:",
"copyLink": "Copiar",
"permissions": "Permissões:",
"permissionRead": "Leitura",
"permissionWrite": "Escrita",
"permissionReshare": "Recompartilhar",
"password": "Proteção por senha:",
"generatePassword": "Gerar",
"expiration": "Data de expiração:",
"update": "Atualizar compartilhamento",
"remove": "Remover compartilhamento",
"notifyTitle": "Enviar notificação",
"notifyEmailLabel": "Endereço de e-mail:",
"notifyMessageLabel": "Mensagem (opcional):",
"notifySend": "Enviar notificação",
"shareWithOthers": "Compartilhar com outros",
"sharePublicly": "Compartilhar publicamente",
"shareSettings": "Configurações de compartilhamento",
"shareCopied": "Link copiado para a área de transferência",
"shareCreated": "Link de compartilhamento criado com sucesso",
"shareUpdated": "Configurações de compartilhamento atualizadas",
"shareRemoved": "Compartilhamento removido com sucesso"
},
"share_dialogTitle": "Link de compartilhamento",
"share_linkLabel": "Link compartilhado:",
"share_copyLink": "Copiar",
"share_permissions": "Permissões:",
"share_permissionRead": "Leitura",
"share_permissionWrite": "Escrita",
"share_permissionReshare": "Recompartilhar",
"share_password": "Proteção por senha:",
"share_generatePassword": "Gerar",
"share_expiration": "Data de expiração:",
"share_update": "Atualizar compartilhamento",
"share_remove": "Remover compartilhamento",
"share_notifyTitle": "Enviar notificação",
"share_notifyEmailLabel": "Endereço de e-mail:",
"share_notifyMessageLabel": "Mensagem (opcional):",
"share_notifySend": "Enviar notificação",
"shared": {
"backToFiles": "Voltar aos arquivos",
"pageTitle": "Recursos compartilhados",
"pageDescription": "Gerencie seus arquivos e pastas compartilhados",
"filterType": "Tipo:",
"filterAll": "Todos",
"filterFiles": "Arquivos",
"filterFolders": "Pastas",
"sortBy": "Ordenar por:",
"sortByName": "Nome",
"sortByDate": "Data de compartilhamento",
"sortByExpiration": "Expiração",
"search": "Pesquisar",
"colName": "Nome",
"colType": "Tipo",
"colDateShared": "Data de compartilhamento",
"colExpiration": "Expiração",
"colPermissions": "Permissões",
"colPassword": "Senha",
"colActions": "Ações",
"emptyStateTitle": "Nenhum recurso compartilhado ainda",
"emptyStateDesc": "Quando você compartilhar arquivos ou pastas, eles aparecerão aqui",
"goToFiles": "Ir para arquivos",
"typeFile": "Arquivo",
"typeFolder": "Pasta",
"noExpiration": "Sem expiração",
"hasPassword": "Sim",
"noPassword": "Não",
"editShare": "Editar compartilhamento",
"notifyShare": "Notificar alguém",
"copyLink": "Copiar link",
"removeShare": "Remover compartilhamento",
"linkCopied": "Link copiado para a área de transferência!",
"linkCopyFailed": "Falha ao copiar o link",
"itemUpdated": "Configurações de compartilhamento atualizadas",
"itemRemoved": "Compartilhamento removido com sucesso",
"invalidEmail": "Por favor, insira um endereço de e-mail válido",
"notificationSent": "Notificação enviada com sucesso",
"notificationFailed": "Falha ao enviar a notificação"
},
"shared_backToFiles": "Voltar aos arquivos",
"shared_pageTitle": "Recursos compartilhados",
"shared_pageDescription": "Gerencie seus arquivos e pastas compartilhados",
"shared_filterType": "Tipo:",
"shared_filterAll": "Todos",
"shared_filterFiles": "Arquivos",
"shared_filterFolders": "Pastas",
"shared_sortBy": "Ordenar por:",
"shared_sortByName": "Nome",
"shared_sortByDate": "Data de compartilhamento",
"shared_sortByExpiration": "Expiração",
"shared_search": "Pesquisar",
"shared_colName": "Nome",
"shared_colType": "Tipo",
"shared_colDateShared": "Data de compartilhamento",
"shared_colExpiration": "Expiração",
"shared_colPermissions": "Permissões",
"shared_colPassword": "Senha",
"shared_colActions": "Ações",
"shared_emptyStateTitle": "Nenhum recurso compartilhado ainda",
"shared_emptyStateDesc": "Quando você compartilhar arquivos ou pastas, eles aparecerão aqui",
"shared_goToFiles": "Ir para arquivos",
"shared_typeFile": "Arquivo",
"shared_typeFolder": "Pasta",
"shared_noExpiration": "Sem expiração",
"shared_hasPassword": "Sim",
"shared_noPassword": "Não",
"shared_editShare": "Editar compartilhamento",
"shared_notifyShare": "Notificar alguém",
"shared_copyLink": "Copiar link",
"shared_removeShare": "Remover compartilhamento",
"shared_linkCopied": "Link copiado para a área de transferência!",
"shared_linkCopyFailed": "Falha ao copiar o link",
"shared_itemUpdated": "Configurações de compartilhamento atualizadas",
"shared_itemRemoved": "Compartilhamento removido com sucesso",
"shared_invalidEmail": "Por favor, insira um endereço de e-mail válido",
"shared_notificationSent": "Notificação enviada com sucesso",
"shared_notificationFailed": "Falha ao enviar a notificação",
"files": {
"name": "Nome",
"type": "Tipo",
"size": "Tamanho",
"modified": "Modificado",
"no_files": "Nenhum arquivo nesta pasta",
"empty_hint": "Envie arquivos ou crie pastas para começar",
"loading": "Carregando arquivos…",
"view_grid": "Visualização em grade",
"view_list": "Visualização em lista",
"file_types": {
"document": "Documento",
"image": "Imagem",
"video": "Vídeo",
"audio": "Áudio",
"pdf": "PDF",
"text": "Texto",
"folder": "Pasta",
"spreadsheet": "Planilha",
"presentation": "Apresentação",
"archive": "Arquivo compactado",
"installer": "Instalador",
"code": "Código"
}
},
"dialogs": {
"rename_folder": "Renomear pasta",
"rename_file": "Renomear arquivo",
"new_name": "Novo nome",
"new_folder_title": "Nova pasta",
"folder_name": "Nome da pasta",
"folder_placeholder": "Minha pasta",
"rename_title": "Renomear",
"move_file": "Mover arquivo",
"move_folder": "Mover pasta",
"select_destination": "Selecione a pasta de destino:",
"root": "Raiz",
"delete_confirmation": "Tem certeza de que deseja excluir",
"and_contents": "e todo o seu conteúdo",
"no_undo": "Esta ação não pode ser desfeita",
"confirm_title": "Confirmar ação",
"confirm_delete": "Mover para a lixeira",
"confirm_delete_file": "Tem certeza de que deseja mover o arquivo \"{{name}}\" para a lixeira?",
"confirm_delete_folder": "Tem certeza de que deseja mover a pasta \"{{name}}\" e todo o seu conteúdo para a lixeira?",
"confirm_permanent_delete": "Excluir permanentemente",
"confirm_permanent_delete_msg": "Tem certeza de que deseja excluir permanentemente este item? Esta ação não pode ser desfeita.",
"confirm_empty_trash": "Esvaziar lixeira",
"confirm_delete_share": "Excluir link de compartilhamento",
"confirm_delete_share_msg": "Tem certeza de que deseja excluir este link de compartilhamento?",
"share_file": "Compartilhar arquivo",
"existing_shares": "Compartilhamentos existentes",
"share_options": "Opções de compartilhamento",
"password": "Senha",
"expiration": "Expiração",
"permissions": "Permissões",
"generated_link": "Link gerado",
"notify": "Enviar notificação",
"recipient": "Destinatário",
"message": "Mensagem"
},
"dropzone": {
"drag_files": "Arraste arquivos aqui ou clique para selecionar",
"drop_files": "Solte os arquivos para enviar"
},
"permissions": {
"read": "Leitura",
"write": "Escrita",
"reshare": "Recompartilhar"
},
"errors": {
"file_not_found": "Arquivo não encontrado",
"folder_not_found": "Pasta não encontrada",
"delete_error": "Erro ao excluir",
"upload_error": "Erro ao enviar o arquivo",
"rename_error": "Erro ao renomear",
"move_error": "Erro ao mover",
"empty_name": "O nome não pode estar vazio",
"name_exists": "Já existe um arquivo ou pasta com esse nome",
"generic_error": "Ocorreu um erro"
},
"breadcrumb": {
"home": "Início"
},
"trash": {
"empty_trash": "Esvaziar lixeira",
"empty_state": "A lixeira está vazia",
"original_location": "Local original",
"deleted_date": "Data de exclusão",
"actions": "Ações",
"restore": "Restaurar",
"delete_permanently": "Excluir permanentemente",
"empty_confirm": "Tem certeza de que deseja esvaziar a lixeira? Todos os itens serão excluídos permanentemente."
},
"auth": {
"login_title": "Entrar",
"username": "Usuário",
"username_placeholder": "Digite seu nome de usuário",
"password": "Senha",
"password_placeholder": "Digite sua senha",
"login_button": "Entrar",
"no_account": "Não tem uma conta?",
"register": "Cadastre-se",
"admin_setup": "Primeira vez?",
"setup": "Configurar administrador",
"register_title": "Criar conta",
"email": "E-mail",
"email_placeholder": "Digite seu e-mail",
"confirm_password": "Confirmar senha",
"confirm_password_placeholder": "Confirme sua senha",
"register_button": "Criar conta",
"have_account": "Já tem uma conta?",
"login": "Entrar",
"setup_title": "Configuração inicial",
"setup_step1": "Admin",
"setup_step2": "Sistema",
"setup_step3": "Concluído",
"admin_username": "Usuário administrador",
"admin_email": "E-mail do administrador",
"admin_password": "Senha do administrador",
"create_admin": "Criar administrador",
"back_to_login": "Já configurado?",
"admin_success": "Conta de administrador criada com sucesso! Agora você pode entrar.",
"account_success": "Conta criada com sucesso! Agora você pode entrar.",
"passwords_mismatch": "As senhas não coincidem",
"admin_create_error": "Erro ao criar conta de administrador",
"or": "ou",
"sso_login": "Entrar com SSO",
"sso_login_provider": "Entrar com {{provider}}"
},
"storage": {
"title": "Armazenamento",
"calculating": "Calculando...",
"used": "{{percentage}}% usado ({{used}} / {{total}})"
},
"viewer": {
"unsupported_file": "Este tipo de arquivo não pode ser visualizado.",
"download_file": "Baixar arquivo",
"zoom_in": "Ampliar",
"zoom_out": "Reduzir",
"zoom_reset": "Redefinir zoom"
},
"language_selector": {
"title": "Bem-vindo!",
"subtitle": "Selecione seu idioma para continuar",
"continue": "Continuar",
"languages": {
"en": "English",
"es": "Español",
"zh": "中文",
"fa": "فارسی",
"fr": "Français",
"de": "Deutsch",
"pt": "Português"
}
},
"favorites": {
"empty_state": "Nenhum favorito ainda",
"empty_hint": "Marque arquivos ou pastas com estrela para adicioná-los aos seus favoritos",
"add": "Adicionar aos favoritos",
"remove": "Remover dos favoritos",
"added_title": "Adicionado aos favoritos",
"added_msg": "adicionado aos favoritos",
"removed_title": "Removido dos favoritos",
"removed_msg": "removido dos favoritos"
},
"recent": {
"title": "Recentes",
"clear": "Limpar recentes",
"accessed": "Acessado",
"empty_state": "Nenhum arquivo recente",
"empty_hint": "Os arquivos que você abrir aparecerão aqui"
},
"notifications": {
"file_renamed": "Arquivo renomeado",
"file_renamed_to": "Arquivo renomeado para \"{{name}}\"",
"folder_renamed": "Pasta renomeada",
"folder_renamed_to": "Pasta renomeada para \"{{name}}\"",
"file_uploaded": "Arquivo enviado",
"file_deleted": "Arquivo movido para a lixeira",
"folder_deleted": "Pasta movida para a lixeira",
"item_deleted_permanently": "Item excluído permanentemente",
"trash_emptied": "Lixeira esvaziada com sucesso"
},
"batch": {
"one_selected": "1 item selecionado",
"n_selected": "{{count}} itens selecionados",
"confirm_delete": "Tem certeza de que deseja mover {{count}} itens para a lixeira?",
"move_title": "Mover {{count}} item(ns)",
"add_favorites": "Adicionar aos favoritos",
"move_copy": "Mover ou copiar"
},
"admin": {
"page_title": "Painel de Administração",
"back_to_app": "Voltar ao OxiCloud",
"loading": "Carregando…",
"access_denied": "Acesso Negado",
"access_denied_desc": "Privilégios de administrador necessários.",
"sign_in": "Entrar",
"tab_dashboard": "Painel",
"tab_users": "Usuários",
"tab_oidc": "SSO / OIDC",
"total_users": "Total de Usuários",
"active_users": "Usuários Ativos",
"admins": "Admins",
"version": "Versão",
"storage_overview": "Visão do Armazenamento",
"used": "Usado",
"total_quota": "Cota Total",
"usage_pct": "Uso %",
"users_over_80": "Usuários >80% cota",
"users_over_quota": "Usuários acima da cota",
"system": "Sistema",
"auth_label": "Auth",
"oidc_label": "OIDC",
"quotas_label": "Cotas",
"enabled": "Habilitado",
"disabled": "Desabilitado",
"active": "Ativo",
"off": "Inativo",
"allow_registration": "Permitir registro público",
"registration_warning": "O registro público está desabilitado. Apenas administradores podem criar novos usuários.",
"user_management": "Gerenciamento de Usuários",
"create_user": "Criar Usuário",
"col_user": "Usuário",
"col_role": "Função",
"col_auth": "Auth",
"col_status": "Status",
"col_storage": "Armazenamento",
"col_last_login": "Último Login",
"col_actions": "Ações",
"loading_users": "Carregando usuários…",
"failed_load_users": "Falha ao carregar",
"no_users_found": "Nenhum usuário encontrado",
"showing_users": "Mostrando {{from}}-{{to}} de {{total}}",
"prev": "Anterior",
"next": "Próximo",
"inactive": "Inativo",
"you_badge": "(você)",
"local": "Local",
"never": "Nunca",
"just_now": "Agora mesmo",
"minutes_ago": "{{n}}min atrás",
"hours_ago": "{{n}}h atrás",
"days_ago": "{{n}}d atrás",
"edit_quota_title": "Editar cota",
"reset_password_title": "Redefinir senha",
"toggle_role_title": "Alternar função",
"deactivate_title": "Desativar",
"activate_title": "Ativar",
"delete_title": "Excluir",
"sso_title": "Login Único (OIDC / SSO)",
"enable_sso": "Habilitar autenticação SSO",
"provider_name": "Nome do Provedor",
"issuer_url": "URL do Emissor",
"issuer_url_hint": "URL do emissor OpenID Connect",
"auto_discover": "Auto-descoberta",
"discovering": "Descobrindo…",
"client_id": "Client ID",
"client_secret": "Client Secret",
"client_secret_placeholder": "Deixe vazio para manter o valor atual",
"secret_configured": "Um client secret já está configurado",
"callback_url": "URL de Callback",
"callback_url_hint": "(registrar no seu IdP)",
"advanced_settings": "Configurações Avançadas",
"scopes": "Scopes",
"auto_provision": "Provisionar usuários automaticamente",
"admin_groups": "Grupos de Admin",
"admin_groups_hint": "Nomes de grupos OIDC separados por vírgula",
"disable_password": "Desabilitar login por senha (apenas OIDC)",
"password_warning": "Isso impedirá TODOS os logins por senha!",
"test_btn": "Testar",
"save_btn": "Salvar",
"saving": "Salvando…",
"settings_saved": "Configurações salvas — OIDC agora está {{status}}",
"quota_modal_title": "Atualizar Cota",
"quota_user_label": "Usuário:",
"new_quota": "Nova Cota",
"quota_unlimited_hint": "0 para ilimitado",
"cancel": "Cancelar",
"create_user_title": "Criar Novo Usuário",
"username_label": "Nome de usuário",
"username_placeholder": "joaosilva",
"username_hint": "3–32 caracteres",
"password_label": "Senha",
"password_placeholder": "Mín 8 caracteres",
"email_label": "E-mail",
"email_optional": "(opcional)",
"email_placeholder": "usuario@exemplo.com (gerado automaticamente se vazio)",
"role_label": "Função",
"role_user": "Usuário",
"role_admin": "Admin",
"quota_label": "Cota",
"creating": "Criando…",
"reset_pw_title": "Redefinir Senha",
"new_password_label": "Nova Senha",
"resetting": "Redefinindo…",
"reset_btn": "Redefinir",
"confirm_role_change": "Alterar função para {{role}}?",
"confirm_deactivate": "Tem certeza de que deseja desativar este usuário?",
"confirm_activate": "Tem certeza de que deseja ativar este usuário?",
"confirm_delete_user": "EXCLUIR usuário \"{{name}}\"? Não pode ser desfeito!",
"confirm_action": "Confirmar Ação",
"confirm_yes": "Confirmar",
"confirm_no": "Cancelar",
"error_username_short": "O nome de usuário deve ter pelo menos 3 caracteres",
"error_password_short": "A senha deve ter pelo menos 8 caracteres",
"error_generic": "Falha",
"error_network": "Erro de rede: {{message}}",
"error_create_user": "Falha ao criar usuário"
},
"profile": {
"page_title": "Perfil",
"back_to_app": "Voltar ao OxiCloud",
"loading": "Carregando…",
"not_authenticated": "Não Autenticado",
"not_authenticated_desc": "Faça login para ver seu perfil.",
"sign_in": "Entrar",
"role_admin": "Administrador",
"role_user": "Usuário",
"account_details": "Detalhes da Conta",
"username": "Nome de usuário",
"email": "E-mail",
"role": "Função",
"last_login": "Último login",
"storage": "Armazenamento",
"used": "Usado",
"quota": "Cota",
"usage": "Uso",
"unlimited": "Ilimitado",
"app_passwords": "Senhas de Aplicativo",
"app_pw_desc": "Gere senhas para clientes WebDAV, CalDAV e CardDAV. Cada senha é exibida apenas uma vez.",
"app_pw_label_placeholder": "Rótulo (ex. Thunderbird, macOS)",
"generate": "Gerar",
"generating": "Gerando…",
"new_password_for": "Nova senha para",
"copy_warning": "Copie esta senha agora. Você não poderá vê-la novamente.",
"copy_to_clipboard": "Copiar para área de transferência",
"col_label": "Rótulo",
"col_created": "Criado",
"col_last_used": "Último uso",
"col_status": "Status",
"active": "Ativa",
"revoked": "Revogada",
"revoke_title": "Revogar",
"no_app_passwords": "Nenhuma senha de aplicativo ainda.",
"client_sessions": "Sessões de cliente",
"client_sessions_desc": "Geradas automaticamente ao conectar um cliente compatível com Nextcloud.",
"col_client": "Cliente",
"never": "Nunca",
"just_now": "Agora mesmo",
"minutes_ago": "{{n}} min atrás",
"hours_ago": "{{n}}h atrás",
"days_ago": "{{n}} dias atrás",
"change_password": "Alterar Senha",
"current_password": "Senha Atual",
"new_password": "Nova Senha",
"min_8_chars": "Pelo menos 8 caracteres",
"confirm_password": "Confirmar Nova Senha",
"update_password": "Atualizar Senha",
"updating": "Atualizando…",
"password_updated": "Senha atualizada com sucesso",
"passwords_no_match": "As senhas não coincidem",
"password_too_short": "A senha deve ter pelo menos 8 caracteres",
"password_change_failed": "Falha ao alterar a senha",
"error_network": "Erro de rede: {{message}}",
"error_label_required": "Digite um rótulo",
"error_create_pw": "Falha ao criar senha de aplicativo",
"confirm_revoke": "Revogar senha \"{{label}}\"? Clientes que usam esta senha deixarão de funcionar.",
"error_revoke": "Falha ao revogar"
}
}