anl 26.107.0 → 26.107.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.ar.md +59 -59
- package/README.es.md +59 -59
- package/README.fr.md +106 -106
- package/README.jp.md +56 -56
- package/README.md +131 -67
- package/README.ru.md +56 -56
- package/README.zh.md +144 -78
- package/lib/package.json.js +1 -1
- package/lib/src/build-type/core/get-data.js +1 -1
- package/lib/src/build-type/core/path.js +1 -1
- package/lib/src/build-type/index.js +1 -1
- package/package.json +1 -1
package/README.jp.md
CHANGED
|
@@ -106,7 +106,7 @@ $ anl type
|
|
|
106
106
|
"saveApiListFolderPath": "apps/api/",
|
|
107
107
|
"saveEnumFolderPath": "apps/enums",
|
|
108
108
|
"importEnumPath": "../../enums",
|
|
109
|
-
"
|
|
109
|
+
"swaggerConfig": {
|
|
110
110
|
"url": "https://generator3.swagger.io/openapi2.json",
|
|
111
111
|
"apiListFileName": "index.ts",
|
|
112
112
|
"publicPrefix": "api",
|
|
@@ -160,7 +160,7 @@ $ anl type
|
|
|
160
160
|
"varnames": "enum-varnames",
|
|
161
161
|
"comment": "enum-descriptions"
|
|
162
162
|
},
|
|
163
|
-
"
|
|
163
|
+
"swaggerConfig": [
|
|
164
164
|
{
|
|
165
165
|
"url": "https://generator3.swagger.io/openapi1.json",
|
|
166
166
|
"apiListFileName": "op.ts",
|
|
@@ -178,39 +178,39 @@ $ anl type
|
|
|
178
178
|
|
|
179
179
|
#### 設定項目の説明
|
|
180
180
|
|
|
181
|
-
| 設定項目 | 型 | 必須 | 説明
|
|
182
|
-
|
|
|
183
|
-
| saveTypeFolderPath
|
|
184
|
-
| saveApiListFolderPath
|
|
185
|
-
| saveEnumFolderPath
|
|
186
|
-
| importEnumPath
|
|
187
|
-
| swaggerJsonUrl
|
|
188
|
-
|
|
|
189
|
-
|
|
|
190
|
-
|
|
|
191
|
-
|
|
|
192
|
-
|
|
|
193
|
-
|
|
|
194
|
-
|
|
|
195
|
-
|
|
|
196
|
-
|
|
|
197
|
-
|
|
|
198
|
-
| requestMethodsImportPath
|
|
199
|
-
| dataLevel
|
|
200
|
-
| formatting
|
|
201
|
-
| formatting.indentation
|
|
202
|
-
| formatting.lineEnding
|
|
203
|
-
| headers
|
|
204
|
-
| includeInterface
|
|
205
|
-
| excludeInterface
|
|
206
|
-
| publicPrefix
|
|
207
|
-
|
|
|
208
|
-
| apiListFileName
|
|
209
|
-
| enmuConfig
|
|
210
|
-
| enmuConfig.erasableSyntaxOnly
|
|
211
|
-
| enmuConfig.varnames
|
|
212
|
-
| enmuConfig.comment
|
|
213
|
-
| parameterSeparator
|
|
181
|
+
| 設定項目 | 型 | 必須 | 説明 |
|
|
182
|
+
| ---------------------------------- | ------------------------------------- | ------ | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
|
183
|
+
| saveTypeFolderPath | string | はい | 型定義ファイルの保存パス |
|
|
184
|
+
| saveApiListFolderPath | string | はい | API リクエスト関数ファイルの保存パス |
|
|
185
|
+
| saveEnumFolderPath | string | はい | 列挙データファイルの保存パス |
|
|
186
|
+
| importEnumPath | string | はい | 列挙型インポートパス(apps/types/models/\*.ts で enum ファイルを参照するパス) |
|
|
187
|
+
| swaggerJsonUrl | string | いいえ | Swagger JSON ドキュメントのアドレス(`swaggerConfig` に移行済み、旧版設定との互換性のため保持)**今後のバージョンでこのフィールドは削除されます** |
|
|
188
|
+
| swaggerConfig | object \| Array<object> | いいえ | Swagger サーバー設定。単一サーバーの場合は直接オブジェクトを記入、複数サーバーの場合は配列を使用。各サーバーで `url`、`publicPrefix`、`modulePrefix`、`apiListFileName`、`headers`、`dataLevel`、`parameterSeparator`、`includeInterface`、`excludeInterface` を設定可能<br />このフィールドは単一 Swagger サーバー設定と複数の Swagger サーバー設定の例に対応します。上にスクロールして確認してください |
|
|
189
|
+
| swaggerConfig[].url | string | はい | Swagger JSON ドキュメントのアドレス |
|
|
190
|
+
| swaggerConfig[].publicPrefix | string | いいえ | URL パス上の共通プレフィックス、例:api/users、api/users/{id}、api が共通プレフィックスです |
|
|
191
|
+
| swaggerConfig[].apiListFileName | string | いいえ | API リストファイル名、デフォルトは `index.ts`。複数サーバー使用時、各サーバーのファイル名は一意である必要があります |
|
|
192
|
+
| swaggerConfig[].headers | object | いいえ | このサーバーのリクエストヘッダー設定 |
|
|
193
|
+
| swaggerConfig[].modulePrefix | string | いいえ | リクエストパスのプレフィックス(モジュール名として理解できます)、各 API リクエストパスの前に自動的に追加されます。<br />例:`modulePrefix: "/forward"` の場合<br />`/publicPrefix/modulePrefix/user` は `/api/forward/user` になります |
|
|
194
|
+
| swaggerConfig[].dataLevel | 'data' \| 'serve' \| 'axios' | いいえ | このサーバーのインターフェースレスポンスデータのレベル。設定されていない場合、グローバル `dataLevel` 設定を使用します |
|
|
195
|
+
| swaggerConfig[].parameterSeparator | '$' \| '\_' | いいえ | このサーバーの API 名と型名を生成する際に使用される区切り文字。設定されていない場合、グローバル `parameterSeparator` 設定を使用します |
|
|
196
|
+
| swaggerConfig[].includeInterface | Array<{path: string, method: string}> | いいえ | このサーバーに含めるインターフェースのリスト。設定されていない場合、グローバル `includeInterface` 設定を使用します |
|
|
197
|
+
| swaggerConfig[].excludeInterface | Array<{path: string, method: string}> | いいえ | このサーバーから除外するインターフェースのリスト。設定されていない場合、グローバル `excludeInterface` 設定を使用します |
|
|
198
|
+
| requestMethodsImportPath | string | はい | リクエストメソッドのインポートパス |
|
|
199
|
+
| dataLevel | 'data' \| 'serve' \| 'axios' | いいえ | グローバルインターフェースレスポンスデータのレベル設定、デフォルト:`'serve'`。各サーバーで個別に上書き可能 |
|
|
200
|
+
| formatting | object | いいえ | コードフォーマット設定 |
|
|
201
|
+
| formatting.indentation | string | いいえ | コードインデント文字、例:`"\t"` または `" "` (2スペース) |
|
|
202
|
+
| formatting.lineEnding | string | いいえ | 改行、例:`"\n"` (LF) または `"\r\n"` (CRLF) |
|
|
203
|
+
| headers | object | いいえ | リクエストヘッダー設定(`swaggerConfig` に移行済み、旧版設定との互換性のため保持) |
|
|
204
|
+
| includeInterface | Array<{path: string, method: string}> | いいえ | グローバルに含めるインターフェース:`saveApiListFolderPath` で指定されたインターフェースリストファイルには、このリストに含まれるインターフェースのみが含まれます。`excludeInterface` フィールドと相互排他的です。各サーバーで個別に上書き可能 |
|
|
205
|
+
| excludeInterface | Array<{path: string, method: string}> | いいえ | グローバルに除外するインターフェース:`saveApiListFolderPath` で指定されたインターフェースリストテキストには、このリストに含まれないインターフェースが含まれます。`includeInterface` と相互排他的です。各サーバーで個別に上書き可能 |
|
|
206
|
+
| publicPrefix | string | いいえ | グローバル URL パス上の共通プレフィックス(`swaggerConfig` に移行済み、旧版設定との互換性のため保持) |
|
|
207
|
+
| modulePrefix | string | いいえ | グローバルリクエストパスのプレフィックス(各サーバーで個別に上書き可能) |
|
|
208
|
+
| apiListFileName | string | いいえ | グローバル API リストファイル名、デフォルトは `index.ts`(`swaggerConfig` に移行済み、旧版設定との互換性のため保持) |
|
|
209
|
+
| enmuConfig | object | はい | 列挙型設定オブジェクト |
|
|
210
|
+
| enmuConfig.erasableSyntaxOnly | boolean | はい | tsconfig.json の `compilerOptions.erasableSyntaxOnly` オプションと一致させます。`true` の場合、enum ではなく const オブジェクトを生成します(型のみの構文)。デフォルト値:`false` |
|
|
211
|
+
| enmuConfig.varnames | string | いいえ | Swagger schema フィールド名でカスタム列挙メンバー名用。デフォルト値:`enum-varnames`。 |
|
|
212
|
+
| enmuConfig.comment | string | いいえ | Swagger schema フィールド名で列挙メンバーの説明用(コメント生成に使用)。デフォルト値:`enum-descriptions`。 |
|
|
213
|
+
| parameterSeparator | '$' \| '\_' | いいえ | グローバル API 名と型名を生成する際に、パスセグメントとパラメータの間に使用される区切り文字。例えば、`/users/{userId}/posts` に区切り文字 `'_'` を使用すると `users_userId_posts_GET` が生成されます。デフォルト値:`'_'`。各サーバーで個別に上書き可能 |
|
|
214
214
|
|
|
215
215
|
#### 設定項目と生成ファイルの対応関係
|
|
216
216
|
|
|
@@ -276,7 +276,7 @@ export const userDetailGet = (params: UserDetail_GET.Query) => GET<UserDetail_GE
|
|
|
276
276
|
- `parameterSeparator`: API 名と型名の区切り文字
|
|
277
277
|
- `includeInterface`: 含めるインターフェースのリスト
|
|
278
278
|
- `excludeInterface`: 除外するインターフェースのリスト
|
|
279
|
-
- `
|
|
279
|
+
- `modulePrefix`: リクエストパスのプレフィックス
|
|
280
280
|
- `publicPrefix`: URL の共通プレフィックス
|
|
281
281
|
- `headers`: リクエストヘッダー設定
|
|
282
282
|
|
|
@@ -286,7 +286,7 @@ export const userDetailGet = (params: UserDetail_GET.Query) => GET<UserDetail_GE
|
|
|
286
286
|
{
|
|
287
287
|
"dataLevel": "serve",
|
|
288
288
|
"parameterSeparator": "_",
|
|
289
|
-
"
|
|
289
|
+
"swaggerConfig": [
|
|
290
290
|
{
|
|
291
291
|
"url": "http://api1.example.com/swagger.json",
|
|
292
292
|
"dataLevel": "data",
|
|
@@ -385,7 +385,7 @@ interface User {
|
|
|
385
385
|
```json
|
|
386
386
|
{
|
|
387
387
|
"dataLevel": "serve",
|
|
388
|
-
"
|
|
388
|
+
"swaggerConfig": [
|
|
389
389
|
{
|
|
390
390
|
"url": "http://api1.example.com/swagger.json",
|
|
391
391
|
"dataLevel": "data"
|
|
@@ -481,8 +481,8 @@ export const uploadFile = (params: UploadFile.Body) =>
|
|
|
481
481
|
|
|
482
482
|
ツールは複数の Swagger サーバーの設定をサポートしており、各サーバーは独立して設定できます:
|
|
483
483
|
|
|
484
|
-
- **単一サーバー**:`
|
|
485
|
-
- **複数サーバー**:`
|
|
484
|
+
- **単一サーバー**:`swaggerConfig` は直接オブジェクトとして記入可能
|
|
485
|
+
- **複数サーバー**:`swaggerConfig` は配列形式を使用し、各サーバーは一意の `apiListFileName` を設定する必要があります
|
|
486
486
|
|
|
487
487
|
**動作原理:**
|
|
488
488
|
|
|
@@ -498,11 +498,11 @@ export const uploadFile = (params: UploadFile.Body) =>
|
|
|
498
498
|
- `parameterSeparator` - API 名と型名の区切り文字
|
|
499
499
|
- `includeInterface` - 含めるインターフェースのリスト
|
|
500
500
|
- `excludeInterface` - 除外するインターフェースのリスト
|
|
501
|
-
- `
|
|
501
|
+
- `modulePrefix` - リクエストパスのプレフィックス
|
|
502
502
|
|
|
503
|
-
#### パスプレフィックス(
|
|
503
|
+
#### パスプレフィックス(modulePrefix)
|
|
504
504
|
|
|
505
|
-
`
|
|
505
|
+
`modulePrefix` はすべての API リクエストパスの前にプレフィックスを自動的に追加するために使用され、以下のシナリオで特に役立ちます:
|
|
506
506
|
|
|
507
507
|
1. **リバースプロキシシナリオ**:バックエンドサービスがリバースプロキシ経由で転送される場合
|
|
508
508
|
2. **API ゲートウェイ**:パスに統一的にゲートウェイプレフィックスを追加
|
|
@@ -512,10 +512,10 @@ export const uploadFile = (params: UploadFile.Body) =>
|
|
|
512
512
|
|
|
513
513
|
```json
|
|
514
514
|
{
|
|
515
|
-
"
|
|
515
|
+
"swaggerConfig": [
|
|
516
516
|
{
|
|
517
517
|
"url": "http://api.example.com/swagger.json",
|
|
518
|
-
"
|
|
518
|
+
"modulePrefix": "/forward",
|
|
519
519
|
"apiListFileName": "api.ts"
|
|
520
520
|
}
|
|
521
521
|
]
|
|
@@ -533,18 +533,18 @@ export const apiUserListGet = (params: ApiUserList_GET.Query) => GET<ApiUserList
|
|
|
533
533
|
**publicPrefix との違い:**
|
|
534
534
|
|
|
535
535
|
- `publicPrefix`: インターフェースパスからプレフィックスを削除し、生成される関数名にのみ影響します
|
|
536
|
-
- `
|
|
536
|
+
- `modulePrefix`: 実際のリクエストパスの前にプレフィックスを追加し、実行時のリクエスト URL に影響します
|
|
537
537
|
|
|
538
538
|
**設定例:**
|
|
539
539
|
|
|
540
540
|
```json
|
|
541
541
|
{
|
|
542
|
-
"
|
|
542
|
+
"swaggerConfig": [
|
|
543
543
|
{
|
|
544
544
|
"url": "http://api1.example.com/swagger.json",
|
|
545
545
|
"apiListFileName": "api1.ts",
|
|
546
546
|
"publicPrefix": "/api/v1",
|
|
547
|
-
"
|
|
547
|
+
"modulePrefix": "/forward",
|
|
548
548
|
"dataLevel": "serve",
|
|
549
549
|
"parameterSeparator": "_",
|
|
550
550
|
"headers": {
|
|
@@ -574,7 +574,7 @@ export const apiUserListGet = (params: ApiUserList_GET.Query) => GET<ApiUserList
|
|
|
574
574
|
|
|
575
575
|
- 旧版設定(`swaggerJsonUrl`、`publicPrefix`、`headers`)は引き続き互換性があります
|
|
576
576
|
- ツールは自動的に旧版設定を検出し、移行方法を提示します
|
|
577
|
-
- より柔軟性を得るために、新しい `
|
|
577
|
+
- より柔軟性を得るために、新しい `swaggerConfig` 設定への移行をお勧めします
|
|
578
578
|
|
|
579
579
|
#### HTTP メソッドサポート
|
|
580
580
|
|
|
@@ -599,7 +599,7 @@ export const apiUserListGet = (params: ApiUserList_GET.Query) => GET<ApiUserList
|
|
|
599
599
|
4. 生成されたファイルをバージョン管理に含めることをお勧めします
|
|
600
600
|
5. 複数の Swagger サーバーを使用する場合、各サーバーの `apiListFileName` が一意であることを確認し、ファイルの上書きを避けてください
|
|
601
601
|
6. 複数のサーバー設定を使用する場合、型定義と列挙型はマージされます。異なるサーバーに同じ名前の型がある場合、競合が発生する可能性があります
|
|
602
|
-
7. サーバーレベルの設定(`dataLevel`、`parameterSeparator`、`includeInterface`、`excludeInterface`、`
|
|
602
|
+
7. サーバーレベルの設定(`dataLevel`、`parameterSeparator`、`includeInterface`、`excludeInterface`、`modulePrefix`)はグローバル設定を上書きします
|
|
603
603
|
8. `includeInterface` と `excludeInterface` は同時に設定できません。両方が設定された場合、`includeInterface` が優先されます
|
|
604
604
|
|
|
605
605
|
### よくある質問
|
|
@@ -613,15 +613,15 @@ export const apiUserListGet = (params: ApiUserList_GET.Query) => GET<ApiUserList
|
|
|
613
613
|
- `requestMethodsImportPath` 設定が正しいか確認してください
|
|
614
614
|
- リクエストメソッドファイルが存在するか確認してください
|
|
615
615
|
|
|
616
|
-
3. **いつ `
|
|
616
|
+
3. **いつ `modulePrefix` を使用しますか?**
|
|
617
617
|
- API がリバースプロキシまたはゲートウェイ経由でアクセスされる必要がある場合
|
|
618
618
|
- 例:Swagger では `/api/user` と定義されていますが、実際のリクエストは `/gateway/api/user` である必要があります
|
|
619
|
-
- `
|
|
619
|
+
- `modulePrefix: "/gateway"` を設定することで実現できます
|
|
620
620
|
|
|
621
|
-
4. **`publicPrefix` と `
|
|
621
|
+
4. **`publicPrefix` と `modulePrefix` の違いは何ですか?**
|
|
622
622
|
- `publicPrefix`: インターフェースパスからプレフィックスを削除し、生成される関数名にのみ影響します
|
|
623
623
|
- 例:`/api/user/list` から `/api` を削除すると、関数名は `userListGet` になります
|
|
624
|
-
- `
|
|
624
|
+
- `modulePrefix`: リクエストパスの前にプレフィックスを追加し、実際のリクエスト URL に影響します
|
|
625
625
|
- 例:`/api/user/list` に `/forward` を追加すると、リクエスト URL は `/forward/api/user/list` になります
|
|
626
626
|
|
|
627
627
|
5. **複数のサーバーで異なる `dataLevel` を設定するには?**
|
|
@@ -629,7 +629,7 @@ export const apiUserListGet = (params: ApiUserList_GET.Query) => GET<ApiUserList
|
|
|
629
629
|
```json
|
|
630
630
|
{
|
|
631
631
|
"dataLevel": "serve",
|
|
632
|
-
"
|
|
632
|
+
"swaggerConfig": [
|
|
633
633
|
{
|
|
634
634
|
"url": "http://old-api.com/swagger.json",
|
|
635
635
|
"dataLevel": "axios",
|
|
@@ -650,7 +650,7 @@ export const apiUserListGet = (params: ApiUserList_GET.Query) => GET<ApiUserList
|
|
|
650
650
|
- `includeInterface` 設定を使用:
|
|
651
651
|
```json
|
|
652
652
|
{
|
|
653
|
-
"
|
|
653
|
+
"swaggerConfig": [
|
|
654
654
|
{
|
|
655
655
|
"url": "http://api.com/swagger.json",
|
|
656
656
|
"includeInterface": [
|