@decohere/create 0.0.1-dev.17 → 0.0.1-dev.19

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (93) hide show
  1. package/commonjs/src/cli.js +30 -5
  2. package/commonjs/src/domain/prompt.js +55 -0
  3. package/commonjs/src/models/compose.model.js +82 -0
  4. package/commonjs/src/models/config-yaml.model.js +34 -0
  5. package/commonjs/src/models/const.js +29 -0
  6. package/commonjs/src/models/container-image.model.js +88 -0
  7. package/commonjs/src/models/dev-container.model.js +73 -0
  8. package/commonjs/src/models/env-file.model.js +33 -0
  9. package/commonjs/src/models/gitignore.model.js +32 -0
  10. package/commonjs/src/models/launch-json.model.js +52 -0
  11. package/commonjs/src/models/package-json.model.js +64 -0
  12. package/commonjs/src/models/project.model.js +126 -0
  13. package/commonjs/src/models/source-file.js +6 -0
  14. package/commonjs/src/models/tsconfig.model.js +34 -0
  15. package/commonjs/src/models/vscode-settings.model.js +31 -0
  16. package/commonjs/src/runner.js +56 -0
  17. package/commonjs/src/services/scaffold.service.js +62 -0
  18. package/commonjs/src/version.js +32 -0
  19. package/commonjs/src/webapi/create-api.js +169 -0
  20. package/commonjs/src/webapi/features/auth.feature.js +166 -0
  21. package/commonjs/src/webapi/features/auth0-cli.js +151 -0
  22. package/commonjs/src/webapi/features/database.feature.js +151 -0
  23. package/commonjs/src/webapi/features/finalize.feature.js +51 -0
  24. package/commonjs/src/webapi/features/postman.feature.js +309 -0
  25. package/commonjs/src/webapi/models/api-package-json.model.js +57 -0
  26. package/commonjs/src/webapi/models/auth-config.model.js +23 -0
  27. package/commonjs/src/webapi/models/controller-source-file.model.js +180 -0
  28. package/commonjs/src/webapi/models/main-source-file.model.js +132 -0
  29. package/commonjs/src/webapi/models/sample-files.model.js +60 -0
  30. package/es6/src/cli.js +30 -5
  31. package/es6/src/domain/prompt.js +37 -0
  32. package/es6/src/models/compose.model.js +77 -0
  33. package/es6/src/models/config-yaml.model.js +30 -0
  34. package/es6/src/models/const.js +19 -0
  35. package/es6/src/models/container-image.model.js +84 -0
  36. package/es6/src/models/dev-container.model.js +68 -0
  37. package/es6/src/models/env-file.model.js +29 -0
  38. package/es6/src/models/gitignore.model.js +22 -0
  39. package/es6/src/models/launch-json.model.js +42 -0
  40. package/es6/src/models/package-json.model.js +60 -0
  41. package/es6/src/models/project.model.js +111 -0
  42. package/es6/src/models/source-file.js +3 -0
  43. package/es6/src/models/tsconfig.model.js +24 -0
  44. package/es6/src/models/vscode-settings.model.js +21 -0
  45. package/es6/src/runner.js +55 -0
  46. package/es6/src/services/scaffold.service.js +52 -0
  47. package/es6/src/version.js +22 -0
  48. package/es6/src/webapi/create-api.js +151 -0
  49. package/es6/src/webapi/features/auth.feature.js +115 -0
  50. package/es6/src/webapi/features/auth0-cli.js +116 -0
  51. package/es6/src/webapi/features/database.feature.js +141 -0
  52. package/es6/src/webapi/features/finalize.feature.js +41 -0
  53. package/es6/src/webapi/features/postman.feature.js +258 -0
  54. package/es6/src/webapi/models/api-package-json.model.js +52 -0
  55. package/es6/src/webapi/models/auth-config.model.js +19 -0
  56. package/es6/src/webapi/models/controller-source-file.model.js +171 -0
  57. package/es6/src/webapi/models/main-source-file.model.js +128 -0
  58. package/es6/src/webapi/models/sample-files.model.js +42 -0
  59. package/package.json +2 -2
  60. package/types/src/domain/prompt.d.ts +2 -0
  61. package/types/src/models/compose.model.d.ts +32 -0
  62. package/types/src/models/config-yaml.model.d.ts +16 -0
  63. package/types/src/models/const.d.ts +17 -0
  64. package/types/src/models/container-image.model.d.ts +15 -0
  65. package/types/src/models/dev-container.model.d.ts +21 -0
  66. package/types/src/models/env-file.model.d.ts +14 -0
  67. package/types/src/models/gitignore.model.d.ts +6 -0
  68. package/types/src/models/launch-json.model.d.ts +5 -0
  69. package/types/src/models/package-json.model.d.ts +18 -0
  70. package/types/src/models/project.model.d.ts +55 -0
  71. package/types/src/models/source-file.d.ts +11 -0
  72. package/types/src/models/tsconfig.model.d.ts +5 -0
  73. package/types/src/models/vscode-settings.model.d.ts +7 -0
  74. package/types/src/runner.d.ts +13 -0
  75. package/types/src/services/scaffold.service.d.ts +22 -0
  76. package/types/src/version.d.ts +2 -0
  77. package/types/src/webapi/create-api.d.ts +7 -0
  78. package/types/src/webapi/features/auth.feature.d.ts +7 -0
  79. package/types/src/webapi/features/auth0-cli.d.ts +22 -0
  80. package/types/src/webapi/features/database.feature.d.ts +5 -0
  81. package/types/src/webapi/features/finalize.feature.d.ts +2 -0
  82. package/types/src/webapi/features/postman.feature.d.ts +7 -0
  83. package/types/src/webapi/models/api-package-json.model.d.ts +17 -0
  84. package/types/src/webapi/models/auth-config.model.d.ts +18 -0
  85. package/types/src/webapi/models/controller-source-file.model.d.ts +42 -0
  86. package/types/src/webapi/models/main-source-file.model.d.ts +36 -0
  87. package/types/src/webapi/models/sample-files.model.d.ts +7 -0
  88. package/commonjs/src/scaffold.js +0 -89
  89. package/commonjs/src/templates.js +0 -306
  90. package/es6/src/scaffold.js +0 -79
  91. package/es6/src/templates.js +0 -246
  92. package/types/src/scaffold.d.ts +0 -6
  93. package/types/src/templates.d.ts +0 -20
@@ -1,246 +0,0 @@
1
- export function ROOT_PACKAGE_JSON(name) {
2
- return JSON.stringify({
3
- name,
4
- version: "0.0.1",
5
- type: "module",
6
- scripts: {
7
- build: "forge build",
8
- "build:watch": "forge build --watch",
9
- dev: "flux serve"
10
- },
11
- devDependencies: {
12
- "@decohere/terminal": "0.0.1-dev.14",
13
- typescript: "^6.0.3"
14
- }
15
- }, null, 2);
16
- }
17
- export function WEB_API_ROOT_PACKAGE_JSON(name, opts) {
18
- const deps = {
19
- "@decohere/cortex": "0.0.1-dev.15",
20
- "@decohere/protocol": "0.0.1-dev.15",
21
- "@decohere/scribe": "0.0.1-dev.15",
22
- "@decohere/scribe-pino": "0.0.1-dev.15",
23
- "pino-pretty": "^13.0.0"
24
- };
25
- if (opts?.database === "typeorm") {
26
- deps["@decohere/codex"] = "0.0.1-dev.15";
27
- deps["@decohere/codex-typeorm"] = "0.0.1-dev.15";
28
- }
29
- return JSON.stringify({
30
- name: `${name}.api`,
31
- version: "0.0.1",
32
- type: "module",
33
- scripts: {
34
- build: "forge build",
35
- "build:watch": "forge build --watch",
36
- dev: "flux serve"
37
- },
38
- dependencies: deps,
39
- devDependencies: {
40
- "@decohere/terminal": "0.0.1-dev.15",
41
- typescript: "^6.0.3"
42
- }
43
- }, null, 2);
44
- }
45
- export function APP_PACKAGE_JSON(name) {
46
- return JSON.stringify({
47
- name: `@${name}/app`,
48
- version: "0.0.1",
49
- type: "module",
50
- main: "src/main.ts"
51
- }, null, 2);
52
- }
53
- export const TSCONFIG = JSON.stringify({
54
- compilerOptions: {
55
- target: "ES2022",
56
- module: "NodeNext",
57
- moduleResolution: "NodeNext",
58
- strict: true,
59
- skipLibCheck: true
60
- },
61
- include: [
62
- "projects"
63
- ]
64
- }, null, 2);
65
- export const MAIN_TS = `console.log("Hello from Decohere!");
66
- `;
67
- export const WEB_API_TSCONFIG = JSON.stringify({
68
- compilerOptions: {
69
- target: "ES2022",
70
- module: "NodeNext",
71
- moduleResolution: "NodeNext",
72
- strict: true,
73
- skipLibCheck: true,
74
- experimentalDecorators: true,
75
- emitDecoratorMetadata: true
76
- },
77
- include: [
78
- "projects"
79
- ]
80
- }, null, 2);
81
- export function WEB_API_APP_PACKAGE_JSON(name) {
82
- return JSON.stringify({
83
- name: `@${name}/api`,
84
- version: "0.0.1",
85
- type: "module",
86
- main: "src/main.ts",
87
- dependencies: {
88
- "@decohere/cortex": "0.0.1-dev.15",
89
- "@decohere/crucible": "0.0.1-dev.15"
90
- }
91
- }, null, 2);
92
- }
93
- export function WEB_API_MAIN_TS(name, opts) {
94
- const dbImport = opts?.database === "typeorm" ? `import "@decohere/codex-typeorm";
95
- import { SampleEntity } from "./entities/sample.entity.js";
96
- import { SampleEntityRepository } from "./repositories/sample.repository.js";
97
- ` : "";
98
- const dbChain = opts?.database === "typeorm" ? `\n\t.withTypeOrm({ entities: [SampleEntity], repositories: [SampleEntityRepository] })` : "";
99
- return `import "@decohere/scribe-pino";
100
- import "@decohere/cortex/http";
101
- import "@decohere/protocol";
102
- ${dbImport}import { Builder } from "@decohere/cortex";
103
- import { FastifyProvider } from "@decohere/cortex/providers";
104
- import { scribe } from "@decohere/scribe";
105
- import { YamlDataSource } from "@decohere/protocol";
106
- import { HelloController } from "./controllers/hello.controller.js";
107
- import { SampleService } from "./sample.service.js";
108
-
109
- scribe.extend.withPinoPretty();
110
-
111
- const app = await Builder.create({ applicationName: "${name}.api" })
112
- \t.withHttpProvider(FastifyProvider)
113
- \t.withConfiguration(YamlDataSource)
114
- \t.withServices((cb) => {
115
- \t\tcb.registerSingleton(SampleService);
116
- \t})${dbChain}
117
- \t.withControllers(HelloController)
118
- \t.build();
119
-
120
- await app.start({ port: 3000 });
121
-
122
- export default app;
123
- `;
124
- }
125
- export const HELLO_CONTROLLER_TS = `import { Controller, Delete, Field, Get, Param, Post, Put, Query } from "@decohere/cortex";
126
- import { SampleService } from "../sample.service.js";
127
-
128
- class HelloBody {
129
- @Field("body", "message")
130
- public message!: string;
131
- }
132
-
133
- @Controller({ prefix: "/hello" })
134
- export class HelloController {
135
- public constructor(private readonly sample: SampleService) {}
136
-
137
- @Get()
138
- public async getAll(@Query("filter") filter: string) {
139
- const greeting = await this.sample.getGreeting();
140
- return { filter, message: greeting };
141
- }
142
-
143
- @Get("/:id")
144
- public getOne(@Param("id") id: string) {
145
- return { id, message: \`Hello \${id}!\` };
146
- }
147
-
148
- @Post("/")
149
- public create(body: HelloBody) {
150
- return { message: body.message };
151
- }
152
-
153
- @Put("/:id")
154
- public update(@Param("id") id: string, body: HelloBody) {
155
- return { id, message: body.message };
156
- }
157
-
158
- @Delete("/:id")
159
- public remove(@Param("id") id: string) {
160
- return { id, deleted: true };
161
- }
162
- }
163
- `;
164
- export const SAMPLE_CONFIG_TS = `export class SampleConfig {
165
- public greeting: string = "";
166
- }
167
- `;
168
- export const SAMPLE_SERVICE_TS = `import { inject, injectable } from "@decohere/crucible/decorators";
169
- import { ConfigurationServiceToken } from "@decohere/nexus/configuration";
170
- import type { IConfigurationService } from "@decohere/nexus/configuration";
171
- import { SampleConfig } from "./sample.config.js";
172
-
173
- @injectable()
174
- export class SampleService {
175
- public constructor(
176
- @inject(ConfigurationServiceToken) private readonly config: IConfigurationService,
177
- ) {}
178
-
179
- public async getGreeting(): Promise<string> {
180
- const config = await this.config.get(SampleConfig);
181
- return config.greeting;
182
- }
183
- }
184
- `;
185
- export function CONFIG_YAML(name, opts) {
186
- const dbSection = opts?.database === "typeorm" ? `database:
187
- dataSources:
188
- - name: default
189
- provider: postgres
190
- host: localhost
191
- port: 5432
192
- database: ${name}_dev
193
- username: postgres
194
- password: postgres
195
- synchronize: true
196
- seed: false
197
- adminUser: postgres
198
- adminPassword: postgres
199
- ` : "";
200
- return `sample:
201
- greeting: Hello from configuration!
202
- ${dbSection}`;
203
- }
204
- export const CONFIG_DEV_YAML = `sample:
205
- greeting: Hello from dev configuration!
206
- `;
207
- export const CONFIG_PROD_YAML = `database:
208
- dataSources:
209
- - name: default
210
- provider: postgres
211
- host: \${DB_HOST}
212
- port: \${DB_PORT}
213
- database: \${DB_NAME}
214
- username: \${DB_USER}
215
- password: \${DB_PASSWORD}
216
- synchronize: false
217
- seed: false
218
- adminUser: \${DB_ADMIN_USER}
219
- adminPassword: \${DB_ADMIN_PASSWORD}
220
- `;
221
- export const SAMPLE_ENTITY_TS = `import { Column, Entity, PrimaryGeneratedColumn } from "typeorm";
222
- import type { Entity as IEntity } from "@decohere/codex";
223
-
224
- @Entity()
225
- export class SampleEntity implements IEntity {
226
- \t@PrimaryGeneratedColumn()
227
- \tpublic id!: number;
228
-
229
- \t@Column()
230
- \tpublic name!: string;
231
- }
232
- `;
233
- export const SAMPLE_REPOSITORY_TS = `import { injectable } from "@decohere/crucible/decorators";
234
- import { injectUnitOfWork } from "@decohere/codex";
235
- import { TypeOrmRepository, TypeOrmUnitOfWork } from "@decohere/codex-typeorm";
236
- import { SampleEntity } from "../entities/sample.entity.js";
237
-
238
- @injectable()
239
- export class SampleEntityRepository extends TypeOrmRepository<SampleEntity> {
240
- \tpublic constructor(@injectUnitOfWork() unitOfWork: TypeOrmUnitOfWork) {
241
- \t\tsuper(unitOfWork, SampleEntity);
242
- \t}
243
- }
244
- `;
245
-
246
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9ob21lL3J1bm5lci93b3JrL2RlY29oZXJlL2RlY29oZXJlL3Byb2plY3RzL2NyZWF0ZS9zcmMvdGVtcGxhdGVzLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBmdW5jdGlvbiBST09UX1BBQ0tBR0VfSlNPTihuYW1lOiBzdHJpbmcpOiBzdHJpbmcge1xuXHRyZXR1cm4gSlNPTi5zdHJpbmdpZnkoXG5cdFx0e1xuXHRcdFx0bmFtZSxcblx0XHRcdHZlcnNpb246IFwiMC4wLjFcIixcblx0XHRcdHR5cGU6IFwibW9kdWxlXCIsXG5cdFx0XHRzY3JpcHRzOiB7XG5cdFx0XHRcdGJ1aWxkOiBcImZvcmdlIGJ1aWxkXCIsXG5cdFx0XHRcdFwiYnVpbGQ6d2F0Y2hcIjogXCJmb3JnZSBidWlsZCAtLXdhdGNoXCIsXG5cdFx0XHRcdGRldjogXCJmbHV4IHNlcnZlXCIsXG5cdFx0XHR9LFxuXHRcdFx0ZGV2RGVwZW5kZW5jaWVzOiB7XG5cdFx0XHRcdFwiQGRlY29oZXJlL3Rlcm1pbmFsXCI6IFwiMC4wLjEtZGV2LjE0XCIsXG5cdFx0XHRcdHR5cGVzY3JpcHQ6IFwiXjYuMC4zXCIsXG5cdFx0XHR9LFxuXHRcdH0sXG5cdFx0bnVsbCxcblx0XHQyLFxuXHQpO1xufVxuXG5leHBvcnQgdHlwZSBEYXRhYmFzZVByb3ZpZGVyID0gXCJ0eXBlb3JtXCI7XG5cbmV4cG9ydCB0eXBlIFdlYkFwaU9wdGlvbnMgPSB7XG5cdGRhdGFiYXNlPzogRGF0YWJhc2VQcm92aWRlcjtcbn07XG5cbmV4cG9ydCBmdW5jdGlvbiBXRUJfQVBJX1JPT1RfUEFDS0FHRV9KU09OKG5hbWU6IHN0cmluZywgb3B0cz86IFdlYkFwaU9wdGlvbnMpOiBzdHJpbmcge1xuXHRjb25zdCBkZXBzOiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+ID0ge1xuXHRcdFwiQGRlY29oZXJlL2NvcnRleFwiOiBcIjAuMC4xLWRldi4xNVwiLFxuXHRcdFwiQGRlY29oZXJlL3Byb3RvY29sXCI6IFwiMC4wLjEtZGV2LjE1XCIsXG5cdFx0XCJAZGVjb2hlcmUvc2NyaWJlXCI6IFwiMC4wLjEtZGV2LjE1XCIsXG5cdFx0XCJAZGVjb2hlcmUvc2NyaWJlLXBpbm9cIjogXCIwLjAuMS1kZXYuMTVcIixcblx0XHRcInBpbm8tcHJldHR5XCI6IFwiXjEzLjAuMFwiLFxuXHR9O1xuXHRpZiAob3B0cz8uZGF0YWJhc2UgPT09IFwidHlwZW9ybVwiKSB7XG5cdFx0ZGVwc1tcIkBkZWNvaGVyZS9jb2RleFwiXSA9IFwiMC4wLjEtZGV2LjE1XCI7XG5cdFx0ZGVwc1tcIkBkZWNvaGVyZS9jb2RleC10eXBlb3JtXCJdID0gXCIwLjAuMS1kZXYuMTVcIjtcblx0fVxuXHRyZXR1cm4gSlNPTi5zdHJpbmdpZnkoXG5cdFx0e1xuXHRcdFx0bmFtZTogYCR7bmFtZX0uYXBpYCxcblx0XHRcdHZlcnNpb246IFwiMC4wLjFcIixcblx0XHRcdHR5cGU6IFwibW9kdWxlXCIsXG5cdFx0XHRzY3JpcHRzOiB7XG5cdFx0XHRcdGJ1aWxkOiBcImZvcmdlIGJ1aWxkXCIsXG5cdFx0XHRcdFwiYnVpbGQ6d2F0Y2hcIjogXCJmb3JnZSBidWlsZCAtLXdhdGNoXCIsXG5cdFx0XHRcdGRldjogXCJmbHV4IHNlcnZlXCIsXG5cdFx0XHR9LFxuXHRcdFx0ZGVwZW5kZW5jaWVzOiBkZXBzLFxuXHRcdFx0ZGV2RGVwZW5kZW5jaWVzOiB7XG5cdFx0XHRcdFwiQGRlY29oZXJlL3Rlcm1pbmFsXCI6IFwiMC4wLjEtZGV2LjE1XCIsXG5cdFx0XHRcdHR5cGVzY3JpcHQ6IFwiXjYuMC4zXCIsXG5cdFx0XHR9LFxuXHRcdH0sXG5cdFx0bnVsbCxcblx0XHQyLFxuXHQpO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gQVBQX1BBQ0tBR0VfSlNPTihuYW1lOiBzdHJpbmcpOiBzdHJpbmcge1xuXHRyZXR1cm4gSlNPTi5zdHJpbmdpZnkoXG5cdFx0e1xuXHRcdFx0bmFtZTogYEAke25hbWV9L2FwcGAsXG5cdFx0XHR2ZXJzaW9uOiBcIjAuMC4xXCIsXG5cdFx0XHR0eXBlOiBcIm1vZHVsZVwiLFxuXHRcdFx0bWFpbjogXCJzcmMvbWFpbi50c1wiLFxuXHRcdH0sXG5cdFx0bnVsbCxcblx0XHQyLFxuXHQpO1xufVxuXG5leHBvcnQgY29uc3QgVFNDT05GSUcgPSBKU09OLnN0cmluZ2lmeShcblx0e1xuXHRcdGNvbXBpbGVyT3B0aW9uczoge1xuXHRcdFx0dGFyZ2V0OiBcIkVTMjAyMlwiLFxuXHRcdFx0bW9kdWxlOiBcIk5vZGVOZXh0XCIsXG5cdFx0XHRtb2R1bGVSZXNvbHV0aW9uOiBcIk5vZGVOZXh0XCIsXG5cdFx0XHRzdHJpY3Q6IHRydWUsXG5cdFx0XHRza2lwTGliQ2hlY2s6IHRydWUsXG5cdFx0fSxcblx0XHRpbmNsdWRlOiBbXCJwcm9qZWN0c1wiXSxcblx0fSxcblx0bnVsbCxcblx0Mixcbik7XG5cbmV4cG9ydCBjb25zdCBNQUlOX1RTID0gYGNvbnNvbGUubG9nKFwiSGVsbG8gZnJvbSBEZWNvaGVyZSFcIik7XG5gO1xuXG5leHBvcnQgY29uc3QgV0VCX0FQSV9UU0NPTkZJRyA9IEpTT04uc3RyaW5naWZ5KFxuXHR7XG5cdFx0Y29tcGlsZXJPcHRpb25zOiB7XG5cdFx0XHR0YXJnZXQ6IFwiRVMyMDIyXCIsXG5cdFx0XHRtb2R1bGU6IFwiTm9kZU5leHRcIixcblx0XHRcdG1vZHVsZVJlc29sdXRpb246IFwiTm9kZU5leHRcIixcblx0XHRcdHN0cmljdDogdHJ1ZSxcblx0XHRcdHNraXBMaWJDaGVjazogdHJ1ZSxcblx0XHRcdGV4cGVyaW1lbnRhbERlY29yYXRvcnM6IHRydWUsXG5cdFx0XHRlbWl0RGVjb3JhdG9yTWV0YWRhdGE6IHRydWUsXG5cdFx0fSxcblx0XHRpbmNsdWRlOiBbXCJwcm9qZWN0c1wiXSxcblx0fSxcblx0bnVsbCxcblx0Mixcbik7XG5cbmV4cG9ydCBmdW5jdGlvbiBXRUJfQVBJX0FQUF9QQUNLQUdFX0pTT04obmFtZTogc3RyaW5nKTogc3RyaW5nIHtcblx0cmV0dXJuIEpTT04uc3RyaW5naWZ5KFxuXHRcdHtcblx0XHRcdG5hbWU6IGBAJHtuYW1lfS9hcGlgLFxuXHRcdFx0dmVyc2lvbjogXCIwLjAuMVwiLFxuXHRcdFx0dHlwZTogXCJtb2R1bGVcIixcblx0XHRcdG1haW46IFwic3JjL21haW4udHNcIixcblx0XHRcdGRlcGVuZGVuY2llczoge1xuXHRcdFx0XHRcIkBkZWNvaGVyZS9jb3J0ZXhcIjogXCIwLjAuMS1kZXYuMTVcIixcblx0XHRcdFx0XCJAZGVjb2hlcmUvY3J1Y2libGVcIjogXCIwLjAuMS1kZXYuMTVcIixcblx0XHRcdH0sXG5cdFx0fSxcblx0XHRudWxsLFxuXHRcdDIsXG5cdCk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBXRUJfQVBJX01BSU5fVFMobmFtZTogc3RyaW5nLCBvcHRzPzogV2ViQXBpT3B0aW9ucyk6IHN0cmluZyB7XG5cdGNvbnN0IGRiSW1wb3J0ID1cblx0XHRvcHRzPy5kYXRhYmFzZSA9PT0gXCJ0eXBlb3JtXCJcblx0XHRcdD8gYGltcG9ydCBcIkBkZWNvaGVyZS9jb2RleC10eXBlb3JtXCI7XG5pbXBvcnQgeyBTYW1wbGVFbnRpdHkgfSBmcm9tIFwiLi9lbnRpdGllcy9zYW1wbGUuZW50aXR5LmpzXCI7XG5pbXBvcnQgeyBTYW1wbGVFbnRpdHlSZXBvc2l0b3J5IH0gZnJvbSBcIi4vcmVwb3NpdG9yaWVzL3NhbXBsZS5yZXBvc2l0b3J5LmpzXCI7XG5gXG5cdFx0XHQ6IFwiXCI7XG5cdGNvbnN0IGRiQ2hhaW4gPVxuXHRcdG9wdHM/LmRhdGFiYXNlID09PSBcInR5cGVvcm1cIlxuXHRcdFx0PyBgXFxuXFx0LndpdGhUeXBlT3JtKHsgZW50aXRpZXM6IFtTYW1wbGVFbnRpdHldLCByZXBvc2l0b3JpZXM6IFtTYW1wbGVFbnRpdHlSZXBvc2l0b3J5XSB9KWBcblx0XHRcdDogXCJcIjtcblx0cmV0dXJuIGBpbXBvcnQgXCJAZGVjb2hlcmUvc2NyaWJlLXBpbm9cIjtcbmltcG9ydCBcIkBkZWNvaGVyZS9jb3J0ZXgvaHR0cFwiO1xuaW1wb3J0IFwiQGRlY29oZXJlL3Byb3RvY29sXCI7XG4ke2RiSW1wb3J0fWltcG9ydCB7IEJ1aWxkZXIgfSBmcm9tIFwiQGRlY29oZXJlL2NvcnRleFwiO1xuaW1wb3J0IHsgRmFzdGlmeVByb3ZpZGVyIH0gZnJvbSBcIkBkZWNvaGVyZS9jb3J0ZXgvcHJvdmlkZXJzXCI7XG5pbXBvcnQgeyBzY3JpYmUgfSBmcm9tIFwiQGRlY29oZXJlL3NjcmliZVwiO1xuaW1wb3J0IHsgWWFtbERhdGFTb3VyY2UgfSBmcm9tIFwiQGRlY29oZXJlL3Byb3RvY29sXCI7XG5pbXBvcnQgeyBIZWxsb0NvbnRyb2xsZXIgfSBmcm9tIFwiLi9jb250cm9sbGVycy9oZWxsby5jb250cm9sbGVyLmpzXCI7XG5pbXBvcnQgeyBTYW1wbGVTZXJ2aWNlIH0gZnJvbSBcIi4vc2FtcGxlLnNlcnZpY2UuanNcIjtcblxuc2NyaWJlLmV4dGVuZC53aXRoUGlub1ByZXR0eSgpO1xuXG5jb25zdCBhcHAgPSBhd2FpdCBCdWlsZGVyLmNyZWF0ZSh7IGFwcGxpY2F0aW9uTmFtZTogXCIke25hbWV9LmFwaVwiIH0pXG5cXHQud2l0aEh0dHBQcm92aWRlcihGYXN0aWZ5UHJvdmlkZXIpXG5cXHQud2l0aENvbmZpZ3VyYXRpb24oWWFtbERhdGFTb3VyY2UpXG5cXHQud2l0aFNlcnZpY2VzKChjYikgPT4ge1xuXFx0XFx0Y2IucmVnaXN0ZXJTaW5nbGV0b24oU2FtcGxlU2VydmljZSk7XG5cXHR9KSR7ZGJDaGFpbn1cblxcdC53aXRoQ29udHJvbGxlcnMoSGVsbG9Db250cm9sbGVyKVxuXFx0LmJ1aWxkKCk7XG5cbmF3YWl0IGFwcC5zdGFydCh7IHBvcnQ6IDMwMDAgfSk7XG5cbmV4cG9ydCBkZWZhdWx0IGFwcDtcbmA7XG59XG5cbmV4cG9ydCBjb25zdCBIRUxMT19DT05UUk9MTEVSX1RTID0gYGltcG9ydCB7IENvbnRyb2xsZXIsIERlbGV0ZSwgRmllbGQsIEdldCwgUGFyYW0sIFBvc3QsIFB1dCwgUXVlcnkgfSBmcm9tIFwiQGRlY29oZXJlL2NvcnRleFwiO1xuaW1wb3J0IHsgU2FtcGxlU2VydmljZSB9IGZyb20gXCIuLi9zYW1wbGUuc2VydmljZS5qc1wiO1xuXG5jbGFzcyBIZWxsb0JvZHkge1xuXHRARmllbGQoXCJib2R5XCIsIFwibWVzc2FnZVwiKVxuXHRwdWJsaWMgbWVzc2FnZSE6IHN0cmluZztcbn1cblxuQENvbnRyb2xsZXIoeyBwcmVmaXg6IFwiL2hlbGxvXCIgfSlcbmV4cG9ydCBjbGFzcyBIZWxsb0NvbnRyb2xsZXIge1xuXHRwdWJsaWMgY29uc3RydWN0b3IocHJpdmF0ZSByZWFkb25seSBzYW1wbGU6IFNhbXBsZVNlcnZpY2UpIHt9XG5cblx0QEdldCgpXG5cdHB1YmxpYyBhc3luYyBnZXRBbGwoQFF1ZXJ5KFwiZmlsdGVyXCIpIGZpbHRlcjogc3RyaW5nKSB7XG5cdFx0Y29uc3QgZ3JlZXRpbmcgPSBhd2FpdCB0aGlzLnNhbXBsZS5nZXRHcmVldGluZygpO1xuXHRcdHJldHVybiB7IGZpbHRlciwgbWVzc2FnZTogZ3JlZXRpbmcgfTtcblx0fVxuXG5cdEBHZXQoXCIvOmlkXCIpXG5cdHB1YmxpYyBnZXRPbmUoQFBhcmFtKFwiaWRcIikgaWQ6IHN0cmluZykge1xuXHRcdHJldHVybiB7IGlkLCBtZXNzYWdlOiBcXGBIZWxsbyBcXCR7aWR9IVxcYCB9O1xuXHR9XG5cblx0QFBvc3QoXCIvXCIpXG5cdHB1YmxpYyBjcmVhdGUoYm9keTogSGVsbG9Cb2R5KSB7XG5cdFx0cmV0dXJuIHsgbWVzc2FnZTogYm9keS5tZXNzYWdlIH07XG5cdH1cblxuXHRAUHV0KFwiLzppZFwiKVxuXHRwdWJsaWMgdXBkYXRlKEBQYXJhbShcImlkXCIpIGlkOiBzdHJpbmcsIGJvZHk6IEhlbGxvQm9keSkge1xuXHRcdHJldHVybiB7IGlkLCBtZXNzYWdlOiBib2R5Lm1lc3NhZ2UgfTtcblx0fVxuXG5cdEBEZWxldGUoXCIvOmlkXCIpXG5cdHB1YmxpYyByZW1vdmUoQFBhcmFtKFwiaWRcIikgaWQ6IHN0cmluZykge1xuXHRcdHJldHVybiB7IGlkLCBkZWxldGVkOiB0cnVlIH07XG5cdH1cbn1cbmA7XG5cbmV4cG9ydCBjb25zdCBTQU1QTEVfQ09ORklHX1RTID0gYGV4cG9ydCBjbGFzcyBTYW1wbGVDb25maWcge1xuXHRwdWJsaWMgZ3JlZXRpbmc6IHN0cmluZyA9IFwiXCI7XG59XG5gO1xuXG5leHBvcnQgY29uc3QgU0FNUExFX1NFUlZJQ0VfVFMgPSBgaW1wb3J0IHsgaW5qZWN0LCBpbmplY3RhYmxlIH0gZnJvbSBcIkBkZWNvaGVyZS9jcnVjaWJsZS9kZWNvcmF0b3JzXCI7XG5pbXBvcnQgeyBDb25maWd1cmF0aW9uU2VydmljZVRva2VuIH0gZnJvbSBcIkBkZWNvaGVyZS9uZXh1cy9jb25maWd1cmF0aW9uXCI7XG5pbXBvcnQgdHlwZSB7IElDb25maWd1cmF0aW9uU2VydmljZSB9IGZyb20gXCJAZGVjb2hlcmUvbmV4dXMvY29uZmlndXJhdGlvblwiO1xuaW1wb3J0IHsgU2FtcGxlQ29uZmlnIH0gZnJvbSBcIi4vc2FtcGxlLmNvbmZpZy5qc1wiO1xuXG5AaW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgU2FtcGxlU2VydmljZSB7XG5cdHB1YmxpYyBjb25zdHJ1Y3Rvcihcblx0XHRAaW5qZWN0KENvbmZpZ3VyYXRpb25TZXJ2aWNlVG9rZW4pIHByaXZhdGUgcmVhZG9ubHkgY29uZmlnOiBJQ29uZmlndXJhdGlvblNlcnZpY2UsXG5cdCkge31cblxuXHRwdWJsaWMgYXN5bmMgZ2V0R3JlZXRpbmcoKTogUHJvbWlzZTxzdHJpbmc+IHtcblx0XHRjb25zdCBjb25maWcgPSBhd2FpdCB0aGlzLmNvbmZpZy5nZXQoU2FtcGxlQ29uZmlnKTtcblx0XHRyZXR1cm4gY29uZmlnLmdyZWV0aW5nO1xuXHR9XG59XG5gO1xuXG5leHBvcnQgZnVuY3Rpb24gQ09ORklHX1lBTUwobmFtZTogc3RyaW5nLCBvcHRzPzogV2ViQXBpT3B0aW9ucyk6IHN0cmluZyB7XG5cdGNvbnN0IGRiU2VjdGlvbiA9XG5cdFx0b3B0cz8uZGF0YWJhc2UgPT09IFwidHlwZW9ybVwiXG5cdFx0XHQ/IGBkYXRhYmFzZTpcbiAgZGF0YVNvdXJjZXM6XG4gICAgLSBuYW1lOiBkZWZhdWx0XG4gICAgICBwcm92aWRlcjogcG9zdGdyZXNcbiAgICAgIGhvc3Q6IGxvY2FsaG9zdFxuICAgICAgcG9ydDogNTQzMlxuICAgICAgZGF0YWJhc2U6ICR7bmFtZX1fZGV2XG4gICAgICB1c2VybmFtZTogcG9zdGdyZXNcbiAgICAgIHBhc3N3b3JkOiBwb3N0Z3Jlc1xuICAgICAgc3luY2hyb25pemU6IHRydWVcbiAgICAgIHNlZWQ6IGZhbHNlXG4gICAgICBhZG1pblVzZXI6IHBvc3RncmVzXG4gICAgICBhZG1pblBhc3N3b3JkOiBwb3N0Z3Jlc1xuYFxuXHRcdFx0OiBcIlwiO1xuXHRyZXR1cm4gYHNhbXBsZTpcbiAgZ3JlZXRpbmc6IEhlbGxvIGZyb20gY29uZmlndXJhdGlvbiFcbiR7ZGJTZWN0aW9ufWA7XG59XG5cbmV4cG9ydCBjb25zdCBDT05GSUdfREVWX1lBTUwgPSBgc2FtcGxlOlxuICBncmVldGluZzogSGVsbG8gZnJvbSBkZXYgY29uZmlndXJhdGlvbiFcbmA7XG5cbmV4cG9ydCBjb25zdCBDT05GSUdfUFJPRF9ZQU1MID0gYGRhdGFiYXNlOlxuICBkYXRhU291cmNlczpcbiAgICAtIG5hbWU6IGRlZmF1bHRcbiAgICAgIHByb3ZpZGVyOiBwb3N0Z3Jlc1xuICAgICAgaG9zdDogXFwke0RCX0hPU1R9XG4gICAgICBwb3J0OiBcXCR7REJfUE9SVH1cbiAgICAgIGRhdGFiYXNlOiBcXCR7REJfTkFNRX1cbiAgICAgIHVzZXJuYW1lOiBcXCR7REJfVVNFUn1cbiAgICAgIHBhc3N3b3JkOiBcXCR7REJfUEFTU1dPUkR9XG4gICAgICBzeW5jaHJvbml6ZTogZmFsc2VcbiAgICAgIHNlZWQ6IGZhbHNlXG4gICAgICBhZG1pblVzZXI6IFxcJHtEQl9BRE1JTl9VU0VSfVxuICAgICAgYWRtaW5QYXNzd29yZDogXFwke0RCX0FETUlOX1BBU1NXT1JEfVxuYDtcblxuZXhwb3J0IGNvbnN0IFNBTVBMRV9FTlRJVFlfVFMgPSBgaW1wb3J0IHsgQ29sdW1uLCBFbnRpdHksIFByaW1hcnlHZW5lcmF0ZWRDb2x1bW4gfSBmcm9tIFwidHlwZW9ybVwiO1xuaW1wb3J0IHR5cGUgeyBFbnRpdHkgYXMgSUVudGl0eSB9IGZyb20gXCJAZGVjb2hlcmUvY29kZXhcIjtcblxuQEVudGl0eSgpXG5leHBvcnQgY2xhc3MgU2FtcGxlRW50aXR5IGltcGxlbWVudHMgSUVudGl0eSB7XG5cXHRAUHJpbWFyeUdlbmVyYXRlZENvbHVtbigpXG5cXHRwdWJsaWMgaWQhOiBudW1iZXI7XG5cblxcdEBDb2x1bW4oKVxuXFx0cHVibGljIG5hbWUhOiBzdHJpbmc7XG59XG5gO1xuXG5leHBvcnQgY29uc3QgU0FNUExFX1JFUE9TSVRPUllfVFMgPSBgaW1wb3J0IHsgaW5qZWN0YWJsZSB9IGZyb20gXCJAZGVjb2hlcmUvY3J1Y2libGUvZGVjb3JhdG9yc1wiO1xuaW1wb3J0IHsgaW5qZWN0VW5pdE9mV29yayB9IGZyb20gXCJAZGVjb2hlcmUvY29kZXhcIjtcbmltcG9ydCB7IFR5cGVPcm1SZXBvc2l0b3J5LCBUeXBlT3JtVW5pdE9mV29yayB9IGZyb20gXCJAZGVjb2hlcmUvY29kZXgtdHlwZW9ybVwiO1xuaW1wb3J0IHsgU2FtcGxlRW50aXR5IH0gZnJvbSBcIi4uL2VudGl0aWVzL3NhbXBsZS5lbnRpdHkuanNcIjtcblxuQGluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIFNhbXBsZUVudGl0eVJlcG9zaXRvcnkgZXh0ZW5kcyBUeXBlT3JtUmVwb3NpdG9yeTxTYW1wbGVFbnRpdHk+IHtcblxcdHB1YmxpYyBjb25zdHJ1Y3RvcihAaW5qZWN0VW5pdE9mV29yaygpIHVuaXRPZldvcms6IFR5cGVPcm1Vbml0T2ZXb3JrKSB7XG5cXHRcXHRzdXBlcih1bml0T2ZXb3JrLCBTYW1wbGVFbnRpdHkpO1xuXFx0fVxufVxuYDtcbiJdLCJuYW1lcyI6WyJST09UX1BBQ0tBR0VfSlNPTiIsIm5hbWUiLCJKU09OIiwic3RyaW5naWZ5IiwidmVyc2lvbiIsInR5cGUiLCJzY3JpcHRzIiwiYnVpbGQiLCJkZXYiLCJkZXZEZXBlbmRlbmNpZXMiLCJ0eXBlc2NyaXB0IiwiV0VCX0FQSV9ST09UX1BBQ0tBR0VfSlNPTiIsIm9wdHMiLCJkZXBzIiwiZGF0YWJhc2UiLCJkZXBlbmRlbmNpZXMiLCJBUFBfUEFDS0FHRV9KU09OIiwibWFpbiIsIlRTQ09ORklHIiwiY29tcGlsZXJPcHRpb25zIiwidGFyZ2V0IiwibW9kdWxlIiwibW9kdWxlUmVzb2x1dGlvbiIsInN0cmljdCIsInNraXBMaWJDaGVjayIsImluY2x1ZGUiLCJNQUlOX1RTIiwiV0VCX0FQSV9UU0NPTkZJRyIsImV4cGVyaW1lbnRhbERlY29yYXRvcnMiLCJlbWl0RGVjb3JhdG9yTWV0YWRhdGEiLCJXRUJfQVBJX0FQUF9QQUNLQUdFX0pTT04iLCJXRUJfQVBJX01BSU5fVFMiLCJkYkltcG9ydCIsImRiQ2hhaW4iLCJIRUxMT19DT05UUk9MTEVSX1RTIiwiU0FNUExFX0NPTkZJR19UUyIsIlNBTVBMRV9TRVJWSUNFX1RTIiwiQ09ORklHX1lBTUwiLCJkYlNlY3Rpb24iLCJDT05GSUdfREVWX1lBTUwiLCJDT05GSUdfUFJPRF9ZQU1MIiwiU0FNUExFX0VOVElUWV9UUyIsIlNBTVBMRV9SRVBPU0lUT1JZX1RTIl0sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLFNBQVNBLGtCQUFrQkMsSUFBWTtJQUM3QyxPQUFPQyxLQUFLQyxTQUFTLENBQ3BCO1FBQ0NGO1FBQ0FHLFNBQVM7UUFDVEMsTUFBTTtRQUNOQyxTQUFTO1lBQ1JDLE9BQU87WUFDUCxlQUFlO1lBQ2ZDLEtBQUs7UUFDTjtRQUNBQyxpQkFBaUI7WUFDaEIsc0JBQXNCO1lBQ3RCQyxZQUFZO1FBQ2I7SUFDRCxHQUNBLE1BQ0E7QUFFRjtBQVFBLE9BQU8sU0FBU0MsMEJBQTBCVixJQUFZLEVBQUVXLElBQW9CO0lBQzNFLE1BQU1DLE9BQStCO1FBQ3BDLG9CQUFvQjtRQUNwQixzQkFBc0I7UUFDdEIsb0JBQW9CO1FBQ3BCLHlCQUF5QjtRQUN6QixlQUFlO0lBQ2hCO0lBQ0EsSUFBSUQsTUFBTUUsYUFBYSxXQUFXO1FBQ2pDRCxJQUFJLENBQUMsa0JBQWtCLEdBQUc7UUFDMUJBLElBQUksQ0FBQywwQkFBMEIsR0FBRztJQUNuQztJQUNBLE9BQU9YLEtBQUtDLFNBQVMsQ0FDcEI7UUFDQ0YsTUFBTSxHQUFHQSxLQUFLLElBQUksQ0FBQztRQUNuQkcsU0FBUztRQUNUQyxNQUFNO1FBQ05DLFNBQVM7WUFDUkMsT0FBTztZQUNQLGVBQWU7WUFDZkMsS0FBSztRQUNOO1FBQ0FPLGNBQWNGO1FBQ2RKLGlCQUFpQjtZQUNoQixzQkFBc0I7WUFDdEJDLFlBQVk7UUFDYjtJQUNELEdBQ0EsTUFDQTtBQUVGO0FBRUEsT0FBTyxTQUFTTSxpQkFBaUJmLElBQVk7SUFDNUMsT0FBT0MsS0FBS0MsU0FBUyxDQUNwQjtRQUNDRixNQUFNLENBQUMsQ0FBQyxFQUFFQSxLQUFLLElBQUksQ0FBQztRQUNwQkcsU0FBUztRQUNUQyxNQUFNO1FBQ05ZLE1BQU07SUFDUCxHQUNBLE1BQ0E7QUFFRjtBQUVBLE9BQU8sTUFBTUMsV0FBV2hCLEtBQUtDLFNBQVMsQ0FDckM7SUFDQ2dCLGlCQUFpQjtRQUNoQkMsUUFBUTtRQUNSQyxRQUFRO1FBQ1JDLGtCQUFrQjtRQUNsQkMsUUFBUTtRQUNSQyxjQUFjO0lBQ2Y7SUFDQUMsU0FBUztRQUFDO0tBQVc7QUFDdEIsR0FDQSxNQUNBLEdBQ0M7QUFFRixPQUFPLE1BQU1DLFVBQVUsQ0FBQztBQUN4QixDQUFDLENBQUM7QUFFRixPQUFPLE1BQU1DLG1CQUFtQnpCLEtBQUtDLFNBQVMsQ0FDN0M7SUFDQ2dCLGlCQUFpQjtRQUNoQkMsUUFBUTtRQUNSQyxRQUFRO1FBQ1JDLGtCQUFrQjtRQUNsQkMsUUFBUTtRQUNSQyxjQUFjO1FBQ2RJLHdCQUF3QjtRQUN4QkMsdUJBQXVCO0lBQ3hCO0lBQ0FKLFNBQVM7UUFBQztLQUFXO0FBQ3RCLEdBQ0EsTUFDQSxHQUNDO0FBRUYsT0FBTyxTQUFTSyx5QkFBeUI3QixJQUFZO0lBQ3BELE9BQU9DLEtBQUtDLFNBQVMsQ0FDcEI7UUFDQ0YsTUFBTSxDQUFDLENBQUMsRUFBRUEsS0FBSyxJQUFJLENBQUM7UUFDcEJHLFNBQVM7UUFDVEMsTUFBTTtRQUNOWSxNQUFNO1FBQ05GLGNBQWM7WUFDYixvQkFBb0I7WUFDcEIsc0JBQXNCO1FBQ3ZCO0lBQ0QsR0FDQSxNQUNBO0FBRUY7QUFFQSxPQUFPLFNBQVNnQixnQkFBZ0I5QixJQUFZLEVBQUVXLElBQW9CO0lBQ2pFLE1BQU1vQixXQUNMcEIsTUFBTUUsYUFBYSxZQUNoQixDQUFDOzs7QUFHTixDQUFDLEdBQ0k7SUFDSixNQUFNbUIsVUFDTHJCLE1BQU1FLGFBQWEsWUFDaEIsQ0FBQyxzRkFBc0YsQ0FBQyxHQUN4RjtJQUNKLE9BQU8sQ0FBQzs7O0FBR1QsRUFBRWtCLFNBQVM7Ozs7Ozs7OztxREFTMEMsRUFBRS9CLEtBQUs7Ozs7O0lBS3hELEVBQUVnQyxRQUFROzs7Ozs7O0FBT2QsQ0FBQztBQUNEO0FBRUEsT0FBTyxNQUFNQyxzQkFBc0IsQ0FBQzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFzQ3BDLENBQUMsQ0FBQztBQUVGLE9BQU8sTUFBTUMsbUJBQW1CLENBQUM7OztBQUdqQyxDQUFDLENBQUM7QUFFRixPQUFPLE1BQU1DLG9CQUFvQixDQUFDOzs7Ozs7Ozs7Ozs7Ozs7O0FBZ0JsQyxDQUFDLENBQUM7QUFFRixPQUFPLFNBQVNDLFlBQVlwQyxJQUFZLEVBQUVXLElBQW9CO0lBQzdELE1BQU0wQixZQUNMMUIsTUFBTUUsYUFBYSxZQUNoQixDQUFDOzs7Ozs7Z0JBTVUsRUFBRWIsS0FBSzs7Ozs7OztBQU92QixDQUFDLEdBQ0k7SUFDSixPQUFPLENBQUM7O0FBRVQsRUFBRXFDLFdBQVc7QUFDYjtBQUVBLE9BQU8sTUFBTUMsa0JBQWtCLENBQUM7O0FBRWhDLENBQUMsQ0FBQztBQUVGLE9BQU8sTUFBTUMsbUJBQW1CLENBQUM7Ozs7Ozs7Ozs7Ozs7QUFhakMsQ0FBQyxDQUFDO0FBRUYsT0FBTyxNQUFNQyxtQkFBbUIsQ0FBQzs7Ozs7Ozs7Ozs7QUFXakMsQ0FBQyxDQUFDO0FBRUYsT0FBTyxNQUFNQyx1QkFBdUIsQ0FBQzs7Ozs7Ozs7Ozs7QUFXckMsQ0FBQyxDQUFDIn0=
@@ -1,6 +0,0 @@
1
- export interface ScaffoldOptions {
2
- yes?: boolean;
3
- template?: "basic" | "webapi";
4
- database?: "typeorm";
5
- }
6
- export declare function scaffold(targetDir: string, opts: ScaffoldOptions): Promise<void>;
@@ -1,20 +0,0 @@
1
- export declare function ROOT_PACKAGE_JSON(name: string): string;
2
- export type DatabaseProvider = "typeorm";
3
- export type WebApiOptions = {
4
- database?: DatabaseProvider;
5
- };
6
- export declare function WEB_API_ROOT_PACKAGE_JSON(name: string, opts?: WebApiOptions): string;
7
- export declare function APP_PACKAGE_JSON(name: string): string;
8
- export declare const TSCONFIG: string;
9
- export declare const MAIN_TS = "console.log(\"Hello from Decohere!\");\n";
10
- export declare const WEB_API_TSCONFIG: string;
11
- export declare function WEB_API_APP_PACKAGE_JSON(name: string): string;
12
- export declare function WEB_API_MAIN_TS(name: string, opts?: WebApiOptions): string;
13
- export declare const HELLO_CONTROLLER_TS = "import { Controller, Delete, Field, Get, Param, Post, Put, Query } from \"@decohere/cortex\";\nimport { SampleService } from \"../sample.service.js\";\n\nclass HelloBody {\n\t@Field(\"body\", \"message\")\n\tpublic message!: string;\n}\n\n@Controller({ prefix: \"/hello\" })\nexport class HelloController {\n\tpublic constructor(private readonly sample: SampleService) {}\n\n\t@Get()\n\tpublic async getAll(@Query(\"filter\") filter: string) {\n\t\tconst greeting = await this.sample.getGreeting();\n\t\treturn { filter, message: greeting };\n\t}\n\n\t@Get(\"/:id\")\n\tpublic getOne(@Param(\"id\") id: string) {\n\t\treturn { id, message: `Hello ${id}!` };\n\t}\n\n\t@Post(\"/\")\n\tpublic create(body: HelloBody) {\n\t\treturn { message: body.message };\n\t}\n\n\t@Put(\"/:id\")\n\tpublic update(@Param(\"id\") id: string, body: HelloBody) {\n\t\treturn { id, message: body.message };\n\t}\n\n\t@Delete(\"/:id\")\n\tpublic remove(@Param(\"id\") id: string) {\n\t\treturn { id, deleted: true };\n\t}\n}\n";
14
- export declare const SAMPLE_CONFIG_TS = "export class SampleConfig {\n\tpublic greeting: string = \"\";\n}\n";
15
- export declare const SAMPLE_SERVICE_TS = "import { inject, injectable } from \"@decohere/crucible/decorators\";\nimport { ConfigurationServiceToken } from \"@decohere/nexus/configuration\";\nimport type { IConfigurationService } from \"@decohere/nexus/configuration\";\nimport { SampleConfig } from \"./sample.config.js\";\n\n@injectable()\nexport class SampleService {\n\tpublic constructor(\n\t\t@inject(ConfigurationServiceToken) private readonly config: IConfigurationService,\n\t) {}\n\n\tpublic async getGreeting(): Promise<string> {\n\t\tconst config = await this.config.get(SampleConfig);\n\t\treturn config.greeting;\n\t}\n}\n";
16
- export declare function CONFIG_YAML(name: string, opts?: WebApiOptions): string;
17
- export declare const CONFIG_DEV_YAML = "sample:\n greeting: Hello from dev configuration!\n";
18
- export declare const CONFIG_PROD_YAML = "database:\n dataSources:\n - name: default\n provider: postgres\n host: ${DB_HOST}\n port: ${DB_PORT}\n database: ${DB_NAME}\n username: ${DB_USER}\n password: ${DB_PASSWORD}\n synchronize: false\n seed: false\n adminUser: ${DB_ADMIN_USER}\n adminPassword: ${DB_ADMIN_PASSWORD}\n";
19
- export declare const SAMPLE_ENTITY_TS = "import { Column, Entity, PrimaryGeneratedColumn } from \"typeorm\";\nimport type { Entity as IEntity } from \"@decohere/codex\";\n\n@Entity()\nexport class SampleEntity implements IEntity {\n\t@PrimaryGeneratedColumn()\n\tpublic id!: number;\n\n\t@Column()\n\tpublic name!: string;\n}\n";
20
- export declare const SAMPLE_REPOSITORY_TS = "import { injectable } from \"@decohere/crucible/decorators\";\nimport { injectUnitOfWork } from \"@decohere/codex\";\nimport { TypeOrmRepository, TypeOrmUnitOfWork } from \"@decohere/codex-typeorm\";\nimport { SampleEntity } from \"../entities/sample.entity.js\";\n\n@injectable()\nexport class SampleEntityRepository extends TypeOrmRepository<SampleEntity> {\n\tpublic constructor(@injectUnitOfWork() unitOfWork: TypeOrmUnitOfWork) {\n\t\tsuper(unitOfWork, SampleEntity);\n\t}\n}\n";