style: Обновлены правила код стайла

This commit is contained in:
2026-05-08 08:21:34 +03:00
parent 7c0f597840
commit fec5ca78d0
32 changed files with 688 additions and 557 deletions

View File

@@ -19,7 +19,7 @@ https://petstore3.swagger.io/api/v3/openapi.json
Имена модуля:
```text
src/infrastructure/pet-store-api/
src/infra/pet-store-api/
petStoreApi
pet-store-api.generated.ts
```
@@ -31,7 +31,7 @@ pet-store-api.generated.ts
```json
{
"scripts": {
"codegen:pet-store-api": "npx @gromlab/api-codegen@latest -i https://petstore3.swagger.io/api/v3/openapi.json -o src/infrastructure/pet-store-api/generated -n pet-store-api.generated"
"codegen:pet-store-api": "npx @gromlab/api-codegen@latest -i https://petstore3.swagger.io/api/v3/openapi.json -o src/infra/pet-store-api/generated -n pet-store-api.generated"
}
}
```
@@ -53,7 +53,7 @@ npm run codegen:pet-store-api
Ожидаемый результат:
```text
src/infrastructure/pet-store-api/generated/
src/infra/pet-store-api/generated/
└── pet-store-api.generated.ts
```
@@ -77,7 +77,7 @@ petStoreApi.pet.getPetById(...)
Сгенерированный код не должен напрямую использоваться из приложения. Сначала создаётся настроенный инстанс клиента.
```ts
// src/infrastructure/pet-store-api/client.ts
// src/infra/pet-store-api/client.ts
import { Api, HttpClient } from './generated/pet-store-api.generated'
const httpClient = new HttpClient({
@@ -102,7 +102,7 @@ export const petStoreApi = new Api(httpClient)
Сгенерированный файл не правится руками. Если OpenAPI-спецификация неполная или генератор дал слишком общий тип (`object`, `unknown`, отсутствующее поле), расширения живут в `types/`.
```text
src/infrastructure/biocad-less-api/
src/infra/biocad-less-api/
├── generated/
│ └── biocad-less-api.generated.ts
├── types/
@@ -115,7 +115,7 @@ src/infrastructure/biocad-less-api/
Пример расширения generated-типа:
```ts
// src/infrastructure/biocad-less-api/types/term.ts
// src/infra/biocad-less-api/types/term.ts
import type { TermRecordItem } from '../generated/biocad-less-api.generated'
declare module '../generated/biocad-less-api.generated' {
@@ -149,7 +149,7 @@ export type TermRecordItemExtended = Omit<
```
```ts
// src/infrastructure/biocad-less-api/types/index.ts
// src/infra/biocad-less-api/types/index.ts
export type { TermRecordItemExtended } from './term'
```
@@ -158,18 +158,18 @@ export type { TermRecordItemExtended } from './term'
## Публичный API
```ts
// src/infrastructure/pet-store-api/index.ts
// src/infra/pet-store-api/index.ts
export { petStoreApi } from './client'
export type { Pet } from './generated/pet-store-api.generated'
export * from './hooks'
```
Наружу импортируют только из `infrastructure/pet-store-api`, не из `generated/`.
Наружу импортируют только из `infra/pet-store-api`, не из `generated/`.
Если у модуля есть расширенные типы, они тоже реэкспортируются через `index.ts`:
```ts
// src/infrastructure/biocad-less-api/index.ts
// src/infra/biocad-less-api/index.ts
export type { TermRecordItemExtended } from './types'
```