spck 0.3.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (155) hide show
  1. package/.oxlintrc.json +49 -0
  2. package/LICENSE +21 -0
  3. package/README.md +631 -0
  4. package/bin/cli.js +20 -0
  5. package/bin/validate-cwd.js +41 -0
  6. package/dist/config/__tests__/config.test.d.ts +2 -0
  7. package/dist/config/__tests__/config.test.js +262 -0
  8. package/dist/config/__tests__/credentials.test.d.ts +2 -0
  9. package/dist/config/__tests__/credentials.test.js +360 -0
  10. package/dist/config/config.d.ts +33 -0
  11. package/dist/config/config.js +185 -0
  12. package/dist/config/credentials.d.ts +75 -0
  13. package/dist/config/credentials.js +259 -0
  14. package/dist/config/server-selection.d.ts +40 -0
  15. package/dist/config/server-selection.js +130 -0
  16. package/dist/connection/__tests__/firebase-auth.test.d.ts +2 -0
  17. package/dist/connection/__tests__/firebase-auth.test.js +96 -0
  18. package/dist/connection/__tests__/hmac.test.d.ts +2 -0
  19. package/dist/connection/__tests__/hmac.test.js +372 -0
  20. package/dist/connection/auth.d.ts +13 -0
  21. package/dist/connection/auth.js +91 -0
  22. package/dist/connection/firebase-auth.d.ts +40 -0
  23. package/dist/connection/firebase-auth.js +429 -0
  24. package/dist/connection/hmac.d.ts +24 -0
  25. package/dist/connection/hmac.js +109 -0
  26. package/dist/i18n/index.d.ts +25 -0
  27. package/dist/i18n/index.js +101 -0
  28. package/dist/i18n/locales/en.json +313 -0
  29. package/dist/i18n/locales/es.json +302 -0
  30. package/dist/i18n/locales/fr.json +302 -0
  31. package/dist/i18n/locales/id.json +302 -0
  32. package/dist/i18n/locales/ja.json +302 -0
  33. package/dist/i18n/locales/ko.json +302 -0
  34. package/dist/i18n/locales/locales/en.json +309 -0
  35. package/dist/i18n/locales/locales/es.json +302 -0
  36. package/dist/i18n/locales/locales/fr.json +302 -0
  37. package/dist/i18n/locales/locales/id.json +302 -0
  38. package/dist/i18n/locales/locales/ja.json +302 -0
  39. package/dist/i18n/locales/locales/ko.json +302 -0
  40. package/dist/i18n/locales/locales/pt.json +302 -0
  41. package/dist/i18n/locales/locales/zh-Hans.json +302 -0
  42. package/dist/i18n/locales/pt.json +302 -0
  43. package/dist/i18n/locales/zh-Hans.json +302 -0
  44. package/dist/index.d.ts +25 -0
  45. package/dist/index.js +493 -0
  46. package/dist/proxy/ProxyClient.d.ts +125 -0
  47. package/dist/proxy/ProxyClient.js +781 -0
  48. package/dist/proxy/ProxySocketWrapper.d.ts +43 -0
  49. package/dist/proxy/ProxySocketWrapper.js +98 -0
  50. package/dist/proxy/__tests__/ProxyClient.test.d.ts +2 -0
  51. package/dist/proxy/__tests__/ProxyClient.test.js +445 -0
  52. package/dist/proxy/__tests__/ProxySocketWrapper.test.d.ts +2 -0
  53. package/dist/proxy/__tests__/ProxySocketWrapper.test.js +190 -0
  54. package/dist/proxy/__tests__/handshake-validation.test.d.ts +2 -0
  55. package/dist/proxy/__tests__/handshake-validation.test.js +282 -0
  56. package/dist/proxy/__tests__/token-refresh-race.test.d.ts +14 -0
  57. package/dist/proxy/__tests__/token-refresh-race.test.js +173 -0
  58. package/dist/proxy/chunking.d.ts +53 -0
  59. package/dist/proxy/chunking.js +127 -0
  60. package/dist/proxy/handshake-validation.d.ts +21 -0
  61. package/dist/proxy/handshake-validation.js +49 -0
  62. package/dist/rpc/__tests__/router.test.d.ts +2 -0
  63. package/dist/rpc/__tests__/router.test.js +262 -0
  64. package/dist/rpc/router.d.ts +37 -0
  65. package/dist/rpc/router.js +132 -0
  66. package/dist/services/BrowserProxyService.d.ts +13 -0
  67. package/dist/services/BrowserProxyService.js +139 -0
  68. package/dist/services/FilesystemService.d.ts +99 -0
  69. package/dist/services/FilesystemService.js +742 -0
  70. package/dist/services/GitService.d.ts +243 -0
  71. package/dist/services/GitService.js +1439 -0
  72. package/dist/services/SearchService.d.ts +93 -0
  73. package/dist/services/SearchService.js +670 -0
  74. package/dist/services/TerminalService.d.ts +62 -0
  75. package/dist/services/TerminalService.js +337 -0
  76. package/dist/services/__tests__/BrowserProxyService.test.d.ts +2 -0
  77. package/dist/services/__tests__/BrowserProxyService.test.js +145 -0
  78. package/dist/services/__tests__/FilesystemService.test.d.ts +2 -0
  79. package/dist/services/__tests__/FilesystemService.test.js +609 -0
  80. package/dist/services/__tests__/GitService.test.d.ts +2 -0
  81. package/dist/services/__tests__/GitService.test.js +953 -0
  82. package/dist/services/__tests__/SearchService.test.d.ts +2 -0
  83. package/dist/services/__tests__/SearchService.test.js +384 -0
  84. package/dist/services/__tests__/TerminalService.test.d.ts +2 -0
  85. package/dist/services/__tests__/TerminalService.test.js +513 -0
  86. package/dist/setup/wizard.d.ts +10 -0
  87. package/dist/setup/wizard.js +172 -0
  88. package/dist/types.d.ts +196 -0
  89. package/dist/types.js +44 -0
  90. package/dist/utils/__tests__/gitignore.test.d.ts +2 -0
  91. package/dist/utils/__tests__/gitignore.test.js +127 -0
  92. package/dist/utils/gitignore.d.ts +24 -0
  93. package/dist/utils/gitignore.js +77 -0
  94. package/dist/utils/logger.d.ts +96 -0
  95. package/dist/utils/logger.js +456 -0
  96. package/dist/utils/project-dir.d.ts +51 -0
  97. package/dist/utils/project-dir.js +191 -0
  98. package/dist/utils/ripgrep.d.ts +34 -0
  99. package/dist/utils/ripgrep.js +148 -0
  100. package/dist/utils/tool-detection.d.ts +17 -0
  101. package/dist/utils/tool-detection.js +126 -0
  102. package/dist/watcher/FileWatcher.d.ts +10 -0
  103. package/dist/watcher/FileWatcher.js +42 -0
  104. package/package.json +70 -0
  105. package/src/config/__tests__/config.test.ts +318 -0
  106. package/src/config/__tests__/credentials.test.ts +494 -0
  107. package/src/config/config.ts +206 -0
  108. package/src/config/credentials.ts +302 -0
  109. package/src/config/server-selection.ts +150 -0
  110. package/src/connection/__tests__/firebase-auth.test.ts +121 -0
  111. package/src/connection/__tests__/hmac.test.ts +509 -0
  112. package/src/connection/auth.ts +140 -0
  113. package/src/connection/firebase-auth.ts +504 -0
  114. package/src/connection/hmac.ts +139 -0
  115. package/src/i18n/index.ts +119 -0
  116. package/src/i18n/locales/en.json +313 -0
  117. package/src/i18n/locales/es.json +302 -0
  118. package/src/i18n/locales/fr.json +302 -0
  119. package/src/i18n/locales/id.json +302 -0
  120. package/src/i18n/locales/ja.json +302 -0
  121. package/src/i18n/locales/ko.json +302 -0
  122. package/src/i18n/locales/pt.json +302 -0
  123. package/src/i18n/locales/zh-Hans.json +302 -0
  124. package/src/index.ts +542 -0
  125. package/src/proxy/ProxyClient.ts +968 -0
  126. package/src/proxy/ProxySocketWrapper.ts +113 -0
  127. package/src/proxy/__tests__/ProxyClient.test.ts +575 -0
  128. package/src/proxy/__tests__/ProxySocketWrapper.test.ts +251 -0
  129. package/src/proxy/__tests__/handshake-validation.test.ts +367 -0
  130. package/src/proxy/chunking.ts +162 -0
  131. package/src/proxy/handshake-validation.ts +64 -0
  132. package/src/rpc/__tests__/router.test.ts +400 -0
  133. package/src/rpc/router.ts +183 -0
  134. package/src/services/BrowserProxyService.ts +179 -0
  135. package/src/services/FilesystemService.ts +841 -0
  136. package/src/services/GitService.ts +1639 -0
  137. package/src/services/SearchService.ts +809 -0
  138. package/src/services/TerminalService.ts +413 -0
  139. package/src/services/__tests__/BrowserProxyService.test.ts +155 -0
  140. package/src/services/__tests__/FilesystemService.test.ts +1002 -0
  141. package/src/services/__tests__/GitService.test.ts +1552 -0
  142. package/src/services/__tests__/SearchService.test.ts +484 -0
  143. package/src/services/__tests__/TerminalService.test.ts +702 -0
  144. package/src/setup/wizard.ts +242 -0
  145. package/src/types/fossil-delta.d.ts +4 -0
  146. package/src/types.ts +287 -0
  147. package/src/utils/__tests__/gitignore.test.ts +174 -0
  148. package/src/utils/gitignore.ts +91 -0
  149. package/src/utils/logger.ts +578 -0
  150. package/src/utils/project-dir.ts +218 -0
  151. package/src/utils/ripgrep.ts +180 -0
  152. package/src/utils/tool-detection.ts +141 -0
  153. package/src/watcher/FileWatcher.ts +53 -0
  154. package/tsconfig.json +24 -0
  155. package/vitest.config.ts +19 -0
@@ -0,0 +1,302 @@
1
+ {
2
+ "app": {
3
+ "title": "Spck CLI",
4
+ "goodbye": "¡Adiós!"
5
+ },
6
+ "config": {
7
+ "loaded": "Configuración cargada",
8
+ "notFound": "No se encontró configuración. Ejecutando asistente de configuración...",
9
+ "corrupted": "El archivo de configuración está corrupto",
10
+ "corruptedRunSetup": "Ejecutando asistente de configuración para recrear...",
11
+ "fileNotFound": "Archivo de configuración no encontrado: {{path}}",
12
+ "fileNotFoundHint": "Ejecutando asistente de configuración para crear la configuración inicial...",
13
+ "fileCorrupted": "El archivo de configuración está corrupto: {{path}}",
14
+ "fileCorruptedHint": "Se ejecutará el asistente de configuración para recrear...",
15
+ "saved": "¡Configuración guardada exitosamente!"
16
+ },
17
+ "auth": {
18
+ "title": "Autenticación Firebase",
19
+ "startingCallback": "Iniciando servidor de callback local en el puerto {{port}}...",
20
+ "openingBrowser": "Abriendo navegador para autenticación...",
21
+ "couldNotOpenBrowser": "No se pudo abrir el navegador automáticamente: {{message}}",
22
+ "manualAuthHint": "Si el navegador no se abre, autentíquese manualmente:",
23
+ "visitUrl": "O visite: {{url}}",
24
+ "waiting": "Esperando autenticación (tiempo límite: 10 minutos)...",
25
+ "success": "¡Autenticación exitosa!",
26
+ "userId": "ID de usuario: {{userId}}",
27
+ "credentialsLoaded": "Credenciales de Firebase cargadas",
28
+ "generatingToken": "Generando token de ID de Firebase nuevo...",
29
+ "noRefreshToken": "No hay token de actualización disponible. Se requiere reautenticación.",
30
+ "refreshTokenExpired": "El token de actualización expiró o es inválido. Se requiere reautenticación.",
31
+ "tokenRefreshError": "Error al actualizar token: {{message}}",
32
+ "tokenRefreshFailed": "Falló la actualización del token. Se requiere reautenticación."
33
+ },
34
+ "tools": {
35
+ "title": "Detección de herramientas",
36
+ "gitForceDisabled": "Git desactivado forzosamente (modo de desarrollo)",
37
+ "gitDetected": "Git detectado: {{version}}",
38
+ "gitDetectedShort": "Git detectado",
39
+ "gitNotDetected": "Git no detectado",
40
+ "gitDisabledHint": "Las funciones de Git estarán desactivadas en esta sesión.",
41
+ "gitInstallHint": "Instale Git para habilitar las funciones de control de versiones:",
42
+ "ripgrepForceDisabled": "ripgrep desactivado forzosamente (modo de desarrollo)",
43
+ "ripgrepDetected": "ripgrep detectado: {{version}}",
44
+ "ripgrepDetectedShort": "ripgrep detectado",
45
+ "ripgrepNotDetected": "ripgrep no detectado",
46
+ "ripgrepDisabledHint": "Las funciones de búsqueda rápida estarán desactivadas en esta sesión.",
47
+ "ripgrepInstallHint": "Instale ripgrep para búsqueda de código de alto rendimiento:",
48
+ "gitInstallUrl": "https://git-scm.com/downloads",
49
+ "ripgrepInstallUrl": "https://github.com/BurntSushi/ripgrep#installation"
50
+ },
51
+ "features": {
52
+ "title": "Funciones disponibles",
53
+ "filesystem": "Operaciones del sistema de archivos",
54
+ "gitEnabled": "Control de versiones Git",
55
+ "gitDisabled": "Control de versiones Git (git no instalado)",
56
+ "searchFast": "Búsqueda rápida (ripgrep)",
57
+ "searchBasic": "Búsqueda básica (ripgrep no instalado)",
58
+ "terminalEnabled": "Servicio de terminal",
59
+ "terminalDisabled": "Servicio de terminal (desactivado en la configuración)",
60
+ "securityTitle": "Modo de seguridad",
61
+ "userAuthEnabled": "Autenticación de usuario: ACTIVADA",
62
+ "userAuthEnabledHint1": "Requiere autenticación Firebase para todas las conexiones",
63
+ "userAuthEnabledHint2": "Añade una capa de verificación de identidad del usuario",
64
+ "userAuthEnabledHint3": "Compatible con Spck Editor (no Lite)",
65
+ "userAuthDisabled": "Autenticación de usuario: DESACTIVADA",
66
+ "userAuthDisabledHint1": "Conexiones protegidas solo por clave de firma secreta",
67
+ "userAuthDisabledHint2": "Menor latencia, no requiere autenticación Firebase",
68
+ "userAuthDisabledHint3": "Compatible con Spck Editor Lite",
69
+ "browserProxyEnabled": "Servicio de proxy del navegador",
70
+ "browserProxyDisabled": "Servicio de proxy del navegador (desactivado en la configuración)"
71
+ },
72
+ "server": {
73
+ "selectingBest": "Seleccionando el mejor servidor de retransmisión...",
74
+ "checkingLatency": "Verificando latencia del servidor...",
75
+ "selected": "Servidor seleccionado: {{label}} ({{url}}) - {{ping}}ms",
76
+ "allUnreachable": "Todos los servidores inaccesibles, usando predeterminado: {{url}}",
77
+ "usingOverride": "Usando servidor personalizado: {{url}}",
78
+ "usingSaved": "Usando servidor guardado: {{url}}",
79
+ "failedSelect": "Error al seleccionar servidor de retransmisión: {{message}}",
80
+ "usingDefault": "Usando predeterminado: {{url}}",
81
+ "unreachable": "inaccesible"
82
+ },
83
+ "connection": {
84
+ "title": "Conectando al servidor de retransmisión",
85
+ "relayServer": "Servidor de retransmisión: {{server}}",
86
+ "scanQR": "Escanee este código QR con la app móvil Spck Editor:",
87
+ "clientId": "ID de cliente: {{id}}",
88
+ "secret": "Secreto: {{secret}}",
89
+ "name": "Nombre: {{name}}",
90
+ "relayServerLabel": "Servidor de retransmisión: {{server}}",
91
+ "relayServerMismatch": "IMPORTANTE: El cliente debe seleccionar el mismo servidor de retransmisión",
92
+ "relayServerMismatchHint": "({{server}}) en Spck Editor para conectarse.",
93
+ "existingFound": "Conexión existente encontrada",
94
+ "connectedAt": "Conectado en: {{date}}",
95
+ "noExisting": "No se encontró conexión existente. Conectando al proxy...",
96
+ "tokenExpired": "Token del servidor expirado. Reconectando...",
97
+ "settingsCorrupted": "Configuración de conexión corrupta, se reconectará al proxy...",
98
+ "reusingSecret": "Reutilizando secreto existente para clientId",
99
+ "generatedSecret": "Nuevo secreto generado para clientId",
100
+ "newDevice": "Nuevo dispositivo conectando: {{deviceId}}",
101
+ "newDeviceWarning": "Es la primera vez que este dispositivo se conecta.",
102
+ "newDeviceCompromised": "Si usted no inició esta conexión, sus credenciales pueden estar comprometidas.",
103
+ "userVerifying": "Solicitando verificación de usuario...",
104
+ "userVerified": "Usuario verificado para {{deviceId}}: {{userId}}",
105
+ "userVerifyFailed": "Falló la verificación de usuario para {{deviceId}}: {{message}}",
106
+ "userVerifyOptional": "Continuando de todos modos (la verificación es opcional)",
107
+ "protocolNegotiated": "Protocolo v{{version}} negociado con {{deviceId}}",
108
+ "protocolUnsupported": "Versión de protocolo {{version}} no soportada de {{deviceId}}. Este CLI solo soporta protocolo v1. Se requiere una actualización: actualice su cliente/biblioteca (y este CLI, si aplica) a la última versión para que las versiones de protocolo coincidan. Si instaló el CLI globalmente, ejecute: npm i -g spck@latest",
109
+ "chunkingMessage": "Fragmentando mensaje {{event}} grande: {{chunks}} fragmentos (~{{size}}MB) para {{deviceId}}",
110
+ "disconnectedFromProxy": "Desconectado del proxy: {{reason}}",
111
+ "serverTerminated": "El servidor terminó la conexión. Saliendo...",
112
+ "attemptingReconnect": "Intentando reconectar...",
113
+ "reconnectAttempt": "Intento de reconexión {{attempt}}/5...",
114
+ "reconnected": "Reconectado después de {{attempts}} intentos",
115
+ "reconnectFailed": "Falló la reconexión después de 5 intentos.",
116
+ "exiting": "Saliendo...",
117
+ "shuttingDown": "Apagando de forma segura...",
118
+ "killTimeout": "Tiempo de espera de confirmación de cierre agotado, forzando desconexión",
119
+ "gracefulDisconnect": "Desconectado correctamente del proxy",
120
+ "connectError": "Error de conexión: {{message}}",
121
+ "connectErrorNamespace": "Espacio de nombres: /listen",
122
+ "connectErrorType": "Tipo de error: {{type}}",
123
+ "connectFailed": "Error al conectar al servidor de retransmisión",
124
+ "connectFailedUrl": "URL: {{url}}/listen",
125
+ "connectFailedError": "Error: {{message}}",
126
+ "connectFailedCauses": "Posibles causas:",
127
+ "connectFailedCause1": "- El servidor no es accesible (verifique su conexión a internet)",
128
+ "connectFailedCause2": "- Red/firewall bloqueando la conexión",
129
+ "freeTierNotice": "Cuenta gratuita: {{used}} / {{limit}} min usados hoy ({{remaining}} min restantes)",
130
+ "freeTierUpgrade": "Mejora tu plan para acceso ilimitado al CLI."
131
+ },
132
+ "multipleConnection": {
133
+ "detected": "¡INTENTO DE CONEXIÓN MÚLTIPLE DETECTADO!",
134
+ "existingCount": "Conexiones existentes: {{count}}",
135
+ "newConnectionId": "Nuevo ID de conexión: {{id}}",
136
+ "rejectedHint": "Por razones de seguridad, las nuevas conexiones se rechazan por defecto.",
137
+ "restartHint": "Si desea permitir conexiones múltiples, reinicie el CLI.",
138
+ "compromiseWarning": "Si usted no inició esta conexión, su ID de cliente",
139
+ "compromiseHint": "puede estar comprometido. Considere regenerarlo."
140
+ },
141
+ "proxyError": {
142
+ "error": "Error de proxy: {{message}}",
143
+ "tokenExpiredTimeout": "Su token de acceso ha expirado o se agotó el tiempo.",
144
+ "tokenExpiredHint": "Inténtelo de nuevo o reautentíquese con: spck auth login",
145
+ "tokenRevoked": "Su token de inicio de sesión ha sido revocado.",
146
+ "tokenRevokedHint": "Reautentíquese: spck auth logout && spck auth login",
147
+ "privacyConsent": "Se requiere aceptar la política de privacidad.",
148
+ "privacyConsentHint1": "Acepte la política de privacidad en la app Spck Editor",
149
+ "privacyConsentHint2": "en Configuración de cuenta para usar esta función.",
150
+ "accountDeleting": "Su cuenta está siendo eliminada.",
151
+ "accountDeletingHint": "Espere 72 horas antes de intentarlo de nuevo.",
152
+ "accountBanned": "Esta cuenta ha sido suspendida.",
153
+ "accountBannedHint1": "Su cuenta ha sido suspendida por violación de los",
154
+ "accountBannedHint2": "Términos de servicio.",
155
+ "subscriptionCheckFailed": "No se pudo verificar el estado de la suscripción.",
156
+ "subscriptionCheckFailedHint": "Esto puede ser un problema temporal. Inténtelo de nuevo más tarde.",
157
+ "subscriptionRequired": "Esta función requiere una suscripción de pago.",
158
+ "subscriptionRequiredHint": "Abra la aplicación Spck Editor para actualizar a Supporter o Gold.",
159
+ "maxConnections": "Se alcanzó el máximo de {{max}} conexiones CLI.",
160
+ "maxConnectionsHint": "Cierre otras instancias del CLI e inténtelo de nuevo.",
161
+ "duplicateClientId": "Un CLI con este ID de cliente ya está conectado.",
162
+ "duplicateHint1": "Esto puede ocurrir si:",
163
+ "duplicateHint2": "- Otra instancia del CLI aún está ejecutándose con la misma conexión",
164
+ "duplicateHint3": "- Una conexión anterior no se desconectó correctamente",
165
+ "duplicateHint4": "Por favor:",
166
+ "duplicateHint5": "1. Cierre cualquier otra instancia del CLI en ejecución",
167
+ "duplicateHint6": "2. Espere unos segundos a que expire la conexión anterior",
168
+ "duplicateHint7": "3. Intente conectar de nuevo",
169
+ "firebaseExpiredRefreshFailed": "El token de Firebase expiró y la actualización falló.",
170
+ "firebaseExpiredRefreshFailedHint": "Reautentíquese: spck auth login",
171
+ "firebaseExpired": "El token de Firebase expiró.",
172
+ "firebaseExpiredHint": "Reautentíquese: spck auth login",
173
+ "firebaseInvalid": "El token de Firebase es inválido (no expirado).",
174
+ "firebaseInvalidHint1": "El token puede estar corrupto o ser de otra cuenta.",
175
+ "firebaseInvalidHint2": "Reautentíquese: spck auth login",
176
+ "firebaseTokenExpiring": "El token de Firebase expiró. Intentando actualizar...",
177
+ "tokenRefreshFailed": "Falló la actualización del token: {{message}}",
178
+ "dailyLimitExceeded": "Se ha alcanzado el límite diario gratuito de 30 minutos.",
179
+ "dailyLimitReset": "El límite se restablece en {{time}}.",
180
+ "dailyLimitExceededHint": "Abra la aplicación Spck Editor para actualizar a Supporter o Gold y obtener acceso CLI ilimitado.",
181
+ "defaultError": "Ocurrió un problema al verificar su suscripción."
182
+ },
183
+ "errors": {
184
+ "permissionError": "Error de permisos: No se puede escribir en el directorio requerido",
185
+ "permissionPath": "Ruta: {{path}}",
186
+ "permissionOperation": "Operación: {{operation}}",
187
+ "permissionFix": "Corrija los permisos:",
188
+ "permissionFixCmd1": "chmod 700 ~/.spck-editor",
189
+ "permissionFixCmd2": "chmod 600 ~/.spck-editor/.credentials.json",
190
+ "permissionFixHint": "O asegúrese de que su usuario tenga acceso de escritura al directorio de inicio.",
191
+ "diskFull": "Disco lleno: No queda espacio en el dispositivo",
192
+ "diskFullHint": "Libere espacio en disco e inténtelo de nuevo.",
193
+ "cannotConnect": "No se puede conectar al servidor proxy",
194
+ "cannotConnectError": "Error: {{message}}",
195
+ "cannotConnectCauses": "Posibles causas:",
196
+ "cannotConnectCause1": "- El servidor proxy está caído",
197
+ "cannotConnectCause2": "- Problema de conexión de red",
198
+ "cannotConnectCause3": "- URL de proxy incorrecta en la configuración",
199
+ "cannotConnectHint": "Verifique la URL del proxy e inténtelo de nuevo.",
200
+ "failedToStart": "Error al iniciar el cliente proxy: {{message}}",
201
+ "rootNotFound": "Directorio raíz no encontrado: {{path}}",
202
+ "rootNotFoundHint": "Asegúrese de que el directorio exista y sea accesible, o ejecute el asistente de configuración:",
203
+ "rootNotFoundCmd": "spck --setup",
204
+ "uncaughtException": "Excepción no capturada: {{message}}",
205
+ "unhandledRejection": "Rechazo no manejado: {{message}}",
206
+ "shutdownError": "Error durante el apagado: {{message}}",
207
+ "cliError": "Error: {{message}}",
208
+ "cliErrorHint": "Ejecute con --help para ver los comandos y opciones disponibles."
209
+ },
210
+ "logout": {
211
+ "title": "Cerrar sesión",
212
+ "clearedCredentials": "Credenciales de usuario eliminadas",
213
+ "removed": "Eliminado: {{path}}",
214
+ "clearedSettings": "Configuración de conexión eliminada",
215
+ "noCredentials": "No se encontraron credenciales ni configuración de conexión",
216
+ "notLoggedIn": "No tiene una sesión iniciada actualmente.",
217
+ "success": "¡Sesión cerrada exitosamente!",
218
+ "runAgain": "Ejecute el CLI de nuevo para reautenticarse."
219
+ },
220
+ "account": {
221
+ "title": "Información de la cuenta",
222
+ "credentialsCorrupted": "El archivo de credenciales está corrupto.",
223
+ "credentialsCorruptedHint1": "Cierre sesión y reautentíquese:",
224
+ "credentialsCorruptedHint2": "spck --logout",
225
+ "notLoggedIn": "No tiene una sesión iniciada actualmente.",
226
+ "notLoggedInHint1": "Ejecute el CLI para autenticarse:",
227
+ "notLoggedInHint2": "spck",
228
+ "fetching": "Obteniendo información de la cuenta...",
229
+ "decodeFailed": "Error al decodificar el token de autenticación",
230
+ "loggedIn": "Sesión iniciada",
231
+ "userId": "ID de usuario: {{userId}}",
232
+ "email": "Correo: {{email}}",
233
+ "verified": "Verificado: {{status}}",
234
+ "yes": "Sí",
235
+ "no": "No",
236
+ "tokenExpires": "El token expira: {{date}}",
237
+ "timeRemaining": "Tiempo restante: {{hours}}h {{minutes}}m",
238
+ "subscription": "Suscripción",
239
+ "status": "Estado: {{status}}",
240
+ "plan": "Plan: {{plan}}",
241
+ "premium": "Premium: {{status}}",
242
+ "fetchFailed": "Error al obtener la información de la cuenta",
243
+ "fetchFailedError": "Error: {{message}}",
244
+ "permissionDenied": "Permiso denegado al acceder al archivo de credenciales",
245
+ "permissionHint1": "Verifique los permisos del archivo:",
246
+ "permissionHint2": "chmod 600 ~/.spck-editor/.credentials.json",
247
+ "networkError": "Error de conexión de red",
248
+ "networkHint": "Verifique su conexión a internet"
249
+ },
250
+ "credentials": {
251
+ "corrupted": "El archivo de credenciales está corrupto: {{path}}",
252
+ "corruptedHint": "Se activará la re-autenticación...",
253
+ "settingsCorrupted": "El archivo de configuración de conexión está corrupto: {{path}}",
254
+ "settingsCorruptedHint": "Se reconectará al proxy..."
255
+ },
256
+ "projectDir": {
257
+ "configured": "Directorio del proyecto configurado",
258
+ "directory": "Directorio: {{path}}",
259
+ "configLink": "Config: {{symlink}} -> {{dataPath}}"
260
+ },
261
+ "setup": {
262
+ "title": "Spck Networking CLI - Configuración inicial",
263
+ "description1": "Este asistente le ayudará a configurar el Spck Networking CLI.",
264
+ "description2": "El CLI se conecta a un servidor proxy para permitir acceso remoto",
265
+ "description3": "a su sistema de archivos local, git y terminal.",
266
+ "projectConfig": "Configuración del proyecto",
267
+ "rootDirPrompt": "Directorio raíz a servir [{{default}}]: ",
268
+ "terminalConfig": "Configuración del terminal",
269
+ "terminalDescription": "El servicio de terminal permite acceso remoto a la línea de comandos de su máquina.",
270
+ "terminalPrompt": "Habilitar servicio de terminal? [Y/n]: ",
271
+ "advancedTerminalPrompt": "Configurar ajustes avanzados del terminal? [y/N]: ",
272
+ "maxBufferPrompt": "Líneas máximas de búfer (historial del terminal) [{{default}}]: ",
273
+ "maxBufferHint": "(Un búfer más grande almacena más historial pero puede ralentizar la sincronización)",
274
+ "maxTerminalsPrompt": "Procesos máximos de terminal [{{default}}]: ",
275
+ "securityConfig": "Configuración de seguridad",
276
+ "securityDescription1": "La autenticación adicional de usuario añade una capa de seguridad extra",
277
+ "securityDescription2": "al requerir que el cliente verifique su identidad de Firebase.",
278
+ "securityDescription3": "Esto aumenta el tiempo de conexión inicial en ~3-15 segundos.",
279
+ "securityDocsHint": "Más información: {{url}}",
280
+ "securityPrompt": "Habilitar autenticación adicional de usuario? [y/N]: ",
281
+ "gitConfig": "Configuración de Git",
282
+ "gitignoreDetected": "Se detectó un archivo .gitignore en el directorio de su proyecto.",
283
+ "gitignoreRecommend1": "Se recomienda añadir .spck-editor/ a .gitignore para evitar",
284
+ "gitignoreRecommend2": "confirmar accidentalmente el directorio en el control de versiones.",
285
+ "gitignorePrompt": "Añadir .spck-editor/ a .gitignore? [Y/n]: ",
286
+ "gitignoreAdded": "Se añadió .spck-editor/ a .gitignore",
287
+ "gitignoreFailed": "Error al actualizar .gitignore: {{message}}",
288
+ "gitignoreManualHint": "Puede añadir .spck-editor/ manualmente a su archivo .gitignore.",
289
+ "setupFailed": "Error en la configuración: {{message}}",
290
+ "configSummary": "Resumen de la configuración:",
291
+ "summaryName": "Nombre del servidor: {{name}}",
292
+ "summaryNameNotSet": "No establecido",
293
+ "summaryRoot": "Directorio raíz: {{root}}",
294
+ "summaryTerminal": "Servicio de terminal: {{status}}",
295
+ "summaryEnabled": "Activado",
296
+ "summaryDisabled": "Desactivado",
297
+ "summaryMaxBuffer": "- Líneas máximas de búfer: {{value}}",
298
+ "summaryMaxProcesses": "- Procesos máximos: {{value}}",
299
+ "summaryUserAuth": "Autenticación de usuario: {{status}}",
300
+ "received": "Recibido {{signal}}"
301
+ }
302
+ }
@@ -0,0 +1,302 @@
1
+ {
2
+ "app": {
3
+ "title": "Spck CLI",
4
+ "goodbye": "Au revoir !"
5
+ },
6
+ "config": {
7
+ "loaded": "Configuration chargée",
8
+ "notFound": "Aucune configuration trouvée. Lancement de l’assistant de configuration...",
9
+ "corrupted": "Le fichier de configuration est corrompu",
10
+ "corruptedRunSetup": "Lancement de l’assistant de configuration pour recréer...",
11
+ "fileNotFound": "Fichier de configuration introuvable : {{path}}",
12
+ "fileNotFoundHint": "Lancement de l’assistant de configuration pour créer la configuration initiale...",
13
+ "fileCorrupted": "Le fichier de configuration est corrompu : {{path}}",
14
+ "fileCorruptedHint": "L’assistant de configuration sera lancé pour recréer...",
15
+ "saved": "Configuration enregistrée avec succès !"
16
+ },
17
+ "auth": {
18
+ "title": "Authentification Firebase",
19
+ "startingCallback": "Démarrage du serveur de rappel local sur le port {{port}}...",
20
+ "openingBrowser": "Ouverture du navigateur pour l’authentification...",
21
+ "couldNotOpenBrowser": "Impossible d’ouvrir le navigateur automatiquement : {{message}}",
22
+ "manualAuthHint": "Si le navigateur ne s’ouvre pas, authentifiez-vous manuellement :",
23
+ "visitUrl": "Ou visitez : {{url}}",
24
+ "waiting": "En attente de l’authentification (délai : 10 minutes)...",
25
+ "success": "Authentification réussie !",
26
+ "userId": "ID utilisateur : {{userId}}",
27
+ "credentialsLoaded": "Identifiants Firebase chargés",
28
+ "generatingToken": "Génération d’un nouveau jeton d’ID Firebase...",
29
+ "noRefreshToken": "Aucun jeton de rafraîchissement disponible. Réauthentification requise.",
30
+ "refreshTokenExpired": "Le jeton de rafraîchissement a expiré ou est invalide. Réauthentification requise.",
31
+ "tokenRefreshError": "Erreur de rafraîchissement du jeton : {{message}}",
32
+ "tokenRefreshFailed": "Échec du rafraîchissement du jeton. Réauthentification requise."
33
+ },
34
+ "tools": {
35
+ "title": "Détection des outils",
36
+ "gitForceDisabled": "Git désactivé de force (mode développement)",
37
+ "gitDetected": "Git détecté : {{version}}",
38
+ "gitDetectedShort": "Git détecté",
39
+ "gitNotDetected": "Git non détecté",
40
+ "gitDisabledHint": "Les fonctionnalités Git seront désactivées pour cette session.",
41
+ "gitInstallHint": "Installez Git pour activer les fonctionnalités de contrôle de version :",
42
+ "ripgrepForceDisabled": "ripgrep désactivé de force (mode développement)",
43
+ "ripgrepDetected": "ripgrep détecté : {{version}}",
44
+ "ripgrepDetectedShort": "ripgrep détecté",
45
+ "ripgrepNotDetected": "ripgrep non détecté",
46
+ "ripgrepDisabledHint": "Les fonctionnalités de recherche rapide seront désactivées pour cette session.",
47
+ "ripgrepInstallHint": "Installez ripgrep pour la recherche de code haute performance :",
48
+ "gitInstallUrl": "https://git-scm.com/downloads",
49
+ "ripgrepInstallUrl": "https://github.com/BurntSushi/ripgrep#installation"
50
+ },
51
+ "features": {
52
+ "title": "Fonctionnalités disponibles",
53
+ "filesystem": "Opérations du système de fichiers",
54
+ "gitEnabled": "Contrôle de version Git",
55
+ "gitDisabled": "Contrôle de version Git (git non installé)",
56
+ "searchFast": "Recherche rapide (ripgrep)",
57
+ "searchBasic": "Recherche basique (ripgrep non installé)",
58
+ "terminalEnabled": "Service de terminal",
59
+ "terminalDisabled": "Service de terminal (désactivé dans la configuration)",
60
+ "securityTitle": "Mode de sécurité",
61
+ "userAuthEnabled": "Authentification utilisateur : ACTIVÉE",
62
+ "userAuthEnabledHint1": "Nécessite l’authentification Firebase pour toutes les connexions",
63
+ "userAuthEnabledHint2": "Ajoute une couche de vérification d’identité utilisateur",
64
+ "userAuthEnabledHint3": "Compatible avec Spck Editor (pas Lite)",
65
+ "userAuthDisabled": "Authentification utilisateur : DÉSACTIVÉE",
66
+ "userAuthDisabledHint1": "Connexions protégées uniquement par clé de signature secrète",
67
+ "userAuthDisabledHint2": "Latence réduite, pas d’authentification Firebase requise",
68
+ "userAuthDisabledHint3": "Compatible avec Spck Editor Lite",
69
+ "browserProxyEnabled": "Service proxy navigateur",
70
+ "browserProxyDisabled": "Service proxy navigateur (désactivé dans la configuration)"
71
+ },
72
+ "server": {
73
+ "selectingBest": "Sélection du meilleur serveur relais...",
74
+ "checkingLatency": "Vérification de la latence du serveur...",
75
+ "selected": "Serveur sélectionné : {{label}} ({{url}}) - {{ping}}ms",
76
+ "allUnreachable": "Tous les serveurs inaccessibles, utilisation du serveur par défaut : {{url}}",
77
+ "usingOverride": "Utilisation du serveur personnalisé : {{url}}",
78
+ "usingSaved": "Utilisation du serveur enregistré : {{url}}",
79
+ "failedSelect": "Échec de la sélection du serveur relais : {{message}}",
80
+ "usingDefault": "Utilisation du serveur par défaut : {{url}}",
81
+ "unreachable": "inaccessible"
82
+ },
83
+ "connection": {
84
+ "title": "Connexion au serveur relais",
85
+ "relayServer": "Serveur relais : {{server}}",
86
+ "scanQR": "Scannez ce code QR avec l’application mobile Spck Editor :",
87
+ "clientId": "ID client : {{id}}",
88
+ "secret": "Secret : {{secret}}",
89
+ "name": "Nom : {{name}}",
90
+ "relayServerLabel": "Serveur relais : {{server}}",
91
+ "relayServerMismatch": "IMPORTANT : Le client doit sélectionner le même serveur relais",
92
+ "relayServerMismatchHint": "({{server}}) dans Spck Editor pour se connecter.",
93
+ "existingFound": "Connexion existante trouvée",
94
+ "connectedAt": "Connecté le : {{date}}",
95
+ "noExisting": "Aucune connexion existante trouvée. Connexion au proxy...",
96
+ "tokenExpired": "Jeton du serveur expiré. Reconnexion...",
97
+ "settingsCorrupted": "Paramètres de connexion corrompus, reconnexion au proxy...",
98
+ "reusingSecret": "Réutilisation du secret existant pour clientId",
99
+ "generatedSecret": "Nouveau secret généré pour clientId",
100
+ "newDevice": "Nouvel appareil en cours de connexion : {{deviceId}}",
101
+ "newDeviceWarning": "C’est la première fois que cet appareil se connecte.",
102
+ "newDeviceCompromised": "Si vous n’avez pas initié cette connexion, vos identifiants sont peut-être compromis.",
103
+ "userVerifying": "Demande de vérification de l’utilisateur...",
104
+ "userVerified": "Utilisateur vérifié pour {{deviceId}} : {{userId}}",
105
+ "userVerifyFailed": "Échec de la vérification de l’utilisateur pour {{deviceId}} : {{message}}",
106
+ "userVerifyOptional": "Poursuite malgré tout (la vérification est facultative)",
107
+ "protocolNegotiated": "Protocole v{{version}} négocié avec {{deviceId}}",
108
+ "protocolUnsupported": "Version de protocole {{version}} non prise en charge de {{deviceId}}. Ce CLI ne prend en charge que le protocole v1. Une mise à jour est nécessaire : mettez à jour votre client/bibliothèque (et ce CLI, le cas échéant) vers la dernière version afin que les versions de protocole correspondent. Si vous avez installé le CLI globalement, exécutez : npm i -g spck@latest",
109
+ "chunkingMessage": "Fragmentation du gros message {{event}} : {{chunks}} fragments (~{{size}}Mo) pour {{deviceId}}",
110
+ "disconnectedFromProxy": "Déconnecté du proxy : {{reason}}",
111
+ "serverTerminated": "Le serveur a terminé la connexion. Fermeture...",
112
+ "attemptingReconnect": "Tentative de reconnexion...",
113
+ "reconnectAttempt": "Tentative de reconnexion {{attempt}}/5...",
114
+ "reconnected": "Reconnecté après {{attempts}} tentatives",
115
+ "reconnectFailed": "Échec de la reconnexion après 5 tentatives.",
116
+ "exiting": "Fermeture...",
117
+ "shuttingDown": "Arrêt en cours...",
118
+ "killTimeout": "Délai d’acquittement de fermeture dépassé, déconnexion forcée",
119
+ "gracefulDisconnect": "Déconnecté proprement du proxy",
120
+ "connectError": "Erreur de connexion : {{message}}",
121
+ "connectErrorNamespace": "Espace de noms : /listen",
122
+ "connectErrorType": "Type d’erreur : {{type}}",
123
+ "connectFailed": "Échec de la connexion au serveur relais",
124
+ "connectFailedUrl": "URL : {{url}}/listen",
125
+ "connectFailedError": "Erreur : {{message}}",
126
+ "connectFailedCauses": "Causes possibles :",
127
+ "connectFailedCause1": "- Le serveur n’est pas accessible (vérifiez votre connexion internet)",
128
+ "connectFailedCause2": "- Réseau/pare-feu bloquant la connexion",
129
+ "freeTierNotice": "Compte gratuit\u00a0: {{used}}\u00a0/ {{limit}} min utilisés aujourd\u2019hui ({{remaining}} min restants)",
130
+ "freeTierUpgrade": "Passez à la version premium pour un accès CLI illimité."
131
+ },
132
+ "multipleConnection": {
133
+ "detected": "TENTATIVE DE CONNEXION MULTIPLE DÉTECTÉE !",
134
+ "existingCount": "Connexions existantes : {{count}}",
135
+ "newConnectionId": "Nouvel ID de connexion : {{id}}",
136
+ "rejectedHint": "Pour des raisons de sécurité, les nouvelles connexions sont rejetées par défaut.",
137
+ "restartHint": "Si vous souhaitez autoriser les connexions multiples, redémarrez le CLI.",
138
+ "compromiseWarning": "Si vous n’avez pas initié cette connexion, votre ID client",
139
+ "compromiseHint": "est peut-être compromis. Envisagez de le regénérer."
140
+ },
141
+ "proxyError": {
142
+ "error": "Erreur proxy : {{message}}",
143
+ "tokenExpiredTimeout": "Votre jeton d’accès a expiré ou le délai a été dépassé.",
144
+ "tokenExpiredHint": "Réessayez ou réauthentifiez-vous avec : spck auth login",
145
+ "tokenRevoked": "Votre jeton de connexion a été révoqué.",
146
+ "tokenRevokedHint": "Réauthentifiez-vous : spck auth logout && spck auth login",
147
+ "privacyConsent": "Acceptation de la politique de confidentialité requise.",
148
+ "privacyConsentHint1": "Veuillez accepter la politique de confidentialité dans l’application Spck Editor",
149
+ "privacyConsentHint2": "sous Paramètres du compte pour utiliser cette fonctionnalité.",
150
+ "accountDeleting": "Votre compte est en cours de suppression.",
151
+ "accountDeletingHint": "Veuillez patienter 72 heures avant de réessayer.",
152
+ "accountBanned": "Ce compte a été banni.",
153
+ "accountBannedHint1": "Votre compte a été banni pour violation des",
154
+ "accountBannedHint2": "Conditions générales d’utilisation.",
155
+ "subscriptionCheckFailed": "Impossible de vérifier l’état de l’abonnement.",
156
+ "subscriptionCheckFailedHint": "Cela peut être un problème temporaire. Veuillez réessayer plus tard.",
157
+ "subscriptionRequired": "Cette fonctionnalité nécessite un abonnement payant.",
158
+ "subscriptionRequiredHint": "Ouvrez l'application Spck Editor pour passer à Supporter ou Gold.",
159
+ "maxConnections": "Maximum de {{max}} connexions CLI atteint.",
160
+ "maxConnectionsHint": "Fermez les autres instances du CLI et réessayez.",
161
+ "duplicateClientId": "Un CLI avec cet ID client est déjà connecté.",
162
+ "duplicateHint1": "Cela peut se produire si :",
163
+ "duplicateHint2": "- Une autre instance du CLI est encore en cours d’exécution avec la même connexion",
164
+ "duplicateHint3": "- Une connexion précédente ne s’est pas déconnectée correctement",
165
+ "duplicateHint4": "Veuillez :",
166
+ "duplicateHint5": "1. Fermer toute autre instance du CLI en cours d’exécution",
167
+ "duplicateHint6": "2. Attendre quelques secondes que la connexion précédente expire",
168
+ "duplicateHint7": "3. Réessayer de vous connecter",
169
+ "firebaseExpiredRefreshFailed": "Le jeton Firebase a expiré et le rafraîchissement a échoué.",
170
+ "firebaseExpiredRefreshFailedHint": "Réauthentifiez-vous : spck auth login",
171
+ "firebaseExpired": "Le jeton Firebase a expiré.",
172
+ "firebaseExpiredHint": "Réauthentifiez-vous : spck auth login",
173
+ "firebaseInvalid": "Le jeton Firebase est invalide (non expiré).",
174
+ "firebaseInvalidHint1": "Le jeton est peut-être corrompu ou provient d’un autre compte.",
175
+ "firebaseInvalidHint2": "Réauthentifiez-vous : spck auth login",
176
+ "firebaseTokenExpiring": "Le jeton Firebase a expiré. Tentative de rafraîchissement...",
177
+ "tokenRefreshFailed": "Échec du rafraîchissement du jeton : {{message}}",
178
+ "dailyLimitExceeded": "La limite quotidienne gratuite de 30 minutes a été atteinte.",
179
+ "dailyLimitReset": "La limite sera réinitialisée dans {{time}}.",
180
+ "dailyLimitExceededHint": "Ouvrez l'application Spck Editor pour passer à Supporter ou Gold et bénéficier d'un accès CLI illimité.",
181
+ "defaultError": "Un problème est survenu lors de la vérification de votre abonnement."
182
+ },
183
+ "errors": {
184
+ "permissionError": "Erreur de permissions : Impossible d’écrire dans le répertoire requis",
185
+ "permissionPath": "Chemin : {{path}}",
186
+ "permissionOperation": "Opération : {{operation}}",
187
+ "permissionFix": "Veuillez corriger les permissions :",
188
+ "permissionFixCmd1": "chmod 700 ~/.spck-editor",
189
+ "permissionFixCmd2": "chmod 600 ~/.spck-editor/.credentials.json",
190
+ "permissionFixHint": "Ou assurez-vous que votre utilisateur a un accès en écriture au répertoire personnel.",
191
+ "diskFull": "Disque plein : Plus d’espace disponible sur l’appareil",
192
+ "diskFullHint": "Veuillez libérer de l’espace disque et réessayer.",
193
+ "cannotConnect": "Impossible de se connecter au serveur proxy",
194
+ "cannotConnectError": "Erreur : {{message}}",
195
+ "cannotConnectCauses": "Causes possibles :",
196
+ "cannotConnectCause1": "- Le serveur proxy est hors service",
197
+ "cannotConnectCause2": "- Problème de connexion réseau",
198
+ "cannotConnectCause3": "- URL du proxy incorrecte dans la configuration",
199
+ "cannotConnectHint": "Veuillez vérifier l’URL du proxy et réessayer.",
200
+ "failedToStart": "Échec du démarrage du client proxy : {{message}}",
201
+ "rootNotFound": "Répertoire racine introuvable : {{path}}",
202
+ "rootNotFoundHint": "Assurez-vous que le répertoire existe et est accessible, ou lancez l’assistant de configuration :",
203
+ "rootNotFoundCmd": "spck --setup",
204
+ "uncaughtException": "Exception non interceptée : {{message}}",
205
+ "unhandledRejection": "Rejet non géré : {{message}}",
206
+ "shutdownError": "Erreur lors de l’arrêt : {{message}}",
207
+ "cliError": "Erreur : {{message}}",
208
+ "cliErrorHint": "Exécutez avec --help pour voir les commandes et options disponibles."
209
+ },
210
+ "logout": {
211
+ "title": "Déconnexion",
212
+ "clearedCredentials": "Identifiants utilisateur effacés",
213
+ "removed": "Supprimé : {{path}}",
214
+ "clearedSettings": "Paramètres de connexion effacés",
215
+ "noCredentials": "Aucun identifiant ni paramètre de connexion trouvé",
216
+ "notLoggedIn": "Vous n’êtes pas actuellement connecté.",
217
+ "success": "Déconnexion réussie !",
218
+ "runAgain": "Relancez le CLI pour vous réauthentifier."
219
+ },
220
+ "account": {
221
+ "title": "Informations du compte",
222
+ "credentialsCorrupted": "Le fichier d’identifiants est corrompu.",
223
+ "credentialsCorruptedHint1": "Déconnectez-vous et réauthentifiez-vous :",
224
+ "credentialsCorruptedHint2": "spck --logout",
225
+ "notLoggedIn": "Vous n’êtes pas actuellement connecté.",
226
+ "notLoggedInHint1": "Lancez le CLI pour vous authentifier :",
227
+ "notLoggedInHint2": "spck",
228
+ "fetching": "Récupération des informations du compte...",
229
+ "decodeFailed": "Échec du décodage du jeton d’authentification",
230
+ "loggedIn": "Connecté",
231
+ "userId": "ID utilisateur : {{userId}}",
232
+ "email": "E-mail : {{email}}",
233
+ "verified": "Vérifié : {{status}}",
234
+ "yes": "Oui",
235
+ "no": "Non",
236
+ "tokenExpires": "Le jeton expire : {{date}}",
237
+ "timeRemaining": "Temps restant : {{hours}}h {{minutes}}m",
238
+ "subscription": "Abonnement",
239
+ "status": "Statut : {{status}}",
240
+ "plan": "Forfait : {{plan}}",
241
+ "premium": "Premium : {{status}}",
242
+ "fetchFailed": "Échec de la récupération des informations du compte",
243
+ "fetchFailedError": "Erreur : {{message}}",
244
+ "permissionDenied": "Permission refusée pour accéder au fichier d’identifiants",
245
+ "permissionHint1": "Veuillez vérifier les permissions du fichier :",
246
+ "permissionHint2": "chmod 600 ~/.spck-editor/.credentials.json",
247
+ "networkError": "Erreur de connexion réseau",
248
+ "networkHint": "Veuillez vérifier votre connexion internet"
249
+ },
250
+ "credentials": {
251
+ "corrupted": "Le fichier d’identifiants est corrompu : {{path}}",
252
+ "corruptedHint": "La ré-authentification sera déclenchée...",
253
+ "settingsCorrupted": "Le fichier de paramètres de connexion est corrompu : {{path}}",
254
+ "settingsCorruptedHint": "Reconnexion au proxy..."
255
+ },
256
+ "projectDir": {
257
+ "configured": "Répertoire du projet configuré",
258
+ "directory": "Répertoire : {{path}}",
259
+ "configLink": "Config : {{symlink}} -> {{dataPath}}"
260
+ },
261
+ "setup": {
262
+ "title": "Spck Networking CLI - Configuration initiale",
263
+ "description1": "Cet assistant vous aidera à configurer le Spck Networking CLI.",
264
+ "description2": "Le CLI se connecte à un serveur proxy pour permettre l’accès distant",
265
+ "description3": "à votre système de fichiers local, git et terminal.",
266
+ "projectConfig": "Configuration du projet",
267
+ "rootDirPrompt": "Répertoire racine à servir [{{default}}] : ",
268
+ "terminalConfig": "Configuration du terminal",
269
+ "terminalDescription": "Le service de terminal permet l’accès distant au shell de votre machine.",
270
+ "terminalPrompt": "Activer le service de terminal ? [Y/n] : ",
271
+ "advancedTerminalPrompt": "Configurer les paramètres avancés du terminal ? [y/N] : ",
272
+ "maxBufferPrompt": "Lignes maximum du tampon (historique du terminal) [{{default}}] : ",
273
+ "maxBufferHint": "(Un tampon plus grand stocke plus d’historique mais peut ralentir la synchronisation)",
274
+ "maxTerminalsPrompt": "Nombre maximum de processus terminal [{{default}}] : ",
275
+ "securityConfig": "Configuration de la sécurité",
276
+ "securityDescription1": "L’authentification utilisateur supplémentaire ajoute une couche de sécurité en plus",
277
+ "securityDescription2": "en exigeant que le client vérifie son identité Firebase.",
278
+ "securityDescription3": "Cela augmente le temps de connexion initial de ~3-15 secondes.",
279
+ "securityDocsHint": "En savoir plus : {{url}}",
280
+ "securityPrompt": "Activer l’authentification utilisateur supplémentaire ? [y/N] : ",
281
+ "gitConfig": "Configuration Git",
282
+ "gitignoreDetected": "Un fichier .gitignore a été détecté dans le répertoire de votre projet.",
283
+ "gitignoreRecommend1": "Il est recommandé d’ajouter .spck-editor/ au .gitignore pour éviter",
284
+ "gitignoreRecommend2": "de valider accidentellement le répertoire dans le contrôle de version.",
285
+ "gitignorePrompt": "Ajouter .spck-editor/ au .gitignore ? [Y/n] : ",
286
+ "gitignoreAdded": ".spck-editor/ ajouté au .gitignore",
287
+ "gitignoreFailed": "Échec de la mise à jour du .gitignore : {{message}}",
288
+ "gitignoreManualHint": "Vous pouvez ajouter manuellement .spck-editor/ à votre fichier .gitignore.",
289
+ "setupFailed": "Échec de la configuration : {{message}}",
290
+ "configSummary": "Résumé de la configuration :",
291
+ "summaryName": "Nom du serveur : {{name}}",
292
+ "summaryNameNotSet": "Non défini",
293
+ "summaryRoot": "Répertoire racine : {{root}}",
294
+ "summaryTerminal": "Service de terminal : {{status}}",
295
+ "summaryEnabled": "Activé",
296
+ "summaryDisabled": "Désactivé",
297
+ "summaryMaxBuffer": "- Lignes maximum du tampon : {{value}}",
298
+ "summaryMaxProcesses": "- Processus maximum : {{value}}",
299
+ "summaryUserAuth": "Authentification utilisateur : {{status}}",
300
+ "received": "Reçu {{signal}}"
301
+ }
302
+ }