strapi-plugin-magic-link-v5 4.5.0 → 4.6.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/admin/src/components/LanguageProvider.jsx +2 -0
- package/admin/src/pages/Settings/SettingsModern.jsx +1 -0
- package/admin/src/translations/de.json +1 -0
- package/admin/src/translations/en.json +1 -0
- package/admin/src/translations/es.json +1 -0
- package/admin/src/translations/fr.json +1 -0
- package/admin/src/translations/pt.json +301 -0
- package/package.json +1 -1
|
@@ -4,6 +4,7 @@ import enTranslations from '../translations/en.json';
|
|
|
4
4
|
import deTranslations from '../translations/de.json';
|
|
5
5
|
import frTranslations from '../translations/fr.json';
|
|
6
6
|
import esTranslations from '../translations/es.json';
|
|
7
|
+
import ptTranslations from '../translations/pt.json';
|
|
7
8
|
|
|
8
9
|
const LanguageContext = createContext();
|
|
9
10
|
|
|
@@ -20,6 +21,7 @@ const translations = {
|
|
|
20
21
|
de: deTranslations,
|
|
21
22
|
fr: frTranslations,
|
|
22
23
|
es: esTranslations,
|
|
24
|
+
pt: ptTranslations,
|
|
23
25
|
};
|
|
24
26
|
|
|
25
27
|
export const LanguageProvider = ({ children }) => {
|
|
@@ -316,6 +316,7 @@ const SettingsModern = () => {
|
|
|
316
316
|
<SingleSelectOption value="de">{formatMessage({ id: getTrad('settings.language.de') })}</SingleSelectOption>
|
|
317
317
|
<SingleSelectOption value="fr">{formatMessage({ id: getTrad('settings.language.fr') })}</SingleSelectOption>
|
|
318
318
|
<SingleSelectOption value="es">{formatMessage({ id: getTrad('settings.language.es') })}</SingleSelectOption>
|
|
319
|
+
<SingleSelectOption value="pt">{formatMessage({ id: getTrad('settings.language.pt') })}</SingleSelectOption>
|
|
319
320
|
</SingleSelect>
|
|
320
321
|
</Box>
|
|
321
322
|
<Typography variant="pi" textColor="neutral600" style={{ fontSize: '11px', flex: 1 }}>
|
|
@@ -21,6 +21,7 @@
|
|
|
21
21
|
"magic-link.settings.language.de": "Deutsch",
|
|
22
22
|
"magic-link.settings.language.fr": "Français",
|
|
23
23
|
"magic-link.settings.language.es": "Español",
|
|
24
|
+
"magic-link.settings.language.pt": "Português",
|
|
24
25
|
|
|
25
26
|
"magic-link.settings.info.header": "Wichtige Hinweise zur Konfiguration",
|
|
26
27
|
"magic-link.settings.info.line1": "Alle Änderungen werden sofort nach dem Speichern aktiv",
|
|
@@ -21,6 +21,7 @@
|
|
|
21
21
|
"magic-link.settings.language.de": "Deutsch",
|
|
22
22
|
"magic-link.settings.language.fr": "Français",
|
|
23
23
|
"magic-link.settings.language.es": "Español",
|
|
24
|
+
"magic-link.settings.language.pt": "Português",
|
|
24
25
|
|
|
25
26
|
"magic-link.settings.info.header": "Important Configuration Notes",
|
|
26
27
|
"magic-link.settings.info.line1": "All changes take effect immediately after saving",
|
|
@@ -21,6 +21,7 @@
|
|
|
21
21
|
"magic-link.settings.language.de": "Deutsch",
|
|
22
22
|
"magic-link.settings.language.fr": "Français",
|
|
23
23
|
"magic-link.settings.language.es": "Español",
|
|
24
|
+
"magic-link.settings.language.pt": "Português",
|
|
24
25
|
|
|
25
26
|
"magic-link.settings.info.header": "Notas importantes de configuración",
|
|
26
27
|
"magic-link.settings.info.line1": "Todos los cambios surten efecto inmediatamente después de guardar",
|
|
@@ -21,6 +21,7 @@
|
|
|
21
21
|
"magic-link.settings.language.de": "Deutsch",
|
|
22
22
|
"magic-link.settings.language.fr": "Français",
|
|
23
23
|
"magic-link.settings.language.es": "Español",
|
|
24
|
+
"magic-link.settings.language.pt": "Português",
|
|
24
25
|
|
|
25
26
|
"magic-link.settings.info.header": "Notes de configuration importantes",
|
|
26
27
|
"magic-link.settings.info.line1": "Tous les changements prennent effet immédiatement après l'enregistrement",
|
|
@@ -0,0 +1,301 @@
|
|
|
1
|
+
{
|
|
2
|
+
"magic-link.plugin.name": "Magic Link",
|
|
3
|
+
"magic-link.Header.Settings": "Magic Link",
|
|
4
|
+
"magic-link.Form.title.Settings": "Configurações",
|
|
5
|
+
|
|
6
|
+
"magic-link.status.active": "ATIVO",
|
|
7
|
+
"magic-link.status.inactive": "INATIVO",
|
|
8
|
+
|
|
9
|
+
"magic-link.settings.page.title": "⚙️ Configurações do Magic Link",
|
|
10
|
+
"magic-link.settings.page.subtitle": "Configure a autenticação sem senha para seus usuários",
|
|
11
|
+
"magic-link.settings.save.button": "Salvar alterações",
|
|
12
|
+
"magic-link.settings.save.saving": "Salvando...",
|
|
13
|
+
"magic-link.settings.save.success": "Configurações salvas com sucesso",
|
|
14
|
+
"magic-link.settings.save.error": "Erro ao salvar as configurações",
|
|
15
|
+
"magic-link.settings.load.loading": "Carregando configurações...",
|
|
16
|
+
"magic-link.settings.load.error": "Erro ao carregar as configurações",
|
|
17
|
+
|
|
18
|
+
"magic-link.settings.language.label": "🌐 Idioma da interface",
|
|
19
|
+
"magic-link.settings.language.hint": "Selecione o idioma para a interface de administração",
|
|
20
|
+
"magic-link.settings.language.en": "English",
|
|
21
|
+
"magic-link.settings.language.de": "Deutsch",
|
|
22
|
+
"magic-link.settings.language.fr": "Français",
|
|
23
|
+
"magic-link.settings.language.es": "Español",
|
|
24
|
+
"magic-link.settings.language.pt": "Português",
|
|
25
|
+
|
|
26
|
+
"magic-link.settings.info.header": "Notas importantes de configuração",
|
|
27
|
+
"magic-link.settings.info.line1": "Todas as alterações entram em vigor imediatamente após salvar",
|
|
28
|
+
"magic-link.settings.info.line2": "Certifique-se de que todas as URLs estejam configuradas corretamente",
|
|
29
|
+
"magic-link.settings.info.line3": "Teste a configuração após salvar com um token de teste",
|
|
30
|
+
"magic-link.settings.info.line4": "Cartões verdes mostram recursos ATIVOS, cartões cinzas estão INATIVOS",
|
|
31
|
+
|
|
32
|
+
"magic-link.settings.section.general": "Configurações gerais",
|
|
33
|
+
"magic-link.settings.section.general.description": "Configuração básica para Magic Link",
|
|
34
|
+
"magic-link.settings.section.auth": "Autenticação",
|
|
35
|
+
"magic-link.settings.section.auth.description": "Configure a autenticação e criação de usuários",
|
|
36
|
+
"magic-link.settings.section.email": "Configurações de e-mail",
|
|
37
|
+
"magic-link.settings.section.email.description": "Configure modelos de e-mail e informações do remetente",
|
|
38
|
+
"magic-link.settings.section.advanced": "Configurações avançadas",
|
|
39
|
+
"magic-link.settings.section.advanced.description": "Opções de configuração adicionais",
|
|
40
|
+
|
|
41
|
+
"magic-link.settings.features.title": "RECURSOS PRINCIPAIS",
|
|
42
|
+
"magic-link.settings.features.subtitle": "Ativar ou desativar os recursos principais do plugin Magic Link",
|
|
43
|
+
|
|
44
|
+
"magic-link.settings.feature.enabled.title": "Ativar Magic Link",
|
|
45
|
+
"magic-link.settings.feature.enabled.description": "Ativa ou desativa todo o sistema Magic Link. Quando desativado, nenhum Magic Link pode ser criado ou usado.",
|
|
46
|
+
|
|
47
|
+
"magic-link.settings.feature.createUser.title": "Criar usuários automaticamente",
|
|
48
|
+
"magic-link.settings.feature.createUser.description": "Cria automaticamente uma nova conta de usuário se o endereço de e-mail ainda não existir no seu sistema.",
|
|
49
|
+
|
|
50
|
+
"magic-link.settings.feature.staysValid.title": "Uso múltiplo do token",
|
|
51
|
+
"magic-link.settings.feature.staysValid.description": "O token pode ser usado várias vezes. Menos seguro, mas mais conveniente se os usuários precisarem abrir o link várias vezes.",
|
|
52
|
+
|
|
53
|
+
"magic-link.settings.time.title": "CONFIGURAÇÕES DE TEMPO",
|
|
54
|
+
"magic-link.settings.expire.label": "⏱️ Tempo de expiração do Magic Link",
|
|
55
|
+
"magic-link.settings.expire.hint": "Quanto tempo o Magic Link permanece válido antes de expirar?",
|
|
56
|
+
"magic-link.settings.expire.placeholder": "3600",
|
|
57
|
+
"magic-link.settings.expire.recommendation": "💡 Recomendação: 3600 segundos (1 hora) é ideal para segurança e facilidade de uso",
|
|
58
|
+
|
|
59
|
+
"magic-link.settings.tokenLength.label": "🔐 Comprimento do token (Segurança)",
|
|
60
|
+
"magic-link.settings.tokenLength.hint": "Quanto mais longo o token, mais seguro contra ataques de força bruta",
|
|
61
|
+
"magic-link.settings.tokenLength.placeholder": "20",
|
|
62
|
+
"magic-link.settings.tokenLength.recommendation": "✓ Seguro: 20-40 caracteres. Atual: {length} caracteres",
|
|
63
|
+
|
|
64
|
+
"magic-link.settings.security.title": "CONFIGURAÇÕES DE SEGURANÇA",
|
|
65
|
+
"magic-link.settings.maxAttempts.label": "🚫 Tentativas máximas de login",
|
|
66
|
+
"magic-link.settings.maxAttempts.hint": "Quantas tentativas falhadas são permitidas antes de um usuário ser bloqueado?",
|
|
67
|
+
"magic-link.settings.maxAttempts.placeholder": "5",
|
|
68
|
+
"magic-link.settings.maxAttempts.warning": "⚠️ Nota: Em 0, este recurso está desativado (tentativas ilimitadas)",
|
|
69
|
+
|
|
70
|
+
"magic-link.settings.api.title": "CONFIGURAÇÃO DE API",
|
|
71
|
+
"magic-link.settings.loginPath.label": "🔗 Caminho da API de login",
|
|
72
|
+
"magic-link.settings.loginPath.hint": "O endpoint da API pelo qual os usuários fazem login com o Magic Link",
|
|
73
|
+
"magic-link.settings.loginPath.placeholder": "/magic-link/login",
|
|
74
|
+
"magic-link.settings.loginPath.fullPath": "Caminho completo: http://localhost:1337/api{path}?loginToken=XXX",
|
|
75
|
+
|
|
76
|
+
"magic-link.settings.confirmationUrl.label": "🌐 URL de confirmação (Importante!)",
|
|
77
|
+
"magic-link.settings.confirmationUrl.hint": "A URL base usada no e-mail. Os usuários clicam nela para fazer login.",
|
|
78
|
+
"magic-link.settings.confirmationUrl.placeholder": "https://seu-app.com/auth/magic-link",
|
|
79
|
+
"magic-link.settings.confirmationUrl.example": "📧 Exemplo de link de e-mail: {url}?loginToken=abc123...",
|
|
80
|
+
|
|
81
|
+
"magic-link.settings.callbackUrl.label": "↪️ URL de callback (Após login)",
|
|
82
|
+
"magic-link.settings.callbackUrl.hint": "Para onde os usuários devem ser redirecionados após um login bem-sucedido? (Opcional)",
|
|
83
|
+
"magic-link.settings.callbackUrl.placeholder": "https://seu-app.com/dashboard",
|
|
84
|
+
"magic-link.settings.callbackUrl.note": "Se vazio: Os usuários permanecem na página de login",
|
|
85
|
+
|
|
86
|
+
"magic-link.settings.auth.options.title": "OPÇÕES DE AUTENTICAÇÃO",
|
|
87
|
+
"magic-link.settings.auth.options.subtitle": "Configure como os usuários são autenticados e gerenciados",
|
|
88
|
+
|
|
89
|
+
"magic-link.settings.auth.verifyEmail.title": "Verificação de e-mail",
|
|
90
|
+
"magic-link.settings.auth.verifyEmail.description": "Requer que os usuários confirmem seu endereço de e-mail antes de poder fazer login. Aumenta a segurança.",
|
|
91
|
+
|
|
92
|
+
"magic-link.settings.auth.welcomeEmail.title": "E-mail de boas-vindas",
|
|
93
|
+
"magic-link.settings.auth.welcomeEmail.description": "Envia automaticamente um e-mail de boas-vindas aos usuários recém-registrados.",
|
|
94
|
+
|
|
95
|
+
"magic-link.settings.auth.useJwt.title": "Usar JWT Token",
|
|
96
|
+
"magic-link.settings.auth.useJwt.description": "Usa JWT (JSON Web Tokens) para autenticação em vez de cookies de sessão. Recomendado para aplicações modernas.",
|
|
97
|
+
|
|
98
|
+
"magic-link.settings.auth.storeLoginInfo.title": "Armazenar dados de login",
|
|
99
|
+
"magic-link.settings.auth.storeLoginInfo.description": "Armazena endereço IP e informações do navegador para cada login para monitoramento de segurança.",
|
|
100
|
+
|
|
101
|
+
"magic-link.settings.auth.management.title": "GERENCIAMENTO DE USUÁRIOS",
|
|
102
|
+
"magic-link.settings.auth.strategy.label": "👤 Estratégia de criação de usuário",
|
|
103
|
+
"magic-link.settings.auth.strategy.email": "Apenas e-mail - A conta é criada apenas com o endereço de e-mail",
|
|
104
|
+
"magic-link.settings.auth.strategy.emailUsername": "E-mail + Nome de usuário - O nome de usuário é gerado automaticamente a partir do e-mail",
|
|
105
|
+
"magic-link.settings.auth.strategy.manual": "Manual - Sem criação automática, os usuários devem existir previamente",
|
|
106
|
+
"magic-link.settings.auth.strategy.current": "Atualmente selecionado: {strategy}",
|
|
107
|
+
|
|
108
|
+
"magic-link.settings.auth.jwtExpiration.label": "🕒 Período de validade do JWT Token",
|
|
109
|
+
"magic-link.settings.auth.jwtExpiration.hint": "Quanto tempo um JWT token permanece válido após o login?",
|
|
110
|
+
"magic-link.settings.auth.jwtExpiration.placeholder": "30d",
|
|
111
|
+
"magic-link.settings.auth.jwtExpiration.examples": "✓ Exemplos: 1h (1 hora) • 7d (7 dias) • 30d (30 dias) • 90d (3 meses)",
|
|
112
|
+
|
|
113
|
+
"magic-link.settings.email.sender.title": "📨 INFORMAÇÕES DO REMETENTE",
|
|
114
|
+
"magic-link.settings.email.sender.subtitle": "Estas informações aparecem nos e-mails enviados aos usuários",
|
|
115
|
+
|
|
116
|
+
"magic-link.settings.email.fromName.label": "👤 Nome do remetente",
|
|
117
|
+
"magic-link.settings.email.fromName.hint": "O nome exibido aos usuários em seu e-mail",
|
|
118
|
+
"magic-link.settings.email.fromName.placeholder": "Meu App",
|
|
119
|
+
"magic-link.settings.email.fromName.example": "Exemplo: \"Meu App\" aparece como \"Meu App <noreply@...>\"",
|
|
120
|
+
|
|
121
|
+
"magic-link.settings.email.fromEmail.label": "📧 E-mail do remetente",
|
|
122
|
+
"magic-link.settings.email.fromEmail.hint": "O endereço de e-mail a partir do qual todos os Magic Links são enviados",
|
|
123
|
+
"magic-link.settings.email.fromEmail.placeholder": "noreply@seu-app.com",
|
|
124
|
+
"magic-link.settings.email.fromEmail.note": "Deve ser um endereço de e-mail válido e configurado",
|
|
125
|
+
|
|
126
|
+
"magic-link.settings.email.responseEmail.label": "💬 E-mail de resposta",
|
|
127
|
+
"magic-link.settings.email.responseEmail.hint": "Endereço de e-mail para respostas de usuários (opcional)",
|
|
128
|
+
"magic-link.settings.email.responseEmail.placeholder": "suporte@seu-app.com",
|
|
129
|
+
"magic-link.settings.email.responseEmail.note": "Se os usuários responderem ao e-mail, vai para aqui",
|
|
130
|
+
|
|
131
|
+
"magic-link.settings.email.subject.label": "✉️ Linha de assunto do e-mail",
|
|
132
|
+
"magic-link.settings.email.subject.hint": "A linha de assunto que os usuários veem em seu e-mail",
|
|
133
|
+
"magic-link.settings.email.subject.placeholder": "Seu Magic Link para fazer login",
|
|
134
|
+
"magic-link.settings.email.subject.note": "Formule claramente para que os usuários não marquem o e-mail como spam",
|
|
135
|
+
|
|
136
|
+
"magic-link.settings.email.templates.title": "📝 MODELOS DE E-MAIL",
|
|
137
|
+
"magic-link.settings.email.templates.subtitle": "Projete os e-mails enviados aos usuários. Use marcadores para conteúdo dinâmico.",
|
|
138
|
+
|
|
139
|
+
"magic-link.settings.email.placeholders.title": "📌 Marcadores disponíveis (clique para copiar):",
|
|
140
|
+
"magic-link.settings.email.placeholders.url": "<%= URL %>",
|
|
141
|
+
"magic-link.settings.email.placeholders.url.description": "→ Sua URL de confirmação",
|
|
142
|
+
"magic-link.settings.email.placeholders.url.example": "Exemplo: https://seu-app.com/auth/magic-link",
|
|
143
|
+
"magic-link.settings.email.placeholders.code": "<%= CODE %>",
|
|
144
|
+
"magic-link.settings.email.placeholders.code.description": "→ O token Magic Link gerado",
|
|
145
|
+
"magic-link.settings.email.placeholders.code.example": "Único para cada usuário e login",
|
|
146
|
+
"magic-link.settings.email.placeholders.copied": "{placeholder} copiado para a área de transferência!",
|
|
147
|
+
|
|
148
|
+
"magic-link.settings.email.html.title": "🎨 Modelo de e-mail HTML",
|
|
149
|
+
"magic-link.settings.email.html.badge": "Modelo principal",
|
|
150
|
+
"magic-link.settings.email.html.description": "Modelo HTML para seus e-mails Magic Link. Use os marcadores <%= URL %> e <%= CODE %>",
|
|
151
|
+
"magic-link.settings.email.html.loadDefault": "📋 Carregar modelo padrão",
|
|
152
|
+
"magic-link.settings.email.html.filename": "editor.html",
|
|
153
|
+
"magic-link.settings.email.html.placeholder": "<p>Olá, <a href='<%= URL %>?loginToken=<%= CODE %>'>Clique aqui para fazer login</a></p>",
|
|
154
|
+
"magic-link.settings.email.html.copy": "📋 Copiar modelo",
|
|
155
|
+
"magic-link.settings.email.html.info": "ℹ️ Informações do modelo",
|
|
156
|
+
"magic-link.settings.email.html.stats": "O modelo tem {lines} linhas e {chars} caracteres",
|
|
157
|
+
"magic-link.settings.email.html.defaultLoaded": "Modelo padrão simples carregado!",
|
|
158
|
+
|
|
159
|
+
"magic-link.settings.email.text.title": "📄 Modelo de e-mail de texto",
|
|
160
|
+
"magic-link.settings.email.text.badge": "Fallback",
|
|
161
|
+
"magic-link.settings.email.text.description": "Versão de texto (sem HTML) como fallback para clientes de e-mail mais antigos",
|
|
162
|
+
"magic-link.settings.email.text.loadDefault": "📋 Carregar modelo padrão",
|
|
163
|
+
"magic-link.settings.email.text.filename": "editor.txt",
|
|
164
|
+
"magic-link.settings.email.text.placeholder": "Olá, clique aqui para fazer login: <%= URL %>?loginToken=<%= CODE %>",
|
|
165
|
+
"magic-link.settings.email.text.copy": "📋 Copiar modelo",
|
|
166
|
+
"magic-link.settings.email.text.defaultLoaded": "Modelo padrão simples carregado!",
|
|
167
|
+
|
|
168
|
+
"magic-link.settings.advanced.title": "🔧 OPÇÕES ADICIONAIS",
|
|
169
|
+
"magic-link.settings.advanced.subtitle": "Recursos avançados para casos de uso especiais",
|
|
170
|
+
"magic-link.settings.advanced.publicRegistration.title": "🌍 Magic Links no registro público",
|
|
171
|
+
"magic-link.settings.advanced.publicRegistration.description": "Permite que os usuários façam login com Magic Links através de formulários de registro público sem ter criado uma conta anteriormente.",
|
|
172
|
+
|
|
173
|
+
"magic-link.settings.footer.quickhelp": "💡 Ajuda rápida",
|
|
174
|
+
"magic-link.settings.footer.reminder": "Não esqueça: Após salvar, crie um token de teste e teste o Magic Link!",
|
|
175
|
+
|
|
176
|
+
"magic-link.tokens.title": "Tokens Magic Link",
|
|
177
|
+
"magic-link.tokens.page.title": "Gerenciamento de tokens",
|
|
178
|
+
"magic-link.tokens.page.subtitle": "Gerencie seus tokens Magic Link e sessões JWT com estilo",
|
|
179
|
+
|
|
180
|
+
"magic-link.tokens.stats.total": "Total",
|
|
181
|
+
"magic-link.tokens.stats.active": "Ativo",
|
|
182
|
+
"magic-link.tokens.stats.expired": "Expirado",
|
|
183
|
+
"magic-link.tokens.stats.used": "Usado",
|
|
184
|
+
|
|
185
|
+
"magic-link.tokens.tabs.magicLinks": "Tokens Magic Link",
|
|
186
|
+
"magic-link.tokens.tabs.jwtSessions": "Sessões JWT",
|
|
187
|
+
"magic-link.tokens.tabs.ipBans": "Bloqueios de IP",
|
|
188
|
+
|
|
189
|
+
"magic-link.tokens.actions.newToken": "Novo token",
|
|
190
|
+
"magic-link.tokens.actions.refresh": "Atualizar",
|
|
191
|
+
"magic-link.tokens.actions.settings": "Configurações",
|
|
192
|
+
"magic-link.tokens.actions.bulkDelete": "Excluir selecionados",
|
|
193
|
+
"magic-link.tokens.actions.clearSelection": "Limpar seleção",
|
|
194
|
+
|
|
195
|
+
"magic-link.tokens.search.placeholder": "Buscar por e-mail ou token...",
|
|
196
|
+
"magic-link.tokens.search.clear": "Limpar",
|
|
197
|
+
|
|
198
|
+
"magic-link.tokens.filter.all": "Mostrar tudo",
|
|
199
|
+
"magic-link.tokens.filter.active": "Apenas ativos",
|
|
200
|
+
"magic-link.tokens.filter.expired": "Apenas expirados",
|
|
201
|
+
"magic-link.tokens.filter.used": "Apenas usados",
|
|
202
|
+
"magic-link.tokens.filter.status": "Filtrar por status",
|
|
203
|
+
|
|
204
|
+
"magic-link.tokens.pageSize.10": "10 entradas",
|
|
205
|
+
"magic-link.tokens.pageSize.25": "25 entradas",
|
|
206
|
+
"magic-link.tokens.pageSize.50": "50 entradas",
|
|
207
|
+
"magic-link.tokens.pageSize.100": "100 entradas",
|
|
208
|
+
"magic-link.tokens.pageSize.label": "Entradas por página",
|
|
209
|
+
|
|
210
|
+
"magic-link.tokens.table.email": "E-mail",
|
|
211
|
+
"magic-link.tokens.table.token": "Token",
|
|
212
|
+
"magic-link.tokens.table.status": "Status",
|
|
213
|
+
"magic-link.tokens.table.created": "Criado",
|
|
214
|
+
"magic-link.tokens.table.expiresAt": "Válido até",
|
|
215
|
+
"magic-link.tokens.table.actions": "Ações",
|
|
216
|
+
"magic-link.tokens.table.sortBy": "Ordenar por",
|
|
217
|
+
|
|
218
|
+
"magic-link.tokens.status.active": "Ativo",
|
|
219
|
+
"magic-link.tokens.status.expired": "Expirado",
|
|
220
|
+
"magic-link.tokens.status.used": "Usado",
|
|
221
|
+
|
|
222
|
+
"magic-link.tokens.details.title": "Detalhes do token",
|
|
223
|
+
"magic-link.tokens.details.token": "Token",
|
|
224
|
+
"magic-link.tokens.details.magicLink": "URL do Magic Link",
|
|
225
|
+
"magic-link.tokens.details.curlCommand": "Comando cURL (Postman/Terminal)",
|
|
226
|
+
"magic-link.tokens.details.status": "Status",
|
|
227
|
+
"magic-link.tokens.details.created": "Criado",
|
|
228
|
+
"magic-link.tokens.details.expiresAt": "Válido até",
|
|
229
|
+
"magic-link.tokens.details.usedAt": "Usado",
|
|
230
|
+
"magic-link.tokens.details.unlimited": "Ilimitado",
|
|
231
|
+
"magic-link.tokens.details.never": "Nunca",
|
|
232
|
+
"magic-link.tokens.details.expiredSuffix": " (Expirado)",
|
|
233
|
+
"magic-link.tokens.details.close": "Fechar",
|
|
234
|
+
"magic-link.tokens.details.clickToCopy": "🔗 Clique para copiar",
|
|
235
|
+
"magic-link.tokens.details.clickToCopyCurl": "💻 Clique para copiar",
|
|
236
|
+
|
|
237
|
+
"magic-link.tokens.user.new": "Novo usuário",
|
|
238
|
+
"magic-link.tokens.user.id": "ID do usuário: {id}",
|
|
239
|
+
|
|
240
|
+
"magic-link.tokens.selected": "{count} token(s) selecionado(s)",
|
|
241
|
+
|
|
242
|
+
"magic-link.tokens.empty.title": "Nenhum token encontrado",
|
|
243
|
+
"magic-link.tokens.empty.description": "Crie seu primeiro token Magic Link ou altere seus critérios de filtro",
|
|
244
|
+
"magic-link.tokens.empty.createFirst": "Criar primeiro token",
|
|
245
|
+
"magic-link.tokens.empty.resetFilters": "Redefinir filtros",
|
|
246
|
+
|
|
247
|
+
"magic-link.tokens.loading": "Carregando dados de tokens...",
|
|
248
|
+
|
|
249
|
+
"magic-link.tokens.notifications.refreshed": "Os dados foram atualizados",
|
|
250
|
+
"magic-link.tokens.notifications.deleted": "Token excluído com sucesso",
|
|
251
|
+
"magic-link.tokens.notifications.bulkDeleted": "{count} tokens excluídos",
|
|
252
|
+
"magic-link.tokens.notifications.bulkDeleteSuccess": "Exclusão em massa bem-sucedida",
|
|
253
|
+
"magic-link.tokens.notifications.created": "Magic Link enviado para {email}",
|
|
254
|
+
"magic-link.tokens.notifications.createSuccess": "Token criado",
|
|
255
|
+
"magic-link.tokens.notifications.extended": "Token estendido por {days} dias",
|
|
256
|
+
"magic-link.tokens.notifications.extendSuccess": "Token estendido",
|
|
257
|
+
"magic-link.tokens.notifications.tokenCopied": "Token copiado para a área de transferência",
|
|
258
|
+
"magic-link.tokens.notifications.linkCopied": "Magic Link copiado!",
|
|
259
|
+
"magic-link.tokens.notifications.curlCopied": "Comando cURL copiado!",
|
|
260
|
+
"magic-link.tokens.notifications.error": "Erro",
|
|
261
|
+
"magic-link.tokens.notifications.success": "Sucesso",
|
|
262
|
+
"magic-link.tokens.notifications.loadError": "Erro ao carregar tokens",
|
|
263
|
+
"magic-link.tokens.notifications.deleteError": "Erro ao excluir token",
|
|
264
|
+
"magic-link.tokens.notifications.createError": "Erro ao criar token",
|
|
265
|
+
"magic-link.tokens.notifications.extendError": "Erro ao estender token",
|
|
266
|
+
"magic-link.tokens.notifications.validationError": "Por favor, insira um endereço de e-mail",
|
|
267
|
+
"magic-link.tokens.notifications.validation": "Validação",
|
|
268
|
+
|
|
269
|
+
"magic-link.tokens.pagination.previous": "Anterior",
|
|
270
|
+
"magic-link.tokens.pagination.next": "Próximo",
|
|
271
|
+
|
|
272
|
+
"magic-link.tokens.create.title": "✨ Criar token Magic Link",
|
|
273
|
+
"magic-link.tokens.create.email.label": "Endereço de e-mail *",
|
|
274
|
+
"magic-link.tokens.create.email.placeholder": "usuario@exemplo.com",
|
|
275
|
+
"magic-link.tokens.create.email.hint": "O Magic Link será enviado para este endereço de e-mail",
|
|
276
|
+
"magic-link.tokens.create.ttl.label": "Período de validade (Horas)",
|
|
277
|
+
"magic-link.tokens.create.ttl.hint": "Quanto tempo o token deve ser válido (1-168 horas)",
|
|
278
|
+
"magic-link.tokens.create.sendEmail.label": "Enviar e-mail automaticamente",
|
|
279
|
+
"magic-link.tokens.create.sendEmail.hint": "O usuário recebe imediatamente um e-mail com o Magic Link",
|
|
280
|
+
"magic-link.tokens.create.context.label": "Contexto JSON (Opcional)",
|
|
281
|
+
"magic-link.tokens.create.context.placeholder": "{ \"chave\": \"valor\" }",
|
|
282
|
+
"magic-link.tokens.create.context.hint": "Dados adicionais para passar com o token (deve ser JSON válido)",
|
|
283
|
+
"magic-link.tokens.create.context.error": "Formato JSON inválido",
|
|
284
|
+
"magic-link.tokens.create.submit": "Criar token",
|
|
285
|
+
"magic-link.tokens.create.cancel": "Cancelar",
|
|
286
|
+
|
|
287
|
+
"magic-link.tokens.extend.title": "🕒 Estender token",
|
|
288
|
+
"magic-link.tokens.extend.currentExpiry": "Atualmente válido até",
|
|
289
|
+
"magic-link.tokens.extend.selectExtension": "Selecionar extensão",
|
|
290
|
+
"magic-link.tokens.extend.customDays": "Número personalizado de dias",
|
|
291
|
+
"magic-link.tokens.extend.customPlaceholder": "ex. 14",
|
|
292
|
+
"magic-link.tokens.extend.preset1": "+1 Dia",
|
|
293
|
+
"magic-link.tokens.extend.preset7": "+7 Dias",
|
|
294
|
+
"magic-link.tokens.extend.preset30": "+30 Dias",
|
|
295
|
+
"magic-link.tokens.extend.preset90": "+90 Dias",
|
|
296
|
+
"magic-link.tokens.extend.custom": "Personalizado",
|
|
297
|
+
"magic-link.tokens.extend.newExpiry": "Nova data de expiração",
|
|
298
|
+
"magic-link.tokens.extend.submit": "Estender token",
|
|
299
|
+
"magic-link.tokens.extend.cancel": "Cancelar"
|
|
300
|
+
}
|
|
301
|
+
|
package/package.json
CHANGED