Saltar al contenido principal

Generación de extensiones de interfaz de usuario del SDK de Digital

Jutro incluye un comando de la CLI para generar las extensiones de la interfaz de usuario del SDK de Digital junto con el SDK de Digital. En esta página, se describen todos los pasos necesarios para completar el proceso de generación dentro de su aplicación Jutro.

Note: Debido a que las extensiones de la interfaz de usuario del SDK de Digital tienen dependencias en React, no son adecuadas para las aplicaciones JavaScript/TypeScript estándares.

Puede generar el SDK de Digital sin las extensiones de la interfaz de usuario mediante la CLI del SDK de Digital independiente. Sin embargo, esto no incluirá funciones relacionadas con React.

Requisitos​

Asegúrese de cumplir con los siguientes requisitos antes de ejecutar el comando de generación:

  1. Dependencias requeridas
    Tiene una aplicación de Jutro con las siguientes dependencias:

    • @jutro/sdk-internal
    • @jutro/schema-adapter-components
    • @digitalsdk/internal

    Se debe ejecutar npm install antes del comando de generación.

  2. Configuración de generación
    Se dispone de un archivo de configuración con toda la información necesaria para el proceso de generación.

Comando de generación​

Una vez que se cumplan todos los requisitos, puede ejecutar el comando generate:digital-sdk desde el directorio raíz de su aplicación de Jutro:

npm run jutro generate:digital-sdk

Este comando recuperará las especificaciones de OpenAPI y los esquemas de entidad de las instancias de InsuranceSuite especificadas en el archivo de configuración. Por este motivo, la CLI solicitará las credenciales correspondientes.

Los resultados de la generación se ubicarán en el directorio src/generated de la aplicación de Jutro. Para obtener más información sobre lo que se genera, consulte la página sobre superficie de la API de extensiones de interfaz de usuario del SDK de Digital.

Existe una opción outputPath optativa que le permite especificar la ruta a la aplicación de Jutro de destino; la ruta de salida siempre debe apuntar a una aplicación de Jutro con las dependencias necesarias instaladas.

Archivo de configuración​

En consonancia con otros comandos de Jutro CLI, generate:digital-sdk obtiene un archivo de configuración desde las siguientes ubicaciones, según su sistema operativo:

  • Windows: C:\Users\{user}\AppData\Local\@jutro\cli-platform\sdk-generator\config.json
  • macOS: ~/.config/@jutro/cli-platform/sdk-generator/config.json

Este archivo de configuración contiene un objeto JSON con todas las propiedades aplicables a la CLI del SDK de Digital independiente.

Note: La generación de esquemas es necesaria para que se generen las extensiones de interfaz de usuario del SDK de Digital, por eso, si la propiedad disableSchemaGeneration se establece en true, no se generarán las extensiones de interfaz de usuario.

A continuación, se muestra un ejemplo de un archivo de configuración para generar un SDK para PolicyCenter y ClaimCenter:

{
"generators": [
{
"name": "PcSdk",
"target": "PC",
"targetUrl": "https://your-policycenter-url"
},
{
"name": "CcSdk",
"target": "CC",
"targetUrl": "https://your-claimcenter-url"
}
]
}

Propiedades opcionales​

Hay dos tipos de propiedades opcionales que puede agregar a su archivo de configuración:

  1. La propiedad optInFeatures se puede utilizar para agregar cualquiera de las funciones opcionales del SDK de Digital. Estas funciones se detallan en la documentación del SDK de Digital. Cualquier función controlada por optInFeatures se aplica a todos los generadores cuando está habilitada.

    Tip: El uso del objeto optInFeatures para habilitar la función opcional jsonSchemaWithFieldsDynamicCalculation puede ayudar a generar extensiones adicionales de la interfaz de usuario del SDK de Digital. Esta función opcional da como resultado una escritura más estrecha y explícita que el generador puede utilizar para identificar mejor qué extensiones de la interfaz de usuario de Digital se pueden generar.
  2. La propiedad jutroUtilsForDigitalSdkConfig se puede utilizar para las variables de configuración adicionales específicas de las extensiones de la interfaz de usuario del SDK de Digital. Los primeros elementos secundarios de la propiedad jutroUtilsForDigitalSdkConfig son los nombres de los generadores definidos en la propiedad generators. Esto le permite habilitar las funciones opcionales generador por generador.

Estas características se agregan como objetos adicionales a su archivo de configuración. Por ejemplo, el siguiente fragmento de código muestra cómo modificar el archivo de configuración anterior para activar algunas funciones opcionales.

{
"generators": [
{
"name": "PcSdk",
"target": "PC",
"targetUrl": "https://your-policycenter-url"
},
{
"name": "CcSdk",
"target": "CC",
"targetUrl": "https://your-claimcenter-url"
}
],
"optInFeatures": {
// this will apply to both generators
"jsonSchemaWithFieldsDynamicCalculation": true,
},
"jutroUtilsForDigitalSdkConfig": {
// "PcSdk" here is designating which generator will be amended
"PcSdk": {
"dangerouslyForceEntityFieldGeneration": {
"job": ["Account"]
}
}
}
}

Forzado de la generación de extensiones al nivel del campo​

Parte de la funcionalidad de las extensiones de la interfaz de usuario del SDK de Digital solo está disponible para las entidades que utilizan el tipo JSONSchemaWithFields (y otros tipos específicos de JobLines) en el SDK de Digital:

  • Componentes de React generados para los campos de entidad.
  • La propiedad fields devuelta por los ganchos de entidad.

La dependencia JSONSchemaGW no garantiza que todas las propiedades del esquema de nivel raíz puedan contener valores primitivos o representarse como campos de interfaz de usuario. Sin embargo, algunas de las propiedades de estas entidades podrían encajar en esta descripción y actualmente no son compatibles de forma predeterminada con esta extensión de nivel de campo.

La propiedad dangerouslyForceEntityFieldGeneration le permite forzar la generación de extensiones de interfaz de usuario al nivel del campo para una entidad, incluso si no es cumple con los requisitos del tipo JSONSchemaWithFields.

Warning: Esta propiedad debe utilizarse con precaución.

Aunque el generador de extensiones de la interfaz de usuario del SDK de Digital está diseñado para omitir las propiedades del esquema que no se consideran campos, trabajar con entidades JSONSchemaGW hace que el resultado del proceso de generación sea menos predecible.

En el siguiente ejemplo, la entidad Account de la API de job del SDK PcSdk está configurada para forzar la generación de extensiones de interfaz de usuario al nivel del campo.

{
"generators": [
{
"name": "PcSdk",
"target": "PC",
"targetUrl": "your-policycenter-url/"
}
],
"jutroUtilsForDigitalSdkConfig": {
"PcSdk": {
"dangerouslyForceEntityFieldGeneration": {
"job": ["Account"]
}
}
}
}
On this page