From 7bbb04b594d93c1188c11d0340a30f1bfc0f844f Mon Sep 17 00:00:00 2001 From: Thomas BERNARD Date: Thu, 2 Apr 2026 18:55:17 +0200 Subject: [PATCH] translate more messages to fr-FR (#6042) --- .../public/locales/fr-FR/translation.toml | 783 ++++++++++++++++-- 1 file changed, 729 insertions(+), 54 deletions(-) diff --git a/frontend/public/locales/fr-FR/translation.toml b/frontend/public/locales/fr-FR/translation.toml index c30c621ea2..c57555ae11 100644 --- a/frontend/public/locales/fr-FR/translation.toml +++ b/frontend/public/locales/fr-FR/translation.toml @@ -146,6 +146,8 @@ insufficientCredits = "Insufficient credits. Required: {{requiredCredits}}, Avai loadingCredits = "Checking credits..." loadingProStatus = "Checking subscription status..." noticeTopUpOrPlan = "Not enough credits, please top up or upgrade to a plan" +accessInvite = "Invite" +confirm = "Confirm" [account] accountSettings = "Paramètres du compte" @@ -1434,6 +1436,34 @@ hint = "Vous avez des modifications non enregistrées" message = "Vous avez des modifications non enregistrées. Voulez-vous les ignorer ?" title = "Modifications non enregistrées" +[admin.settings.storage] +description = "Control server storage and sharing options." +title = "File Storage & Sharing" + +[admin.settings.storage.enabled] +description = "Allow users to store files on the server." +label = "Enable Server File Storage" + +[admin.settings.storage.sharing.email] +description = "Allow sharing with email addresses." +label = "Enable Email Sharing" +mailLink = "Configure Mail Settings" +mailNote = "Requires mail configuration. " + +[admin.settings.storage.sharing.enabled] +description = "Allow users to share stored files." +label = "Enable Sharing" + +[admin.settings.storage.sharing.links] +description = "Allow sharing via signed-in links." +frontendUrlLink = "Configure in System Settings" +frontendUrlNote = "Requires a Frontend URL. " +label = "Enable Share Links" + +[admin.settings.storage.signing.enabled] +description = "Allow users to create multi-participant document signing sessions. Requires server file storage to be enabled." +label = "Enable Group Signing (Alpha)" + [admin.status] active = "Actif" inactive = "Inactif" @@ -1517,7 +1547,7 @@ editStampHint = "Pour changer l’image, supprimez ce tampon et ajoutez-en un no editSwitchToSelect = "Basculez sur Sélectionner et modifier pour modifier cette annotation." editText = "Modifier la zone de texte" editTextMarkup = "Modifier le marquage de texte" -annotationStyle = "Annotation style" +annotationStyle = "Style d'annotation" ellipse = "Ellipse" exit = "Quitter le mode d’annotation" fillColor = "Couleur de remplissage" @@ -1528,19 +1558,19 @@ highlight = "Surligner" imagePreview = "Aperçu" inkHighlighter = "Surligneur à main levée" line = "Ligne" -lineArrow = "Arrow" +lineArrow = "Flèche" noBackground = "Sans arrière-plan" note = "Note" -comment = "Comment" -comments = "Comments" -insertText = "Insert Text" -replaceText = "Replace Text" +comment = "Commentaire" +comments = "Commentaires" +insertText = "Insérer du texte" +replaceText = "Remplacer le texte" noteIcon = "Icône de note" notesStamps = "Notes et tampons" opacity = "Opacité" pen = "Stylo" polygon = "Polygone" -polyline = "Polyline" +polyline = "Ligne brisée" properties = "Propriétés" rectangle = "Rectangle" redo = "Rétablir" @@ -2077,11 +2107,24 @@ serverCertMessage = "Utilisation du certificat du serveur — aucun fichier ni m showLogo = "Afficher le logo" tags = "signer,chiffrer,certificat,authenticate,PEM,P12,official,encrypt" title = "Signer avec un certificat" +allSigned = "All participants have signed. Ready to finalize." +awaitingSignatures = "Awaiting signatures" +declined = "Declined" +fetchFailed = "Failed to load signing data" +finalized = "Finalized" +notified = "Pending" +partialNote = "You can finalize early with current signatures. Unsigned participants will be excluded." +pending = "Pending" +readyToFinalize = "Ready to finalize" +signatureProgress = "{{signedCount}}/{{totalCount}} signatures" +signed = "Signed" +viewed = "Viewed" [certSign.appearance] invisible = "Invisible" stepTitle = "Apparence de la signature" visible = "Visible" +visibility = "Visibilité" [certSign.appearance.options] title = "Détails de la signature" @@ -2188,6 +2231,225 @@ bullet4 = "Peut utiliser des certificats personnalisés pour la vérification" text = "Lors de la vérification des signatures, l’outil indique si elles sont valides, qui a signé le document, quand il a été signé et s’il a été modifié depuis." title = "Vérification des signatures" +[certSign.collab.addParticipants] +add = "Add {{count}} Participant(s)" +back = "Back" +configureSignatures = "Configure Signature Settings" +continue = "Continue to Signature Settings" +reasonHelp = "Pre-set a signing reason for these participants (optional, they can override when signing)" +reasonPlaceholder = "e.g. Approval, Review..." +selectUsers = "Select Users" + +[certSign.collab.finalize] +button = "Finalize and Load Signed PDF" +early = "Finalize with Current Signatures" + +[certSign.collab.participant] +certInvalid = "✗ {{error}}" +certInvalidFallback = "Invalid certificate" +certNetworkError = "Could not validate certificate" +certValid = "✓ Certificate valid" +certValidUntil = " until {{date}}" +certValidating = "Validating certificate..." + +[certSign.collab.sessionCreation] +includeSummaryPage = "Include Signature Summary Page" +includeSummaryPageHelp = "A summary page will be added at the end with all signature metadata. The digital certificate signature boxes on individual pages will be suppressed (wet signatures are unaffected)." + +[certSign.collab.sessionDetail] +addButton = "Add Participants" +addParticipants = "Add Participants" +addParticipantsError = "Failed to add participants" +backToList = "Back to Sessions" +deleteConfirm = "Are you sure? This cannot be undone." +deleteError = "Failed to delete session" +deleteSession = "Delete Session" +deleted = "Session deleted" +dueDate = "Due Date" +finalizeError = "Failed to finalize session" +loadPdfError = "Failed to load signed PDF" +loadSignedPdf = "Load Signed PDF into Active Files" +messageLabel = "Message" +noAdditionalInfo = "No additional information" +owner = "Owner" +participantRemoved = "Participant removed" +participants = "Participants" +participantsAdded = "Participants added successfully" +removeParticipant = "Remove" +removeParticipantError = "Failed to remove participant" +selectUsers = "Select users..." +sessionInfo = "Session Info" +workbenchTitle = "Session Management" + +[certSign.collab.sessionList] +active = "Active" +finalized = "Finalized" + +[certSign.collab.signRequest] +addSignature = "Add Your Signature" +addToFiles = "Add to Active Files" +addedToFiles = "Document added to active files" +advancedSettings = "Advanced Settings" +backToList = "Back to Sign Requests" +certificateChoice = "Select a certificate to sign with" +changeSignature = "Change signature" +clearSignature = "Clear Signature" +completeAndSign = "Complete & Sign" +createNewSignature = "Create New Signature" +decline = "Decline Request" +declineButton = "Decline" +deleteSelected = "Delete selected signature" +drawSignature = "Draw your signature below" +dueDate = "Due Date" +fileTooLarge = "File size must be less than 5MB" +fontFamily = "Font Family" +fontSize = "Font Size: {{size}}px" +fontSizePlaceholder = "Size" +from = "From" +invalidCertFile = "Please select a P12 or PFX certificate file" +invalidFileType = "Please select an image file" +location = "Location (Optional)" +locationPlaceholder = "Where are you signing from?" +message = "Message" +noCertificate = "Please select a certificate file" +noSignatures = "Please place at least one signature on the PDF" +p12File = "P12/PFX Certificate File" +password = "Certificate Password" +passwordPlaceholder = "Enter password..." +penColor = "Pen Color" +penSize = "Pen Size: {{size}}px" +placeSignatureButton = "Place Signature on PDF" +placementActive = "Click PDF to place" +reason = "Reason (Optional)" +reasonPlaceholder = "Why are you signing?" +removeCertFile = "Remove File" +removeImage = "Remove Image" +savedSignatures = "Saved Signatures" +selectFile = "Select Image File" +selectSignatureTitle = "Select or Create Signature" +signButton = "Sign Document" +signatureInfo = "These settings are configured by the document owner" +signaturePlaced = "Signature placed on page" +signatureSettings = "Signature Settings" +signatureText = "Signature Text" +signatureTextPlaceholder = "Enter your name..." +signatureTypeLabel = "Signature Type" +signingTitle = "Signing" +textColor = "Text Color" +typeSignature = "Type your name to create a signature" +uploadCert = "Custom Certificate" +uploadCertDesc = "Use your own P12/PFX certificate" +uploadSignature = "Upload your signature image" +usePersonalCert = "Personal Certificate" +usePersonalCertDesc = "Auto-generated for your account" +useServerCert = "Organization Certificate" +useServerCertDesc = "Shared organization certificate" +workbenchTitle = "Sign Request" + +[certSign.collab.signRequest.canvas] +colorPickerTitle = "Choose stroke colour" +continue = "Continue" + +[certSign.collab.signRequest.certModal] +certInvalid = "Certificate invalid: {{error}}" +certInvalidFallback = "Invalid certificate" +certNetworkError = "Could not validate certificate" +certValidUntil = "Certificate valid until {{date}}" +certValidating = "Validating certificate..." +description = "You have placed {{count}} signature(s). Choose your certificate to complete signing." +sign = "Sign Document" +title = "Configure Certificate" + +[certSign.collab.signRequest.image] +hint = "Upload a PNG or JPG image of your signature" + +[certSign.collab.signRequest.mode] +move = "Move Signature" +place = "Place Signature" +title = "Sign or move mode" + +[certSign.collab.signRequest.modeTabs] +draw = "Draw" +image = "Upload" +text = "Type" + +[certSign.collab.signRequest.placeSignature] +message = "Click on the PDF to place your signature" +title = "Place Signature" + +[certSign.collab.signRequest.preview] +imageAlt = "Selected signature" +missing = "No preview" +textFallback = "Signature" + +[certSign.collab.signRequest.saved] +defaultCanvasLabel = "Drawing signature" +defaultImageLabel = "Uploaded signature" +defaultLabel = "Signature" +defaultTextLabel = "Typed signature" +delete = "Delete signature" +none = "No saved signatures" + +[certSign.collab.signRequest.signatureType] +draw = "Draw" +type = "Type" +upload = "Upload" + +[certSign.collab.signRequest.steps] +back = "Back" +cancelPlacement = "Cancel Placement" +certificate = "Certificate" +clickMultipleTimes = "Click on the PDF multiple times to place signatures. Drag any signature to move or resize it." +clickToPlace = "Click on the PDF where you would like your signature to appear." +continue = "Continue to Certificate Selection" +continueToPlacement = "Continue to Placement" +continueToReview = "Continue to Review" +createSignature = "Create Signature" +invisible = "Invisible" +location = "Location:" +multipleSignatures = "{{count}} signatures will be applied to the PDF" +oneSignature = "1 signature will be applied to the PDF" +placeOnPdf = "Place on PDF" +reason = "Reason:" +reviewTitle = "Review Before Signing" +signaturePlaced = "Signature placed on page {{page}}. You can adjust the position by clicking again or continue to review." +visibility = "Visibility:" +visible = "Visible" +yourSignatures = "Your Signatures ({{count}})" + +[certSign.collab.signRequest.text] +colorLabel = "Color" +fontLabel = "Font" +fontSizeLabel = "Size" +fontSizePlaceholder = "16" +label = "Signature Text" +modalHint = "Enter your name, then click Continue to place it on the PDF." +placeholder = "Enter your name..." + +[certSign.collab.signatureSettings] +description = "Configure how signatures will appear for all participants" +title = "Signature Appearance" + +[certSign.collab.userSelector] +inviteUsers = "Add Users" +loadError = "Failed to load users" +noTeam = "No Team" +noUsers = "No other users found." +placeholder = "Select users..." + +[certSign.mobile] +panelActions = "Actions" +panelDocument = "Document" +panelPeople = "People" + +[certSign.sessions] +deleted = "Session deleted" +fetchFailed = "Failed to load session details" +finalized = "Session finalized" +loaded = "Signed PDF loaded" +pdfNotReady = "PDF Not Ready" +pdfNotReadyDesc = "The signed PDF is being generated. Please try again in a moment." + [changeCreds] changePassword = "Vous utilisez les identifiants de connexion par défaut. Veuillez saisir un nouveau mot de passe" changeUsername = "Mettre à jour votre nom d’utilisateur. Vous serez déconnecté après la mise à jour." @@ -2644,7 +2906,7 @@ upgradeButton = "Mettre à niveau le compte" [config.apiKeys] chartAriaLabel = "Utilisation des crédits : inclus {{includedUsed}} sur {{includedTotal}}, achetés {{purchasedUsed}} sur {{purchasedTotal}}" copyKeyAriaLabel = "Copier la clé API" -creditsRemaining = "Credits Remaining" +creditsRemaining = "Crédits restant" description = "Votre clé API pour accéder à la suite d’outils PDF de Stirling. Copiez-la dans votre projet ou actualisez pour en générer une nouvelle." docsDescription = "En savoir plus sur l’intégration avec Stirling PDF :" docsLink = "Documentation API" @@ -2695,12 +2957,12 @@ security = "Configuration de sécurité" system = "Configuration système" [connectionMode.status] -localOffline = "Offline mode running" -localOnline = "Offline mode running" -saas = "Connected to Stirling Cloud" -selfhostedChecking = "Connected to self-hosted server (checking...)" -selfhostedOffline = "Self-hosted server unreachable" -selfhostedOnline = "Connected to self-hosted server" +localOffline = "Mode offline" +localOnline = "Mode offline" +saas = "Connecté au Cloud Stirling" +selfhostedChecking = "Connection en cours à un serveur auto-hébergé" +selfhostedOffline = "Serveur auto-hébergé inaccessible" +selfhostedOnline = "Connecté à un serveur auto-hébergé" [convert] autoRotate = "Rotation automatique" @@ -3242,6 +3504,46 @@ totalSelected = "Total sélectionné" unsupported = "Non pris en charge" unzip = "Décompresser" uploadError = "Échec du téléversement de certains fichiers." +changesNotUploaded = "Changes not uploaded" +cloudFile = "Cloud file" +copyCreated = "Copy saved to this device." +copyFailed = "Could not create a copy." +filterAll = "All" +filterLocal = "Local" +filterSharedByMe = "Shared by me" +filterSharedWithMe = "Shared with me" +lastSynced = "Last synced" +leaveShare = "Remove from my list" +leaveShareFailed = "Could not remove the shared file." +leaveShareSuccess = "Removed from your shared list." +localOnly = "Local only" +makeCopy = "Make a copy" +owner = "Owner" +ownerUnknown = "Unknown" +removeBoth = "Remove from both" +removeFilePrompt = "This file is saved on this device and on your server. Where would you like to remove it from?" +removeFileTitle = "Remove file" +removeLocalOnly = "This device only" +removeServerFailed = "Could not remove the file from the server." +removeServerOnly = "Server only" +removeServerOnlyPrompt = "This file is stored only on your server. Would you like to remove it from the server?" +removeServerSuccess = "Removed from server." +removeSharedPrompt = "This file is shared with you. You can remove it from this device or your shared list." +removeSharedServerOnlyBlockedPrompt = "This file is shared with you and stored only on the server." +removeSharedServerOnlyPrompt = "This file is shared with you and stored only on the server. Remove it from your list?" +share = "Share" +shareSelected = "Share Selected" +sharedByYou = "Shared by you" +sharedEditNoticeBody = "You do not have edit rights to the server version of this file. Any edits you make will be saved as a local copy." +sharedEditNoticeConfirm = "Got it" +sharedEditNoticeTitle = "Read-only server copy" +sharedWithYou = "Shared with you" +sharing = "Sharing" +storageState = "Storage" +synced = "Synced" +updateOnServer = "Update on Server" +uploadSelected = "Upload Selected" +uploadToServer = "Upload to Server" [files] addFiles = "Ajouter des fichiers" @@ -3926,7 +4228,7 @@ version = "Version" accountCreatedSuccess = "Compte créé avec succès ! Vous pouvez maintenant vous connecter." alreadyLoggedIn = "Vous êtes déjà connecté sur" alreadyLoggedIn2 = "appareils. Veuillez vous déconnecter des appareils et réessayer." -backToSignIn = "Back to sign in" +backToSignIn = "Retour à la connexion" cancel = "Annuler" changePasswordWarning = "Veuillez changer votre mot de passe après votre première connexion" credentialsUpdated = "Vos identifiants ont été mis à jour. Veuillez vous reconnecter." @@ -3973,16 +4275,16 @@ pleaseEnterBoth = "Veuillez saisir l’e-mail et le mot de passe" pleaseEnterEmail = "Veuillez saisir votre adresse e-mail" relyingPartyRegistrationNotFound = "Aucun enregistrement de partie de confiance trouvé" rememberme = "Se souvenir de moi" -resetHelp = "Enter your email to receive a secure link to reset your password. If the link has expired, please request a new one." -resetYourPassword = "Reset your password" +resetHelp = "Saisissez votre email pour recevoir un lien de réinitialisation de votre mot de passe. Si le lien a expiré, veuillez en demander un nouveau." +resetYourPassword = "Réinitialisation de mot de passe" saml2RequiresLicense = "La connexion SAML nécessite une licence payante (Server ou Enterprise). Veuillez contacter l’administrateur pour mettre à niveau votre plan." sending = "Envoi…" sendMagicLink = "Envoyer le lien magique" -sendResetLink = "Send reset link" +sendResetLink = "Envoyer le lien de réinitialisation" sessionExpired = "Votre session a expiré. Veuillez vous reconnecter." signin = "Connexion" signInAnonymously = "S’inscrire en tant qu’invité" -subtitle = "Sign back in to Stirling PDF" +subtitle = "Se reconnecter à Stirling PDF" signingIn = "Connexion en cours…" signinTitle = "Veuillez vous connecter" signInWith = "Se connecter avec" @@ -3991,7 +4293,7 @@ ssoSignIn = "Se connecter via l'authentification unique" title = "Connexion" toManySessions = "Vous avez trop de sessions actives." unexpectedError = "Erreur inattendue : {{message}}" -updatePassword = "Update password" +updatePassword = "Mise à jour du mot de passe" useEmailInstead = "Se connecter avec l’e‑mail" useMagicLink = "Utiliser plutôt le lien magique" userIsDisabled = "L'utilisateur est désactivé, la connexion est actuellement bloquée avec ce nom d'utilisateur. Veuillez contacter l'administrateur." @@ -4302,13 +4604,13 @@ workbench = "Voici le Workbench - la zone principale où vous v wrapUp = "Tout est prêt ! Vous avez appris les principales zones de l’application et comment les utiliser. Cliquez sur le bouton Aide quand vous le souhaitez pour revoir cette visite." [onboarding.freeTrial] -afterTrialWithoutPayment = "After your trial ends, you'll continue with our free tier. Add a payment method to keep Pro access." -afterTrialWithPayment = "Your Pro subscription will start automatically when the trial ends." -body = "You have full access to Stirling PDF Pro features during your trial. Enjoy unlimited conversions, larger file sizes, and priority processing." -daysRemaining = "{{days}} days remaining" -daysRemainingSingular = "{{days}} day remaining" -title = "Your 30-Day Pro Trial" -trialEnds = "Trial ends {{date}}" +afterTrialWithoutPayment = "À la fin de la période d'essai, vous basculerez en mode gratuit. Ajoutez une méthode de paiement pour garder l'accès Pro." +afterTrialWithPayment = "Votre abonnement Pro commencera immédiatement à la fin de la période d'essai." +body = "Vous avez accès à toutes les fonctionnalité Pro de Stirling PDF pendant la période d'essai. Profitez de conversion ilimitées, de tailles de fichier plus importantes et de la priorité des tâches." +daysRemaining = "{{days}} jours restants" +daysRemainingSingular = "{{days}} jour restant" +title = "Votre période d'essai Pro de 30 jours" +trialEnds = "La période d'essai fini le {{date}}" [onboarding.buttons] back = "Retour" @@ -4470,6 +4772,10 @@ singlePageView = "Vue page unique" unknownFile = "Fichier inconnu" zoomIn = "Zoom avant" zoomOut = "Zoom arrière" +disableColorFilter = "Disable Colour Filter" +enableDarkFilter = "Enable Dark Filter" +enableSepiaFilter = "Enable Sepia Filter" +resetZoom = "Reset zoom" [viewer.attachments] title = "Pièces jointes" @@ -4481,29 +4787,29 @@ empty = "Aucune pièce jointe dans ce document" noMatch = "Aucune pièce jointe ne correspond à votre recherche" [viewer.comments] -title = "Comments" -hint = "Place comments with the Comment, Insert Text, or Replace Text tools. They will appear here by page." -placeholder = "Type your comment..." +title = "Commentaires" +hint = "Commentez avec Commentaire, Insérer du texte ou remplacer le texte. Vos commentaires apparaîtrons ici par page." +placeholder = "Saisissez votre commentaire..." pageLabel = "Page {{page}}" -oneComment = "1 comment" -nComments = "{{count}} comments" -addCommentPlaceholder = "Add comment..." -addLink = "Add link" -goToLink = "Go to link" -addComment = "Add comment" -viewComment = "View comment" -addReplyPlaceholder = "Add reply..." -saveReply = "Save reply" -send = "Send" -moreActions = "More actions" -typeComment = "Comment" -typeInsertText = "Insert Text" -typeReplaceText = "Replace Text" -locateAnnotation = "Locate in document" -deleteTitle = "Remove annotation from comments?" -deleteDescription = "This annotation has a comment attached. You can remove just the comment from the sidebar while keeping the annotation, or delete everything." -removeCommentOnly = "Remove comment only" -deleteAnnotationAndComment = "Delete annotation & comment" +oneComment = "1 commentaire" +nComments = "{{count}} commentaires" +addCommentPlaceholder = "Ajouter un commentaire..." +addLink = "Ajouter un lien" +goToLink = "Suivre le lien" +addComment = "Ajouter un commentaire" +viewComment = "Voir le commentaire" +addReplyPlaceholder = "Répondre..." +saveReply = "Sauvegarder la réponse" +send = "Envoyer" +moreActions = "Plus d'actions" +typeComment = "Commentaire" +typeInsertText = "Insérer du text" +typeReplaceText = "Remplacer le commentaire" +locateAnnotation = "Chercher dans le document" +deleteTitle = "Supprimer l'annotation des commentaires ?" +deleteDescription = "Cette annotation a un commentaire. Vous pouvez supprimer seulement le commentaire de la bare latérale en gardant l'annotation ou supprimer les deux." +removeCommentOnly = "Supprimer seulement le commentaire" +deleteAnnotationAndComment = "Supprimer l'annotation et le commentaire" [viewer.formBar] title = "Champs de formulaire" @@ -4514,6 +4820,21 @@ dismiss = "Fermer" apply = "Appliquer les modifications" download = "Télécharger le PDF" +[viewer.nonPdf] +columnDefault = "Column {{index}}" +convertToPdf = "Convert to PDF" +csvStats = "{{rows}} rows · {{columns}} columns · {{size}}" +emptyFile = "Empty file" +fileTypeBadge = "{{type}} File" +htmlPreview = "HTML preview" +htmlPreviewWarning = "HTML preview — external resources may not load · {{size}}" +invalidJson = "Invalid JSON — showing raw content" +lineNumbers = "Line numbers" +loading = "Loading..." +renderMarkdown = "Render markdown" +sortedBy = "Sorted by: {{column}}" +textStats = "{{lines}} lines · {{size}}" + [rightRail] closeSelected = "Fermer les fichiers sélectionnés" selectAll = "Tout sélectionner" @@ -4551,7 +4872,8 @@ exitRedaction = "Quitter le mode de caviardage" save = "Enregistrer" downloadAll = "Tout télécharger" saveAll = "Tout enregistrer" -saveAs = "Save As" +saveAs = "Souvegarder sous" +toggleLayers = "Changer les calques" [textAlign] left = "Gauche" @@ -5421,6 +5743,58 @@ settings = "Réglages" showMeAround = "Faites-moi visiter" sign = "Signer" tours = "Visites guidées" +access = "Access" +accessAddPerson = "Add another person" +accessBack = "Back" +accessCopyLink = "Copy link" +accessEmail = "Email Address" +accessEmailPlaceholder = "name@company.com" +accessFileLabel = "File" +accessGeneral = "General Access" +accessInviteTitle = "Invite People" +accessOwner = "Owner" +accessPanel = "Document access" +accessPeople = "People with access" +accessRemove = "Remove" +accessRestricted = "Restricted" +accessRestrictedHint = "Only people with access can open" +accessRole = "Role" +accessRoleCommenter = "Commenter" +accessRoleEditor = "Editor" +accessRoleViewer = "Viewer" +accessSelectedFile = "Selected file" +accessSendInvite = "Send Invite" +accessTitle = "Document Access" +accessYou = "You" +activeSessions = "Active Sessions" +activeTab = "Active" +allSessions = "All Sessions" +back = "Back" +certSign = "Certificate Sign" +completedSessions = "Completed Sessions" +completedTab = "Completed" +createNew = "Create New Request" +createSession = "Create Signing Request" +dueDate = "Due date (optional)" +filterDeclined = "Declined" +filterMine = "Mine" +filterOverdue = "Overdue" +filterSigned = "Signed" +newRequest = "New Request" +noActiveSessions = "No pending sign requests or active sessions" +noCompletedSessions = "No completed sessions" +noFile = "No file selected" +refresh = "Refresh" +requestSignatures = "Request Signatures" +searchDocuments = "Search documents…" +selectSingleFileToRequest = "Select a single PDF file to request signatures" +selectUsers = "Select users to sign" +selectUsersPlaceholder = "Choose participants..." +selectedFile = "Selected file" +sendingRequest = "Sending..." +signYourself = "Sign Yourself" +signatureRequests = "Signature Requests" +wetSign = "Add Signature" [quickAccess.helpMenu] adminTour = "Visite administrateur" @@ -6057,18 +6431,19 @@ endpoints = "Endpoints" features = "Fonctionnalités" systemSettings = "Paramètres système" title = "Configuration" +storageSharing = "Stockage et partage de fichier" [settings.connection] -localDescription = "You are using the local backend without an account. Some tools requiring cloud processing or a self-hosted server are unavailable." +localDescription = "Vous utilisez le backend local sans compte. Certains outils nécessitant le cloud ou un serveur auto-hébergé ne sont pas disponibles." logout = "Se déconnecter" server = "Serveur" -signIn = "Sign In" +signIn = "Se connecter" title = "Mode de connexion" user = "Connecté en tant que" [settings.connection.mode] -local = "Local Only" -saas = "Stirling Cloud" +local = "En local seulement" +saas = "Cloud Stirling" selfhosted = "Auto-hébergé" [settings.planBilling] @@ -7351,6 +7726,12 @@ status = "Statut" team = "Équipe" title = "Personnes" user = "Utilisateur" +confirmUnlock = "Are you sure you want to unlock this user account?" +locked = "locked" +lockedBadge = "Locked" +unlockAccount = "Unlock Account" +unlockUserError = "Failed to unlock user account" +unlockUserSuccess = "User account unlocked successfully" [workspace.people.actions] label = "Actions" @@ -7859,3 +8240,297 @@ description = "Clé API Google pour Google Picker API depuis Google Cloud Consol [provider.googledrive.appId] label = "App ID" description = "App ID Google Drive depuis Google Cloud Console" + +[certificateChoice.tooltip] +header = "Certificate Types" + +[certificateChoice.tooltip.organization] +bullet1 = "Managed by system administrators" +bullet2 = "Shared across authorized users" +bullet3 = "Represents company identity, not individual" +bullet4 = "Best for: Official documents, team signatures" +description = "A shared certificate provided by your organization. Used for company-wide signing authority." +title = "Organization Certificate" + +[certificateChoice.tooltip.personal] +bullet1 = "Generated automatically on first use" +bullet2 = "Tied to your user account" +bullet3 = "Cannot be shared with other users" +bullet4 = "Best for: Personal documents, individual accountability" +description = "An auto-generated certificate unique to your user account. Suitable for individual signatures." +title = "Personal Certificate" + +[certificateChoice.tooltip.upload] +bullet1 = "Requires P12/PFX file and password" +bullet2 = "Can be issued by external Certificate Authorities" +bullet3 = "Higher trust level for legal documents" +bullet4 = "Best for: Legally binding contracts, external validation" +description = "Use your own PKCS#12 certificate file. Provides full control over certificate properties." +title = "Upload Custom P12" + +[groupSigning.steps] +back = "Back" +completed = "Completed" +current = "Current" +stepLabel = "Step {{number}}" + +[groupSigning.steps.configureDefaults] +continue = "Continue to Review" +invisible = "Signatures will be invisible (metadata only)" +locationLabel = "Location:" +preview = "Preview" +reasonLabel = "Reason:" +title = "Configure Signature Settings" +visible = "Signatures will be visible on page {{page}}" + +[groupSigning.steps.review] +document = "Document" +dueDate = "Due Date (Optional)" +dueDatePlaceholder = "Select due date..." +invisible = "Invisible (metadata only)" +location = "Location:" +logo = "Logo:" +logoHidden = "No logo" +logoShown = "Stirling PDF logo shown" +participantCount = "{{count}} participant(s) will sign in order" +participants = "Participants" +reason = "Reason:" +send = "Send Signing Requests" +signatureSettings = "Signature Settings" +title = "Review Session Details" +titleShort = "Review & Send" +visibility = "Visibility:" +visible = "Visible on page {{page}}" + +[groupSigning.steps.selectDocument] +continue = "Continue to Participant Selection" +noFile = "Please select a single PDF file from your active files to create a signing session." +selectedFile = "Selected document" +title = "Select Document" + +[groupSigning.steps.selectParticipants] +continue = "Continue to Signature Settings" +count = "{{count}} participant(s) selected" +label = "Select participants" +placeholder = "Choose participants to sign..." +title = "Choose Participants" + +[groupSigning.tooltip] +header = "About Group Signing" + +[groupSigning.tooltip.finalization] +bullet1 = "All signatures are applied in the participant order you specified" +bullet2 = "You can finalize with partial signatures if needed" +bullet3 = "Once finalized, the session cannot be modified" +description = "Once all participants have signed (or you choose to finalize early), you can generate the final signed PDF." +title = "Finalization Process" + +[groupSigning.tooltip.roles] +bullet1 = "Owner (you): Creates session, configures signature defaults, finalizes document" +bullet2 = "Participants: Create their signature, choose certificate, place on PDF" +bullet3 = "Participants cannot modify signature visibility, reason, or location settings" +description = "You control the signature appearance settings for all participants." +title = "Participant Roles" + +[groupSigning.tooltip.sequential] +bullet1 = "First participant must sign before the second can access the document" +bullet2 = "Ensures proper signing order for legal compliance" +bullet3 = "You can reorder participants by dragging them in the list" +description = "Participants sign documents in the order you specify. Each signer receives a notification when it is their turn." +title = "Sequential Signing" + +[sessionManagement.tooltip] +header = "Managing Signing Sessions" + +[sessionManagement.tooltip.addParticipants] +bullet1 = "New participants added to the end of signing order" +bullet2 = "Cannot add participants after session is finalized" +bullet3 = "Each participant receives a notification when it's their turn" +description = "You can add more participants to an active session at any time before finalization." +title = "Adding Participants" + +[sessionManagement.tooltip.finalization] +bullet1 = "Full finalization: All participants have signed" +bullet2 = "Partial finalization: Some participants haven't signed yet" +bullet3 = "Unsigned participants will be excluded from the final document" +bullet4 = "Once finalized, you can load the signed PDF into active files" +description = "Finalization combines all signatures into a single signed PDF. This action cannot be undone." +title = "Session Finalization" + +[sessionManagement.tooltip.participantRemoval] +bullet1 = "Cannot remove participants who have already signed" +bullet2 = "Removed participants no longer receive notifications" +bullet3 = "Signing order adjusts automatically" +description = "Participants can be removed from sessions before they sign." +title = "Removing Participants" + +[sessionManagement.tooltip.signatureOrder] +bullet1 = "Each signature is applied sequentially to the PDF" +bullet2 = "Later signers can see earlier signatures" +bullet3 = "Critical for approval workflows and legal chains of custody" +description = "The order you specify when creating the session determines who signs first." +title = "Signature Order" + +[signRequest] +declined = "Sign request declined" +fetchFailed = "Failed to load sign request" +signed = "Document signed successfully" + +[signSession] +createFailed = "Failed to create signing request" +created = "Signing request sent" + +[signatureSettings.tooltip] +header = "Signature Appearance Settings" + +[signatureSettings.tooltip.location] +bullet1 = "Examples: \"New York, USA\", \"London Office\", \"Remote\"" +bullet2 = "Not the same as page position" +bullet3 = "May be required for certain legal jurisdictions" +description = "Optional geographic location where the signature was applied. Stored in certificate metadata." +title = "Signature Location" + +[signatureSettings.tooltip.logo] +bullet1 = "Displayed alongside signature and text" +bullet2 = "Supports PNG, JPG formats" +bullet3 = "Enhances professional appearance" +description = "Add a company logo to visible signatures for branding and authenticity." +title = "Company Logo" + +[signatureSettings.tooltip.reason] +bullet1 = "Examples: \"Approval\", \"Contract Agreement\", \"Review Complete\"" +bullet2 = "Visible in PDF signature properties" +bullet3 = "Useful for audit trails and compliance" +description = "Optional text explaining why the document is being signed. Stored in certificate metadata." +title = "Signature Reason" + +[signatureSettings.tooltip.visibility] +bullet1 = "Visible: Signature appears on PDF with custom appearance" +bullet2 = "Invisible: Certificate embedded without visual mark" +bullet3 = "Invisible signatures still provide cryptographic validation" +description = "Controls whether the signature is visible on the document or embedded invisibly." +title = "Signature Visibility" + +[storageShare] +accessDenied = "You do not have access to this shared file. Ask the owner to share it with you." +accessDeniedBody = "You do not have access to this file. Ask the owner to share it with you." +accessDeniedTitle = "No access" +accessFailed = "Unable to load activity." +accessLimitedCommenter = "Comment access is coming soon. Ask the owner for editor access if you need to download." +accessLimitedTitle = "Limited access" +accessLimitedViewer = "This link is view-only. Ask the owner for editor access if you need to download." +accessed = "Accessed" +addUser = "Add" +bulkDescription = "Create one link to share all selected files with signed-in users." +bulkTitle = "Share selected files" +commenterHint = "Commenting is coming soon." +copied = "Link copied to clipboard" +copy = "Copy" +copyFailed = "Copy failed" +copyLink = "Copy share link" +createdAt = "Created" +description = "Create a share link for this file. Signed-in users with the link can access it." +download = "Download" +downloadFailed = "Unable to download this file." +downloaded = "Downloaded" +downloadsCount = "Downloads: {{count}}" +emailWarningBody = "This looks like an email address. If this person is not already a Stirling PDF user, they will not be able to access the file." +emailWarningConfirm = "Share anyway" +emailWarningTitle = "Email address" +errorTitle = "Share failed" +expiredBody = "This share link is invalid or has expired." +expiredTitle = "Link expired" +failure = "Unable to generate a share link. Please try again." +fileCount = "{{count}} files selected" +fileLabel = "File" +generate = "Generate Link" +generated = "Share link generated" +goToLogin = "Go to login" +hideActivity = "Hide activity" +invalidUsername = "Enter a valid username or email address." +lastAccessed = "Last accessed" +linkAccessTitle = "Share link access" +linkLabel = "Share link" +linksDisabled = "Share links are disabled." +linksDisabledBody = "Share links are disabled by your server settings." +loadFailed = "Unable to open shared file." +loading = "Loading share link..." +loginPrompt = "Sign in to access this shared file." +loginRequired = "Login required" +manage = "Manage sharing" +manageDescription = "Create and manage links to share this file." +manageLoadFailed = "Unable to load share links." +manageTitle = "Manage Sharing" +noActivity = "No activity yet." +noLinks = "No active share links yet." +noSharedUsers = "No users have access yet." +openInApp = "Open in Stirling PDF" +ownerLabel = "Owner" +ownerOnly = "Only the owner can manage sharing." +ownerUnknown = "Unknown" +removeLink = "Remove link" +removeUser = "Remove" +requiresLogin = "This shared file requires login." +revokeFailed = "Unable to remove the share link." +revoked = "Share link removed" +roleCommenter = "Commenter" +roleEditor = "Editor" +roleLabel = "Role" +roleViewer = "Viewer" +selectSingleFile = "Select a single file to manage sharing." +shareHeading = "Shared file" +sharedUsersTitle = "Shared users" +sharingDisabled = "Sharing is disabled." +sharingDisabledBody = "Sharing has been disabled by your server settings." +title = "Share File" +titleDefault = "Shared file" +tryAgain = "Please try again later." +unknownUser = "Unknown user" +userAddFailed = "Unable to share with that user." +userAdded = "User added to shared list." +userRemoveFailed = "Unable to remove that user." +userRemoved = "User removed from shared list." +usernameLabel = "Username or email" +usernamePlaceholder = "Enter a username or email" +viewActivity = "View activity" +viewed = "Viewed" +viewsCount = "Views: {{count}}" + +[storageUpload] +bulkDescription = "This uploads the selected files to your server storage." +bulkTitle = "Upload selected files" +description = "This uploads the current file to server storage for your own access." +errorTitle = "Upload failed" +failure = "Upload failed. Please check your login and storage settings." +fileCount = "{{count}} files selected" +fileLabel = "File" +hint = "Public links and access modes are controlled by your server settings." +more = " +{{count}} more" +success = "Uploaded to server" +title = "Upload to Server" +updateButton = "Update on Server" +uploadButton = "Upload to Server" + +[wetSignature.tooltip] +header = "Signature Creation Methods" + +[wetSignature.tooltip.draw] +bullet1 = "Customize pen color and thickness" +bullet2 = "Clear and redraw until satisfied" +bullet3 = "Works on touch devices (tablets, phones)" +description = "Create a handwritten signature using your mouse or touchscreen. Best for personal, authentic signatures." +title = "Draw Signature" + +[wetSignature.tooltip.type] +bullet1 = "Choose from multiple fonts" +bullet2 = "Customize text size and color" +bullet3 = "Perfect for standardized signatures" +description = "Generate a signature from typed text. Fast and consistent, suitable for business documents." +title = "Type Signature" + +[wetSignature.tooltip.upload] +bullet1 = "Supports PNG, JPG, and other image formats" +bullet2 = "Transparent backgrounds recommended for best results" +bullet3 = "Image will be resized to fit signature area" +description = "Upload a pre-created signature image. Ideal if you have a scanned signature or company logo." +title = "Upload Signature Image"