@proulr/rosetta 0.1.18 → 0.1.21

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.
@@ -7,6 +7,7 @@ export type FlatMessages = Record<string, string>;
7
7
  /** Source-of-truth messages (pt-BR). Keys define `ProulrMessageKey`. */
8
8
  export const PT_BR_MESSAGES = {
9
9
  "alerts.age18": "Você precisa ter 18 anos ou mais.",
10
+ "alerts.album.emptyTitle": "Álbum vazio",
10
11
  "alerts.attention": "Atenção",
11
12
  "alerts.block": "Bloquear",
12
13
  "alerts.camera": "Erro na câmera",
@@ -16,6 +17,7 @@ export const PT_BR_MESSAGES = {
16
17
  "alerts.couldNotRemove": "Não foi possível remover.",
17
18
  "alerts.couldNotRemoveTrip": "Não foi possível remover a viagem.",
18
19
  "alerts.couldNotSave": "Não foi possível salvar.",
20
+ "alerts.couldNotSaveHandle": "Não foi possível salvar o @.",
19
21
  "alerts.couldNotSaveNetworks": "Não foi possível salvar as redes.",
20
22
  "alerts.crop": "Erro ao cortar",
21
23
  "alerts.dataExport.createJobFailed": "Falha ao criar job de exportação",
@@ -24,6 +26,8 @@ export const PT_BR_MESSAGES = {
24
26
  "alerts.dataExport.serverTimeout": "Tempo esgotado aguardando exportação do servidor",
25
27
  "alerts.dataExport.shareDialogTitle": "Exportar dados locais",
26
28
  "alerts.dataExport.sharingUnavailable": "Compartilhamento indisponível neste dispositivo",
29
+ "alerts.deactivate": "Desativar",
30
+ "alerts.delete": "Excluir",
27
31
  "alerts.devicePermission.location": "localização",
28
32
  "alerts.devicePermission.notifications": "notificações",
29
33
  "alerts.devicePermission.pairFormat": "{first} e {second}",
@@ -36,13 +40,20 @@ export const PT_BR_MESSAGES = {
36
40
  "alerts.empty": "Vazio",
37
41
  "alerts.error": "Erro",
38
42
  "alerts.errorSave": "Erro ao salvar",
43
+ "alerts.fileOpenFailed": "Não foi possível abrir o arquivo.",
44
+ "alerts.fileTitle": "Arquivo",
39
45
  "alerts.flash.sendFail": "Não foi possível enviar a reação.",
40
46
  "alerts.gallery": "Galeria",
47
+ "alerts.galleryPickFail": "Não foi possível escolher imagens.",
41
48
  "alerts.genericFail": "Não foi possível concluir a ação.",
42
49
  "alerts.genericRetry": "Não foi possível concluir. Tente novamente.",
50
+ "alerts.invalidBirthDate": "Data de nascimento inválida. Use o formato DD/MM/AAAA.",
43
51
  "alerts.invalidExamDate": "Data do último exame inválida. Use o formato DD/MM/AAAA.",
52
+ "alerts.invalidReminderDate": "Data do lembrete inválida. Use o formato DD/MM/AAAA.",
44
53
  "alerts.limit": "Limite",
45
54
  "alerts.location": "Localização",
55
+ "alerts.locationUnavailable": "Não foi possível obter sua localização atual.",
56
+ "alerts.mediaPreparing": "A mídia ainda está sendo preparada.",
46
57
  "alerts.mic": "Microfone",
47
58
  "alerts.ops": "Ops",
48
59
  "alerts.permission.cameraBlocked": "Câmera bloqueada. Ative nas configurações do aparelho.",
@@ -58,6 +69,11 @@ export const PT_BR_MESSAGES = {
58
69
  "alerts.photoPick": "Erro ao escolher foto",
59
70
  "alerts.photoUpload": "Erro ao enviar foto",
60
71
  "alerts.pinInvalid": "PIN inválido. Use pelo menos 4 dígitos.",
72
+ "alerts.pinMismatch": "PIN diferente",
73
+ "alerts.pinMismatchBody": "Confirme o mesmo PIN nos dois campos.",
74
+ "alerts.postEmpty": "Escreva algo ou adicione uma mídia.",
75
+ "alerts.preferenceUnavailable": "Esta preferência ainda não está disponível no servidor.",
76
+ "alerts.publishFail": "Não foi possível publicar.",
61
77
  "alerts.push.blockedWebMessage": "Permita notificações do Proulr no navegador para receber mensagens como no WhatsApp Web.",
62
78
  "alerts.push.blockedWebTitle": "Notificações bloqueadas",
63
79
  "alerts.push.deniedMessage": "Ative as notificações do Proulr nas configurações do celular para receber alertas.",
@@ -108,19 +124,34 @@ export const PT_BR_MESSAGES = {
108
124
  "alerts.pushTest.sendError": "Erro no envio.",
109
125
  "alerts.pushTest.ticketFormat": "Ticket {id}",
110
126
  "alerts.pushTest.tokenUnavailable": "Token de push indisponível.",
127
+ "alerts.remove": "Remover",
111
128
  "alerts.report": "Denúncia",
112
129
  "alerts.report.already": "Você já denunciou este perfil nas últimas 24 horas.",
113
130
  "alerts.report.chooseReason": "Escolha o motivo da denúncia.",
114
131
  "alerts.report.needLogin": "Faça login para denunciar.",
115
132
  "alerts.report.writeSummary": "Escreva um breve resumo do que aconteceu.",
133
+ "alerts.repost": "Repost",
134
+ "alerts.repostSoon": "Repostar estará disponível em breve.",
135
+ "alerts.repostThoughtsSoon": "Repostar pensamentos estará disponível em breve.",
136
+ "alerts.revoke": "Revogar",
137
+ "alerts.saveFailed": "Não foi possível salvar.",
138
+ "alerts.selectImageFail": "Não foi possível selecionar a imagem.",
139
+ "alerts.selectMediaFail": "Não foi possível selecionar a mídia.",
140
+ "alerts.selectVideoFail": "Não foi possível selecionar o vídeo.",
141
+ "alerts.sendFailRetry": "Não foi possível enviar. Tente novamente.",
116
142
  "alerts.soon": "Em breve",
117
143
  "alerts.soonFeature": "{feature} ainda não está disponível.",
144
+ "alerts.storyDeleteFail": "Não foi possível excluir o story.",
145
+ "alerts.storyPublishFail": "Não foi possível publicar o story.",
146
+ "alerts.storyTextEmpty": "Escreva algo para publicar o story de texto.",
118
147
  "alerts.systemNotif.browserLabel": "Configurar no navegador",
119
148
  "alerts.systemNotif.browserSubtitle": "Abrir permissões do site Proulr neste navegador",
120
149
  "alerts.systemNotif.deviceLabel": "Configurar no aparelho",
121
150
  "alerts.systemNotif.deviceSubtitle": "Abrir painel de notificações do sistema",
122
151
  "alerts.tryAgain": "Tente novamente.",
123
152
  "alerts.unavailable": "Indisponível",
153
+ "alerts.useCapturedPhotoFail": "Não foi possível usar a foto capturada.",
154
+ "alerts.useMediaFail": "Não foi possível usar esta mídia.",
124
155
  "alerts.wait": "Aguarde",
125
156
  "alerts.webNotif.chromiumSteps": "No {browser}: toque no cadeado (ou ícone ⓘ) à esquerda da URL {origin} → Configurações do site → Notificações → Permitir.",
126
157
  "alerts.webNotif.firefoxSteps": "No Firefox: toque no cadeado à esquerda da URL {origin} → Conexão segura → Mais informações → Permissões → Notificações → Permitir.",
@@ -129,16 +160,42 @@ export const PT_BR_MESSAGES = {
129
160
  "alerts.webNotif.safariSteps": "No Safari: abra Ajustes (ou Safari → Ajustes no Mac) → Sites → Notificações → encontre {origin} e escolha Permitir.",
130
161
  "alerts.webNotif.title": "Permissões do site",
131
162
  "alerts.yourHandle": "Seu @",
163
+ "auth.ageGate.allowCamera": "Permitir câmera",
132
164
  "auth.ageGate.banner": "É rápido e seguro: o vídeo serve só para verificar idade adulta — não pedimos documento nem data de nascimento nesta etapa.",
165
+ "auth.ageGate.cameraHint": "Centralize seu rosto no oval e toque em iniciar",
133
166
  "auth.ageGate.cameraNotReady": "A câmera ainda não está pronta. Aguarde um instante.",
134
167
  "auth.ageGate.captureFaceFail": "Não foi possível capturar o rosto.",
135
168
  "auth.ageGate.captureFaceVideoFail": "Não foi possível capturar o rosto no vídeo.",
136
169
  "auth.ageGate.cta": "Continuar — leva poucos segundos",
137
170
  "auth.ageGate.errorTitle": "Erro na verificação",
171
+ "auth.ageGate.manualReviewBody": "Analisaremos seu vídeo manualmente. Você receberá acesso assim que a revisão for concluída.",
172
+ "auth.ageGate.manualReviewBodyInternal": "Analisaremos seu vídeo manualmente no painel interno. Você será liberado assim que a revisão for aprovada.",
173
+ "auth.ageGate.manualReviewConfirmBody": "Seu caso será analisado no painel interno do Proulr. Não é necessário enviar e-mail — basta confirmar abaixo para entrar na fila de revisão.",
138
174
  "auth.ageGate.manualReviewHint": "Se a validação automática falhar, revisamos manualmente — você não perde o cadastro.",
175
+ "auth.ageGate.manualReviewQueueSubtitle": "Sua verificação de idade está na fila do time Proulr",
176
+ "auth.ageGate.manualReviewSentSubtitle": "Sua verificação foi enviada para o time do Proulr",
177
+ "auth.ageGate.manualReviewTitle": "Revisão em andamento",
178
+ "auth.ageGate.notesPlaceholder": "Conte o que aconteceu (opcional)",
179
+ "auth.ageGate.permissionBody": "Precisamos da câmera frontal para validar sua idade com um vídeo curto.",
180
+ "auth.ageGate.permissionBodyWeb": "Precisamos da câmera do navegador para validar sua idade com um vídeo curto.",
181
+ "auth.ageGate.prepareCountdown": "Prepare-se… {count}",
182
+ "auth.ageGate.preparing": "Preparando…",
139
183
  "auth.ageGate.processingSubtitle": "Analisando seu vídeo. Em geral leva poucos segundos.",
140
184
  "auth.ageGate.processingTitle": "Verificando idade",
141
185
  "auth.ageGate.recordVideoFail": "Falha ao gravar o vídeo.",
186
+ "auth.ageGate.recording": "Gravando…",
187
+ "auth.ageGate.recordingCountdown": "Gravando… mantenha o rosto no oval ({count})",
188
+ "auth.ageGate.retry": "Tentar novamente",
189
+ "auth.ageGate.retryNow": "Tentar novamente agora",
190
+ "auth.ageGate.retryRecord": "Tentar gravar novamente",
191
+ "auth.ageGate.reviewInProgressSubtitle": "Não foi possível confirmar automaticamente que você tem 18 anos ou mais",
192
+ "auth.ageGate.reviewInProgressTitle": "Verificação em revisão",
193
+ "auth.ageGate.sendManualReview": "Enviar para revisão manual",
194
+ "auth.ageGate.serviceUnavailableBody": "O modelo de verificação não respondeu a tempo. Tente novamente em instantes.",
195
+ "auth.ageGate.serviceUnavailableTitle": "Serviço indisponível",
196
+ "auth.ageGate.signOut": "Sair da conta",
197
+ "auth.ageGate.startVerify": "Iniciar verificação",
198
+ "auth.ageGate.startVerifyFail": "Não foi possível iniciar a verificação.",
142
199
  "auth.ageGate.steps": "1. Centralize seu rosto no oval\n2. Grave um vídeo de 3 segundos\n3. Aguarde a validação automática",
143
200
  "auth.ageGate.subtitle": "Só um vídeo de 3 segundos para confirmar que você tem 18 anos ou mais",
144
201
  "auth.ageGate.title": "Verificação rápida e segura",
@@ -146,7 +203,17 @@ export const PT_BR_MESSAGES = {
146
203
  "auth.ageGate.trustFastTitle": "Rápido",
147
204
  "auth.ageGate.trustSafeBody": "Usado só para confirmar idade. Seus dados ficam protegidos",
148
205
  "auth.ageGate.trustSafeTitle": "Seguro",
206
+ "auth.backup.confirmPlaceholder": "Confirmar senha",
207
+ "auth.backup.createBody": "Defina uma senha para recuperar suas mensagens cifradas em outro celular. Se você entrou com e-mail, pode usar a mesma senha da conta.",
208
+ "auth.backup.createTitle": "Senha de backup",
209
+ "auth.backup.passwordPlaceholder": "Senha de backup",
210
+ "auth.backup.restore": "Restaurar",
211
+ "auth.backup.restoreBody": "Digite sua senha de backup para decifrar o histórico neste aparelho.",
212
+ "auth.backup.restoreTitle": "Restaurar mensagens",
213
+ "auth.backup.saveContinue": "Salvar e continuar",
149
214
  "auth.common.back": "Voltar",
215
+ "auth.google.a11y": "Google",
216
+ "auth.google.continue": "Continuar com Google",
150
217
  "auth.googleError.expoGoIncomplete": "Login com Google não concluído no Expo Go. Configure EXPO_PUBLIC_AUTH_REDIRECT_URL (exp://IP:8081/--/auth-callback) ou teste com npx expo run:android.",
151
218
  "auth.googleError.generic": "Não foi possível concluir o login com Google.",
152
219
  "auth.googleError.inProgress": "Login com Google já está em andamento.",
@@ -204,35 +271,195 @@ export const PT_BR_MESSAGES = {
204
271
  "auth.welcome.createAccount": "Criar conta",
205
272
  "auth.welcome.heroCaption": "Entre na caçada noturna",
206
273
  "auth.welcome.signIn": "Entrar",
274
+ "chat.a11y.addGroupPhoto": "Adicionar foto do grupo",
275
+ "chat.a11y.changeGroupPhoto": "Alterar foto do grupo",
276
+ "chat.a11y.closeConversation": "Fechar conversa",
277
+ "chat.a11y.closePreview": "Fechar preview",
278
+ "chat.a11y.closeReactions": "Fechar reações",
279
+ "chat.a11y.closeSelection": "Fechar seleção",
280
+ "chat.a11y.collapseInviteLink": "Recolher convite via link",
281
+ "chat.a11y.dateFilter": "Filtro de data",
282
+ "chat.a11y.discardAudio": "Descartar áudio",
283
+ "chat.a11y.editGroupName": "Editar nome do grupo",
284
+ "chat.a11y.groupSections": "Seções do grupo",
285
+ "chat.a11y.inboxSections": "Seções da caixa de entrada",
286
+ "chat.a11y.memberActions": "Ações de {name}",
287
+ "chat.a11y.moreEmojis": "Mais emojis",
288
+ "chat.a11y.moreOptions": "Mais opções",
289
+ "chat.a11y.openImage": "Abrir imagem",
290
+ "chat.a11y.pauseAudio": "Pausar áudio",
291
+ "chat.a11y.pauseRecording": "Pausar gravação",
292
+ "chat.a11y.playAudio": "Reproduzir áudio",
293
+ "chat.a11y.reactWith": "Reagir com {emoji}",
294
+ "chat.a11y.removeOption": "Remover opção",
295
+ "chat.a11y.removePhrase": "Remover frase",
296
+ "chat.a11y.reply": "Responder",
297
+ "chat.a11y.reportGroup": "Denunciar grupo",
298
+ "chat.a11y.resumeRecording": "Retomar gravação",
299
+ "chat.a11y.search": "Buscar",
300
+ "chat.a11y.sendAudio": "Enviar áudio",
301
+ "chat.a11y.sendMedia": "Enviar mídia",
302
+ "chat.a11y.sendMessage": "Enviar mensagem",
303
+ "chat.a11y.viewOnceAbout": "Sobre visualização única",
304
+ "chat.a11y.waitingSend": "Aguardando envio",
305
+ "chat.action.add": "Adicionar",
306
+ "chat.action.addMembers": "Adicionar membros",
307
+ "chat.action.close": "Fechar",
308
+ "chat.action.copy": "Copiar",
309
+ "chat.action.cropImage": "Cortar imagem",
310
+ "chat.action.delete": "Excluir",
311
+ "chat.action.deleteForEveryone": "Excluir para ambos",
312
+ "chat.action.deleteForMe": "Excluir para mim",
313
+ "chat.action.deleteGroup": "Excluir grupo",
314
+ "chat.action.demoteAdmin": "Remover admin",
315
+ "chat.action.generateNew": "Gerar novo",
316
+ "chat.action.groupInfo": "Informações do grupo",
317
+ "chat.action.inviteViaLink": "Convidar via link",
318
+ "chat.action.learnMore": "Saber mais",
319
+ "chat.action.leave": "Sair",
320
+ "chat.action.mute": "Silenciar",
321
+ "chat.action.next": "Próximo",
322
+ "chat.action.promoteAdmin": "Tornar admin",
323
+ "chat.action.remove": "Remover",
324
+ "chat.action.removeFromGroup": "Remover do grupo",
325
+ "chat.action.removeMember": "Remover membro",
326
+ "chat.action.replace": "Trocar",
327
+ "chat.action.reply": "Responder",
328
+ "chat.action.report": "Denunciar",
329
+ "chat.action.revoke": "Revogar",
330
+ "chat.action.send": "Enviar",
331
+ "chat.action.sendLocation": "Enviar localização",
332
+ "chat.action.share": "Compartilhar",
333
+ "chat.action.shareAlbum": "Compartilhar álbum",
334
+ "chat.action.tryAgain": "Tentar de novo",
335
+ "chat.action.unmute": "Ativar som",
336
+ "chat.action.update": "Atualizar",
337
+ "chat.album.activeMany": "{count} álbuns ativos",
338
+ "chat.album.activeOne": "1 álbum ativo",
339
+ "chat.album.availableInChat": "Disponível dentro de uma conversa",
340
+ "chat.album.editTitle": "Editar álbum",
341
+ "chat.album.manage": "Gerenciar álbuns",
342
+ "chat.album.privateHint": "Crie, edite e compartilhe fotos privadas neste chat",
343
+ "chat.album.privateTitle": "Álbuns privados",
344
+ "chat.album.requestHintMine": "Quando liberarem, o álbum aparece aqui no chat.",
345
+ "chat.album.requestHintPeer": "Escolha um álbum para compartilhar com essa pessoa.",
346
+ "chat.album.requestPeerPrivate": "Pediu acesso ao álbum privado",
347
+ "chat.album.sectionHint": "Crie ou edite seus álbuns aqui antes de compartilhar no chat.",
348
+ "chat.album.stopSharing": "Parar de compartilhar ({count})",
349
+ "chat.audio.a11y.record": "Gravar áudio",
207
350
  "chat.audio.error.recordFail": "Falha ao gravar o áudio.",
351
+ "chat.audio.error.sendFail": "Não foi possível enviar o áudio.",
352
+ "chat.audio.error.startFail": "Não foi possível iniciar a gravação.",
208
353
  "chat.audio.error.unavailable": "Arquivo de áudio indisponível.",
354
+ "chat.audio.error.unavailableThrow": "Áudio indisponível",
355
+ "chat.audio.expoGoTitle": "Expo Go",
356
+ "chat.audio.micNeeded": "Precisamos do microfone para gravar mensagens de áudio.",
357
+ "chat.audio.pause": "Pausar",
358
+ "chat.audio.resume": "Retomar",
359
+ "chat.audio.shortBody": "Grave pelo menos meio segundo antes de enviar.",
360
+ "chat.audio.shortTitle": "Áudio curto",
209
361
  "chat.backup.restoreFail": "Não foi possível restaurar o backup.",
210
362
  "chat.backup.wrongPassword": "Senha de backup incorreta.",
211
363
  "chat.common.listPair": "{a} e {b}",
212
364
  "chat.common.someone": "Alguém",
213
365
  "chat.common.you": "Você",
366
+ "chat.create.aboutPlaceholder": "Sobre o grupo",
367
+ "chat.create.detailsSubtitle": "Nome, foto e descrição",
368
+ "chat.create.detailsTitle": "Detalhes do grupo",
369
+ "chat.create.emptyContacts": "Nenhum contato recente no inbox.",
370
+ "chat.create.emptySearch": "Ninguém encontrado com esse nome.",
371
+ "chat.create.error.createFail": "Não foi possível criar o grupo. Tente de novo.",
372
+ "chat.create.error.photoFail": "Não foi possível adicionar a foto. Tente de novo.",
373
+ "chat.create.namePlaceholder": "Ex.: Caçada noturna",
374
+ "chat.create.participantsIncludingYou": "{count} participantes (incluindo você)",
375
+ "chat.create.photoHint": "Toque na câmera para tirar ou escolher a imagem do grupo (opcional).",
376
+ "chat.create.searchPlaceholder": "Nome ou @handle",
377
+ "chat.create.selectHint": "Selecione pelo menos uma pessoa do inbox ou busque no Vibes.",
378
+ "chat.create.selectedCount": "{count} selecionados",
379
+ "chat.create.submit": "Criar grupo",
214
380
  "chat.date.today": "Hoje",
215
381
  "chat.date.yesterday": "Ontem",
382
+ "chat.dateFilter.apply": "Aplicar filtro",
383
+ "chat.dateFilter.clear": "Limpar filtro",
384
+ "chat.dateFilter.from": "De",
385
+ "chat.dateFilter.hint": "Filtra conversas pela data da última mensagem. Use o formato DD/MM/AAAA.",
386
+ "chat.dateFilter.placeholder": "DD/MM/AAAA",
387
+ "chat.dateFilter.title": "Filtrar por data",
388
+ "chat.dateFilter.to": "Até",
389
+ "chat.delete.title": "Excluir mensagem?",
390
+ "chat.emoji.title": "Emojis",
216
391
  "chat.empty.chats.title": "Nenhuma conversa ainda.",
217
392
  "chat.empty.flashes.hint": "Reações e sinais de interesse aparecem aqui.",
218
393
  "chat.empty.flashes.title": "Nenhum Flash ainda",
219
394
  "chat.empty.visits.hint": "Quando alguém abrir seu perfil, aparece aqui.",
220
395
  "chat.empty.visits.title": "Ninguém visualizou seu perfil nas últimas 24h",
396
+ "chat.emptyDetail.subtitle": "Escolha uma conversa na lista ao lado para começar.",
397
+ "chat.emptyDetail.title": "Selecione um chat",
221
398
  "chat.fab.closed": "Criar no Chat",
222
399
  "chat.fab.newGroup": "Novo grupo",
400
+ "chat.file.a11yDownload": "Baixar {name}",
401
+ "chat.file.a11yOpen": "Abrir {name}",
402
+ "chat.file.downloading": "Baixando…",
223
403
  "chat.file.error.downloadFailed": "Não foi possível baixar o arquivo.",
224
404
  "chat.file.error.notDownloaded": "Arquivo ainda não foi baixado.",
405
+ "chat.file.error.openFail": "Não foi possível abrir o arquivo.",
225
406
  "chat.file.error.unavailable": "Arquivo indisponível.",
407
+ "chat.file.openDetail": "Escolha baixar ou baixar e abrir no dispositivo.",
226
408
  "chat.file.openDialogTitle": "Abrir arquivo",
409
+ "chat.file.openDownload": "Baixar",
410
+ "chat.file.openDownloadAndOpen": "Baixar e abrir",
411
+ "chat.file.tapDownload": "Toque para baixar",
412
+ "chat.file.tapOpen": "Toque para abrir",
227
413
  "chat.filter.all": "Todas",
228
414
  "chat.filter.nearby": "Próximos",
229
415
  "chat.filter.online": "Online",
230
416
  "chat.filter.received": "Recebidas",
231
417
  "chat.filter.sent": "Enviadas",
232
418
  "chat.filter.unread": "Não lidas",
419
+ "chat.group.addDescription": "Adicionar descrição",
420
+ "chat.group.addMembers.empty": "Nenhum contato disponível para adicionar.",
421
+ "chat.group.addMembers.errorAdd": "Não foi possível adicionar. Verifique se você é admin.",
422
+ "chat.group.addMembers.errorLoad": "Não foi possível carregar o grupo.",
423
+ "chat.group.addMembers.selectHint": "Selecione pessoas para entrar no grupo.",
424
+ "chat.group.addMembers.title": "Adicionar membros",
425
+ "chat.group.deleteBody": "Isso apaga o grupo e o histórico para todos. Esta ação não pode ser desfeita.",
426
+ "chat.group.deleteTitle": "Excluir grupo",
427
+ "chat.group.demoteBody": "Remover permissão de admin de {name}?",
428
+ "chat.group.description": "Descrição",
429
+ "chat.group.descriptionPlaceholder": "Descrição (opcional)",
430
+ "chat.group.documentsTab": "Documentos",
431
+ "chat.group.editTitle": "Editar grupo",
432
+ "chat.group.emptyDocuments": "Nenhum documento neste grupo ainda.",
433
+ "chat.group.emptyLinks": "Nenhum link compartilhado neste grupo ainda.",
434
+ "chat.group.emptyMedia": "Nenhuma foto, vídeo ou GIF neste grupo ainda.",
435
+ "chat.group.error.deleteFail": "Não foi possível excluir o grupo.",
436
+ "chat.group.error.demoteFail": "Não foi possível remover o admin.",
437
+ "chat.group.error.leaveFail": "Não foi possível sair do grupo. Tente de novo.",
438
+ "chat.group.error.muteFail": "Não foi possível atualizar o silêncio do grupo.",
439
+ "chat.group.error.photoUpdateFail": "Não foi possível atualizar a foto do grupo.",
440
+ "chat.group.error.promoteFail": "Não foi possível tornar admin.",
441
+ "chat.group.error.removeMemberFail": "Não foi possível remover o membro.",
442
+ "chat.group.error.updateFail": "Não foi possível atualizar o grupo.",
233
443
  "chat.group.header.members": "{count} membros",
234
444
  "chat.group.header.onlineAndMembers": "{online} online · {count} membros",
445
+ "chat.group.infoFallback": "Informações",
446
+ "chat.group.infoSubtitle": "Grupo · {count} participantes",
447
+ "chat.group.leaveBody": "Você deixará de receber mensagens deste grupo.",
448
+ "chat.group.leaveTitle": "Sair do grupo",
449
+ "chat.group.linksTab": "Links",
450
+ "chat.group.mediaTab": "Mídias",
451
+ "chat.group.membersTab": "Membros",
452
+ "chat.group.namePlaceholder": "Nome do grupo",
453
+ "chat.group.nameRequiredBody": "Informe um nome para o grupo.",
454
+ "chat.group.nameRequiredTitle": "Nome obrigatório",
455
+ "chat.group.participantsCount": "{count} participantes",
235
456
  "chat.group.photo.error.mustBeImage": "A foto do grupo precisa ser uma imagem.",
457
+ "chat.group.photoPromptTitle": "Foto do grupo",
458
+ "chat.group.promoteBody": "Conceder permissão de admin a {name}?",
459
+ "chat.group.removeMemberBody": "Remover {name} do grupo?",
460
+ "chat.group.role.admin": "Admin",
461
+ "chat.group.role.owner": "Dono",
462
+ "chat.group.searchMembers": "Buscar membros",
236
463
  "chat.group.system.created": "Grupo foi criado",
237
464
  "chat.group.system.createdTitled": "Grupo \"{title}\" foi criado",
238
465
  "chat.group.system.memberJoined": "Novo membro {name} entrou no grupo",
@@ -244,20 +471,95 @@ export const PT_BR_MESSAGES = {
244
471
  "chat.group.system.renamed": "O grupo foi renomeado para {title}",
245
472
  "chat.group.system.renamedBy": "{name} alterou o nome do grupo para {title}",
246
473
  "chat.group.system.updated": "Atualização do grupo",
474
+ "chat.group.tab.members": "Membros",
247
475
  "chat.groupInvite.shareMessage": "Entre no grupo \"{title}\" no Proulr\n{url}",
476
+ "chat.icebreakers.hint": "Toque em uma sugestão para começar a conversa",
477
+ "chat.icebreakers.title": "Quebra-gelo",
248
478
  "chat.inbox.distanceHidden": "Distância oculta",
249
479
  "chat.inbox.distanceUnavailable": "Distância indisponível",
480
+ "chat.inbox.noMessagesYet": "Nenhuma mensagem ainda",
481
+ "chat.inbox.opening": "Abrindo…",
482
+ "chat.input.placeholder": "Mensagem",
483
+ "chat.invite.enterToAccept": "Entre para aceitar o convite",
484
+ "chat.invite.error.expired": "Este convite expirou.",
485
+ "chat.invite.error.invalid": "Convite inválido ou indisponível.",
486
+ "chat.invite.error.joinFail": "Não foi possível entrar no grupo. Tente de novo.",
487
+ "chat.invite.error.joinTitle": "Não foi possível entrar",
488
+ "chat.invite.error.limit": "Este convite atingiu o limite de usos.",
489
+ "chat.invite.error.needLogin": "Faça login para entrar no grupo.",
490
+ "chat.invite.error.revoked": "Este convite foi revogado.",
491
+ "chat.invite.error.tryLater": "Tente de novo mais tarde.",
492
+ "chat.invite.goToChats": "Ir para conversas",
493
+ "chat.invite.hasAccount": "Já tenho conta",
494
+ "chat.invite.joining": "Entrando no grupo…",
250
495
  "chat.invite.subtitle": "Entrando no grupo",
251
496
  "chat.invite.title": "Convite",
497
+ "chat.inviteBubble.cta": "Convite para entrar no grupo",
498
+ "chat.inviteBubble.title": "Convite para grupo",
499
+ "chat.inviteLink.copiedBody": "Cole em qualquer conversa ou app.",
500
+ "chat.inviteLink.copiedBodyShare": "Cole no WhatsApp ou em qualquer conversa.",
501
+ "chat.inviteLink.copiedTitle": "Link copiado",
502
+ "chat.inviteLink.error.copy": "Não foi possível copiar o link.",
503
+ "chat.inviteLink.error.load": "Não foi possível carregar o link de convite.",
504
+ "chat.inviteLink.error.regenerate": "Não foi possível gerar um novo link.",
505
+ "chat.inviteLink.error.revoke": "Não foi possível revogar o link.",
506
+ "chat.inviteLink.error.share": "Não foi possível compartilhar o link.",
507
+ "chat.inviteLink.newToastBody": "O convite anterior foi invalidado.",
508
+ "chat.inviteLink.newToastTitle": "Novo link",
509
+ "chat.inviteLink.regenerateBody": "O link atual deixa de funcionar. Deseja continuar?",
510
+ "chat.inviteLink.regenerateTitle": "Gerar novo link",
511
+ "chat.inviteLink.revokeBody": "Quem tiver o link não poderá mais entrar pelo convite.",
512
+ "chat.inviteLink.revokeTitle": "Revogar link",
513
+ "chat.inviteLink.revokedBody": "O convite foi desativado.",
514
+ "chat.inviteLink.revokedTitle": "Link revogado",
515
+ "chat.location.current": "Localização atual",
516
+ "chat.location.error.load": "Não foi possível carregar sua localização.",
517
+ "chat.location.error.unavailable": "Não foi possível obter sua localização atual.",
518
+ "chat.location.lookingUp": "Buscando endereço…",
519
+ "chat.location.refreshing": "Atualizando…",
520
+ "chat.location.shareHint": "Compartilhe onde você está agora nesta conversa.",
521
+ "chat.location.title": "Enviar localização",
522
+ "chat.location.unavailable": "Localização indisponível.",
252
523
  "chat.media.albumRevokedNamed": "Álbum removido: {name}",
253
524
  "chat.media.audio": "Áudio",
525
+ "chat.media.captionPlaceholder": "Adicione uma legenda...",
526
+ "chat.media.error.createAlbum": "Não foi possível criar o álbum.",
527
+ "chat.media.error.cropOpen": "Não foi possível abrir o corte.",
254
528
  "chat.media.error.readImage": "Não foi possível ler a imagem.",
255
529
  "chat.media.error.readSelected": "Não foi possível ler a mídia selecionada.",
530
+ "chat.media.error.select": "Não foi possível selecionar a mídia.",
531
+ "chat.media.error.sendDoc": "Não foi possível enviar o documento.",
532
+ "chat.media.error.sendMedia": "Não foi possível enviar a mídia.",
533
+ "chat.media.error.stopSharing": "Não foi possível parar de compartilhar.",
256
534
  "chat.media.file": "Arquivo",
257
535
  "chat.media.gif": "GIF",
258
536
  "chat.media.location": "Localização",
259
537
  "chat.media.photo": "Foto",
538
+ "chat.media.sendNow": "Enviar agora",
539
+ "chat.media.title": "Mídia",
260
540
  "chat.media.video": "Vídeo",
541
+ "chat.media.videoSent": "Vídeo enviado",
542
+ "chat.member.fallback": "membro",
543
+ "chat.member.thisMember": "este membro",
544
+ "chat.message.blockedProfile": "Perfil bloqueado.",
545
+ "chat.message.e2eBanner": "Mensagens com criptografia ponta-a-ponta",
546
+ "chat.message.invalidConversation": "Conversa inválida ou link incompleto.",
547
+ "chat.message.locationShared": "Localização compartilhada",
548
+ "chat.message.openMap": "Toque para abrir no mapa",
549
+ "chat.message.openTap": "Toque para abrir",
550
+ "chat.message.status.delivered": "Entregue",
551
+ "chat.message.status.read": "Visualizada",
552
+ "chat.message.status.sent": "Enviada",
553
+ "chat.poll.addOption": "Adicionar opção",
554
+ "chat.poll.newTitle": "Nova enquete",
555
+ "chat.poll.optionPlaceholder": "Opção {n}",
556
+ "chat.poll.optionsLabel": "Opções",
557
+ "chat.poll.questionLabel": "Pergunta",
558
+ "chat.poll.questionPlaceholder": "Faça uma pergunta…",
559
+ "chat.poll.send": "Enviar enquete",
560
+ "chat.poll.validation": "Informe a pergunta e pelo menos 2 opções.",
561
+ "chat.poll.votesMany": "{count} votos",
562
+ "chat.poll.votesOne": "1 voto",
261
563
  "chat.presence.offline": "Offline",
262
564
  "chat.presence.online": "Online",
263
565
  "chat.presence.recent": "Ativo recentemente",
@@ -277,21 +579,62 @@ export const PT_BR_MESSAGES = {
277
579
  "chat.preview.senderPrefix": "{name}: ",
278
580
  "chat.preview.storyReaction": "Reagiu ao story",
279
581
  "chat.preview.storyReply": "Resposta ao story",
582
+ "chat.reaction.errorSave": "Não foi possível salvar a reação. Tente de novo.",
583
+ "chat.reaction.title": "Reação",
584
+ "chat.report.errorMessage": "Não foi possível denunciar esta mensagem.",
585
+ "chat.report.errorSend": "Não foi possível enviar a denúncia agora.",
586
+ "chat.report.groupBody": "Por que você está denunciando este grupo?",
587
+ "chat.report.groupTitle": "Denunciar grupo",
588
+ "chat.report.harassment": "Assédio",
589
+ "chat.report.illegal": "Conteúdo ilegal",
590
+ "chat.report.messageBody": "Por que você está denunciando esta mensagem?",
591
+ "chat.report.other": "Outro",
592
+ "chat.report.sentBody": "Obrigado. Vamos analisar.",
593
+ "chat.report.sentBodyGroup": "Obrigado. Vamos analisar o grupo.",
594
+ "chat.report.sentTitle": "Denúncia enviada",
595
+ "chat.report.spam": "Spam",
596
+ "chat.savedPhrases.empty": "Nenhuma frase salva ainda.",
597
+ "chat.savedPhrases.errorLoad": "Não foi possível carregar suas frases salvas.",
598
+ "chat.savedPhrases.errorRemove": "Não foi possível remover a frase.",
599
+ "chat.savedPhrases.errorSave": "Não foi possível salvar a frase.",
280
600
  "chat.savedPhrases.grabDrink": "Vamos tomar algo?",
281
601
  "chat.savedPhrases.greeting": "Oi! Tudo bem?",
282
602
  "chat.savedPhrases.letsTalk": "E aí, bora conversar?",
283
603
  "chat.savedPhrases.likedProfile": "Adorei seu perfil!",
284
604
  "chat.savedPhrases.nearby": "Tô por perto, quer se encontrar?",
605
+ "chat.savedPhrases.placeholder": "Nova frase...",
606
+ "chat.savedPhrases.subtitle": "Toque para enviar ou adicione novas frases rápidas.",
607
+ "chat.savedPhrases.title": "Frases salvas",
285
608
  "chat.savedPhrases.whatTime": "Que horas você pode?",
609
+ "chat.scrollToBottom.a11y": "Voltar para o fim da conversa",
610
+ "chat.scrollToBottom.a11yUnread": "{count} mensagens novas. Voltar para o fim da conversa.",
286
611
  "chat.search.placeholder": "Buscar conversas…",
287
612
  "chat.segment.chats": "Chats",
288
613
  "chat.segment.flashes": "Flashes",
289
614
  "chat.segment.visits": "Visitas",
615
+ "chat.story.expired": "Story expirado",
616
+ "chat.story.reacted": "Você reagiu ao story",
617
+ "chat.story.reactedPeer": "Reagiu ao seu story",
618
+ "chat.story.replied": "Você respondeu ao story",
619
+ "chat.story.repliedPeer": "Respondeu ao seu story",
290
620
  "chat.storyReply.peerKeyUnavailable": "Chave pública do destinatário indisponível.",
291
621
  "chat.thread.decryptFailed": "[não foi possível decifrar]",
292
622
  "chat.thread.fallbackGroup": "Grupo",
293
623
  "chat.thread.fallbackName": "Conversa",
624
+ "chat.thread.muteOff": "Notificações permitidas de novo.",
625
+ "chat.thread.muteOn": "Notificações silenciadas desta pessoa.",
626
+ "chat.toast.done": "Pronto",
627
+ "chat.viewOnce.delete": "Apagar",
628
+ "chat.viewOnce.infoBody": "Fotos, vídeos e áudios de visualização única desaparecem da conversa depois que a pessoa abre o arquivo uma vez.",
629
+ "chat.viewOnce.moreInfoBody": "Você tem 14 dias para abrir. Não é possível encaminhar, salvar nem compartilhar. Após abrir, a mídia some da conversa.",
630
+ "chat.viewOnce.openFail": "Não foi possível abrir esta mídia de visualização única.",
631
+ "chat.viewOnce.pause": "Pausar",
632
+ "chat.viewOnce.play": "Reproduzir",
633
+ "chat.viewOnce.title": "Visualização única",
294
634
  "common.active": "Ativo",
635
+ "common.ad": "Anúncio",
636
+ "common.album.create": "Criar álbum",
637
+ "common.album.createA11y": "Criar álbum",
295
638
  "common.album.defaultName": "Meu álbum",
296
639
  "common.album.expiry10m": "10 minutos",
297
640
  "common.album.expiry1h": "1 hora",
@@ -304,8 +647,11 @@ export const PT_BR_MESSAGES = {
304
647
  "common.album.maxAlbums": "Você pode ter no máximo {max} álbuns.",
305
648
  "common.album.maxPhotos": "Máximo de {max} fotos por álbum.",
306
649
  "common.album.maxVideos": "Máximo de {max} vídeo por álbum.",
650
+ "common.album.new": "Novo",
307
651
  "common.app": "App",
308
652
  "common.attention": "Atenção",
653
+ "common.back": "Voltar",
654
+ "common.camera": "Câmera",
309
655
  "common.camera.notReady": "A câmera ainda não está pronta. Aguarde um instante.",
310
656
  "common.camera.photoSaveFail": "Não foi possível salvar a foto.",
311
657
  "common.camera.streamUnavailable": "Stream da câmera indisponível neste navegador.",
@@ -318,17 +664,28 @@ export const PT_BR_MESSAGES = {
318
664
  "common.cancel": "Cancelar",
319
665
  "common.chat": "Chat",
320
666
  "common.chats": "Chats",
667
+ "common.close": "Fechar",
321
668
  "common.confirm": "Confirmar",
669
+ "common.delete": "Excluir",
670
+ "common.document": "Documento",
671
+ "common.emDash": "—",
322
672
  "common.error": "Erro",
323
673
  "common.flashes": "Flashes",
674
+ "common.gallery": "Galeria",
324
675
  "common.general": "Geral",
325
676
  "common.huntConnectDiscover": "Caçar · Conectar · Descobrir",
326
677
  "common.id": "ID",
678
+ "common.loading": "Carregando…",
327
679
  "common.media": "Mídia",
328
680
  "common.media.readFail": "Não foi possível ler a mídia selecionada.",
681
+ "common.member": "Membro",
682
+ "common.no": "Não",
329
683
  "common.notifications": "Notificações",
330
684
  "common.ops": "Ops",
331
685
  "common.options": "Opções",
686
+ "common.permissions": "Permissões",
687
+ "common.photo": "Foto",
688
+ "common.poll": "Enquete",
332
689
  "common.privacy": "Privacidade",
333
690
  "common.purchase.cancelled": "Compra cancelada.",
334
691
  "common.purchase.genericFail": "Não foi possível concluir a compra. Tente novamente em instantes.",
@@ -344,8 +701,12 @@ export const PT_BR_MESSAGES = {
344
701
  "common.purchase.unavailableNotConfigured": "Compras in-app indisponíveis — configure EXPO_PUBLIC_REVENUECAT_* neste build.",
345
702
  "common.purchase.unavailableRuntime": "Compras in-app disponíveis apenas no app iOS/Android (build nativo).",
346
703
  "common.purchase.unavailableSdkMissing": "SDK de compras não instalado. Adicione react-native-purchases e gere um novo build nativo.",
704
+ "common.reload": "Recarregar",
705
+ "common.remove": "Remover",
706
+ "common.retry": "Tentar novamente",
347
707
  "common.save": "Salvar",
348
708
  "common.saved": "Salvo",
709
+ "common.search": "Buscar",
349
710
  "common.security": "Segurança",
350
711
  "common.social": "Social",
351
712
  "common.soon": "Em breve",
@@ -353,7 +714,15 @@ export const PT_BR_MESSAGES = {
353
714
  "common.tagline": "Proulr — Caçar · Conectar · Descobrir",
354
715
  "common.tryAgain": "Tente novamente.",
355
716
  "common.version": "Versão",
717
+ "common.video": "Vídeo",
718
+ "common.yes": "Sim",
719
+ "discover.a11y.blurredProfile": "Caçar em outra região para ver este perfil",
720
+ "discover.a11y.centerLocation": "Centralizar na minha localização",
721
+ "discover.a11y.searchPlace": "Buscar local",
356
722
  "discover.browse.defaultLabel": "Região selecionada",
723
+ "discover.browse.huntHere": "Caçar aqui",
724
+ "discover.browse.infoBanner": "Modo Caçar: você vê quem está na região escolhida, mas ninguém de lá consegue te ver. Sua localização real não muda.",
725
+ "discover.browse.searchPlaceholder": "Buscar cidade, bairro ou endereço",
357
726
  "discover.browse.subtitle": "Escolher região para caçar",
358
727
  "discover.empty.creators": "Nenhum criador por perto agora.",
359
728
  "discover.empty.default": "Ninguém por perto ainda.",
@@ -375,6 +744,7 @@ export const PT_BR_MESSAGES = {
375
744
  "discover.hunt.changeRegion": "Mudar região",
376
745
  "discover.hunt.otherRegion": "outra região",
377
746
  "discover.hunt.useMyLocation": "Usar minha localização",
747
+ "discover.position.all": "Todas as posições",
378
748
  "discover.position.ativo": "Ativo",
379
749
  "discover.position.passivo": "Passivo",
380
750
  "discover.position.preferNot": "Prefiro não dizer",
@@ -399,13 +769,53 @@ export const PT_BR_MESSAGES = {
399
769
  "flash.msg.flash": "te enviou um Flash",
400
770
  "flash.msg.heart": "curtiu você",
401
771
  "flash.msg.wave": "mandou um oi",
772
+ "flash.picker.forSomeone": "para {name}",
773
+ "flash.picker.hint": "Uma reação por pessoa a cada 24 horas",
774
+ "flash.picker.title": "Enviar reação",
402
775
  "flash.reaction.chat": "Conversar",
403
776
  "flash.reaction.eyes": "Interesse",
404
777
  "flash.reaction.fire": "Quente",
405
778
  "flash.reaction.flash": "Flash",
406
779
  "flash.reaction.heart": "Curti",
407
780
  "flash.reaction.wave": "Oi",
781
+ "hybrid.camera.a11y.close": "Fechar câmera",
782
+ "hybrid.camera.a11y.flip": "Alternar câmera",
783
+ "hybrid.camera.a11y.record": "Gravar vídeo",
784
+ "hybrid.camera.a11y.stop": "Parar gravação",
785
+ "hybrid.camera.a11y.takePhoto": "Tirar foto",
786
+ "hybrid.camera.allowCamera": "Permitir câmera",
787
+ "hybrid.camera.micBanner": "Permita o microfone para gravar vídeo.",
788
+ "hybrid.camera.micRequired": "Permissão de microfone necessária para gravar.",
789
+ "hybrid.camera.openSettings": "Abrir configurações",
790
+ "hybrid.camera.openSettingsBody": "Abra as configurações do aparelho e permita câmera e microfone para o Proulr.",
791
+ "hybrid.camera.permissionBody": "Para capturar foto ou vídeo, permita o acesso à câmera",
792
+ "hybrid.camera.permissionMicSuffix": " e ao microfone",
793
+ "hybrid.camera.permissionTitle": "Permissão de câmera necessária",
794
+ "hybrid.camera.preparingVideo": "Preparando vídeo...",
795
+ "hybrid.camera.savingPhoto": "Salvando foto...",
796
+ "hybrid.camera.settingsShort": "Configurações",
797
+ "hybrid.camera.startFail": "Não foi possível iniciar a câmera.",
798
+ "hybrid.camera.takePhotoFail": "Não foi possível tirar a foto.",
799
+ "hybrid.camera.videoUnavailable": "Gravação de vídeo indisponível neste aparelho.",
408
800
  "hybrid.chatThread.fallbackTitle": "Conversa",
801
+ "hybrid.crop.adjustDiscover": "Ajustar foto do Caçar",
802
+ "hybrid.crop.areaInvalid": "Área de corte inválida. Ajuste e tente de novo.",
803
+ "hybrid.crop.fail": "Não foi possível cortar a imagem.",
804
+ "hybrid.crop.hint": "Arraste e pinça para enquadrar",
805
+ "hybrid.crop.hintTwoFingers": "Arraste e pinça com dois dedos para enquadrar",
806
+ "hybrid.crop.imageMissing": "Imagem não encontrada.",
807
+ "hybrid.crop.loadFail": "Não foi possível carregar a imagem.",
808
+ "hybrid.crop.needAdjust": "Ajuste a área de corte e tente de novo.",
809
+ "hybrid.map.keyMissing": "Chave do Google Maps não configurada.",
810
+ "hybrid.map.loadFail": "Não foi possível carregar o mapa.",
811
+ "hybrid.map.mountFail": "Não foi possível montar o mapa.",
812
+ "hybrid.media.a11y.closeFullscreen": "Fechar visualização",
813
+ "hybrid.media.a11y.closeVideo": "Fechar vídeo",
814
+ "hybrid.media.a11y.playVideo": "Reproduzir vídeo",
815
+ "hybrid.story.a11y.cancelDelete": "Cancelar exclusão",
816
+ "hybrid.story.deleteConfirm": "Este story será removido permanentemente.",
817
+ "hybrid.story.loadMediaFail": "Não foi possível carregar a mídia.",
818
+ "hybrid.story.noneAvailable": "Sem stories disponíveis.",
409
819
  "hybrid.unavailable.album": "Álbum indisponível.",
410
820
  "hybrid.unavailable.chatThread": "Conversa indisponível — volte e tente de novo.",
411
821
  "hybrid.unavailable.comments": "Comentários indisponíveis.",
@@ -415,6 +825,17 @@ export const PT_BR_MESSAGES = {
415
825
  "hybrid.unavailable.profileReport": "Perfil indisponível para denúncia.",
416
826
  "hybrid.unavailable.settingsHome": "Atualize o app para ver as configurações.",
417
827
  "hybrid.unavailable.socialProfile": "Perfil social indisponível.",
828
+ "profile.a11y.back": "Voltar",
829
+ "profile.a11y.changeVibesPhoto": "Trocar foto no Vibes",
830
+ "profile.a11y.close": "Fechar",
831
+ "profile.a11y.closeTip": "Fechar dica",
832
+ "profile.a11y.dismiss": "Dispensar",
833
+ "profile.a11y.editTravel": "Editar viagem",
834
+ "profile.a11y.moreActions": "Mais ações",
835
+ "profile.a11y.nextProfile": "Próximo perfil",
836
+ "profile.a11y.previousProfile": "Perfil anterior",
837
+ "profile.a11y.quickMessage": "Mensagem rápida",
838
+ "profile.a11y.viewFullPhoto": "Ver foto em tela cheia",
418
839
  "profile.ageGate.mail.accountSection": "--- Dados da conta ---",
419
840
  "profile.ageGate.mail.descriptionSection": "--- Descrição do ocorrido ---",
420
841
  "profile.ageGate.mail.email": "E-mail: {email}",
@@ -438,9 +859,62 @@ export const PT_BR_MESSAGES = {
438
859
  "profile.ageVerify.noFace": "Não detectamos um rosto no vídeo. Tente novamente com boa iluminação.",
439
860
  "profile.ageVerify.notAdult": "Não foi possível confirmar que você tem 18 anos ou mais.",
440
861
  "profile.ageVerify.serviceUnavailable": "O serviço de verificação está sobrecarregado ou reiniciando. Aguarde alguns segundos e tente de novo.",
862
+ "profile.album.accessPending": "Pedido de álbum enviado",
863
+ "profile.album.accessRequestFail": "Não foi possível pedir acesso ao álbum.",
864
+ "profile.album.locked": "Álbum bloqueado",
865
+ "profile.album.lockedHint": "Álbum privado — peça acesso",
866
+ "profile.album.pendingHint": "Aguardando liberação do álbum privado",
867
+ "profile.album.pendingShort": "Pedido enviado",
868
+ "profile.album.private": "Álbum privado",
869
+ "profile.album.requestAccess": "Pedir acesso ao álbum",
870
+ "profile.album.requestSentBody": "Avisamos no chat.",
871
+ "profile.album.sending": "Enviando…",
872
+ "profile.album.sharedHint": "Álbuns compartilhados com você",
873
+ "profile.album.viewAlbums": "Ver álbuns",
874
+ "profile.albums.activeInChat": "Ativo neste chat",
875
+ "profile.albums.addMediaFail": "Não foi possível adicionar a mídia.",
876
+ "profile.albums.addPhoto": "Adicionar foto",
877
+ "profile.albums.addVideo": "Adicionar vídeo",
878
+ "profile.albums.createA11y": "Criar álbum",
879
+ "profile.albums.createFail": "Não foi possível criar o álbum.",
880
+ "profile.albums.createFirst": "Criar primeiro álbum",
881
+ "profile.albums.createNew": "Novo álbum",
882
+ "profile.albums.delete": "Excluir álbum",
883
+ "profile.albums.deleteConfirm": "Esta ação não pode ser desfeita.",
884
+ "profile.albums.deleteFail": "Não foi possível excluir o álbum.",
885
+ "profile.albums.deleteTitle": "Excluir álbum",
886
+ "profile.albums.editPrivateSubtitle": "Editar álbum privado",
887
+ "profile.albums.editSubtitle": "Editar álbum",
888
+ "profile.albums.emptyEditor": "Nenhum item ainda. Adicione fotos ou um vídeo privado.",
889
+ "profile.albums.emptyListHint": "Crie coleções privadas de fotos e vídeos para compartilhar no chat.",
890
+ "profile.albums.emptyListTitle": "Nenhum álbum ainda",
891
+ "profile.albums.emptyShare": "Álbum vazio",
892
+ "profile.albums.emptyShareBody": "Adicione fotos ou vídeos antes de compartilhar.",
893
+ "profile.albums.emptyViewer": "Este álbum está vazio ou indisponível.",
894
+ "profile.albums.expiryHint": "Por quanto tempo {name} ficará visível neste chat?",
895
+ "profile.albums.expiryTitle": "Tempo de acesso",
441
896
  "profile.albums.fallbackName": "Álbum",
897
+ "profile.albums.limits": "{photos}/{maxPhotos} fotos · {videos}/{maxVideos} vídeo",
898
+ "profile.albums.mediaUnavailable": "Mídia indisponível",
899
+ "profile.albums.nameLabel": "Nome do álbum",
900
+ "profile.albums.nextPhoto": "Próxima foto",
901
+ "profile.albums.optionsA11y": "Opções do álbum",
902
+ "profile.albums.previousPhoto": "Foto anterior",
903
+ "profile.albums.removeFail": "Não foi possível remover o item.",
904
+ "profile.albums.removeItemBody": "Deseja remover este item do álbum?",
905
+ "profile.albums.removeItemTitle": "Remover item",
906
+ "profile.albums.resend": "Reenviar álbum",
907
+ "profile.albums.saveNameFail": "Não foi possível salvar o nome.",
908
+ "profile.albums.sectionCount": "Álbuns ({count}/{max})",
909
+ "profile.albums.send": "Enviar álbum",
910
+ "profile.albums.shareChat": "Compartilhar no chat",
911
+ "profile.albums.shareFail": "Não foi possível compartilhar o álbum.",
912
+ "profile.albums.sharing": "Compartilhando",
913
+ "profile.albums.stopShare": "Parar de compartilhar",
914
+ "profile.albums.stopShareFail": "Não foi possível parar de compartilhar.",
442
915
  "profile.albums.subtitle": "Coleções privadas de fotos e vídeos",
443
916
  "profile.albums.title": "Meus álbuns",
917
+ "profile.albums.videoInAlbum": "Vídeo no álbum",
444
918
  "profile.attribute.bodyHair": "Pelo corporal",
445
919
  "profile.attribute.bodyType": "Porte físico",
446
920
  "profile.attribute.ethnicity": "Etnia",
@@ -464,10 +938,51 @@ export const PT_BR_MESSAGES = {
464
938
  "profile.completion.reminderBody": "Perfis completos aparecem mais no Caçar e recebem mais Flashes.",
465
939
  "profile.completion.reminderTitle": "Complete seu perfil",
466
940
  "profile.fallback.someone": "Alguém",
941
+ "profile.field.aboutMe": "SOBRE MIM",
942
+ "profile.field.aboutYou": "SOBRE VOCÊ",
943
+ "profile.field.acceptsExplicit": "Aceita conteúdo explícito",
944
+ "profile.field.communities": "Comunidades",
945
+ "profile.field.currentCity": "CIDADE ATUAL",
946
+ "profile.field.externalLink": "LINK EXTERNO",
947
+ "profile.field.gender": "GÊNERO",
948
+ "profile.field.hivStatus": "Status HIV",
949
+ "profile.field.hivStatusVisible": "Mostrar status no perfil",
950
+ "profile.field.interests": "INTERESSES (separados por vírgula)",
951
+ "profile.field.interestsLabel": "Interesses",
952
+ "profile.field.lastTest": "Último exame",
953
+ "profile.field.lookingFor": "EM BUSCA DE",
954
+ "profile.field.lookingForSelect": "Em busca de",
955
+ "profile.field.myInterests": "MEUS INTERESSES (separados por vírgula)",
956
+ "profile.field.myTags": "MINHAS TAGS (separadas por vírgula)",
957
+ "profile.field.myTribes": "Minhas tribos",
958
+ "profile.field.position": "POSIÇÃO",
959
+ "profile.field.precautions": "Precauções",
960
+ "profile.field.sexPractices": "Práticas de sexo",
961
+ "profile.field.showAge": "Mostrar idade no perfil",
962
+ "profile.field.showPosition": "Mostrar posição no perfil",
963
+ "profile.field.showTribes": "Mostrar tribos no perfil",
964
+ "profile.field.tags": "TAGS (separadas por vírgula)",
965
+ "profile.field.travelMode": "Modo viagem",
966
+ "profile.field.tribesLiked": "Tribos que curto",
967
+ "profile.field.vaccines": "Vacinas",
968
+ "profile.field.whatIDo": "O QUE VOCÊ FAZ",
969
+ "profile.field.whatIDoSelf": "O QUE EU FAÇO",
970
+ "profile.handle.available": "@ disponível",
971
+ "profile.handle.checking": "Verificando disponibilidade…",
972
+ "profile.handle.hintShort": "3–30 caracteres: letras minúsculas, números e _",
467
973
  "profile.handle.invalidFormat": "O @ deve ter 3–30 caracteres (letras minúsculas, números e _).",
974
+ "profile.handle.placeholder": "seu_handle",
468
975
  "profile.handle.rateLimited": "Você só pode trocar o @ a cada 30 dias.",
469
976
  "profile.handle.reserved": "Esse @ é reservado e não pode ser usado.",
977
+ "profile.handle.reservedShort": "Esse @ é reservado",
470
978
  "profile.handle.taken": "Esse @ já está em uso por outra pessoa.",
979
+ "profile.handle.takenShort": "Esse @ já está em uso",
980
+ "profile.handle.vibesOnlyHint": "Seu @ aparece só no Vibes, nunca no Caçar. Pode ser trocado a cada 30 dias.",
981
+ "profile.hint.photosHoldToRemove": "Segure uma foto para remover. A primeira é a principal.",
982
+ "profile.hint.profileLink": "Para criadores: um link externo com destaque no seu perfil Caçar.",
983
+ "profile.hint.residenceCity": "Onde você fica hoje. Depois atualizamos pela cidade em que você mais permaneceu nos últimos 30 dias.",
984
+ "profile.hint.residenceCitySeed": "Seed inicial para novos usuários. Com o uso do app, atualizamos pela cidade em que você mais permaneceu nos últimos 30 dias.",
985
+ "profile.hint.testReminderPrivate": "O lembrete é privado e chega como notificação local no seu aparelho.",
471
986
  "profile.moderation.block": "Bloquear perfil",
472
987
  "profile.moderation.hide": "Ocultar da grade",
473
988
  "profile.moderation.mute": "Silenciar notificações",
@@ -598,13 +1113,68 @@ export const PT_BR_MESSAGES = {
598
1113
  "profile.photo.add": "Adicionar foto",
599
1114
  "profile.photo.addPromptBody": "Perfis com foto recebem muito mais Flashes.",
600
1115
  "profile.photo.addPromptTitle": "Que tal uma foto?",
1116
+ "profile.photo.change": "Trocar foto",
601
1117
  "profile.photo.continueWithout": "Continuar sem foto",
602
1118
  "profile.photo.huntTitle": "Foto do Caçar",
1119
+ "profile.photo.primaryBadge": "principal",
603
1120
  "profile.photo.readError": "Não foi possível ler a imagem.",
604
1121
  "profile.photo.sourceCamera": "Câmera",
605
1122
  "profile.photo.sourceMessage": "Como deseja adicionar a imagem?",
606
1123
  "profile.photo.sourceTitle": "Foto de perfil",
607
1124
  "profile.photo.vibesTitle": "Foto do Vibes",
1125
+ "profile.placeholder.aboutMe": "Fale um pouco sobre você...",
1126
+ "profile.placeholder.cityExample": "Ex.: São Paulo",
1127
+ "profile.placeholder.displayName": "Como quer ser chamado",
1128
+ "profile.placeholder.displayNameProfile": "Como você aparece no perfil",
1129
+ "profile.placeholder.externalLink": "https://seu-link.com",
1130
+ "profile.placeholder.heightCm": "Altura (cm)",
1131
+ "profile.placeholder.interests": "cinema, trilha, culinária",
1132
+ "profile.placeholder.lastTest": "Último exame (DD/MM/AAAA)",
1133
+ "profile.placeholder.nameOnboarding": "Como quer ser chamado",
1134
+ "profile.placeholder.tags": "praia, música, fitness",
1135
+ "profile.placeholder.testReminder": "Lembrete do próximo exame (DD/MM/AAAA)",
1136
+ "profile.placeholder.vibesDisplayName": "Como você aparece no Vibes",
1137
+ "profile.placeholder.weightKg": "Peso (kg)",
1138
+ "profile.placeholder.whatIDo": "Profissão, ocupação...",
1139
+ "profile.report.attach": "Anexar",
1140
+ "profile.report.attachA11y": "Anexar imagem",
1141
+ "profile.report.blockFail": "Não foi possível bloquear o perfil.",
1142
+ "profile.report.blockPrompt": "Deseja bloquear este perfil? Com o bloqueio, vocês não aparecem um para o outro.",
1143
+ "profile.report.blockYes": "Sim, bloquear",
1144
+ "profile.report.blockedToast": "Perfil bloqueado. Vocês não aparecem um para o outro.",
1145
+ "profile.report.detailsPlaceholder": "O que aconteceu? Descreva com suas palavras",
1146
+ "profile.report.evidence": "Evidências (opcional)",
1147
+ "profile.report.evidenceHint": "Você pode anexar até {count} imagens (prints, fotos).",
1148
+ "profile.report.intro": "Você está denunciando {name}. Conta o que aconteceu — nossa equipe analisa com cuidado.",
1149
+ "profile.report.no": "Não",
1150
+ "profile.report.reason": "Motivo",
1151
+ "profile.report.removeAttachment": "Remover anexo",
1152
+ "profile.report.removeAttachmentA11y": "Remover anexo",
1153
+ "profile.report.send": "Enviar denúncia",
1154
+ "profile.report.sentBody": "Obrigado. Vamos analisar o relato sobre {name}.",
1155
+ "profile.report.sentTitle": "Denúncia enviada",
1156
+ "profile.report.submitFail": "Não foi possível enviar a denúncia. Tente de novo.",
1157
+ "profile.report.submittedBody": "Obrigado. Vamos analisar o relato sobre {name}.",
1158
+ "profile.report.submittedTitle": "Denúncia enviada",
1159
+ "profile.report.summary": "Resumo",
1160
+ "profile.report.summaryPlaceholder": "O que aconteceu? Descreva com suas palavras",
1161
+ "profile.report.thisProfile": "este perfil",
1162
+ "profile.report.title": "Denunciar",
1163
+ "profile.section.aboutMe": "Sobre mim",
1164
+ "profile.section.basic": "Básico",
1165
+ "profile.section.body": "Corpo",
1166
+ "profile.section.communities": "Comunidades",
1167
+ "profile.section.health": "Saúde",
1168
+ "profile.section.identity": "Identidade",
1169
+ "profile.section.link": "Link",
1170
+ "profile.section.preferences": "Preferências",
1171
+ "profile.section.profileLink": "Link do perfil",
1172
+ "profile.section.sexualHealth": "Saúde sexual",
1173
+ "profile.section.social": "Redes sociais",
1174
+ "profile.section.tags": "Tags",
1175
+ "profile.section.travel": "Viagem",
1176
+ "profile.section.tribes": "Tribos",
1177
+ "profile.section.vibesDisplay": "Exibição no Vibes",
608
1178
  "profile.social.placeholder.gamertag": "gamertag",
609
1179
  "profile.social.placeholder.handle": "@usuario",
610
1180
  "profile.social.placeholder.linkOrId": "link ou id",
@@ -616,24 +1186,93 @@ export const PT_BR_MESSAGES = {
616
1186
  "profile.social.website": "Site",
617
1187
  "profile.surface.hunt": "Caçar",
618
1188
  "profile.surface.vibes": "Vibes",
1189
+ "profile.toast.done": "Pronto",
1190
+ "profile.toast.linkSaveFail": "Não foi possível salvar o link.",
1191
+ "profile.toast.linkSavedBody": "Link externo atualizado.",
1192
+ "profile.toast.travelActivated": "Indicador de viagem ativado",
1193
+ "profile.toast.travelAdded": "Viagem adicionada ao perfil",
1194
+ "profile.toast.travelTitle": "Viagem",
1195
+ "profile.travel.addTitle": "Adicionar viagem",
1196
+ "profile.travel.badge": "Viajando",
1197
+ "profile.travel.bannerEyebrow": "Em viagem",
1198
+ "profile.travel.confirmAdd": "Sim, adicionar",
1199
+ "profile.travel.confirmIndicateOnly": "Só indicar",
1200
+ "profile.travel.detectionBody": "Parece que você saiu de {fromCity} e está em {toPlace}. Quer adicionar essa viagem no perfil?",
1201
+ "profile.travel.detectionTitle": "Você está viajando?",
1202
+ "profile.travel.indicatorActivateFail": "Não foi possível ativar o indicador de viagem.",
1203
+ "profile.travel.saveFail": "Não foi possível salvar a viagem.",
1204
+ "profile.travel.saveToProfile": "Salvar no perfil",
1205
+ "profile.trip.add": "Adicionar viagem",
619
1206
  "profile.trip.destinationFallback": "Destino",
620
1207
  "profile.trip.fromDate": "A partir de {date}",
1208
+ "profile.trip.placeholder.city": "Cidade",
1209
+ "profile.trip.placeholder.country": "País (opcional)",
1210
+ "profile.trip.placeholder.end": "Fim (DD/MM/AAAA)",
1211
+ "profile.trip.placeholder.start": "Início (DD/MM/AAAA)",
621
1212
  "profile.trip.untilDate": "Até {date}",
1213
+ "profile.ui.aboutMe": "Sobre mim",
1214
+ "profile.ui.age": "Idade",
1215
+ "profile.ui.albums": "Álbuns",
1216
+ "profile.ui.back": "Voltar",
622
1217
  "profile.ui.customVibesHint": "O resto do perfil continua o mesmo nos dois modos.",
623
1218
  "profile.ui.customVibesToggle": "Usar foto e nome diferentes no Vibes",
624
1219
  "profile.ui.customVibesToggleHint": "O resto do perfil continua o mesmo. Só a foto e o nome de exibição mudam nos posts do Vibes.",
1220
+ "profile.ui.data": "Dados",
625
1221
  "profile.ui.editTitle": "Editar perfil",
1222
+ "profile.ui.externalLink": "Link externo",
1223
+ "profile.ui.getStarted": "Começar",
626
1224
  "profile.ui.handleLabel": "SEU @",
1225
+ "profile.ui.interests": "Interesses",
1226
+ "profile.ui.lastTest": "Último exame",
1227
+ "profile.ui.link": "Link",
1228
+ "profile.ui.linkClicks": "Cliques no link",
1229
+ "profile.ui.media": "Mídias",
627
1230
  "profile.ui.modeHunt": "Modo Caçar",
628
1231
  "profile.ui.modeVibes": "Modo Vibes",
629
1232
  "profile.ui.myProfile": "Meu perfil",
630
1233
  "profile.ui.nameLabel": "SEU NOME",
1234
+ "profile.ui.noMediaPublished": "Nenhuma mídia publicada.",
1235
+ "profile.ui.noMediaYet": "Nenhuma mídia publicada.",
1236
+ "profile.ui.noPhotosYet": "Nenhuma foto publicada ainda.",
1237
+ "profile.ui.noPostsYet": "Nenhum post ainda.",
1238
+ "profile.ui.noThoughtsYet": "Nenhum pensamento ainda.",
1239
+ "profile.ui.notFound": "Perfil não encontrado.",
1240
+ "profile.ui.openChat": "Abrir conversa",
1241
+ "profile.ui.openLink": "Abrir link",
1242
+ "profile.ui.photosCount": "Fotos",
631
1243
  "profile.ui.photosHint": "A primeira foto é a principal do seu perfil.",
632
1244
  "profile.ui.photosTitle": "Fotos",
1245
+ "profile.ui.posts": "Posts",
1246
+ "profile.ui.presenceStatus": "Status",
633
1247
  "profile.ui.save": "Salvar perfil",
1248
+ "profile.ui.saveLink": "Salvar link",
1249
+ "profile.ui.status": "Status",
1250
+ "profile.ui.tags": "Tags",
1251
+ "profile.ui.tribes": "Tribos",
1252
+ "profile.ui.trips": "Viagens",
634
1253
  "profile.ui.vibesName": "NOME NO VIBES",
635
1254
  "profile.ui.vibesPhoto": "FOTO NO VIBES",
636
1255
  "profile.ui.vibesPhotoHint": "Aparece ao lado do seu @ nos posts do Vibes.",
1256
+ "profile.ui.viewProfile": "Ver perfil",
1257
+ "profile.ui.views": "Visualizações",
1258
+ "profile.ui.visitExternalLink": "Visitar link externo",
1259
+ "profile.ui.visitLink": "Visitar meu link",
1260
+ "profile.ui.yourProfile": "Seu perfil",
1261
+ "profile.view.actionFail": "Não foi possível concluir a ação.",
1262
+ "profile.view.blocked": "Perfil bloqueado.",
1263
+ "profile.view.gotIt": "Entendi",
1264
+ "profile.view.hidden": "Perfil oculto.",
1265
+ "profile.view.keyboardTip": "Use ← → no teclado para ver o próximo perfil",
1266
+ "profile.view.messagePlaceholder": "Mensagem para {name}...",
1267
+ "profile.view.muted": "Notificações silenciadas desta pessoa.",
1268
+ "profile.view.next": "Próximo",
1269
+ "profile.view.notFound": "Perfil não encontrado.",
1270
+ "profile.view.previous": "Anterior",
1271
+ "profile.view.reactionSent": "Reação enviada: {label}",
1272
+ "profile.view.sendFailMessage": "Não foi possível enviar a mensagem.",
1273
+ "profile.view.sendMessage": "Enviar mensagem",
1274
+ "profile.view.sendReaction": "Enviar reação",
1275
+ "profile.view.unmuted": "Notificações permitidas de novo.",
637
1276
  "referral.creator.metric.clicks": "Cliques no link",
638
1277
  "referral.creator.metric.converted": "Assinaturas",
639
1278
  "referral.creator.metric.onboarded": "Perfis completos",
@@ -697,6 +1336,7 @@ export const PT_BR_MESSAGES = {
697
1336
  "referral.settings.yourHandle": "Seu código de convite",
698
1337
  "referral.web.influencer.cta": "Fale com a gente",
699
1338
  "referral.web.influencer.pitch": "Parceiros recebem um link com o @ e um painel de métricas agregadas para campanhas.",
1339
+ "referral.web.influencer.privacy": "As métricas mostram cliques, cadastros e conversões — nunca a identidade de quem se cadastrou.",
700
1340
  "referral.web.influencer.title": "Programa para influenciadores",
701
1341
  "report.harassment": "Assédio",
702
1342
  "report.harassment.hint": "Ameaças, humilhação ou comportamento abusivo",
@@ -732,6 +1372,17 @@ export const PT_BR_MESSAGES = {
732
1372
  "share.copied.hint": "Conteúdo copiado para a área de transferência.",
733
1373
  "share.linkCopied": "Link copiado",
734
1374
  "share.linkCopied.hint": "Cole onde quiser para enviar o convite.",
1375
+ "shell.a11y.backToApp": "Voltar ao app",
1376
+ "shell.a11y.closeMenu": "Fechar menu",
1377
+ "shell.a11y.closeProfileMenu": "Fechar menu do perfil",
1378
+ "shell.a11y.closeSelection": "Fechar seleção",
1379
+ "shell.a11y.groupInfo": "Informações de {title}",
1380
+ "shell.a11y.moreOptions": "Mais opções",
1381
+ "shell.a11y.openProfileMenu": "Abrir menu do perfil",
1382
+ "shell.a11y.search": "Buscar",
1383
+ "shell.a11y.switchToMode": "Mudar para {mode}",
1384
+ "shell.a11y.viewMyProfile": "Ver meu perfil",
1385
+ "shell.a11y.viewPeerProfile": "Ver perfil de {name}",
735
1386
  "shell.about.build": "Build",
736
1387
  "shell.about.followIg": "Seguir no Instagram",
737
1388
  "shell.about.followX": "Seguir no X",
@@ -740,10 +1391,66 @@ export const PT_BR_MESSAGES = {
740
1391
  "shell.about.section.social": "Social",
741
1392
  "shell.about.section.terms": "Termos e políticas",
742
1393
  "shell.about.title": "Sobre",
1394
+ "shell.ad.label": "Anúncio",
1395
+ "shell.appIcon.appearanceSection": "Aparência na tela inicial",
743
1396
  "shell.appIcon.defaultHint": "Ícone principal com a marca",
744
1397
  "shell.appIcon.defaultLabel": "Proulr",
745
1398
  "shell.appIcon.discreetHint": "Aparência neutra de calendário na tela inicial",
746
1399
  "shell.appIcon.discreetLabel": "Discreto",
1400
+ "shell.appIcon.nativeBuildHint": "Ícones alternativos exigem build nativo (iOS ou Android). No Expo Go ou na web, o ícone padrão permanece ativo.",
1401
+ "shell.appIcon.nativeOnly": "Disponível apenas no app nativo.",
1402
+ "shell.appIcon.restartHint": "Em alguns aparelhos o ícone só muda após reiniciar o launcher ou o celular.",
1403
+ "shell.appIcon.subtitle": "Alternar ícone do app na tela inicial",
1404
+ "shell.appIcon.swapHint": "A troca pode levar alguns segundos. Em builds de desenvolvimento, rode prebuild após adicionar novos assets de ícone.",
1405
+ "shell.appIcon.title": "Ícone discreto",
1406
+ "shell.appIcon.webUnavailable": "Troca de ícone não está disponível na web.",
1407
+ "shell.appLock.biometricConfirm": "Confirmar biometria para o bloqueio",
1408
+ "shell.appLock.biometricHintAvailable": "Face ID / impressão digital",
1409
+ "shell.appLock.biometricHintUnavailable": "Biometria indisponível neste aparelho",
1410
+ "shell.appLock.biometricSection": "Biometria",
1411
+ "shell.appLock.biometricToggle": "Desbloquear com biometria",
1412
+ "shell.appLock.confirmPin": "Confirmar PIN",
1413
+ "shell.appLock.disable": "Desativar bloqueio",
1414
+ "shell.appLock.disableBody": "Remover PIN e biometria deste aparelho?",
1415
+ "shell.appLock.disableConfirm": "Desativar",
1416
+ "shell.appLock.disableTitle": "Desativar bloqueio",
1417
+ "shell.appLock.enabledBody": "Na próxima abertura do app, será necessário informar o PIN ou usar biometria.",
1418
+ "shell.appLock.enabledTitle": "Bloqueio ativado",
1419
+ "shell.appLock.enterPinHint": "Digite seu PIN para continuar",
1420
+ "shell.appLock.gatePrompt": "Desbloquear o Proulr",
1421
+ "shell.appLock.lockedTitle": "Proulr bloqueado",
1422
+ "shell.appLock.nativeOnly": "Disponível apenas no app nativo.",
1423
+ "shell.appLock.newPin": "Novo PIN",
1424
+ "shell.appLock.pinPlaceholder": "PIN",
1425
+ "shell.appLock.pinSection": "PIN",
1426
+ "shell.appLock.protectHint": "Proteja o app em aparelhos compartilhados. O PIN fica apenas neste dispositivo (SecureStore).",
1427
+ "shell.appLock.savePin": "Salvar PIN",
1428
+ "shell.appLock.subtitle": "PIN e biometria ao abrir o app",
1429
+ "shell.appLock.title": "Bloqueio de início",
1430
+ "shell.appLock.unlock": "Desbloquear",
1431
+ "shell.appLock.useBiometric": "Usar biometria",
1432
+ "shell.appLock.wrongPin": "PIN incorreto",
1433
+ "shell.blocked.actionUnblock": "desbloquear",
1434
+ "shell.blocked.actionUnhide": "desocultar",
1435
+ "shell.blocked.bulkUnblock": "Desbloquear todos",
1436
+ "shell.blocked.bulkUnhide": "Desocultar todos",
1437
+ "shell.blocked.cancelSelection": "Cancelar seleção",
1438
+ "shell.blocked.confirmBody": "Deseja {action} {name}?",
1439
+ "shell.blocked.confirmTitle": "Confirmar",
1440
+ "shell.blocked.done": "Concluir",
1441
+ "shell.blocked.empty": "Nenhum perfil bloqueado ou oculto.",
1442
+ "shell.blocked.hint": "Toque na foto para desbloquear/desocultar. Menu ⋮ para ação em massa.",
1443
+ "shell.blocked.meta": "{status} · Último contato: {date}",
1444
+ "shell.blocked.moreActions": "Mais ações",
1445
+ "shell.blocked.noRecentContact": "Sem contato recente",
1446
+ "shell.blocked.profilesSection": "Perfis",
1447
+ "shell.blocked.selectMany": "Selecionar vários",
1448
+ "shell.blocked.statusBlocked": "Bloqueado",
1449
+ "shell.blocked.statusHidden": "Oculto",
1450
+ "shell.blocked.statusMuted": "Silenciado",
1451
+ "shell.blocked.subtitle": "Gerencie perfis que você bloqueou ou ocultou",
1452
+ "shell.blocked.title": "Ocultos e bloqueados",
1453
+ "shell.blocked.updating": "Atualizando lista…",
747
1454
  "shell.consent.ads": "Publicidade personalizada",
748
1455
  "shell.consent.ads.hint": "Quando ativarmos ads, respeitaremos esta escolha",
749
1456
  "shell.consent.analytics": "Análise de uso",
@@ -761,6 +1468,38 @@ export const PT_BR_MESSAGES = {
761
1468
  "shell.deactivate.signOutNow": "Sair agora",
762
1469
  "shell.deactivate.subtitle": "Suporte, sair ou excluir",
763
1470
  "shell.deactivate.title": "Desativar conta",
1471
+ "shell.device.appVersion": "Versão do app",
1472
+ "shell.device.cacheClearedBody": "Dados temporários removidos.",
1473
+ "shell.device.cacheClearedTitle": "Cache limpo",
1474
+ "shell.device.clearCache": "Apagar cache do aparelho",
1475
+ "shell.device.clearCacheHint": "Limpa cache SDUI local",
1476
+ "shell.device.connectionOk": "Conexão OK",
1477
+ "shell.device.coords": "Lat {lat}, Lng {lng}",
1478
+ "shell.device.copyId": "Copiar ID do dispositivo",
1479
+ "shell.device.copyIdToastBody": "Identificador do aparelho na área de transferência.",
1480
+ "shell.device.copyIdToastTitle": "ID copiado",
1481
+ "shell.device.diagnosticsSection": "Diagnósticos",
1482
+ "shell.device.infoSection": "Informações",
1483
+ "shell.device.latencyMs": "Latência aproximada: {ms} ms",
1484
+ "shell.device.loading": "Carregando…",
1485
+ "shell.device.loadingInfo": "Carregando informações do dispositivo…",
1486
+ "shell.device.locationOk": "Localização OK",
1487
+ "shell.device.manageDevices": "Gerenciar aparelhos",
1488
+ "shell.device.manageDevicesHint": "Sessões ativas e revogação",
1489
+ "shell.device.osVersion": "Versão do SO",
1490
+ "shell.device.platform": "Plataforma",
1491
+ "shell.device.refresh": "Atualizar informações",
1492
+ "shell.device.running": "Executando: {task}…",
1493
+ "shell.device.sectionAccount": "Conta neste aparelho",
1494
+ "shell.device.subtitle": "Sessões, cache e diagnósticos",
1495
+ "shell.device.taskCache": "limpando cache",
1496
+ "shell.device.taskConnection": "teste de conexão",
1497
+ "shell.device.taskCopyId": "copiar ID",
1498
+ "shell.device.taskLocation": "localização",
1499
+ "shell.device.testConnection": "Testar conexão",
1500
+ "shell.device.title": "Dispositivo",
1501
+ "shell.device.unknownError": "Erro desconhecido",
1502
+ "shell.device.verifyLocation": "Verificar localização",
764
1503
  "shell.dnd.clear": "Cancelar adiamento",
765
1504
  "shell.dnd.quietHours": "Horas de silêncio",
766
1505
  "shell.dnd.quietHours.hint": "Usa horário padrão 22:00–08:00",
@@ -771,6 +1510,38 @@ export const PT_BR_MESSAGES = {
771
1510
  "shell.dnd.subtitle": "Adiar ou silenciar por horário",
772
1511
  "shell.dnd.title": "Não perturbe",
773
1512
  "shell.dnd.untilTomorrow": "Até amanhã",
1513
+ "shell.downloadData.emailFallback": "seu e-mail",
1514
+ "shell.downloadData.emailHint": "Conta vinculada: {email}. O link de download expira em 7 dias.",
1515
+ "shell.downloadData.emailStep": "Passo 1 — Confirmar e-mail",
1516
+ "shell.downloadData.exportLocal": "Exportar dados locais",
1517
+ "shell.downloadData.exportQueued": "Exportação enfileirada",
1518
+ "shell.downloadData.exportReady": "Exportação pronta",
1519
+ "shell.downloadData.exportReadyBody": "Abrindo link de download.",
1520
+ "shell.downloadData.localFail": "Falha ao exportar dados locais",
1521
+ "shell.downloadData.localHint": "JSON imediato com frases salvas e chaves AsyncStorage do app.",
1522
+ "shell.downloadData.localSection": "Passo 2 — Dados locais",
1523
+ "shell.downloadData.localToastBody": "Arquivo compartilhado com sucesso.",
1524
+ "shell.downloadData.localToastTitle": "Exportação local",
1525
+ "shell.downloadData.openDownload": "Abrir download",
1526
+ "shell.downloadData.privacyBanner": "Seus dados estão em dois lugares: neste aparelho (chat cifrado, preferências locais) e no servidor (perfil, flashes, fotos). Mensagens E2E exportam ciphertext — o conteúdo legível exige sua senha de backup.",
1527
+ "shell.downloadData.reusedJob": " (job existente reutilizado)",
1528
+ "shell.downloadData.serverFail": "Não foi possível iniciar a exportação.",
1529
+ "shell.downloadData.serverHint": "Gera um arquivo no servidor com seus dados da conta. O link fica disponível por 7 dias.",
1530
+ "shell.downloadData.serverPackageHint": "Job assíncrono com perfil e metadados de fotos. Mensagens cifradas e dados locais não entram neste pacote.",
1531
+ "shell.downloadData.serverSection": "Passo 3 — Dados do servidor",
1532
+ "shell.downloadData.serverStart": "Começar exportação do servidor",
1533
+ "shell.downloadData.serverStatus": "Exportação do servidor: {status}",
1534
+ "shell.downloadData.serverTitle": "Exportação do servidor",
1535
+ "shell.downloadData.statusExpired": "Expirado",
1536
+ "shell.downloadData.statusFailed": "Falhou",
1537
+ "shell.downloadData.statusLabel": "Status: {status}",
1538
+ "shell.downloadData.statusPending": "Na fila",
1539
+ "shell.downloadData.statusProcessing": "Processando",
1540
+ "shell.downloadData.statusReady": "Pronto para download",
1541
+ "shell.downloadData.subtitle": "Exportação local e do servidor",
1542
+ "shell.downloadData.title": "Baixar meus dados",
1543
+ "shell.downloadData.unavailableLink": "Link indisponível",
1544
+ "shell.downloadData.unavailableLinkBody": "Não foi possível abrir o download neste aparelho.",
774
1545
  "shell.drawer.boost": "Boost",
775
1546
  "shell.drawer.communities": "Comunidades",
776
1547
  "shell.drawer.editProfile": "Editar perfil",
@@ -780,6 +1551,8 @@ export const PT_BR_MESSAGES = {
780
1551
  "shell.drawer.inviteFriends": "Convidar amigos",
781
1552
  "shell.drawer.lists": "Listas",
782
1553
  "shell.drawer.menu": "Menu",
1554
+ "shell.drawer.modeHunt": "Modo Caçar",
1555
+ "shell.drawer.modeVibes": "Modo Vibes",
783
1556
  "shell.drawer.myAlbums": "Meus álbuns",
784
1557
  "shell.drawer.myProfile": "Meu perfil",
785
1558
  "shell.drawer.premium": "Premium",
@@ -787,6 +1560,8 @@ export const PT_BR_MESSAGES = {
787
1560
  "shell.drawer.safety": "Centro de segurança",
788
1561
  "shell.drawer.saved": "Itens salvos",
789
1562
  "shell.drawer.signOut": "Encerrar sessão",
1563
+ "shell.fab.closeCreateMenu": "Fechar menu de criação",
1564
+ "shell.hunt.browseFab": "Caçar — ver quem está em outra região",
790
1565
  "shell.language.en": "English",
791
1566
  "shell.language.en.hint": "App text in English",
792
1567
  "shell.language.ptBr": "Português (Brasil)",
@@ -795,6 +1570,15 @@ export const PT_BR_MESSAGES = {
795
1570
  "shell.language.system": "Sistema",
796
1571
  "shell.language.system.hint": "Segue o idioma do aparelho",
797
1572
  "shell.language.title": "Idioma",
1573
+ "shell.muted.confirmBody": "Deseja deixar de silenciar {name}?",
1574
+ "shell.muted.confirmTitle": "Remover silêncio",
1575
+ "shell.muted.empty": "Nenhum membro silenciado.",
1576
+ "shell.muted.section": "Silenciados",
1577
+ "shell.muted.statusMuted": "Silenciado",
1578
+ "shell.muted.subtitle": "Quem não envia notificações de chat",
1579
+ "shell.muted.title": "Membros silenciados",
1580
+ "shell.muted.unmuteAll": "Remover silêncio de todos",
1581
+ "shell.muted.updating": "Atualizando lista…",
798
1582
  "shell.notif.appSounds": "Sons no app",
799
1583
  "shell.notif.appVibrations": "Vibrações no app",
800
1584
  "shell.notif.disablePush": "Desativar push global",
@@ -809,6 +1593,47 @@ export const PT_BR_MESSAGES = {
809
1593
  "shell.notif.subtitle": "Alertas push, sons e vibrações",
810
1594
  "shell.notif.systemMgmt": "Gestão do sistema",
811
1595
  "shell.notif.title": "Notificações",
1596
+ "shell.notifTest.banner": "Notificações na bandeja só funcionam no app instalado (build nativo). No Expo Go o push remoto não chega.",
1597
+ "shell.notifTest.copyToken": "Copiar token",
1598
+ "shell.notifTest.diagnostics": "Diagnóstico",
1599
+ "shell.notifTest.easConfigured": "Configurado",
1600
+ "shell.notifTest.easMissing": "Ausente",
1601
+ "shell.notifTest.easProject": "Projeto EAS",
1602
+ "shell.notifTest.env": "Ambiente",
1603
+ "shell.notifTest.failed": "Falhou.",
1604
+ "shell.notifTest.firebaseHint": "Se o token não é gerado, conclua a configuração do FCM:",
1605
+ "shell.notifTest.firebaseSection": "Configurar Firebase (Android)",
1606
+ "shell.notifTest.firebaseStep1": "1. Crie um projeto no Firebase Console.",
1607
+ "shell.notifTest.firebaseStep2": "2. Adicione um app Android com o pacote com.proulr.app e baixe o google-services.json.",
1608
+ "shell.notifTest.firebaseStep3": "3. Coloque o arquivo na raiz do projeto e aponte android.googleServicesFile no app.json.",
1609
+ "shell.notifTest.firebaseStep4": "4. Em Firebase > Configurações > Cloud Messaging, gere a chave de conta de serviço (FCM V1) e envie ao EAS com: eas credentials.",
1610
+ "shell.notifTest.firebaseStep5": "5. Refaça o build nativo e reinstale o app.",
1611
+ "shell.notifTest.localHint": "Não depende do servidor nem do FCM. Valida permissão, canal e exibição no aparelho.",
1612
+ "shell.notifTest.localLabel": "Notificação local",
1613
+ "shell.notifTest.localRun": "Disparar notificação local",
1614
+ "shell.notifTest.notEmulator": "Não (emulador)",
1615
+ "shell.notifTest.openExpoDocs": "Abrir documentação da Expo",
1616
+ "shell.notifTest.permission": "Permissão",
1617
+ "shell.notifTest.permissionDenied": "Negada",
1618
+ "shell.notifTest.permissionGranted": "Concedida",
1619
+ "shell.notifTest.physicalDevice": "Aparelho físico",
1620
+ "shell.notifTest.platform": "Plataforma",
1621
+ "shell.notifTest.remoteHint": "Envia um push real via Expo para este aparelho. Valida o caminho completo usado por Flashes e mensagens (token + FCM + entrega).",
1622
+ "shell.notifTest.remoteLabel": "Push remoto (para mim)",
1623
+ "shell.notifTest.remoteRun": "Enviar push remoto de teste",
1624
+ "shell.notifTest.subtitle": "Diagnóstico do push",
1625
+ "shell.notifTest.success": "Sucesso.",
1626
+ "shell.notifTest.tests": "Testes",
1627
+ "shell.notifTest.title": "Testar notificações",
1628
+ "shell.notifTest.tokenCopiedBody": "Cole no Expo Push Tool para testes manuais.",
1629
+ "shell.notifTest.tokenCopiedTitle": "Token copiado",
1630
+ "shell.notifTest.tokenErrorHint": "No Android, isso quase sempre significa que o Firebase Cloud Messaging (FCM) não está configurado. Veja o passo a passo abaixo.",
1631
+ "shell.notifTest.tokenErrorTitle": "Erro ao gerar o token",
1632
+ "shell.notifTest.tokenGenerated": "Token gerado",
1633
+ "shell.notifTest.tokenLabel": "Expo push token",
1634
+ "shell.notifTest.tokenSaved": "Token salvo no servidor",
1635
+ "shell.offline.cachedBanner": "Sem conexão — última versão salva.",
1636
+ "shell.pageUnavailable": "Esta página de configurações não está disponível.",
812
1637
  "shell.prefs.distanceUnits": "Unidades de distância",
813
1638
  "shell.prefs.distanceUnits.hint": "Métrico, imperial ou sistema",
814
1639
  "shell.prefs.keepAwake": "Manter tela ligada",
@@ -848,6 +1673,7 @@ export const PT_BR_MESSAGES = {
848
1673
  "shell.privacy.title": "Privacidade",
849
1674
  "shell.privacy.travelIndicator": "Indicador de viagem",
850
1675
  "shell.privacy.visibility": "Visibilidade",
1676
+ "shell.pullToRefresh": "Puxe para atualizar",
851
1677
  "shell.quality.adaptive": "Adaptativa",
852
1678
  "shell.quality.maximum": "Máxima",
853
1679
  "shell.quality.thumbnail": "Miniatura",
@@ -876,6 +1702,29 @@ export const PT_BR_MESSAGES = {
876
1702
  "shell.safety.section.safety": "Segurança",
877
1703
  "shell.safety.subtitle": "Guias, ajuda e privacidade",
878
1704
  "shell.safety.title": "Central de segurança",
1705
+ "shell.search.conversations": "Buscar conversas…",
1706
+ "shell.search.placeholder": "Buscar…",
1707
+ "shell.search.postsTags": "Buscar posts, @ ou #…",
1708
+ "shell.sessions.devicesSection": "Aparelhos",
1709
+ "shell.sessions.empty": "Nenhuma sessão registrada ainda. Elas aparecem após login neste aparelho.",
1710
+ "shell.sessions.endCurrentTitle": "Encerrar neste aparelho",
1711
+ "shell.sessions.endOthers": "Encerrar outras sessões",
1712
+ "shell.sessions.endOthersBody": "Desconectar todos os outros aparelhos?",
1713
+ "shell.sessions.endOthersDone": "Outras sessões encerradas",
1714
+ "shell.sessions.endOthersDoneBody": "Todos os outros aparelhos foram desconectados.",
1715
+ "shell.sessions.endOthersTitle": "Encerrar outras sessões",
1716
+ "shell.sessions.loading": "Carregando sessões…",
1717
+ "shell.sessions.revokeConfirmCurrent": "Você será desconectado deste aparelho.",
1718
+ "shell.sessions.revokeConfirmOther": "Encerrar sessão neste dispositivo?",
1719
+ "shell.sessions.revokeFail": "Não foi possível revogar este aparelho.",
1720
+ "shell.sessions.revokeTitle": "Revogar aparelho",
1721
+ "shell.sessions.revokedTitle": "Aparelho revogado",
1722
+ "shell.sessions.rowSubtitle": "Versão {version} · Última atividade {date}",
1723
+ "shell.sessions.signOut": "Sair",
1724
+ "shell.sessions.subtitle": "Sessões conectadas à sua conta. Revogar outro aparelho encerra a sessão no servidor quando possível.",
1725
+ "shell.sessions.title": "Gerenciar aparelhos",
1726
+ "shell.sessions.toastEnded": "A sessão foi encerrada no servidor. O aparelho perderá acesso imediatamente.",
1727
+ "shell.sessions.toastRemoved": "Registro removido. Sem identificador de sessão salvo, o aparelho pode continuar conectado até o token expirar.",
879
1728
  "shell.settings.aboutProulr": "Sobre o Proulr",
880
1729
  "shell.settings.appIcon": "Ícone do app",
881
1730
  "shell.settings.appLock": "Bloqueio do app",
@@ -906,9 +1755,49 @@ export const PT_BR_MESSAGES = {
906
1755
  "shell.settings.title": "Configurações",
907
1756
  "shell.settings.version": "Versão",
908
1757
  "shell.soon.feature": "{label} estará disponível em breve.",
1758
+ "shell.subscriptions.active": "Ativo",
1759
+ "shell.subscriptions.boost": "Destaque (Boost)",
1760
+ "shell.subscriptions.boostPriced": "Destaque (Boost) — {price}",
1761
+ "shell.subscriptions.boostSuccessBody": "Seu destaque será aplicado conforme as regras do app.",
1762
+ "shell.subscriptions.boostSuccessTitle": "Boost adquirido",
1763
+ "shell.subscriptions.consumables": "Consumíveis",
1764
+ "shell.subscriptions.dayPass": "Passe de 1 Dia PRO",
1765
+ "shell.subscriptions.dayPassPriced": "Passe de 1 Dia PRO — {price}",
1766
+ "shell.subscriptions.inactive": "Inativo",
1767
+ "shell.subscriptions.manage": "Gerenciar assinatura",
1768
+ "shell.subscriptions.manageHint": "Abrir configurações da App Store / Play Store",
1769
+ "shell.subscriptions.manageSuccessBody": "Use a tela da loja para alterar ou cancelar sua assinatura.",
1770
+ "shell.subscriptions.manageSuccessTitle": "Loja aberta",
1771
+ "shell.subscriptions.nativeOnly": "Disponível apenas no app nativo.",
1772
+ "shell.subscriptions.passSuccessBody": "Seu acesso PRO temporário foi vinculado à conta.",
1773
+ "shell.subscriptions.passSuccessTitle": "Passe ativado",
1774
+ "shell.subscriptions.planSection": "Plano",
1775
+ "shell.subscriptions.proSuccessBody": "Proulr Pro foi vinculado à sua conta.",
1776
+ "shell.subscriptions.proSuccessTitle": "Assinatura ativa",
1777
+ "shell.subscriptions.refresh": "Atualizar",
1778
+ "shell.subscriptions.refreshing": "Atualizando status…",
1779
+ "shell.subscriptions.renewsOn": "Renova em {date}",
1780
+ "shell.subscriptions.restore": "Restaurar compra",
1781
+ "shell.subscriptions.restoreHint": "Recuperar assinaturas já pagas nesta conta da loja",
1782
+ "shell.subscriptions.restoreSuccessBody": "Verificamos sua conta da loja e atualizamos o status.",
1783
+ "shell.subscriptions.restoreSuccessTitle": "Compras restauradas",
1784
+ "shell.subscriptions.storeSection": "Conta da loja",
1785
+ "shell.subscriptions.subscribePro": "Assinar Pro",
1786
+ "shell.subscriptions.subscribeProPriced": "Assinar Pro ({price})",
1787
+ "shell.subscriptions.subtitle": "Pro, Boost e Passe de 1 dia",
1788
+ "shell.subscriptions.title": "Assinaturas",
1789
+ "shell.subscriptions.unavailableConsumables": "Compras avulsas ficam disponíveis quando o RevenueCat estiver ativo.",
1790
+ "shell.surface.discoverSubtitle": "Você está no modo encontros",
1791
+ "shell.surface.discoverTitle": "Caçar",
1792
+ "shell.surface.vibesSubtitle": "Você está no modo social",
1793
+ "shell.surface.vibesTitle": "Vibes",
909
1794
  "shell.tab.chat": "Chat",
910
1795
  "shell.tab.discover": "Caçar",
911
1796
  "shell.tab.vibes": "Vibes",
1797
+ "shell.unavailable.body": "Não conseguimos carregar esta tela agora. Sem conexão ou sem dados salvos no aparelho.",
1798
+ "shell.unavailable.goHunt": "Ir para o Caçar",
1799
+ "shell.unavailable.retry": "Tentar novamente",
1800
+ "shell.unavailable.title": "Tela indisponível",
912
1801
  "shell.units.distance": "Distância",
913
1802
  "shell.units.imperial": "Imperial",
914
1803
  "shell.units.imperial.hint": "Milhas e pés",
@@ -918,15 +1807,47 @@ export const PT_BR_MESSAGES = {
918
1807
  "shell.units.system": "Sistema",
919
1808
  "shell.units.system.hint": "Segue o idioma do aparelho",
920
1809
  "shell.units.title": "Unidades",
1810
+ "shell.web.installCta": "Instalar",
1811
+ "shell.web.installSubtitle": "Abra como app, com ícone na tela inicial.",
1812
+ "shell.web.installTitle": "Instalar o Proulr",
1813
+ "shell.web.notNow": "Agora não",
1814
+ "social.a11y.addImage": "Adicionar imagem",
1815
+ "social.a11y.addMedia": "Adicionar mídia",
1816
+ "social.a11y.addVideo": "Adicionar vídeo",
1817
+ "social.a11y.cancelReply": "Cancelar resposta",
1818
+ "social.a11y.closeReactions": "Fechar reações",
1819
+ "social.a11y.dateFilter": "Filtro de data",
1820
+ "social.a11y.nextStory": "Próximo story",
1821
+ "social.a11y.notifyActive": "Notificações deste perfil ativadas",
1822
+ "social.a11y.notifyEnable": "Ativar notificações deste perfil",
1823
+ "social.a11y.openCamera": "Abrir câmera",
1824
+ "social.a11y.openFullscreenImage": "Abrir imagem em tela cheia",
1825
+ "social.a11y.openProfile": "Abrir perfil de {name}",
1826
+ "social.a11y.openThread": "Abrir thread",
1827
+ "social.a11y.previousStory": "Story anterior",
1828
+ "social.a11y.removeMedia": "Remover mídia",
1829
+ "social.a11y.searchPeopleThreads": "Buscar pessoas e threads",
1830
+ "social.a11y.sendMessage": "Enviar mensagem",
1831
+ "social.a11y.sendReply": "Enviar resposta",
1832
+ "social.comments.archive": "Arquivar",
1833
+ "social.comments.replyTo": "alguém",
1834
+ "social.comments.title": "Postar",
1835
+ "social.compose.galleryDenied": "Permita acesso à galeria para ver suas fotos recentes.",
1836
+ "social.compose.mediaLimit": "Você pode anexar até {count} fotos ou vídeos por post.",
1837
+ "social.compose.mediaRoomLeft": "Só é possível adicionar mais {count} mídia(s) neste post.",
1838
+ "social.compose.mediaSelectHint": "Toque em Selecionar para escolher até {count} fotos ou vídeos.",
921
1839
  "social.count.millionShort": "{value} mi",
922
1840
  "social.count.thousandShort": "{value} mil",
923
1841
  "social.fab.photos": "Fotos",
924
1842
  "social.fab.publish": "Publicar",
925
1843
  "social.fab.story": "Story",
926
1844
  "social.feed.fab": "Criar no Feed",
1845
+ "social.feed.searchPlaceholder": "Buscar pessoas no feed...",
927
1846
  "social.feed.subtitle": "Publicações da comunidade",
928
1847
  "social.feed.title": "Feed",
929
1848
  "social.media.readImageError": "Não foi possível ler a imagem.",
1849
+ "social.notify.howHint": "Como você quer ser avisado sobre {name}?",
1850
+ "social.notify.title": "Notificações",
930
1851
  "social.notifyMode.all": "Tudo",
931
1852
  "social.notifyMode.allHint": "Posts, mídias e respostas deste perfil",
932
1853
  "social.notifyMode.media": "Só mídias",
@@ -936,7 +1857,17 @@ export const PT_BR_MESSAGES = {
936
1857
  "social.notifyMode.replies": "Só respostas",
937
1858
  "social.notifyMode.repliesHint": "Quando esta pessoa responder posts",
938
1859
  "social.people.someone": "Alguém",
1860
+ "social.post.mediaOnly": "Post com mídia",
939
1861
  "social.post.recentGalleryUnavailable": "Galeria recente indisponível neste build.",
1862
+ "social.profile.followUpdateFail": "Não foi possível atualizar o seguir.",
1863
+ "social.profile.mediaEmpty": "Nenhuma mídia publicada ainda.",
1864
+ "social.profile.mediaTab": "Mídia",
1865
+ "social.profile.notFound": "Perfil Vibes não encontrado.",
1866
+ "social.profile.notifyUpdateFail": "Não foi possível atualizar as notificações.",
1867
+ "social.profile.photosVideosCount": "{count} Fotos e vídeos",
1868
+ "social.profile.postsCount": "{count} posts",
1869
+ "social.profile.postsEmpty": "Nenhuma publicação dessa pessoa.",
1870
+ "social.profile.postsTab": "Publicações",
940
1871
  "social.replyAudience.everyone": "Qualquer pessoa",
941
1872
  "social.replyAudience.everyoneHint": "Todos podem responder a este post.",
942
1873
  "social.replyAudience.everyoneReply": "Qualquer pessoa pode responder",
@@ -947,7 +1878,33 @@ export const PT_BR_MESSAGES = {
947
1878
  "social.replyAudience.mentionedHint": "Apenas perfis mencionados no post podem responder.",
948
1879
  "social.replyAudience.mentionedReply": "Somente quem você menciona pode responder",
949
1880
  "social.saved.title": "Itens salvos",
1881
+ "social.stats.comments": "Comentários",
1882
+ "social.stats.likes": "Curtidas",
1883
+ "social.stats.reposts": "Republicações",
1884
+ "social.stats.saved": "Itens salvos",
1885
+ "social.stats.views": "Visualizações",
1886
+ "social.stats.viewsSuffix": " · {count} Visualizações",
1887
+ "social.story.audienceDiscoverHint": "Aparece na descoberta de perfis.",
1888
+ "social.story.audienceVibesHint": "Aparece no feed de pensamentos.",
950
1889
  "social.story.captureImageError": "Não foi possível gerar a imagem do story.",
1890
+ "social.story.createNew": "Criar novo story",
1891
+ "social.story.createTitle": "Criar story",
1892
+ "social.story.delete": "Excluir",
1893
+ "social.story.deleteA11y": "Excluir story",
1894
+ "social.story.deleteTitle": "Excluir story",
1895
+ "social.story.deletedBody": "Seu story foi removido.",
1896
+ "social.story.deletedTitle": "Story excluído",
1897
+ "social.story.gallerySelectHint": "Toque em Selecionar para escolher uma foto ou vídeo.",
1898
+ "social.story.mentions": "Menções",
1899
+ "social.story.messageSentBody": "Sua resposta foi enviada no chat.",
1900
+ "social.story.messageSentTitle": "Mensagem enviada",
1901
+ "social.story.music": "Música",
1902
+ "social.story.quickReactions": "Reações rápidas",
1903
+ "social.story.reactionSentBody": "Sua reação foi enviada no chat.",
1904
+ "social.story.reactionSentTitle": "Reação enviada",
1905
+ "social.story.textPlaceholder": "Comece a digitar...",
1906
+ "social.story.viewMine": "Ver meus stories",
1907
+ "social.story.yourStories": "Seus stories",
951
1908
  "social.storyFont.bold": "Negrito",
952
1909
  "social.storyFont.extrabold": "Impacto",
953
1910
  "social.storyFont.medium": "Leve",
@@ -966,6 +1923,7 @@ export type ProulrMessageKey = keyof typeof PT_BR_MESSAGES;
966
1923
 
967
1924
  export const EN_MESSAGES: FlatMessages = {
968
1925
  "alerts.age18": "You must be 18 or older.",
1926
+ "alerts.album.emptyTitle": "Empty album",
969
1927
  "alerts.attention": "Attention",
970
1928
  "alerts.block": "Block",
971
1929
  "alerts.camera": "Camera error",
@@ -975,6 +1933,7 @@ export const EN_MESSAGES: FlatMessages = {
975
1933
  "alerts.couldNotRemove": "Couldn’t remove.",
976
1934
  "alerts.couldNotRemoveTrip": "Couldn’t remove the trip.",
977
1935
  "alerts.couldNotSave": "Couldn’t save.",
1936
+ "alerts.couldNotSaveHandle": "Couldn't save the @.",
978
1937
  "alerts.couldNotSaveNetworks": "Couldn’t save social links.",
979
1938
  "alerts.crop": "Couldn’t crop",
980
1939
  "alerts.dataExport.createJobFailed": "Couldn’t create the export job",
@@ -983,6 +1942,8 @@ export const EN_MESSAGES: FlatMessages = {
983
1942
  "alerts.dataExport.serverTimeout": "Timed out waiting for the server export",
984
1943
  "alerts.dataExport.shareDialogTitle": "Export local data",
985
1944
  "alerts.dataExport.sharingUnavailable": "Sharing is unavailable on this device",
1945
+ "alerts.deactivate": "Disable",
1946
+ "alerts.delete": "Delete",
986
1947
  "alerts.devicePermission.location": "location",
987
1948
  "alerts.devicePermission.notifications": "notifications",
988
1949
  "alerts.devicePermission.pairFormat": "{first} and {second}",
@@ -995,13 +1956,20 @@ export const EN_MESSAGES: FlatMessages = {
995
1956
  "alerts.empty": "Empty",
996
1957
  "alerts.error": "Error",
997
1958
  "alerts.errorSave": "Couldn’t save",
1959
+ "alerts.fileOpenFailed": "Could not open the file.",
1960
+ "alerts.fileTitle": "File",
998
1961
  "alerts.flash.sendFail": "Couldn’t send the reaction.",
999
1962
  "alerts.gallery": "Gallery",
1963
+ "alerts.galleryPickFail": "Couldn't pick images.",
1000
1964
  "alerts.genericFail": "Couldn’t complete the action.",
1001
1965
  "alerts.genericRetry": "Couldn’t finish. Try again.",
1966
+ "alerts.invalidBirthDate": "Invalid date of birth. Use DD/MM/YYYY.",
1002
1967
  "alerts.invalidExamDate": "Invalid last exam date. Use DD/MM/YYYY.",
1968
+ "alerts.invalidReminderDate": "Invalid reminder date. Use DD/MM/YYYY.",
1003
1969
  "alerts.limit": "Limit",
1004
1970
  "alerts.location": "Location",
1971
+ "alerts.locationUnavailable": "Couldn’t get your current location.",
1972
+ "alerts.mediaPreparing": "Media is still being prepared.",
1005
1973
  "alerts.mic": "Microphone",
1006
1974
  "alerts.ops": "Oops",
1007
1975
  "alerts.permission.cameraBlocked": "Camera blocked. Enable it in device settings.",
@@ -1017,6 +1985,11 @@ export const EN_MESSAGES: FlatMessages = {
1017
1985
  "alerts.photoPick": "Couldn’t pick photo",
1018
1986
  "alerts.photoUpload": "Couldn’t upload photo",
1019
1987
  "alerts.pinInvalid": "Invalid PIN. Use at least 4 digits.",
1988
+ "alerts.pinMismatch": "PIN mismatch",
1989
+ "alerts.pinMismatchBody": "Confirm the same PIN in both fields.",
1990
+ "alerts.postEmpty": "Write something or add media.",
1991
+ "alerts.preferenceUnavailable": "This preference is not available on the server yet.",
1992
+ "alerts.publishFail": "Couldn’t publish.",
1020
1993
  "alerts.push.blockedWebMessage": "Allow Proulr notifications in your browser to get messages like WhatsApp Web.",
1021
1994
  "alerts.push.blockedWebTitle": "Notifications blocked",
1022
1995
  "alerts.push.deniedMessage": "Enable Proulr notifications in your phone settings to receive alerts.",
@@ -1067,19 +2040,34 @@ export const EN_MESSAGES: FlatMessages = {
1067
2040
  "alerts.pushTest.sendError": "Send error.",
1068
2041
  "alerts.pushTest.ticketFormat": "Ticket {id}",
1069
2042
  "alerts.pushTest.tokenUnavailable": "Push token unavailable.",
2043
+ "alerts.remove": "Remove",
1070
2044
  "alerts.report": "Report",
1071
2045
  "alerts.report.already": "You already reported this profile in the last 24 hours.",
1072
2046
  "alerts.report.chooseReason": "Choose a report reason.",
1073
2047
  "alerts.report.needLogin": "Sign in to report.",
1074
2048
  "alerts.report.writeSummary": "Write a short summary of what happened.",
2049
+ "alerts.repost": "Repost",
2050
+ "alerts.repostSoon": "Reposting will be available soon.",
2051
+ "alerts.repostThoughtsSoon": "Reposting thoughts will be available soon.",
2052
+ "alerts.revoke": "Revoke",
2053
+ "alerts.saveFailed": "Could not save.",
2054
+ "alerts.selectImageFail": "Couldn’t select the image.",
2055
+ "alerts.selectMediaFail": "Couldn’t select the media.",
2056
+ "alerts.selectVideoFail": "Couldn’t select the video.",
2057
+ "alerts.sendFailRetry": "Couldn’t send. Try again.",
1075
2058
  "alerts.soon": "Coming soon",
1076
2059
  "alerts.soonFeature": "{feature} isn’t available yet.",
2060
+ "alerts.storyDeleteFail": "Couldn’t delete the story.",
2061
+ "alerts.storyPublishFail": "Couldn’t publish the story.",
2062
+ "alerts.storyTextEmpty": "Write something to publish a text story.",
1077
2063
  "alerts.systemNotif.browserLabel": "Set up in browser",
1078
2064
  "alerts.systemNotif.browserSubtitle": "Open Proulr site permissions in this browser",
1079
2065
  "alerts.systemNotif.deviceLabel": "Set up on device",
1080
2066
  "alerts.systemNotif.deviceSubtitle": "Open the system notification settings",
1081
2067
  "alerts.tryAgain": "Try again.",
1082
2068
  "alerts.unavailable": "Unavailable",
2069
+ "alerts.useCapturedPhotoFail": "Couldn’t use the captured photo.",
2070
+ "alerts.useMediaFail": "Couldn’t use this media.",
1083
2071
  "alerts.wait": "Please wait",
1084
2072
  "alerts.webNotif.chromiumSteps": "In {browser}: tap the padlock (or ⓘ icon) to the left of the URL {origin} → Site settings → Notifications → Allow.",
1085
2073
  "alerts.webNotif.firefoxSteps": "In Firefox: tap the padlock to the left of the URL {origin} → Secure connection → More information → Permissions → Notifications → Allow.",
@@ -1088,16 +2076,42 @@ export const EN_MESSAGES: FlatMessages = {
1088
2076
  "alerts.webNotif.safariSteps": "In Safari: open Settings (or Safari → Settings on Mac) → Websites → Notifications → find {origin} and choose Allow.",
1089
2077
  "alerts.webNotif.title": "Site permissions",
1090
2078
  "alerts.yourHandle": "Your @",
2079
+ "auth.ageGate.allowCamera": "Allow camera",
1091
2080
  "auth.ageGate.banner": "It’s quick and secure: the video is only used to verify adult age — we don’t ask for an ID or date of birth in this step.",
2081
+ "auth.ageGate.cameraHint": "Center your face in the oval and tap start",
1092
2082
  "auth.ageGate.cameraNotReady": "The camera isn’t ready yet. Give it a moment.",
1093
2083
  "auth.ageGate.captureFaceFail": "Couldn’t capture your face.",
1094
2084
  "auth.ageGate.captureFaceVideoFail": "Couldn’t capture your face in the video.",
1095
2085
  "auth.ageGate.cta": "Continue — it only takes a moment",
1096
2086
  "auth.ageGate.errorTitle": "Verification error",
2087
+ "auth.ageGate.manualReviewBody": "We'll review your video manually. You'll get access once the review is complete.",
2088
+ "auth.ageGate.manualReviewBodyInternal": "We'll review your video manually on the internal board. You'll be cleared once the review is approved.",
2089
+ "auth.ageGate.manualReviewConfirmBody": "Your case will be reviewed on Proulr's internal board. You don't need to send an email — just confirm below to join the review queue.",
1097
2090
  "auth.ageGate.manualReviewHint": "If automatic validation fails, we review it manually — you won’t lose your signup.",
2091
+ "auth.ageGate.manualReviewQueueSubtitle": "Your age verification is in the Proulr team queue",
2092
+ "auth.ageGate.manualReviewSentSubtitle": "Your verification was sent to the Proulr team",
2093
+ "auth.ageGate.manualReviewTitle": "Review in progress",
2094
+ "auth.ageGate.notesPlaceholder": "Tell us what happened (optional)",
2095
+ "auth.ageGate.permissionBody": "We need the front camera to verify your age with a short video.",
2096
+ "auth.ageGate.permissionBodyWeb": "We need the browser camera to verify your age with a short video.",
2097
+ "auth.ageGate.prepareCountdown": "Get ready… {count}",
2098
+ "auth.ageGate.preparing": "Preparing…",
1098
2099
  "auth.ageGate.processingSubtitle": "Analyzing your video. It usually takes a few seconds.",
1099
2100
  "auth.ageGate.processingTitle": "Verifying age",
1100
2101
  "auth.ageGate.recordVideoFail": "Video recording failed.",
2102
+ "auth.ageGate.recording": "Recording…",
2103
+ "auth.ageGate.recordingCountdown": "Recording… keep your face in the oval ({count})",
2104
+ "auth.ageGate.retry": "Try again",
2105
+ "auth.ageGate.retryNow": "Try again now",
2106
+ "auth.ageGate.retryRecord": "Try recording again",
2107
+ "auth.ageGate.reviewInProgressSubtitle": "Couldn't automatically confirm that you're 18 or older",
2108
+ "auth.ageGate.reviewInProgressTitle": "Verification under review",
2109
+ "auth.ageGate.sendManualReview": "Send for manual review",
2110
+ "auth.ageGate.serviceUnavailableBody": "The verification model didn't respond in time. Try again in a moment.",
2111
+ "auth.ageGate.serviceUnavailableTitle": "Service unavailable",
2112
+ "auth.ageGate.signOut": "Sign out",
2113
+ "auth.ageGate.startVerify": "Start verification",
2114
+ "auth.ageGate.startVerifyFail": "Couldn't start verification.",
1101
2115
  "auth.ageGate.steps": "1. Center your face in the oval\n2. Record a 3-second video\n3. Wait for automatic validation",
1102
2116
  "auth.ageGate.subtitle": "Just a 3-second video to confirm you’re 18 or older",
1103
2117
  "auth.ageGate.title": "Quick and secure verification",
@@ -1105,7 +2119,17 @@ export const EN_MESSAGES: FlatMessages = {
1105
2119
  "auth.ageGate.trustFastTitle": "Quick",
1106
2120
  "auth.ageGate.trustSafeBody": "Used only to confirm age. Your data stays protected",
1107
2121
  "auth.ageGate.trustSafeTitle": "Secure",
2122
+ "auth.backup.confirmPlaceholder": "Confirm password",
2123
+ "auth.backup.createBody": "Set a password to recover your encrypted messages on another phone. If you signed in with email, you can use the same account password.",
2124
+ "auth.backup.createTitle": "Backup password",
2125
+ "auth.backup.passwordPlaceholder": "Backup password",
2126
+ "auth.backup.restore": "Restore",
2127
+ "auth.backup.restoreBody": "Enter your backup password to decrypt history on this device.",
2128
+ "auth.backup.restoreTitle": "Restore messages",
2129
+ "auth.backup.saveContinue": "Save and continue",
1108
2130
  "auth.common.back": "Back",
2131
+ "auth.google.a11y": "Google",
2132
+ "auth.google.continue": "Continue with Google",
1109
2133
  "auth.googleError.expoGoIncomplete": "Google sign-in not completed in Expo Go. Set EXPO_PUBLIC_AUTH_REDIRECT_URL (exp://IP:8081/--/auth-callback) or test with npx expo run:android.",
1110
2134
  "auth.googleError.generic": "Couldn’t complete Google sign-in.",
1111
2135
  "auth.googleError.inProgress": "Google sign-in is already in progress.",
@@ -1163,35 +2187,195 @@ export const EN_MESSAGES: FlatMessages = {
1163
2187
  "auth.welcome.createAccount": "Create account",
1164
2188
  "auth.welcome.heroCaption": "Join the night hunt",
1165
2189
  "auth.welcome.signIn": "Sign in",
2190
+ "chat.a11y.addGroupPhoto": "Add group photo",
2191
+ "chat.a11y.changeGroupPhoto": "Change group photo",
2192
+ "chat.a11y.closeConversation": "Close conversation",
2193
+ "chat.a11y.closePreview": "Close preview",
2194
+ "chat.a11y.closeReactions": "Close reactions",
2195
+ "chat.a11y.closeSelection": "Close selection",
2196
+ "chat.a11y.collapseInviteLink": "Collapse invite link",
2197
+ "chat.a11y.dateFilter": "Date filter",
2198
+ "chat.a11y.discardAudio": "Discard audio",
2199
+ "chat.a11y.editGroupName": "Edit group name",
2200
+ "chat.a11y.groupSections": "Group sections",
2201
+ "chat.a11y.inboxSections": "Inbox sections",
2202
+ "chat.a11y.memberActions": "Actions for {name}",
2203
+ "chat.a11y.moreEmojis": "More emojis",
2204
+ "chat.a11y.moreOptions": "More options",
2205
+ "chat.a11y.openImage": "Open image",
2206
+ "chat.a11y.pauseAudio": "Pause audio",
2207
+ "chat.a11y.pauseRecording": "Pause recording",
2208
+ "chat.a11y.playAudio": "Play audio",
2209
+ "chat.a11y.reactWith": "React with {emoji}",
2210
+ "chat.a11y.removeOption": "Remove option",
2211
+ "chat.a11y.removePhrase": "Remove phrase",
2212
+ "chat.a11y.reply": "Reply",
2213
+ "chat.a11y.reportGroup": "Report group",
2214
+ "chat.a11y.resumeRecording": "Resume recording",
2215
+ "chat.a11y.search": "Search",
2216
+ "chat.a11y.sendAudio": "Send audio",
2217
+ "chat.a11y.sendMedia": "Send media",
2218
+ "chat.a11y.sendMessage": "Send message",
2219
+ "chat.a11y.viewOnceAbout": "About view once",
2220
+ "chat.a11y.waitingSend": "Waiting to send",
2221
+ "chat.action.add": "Add",
2222
+ "chat.action.addMembers": "Add members",
2223
+ "chat.action.close": "Close",
2224
+ "chat.action.copy": "Copy",
2225
+ "chat.action.cropImage": "Crop image",
2226
+ "chat.action.delete": "Delete",
2227
+ "chat.action.deleteForEveryone": "Delete for everyone",
2228
+ "chat.action.deleteForMe": "Delete for me",
2229
+ "chat.action.deleteGroup": "Delete group",
2230
+ "chat.action.demoteAdmin": "Remove admin",
2231
+ "chat.action.generateNew": "Generate new",
2232
+ "chat.action.groupInfo": "Group info",
2233
+ "chat.action.inviteViaLink": "Invite via link",
2234
+ "chat.action.learnMore": "Learn more",
2235
+ "chat.action.leave": "Leave",
2236
+ "chat.action.mute": "Mute",
2237
+ "chat.action.next": "Next",
2238
+ "chat.action.promoteAdmin": "Make admin",
2239
+ "chat.action.remove": "Remove",
2240
+ "chat.action.removeFromGroup": "Remove from group",
2241
+ "chat.action.removeMember": "Remove member",
2242
+ "chat.action.replace": "Replace",
2243
+ "chat.action.reply": "Reply",
2244
+ "chat.action.report": "Report",
2245
+ "chat.action.revoke": "Revoke",
2246
+ "chat.action.send": "Send",
2247
+ "chat.action.sendLocation": "Send location",
2248
+ "chat.action.share": "Share",
2249
+ "chat.action.shareAlbum": "Share album",
2250
+ "chat.action.tryAgain": "Try again",
2251
+ "chat.action.unmute": "Unmute",
2252
+ "chat.action.update": "Refresh",
2253
+ "chat.album.activeMany": "{count} active albums",
2254
+ "chat.album.activeOne": "1 active album",
2255
+ "chat.album.availableInChat": "Available inside a conversation",
2256
+ "chat.album.editTitle": "Edit album",
2257
+ "chat.album.manage": "Manage albums",
2258
+ "chat.album.privateHint": "Create, edit, and share private photos in this chat",
2259
+ "chat.album.privateTitle": "Private albums",
2260
+ "chat.album.requestHintMine": "When they share, the album appears here in chat.",
2261
+ "chat.album.requestHintPeer": "Choose an album to share with this person.",
2262
+ "chat.album.requestPeerPrivate": "Requested access to the private album",
2263
+ "chat.album.sectionHint": "Create or edit your albums here before sharing in chat.",
2264
+ "chat.album.stopSharing": "Stop sharing ({count})",
2265
+ "chat.audio.a11y.record": "Record audio",
1166
2266
  "chat.audio.error.recordFail": "Failed to record the audio.",
2267
+ "chat.audio.error.sendFail": "Couldn't send the audio.",
2268
+ "chat.audio.error.startFail": "Couldn't start recording.",
1167
2269
  "chat.audio.error.unavailable": "Audio file unavailable.",
2270
+ "chat.audio.error.unavailableThrow": "Audio unavailable",
2271
+ "chat.audio.expoGoTitle": "Expo Go",
2272
+ "chat.audio.micNeeded": "We need the microphone to record audio messages.",
2273
+ "chat.audio.pause": "Pause",
2274
+ "chat.audio.resume": "Resume",
2275
+ "chat.audio.shortBody": "Record at least half a second before sending.",
2276
+ "chat.audio.shortTitle": "Audio too short",
1168
2277
  "chat.backup.restoreFail": "Could not restore the backup.",
1169
2278
  "chat.backup.wrongPassword": "Incorrect backup password.",
1170
2279
  "chat.common.listPair": "{a} and {b}",
1171
2280
  "chat.common.someone": "Someone",
1172
2281
  "chat.common.you": "You",
2282
+ "chat.create.aboutPlaceholder": "About the group",
2283
+ "chat.create.detailsSubtitle": "Name, photo and description",
2284
+ "chat.create.detailsTitle": "Group details",
2285
+ "chat.create.emptyContacts": "No recent contacts in inbox.",
2286
+ "chat.create.emptySearch": "No one found with that name.",
2287
+ "chat.create.error.createFail": "Couldn't create the group. Try again.",
2288
+ "chat.create.error.photoFail": "Couldn't add the photo. Try again.",
2289
+ "chat.create.namePlaceholder": "e.g. Night hunt",
2290
+ "chat.create.participantsIncludingYou": "{count} participants (including you)",
2291
+ "chat.create.photoHint": "Tap the camera to take or choose a group image (optional).",
2292
+ "chat.create.searchPlaceholder": "Name or @handle",
2293
+ "chat.create.selectHint": "Select at least one person from inbox or search on Vibes.",
2294
+ "chat.create.selectedCount": "{count} selected",
2295
+ "chat.create.submit": "Create group",
1173
2296
  "chat.date.today": "Today",
1174
2297
  "chat.date.yesterday": "Yesterday",
2298
+ "chat.dateFilter.apply": "Apply filter",
2299
+ "chat.dateFilter.clear": "Clear filter",
2300
+ "chat.dateFilter.from": "From",
2301
+ "chat.dateFilter.hint": "Filter conversations by the date of the last message. Use DD/MM/YYYY.",
2302
+ "chat.dateFilter.placeholder": "DD/MM/YYYY",
2303
+ "chat.dateFilter.title": "Filter by date",
2304
+ "chat.dateFilter.to": "To",
2305
+ "chat.delete.title": "Delete message?",
2306
+ "chat.emoji.title": "Emojis",
1175
2307
  "chat.empty.chats.title": "No conversations yet.",
1176
2308
  "chat.empty.flashes.hint": "Reactions and interest signals show up here.",
1177
2309
  "chat.empty.flashes.title": "No Flashes yet",
1178
2310
  "chat.empty.visits.hint": "When someone opens your profile, they’ll show up here.",
1179
2311
  "chat.empty.visits.title": "No one viewed your profile in the last 24h",
2312
+ "chat.emptyDetail.subtitle": "Pick a conversation from the list to get started.",
2313
+ "chat.emptyDetail.title": "Select a chat",
1180
2314
  "chat.fab.closed": "Create in Chat",
1181
2315
  "chat.fab.newGroup": "New group",
2316
+ "chat.file.a11yDownload": "Download {name}",
2317
+ "chat.file.a11yOpen": "Open {name}",
2318
+ "chat.file.downloading": "Downloading…",
1182
2319
  "chat.file.error.downloadFailed": "Couldn't download the file.",
1183
2320
  "chat.file.error.notDownloaded": "File hasn't been downloaded yet.",
2321
+ "chat.file.error.openFail": "Couldn't open the file.",
1184
2322
  "chat.file.error.unavailable": "File unavailable.",
2323
+ "chat.file.openDetail": "Choose download or download and open on the device.",
1185
2324
  "chat.file.openDialogTitle": "Open file",
2325
+ "chat.file.openDownload": "Download",
2326
+ "chat.file.openDownloadAndOpen": "Download and open",
2327
+ "chat.file.tapDownload": "Tap to download",
2328
+ "chat.file.tapOpen": "Tap to open",
1186
2329
  "chat.filter.all": "All",
1187
2330
  "chat.filter.nearby": "Nearby",
1188
2331
  "chat.filter.online": "Online",
1189
2332
  "chat.filter.received": "Received",
1190
2333
  "chat.filter.sent": "Sent",
1191
2334
  "chat.filter.unread": "Unread",
2335
+ "chat.group.addDescription": "Add description",
2336
+ "chat.group.addMembers.empty": "No contacts available to add.",
2337
+ "chat.group.addMembers.errorAdd": "Couldn't add. Make sure you're an admin.",
2338
+ "chat.group.addMembers.errorLoad": "Couldn't load the group.",
2339
+ "chat.group.addMembers.selectHint": "Select people to join the group.",
2340
+ "chat.group.addMembers.title": "Add members",
2341
+ "chat.group.deleteBody": "This deletes the group and history for everyone. This can't be undone.",
2342
+ "chat.group.deleteTitle": "Delete group",
2343
+ "chat.group.demoteBody": "Remove admin permission from {name}?",
2344
+ "chat.group.description": "Description",
2345
+ "chat.group.descriptionPlaceholder": "Description (optional)",
2346
+ "chat.group.documentsTab": "Documents",
2347
+ "chat.group.editTitle": "Edit group",
2348
+ "chat.group.emptyDocuments": "No documents in this group yet.",
2349
+ "chat.group.emptyLinks": "No links shared in this group yet.",
2350
+ "chat.group.emptyMedia": "No photos, videos, or GIFs in this group yet.",
2351
+ "chat.group.error.deleteFail": "Couldn't delete the group.",
2352
+ "chat.group.error.demoteFail": "Couldn't remove admin.",
2353
+ "chat.group.error.leaveFail": "Couldn't leave the group. Try again.",
2354
+ "chat.group.error.muteFail": "Couldn't update group mute.",
2355
+ "chat.group.error.photoUpdateFail": "Couldn't update the group photo.",
2356
+ "chat.group.error.promoteFail": "Couldn't make admin.",
2357
+ "chat.group.error.removeMemberFail": "Couldn't remove the member.",
2358
+ "chat.group.error.updateFail": "Couldn't update the group.",
1192
2359
  "chat.group.header.members": "{count} members",
1193
2360
  "chat.group.header.onlineAndMembers": "{online} online · {count} members",
2361
+ "chat.group.infoFallback": "Info",
2362
+ "chat.group.infoSubtitle": "Group · {count} participants",
2363
+ "chat.group.leaveBody": "You'll stop receiving messages from this group.",
2364
+ "chat.group.leaveTitle": "Leave group",
2365
+ "chat.group.linksTab": "Links",
2366
+ "chat.group.mediaTab": "Media",
2367
+ "chat.group.membersTab": "Members",
2368
+ "chat.group.namePlaceholder": "Group name",
2369
+ "chat.group.nameRequiredBody": "Enter a name for the group.",
2370
+ "chat.group.nameRequiredTitle": "Name required",
2371
+ "chat.group.participantsCount": "{count} participants",
1194
2372
  "chat.group.photo.error.mustBeImage": "The group photo must be an image.",
2373
+ "chat.group.photoPromptTitle": "Group photo",
2374
+ "chat.group.promoteBody": "Grant admin permission to {name}?",
2375
+ "chat.group.removeMemberBody": "Remove {name} from the group?",
2376
+ "chat.group.role.admin": "Admin",
2377
+ "chat.group.role.owner": "Owner",
2378
+ "chat.group.searchMembers": "Search members",
1195
2379
  "chat.group.system.created": "Group was created",
1196
2380
  "chat.group.system.createdTitled": "Group \"{title}\" was created",
1197
2381
  "chat.group.system.memberJoined": "New member {name} joined the group",
@@ -1203,20 +2387,95 @@ export const EN_MESSAGES: FlatMessages = {
1203
2387
  "chat.group.system.renamed": "The group was renamed to {title}",
1204
2388
  "chat.group.system.renamedBy": "{name} changed the group name to {title}",
1205
2389
  "chat.group.system.updated": "Group update",
2390
+ "chat.group.tab.members": "Members",
1206
2391
  "chat.groupInvite.shareMessage": "Join the group \"{title}\" on Proulr\n{url}",
2392
+ "chat.icebreakers.hint": "Tap a suggestion to start the conversation",
2393
+ "chat.icebreakers.title": "Icebreakers",
1207
2394
  "chat.inbox.distanceHidden": "Distance hidden",
1208
2395
  "chat.inbox.distanceUnavailable": "Distance unavailable",
2396
+ "chat.inbox.noMessagesYet": "No messages yet",
2397
+ "chat.inbox.opening": "Opening…",
2398
+ "chat.input.placeholder": "Message",
2399
+ "chat.invite.enterToAccept": "Sign in to accept the invite",
2400
+ "chat.invite.error.expired": "This invite has expired.",
2401
+ "chat.invite.error.invalid": "Invite invalid or unavailable.",
2402
+ "chat.invite.error.joinFail": "Couldn't join the group. Try again.",
2403
+ "chat.invite.error.joinTitle": "Couldn't join",
2404
+ "chat.invite.error.limit": "This invite reached its usage limit.",
2405
+ "chat.invite.error.needLogin": "Sign in to join the group.",
2406
+ "chat.invite.error.revoked": "This invite was revoked.",
2407
+ "chat.invite.error.tryLater": "Try again later.",
2408
+ "chat.invite.goToChats": "Go to chats",
2409
+ "chat.invite.hasAccount": "I already have an account",
2410
+ "chat.invite.joining": "Joining the group…",
1209
2411
  "chat.invite.subtitle": "Joining the group",
1210
2412
  "chat.invite.title": "Invite",
2413
+ "chat.inviteBubble.cta": "Invite to join the group",
2414
+ "chat.inviteBubble.title": "Group invite",
2415
+ "chat.inviteLink.copiedBody": "Paste it in any chat or app.",
2416
+ "chat.inviteLink.copiedBodyShare": "Paste it in WhatsApp or any chat.",
2417
+ "chat.inviteLink.copiedTitle": "Link copied",
2418
+ "chat.inviteLink.error.copy": "Couldn't copy the link.",
2419
+ "chat.inviteLink.error.load": "Couldn't load the invite link.",
2420
+ "chat.inviteLink.error.regenerate": "Couldn't generate a new link.",
2421
+ "chat.inviteLink.error.revoke": "Couldn't revoke the link.",
2422
+ "chat.inviteLink.error.share": "Couldn't share the link.",
2423
+ "chat.inviteLink.newToastBody": "The previous invite was invalidated.",
2424
+ "chat.inviteLink.newToastTitle": "New link",
2425
+ "chat.inviteLink.regenerateBody": "The current link will stop working. Continue?",
2426
+ "chat.inviteLink.regenerateTitle": "Generate new link",
2427
+ "chat.inviteLink.revokeBody": "Anyone with the link will no longer be able to join via invite.",
2428
+ "chat.inviteLink.revokeTitle": "Revoke link",
2429
+ "chat.inviteLink.revokedBody": "The invite was deactivated.",
2430
+ "chat.inviteLink.revokedTitle": "Link revoked",
2431
+ "chat.location.current": "Current location",
2432
+ "chat.location.error.load": "Couldn't load your location.",
2433
+ "chat.location.error.unavailable": "Couldn't get your current location.",
2434
+ "chat.location.lookingUp": "Looking up address…",
2435
+ "chat.location.refreshing": "Updating…",
2436
+ "chat.location.shareHint": "Share where you are now in this conversation.",
2437
+ "chat.location.title": "Send location",
2438
+ "chat.location.unavailable": "Location unavailable.",
1211
2439
  "chat.media.albumRevokedNamed": "Album removed: {name}",
1212
2440
  "chat.media.audio": "Audio",
2441
+ "chat.media.captionPlaceholder": "Add a caption...",
2442
+ "chat.media.error.createAlbum": "Couldn't create the album.",
2443
+ "chat.media.error.cropOpen": "Couldn't open the crop tool.",
1213
2444
  "chat.media.error.readImage": "Couldn't read the image.",
1214
2445
  "chat.media.error.readSelected": "Couldn't read the selected media.",
2446
+ "chat.media.error.select": "Couldn't select the media.",
2447
+ "chat.media.error.sendDoc": "Couldn't send the document.",
2448
+ "chat.media.error.sendMedia": "Couldn't send the media.",
2449
+ "chat.media.error.stopSharing": "Couldn't stop sharing.",
1215
2450
  "chat.media.file": "File",
1216
2451
  "chat.media.gif": "GIF",
1217
2452
  "chat.media.location": "Location",
1218
2453
  "chat.media.photo": "Photo",
2454
+ "chat.media.sendNow": "Send now",
2455
+ "chat.media.title": "Media",
1219
2456
  "chat.media.video": "Video",
2457
+ "chat.media.videoSent": "Video sent",
2458
+ "chat.member.fallback": "member",
2459
+ "chat.member.thisMember": "this member",
2460
+ "chat.message.blockedProfile": "Profile blocked.",
2461
+ "chat.message.e2eBanner": "End-to-end encrypted messages",
2462
+ "chat.message.invalidConversation": "Invalid conversation or incomplete link.",
2463
+ "chat.message.locationShared": "Shared location",
2464
+ "chat.message.openMap": "Tap to open in maps",
2465
+ "chat.message.openTap": "Tap to open",
2466
+ "chat.message.status.delivered": "Delivered",
2467
+ "chat.message.status.read": "Seen",
2468
+ "chat.message.status.sent": "Sent",
2469
+ "chat.poll.addOption": "Add option",
2470
+ "chat.poll.newTitle": "New poll",
2471
+ "chat.poll.optionPlaceholder": "Option {n}",
2472
+ "chat.poll.optionsLabel": "Options",
2473
+ "chat.poll.questionLabel": "Question",
2474
+ "chat.poll.questionPlaceholder": "Ask a question…",
2475
+ "chat.poll.send": "Send poll",
2476
+ "chat.poll.validation": "Enter a question and at least 2 options.",
2477
+ "chat.poll.votesMany": "{count} votes",
2478
+ "chat.poll.votesOne": "1 vote",
1220
2479
  "chat.presence.offline": "Offline",
1221
2480
  "chat.presence.online": "Online",
1222
2481
  "chat.presence.recent": "Recently active",
@@ -1236,21 +2495,62 @@ export const EN_MESSAGES: FlatMessages = {
1236
2495
  "chat.preview.senderPrefix": "{name}: ",
1237
2496
  "chat.preview.storyReaction": "Reacted to the story",
1238
2497
  "chat.preview.storyReply": "Story reply",
2498
+ "chat.reaction.errorSave": "Couldn't save the reaction. Try again.",
2499
+ "chat.reaction.title": "Reaction",
2500
+ "chat.report.errorMessage": "Couldn't report this message.",
2501
+ "chat.report.errorSend": "Couldn't send the report right now.",
2502
+ "chat.report.groupBody": "Why are you reporting this group?",
2503
+ "chat.report.groupTitle": "Report group",
2504
+ "chat.report.harassment": "Harassment",
2505
+ "chat.report.illegal": "Illegal content",
2506
+ "chat.report.messageBody": "Why are you reporting this message?",
2507
+ "chat.report.other": "Other",
2508
+ "chat.report.sentBody": "Thanks. We'll review it.",
2509
+ "chat.report.sentBodyGroup": "Thanks. We'll review the group.",
2510
+ "chat.report.sentTitle": "Report sent",
2511
+ "chat.report.spam": "Spam",
2512
+ "chat.savedPhrases.empty": "No saved phrases yet.",
2513
+ "chat.savedPhrases.errorLoad": "Couldn't load your saved phrases.",
2514
+ "chat.savedPhrases.errorRemove": "Couldn't remove the phrase.",
2515
+ "chat.savedPhrases.errorSave": "Couldn't save the phrase.",
1239
2516
  "chat.savedPhrases.grabDrink": "Wanna grab a drink?",
1240
2517
  "chat.savedPhrases.greeting": "Hi! How are you?",
1241
2518
  "chat.savedPhrases.letsTalk": "Hey, up for a chat?",
1242
2519
  "chat.savedPhrases.likedProfile": "Loved your profile!",
1243
2520
  "chat.savedPhrases.nearby": "I'm nearby, want to meet up?",
2521
+ "chat.savedPhrases.placeholder": "New phrase...",
2522
+ "chat.savedPhrases.subtitle": "Tap to send or add new quick phrases.",
2523
+ "chat.savedPhrases.title": "Saved phrases",
1244
2524
  "chat.savedPhrases.whatTime": "What time works for you?",
2525
+ "chat.scrollToBottom.a11y": "Jump to the end of the conversation",
2526
+ "chat.scrollToBottom.a11yUnread": "{count} new messages. Jump to the end of the conversation.",
1245
2527
  "chat.search.placeholder": "Search chats…",
1246
2528
  "chat.segment.chats": "Chats",
1247
2529
  "chat.segment.flashes": "Flashes",
1248
2530
  "chat.segment.visits": "Visits",
2531
+ "chat.story.expired": "Story expired",
2532
+ "chat.story.reacted": "You reacted to the story",
2533
+ "chat.story.reactedPeer": "Reacted to your story",
2534
+ "chat.story.replied": "You replied to the story",
2535
+ "chat.story.repliedPeer": "Replied to your story",
1249
2536
  "chat.storyReply.peerKeyUnavailable": "Recipient public key unavailable.",
1250
2537
  "chat.thread.decryptFailed": "[could not decrypt]",
1251
2538
  "chat.thread.fallbackGroup": "Group",
1252
2539
  "chat.thread.fallbackName": "Conversation",
2540
+ "chat.thread.muteOff": "Notifications are on again.",
2541
+ "chat.thread.muteOn": "Notifications muted for this person.",
2542
+ "chat.toast.done": "Done",
2543
+ "chat.viewOnce.delete": "Delete",
2544
+ "chat.viewOnce.infoBody": "View-once photos, videos, and audio disappear from the conversation after the person opens the file once.",
2545
+ "chat.viewOnce.moreInfoBody": "You have 14 days to open it. You can't forward, save, or share. After opening, the media disappears from the conversation.",
2546
+ "chat.viewOnce.openFail": "Couldn't open this view-once media.",
2547
+ "chat.viewOnce.pause": "Pause",
2548
+ "chat.viewOnce.play": "Play",
2549
+ "chat.viewOnce.title": "View once",
1253
2550
  "common.active": "Active",
2551
+ "common.ad": "Ad",
2552
+ "common.album.create": "Create album",
2553
+ "common.album.createA11y": "Create album",
1254
2554
  "common.album.defaultName": "My album",
1255
2555
  "common.album.expiry10m": "10 minutes",
1256
2556
  "common.album.expiry1h": "1 hour",
@@ -1263,8 +2563,11 @@ export const EN_MESSAGES: FlatMessages = {
1263
2563
  "common.album.maxAlbums": "You can have at most {max} albums.",
1264
2564
  "common.album.maxPhotos": "Maximum of {max} photos per album.",
1265
2565
  "common.album.maxVideos": "Maximum of {max} video per album.",
2566
+ "common.album.new": "New",
1266
2567
  "common.app": "App",
1267
2568
  "common.attention": "Attention",
2569
+ "common.back": "Back",
2570
+ "common.camera": "Camera",
1268
2571
  "common.camera.notReady": "The camera isn’t ready yet. Give it a moment.",
1269
2572
  "common.camera.photoSaveFail": "Couldn’t save the photo.",
1270
2573
  "common.camera.streamUnavailable": "Camera stream unavailable in this browser.",
@@ -1277,17 +2580,28 @@ export const EN_MESSAGES: FlatMessages = {
1277
2580
  "common.cancel": "Cancel",
1278
2581
  "common.chat": "Chat",
1279
2582
  "common.chats": "Chats",
2583
+ "common.close": "Close",
1280
2584
  "common.confirm": "Confirm",
2585
+ "common.delete": "Delete",
2586
+ "common.document": "Document",
2587
+ "common.emDash": "—",
1281
2588
  "common.error": "Error",
1282
2589
  "common.flashes": "Flashes",
2590
+ "common.gallery": "Gallery",
1283
2591
  "common.general": "General",
1284
2592
  "common.huntConnectDiscover": "Hunt · Connect · Discover",
1285
2593
  "common.id": "ID",
2594
+ "common.loading": "Loading…",
1286
2595
  "common.media": "Media",
1287
2596
  "common.media.readFail": "Couldn’t read the selected media.",
2597
+ "common.member": "Member",
2598
+ "common.no": "No",
1288
2599
  "common.notifications": "Notifications",
1289
2600
  "common.ops": "Oops",
1290
2601
  "common.options": "Options",
2602
+ "common.permissions": "Permissions",
2603
+ "common.photo": "Photo",
2604
+ "common.poll": "Poll",
1291
2605
  "common.privacy": "Privacy",
1292
2606
  "common.purchase.cancelled": "Purchase canceled.",
1293
2607
  "common.purchase.genericFail": "Couldn’t complete the purchase. Try again in a moment.",
@@ -1303,8 +2617,12 @@ export const EN_MESSAGES: FlatMessages = {
1303
2617
  "common.purchase.unavailableNotConfigured": "In-app purchases unavailable — set EXPO_PUBLIC_REVENUECAT_* in this build.",
1304
2618
  "common.purchase.unavailableRuntime": "In-app purchases are only available in the iOS/Android app (native build).",
1305
2619
  "common.purchase.unavailableSdkMissing": "Purchases SDK not installed. Add react-native-purchases and create a new native build.",
2620
+ "common.reload": "Reload",
2621
+ "common.remove": "Remove",
2622
+ "common.retry": "Try again",
1306
2623
  "common.save": "Save",
1307
2624
  "common.saved": "Saved",
2625
+ "common.search": "Search",
1308
2626
  "common.security": "Security",
1309
2627
  "common.social": "Social",
1310
2628
  "common.soon": "Coming soon",
@@ -1312,7 +2630,15 @@ export const EN_MESSAGES: FlatMessages = {
1312
2630
  "common.tagline": "Proulr — Hunt · Connect · Discover",
1313
2631
  "common.tryAgain": "Try again.",
1314
2632
  "common.version": "Version",
2633
+ "common.video": "Video",
2634
+ "common.yes": "Yes",
2635
+ "discover.a11y.blurredProfile": "Hunt in another region to see this profile",
2636
+ "discover.a11y.centerLocation": "Center on my location",
2637
+ "discover.a11y.searchPlace": "Search place",
1315
2638
  "discover.browse.defaultLabel": "Selected region",
2639
+ "discover.browse.huntHere": "Hunt here",
2640
+ "discover.browse.infoBanner": "Hunt mode: you see who’s in the chosen region, but no one there can see you. Your real location doesn’t change.",
2641
+ "discover.browse.searchPlaceholder": "Search city, neighborhood, or address",
1316
2642
  "discover.browse.subtitle": "Choose a region to hunt",
1317
2643
  "discover.empty.creators": "No creators nearby right now.",
1318
2644
  "discover.empty.default": "No one nearby yet.",
@@ -1334,6 +2660,7 @@ export const EN_MESSAGES: FlatMessages = {
1334
2660
  "discover.hunt.changeRegion": "Change region",
1335
2661
  "discover.hunt.otherRegion": "another region",
1336
2662
  "discover.hunt.useMyLocation": "Use my location",
2663
+ "discover.position.all": "All positions",
1337
2664
  "discover.position.ativo": "Top",
1338
2665
  "discover.position.passivo": "Bottom",
1339
2666
  "discover.position.preferNot": "Prefer not to say",
@@ -1358,13 +2685,53 @@ export const EN_MESSAGES: FlatMessages = {
1358
2685
  "flash.msg.flash": "sent you a Flash",
1359
2686
  "flash.msg.heart": "liked you",
1360
2687
  "flash.msg.wave": "said hi",
2688
+ "flash.picker.forSomeone": "for {name}",
2689
+ "flash.picker.hint": "One reaction per person every 24 hours",
2690
+ "flash.picker.title": "Send reaction",
1361
2691
  "flash.reaction.chat": "Chat",
1362
2692
  "flash.reaction.eyes": "Interested",
1363
2693
  "flash.reaction.fire": "Hot",
1364
2694
  "flash.reaction.flash": "Flash",
1365
2695
  "flash.reaction.heart": "Liked",
1366
2696
  "flash.reaction.wave": "Hi",
2697
+ "hybrid.camera.a11y.close": "Close camera",
2698
+ "hybrid.camera.a11y.flip": "Flip camera",
2699
+ "hybrid.camera.a11y.record": "Record video",
2700
+ "hybrid.camera.a11y.stop": "Stop recording",
2701
+ "hybrid.camera.a11y.takePhoto": "Take photo",
2702
+ "hybrid.camera.allowCamera": "Allow camera",
2703
+ "hybrid.camera.micBanner": "Allow the microphone to record video.",
2704
+ "hybrid.camera.micRequired": "Microphone permission is required to record.",
2705
+ "hybrid.camera.openSettings": "Open settings",
2706
+ "hybrid.camera.openSettingsBody": "Open device settings and allow camera and microphone for Proulr.",
2707
+ "hybrid.camera.permissionBody": "To capture a photo or video, allow camera access",
2708
+ "hybrid.camera.permissionMicSuffix": " and microphone",
2709
+ "hybrid.camera.permissionTitle": "Camera permission required",
2710
+ "hybrid.camera.preparingVideo": "Preparing video...",
2711
+ "hybrid.camera.savingPhoto": "Saving photo...",
2712
+ "hybrid.camera.settingsShort": "Settings",
2713
+ "hybrid.camera.startFail": "Couldn’t start the camera.",
2714
+ "hybrid.camera.takePhotoFail": "Couldn’t take the photo.",
2715
+ "hybrid.camera.videoUnavailable": "Video recording unavailable on this device.",
1367
2716
  "hybrid.chatThread.fallbackTitle": "Conversation",
2717
+ "hybrid.crop.adjustDiscover": "Adjust Hunt photo",
2718
+ "hybrid.crop.areaInvalid": "Invalid crop area. Adjust and try again.",
2719
+ "hybrid.crop.fail": "Couldn’t crop the image.",
2720
+ "hybrid.crop.hint": "Drag and pinch to frame",
2721
+ "hybrid.crop.hintTwoFingers": "Drag and pinch with two fingers to frame",
2722
+ "hybrid.crop.imageMissing": "Image not found.",
2723
+ "hybrid.crop.loadFail": "Couldn’t load the image.",
2724
+ "hybrid.crop.needAdjust": "Adjust the crop area and try again.",
2725
+ "hybrid.map.keyMissing": "Google Maps key is not configured.",
2726
+ "hybrid.map.loadFail": "Couldn’t load the map.",
2727
+ "hybrid.map.mountFail": "Couldn’t mount the map.",
2728
+ "hybrid.media.a11y.closeFullscreen": "Close viewer",
2729
+ "hybrid.media.a11y.closeVideo": "Close video",
2730
+ "hybrid.media.a11y.playVideo": "Play video",
2731
+ "hybrid.story.a11y.cancelDelete": "Cancel deletion",
2732
+ "hybrid.story.deleteConfirm": "This story will be permanently removed.",
2733
+ "hybrid.story.loadMediaFail": "Couldn’t load the media.",
2734
+ "hybrid.story.noneAvailable": "No stories available.",
1368
2735
  "hybrid.unavailable.album": "Album unavailable.",
1369
2736
  "hybrid.unavailable.chatThread": "Conversation unavailable — go back and try again.",
1370
2737
  "hybrid.unavailable.comments": "Comments unavailable.",
@@ -1374,6 +2741,17 @@ export const EN_MESSAGES: FlatMessages = {
1374
2741
  "hybrid.unavailable.profileReport": "Profile unavailable for reporting.",
1375
2742
  "hybrid.unavailable.settingsHome": "Update the app to see the settings.",
1376
2743
  "hybrid.unavailable.socialProfile": "Social profile unavailable.",
2744
+ "profile.a11y.back": "Back",
2745
+ "profile.a11y.changeVibesPhoto": "Change Vibes photo",
2746
+ "profile.a11y.close": "Close",
2747
+ "profile.a11y.closeTip": "Close tip",
2748
+ "profile.a11y.dismiss": "Dismiss",
2749
+ "profile.a11y.editTravel": "Edit trip",
2750
+ "profile.a11y.moreActions": "More actions",
2751
+ "profile.a11y.nextProfile": "Next profile",
2752
+ "profile.a11y.previousProfile": "Previous profile",
2753
+ "profile.a11y.quickMessage": "Quick message",
2754
+ "profile.a11y.viewFullPhoto": "View photo full screen",
1377
2755
  "profile.ageGate.mail.accountSection": "--- Account details ---",
1378
2756
  "profile.ageGate.mail.descriptionSection": "--- What happened ---",
1379
2757
  "profile.ageGate.mail.email": "Email: {email}",
@@ -1397,9 +2775,62 @@ export const EN_MESSAGES: FlatMessages = {
1397
2775
  "profile.ageVerify.noFace": "We couldn't detect a face in the video. Try again with good lighting.",
1398
2776
  "profile.ageVerify.notAdult": "We couldn't confirm that you're 18 or older.",
1399
2777
  "profile.ageVerify.serviceUnavailable": "The verification service is overloaded or restarting. Wait a few seconds and try again.",
2778
+ "profile.album.accessPending": "Album request sent",
2779
+ "profile.album.accessRequestFail": "Couldn't request album access.",
2780
+ "profile.album.locked": "Album locked",
2781
+ "profile.album.lockedHint": "Private album — request access",
2782
+ "profile.album.pendingHint": "Waiting for private album access",
2783
+ "profile.album.pendingShort": "Request sent",
2784
+ "profile.album.private": "Private album",
2785
+ "profile.album.requestAccess": "Request album access",
2786
+ "profile.album.requestSentBody": "We'll notify you in chat.",
2787
+ "profile.album.sending": "Sending…",
2788
+ "profile.album.sharedHint": "Albums shared with you",
2789
+ "profile.album.viewAlbums": "View albums",
2790
+ "profile.albums.activeInChat": "Active in this chat",
2791
+ "profile.albums.addMediaFail": "Couldn't add the media.",
2792
+ "profile.albums.addPhoto": "Add photo",
2793
+ "profile.albums.addVideo": "Add video",
2794
+ "profile.albums.createA11y": "Create album",
2795
+ "profile.albums.createFail": "Couldn't create the album.",
2796
+ "profile.albums.createFirst": "Create first album",
2797
+ "profile.albums.createNew": "New album",
2798
+ "profile.albums.delete": "Delete album",
2799
+ "profile.albums.deleteConfirm": "This action cannot be undone.",
2800
+ "profile.albums.deleteFail": "Couldn't delete the album.",
2801
+ "profile.albums.deleteTitle": "Delete album",
2802
+ "profile.albums.editPrivateSubtitle": "Edit private album",
2803
+ "profile.albums.editSubtitle": "Edit album",
2804
+ "profile.albums.emptyEditor": "No items yet. Add photos or a private video.",
2805
+ "profile.albums.emptyListHint": "Create private photo and video collections to share in chat.",
2806
+ "profile.albums.emptyListTitle": "No albums yet",
2807
+ "profile.albums.emptyShare": "Empty album",
2808
+ "profile.albums.emptyShareBody": "Add photos or videos before sharing.",
2809
+ "profile.albums.emptyViewer": "This album is empty or unavailable.",
2810
+ "profile.albums.expiryHint": "How long will {name} stay visible in this chat?",
2811
+ "profile.albums.expiryTitle": "Access duration",
1400
2812
  "profile.albums.fallbackName": "Album",
2813
+ "profile.albums.limits": "{photos}/{maxPhotos} photos · {videos}/{maxVideos} video",
2814
+ "profile.albums.mediaUnavailable": "Media unavailable",
2815
+ "profile.albums.nameLabel": "Album name",
2816
+ "profile.albums.nextPhoto": "Next photo",
2817
+ "profile.albums.optionsA11y": "Album options",
2818
+ "profile.albums.previousPhoto": "Previous photo",
2819
+ "profile.albums.removeFail": "Couldn't remove the item.",
2820
+ "profile.albums.removeItemBody": "Remove this item from the album?",
2821
+ "profile.albums.removeItemTitle": "Remove item",
2822
+ "profile.albums.resend": "Resend album",
2823
+ "profile.albums.saveNameFail": "Couldn't save the name.",
2824
+ "profile.albums.sectionCount": "Albums ({count}/{max})",
2825
+ "profile.albums.send": "Send album",
2826
+ "profile.albums.shareChat": "Share in chat",
2827
+ "profile.albums.shareFail": "Couldn't share the album.",
2828
+ "profile.albums.sharing": "Sharing",
2829
+ "profile.albums.stopShare": "Stop sharing",
2830
+ "profile.albums.stopShareFail": "Couldn't stop sharing.",
1401
2831
  "profile.albums.subtitle": "Private photo and video collections",
1402
2832
  "profile.albums.title": "My albums",
2833
+ "profile.albums.videoInAlbum": "Video in album",
1403
2834
  "profile.attribute.bodyHair": "Body hair",
1404
2835
  "profile.attribute.bodyType": "Build",
1405
2836
  "profile.attribute.ethnicity": "Ethnicity",
@@ -1423,10 +2854,51 @@ export const EN_MESSAGES: FlatMessages = {
1423
2854
  "profile.completion.reminderBody": "Complete profiles show up more in Hunt and get more Flashes.",
1424
2855
  "profile.completion.reminderTitle": "Complete your profile",
1425
2856
  "profile.fallback.someone": "Someone",
2857
+ "profile.field.aboutMe": "ABOUT ME",
2858
+ "profile.field.aboutYou": "ABOUT YOU",
2859
+ "profile.field.acceptsExplicit": "Accepts explicit content",
2860
+ "profile.field.communities": "Communities",
2861
+ "profile.field.currentCity": "CURRENT CITY",
2862
+ "profile.field.externalLink": "EXTERNAL LINK",
2863
+ "profile.field.gender": "GENDER",
2864
+ "profile.field.hivStatus": "HIV status",
2865
+ "profile.field.hivStatusVisible": "Show status on profile",
2866
+ "profile.field.interests": "INTERESTS (comma-separated)",
2867
+ "profile.field.interestsLabel": "Interests",
2868
+ "profile.field.lastTest": "Last test",
2869
+ "profile.field.lookingFor": "LOOKING FOR",
2870
+ "profile.field.lookingForSelect": "Looking for",
2871
+ "profile.field.myInterests": "MY INTERESTS (comma-separated)",
2872
+ "profile.field.myTags": "MY TAGS (comma-separated)",
2873
+ "profile.field.myTribes": "My tribes",
2874
+ "profile.field.position": "POSITION",
2875
+ "profile.field.precautions": "Precautions",
2876
+ "profile.field.sexPractices": "Sex practices",
2877
+ "profile.field.showAge": "Show age on profile",
2878
+ "profile.field.showPosition": "Show position on profile",
2879
+ "profile.field.showTribes": "Show tribes on profile",
2880
+ "profile.field.tags": "TAGS (comma-separated)",
2881
+ "profile.field.travelMode": "Travel mode",
2882
+ "profile.field.tribesLiked": "Tribes I like",
2883
+ "profile.field.vaccines": "Vaccines",
2884
+ "profile.field.whatIDo": "WHAT YOU DO",
2885
+ "profile.field.whatIDoSelf": "WHAT I DO",
2886
+ "profile.handle.available": "@ available",
2887
+ "profile.handle.checking": "Checking availability…",
2888
+ "profile.handle.hintShort": "3–30 characters: lowercase letters, numbers, and _",
1426
2889
  "profile.handle.invalidFormat": "Your @ must be 3–30 characters (lowercase letters, numbers, and _).",
2890
+ "profile.handle.placeholder": "your_handle",
1427
2891
  "profile.handle.rateLimited": "You can only change your @ every 30 days.",
1428
2892
  "profile.handle.reserved": "That @ is reserved and can’t be used.",
2893
+ "profile.handle.reservedShort": "This @ is reserved",
1429
2894
  "profile.handle.taken": "That @ is already taken.",
2895
+ "profile.handle.takenShort": "This @ is already taken",
2896
+ "profile.handle.vibesOnlyHint": "Your @ appears only on Vibes, never on Hunt. It can be changed every 30 days.",
2897
+ "profile.hint.photosHoldToRemove": "Hold a photo to remove it. The first one is the main photo.",
2898
+ "profile.hint.profileLink": "For creators: an external link highlighted on your Hunt profile.",
2899
+ "profile.hint.residenceCity": "Where you are today. Later we update it from the city where you stayed the most in the last 30 days.",
2900
+ "profile.hint.residenceCitySeed": "Initial seed for new users. As you use the app, we update it from the city where you stayed the most in the last 30 days.",
2901
+ "profile.hint.testReminderPrivate": "The reminder is private and arrives as a local notification on your device.",
1430
2902
  "profile.moderation.block": "Block profile",
1431
2903
  "profile.moderation.hide": "Hide from grid",
1432
2904
  "profile.moderation.mute": "Mute notifications",
@@ -1557,13 +3029,68 @@ export const EN_MESSAGES: FlatMessages = {
1557
3029
  "profile.photo.add": "Add photo",
1558
3030
  "profile.photo.addPromptBody": "Profiles with a photo get many more Flashes.",
1559
3031
  "profile.photo.addPromptTitle": "How about a photo?",
3032
+ "profile.photo.change": "Change photo",
1560
3033
  "profile.photo.continueWithout": "Continue without a photo",
1561
3034
  "profile.photo.huntTitle": "Hunt photo",
3035
+ "profile.photo.primaryBadge": "primary",
1562
3036
  "profile.photo.readError": "Couldn't read the image.",
1563
3037
  "profile.photo.sourceCamera": "Camera",
1564
3038
  "profile.photo.sourceMessage": "How would you like to add the image?",
1565
3039
  "profile.photo.sourceTitle": "Profile photo",
1566
3040
  "profile.photo.vibesTitle": "Vibes photo",
3041
+ "profile.placeholder.aboutMe": "Tell a bit about yourself...",
3042
+ "profile.placeholder.cityExample": "e.g. São Paulo",
3043
+ "profile.placeholder.displayName": "What should we call you",
3044
+ "profile.placeholder.displayNameProfile": "How you appear on your profile",
3045
+ "profile.placeholder.externalLink": "https://your-link.com",
3046
+ "profile.placeholder.heightCm": "Height (cm)",
3047
+ "profile.placeholder.interests": "movies, hiking, cooking",
3048
+ "profile.placeholder.lastTest": "Last test (DD/MM/YYYY)",
3049
+ "profile.placeholder.nameOnboarding": "What should we call you",
3050
+ "profile.placeholder.tags": "beach, music, fitness",
3051
+ "profile.placeholder.testReminder": "Next test reminder (DD/MM/YYYY)",
3052
+ "profile.placeholder.vibesDisplayName": "How you appear on Vibes",
3053
+ "profile.placeholder.weightKg": "Weight (kg)",
3054
+ "profile.placeholder.whatIDo": "Job, occupation...",
3055
+ "profile.report.attach": "Attach",
3056
+ "profile.report.attachA11y": "Attach image",
3057
+ "profile.report.blockFail": "Couldn't block the profile.",
3058
+ "profile.report.blockPrompt": "Do you want to block this profile? With a block, you won't see each other.",
3059
+ "profile.report.blockYes": "Yes, block",
3060
+ "profile.report.blockedToast": "Profile blocked. You won't see each other.",
3061
+ "profile.report.detailsPlaceholder": "What happened? Describe it in your own words",
3062
+ "profile.report.evidence": "Evidence (optional)",
3063
+ "profile.report.evidenceHint": "You can attach up to {count} images (screenshots, photos).",
3064
+ "profile.report.intro": "You're reporting {name}. Tell us what happened — our team reviews carefully.",
3065
+ "profile.report.no": "No",
3066
+ "profile.report.reason": "Reason",
3067
+ "profile.report.removeAttachment": "Remove attachment",
3068
+ "profile.report.removeAttachmentA11y": "Remove attachment",
3069
+ "profile.report.send": "Submit report",
3070
+ "profile.report.sentBody": "Thanks. We'll review the report about {name}.",
3071
+ "profile.report.sentTitle": "Report submitted",
3072
+ "profile.report.submitFail": "Couldn't submit the report. Try again.",
3073
+ "profile.report.submittedBody": "Thank you. We'll review the report about {name}.",
3074
+ "profile.report.submittedTitle": "Report submitted",
3075
+ "profile.report.summary": "Summary",
3076
+ "profile.report.summaryPlaceholder": "What happened? Describe in your own words",
3077
+ "profile.report.thisProfile": "this profile",
3078
+ "profile.report.title": "Report",
3079
+ "profile.section.aboutMe": "About me",
3080
+ "profile.section.basic": "Basics",
3081
+ "profile.section.body": "Body",
3082
+ "profile.section.communities": "Communities",
3083
+ "profile.section.health": "Health",
3084
+ "profile.section.identity": "Identity",
3085
+ "profile.section.link": "Link",
3086
+ "profile.section.preferences": "Preferences",
3087
+ "profile.section.profileLink": "Profile link",
3088
+ "profile.section.sexualHealth": "Sexual health",
3089
+ "profile.section.social": "Social networks",
3090
+ "profile.section.tags": "Tags",
3091
+ "profile.section.travel": "Travel",
3092
+ "profile.section.tribes": "Tribes",
3093
+ "profile.section.vibesDisplay": "Vibes display",
1567
3094
  "profile.social.placeholder.gamertag": "gamertag",
1568
3095
  "profile.social.placeholder.handle": "@username",
1569
3096
  "profile.social.placeholder.linkOrId": "link or ID",
@@ -1575,24 +3102,93 @@ export const EN_MESSAGES: FlatMessages = {
1575
3102
  "profile.social.website": "Website",
1576
3103
  "profile.surface.hunt": "Hunt",
1577
3104
  "profile.surface.vibes": "Vibes",
3105
+ "profile.toast.done": "Done",
3106
+ "profile.toast.linkSaveFail": "Couldn't save the link.",
3107
+ "profile.toast.linkSavedBody": "External link updated.",
3108
+ "profile.toast.travelActivated": "Travel indicator turned on",
3109
+ "profile.toast.travelAdded": "Trip added to your profile",
3110
+ "profile.toast.travelTitle": "Travel",
3111
+ "profile.travel.addTitle": "Add trip",
3112
+ "profile.travel.badge": "Traveling",
3113
+ "profile.travel.bannerEyebrow": "On a trip",
3114
+ "profile.travel.confirmAdd": "Yes, add",
3115
+ "profile.travel.confirmIndicateOnly": "Just indicate",
3116
+ "profile.travel.detectionBody": "It looks like you left {fromCity} and are in {toPlace}. Want to add this trip to your profile?",
3117
+ "profile.travel.detectionTitle": "Are you traveling?",
3118
+ "profile.travel.indicatorActivateFail": "Couldn't turn on the travel indicator.",
3119
+ "profile.travel.saveFail": "Couldn't save the trip.",
3120
+ "profile.travel.saveToProfile": "Save to profile",
3121
+ "profile.trip.add": "Add trip",
1578
3122
  "profile.trip.destinationFallback": "Destination",
1579
3123
  "profile.trip.fromDate": "From {date}",
3124
+ "profile.trip.placeholder.city": "City",
3125
+ "profile.trip.placeholder.country": "Country (optional)",
3126
+ "profile.trip.placeholder.end": "End (DD/MM/YYYY)",
3127
+ "profile.trip.placeholder.start": "Start (DD/MM/YYYY)",
1580
3128
  "profile.trip.untilDate": "Until {date}",
3129
+ "profile.ui.aboutMe": "About me",
3130
+ "profile.ui.age": "Age",
3131
+ "profile.ui.albums": "Albums",
3132
+ "profile.ui.back": "Back",
1581
3133
  "profile.ui.customVibesHint": "The rest of your profile stays the same in both modes.",
1582
3134
  "profile.ui.customVibesToggle": "Use a different photo and name on Vibes",
1583
3135
  "profile.ui.customVibesToggleHint": "The rest of your profile stays the same. Only the photo and display name change on Vibes posts.",
3136
+ "profile.ui.data": "Details",
1584
3137
  "profile.ui.editTitle": "Edit profile",
3138
+ "profile.ui.externalLink": "External link",
3139
+ "profile.ui.getStarted": "Get started",
1585
3140
  "profile.ui.handleLabel": "YOUR @",
3141
+ "profile.ui.interests": "Interests",
3142
+ "profile.ui.lastTest": "Last test",
3143
+ "profile.ui.link": "Link",
3144
+ "profile.ui.linkClicks": "Link clicks",
3145
+ "profile.ui.media": "Media",
1586
3146
  "profile.ui.modeHunt": "Hunt mode",
1587
3147
  "profile.ui.modeVibes": "Vibes mode",
1588
3148
  "profile.ui.myProfile": "My profile",
1589
3149
  "profile.ui.nameLabel": "YOUR NAME",
3150
+ "profile.ui.noMediaPublished": "No media published.",
3151
+ "profile.ui.noMediaYet": "No media published yet.",
3152
+ "profile.ui.noPhotosYet": "No photos published yet.",
3153
+ "profile.ui.noPostsYet": "No posts yet.",
3154
+ "profile.ui.noThoughtsYet": "No thoughts yet.",
3155
+ "profile.ui.notFound": "Profile not found.",
3156
+ "profile.ui.openChat": "Open chat",
3157
+ "profile.ui.openLink": "Open link",
3158
+ "profile.ui.photosCount": "Photos",
1590
3159
  "profile.ui.photosHint": "The first photo is your main profile photo.",
1591
3160
  "profile.ui.photosTitle": "Photos",
3161
+ "profile.ui.posts": "Posts",
3162
+ "profile.ui.presenceStatus": "Status",
1592
3163
  "profile.ui.save": "Save profile",
3164
+ "profile.ui.saveLink": "Save link",
3165
+ "profile.ui.status": "Status",
3166
+ "profile.ui.tags": "Tags",
3167
+ "profile.ui.tribes": "Tribes",
3168
+ "profile.ui.trips": "Trips",
1593
3169
  "profile.ui.vibesName": "VIBES NAME",
1594
3170
  "profile.ui.vibesPhoto": "VIBES PHOTO",
1595
3171
  "profile.ui.vibesPhotoHint": "Shows next to your @ on Vibes posts.",
3172
+ "profile.ui.viewProfile": "View profile",
3173
+ "profile.ui.views": "Views",
3174
+ "profile.ui.visitExternalLink": "Visit external link",
3175
+ "profile.ui.visitLink": "Visit my link",
3176
+ "profile.ui.yourProfile": "Your profile",
3177
+ "profile.view.actionFail": "Couldn't complete the action.",
3178
+ "profile.view.blocked": "Profile blocked.",
3179
+ "profile.view.gotIt": "Got it",
3180
+ "profile.view.hidden": "Profile hidden.",
3181
+ "profile.view.keyboardTip": "Use ← → on the keyboard to see the next profile",
3182
+ "profile.view.messagePlaceholder": "Message for {name}...",
3183
+ "profile.view.muted": "Notifications muted for this person.",
3184
+ "profile.view.next": "Next",
3185
+ "profile.view.notFound": "Profile not found.",
3186
+ "profile.view.previous": "Previous",
3187
+ "profile.view.reactionSent": "Reaction sent: {label}",
3188
+ "profile.view.sendFailMessage": "Couldn't send the message.",
3189
+ "profile.view.sendMessage": "Send message",
3190
+ "profile.view.sendReaction": "Send reaction",
3191
+ "profile.view.unmuted": "Notifications allowed again.",
1596
3192
  "referral.creator.metric.clicks": "Link clicks",
1597
3193
  "referral.creator.metric.converted": "Subscriptions",
1598
3194
  "referral.creator.metric.onboarded": "Completed profiles",
@@ -1656,6 +3252,7 @@ export const EN_MESSAGES: FlatMessages = {
1656
3252
  "referral.settings.yourHandle": "Your invite code",
1657
3253
  "referral.web.influencer.cta": "Contact us",
1658
3254
  "referral.web.influencer.pitch": "Partners get an @ link and an aggregated metrics dashboard for campaigns.",
3255
+ "referral.web.influencer.privacy": "Metrics show clicks, sign-ups, and conversions — never who signed up.",
1659
3256
  "referral.web.influencer.title": "Influencer program",
1660
3257
  "report.harassment": "Harassment",
1661
3258
  "report.harassment.hint": "Threats, humiliation, or abusive behavior",
@@ -1691,6 +3288,17 @@ export const EN_MESSAGES: FlatMessages = {
1691
3288
  "share.copied.hint": "Content copied to your clipboard.",
1692
3289
  "share.linkCopied": "Link copied",
1693
3290
  "share.linkCopied.hint": "Paste it anywhere to send your invite.",
3291
+ "shell.a11y.backToApp": "Back to app",
3292
+ "shell.a11y.closeMenu": "Close menu",
3293
+ "shell.a11y.closeProfileMenu": "Close profile menu",
3294
+ "shell.a11y.closeSelection": "Close selection",
3295
+ "shell.a11y.groupInfo": "Info for {title}",
3296
+ "shell.a11y.moreOptions": "More options",
3297
+ "shell.a11y.openProfileMenu": "Open profile menu",
3298
+ "shell.a11y.search": "Search",
3299
+ "shell.a11y.switchToMode": "Switch to {mode}",
3300
+ "shell.a11y.viewMyProfile": "View my profile",
3301
+ "shell.a11y.viewPeerProfile": "View {name}’s profile",
1694
3302
  "shell.about.build": "Build",
1695
3303
  "shell.about.followIg": "Follow on Instagram",
1696
3304
  "shell.about.followX": "Follow on X",
@@ -1699,10 +3307,66 @@ export const EN_MESSAGES: FlatMessages = {
1699
3307
  "shell.about.section.social": "Social",
1700
3308
  "shell.about.section.terms": "Terms & policies",
1701
3309
  "shell.about.title": "About",
3310
+ "shell.ad.label": "Ad",
3311
+ "shell.appIcon.appearanceSection": "Home screen appearance",
1702
3312
  "shell.appIcon.defaultHint": "Main icon with the brand",
1703
3313
  "shell.appIcon.defaultLabel": "Proulr",
1704
3314
  "shell.appIcon.discreetHint": "Neutral calendar look on the home screen",
1705
3315
  "shell.appIcon.discreetLabel": "Discreet",
3316
+ "shell.appIcon.nativeBuildHint": "Alternate icons require a native build (iOS or Android). In Expo Go or on the web, the default icon stays active.",
3317
+ "shell.appIcon.nativeOnly": "Available only in the native app.",
3318
+ "shell.appIcon.restartHint": "On some devices the icon only changes after restarting the launcher or phone.",
3319
+ "shell.appIcon.subtitle": "Switch the app icon on the home screen",
3320
+ "shell.appIcon.swapHint": "The switch may take a few seconds. In development builds, run prebuild after adding new icon assets.",
3321
+ "shell.appIcon.title": "Discreet icon",
3322
+ "shell.appIcon.webUnavailable": "Icon switching is not available on the web.",
3323
+ "shell.appLock.biometricConfirm": "Confirm biometrics for the lock",
3324
+ "shell.appLock.biometricHintAvailable": "Face ID / fingerprint",
3325
+ "shell.appLock.biometricHintUnavailable": "Biometrics unavailable on this device",
3326
+ "shell.appLock.biometricSection": "Biometrics",
3327
+ "shell.appLock.biometricToggle": "Unlock with biometrics",
3328
+ "shell.appLock.confirmPin": "Confirm PIN",
3329
+ "shell.appLock.disable": "Disable lock",
3330
+ "shell.appLock.disableBody": "Remove PIN and biometrics from this device?",
3331
+ "shell.appLock.disableConfirm": "Disable",
3332
+ "shell.appLock.disableTitle": "Disable lock",
3333
+ "shell.appLock.enabledBody": "Next time you open the app, you will need to enter the PIN or use biometrics.",
3334
+ "shell.appLock.enabledTitle": "Lock enabled",
3335
+ "shell.appLock.enterPinHint": "Enter your PIN to continue",
3336
+ "shell.appLock.gatePrompt": "Unlock Proulr",
3337
+ "shell.appLock.lockedTitle": "Proulr locked",
3338
+ "shell.appLock.nativeOnly": "Available only in the native app.",
3339
+ "shell.appLock.newPin": "New PIN",
3340
+ "shell.appLock.pinPlaceholder": "PIN",
3341
+ "shell.appLock.pinSection": "PIN",
3342
+ "shell.appLock.protectHint": "Protect the app on shared devices. The PIN stays only on this device (SecureStore).",
3343
+ "shell.appLock.savePin": "Save PIN",
3344
+ "shell.appLock.subtitle": "PIN and biometrics when opening the app",
3345
+ "shell.appLock.title": "Startup lock",
3346
+ "shell.appLock.unlock": "Unlock",
3347
+ "shell.appLock.useBiometric": "Use biometrics",
3348
+ "shell.appLock.wrongPin": "Incorrect PIN",
3349
+ "shell.blocked.actionUnblock": "unblock",
3350
+ "shell.blocked.actionUnhide": "unhide",
3351
+ "shell.blocked.bulkUnblock": "Unblock all",
3352
+ "shell.blocked.bulkUnhide": "Unhide all",
3353
+ "shell.blocked.cancelSelection": "Cancel selection",
3354
+ "shell.blocked.confirmBody": "Do you want to {action} {name}?",
3355
+ "shell.blocked.confirmTitle": "Confirm",
3356
+ "shell.blocked.done": "Done",
3357
+ "shell.blocked.empty": "No blocked or hidden profiles.",
3358
+ "shell.blocked.hint": "Tap the photo to unblock/unhide. ⋮ menu for bulk actions.",
3359
+ "shell.blocked.meta": "{status} · Last contact: {date}",
3360
+ "shell.blocked.moreActions": "More actions",
3361
+ "shell.blocked.noRecentContact": "No recent contact",
3362
+ "shell.blocked.profilesSection": "Profiles",
3363
+ "shell.blocked.selectMany": "Select multiple",
3364
+ "shell.blocked.statusBlocked": "Blocked",
3365
+ "shell.blocked.statusHidden": "Hidden",
3366
+ "shell.blocked.statusMuted": "Muted",
3367
+ "shell.blocked.subtitle": "Manage profiles you blocked or hid",
3368
+ "shell.blocked.title": "Hidden and blocked",
3369
+ "shell.blocked.updating": "Updating list…",
1706
3370
  "shell.consent.ads": "Personalized ads",
1707
3371
  "shell.consent.ads.hint": "When we enable ads, we’ll honor this choice",
1708
3372
  "shell.consent.analytics": "Usage analytics",
@@ -1720,6 +3384,38 @@ export const EN_MESSAGES: FlatMessages = {
1720
3384
  "shell.deactivate.signOutNow": "Sign out now",
1721
3385
  "shell.deactivate.subtitle": "Support, sign out, or delete",
1722
3386
  "shell.deactivate.title": "Deactivate account",
3387
+ "shell.device.appVersion": "App version",
3388
+ "shell.device.cacheClearedBody": "Temporary data removed.",
3389
+ "shell.device.cacheClearedTitle": "Cache cleared",
3390
+ "shell.device.clearCache": "Clear device cache",
3391
+ "shell.device.clearCacheHint": "Clears local SDUI cache",
3392
+ "shell.device.connectionOk": "Connection OK",
3393
+ "shell.device.coords": "Lat {lat}, Lng {lng}",
3394
+ "shell.device.copyId": "Copy device ID",
3395
+ "shell.device.copyIdToastBody": "Device identifier copied to the clipboard.",
3396
+ "shell.device.copyIdToastTitle": "ID copied",
3397
+ "shell.device.diagnosticsSection": "Diagnostics",
3398
+ "shell.device.infoSection": "Information",
3399
+ "shell.device.latencyMs": "Approximate latency: {ms} ms",
3400
+ "shell.device.loading": "Loading…",
3401
+ "shell.device.loadingInfo": "Loading device information…",
3402
+ "shell.device.locationOk": "Location OK",
3403
+ "shell.device.manageDevices": "Manage devices",
3404
+ "shell.device.manageDevicesHint": "Active sessions and revocation",
3405
+ "shell.device.osVersion": "OS version",
3406
+ "shell.device.platform": "Platform",
3407
+ "shell.device.refresh": "Refresh information",
3408
+ "shell.device.running": "Running: {task}…",
3409
+ "shell.device.sectionAccount": "Account on this device",
3410
+ "shell.device.subtitle": "Sessions, cache, and diagnostics",
3411
+ "shell.device.taskCache": "clearing cache",
3412
+ "shell.device.taskConnection": "connection test",
3413
+ "shell.device.taskCopyId": "copy ID",
3414
+ "shell.device.taskLocation": "location",
3415
+ "shell.device.testConnection": "Test connection",
3416
+ "shell.device.title": "Device",
3417
+ "shell.device.unknownError": "Unknown error",
3418
+ "shell.device.verifyLocation": "Check location",
1723
3419
  "shell.dnd.clear": "Clear snooze",
1724
3420
  "shell.dnd.quietHours": "Quiet hours",
1725
3421
  "shell.dnd.quietHours.hint": "Uses default 10:00 PM–8:00 AM",
@@ -1730,6 +3426,38 @@ export const EN_MESSAGES: FlatMessages = {
1730
3426
  "shell.dnd.subtitle": "Snooze or mute by schedule",
1731
3427
  "shell.dnd.title": "Do not disturb",
1732
3428
  "shell.dnd.untilTomorrow": "Until tomorrow",
3429
+ "shell.downloadData.emailFallback": "your email",
3430
+ "shell.downloadData.emailHint": "Linked account: {email}. The download link expires in 7 days.",
3431
+ "shell.downloadData.emailStep": "Step 1 — Confirm email",
3432
+ "shell.downloadData.exportLocal": "Export local data",
3433
+ "shell.downloadData.exportQueued": "Export queued",
3434
+ "shell.downloadData.exportReady": "Export ready",
3435
+ "shell.downloadData.exportReadyBody": "Opening download link.",
3436
+ "shell.downloadData.localFail": "Failed to export local data",
3437
+ "shell.downloadData.localHint": "Immediate JSON with saved phrases and app AsyncStorage keys.",
3438
+ "shell.downloadData.localSection": "Step 2 — Local data",
3439
+ "shell.downloadData.localToastBody": "File shared successfully.",
3440
+ "shell.downloadData.localToastTitle": "Local export",
3441
+ "shell.downloadData.openDownload": "Open download",
3442
+ "shell.downloadData.privacyBanner": "Your data lives in two places: on this device (encrypted chat, local preferences) and on the server (profile, flashes, photos). E2E messages export ciphertext — readable content needs your backup password.",
3443
+ "shell.downloadData.reusedJob": " (existing job reused)",
3444
+ "shell.downloadData.serverFail": "Couldn't start the export.",
3445
+ "shell.downloadData.serverHint": "Generates a server file with your account data. The link stays available for 7 days.",
3446
+ "shell.downloadData.serverPackageHint": "Async job with profile and photo metadata. Encrypted messages and local data are not included in this package.",
3447
+ "shell.downloadData.serverSection": "Step 3 — Server data",
3448
+ "shell.downloadData.serverStart": "Start server export",
3449
+ "shell.downloadData.serverStatus": "Server export: {status}",
3450
+ "shell.downloadData.serverTitle": "Server export",
3451
+ "shell.downloadData.statusExpired": "Expired",
3452
+ "shell.downloadData.statusFailed": "Failed",
3453
+ "shell.downloadData.statusLabel": "Status: {status}",
3454
+ "shell.downloadData.statusPending": "Queued",
3455
+ "shell.downloadData.statusProcessing": "Processing",
3456
+ "shell.downloadData.statusReady": "Ready to download",
3457
+ "shell.downloadData.subtitle": "Local and server export",
3458
+ "shell.downloadData.title": "Download my data",
3459
+ "shell.downloadData.unavailableLink": "Link unavailable",
3460
+ "shell.downloadData.unavailableLinkBody": "Couldn't open the download on this device.",
1733
3461
  "shell.drawer.boost": "Boost",
1734
3462
  "shell.drawer.communities": "Communities",
1735
3463
  "shell.drawer.editProfile": "Edit profile",
@@ -1739,6 +3467,8 @@ export const EN_MESSAGES: FlatMessages = {
1739
3467
  "shell.drawer.inviteFriends": "Invite friends",
1740
3468
  "shell.drawer.lists": "Lists",
1741
3469
  "shell.drawer.menu": "Menu",
3470
+ "shell.drawer.modeHunt": "Hunt mode",
3471
+ "shell.drawer.modeVibes": "Vibes mode",
1742
3472
  "shell.drawer.myAlbums": "My albums",
1743
3473
  "shell.drawer.myProfile": "My profile",
1744
3474
  "shell.drawer.premium": "Premium",
@@ -1746,6 +3476,8 @@ export const EN_MESSAGES: FlatMessages = {
1746
3476
  "shell.drawer.safety": "Safety center",
1747
3477
  "shell.drawer.saved": "Saved items",
1748
3478
  "shell.drawer.signOut": "Sign out",
3479
+ "shell.fab.closeCreateMenu": "Close create menu",
3480
+ "shell.hunt.browseFab": "Hunt — see who’s in another region",
1749
3481
  "shell.language.en": "English",
1750
3482
  "shell.language.en.hint": "App text in English",
1751
3483
  "shell.language.ptBr": "Português (Brasil)",
@@ -1754,6 +3486,15 @@ export const EN_MESSAGES: FlatMessages = {
1754
3486
  "shell.language.system": "System",
1755
3487
  "shell.language.system.hint": "Follows device language",
1756
3488
  "shell.language.title": "Language",
3489
+ "shell.muted.confirmBody": "Unmute {name}?",
3490
+ "shell.muted.confirmTitle": "Remove mute",
3491
+ "shell.muted.empty": "No muted members.",
3492
+ "shell.muted.section": "Muted",
3493
+ "shell.muted.statusMuted": "Muted",
3494
+ "shell.muted.subtitle": "Who doesn’t send chat notifications",
3495
+ "shell.muted.title": "Muted members",
3496
+ "shell.muted.unmuteAll": "Unmute all",
3497
+ "shell.muted.updating": "Updating list…",
1757
3498
  "shell.notif.appSounds": "In-app sounds",
1758
3499
  "shell.notif.appVibrations": "In-app vibration",
1759
3500
  "shell.notif.disablePush": "Disable all push",
@@ -1768,6 +3509,47 @@ export const EN_MESSAGES: FlatMessages = {
1768
3509
  "shell.notif.subtitle": "Push alerts, sounds, and vibration",
1769
3510
  "shell.notif.systemMgmt": "System management",
1770
3511
  "shell.notif.title": "Notifications",
3512
+ "shell.notifTest.banner": "Tray notifications only work in the installed app (native build). Remote push doesn’t arrive in Expo Go.",
3513
+ "shell.notifTest.copyToken": "Copy token",
3514
+ "shell.notifTest.diagnostics": "Diagnostics",
3515
+ "shell.notifTest.easConfigured": "Configured",
3516
+ "shell.notifTest.easMissing": "Missing",
3517
+ "shell.notifTest.easProject": "EAS project",
3518
+ "shell.notifTest.env": "Environment",
3519
+ "shell.notifTest.failed": "Failed.",
3520
+ "shell.notifTest.firebaseHint": "If the token isn’t generated, finish FCM setup:",
3521
+ "shell.notifTest.firebaseSection": "Configure Firebase (Android)",
3522
+ "shell.notifTest.firebaseStep1": "1. Create a project in Firebase Console.",
3523
+ "shell.notifTest.firebaseStep2": "2. Add an Android app with package com.proulr.app and download google-services.json.",
3524
+ "shell.notifTest.firebaseStep3": "3. Put the file at the project root and set android.googleServicesFile in app.json.",
3525
+ "shell.notifTest.firebaseStep4": "4. In Firebase > Settings > Cloud Messaging, create a service account key (FCM V1) and upload it to EAS with: eas credentials.",
3526
+ "shell.notifTest.firebaseStep5": "5. Rebuild natively and reinstall the app.",
3527
+ "shell.notifTest.localHint": "Doesn’t depend on the server or FCM. Validates permission, channel, and on-device display.",
3528
+ "shell.notifTest.localLabel": "Local notification",
3529
+ "shell.notifTest.localRun": "Fire local notification",
3530
+ "shell.notifTest.notEmulator": "No (emulator)",
3531
+ "shell.notifTest.openExpoDocs": "Open Expo docs",
3532
+ "shell.notifTest.permission": "Permission",
3533
+ "shell.notifTest.permissionDenied": "Denied",
3534
+ "shell.notifTest.permissionGranted": "Granted",
3535
+ "shell.notifTest.physicalDevice": "Physical device",
3536
+ "shell.notifTest.platform": "Platform",
3537
+ "shell.notifTest.remoteHint": "Sends a real Expo push to this device. Validates the full path used by Flashes and messages (token + FCM + delivery).",
3538
+ "shell.notifTest.remoteLabel": "Remote push (to me)",
3539
+ "shell.notifTest.remoteRun": "Send remote test push",
3540
+ "shell.notifTest.subtitle": "Push diagnostics",
3541
+ "shell.notifTest.success": "Success.",
3542
+ "shell.notifTest.tests": "Tests",
3543
+ "shell.notifTest.title": "Test notifications",
3544
+ "shell.notifTest.tokenCopiedBody": "Paste into Expo Push Tool for manual tests.",
3545
+ "shell.notifTest.tokenCopiedTitle": "Token copied",
3546
+ "shell.notifTest.tokenErrorHint": "On Android, this almost always means Firebase Cloud Messaging (FCM) isn’t configured. See the steps below.",
3547
+ "shell.notifTest.tokenErrorTitle": "Failed to generate token",
3548
+ "shell.notifTest.tokenGenerated": "Token generated",
3549
+ "shell.notifTest.tokenLabel": "Expo push token",
3550
+ "shell.notifTest.tokenSaved": "Token saved on server",
3551
+ "shell.offline.cachedBanner": "No connection — showing the last saved version.",
3552
+ "shell.pageUnavailable": "This settings page is unavailable.",
1771
3553
  "shell.prefs.distanceUnits": "Distance units",
1772
3554
  "shell.prefs.distanceUnits.hint": "Metric, imperial, or system",
1773
3555
  "shell.prefs.keepAwake": "Keep screen awake",
@@ -1807,6 +3589,7 @@ export const EN_MESSAGES: FlatMessages = {
1807
3589
  "shell.privacy.title": "Privacy",
1808
3590
  "shell.privacy.travelIndicator": "Travel indicator",
1809
3591
  "shell.privacy.visibility": "Visibility",
3592
+ "shell.pullToRefresh": "Pull to refresh",
1810
3593
  "shell.quality.adaptive": "Adaptive",
1811
3594
  "shell.quality.maximum": "Maximum",
1812
3595
  "shell.quality.thumbnail": "Thumbnail",
@@ -1835,6 +3618,29 @@ export const EN_MESSAGES: FlatMessages = {
1835
3618
  "shell.safety.section.safety": "Safety",
1836
3619
  "shell.safety.subtitle": "Guides, help, and privacy",
1837
3620
  "shell.safety.title": "Safety center",
3621
+ "shell.search.conversations": "Search conversations…",
3622
+ "shell.search.placeholder": "Search…",
3623
+ "shell.search.postsTags": "Search posts, @ or #…",
3624
+ "shell.sessions.devicesSection": "Devices",
3625
+ "shell.sessions.empty": "No sessions registered yet. They appear after signing in on this device.",
3626
+ "shell.sessions.endCurrentTitle": "End on this device",
3627
+ "shell.sessions.endOthers": "End other sessions",
3628
+ "shell.sessions.endOthersBody": "Sign out all other devices?",
3629
+ "shell.sessions.endOthersDone": "Other sessions ended",
3630
+ "shell.sessions.endOthersDoneBody": "All other devices were signed out.",
3631
+ "shell.sessions.endOthersTitle": "End other sessions",
3632
+ "shell.sessions.loading": "Loading sessions…",
3633
+ "shell.sessions.revokeConfirmCurrent": "You will be signed out of this device.",
3634
+ "shell.sessions.revokeConfirmOther": "End session on this device?",
3635
+ "shell.sessions.revokeFail": "Couldn't revoke this device.",
3636
+ "shell.sessions.revokeTitle": "Revoke device",
3637
+ "shell.sessions.revokedTitle": "Device revoked",
3638
+ "shell.sessions.rowSubtitle": "Version {version} · Last activity {date}",
3639
+ "shell.sessions.signOut": "Sign out",
3640
+ "shell.sessions.subtitle": "Sessions connected to your account. Revoking another device ends the server session when possible.",
3641
+ "shell.sessions.title": "Manage devices",
3642
+ "shell.sessions.toastEnded": "The session was ended on the server. The device will lose access immediately.",
3643
+ "shell.sessions.toastRemoved": "Record removed. Without a saved session identifier, the device may stay connected until the token expires.",
1838
3644
  "shell.settings.aboutProulr": "About Proulr",
1839
3645
  "shell.settings.appIcon": "App icon",
1840
3646
  "shell.settings.appLock": "App lock",
@@ -1865,9 +3671,49 @@ export const EN_MESSAGES: FlatMessages = {
1865
3671
  "shell.settings.title": "Settings",
1866
3672
  "shell.settings.version": "Version",
1867
3673
  "shell.soon.feature": "{label} will be available soon.",
3674
+ "shell.subscriptions.active": "Active",
3675
+ "shell.subscriptions.boost": "Boost",
3676
+ "shell.subscriptions.boostPriced": "Boost — {price}",
3677
+ "shell.subscriptions.boostSuccessBody": "Your boost will be applied according to app rules.",
3678
+ "shell.subscriptions.boostSuccessTitle": "Boost purchased",
3679
+ "shell.subscriptions.consumables": "Consumables",
3680
+ "shell.subscriptions.dayPass": "1-Day PRO Pass",
3681
+ "shell.subscriptions.dayPassPriced": "1-Day PRO Pass — {price}",
3682
+ "shell.subscriptions.inactive": "Inactive",
3683
+ "shell.subscriptions.manage": "Manage subscription",
3684
+ "shell.subscriptions.manageHint": "Open App Store / Play Store settings",
3685
+ "shell.subscriptions.manageSuccessBody": "Use the store screen to change or cancel your subscription.",
3686
+ "shell.subscriptions.manageSuccessTitle": "Store opened",
3687
+ "shell.subscriptions.nativeOnly": "Available only in the native app.",
3688
+ "shell.subscriptions.passSuccessBody": "Your temporary PRO access was linked to the account.",
3689
+ "shell.subscriptions.passSuccessTitle": "Pass activated",
3690
+ "shell.subscriptions.planSection": "Plan",
3691
+ "shell.subscriptions.proSuccessBody": "Proulr Pro was linked to your account.",
3692
+ "shell.subscriptions.proSuccessTitle": "Subscription active",
3693
+ "shell.subscriptions.refresh": "Refresh",
3694
+ "shell.subscriptions.refreshing": "Updating status…",
3695
+ "shell.subscriptions.renewsOn": "Renews on {date}",
3696
+ "shell.subscriptions.restore": "Restore purchase",
3697
+ "shell.subscriptions.restoreHint": "Recover subscriptions already paid on this store account",
3698
+ "shell.subscriptions.restoreSuccessBody": "We checked your store account and updated the status.",
3699
+ "shell.subscriptions.restoreSuccessTitle": "Purchases restored",
3700
+ "shell.subscriptions.storeSection": "Store account",
3701
+ "shell.subscriptions.subscribePro": "Subscribe to Pro",
3702
+ "shell.subscriptions.subscribeProPriced": "Subscribe to Pro ({price})",
3703
+ "shell.subscriptions.subtitle": "Pro, Boost, and 1-day Pass",
3704
+ "shell.subscriptions.title": "Subscriptions",
3705
+ "shell.subscriptions.unavailableConsumables": "One-off purchases become available when RevenueCat is active.",
3706
+ "shell.surface.discoverSubtitle": "You’re in meetup mode",
3707
+ "shell.surface.discoverTitle": "Hunt",
3708
+ "shell.surface.vibesSubtitle": "You’re in social mode",
3709
+ "shell.surface.vibesTitle": "Vibes",
1868
3710
  "shell.tab.chat": "Chat",
1869
3711
  "shell.tab.discover": "Hunt",
1870
3712
  "shell.tab.vibes": "Vibes",
3713
+ "shell.unavailable.body": "We couldn’t load this screen right now. No connection or no data saved on the device.",
3714
+ "shell.unavailable.goHunt": "Go to Hunt",
3715
+ "shell.unavailable.retry": "Try again",
3716
+ "shell.unavailable.title": "Screen unavailable",
1871
3717
  "shell.units.distance": "Distance",
1872
3718
  "shell.units.imperial": "Imperial",
1873
3719
  "shell.units.imperial.hint": "Miles and feet",
@@ -1877,15 +3723,47 @@ export const EN_MESSAGES: FlatMessages = {
1877
3723
  "shell.units.system": "System",
1878
3724
  "shell.units.system.hint": "Follows device language",
1879
3725
  "shell.units.title": "Units",
3726
+ "shell.web.installCta": "Install",
3727
+ "shell.web.installSubtitle": "Open it like an app, with a home-screen icon.",
3728
+ "shell.web.installTitle": "Install Proulr",
3729
+ "shell.web.notNow": "Not now",
3730
+ "social.a11y.addImage": "Add image",
3731
+ "social.a11y.addMedia": "Add media",
3732
+ "social.a11y.addVideo": "Add video",
3733
+ "social.a11y.cancelReply": "Cancel reply",
3734
+ "social.a11y.closeReactions": "Close reactions",
3735
+ "social.a11y.dateFilter": "Date filter",
3736
+ "social.a11y.nextStory": "Next story",
3737
+ "social.a11y.notifyActive": "Notifications from this profile are on",
3738
+ "social.a11y.notifyEnable": "Enable notifications from this profile",
3739
+ "social.a11y.openCamera": "Open camera",
3740
+ "social.a11y.openFullscreenImage": "Open image fullscreen",
3741
+ "social.a11y.openProfile": "Open {name}’s profile",
3742
+ "social.a11y.openThread": "Open thread",
3743
+ "social.a11y.previousStory": "Previous story",
3744
+ "social.a11y.removeMedia": "Remove media",
3745
+ "social.a11y.searchPeopleThreads": "Search people and threads",
3746
+ "social.a11y.sendMessage": "Send message",
3747
+ "social.a11y.sendReply": "Send reply",
3748
+ "social.comments.archive": "Archive",
3749
+ "social.comments.replyTo": "someone",
3750
+ "social.comments.title": "Post",
3751
+ "social.compose.galleryDenied": "Allow gallery access to see your recent photos.",
3752
+ "social.compose.mediaLimit": "You can attach up to {count} photos or videos per post.",
3753
+ "social.compose.mediaRoomLeft": "You can only add {count} more media item(s) to this post.",
3754
+ "social.compose.mediaSelectHint": "Tap Select to choose up to {count} photos or videos.",
1880
3755
  "social.count.millionShort": "{value}M",
1881
3756
  "social.count.thousandShort": "{value}K",
1882
3757
  "social.fab.photos": "Photos",
1883
3758
  "social.fab.publish": "Post",
1884
3759
  "social.fab.story": "Story",
1885
3760
  "social.feed.fab": "Create in Feed",
3761
+ "social.feed.searchPlaceholder": "Search people in the feed...",
1886
3762
  "social.feed.subtitle": "Community posts",
1887
3763
  "social.feed.title": "Feed",
1888
3764
  "social.media.readImageError": "Couldn't read the image.",
3765
+ "social.notify.howHint": "How do you want to be notified about {name}?",
3766
+ "social.notify.title": "Notifications",
1889
3767
  "social.notifyMode.all": "Everything",
1890
3768
  "social.notifyMode.allHint": "Posts, media, and replies from this profile",
1891
3769
  "social.notifyMode.media": "Media only",
@@ -1895,7 +3773,17 @@ export const EN_MESSAGES: FlatMessages = {
1895
3773
  "social.notifyMode.replies": "Replies only",
1896
3774
  "social.notifyMode.repliesHint": "When this person replies to posts",
1897
3775
  "social.people.someone": "Someone",
3776
+ "social.post.mediaOnly": "Post with media",
1898
3777
  "social.post.recentGalleryUnavailable": "Recent gallery is unavailable in this build.",
3778
+ "social.profile.followUpdateFail": "Couldn’t update follow.",
3779
+ "social.profile.mediaEmpty": "No media published yet.",
3780
+ "social.profile.mediaTab": "Media",
3781
+ "social.profile.notFound": "Vibes profile not found.",
3782
+ "social.profile.notifyUpdateFail": "Couldn’t update notifications.",
3783
+ "social.profile.photosVideosCount": "{count} Photos and videos",
3784
+ "social.profile.postsCount": "{count} posts",
3785
+ "social.profile.postsEmpty": "No posts from this person.",
3786
+ "social.profile.postsTab": "Posts",
1899
3787
  "social.replyAudience.everyone": "Anyone",
1900
3788
  "social.replyAudience.everyoneHint": "Everyone can reply to this post.",
1901
3789
  "social.replyAudience.everyoneReply": "Anyone can reply",
@@ -1906,7 +3794,33 @@ export const EN_MESSAGES: FlatMessages = {
1906
3794
  "social.replyAudience.mentionedHint": "Only profiles mentioned in the post can reply.",
1907
3795
  "social.replyAudience.mentionedReply": "Only people you mention can reply",
1908
3796
  "social.saved.title": "Saved items",
3797
+ "social.stats.comments": "Comments",
3798
+ "social.stats.likes": "Likes",
3799
+ "social.stats.reposts": "Reposts",
3800
+ "social.stats.saved": "Saved items",
3801
+ "social.stats.views": "Views",
3802
+ "social.stats.viewsSuffix": " · {count} Views",
3803
+ "social.story.audienceDiscoverHint": "Shows in profile discovery.",
3804
+ "social.story.audienceVibesHint": "Shows in the thoughts feed.",
1909
3805
  "social.story.captureImageError": "Couldn't generate the story image.",
3806
+ "social.story.createNew": "Create new story",
3807
+ "social.story.createTitle": "Create story",
3808
+ "social.story.delete": "Delete",
3809
+ "social.story.deleteA11y": "Delete story",
3810
+ "social.story.deleteTitle": "Delete story",
3811
+ "social.story.deletedBody": "Your story was removed.",
3812
+ "social.story.deletedTitle": "Story deleted",
3813
+ "social.story.gallerySelectHint": "Tap Select to choose a photo or video.",
3814
+ "social.story.mentions": "Mentions",
3815
+ "social.story.messageSentBody": "Your reply was sent in chat.",
3816
+ "social.story.messageSentTitle": "Message sent",
3817
+ "social.story.music": "Music",
3818
+ "social.story.quickReactions": "Quick reactions",
3819
+ "social.story.reactionSentBody": "Your reaction was sent in chat.",
3820
+ "social.story.reactionSentTitle": "Reaction sent",
3821
+ "social.story.textPlaceholder": "Start typing...",
3822
+ "social.story.viewMine": "View my stories",
3823
+ "social.story.yourStories": "Your stories",
1910
3824
  "social.storyFont.bold": "Bold",
1911
3825
  "social.storyFont.extrabold": "Impact",
1912
3826
  "social.storyFont.medium": "Light",