Génération d'extensions d'interface utilisateur de Digital SDK
Jutro inclut une commande d'interface de ligne de commande permettant de générer les extensions d'interface utilisateur Digital SDK avec Digital SDK. Cette page décrit toutes les étapes nécessaires requises pour terminer le processus de génération dans votre application Jutro.
Vous pouvez générer le Digital SDK sans les extensions d'interface utilisateur à l'aide de l'option Interface de ligne de commande de Digital SDK autonome. Toutefois, cela n'inclura pas les fonctionnalités liées à React.
Conditions préalables
Assurez-vous que vous remplissez les conditions suivantes avant d'exécuter la commande de génération :
-
Dépendances requises
Vous disposez d'une application Jutro avec les dépendances suivantes :@jutro/sdk-internal@jutro/schema-adapter-components@digitalsdk/internal
npm installdoit être exécuté avant la commande de génération. -
Configuration de la génération
Un fichier de configuration contenant toutes les informations nécessaires au processus de génération est disponible.
Commande de génération
Une fois toutes les conditions préalables remplies, vous pouvez exécuter la commande generate:digital-sdk à partir du répertoire racine de votre application Jutro :
npm run jutro generate:digital-sdk
Cette commande extrait les spécifications OpenAPI et les schémas d'entité des instances InsuranceSuite spécifiées dans le fichier de configuration. Pour cette raison, l'interface de ligne de commande vous demandera les identifiants correspondants.
Les résultats de la génération seront placés dans le répertoire src/generated de votre application Jutro. Pour en savoir plus sur ce qui est généré, reportez-vous à la page Surface d'API d'extensions de l'interface utilisateur de Digital SDK.
Il existe une option facultative outputPath qui vous permet de spécifier le chemin d'accès à l'application Jutro cible. Le chemin de sortie doit toujours pointer vers une application Jutro avec les dépendances requises installées.
Fichier de configuration
À l'instar des autres commandes de l'interface de ligne de commande Jutro, generate:digital-sdk récupère un fichier de configuration à partir des emplacements suivants, en fonction de votre système d'exploitation :
- Windows :
C:\Users\{user}\AppData\Local\@jutro\cli-platform\sdk-generator\config.json - macOS :
~/.config/@jutro/cli-platform/sdk-generator/config.json
Ce fichier de configuration contient un objet JSON avec toutes les propriétés applicables à l'interface de ligne de commande du Digital SDK autonome.
disableSchemaGeneration est définie sur true, les extensions d'interface utilisateur ne seront pas générées.Voici un exemple de fichier de configuration permettant de générer un SDK à la fois pour PolicyCenter et ClaimCenter :
{
"generators": [
{
"name": "PcSdk",
"target": "PC",
"targetUrl": "https://your-policycenter-url"
},
{
"name": "CcSdk",
"target": "CC",
"targetUrl": "https://your-claimcenter-url"
}
]
}
Propriétés facultatives
Il existe deux types de propriétés facultatives que vous pouvez ajouter à votre fichier de configuration :
-
La propriété
optInFeaturespeut être utilisée pour ajouter n’importe quelle fonctionnalité facultative de Digital SDK. Ces fonctionnalités sont détaillées dans la documentation sur le SDK Digital. Toutes les fonctionnalités contrôlées paroptInFeaturessont appliquées à tous les générateurs lorsqu’elles sont activées.Tip: L’utilisation de l’objetoptInFeaturespour activer la fonction facultativejsonSchemaWithFieldsDynamicCalculationpeut aider à générer des extensions d’interface utilisateur de Digital SDK supplémentaires. Cette fonction facultative permet d’obtenir un type plus étroit et plus explicite que le générateur peut utiliser pour mieux identifier les extensions d’interface utilisateur Digital pouvant être générées. -
La propriété
jutroUtilsForDigitalSdkConfigest disponible pour les variables de configuration supplémentaires propres aux extensions de l’interface utilisateur de Digital SDK. Les premiers enfants de la propriétéjutroUtilsForDigitalSdkConfigsont les noms des générateurs définis dans la propriétégenerators. Cela vous permet d’activer les fonctions facultatives générateur par générateur.
Ces fonctionnalités sont ajoutées en tant qu’objets supplémentaires à votre fichier de configuration. Par exemple, l’extrait suivant montre comment modifier le fichier de configuration précédent pour activer certaines fonctions facultatives.
{
"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"]
}
}
}
}
Forcer la génération d'extensions au niveau des champs
Une partie des fonctionnalités des extensions d'interface utilisateur de Digital SDK est uniquement disponible pour les entités utilisant le type JSONSchemaWithFields (et d'autres types spécifiques à JobLines) dans le Digital SDK :
- Composants React générés pour les champs d'entité.
- La propriété
fieldsrenvoyée par les crochets d'entité.
La dépendance JSONSchemaGW ne garantit pas que toutes les propriétés de schéma de niveau racine puissent contenir des valeurs primitives ou être représentées en tant que champs d'interface utilisateur. Toutefois, certaines propriétés de ces entités pourraient en fait correspondre à cette description, et elles ne sont actuellement pas prises en charge par défaut avec cette extension au niveau du champ.
La propriété dangerouslyForceEntityFieldGeneration vous permet de forcer la génération d'extensions d'interface utilisateur au niveau des champs pour une entité, même si elle n'est pas conforme au type JSONSchemaWithFields.
Bien que le générateur d'extensions d'interface utilisateur de Digital SDK soit conçu pour ignorer les propriétés de schéma qui ne sont pas considérées comme des champs, l'utilisation d'entités JSONSchemaGW rend le résultat du processus de génération moins prévisible.
Dans l'exemple suivant, l'entité Account de l'API job du SDK PcSdk est configurée pour forcer la génération d'extensions d'interface utilisateur au niveau des champs.
{
"generators": [
{
"name": "PcSdk",
"target": "PC",
"targetUrl": "your-policycenter-url/"
}
],
"jutroUtilsForDigitalSdkConfig": {
"PcSdk": {
"dangerouslyForceEntityFieldGeneration": {
"job": ["Account"]
}
}
}
}