es.ts 20 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617
  1. import { SubmitKey } from "../store/config";
  2. import type { PartialLocaleType } from "./index";
  3. import { getClientConfig } from "../config/client";
  4. import { SAAS_CHAT_UTM_URL } from "@/app/constant";
  5. const isApp = !!getClientConfig()?.isApp;
  6. const es: PartialLocaleType = {
  7. WIP: "En construcción...",
  8. Error: {
  9. Unauthorized: isApp
  10. ? `😆 La conversación encontró algunos problemas, no te preocupes:
  11. \\ 1️⃣ Si deseas comenzar sin configuración, [haz clic aquí para empezar a chatear inmediatamente 🚀](${SAAS_CHAT_UTM_URL})
  12. \\ 2️⃣ Si deseas usar tus propios recursos de OpenAI, haz clic [aquí](/#/settings) para modificar la configuración ⚙️`
  13. : `😆 La conversación encontró algunos problemas, no te preocupes:
  14. \ 1️⃣ Si deseas comenzar sin configuración, [haz clic aquí para empezar a chatear inmediatamente 🚀](${SAAS_CHAT_UTM_URL})
  15. \ 2️⃣ Si estás utilizando una versión de implementación privada, haz clic [aquí](/#/auth) para ingresar la clave de acceso 🔑
  16. \ 3️⃣ Si deseas usar tus propios recursos de OpenAI, haz clic [aquí](/#/settings) para modificar la configuración ⚙️
  17. `,
  18. },
  19. Auth: {
  20. Title: "Se requiere contraseña",
  21. Tips: "El administrador ha habilitado la verificación de contraseña. Introduce el código de acceso a continuación",
  22. SubTips: "O ingresa tu clave API de OpenAI o Google",
  23. Input: "Introduce el código de acceso aquí",
  24. Confirm: "Confirmar",
  25. Later: "Más tarde",
  26. Return: "Regresar",
  27. SaasTips:
  28. "La configuración es demasiado complicada, quiero usarlo de inmediato",
  29. TopTips:
  30. "🥳 Oferta de lanzamiento de NextChat AI, desbloquea OpenAI o1, GPT-4o, Claude-3.5 y los últimos grandes modelos",
  31. },
  32. ChatItem: {
  33. ChatItemCount: (count: number) => `${count} conversaciones`,
  34. },
  35. Chat: {
  36. SubTitle: (count: number) => `Total de ${count} conversaciones`,
  37. EditMessage: {
  38. Title: "Editar registro de mensajes",
  39. Topic: {
  40. Title: "Tema de la conversación",
  41. SubTitle: "Cambiar el tema de la conversación actual",
  42. },
  43. },
  44. Actions: {
  45. ChatList: "Ver lista de mensajes",
  46. CompressedHistory: "Ver historial de Prompts comprimidos",
  47. Export: "Exportar historial de chat",
  48. Copy: "Copiar",
  49. Stop: "Detener",
  50. Retry: "Reintentar",
  51. Pin: "Fijar",
  52. PinToastContent:
  53. "Se ha fijado 1 conversación a los prompts predeterminados",
  54. PinToastAction: "Ver",
  55. Delete: "Eliminar",
  56. Edit: "Editar",
  57. RefreshTitle: "Actualizar título",
  58. RefreshToast: "Se ha enviado la solicitud de actualización del título",
  59. },
  60. Commands: {
  61. new: "Nueva conversación",
  62. newm: "Nueva conversación desde la máscara",
  63. next: "Siguiente conversación",
  64. prev: "Conversación anterior",
  65. clear: "Limpiar contexto",
  66. del: "Eliminar conversación",
  67. },
  68. InputActions: {
  69. Stop: "Detener respuesta",
  70. ToBottom: "Ir al más reciente",
  71. Theme: {
  72. auto: "Tema automático",
  73. light: "Modo claro",
  74. dark: "Modo oscuro",
  75. },
  76. Prompt: "Comandos rápidos",
  77. Masks: "Todas las máscaras",
  78. Clear: "Limpiar chat",
  79. Settings: "Configuración de conversación",
  80. UploadImage: "Subir imagen",
  81. },
  82. Rename: "Renombrar conversación",
  83. Typing: "Escribiendo…",
  84. Input: (submitKey: string) => {
  85. var inputHints = `${submitKey} para enviar`;
  86. if (submitKey === String(SubmitKey.Enter)) {
  87. inputHints += ",Shift + Enter para nueva línea";
  88. }
  89. return (
  90. inputHints + ",/ para activar autocompletado,: para activar comandos"
  91. );
  92. },
  93. Send: "Enviar",
  94. Config: {
  95. Reset: "Borrar memoria",
  96. SaveAs: "Guardar como máscara",
  97. },
  98. IsContext: "Prompt predeterminado",
  99. },
  100. Export: {
  101. Title: "Compartir historial de chat",
  102. Copy: "Copiar todo",
  103. Download: "Descargar archivo",
  104. Share: "Compartir en ShareGPT",
  105. MessageFromYou: "Usuario",
  106. MessageFromChatGPT: "ChatGPT",
  107. Format: {
  108. Title: "Formato de exportación",
  109. SubTitle: "Puedes exportar como texto Markdown o imagen PNG",
  110. },
  111. IncludeContext: {
  112. Title: "Incluir contexto de máscara",
  113. SubTitle: "Mostrar contexto de máscara en los mensajes",
  114. },
  115. Steps: {
  116. Select: "Seleccionar",
  117. Preview: "Vista previa",
  118. },
  119. Image: {
  120. Toast: "Generando captura de pantalla",
  121. Modal: "Mantén presionado o haz clic derecho para guardar la imagen",
  122. },
  123. },
  124. Select: {
  125. Search: "Buscar mensajes",
  126. All: "Seleccionar todo",
  127. Latest: "Últimos mensajes",
  128. Clear: "Limpiar selección",
  129. },
  130. Memory: {
  131. Title: "Resumen histórico",
  132. EmptyContent:
  133. "El contenido de la conversación es demasiado corto para resumir",
  134. Send: "Comprimir automáticamente el historial de chat y enviarlo como contexto",
  135. Copy: "Copiar resumen",
  136. Reset: "[no usado]",
  137. ResetConfirm: "¿Confirmar para borrar el resumen histórico?",
  138. },
  139. Home: {
  140. NewChat: "Nueva conversación",
  141. DeleteChat: "¿Confirmar la eliminación de la conversación seleccionada?",
  142. DeleteToast: "Conversación eliminada",
  143. Revert: "Deshacer",
  144. },
  145. Settings: {
  146. Title: "Configuración",
  147. SubTitle: "Todas las opciones de configuración",
  148. Danger: {
  149. Reset: {
  150. Title: "Restablecer todas las configuraciones",
  151. SubTitle:
  152. "Restablecer todas las configuraciones a los valores predeterminados",
  153. Action: "Restablecer ahora",
  154. Confirm: "¿Confirmar el restablecimiento de todas las configuraciones?",
  155. },
  156. Clear: {
  157. Title: "Eliminar todos los datos",
  158. SubTitle: "Eliminar todos los chats y datos de configuración",
  159. Action: "Eliminar ahora",
  160. Confirm:
  161. "¿Confirmar la eliminación de todos los chats y datos de configuración?",
  162. },
  163. },
  164. Lang: {
  165. Name: "Language", // ATENCIÓN: si deseas agregar una nueva traducción, por favor no traduzcas este valor, déjalo como `Language`
  166. All: "Todos los idiomas",
  167. },
  168. Avatar: "Avatar",
  169. FontSize: {
  170. Title: "Tamaño de fuente",
  171. SubTitle: "Tamaño de la fuente del contenido del chat",
  172. },
  173. FontFamily: {
  174. Title: "Fuente del Chat",
  175. SubTitle:
  176. "Fuente del contenido del chat, dejar vacío para aplicar la fuente predeterminada global",
  177. Placeholder: "Nombre de la Fuente",
  178. },
  179. InjectSystemPrompts: {
  180. Title: "Inyectar mensajes del sistema",
  181. SubTitle:
  182. "Forzar la adición de un mensaje del sistema simulado de ChatGPT al principio de cada lista de mensajes",
  183. },
  184. InputTemplate: {
  185. Title: "Preprocesamiento de entrada del usuario",
  186. SubTitle: "El último mensaje del usuario se rellenará en esta plantilla",
  187. },
  188. Update: {
  189. Version: (x: string) => `Versión actual: ${x}`,
  190. IsLatest: "Ya estás en la última versión",
  191. CheckUpdate: "Buscar actualizaciones",
  192. IsChecking: "Buscando actualizaciones...",
  193. FoundUpdate: (x: string) => `Nueva versión encontrada: ${x}`,
  194. GoToUpdate: "Ir a actualizar",
  195. },
  196. SendKey: "Tecla de enviar",
  197. Theme: "Tema",
  198. TightBorder: "Modo sin borde",
  199. SendPreviewBubble: {
  200. Title: "Vista previa del globo",
  201. SubTitle:
  202. "Previsualiza el contenido Markdown en un globo de vista previa",
  203. },
  204. AutoGenerateTitle: {
  205. Title: "Generar título automáticamente",
  206. SubTitle: "Generar un título adecuado basado en el contenido del chat",
  207. },
  208. Sync: {
  209. CloudState: "Datos en la nube",
  210. NotSyncYet: "Aún no se ha sincronizado",
  211. Success: "Sincronización exitosa",
  212. Fail: "Sincronización fallida",
  213. Config: {
  214. Modal: {
  215. Title: "Configurar sincronización en la nube",
  216. Check: "Verificar disponibilidad",
  217. },
  218. SyncType: {
  219. Title: "Tipo de sincronización",
  220. SubTitle: "Selecciona el servidor de sincronización preferido",
  221. },
  222. Proxy: {
  223. Title: "Habilitar proxy",
  224. SubTitle:
  225. "Debes habilitar el proxy para sincronizar en el navegador y evitar restricciones de CORS",
  226. },
  227. ProxyUrl: {
  228. Title: "Dirección del proxy",
  229. SubTitle: "Solo para el proxy CORS incluido en este proyecto",
  230. },
  231. WebDav: {
  232. Endpoint: "Dirección WebDAV",
  233. UserName: "Nombre de usuario",
  234. Password: "Contraseña",
  235. },
  236. UpStash: {
  237. Endpoint: "URL de REST de UpStash Redis",
  238. UserName: "Nombre de respaldo",
  239. Password: "Token de REST de UpStash Redis",
  240. },
  241. },
  242. LocalState: "Datos locales",
  243. Overview: (overview: any) => {
  244. return `${overview.chat} conversaciones, ${overview.message} mensajes, ${overview.prompt} prompts, ${overview.mask} máscaras`;
  245. },
  246. ImportFailed: "Importación fallida",
  247. },
  248. Mask: {
  249. Splash: {
  250. Title: "Pantalla de inicio de máscara",
  251. SubTitle:
  252. "Mostrar la pantalla de inicio de la máscara al iniciar un nuevo chat",
  253. },
  254. Builtin: {
  255. Title: "Ocultar máscaras integradas",
  256. SubTitle:
  257. "Ocultar las máscaras integradas en todas las listas de máscaras",
  258. },
  259. },
  260. Prompt: {
  261. Disable: {
  262. Title: "Deshabilitar autocompletado de prompts",
  263. SubTitle:
  264. "Escribe / al principio del campo de entrada para activar el autocompletado",
  265. },
  266. List: "Lista de prompts personalizados",
  267. ListCount: (builtin: number, custom: number) =>
  268. `Integrados ${builtin}, definidos por el usuario ${custom}`,
  269. Edit: "Editar",
  270. Modal: {
  271. Title: "Lista de prompts",
  272. Add: "Nuevo",
  273. Search: "Buscar prompts",
  274. },
  275. EditModal: {
  276. Title: "Editar prompt",
  277. },
  278. },
  279. HistoryCount: {
  280. Title: "Número de mensajes históricos adjuntos",
  281. SubTitle: "Número de mensajes históricos enviados con cada solicitud",
  282. },
  283. CompressThreshold: {
  284. Title: "Umbral de compresión de mensajes históricos",
  285. SubTitle:
  286. "Cuando los mensajes históricos no comprimidos superan este valor, se realizará la compresión",
  287. },
  288. Usage: {
  289. Title: "Consulta de saldo",
  290. SubTitle(used: any, total: any) {
  291. return `Saldo usado este mes: $${used}, total suscrito: $${total}`;
  292. },
  293. IsChecking: "Verificando…",
  294. Check: "Revisar de nuevo",
  295. NoAccess:
  296. "Introduce la clave API o la contraseña de acceso para ver el saldo",
  297. },
  298. Access: {
  299. SaasStart: {
  300. Title: "Use NextChat AI",
  301. Label: "(The most cost-effective solution)",
  302. SubTitle:
  303. "Officially maintained by NextChat, zero configuration ready to use, supports the latest large models like OpenAI o1, GPT-4o, and Claude-3.5",
  304. ChatNow: "Chat Now",
  305. },
  306. AccessCode: {
  307. Title: "Contraseña de acceso",
  308. SubTitle: "El administrador ha habilitado el acceso encriptado",
  309. Placeholder: "Introduce la contraseña de acceso",
  310. },
  311. CustomEndpoint: {
  312. Title: "Interfaz personalizada",
  313. SubTitle: "¿Usar servicios personalizados de Azure u OpenAI?",
  314. },
  315. Provider: {
  316. Title: "Proveedor de modelos",
  317. SubTitle: "Cambiar entre diferentes proveedores",
  318. },
  319. OpenAI: {
  320. ApiKey: {
  321. Title: "Clave API",
  322. SubTitle:
  323. "Usa una clave API de OpenAI personalizada para omitir la restricción de acceso por contraseña",
  324. Placeholder: "Clave API de OpenAI",
  325. },
  326. Endpoint: {
  327. Title: "Dirección del endpoint",
  328. SubTitle:
  329. "Debe incluir http(s):// además de la dirección predeterminada",
  330. },
  331. },
  332. Azure: {
  333. ApiKey: {
  334. Title: "Clave de interfaz",
  335. SubTitle:
  336. "Usa una clave de Azure personalizada para omitir la restricción de acceso por contraseña",
  337. Placeholder: "Clave API de Azure",
  338. },
  339. Endpoint: {
  340. Title: "Dirección del endpoint",
  341. SubTitle: "Ejemplo:",
  342. },
  343. ApiVerion: {
  344. Title: "Versión de la interfaz (versión de api de azure)",
  345. SubTitle: "Selecciona una versión específica",
  346. },
  347. },
  348. Anthropic: {
  349. ApiKey: {
  350. Title: "Clave de interfaz",
  351. SubTitle:
  352. "Usa una clave de Anthropic personalizada para omitir la restricción de acceso por contraseña",
  353. Placeholder: "Clave API de Anthropic",
  354. },
  355. Endpoint: {
  356. Title: "Dirección del endpoint",
  357. SubTitle: "Ejemplo:",
  358. },
  359. ApiVerion: {
  360. Title: "Versión de la interfaz (versión de claude api)",
  361. SubTitle: "Selecciona una versión específica de la API",
  362. },
  363. },
  364. Google: {
  365. ApiKey: {
  366. Title: "Clave API",
  367. SubTitle: "Obtén tu clave API de Google AI",
  368. Placeholder: "Introduce tu clave API de Google AI Studio",
  369. },
  370. Endpoint: {
  371. Title: "Dirección del endpoint",
  372. SubTitle: "Ejemplo:",
  373. },
  374. ApiVersion: {
  375. Title: "Versión de la API (solo para gemini-pro)",
  376. SubTitle: "Selecciona una versión específica de la API",
  377. },
  378. GoogleSafetySettings: {
  379. Title: "Nivel de filtrado de seguridad de Google",
  380. SubTitle: "Configura el nivel de filtrado de contenido",
  381. },
  382. },
  383. Baidu: {
  384. ApiKey: {
  385. Title: "Clave API",
  386. SubTitle: "Usa una clave API de Baidu personalizada",
  387. Placeholder: "Clave API de Baidu",
  388. },
  389. SecretKey: {
  390. Title: "Clave secreta",
  391. SubTitle: "Usa una clave secreta de Baidu personalizada",
  392. Placeholder: "Clave secreta de Baidu",
  393. },
  394. Endpoint: {
  395. Title: "Dirección del endpoint",
  396. SubTitle:
  397. "No admite personalización, dirígete a .env para configurarlo",
  398. },
  399. },
  400. ByteDance: {
  401. ApiKey: {
  402. Title: "Clave de interfaz",
  403. SubTitle: "Usa una clave API de ByteDance personalizada",
  404. Placeholder: "Clave API de ByteDance",
  405. },
  406. Endpoint: {
  407. Title: "Dirección del endpoint",
  408. SubTitle: "Ejemplo:",
  409. },
  410. },
  411. Alibaba: {
  412. ApiKey: {
  413. Title: "Clave de interfaz",
  414. SubTitle: "Usa una clave API de Alibaba Cloud personalizada",
  415. Placeholder: "Clave API de Alibaba Cloud",
  416. },
  417. Endpoint: {
  418. Title: "Dirección del endpoint",
  419. SubTitle: "Ejemplo:",
  420. },
  421. },
  422. AI302: {
  423. ApiKey: {
  424. Title: "Clave de interfaz",
  425. SubTitle: "Usa una clave API de 302.AI personalizada",
  426. Placeholder: "Clave API de 302.AI",
  427. },
  428. Endpoint: {
  429. Title: "Dirección del endpoint",
  430. SubTitle: "Ejemplo:",
  431. },
  432. },
  433. CustomModel: {
  434. Title: "Nombre del modelo personalizado",
  435. SubTitle:
  436. "Agrega opciones de modelos personalizados, separados por comas",
  437. },
  438. },
  439. Model: "Modelo (model)",
  440. CompressModel: {
  441. Title: "Modelo de compresión",
  442. SubTitle: "Modelo utilizado para comprimir el historial",
  443. },
  444. Temperature: {
  445. Title: "Aleatoriedad (temperature)",
  446. SubTitle: "Cuanto mayor sea el valor, más aleatorio será el resultado",
  447. },
  448. TopP: {
  449. Title: "Muestreo por núcleo (top_p)",
  450. SubTitle: "Similar a la aleatoriedad, pero no cambies ambos a la vez",
  451. },
  452. MaxTokens: {
  453. Title: "Límite de tokens por respuesta (max_tokens)",
  454. SubTitle: "Número máximo de tokens utilizados en una sola interacción",
  455. },
  456. PresencePenalty: {
  457. Title: "Novedad de temas (presence_penalty)",
  458. SubTitle:
  459. "Cuanto mayor sea el valor, más probable es que se amplíen a nuevos temas",
  460. },
  461. FrequencyPenalty: {
  462. Title: "Penalización de frecuencia (frequency_penalty)",
  463. SubTitle:
  464. "Cuanto mayor sea el valor, más probable es que se reduzcan las palabras repetidas",
  465. },
  466. },
  467. Store: {
  468. DefaultTopic: "Nuevo chat",
  469. BotHello: "¿En qué puedo ayudarte?",
  470. Error: "Hubo un error, inténtalo de nuevo más tarde",
  471. Prompt: {
  472. History: (content: string) =>
  473. "Este es un resumen del chat histórico como referencia: " + content,
  474. Topic:
  475. "Devuelve un tema breve de esta frase en cuatro a cinco palabras, sin explicación, sin puntuación, sin muletillas, sin texto adicional, sin negritas. Si no hay tema, devuelve 'charlas casuales'",
  476. Summarize:
  477. "Resume brevemente el contenido de la conversación para usar como un prompt de contexto, manteniéndolo dentro de 200 palabras",
  478. },
  479. },
  480. Copy: {
  481. Success: "Copiado al portapapeles",
  482. Failed: "Error al copiar, por favor otorga permisos al portapapeles",
  483. },
  484. Download: {
  485. Success: "Contenido descargado en tu directorio.",
  486. Failed: "Error al descargar.",
  487. },
  488. Context: {
  489. Toast: (x: any) => `Contiene ${x} prompts predefinidos`,
  490. Edit: "Configuración del chat actual",
  491. Add: "Agregar una conversación",
  492. Clear: "Contexto borrado",
  493. Revert: "Restaurar contexto",
  494. },
  495. Plugin: {
  496. Name: "Complemento",
  497. },
  498. FineTuned: {
  499. Sysmessage: "Eres un asistente",
  500. },
  501. SearchChat: {
  502. Name: "Buscar",
  503. Page: {
  504. Title: "Buscar en el historial de chat",
  505. Search: "Ingrese la palabra clave de búsqueda",
  506. NoResult: "No se encontraron resultados",
  507. NoData: "Sin datos",
  508. Loading: "Cargando",
  509. SubTitle: (count: number) => `Se encontraron ${count} resultados`,
  510. },
  511. Item: {
  512. View: "Ver",
  513. },
  514. },
  515. Mask: {
  516. Name: "Máscara",
  517. Page: {
  518. Title: "Máscaras de rol predefinidas",
  519. SubTitle: (count: number) => `${count} definiciones de rol predefinidas`,
  520. Search: "Buscar máscara de rol",
  521. Create: "Crear nuevo",
  522. },
  523. Item: {
  524. Info: (count: number) => `Contiene ${count} conversaciones predefinidas`,
  525. Chat: "Chat",
  526. View: "Ver",
  527. Edit: "Editar",
  528. Delete: "Eliminar",
  529. DeleteConfirm: "¿Confirmar eliminación?",
  530. },
  531. EditModal: {
  532. Title: (readonly: boolean) =>
  533. `Editar máscara predefinida ${readonly ? "(solo lectura)" : ""}`,
  534. Download: "Descargar predefinido",
  535. Clone: "Clonar predefinido",
  536. },
  537. Config: {
  538. Avatar: "Avatar del rol",
  539. Name: "Nombre del rol",
  540. Sync: {
  541. Title: "Usar configuración global",
  542. SubTitle:
  543. "¿Usar la configuración global del modelo para la conversación actual?",
  544. Confirm:
  545. "La configuración personalizada de la conversación actual se sobrescribirá automáticamente, ¿confirmar habilitar la configuración global?",
  546. },
  547. HideContext: {
  548. Title: "Ocultar conversaciones predefinidas",
  549. SubTitle:
  550. "Las conversaciones predefinidas ocultas no aparecerán en la interfaz de chat",
  551. },
  552. Share: {
  553. Title: "Compartir esta máscara",
  554. SubTitle: "Generar un enlace directo a esta máscara",
  555. Action: "Copiar enlace",
  556. },
  557. },
  558. },
  559. NewChat: {
  560. Return: "Regresar",
  561. Skip: "Comenzar ahora",
  562. NotShow: "No mostrar más",
  563. ConfirmNoShow:
  564. "¿Confirmar desactivación? Puedes reactivar en la configuración en cualquier momento.",
  565. Title: "Selecciona una máscara",
  566. SubTitle: "Comienza ahora y colisiona con la mente detrás de la máscara",
  567. More: "Ver todo",
  568. },
  569. URLCommand: {
  570. Code: "Detectado un código de acceso en el enlace, ¿deseas autocompletarlo?",
  571. Settings:
  572. "Detectada configuración predefinida en el enlace, ¿deseas autocompletarla?",
  573. },
  574. UI: {
  575. Confirm: "Confirmar",
  576. Cancel: "Cancelar",
  577. Close: "Cerrar",
  578. Create: "Crear",
  579. Edit: "Editar",
  580. Export: "Exportar",
  581. Import: "Importar",
  582. Sync: "Sincronizar",
  583. Config: "Configurar",
  584. },
  585. Exporter: {
  586. Description: {
  587. Title: "Solo se mostrarán los mensajes después de borrar el contexto",
  588. },
  589. Model: "Modelo",
  590. Messages: "Mensajes",
  591. Topic: "Tema",
  592. Time: "Hora",
  593. },
  594. };
  595. export default es;