Passer au contenu principal

Commandes de l'interface de ligne de commande de la plate-forme Jutro

L'interface de ligne de commande de Jutro Digital Platform utilise une commande de base jutro, avec des commandes facultatives selon la fonctionnalité :

Par exemple, vous pouvez utiliser la commande generate avec l'argument themes pour créer un fichier .css pouvant être utilisé pour une nouvelle définition de thème dans une application Jutro.

jutro generate:themes

Sur cette page, vous pouvez découvrir les points suivants :

  • Options et commandes fournies par l'interface de ligne de commande de Jutro Digital Platform
  • Comment exécuter ces commandes
Tip: Les commandes cli-platform de Jutro doivent être exécutées à partir de la

racine de votre application Jutro.

Quelles sont les fonctionnalités de l'interface de ligne de commande de la plate-forme Jutro ?​

Pour connaître toutes les commandes disponibles dans l'interface de ligne de commande de la plate-forme Jutro, exécutez :

jutro --help

Vous obtiendrez un résultat similaire à celui qui suit :

The CLI tool for Jutro Digital Platform

VERSION
@jutro/cli-platform/0.17.2-next.0 darwin-x64 node-v16.14.2

USAGE
$ jutro [COMMAND]

TOPICS
generate Generates i18n translations for your Jutro app
validate Validates your Jutro app to ensure that it follows Guidewire standards

Vous pouvez également trouver les options de commande à l'aide de la commande suivante :

jutro generate --help

Pour obtenir plus d’informations sur les commandes de fonction individuelles, telles que themes, exécutez la commande suivante :

jutro generate:themes --help

Liste des commandes​

Les commandes suivantes sont disponibles dans la CLI de la plate-forme Jutro :

Commandes de codemod​

CommandeDescription
Lien
jutro codemod:applyExécute des scripts de codemod pour mettre à jour le code de votre application.Lien vers la section

Commandes de génération​

CommandeDescription
Lien
jutro generate:i18nGénère des traductions d’internationalisation pour votre application Jutro.Lien vers la section
jutro generate:themesGénère un fichier de définition de thème pour votre application Jutro.Lien vers la section
jutro generate:buildInfoGénère des informations de build pour l’application et les écrit dans un fichier JSON.Lien vers la section
jutro generate:componentGénère des composants de base.Lien vers la section
jutro generate:digital-sdkGénère un SDK pour une application Jutro.Lien vers la section

Commandes de validation​

CommandeDescription
Lien
jutro validate:dependenciesValide les dépendances de votre application Jutro.Lien vers la section
jutro validate:foldersValide la structure de dossiers de votre application Jutro.Lien vers la section
jutro validate:i18nValide les traductions d’internationalisation dans votre application Jutro.Lien vers la section
jutro validate:lintersValide la configuration des outils linter dans votre application Jutro.Lien vers la section
jutro validate:migrationsValide les migrations dans votre application Jutro.Lien vers la section
jutro validate:testsValide les tests définis dans votre application Jutro.Lien vers la section
jutro validate:lighthouseGénère un rapport Lighthouse dans votre application Jutro.Lien vers la section
jutro validate:metadataValide les fichiers de métadonnées par rapport à un schéma spécifié.Lien vers la section

Commandes d'application​

CommandeDescription
Lien
jutro app:testsExécute les tests d’unité de votre applicationLien vers la section
jutro app:startRegroupe et démarre votre application JutroLien vers la section
jutro app:buildCrée une version de l’applicationLien vers la section

Commandes de codemod​

Appliquer des codemods à votre application​

jutro codemod:apply --name=<CODEMOD-NAME>

La commande codemod:apply permet d’exécuter des codemods qui modifient le code de votre application. Vous pouvez utiliser un codemod à la fois en utilisant l’argument --name. Pour en savoir plus sur les codemods disponibles, consultez la documentation sur les codemods

Paramètre
DescriptionValeur par défaut
--nameNom d’un codemod à exécuter.Aucune valeur par défaut.
--codemodsModuleEmplacement du module contenant le codemod que vous souhaitez exécuter. Si aucune version locale n’est trouvée, npm sera utilisé pour installer le module dans un dossier temporaire.@jutro/codemods
--projectPathChemin d’accès au répertoire auquel les codemods seront appliqués. Il peut s’agir d’une racine de projet ou d’un sous-répertoire d’un projet..
--tmpDirRépertoire temporaire à utiliser pour la mise en cache des codemods. Si aucune valeur n’est renseignée, le répertoire temporaire du système est utilisé.Répertoire temporaire du système.

Générer des commandes​

Générer des traductions d’internationalisation​

jutro generate:i18n

La commande generate:i18n génère des traductions d’internationalisation (i18n) pour votre application Jutro. La CLI extrait les messages de tous les fichiers JSX et de métadonnées trouvés dans l’application et les regroupe dans deux fichiers de traduction par défaut :

  • src/i18n/lang.json : le fichier de traduction du modèle
  • src/i18n/yy.json : le fichier de traduction Sherlock

Le fichier de modèle lang.json doit être utilisé comme base pour traduire votre application dans d’autres langues. Vous devez créer des fichiers de traduction pour chaque langue, par exemple en.json pour l’anglais et de.json pour l’allemand. Placez-les ensuite dans src/i18n dans votre dossier d’application afin qu’ils puissent être récupérés par Jutro.

Note: N'apportez pas de modifications au fichier lang.json, car celles-ci seront écrasées sur chaque build d'application.

La traduction Sherlock est utilisée pour identifier les clés non traduites dans votre code.

Les fichiers générés présentent la structure suivante :

lang.json:

{
"jutro-app.Pages.Settings.header": "Settings",
"jutro-app.Pages.Settings.title": "Settings",
"jutro-app.app.commonAvatar.welcomePage": "Go to the Welcome Page"
}

yy.json:

{
"jutro-app.Pages.Settings.header": "[2TbH15_Settings]",
"jutro-app.Pages.Settings.title": "[2IeCt0_Settings]",
"jutro-app.app.commonAvatar.welcomePage": "[3OqyfH_Go to the Welcome Page]"
}

La commande generate:i18n accepte les paramètres suivants :

Paramètre
DescriptionValeur par défaut
--metadataMessageOutputDirDéfinit le répertoire de sortie des messages de métadonnées extraits.i18n
--jsxMessageOutputPathDéfinit le répertoire de sortie des messages JSX extraits.i18n/src/js-jsx-strings.json
--messagesFileNamePatternDéfinit où sont stockés les messages extraits.i18n/src/**/*.json
--mergeBizCompOutputDirDéfinit le nom de fichier de sortie des traductions fusionnées.i18n/biz-comp-translations
--languageOutputFileNameDéfinit le modèle du fichier de sortie de la langue.lang.json
--pseudoTypeDéfinit le pseudo-type à utiliser. Il peut s’agir de 'expansion', 'sherlock' ou 'both'.sherlock
--pseudoOutputFileNameDéfinit le modèle du nom de fichier de sortie.yy.json
--editorProjectIdDéfinit l’ID de projet de l’éditeur et active les traductions i18n de l’éditeur.ID dans editorProject.json
--editorMessageOutputPathDéfinit le répertoire de sortie des messages de l'éditeur extraits.i18n/editorTranslations.json
--helpImprime les détails de la commande dans le terminal.Aucun argument n’est accepté.

Générer des définitions de thème pour les applications Jutro​

jutro generate:themes

La commande generate:themes convertit et associe le thème défini des jetons de conception fournis au thème défini par des variables CSS pouvant être utilisées dans l’application Jutro. L’interface de ligne de commande (CLI) utilise le fichier .themesConfig.json pour générer un fichier .css basé sur les fichiers d’entrée de jeton de conception définis dans la configuration.

Lorsqu’un fichier .themesConfig.json n’est pas présent et que vous exécutez la commande, la CLI vous invite à indiquer les informations suivantes si elles ne sont pas déjà fournies à l’aide des paramètres :

  1. Le nom du thème.
  2. L'expression indiquant le chemin d'entrée du jeton de thème (le chemin par défaut est src/tokens/**/*.json)
  3. Le nom du fichier de sortie
  4. La variable personnalisée facultative vers le chemin de mappage du jeton
  5. Le chemin de transformation personnalisé facultatif
  6. La possibilité d'ajouter un autre thème

La commande generate:themes accepte les paramètres suivants :

Paramètre
DescriptionValeur par défaut
--configPath,-cDéfinit le chemin d’accès au répertoire contenant le fichier .themesConfig.json.Répertoire de travail actuel.
--encapsulateThemes,-sLorsque l’application est utilisée comme module micro front-end, les thèmes générés sont définis pour cette application, et non pour l’application shell. Le sélecteur CSS inclut l’élément scopeName de l’application.false
--helpImprime les détails de la commande dans le terminal.Aucun argument n’est accepté.
--clearCacheVide le cache. Utilisez cette option pour vous connecter en tant qu’utilisateur différent.Aucun argument n’est accepté.
--cliInfoAffiche des informations sur la configuration et l’emplacement du fichier cache.Aucun argument n’est accepté.
--resetRéinitialise la configuration par défaut et vide le cache.Aucun argument n’est accepté.
Note: Pour le paramètre --encapsulateThemes, l’élément scopeName d'une application micro front-end est déterminé par la variable d’environnement JUTRO_APP_ID.

Générer des informations de build pour les applications Jutro​

jutro generate:buildInfo

La commande generate:buildInfo génère des informations de build pour l’application et les écrit dans un fichier JSON. Le fichier généré peut être utilisé comme ressource statique.

Les informations de build incluent les éléments suivants :

  1. Nom de l'application.
  2. Version de l'application.
  3. Version Jutro.
  4. Commit hash.

Voici un exemple de fichier d’informations de build :

{
"APPLICATION_NAME":"gw-templates-starter-standalone",
"APPLICATION_VERSION":"1.8.1-next.0",
"JUTRO_VERSION":"10.9.2",
"COMMIT_HASH":"b7cfb0f2"
}

La CLI vous invite à entrer les informations suivantes si elles ne sont pas déjà fournies en tant que paramètres :

  1. Répertoire de sortie.
  2. Nom du fichier de sortie.
  3. Chemin d’accès au répertoire du package.

La commande generate:buildInfo accepte les paramètres suivants :

Paramètre
DescriptionValeur par défaut
--outputDir,-dSpécifie le répertoire d’application dans lequel écrire le fichier d’informations de build.src/assets
--outputFile,-fSpécifie le nom du fichier dans lequel écrire les informations de build. Notez que vous ne devez pas inclure l’extension de fichier.build
--packageDir,-pIndique le répertoire contenant le fichier d’application package.json.Répertoire de travail actuel.
--buildValues,-bSpécifie les valeurs de build personnalisées sous la forme « NAME:VALUE NAME2:VALUE2… ».Chaîne vide "".
--helpImprime les détails de la commande dans le terminal.Aucun argument n’est accepté.
--clearCacheVide le cache. Utilisez cette option pour vous connecter en tant qu’utilisateur différent.Aucun argument n’est accepté.
--cliInfoAffiche des informations sur la configuration et l’emplacement du fichier cache.Aucun argument n’est accepté.
--resetRéinitialise la configuration par défaut et vide le cache.Aucun argument n’est accepté.

Générer un composant​

jutro generate:component

La commande generate:component génère un composant React de base. La CLI valide l’entrée, génère le composant, inclut les dépendances nécessaires et exécute les outils linter pour garantir la qualité du code.

Par exemple, si vous utilisez cette commande pour générer un composant nommé Sample, elle générera les fichiers suivants :

Sample/
├── index.ts Exports the component from Sample.tsx
├── Sample.messages.ts An example of a messages for internationalization.
├── Sample.module.scss CSS formatting rules tags with the ".sample" class.
└── Sample.tsx A react component that displays a div that contained the translated text from Sample.messages.

Vous pouvez utiliser cette commande pour vous aider à créer des composants personnalisés en créant une base sur laquelle vous pouvez créer votre composant. Il vous suffit de mettre à jour le fichier Sample.tsx avec le code requis, puis d’utiliser les messages et les fichiers CSS pour ajouter du texte traduisible et la mise en forme, respectivement.

La CLI vous invite à entrer les informations suivantes si elles ne sont pas déjà fournies en tant que paramètres :

  1. Nom du composant à générer.
  2. Chemin d’accès du fichier de sortie.

La commande generate:component accepte les paramètres suivants :

Paramètre
DescriptionValeur par défaut
--name,-nSpécifie le nom du composant généré.Aucune valeur par défaut.
--path,-pIndique le chemin d’accès du dossier de destination pour le composant généré.Aucune valeur par défaut.
--helpImprime les détails de la commande dans le terminal.Aucun argument n’est accepté.
--clearCacheVide le cache. Utilisez cette option pour vous connecter en tant qu’utilisateur différent.Aucun argument n’est accepté.
--cliInfoAffiche des informations sur la configuration et l’emplacement du fichier cache.Aucun argument n’est accepté.
--resetRéinitialise la configuration par défaut et vide le cache.Aucun argument n’est accepté.

Générer le SDK Digital​

Pour en savoir plus sur la manière de générer le SDK Digital à l'aide de l'interface de ligne de commande de la plate-forme Jutro, reportez-vous à Génération et configuration du SDK

Générer un exemple de formulaire Jutro​

Cette commande génère un exemple de formulaire à l’aide du composant Jutro MetadataForm obsolète, mais le code qu’elle crée n’est pas valide. Son utilisation après la version Innsbruck n’est pas recommandée.

Générer un composant d’assistant Jutro​

Cette commande génère un composant d’assistant Jutro à l’aide de composants de métadonnées obsolètes, mais le code qu’elle crée n’est pas valide. Son utilisation après la version Innsbruck n’est pas recommandée.

Générer la page​

Cette commande génère un composant de page à l’aide de composants de métadonnées obsolètes, mais le code qu’elle crée n’est pas valide. Son utilisation après la version Innsbruck n’est pas recommandée.

Générer un journal des modifications​

Cette commande est utilisée dans le cadre du processus de développement Jutro et ne fonctionne pas lorsqu’elle est utilisée par des utilisateurs externes.

Commandes de validation​

Valider les dépendances de votre application Jutro​

jutro validate:dependencies

La commande validate:dependencies vérifie les dépendances de votre projet. Elle compare le fichier package.json du projet avec les modules que votre projet utilise et fournit une liste de toutes les dépendances inutilisées, manquantes, en double ou dont la version n’est pas définie strictement.

Cet outil vérifie également invalidFiles et invalidDirs :

  • La propriété invalidFiles contient des fichiers présentant des erreurs de syntaxe ou d’autorisation. Les détails de l’erreur fournissent la valeur. La recherche ne stocke qu’une seule erreur.
  • La propriété invalidDirs contient des répertoires avec des erreurs d’autorisation. Les détails de l’erreur fournissent la valeur.

Vous devez ajouter un fichier .depcheckrc.js à la racine du projet qui répertorie les modules à ignorer. Le fichier .depcheckrc.js prend la forme suivante :

const options = {
ignoreMatches: [
'@jutro/auth',
'@jutro/cli-snapshot-tools',
'@jutro/cli-snapshots',
'@jutro/components',
'@jutro/platform',
'@jutro/prop-types',
'jest-extended',
'src',
'jest-teamcity-reporter',
'json5-jest',
'lerna',
'lint-staged',
'prop-types',
'ts-jest',
],
};

module.exports = { options };

La commande validate:dependencies accepte les paramètres suivants :

Paramètre
DescriptionValeur par défaut
--globIgnorePatternsModèles de fichiers à ignorer.'**/__mocks__/**', '**/__local_mocks__/**', '**/basic.metadata.schema.json', '**/dist/**', '**/node_modules/**', '**/src/generated/**'
--packageFileNamePatternNom du fichier de package.**/package.json

Valider les dossiers de votre application Jutro​

jutro validate:folders

La commande validate:folders valide les fichiers requis et la structure de l'application par rapport à une structure d'application Jutro par défaut. La commande consigne les fichiers ou dossiers manquants.

Cette commande vous aide à vous assurer que votre application correspond à la structure attendue par nos tâches CICD.

La commande s’attend à ce que votre application respecte la structure suivante :

.
├── src
│ ├── app
│ │ ├── App.{tsx,js}
│ │ ├── App.messages.{ts,js}
│ │ ├── App.module.scss
│ │ ├── App.test.{tsx,js}
│ ├── assets
│ │ ├── fonts
│ │ ├── icons
│ │ ├── images
│ │ ├── styles
│ │ └── manifest.json
│ ├── i18n
│ │ └── en.json
│ ├── config
│ │ └── config.json
├── .babelrc
├── .editorconfig
├── .env
├── .env.production
├── .depcheckrc.js
├── .eslint.js
├── .eslintignore
├── .eslintrc.js
├── .gitignore
├── .nvmrc
├── .prettierignore
├── .prettierrc.js
├── .stylelintignore
├── .stylelintrc
├── commitlint.config.js
├── README.md
├── tsconfig.app.json
└── typings.d.ts
Warning: Si votre application ne correspond pas à cette structure, il est possible que certaines parties de celle-ci soient masquées dans les pipelines de validation CICD.

La commande validate:folders accepte le paramètre suivant :

|

Paramètre
| Description | Valeur par défaut | | --custom-packages | Modification de la structure de validation de package personnalisée, voir ici pour plus de détails. | Aucun argument n’est accepté. |

Paramètre de packages personnalisés​

Vous pouvez ajouter le paramètre --custom-packages pour valider une structure basée sur des pipelines pour votre référentiel de packages personnalisés. Une structure valide se présente comme suit :

.
├── package.json
└── packages/
└── {package-name}/
├── package.json
└── src/
└── index.ts

L'interface de ligne de commande se ferme avec une erreur dans les situations suivantes :

  • Il n'y a pas de répertoire /packages dans la racine
  • Il n'y a pas de fichier package.json dans la racine
  • Tous les répertoires /packages/{package-name} n’ont pas à la fois un fichier package.json et /src/index.js.

Valider les traductions i18n dans votre application Jutro​

jutro validate:i18n

La commande validate:i18n régénère la traduction à jour dans lang.json. Elle vérifie ensuite si le fichier de traduction spécifié par l’indicateur --translationFileName (valeur par défaut :en.json) correspond au fichier généré.

La commande validate:i18n accepte les paramètres suivants :

Paramètre
DescriptionValeur par défaut
--jsxFileNamePattern,-jNom de fichier de vos fichiers JSX.src/**/*.{ts,tsx,js,jsx}
--metadataFileNamePattern,-mModèle du nom de fichier pour vos fichiers JSON de métadonnées.src/**/*.{metadata,config}.json5
--translationOutputDir,-oRépertoire de stockage des messages sortants qui combinent les traductions par défaut et extraites.src/i18n
--fileNameIgnorePatternListe des modèles de noms de fichiers à ignorer, séparés par des virgules.
**/__mocks__/**,**/__local_mocks__/**,**/basic.metadata.schema.json,**/dist/**,**/node_modules/**
--translationFileNameFichier de traduction à vérifier par rapport à lang.json.en.json
--helpImprime les détails de la commande dans le terminal.Aucun argument n’est accepté.
--clearCacheVide le cache. Utilisez cette option pour vous connecter en tant qu’utilisateur différent.Aucun argument n’est accepté.
--cliInfoAffiche des informations sur la configuration et l’emplacement du fichier cache.Aucun argument n’est accepté.
--resetRéinitialise la configuration par défaut et vide le cache.Aucun argument n’est accepté.

Valider les outils linter dans votre application Jutro​

jutro validate:linters

La commande validate:linters exécute eslint, stylelint et prettier dans l'application, et vous avertit en cas de problème. La commande utilise process.cwd pour exécuter les outils linter via la ligne de commande dans le répertoire node_module/.bin.

Note: Cette commande n’utilise pas de scripts de vérification Lint qui peuvent être présents dans le fichier package.json.
Warning: Pour exécuter cette commande, vous devez installer les packages suivants dans le répertoire node_modules :
  • prettier
  • eslint
  • stylelint

La commande validate:linters accepte les paramètres suivants :

Paramètre
DescriptionValeur par défaut
--eslintFlagsRemplace les paramètres par défaut pour eslint"**/*.{ts,tsx,js,jsx}"
--eslintMetadataFlagsRemplace les paramètres par défaut pour les composants de métadonnées eslint"**/*.json5" --parser jsonc-eslint-parser --no-error-on-unmatched-pattern
--stylelintFlagsRemplace les paramètres par défaut pour stylelint"**/*.{scss, css}"
--prettierFlagsRemplace les paramètres par défaut pour prettier--check "${ALL_FILES_PATTERN}"1

1: ALL_FILES_PATTERN est défini dans @jutro/cli-common/ALL_FILES_PATTERN. Sa valeur est {ts,tsx,js,jsx,json,json5,scss,css,html,mdx}.

Détails de l'outil linter​

eslint​

Ce linter est exécuté sur tous les fichiers TypeScript et JavaScript conformément à la configuration ESLint de votre application (.eslintrc.js), qui, si elle est correctement implémentée, est basée sur le package @jutro/eslint-config de Jutro.

Composants de métadonnées eslint​

Ce linter est exécuté sur tous les fichiers de métadonnées Jutro (json5) conformément à la configuration ESLint de votre application (.eslintrc.js), qui, si elle est correctement implémentée, est basée sur le package @jutro/eslint-config de Jutro.

Warning: Le remplacement eslintMetadataFlags n’est pas recommandé, car Jutro attend un certain format.
stylelint​

Ce linter est exécuté sur tous les fichiers scss et css conformément à la configuration Stylelint de votre application (.stylelintrc), qui, si elle est correctement implémentée, est basée sur le package @jutro/stylelint-config de Jutro.

prettier​

Le formateur de code « opinionated » prettierest exécuté sur tous les fichiers ts, tsx, js , jsx, json, json5, scss, css, html et mdx selon la configuration Prettier de votre application (.prettierrc), qui, si elle est correctement implémentée, est basée sur le fichier @jutro/build-tools/prettier-config/index de Jutro.

Valider les packages de migration dans votre application Jutro​

Cette commande est utilisée dans le cadre du processus de développement Jutro et ne fonctionne pas lorsqu’elle est utilisée par des utilisateurs externes.

Valider les tests dans votre application Jutro​

jutro validate:tests
Warning: La commande validate:tests est désormais obsolète. Utilisez plutôt la commande jutro app:tests pour exécuter les tests d’unité de votre application.

Générer un rapport Lighthouse pour votre application Jutro​

jutro validate:lighthouse

La commande validate:lighthouse crée un rapport lighthouse pour votre application Jutro.

La commande validate:lighthouse accepte les paramètres suivants :

Paramètre
DescriptionValeur par défaut
--urlURL de votre applicationhttp://localhost:3001/
--configChemin relatif d'un fichier de configuration personnaliséUn fichier .lighthouserc dans le répertoire racine du projet.
--outputMode de sortie du rapport séparé par des virgules. Les modes acceptés sont 'html', 'json' ou 'csv'html
--outputDirRépertoire de sortie du rapportRépertoire courant.
--loginScriptPathChemin d’accès du script de connexion Puppeteer.Aucune valeur par défaut.
--usernameNom d’utilisateur du script de connexion.Aucune valeur par défaut.
--passwordMot de passe du script de connexion.Aucune valeur par défaut.

Configuration Lighthouse​

Le chemin d'accès doit être absolu ou relatif par rapport au répertoire racine du projet. Si le paramètre n’est pas fourni, le chemin d’accès correspond par défaut à un fichier .lighthouserc du répertoire racine du projet. Si ce fichier est introuvable, il utilise la configuration Lighthouse par défaut.

Le fichier de configuration peut être un fichier JSON, JS ou XML.

Pour connaître le format de configuration, reportez-vous à https://github.com/GoogleChrome/lighthouse/blob/master/docs/configuration.md

Script de connexion Puppeteer​

Si l'authentification est activée pour votre application, vous pouvez spécifier votre propre script pour effectuer la connexion avant la génération du rapport.

Le script de connexion recevra l'instance du navigateur et, s'ils sont fournis, l'identifiant et le mot de passe transmis dans les arguments de la commande.

Le script de connexion doit ressembler à ceci :

const page = await browser.newPage();
await page.goto('http://localhost:3001'); // Application URL matching the one you give from the command
const usernameInput = 'input[name="username"]';
const passwordInput = 'input[name="password"]';
await page.waitForSelector(usernameInput);
await page.type(usernameInput, username); // username from the -l in the command
await page.keyboard.press('Enter');
await page.waitForSelector(passwordInput);
await page.type(usernameInput, username);
await page.type(passwordInput, password); // password from the -p in the command
await page.keyboard.press('Enter');
Note: Vous ne pouvez pas redéfinir les variables nommées browser, username ou password lorsqu'elles sont transmises de l'interface de ligne de commande à votre script.

Un script de connexion par défaut est fourni pour notre page de connexion Okta par défaut. Il est donc possible de l'exécuter en ne transmettant que le nom d'utilisateur et le mot de passe :

jutro validate:lighthouse -u http://localhost:3001 -o ./lighthouse -l username -p password

Valider les métadonnées dans votre application Jutro​

jutro validate:metadata

La commande validate:metadata valide vos fichiers de métadonnées par rapport à un schéma spécifié et journalise les résultats de la validation, y compris les erreurs et les messages de réussite.

La commande validate:metadata accepte les paramètres suivants :

Paramètre
DescriptionValeur par défaut
--fileNamePattern ou -fSpécifie le modèle pour les noms de fichiers de métadonnées correspondants à valider.src/**/*.{metadata,config}.json5
--schemaPath,-sSpécifie le chemin d’accès du fichier de schéma utilisé pour valider les fichiers de métadonnées.Aucune valeur par défaut.
--helpImprime les détails de la commande dans le terminal.Aucun argument n’est accepté.
--clearCacheVide le cache. Utilisez cette option pour vous connecter en tant qu’utilisateur différent.Aucun argument n’est accepté.
--cliInfoAffiche des informations sur la configuration et l’emplacement du fichier cache.Aucun argument n’est accepté.
--resetRéinitialise la configuration par défaut et vide le cache.Aucun argument n’est accepté.

Commandes d'application​

Exécuter la commande des tests d’unité de l’application​

jutro app:tests

La commande app:tests utilise jest pour exécuter tous les tests d’unité définis dans votre application et consigne les tests réussis et échoués.

La commande app:tests accepte les paramètres suivants :

Paramètre
DescriptionValeur par défaut
--jestConfigPathChemin d’accès de votre fichier de configuration jest.jest.config.js
--overridesPathChemin d’accès d'un fichier de remplacement permettant de remplacer l’une de vos valeurs de configuration d’application pour le test.overrides.config.js
--verifySi true, l’installation de l’application est vérifiée avant le lancement des tests.true

Par ailleurs, la commande accepte n’importe quel paramètre CLI jest. Reportez-vous à la documentation jest pour en savoir plus.

Commande de démarrage de l’application​

jutro app:start

app:start regroupe et démarre votre application sur votre serveur local. Elle peut être exécutée en mode development ou production. mode est utilisé pour définir les variables process.env.NODE_ENV et process.env.BABEL_ENV globales, ainsi que pour faire basculer React dans le bon mode. Une fois votre application regroupée, une nouvelle fenêtre de navigateur s'ouvre avec votre application en cours d'exécution.

Note: Cette commande nécessite que react soit une dépendance dans package.json.

Cette commande lit les paramètres de proxy à partir de package.json.

La commande app:start accepte les paramètres suivants :

Paramètre
DescriptionValeur par défaut
--modeL’environnement à créer et à démarrer. Accepte development ou production comme valeurs.development
--verifyVérifiez l’installation de l’application avant de la démarrer.true

Variables d’environnement de démarrage d’application​

Les variables d’environnement suivantes sont utilisées pour définir les options de votre application lorsque vous la démarrez avec cette commande.

Variable d'environnement
DescriptionValeur par défaut
process.env.PORTPort à utiliser3000
process.env.HOSTHôte à utiliser0.0.0.0
process.env.HTTPSUtilisation de http ou httpshttp
process.env.CISi true, l’application est exécutée dans un environnement d’intégration continue (CI)false

Commande de build d’application​

jutro app:build

Cette commande app:build crée le build de l'application avec webpack et l'enregistre dans le dossier dist.

Les plug-ins spécifiques à webpack suivants sont utilisés pour créer ce build :

Plug-inFinalité
HtmlWebpackPluginGénère un fichier index.html avec des balises <script> et <link> correctes pour les ressources regroupées.
MiniCssExtractPluginExtrait le fichier CSS dans des fichiers distincts au lieu de l’inclure dans des lots JavaScript.
TerserPluginRéduit JavaScript pour réduire la taille des lots.
CssMinimizerPluginRéduit les fichiers CSS pour une sortie optimisée.
ReactRefreshWebpackPluginActive l’actualisation rapide React pour une meilleure expérience de développement.
WebpackManifestPluginGénère un fichier manifeste qui associe les noms des fichiers source aux fichiers de sortie.
InlineChunkHtmlPluginIntègre de petits blocs JS dans le code HTML pour éviter les requêtes réseau supplémentaires.
InterpolateHtmlPluginRemplace les espaces réservés dans le code HTML (par exemple, %PUBLIC_URL%) par des variables d’environnement.
ModuleNotFoundPlugin1Fournit des messages d’erreur plus clairs lorsqu’un module est manquant.
WorkboxWebpackPluginGénère un script service worker pour les applications Web progressives.
ForkTsCheckerWebpackPluginExécute la vérification du type TypeScript dans un processus distinct pour améliorer la rapidité de compilation.

1 Ce plug-in est inclus dans le package react-dev-utils. Il n’existe pas de documentation externe fournissant plus de détails sur sa fonction.

Le format de sortie du build ressemble à ceci :

dist
├── asset-manifest.json
├── fonts <-- static folder also contains fonts
├── icons <-- static folder also contains icons
├── images
├── index.html
├── manifest.json
├── OidcServiceWorker.js <-- For OpenID
├── OidcTrustedDomains.js <-- For OpenID (Copy of packages/jutro-auth/OidcTrustedDomains.js)
├── static
│ ├── js
│ │ ├── 159.33502e27.chunk.js <-- minimized Javascript code
│ │ └── main.c4b7edb6.js
│ └── media
│ ├── MaterialIcons-Outlined.1fe2097e362248bbeafd.woff2
│ └── SourceSansVariable-Roman.ttf.f1ed926fb59922a29b83.woff2
└── styles
└── theme
├── styleOverrides.css
└── variableOverrides.css
Note: Config files, for example .gitignore and depcheckrc.js, will also be copied into the dist folder

La commande app:build accepte les paramètres suivants :

Paramètre
DescriptionValeur par défaut
--mode, -mMode de création d’application. Les valeurs acceptées sont « production » ou « développement »production
--showProgress,-sMarquer pour afficher la progression du buildfalse
--no-showProgressForce --showProgress à passer à falsefalse
--writeBuildStatsToFile,-wIndicateur permettant d’écrire des statistiques de build dans un fichierfalse
--no-writeBuildStatsToFileForce --writeBuildStatsToFile à passer à falsefalse