Saltearse al contenido

Paquetes de traducción

DatAscend maneja la traducción utilizando paquetes i18n. La gestión principal de estos paquetes de traducción se realiza a través de Studio. Mediante el uso de los endpoints de configuración de recursos (disponibles en Swagger UI), es posible interactuar con estos paquetes.

Gestión de paquetes de traducción para entidades en Studio

Sección titulada «Gestión de paquetes de traducción para entidades en Studio»

A continuación se describen los pasos para gestionar los paquetes de traducción de entidades en Studio:

Si la entidad no tiene un paquete creado, al crearla se generará automáticamente un paquete genérico. Se debe abrir la pestaña Traducciones para visualizar y gestionar los paquetes de traducción en el panel de la entidad. image

En la parte superior de la pestaña de traducciones, se encuentra el menú desplegable de Idioma. Se debe hacer clic y elegir el idioma al que se desea traducir la entidad. image

El campo Etiqueta corresponde al nombre principal de la entidad (por ejemplo, “Worksheet”). Se debe cambiar el texto de este campo por la traducción adecuada para el idioma seleccionado. image

En la sección Atributos, para cada atributo listado en la columna izquierda (como id u worker), se encuentra un campo de texto correspondiente en la columna Etiqueta a la derecha. Aquí se debe ingresar la traducción del nombre de cada atributo. image

La sección Relaciones funciona igual que la de atributos. Para cada relación listada, se debe escribir su traducción en el campo de texto de la columna Etiqueta. image

Una vez completadas todas las traducciones, se debe hacer clic en el botón Guardar en la parte inferior del panel para aplicarlas.

Gestión de paquetes de traducción a través de la API

Sección titulada «Gestión de paquetes de traducción a través de la API»

La API proporciona endpoints para recuperar paquetes de traducción. La URL base para todos los endpoints es /api/v1/config/resources/.

Recupera una lista de los espacios de nombres disponibles para los paquetes de traducción.

Endpoint:

GET /api/v1/config/resources/namespaces?version=:version

Parámetros:

NombreTipoDesdeDescripción
versionstringqueryEl nombre de la versión a consultar

Respuesta de ejemplo:

{
"error": false,
"status": 200,
"message": "string",
"errors": [
{}
],
"data": [
"application",
"entities"
],
"pagination": {
"hasPreviousPage": true,
"hasNextPage": true,
"previousPage": 0,
"nextPage": 0,
"recordsTotal": 0,
"currentPage": 0,
"startIndex": 0,
"numPages": 0,
"limit": 0
}
}

Obtener paquetes de traducción específicos

Sección titulada «Obtener paquetes de traducción específicos»

Recupera paquetes de traducción específicos por idioma, espacio de nombres y nombres de paquetes.

Endpoint:

GET /api/v1/config/resources/:language/:namespace?version=:version&bundle[]=:bundleName1&bundle[]=:bundleName2

Parámetros:

NombreTipoDesdeDescripción
languagestringpathCódigo de idioma (por ejemplo, “en”, “es”)
namespacestringpathEspacio de nombres (por ejemplo, “application”, “entities”)
versionstringqueryEl nombre de la versión a la que pertenece el paquete
bundle[]stringqueryArreglo de nombres de paquetes que se quieren recuperar

Respuesta de ejemplo:

{
"error": false,
"status": 200,
"message": "string",
"errors": [
{}
],
"data": {
"id": "00000000-0000-0000-0000-1234567890AB",
"$meta": {
"engine": "string",
"format": "string",
"fallback": "string",
"language": "string",
"version": "string",
"name": "string",
"created": "string",
"modified": "string"
},
"en": {
"additionalProp1": "string",
"additionalProp2": "string",
"additionalProp3": "string"
},
"es": {
"additionalProp1": "string",
"additionalProp2": "string",
"additionalProp3": "string"
}
},
"pagination": {
"hasPreviousPage": true,
"hasNextPage": true,
"previousPage": 0,
"nextPage": 0,
"recordsTotal": 0,
"currentPage": 0,
"startIndex": 0,
"numPages": 0,
"limit": 0
}
}

Actualiza las traducciones de un paquete específico.

Endpoint:

PATCH /api/v1/config/resources/:language/:namespace?version=:version&bundle=:bundle

Parámetros:

NombreTipoDesdeDescripción
languagestringpathCódigo de idioma (por ejemplo, “en”, “es”)
namespacestringpathEspacio de nombres (por ejemplo, “application”, “entities”)
versionstringqueryEl nombre de la versión a la que pertenece el paquete
bundlestringqueryEl nombre del paquete que se está actualizando (valor de $meta.name)

Cuerpo de la solicitud:

{
"id": "00000000-0000-0000-0000-1234567890AB",
"en": {
"additionalProp1": "string",
"additionalProp2": "string",
"additionalProp3": "string"
},
"es": {
"additionalProp1": "string",
"additionalProp2": "string",
"additionalProp3": "string"
}
}

Respuesta de ejemplo:

{
"error": false,
"status": 200,
"message": "string",
"errors": [
{}
],
"data": {
"id": "22b9f18a-493a-430d-9657-1261a3f9a4e9",
"$meta": {
"engine": "string",
"format": "string",
"fallback": "string",
"language": "string",
"version": "string",
"name": "string",
"created": "string",
"modified": "string"
},
"en": {
"additionalProp1": "string",
"additionalProp2": "string",
"additionalProp3": "string"
},
"es": {
"additionalProp1": "string",
"additionalProp2": "string",
"additionalProp3": "string"
}
},
"pagination": {
"hasPreviousPage": true,
"hasNextPage": true,
"previousPage": 0,
"nextPage": 0,
"recordsTotal": 0,
"currentPage": 0,
"startIndex": 0,
"numPages": 0,
"limit": 0
}
}