Merge Workstream H: device pairing UI + live dashboard
Resolved conflicts in App.tsx/SeancePage.tsx (both F and H added new routes/nav links, kept both) and i18n files (both added sibling top-level keys — inventory + devices, fixed nesting after conflict markers removed). Also fixed a real integration gap: DevicesPage.test.tsx's mock User object predated Workstream F's unlocks/essence additions to the User type (the two workstreams built in parallel isolation and couldn't see each other's changes). 269/269 frontend tests pass, tsc clean.
This commit is contained in:
@@ -14,6 +14,7 @@
|
||||
"codex": "códice",
|
||||
"shop": "relicario",
|
||||
"inventory": "inventario",
|
||||
"devices": "dispositivos",
|
||||
"seance": "sesión",
|
||||
"enter": "entrar",
|
||||
"logout": "partir"
|
||||
@@ -443,6 +444,39 @@
|
||||
"error": "el sigilo no se sostuvo"
|
||||
}
|
||||
},
|
||||
"devices": {
|
||||
"back": "← el umbral",
|
||||
"title": "BAHÍA DE DISPOSITIVOS",
|
||||
"subtitle": "empareja hardware con tu cuenta y observa su telemetría en vivo",
|
||||
"pair": {
|
||||
"title": "EMPAREJAR UN NUEVO DISPOSITIVO",
|
||||
"nameLabel": "nombre del dispositivo",
|
||||
"namePlaceholder": "p. ej. nodo-ático-01",
|
||||
"submit": "emparejar dispositivo",
|
||||
"pending": "emparejando…",
|
||||
"nameRequired": "nombra el dispositivo antes de emparejarlo",
|
||||
"error": "el emparejamiento falló — inténtalo de nuevo"
|
||||
},
|
||||
"token": {
|
||||
"warning": "cópialo ahora — no volverá a mostrarse. perderlo significa volver a emparejar el dispositivo.",
|
||||
"copy": "copiar",
|
||||
"copied": "copiado",
|
||||
"confirm": "ya lo guardé — ocultar token"
|
||||
},
|
||||
"dashboard": {
|
||||
"title": "TRANSMISIÓN EN VIVO",
|
||||
"empty": "aún no hay dispositivos emparejados — empareja uno arriba para verlo aquí",
|
||||
"lastSeen": "visto por última vez",
|
||||
"lastSeenNever": "nunca",
|
||||
"noReadings": "esperando la primera lectura…",
|
||||
"connection": {
|
||||
"connecting": "alcanzando la transmisión…",
|
||||
"open": "transmisión en vivo",
|
||||
"unstable": "transmisión inestable…",
|
||||
"closed": "transmisión desconectada"
|
||||
}
|
||||
}
|
||||
},
|
||||
"haunting": {
|
||||
"whisper": {
|
||||
"behindYou": "detrás de ti",
|
||||
|
||||
Reference in New Issue
Block a user