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.
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:
-
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 installantes del comando de generación. -
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.
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:
-
La propiedad
optInFeaturesse 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 poroptInFeaturesse aplica a todos los generadores cuando está habilitada.Tip: El uso del objetooptInFeaturespara habilitar la función opcionaljsonSchemaWithFieldsDynamicCalculationpuede 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. -
La propiedad
jutroUtilsForDigitalSdkConfigse 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 propiedadjutroUtilsForDigitalSdkConfigson los nombres de los generadores definidos en la propiedadgenerators. 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
fieldsdevuelta 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.
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"]
}
}
}
}