CreateProjectVersionDto
Class: CreateProjectVersionDto
Defined in: apps/api/src/modules/project-versions/dto/create-project-version.dto.ts:19
DTO для создания новой версии проекта.
Используется эндпоинтом:
POST /projects/:id/versions
Данный DTO принимает сырую DSL-схему приложения (AppSchema),
которая может быть:
- полной и валидной (как после успешной компиляции),
- частично валидной (в процессе редактирования),
- или вовсе сломанной (черновик).
Это сделано намеренно — проектные версии должны сохраняться в любых состояниях, включая промежуточные и автосохранения.
Constructors
Constructor
new CreateProjectVersionDto():
CreateProjectVersionDto
Returns
CreateProjectVersionDto
Properties
app
app:
AppSchema
Defined in: apps/api/src/modules/project-versions/dto/create-project-version.dto.ts:34
Полная DSL-схема приложения (AppSchema), привязанная
к конкретной версии проекта.
Валидация на стороне DTO НЕ проверяет структуру, она гарантирует лишь то, что это объект — всё остальное решается бизнес-логикой или пользователем в UI.
Примеры использования:
- автосохранение каждые N секунд в редакторе;
- создание новой версии перед компиляцией;
- сохранение рабочей/ломающей правки.
label?
optionallabel:string
Defined in: apps/api/src/modules/project-versions/dto/create-project-version.dto.ts:50
Необязательная метка версии.
Показывается в UI рядом с номером версии, например:
"Autosave""Before refactor""Added new form"
Если не указана — сервис сам может назначить более общие названия для версий.