UNPKG

@udraft/core

Version:

uDraft is a language and stack agnostic code-generation tool that simplifies full-stack development by converting a single YAML file into code for rapid development.

33 lines (30 loc) 1.08 kB
import DartApiClientRenderer from "./builtin/dart-api-client-renderer"; import DartClassRenderer from "./builtin/dart-class-renderer"; import TSApiClientRenderer from "./builtin/ts-api-client-renderer"; import TSClassRenderer from "./builtin/ts-class-renderer"; import TSClassValidatorRenderer from "./builtin/ts-class-validator-renderer"; import TSDraftRenderer from "./builtin/ts-draft-renderer"; import TSMongooseSchemaRenderer from "./builtin/ts-mongoose-schema-renderer"; import { UDraft } from "./entities/draft"; import { $attr } from "./shortcuts/queries"; const project = UDraft.load("example-draft.yaml"); if (project) { project .begin("projects/server/") .pipeline([ new TSDraftRenderer(), new TSClassRenderer(), new TSMongooseSchemaRenderer(), new TSClassValidatorRenderer(), new TSApiClientRenderer(), ]) .clear() .goTo("projects/client/") .pipeline([ new DartClassRenderer({ where: (mod, model) => !$attr(model, "schema"), }), new DartApiClientRenderer(), ]) .exec(); }