Make relay opt-in when pairing devices (#2706)
* feat: make relay opt-in for device pairing * fix(relay): keep pairing state authoritative * fix(relay): refresh pairing state across transports * fix(onboard): honor explicit relay opt-out * fix(relay): surface transport startup failures * fix(pairing): gate offers for older daemons * test(cli): rely on real pairing transport coverage * fix(cli): report live relay without a pid file * fix(relay): synchronize config during daemon startup * fix(relay): preserve mutability for ignored overrides * fix(cli): use reachable daemon for pairing * fix(app): redirect invalid pair device routes * fix(pairing): support remote host device pairing Keep Pair Device host-relative through the existing settings and daemon RPC flow. Route CLI output through an injected adapter so workflow tests do not mutate process globals. * fix(pairing): validate pairing destinations Expose the host-relative Pair Device flow on every supported app platform. Reject a reachable daemon whose identity does not match the requested Paseo home before reading or mutating its pairing state. * fix(pairing): render QR codes across platforms Generate SVG text without DOM or canvas and render it through the existing cross-platform SVG stack. * fix(cli): pair from persisted relay state Allow explicit relay pairing while the daemon is stopped when relay is already enabled in persisted configuration.
This commit is contained in:
@@ -1469,9 +1469,21 @@ export const fr: TranslationResources = {
|
||||
loadingOffer: "Chargement de l'offre d'association...",
|
||||
failedToLoadOffer: "Échec du chargement de l'offre d'association.",
|
||||
relayDisabled: "Le relais n'est pas activé. Activer le relais pour coupler un appareil.",
|
||||
enableTitle: "Activer le relais ?",
|
||||
enableDescription:
|
||||
"Le relais permet à cet appareil de se connecter depuis n’importe où. Le trafic de couplage est chiffré de bout en bout.",
|
||||
relayDocs: "Fonctionnement du relais",
|
||||
relayDocsAccessibility: "Lire comment fonctionne le relais Paseo",
|
||||
enableRelay: "Activer le relais",
|
||||
enablingRelay: "Activation...",
|
||||
notNow: "Pas maintenant",
|
||||
directConnectionHint:
|
||||
"Sans relais, connectez-vous directement via TCP, Tailscale ou un autre VPN. Aucun code QR n’est créé.",
|
||||
updateRequired: "Mettez à jour l’hôte pour activer le relais depuis Paseo Desktop.",
|
||||
unavailable: "Offre de jumelage indisponible.",
|
||||
hint: "Scannez ce codeQRavecPaseosur votre téléphone ou copiez le lien ci-dessous.",
|
||||
qrUnavailable: "CodeQRindisponible.",
|
||||
qrAccessibility: "Code QR de couplage",
|
||||
retry: "Réessayer",
|
||||
copy: "Copie",
|
||||
copied: "Copié",
|
||||
|
||||
Reference in New Issue
Block a user