1298 lines
89 KiB
TypeScript
1298 lines
89 KiB
TypeScript
/** fr — batch 3. */
|
||
const frBatch3 = {
|
||
settingsUi: {
|
||
proSupport: {
|
||
title: "Pro et soutien",
|
||
subtitle: "Des extras facultatifs qui gardent SkateSpots gratuit",
|
||
prepaidTitle: "Prépayé, pas un abonnement",
|
||
prepaidBody: "Chaque achat est un paiement unique en Bitcoin/Lightning — pas de compte, pas de prélèvement récurrent, pas de garde. Payer à nouveau prolonge votre durée.",
|
||
sasquatchTitle: "Sasquatch Pro",
|
||
sasquatchBenefit: "Débloque l'assistant IA personnel — il peut lire votre propre Stash, vos crews et vos annonces — et aide à financer le projet.",
|
||
active: "Actif",
|
||
activeUntil: "Actif jusqu'au {{date}}",
|
||
daysLeft: "{{count}} jours restants",
|
||
notActive: "Inactif",
|
||
goPro: "Passer Pro",
|
||
extend: "Prolonger Pro",
|
||
day: "jour",
|
||
featuredTitle: "Mise en avant",
|
||
featuredBenefit: "Placez une annonce en haut avec un badge Pro — pour les profils The Lab, les événements, les shops et les tours.",
|
||
featuredHow: "Les paliers de durée s'appliquent à tous les types ; les engagements plus longs coûtent moins cher par jour. Vous mettez une annonce en avant quand vous la créez ou la modifiez.",
|
||
featuredUntil: "Jusqu'au {{date}}",
|
||
yourFeatured: "Vos annonces mises en avant",
|
||
noneFeatured: "Aucune mise en avant active.",
|
||
freeTitle: "Parcours gratuits",
|
||
freeBody: "La FAQ IA et la recherche locale sont toujours gratuites, et vous pouvez publier une annonce de marketplace avec une preuve de travail gratuite au lieu des frais en sats."
|
||
},
|
||
notFound: {
|
||
seoTitle: "404 - Page introuvable",
|
||
seoDescription: "La page que vous cherchez est introuvable. Retournez à la page d'accueil pour continuer à naviguer.",
|
||
message: "Oups ! Page introuvable",
|
||
returnHome: "Retour à l'accueil"
|
||
},
|
||
loginArea: {
|
||
signUp: "S'inscrire",
|
||
logIn: "Se connecter"
|
||
},
|
||
accountSwitcher: {
|
||
switchAccount: "Changer de compte",
|
||
walletSettings: "Paramètres du portefeuille",
|
||
addAccount: "Ajouter un autre compte",
|
||
logout: "Se déconnecter"
|
||
},
|
||
amberHint: {
|
||
defaultAction: "envoyer",
|
||
multiBefore: "Votre signataire vous demandera d'approuver",
|
||
multiTimes: "{{approvals}} fois",
|
||
multiAfter: "pour {{action}} — c'est normal pour les messages chiffrés (une approbation par destinataire). Approuvez chacune.",
|
||
single: "Votre signataire vous demandera d'approuver pour {{action}}."
|
||
},
|
||
amberCallback: {
|
||
processing: "Traitement de la connexion Amber…",
|
||
gotResult: "Résultat reçu : {{result}}",
|
||
noResultDebug: "Aucun résultat d'Amber",
|
||
noResultToast: "Aucun résultat reçu d'Amber. L'opération a peut-être été annulée.",
|
||
validPubkey: "Clé publique valide ! Connexion…",
|
||
loginSuccessful: "Connexion réussie !",
|
||
loginErrorDebug: "Erreur de connexion : {{error}}",
|
||
invalidResultDebug: "Format de résultat invalide : {{result}}",
|
||
loggedInTitle: "Connecté",
|
||
amberLoginDesc: "Connexion réussie avec Amber !",
|
||
loginFailedTitle: "Échec de la connexion",
|
||
loginFailedDesc: "Impossible de terminer la connexion Amber. Veuillez réessayer.",
|
||
invalidPubkeyDesc: "Clé publique invalide reçue d'Amber.",
|
||
sessionLostToast: "Les données de session ont été perdues. Veuillez réessayer.",
|
||
eventSignedTitle: "Événement signé",
|
||
eventSignedDesc: "Votre événement a été signé par Amber.",
|
||
signingFailedTitle: "Échec de la signature",
|
||
signingFailedDesc: "Impossible de traiter l'événement signé d'Amber.",
|
||
operationCompleteTitle: "Opération terminée",
|
||
operationCompleteDesc: "{{op}} terminé."
|
||
},
|
||
loginDialog: {
|
||
loginWithAmber: "Se connecter avec Amber (Android)",
|
||
welcomeTitle: "Bienvenue sur SkateSpots",
|
||
welcomeSubtitle: "Inscrivez-vous ou connectez-vous pour continuer",
|
||
newHere: "Nouveau ici ?",
|
||
createFree: "Créez un compte gratuit. Aucun e-mail requis.",
|
||
createAccount: "Créer un compte",
|
||
orLogIn: "Ou connectez-vous",
|
||
loggedInTitle: "🛹 Connecté !",
|
||
loggedIn: "Connecté !",
|
||
connectedAmber: "Connecté via Amber !",
|
||
amberLoginFailed: "Échec de la connexion Amber",
|
||
amberCancelled: "Connexion annulée. Appuyez sur « Ouvrir Amber » pour réessayer.",
|
||
amberNotFound: "Amber introuvable. Assurez-vous qu'Amber est installé depuis le ZapStore.",
|
||
loginFailed: "Échec de la connexion",
|
||
pubkeyError: "Collez votre pubkey hex (64 caractères) ou npub depuis Amber",
|
||
pairedSigner: "Associé à votre signataire.",
|
||
connectFailed: "Impossible de se connecter à votre signataire.",
|
||
openedEncrypted: "Votre clé chiffrée a été ouverte.",
|
||
openKeyFailed: "Impossible d'ouvrir cette clé.",
|
||
bunkerPrefix: "Doit commencer par bunker://",
|
||
connectedBunker: "Connecté via bunker !",
|
||
bunkerFailed: "Échec : {{error}}",
|
||
checkBunkerUri: "Vérifiez votre URI bunker",
|
||
nsecPrefix: "Doit commencer par nsec1",
|
||
invalidNsec: "nsec invalide : {{error}}",
|
||
checkKey: "Vérifiez votre clé",
|
||
noExtensionTitle: "Aucune extension trouvée",
|
||
noExtensionDesc: "Installez Alby ou une autre extension NIP-07.",
|
||
amberIdleDesc: "Votre clé reste dans Amber. Un appui — approuvez dans Amber et vous revenez ici, connecté. Rien à copier.",
|
||
continueWithAmber: "Continuer avec Amber",
|
||
noAmberGetIt: "Vous n'avez pas Amber ? Obtenez-le →",
|
||
waitingAmberTitle: "En attente d'Amber…",
|
||
waitingAmberDesc: "Approuvez la demande dans Amber. Vous serez connecté automatiquement dès votre retour.",
|
||
openAmberAgain: "Ouvrir Amber à nouveau",
|
||
havingTrouble: "Des difficultés ? Saisissez votre clé manuellement",
|
||
enterPublicKey: "Saisissez votre clé publique",
|
||
enterPublicKeyDescBefore: "Uniquement si le flux automatique n'a pas fonctionné. Dans Amber : appuyez sur votre profil →",
|
||
copyPublicKey: "Copier la clé publique",
|
||
enterPublicKeyDescAfter: "puis collez-la ici.",
|
||
connect: "Connecter",
|
||
back: "← Retour",
|
||
signInWithPhone: "Connectez-vous avec votre téléphone",
|
||
signInWithPhoneDesc: "Scannez avec une application signataire (Amber, nsec.app). Votre clé ne quitte jamais votre téléphone.",
|
||
showPairingCode: "Afficher le code d'appairage",
|
||
waitingSigner: "En attente de votre signataire…",
|
||
copyLink: "Copier le lien",
|
||
orPasteBunker: "ou collez une URL bunker",
|
||
bunkerTitle: "Bunker (NIP-46)",
|
||
bunkerPasteBefore: "Collez votre",
|
||
bunkerPasteAfter: "URI.",
|
||
amberInstructions: "Paramètres → Bunker NIP-46 → Créer → Copier",
|
||
nsecAppInstructions: "Connecter l'app → Copier l'URI bunker",
|
||
secretKeyTitle: "Clé secrète",
|
||
secretKeyRawDesc: "Collez directement votre clé secrète Nostr.",
|
||
secretKeyEncDesc: "Ouvrez une sauvegarde de clé protégée par mot de passe.",
|
||
rawNsec: "nsec brut",
|
||
encryptedNip49: "Chiffré (NIP-49)",
|
||
nsecWarning: "⚠️ À n'utiliser que sur un appareil de confiance. Ne partagez jamais votre nsec.",
|
||
login: "Connexion",
|
||
encSaferDesc: "Plus sûr : la clé reste chiffrée jusqu'à ce que vous saisissiez votre mot de passe, la sauvegarde peut donc être conservée en toute sécurité dans le cloud ou un gestionnaire de mots de passe.",
|
||
password: "Mot de passe",
|
||
openEncryptedKey: "Ouvrir la clé chiffrée",
|
||
browserExtensionTitle: "Extension de navigateur (NIP-07)",
|
||
browserExtensionDesc: "Idéal sur ordinateur. Compatible avec Alby, nos2x, Flamingo.",
|
||
loginWithExtension: "Se connecter avec l'extension"
|
||
},
|
||
signupDialog: {
|
||
download: "Télécharger",
|
||
stepChoose: "Choisir",
|
||
stepProfile: "Profil",
|
||
stepSaveKey: "Enregistrer la clé",
|
||
somethingWrong: "Une erreur est survenue",
|
||
createFailed: "Impossible de créer votre compte. Veuillez réessayer.",
|
||
keySavedTitle: "Clé secrète enregistrée !",
|
||
keySavedDesc: "Votre clé a été stockée en toute sécurité.",
|
||
downloadFailedTitle: "Échec du téléchargement",
|
||
downloadFailedDesc: "Impossible de télécharger le fichier de clé. Veuillez le copier manuellement.",
|
||
encSavedTitle: "Sauvegarde chiffrée enregistrée 🔐",
|
||
encSavedDesc: "Conservez le fichier ET le mot de passe — les deux sont nécessaires pour vous reconnecter.",
|
||
encFailed: "Impossible de chiffrer cette clé.",
|
||
invalidFileTitle: "Type de fichier invalide",
|
||
invalidFileDesc: "Veuillez sélectionner un fichier image pour votre avatar.",
|
||
fileTooLargeTitle: "Fichier trop volumineux",
|
||
fileTooLargeDesc: "L'image d'avatar doit faire moins de 5 Mo.",
|
||
avatarUploadedTitle: "Avatar téléversé !",
|
||
avatarUploadedDesc: "Votre avatar a été téléversé avec succès.",
|
||
uploadFailedTitle: "Échec du téléversement",
|
||
uploadFailedDesc: "Impossible de téléverser l'avatar. Veuillez réessayer.",
|
||
nameRequiredTitle: "Nom d'affichage requis",
|
||
nameRequiredDesc: "Choisissez un nom d'affichage pour que les autres skateurs sachent qui vous êtes. Vous pouvez le modifier à tout moment.",
|
||
reserveFailedTitle: "Impossible de réserver ce nom",
|
||
reserveFailedDesc: "{{error}} Vous pourrez en réclamer un plus tard dans les Paramètres.",
|
||
profileCreatedTitle: "Profil créé !",
|
||
profileCreatedDesc: "Votre profil a été configuré.",
|
||
profileFailedTitle: "Échec de la configuration du profil",
|
||
profileFailedDesc: "Votre compte a été créé mais la configuration du profil a échoué. Vous pourrez le mettre à jour plus tard.",
|
||
welcomeToastTitle: "Bienvenue !",
|
||
welcomeToastDesc: "Votre compte est prêt.",
|
||
titleWelcome: "Rejoindre SkateSpots",
|
||
titleProfile: "Configurez votre profil",
|
||
titleDone: "Bienvenue !",
|
||
createFreeAccount: "Créez votre compte gratuit",
|
||
createFreeAccountDesc: "Pas d'e-mail, pas de téléphone, pas de mot de passe. Votre compte est une clé Nostr — choisissez où elle réside.",
|
||
recommended: "Recommandé",
|
||
signUpWithAmber: "S'inscrire avec Amber",
|
||
signUpWithAmberDesc: "Votre clé est créée et stockée dans l'application Amber — SkateSpots n'y touche jamais. Le plus sûr. Un appui pour approuver.",
|
||
continueWithAmber: "Continuer avec Amber",
|
||
orQuickWay: "ou la méthode rapide",
|
||
quickAccount: "Compte rapide sur cet appareil",
|
||
quickAccountDesc: "Nous générons une clé qui réside sur cet appareil. Démarrage le plus rapide — nous vous aiderons à enregistrer une sauvegarde juste après.",
|
||
createQuickAccount: "Créer un compte rapide",
|
||
quickReassurance: "5 secondes · réside sur cet appareil · nous vous aiderons à la sauvegarder ensuite",
|
||
preferAnotherSigner: "Vous préférez un autre signataire ?",
|
||
iosDesktopNudge: "Sur iOS ou ordinateur ? Une application signataire ou une extension de navigateur est l'option la plus sûre —",
|
||
seeAllOptions: "Voir toutes les options",
|
||
youreInPickName: "C'est bon ! 🛹 Choisissez un nom d'affichage pour que les skateurs sachent qui vous êtes",
|
||
changeAnytime: "Vous pourrez le modifier à tout moment. La bio et l'avatar sont facultatifs.",
|
||
publishingProfile: "Publication de votre profil…",
|
||
displayName: "Nom d'affichage",
|
||
displayNamePlaceholder: "ex. Tony, gnarlyGrind ou le nom de votre crew",
|
||
displayNameHint: "Requis — c'est ainsi que vous apparaîtrez sur SkateSpots. Modifiable à tout moment.",
|
||
skateName: "Votre nom SkateSpots",
|
||
skateNameHint: "Gratuit et facultatif — un identifiant vérifié qui affiche un ✓ sur votre profil.",
|
||
bio: "Bio",
|
||
bioPlaceholder: "Parlez de vous aux autres…",
|
||
avatar: "Avatar",
|
||
uploadAvatar: "Téléverser une image d'avatar",
|
||
saving: "Enregistrement…",
|
||
saveAndStart: "Enregistrer et commencer à skater",
|
||
addNameToContinue: "Ajoutez un nom d'affichage pour continuer.",
|
||
savingPublishesNote: "L'enregistrement publie votre profil sur Nostr — votre signataire pourra vous demander de l'approuver une fois.",
|
||
youreIn: "C'est bon ! 🛹",
|
||
oneQuickThing: "Une dernière petite chose avant de vous lancer…",
|
||
saveLoginKey: "Enregistrez votre clé de connexion",
|
||
saveLoginKeyBefore: "C'est le",
|
||
only: "seul",
|
||
saveLoginKeyAfter: "moyen de revenir dans votre compte — pas d'e-mail, pas de réinitialisation de mot de passe. Enregistrez-la maintenant et vous pourrez vous connecter sur n'importe quel appareil, partout où vous skatiez.",
|
||
revealSaveKey: "Révéler et enregistrer ma clé",
|
||
recoveryCopied: "Code de récupération copié. Conservez-le en lieu sûr.",
|
||
saved: "Enregistré",
|
||
treatLikeBoardKeys: "Traitez-le comme les clés de votre planche — quiconque possède ce code contrôle votre compte. Ne le partagez jamais.",
|
||
hideEncBackup: "Masquer la sauvegarde chiffrée",
|
||
saveEncBackup: "Enregistrer une sauvegarde chiffrée",
|
||
encBackupBefore: "Une copie protégée par mot de passe — sûre à conserver dans le cloud ou un gestionnaire de mots de passe. Vous aurez besoin du fichier",
|
||
and: "et",
|
||
encBackupAfter: "du mot de passe.",
|
||
choosePassword: "Choisissez un mot de passe",
|
||
saveEncBackupCta: "Enregistrer la sauvegarde chiffrée",
|
||
savedCodeAria: "J'ai enregistré mon code de récupération",
|
||
savedCodeLabel: "J'ai enregistré mon code de récupération en lieu sûr — un gestionnaire de mots de passe, ou noté hors ligne.",
|
||
letsSkate: "Allons skater",
|
||
saveLater: "Je l'enregistrerai plus tard depuis les Paramètres",
|
||
advancedSigner: "Avancé : utiliser une application signataire à la place"
|
||
},
|
||
mnemonic: {
|
||
generatedTitle: "Phrase de récupération générée ! 🎉",
|
||
generatedDesc: "Notez ces 12 mots dans l'ordre. Ils sont la clé de votre compte !",
|
||
savedTitle: "Phrase de récupération enregistrée !",
|
||
savedDesc: "Conservez ce fichier en lieu sûr.",
|
||
downloadFailedTitle: "Échec du téléchargement",
|
||
downloadFailedDesc: "Impossible de télécharger le fichier. Veuillez copier manuellement.",
|
||
copiedTitle: "Copié dans le presse-papiers !",
|
||
copiedDesc: "Votre phrase de récupération a été copiée.",
|
||
qrWindowTitle: "Code QR de la phrase de récupération",
|
||
qrHeading: "Le code QR de votre phrase de récupération",
|
||
qrAlt: "Code QR de la phrase de récupération",
|
||
qrWarning: "Gardez ce code QR privé et sécurisé !",
|
||
qrPrint: "Imprimer le code QR",
|
||
qrFailedTitle: "Échec du code QR",
|
||
qrFailedDesc: "Impossible de générer le code QR.",
|
||
accountCreatedTitle: "Compte créé ! 🎉",
|
||
accountCreatedDesc: "Tout est prêt ! Votre phrase de récupération est sécurisée.",
|
||
loginFailedTitle: "Échec de la connexion",
|
||
loginFailedDesc: "Impossible de créer le compte. Veuillez réessayer.",
|
||
verifyFailedTitle: "Échec de la vérification",
|
||
verifyFailedDesc: "Les mots ne correspondent pas. Veuillez vérifier et réessayer.",
|
||
titlePrefix: "Créer un compte avec",
|
||
titleSuffix: "Phrase de récupération",
|
||
twelveWordTitle: "Phrase de récupération de 12 mots",
|
||
twelveWordDesc: "Votre phrase de récupération est comme un mot de passe principal. Notez-la sur papier et gardez-la en sécurité. Vous en aurez besoin pour accéder à votre compte depuis d'autres appareils ou si vous effacez les données de votre navigateur.",
|
||
generate: "Générer la phrase de récupération",
|
||
useNsecInstead: "Utiliser plutôt une clé nsec avancée",
|
||
yourPhrase: "Votre phrase de récupération",
|
||
copy: "Copier",
|
||
download: "Télécharger",
|
||
qrCode: "Code QR",
|
||
criticalWarning: "Avertissement de sécurité critique",
|
||
warnWriteStrong: "Notez-la",
|
||
warnWrite: "sur papier et conservez-la en lieu sûr",
|
||
warnNeverShareStrong: "Ne partagez jamais",
|
||
warnNeverShare: "votre phrase de récupération avec qui que ce soit",
|
||
warnBackupsStrong: "Gardez plusieurs sauvegardes",
|
||
warnBackups: "dans différents lieux sûrs",
|
||
warnAnyoneStrong: "Quiconque possède cette phrase",
|
||
warnAnyone: "contrôle votre compte pour toujours",
|
||
warnLoseStrong: "Si vous la perdez",
|
||
warnLose: "vous perdez votre compte définitivement",
|
||
savedSecurely: "Je l'ai enregistrée en lieu sûr",
|
||
verifyTitle: "Vérifiez votre phrase de récupération",
|
||
verifyDesc: "Pour vous assurer que vous l'avez bien enregistrée, veuillez saisir ces mots :",
|
||
wordLabel: "Mot n° {{n}}",
|
||
wordPlaceholder: "Saisissez le mot n° {{n}}",
|
||
goBack: "Retour",
|
||
verifyCreate: "Vérifier et créer le compte",
|
||
completeTitle: "Compte créé !",
|
||
completeDesc: "Votre compte Nostr est prêt !",
|
||
signerTitle: "Recommandé : configurer une application signataire",
|
||
signerSubtitle: "Gardez vos clés encore plus en sécurité",
|
||
signerDesc: "Pour plus de sécurité, utilisez une application signataire dédiée plutôt que de coller votre phrase de récupération partout. Les applications signataires gardent vos clés en sécurité tout en vous laissant utiliser n'importe quelle application Nostr.",
|
||
signerCta: "En savoir plus sur les applications signataires",
|
||
skip: "Ignorer pour l'instant"
|
||
},
|
||
signupMethod: {
|
||
titlePrefix: "Choisissez votre",
|
||
titleSuffix: "méthode d'inscription",
|
||
subtitle: "Les deux méthodes sont sûres. Choisissez celle qui vous convient le mieux !",
|
||
recommended: "Recommandé",
|
||
mnemonicTitle: "Phrase de récupération",
|
||
mnemonicDesc: "12 mots faciles à mémoriser. La norme de l'industrie utilisée par Bitcoin, Ethereum et la plupart des portefeuilles crypto.",
|
||
mnemonicF1: "Facile à noter sur papier",
|
||
mnemonicF2: "Compatible avec d'autres applications Nostr (NIP-06)",
|
||
mnemonicF3: "Peut générer plusieurs comptes",
|
||
mnemonicF4: "Familier pour les utilisateurs de crypto",
|
||
useMnemonic: "Utiliser une phrase de récupération",
|
||
advanced: "Avancé",
|
||
nsecTitle: "Clé secrète (nsec)",
|
||
nsecDesc: "Clé cryptographique brute. Plus technique mais vous donne un accès direct à votre identité Nostr.",
|
||
nsecF1: "Contrôle cryptographique direct",
|
||
nsecF2: "Compatible avec toutes les applications Nostr",
|
||
nsecF3: "Une seule chaîne à sauvegarder",
|
||
nsecF4: "Aucune couche de dérivation",
|
||
useNsec: "Utiliser la clé secrète",
|
||
footer: "🔒 Les deux méthodes sont tout aussi sûres. Choisissez selon votre préférence !"
|
||
},
|
||
skateNip05: {
|
||
placeholder: "votrenom",
|
||
claimedSuffix: "est à vous — enregistrez votre profil pour le publier.",
|
||
checking: "Vérification de la disponibilité…",
|
||
available: "{{name}}@{{domain}} est disponible",
|
||
claim: "Le réserver",
|
||
hint: "Lettres, chiffres, tirets. Gratuit, et affiché comme un badge ✓ sur votre profil."
|
||
},
|
||
nip05Required: {
|
||
getFree: "Obtenir un NIP-05 gratuit / pas cher",
|
||
paid: "Payant",
|
||
requiredTitle: "Vérification NIP-05 requise",
|
||
bannerReason: "Pour éviter le spam et instaurer la confiance, {{role}} ont besoin d'une adresse Nostr vérifiée (NIP-05).",
|
||
gateReason: "Pour éviter le spam et instaurer la confiance, {{role}} doit avoir une vérification NIP-05.",
|
||
addInSettings: "Ajouter un NIP-05 dans les Paramètres",
|
||
explainer: "Le NIP-05 prouve votre identité en reliant votre profil Nostr à un domaine — comme",
|
||
updateProfile: "Mettre à jour votre profil"
|
||
},
|
||
editProfile: {
|
||
uploadSuccessTitle: "Succès",
|
||
uploadSuccessDesc: "{{field}} téléversé avec succès",
|
||
uploadErrorDesc: "Impossible de téléverser {{field}}. Veuillez réessayer.",
|
||
mustBeLoggedIn: "Vous devez être connecté pour mettre à jour votre profil",
|
||
invalidClinkTitle: "Code CLINK invalide",
|
||
invalidClinkDesc: "Cela ne ressemble pas à un code noffer1… valide. Effacez-le ou collez-en un valide.",
|
||
invalidLightningTitle: "Adresse Lightning invalide",
|
||
invalidLightningDesc: "Utilisez une adresse de type e-mail comme vous@walletofsatoshi.com.",
|
||
invalidSpTitle: "Adresse Silent Payment invalide",
|
||
invalidSpDesc: "Une adresse Silent Payment commence par « sp1 » et est assez longue. Effacez-la ou collez-en une valide.",
|
||
invalidCordnTitle: "Lien Cordn invalide",
|
||
invalidCordnDesc: "Collez un lien de contact Cordn https://… complet.",
|
||
updateSuccessTitle: "Succès",
|
||
updateSuccessDesc: "Votre profil a été mis à jour",
|
||
updateErrorDesc: "Impossible de publier le profil. Vérifiez vos connexions aux relais dans Paramètres > Relais",
|
||
identityTitle: "Identité",
|
||
identityDesc: "Comment vous apparaissez sur SkateSpots.",
|
||
displayName: "Nom d'affichage",
|
||
displayNamePlaceholder: "Votre nom",
|
||
bio: "Bio",
|
||
bioPlaceholder: "Quelques mots sur vous et votre skate…",
|
||
profilePicture: "Photo de profil",
|
||
pictureDesc: "Téléversez ou collez une image carrée.",
|
||
bannerImage: "Image de bannière",
|
||
bannerDesc: "Une image large pour le haut de votre profil.",
|
||
website: "Site web",
|
||
openToSponsorships: "Ouvert au sponsoring",
|
||
openToSponsorshipsHint: "Affiche une carte sponsoring/collab sur ton profil. Rien n'est partagé tant que personne ne t'écrit.",
|
||
sponsorNote: "Note de sponsoring (facultatif)",
|
||
sponsorNotePlaceholder: "p. ex. ouvert aux partenaires decks, chaussures, voyages et événements.",
|
||
bitcoinTitle: "Bitcoin et paiements",
|
||
bitcoinDesc: "Laissez les gens vous zapper, vous donner un pourboire et vous payer directement — sans intermédiaire.",
|
||
lightningAddress: "Adresse Lightning",
|
||
lud16Invalid: "Utilisez une adresse de type e-mail, ex. vous@votredomaine.com.",
|
||
lud16Ok: "Alimente le bouton « Zap » sur votre profil.",
|
||
lud16Hint: "Pourboires Bitcoin instantanés. Alimente le bouton « Zap » sur votre profil.",
|
||
silentPaymentAddress: "Adresse Silent Payment",
|
||
spInvalid: "Doit commencer par « sp1 » et être assez longue.",
|
||
spOk: "Valide — une adresse on-chain réutilisable et privée.",
|
||
spHint: "Adresse on-chain statique réutilisable (BIP-352). Partagez-la une fois ; chaque paiement est non traçable.",
|
||
clinkTipCode: "Code de pourboire CLINK",
|
||
nofferInvalid: "Cela ne ressemble pas à un code noffer1… valide.",
|
||
nofferOk: "Valide — un bouton « Pourboire en Bitcoin » s'affichera sur votre profil.",
|
||
nofferHint: "Code CLINK auto-dépositaire pour que n'importe qui puisse vous donner un pourboire via Nostr — sans intermédiaire.",
|
||
skateProfileTitle: "Profil de skate",
|
||
skateProfileDesc: "Pour représenter vos sponsors et indiquer comment le crew vous contacte.",
|
||
badges: "Badges",
|
||
badgesHint: "(libellé + lien facultatif)",
|
||
badgeExample: "ex. Independent Trucks",
|
||
badgeLabelPlaceholder: "Libellé du badge…",
|
||
badgeUrlPlaceholder: "https://… (facultatif)",
|
||
removeBadge: "Supprimer le badge",
|
||
addBadge: "Ajouter un badge",
|
||
badgesDescBefore: "Sponsors, shops ou personnes qui soutiennent votre skate — et tout ce que vous voulez mettre en avant. Chacun devient une pastille cliquable sur votre profil. Votre",
|
||
badgesDescAfter: "badge de membre est ajouté automatiquement.",
|
||
coordinator: "Coordinateur",
|
||
cordnInvalid: "Cela ne ressemble pas à un coordinateur. Collez un nprofile, un lien cordn.net ou une URL https://.",
|
||
cordnOk: "Affiché sur votre profil — les autres peuvent l'ajouter en un appui.",
|
||
cordnHint: "Le coordinateur Cordn que les autres utilisent pour vous écrire. Privé, chiffré, à vous.",
|
||
useMyCoordinator: "Utiliser mon coordinateur",
|
||
accountTitle: "Compte",
|
||
accountDesc: "Paramètres de compte supplémentaires.",
|
||
botAccount: "Compte bot",
|
||
botAccountDesc: "Marquer ce compte comme automatisé ou comme un bot.",
|
||
saving: "Enregistrement…",
|
||
saveProfile: "Enregistrer le profil",
|
||
nip05VerifiedHandle: "Identifiant vérifié NIP-05",
|
||
nip05How: "Comment ?",
|
||
extraHandles: "Identifiants supplémentaires",
|
||
extraHandlesHint: "facultatif — jusqu'à 5",
|
||
nip05HintEmpty: "Un identifiant vérifié comme vous@votredomaine.com — la version Nostr de la coche bleue. Affiche un badge ✓ sur votre profil et débloque le filtre « Vérifié » dans l'annuaire des skateurs.",
|
||
nip05Invalid: "Utilisez un identifiant de type e-mail, ex. vous@votredomaine.com — sans « https:// » ni espaces.",
|
||
nip05Checking: "Vérification de votre domaine…",
|
||
nip05Verified: "Vérifié — votre domaine confirme que cet identifiant vous appartient. ✓",
|
||
nip05Mismatch: "Votre domaine associe cet identifiant à une clé DIFFÉRENTE. Corrigez votre .well-known/nostr.json pour qu'il pointe vers ce compte.",
|
||
nip05Unreachable: "Impossible d'atteindre le /.well-known/nostr.json de votre domaine pour l'instant. Les identifiants enregistrés fonctionneront dès que votre domaine sera correctement configuré.",
|
||
nip05Enter: "Saisissez votre identifiant NIP-05.",
|
||
freeHandleBefore: "Pas de domaine à vous ? Réclamez un",
|
||
freeHandleAfter: "identifiant gratuit auprès de SkateSpots.",
|
||
uploadLabel: "Téléverser {{label}}",
|
||
previewLabel: "Aperçu de {{label}}"
|
||
},
|
||
security: {
|
||
recoveryCopied: "Code de récupération copié. Conservez-le en lieu sûr.",
|
||
savedTitle: "Enregistré !",
|
||
recoveryDownloaded: "Code de récupération téléchargé. Conservez-le en lieu sûr.",
|
||
downloadFailedTitle: "Échec du téléchargement",
|
||
downloadFailedDesc: "Veuillez le copier manuellement à la place.",
|
||
loginRequired: "Connexion requise",
|
||
loginRequiredDesc: "Connectez-vous pour accéder aux paramètres de sécurité.",
|
||
backupConfirmedTitle: "Sauvegarde confirmée ! ✅",
|
||
backupConfirmedDesc: "Parfait ! Vos clés sont en sécurité.",
|
||
yourRecoveryCode: "Votre code de récupération",
|
||
recoveryCodeDesc: "Vous ne l'avez pas enregistré à l'inscription ? Vous pouvez le récupérer ici à tout moment.",
|
||
recoveryCodeBefore: "Ce code est le",
|
||
only: "seul",
|
||
recoveryCodeAfter: "moyen de vous reconnecter sur un nouvel appareil ou navigateur. Conservez-le en lieu sûr (un gestionnaire de mots de passe, ou noté sur papier). Quiconque le possède contrôle votre compte — ne le partagez jamais.",
|
||
revealRecovery: "Révéler mon code de récupération",
|
||
qrHint: "Scannez avec une autre application Nostr pour vous connecter. Gardez cet écran privé.",
|
||
neverShareHide: "⚠️ Ne le partagez jamais. Masquez-le quand vous avez terminé.",
|
||
hide: "Masquer",
|
||
amberNoteBefore: "Vous êtes connecté avec",
|
||
amberNoteAfter: ". Votre code de récupération réside dans Amber — ouvrez l'application Amber pour le sauvegarder. SkateSpots ne voit jamais votre clé.",
|
||
bunkerNoteBefore: "Vous êtes connecté avec un",
|
||
remoteSigner: "signataire distant (bunker)",
|
||
bunkerNoteAfter: ". Votre code de récupération est détenu par votre service signataire, pas par SkateSpots. Sauvegardez-le là-bas.",
|
||
extensionNoteBefore: "Vous êtes connecté avec une",
|
||
browserExtension: "extension de navigateur",
|
||
extensionNoteAfter: ". Votre code de récupération réside dans l'extension — utilisez sa propre option de sauvegarde/export. SkateSpots ne voit jamais votre clé.",
|
||
otherNote: "Votre code de récupération est géré par votre application signataire, pas par SkateSpots. Sauvegardez-le là-bas.",
|
||
backupWarningTitle: "⚠️ Avez-vous sauvegardé votre phrase de récupération ou votre clé secrète ?",
|
||
backupWarningBody: "Vos clés sont le SEUL moyen d'accéder à votre compte. Si vous les perdez, vous perdez tout — il n'y a pas de réinitialisation de mot de passe !",
|
||
iveBackedUp: "J'ai sauvegardé mes clés",
|
||
backupConfirmed: "✅ Sauvegarde confirmée",
|
||
backupNotConfirmed: "⚠️ Sauvegarde non confirmée",
|
||
backupConfirmedStatusDesc: "Vous avez confirmé que vos clés sont sauvegardées en lieu sûr.",
|
||
backupNotConfirmedDesc: "Assurez-vous de sauvegarder votre phrase de récupération ou votre clé secrète !",
|
||
notSavedYetBefore: "Vous n'avez pas encore enregistré votre code de récupération ? Pas de problème — récupérez-le dans la",
|
||
notSavedYetAfter: "section ci-dessus, conservez-le en lieu sûr, puis confirmez ci-dessous.",
|
||
yesBackedUp: "Oui, j'ai sauvegardé mes clés",
|
||
bestPracticesTitle: "Bonnes pratiques de sécurité des clés",
|
||
bestPracticesDesc: "Comment garder votre compte Nostr en sécurité",
|
||
bp1Title: "Notez-la sur papier",
|
||
bp1Desc: "La sauvegarde physique est la plus sûre. Conservez-la dans un endroit sécurisé comme un coffre-fort.",
|
||
bp2Title: "Plusieurs sauvegardes",
|
||
bp2Desc: "Gardez des copies dans différents endroits sûrs (coffre à la maison, coffre-fort bancaire, etc.)",
|
||
bp3Title: "Ne partagez jamais vos clés",
|
||
bp3Desc: "Les vraies applications Nostr ne demandent JAMAIS votre nsec ou votre phrase de récupération après la première connexion",
|
||
bp4Title: "Ne stockez pas dans le cloud sans chiffrement",
|
||
bp4Desc: "Évitez Google Docs, les brouillons d'e-mails ou le stockage cloud en texte brut",
|
||
bp5Title: "Envisagez d'utiliser une extension de navigateur",
|
||
bp5Desc: "Alby, nos2x ou Flamingo gardent vos clés en sécurité et ne les exposent jamais aux sites web",
|
||
importantReminders: "⚠️ Rappels importants",
|
||
rem1: "Si vous perdez vos clés, vous perdez votre compte définitivement",
|
||
rem2: "Aucune entreprise ni personne ne peut réinitialiser votre mot de passe — pas même nous",
|
||
rem3: "Quiconque possède vos clés a le contrôle total de votre compte",
|
||
rem4: "Vos clés contrôlent toutes vos données Nostr dans TOUTES les applications",
|
||
recommendedSigners: "🔌 Signataires Nostr recommandés",
|
||
recommendedSignersDesc: "Utilisez un signataire Nostr pour plus de sécurité et de commodité",
|
||
recommended: "Recommandé",
|
||
amberDesc: "Signataire Nostr sécurisé pour Android. Garde vos clés en sécurité sur votre téléphone et signe les événements sans les exposer.",
|
||
albyDesc: "Extension complète avec portefeuille Lightning, WebLN et prise en charge de NWC.",
|
||
flamingoDesc: "Interface simple et épurée. Se concentre sur la signature Nostr sans fonctionnalités de portefeuille.",
|
||
nos2xDesc: "Extension minimale et légère pour utilisateurs avancés.",
|
||
nostrConnectTitle: "☁️ Nostr Connect (signataires distants)",
|
||
nostrConnectDesc: "Utilisez un signataire distant pour accéder à votre compte depuis n'importe quel appareil",
|
||
nostrConnectBody: "Nostr Connect (aussi appelé « bunkers ») vous permet de stocker vos clés sur un serveur sécurisé et de vous connecter depuis n'importe quel appareil. Vos clés ne quittent jamais le serveur, mais vous pouvez utiliser votre compte partout !",
|
||
nsecAppDesc: "Signataire distant gratuit et sécurisé. Créez une URI bunker:// et collez-la lors de la connexion.",
|
||
nostrumDesc: "Une autre option de signataire distant avec prise en charge mobile.",
|
||
howToUse: "💡 Comment l'utiliser :",
|
||
howToUseDesc: "Créez un compte sur l'un de ces services, obtenez votre chaîne de connexion bunker://, puis collez-la dans l'onglet « Nostr Connect » lors de la connexion."
|
||
},
|
||
relayList: {
|
||
connected: "Connecté",
|
||
connecting: "Connexion…",
|
||
offline: "Hors ligne",
|
||
removeUrl: "Supprimer {{url}}",
|
||
add: "Ajouter",
|
||
publishedTitle: "Liste de relais publiée",
|
||
publishedDesc: "Synchronisé sur Nostr (kind 10002).",
|
||
publishFailedTitle: "Échec de la publication de la liste de relais",
|
||
invalidUrlTitle: "URL de relais invalide",
|
||
invalidUrlDesc: "Essayez quelque chose comme wss://relay.example.com",
|
||
alreadyInList: "Relais déjà dans votre liste",
|
||
keepReadWriteTitle: "Conservez la lecture ou l'écriture sur",
|
||
keepReadWriteDesc: "Un relais a besoin d'au moins la lecture ou l'écriture.",
|
||
alreadyInThisList: "Relais déjà dans cette liste",
|
||
dmPublishedTitle: "Relais de MP publiés",
|
||
dmPublishedDesc: "Boîte de réception NIP-17 mise à jour.",
|
||
dmPublishFailedTitle: "Échec de la publication des relais de MP",
|
||
nip65Title: "Relais (NIP-65)",
|
||
nip65DescUser: "Appuyez sur Lecture / Écriture pour basculer. Publié sur Nostr en tant que liste kind 10002.",
|
||
nip65DescLoggedOut: "Appuyez sur Lecture / Écriture pour basculer. Connectez-vous pour publier votre liste sur Nostr.",
|
||
noRelays: "Aucun relais pour l'instant — ajoutez-en un ci-dessous.",
|
||
local: "Local",
|
||
read: "Lecture",
|
||
readHint: "Récupérer le contenu depuis ce relais",
|
||
write: "Écriture",
|
||
writeHint: "Publier vos événements sur ce relais",
|
||
dmTitle: "Relais de boîte de réception MP",
|
||
dmDesc: "Où vous recevez les messages privés NIP-17 (kind 10050). Revient à vos relais d'écriture lorsqu'elle est vide.",
|
||
localTitle: "Relais locaux",
|
||
localDesc: "Uniquement dans l'application (par ex. un nœud LAN). Utilisés pour la lecture et l'écriture ; jamais publiés.",
|
||
blockedTitle: "Relais bloqués",
|
||
blockedDesc: "Ne jamais s'y connecter — exclus de toute lecture et écriture."
|
||
},
|
||
relatr: {
|
||
searchingTitle: "Recherche du service Relatr…",
|
||
searchingDesc: "Interrogation de Nostr pour les profils Relatr",
|
||
foundTitle: "Service Relatr trouvé !",
|
||
foundDesc: "Service : {{name}}",
|
||
unknown: "Inconnu",
|
||
notFoundTitle: "Aucun service Relatr trouvé",
|
||
notFoundDesc: "Essayez de saisir la pubkey manuellement ou consultez https://www.relatr.xyz/",
|
||
searchFailedTitle: "Échec de la recherche",
|
||
searchFailedDesc: "Impossible d'interroger Nostr pour les profils Relatr",
|
||
invalidPubkeyTitle: "Pubkey invalide",
|
||
invalidPubkeyDesc: "Veuillez saisir une pubkey hex valide de 64 caractères",
|
||
enabledTitle: "Relatr activé !",
|
||
enabledDesc: "Les scores de confiance globaux sont maintenant actifs.",
|
||
disabledTitle: "Relatr désactivé",
|
||
disabledDesc: "Les scores de confiance ne sont plus récupérés.",
|
||
title: "Scores de confiance Relatr",
|
||
desc: "Les scores de confiance globaux aident à identifier les utilisateurs fiables et à réduire le spam",
|
||
status: "Statut",
|
||
active: "Actif",
|
||
disabled: "Désactivé",
|
||
activeStrong: "Relatr est actif.",
|
||
activeDesc: "Les scores de confiance issus de l'analyse du réseau global de ContextVM aident à identifier les skateurs fiables et à réduire le spam.",
|
||
disabledStrong: "Relatr est désactivé.",
|
||
disabledHint: "Activez-le pour obtenir les scores de confiance du réseau Nostr global.",
|
||
disable: "Désactiver Relatr",
|
||
enable: "Activer Relatr",
|
||
advancedSettings: "Paramètres avancés",
|
||
servicePubkey: "Pubkey du service Relatr",
|
||
pubkeyPlaceholder: "Saisissez une pubkey hex de 64 caractères…",
|
||
searching: "Recherche…",
|
||
autoDiscover: "Découverte auto",
|
||
pubkeyDefault: "Par défaut : service Relatr officiel de ContextVM (npub1dvmc…)",
|
||
relayLabel: "Relais (où Relatr publie les scores)",
|
||
relayDefault: "Par défaut : wss://relay.contextvm.org (relais officiel de ContextVM)",
|
||
applyChanges: "Appliquer les modifications",
|
||
learnMore: "En savoir plus :",
|
||
website: "Site Relatr",
|
||
github: "GitHub Relatr",
|
||
nip85Spec: "Spécification NIP-85"
|
||
},
|
||
followList: {
|
||
unfollow: "Ne plus suivre",
|
||
title: "Votre réseau Nostr",
|
||
desc: "Gérez qui vous suivez. Suivre des utilisateurs aide à bâtir votre toile de confiance et détermine quels spots affichent des badges de confiance.",
|
||
following: "Abonnements ({{count}})",
|
||
followers: "Abonnés ({{count}})",
|
||
follow: "Suivre",
|
||
followHint: "💡 Collez une pubkey Nostr (npub1...), une adresse NIP-05 (user@domain.com) ou une pubkey hex",
|
||
notFollowing: "Vous ne suivez encore personne",
|
||
notFollowingHint: "Suivez des skateurs pour voir leurs spots avec des badges ✅ VÉRIFIÉ",
|
||
trustActiveStrong: "✅ Badges de confiance actifs :",
|
||
trustActive: "Les spots créés par les personnes que vous suivez afficheront désormais des badges VÉRIFIÉ. Les spots de leurs amis afficheront des badges DE CONFIANCE.",
|
||
noFollowers: "Aucun abonné pour l'instant",
|
||
noFollowersHint: "Partagez votre profil Nostr pour gagner des abonnés !",
|
||
howTitle: "💡 Comment le suivi affecte les badges de confiance",
|
||
verifiedStrong: "✅ VÉRIFIÉ (vert) :",
|
||
verifiedDesc: "Spots créés par les personnes que vous suivez directement",
|
||
trustedStrong: "🟡 DE CONFIANCE (jaune) :",
|
||
trustedDesc: "Spots créés par les personnes que vos amis suivent (2 sauts)",
|
||
unverifiedStrong: "⚪ Non vérifié :",
|
||
unverifiedDesc: "Spots d'utilisateurs sans lien avec votre réseau",
|
||
tip: "💡 Astuce : suivez des skateurs actifs pour voir plus de spots vérifiés et bâtir votre réseau de confiance !"
|
||
},
|
||
notify: {
|
||
enableTitle: "Activer les notifications",
|
||
enableDesc: "Faites vibrer cet appareil quand quelque chose vous attend.",
|
||
checkingPermission: "Vérification de l'autorisation…",
|
||
unsupported: "Cet appareil ne prend pas en charge les notifications ici. Recompilez l'application Android pour les activer sur votre téléphone.",
|
||
denied: "Les notifications sont bloquées pour ce site. Autorisez-les dans les paramètres de votre navigateur/système, puis réessayez.",
|
||
backgroundTitle: "Notifications en arrière-plan",
|
||
backgroundDesc: "Soyez averti des messages et des échanges même lorsque SkateSpots est fermé.",
|
||
pushUnsupported: "Ce navigateur ne prend pas en charge le push en arrière-plan. Sur mobile, ajoutez SkateSpots à votre écran d'accueil.",
|
||
pushPrivacy: "Pour vous joindre lorsque l'application est fermée, un serveur de notification SkateSpots reçoit un ping de votre relais lorsque quelque chose arrive pour votre clé et le transmet au service push de votre téléphone. Il voit seulement que votre clé a quelque chose — jamais qui l'a envoyé ni ce qu'il dit, et il ne peut pas déchiffrer vos messages. Optez-y appareil par appareil.",
|
||
bgDeliveryTitle: "Livraison en arrière-plan (Android)",
|
||
bgDeliveryDesc: "Vérifiez les nouveaux messages, offres et échanges pendant que l'application est fermée — sans services Google.",
|
||
off: "Désactivé",
|
||
standard: "Standard (~15 min)",
|
||
fast: "Rapide (~5 min)",
|
||
bgDeliveryNote: "Standard est au mieux — Android peut le différer en mode Doze. Rapide affiche une notification persistante et consomme plus de batterie. Rien n'est déchiffré sur notre serveur.",
|
||
notifyMeAbout: "Me notifier à propos de",
|
||
couldNotEnable: "Impossible d'activer",
|
||
sendTest: "Envoyer une notification de test",
|
||
testTitle: "Les notifications SkateSpots sont activées 🛹",
|
||
testBody: "Voici à quoi ressembleront un MP, un zap ou une invitation de crew.",
|
||
footerBefore: "Les alertes sont construites sur votre appareil à partir des données que l'application possède déjà, et les alertes de messages privés ne déchiffrent jamais vos messages — Amber n'est donc jamais sollicité pour en ouvrir un. Avec",
|
||
footerAfter: "désactivé, une application entièrement fermée ne peut pas être jointe, les alertes arrivent donc à la prochaine ouverture de SkateSpots.",
|
||
cat_dms_label: "Messages privés",
|
||
cat_dms_hint: "Quelqu'un vous envoie un message privé",
|
||
cat_crew_label: "Crews",
|
||
cat_crew_hint: "Invitations, demandes d'adhésion et confirmations d'adhésion",
|
||
cat_social_label: "Zaps, réponses et mentions",
|
||
cat_social_hint: "Réactions, reposts, zaps, réponses et mises à jour d'événements",
|
||
cat_newsletter_label: "Newsletter",
|
||
cat_newsletter_hint: "Nouveautés SkateSpots (abonnés uniquement)",
|
||
cat_trades_label: "Offres et échanges",
|
||
cat_trades_hint: "Offres, contre-offres et confirmations d'échange",
|
||
cat_reminders_label: "Rappels d'événements",
|
||
cat_reminders_hint: "Un rappel une heure avant les événements auxquels vous allez (application Android)"
|
||
},
|
||
regionBackfill: {
|
||
taggedTitle: "{{count}} emplacement{{s}} avec étiquette",
|
||
taggedSkipped: "Sans coordonnées ni correspondance de géocodage : {{count}}.",
|
||
taggedOk: "Étiquettes de région écrites sur le relais communautaire.",
|
||
nothingTitle: "Rien à étiqueter",
|
||
nothingDesc: "Aucun pin n'a pu être géocodé. Réessayez plus tard.",
|
||
failedTitle: "Échec du remplissage",
|
||
title: "Remplir les étiquettes de région",
|
||
admin: "Admin",
|
||
descBefore: "Les pins créés avant l'existence du géocodage ont des coordonnées mais aucune étiquette de ville/pays, donc la carte les dessine alors que les statistiques communautaires ne peuvent dire que « Non catégorisé ». Ceci redérive les étiquettes de chaque pin et republie",
|
||
descStrong: "vos propres",
|
||
descAfter: "spots et shops non étiquetés.",
|
||
scanning: "Analyse de vos spots…",
|
||
allTagged: "Chaque spot et shop que vous possédez a déjà une étiquette de région. 🎉 Les pins restants « Non catégorisés » appartiennent à d'autres cartographes — seules leurs propres clés peuvent les étiqueter.",
|
||
countLine: "{{count}} de vos spot{{s}}/shops n'ont pas d'étiquette de région. Votre signataire pourra demander d'approuver chacun.",
|
||
tagging: "Étiquetage {{done}}/{{total}}…",
|
||
run: "Remplir les étiquettes de région",
|
||
summary: "{{updated}} mis à jour · {{skipped}} ignorés · {{failed}} échoués"
|
||
},
|
||
adminReview: {
|
||
title: "File de révision",
|
||
flagged: "Signaux indésirables sur {{count}} spot{{s}} — masquez ou ignorez.",
|
||
clean: "Spots qui ressemblent à des entrées de test ou à des pins hors sujet."
|
||
},
|
||
grantPro: {
|
||
invalidNpub: "Saisissez un npub valide (ou une pubkey hex)",
|
||
invalidDays: "Le nombre de jours doit être un nombre positif",
|
||
grantedTitle: "Pro accordé ⚡",
|
||
grantedDesc: "{{npub}} jusqu'au {{date}}",
|
||
failedTitle: "Échec de l'attribution",
|
||
title: "Accorder Sasquatch Pro",
|
||
owner: "Propriétaire",
|
||
desc: "Solution manuelle pour un paiement vérifié que le reçu de zap a manqué. Publie une attribution signée par le propriétaire ; l'utilisateur ne peut pas la falsifier.",
|
||
targetPlaceholder: "npub1… (ou hex)",
|
||
grant: "Accorder"
|
||
},
|
||
myData: {
|
||
reactionTitle: "Réaction {{emoji}}",
|
||
deleting: "Suppression…",
|
||
requestDeletion: "Demander la suppression",
|
||
selectContentTitle: "Sélectionner le contenu à supprimer",
|
||
selectContentDesc: "Sélectionnez les éléments précis pour lesquels vous voulez demander la suppression.",
|
||
all: "Tout",
|
||
spots: "Spots",
|
||
events: "Événements",
|
||
shops: "Shops",
|
||
listings: "Annonces",
|
||
collections: "Collections",
|
||
lab: "Lab",
|
||
posts: "Publications",
|
||
reactions: "Réactions",
|
||
selectAll: "Tout sélectionner",
|
||
selectAllVisible: "Tout sélectionner (visible)",
|
||
selectedCount: "Sélection : {{count}}",
|
||
noItemsCategory: "Aucun élément dans cette catégorie",
|
||
decentralizedStrong: "Important :",
|
||
decentralizedNote: "Nostr est décentralisé. Les relais devraient honorer les demandes de suppression, mais certains pourraient ne pas le faire. Il ne s'agit pas d'une suppression permanente garantie.",
|
||
deleteCount: "Supprimer {{count}} élément{{s}}",
|
||
noDataTitle: "Aucune donnée à exporter",
|
||
noDataDesc: "Vous n'avez encore publié aucun événement.",
|
||
exportedTitle: "Données exportées !",
|
||
exportedDesc: "{{count}} événements téléchargés en JSON.",
|
||
deletionRequestedTitle: "Suppression demandée",
|
||
deletionRequestedDesc: "La demande de suppression a été publiée sur les relais.",
|
||
deletionRequestedMany: "Suppression de {{count}} éléments demandée. Remarque : certains relais pourraient ne pas honorer cette demande.",
|
||
deletionFailedTitle: "Échec de la suppression",
|
||
deletionFailedDesc: "Impossible de publier la demande de suppression. Veuillez réessayer.",
|
||
loginRequired: "Connexion requise",
|
||
loginRequiredDesc: "Connectez-vous pour consulter et gérer vos données.",
|
||
title: "Mes données",
|
||
desc: "Votre contenu sur le réseau Nostr. Ces données vous appartiennent — exportez-les à tout moment ou demandez leur suppression.",
|
||
coachFilmer: "Coach/Filmeur",
|
||
zaps: "Zaps",
|
||
received: "Reçus",
|
||
exportAll: "Exporter toutes les données",
|
||
recentActivity: "Activité récente",
|
||
viewAll: "Voir tout ({{count}})",
|
||
noDataPublished: "Aucune donnée publiée pour l'instant",
|
||
startBy: "Commencez par",
|
||
addingASpot: "ajouter un spot",
|
||
aboutYourData: "À propos de vos données",
|
||
ownDataStrong: "Vos données vous appartiennent.",
|
||
ownData: "Tout le contenu est signé avec vos clés cryptographiques et stocké sur des relais Nostr. Aucune entreprise ne le contrôle.",
|
||
exportAnytimeStrong: "Exportez à tout moment",
|
||
exportAnytime: "- Téléchargez tous vos événements en JSON",
|
||
portableStrong: "Portable",
|
||
portable: "- Utilisez vos clés dans n'importe quelle application Nostr",
|
||
selectiveStrong: "Suppression sélective",
|
||
selective: "- Choisissez exactement ce qu'il faut supprimer",
|
||
caveatStrong: "Réserve de décentralisation",
|
||
caveat: "- Certains relais peuvent conserver les données malgré les demandes de suppression"
|
||
},
|
||
settingsPage: {
|
||
seoTitle: "Paramètres - SkateSpots",
|
||
seoDescription: "Gérez les paramètres de votre compte SkateSpots.",
|
||
heading: "PARAMÈTRES",
|
||
subtitle: "Préférences du compte et de l'application",
|
||
editProfile: "Modifier le profil",
|
||
profileRefreshed: "Profil actualisé !",
|
||
found: "Trouvé : {{name}}",
|
||
unnamed: "sans nom",
|
||
profileNotFound: "Profil introuvable",
|
||
notFoundOnRelay: "Introuvable sur aucun relais.",
|
||
refreshFailed: "Échec de l'actualisation",
|
||
refreshFailedDesc: "Impossible de se connecter aux relais.",
|
||
loginToEdit: "Connectez-vous pour modifier votre profil",
|
||
noProfileRelays: "Nous n'avons pas trouvé de profil sur les relais. Si vous en avez déjà créé un, essayez d'actualiser.",
|
||
checkDisplayName: "un nom d'affichage",
|
||
checkPhoto: "une photo de profil",
|
||
checkBio: "une courte bio",
|
||
checkLightning: "une adresse Lightning pour que les gens puissent vous zapper",
|
||
checkHandle: "un identifiant @skate-spots.org gratuit",
|
||
finishProfile: "Terminez votre profil",
|
||
addItem: "Ajouter {{item}}",
|
||
nip05Title: "Vérification NIP-05",
|
||
nip05Desc: "Obtenez une adresse Nostr vérifiée (comme nom@domaine.com) pour instaurer la confiance. Requise pour créer des événements, des profils de coaching et des shops.",
|
||
freeFromSkateSpots: "Gratuit grâce à SkateSpots",
|
||
claimHandleBefore: "Réclamez un identifiant comme",
|
||
claimHandleAfter: "— sans inscription, sans frais, sans domaine à gérer. Réclamez-le dans l'onglet Profil, puis enregistrez.",
|
||
claimInProfile: "Réclamer dans le profil",
|
||
nip05Footer: "Après avoir obtenu votre NIP-05, ajoutez-le dans le champ Profil et enregistrez.",
|
||
localRelayOn: "Relais local activé",
|
||
localRelayOff: "Relais local désactivé",
|
||
lookingForCitrine: "Recherche de Citrine sur cet appareil…",
|
||
noLongerUsing: "Vous n'utilisez plus le relais sur l'appareil.",
|
||
localRelay: "Relais local",
|
||
citrineOff: "Lectures plus rapides et sauvegarde hors ligne sur cet appareil",
|
||
citrineSearching: "Recherche de Citrine sur cet appareil…",
|
||
citrineLive: "Connecté — lecture et sauvegarde locales",
|
||
citrineWaiting: "Activé — lancez Citrine pour vous connecter",
|
||
toggleCitrine: "Basculer le relais Citrine local",
|
||
citrineDetected: "Relais Citrine détecté",
|
||
citrineLooking: "Recherche de Citrine…",
|
||
citrineNotDetected: "Citrine non détecté",
|
||
recheckCitrine: "Revérifier le relais Citrine",
|
||
checking: "Vérification",
|
||
recheck: "Revérifier",
|
||
chipInstantReads: "Lectures instantanées",
|
||
chipWorksOffline: "Fonctionne hors ligne",
|
||
chipOnDeviceBackup: "Sauvegarde sur l'appareil",
|
||
cantReachStrong: "Impossible de joindre Citrine.",
|
||
cantReachBefore: "Assurez-vous que l'application gratuite Citrine est installée et que son relais est",
|
||
started: "lancé",
|
||
cantReachAfter: ", puis appuyez sur Revérifier. Elle exécute un relais Nostr privé sur votre téléphone pour des lectures instantanées et une sauvegarde hors ligne.",
|
||
citrineStep1Before: "Ouvrez Citrine → appuyez sur",
|
||
start: "Démarrer",
|
||
citrineStep2Before: "Revenez ici → appuyez sur",
|
||
getCitrine: "Obtenir Citrine",
|
||
citrinePrivacy: "Votre Stash et vos messages restent chiffrés de bout en bout ici, exactement comme partout ailleurs. Le relais local ne fait qu'accélérer les choses et garder une copie sur votre appareil — il ne remplace jamais le chiffrement.",
|
||
communityRelayDisabled: "Relais communautaire désactivé",
|
||
communityRelayEnabled: "Relais communautaire activé",
|
||
usingOnlyPersonal: "Utilisation de vos relais configurés uniquement.",
|
||
skateRelayIncluded: "Relais SkateSpots inclus.",
|
||
relays: "Relais",
|
||
relayPrivacyBefore: "Les relais peuvent voir votre",
|
||
ipAddress: "adresse IP",
|
||
relayPrivacyAfter: "lorsque vous vous connectez. Tor la masque — et considérez un VPN « gratuit » comme un signal d'alerte ; ils monétisent généralement votre trafic.",
|
||
communityRelay: "Relais communautaire",
|
||
syncingGlobal: "Synchronisation avec la communauté mondiale du skate",
|
||
usingOnlyPersonalShort: "Utilisation de relais personnels uniquement",
|
||
appearance: "Apparence",
|
||
language: "Langue",
|
||
darkModeOnly: "Mode sombre uniquement",
|
||
darkModeDesc: "SkateSpots adopte une esthétique néon sombre inspirée de la culture du skate. Fond noir, rose néon, vert citron et orange.",
|
||
navigation: "Navigation",
|
||
sasquatchExpanded: "Le Sasquatch a été déployé ! 🦧 Actualisez la page pour le voir.",
|
||
advanced: "Avancé",
|
||
sasquatchGuide: "🦧 Guide du Sasquatch",
|
||
sasquatchResetDesc: "Réinitialiser le guide d'accueil à la vue déployée",
|
||
expandSasquatch: "Déployer le Sasquatch",
|
||
wallet: "Portefeuille",
|
||
loginToWallet: "Connectez-vous pour gérer votre portefeuille",
|
||
openWallet: "Ouvrir le portefeuille",
|
||
balanceSendReceive: "Solde, envoi, réception",
|
||
connectNwc: "Connecter un portefeuille NWC",
|
||
account: "Compte",
|
||
security: "Sécurité",
|
||
securitySub: "Clés, signature, Amber",
|
||
nip05Sub: "Obtenez une adresse Nostr vérifiée",
|
||
app: "Application",
|
||
myStash: "Mon Stash",
|
||
myStashSub: "Inventaire privé du matériel",
|
||
relaysSub: "Connexions aux relais Nostr",
|
||
appearanceSub: "Langue et thème",
|
||
assistant: "Assistant",
|
||
showSasquatch: "Afficher l'assistant Sasquatch",
|
||
showSasquatchDesc: "Afficher le bouton flottant Sasquatch sur la carte et les autres écrans.",
|
||
showMapFooter: "Afficher la barre de liens de la carte",
|
||
showMapFooterDesc: "Afficher la fine bande de liens en bas de la carte.",
|
||
notifications: "Notifications",
|
||
notificationsSub: "Alertes pour les MP, les crews et les zaps",
|
||
coordinator: "Coordinateur",
|
||
coordinatorSub: "Votre serveur de groupe Cordn",
|
||
data: "Données",
|
||
myData: "Mes données",
|
||
myDataSub: "Exporter, importer, gérer",
|
||
advancedSub: "Relatr, Sasquatch, outils",
|
||
notLoaded: "Non chargé",
|
||
notLoggedIn: "Non connecté"
|
||
},
|
||
onboarding: {
|
||
seoTitle: "Commencer — SkateSpots",
|
||
seoDescription: "Rejoignez la communauté décentralisée du skateboard. Trouvez des spots, connectez-vous avec des coachs, envoyez des zaps. Gratuit pour toujours.",
|
||
homeSetTitle: "Zone définie 🛹",
|
||
homeSetDesc: "La carte s'ouvrira désormais sur votre région.",
|
||
locationFailedTitle: "Impossible d'obtenir votre position",
|
||
locationFailedDesc: "Vérifiez les autorisations de localisation, ou choisissez votre région sur la carte.",
|
||
niceTitle: "🎉 Sympa !",
|
||
niceDesc: "Vous comprenez maintenant comment fonctionne Nostr. Allons skater !",
|
||
npubCopied: "npub copié dans le presse-papiers.",
|
||
saveLoginNow: "Enregistrez votre connexion — faites-le maintenant",
|
||
saveLoginNowDesc: "Votre code de récupération est le seul moyen de revenir dans votre compte. Pas d'e-mail, pas de réinitialisation de mot de passe.",
|
||
betaBadge: "Bêta — Ouvert aux skateurs du monde entier",
|
||
headline1: "SKATE",
|
||
headline2: "TON MONDE",
|
||
heroBefore: "Une",
|
||
decentralized: "décentralisée",
|
||
heroAfter: "communauté de skate. Aucune entreprise ne la possède. Aucun algorithme n'enterre vos spots. Aucun bannissement. Juste des skateurs.",
|
||
pillMap: "Carte des spots",
|
||
pillCoaches: "Coachs et filmeurs",
|
||
pillEvents: "Événements",
|
||
pillGear: "Acheter/vendre du matériel",
|
||
pillZaps: "Zaps Bitcoin",
|
||
pillStash: "Stash de matériel",
|
||
pillCrews: "Crews",
|
||
createFreeAccount: "Créez votre compte gratuit",
|
||
noEmailNoPassword: "Pas d'e-mail. Pas de mot de passe. Votre identité vous appartient pour toujours.",
|
||
findSpots: "Trouvez des spots près de chez vous",
|
||
addFirstSpot: "Ajoutez votre premier spot",
|
||
accountCreated: "C'est bon ! Compte créé ✓",
|
||
identityYours: "Votre identité vous appartient — stockée dans votre clé, pas sur nos serveurs.",
|
||
whereSkate: "Où skatiez-vous ?",
|
||
whereSkateDesc: "Définissez votre région d'origine une fois et la carte s'ouvrira sur vos spots à chaque fois. Votre GPS ne quitte jamais votre appareil.",
|
||
useMyLocation: "Utiliser ma position",
|
||
pickOnMap: "Choisir sur la carte",
|
||
loginSaved: "Connexion enregistrée — votre compte est récupérable en sécurité.",
|
||
whyBother: "Pourquoi s'embêter ?",
|
||
why1Title: "Chaque spot sur une seule carte",
|
||
why1Body: "Ledges, rails, DIY, parks — cartographiés par des skateurs qui les rident vraiment. Vérifiez le statut avant de partir pour ne pas gâcher une session sur un bust.",
|
||
why2Title: "Construit par des skateurs, pas des costards",
|
||
why2Body: "Pas de pubs, pas d'algorithme qui vous bombarde de déchets, pas de collecte de données. Open source. La carte appartient à la communauté — vous y compris.",
|
||
why3Title: "Soyez payé pour rider",
|
||
why3Body: "Cartographiez une pépite, filmez un banger, organisez une session — et recevez des zaps en vrai Bitcoin directement dans votre portefeuille. Sans commission, sans intermédiaire.",
|
||
why4Title: "Votre compte vous appartient vraiment",
|
||
why4Body: "Une seule clé vous connecte à toutes les applications Nostr. Aucune entreprise ne peut vous exclure ou supprimer votre compte sur un coup de tête. Emmenez votre identité partout.",
|
||
everythingFree: "Tout ce que vous pouvez faire — gratuit",
|
||
featSpots: "Découvrir des spots",
|
||
featSpotsDesc: "Carte interactive avec des milliers de spots dans le monde",
|
||
featLab: "The Lab",
|
||
featLabDesc: "Trouvez des coachs, filmeurs et monteurs vidéo près de chez vous",
|
||
featEvents: "Événements",
|
||
featEventsDesc: "Compétitions, sessions, rencontres",
|
||
featGear: "Acheter / vendre du matériel",
|
||
featGearDesc: "Marketplace pair-à-pair pour du matériel de skate d'occasion",
|
||
featStash: "Mon Stash",
|
||
featStashDesc: "Inventaire privé chiffré de tout ce que vous possédez",
|
||
featCrews: "Crews",
|
||
featCrewsDesc: "Ridez avec votre crew — spots partagés, chat et sessions",
|
||
whatIsNostr: "Qu'est-ce que Nostr ?",
|
||
whatIsNostrSub: "Le protocole qui propulse SkateSpots",
|
||
nostrBefore: "Nostr est un protocole ouvert — comme l'e-mail, mais pour les applications sociales. Votre compte est une",
|
||
cryptoKeyPair: "paire de clés cryptographiques",
|
||
nostrAfter: "qui vous appartient. Aucune entreprise ne contrôle votre compte ni vos données — vous choisissez quels relais les stockent, et vous pouvez même gérer le vôtre. Votre identité fonctionne sur toutes les applications Nostr.",
|
||
nostrPoint1: "Vos données et clés vous appartiennent",
|
||
nostrPoint2: "Aucune entreprise ne peut vous bannir",
|
||
nostrPoint3: "L'identité fonctionne partout",
|
||
nostrPoint4: "Pourboires Bitcoin directs",
|
||
deepDive: "Pour aller plus loin : comment fonctionne Nostr",
|
||
privacyTip: "Astuce confidentialité : votre GPS ne quitte jamais votre appareil. Les serveurs auxquels vous vous connectez (comme les tuiles de carte) peuvent toujours voir votre IP — si vous voulez aussi la masquer, un VPN ou Tor fonctionne. Totalement facultatif.",
|
||
readPrivacy: "Lire notre page confidentialité",
|
||
zapsWallet: "⚡ Zaps et portefeuille",
|
||
optional: "Facultatif",
|
||
walletDesc: "Les zaps sont des pourboires Bitcoin que vous envoyez directement à un skateur qui a déniché un spot de malade, filmé un clip de fou ou organisé une super session. Sans frais de plateforme. Sans intermédiaire. 100 % lui revient.",
|
||
builtInWallet: "Portefeuille Cashu intégré",
|
||
builtInWalletDesc: "Recevez des paiements Lightning directement dans l'application. Sans configuration.",
|
||
balance: "Solde",
|
||
connectExternal: "Connecter un portefeuille externe",
|
||
connectExternalDesc: "Vous avez Alby, Mutiny ou un autre portefeuille ? Connectez-le via NWC.",
|
||
connectViaNwc: "Connecter via NWC",
|
||
loginToConnect: "Connectez-vous pour lier votre propre portefeuille.",
|
||
fiveDollars: "💡 5 $ de Bitcoin = des centaines de zaps à répartir dans la communauté",
|
||
commonQuestions: "Questions fréquentes",
|
||
faq1Q: "SkateSpots est-il gratuit ?",
|
||
faq1A: "100 % gratuit. Parcourez les spots, ajoutez des lieux, trouvez des coachs, créez des événements, rejoignez des sessions — tout gratuit, pour toujours. Le Bitcoin (zaps) est facultatif si vous voulez donner un pourboire aux créateurs.",
|
||
faq2Q: "Qu'est-ce que Nostr et pourquoi SkateSpots l'utilise-t-il ?",
|
||
faq2Before: "Nostr est un protocole ouvert pour des applications décentralisées — pensez à Internet lui-même, détenu par aucune entreprise. Votre compte SkateSpots est une paire de clés cryptographiques que",
|
||
faq2Strong: "vous possédez",
|
||
faq2After: ". Aucune entreprise ne peut bannir votre compte ni retenir vos données en otage — vous choisissez quels relais stockent vos données, et vous pouvez même gérer le vôtre. Votre identité fonctionne aussi sur d'autres applications Nostr comme Primal, Damus ou Amethyst.",
|
||
faq3Q: "Qu'est-ce qu'un nsec et pourquoi est-il important ?",
|
||
faq3Before: "Votre",
|
||
faq3Mid: "est votre clé privée — c'est la seule preuve que vous possédez votre compte. Contrairement aux mots de passe, il n'y a",
|
||
faq3Strong: "pas de « mot de passe oublié »",
|
||
faq3After: ". Si vous perdez votre nsec, votre compte disparaît pour toujours. Lorsque vous créez un compte, téléchargez immédiatement votre sauvegarde et conservez-la en lieu sûr (gestionnaire de mots de passe, notée hors ligne).",
|
||
faq4Q: "Quels signataires / applications fonctionnent avec SkateSpots ?",
|
||
faq4Desktop: "Sur ordinateur :",
|
||
faq4Extensions: "extensions de navigateur.",
|
||
faq4Android: "Sur Android :",
|
||
faq4AndroidAfter: "(meilleure expérience avec l'application native).",
|
||
faq4Ios: "Sur iOS :",
|
||
faq4IosAfter: "ou collez directement votre nsec (moins sûr).",
|
||
faq4Note: "Vous pouvez aussi vous connecter en collant directement votre nsec — mais utiliser une extension signataire est plus sûr.",
|
||
faq5Q: "Puis-je utiliser SkateSpots sur mon téléphone ?",
|
||
faq5Before: "Oui ! SkateSpots est une PWA (Progressive Web App). Visitez",
|
||
faq5Mid: "dans le navigateur de votre téléphone et appuyez sur",
|
||
faq5Em: "« Ajouter à l'écran d'accueil »",
|
||
faq5After: "pour une expérience d'application complète. Ou téléchargez-la depuis",
|
||
faq5End: "— une boutique d'applications décentralisée.",
|
||
faq6Q: "Qu'est-ce qu'un zap ?",
|
||
faq6A: "Un zap est un pourboire Bitcoin instantané envoyé via le réseau Lightning. Quand vous zappez un skateur, les sats arrivent dans son portefeuille en quelques secondes — sans PayPal, sans Venmo, sans commission. La personne qui a filmé ce 4-marches est payée directement par les fans.",
|
||
faq7Q: "Mes spots seront-ils supprimés si SkateSpots ferme ?",
|
||
faq7A: "Non. Vos spots sont publiés sur des relais Nostr — des serveurs distribués que n'importe qui peut gérer. Même si SkateSpots disparaissait demain en tant que produit, vos données existeraient toujours sur les relais et n'importe quel client Nostr pourrait les afficher.",
|
||
faq8Q: "Puis-je ajouter un spot situé sur une propriété privée ?",
|
||
faq8A: "Vous pouvez, mais faites preuve de bon sens. Les spots sur propriété privée doivent être signalés comme tels pour que les skateurs sachent à quoi s'attendre. SkateSpots n'est pas responsable des intrusions — respectez toujours les propriétaires et les locaux.",
|
||
faq9Q: "Comment signaler un bug ou donner un retour ?",
|
||
faq9Before: "Envoyez un MP à l'équipe SkateSpots directement sur Nostr, ou contactez notre coordinateur bêta :",
|
||
faq9Link: "Retour bêta → cordn.net",
|
||
readyToShred: "PRÊT À RIDER ?",
|
||
stopScrolling: "Arrêtez de scroller. Prenez l'application. Trouvez un spot. Skatiez-le.",
|
||
exploreSpots: "Explorer les spots",
|
||
betaFeedbackTitle: "Bêta — Nous voulons votre retour",
|
||
betaFeedbackDesc: "SkateSpots est en développement actif. Vous pourriez rencontrer des aspérités — c'est de notre faute, pas la vôtre. Signalez des bugs, suggérez des fonctionnalités, dites-nous ce qui ne va pas.",
|
||
betaCoordinator: "Coordinateur bêta",
|
||
betaCoordinatorDesc: "cordn.net → écrivez-nous",
|
||
dmOnNostr: "MP sur Nostr",
|
||
fixSameDay: "Vous avez trouvé un bug ? On le corrige le jour même. Vos signalements améliorent l'application pour tous les skateurs.",
|
||
relaySetup: "Configuration des relais"
|
||
},
|
||
relayEdu: {
|
||
understandingNostr: "Comprendre Nostr",
|
||
stepOf: "Étape {{current}} sur {{total}}",
|
||
step1Title: "Comprendre les relais",
|
||
step1Desc: "Pensez aux relais comme aux shops de skate qui partagent des nouvelles sur les spots",
|
||
you: "Vous",
|
||
relays: "Relais",
|
||
skaters: "Skateurs",
|
||
s1Good1: "Aucune entreprise ne possède votre compte",
|
||
s1Good1Desc: "Votre identité réside sur plusieurs serveurs relais",
|
||
s1Good2: "Vous contrôlez où résident vos données",
|
||
s1Good2Desc: "Vos publications se synchronisent entre les relais que vous choisissez — choisissez les vôtres ou gérez-en un vous-même",
|
||
s1Warn: "Les opérateurs de relais peuvent voir les publications publiques",
|
||
s1WarnDesc: "Pensez-y comme à une publication sur un panneau d'affichage",
|
||
step2Title: "Public vs privé",
|
||
step2Desc: "Sachez ce qui est visible et ce qui est chiffré",
|
||
publicTitle: "Public (visible par tous)",
|
||
pub1: "Les spots que vous ajoutez à la carte",
|
||
pub2: "Avis et commentaires",
|
||
pub3: "Les infos de votre profil (nom, photo)",
|
||
pub4: "Qui vous suivez",
|
||
privateTitle: "Privé (chiffré)",
|
||
priv1: "Messages privés",
|
||
priv2: "Communications du portefeuille",
|
||
noteStrong: "Remarque :",
|
||
note: "Les publications peuvent être stockées définitivement sur les relais. Réfléchissez avant de publier — comme dans la vraie vie !",
|
||
step3Title: "Vos clés = votre compte",
|
||
step3Desc: "C'est la chose la plus importante à comprendre",
|
||
secretKeyTitle: "Votre clé secrète (nsec)",
|
||
secretKeyDesc: "Pensez-y comme à votre skateboard — ne la prêtez à personne. Elle prouve que le compte vous appartient.",
|
||
s3Bad1: "Si vous la perdez, votre compte ne peut pas être récupéré",
|
||
s3Bad2: "Pas de « mot de passe oublié » — personne ne peut le réinitialiser",
|
||
s3Good: "Sauvegardez-la et conservez-la en lieu sûr",
|
||
publicKeyTitle: "Votre clé publique (npub)",
|
||
publicKeyDesc: "C'est comme votre nom d'utilisateur — partagez-la librement pour que les autres vous trouvent !",
|
||
inControl: "🔐 Vous avez le contrôle — aucune entreprise ne peut vous exclure !",
|
||
skip: "Ignorer",
|
||
gotIt: "Compris !"
|
||
},
|
||
about: {
|
||
seoTitle: "À propos - SkateSpots",
|
||
seoDescription: "Découvrez SkateSpots et notre mission de bâtir une communauté de skateboard décentralisée.",
|
||
npubCopied: "npub copié dans le presse-papiers. Collez-le dans votre client Nostr préféré pour envoyer un MP.",
|
||
bugReport: "🐛 Signalement de bug",
|
||
bugWhatHappened: "Ce qui s'est passé :",
|
||
bugExpected: "Ce à quoi je m'attendais :",
|
||
bugSteps: "Étapes pour reproduire :",
|
||
aboutWord: "À PROPOS",
|
||
heroBefore: "Connectez-vous avec les scènes de skate locales du monde entier.",
|
||
skaterOwned: "Des données aux skateurs",
|
||
heroAfter: ", des relais gérés par la communauté.",
|
||
viewStats: "Voir les statistiques de la communauté",
|
||
missionTitle: "Notre mission",
|
||
mission1: "SkateSpots aide les skateurs à découvrir des spots, à se connecter avec des pros à The Lab et à organiser des sessions — sans contrôle d'entreprise. Le vrai skate se passe hors ligne, cet outil ne fait que vous y connecter.",
|
||
mission2: "Le savoir du skateboard doit vivre avec la communauté, pas enfermé dans des applications d'entreprise. C'est pourquoi SkateSpots fonctionne sur Nostr — un système basé sur des relais où les skateurs contrôlent leurs propres données, choisissent quels relais les stockent, et peuvent même gérer le leur. Aucune entreprise ne possède la carte.",
|
||
whyNostr: "Pourquoi Nostr ?",
|
||
why1Title: "Contrôlé par la communauté",
|
||
why1Desc: "Vos spots vivent sur des relais communautaires. Les skateurs gèrent les serveurs, pas les entreprises.",
|
||
why2Title: "Vos données vous appartiennent",
|
||
why2Desc: "Votre identité Nostr vous appartient. Emmenez-la dans n'importe quelle application Nostr — sans enfermement.",
|
||
why3Title: "Intégration Bitcoin",
|
||
why3Desc: "Zappez les créateurs directement en Bitcoin. Aucune plateforme qui prend 30 %.",
|
||
why4Title: "Open source",
|
||
why4Desc: "Construit à ciel ouvert. N'importe qui peut contribuer ou forker le code.",
|
||
getInvolved: "S'impliquer",
|
||
getInvolvedDesc: "SkateSpots est open source et piloté par la communauté. Contribuez au code, partagez des spots ou aidez les autres à démarrer.",
|
||
betaTitle: "Test bêta",
|
||
betaDesc: "Cher utilisateur ! Merci de tester SkateSpots en bêta. Notez que l'application est encore en bêta et qu'il peut y avoir des bugs ou des problèmes de sécurité. Si vous rencontrez un problème ou souhaitez signaler un bug, contactez-nous !",
|
||
giveFeedback: "Donnez-nous votre retour :",
|
||
copyNpub: "Copier le npub",
|
||
reportBug: "Signaler un bug",
|
||
viewProfile: "Voir le profil",
|
||
downloadApp: "Télécharger l'application",
|
||
downloadAppDesc: "Installez SkateSpots sur Android via Zapstore — la boutique d'applications open source et native Bitcoin.",
|
||
getOnZapstore: "Obtenir sur Zapstore",
|
||
credits: "Crédits",
|
||
creditPoweredBy: "Propulsé par",
|
||
creditNostr: "Protocole décentralisé",
|
||
creditCrewChat: "Chat de crew via",
|
||
creditCordn: "Chat de groupe chiffré de bout en bout",
|
||
creditEcash: "Ecash via",
|
||
creditCashu: "Ecash chaumien pour Lightning",
|
||
creditWalletConnect: "Connexion de portefeuille via",
|
||
creditNwc: "Nostr Wallet Connect (NIP-47)",
|
||
creditSigning: "Signature sur Android avec",
|
||
creditAmber: "Signataire Nostr pour Android",
|
||
creditMapData: "Données cartographiques Bitcoin de",
|
||
creditBtcmap: "Lieux qui acceptent le Bitcoin",
|
||
creditCrowdfunding: "Financement participatif",
|
||
creditAngor: "Financement participatif Bitcoin décentralisé",
|
||
creditDistributed: "Distribué sur",
|
||
creditZapstore: "Boutique d'applications open source",
|
||
creditTrust: "Confiance et chat de crew via",
|
||
creditContextvm: "Scores de confiance Relatr et coordination du chat de crew chiffré",
|
||
stillQuestions: "D'autres questions ?",
|
||
stillQuestionsDesc: "Le Sasquatch est notre guide IA — propulsé par les données SkateSpots en direct. Interrogez-le sur les spots, les événements, les coachs, le matériel ou le fonctionnement de tout.",
|
||
askSasquatch: "Demandez au Sasquatch",
|
||
poweredBy: "Propulsé par",
|
||
decentralized: "Décentralisé",
|
||
communityOwned: "Appartenant à la communauté"
|
||
},
|
||
faq: {
|
||
seoTitle: "FAQ - SkateSpots",
|
||
seoDescription: "Posez toutes vos questions sur SkateSpots au Sasquatch.",
|
||
greeting: "Salut ! Je suis le Sasquatch 🦧 — pose-moi n'importe quelle question sur SkateSpots. Spots, événements, matériel, portefeuilles, confidentialité, Nostr — je gère. Que veux-tu savoir ?",
|
||
gotQuestions: "Des questions ?",
|
||
heroDesc: "Demandez au Sasquatch — il sait tout sur SkateSpots, Nostr, Bitcoin et le skateboard.",
|
||
askTitle: "Demandez au Sasquatch",
|
||
askDesc: "Le Sasquatch est ouvert dans le coin inférieur gauche de votre écran — cliquez dessus et tapez votre question. Il a un accès en direct aux spots, événements, coachs et à la météo.",
|
||
askQuestion: "En quoi peux-tu m'aider sur SkateSpots ?",
|
||
openSasquatch: "Ouvrir le Sasquatch",
|
||
commonQuestions: "Questions fréquentes — appuyez pour demander",
|
||
quickAnswers: "Réponses rapides",
|
||
footerHint: "Le Sasquatch utilise les données Nostr en direct du relais SkateSpots + l'IA pour répondre à vos questions. 🛹",
|
||
chip1Label: "Qu'est-ce que SkateSpots ?",
|
||
chip1Q: "Qu'est-ce que SkateSpots et comment ça marche ?",
|
||
chip2Label: "Comment ajouter un spot ?",
|
||
chip2Q: "Comment ajouter un spot de skate à la carte ?",
|
||
chip3Label: "Que sont les zaps ?",
|
||
chip3Q: "Que sont les zaps ?",
|
||
chip4Label: "Est-ce gratuit ?",
|
||
chip4Q: "SkateSpots est-il gratuit ?",
|
||
chip5Label: "Qu'est-ce que Mon Stash ?",
|
||
chip5Q: "Qu'est-ce que Mon Stash ?",
|
||
chip6Label: "Comment me connecter ?",
|
||
chip6Q: "Comment me connecter ou créer un compte ?",
|
||
chip7Label: "Qu'est-ce que Nostr ?",
|
||
chip7Q: "Qu'est-ce que Nostr ?",
|
||
chip8Label: "Confidentialité et données",
|
||
chip8Q: "Quelles données sont publiques et lesquelles sont privées sur SkateSpots ?",
|
||
chip9Label: "Comment vendre du matériel ?",
|
||
chip9Q: "Comment vendre du matériel sur SkateSpots ?",
|
||
chip10Label: "Qu'est-ce que The Lab ?",
|
||
chip10Q: "Qu'est-ce que The Lab ?",
|
||
fact1Label: "Spots de skate dans le monde",
|
||
fact1Value: "Découvrir et ajouter",
|
||
fact2Label: "Zaps Bitcoin Lightning",
|
||
fact2Value: "100 % gratuit",
|
||
fact3Label: "Décentralisé sur Nostr",
|
||
fact3Value: "Vos données vous appartiennent",
|
||
fact4Label: "Inventaire privé du matériel",
|
||
fact4Value: "Stash chiffré",
|
||
s1Q: "Qu'est-ce que SkateSpots ?",
|
||
s1A: "Une carte et une communauté décentralisées pour le skateboard, construites sur Nostr. Découvrez des spots, trouvez des coachs et filmeurs, rejoignez des crews, publiez des événements et achetez/vendez du matériel — sans entreprise au milieu.",
|
||
s2Q: "Comment ajouter un spot ?",
|
||
s2A: "Appuyez sur la carte, ou utilisez le bouton + / « Ajouter un spot », puis déposez un pin et remplissez les détails. Vous avez besoin d'un compte Nostr gratuit (appuyez sur Connexion → Créer un compte — aucun e-mail requis).",
|
||
s3Q: "Que sont les zaps ?",
|
||
s3A: "Les zaps sont des pourboires Bitcoin Lightning. Vous pouvez zapper des spots, des événements, des crews et des personnes que vous appréciez. Ils vont directement au destinataire via Lightning — SkateSpots ne détient jamais vos fonds.",
|
||
s4Q: "Est-ce gratuit ?",
|
||
s4A: "Oui. Créer un compte, ajouter des spots et naviguer sont gratuits. Les extras payants facultatifs (comme les annonces mises en avant) et les pourboires (zaps) sont payés directement entre personnes.",
|
||
s5Q: "Quelles données sont publiques ?",
|
||
s5A: "Tout ce que vous publiez — spots, événements, votre profil — est public sur les relais Nostr. Vos messages privés et votre Stash sont chiffrés de bout en bout. Consultez la page Confidentialité pour plus de détails.",
|
||
s6Q: "Qu'est-ce que The Lab ?",
|
||
s6A: "The Lab est l'endroit où vous trouvez des personnes à embaucher ou auprès desquelles apprendre : coachs, entraîneurs, filmeurs, monteurs vidéo, photographes, constructeurs, artistes et plus encore."
|
||
},
|
||
privacy: {
|
||
seoTitle: "Confidentialité — SkateSpots",
|
||
seoDescription: "Comment SkateSpots gère vos données : votre GPS reste sur votre appareil, les spots que vous publiez sont publics, et comment masquer votre IP avec un VPN ou Tor si vous le souhaitez.",
|
||
heroBefore: "Votre",
|
||
heroHighlight: "Confidentialité",
|
||
heroDesc: "Pas de traçage, pas de pubs, pas de vente de données. Voici exactement ce qui reste sur votre appareil, ce qui est public, et comment verrouiller davantage si vous le souhaitez.",
|
||
locationTitle: "Votre position reste sur votre appareil",
|
||
locationBefore: "Quand vous appuyez sur",
|
||
nearMe: "« Près de moi »,",
|
||
locationAfter: "votre position GPS est lue sur votre appareil et utilisée uniquement pour centrer la carte et trier les spots à proximité.",
|
||
locationGood1: "Elle n'est jamais publiée sur Nostr.",
|
||
locationGood2: "Elle n'est jamais envoyée à SkateSpots — aucun serveur SkateSpots ne la collecte.",
|
||
locationGood3: "Elle n'est jamais partagée avec un tiers.",
|
||
locationGood4: "Sur l'application native, nous utilisons directement le système de localisation de votre téléphone et évitons les Google Play Services — elle fonctionne donc sur les téléphones dé-Googlisés (GrapheneOS, /e/OS) et Google ne la voit jamais.",
|
||
weatherBefore: "La météo est désactivée par défaut. Quand vous l'activez, elle recherche les conditions à l'emplacement public du",
|
||
weatherEm: "spot",
|
||
weatherAfter: "— pas le vôtre.",
|
||
publicTitle: "Ce qui est public par conception",
|
||
publicDesc: "SkateSpots est une carte partagée, donc certaines choses sont faites pour être vues par tout le monde. Quand vous choisissez de les publier, elles sont publiques sur le réseau Nostr :",
|
||
public1Strong: "Les spots que vous ajoutez",
|
||
public1: "— y compris leurs coordonnées. Si vous ajoutez un spot à votre position exacte, cette position devient publique. Réfléchissez avant de déposer un pin sur votre propre allée.",
|
||
public2Strong: "Avis, commentaires et votre profil public",
|
||
public2: "(nom, photo).",
|
||
public3: "Qui vous suivez, et les réactions publiques.",
|
||
public4Strong: "Les zaps",
|
||
public4: "sont publics par défaut : un zap relie votre compte — souvent votre adresse lightning — à la publication que vous avez payée et au pourboire lui-même. Votre portefeuille peut l'envoyer anonymement si vous préférez.",
|
||
publicNoteBefore: "Un VPN ou Tor",
|
||
notWord: "ne masque pas",
|
||
publicNoteAfter: "le contenu de ce que vous publiez — les coordonnées d'un spot sont publiques quoi qu'il arrive. Les outils de confidentialité masquent votre identité réseau (votre IP), pas les choses que vous choisissez de publier.",
|
||
encryptedTitle: "Ce qui est privé et chiffré",
|
||
enc1Strong: "Les messages privés",
|
||
enc1Mid: "et",
|
||
enc1Strong2: "les chats de crew",
|
||
enc1: "sont chiffrés de bout en bout (NIP-17). Seuls les participants peuvent les lire.",
|
||
enc2Strong: "Mon Stash",
|
||
enc2: "— votre inventaire privé de matériel — est chiffré avec votre propre clé.",
|
||
enc3Strong: "Les membres réservés au crew",
|
||
enc3: "peuvent choisir de n'être visibles que par les membres de leur crew.",
|
||
ipTitle: "Ce qui quitte votre appareil : votre IP",
|
||
ipBefore: "Comme tout site web, les serveurs avec lesquels SkateSpots communique peuvent voir votre",
|
||
ipAddress: "adresse IP",
|
||
ipAfter: "(un indicateur approximatif de votre région). C'est normal pour toute application web ou cartographique et ne nous est pas propre. Ces serveurs sont :",
|
||
ipTileStrong: "Tuiles de carte",
|
||
ipTile: "(OpenStreetMap) — voient votre IP et la zone de la carte que vous regardez.",
|
||
ipGeoStrong: "Géocodage des spots/shops",
|
||
ipGeo: "— quand vous créez ou modifiez un spot ou un shop, ses coordonnées sont envoyées à OpenStreetMap Nominatim pour remplir l'étiquette ville/pays. Quand vous ouvrez les statistiques communautaires, les coordonnées des pins sans étiquette de lieu sont envoyées à BigDataCloud pour être regroupées par région (mises en cache sur votre appareil — au plus une fois par pin). Les deux voient votre IP. Ce sont les coordonnées du pin que vous avez placé / les coordonnées de pin publiques, jamais le GPS en direct de votre appareil.",
|
||
ipPushStrong: "Notifications en arrière-plan",
|
||
ipPush: "(opt-in) — si vous les activez, un serveur push SkateSpots voit que votre clé a reçu quelque chose et quand (jamais qui l'a envoyé ni ce qu'il dit — les messages restent chiffrés), et le service push de votre OS (Google/Mozilla/Apple) livre l'alerte.",
|
||
ipBtcStrong: "Lieux Bitcoin",
|
||
ipBtc: "(BTCMap, quand vous activez cette couche) — voient votre IP et la zone que vous consultez.",
|
||
ipRelayStrong: "Relais Nostr",
|
||
ipRelay: "— voient votre IP quand l'application lit ou publie.",
|
||
ipMintStrong: "Mints Cashu",
|
||
ipMint: "— voient votre IP chaque fois que votre portefeuille envoie, reçoit ou fond.",
|
||
ipRouteStrong: "Itinéraires",
|
||
ipRoute: "(OSRM, et Transitous pour les transports) — reçoivent le début et la fin de tout itinéraire que vous demandez, pas seulement votre IP. Le calcul d'itinéraire reste dans l'application : votre point de départ et votre destination ne sont jamais transmis à Google ou Apple Maps.",
|
||
ipWeatherStrong: "Météo",
|
||
ipWeatherMid: "(Open-Meteo, opt-in) et",
|
||
ipUploadStrong: "téléversements d'images",
|
||
ipWeather: "(Blossom), quand vous les utilisez.",
|
||
ipAiStrong: "IA Sasquatch",
|
||
ipAi: "— votre message va à notre propre serveur, puis au fournisseur du modèle.",
|
||
ipLink1: "Comme vous envoyez votre clé publique (npub) sur la même connexion, un relais peut relier votre IP à votre personne — pas juste « quelqu'un s'est connecté », mais « cette personne, depuis cette adresse ».",
|
||
ipShieldBefore: "Une chose que nous protégeons : le",
|
||
ipMintsStrong: "répertoire des mints",
|
||
ipShieldAfter: "est récupéré via notre serveur, donc MintRadar ne voit jamais votre IP.",
|
||
vpnTitle: "Plus de confidentialité ? VPN ou Tor (facultatif)",
|
||
vpnDesc: "Pour la plupart des skateurs, ce n'est pas nécessaire — mais si vous voulez masquer votre IP et votre localisation approximative aux serveurs ci-dessus, vous avez deux options gratuites :",
|
||
vpnReputable: "🛡️ Un VPN réputé",
|
||
vpnReputableDesc: "Masque votre IP derrière les serveurs du VPN. Simple et rapide. Utilisez-en un que vous payez et en qui vous avez confiance ; les VPN gratuits monétisent généralement votre trafic, considérez donc « gratuit » comme un signal d'alerte.",
|
||
torBrowser: "🧅 Navigateur Tor",
|
||
torDesc: "Gratuit, confidentialité IP maximale, passe par plusieurs relais. Plus lent — les cartes et certains relais Nostr peuvent ralentir ou bloquer les nœuds de sortie Tor. Idéal pour les plus prudents.",
|
||
readThis: "Lisez ceci pour ne pas vous faire avoir",
|
||
caveat1Before: "Un VPN/Tor masque votre",
|
||
ipWord: "IP",
|
||
caveat1: "— pas les spots que vous publiez. Un pin à votre domicile est public, que vous utilisiez un VPN ou non.",
|
||
caveat2Before: "N'activez pas",
|
||
nearMeGps: "« Près de moi » / GPS du navigateur",
|
||
caveat2: "si votre objectif est de rester anonyme — un GPS précis annule tout masquage d'IP.",
|
||
caveat3: "Aucun outil ne vous rend totalement « anonyme ». Ils réduisent ce que les serveurs peuvent déduire sur votre localisation réseau — c'est tout.",
|
||
keysTitle: "Vos clés, votre compte",
|
||
keysBefore: "Votre compte est une paire de clés cryptographiques qui vous appartient. La façon la plus sûre de vous connecter est un",
|
||
signer: "signataire",
|
||
keysAfter: "(Alby, nos2x ou Amber sur Android) pour que votre clé secrète ne soit jamais collée dans l'application.",
|
||
keysCaveatBefore: "Si vous collez votre",
|
||
keysCaveatAfter: "directement, elle est stockée dans votre navigateur. Utilisez plutôt une extension signataire quand vous pouvez, et gardez votre sauvegarde nsec en lieu sûr hors ligne.",
|
||
footerBefore: "Des questions ? Demandez à",
|
||
sasquatchName: "Le Sasquatch",
|
||
footerMid: "dans l'application, ou lisez le",
|
||
gettingStarted: "guide de démarrage",
|
||
about: "À propos"
|
||
},
|
||
license: {
|
||
seoTitle: "Licence - SkateSpots",
|
||
seoDescription: "Licence SkateSpots. Vous êtes libre de faire du skateboard.",
|
||
tagline: "Skate, gagne, amuse-toi et dépense des Sats où que tu sois.",
|
||
copyright: "Contributeurs de SkateSpots et la communauté",
|
||
licenseLabel: "Licence",
|
||
freeLine1: "TU ES LIBRE",
|
||
freeLine2: "DE FAIRE DU SKATEBOARD",
|
||
body: "Ce projet est ouvert. Partage-le, forke-le, construis dessus, skatie-le. Les rues appartiennent à tout le monde. Ce code aussi. Continue à skater, amuse-toi, apprends des tricks, soutiens les bâtisseurs et skatie encore.",
|
||
builtBefore: "Construit avec ❤️ sur",
|
||
builtMid: "· Propulsé par",
|
||
lightning: "Bitcoin Lightning ⚡",
|
||
viewSource: "Voir le code source",
|
||
aboutSkateSpots: "À propos de SkateSpots",
|
||
supporters: "Soutiens"
|
||
},
|
||
glossary: {
|
||
seoTitle: "Glossaire des tricks · SkateSpots",
|
||
seoDescription: "Le glossaire complet du skateboard — {{count}} entrées couvrant flips, grinds, slides, grabs, airs, lip tricks, handplants, freestyle, termes de transition, stance et matériel, avec des noms alternatifs.",
|
||
heading: "GLOSSAIRE DES TRICKS",
|
||
subheading: "{{count}} entrées · tricks, transition, freestyle, stance et matériel",
|
||
searchPlaceholder: "Recherchez des tricks ou surnoms — tre flip, crooks, method…",
|
||
clearSearch: "Effacer la recherche",
|
||
all: "Tout",
|
||
results: "{{count}} résultat{{s}} pour",
|
||
noMatch: "Aucun trick ne correspond. Essayez un surnom comme « tre flip », « crooks » ou « melon ».",
|
||
tricksCount: "{{count}} tricks",
|
||
footerBefore: "Vous connaissez un trick ou un surnom que nous avons oublié ? Les tricks prennent des noms différents selon la scène — contactez",
|
||
sasquatch: "Le Sasquatch 🦧",
|
||
footerAfter: "et dites-le-nous."
|
||
},
|
||
signers: {
|
||
seoTitle: "Applications signataires - Sécurisez vos clés Nostr | SkateSpots",
|
||
seoDescription: "Découvrez les applications signataires qui gardent vos clés Nostr en sécurité. Trouvez la meilleure option pour Android, iOS ou les navigateurs de bureau.",
|
||
securityGuide: "Guide de sécurité",
|
||
protect: "Protégez vos",
|
||
nostrKeys: "clés Nostr",
|
||
heroDesc: "Les applications signataires gardent vos clés privées en sécurité en signant les événements sans les exposer. Au lieu de coller votre clé dans chaque application, laissez un signataire s'en charger en toute sécurité.",
|
||
whySignerStrong: "Pourquoi utiliser un signataire ?",
|
||
whySigner: "Votre clé privée Nostr est comme un mot de passe qui ne peut jamais être changé. Une application signataire la garde en sécurité tout en vous laissant utiliser n'importe quelle application Nostr.",
|
||
androidTitle: "Signataires Android",
|
||
androidDesc: "Applications signataires natives pour appareils Android, y compris GrapheneOS.",
|
||
iosTitle: "Signataires iOS",
|
||
iosDesc: "Options de signataire pour les utilisateurs d'iPhone et d'iPad.",
|
||
browserTitle: "Extensions de navigateur",
|
||
browserDesc: "Extensions de navigateur de bureau pour signer sur les applications web.",
|
||
recommended: "Recommandé",
|
||
yourPlatform: "Votre plateforme",
|
||
get: "Obtenir {{name}}",
|
||
protocolsTitle: "Comprendre les protocoles",
|
||
nip07Desc: "Norme d'extension de navigateur. L'extension injecte des capacités de signature dans les applications web. Utilisée par Alby, nos2x, Flamingo et des extensions similaires.",
|
||
nip46Desc: "Protocole de signature distant (« bunker »). Votre application signataire approuve les demandes d'autres applications sans partager vos clés. Utilisé par Nsec.app, Nostria et Nowser.",
|
||
nip55Desc: "Protocole de signataire spécifique à Android. Les applications natives peuvent demander des signatures à Amber sans exposer les clés. L'expérience Android la plus fluide.",
|
||
whichChoose: "Lequel choisir ?",
|
||
chooseAndroid: "Android :",
|
||
chooseAndroidDesc: "Amber (NIP-55) pour les applications natives",
|
||
chooseIos: "iOS :",
|
||
chooseIosDesc: "Nsec.app (NIP-46) pour une meilleure compatibilité",
|
||
chooseDesktop: "Ordinateur :",
|
||
chooseDesktopDesc: "Alby, nos2x ou Flamingo (NIP-07)",
|
||
amberDesc: "Signataire Android natif axé sur la sécurité et la facilité d'utilisation. Le meilleur choix pour les utilisateurs Android.",
|
||
nsecAppDesc: "Signataire distant multiplateforme qui agit comme un coffre-fort sécurisé pour vos clés.",
|
||
nostriaDesc: "Application signataire distante avec clés stockées dans le stockage sécurisé de l'appareil.",
|
||
nowserDesc: "Signataire multi-auth prenant en charge à la fois l'extension de navigateur et les protocoles de signature distante.",
|
||
nsecAppIosDesc: "La meilleure option pour iOS. Utilisez-le comme signataire distant avec n'importe quel client Nostr.",
|
||
nowserTfDesc: "Signataire iOS disponible via TestFlight avec des capacités de signature similaires à Android.",
|
||
nostriaIosDesc: "Signataire distant avec stockage sécurisé des clés sur votre appareil.",
|
||
nos2xDesc: "Extension de navigateur simple et fiable pour signer des événements Nostr.",
|
||
albyDesc: "Portefeuille Bitcoin Lightning avec gestion intégrée des clés Nostr et WebLN.",
|
||
flamingoDesc: "Extension de navigateur axée sur Nostr avec une interface épurée.",
|
||
kiwiDesc: "Sur Android/GrapheneOS, utilisez le navigateur Kiwi pour charger les extensions nos2x ou Alby.",
|
||
fNativeApp: "Application native",
|
||
fMultiKey: "Prise en charge de plusieurs clés",
|
||
fEventSigning: "Signature d'événements",
|
||
fSecureStorage: "Stockage sécurisé des clés",
|
||
fRemoteSigning: "Signature distante",
|
||
fAnyClient: "Fonctionne avec n'importe quel client",
|
||
fCrossDevice: "Synchronisation entre appareils",
|
||
fMultiKeySupport: "Prise en charge multi-clés",
|
||
fNip07: "Prise en charge NIP-07",
|
||
fNip46: "Prise en charge NIP-46",
|
||
fFlexibleSigning: "Signature flexible",
|
||
fNativeIos: "Application iOS native",
|
||
fLightweight: "Léger",
|
||
fEasyToUse: "Facile à utiliser",
|
||
fChromeSupport: "Prise en charge Chrome/Brave/Edge",
|
||
fLightningPayments: "Paiements Lightning",
|
||
fNostrSigning: "Signature Nostr",
|
||
fWebln: "Prise en charge WebLN",
|
||
fNwc: "Prise en charge NWC",
|
||
fCleanUi: "Interface épurée",
|
||
fPrivacyFocused: "Axé sur la confidentialité",
|
||
fExtensionMobile: "Prise en charge des extensions sur mobile",
|
||
fFullBrowser: "Expérience de navigateur complète",
|
||
fGraphene: "Fonctionne sur GrapheneOS"
|
||
},
|
||
betaDisclaimer: {
|
||
title: "Attention — ceci est une bêta",
|
||
subtitle: "Un petit mot avant de vous lancer.",
|
||
ossTitle: "Open source et expérimental",
|
||
ossBody: "Construit à ciel ouvert par la communauté. Fouillez, forkez, cassez.",
|
||
betaTitle: "En bêta — non audité",
|
||
betaBody: "Le code n'a pas encore fait l'objet d'un audit de sécurité formel. Les bugs arrivent.",
|
||
moneyTitle: "Manipule de vrais Bitcoin et Lightning",
|
||
moneyBody: "Utilisez de l'argent à vos propres risques. Ne chargez que ce que vous pouvez vous permettre de perdre.",
|
||
finePrint: "Aucune garantie d'aucune sorte. Vous êtes seul responsable de vos fonds et de vos clés.",
|
||
viewCode: "Voir le code",
|
||
accept: "Compris, laissez-moi entrer"
|
||
}
|
||
}
|
||
};
|
||
|
||
export default frBatch3;
|