aboutsummaryrefslogtreecommitdiffstats
path: root/packages/meshbay-hub/src/meshbay_hub/static/locales/fr.js
diff options
context:
space:
mode:
authorChristophe Besson <cbesson@gmail.com>2026-10-15 09:33:28 +0200
committerChristophe Besson <cbesson@gmail.com>2026-10-15 09:33:28 +0200
commit1e8eae1f3de765fcd8163716de6e5fe5aab5a034 (patch)
treedfdb004229c8b0f57ea1a64a726ed2752c3d18e5 /packages/meshbay-hub/src/meshbay_hub/static/locales/fr.js
parentadda9613fad48a68239e2dbd93321818a835c286 (diff)
downloadmeshbay-1e8eae1f3de765fcd8163716de6e5fe5aab5a034.tar.gz
feat(hub): one account, several linked nodes
An account links up to MAX_NODES_PER_ACCOUNT node keys (node_keys table) instead of the one users.pk_node_ed25519; the migration carries each account's key over and the downgrade keeps the last one linked. /v1/nodes/auth accepts any linked key, and its token names the key that won it (nk). PUT /me/node_key adds a key, idempotently, 409 past the limit; DELETE /me/node_key names the key: a browser session any of its own, a node only its own. Unlinking a key closes that node's socket and refuses its tokens at once, on REST and on the socket; the account's other nodes are untouched. /pubkeys no longer gives a node key to other accounts, and gives the caller its last linked one, which installed desktop apps read. The node reports waiting_for_node_key while its key is unlinked and signs in again as soon as the hub says so, so a key linked again is back within seconds; unlinking itself signs in first to hold a token naming its key. Profile -> Linked nodes lists each node (connected, last seen, IP, linked since, This machine in the desktop app) with Copy and Unlink, and adds a key by hand. The Node page banner, Create group and the desktop app add this machine's key instead of replacing another's. Messages that pointed at Settings -> Link Node point at Profile -> Linked nodes. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Diffstat (limited to 'packages/meshbay-hub/src/meshbay_hub/static/locales/fr.js')
-rw-r--r--packages/meshbay-hub/src/meshbay_hub/static/locales/fr.js27
1 files changed, 15 insertions, 12 deletions
diff --git a/packages/meshbay-hub/src/meshbay_hub/static/locales/fr.js b/packages/meshbay-hub/src/meshbay_hub/static/locales/fr.js
index c5fafc0..4b4e036 100644
--- a/packages/meshbay-hub/src/meshbay_hub/static/locales/fr.js
+++ b/packages/meshbay-hub/src/meshbay_hub/static/locales/fr.js
@@ -537,18 +537,22 @@ export default {
'settings.role': 'Rôle',
'settings.groups': 'Notifications de groupe',
'settings.notifications': 'Notifications',
- 'settings.node_key': 'Associer un node',
- 'settings.node_key_desc': 'Si vous exploitez un node MeshBay, collez ici sa clé '
- + 'publique Ed25519 pour l’associer à votre compte. Lancez `meshbay-node status` '
- + 'sur la machine qui héberge le node pour lire cette clé, ou copiez-la depuis '
- + 'Node → Overview dans le client de bureau.',
+ 'settings.node_key': "Nodes associés",
+ 'settings.node_key_desc': "Les nodes que vous faites tourner, un par machine. Chacun se connecte au hub avec sa propre clé, et l’application de bureau associe pour vous celui de sa machine. Pour en associer un à la main, lisez sa clé avec `meshbay-node status` sur cette machine, ou copiez-la depuis Node → Overview dans l’application de bureau, puis collez-la ici.",
'settings.node_key_placeholder': 'Collez la clé publique Ed25519 du node (base64)',
- 'settings.node_key_submit': 'Associer le node',
- 'settings.node_key_success': 'Node associé avec succès',
+ 'settings.node_key_submit': "Associer le node",
+ 'settings.node_key_success': "Node associé",
'settings.node_key_unlink': "Délier",
- 'settings.node_key_unlink_confirm': "Délier le node de votre compte ? Il cessera de servir vos groupes jusqu'à ce qu'un node soit lié de nouveau.",
+ 'settings.node_key_unlink_confirm': "Délier le node {key} ? Il cessera de servir vos groupes jusqu’à ce que sa clé soit associée de nouveau. Vos autres nodes ne sont pas touchés.",
'settings.node_key_unlinked': "Node délié",
- 'settings.node_key_current': 'Clé du node associé',
+ 'settings.node_keys_none': "Aucun node n’est encore associé à votre compte.",
+ 'settings.node_keys_this_machine': "Cette machine",
+ 'settings.node_keys_connected': "Connecté",
+ 'settings.node_keys_last_seen': "Vu pour la dernière fois le {when}",
+ 'settings.node_keys_never': "Ne s’est pas encore connecté",
+ 'settings.node_keys_linked_on': "associé le {when}",
+ 'settings.node_keys_count': "Associés : {n} sur {limit}",
+ 'settings.node_keys_at_limit': "{limit} nodes associés, le maximum pour un compte. Déliez-en un que vous n’utilisez plus pour en associer un autre.",
// Sidebar
'sidebar.create_group': 'Créer un groupe',
@@ -957,9 +961,8 @@ export default {
'node.pair_button': 'Appairer ce navigateur',
'node.pair_success': 'Appairage réussi.',
'node.pair_pending': "Code d'appairage prêt : il sera utilisé à la prochaine ouverture d'un des groupes de ce node.",
- 'node.link_other_node': "Votre compte est lié au node d'une autre machine : ce node-ci ne peut pas servir vos groupes.",
- 'node.link_here': "Lier ce node à la place",
- 'node.link_here_confirm': "Lier ce node à votre compte ? Le node lié actuellement, sur une autre machine, cessera de servir vos groupes jusqu'à ce qu'il soit lié de nouveau.",
+ 'node.link_here': "Associer ce node",
+ 'node.link_not_linked': "La clé de ce node n’est pas associée à votre compte : il ne peut pas servir vos groupes. L’associer ne change rien à vos autres nodes.",
'node.link_other_account': "Ce node est configuré pour {account}, pas pour vous : il ne peut pas servir vos groupes.",
'node.link_take_over': "Utiliser ce node pour mon compte",
'node.link_linking': "Liaison…",