@object-ui/i18n 16.0.0 → 17.1.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/CHANGELOG.md +1270 -0
- package/dist/locales/ar.d.ts +827 -2
- package/dist/locales/ar.js +833 -7
- package/dist/locales/de.d.ts +825 -2
- package/dist/locales/de.js +831 -7
- package/dist/locales/en.d.ts +404 -17
- package/dist/locales/en.js +419 -19
- package/dist/locales/es.d.ts +825 -2
- package/dist/locales/es.js +831 -7
- package/dist/locales/fr.d.ts +827 -2
- package/dist/locales/fr.js +833 -7
- package/dist/locales/index.d.ts +7378 -90
- package/dist/locales/ja.d.ts +825 -2
- package/dist/locales/ja.js +831 -7
- package/dist/locales/ko.d.ts +825 -2
- package/dist/locales/ko.js +831 -7
- package/dist/locales/pt.d.ts +827 -2
- package/dist/locales/pt.js +833 -7
- package/dist/locales/ru.d.ts +827 -2
- package/dist/locales/ru.js +833 -7
- package/dist/locales/zh.d.ts +327 -18
- package/dist/locales/zh.js +329 -18
- package/dist/useObjectLabel.d.ts +240 -12
- package/dist/useObjectLabel.js +109 -44
- package/dist/useSafeTranslation.d.ts +2 -0
- package/dist/useSafeTranslation.js +7 -2
- package/package.json +3 -3
package/dist/locales/pt.js
CHANGED
|
@@ -1,6 +1,15 @@
|
|
|
1
1
|
const pt = {
|
|
2
2
|
// objectui#2600 B5 — capability picker scope group headers (labels come from the sys_capability registry).
|
|
3
3
|
capability: {
|
|
4
|
+
label: {
|
|
5
|
+
manage_users: "Gerenciar usuários",
|
|
6
|
+
manage_org_users: "Gerenciar usuários da organização",
|
|
7
|
+
manage_metadata: "Gerenciar metadados",
|
|
8
|
+
manage_platform_settings: "Gerenciar configurações da plataforma",
|
|
9
|
+
setup_access: "Acesso à configuração",
|
|
10
|
+
setup_write: "Gravação de configurações",
|
|
11
|
+
studio_access: "Acesso ao Studio",
|
|
12
|
+
},
|
|
4
13
|
group: {
|
|
5
14
|
platform: 'Plataforma',
|
|
6
15
|
org: 'Organização',
|
|
@@ -74,9 +83,14 @@ const pt = {
|
|
|
74
83
|
package: "Pacote",
|
|
75
84
|
},
|
|
76
85
|
actions: {
|
|
86
|
+
decisionOutput: {
|
|
87
|
+
help: 'Entregue ao fluxo como saída da decisão.',
|
|
88
|
+
helpMultiValue: 'Entregue ao fluxo como saída da decisão. Separe vários valores por vírgulas.',
|
|
89
|
+
},
|
|
77
90
|
resultDialog: {
|
|
78
|
-
defaultTitle: '
|
|
79
|
-
acknowledge: '
|
|
91
|
+
defaultTitle: 'Guarde este valor agora',
|
|
92
|
+
acknowledge: 'Eu o salvei',
|
|
93
|
+
copyAll: 'Copiar tudo',
|
|
80
94
|
},
|
|
81
95
|
},
|
|
82
96
|
validation: {
|
|
@@ -93,6 +107,16 @@ const pt = {
|
|
|
93
107
|
type: "{{field}} deve ser um {{type}} válido",
|
|
94
108
|
},
|
|
95
109
|
form: {
|
|
110
|
+
noPermissionToSave: "Você não tem permissão para salvar este registro.",
|
|
111
|
+
submitFailed: "Não foi possível salvar. Tente novamente.",
|
|
112
|
+
discardTitle: "Descartar as alterações?",
|
|
113
|
+
discardMessage: "Você tem alterações não salvas. Se fechar este formulário agora, suas edições serão perdidas.",
|
|
114
|
+
keepEditing: "Continuar editando",
|
|
115
|
+
discard: "Descartar",
|
|
116
|
+
conflictTitle: "Conflito ao salvar",
|
|
117
|
+
conflictMessage: "Outra pessoa alterou este registro enquanto você editava. Sobrescrever substituirá as alterações dela pelas suas.",
|
|
118
|
+
conflictLatestVersion: "Salvamento dela: {{time}}",
|
|
119
|
+
conflictOverwrite: "Sobrescrever",
|
|
96
120
|
addItem: "Adicionar item",
|
|
97
121
|
removeItem: "Remover item",
|
|
98
122
|
fieldRequired: "Este campo é obrigatório",
|
|
@@ -103,8 +127,6 @@ const pt = {
|
|
|
103
127
|
stepOf: "Etapa {{current}} de {{total}}",
|
|
104
128
|
createTitle: "Criar {{object}}",
|
|
105
129
|
editTitle: "Editar {{object}}",
|
|
106
|
-
createDescription: "Adicionar um novo {{object}} ao seu banco de dados.",
|
|
107
|
-
editDescription: "Atualizar detalhes de {{object}}",
|
|
108
130
|
saveRecord: "Salvar registro",
|
|
109
131
|
create: "Criar",
|
|
110
132
|
update: "Atualizar",
|
|
@@ -113,14 +135,70 @@ const pt = {
|
|
|
113
135
|
deleteSuccess: "{{object}} excluído",
|
|
114
136
|
},
|
|
115
137
|
fields: {
|
|
138
|
+
image: {
|
|
139
|
+
upload: "Enviar imagem",
|
|
140
|
+
addMore: "Adicionar mais imagens",
|
|
141
|
+
uploading: "Enviando…",
|
|
142
|
+
imageAlt: "Imagem {{index}}",
|
|
143
|
+
crop: "Recortar a imagem {{index}}",
|
|
144
|
+
remove: "Remover a imagem {{index}}",
|
|
145
|
+
enlarge: "Ampliar {{name}}",
|
|
146
|
+
preview: "Pré-visualização da imagem",
|
|
147
|
+
previous: "Imagem anterior",
|
|
148
|
+
next: "Próxima imagem",
|
|
149
|
+
counter: "{{current}} / {{total}}",
|
|
150
|
+
},
|
|
116
151
|
relativeDate: {
|
|
117
152
|
overdue: "Atrasado {{count}} d",
|
|
118
153
|
},
|
|
154
|
+
file: {
|
|
155
|
+
dragDropHere: 'Arraste e solte arquivos aqui',
|
|
156
|
+
dropFilesHere: 'Solte os arquivos aqui',
|
|
157
|
+
browseHint: 'ou clique para procurar',
|
|
158
|
+
browseHintCamera: 'ou clique para procurar • use o botão da câmera abaixo',
|
|
159
|
+
takePhoto: 'Tirar foto',
|
|
160
|
+
takeSelfie: 'Tirar selfie',
|
|
161
|
+
cameraCapture: 'Captura da câmera',
|
|
162
|
+
uploading: 'Enviando…',
|
|
163
|
+
uploadingPct: 'Enviando… ({{pct}} %)',
|
|
164
|
+
fileFallback: 'Arquivo',
|
|
165
|
+
upload: 'Enviar',
|
|
166
|
+
remove: 'Remover {{name}}',
|
|
167
|
+
exceedsMaxSize: '"{{name}}" excede o tamanho máximo ({{max}} MB)',
|
|
168
|
+
uploadFailed: 'Falha ao enviar "{{name}}": {{error}}',
|
|
169
|
+
},
|
|
119
170
|
richText: {
|
|
120
171
|
format: "Formato: {{format}}",
|
|
121
172
|
basicEditorHint: "Editor de texto rico (básico)",
|
|
122
173
|
placeholder: "Digite algo...",
|
|
123
174
|
},
|
|
175
|
+
objectRef: {
|
|
176
|
+
loading: "Carregando objetos…",
|
|
177
|
+
placeholder: "Selecionar um objeto",
|
|
178
|
+
search: "Pesquisar objetos…",
|
|
179
|
+
empty: "Nenhum objeto encontrado",
|
|
180
|
+
},
|
|
181
|
+
recipient: {
|
|
182
|
+
selectTypeFirst: "Selecione primeiro um tipo de destinatário.",
|
|
183
|
+
loading: "Carregando…",
|
|
184
|
+
search: "Pesquisar…",
|
|
185
|
+
empty: "Nenhuma correspondência",
|
|
186
|
+
select: "Selecionar um destinatário",
|
|
187
|
+
selectUser: "Selecionar um usuário",
|
|
188
|
+
selectTeam: "Selecionar uma equipe",
|
|
189
|
+
selectBusinessUnit: "Selecionar uma unidade de negócio",
|
|
190
|
+
selectPosition: "Selecionar um cargo",
|
|
191
|
+
selectUnitAndSubordinates: "Selecionar uma unidade de negócio",
|
|
192
|
+
},
|
|
193
|
+
filterCondition: {
|
|
194
|
+
selectObjectFirst: "Selecione primeiro um objeto.",
|
|
195
|
+
noCriteria: "Sem critérios — esta regra não compartilha nada",
|
|
196
|
+
criteriaRequired: "Adicione pelo menos uma condição. Uma regra sem critérios compartilharia todos os registros, portanto não pode ser salva.",
|
|
197
|
+
invalidJson: "JSON inválido — a regra não corresponderá a nenhum registro até ser corrigida.",
|
|
198
|
+
jsonOnly: "Este critério só pode ser editado como JSON",
|
|
199
|
+
editAsJson: "Editar como JSON",
|
|
200
|
+
useVisualBuilder: "Usar o construtor visual",
|
|
201
|
+
},
|
|
124
202
|
},
|
|
125
203
|
table: {
|
|
126
204
|
rowsPerPage: "Linhas por página",
|
|
@@ -155,6 +233,37 @@ const pt = {
|
|
|
155
233
|
delete: "Excluir",
|
|
156
234
|
},
|
|
157
235
|
grid: {
|
|
236
|
+
bulkSelected: "{{count}} selecionados",
|
|
237
|
+
bulkSelectedAllMatches: "{{count}} selecionados (todas as correspondências)",
|
|
238
|
+
bulkClear: "Limpar seleção",
|
|
239
|
+
bulkAllOnPage: "Os {{count}} desta página estão selecionados.",
|
|
240
|
+
bulkSelectAllMatching: "Selecionar todas as {{count}} correspondências",
|
|
241
|
+
bulkAllMatchingSelected: "Todos os {{count}} registros correspondentes estão selecionados.",
|
|
242
|
+
bulk: {
|
|
243
|
+
confirmDefault: "Isto será aplicado a {{count}} registro(s).",
|
|
244
|
+
overLimit: "A seleção ({{count}}) excede o limite da ação ({{limit}}). Reduza a seleção para prosseguir.",
|
|
245
|
+
affectedRecords: "Registros afetados ({{count}}):",
|
|
246
|
+
skippedIneligible: '{{count}} dos registros selecionados não são elegíveis para esta ação e serão ignorados.',
|
|
247
|
+
rowFallback: "Linha {{index}}",
|
|
248
|
+
andMore: "… e mais {{count}}",
|
|
249
|
+
processed: "{{count}} / {{total}} processados",
|
|
250
|
+
processedFailed: " · {{count}} com falha",
|
|
251
|
+
undonePrefix: "Desfeito — ",
|
|
252
|
+
succeeded: "Concluídos {{count}} / {{total}}",
|
|
253
|
+
resultFailed: " · Falhas {{count}}",
|
|
254
|
+
retry: "Tentar novamente",
|
|
255
|
+
downloadErrorCsv: "Baixar CSV de erros",
|
|
256
|
+
cancel: "Cancelar",
|
|
257
|
+
back: "Voltar",
|
|
258
|
+
next: "Avançar",
|
|
259
|
+
run: "Executar",
|
|
260
|
+
running: "Executando…",
|
|
261
|
+
undo: "Desfazer",
|
|
262
|
+
undoing: "Desfazendo…",
|
|
263
|
+
done: "Concluído",
|
|
264
|
+
selectPlaceholder: "Selecionar…",
|
|
265
|
+
loading: "Carregando…",
|
|
266
|
+
},
|
|
158
267
|
actions: "Ações",
|
|
159
268
|
edit: "Editar",
|
|
160
269
|
delete: "Excluir",
|
|
@@ -180,7 +289,88 @@ const pt = {
|
|
|
180
289
|
densityCycleShortHint: "Clique para alterar",
|
|
181
290
|
},
|
|
182
291
|
import: {
|
|
292
|
+
downloadTemplate: "Baixar modelo",
|
|
293
|
+
downloadTemplateHint: "Obtenha um CSV com as colunas corretas (campos obrigatórios marcados com *).",
|
|
294
|
+
templateFileName: "{{object}}-import-template",
|
|
295
|
+
autoMatched: "Correspondência automática",
|
|
296
|
+
autoMatchedSummary: "{{count}} coluna(s) com correspondência automática — revise e ajuste abaixo.",
|
|
297
|
+
confidence: {
|
|
298
|
+
high: "Confiança alta",
|
|
299
|
+
medium: "Confiança média",
|
|
300
|
+
low: "Confiança baixa",
|
|
301
|
+
},
|
|
302
|
+
asyncQueued: "Na fila — preparando a importação…",
|
|
303
|
+
asyncProcessing: "Importando {{processed}} de {{total}} linhas… {{progress}}%",
|
|
304
|
+
asyncLargeHint: "Este arquivo é grande, portanto será importado em segundo plano.",
|
|
305
|
+
largeSampleNotice: "Pré-visualizando as primeiras {{shown}} de {{total}} linhas.",
|
|
306
|
+
cancelImport: "Cancelar a importação",
|
|
307
|
+
importCancelled: "Importação cancelada",
|
|
308
|
+
resultsTruncated: "Mostrando os primeiros {{count}} resultados de linhas (de {{total}}).",
|
|
309
|
+
createdCount: "{{count}} criados",
|
|
310
|
+
updatedCount: "{{count}} atualizados",
|
|
311
|
+
downloadFailed: "Baixar as linhas com falha",
|
|
312
|
+
options: "Opções de importação",
|
|
313
|
+
writeMode: "Quando uma linha corresponde a um registro existente",
|
|
314
|
+
writeModeOpt: {
|
|
315
|
+
insert: "Sempre criar novo",
|
|
316
|
+
update: "Atualizar o existente (ignorar se não houver correspondência)",
|
|
317
|
+
upsert: "Atualizar se corresponder, senão criar",
|
|
318
|
+
},
|
|
319
|
+
matchFields: "Corresponder por",
|
|
320
|
+
matchFieldsPlaceholder: "Escolha o(s) campo(s) de correspondência…",
|
|
321
|
+
matchFieldsHint: "As linhas são associadas a registros existentes por estes campos.",
|
|
322
|
+
needMatchFields: "Selecione pelo menos um campo de correspondência.",
|
|
323
|
+
matchOnlyField: "(somente correspondência)",
|
|
324
|
+
optCreateOptions: "Manter valores de opção desconhecidos",
|
|
325
|
+
optRunAutomations: "Executar automações e gatilhos",
|
|
326
|
+
optTreatHistorical: "Importar como dados históricos",
|
|
327
|
+
optTreatHistoricalHint: "(importa registros concluídos como estão — ignora as verificações da máquina de estados e mantém os carimbos de data/hora e o autor originais em vez de carimbar agora)",
|
|
328
|
+
optSkipBlankKey: "Ignorar linhas com valor de correspondência em branco",
|
|
329
|
+
optBackground: "Importar em segundo plano",
|
|
330
|
+
optBackgroundHint: "(executa como um trabalho reversível)",
|
|
331
|
+
validate: "Validar os dados",
|
|
332
|
+
validating: "Validando…",
|
|
333
|
+
validateHint: "Verificar cada linha no servidor antes de importar.",
|
|
334
|
+
validatePassed: "Todas as {{ok}} linhas são válidas.",
|
|
335
|
+
validateFailed: "{{ok}} válidas, {{errors}} com erros.",
|
|
336
|
+
errorRowPrefix: "Linha {{row}}: ",
|
|
337
|
+
referenceNotFound: "Nenhum registro corresponde a \"{{value}}\"",
|
|
338
|
+
referenceAmbiguous: "\"{{value}}\" corresponde a mais de um registro — use um valor único ou o id do registro",
|
|
339
|
+
invalidBoolean: "\"{{value}}\" não é um valor verdadeiro/falso válido",
|
|
340
|
+
invalidNumber: "\"{{value}}\" não é um número válido",
|
|
341
|
+
invalidDate: "\"{{value}}\" não é uma data válida",
|
|
342
|
+
invalidOption: "\"{{value}}\" não está entre as opções permitidas",
|
|
343
|
+
requiredValue: "Este campo é obrigatório",
|
|
344
|
+
matchAmbiguous: "Corresponde a mais de um registro existente — use um valor único ou o id do registro",
|
|
345
|
+
history: "Histórico",
|
|
346
|
+
historyBack: "Voltar para a importação",
|
|
347
|
+
historyDescription: "Importações recentes deste objeto.",
|
|
348
|
+
historyHint: "Trabalhos de importação em segundo plano, dos mais recentes aos mais antigos.",
|
|
349
|
+
historyRefresh: "Atualizar",
|
|
350
|
+
historyLoading: "Carregando…",
|
|
351
|
+
historyEmpty: "Ainda não há importações.",
|
|
352
|
+
historyUnsupported: "O histórico de importações não está disponível para esta fonte de dados.",
|
|
353
|
+
historyColStatus: "Status",
|
|
354
|
+
historyColRows: "Linhas",
|
|
355
|
+
historyColResult: "Resultado",
|
|
356
|
+
historyColTime: "Quando",
|
|
357
|
+
errorCount: "{{count}} erros",
|
|
358
|
+
undoImport: "Desfazer a importação",
|
|
359
|
+
undoing: "Desfazendo…",
|
|
360
|
+
undoConfirm: "Desfazer esta importação? Os registros criados serão excluídos e os registros atualizados voltarão aos valores anteriores.",
|
|
361
|
+
reverted: "Desfeita",
|
|
362
|
+
jobStatus: {
|
|
363
|
+
pending: "Pendente",
|
|
364
|
+
running: "Em execução",
|
|
365
|
+
succeeded: "Concluída",
|
|
366
|
+
failed: "Falhou",
|
|
367
|
+
cancelled: "Cancelada",
|
|
368
|
+
},
|
|
369
|
+
legacyReferenceBlocked: "Importação bloqueada: {{fields}} são campos de relação que precisam da rota de importação do servidor para converter nomes em IDs de registro, e esta conexão não oferece suporte a isso. Importá-los como texto simples corromperia os dados. Atualize o backend/cliente, ou desfaça o mapeamento dessas colunas e importe-as separadamente.",
|
|
370
|
+
missingRequiredHint: "Não é possível continuar — campos obrigatórios não mapeados: {{fields}}. Adicione uma coluna correspondente ao seu arquivo, ou volte e envie um arquivo que a inclua.",
|
|
371
|
+
legacyFallbackNotice: "Importado por um modo de compatibilidade: esta conexão não oferece suporte à rota de importação do servidor, então os valores foram salvos como texto sem conversão de tipos no servidor. Atualize o backend/cliente para ter a importação completa (conversão de tipos e busca de relações).",
|
|
183
372
|
title: "Importar {{object}}",
|
|
373
|
+
notAllowed: "Este objeto não está aberto para importação.",
|
|
184
374
|
stepUpload: "Enviar",
|
|
185
375
|
stepMapping: "Mapeamento",
|
|
186
376
|
stepPreview: "Pré-visualização",
|
|
@@ -256,6 +446,42 @@ const pt = {
|
|
|
256
446
|
moreEvents: "+{{count}} mais",
|
|
257
447
|
},
|
|
258
448
|
list: {
|
|
449
|
+
firstRunTitle: "Ainda não há nada aqui",
|
|
450
|
+
firstRunMessage: "Crie seu primeiro registro para começar.",
|
|
451
|
+
noMatches: "Nenhum registro correspondente",
|
|
452
|
+
noMatchesMessage: "Nenhum registro corresponde aos seus filtros ou à sua busca atuais. Tente ajustá-los ou limpá-los.",
|
|
453
|
+
loadErrorTitle: "Não foi possível carregar os registros",
|
|
454
|
+
loadErrorMessage: "Algo deu errado ao carregar estes dados. Verifique sua conexão e tente novamente.",
|
|
455
|
+
loadErrorForbiddenTitle: "Você não tem acesso",
|
|
456
|
+
loadErrorForbiddenMessage: "Você não tem permissão para ver estes registros. Contate seu administrador se acha que deveria ter acesso.",
|
|
457
|
+
loadErrorUnauthorizedTitle: "É necessário entrar",
|
|
458
|
+
loadErrorUnauthorizedMessage: "Sua sessão expirou ou você saiu. Entre novamente para ver estes registros.",
|
|
459
|
+
loadErrorRejectedTitle: "A consulta desta visualização foi rejeitada",
|
|
460
|
+
loadErrorRejectedMessage: "O servidor não conseguiu processar o filtro ou as opções de consulta desta visualização. Limpar os filtros costuma resolver; se a visualização estiver salva assim, um administrador precisa corrigi-la.",
|
|
461
|
+
retry: "Tentar novamente",
|
|
462
|
+
managedBy: {
|
|
463
|
+
system: {
|
|
464
|
+
title: "Ainda não há nada aqui",
|
|
465
|
+
message: "As entradas aparecem automaticamente quando a ação de origem é executada (por exemplo, Enviar para aprovação, Compartilhar, Convidar). Acione uma delas em um registro de origem para criar uma linha.",
|
|
466
|
+
},
|
|
467
|
+
appendOnly: {
|
|
468
|
+
title: "Nenhum evento registrado",
|
|
469
|
+
message: "Este é um log de auditoria imutável. As linhas são gravadas pela plataforma quando ocorrem eventos — você pode exportar o histórico, mas não criar entradas aqui.",
|
|
470
|
+
},
|
|
471
|
+
betterAuth: {
|
|
472
|
+
title: "Nenhum registro de identidade",
|
|
473
|
+
message: "Estes registros são criados pelo provedor de autenticação — por meio de login, provisionamento e fluxos de segurança — e não adicionados manualmente aqui.",
|
|
474
|
+
},
|
|
475
|
+
betterAuthUser: {
|
|
476
|
+
title: "Ainda não há usuários",
|
|
477
|
+
message: "As contas de usuário são provisionadas pelo provedor de autenticação, não criadas aqui. Convide colegas para sua organização e eles aparecerão automaticamente no primeiro login (provisionamento SSO just-in-time). Os usuários finais do app chegam quando se cadastram por meio dele.",
|
|
478
|
+
},
|
|
479
|
+
betterAuthTeam: {
|
|
480
|
+
title: "Ainda não há equipes",
|
|
481
|
+
message: "As equipes agrupam membros dentro de uma organização. Crie uma com \"Criar equipe\", ou elas surgem pelos fluxos de provisionamento de organização e SSO do seu provedor de autenticação.",
|
|
482
|
+
},
|
|
483
|
+
},
|
|
484
|
+
refresh: "Atualizar",
|
|
259
485
|
loading: 'Loading records...',
|
|
260
486
|
recordCount: "{{count}} registros",
|
|
261
487
|
recordCountOne: "{{count}} registro",
|
|
@@ -267,6 +493,8 @@ const pt = {
|
|
|
267
493
|
filterRecords: "Filtrar registros",
|
|
268
494
|
sort: "Ordenar",
|
|
269
495
|
sortRecords: "Ordenar registros",
|
|
496
|
+
sortByIdSuffix: "(por ID)",
|
|
497
|
+
sortRelationalHint: "As colunas que apontam para outro registro não são listadas: elas só podem ser ordenadas pelo ID armazenado, não pelo nome exibido na célula. Para ordenar por esse nome, adicione um campo de fórmula que o contenha.",
|
|
270
498
|
group: "Agrupar",
|
|
271
499
|
groupBy: "Agrupar por",
|
|
272
500
|
export: "Exportar",
|
|
@@ -296,6 +524,11 @@ const pt = {
|
|
|
296
524
|
recordEditingTitle: "Edição de registros",
|
|
297
525
|
},
|
|
298
526
|
managedByBadge: {
|
|
527
|
+
systemWritable: {
|
|
528
|
+
short: "Esquema da plataforma",
|
|
529
|
+
title: "Definido pela plataforma, gravável pelo administrador",
|
|
530
|
+
body: "O esquema deste objeto é definido pela plataforma, mas as linhas são suas para criar e editar aqui. Quem pode gravar é determinado pela administração delegada e pela segurança em nível de registro, não por este selo.",
|
|
531
|
+
},
|
|
299
532
|
config: {
|
|
300
533
|
short: "Config. de admin",
|
|
301
534
|
title: "Configuração do administrador",
|
|
@@ -318,6 +551,7 @@ const pt = {
|
|
|
318
551
|
},
|
|
319
552
|
},
|
|
320
553
|
kanban: {
|
|
554
|
+
uncategorized: "Sem categoria",
|
|
321
555
|
addCard: "Adicionar cartão",
|
|
322
556
|
addColumn: "Adicionar coluna",
|
|
323
557
|
moveCard: "Mover cartão",
|
|
@@ -339,12 +573,92 @@ const pt = {
|
|
|
339
573
|
},
|
|
340
574
|
},
|
|
341
575
|
gantt: {
|
|
576
|
+
viewMode: {
|
|
577
|
+
day: "Dia",
|
|
578
|
+
week: "Semana",
|
|
579
|
+
month: "Mês",
|
|
580
|
+
quarter: "Trimestre",
|
|
581
|
+
year: "Ano",
|
|
582
|
+
},
|
|
583
|
+
row: {
|
|
584
|
+
expand: "Expandir",
|
|
585
|
+
collapse: "Recolher",
|
|
586
|
+
open: "Abrir detalhes",
|
|
587
|
+
},
|
|
588
|
+
aria: {
|
|
589
|
+
taskList: "Lista de tarefas",
|
|
590
|
+
},
|
|
591
|
+
tooltip: {
|
|
592
|
+
days: "d",
|
|
593
|
+
},
|
|
594
|
+
menu: {
|
|
595
|
+
view: "Ver detalhes",
|
|
596
|
+
edit: "Editar em linha",
|
|
597
|
+
delete: "Excluir",
|
|
598
|
+
addPredecessor: "Adicionar predecessora…",
|
|
599
|
+
addSuccessor: "Adicionar sucessora…",
|
|
600
|
+
removeDependency: "Remover a dependência",
|
|
601
|
+
noCandidates: "Nenhuma tarefa disponível",
|
|
602
|
+
searchTasks: "Pesquisar tarefas…",
|
|
603
|
+
},
|
|
604
|
+
delete: {
|
|
605
|
+
title: "Excluir esta tarefa?",
|
|
606
|
+
body: "\"{{title}}\" será removida permanentemente. Esta ação não pode ser desfeita.",
|
|
607
|
+
cancel: "Cancelar",
|
|
608
|
+
confirm: "Excluir",
|
|
609
|
+
deleting: "Excluindo…",
|
|
610
|
+
},
|
|
611
|
+
drawer: {
|
|
612
|
+
fallbackTitle: "Detalhes da tarefa",
|
|
613
|
+
},
|
|
614
|
+
linkType: {
|
|
615
|
+
fs: "Término → Início",
|
|
616
|
+
ss: "Início → Início",
|
|
617
|
+
ff: "Término → Término",
|
|
618
|
+
sf: "Início → Término",
|
|
619
|
+
},
|
|
620
|
+
conflict: {
|
|
621
|
+
title: "Conflito de agendamento",
|
|
622
|
+
body: "Esta movimentação conflita com as restrições de dependência. Reagendar automaticamente {{count}} tarefa(s) afetada(s)?",
|
|
623
|
+
confirm: "Reagendar automaticamente",
|
|
624
|
+
cancel: "Manter como está",
|
|
625
|
+
},
|
|
626
|
+
autoScheduleDlg: {
|
|
627
|
+
title: "Agendamento automático",
|
|
628
|
+
body: "Adiar {count} tarefa(s) para atender aos vínculos de dependência?",
|
|
629
|
+
skipped: "{count} tarefa(s) bloqueada(s) também violam os vínculos e foram ignoradas.",
|
|
630
|
+
confirm: "Aplicar",
|
|
631
|
+
cancel: "Cancelar",
|
|
632
|
+
none: "Todas as dependências foram atendidas — nada a reagendar.",
|
|
633
|
+
},
|
|
634
|
+
resource: {
|
|
635
|
+
header: "Recurso",
|
|
636
|
+
peak: "Pico",
|
|
637
|
+
over: "sobrecarregado",
|
|
638
|
+
empty: "Nenhuma tarefa para alocar.",
|
|
639
|
+
},
|
|
640
|
+
readOnly: "Somente leitura",
|
|
641
|
+
readOnlyHint: "A edição está desativada nesta visão.",
|
|
642
|
+
lockedHint: "Sem permissão de edição",
|
|
643
|
+
writeFailed: "Falha ao salvar — a alteração foi revertida",
|
|
342
644
|
column: {
|
|
343
645
|
taskName: "Nome da tarefa",
|
|
344
646
|
start: "Início",
|
|
345
647
|
end: "Fim",
|
|
346
648
|
},
|
|
347
649
|
toolbar: {
|
|
650
|
+
thisWeek: "Esta semana",
|
|
651
|
+
thisMonth: "Este mês",
|
|
652
|
+
viewMode: "Granularidade da linha do tempo",
|
|
653
|
+
enterFullscreen: "Entrar em tela cheia",
|
|
654
|
+
exitFullscreen: "Sair da tela cheia",
|
|
655
|
+
criticalPath: "Destacar o caminho crítico",
|
|
656
|
+
autoSchedule: "Agendar dependências automaticamente",
|
|
657
|
+
exportPng: "Exportar como PNG",
|
|
658
|
+
exportPdf: "Exportar PDF",
|
|
659
|
+
saveLayout: "Salvar o layout",
|
|
660
|
+
undo: "Desfazer",
|
|
661
|
+
redo: "Refazer",
|
|
348
662
|
prevPeriod: "Período anterior",
|
|
349
663
|
nextPeriod: "Próximo período",
|
|
350
664
|
zoomIn: "Ampliar",
|
|
@@ -390,6 +704,11 @@ const pt = {
|
|
|
390
704
|
redo: 'Redo',
|
|
391
705
|
},
|
|
392
706
|
detail: {
|
|
707
|
+
editInlineHint: "Clique duas vezes para editar",
|
|
708
|
+
systemActor: "Sistema",
|
|
709
|
+
unknownUser: "Desconhecido",
|
|
710
|
+
created: "Criado",
|
|
711
|
+
updated: "Atualizado",
|
|
393
712
|
back: "Voltar",
|
|
394
713
|
edit: "Editar",
|
|
395
714
|
editInline: "Editar",
|
|
@@ -439,6 +758,18 @@ const pt = {
|
|
|
439
758
|
attachmentCount: "{{count}} anexo",
|
|
440
759
|
attachmentCountPlural: "{{count}} anexos",
|
|
441
760
|
removeAttachment: "Remover anexo",
|
|
761
|
+
// Record Attachments panel (enable.files, objectstack#4358)
|
|
762
|
+
attachments: "Anexos",
|
|
763
|
+
uploadAttachment: "Enviar",
|
|
764
|
+
loadingAttachments: "Carregando anexos…",
|
|
765
|
+
noAttachments: "Ainda não há anexos. Envie um arquivo para começar.",
|
|
766
|
+
downloadAttachment: "Baixar",
|
|
767
|
+
deleteAttachment: "Excluir anexo",
|
|
768
|
+
attachmentDeleteDenied: "Somente quem enviou ou alguém que pode editar este registro pode excluir este anexo.",
|
|
769
|
+
attachmentParentAccessDenied: "Você não tem acesso para anexar arquivos a este registro.",
|
|
770
|
+
attachmentDownloadDenied: "Você não tem acesso para baixar este anexo.",
|
|
771
|
+
attachmentAuthRequired: "Faça login para baixar este anexo.",
|
|
772
|
+
attachmentPermissionDenied: "Você não tem permissão para fazer isso.",
|
|
442
773
|
unifiedDiff: "Visualização unificada",
|
|
443
774
|
sideBySideDiff: "Visualização lado a lado",
|
|
444
775
|
noChanges: "Sem alterações",
|
|
@@ -486,9 +817,15 @@ const pt = {
|
|
|
486
817
|
saving: "Salvando…",
|
|
487
818
|
lockedByApproval: "Bloqueado para aprovação",
|
|
488
819
|
lockedTooltip: "Este registro tem uma solicitação de aprovação pendente; a edição está bloqueada",
|
|
820
|
+
writeStrippedTitle: "Alguns campos não foram salvos",
|
|
821
|
+
writeStrippedReadonly: "Somente leitura, portanto não foi salvo: {{fields}}",
|
|
822
|
+
writeStrippedByState: "Não editável no estado atual deste registro, portanto não foi salvo: {{fields}}",
|
|
823
|
+
approvalPendingEditable: "Em aprovação · editável",
|
|
824
|
+
approvalPendingTooltip: "Este registro tem uma solicitação de aprovação pendente; esta etapa ainda permite a edição",
|
|
489
825
|
cancelApproval: "Cancelar aprovação",
|
|
490
826
|
cancelApprovalInFlight: "Cancelando…",
|
|
491
827
|
cancelApprovalTooltip: "Cancelar a solicitação de aprovação pendente para desbloquear o registro",
|
|
828
|
+
cancelApprovalTooltipUnlocked: "Cancelar a solicitação de aprovação pendente",
|
|
492
829
|
cancelApprovalFailed: "Falha ao cancelar aprovação",
|
|
493
830
|
cancelApprovalUnavailable: "O cancelamento de aprovações não é suportado por esta fonte de dados",
|
|
494
831
|
linkCopied: "Link copiado para a área de transferência",
|
|
@@ -602,6 +939,35 @@ const pt = {
|
|
|
602
939
|
resetZoom: "Redefinir zoom",
|
|
603
940
|
},
|
|
604
941
|
dashboard: {
|
|
942
|
+
noRows: "Sem linhas",
|
|
943
|
+
pickMeasures: "Escolha medidas (valores) para este widget de dataset.",
|
|
944
|
+
datasetUnsupported: "Esta fonte de dados não oferece suporte a consultas de dataset.",
|
|
945
|
+
details: "Detalhes",
|
|
946
|
+
exportCsv: "Exportar CSV",
|
|
947
|
+
openInList: "Abrir na lista",
|
|
948
|
+
filters: {
|
|
949
|
+
label: "Filtros do painel",
|
|
950
|
+
dateRange: "Período",
|
|
951
|
+
allTime: "Todo o período",
|
|
952
|
+
custom: "Personalizado…",
|
|
953
|
+
all: "Tudo",
|
|
954
|
+
reset: "Redefinir",
|
|
955
|
+
range: {
|
|
956
|
+
today: "Hoje",
|
|
957
|
+
yesterday: "Ontem",
|
|
958
|
+
this_week: "Esta semana",
|
|
959
|
+
last_week: "Semana passada",
|
|
960
|
+
this_month: "Este mês",
|
|
961
|
+
last_month: "Mês passado",
|
|
962
|
+
this_quarter: "Este trimestre",
|
|
963
|
+
last_quarter: "Trimestre passado",
|
|
964
|
+
this_year: "Este ano",
|
|
965
|
+
last_year: "Ano passado",
|
|
966
|
+
last_7_days: "Últimos 7 dias",
|
|
967
|
+
last_30_days: "Últimos 30 dias",
|
|
968
|
+
last_90_days: "Últimos 90 dias",
|
|
969
|
+
},
|
|
970
|
+
},
|
|
605
971
|
addWidget: "Adicionar widget",
|
|
606
972
|
removeWidget: "Remover widget",
|
|
607
973
|
editLayout: "Editar layout",
|
|
@@ -729,6 +1095,7 @@ const pt = {
|
|
|
729
1095
|
navTypeGroup: "Grupo",
|
|
730
1096
|
navTypeSeparator: "Separador",
|
|
731
1097
|
navTypeAction: "Ação",
|
|
1098
|
+
navTypeComponent: "Componente",
|
|
732
1099
|
navEditIcon: "Editar ícone",
|
|
733
1100
|
navToggleVisible: "Alternar visibilidade",
|
|
734
1101
|
navHidden: "Oculto",
|
|
@@ -830,8 +1197,199 @@ const pt = {
|
|
|
830
1197
|
},
|
|
831
1198
|
},
|
|
832
1199
|
console: {
|
|
1200
|
+
settingsHub: {
|
|
1201
|
+
title: "Configurações",
|
|
1202
|
+
subtitle: "Configure seu workspace, integrações e sinalizadores de recursos.",
|
|
1203
|
+
loadError: "Falha ao carregar as configurações",
|
|
1204
|
+
empty: "Nenhuma configuração registrada. Os plugins podem registrar manifestos de configuração pelo SettingsService.",
|
|
1205
|
+
settingsCount: "{{n}} configurações",
|
|
1206
|
+
beta: "Beta",
|
|
1207
|
+
categories: {
|
|
1208
|
+
Workspace: "Workspace",
|
|
1209
|
+
Communication: "Comunicação",
|
|
1210
|
+
Security: "Segurança",
|
|
1211
|
+
Infrastructure: "Infraestrutura",
|
|
1212
|
+
Beta: "Beta",
|
|
1213
|
+
Other: "Outros",
|
|
1214
|
+
},
|
|
1215
|
+
},
|
|
1216
|
+
objectData: {
|
|
1217
|
+
badge: "Dados",
|
|
1218
|
+
description: "Recorte de dados definido pela URL — não vinculado a nenhuma visão salva.",
|
|
1219
|
+
filteredBy: "Filtrado por",
|
|
1220
|
+
removeFilter: "Remover o filtro {{field}}",
|
|
1221
|
+
saveAsView: "Salvar como visão",
|
|
1222
|
+
noAccessTitle: "Acesso negado",
|
|
1223
|
+
noAccess: "Você não tem permissão para ver estes dados.",
|
|
1224
|
+
},
|
|
1225
|
+
identityImport: {
|
|
1226
|
+
policyTitle: "Configuração de acesso para usuários importados",
|
|
1227
|
+
policy: {
|
|
1228
|
+
auto: "Automático (recomendado)",
|
|
1229
|
+
invite: "Enviar convites",
|
|
1230
|
+
temporary: "Senhas temporárias",
|
|
1231
|
+
none: "Sem senha (apenas identidade)",
|
|
1232
|
+
},
|
|
1233
|
+
policyHint: {
|
|
1234
|
+
auto: "Usuários acessíveis recebem um convite (e-mail ou SMS); quem não puder ser contatado recebe uma senha de uso único, exibida UMA ÚNICA VEZ na tela de resultados. Funciona com ou sem serviço de e-mail/SMS.",
|
|
1235
|
+
invite: "Cada usuário criado recebe um e-mail para definir a senha (ou um SMS de convite nas linhas apenas com telefone). Requer um serviço de e-mail/SMS configurado — linhas inacessíveis falham.",
|
|
1236
|
+
temporary: "Para implantações sem e-mail/SMS: cada usuário criado recebe uma senha de uso único, exibida UMA ÚNICA VEZ na tela de resultados. O primeiro acesso exige a troca.",
|
|
1237
|
+
none: "Os usuários entram primeiro com um OTP por telefone, um link mágico ou um link de redefinição, e depois definem a própria senha.",
|
|
1238
|
+
},
|
|
1239
|
+
passwordsNote: "Senhas temporárias — exibidas uma única vez, nunca armazenadas. Salve-as agora; cada usuário deve trocar a sua no primeiro acesso.",
|
|
1240
|
+
passwordsMore: "Demais entradas omitidas — use o download.",
|
|
1241
|
+
passwordsDownload: "Baixar CSV",
|
|
1242
|
+
},
|
|
1243
|
+
ai: {
|
|
1244
|
+
usage: {
|
|
1245
|
+
title: "Uso de IA",
|
|
1246
|
+
meterBuild: "Criar",
|
|
1247
|
+
meterAsk: "Perguntar",
|
|
1248
|
+
statusOk: "Ainda há bastante",
|
|
1249
|
+
statusLow: "Está acabando",
|
|
1250
|
+
statusFull: "Limite atingido",
|
|
1251
|
+
resetsDaily: "Redefine hoje à noite",
|
|
1252
|
+
resetsMonthly: "Redefine no próximo ciclo",
|
|
1253
|
+
ctaUpgrade: "Faça upgrade para continuar",
|
|
1254
|
+
ctaTopUp: "Adicione créditos para continuar",
|
|
1255
|
+
ariaLabel: "Uso de IA: {{status}}",
|
|
1256
|
+
},
|
|
1257
|
+
workspaceTitle: "Workspace de IA",
|
|
1258
|
+
workspaceSubtitle: "Pergunte, inspecione e retome conversas",
|
|
1259
|
+
openChats: "Abrir conversas",
|
|
1260
|
+
chats: "Conversas",
|
|
1261
|
+
chatsDescription: "Navegue e gerencie as conversas com a IA.",
|
|
1262
|
+
share: "Compartilhar",
|
|
1263
|
+
shareTitle: "Compartilhar esta conversa",
|
|
1264
|
+
shareDisabledTitle: "Comece a conversar para habilitar o compartilhamento",
|
|
1265
|
+
newChat: "Nova",
|
|
1266
|
+
searchChats: "Pesquisar conversas...",
|
|
1267
|
+
noChatsYet: "Ainda não há conversas",
|
|
1268
|
+
noChatsDescription: "Inicie uma nova conversa para vê-la aqui.",
|
|
1269
|
+
noMatchingChats: "Nenhuma conversa correspondente.",
|
|
1270
|
+
newConversation: "Nova conversa",
|
|
1271
|
+
renameConversation: "Renomear conversa",
|
|
1272
|
+
deleteConversation: "Excluir conversa",
|
|
1273
|
+
saveRename: "Salvar novo nome",
|
|
1274
|
+
cancelRename: "Cancelar renomeação",
|
|
1275
|
+
loadingHistory: "Carregando o histórico da conversa...",
|
|
1276
|
+
conversationReady: "Conversa pronta",
|
|
1277
|
+
preparingConversation: "Preparando uma nova conversa",
|
|
1278
|
+
offlineDemoMode: "Modo de demonstração off-line — lista de agentes indisponível",
|
|
1279
|
+
sendFailedRateLimited: "Você está enviando mensagens rápido demais. Sua mensagem foi mantida abaixo — aguarde um momento e tente novamente.",
|
|
1280
|
+
sendFailedGeneric: "Não foi possível enviar sua mensagem. Ela foi mantida abaixo — tente novamente.",
|
|
1281
|
+
askAgent: "Pergunte a {{agent}}...",
|
|
1282
|
+
assistant: "Assistente",
|
|
1283
|
+
liveCanvas: "Pré-visualização ao vivo — {{app}} (rascunho)",
|
|
1284
|
+
liveCanvasUnlisted: "Aplicativo ao vivo — {{app}} (não listado até ser publicado)",
|
|
1285
|
+
loadingAgents: "Carregando agentes...",
|
|
1286
|
+
askAnything: "Pergunte qualquer coisa...",
|
|
1287
|
+
emptyTitle: "Iniciar uma conversa",
|
|
1288
|
+
emptyDescription: "Pergunte qualquer coisa — o assistente tem acesso ao contexto do seu aplicativo atual.",
|
|
1289
|
+
switchAssistant: "Trocar de assistente",
|
|
1290
|
+
chooseAgent: "Escolher assistente…",
|
|
1291
|
+
empty: {
|
|
1292
|
+
build: {
|
|
1293
|
+
title: "Criar com IA",
|
|
1294
|
+
description: "Descreva um aplicativo ou fluxo de trabalho em linguagem simples — eu rascunho os objetos, telas e automações, e então você revisa e publica.",
|
|
1295
|
+
},
|
|
1296
|
+
ask: {
|
|
1297
|
+
title: "Pergunte aos seus dados",
|
|
1298
|
+
description: "Faça perguntas sobre seus registros — contagens, listas e resumos dos dados a que você tem acesso.",
|
|
1299
|
+
},
|
|
1300
|
+
editApp: {
|
|
1301
|
+
title: "Editando “{{app}}”",
|
|
1302
|
+
titleGeneric: "Editar este aplicativo",
|
|
1303
|
+
description: "O que você quer mudar? Eu altero este aplicativo no lugar — adicionar um campo, objeto, visão ou automação, ou ajustar o que já existe.",
|
|
1304
|
+
},
|
|
1305
|
+
},
|
|
1306
|
+
clearConversation: "Limpar",
|
|
1307
|
+
sendHint: "para enviar",
|
|
1308
|
+
agentActivity: "Atividade do agente",
|
|
1309
|
+
toolCompleted: "Concluído",
|
|
1310
|
+
toolRunning: "Em execução",
|
|
1311
|
+
toolAwaitingApproval: "Aguardando aprovação",
|
|
1312
|
+
toolFailed: "Falhou",
|
|
1313
|
+
toolDetailsHidden: "As entradas das ferramentas e os resultados brutos estão ocultos nesta visão.",
|
|
1314
|
+
copy: "Copiar",
|
|
1315
|
+
copied: "Copiado",
|
|
1316
|
+
regenerate: "Gerar novamente",
|
|
1317
|
+
model: "Modelo",
|
|
1318
|
+
submit: "Enviar",
|
|
1319
|
+
uploadFiles: "Enviar arquivos",
|
|
1320
|
+
stopResponse: "Parar a resposta",
|
|
1321
|
+
trace: "rastro",
|
|
1322
|
+
viewTrace: "Ver o rastro",
|
|
1323
|
+
nextSteps: "Próximos passos",
|
|
1324
|
+
publishDrafts: "Publicar",
|
|
1325
|
+
publishOk: "Publicado — os objetos já estão ativos.",
|
|
1326
|
+
seedWarn: "Publicado, mas alguns dados de exemplo não puderam ser carregados.",
|
|
1327
|
+
openBuiltApp: "Abrir o aplicativo",
|
|
1328
|
+
designBuiltApp: "Projetar no Studio",
|
|
1329
|
+
previewDraft: "Pré-visualizar",
|
|
1330
|
+
previewApp: "Pré-visualizar o aplicativo",
|
|
1331
|
+
resizeSplit: "Redimensionar a conversa e a pré-visualização",
|
|
1332
|
+
hideChats: "Ocultar conversas",
|
|
1333
|
+
showChats: "Mostrar conversas",
|
|
1334
|
+
planTitle: "Plano proposto",
|
|
1335
|
+
planQuestions: "Confirmar antes de criar",
|
|
1336
|
+
planAssumptions: "Suposições",
|
|
1337
|
+
planApproveHint: "Responda para aprovar ou ajustar este plano.",
|
|
1338
|
+
planApprove: "Criar",
|
|
1339
|
+
planAdjust: "Ajustar",
|
|
1340
|
+
justNow: "agora mesmo",
|
|
1341
|
+
minutesAgo: "há {{count}} min",
|
|
1342
|
+
hoursAgo: "há {{count}} h",
|
|
1343
|
+
daysAgo: "há {{count}} d",
|
|
1344
|
+
agentLabels: {
|
|
1345
|
+
ask: "Perguntar",
|
|
1346
|
+
build: "Criar",
|
|
1347
|
+
dataChat: "Assistente",
|
|
1348
|
+
metadataAssistant: "Assistente de metadados",
|
|
1349
|
+
},
|
|
1350
|
+
suggestions: {
|
|
1351
|
+
dataChat: {
|
|
1352
|
+
userCount: "Quantos usuários existem no sistema? Liste os e-mails deles.",
|
|
1353
|
+
recentRecords: "Liste os 5 registros criados mais recentemente.",
|
|
1354
|
+
recordCounts: "Conte os registros de cada objeto.",
|
|
1355
|
+
},
|
|
1356
|
+
metadataAssistant: {
|
|
1357
|
+
buildCrm: "Crie um CRM de vendas — clientes, contatos e um funil de negócios que eu possa totalizar por etapa.",
|
|
1358
|
+
buildApp: "Crie um controle de projetos — projetos, tarefas com responsáveis e prazos, e um quadro por status.",
|
|
1359
|
+
buildFlow: "Projete uma central de suporte — chamados com prioridade, um fluxo de status e vínculos com clientes.",
|
|
1360
|
+
buildInventory: "Crie um aplicativo de estoque — produtos, níveis de estoque, fornecedores e visibilidade de estoque baixo.",
|
|
1361
|
+
buildRecruiting: "Crie um controle de candidaturas — candidatos, vagas abertas, etapas de entrevista e anotações.",
|
|
1362
|
+
},
|
|
1363
|
+
generic: {
|
|
1364
|
+
help: "Com o que você pode me ajudar?",
|
|
1365
|
+
availableObjects: "Liste os objetos de dados disponíveis.",
|
|
1366
|
+
recentActivity: "Resuma minha atividade recente.",
|
|
1367
|
+
},
|
|
1368
|
+
editApp: {
|
|
1369
|
+
addField: "Adicione um campo a um dos objetos.",
|
|
1370
|
+
addObject: "Adicione um novo objeto e relacione-o a um existente.",
|
|
1371
|
+
addDashboard: "Adicione um painel para as métricas principais.",
|
|
1372
|
+
addAutomation: "Adicione uma automação — uma aprovação, um fluxo de status ou uma notificação.",
|
|
1373
|
+
},
|
|
1374
|
+
},
|
|
1375
|
+
changesTitle: "Confirmar alterações",
|
|
1376
|
+
changesConfirmed: "Confirmado",
|
|
1377
|
+
changesConfirm: "Confirmar",
|
|
1378
|
+
changesConfirmHint: "Responda para confirmar ou ajustar esta alteração.",
|
|
1379
|
+
changeVerb: {
|
|
1380
|
+
createObject: "Criar objeto",
|
|
1381
|
+
addField: "Adicionar campo",
|
|
1382
|
+
modifyField: "Modificar campo",
|
|
1383
|
+
deleteField: "Excluir campo",
|
|
1384
|
+
createMetadata: "Criar",
|
|
1385
|
+
updateMetadata: "Modificar",
|
|
1386
|
+
createSeed: "Gerar dados de exemplo",
|
|
1387
|
+
createPackage: "Criar pacote de aplicativo",
|
|
1388
|
+
},
|
|
1389
|
+
},
|
|
833
1390
|
title: "Console ObjectStack",
|
|
834
1391
|
initializing: "Inicializando aplicação...",
|
|
1392
|
+
loadingHint: "Configurar um novo ambiente pode levar alguns instantes.",
|
|
835
1393
|
breadcrumb: {
|
|
836
1394
|
dashboards: "Painéis",
|
|
837
1395
|
pages: "Páginas",
|
|
@@ -873,6 +1431,7 @@ const pt = {
|
|
|
873
1431
|
toggleDarkMode: "Alternar modo escuro",
|
|
874
1432
|
},
|
|
875
1433
|
commandPalette: {
|
|
1434
|
+
title: "Paleta de comandos",
|
|
876
1435
|
placeholder: "Digite um comando ou pesquise...",
|
|
877
1436
|
noResults: "Nenhum resultado encontrado.",
|
|
878
1437
|
objects: "Objetos",
|
|
@@ -906,6 +1465,14 @@ const pt = {
|
|
|
906
1465
|
system: "Sistema",
|
|
907
1466
|
},
|
|
908
1467
|
objectView: {
|
|
1468
|
+
viewTypeTree: "Árvore",
|
|
1469
|
+
viewTypeTreeDesc: "Aninha registros autorreferenciados em uma hierarquia por um campo pai.",
|
|
1470
|
+
parentField: "Campo pai",
|
|
1471
|
+
parentFieldHelp: "O campo que aponta para o registro pai (mesmo objeto) e define a hierarquia. Apenas campos autorreferenciados são válidos.",
|
|
1472
|
+
viewName: "Nome",
|
|
1473
|
+
viewNameHelp: "Chave técnica (snake_case). Preenchida automaticamente a partir do título — edite se quiser.",
|
|
1474
|
+
viewNameRequired: "Informe uma chave (letras minúsculas, números, sublinhado). Não é preenchida automaticamente para títulos não latinos.",
|
|
1475
|
+
viewNameInvalid: "Use letras minúsculas, números e sublinhados; comece com uma letra ou sublinhado.",
|
|
909
1476
|
systemViewReadonly: 'System view defined in code - duplicate to customize.',
|
|
910
1477
|
expandToPage: 'Open as full page',
|
|
911
1478
|
objectNotFound: "Objeto não encontrado",
|
|
@@ -1119,7 +1686,28 @@ const pt = {
|
|
|
1119
1686
|
},
|
|
1120
1687
|
},
|
|
1121
1688
|
auth: {
|
|
1689
|
+
setPassword: {
|
|
1690
|
+
title: "Definir uma senha de recuperação",
|
|
1691
|
+
description: "Você entrou por logon único. Defina uma senha local para continuar conseguindo acessar este ambiente diretamente caso o SSO fique indisponível.",
|
|
1692
|
+
email: "E-mail",
|
|
1693
|
+
newPassword: "Nova senha",
|
|
1694
|
+
confirmPassword: "Confirmar a senha",
|
|
1695
|
+
submit: "Definir a senha",
|
|
1696
|
+
submitting: "Salvando…",
|
|
1697
|
+
success: "Senha local definida",
|
|
1698
|
+
failed: "Não foi possível definir a senha",
|
|
1699
|
+
passwordsMismatch: "As senhas não coincidem",
|
|
1700
|
+
noSession: "Sua sessão expirou.",
|
|
1701
|
+
backToSignIn: "Entrar novamente",
|
|
1702
|
+
},
|
|
1122
1703
|
login: {
|
|
1704
|
+
signingIn: "Entrando…",
|
|
1705
|
+
ssoHandoff: "Continuar para {{target}}",
|
|
1706
|
+
devAdminHint: {
|
|
1707
|
+
title: "Instância de desenvolvimento",
|
|
1708
|
+
body: "Entre com o administrador de desenvolvimento pré-configurado:",
|
|
1709
|
+
dismiss: "Dispensar",
|
|
1710
|
+
},
|
|
1123
1711
|
title: "Entre na sua conta",
|
|
1124
1712
|
description: "Digite seu e-mail e senha para continuar",
|
|
1125
1713
|
emailLabel: "E-mail",
|
|
@@ -1132,6 +1720,7 @@ const pt = {
|
|
|
1132
1720
|
noAccountText: "Não tem uma conta?",
|
|
1133
1721
|
signUpText: "Cadastre-se",
|
|
1134
1722
|
errors: {
|
|
1723
|
+
oauthCallbackFailed: "Não foi possível concluir o logon único — o link de acesso expirou ou já foi utilizado. Tente novamente.",
|
|
1135
1724
|
invalidCredentials: "E-mail ou senha inválidos. Por favor, tente novamente.",
|
|
1136
1725
|
emailNotVerified: "Por favor, verifique seu e-mail antes de fazer login.",
|
|
1137
1726
|
},
|
|
@@ -1257,6 +1846,40 @@ const pt = {
|
|
|
1257
1846
|
shell: {
|
|
1258
1847
|
tenantHostHint: "Você está fazendo login neste espaço de trabalho",
|
|
1259
1848
|
},
|
|
1849
|
+
layout: {
|
|
1850
|
+
headline: "Crie aplicativos de negócios poderosos, com mais rapidez.",
|
|
1851
|
+
subhead: "A plataforma universal para gestão de dados corporativos, fluxos de trabalho e analytics.",
|
|
1852
|
+
},
|
|
1853
|
+
remediation: {
|
|
1854
|
+
signOut: "Sair da conta",
|
|
1855
|
+
password: {
|
|
1856
|
+
title: "Sua senha expirou",
|
|
1857
|
+
fallbackMessage: "Defina uma nova senha para continuar.",
|
|
1858
|
+
current: "Senha atual",
|
|
1859
|
+
next: "Nova senha",
|
|
1860
|
+
confirm: "Confirmar nova senha",
|
|
1861
|
+
submit: "Alterar senha e continuar",
|
|
1862
|
+
submitting: "Atualizando…",
|
|
1863
|
+
mismatch: "As novas senhas não coincidem.",
|
|
1864
|
+
failed: "Não foi possível alterar a senha.",
|
|
1865
|
+
},
|
|
1866
|
+
mfa: {
|
|
1867
|
+
title: "Configurar a autenticação em duas etapas",
|
|
1868
|
+
fallbackMessage: "Sua organização exige um aplicativo autenticador para continuar.",
|
|
1869
|
+
confirmPassword: "Confirme sua senha",
|
|
1870
|
+
continue: "Continuar",
|
|
1871
|
+
preparing: "Preparando…",
|
|
1872
|
+
enrollFailed: "Não foi possível iniciar o registro.",
|
|
1873
|
+
scanTitle: "Escaneie com seu aplicativo autenticador",
|
|
1874
|
+
scanBody: "Escaneie este QR code com o Google Authenticator, 1Password, Authy etc. e digite o código de 6 dígitos.",
|
|
1875
|
+
backupTitle: "Salve seus códigos de backup",
|
|
1876
|
+
backupBody: "Guarde-os em local seguro — cada um pode ser usado uma vez se você perder seu dispositivo.",
|
|
1877
|
+
codeLabel: "Código de 6 dígitos",
|
|
1878
|
+
verify: "Verificar e continuar",
|
|
1879
|
+
verifying: "Verificando…",
|
|
1880
|
+
invalidCode: "Código inválido. Tente novamente.",
|
|
1881
|
+
},
|
|
1882
|
+
},
|
|
1260
1883
|
},
|
|
1261
1884
|
profile: {
|
|
1262
1885
|
title: "Perfil",
|
|
@@ -1321,11 +1944,15 @@ const pt = {
|
|
|
1321
1944
|
settings: "Configurações do espaço de trabalho",
|
|
1322
1945
|
},
|
|
1323
1946
|
help: {
|
|
1947
|
+
onThisPage: "Nesta página",
|
|
1948
|
+
keyboardShortcuts: "Atalhos de teclado",
|
|
1324
1949
|
appDocs: 'Documentação deste app',
|
|
1325
1950
|
allDocs: 'Toda a documentação',
|
|
1326
1951
|
onlineDocs: 'Documentação online',
|
|
1327
1952
|
},
|
|
1328
1953
|
sidebar: {
|
|
1954
|
+
packageManagement: "Gerenciamento de pacotes",
|
|
1955
|
+
searchNavigation: "Pesquisar na navegação...",
|
|
1329
1956
|
settings: "Configurações",
|
|
1330
1957
|
help: "Ajuda",
|
|
1331
1958
|
helpTooltip: "Ajuda e documentação",
|
|
@@ -1342,14 +1969,66 @@ const pt = {
|
|
|
1342
1969
|
removeFromFavorites: "Remover {{name}} dos favoritos",
|
|
1343
1970
|
},
|
|
1344
1971
|
topbar: {
|
|
1972
|
+
openAssistant: "Abrir o assistente {{name}}",
|
|
1973
|
+
offline: "Off-line",
|
|
1974
|
+
usersOnline: "Usuários on-line no momento",
|
|
1975
|
+
switchView: "Trocar de visão",
|
|
1976
|
+
switchObject: "Trocar de objeto",
|
|
1977
|
+
connection: {
|
|
1978
|
+
connected: "Conectado",
|
|
1979
|
+
connecting: "Conectando...",
|
|
1980
|
+
reconnecting: "Reconectando...",
|
|
1981
|
+
disconnected: "Desconectado",
|
|
1982
|
+
error: "Erro de conexão",
|
|
1983
|
+
},
|
|
1984
|
+
stage: {
|
|
1985
|
+
preview: "Pré-visualização",
|
|
1986
|
+
beta: "Beta",
|
|
1987
|
+
tooltip: "Esta plataforma está em pré-visualização — os recursos podem mudar.",
|
|
1988
|
+
},
|
|
1345
1989
|
aiAssistant: "Assistente de IA",
|
|
1346
1990
|
designInStudio: "Projetar no Studio",
|
|
1347
1991
|
},
|
|
1348
1992
|
home: {
|
|
1993
|
+
build: {
|
|
1994
|
+
title: "Criar um aplicativo",
|
|
1995
|
+
subtitle: "Comece do zero — projete objetos, formulários, automações e interfaces.",
|
|
1996
|
+
},
|
|
1997
|
+
template: {
|
|
1998
|
+
title: "Comece com um modelo",
|
|
1999
|
+
subtitle: "Instale um aplicativo modelo do marketplace e personalize-o.",
|
|
2000
|
+
},
|
|
2001
|
+
welcomeAdminDescription: "Descreva seu negócio em uma frase — a IA gera os objetos, as telas, as APIs e as ferramentas do agente. Ou configure você mesmo pelo menu à esquerda.",
|
|
2002
|
+
welcomeAdminDescriptionNoBuild: "Configure seu primeiro aplicativo pelo menu de Administração à esquerda. Quando houver dados, o assistente de IA poderá ajudar a explorá-los.",
|
|
2003
|
+
welcomeAdminDescriptionNoAi: "Configure seu primeiro aplicativo pelo menu de Administração à esquerda.",
|
|
2004
|
+
noAppsTitle: "Ainda não há aplicativos",
|
|
2005
|
+
noAppsDescription: "Seu workspace está sendo preparado — os aplicativos que seu administrador compartilhar aparecerão aqui.",
|
|
2006
|
+
buildWithAI: "Criar com IA",
|
|
2007
|
+
askAI: "Perguntar à IA",
|
|
2008
|
+
recoveryReminder: {
|
|
2009
|
+
message: "Defina uma senha de recuperação para conseguir entrar mesmo que o logon único fique indisponível.",
|
|
2010
|
+
cta: "Definir senha",
|
|
2011
|
+
dismiss: "Dispensar",
|
|
2012
|
+
},
|
|
2013
|
+
pendingDrafts: {
|
|
2014
|
+
message: "Você tem {{count}} alteração(ões) não publicada(s) — publique para ativá-las.",
|
|
2015
|
+
cta: "Publicar",
|
|
2016
|
+
publishing: "Publicando…",
|
|
2017
|
+
published: "Publicado! Suas alterações estão ativas.",
|
|
2018
|
+
publishFailed: "Falha ao publicar",
|
|
2019
|
+
},
|
|
1349
2020
|
title: "Início",
|
|
1350
2021
|
subtitle: "Painel do seu espaço de trabalho",
|
|
1351
2022
|
nav: "Início",
|
|
1352
2023
|
allApps: "Todas as aplicações",
|
|
2024
|
+
yourApps: "As suas aplicações",
|
|
2025
|
+
showMoreApps: "Mais",
|
|
2026
|
+
showLess: "Mostrar menos",
|
|
2027
|
+
continueEmpty: "Os itens que abrir aparecerão aqui.",
|
|
2028
|
+
actionCenter: {
|
|
2029
|
+
title: "Requer a sua atenção",
|
|
2030
|
+
empty: "Está tudo em dia",
|
|
2031
|
+
},
|
|
1353
2032
|
loading: "Carregando espaço de trabalho...",
|
|
1354
2033
|
recent: "Recentes",
|
|
1355
2034
|
starred: "Favoritos",
|
|
@@ -1401,7 +2080,21 @@ const pt = {
|
|
|
1401
2080
|
},
|
|
1402
2081
|
},
|
|
1403
2082
|
layout: {
|
|
2083
|
+
systemNav: {
|
|
2084
|
+
systemSettings: "Configurações do sistema",
|
|
2085
|
+
applications: "Aplicativos",
|
|
2086
|
+
appMarketplace: "Marketplace de aplicativos",
|
|
2087
|
+
objectManager: "Gerenciador de objetos",
|
|
2088
|
+
users: "Usuários",
|
|
2089
|
+
organizations: "Organizações",
|
|
2090
|
+
roles: "Perfis",
|
|
2091
|
+
configuration: "Configuração",
|
|
2092
|
+
createApp: "Criar aplicativo",
|
|
2093
|
+
},
|
|
1404
2094
|
appSwitcher: {
|
|
2095
|
+
switchApplication: "Trocar de aplicativo",
|
|
2096
|
+
appsAvailable: "{{count}} aplicativos disponíveis",
|
|
2097
|
+
editNavigation: "Editar a navegação",
|
|
1405
2098
|
home: "Início",
|
|
1406
2099
|
addApp: "Adicionar aplicativo",
|
|
1407
2100
|
editApp: "Editar aplicativo",
|
|
@@ -1491,10 +2184,11 @@ const pt = {
|
|
|
1491
2184
|
requiredError: "{{label}} é obrigatório",
|
|
1492
2185
|
cancel: "Cancelar",
|
|
1493
2186
|
confirm: "Confirmar",
|
|
2187
|
+
uploading: "Enviando…",
|
|
1494
2188
|
defaultActionTitle: "Ação",
|
|
1495
2189
|
ok: "OK",
|
|
1496
|
-
lookupPlaceholder: "
|
|
1497
|
-
lookupHelpText: "
|
|
2190
|
+
lookupPlaceholder: "ID do registro para {{label}}",
|
|
2191
|
+
lookupHelpText: "Este parâmetro não tem um objeto de referência configurado, portanto o seletor de registros não está disponível. Insira um ID de registro ou peça a um administrador para corrigir o parâmetro da ação.",
|
|
1498
2192
|
},
|
|
1499
2193
|
actionConfirm: {
|
|
1500
2194
|
title: "Confirmar ação",
|
|
@@ -1519,6 +2213,8 @@ const pt = {
|
|
|
1519
2213
|
updateFailed: "Não foi possível atualizar a navegação",
|
|
1520
2214
|
},
|
|
1521
2215
|
objectActions: {
|
|
2216
|
+
resetPackageSetConfirm: "Este conjunto de permissões acompanha um pacote instalado e não pode ser removido. Excluí-lo o redefine para a versão original do pacote e descarta suas personalizações neste ambiente. Continuar?",
|
|
2217
|
+
resetPackageSetSuccess: "Conjunto de permissões redefinido para a versão original do pacote",
|
|
1522
2218
|
deleteSuccess: "{{label}} excluído com sucesso",
|
|
1523
2219
|
deleteFailed: "Não foi possível excluir {{label}}",
|
|
1524
2220
|
noRecordId: "Nenhum ID de registro fornecido",
|
|
@@ -1683,6 +2379,7 @@ const pt = {
|
|
|
1683
2379
|
},
|
|
1684
2380
|
},
|
|
1685
2381
|
organizations: {
|
|
2382
|
+
create: "Criar workspace",
|
|
1686
2383
|
mine: "Minhas organizações",
|
|
1687
2384
|
title: "Organizações",
|
|
1688
2385
|
heading: "Suas organizações",
|
|
@@ -1696,6 +2393,11 @@ const pt = {
|
|
|
1696
2393
|
noMatches: "Nenhuma organização corresponde à sua pesquisa.",
|
|
1697
2394
|
},
|
|
1698
2395
|
notifications: {
|
|
2396
|
+
regionLabel: "Notificações",
|
|
2397
|
+
groupCount: "{{count}} notificações",
|
|
2398
|
+
groupUnread: "{{count}} não lidas",
|
|
2399
|
+
groupMarkRead: "Marcar como lidas",
|
|
2400
|
+
groupMarkReadTitle: "Marcar todas deste tipo como lidas",
|
|
1699
2401
|
empty: "Sem notificações",
|
|
1700
2402
|
markAllRead: "Marcar tudo como lido",
|
|
1701
2403
|
viewAll: "Ver todas as notificações",
|
|
@@ -1814,7 +2516,103 @@ const pt = {
|
|
|
1814
2516
|
done: 'Concluído — ocultar',
|
|
1815
2517
|
},
|
|
1816
2518
|
},
|
|
2519
|
+
excelImport: {
|
|
2520
|
+
noImportableFields: "Esse objeto não tem campos importáveis.",
|
|
2521
|
+
schemaReadFailed: "Não foi possível ler o esquema do objeto.",
|
|
2522
|
+
imported: "{{count}} linha(s) importada(s) para {{object}}.",
|
|
2523
|
+
importFrom: "Importar as linhas reais de",
|
|
2524
|
+
into: "para",
|
|
2525
|
+
opening: "Abrindo…",
|
|
2526
|
+
importAction: "Importar",
|
|
2527
|
+
dismiss: "Dispensar",
|
|
2528
|
+
},
|
|
2529
|
+
cloudOnboarding: {
|
|
2530
|
+
hintCreate: "Crie seu primeiro ambiente — um espaço de trabalho privado com URL, banco de dados e plano próprios. A construção acontece dentro dele.",
|
|
2531
|
+
hintReady: "Seu ambiente de produção está pronto. Abra-o para criar e executar seus aplicativos — tudo acontece dentro do ambiente.",
|
|
2532
|
+
createEnvironment: "Crie seu ambiente",
|
|
2533
|
+
openProduction: "Abrir produção",
|
|
2534
|
+
manageEnvironments: "Gerenciar ambientes",
|
|
2535
|
+
},
|
|
2536
|
+
aiModelStatus: {
|
|
2537
|
+
summary: "Criar / Perguntar usa {{conversational}} ({{conversationalSource}}); estruturado usa {{structured}} ({{structuredSource}}).",
|
|
2538
|
+
summaryRouting: "Política de roteamento: planos gratuitos → {{free}}, planos pagos → {{paid}}.",
|
|
2539
|
+
modelUnknown: "desconhecido",
|
|
2540
|
+
sourceUnknown: "não informado pelo adaptador",
|
|
2541
|
+
rowConversational: "Modelo Build / Ask",
|
|
2542
|
+
rowStructured: "Estruturado (blueprint / seed)",
|
|
2543
|
+
rowReasoning: "Esforço de raciocínio",
|
|
2544
|
+
readFailed: "Não foi possível ler o modelo de IA efetivo. Este ambiente pode não executar um serviço de IA, ou você pode não ter a permissão ai:read.",
|
|
2545
|
+
readFailedWithStatus: "Não foi possível ler o modelo de IA efetivo (HTTP {{status}}). Este ambiente pode não executar um serviço de IA, ou você pode não ter a permissão ai:read.",
|
|
2546
|
+
overridesInEffect: "Substituições em vigor: ",
|
|
2547
|
+
noOverrides: "nenhuma — usando os padrões do código implantado.",
|
|
2548
|
+
adapter: "Adaptador: ",
|
|
2549
|
+
sourceCodeDefault: "padrão do código (sem substituição env)",
|
|
2550
|
+
sourceInherits: "igual a build/ask",
|
|
2551
|
+
sourcePinned: "fixado por {{source}}",
|
|
2552
|
+
},
|
|
2553
|
+
chatbotError: {
|
|
2554
|
+
title: "Falha na resposta",
|
|
2555
|
+
fallbackDetail: "Algo deu errado. Tente novamente.",
|
|
2556
|
+
details: "Detalhes",
|
|
2557
|
+
hide: "Ocultar",
|
|
2558
|
+
retry: "Tentar novamente",
|
|
2559
|
+
},
|
|
2560
|
+
chatbotQuota: {
|
|
2561
|
+
title: "Upgrade necessário",
|
|
2562
|
+
fallbackMessage: "Você atingiu sua cota de IA.",
|
|
2563
|
+
buyCredits: "Comprar um pacote de créditos",
|
|
2564
|
+
upgradePlan: "Fazer upgrade do plano",
|
|
2565
|
+
},
|
|
2566
|
+
environment: {
|
|
2567
|
+
addEnvironment: "Adicionar ambiente",
|
|
2568
|
+
setUpProduction: "Configure seu ambiente de produção",
|
|
2569
|
+
addDevelopment: "Adicionar ambiente de desenvolvimento",
|
|
2570
|
+
},
|
|
2571
|
+
cloudConnection: {
|
|
2572
|
+
checking: "Verificando a conexão…",
|
|
2573
|
+
retry: "Tentar novamente",
|
|
2574
|
+
errors: {
|
|
2575
|
+
expired: "A solicitação expirou antes de ser aprovada. Comece novamente.",
|
|
2576
|
+
bindFailed: "Falha ao vincular.",
|
|
2577
|
+
deviceCodeFailed: "Falha na solicitação do código do dispositivo.",
|
|
2578
|
+
},
|
|
2579
|
+
waiting: {
|
|
2580
|
+
popupOpened: "Aprove a conexão na janela que acabou de abrir — esta página se atualiza sozinha.",
|
|
2581
|
+
polling: "Aguardando a aprovação no console da nuvem…",
|
|
2582
|
+
openApproval: "Abrir a página de aprovação",
|
|
2583
|
+
copy: "Copiar",
|
|
2584
|
+
copied: "Copiado",
|
|
2585
|
+
codePrefilled: "O código já vem preenchido na página de aprovação.",
|
|
2586
|
+
openItHere: "A janela não apareceu? Abra aqui",
|
|
2587
|
+
cancel: "Cancelar",
|
|
2588
|
+
},
|
|
2589
|
+
bound: {
|
|
2590
|
+
title: "Conectado ao ObjectStack Cloud",
|
|
2591
|
+
runtime: "Runtime",
|
|
2592
|
+
organization: "Organização",
|
|
2593
|
+
approvedBy: "Aprovado por",
|
|
2594
|
+
runtimeId: "ID do runtime",
|
|
2595
|
+
environment: "Ambiente",
|
|
2596
|
+
since: "Desde",
|
|
2597
|
+
privatePackages: "Os pacotes privados da sua organização agora aparecem no Marketplace em “Sua organização”.",
|
|
2598
|
+
disconnect: "Desconectar",
|
|
2599
|
+
},
|
|
2600
|
+
unbound: {
|
|
2601
|
+
title: "Não conectado",
|
|
2602
|
+
body: "Conecte este runtime a um plano de controle do ObjectStack para explorar os pacotes privados da sua organização e instalá-los aqui. A aprovação é um único clique na sua conta da nuvem — nenhum id ou credencial é digitado nesta página.",
|
|
2603
|
+
connect: "Conectar",
|
|
2604
|
+
},
|
|
2605
|
+
},
|
|
1817
2606
|
marketplace: {
|
|
2607
|
+
suggestedBindings: {
|
|
2608
|
+
promptEveryone: "Este app sugere conceder \"{{set}}\" a todos os usuários autenticados (a posição Everyone).",
|
|
2609
|
+
promptGuest: "Este app sugere conceder \"{{set}}\" a visitantes não autenticados (a posição Guest).",
|
|
2610
|
+
confirm: "Conceder",
|
|
2611
|
+
confirming: "Concedendo…",
|
|
2612
|
+
dismiss: "Dispensar",
|
|
2613
|
+
confirmedToast: "\"{{set}}\" agora está concedido a {{anchor}}.",
|
|
2614
|
+
dismissedToast: "Sugestão de \"{{set}}\" dispensada.",
|
|
2615
|
+
},
|
|
1818
2616
|
title: "Marketplace de aplicativos",
|
|
1819
2617
|
subtitle: "Explore aplicativos aprovados publicados no catálogo ObjectStack. Clique em um aplicativo para ver os detalhes e instalá-lo em um de seus ambientes.",
|
|
1820
2618
|
searchPlaceholder: "Pesquisar aplicativos por nome ou ID de manifesto…",
|
|
@@ -1866,6 +2664,7 @@ const pt = {
|
|
|
1866
2664
|
updateAvailable: 'Atualização disponível',
|
|
1867
2665
|
},
|
|
1868
2666
|
action: {
|
|
2667
|
+
installed: "Instalado",
|
|
1869
2668
|
install: "Instalar",
|
|
1870
2669
|
reinstall: "Reinstalar",
|
|
1871
2670
|
working: "Processando…",
|
|
@@ -1936,6 +2735,14 @@ const pt = {
|
|
|
1936
2735
|
yearsAgo: "há {{count}} anos",
|
|
1937
2736
|
},
|
|
1938
2737
|
},
|
|
2738
|
+
approvals: {
|
|
2739
|
+
approve: 'Aprovar',
|
|
2740
|
+
reject: 'Rejeitar',
|
|
2741
|
+
comment: 'Comentário (opcional)',
|
|
2742
|
+
approveSuccess: 'Aprovado',
|
|
2743
|
+
rejectSuccess: 'Rejeitado',
|
|
2744
|
+
rejectConfirm: 'Rejeitar esta solicitação de aprovação?',
|
|
2745
|
+
},
|
|
1939
2746
|
approvalsInbox: {
|
|
1940
2747
|
loadMore: 'Carregar mais',
|
|
1941
2748
|
loadingMore: 'Carregando…',
|
|
@@ -1960,13 +2767,28 @@ const pt = {
|
|
|
1960
2767
|
slaRemaining: 'SLA: faltam {{dur}}',
|
|
1961
2768
|
slaOverdue: 'SLA vencido há {{dur}}',
|
|
1962
2769
|
actReassign: 'Reatribuída',
|
|
2770
|
+
reassignFromTo: 'de {{from}} para {{to}}',
|
|
1963
2771
|
actRemind: 'Lembrete',
|
|
1964
2772
|
actRequestInfo: 'Pediu mais informações',
|
|
1965
2773
|
actComment: 'Comentou',
|
|
1966
2774
|
stepProgress: 'Etapas de aprovação',
|
|
1967
2775
|
prevRequest: 'Anterior',
|
|
1968
2776
|
nextRequest: 'Próxima',
|
|
1969
|
-
positionOf: '{{index}} de {{total}}',
|
|
2777
|
+
positionOf: 'Solicitação {{index}} de {{total}}',
|
|
2778
|
+
progressApprovals: 'Aprovações — {{got}} de {{need}}',
|
|
2779
|
+
progressGroups: 'Progresso de assinaturas — {{got}} de {{need}} grupos',
|
|
2780
|
+
progressEligible: '{{count}} aprovador(es) elegível(eis)',
|
|
2781
|
+
progressBar: 'Progresso da decisão',
|
|
2782
|
+
declaredActions: 'Ações',
|
|
2783
|
+
attachmentChip: 'Anexo',
|
|
2784
|
+
attachmentOpenFailed: 'Não foi possível abrir o anexo — tente novamente',
|
|
2785
|
+
approveOneTitle: 'Aprovar "{{title}}"?',
|
|
2786
|
+
approveOneBody: 'Isso aprova a solicitação com a sua identidade. Para adicionar um comentário ou anexo, abra a solicitação.',
|
|
2787
|
+
flowOrigin: 'Iniciada por fluxo',
|
|
2788
|
+
sortBy: 'Ordenar',
|
|
2789
|
+
sortRecent: 'Mais recentes primeiro',
|
|
2790
|
+
sortOldest: 'Mais antigas primeiro',
|
|
2791
|
+
sortAmount: 'Valor (maior→menor)',
|
|
1970
2792
|
quickPhrase1: 'Aprovada — atende aos requisitos.',
|
|
1971
2793
|
quickPhrase2: 'Aprovada com condições — acompanhe a execução.',
|
|
1972
2794
|
quickPhrase3: 'Adicione material de apoio e reenvie.',
|
|
@@ -2095,6 +2917,10 @@ const pt = {
|
|
|
2095
2917
|
retry: 'Tentar novamente',
|
|
2096
2918
|
},
|
|
2097
2919
|
draftBar: {
|
|
2920
|
+
messageClean: "Pré-visualização do rascunho — não há alterações não publicadas; tudo aqui já está no ar.",
|
|
2921
|
+
sampleDataTitle: "Os dados de exemplo aparecem depois que você publicar",
|
|
2922
|
+
sampleDataBody: "Você está pré-visualizando a estrutura do seu app. Publique para carregar registros de exemplo e colocá-lo no ar.",
|
|
2923
|
+
publishCta: "Publicar para ver no ar",
|
|
2098
2924
|
message: 'Pré-visualização de rascunho — você está vendo alterações não publicadas. Nada entra no ar até você publicar.',
|
|
2099
2925
|
publish: 'Publicar',
|
|
2100
2926
|
publishing: 'Publicando…',
|