| Оглавление |
|---|
Файловая структура
Ядро
| Блок кода |
|---|
lib/Abills/Api
# Суброутеры ядра API
lib/Abills/Api/Paths/[sub/module].pm
# Валидации
lib/Abills/Api |
...
/Validations/[sub/module].pm |
Тесты
| Блок кода |
|---|
t/Api # тест суб/модуля t/Api/[sub/module]/Api.t # схемы t/Api/*/schemas[sub/module]/schemas/(admin|user)/[method_path] request.json - схема реквеста schema.json - схема ответа |
OpenAPI
| Блок кода |
|---|
# Бандл OpenAPI misc/api/bundle_(admin/*|user).yaml # Основа для бандла misc/api/(admin|user).yaml # Пути для субмодуля misc/api/(admin|user)/[sub/module]/paths.yaml # Схема для одного пути misc/api/(admin|user)/[sub/module]/paths/[path].yaml # Ответы для одного варианта пути misc/api/(admin|user/*)/[sub/module]/paths/[method_path].yaml # Сборщик бандла misc/api/generate_docs.pl |
Модули
...
API модуля
| Блок кода |
|---|
Abills/modules/[module name]/Api.pm |
Тесты Api
| Блок кода |
|---|
# консольный тест Abills/modules/[module name]/t/Api.t # схемы Abills/modules/[module name]/t/schemas/(admin Abills/modules/[module name]/t/schemas/user|user) |
OpenAPI
| Блок кода |
|---|
Abills/modules/[module name]/Api/swagger/(admin Abills/modules/[module name]/Api/swagger/user|user) |