DslController
Class: DslController
Defined in: apps/api/src/modules/dsl/dsl.controller.ts:21
Контроллер DSL-операций.
Отвечает за:
- валидацию DSL-приложения;
- компиляцию DSL в React-формат;
- компиляцию DSL в статический HTML.
Все операции делегируются соответствующим методам DslService,
сам контроллер не содержит бизнес-логики.
Constructors
Constructor
new DslController(
dslService):DslController
Defined in: apps/api/src/modules/dsl/dsl.controller.ts:22
Parameters
dslService
Returns
DslController
Methods
compileHtml()
compileHtml(
dto):GeneratedBundle
Defined in: apps/api/src/modules/dsl/dsl.controller.ts:81
Компиляция DSL-схемы в статический HTML/CSS bundle.
Parameters
dto
DTO с DSL-схемой и опциональными параметрами генерации.
Returns
GeneratedBundle
Сгенерированный HTML/CSS-bundle.
Route
POST /dsl/compile/html
Генерирует статическую разметку и CSS-оформление, пригодные для публикации на статических хостингах.
Использует HTML-генератор из @lowcode/dsl-compiler.
compileReact()
compileReact(
dto):GeneratedBundle
Defined in: apps/api/src/modules/dsl/dsl.controller.ts:63
Компиляция DSL-схемы в React-совместимый bundle.
Parameters
dto
DTO с DSL-схемой и опциональными параметрами генерации.
Returns
GeneratedBundle
Сгенерированный React-bundle.
Route
POST /dsl/compile/react
Генерирует JavaScript/TypeScript код, который может быть использован как:
- React-компонент,
- готовый клиентский bundle,
- основа для SSR.
Использует React-генератор из @lowcode/dsl-compiler.
validate()
validate(
dto):DslValidationResult
Defined in: apps/api/src/modules/dsl/dsl.controller.ts:42
Валидация полного DSL-приложения.
Parameters
dto
Объект ValidateDslDto, содержащий DSL приложения.
Returns
Результат валидации DSL.
Route
POST /dsl/validate
Проверяет структуру AppSchema:
- корректность типов компонентов;
- правильность props;
- целостность иерархии дерева;
- наличие обязательных полей.
Возвращает объект DslValidationResult, содержащий список ошибок
и предупреждений, собранных DSL Compiler'ом.