ソースコードでのカスタムアプリケーション構成
ソースコード内のアプリケーションの now.config.json ファイルでカスタムアプリケーション [sys_app] を構成します。
アプリケーション設定や、ディレクトリ構造など、ソースコードでのアプリケーション開発に固有の側面を構成できます。now.config.jsonファイルで、次のパラメーターを追加してアプリケーション設定を構成します。
| パラメーター | タイプ | 説明 |
|---|---|---|
| appOutputDir | 文字列 | パッケージ化のためにビルドアーティファクトを出力するディレクトリ。pack コマンドと install コマンドは、アーティファクトをパッケージ化するためにこのディレクトリを参照します。
デフォルト:dist/app |
| clientDir | 文字列 | React を使用してユーザーインターフェイスを開発するためのクライアント側ファイルを含むディレクトリ。 デフォルト: src/client |
| 依存関係 | オブジェクト | アプリケーションが依存する別のアプリケーションスコープ内のアイテム。アプリケーションスコープと依存関係タイプ、および名前またはsys_idsを指定する必要があります。詳細については、「アプリケーションの依存関係 ServiceNow Fluent ダウンロード」を参照してください。 |
| fluentDir | 文字列 | ソースコードでアプリケーションメタデータを定義する ServiceNow Fluent ファイル (.now.ts) を含むディレクトリ。 デフォルト:src/fluent |
| generatedDir | 文字列 | ServiceNow Fluentコードに変換された既存のアプリケーションメタデータを含む、生成されたServiceNow Fluentファイルを含むディレクトリ。このディレクトリーは、 fluentDir パラメーターで定義されたディレクトリーに対する相対ディレクトリーです。 デフォルト: generated |
| ignoreTransformTableList | アレイ | アプリケーションメタデータをソースコードに変換するときに無視するテーブルのリスト。 |
| metadataDir | 文字列 | アプリケーションのメタデータを XML ファイルとして含むディレクトリ。 デフォルト:metadata |
| modulePath | オブジェクト | アプリケーションをビルドする前にカスタムトランスパイルステップを使用する場合に備えて、モジュールソースファイルから同等の出力ファイルへのマップ。詳細については、「ServiceNow SDK で JavaScript モジュールの TypeScript を使用する」を参照してください。 警告: このパラメーターと tsconfigPath パラメーターは使用できません。両方を設定すると、エラーが発生します。 |
| パック出力ディレクトリ | 文字列 | アプリケーションのビルド時にインストール可能なパッケージ (.zip ファイル) を出力するディレクトリ。install コマンドは、このディレクトリを参照してパッケージをインストールします。 デフォルト:target |
| serverModulesDir | 文字列 | サーバー側スクリプトで使用するために JavaScript モジュールに組み込まれる JavaScript または TypeScript ファイルを含むディレクトリ。 デフォルト:src/server |
| serverModulesExcludePatterns | アレイ | JavaScript モジュールをビルドするときに除外するファイルパターンのリスト。 Default (デフォルト): |
| serverModulesIncludePatterns | アレイ | JavaScript モジュールをビルドするときに含めるファイルパターンのリスト。 Default (デフォルト): |
| staticContentDir | 文字列 | ユーザーインターフェイスの開発に使用する静的資産ファイルを出力するディレクトリ。 デフォルト: dist/static |
| staticContentPath | オブジェクト | 静的資産ファイルの出力パスに対するクライアント側のソースファイルのマップ。 |
| defaultLanguage | 文字列 | テーブルまたは列のフィールドラベル [sys_documentation] のデフォルト言語の BCP 47 コード。デフォルトの言語は、複数の言語でフィールドラベルを解決するために使用されます。 デフォルト値:en |
| テーブル出力形式 | 文字列 | ServiceNow Fluentコードから生成されたテーブルメタデータ XML のビルドアーティファクトのタイプ。 有効な値:
デフォルト: bootstrap |
| 分類 | オブジェクト | 生成された ServiceNow Fluent ファイルを整理するための構成。テーブル名をディレクトリにマップし、フォールバックディレクトリを定義します。デフォルトの分類構成では、メタデータが最初にServiceNow Fluentコードに変換されるときに、ServiceNow標準テーブル分類を使用して、Fluent/生成されたディレクトリ内の論理ディレクトリ構造に生成されたServiceNow Fluentファイルを追加します。たとえば、次のようになります:
デフォルトのマッピングを上書きすることも、追加のマッピングを設定することもできます。次の例では、構成はビジネスルール [sys_script] のデフォルトディレクトリーとフォールバックフォルダーを上書きし、カスタムテーブルのメタデータの追加マッピングを構成します。
デフォルト:デフォルトの分類マッピングは、すべての標準 ServiceNow テーブルに対して定義され、アプリケーションの |
| trustedModule | アレイ | 信頼できる (または内部的) として識別する npm パッケージのリスト。信頼できるモジュールは、 ServiceNow API にアクセスできます。たとえば、次のようになります:EcmaScript モジュールの [sys_module] テーブルで、信頼できるモジュールの [ 外部ソース ] フィールドが false に設定されています。 警告: 完全に信頼できる依存関係のみを信頼できるモジュールとして追加します。 有効なパターン:
|
| tsconfigPath | 文字列 | ビルドプロセス中に TypeScript を JavaScript にトランスパイルするためのカスタムオプションを含む tsconfig.json ファイルへのパス。tsconfigPath を指定すると、tsconfig.json ファイルを使用して TypeScript から診断結果が生成されます。警告: このパラメーターと modulePaths パラメーターは使用できません。両方を設定すると、エラーが発生します。デフォルト: 。 |
ソースコードでのアプリケーション構成
{
"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"
}
}