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
cli-platform de Jutro doivent être exécutées à partir de laracine 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
| Commande | Description | Lien |
|---|---|---|
| jutro codemod:apply | Exécute des scripts de codemod pour mettre à jour le code de votre application. | Lien vers la section |
Commandes de génération
| Commande | Description | Lien |
|---|---|---|
| jutro generate:i18n | Génère des traductions d’internationalisation pour votre application Jutro. | Lien vers la section |
| jutro generate:themes | Génère un fichier de définition de thème pour votre application Jutro. | Lien vers la section |
| jutro generate:buildInfo | Génère des informations de build pour l’application et les écrit dans un fichier JSON. | Lien vers la section |
| jutro generate:component | Génère des composants de base. | Lien vers la section |
| jutro generate:digital-sdk | Génère un SDK pour une application Jutro. | Lien vers la section |
Commandes de validation
| Commande | Description | Lien |
|---|---|---|
| jutro validate:dependencies | Valide les dépendances de votre application Jutro. | Lien vers la section |
| jutro validate:folders | Valide la structure de dossiers de votre application Jutro. | Lien vers la section |
| jutro validate:i18n | Valide les traductions d’internationalisation dans votre application Jutro. | Lien vers la section |
| jutro validate:linters | Valide la configuration des outils linter dans votre application Jutro. | Lien vers la section |
| jutro validate:migrations | Valide les migrations dans votre application Jutro. | Lien vers la section |
| jutro validate:tests | Valide les tests définis dans votre application Jutro. | Lien vers la section |
| jutro validate:lighthouse | Génère un rapport Lighthouse dans votre application Jutro. | Lien vers la section |
| jutro validate:metadata | Valide les fichiers de métadonnées par rapport à un schéma spécifié. | Lien vers la section |
Commandes d'application
| Commande | Description | Lien |
|---|---|---|
| jutro app:tests | Exécute les tests d’unité de votre application | Lien vers la section |
| jutro app:start | Regroupe et démarre votre application Jutro | Lien vers la section |
| jutro app:build | Crée une version de l’application | Lien 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 | Description | Valeur par défaut |
|---|---|---|
--name | Nom d’un codemod à exécuter. | Aucune valeur par défaut. |
--codemodsModule | Emplacement 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 |
--projectPath | Chemin 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. | . |
--tmpDir | Ré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èlesrc/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.
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 | Description | Valeur par défaut |
|---|---|---|
--metadataMessageOutputDir | Définit le répertoire de sortie des messages de métadonnées extraits. | i18n |
--jsxMessageOutputPath | Définit le répertoire de sortie des messages JSX extraits. | i18n/src/js-jsx-strings.json |
--messagesFileNamePattern | Définit où sont stockés les messages extraits. | i18n/src/**/*.json |
--mergeBizCompOutputDir | Définit le nom de fichier de sortie des traductions fusionnées. | i18n/biz-comp-translations |
--languageOutputFileName | Définit le modèle du fichier de sortie de la langue. | lang.json |
--pseudoType | Définit le pseudo-type à utiliser. Il peut s’agir de 'expansion', 'sherlock' ou 'both'. | sherlock |
--pseudoOutputFileName | Définit le modèle du nom de fichier de sortie. | yy.json |
--editorProjectId | Définit l’ID de projet de l’éditeur et active les traductions i18n de l’éditeur. | ID dans editorProject.json |
--editorMessageOutputPath | Définit le répertoire de sortie des messages de l'éditeur extraits. | i18n/editorTranslations.json |
--help | Imprime 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 :
- Le nom du thème.
- L'expression indiquant le chemin d'entrée du jeton de thème (le chemin par défaut est
src/tokens/**/*.json) - Le nom du fichier de sortie
- La variable personnalisée facultative vers le chemin de mappage du jeton
- Le chemin de transformation personnalisé facultatif
- La possibilité d'ajouter un autre thème
La commande generate:themes accepte les paramètres suivants :
Paramètre | Description | Valeur par défaut |
|---|---|---|
--configPath,-c | Définit le chemin d’accès au répertoire contenant le fichier .themesConfig.json. | Répertoire de travail actuel. |
--encapsulateThemes,-s | Lorsque 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 |
--help | Imprime les détails de la commande dans le terminal. | Aucun argument n’est accepté. |
--clearCache | Vide le cache. Utilisez cette option pour vous connecter en tant qu’utilisateur différent. | Aucun argument n’est accepté. |
--cliInfo | Affiche des informations sur la configuration et l’emplacement du fichier cache. | Aucun argument n’est accepté. |
--reset | Réinitialise la configuration par défaut et vide le cache. | Aucun argument n’est accepté. |
--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 :
- Nom de l'application.
- Version de l'application.
- Version Jutro.
- 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 :
- Répertoire de sortie.
- Nom du fichier de sortie.
- Chemin d’accès au répertoire du package.
La commande generate:buildInfo accepte les paramètres suivants :
Paramètre | Description | Valeur par défaut |
|---|---|---|
--outputDir,-d | Spécifie le répertoire d’application dans lequel écrire le fichier d’informations de build. | src/assets |
--outputFile,-f | Spé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,-p | Indique le répertoire contenant le fichier d’application package.json. | Répertoire de travail actuel. |
--buildValues,-b | Spécifie les valeurs de build personnalisées sous la forme « NAME:VALUE NAME2:VALUE2… ». | Chaîne vide "". |
--help | Imprime les détails de la commande dans le terminal. | Aucun argument n’est accepté. |
--clearCache | Vide le cache. Utilisez cette option pour vous connecter en tant qu’utilisateur différent. | Aucun argument n’est accepté. |
--cliInfo | Affiche des informations sur la configuration et l’emplacement du fichier cache. | Aucun argument n’est accepté. |
--reset | Ré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 :
- Nom du composant à générer.
- Chemin d’accès du fichier de sortie.
La commande generate:component accepte les paramètres suivants :
Paramètre | Description | Valeur par défaut |
|---|---|---|
--name,-n | Spécifie le nom du composant généré. | Aucune valeur par défaut. |
--path,-p | Indique le chemin d’accès du dossier de destination pour le composant généré. | Aucune valeur par défaut. |
--help | Imprime les détails de la commande dans le terminal. | Aucun argument n’est accepté. |
--clearCache | Vide le cache. Utilisez cette option pour vous connecter en tant qu’utilisateur différent. | Aucun argument n’est accepté. |
--cliInfo | Affiche des informations sur la configuration et l’emplacement du fichier cache. | Aucun argument n’est accepté. |
--reset | Ré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é
invalidFilescontient 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é
invalidDirscontient 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 | Description | Valeur par défaut |
|---|---|---|
--globIgnorePatterns | Modèles de fichiers à ignorer. | '**/__mocks__/**', '**/__local_mocks__/**', '**/basic.metadata.schema.json', '**/dist/**', '**/node_modules/**', '**/src/generated/**' |
--packageFileNamePattern | Nom 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
La commande validate:folders accepte le paramètre suivant :
|
--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
/packagesdans la racine - Il n'y a pas de fichier
package.jsondans la racine - Tous les répertoires
/packages/{package-name}n’ont pas à la fois un fichierpackage.jsonet/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 | Description | Valeur par défaut |
|---|---|---|
--jsxFileNamePattern,-j | Nom de fichier de vos fichiers JSX. | src/**/*.{ts,tsx,js,jsx} |
--metadataFileNamePattern,-m | Modèle du nom de fichier pour vos fichiers JSON de métadonnées. | src/**/*.{metadata,config}.json5 |
--translationOutputDir,-o | Répertoire de stockage des messages sortants qui combinent les traductions par défaut et extraites. | src/i18n |
--fileNameIgnorePattern | Liste des modèles de noms de fichiers à ignorer, séparés par des virgules. | **/__mocks__/**,**/__local_mocks__/**,**/basic.metadata.schema.json,**/dist/**,**/node_modules/** |
--translationFileName | Fichier de traduction à vérifier par rapport à lang.json. | en.json |
--help | Imprime les détails de la commande dans le terminal. | Aucun argument n’est accepté. |
--clearCache | Vide le cache. Utilisez cette option pour vous connecter en tant qu’utilisateur différent. | Aucun argument n’est accepté. |
--cliInfo | Affiche des informations sur la configuration et l’emplacement du fichier cache. | Aucun argument n’est accepté. |
--reset | Ré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.
package.json.node_modules :prettiereslintstylelint
La commande validate:linters accepte les paramètres suivants :
Paramètre | Description | Valeur par défaut |
|---|---|---|
--eslintFlags | Remplace les paramètres par défaut pour eslint | "**/*.{ts,tsx,js,jsx}" |
--eslintMetadataFlags | Remplace les paramètres par défaut pour les composants de métadonnées eslint | "**/*.json5" --parser jsonc-eslint-parser --no-error-on-unmatched-pattern |
--stylelintFlags | Remplace les paramètres par défaut pour stylelint | "**/*.{scss, css}" |
--prettierFlags | Remplace 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.
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
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 | Description | Valeur par défaut |
|---|---|---|
--url | URL de votre application | http://localhost:3001/ |
--config | Chemin relatif d'un fichier de configuration personnalisé | Un fichier .lighthouserc dans le répertoire racine du projet. |
--output | Mode de sortie du rapport séparé par des virgules. Les modes acceptés sont 'html', 'json' ou 'csv' | html |
--outputDir | Répertoire de sortie du rapport | Répertoire courant. |
--loginScriptPath | Chemin d’accès du script de connexion Puppeteer. | Aucune valeur par défaut. |
--username | Nom d’utilisateur du script de connexion. | Aucune valeur par défaut. |
--password | Mot 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');
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 | Description | Valeur par défaut |
|---|---|---|
--fileNamePattern ou -f | Spécifie le modèle pour les noms de fichiers de métadonnées correspondants à valider. | src/**/*.{metadata,config}.json5 |
--schemaPath,-s | Spé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. |
--help | Imprime les détails de la commande dans le terminal. | Aucun argument n’est accepté. |
--clearCache | Vide le cache. Utilisez cette option pour vous connecter en tant qu’utilisateur différent. | Aucun argument n’est accepté. |
--cliInfo | Affiche des informations sur la configuration et l’emplacement du fichier cache. | Aucun argument n’est accepté. |
--reset | Ré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 | Description | Valeur par défaut |
|---|---|---|
--jestConfigPath | Chemin d’accès de votre fichier de configuration jest. | jest.config.js |
--overridesPath | Chemin 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 |
--verify | Si 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.
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 | Description | Valeur par défaut |
|---|---|---|
--mode | L’environnement à créer et à démarrer. Accepte development ou production comme valeurs. | development |
--verify | Vé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 | Description | Valeur par défaut |
|---|---|---|
process.env.PORT | Port à utiliser | 3000 |
process.env.HOST | Hôte à utiliser | 0.0.0.0 |
process.env.HTTPS | Utilisation de http ou https | http |
process.env.CI | Si 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-in | Finalité |
|---|---|
| HtmlWebpackPlugin | Génère un fichier index.html avec des balises <script> et <link> correctes pour les ressources regroupées. |
| MiniCssExtractPlugin | Extrait le fichier CSS dans des fichiers distincts au lieu de l’inclure dans des lots JavaScript. |
| TerserPlugin | Réduit JavaScript pour réduire la taille des lots. |
| CssMinimizerPlugin | Réduit les fichiers CSS pour une sortie optimisée. |
| ReactRefreshWebpackPlugin | Active l’actualisation rapide React pour une meilleure expérience de développement. |
| WebpackManifestPlugin | Génère un fichier manifeste qui associe les noms des fichiers source aux fichiers de sortie. |
| InlineChunkHtmlPlugin | Intègre de petits blocs JS dans le code HTML pour éviter les requêtes réseau supplémentaires. |
| InterpolateHtmlPlugin | Remplace les espaces réservés dans le code HTML (par exemple, %PUBLIC_URL%) par des variables d’environnement. |
| ModuleNotFoundPlugin1 | Fournit des messages d’erreur plus clairs lorsqu’un module est manquant. |
| WorkboxWebpackPlugin | Génère un script service worker pour les applications Web progressives. |
| ForkTsCheckerWebpackPlugin | Exé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
.gitignore and depcheckrc.js, will also be copied into the dist folderLa commande app:build accepte les paramètres suivants :
Paramètre | Description | Valeur par défaut |
|---|---|---|
--mode, -m | Mode de création d’application. Les valeurs acceptées sont « production » ou « développement » | production |
--showProgress,-s | Marquer pour afficher la progression du build | false |
--no-showProgress | Force --showProgress à passer à false | false |
--writeBuildStatsToFile,-w | Indicateur permettant d’écrire des statistiques de build dans un fichier | false |
--no-writeBuildStatsToFile | Force --writeBuildStatsToFile à passer à false | false |