pgkiln 0.57.0 → 0.59.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.
@@ -1043,4 +1043,672 @@ export const pt: BuilderMessages = {
1043
1043
  'te.failed_stmt': 'Instrução com falha',
1044
1044
  'te.title_table': 'Tabela {table}',
1045
1045
  'te.title_create': 'Criar tabela',
1046
+ // ------------------------------------------------------------ Shared Components (sprint 124)
1047
+ 'comp.nav_entry': 'Entrada de navegação',
1048
+ 'comp.nav_entry.plural': 'Menu de navegação',
1049
+ 'comp.authz_scheme': 'Esquema de autorização',
1050
+ 'comp.authz_scheme.plural': 'Esquemas de autorização',
1051
+ 'comp.build_option': 'Opção de build',
1052
+ 'comp.build_option.plural': 'Opções de build',
1053
+ 'comp.page_group': 'Grupo de páginas',
1054
+ 'comp.page_group.plural': 'Grupos de páginas',
1055
+ 'comp.lov': 'Lista de valores',
1056
+ 'comp.lov.plural': 'Listas de valores',
1057
+ 'comp.app_item': 'Item de aplicação',
1058
+ 'comp.app_item.plural': 'Itens de aplicação',
1059
+ 'comp.app_process': 'Processo de aplicação',
1060
+ 'comp.app_process.plural': 'Processos de aplicação',
1061
+ 'comp.app_computation': 'Cálculo de aplicação',
1062
+ 'comp.app_computation.plural': 'Cálculos de aplicação',
1063
+ 'comp.shortcut': 'Atalho',
1064
+ 'comp.shortcut.plural': 'Atalhos',
1065
+ 'comp.report_query': 'Consulta de relatório',
1066
+ 'comp.report_query.plural': 'Consultas de relatório',
1067
+ 'comp.component_group': 'Grupo de componentes',
1068
+ 'comp.component_group.plural': 'Grupos de componentes',
1069
+ 'comp.automation': 'Automação',
1070
+ 'comp.automation.plural': 'Automações',
1071
+ 'comp.automation_action': 'Ação de automação',
1072
+ 'comp.automation_action.plural': 'Ações de automação',
1073
+ 'comp.report_layout': 'Layout de relatório',
1074
+ 'comp.report_layout.plural': 'Layouts de relatório',
1075
+ 'comp.document_template': 'Modelo de documento',
1076
+ 'comp.document_template.plural': 'Modelos de documento',
1077
+ 'comp.task_definition': 'Definição de tarefa',
1078
+ 'comp.task_definition.plural': 'Definições de tarefa',
1079
+ 'comp.workflow_definition': 'Fluxo de trabalho',
1080
+ 'comp.workflow_definition.plural': 'Fluxos de trabalho',
1081
+ 'comp.rest_module': 'Módulo REST',
1082
+ 'comp.rest_module.plural': 'Módulos REST',
1083
+ 'comp.template_component': 'Componente de modelo',
1084
+ 'comp.template_component.plural': 'Componentes de modelo',
1085
+ 'comp.web_credential': 'Credencial web',
1086
+ 'comp.web_credential.plural': 'Credenciais web',
1087
+ 'comp.rest_source': 'Fonte de dados REST',
1088
+ 'comp.rest_source.plural': 'Fontes de dados REST',
1089
+ 'comp.data_load_def': 'Definição de carga de dados',
1090
+ 'comp.data_load_def.plural': 'Definições de carga de dados',
1091
+ 'comp.list': 'Lista',
1092
+ 'comp.list.plural': 'Listas',
1093
+ 'comp.list_entry': 'Entrada de lista',
1094
+ 'comp.list_entry.plural': 'Entradas de lista',
1095
+ 'comp.supporting_script': 'Script de suporte',
1096
+ 'comp.supporting_script.plural': 'Objetos de suporte',
1097
+ 'comp.search_config': 'Configuração de pesquisa',
1098
+ 'comp.search_config.plural': 'Configurações de pesquisa',
1099
+ 'comp.email_template': 'Modelo de e-mail',
1100
+ 'comp.email_template.plural': 'Modelos de e-mail',
1101
+ 'comp.app_setting': 'Configuração de aplicação',
1102
+ 'comp.app_setting.plural': 'Configurações de aplicação',
1103
+ 'comp.dynamic_translation': 'Tradução dinâmica',
1104
+ 'comp.dynamic_translation.plural': 'Traduções dinâmicas',
1105
+ 'sc.group.logic': 'Lógica da aplicação',
1106
+ 'sc.group.security': 'Segurança',
1107
+ 'sc.group.other': 'Outros componentes',
1108
+ 'sc.group.navigation': 'Navegação e pesquisa',
1109
+ 'sc.group.ui': 'Interface do usuário',
1110
+ 'sc.group.files': 'Arquivos e relatórios',
1111
+ 'sc.group.data': 'Fontes de dados',
1112
+ 'sc.group.workflows': 'Fluxos de trabalho e automações',
1113
+ 'sc.group.globalization': 'Globalização',
1114
+ 'sc.group.ai': 'IA generativa',
1115
+ 'sc.item.application_items': 'Itens de aplicação',
1116
+ 'sc.item.application_processes': 'Processos de aplicação',
1117
+ 'sc.item.application_computations': 'Cálculos de aplicação',
1118
+ 'sc.item.application_settings': 'Configurações de aplicação',
1119
+ 'sc.item.build_options': 'Opções de build',
1120
+ 'sc.item.application_definition': 'Definição da aplicação',
1121
+ 'sc.item.access_control': 'Controle de acesso',
1122
+ 'sc.item.authentication': 'Autenticação',
1123
+ 'sc.item.authorization_schemes': 'Esquemas de autorização',
1124
+ 'sc.item.security_attributes': 'Atributos de segurança',
1125
+ 'sc.item.sign_in_and_session_management': 'Login e gerenciamento de sessões',
1126
+ 'sc.item.lists_of_values': 'Listas de valores',
1127
+ 'sc.item.lists': 'Listas',
1128
+ 'sc.item.list_entries': 'Entradas de lista',
1129
+ 'sc.item.email_templates': 'Modelos de e-mail',
1130
+ 'sc.item.shortcuts': 'Atalhos',
1131
+ 'sc.item.component_groups': 'Grupos de componentes',
1132
+ 'sc.item.supporting_objects': 'Objetos de suporte',
1133
+ 'sc.item.subscriptions': 'Assinaturas',
1134
+ 'sc.item.navigation_menu': 'Menu de navegação',
1135
+ 'sc.item.navigation_bar_list': 'Lista da barra de navegação',
1136
+ 'sc.item.breadcrumbs': 'Trilhas de navegação',
1137
+ 'sc.item.page_groups': 'Grupos de páginas',
1138
+ 'sc.item.search_configurations': 'Configurações de pesquisa',
1139
+ 'sc.item.themes_and_theme_roller': 'Temas e Theme Roller',
1140
+ 'sc.item.user_interface_attributes': 'Atributos da interface do usuário',
1141
+ 'sc.item.template_components': 'Componentes de modelo',
1142
+ 'sc.item.plug_ins': 'Plug-ins',
1143
+ 'sc.item.component_settings': 'Configurações de componentes',
1144
+ 'sc.item.progressive_web_app': 'Progressive Web App',
1145
+ 'sc.item.static_application_files': 'Arquivos estáticos da aplicação',
1146
+ 'sc.item.report_layouts': 'Layouts de relatório',
1147
+ 'sc.item.report_queries': 'Consultas de relatório',
1148
+ 'sc.item.document_templates': 'Modelos de documento',
1149
+ 'sc.item.rest_data_sources': 'Fontes de dados REST',
1150
+ 'sc.item.web_credentials': 'Credenciais web',
1151
+ 'sc.item.restful_services': 'Serviços RESTful',
1152
+ 'sc.item.data_load_definitions': 'Definições de carga de dados',
1153
+ 'sc.item.workflows': 'Fluxos de trabalho',
1154
+ 'sc.item.task_definitions': 'Definições de tarefa',
1155
+ 'sc.item.automations': 'Automações',
1156
+ 'sc.item.translations_and_text_messages': 'Traduções e mensagens de texto',
1157
+ 'sc.item.dynamic_translations': 'Traduções dinâmicas',
1158
+ 'sc.item.globalization_attributes': 'Atributos de globalização',
1159
+ 'sc.item.ai_services': 'Serviços de IA',
1160
+ 'sc.item.ai_agents': 'Agentes de IA',
1161
+ 'sc.entries': 'Entradas',
1162
+ 'sc.list_sql': 'Esta lista mostra as linhas de sua consulta; as entradas abaixo não são usadas.',
1163
+ 'sc.no_entries': 'Ainda não há entradas.',
1164
+ 'sc.add_entry': '+ Adicionar entrada',
1165
+ 'sc.breadcrumbs_help': 'A trilha de uma página lista as páginas acima dela: cada página indica sua página pai (Page Designer → página → Breadcrumb parent). Páginas sem pai mostram Home.',
1166
+ 'sc.cs_help': 'Padrões dos tipos de componentes integrados, usados quando um componente não define nada. Vazio: o padrão do pgkiln.',
1167
+ 'sc.cs_now': '{help} {min}–{max}; agora {now}.',
1168
+ 'sc.cs_saved': 'Configurações de componentes salvas.',
1169
+ 'sc.intro': 'Os componentes que as páginas de {app} compartilham.',
1170
+ 'sc.tree_view': 'Visão em árvore',
1171
+ 'sc.create': 'Criar',
1172
+ 'sc.search': 'Pesquisar',
1173
+ 'sc.name': 'Nome',
1174
+ 'sc.details': 'Detalhes',
1175
+ 'sc.nothing_matches': 'Nenhum resultado.',
1176
+ 'sc.none_yet': 'Ainda não há {what}.',
1177
+ 'sc.count': '{n} de {total}',
1178
+ 'sc.new': 'Novo: {what}',
1179
+ 'sc.save': 'Salvar',
1180
+ 'sc.run_supporting': 'Executar objetos de suporte…',
1181
+ 'sc.delete_confirm': 'Excluir este item ({what})?',
1182
+ 'sc.delete': 'Excluir',
1183
+ 'sc.not_found': 'Não encontrado.',
1184
+ 'sc.groups_title': 'Grupos do provedor de identidade → papéis',
1185
+ 'sc.groups_help': 'Com login único, membros desses grupos recebem o papel nesta aplicação e podem entrar mesmo sem estar listados acima.',
1186
+ 'sc.remove_mapping': 'Remover o mapeamento de {group} para {role}',
1187
+ 'sc.no_groups': 'Nenhum mapeamento de grupos.',
1188
+ 'sc.group_label': 'Grupo (como no token)',
1189
+ 'sc.group_ph': 'por exemplo hr-managers',
1190
+ 'sc.role_label': 'Papel nesta aplicação',
1191
+ 'sc.role_ph': 'por exemplo manager',
1192
+ 'sc.add_mapping': 'Adicionar mapeamento',
1193
+ 'sc.access': 'Controle de acesso',
1194
+ 'sc.who': 'Quem pode entrar',
1195
+ 'sc.who.assigned': 'Somente as contas listadas abaixo (acesso baseado em papéis)',
1196
+ 'sc.who.any': 'Qualquer conta ativa do diretório',
1197
+ 'sc.access_help': 'As contas ficam no {directory}; aqui você lhes dá acesso a {app} e atribui papéis, que os esquemas de autorização e {fn} verificam. Mudanças de papel valem no próximo login (as sessões nesta aplicação terminam).',
1198
+ 'sc.directory': 'diretório de usuários',
1199
+ 'sc.account': 'Conta',
1200
+ 'sc.roles_in_app': 'Papéis nesta aplicação',
1201
+ 'sc.last_signin': 'Último login',
1202
+ 'sc.roles': 'Papéis',
1203
+ 'sc.inactive': '(inativa)',
1204
+ 'sc.roles_of': 'Papéis de {user}',
1205
+ 'sc.no_roles': 'sem papéis',
1206
+ 'sc.revoke_confirm': 'Revogar o acesso de {user} a {app}?',
1207
+ 'sc.revoke': 'Revogar',
1208
+ 'sc.no_access': 'Ainda nenhuma conta tem acesso.',
1209
+ 'sc.grant': 'Conceder acesso',
1210
+ 'sc.username_ph': 'nome de usuário',
1211
+ 'sc.existing': 'Uma conta existente.',
1212
+ 'sc.create_in_users': 'Crie contas em Usuários.',
1213
+ 'sc.roles_ph': 'separados por vírgulas, ou escolha abaixo',
1214
+ 'sc.tree.security': 'Segurança',
1215
+ 'sc.tree.globalization': 'Globalização',
1216
+ 'sc.tree.translations': 'Traduções e mensagens de texto',
1217
+ 'sc.tree.files': 'Arquivos e plug-ins',
1218
+ 'sc.tree.static': 'Arquivos estáticos da aplicação',
1219
+ 'sc.tree.subscriptions': 'Assinaturas',
1220
+ 'sc.tree.subscribers': 'Assinaturas e assinantes',
1221
+ 'sc.add_kind': 'Adicionar {what}',
1222
+ 'sc.add': '+ Adicionar',
1223
+ 'sc.review_run': 'Revisar e executar…',
1224
+ 'sc.edit': 'Editar',
1225
+ 'sc.saved': '{what}: salvo.',
1226
+ 'sc.deleted': '{what}: excluído.',
1227
+ 'sc.access_saved': 'Controle de acesso salvo.',
1228
+ 'sc.no_account': 'Não existe a conta “{user}”. Crie-a primeiro em Usuários.',
1229
+ 'sc.granted': 'Acesso concedido a {user}.',
1230
+ 'sc.mapping_added': 'Mapeamento de grupo adicionado. Vale no próximo login.',
1231
+ 'sc.mapping_removed': 'Mapeamento de grupo removido. Vale no próximo login.',
1232
+ 'sc.roles_saved': 'Papéis salvos. Valem no próximo login.',
1233
+ 'sc.revoked': 'Acesso revogado.',
1234
+ // ------------------------------------------------------------ Application settings (sprint 124)
1235
+ 'st.tab.definition': 'Definição',
1236
+ 'st.tab.security': 'Segurança',
1237
+ 'st.tab.signin': 'Login',
1238
+ 'st.tab.ui': 'Interface do usuário',
1239
+ 'st.tab.globalization': 'Globalização',
1240
+ 'st.tab.errors': 'Erros e sessões',
1241
+ 'st.tab.pwa': 'Progressive Web App',
1242
+ 'st.settings': 'Configurações',
1243
+ 'st.name': 'Nome',
1244
+ 'st.alias': 'Alias',
1245
+ 'st.version': 'Versão',
1246
+ 'st.version_ph': 'Versão 1.0',
1247
+ 'st.version_help': 'Exibida no rodapé das páginas da aplicação; vazio: nenhuma.',
1248
+ 'st.home_page': 'Página inicial',
1249
+ 'st.app_type': 'Tipo de aplicação',
1250
+ 'st.app_type_help': 'Aplicações de tema e de biblioteca oferecem seu tema ou componentes compartilhados a outras aplicações (Shared Components → Assinaturas); Criar aplicação pode partir de uma aplicação modelo.',
1251
+ 'st.type.standard': 'Padrão',
1252
+ 'st.type.theme': 'Aplicação de tema',
1253
+ 'st.type.library': 'Aplicação de biblioteca',
1254
+ 'st.type.boilerplate': 'Aplicação modelo',
1255
+ 'st.authentication': 'Autenticação',
1256
+ 'st.auth.app_users': 'Usuários da aplicação (página de login)',
1257
+ 'st.auth.header': 'Cabeçalho HTTP (proxy reverso)',
1258
+ 'st.auth.database': 'Contas do banco de dados (papéis do PostgreSQL)',
1259
+ 'st.auth.custom': 'Personalizada (uma função PL/pgSQL)',
1260
+ 'st.auth.none': 'Nenhuma (pública)',
1261
+ 'st.db_role': 'Papel do banco de dados (esquema de análise)',
1262
+ 'st.db_role_help': 'Todo o SQL da aplicação é executado com este papel (SET LOCAL ROLE), então permissões e segurança em nível de linha se aplicam. Deixe vazio só para aplicações internas confiáveis.',
1263
+ 'st.debug': 'Modo de depuração',
1264
+ 'st.debug_help': 'Mostra aos usuários finais os detalhes dos erros do banco de dados. Somente para desenvolvimento.',
1265
+ 'st.debug_msgs': 'Mensagens de depuração',
1266
+ 'st.debug_on': 'ativado, nível {level}',
1267
+ 'st.off': 'desativado',
1268
+ 'st.debug_msgs_help': 'Registra as etapas de cada requisição com tempos e as mensagens de {fn}, mantidas por {days} dias.',
1269
+ 'st.header_title': 'Autenticação por cabeçalho HTTP',
1270
+ 'st.header_intro': 'Usado somente quando a autenticação é “Cabeçalho HTTP”. Um proxy reverso ou gateway de login único autentica os usuários e passa o nome de usuário em um cabeçalho; o pgkiln só confia nele a partir dos endereços de proxy em {env}',
1271
+ 'st.header_unset': 'não definido neste servidor: o login por cabeçalho é recusado',
1272
+ 'st.header_name': 'Cabeçalho do nome de usuário',
1273
+ 'st.header_name_help': 'O cabeçalho da requisição com o nome de usuário (APEX: HTTP Header Variable). Vazio: X-Remote-User. Um cabeçalho alterado ou ausente encerra a sessão.',
1274
+ 'st.logout_url': 'URL de logout',
1275
+ 'st.logout_url_ph': 'por exemplo https://sso.example.com/logout',
1276
+ 'st.logout_url_help': 'Para onde “Sair” leva após o fim da sessão, normalmente a página de logout do próprio proxy. Vazio: uma página “sessão encerrada”.',
1277
+ 'st.header_auto': 'Criar contas automaticamente',
1278
+ 'st.header_auto_help': 'Um nome de usuário desconhecido recebe uma nova conta com acesso a esta aplicação. Caso contrário, a conta deve existir e ter acesso.',
1279
+ 'st.db_title': 'Contas do banco de dados',
1280
+ 'st.db_intro': 'Usado somente quando a autenticação é “Contas do banco de dados”. Os usuários entram com um papel de login do PostgreSQL e sua senha, verificados por uma conexão curta a este banco com esse papel. Superusuários e os papéis do próprio pgkiln são sempre recusados; sem nenhum dos dois campos ninguém pode entrar.',
1281
+ 'st.db_roles': 'Papéis permitidos',
1282
+ 'st.db_roles_ph': 'por exemplo alice, bob',
1283
+ 'st.db_roles_help': 'Papéis de login que podem entrar, separados por vírgulas (nomes exatos).',
1284
+ 'st.db_member': 'Ou membros do papel',
1285
+ 'st.db_member_ph': 'por exemplo app_users_group',
1286
+ 'st.db_member_help': 'Todos os membros deste papel também podem entrar.',
1287
+ 'st.custom_title': 'Autenticação personalizada',
1288
+ 'st.custom_intro': 'Usado somente quando a autenticação é “Personalizada”. Seu próprio PL/pgSQL verifica o nome de usuário e a senha do formulário, com o papel de banco de dados da aplicação; a senha é passada como parâmetro e nunca registrada. Tentativas falhas são limitadas como os outros logins. Sem nenhum dos dois campos ninguém pode entrar.',
1289
+ 'st.custom_fn': 'Nome da função',
1290
+ 'st.custom_fn_ph': 'por exemplo app.check_login',
1291
+ 'st.custom_fn_help': 'Uma função (p_username text, p_password text) returns boolean, em minúsculas, opcionalmente com o esquema. O papel da aplicação precisa de EXECUTE nela. Tem prioridade sobre o corpo abaixo.',
1292
+ 'st.custom_body': 'Ou corpo da função',
1293
+ 'st.custom_body_help': 'PL/pgSQL com p_username e p_password, retornando true para um login válido, por exemplo {example}',
1294
+ 'st.custom_post': 'Código pós-autenticação',
1295
+ 'st.custom_post_help': 'PL/pgSQL opcional executado após uma verificação bem-sucedida, com p_username (e meta.app_user()), por exemplo para registrar o último login. Lançar uma exceção recusa o login. Processos de aplicação “after login” são executados depois, como de costume.',
1296
+ 'st.signin': 'Login',
1297
+ 'st.methods': 'Métodos de login',
1298
+ 'st.local': 'Nome de usuário e senha',
1299
+ 'st.ldap': 'Senhas do LDAP: {name}',
1300
+ 'st.disabled': '(desativado)',
1301
+ 'st.no_ldap': 'Nenhum diretório LDAP configurado. {add} para verificar senhas no LDAP ou Active Directory.',
1302
+ 'st.add_one': 'Adicione um',
1303
+ 'st.ldap_help': 'As senhas LDAP são verificadas pelo formulário de usuário e senha, após as contas locais; então mantenha esse método ativado.',
1304
+ 'st.session_group': 'Grupo de compartilhamento de sessão',
1305
+ 'st.session_group_ph': 'vazio: não compartilhada',
1306
+ 'st.session_group_help': 'Aplicações do mesmo grupo (e com o diretório de usuários como autenticação) compartilham o login: após entrar em uma, as outras abrem sem novo login, cada uma com sua própria verificação de acesso e papéis; sair de uma sai de todas (APEX: session sharing). Letras minúsculas, dígitos e _.',
1307
+ 'st.remember': '“Manter conectado” por (dias)',
1308
+ 'st.remember_ph': 'vazio: não oferecido',
1309
+ 'st.remember_help': 'Oferece uma caixa de seleção no formulário de login (APEX: autenticação persistente). O navegador continua conectado por esse número de dias após o login, mesmo quando a sessão termina; sair, uma nova senha, desativação ou remoção do acesso encerra isso. 1 a 365.',
1310
+ 'st.sso': 'Entrar com {name}',
1311
+ 'st.no_sso': 'Nenhum provedor de identidade configurado. {add} para login único.',
1312
+ 'st.theme': 'Tema',
1313
+ 'st.base': 'Estilo base',
1314
+ 'st.base.iris': 'Iris (o padrão para novas aplicações)',
1315
+ 'st.base.lavender': 'Lavender (Iris até o pgkiln 0.41)',
1316
+ 'st.base.standard': 'Standard (pgkiln até 0.28)',
1317
+ 'st.base_help': 'Cores, cantos, fonte e sombras de toda a aplicação, clara e escura. As cores abaixo substituem o destaque e o cabeçalho.',
1318
+ 'st.accent': 'Cor de destaque',
1319
+ 'st.header_colour': 'Cor do cabeçalho',
1320
+ 'st.accent_dark': 'Cor de destaque no modo escuro',
1321
+ 'st.header_dark': 'Cor do cabeçalho no modo escuro',
1322
+ 'st.own_colour': 'Usar esta cor (senão, a paleta escura do estilo base)',
1323
+ 'st.nav': 'Menu de navegação',
1324
+ 'st.nav.side': 'Lateral (recolhível)',
1325
+ 'st.nav.top': 'Barra superior',
1326
+ 'st.nav_help': 'Em tablets e celulares o menu é sempre uma gaveta.',
1327
+ 'st.nav_list': 'Lista do menu de navegação',
1328
+ 'st.nav_entries': '- as entradas de navegação -',
1329
+ 'st.nav_list_help': 'Uma lista (Shared Components → Listas) exibida como menu de navegação no lugar das entradas de navegação.',
1330
+ 'st.navbar_list': 'Lista da barra de navegação',
1331
+ 'st.none_option': '- nenhuma -',
1332
+ 'st.navbar_help': 'Uma lista exibida como links no cabeçalho, ao lado do menu do usuário.',
1333
+ 'st.missing': '{name} (ausente!)',
1334
+ 'st.mode': 'Estilo do tema',
1335
+ 'st.mode.auto': 'Automático (claro ou escuro, conforme o dispositivo)',
1336
+ 'st.mode.light': 'Claro',
1337
+ 'st.mode.dark': 'Escuro',
1338
+ 'st.user_choice': 'Os usuários podem escolher claro ou escuro',
1339
+ 'st.user_choice_help': 'Adiciona um seletor ao menu do usuário e a Minha conta; a escolha fica salva na conta (APEX: “Enable End Users to Choose Theme Style”).',
1340
+ 'st.roller': 'Theme Roller: variantes de estilo…',
1341
+ 'st.styles_one': '{n} estilo',
1342
+ 'st.styles': '{n} estilos',
1343
+ 'st.no_styles': 'ainda não há estilos',
1344
+ 'st.language': 'Idioma principal',
1345
+ 'st.language_help': 'O idioma em que a aplicação é construída, por exemplo en, nl, de, en-GB.',
1346
+ 'st.languages': 'Idiomas traduzidos',
1347
+ 'st.languages_ph': 'por exemplo nl, de',
1348
+ 'st.languages_help': 'Separados por vírgulas. Traduza os textos em Shared Components → Globalização.',
1349
+ 'st.language_from': 'Idioma derivado de',
1350
+ 'st.from.browser': 'Navegador (Accept-Language)',
1351
+ 'st.from.user': 'Preferência do usuário, depois o navegador',
1352
+ 'st.from.primary': 'Sempre o idioma principal',
1353
+ 'st.language_from_help': 'Os usuários também podem trocar com ?lang=xx ou o seletor da página de login.',
1354
+ 'st.date_format': 'Formato de data',
1355
+ 'st.date_format_ph': 'por exemplo DD-MM-YYYY (vazio: por idioma)',
1356
+ 'st.date_format_help': 'Máscaras: YYYY YY MM MON MONTH DD DY DAY HH24 HH MI SS AM',
1357
+ 'st.ts_format': 'Formato de data e hora',
1358
+ 'st.ts_format_ph': 'por exemplo DD-MM-YYYY HH24:MI',
1359
+ 'st.save_settings': 'Salvar configurações',
1360
+ 'st.delete_confirm': 'Excluir a aplicação {app} e todas as suas páginas?',
1361
+ 'st.delete': 'Excluir aplicação',
1362
+ 'st.error_fn': 'Função de tratamento de erros',
1363
+ 'st.error_fn_ph': 'por exemplo sales.error_message',
1364
+ 'st.error_fn_help': 'schema.function(jsonb) returns jsonb, executada com o papel da aplicação: recebe a mensagem e o que se sabe de um erro (code, constraint, table, column, component, page, user, internal, reference) e pode retornar {"message": "…"} para mostrar no lugar. Vazio: nenhuma.',
1365
+ 'st.warning': 'Aviso de fim de sessão (segundos)',
1366
+ 'st.warning_help': 'Usuários conectados são avisados esse tempo antes do fim da sessão e podem continuar conectados (0: sem aviso).',
1367
+ 'st.save': 'Salvar',
1368
+ 'st.checklist': 'Lista de verificação de segurança',
1369
+ 'st.ck.role': 'Executa com um papel de banco de dados dedicado',
1370
+ 'st.ck.runtime': '(executa com a conexão de runtime)',
1371
+ 'st.ck.signin': 'Os usuários precisam entrar',
1372
+ 'st.ck.public': 'Aplicação pública',
1373
+ 'st.ck.debug_on': 'O modo de depuração está ativado: detalhes dos erros são mostrados aos usuários',
1374
+ 'st.ck.debug_off': 'O modo de depuração está desativado',
1375
+ 'st.ck.msgs_on': 'As mensagens de depuração estão ativadas (nível {level}): cada requisição é registrada',
1376
+ 'st.ck.msgs_off': 'As mensagens de depuração estão desativadas',
1377
+ 'st.ck.unprotected': 'Páginas sem proteção por checksum: {n}',
1378
+ 'st.ck.public_pages': 'Páginas públicas: {n}',
1379
+ 'st.title': 'Configurações de {app}',
1380
+ 'st.err.fn_shape': 'A função de tratamento de erros é schema.function, por exemplo sales.error_message.',
1381
+ 'st.err.no_fn': 'Não existe nenhuma função {fn}(jsonb) que retorne jsonb.',
1382
+ 'st.err.warning': 'O aviso de fim de sessão é de 0 a 3600 segundos.',
1383
+ 'st.saved': 'Salvo.',
1384
+ 'st.settings_saved': 'Configurações salvas.',
1385
+ 'st.app_deleted': 'Aplicação excluída.',
1386
+ // ------------------------------------------------------------ Users and identity providers (sprint 125)
1387
+ 'us.hints_none': 'Esta aplicação ainda não verifica nenhum papel. Papéis só importam onde um esquema de autorização ou {fn} os verifica (Shared Components → Esquemas de autorização).',
1388
+ 'us.hints_label': 'Papéis que esta aplicação verifica',
1389
+ 'us.hints_add': 'Adicionar',
1390
+ 'us.hints_app': '{app} verifica',
1391
+ 'us.title': 'Usuários',
1392
+ 'us.providers_btn': 'Provedores de identidade (login único)',
1393
+ 'us.ldap_btn': 'Diretórios LDAP',
1394
+ 'us.intro': 'Uma conta por pessoa. Dê às contas acesso às aplicações, com papéis por aplicação, aqui ou em {where} de uma aplicação.',
1395
+ 'us.access_path': 'Shared Components → Controle de acesso',
1396
+ 'us.accounts': 'Contas',
1397
+ 'us.search_ph': 'Pesquisar nome, usuário ou e-mail…',
1398
+ 'us.search_label': 'Pesquisar contas',
1399
+ 'us.search': 'Pesquisar',
1400
+ 'us.username': 'Nome de usuário',
1401
+ 'us.name': 'Nome',
1402
+ 'us.apps_roles': 'Aplicações (papéis)',
1403
+ 'us.applications': 'Aplicações',
1404
+ 'us.signin': 'Login',
1405
+ 'us.status': 'Status',
1406
+ 'us.none': 'nenhuma',
1407
+ 'us.password': 'senha',
1408
+ 'us.no_password': 'sem senha',
1409
+ 'us.active': 'ativa',
1410
+ 'us.inactive': 'inativa',
1411
+ 'us.last': 'último {at}',
1412
+ 'us.no_accounts': 'Nenhuma conta encontrada.',
1413
+ 'us.create': 'Criar conta',
1414
+ 'us.username_help': 'Sem espaços nem dois-pontos; não diferencia maiúsculas.',
1415
+ 'us.email': 'E-mail',
1416
+ 'us.password_label': 'Senha',
1417
+ 'us.password_help': 'Pelo menos 8 caracteres. Deixe vazio para contas que só entram por login único.',
1418
+ 'us.must_change': 'Exigir a troca da senha no primeiro uso',
1419
+ 'us.settings': 'Configurações das contas',
1420
+ 'us.min_length': 'Comprimento mínimo da senha',
1421
+ 'us.lifetime': 'Validade da senha (dias)',
1422
+ 'us.lifetime_help': 'Após esse número de dias os usuários precisam escolher uma nova senha no login. 0 = nunca.',
1423
+ 'us.mixed': 'As senhas precisam de letras e dígitos',
1424
+ 'us.policy_note': 'As senhas nunca podem conter o nome de usuário. O login é bloqueado por {minutes} minutos após {failures} tentativas falhas (Utilitários do workspace → Configurações da instância); Desbloquear em uma conta remove o bloqueio.',
1425
+ 'us.save_settings': 'Salvar configurações',
1426
+ 'us.created': 'Conta criada. Agora dê a ela acesso a aplicações.',
1427
+ 'us.exists': 'Já existe uma conta com esse nome de usuário.',
1428
+ 'us.settings_saved': 'Configurações das contas salvas.',
1429
+ 'us.details': 'Detalhes',
1430
+ 'us.active_label': 'Ativa',
1431
+ 'us.active_help': 'Contas inativas não podem entrar em nenhuma aplicação; desativar encerra suas sessões.',
1432
+ 'us.save': 'Salvar',
1433
+ 'us.password_title': 'Senha',
1434
+ 'us.set': 'Definida',
1435
+ 'us.set_on': 'Definida em {date}',
1436
+ 'us.sso_only': 'Sem senha (somente login único)',
1437
+ 'us.must_next': 'Deve ser trocada no próximo login',
1438
+ 'us.expires': 'Expira em {n} dia(s)',
1439
+ 'us.fails': '{n} login(s) com falha na última hora',
1440
+ 'us.unexpire': 'Cancelar a expiração',
1441
+ 'us.expire': 'Expirar a senha',
1442
+ 'us.unlock': 'Desbloquear o login',
1443
+ 'us.new_password': 'Nova senha',
1444
+ 'us.set_password_label': 'Definir uma senha',
1445
+ 'us.ends_sessions': 'Encerra as sessões da conta.',
1446
+ 'us.set_password': 'Definir senha',
1447
+ 'us.remove_confirm': 'Remover a senha? A conta só poderá entrar por login único.',
1448
+ 'us.remove_password': 'Remover senha',
1449
+ 'us.delete_confirm': 'Excluir a conta {user} e todos os seus acessos a aplicações?',
1450
+ 'us.delete': 'Excluir conta',
1451
+ 'us.app_access': 'Acesso a aplicações',
1452
+ 'us.application': 'Aplicação',
1453
+ 'us.roles': 'Papéis',
1454
+ 'us.roles_in': 'Papéis em {app}',
1455
+ 'us.roles_ph': 'sem papéis (por exemplo {example})',
1456
+ 'us.revoke_confirm': 'Revogar o acesso a {app}?',
1457
+ 'us.revoke': 'Revogar',
1458
+ 'us.no_access': 'Ainda sem acesso a nenhuma aplicação.',
1459
+ 'us.grant': 'Conceder acesso',
1460
+ 'us.roles_comma': 'separados por vírgulas, ou escolha abaixo',
1461
+ 'us.saved': 'Conta salva.',
1462
+ 'us.pw_removed': 'Senha removida.',
1463
+ 'us.pw_set': 'Senha definida.',
1464
+ 'us.pw_expired': 'Senha expirada: precisa ser trocada no próximo login.',
1465
+ 'us.pw_unexpired': 'A senha não está mais expirada.',
1466
+ 'us.unlocked': 'Login desbloqueado.',
1467
+ 'us.deleted': 'Conta excluída.',
1468
+ 'us.granted': 'Acesso concedido.',
1469
+ 'us.roles_saved': 'Papéis salvos. O usuário os recebe no próximo login.',
1470
+ 'us.revoked': 'Acesso revogado.',
1471
+ 'idp.title': 'Provedores de identidade',
1472
+ 'idp.name': 'Nome (nas URLs)',
1473
+ 'idp.name_help': 'em minúsculas, por exemplo entra, google, keycloak',
1474
+ 'idp.protocol': 'Protocolo',
1475
+ 'idp.label': 'Rótulo do botão',
1476
+ 'idp.label_help': 'Exibido como “Entrar com …”',
1477
+ 'idp.issuer': 'Emissor (OIDC: URL; SAML: o entity ID do IdP)',
1478
+ 'idp.issuer_help': 'por exemplo https://login.microsoftonline.com/<tenant>/v2.0, https://keycloak.example.com/realms/acme, ou para SAML o entityID dos metadados do IdP',
1479
+ 'idp.client_id': 'ID do cliente (SAML: o entity ID do pgkiln)',
1480
+ 'idp.client_id_help': 'OIDC: obrigatório. SAML: vazio = a URL de metadados deste provedor.',
1481
+ 'idp.sso_url': 'SAML: URL de login do IdP',
1482
+ 'idp.sso_url_help': 'O endereço do SingleSignOnService (binding HTTP-Redirect) nos metadados do IdP.',
1483
+ 'idp.cert': 'SAML: certificado de assinatura do IdP (PEM)',
1484
+ 'idp.cert_help': 'Dos metadados do IdP (X509Certificate, entre as linhas BEGIN/END CERTIFICATE). As asserções precisam ser assinadas com ele.',
1485
+ 'idp.secret': 'Segredo do cliente',
1486
+ 'idp.secret_kept': 'Há um segredo armazenado. Deixe vazio para mantê-lo.',
1487
+ 'idp.secret_public': 'Deixe vazio para um cliente público (somente PKCE).',
1488
+ 'idp.scopes': 'Escopos',
1489
+ 'idp.username_claim': 'Claim do nome de usuário',
1490
+ 'idp.username_claim_help': 'Use um claim que os usuários não possam alterar (por exemplo preferred_username, upn, email). SAML: um nome de atributo ou nameID.',
1491
+ 'idp.groups_claim': 'Claim de grupos',
1492
+ 'idp.groups_claim_help': 'Caminhos com pontos funcionam, por exemplo realm_access.roles',
1493
+ 'idp.auto_create': 'Criar contas automaticamente no primeiro login',
1494
+ 'idp.auto_create_help': 'Caso contrário, só pessoas com uma conta vinculada a este provedor (ou permitidas abaixo) podem entrar.',
1495
+ 'idp.link': 'Vincular contas existentes com o mesmo nome de usuário no primeiro login',
1496
+ 'idp.link_help': 'Somente quando os usuários não podem escolher o claim do nome neste provedor: caso contrário, alguém poderia registrar o nome de uma conta existente e tomá-la. Com o claim de e-mail, só endereços verificados são vinculados. Desligue depois que as contas estiverem vinculadas.',
1497
+ 'idp.enabled': 'Ativado',
1498
+ 'idp.remove_secret': 'Remover o segredo do cliente armazenado',
1499
+ 'idp.add': 'Adicionar provedor',
1500
+ 'idp.intro': 'Provedores OpenID Connect para login único (Microsoft Entra ID, Google, Okta, Keycloak, Auth0, …). Registre o pgkiln no provedor como aplicação web com a URI de redirecionamento mostrada e ative o provedor por aplicação em {where}.',
1501
+ 'idp.where': 'Configurações → Métodos de login',
1502
+ 'idp.providers': 'Provedores',
1503
+ 'idp.provider': 'Provedor',
1504
+ 'idp.issuer_col': 'Emissor',
1505
+ 'idp.used_by': 'Usado por',
1506
+ 'idp.linked': 'Contas vinculadas',
1507
+ 'idp.no_apps': 'nenhuma aplicação',
1508
+ 'idp.enabled_s': 'ativado',
1509
+ 'idp.disabled_s': 'desativado',
1510
+ 'idp.auto_s': 'criação automática',
1511
+ 'idp.links_s': 'vincula contas existentes',
1512
+ 'idp.none': 'Ainda não há provedores de identidade.',
1513
+ 'idp.settings': 'Configurações',
1514
+ 'idp.delete_confirm': 'Excluir {name}? As identidades vinculadas são removidas; as contas ficam.',
1515
+ 'idp.delete': 'Excluir provedor',
1516
+ 'idp.register_idp': 'Registrar no provedor de identidade',
1517
+ 'idp.sp_metadata': 'Metadados do provedor de serviço (importe-os no IdP):',
1518
+ 'idp.by_hand': 'Ou à mão: entity ID {entity}, assertion consumer service (HTTP-POST) {acs}.',
1519
+ 'idp.saml_note': 'Baseado em {env}. Assine as asserções; envie os grupos no atributo {claim} para mapeá-los a papéis.',
1520
+ 'idp.register': 'Registrar no provedor',
1521
+ 'idp.redirect': 'URI de redirecionamento (callback):',
1522
+ 'idp.public_url': 'Baseado em {env}; defina-o como o endereço que os usuários veem (por exemplo https://apps.example.com).',
1523
+ 'idp.grant': 'Tipo de concessão: {type} com PKCE. Escopos: {scopes}. Inclua um claim {claim} no token de ID para mapear grupos a papéis.',
1524
+ 'idp.auth_code': 'código de autorização',
1525
+ 'idp.test': 'Testar a descoberta',
1526
+ 'idp.added': 'Provedor adicionado. Registre a URI de redirecionamento no provedor e depois teste a conexão.',
1527
+ 'idp.saved': 'Provedor salvo.',
1528
+ 'idp.works': 'A descoberta funciona. Endpoint de autorização: {url}',
1529
+ 'idp.failed': 'A descoberta falhou: {error}',
1530
+ 'idp.deleted': 'Provedor excluído.',
1531
+ // ------------------------------------------------------------ Workspaces (sprint 125)
1532
+ 'wsp.title': 'Workspaces',
1533
+ 'wsp.admins_only': 'Somente administradores gerenciam workspaces.',
1534
+ 'wsp.err.exists': 'Já existe um workspace com este nome.',
1535
+ 'wsp.err.name_check': 'O nome tem de 1 a 60 caracteres, sem espaços no início ou no fim.',
1536
+ 'wsp.err.name': 'O nome tem de 1 a 60 caracteres.',
1537
+ 'wsp.iso.secret': 'defina PGKILN_SECRET_KEY (pelo menos 32 caracteres) no ambiente do servidor: os logins de banco de dados do workspace recebem senhas derivadas dela.',
1538
+ 'wsp.iso.runtime': 'defina RUNTIME_DATABASE_URL: as aplicações são executadas na conexão do proprietário, então nenhum workspace pode ser isolado.',
1539
+ 'wsp.err.role_taken': 'este papel já pertence a outro workspace.',
1540
+ 'wsp.err.role_has': 'o workspace já tem este papel.',
1541
+ 'wsp.isolated_tag': 'isolado',
1542
+ 'wsp.iso.on': 'Suas aplicações são executadas como {run} e o SQL de seus desenvolvedores (SQL Workshop, verificações de código, o Advisor) como {dev}. Ambos alcançam somente os papéis abaixo e veem nas tabelas do pgkiln somente as aplicações, sessões e contas deste workspace. Desenvolvedores que também pertencem a um workspace compartilhado mantêm lá os direitos dele.',
1543
+ 'wsp.db_role': 'Papel do banco de dados',
1544
+ 'wsp.used_by': 'Usado por',
1545
+ 'wsp.missing': 'ausente',
1546
+ 'wsp.no_app': 'nenhuma aplicação',
1547
+ 'wsp.remove': 'Remover',
1548
+ 'wsp.no_roles': 'Nenhum papel de banco de dados: as aplicações daqui não podem ser executadas com um papel próprio.',
1549
+ 'wsp.add_role': 'Adicionar um papel de banco de dados',
1550
+ 'wsp.add_role_help': 'Um papel existente (não um superusuário, nem um que cria papéis ou ignora a segurança em nível de linha). Seus direitos passam a ser os deste workspace; ele não pode pertencer a outro.',
1551
+ 'wsp.add_role_btn': 'Adicionar papel',
1552
+ 'wsp.make_shared_confirm': 'Tornar {name} compartilhado de novo? Suas aplicações passam a ser executadas na conexão de runtime compartilhada, e o SQL de seus desenvolvedores como proprietário.',
1553
+ 'wsp.make_shared': 'Tornar compartilhado',
1554
+ 'wsp.shared_text': 'Compartilhado: as aplicações são executadas na conexão de runtime compartilhada e o SQL dos desenvolvedores como proprietário, como em todo workspace compartilhado.',
1555
+ 'wsp.iso_help': 'Isolar dá ao workspace dois logins de banco de dados próprios e os papéis que suas aplicações usam agora. O código das aplicações então alcança somente esses papéis e as aplicações deste workspace; o SQL Workshop de seus desenvolvedores é executado no login do workspace em vez do proprietário. Novas aplicações recebem um papel e um esquema próprios.',
1556
+ 'wsp.to_isolate': 'Para isolar um workspace, {problem}',
1557
+ 'wsp.isolate_confirm': 'Isolar {name}?',
1558
+ 'wsp.isolate': 'Isolar este workspace',
1559
+ 'wsp.isolation': 'Isolamento',
1560
+ 'wsp.service': 'Gerenciar o serviço',
1561
+ 'wsp.message': 'Mensagem do workspace',
1562
+ 'wsp.message_help': 'Exibida aos desenvolvedores deste workspace no início do App Builder, por exemplo uma janela de manutenção. Texto simples.',
1563
+ 'wsp.banner': 'Faixa de ambiente',
1564
+ 'wsp.banner_help': 'Um rótulo curto no topo de cada página do builder enquanto este workspace estiver ativo. Vazio: sem faixa.',
1565
+ 'wsp.banner_colour': 'Cor da faixa',
1566
+ 'wsp.save': 'Salvar',
1567
+ 'wsp.prefs': 'Preferências do workspace',
1568
+ 'wsp.sql_on': 'Ativar o SQL Workshop',
1569
+ 'wsp.sql_on_help': 'Desativado: a Planilha SQL, o Browser de Objetos, os scripts SQL, a carga e descarga de dados, o Quick SQL, o construtor de consultas, DDL, Comparar e IA são recusados enquanto este workspace estiver ativo, para todos os desenvolvedores.',
1570
+ 'wsp.rest_on': 'Ativar os serviços RESTful',
1571
+ 'wsp.rest_on_help': 'Desativado: os módulos REST das aplicações deste workspace respondem 404 (Not found) em {path}; ainda podem ser editados.',
1572
+ 'wsp.builder_home': 'Links do builder abrem',
1573
+ 'wsp.home.apps': 'App Builder',
1574
+ 'wsp.home.home': 'Início do workspace',
1575
+ 'wsp.builder_home_help': 'Para onde um link para /builder (um favorito de antes do início do workspace) leva neste workspace. Entrar sempre abre o início do workspace; o App Builder fica em /builder/apps.',
1576
+ 'wsp.save_prefs': 'Salvar preferências',
1577
+ 'wsp.links': 'Links de extensões',
1578
+ 'wsp.links_help': 'Links para outras ferramentas que os desenvolvedores deste workspace usam (monitoramento, uma wiki, um sistema de tickets), no menu {menu} do builder enquanto o workspace estiver ativo. Abrem em uma nova aba.',
1579
+ 'wsp.extensions': 'Extensões',
1580
+ 'wsp.label': 'Rótulo',
1581
+ 'wsp.url': 'URL',
1582
+ 'wsp.order': 'Ordem',
1583
+ 'wsp.delete_link_confirm': 'Excluir o link {label}?',
1584
+ 'wsp.delete': 'Excluir',
1585
+ 'wsp.no_links': 'Nenhum link de extensão.',
1586
+ 'wsp.label_ph': 'Monitoramento',
1587
+ 'wsp.description': 'Descrição',
1588
+ 'wsp.add_link': 'Adicionar link',
1589
+ 'wsp.switched': 'Workspace {name}.',
1590
+ 'wsp.intro': 'Um workspace agrupa aplicações e os desenvolvedores que as constroem. Os desenvolvedores veem e alteram as aplicações de seus próprios workspaces; administradores veem todas. Um workspace compartilhado não é uma fronteira de segurança entre desenvolvedores que escrevem SQL: seu SQL Workshop e o código das aplicações são executados com os direitos desta instalação. Um workspace {isolated} é: suas aplicações e seu SQL são executados em logins de banco de dados próprios que alcançam somente seus papéis e suas próprias aplicações.',
1591
+ 'wsp.isolated_word': 'isolado',
1592
+ 'wsp.workspace': 'Workspace',
1593
+ 'wsp.applications': 'Aplicações',
1594
+ 'wsp.developers': 'Desenvolvedores',
1595
+ 'wsp.admins_text': 'somente administradores',
1596
+ 'wsp.add': 'Adicionar workspace',
1597
+ 'wsp.name': 'Nome',
1598
+ 'wsp.name_help': 'Por exemplo a equipe ou o departamento que constrói aqui suas aplicações.',
1599
+ 'wsp.first_dev': 'Você se torna seu primeiro desenvolvedor; adicione outros na página dele.',
1600
+ 'wsp.added': 'Workspace {name} adicionado.',
1601
+ 'wsp.settings': 'Configurações',
1602
+ 'wsp.default_no_delete': 'O workspace Default não pode ser excluído: aplicações importadas e criadas pela linha de comando começam aqui.',
1603
+ 'wsp.delete_confirm': 'Excluir o workspace {name}?',
1604
+ 'wsp.delete_ws': 'Excluir workspace',
1605
+ 'wsp.move_first': 'Mova primeiro suas aplicações para outro workspace.',
1606
+ 'wsp.devs_help': 'Os desenvolvedores deste workspace veem e alteram suas aplicações. Administradores veem todos os workspaces.',
1607
+ 'wsp.administrator': '(administrador)',
1608
+ 'wsp.ws_admins': 'Administradores do workspace',
1609
+ 'wsp.ws_admins_help': 'Eles gerenciam o nome e os desenvolvedores deste workspace. Isolamento, papéis de banco de dados, mover aplicações e excluir o workspace ficam com os administradores.',
1610
+ 'wsp.save_devs': 'Salvar desenvolvedores',
1611
+ 'wsp.mail_net': 'E-mail e acesso à rede',
1612
+ 'wsp.mail_net_text': 'O {mail} próprio deste workspace para suas aplicações sem um próprio, sua lista de {network} (quais hosts suas aplicações podem chamar, dentro da lista da instalação) e a {queue}.',
1613
+ 'wsp.mail_service': 'serviço de e-mail',
1614
+ 'wsp.network': 'acesso à rede',
1615
+ 'wsp.queue': 'fila de e-mails',
1616
+ 'wsp.iso_short_on': 'Isolado: suas aplicações e seu SQL são executados em logins de banco de dados próprios.',
1617
+ 'wsp.iso_short_off': 'Compartilhado.',
1618
+ 'wsp.admins_change': 'Os administradores o alteram.',
1619
+ 'wsp.application': 'Aplicação',
1620
+ 'wsp.move_to': 'Mover para',
1621
+ 'wsp.move_label': 'Mover {app} para',
1622
+ 'wsp.move': 'Mover',
1623
+ 'wsp.no_other': 'nenhum outro workspace',
1624
+ 'wsp.no_apps': 'Nenhuma aplicação.',
1625
+ 'wsp.saved': 'Workspace salvo.',
1626
+ 'wsp.not_found': 'Não encontrado.',
1627
+ 'wsp.devs_saved': 'Desenvolvedores salvos.',
1628
+ 'wsp.not_moved': 'Não movida: {why}',
1629
+ 'wsp.moved': 'Aplicação movida para {name}.',
1630
+ 'wsp.err.default': 'O workspace Default não pode ser excluído.',
1631
+ 'wsp.err.isolated': 'Torne o workspace compartilhado (não isolado) antes de excluí-lo.',
1632
+ 'wsp.err.has_apps': 'Mova primeiro as aplicações deste workspace para outro.',
1633
+ 'wsp.deleted': 'Workspace {name} excluído.',
1634
+ 'wsp.isolated_now': 'O workspace está isolado: suas aplicações e seu SQL agora são executados em logins de banco de dados próprios.',
1635
+ 'wsp.shared_now': 'O workspace está compartilhado de novo: suas aplicações são executadas na conexão de runtime compartilhada.',
1636
+ 'wsp.not_isolated': 'Não isolado: {why}',
1637
+ 'wsp.not_changed': 'Não alterado: {why}',
1638
+ 'wsp.err.role_name': 'Um nome de papel é uma letra ou _ seguida de letras, dígitos, _ ou $ (no máximo 63).',
1639
+ 'wsp.err.no_role': 'Não existe o papel de banco de dados {role}.',
1640
+ 'wsp.err.role_used_one': '{apps} é executada como {role}: dê a ela outro papel primeiro.',
1641
+ 'wsp.err.role_used': '{apps} são executadas como {role}: dê a elas outro papel primeiro.',
1642
+ 'wsp.role_removed': 'Papel {role} removido.',
1643
+ 'wsp.role_added': 'Papel {role} adicionado.',
1644
+ 'wsp.not_saved': 'Não salvo: {why}',
1645
+ 'wsp.err.message': 'A mensagem tem no máximo 2000 caracteres.',
1646
+ 'wsp.err.banner': 'O rótulo da faixa tem no máximo 40 caracteres.',
1647
+ 'wsp.service_saved': 'Mensagem e faixa salvas.',
1648
+ 'wsp.prefs_saved': 'Preferências salvas.',
1649
+ 'wsp.err.label': 'O rótulo tem de 1 a 60 caracteres.',
1650
+ 'wsp.err.url': 'A URL começa com http:// ou https://.',
1651
+ 'wsp.err.description': 'A descrição tem no máximo 500 caracteres.',
1652
+ 'wsp.err.order': 'A ordem é um número inteiro.',
1653
+ 'wsp.link_added': 'Link {label} adicionado.',
1654
+ 'wsp.link_exists': 'Já existe um link {label}.',
1655
+ 'wsp.link_not_saved': 'O link não foi salvo.',
1656
+ 'wsp.link_deleted': 'Link excluído.',
1657
+ 'wsp.util_title': 'Utilização do workspace: {name}',
1658
+ 'wsp.pages': 'Páginas',
1659
+ 'wsp.views30': 'Visualizações de página (30 dias)',
1660
+ 'wsp.scripts': 'Scripts SQL',
1661
+ 'wsp.regions': 'Regiões',
1662
+ 'wsp.items': 'Itens',
1663
+ 'wsp.users30': 'Usuários (30 dias)',
1664
+ 'wsp.static': 'Arquivos estáticos',
1665
+ 'wsp.views': 'Visualizações de página',
1666
+ 'wsp.users': 'Usuários',
1667
+ 'wsp.schemas': 'Esquemas',
1668
+ 'wsp.schemas_help': 'Os esquemas que os papéis de banco de dados do workspace podem usar, com o armazenamento de suas tabelas, índices e dados TOAST.',
1669
+ 'wsp.schema': 'Esquema',
1670
+ 'wsp.owner': 'Proprietário',
1671
+ 'wsp.tables': 'Tabelas',
1672
+ 'wsp.storage': 'Armazenamento',
1673
+ 'wsp.no_schemas': 'Nenhum esquema: as aplicações do workspace não têm papel de banco de dados próprio.',
1674
+ 'wsp.utilization': 'Utilização',
1675
+ 'wsp.util_crumb': 'Utilização: {name}',
1676
+ // ------------------------------------------------------------ Developers (sprint 125)
1677
+ 'dev.title': 'Desenvolvedores',
1678
+ 'dev.change_pw': 'Alterar sua senha',
1679
+ 'dev.current': 'Senha atual',
1680
+ 'dev.new': 'Nova senha',
1681
+ 'dev.min8': 'Pelo menos 8 caracteres.',
1682
+ 'dev.change_btn': 'Alterar senha',
1683
+ 'dev.your_email': 'Seu endereço de e-mail',
1684
+ 'dev.email': 'Endereço de e-mail',
1685
+ 'dev.email_help': '“Encontrar meu workspace” na página de login envia seus workspaces para ele. Vazio: nenhum.',
1686
+ 'dev.save': 'Salvar',
1687
+ 'dev.accounts': 'Contas de desenvolvedor',
1688
+ 'dev.accounts_help': 'Administradores adicionam e removem desenvolvedores e podem quebrar os bloqueios de páginas e aplicações de outros.',
1689
+ 'dev.username': 'Nome de usuário',
1690
+ 'dev.role': 'Papel',
1691
+ 'dev.email_col': 'E-mail',
1692
+ 'dev.you': '(você)',
1693
+ 'dev.administrator': 'Administrador',
1694
+ 'dev.developer': 'Desenvolvedor',
1695
+ 'dev.email_of': 'Endereço de e-mail de {user}',
1696
+ 'dev.none': 'nenhum',
1697
+ 'dev.make_dev': 'Tornar desenvolvedor',
1698
+ 'dev.make_admin': 'Tornar administrador',
1699
+ 'dev.remove_confirm': 'Remover o desenvolvedor {user}?',
1700
+ 'dev.remove': 'Remover',
1701
+ 'dev.add': 'Adicionar desenvolvedor',
1702
+ 'dev.password': 'Senha',
1703
+ 'dev.optional_email': 'Opcional: para “Encontrar meu workspace”.',
1704
+ 'dev.admins_only': 'Somente administradores adicionam e removem desenvolvedores.',
1705
+ 'dev.err.email': 'O endereço de e-mail não é válido.',
1706
+ 'dev.added_ws': 'Desenvolvedor adicionado ao workspace {name}.',
1707
+ 'dev.added': 'Desenvolvedor adicionado.',
1708
+ 'dev.err.current': 'A senha atual não está correta.',
1709
+ 'dev.pw_changed': 'Senha alterada.',
1710
+ 'dev.email_saved': 'Endereço de e-mail salvo.',
1711
+ 'dev.not_found': 'Não encontrado.',
1712
+ 'dev.role_changed': 'Papel alterado.',
1713
+ 'dev.removed': 'Desenvolvedor removido.',
1046
1714
  };