Configuration d’application personnalisée dans le code source
Configurez une application personnalisée [sys_app] dans le fichier now.config.json pour une application dans le code source.
Vous pouvez configurer les paramètres de l’application et les aspects spécifiques au développement de l’application dans le code source, tels que la structure des répertoires. Dans le fichier now.config.json , ajoutez les paramètres suivants pour configurer les paramètres de l’application.
| Paramètre | Type | Description |
|---|---|---|
| appOutputDir | Chaîne | Répertoire dans lequel afficher les artefacts de version pour l’empaquetage. Les commandes pack et install se réfèrent à ce répertoire pour empaqueter les artefacts.
Par défaut : dist/app |
| répertoire clientDir | Chaîne | Répertoire contenant les fichiers côté client pour le développement d’interfaces utilisateur avec React. Valeur par défaut : src/client |
| dépendances | Objet | Les éléments d’un autre périmètre de l’application dont dépend votre application. Vous devez spécifier le périmètre de l’application ainsi que le type de dépendance et les noms ou sys_ids.Pour plus d'informations, consultez Télécharger ServiceNow Fluent les dépendances d’applications. |
| fluentDir | Chaîne | Répertoire contenant ServiceNow Fluent les fichiers (.now.ts) qui définissent les métadonnées d’application dans le code source. Par défaut : src/fluent |
| répertoire generatedDir | Chaîne | Répertoire contenant les fichiers générés ServiceNow Fluent , y compris les métadonnées d’application existantes converties en ServiceNow Fluent code. Ce répertoire est relatif au répertoire défini avec le fluentDir paramètre. Par défaut : généré |
| ignoreTransformTableList | Tableau | Une liste de tables à ignorer lors de la transformation des métadonnées d’application en code source. |
| répertoire metadataDir | Chaîne | Répertoire contenant les métadonnées de l’application sous forme de fichiers XML. Par défaut : métadonnées |
| Chemins d’accès des modules | Objet | Mappage des fichiers sources du module à leurs fichiers de sortie équivalents si vous utilisez une étape de transpilation personnalisée avant de créer l’application. Pour plus d'informations, consultez L’utilisation de TypeScript dans les modules JavaScript avec l’appli ServiceNow SDK. Avertissement : Vous ne pouvez pas utiliser ce paramètre ni le paramètre tsconfigPath . La configuration des deux entraîne une erreur. |
| packOutputDir | Chaîne | Répertoire permettant de générer le package installable (fichier .zip ) lors de la création de l’application. La commande install fait référence à ce répertoire pour installer le package. Par défaut : cible |
| répertoire serverModulesDir | Chaîne | Répertoire contenant les fichiers JavaScript ou TypeScript à intégrer dans les modules JavaScript à utiliser dans des scripts côté serveur. Par défaut : src/server |
| serverModulesExcludePatterns | Tableau | Une liste des schémas de fichier à exclure lors de la création de modules JavaScript. Par défaut : |
| serverModulesIncludePatterns | Tableau | Liste des schémas de fichier à inclure lors de la création de modules JavaScript. Par défaut : |
| staticContentDir | Chaîne | Répertoire de sortie des fichiers d’actifs statiques utilisés pour développer des interfaces utilisateur. Par défaut : dist/static |
| staticContentPaths | Objet | Mappage des fichiers sources côté client aux chemins de sortie des fichiers d’actifs statiques. |
| defaultLanguage | Chaîne | Code BCP 47 d’une langue par défaut pour les étiquettes de champ [sys_documentation] dans une table ou une colonne. La langue par défaut est utilisée pour résoudre les étiquettes de champ avec plusieurs langues. Par défaut : en |
| tableOutputFormat | Chaîne | Type d’artefacts de version pour les métadonnées de table XML générées à partir du ServiceNow Fluent code. Valeurs valides :
Par défaut : bootstrap |
| Taxonomie | Objet | Configuration d’organisation des fichiers générés ServiceNow Fluent , qui mappe les noms de tables aux répertoires et définit un répertoire de secours. La configuration de taxonomie par défaut utilise ServiceNow des classifications de table standard pour ajouter les fichiers générés ServiceNow Fluent dans une structure de répertoire logique au sein du répertoire fluent/généré lorsque les métadonnées sont initialement transformées en ServiceNow Fluent code. Par exemple :
Vous pouvez remplacer les mappages par défaut ou en configurer des supplémentaires. Dans l’exemple suivant, la configuration remplace le répertoire par défaut pour les règles métier [sys_script] et le dossier de secours, et configure un mappage supplémentaire pour les métadonnées d’une table personnalisée.
Par défaut : les mappages de taxonomie par défaut sont définis pour toutes les tables standard ServiceNow et sont automatiquement appliqués lorsqu’aucune configuration personnalisée n’est définie dans le |
| Modules de confiance | Tableau | Liste des packages npm à identifier comme approuvés (ou internes). Les modules approuvés ont accès aux ServiceNow API. Par exemple :Dans la table du module ECMAScript [sys_module], le champ Source externe est défini sur false pour les modules approuvés. Avertissement : N’ajoutez que les dépendances auxquelles vous faites entièrement confiance en tant que modules approuvés. Schémas valides :
|
| tsconfigPath | Chaîne | Chemin d’accès à un fichier tsconfig.json avec des options personnalisées pour la transpilation de TypeScript en JavaScript pendant le processus de génération. La spécification d’un tsconfigPath génère des résultats de diagnostic à partir de TypeScript à l’aide du fichier tsconfig.json .Avertissement : Vous ne pouvez pas utiliser ce paramètre ni le paramètre modulePaths . La configuration des deux entraîne une erreur.Par défaut : . |
Configuration de l’application dans le code source
{
"scope": "x_snc_example_app",
"scopeId": "2f8400eb07426110f736e28f69d3017a",
"name": "ExampleApp",
"dependencies": {
"global": {
"tables": ["incident"],
"roles": ["admin"],
},
"x_custom": {
"tables": ["custom_table"]
}
},
"metadataDir": "metadata",
"fluentDir": "src/fluent",
"generatedDir": "generated",
"serverModulesDir": "src/server",
"clientDir": "src/client",
"appOutputDir": "dist/app",
"staticContentDir": "dist/static",
"packOutputDir": "target",
"modulePaths": {
"src/server/*.ts": "dist/server/*.js",
},
"staticContentPaths": {
"src/client/*.html": "dist/static/*.html",
},
"ignoreTransformTableList": ["ua_table_licensing_config", "sys_embedded_help_role"],
"taxonomy": {
"mapping": {
"sys_script": "scripts/server/rules",
"custom_table": "my-custom-folder/my-nested-folder"
},
"fallbackFolderName": "unclassified"
}
}