@codenotch/codenotch.cli 1.0.39 → 1.0.41
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.
- package/dist/commands/generate/app.js +13 -2
- package/dist/commands/generate/app.js.map +1 -1
- package/dist/commands/generate/appmanifest.js +52 -3
- package/dist/commands/generate/appmanifest.js.map +1 -1
- package/dist/commands/generate/dbcontext.js +5 -1
- package/dist/commands/generate/dbcontext.js.map +1 -1
- package/dist/commands/generate/i18n.d.ts +1 -1
- package/dist/commands/generate/i18n.js +53 -10
- package/dist/commands/generate/i18n.js.map +1 -1
- package/dist/commands/generate/index.js +11 -2
- package/dist/commands/generate/index.js.map +1 -1
- package/dist/commands/generate/manifest.js +4 -0
- package/dist/commands/generate/manifest.js.map +1 -1
- package/dist/commands/generate/openapi.js +5 -1
- package/dist/commands/generate/openapi.js.map +1 -1
- package/dist/commands/generate/pkg.js +4 -0
- package/dist/commands/generate/pkg.js.map +1 -1
- package/dist/commands/generate/process.d.ts +2 -0
- package/dist/commands/generate/process.js +151 -0
- package/dist/commands/generate/process.js.map +1 -0
- package/dist/commands/project/index.js +8 -1
- package/dist/commands/project/index.js.map +1 -1
- package/dist/commands/project/new.js +16 -3
- package/dist/commands/project/new.js.map +1 -1
- package/dist/commands/project/remove.js +17 -1
- package/dist/commands/project/remove.js.map +1 -1
- package/dist/commands/react/build.js +22 -1
- package/dist/commands/react/build.js.map +1 -1
- package/dist/commands/react/clean.js +7 -2
- package/dist/commands/react/clean.js.map +1 -1
- package/dist/commands/react/dev.js +6 -0
- package/dist/commands/react/dev.js.map +1 -1
- package/dist/commands/react/index.js +11 -1
- package/dist/commands/react/index.js.map +1 -1
- package/dist/commands/react/package.d.ts +2 -0
- package/dist/commands/react/package.js +47 -0
- package/dist/commands/react/package.js.map +1 -0
- package/dist/commands/react/serve.js +5 -0
- package/dist/commands/react/serve.js.map +1 -1
- package/dist/commands/react/shared.js +1 -2
- package/dist/commands/react/shared.js.map +1 -1
- package/dist/commands/runtime/clear.js +15 -1
- package/dist/commands/runtime/clear.js.map +1 -1
- package/dist/commands/runtime/index.js +8 -1
- package/dist/commands/runtime/index.js.map +1 -1
- package/dist/commands/validation/ValidationUtils.js +1 -1
- package/dist/commands/validation/ValidationUtils.js.map +1 -1
- package/dist/commands/validation/files/I18nValidator.js +0 -9
- package/dist/commands/validation/files/I18nValidator.js.map +1 -1
- package/dist/commands/validation/files/ScriptValidator.js +6 -5
- package/dist/commands/validation/files/ScriptValidator.js.map +1 -1
- package/dist/commands/validation/validate.js +4 -13
- package/dist/commands/validation/validate.js.map +1 -1
- package/dist/utils/BuildUtils.d.ts +55 -5
- package/dist/utils/BuildUtils.js +238 -21
- package/dist/utils/BuildUtils.js.map +1 -1
- package/dist/utils/ConsoleUtils.d.ts +5 -2
- package/dist/utils/ConsoleUtils.js +20 -8
- package/dist/utils/ConsoleUtils.js.map +1 -1
- package/dist/utils/OsUtils.d.ts +6 -0
- package/dist/utils/OsUtils.js +26 -0
- package/dist/utils/OsUtils.js.map +1 -1
- package/dist/utils/PackageUtils.d.ts +101 -0
- package/dist/utils/PackageUtils.js +538 -0
- package/dist/utils/PackageUtils.js.map +1 -0
- package/dist/utils/ProcessModelUtils.d.ts +38 -0
- package/dist/utils/ProcessModelUtils.js +254 -0
- package/dist/utils/ProcessModelUtils.js.map +1 -0
- package/dist/utils/ProjectCompilationUtils.js.map +1 -1
- package/dist/utils/ServeUtils.js +1 -2
- package/dist/utils/ServeUtils.js.map +1 -1
- package/dist/utils/TemplateUtils.d.ts +1 -0
- package/dist/utils/TemplateUtils.js +21 -3
- package/dist/utils/TemplateUtils.js.map +1 -1
- package/package.json +1 -1
|
@@ -0,0 +1,254 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.PROCESS_MODELS = void 0;
|
|
7
|
+
const path_1 = require("path");
|
|
8
|
+
const DbSchemaUtils_1 = __importDefault(require("./DbSchemaUtils"));
|
|
9
|
+
exports.PROCESS_MODELS = [
|
|
10
|
+
{ name: 'api', description: 'REST endpoints on the table: list, read, create, delete (+ the query of the list)' },
|
|
11
|
+
{ name: 'insert', description: 'Creation with the required fields only' },
|
|
12
|
+
{ name: 'insert-full', description: 'Creation with every writable field' },
|
|
13
|
+
{ name: 'update', description: 'Partial update of an entity from its id' },
|
|
14
|
+
{ name: 'upsert', description: 'Write under a given id: created when missing, updated otherwise' },
|
|
15
|
+
{ name: 'delete', description: 'Deletion of a single entity from its id' },
|
|
16
|
+
{ name: 'clean', description: 'Deletion of every row of the table (use with caution)' },
|
|
17
|
+
];
|
|
18
|
+
/** Column modifiers making a field mandatory at creation ('.default()' does not) */
|
|
19
|
+
const REQUIRED_MODIFIERS = ['notNull', 'required'];
|
|
20
|
+
/** Types declaring the collection side of a relation: not a writable field of the row itself */
|
|
21
|
+
const COLLECTION_RELATION_TYPES = ['hasMany'];
|
|
22
|
+
/**
|
|
23
|
+
* Builds ready-to-edit boilerplate processes for a table discovered in the project, in the exact
|
|
24
|
+
* style of the 'cn project new' templates. Everything is derived from the sources (row type
|
|
25
|
+
* import, primary key, required fields); where the runtime API is not settled yet, the generated
|
|
26
|
+
* code carries a TODO instead of a guess presented as certain.
|
|
27
|
+
*/
|
|
28
|
+
class ProcessModelUtils {
|
|
29
|
+
/** Name of the process file, e.g. 'delete-todo-list.ts' or 'book-api.ts' for the api bundle */
|
|
30
|
+
static getFileName(model, table) {
|
|
31
|
+
const kebab = this.toKebab(table.name ?? 'table');
|
|
32
|
+
if (model === 'api') {
|
|
33
|
+
return `${kebab}-api.ts`;
|
|
34
|
+
}
|
|
35
|
+
// Both insert variants produce a 'Create<Table>' process, so they share the file
|
|
36
|
+
const prefix = model === 'insert' || model === 'insert-full' ? 'create' : model;
|
|
37
|
+
return `${prefix}-${kebab}.ts`;
|
|
38
|
+
}
|
|
39
|
+
/** Name of the query file the list endpoint of the 'api' model reads, e.g. 'all-books.cnql' */
|
|
40
|
+
static getQueryFileName(table) {
|
|
41
|
+
return `all-${DbSchemaUtils_1.default.toCollectionName(table.name ?? 'table')}.cnql`;
|
|
42
|
+
}
|
|
43
|
+
/**
|
|
44
|
+
* Content of the process file for the given model.
|
|
45
|
+
* @param targetFilePath where the file will be written, to compute the import of the row type
|
|
46
|
+
*/
|
|
47
|
+
static createProcessFile(model, table, targetFilePath) {
|
|
48
|
+
const warnings = [];
|
|
49
|
+
const name = table.name ?? 'Table';
|
|
50
|
+
const typeName = table.typeName ?? `I${name}`;
|
|
51
|
+
const collection = DbSchemaUtils_1.default.toCollectionName(name);
|
|
52
|
+
// The row type carries every field type, so the process never has to re-declare them
|
|
53
|
+
const importLines = [];
|
|
54
|
+
const specifier = this.toSpecifier(table.filePath, targetFilePath);
|
|
55
|
+
if (table.typeName !== undefined) {
|
|
56
|
+
importLines.push(`import type { ${table.typeName} } from '${specifier}'`);
|
|
57
|
+
}
|
|
58
|
+
else if (table.variableName !== undefined && table.isExported) {
|
|
59
|
+
importLines.push(`import { InferEntity } from '@codenotch/orm'`);
|
|
60
|
+
importLines.push(`import { ${table.variableName} } from '${specifier}'`);
|
|
61
|
+
}
|
|
62
|
+
else {
|
|
63
|
+
return { warnings, error: `the table '${name}' exports neither a row type ('export type I${name} = InferEntity<typeof ...>') nor its variable, nothing can type the process.` };
|
|
64
|
+
}
|
|
65
|
+
const primary = table.columns.find(column => column.isPrimary);
|
|
66
|
+
if (primary === undefined) {
|
|
67
|
+
warnings.push(`The table '${name}' declares no primary key, an 'id' of type string is assumed.`);
|
|
68
|
+
}
|
|
69
|
+
const idName = primary?.name ?? 'id';
|
|
70
|
+
const idType = primary !== undefined ? `${typeName}['${idName}']` : 'string';
|
|
71
|
+
// ctx.uuid() fits a string-like key; anything else must be decided by the developer
|
|
72
|
+
const idLines = primary === undefined || ['uuid', 'string', 'text'].includes(primary.type ?? '')
|
|
73
|
+
? [` const ${idName} = ctx.uuid()`]
|
|
74
|
+
: [
|
|
75
|
+
` // TODO: the primary key '${idName}' is not a uuid, decide how new ids are allocated`,
|
|
76
|
+
` const ${idName} = Date.now() as ${idType}`
|
|
77
|
+
];
|
|
78
|
+
const writable = table.columns.filter(column => !column.isPrimary && !COLLECTION_RELATION_TYPES.includes(column.type ?? ''));
|
|
79
|
+
const required = writable.filter(column => column.modifiers.some(modifier => REQUIRED_MODIFIERS.includes(modifier.name)));
|
|
80
|
+
// 'Omit' rather than a field list, so the input follows the table when it evolves
|
|
81
|
+
const omitted = [idName, ...table.columns.filter(column => COLLECTION_RELATION_TYPES.includes(column.type ?? '')).map(column => column.name)];
|
|
82
|
+
const fullInputType = `Omit<${typeName}, ${omitted.map(key => `'${key}'`).join(' | ')}>`;
|
|
83
|
+
const lightInputType = required.length > 0
|
|
84
|
+
? `Pick<${typeName}, ${required.map(column => `'${column.name}'`).join(' | ')}>`
|
|
85
|
+
: fullInputType;
|
|
86
|
+
const creationBlock = (trigger, lightInsert) => ({
|
|
87
|
+
exportName: `create${name}`,
|
|
88
|
+
id: `Create${name}`,
|
|
89
|
+
description: lightInsert && required.length > 0 ? `Creates a ${name} with the required fields only` : `Creates a ${name}`,
|
|
90
|
+
trigger,
|
|
91
|
+
inputType: writable.length === 0 ? undefined : lightInsert ? lightInputType : fullInputType,
|
|
92
|
+
returnType: `{ ${idName}: ${idType} }`,
|
|
93
|
+
body: [
|
|
94
|
+
...idLines,
|
|
95
|
+
` await ctx.tables.${collection}.write(${idName}, ${writable.length === 0 ? '{}' : 'input'})`,
|
|
96
|
+
` return { ${idName} }`
|
|
97
|
+
]
|
|
98
|
+
});
|
|
99
|
+
const blocks = [];
|
|
100
|
+
switch (model) {
|
|
101
|
+
case 'insert':
|
|
102
|
+
case 'insert-full':
|
|
103
|
+
blocks.push(creationBlock(undefined, model === 'insert'));
|
|
104
|
+
break;
|
|
105
|
+
case 'update':
|
|
106
|
+
blocks.push({
|
|
107
|
+
exportName: `update${name}`,
|
|
108
|
+
id: `Update${name}`,
|
|
109
|
+
description: `Updates the given fields of a ${name}`,
|
|
110
|
+
inputType: `{ ${idName}: ${idType} } & Partial<${fullInputType}>`,
|
|
111
|
+
returnType: `{ updated: boolean }`,
|
|
112
|
+
body: [
|
|
113
|
+
` const { ${idName}, ...fields } = input`,
|
|
114
|
+
` await ctx.tables.${collection}.require(${idName})`,
|
|
115
|
+
` await ctx.tables.${collection}.write(${idName}, fields)`,
|
|
116
|
+
` return { updated: true }`
|
|
117
|
+
]
|
|
118
|
+
});
|
|
119
|
+
break;
|
|
120
|
+
case 'upsert':
|
|
121
|
+
blocks.push({
|
|
122
|
+
exportName: `upsert${name}`,
|
|
123
|
+
id: `Upsert${name}`,
|
|
124
|
+
description: `Writes a ${name} under the given ${idName}: created when missing, updated otherwise`,
|
|
125
|
+
inputType: `{ ${idName}: ${idType} } & ${fullInputType}`,
|
|
126
|
+
returnType: `{ created: boolean }`,
|
|
127
|
+
body: [
|
|
128
|
+
` const { ${idName}, ...fields } = input`,
|
|
129
|
+
` // TODO: a read returning undefined for a missing row is assumed, adjust to the final runtime API`,
|
|
130
|
+
` const existing = await ctx.tables.${collection}.get(${idName})`,
|
|
131
|
+
` await ctx.tables.${collection}.write(${idName}, fields)`,
|
|
132
|
+
` return { created: existing === undefined }`
|
|
133
|
+
]
|
|
134
|
+
});
|
|
135
|
+
break;
|
|
136
|
+
case 'delete':
|
|
137
|
+
blocks.push({
|
|
138
|
+
exportName: `delete${name}`,
|
|
139
|
+
id: `Delete${name}`,
|
|
140
|
+
description: `Deletes a ${name} from its ${idName}`,
|
|
141
|
+
inputType: `{ ${idName}: ${idType} }`,
|
|
142
|
+
returnType: `{ deleted: boolean }`,
|
|
143
|
+
body: [
|
|
144
|
+
` await ctx.tables.${collection}.delete(input.${idName})`,
|
|
145
|
+
` return { deleted: true }`
|
|
146
|
+
]
|
|
147
|
+
});
|
|
148
|
+
break;
|
|
149
|
+
case 'clean':
|
|
150
|
+
blocks.push({
|
|
151
|
+
exportName: `clean${this.capitalize(collection)}`,
|
|
152
|
+
id: `Clean${this.capitalize(collection)}`,
|
|
153
|
+
description: `Deletes every ${name} (use with caution)`,
|
|
154
|
+
returnType: `{ deleted: number }`,
|
|
155
|
+
body: [
|
|
156
|
+
` // TODO: the bulk deletion API is not settled yet: 'clear()' is assumed, otherwise`,
|
|
157
|
+
` // list the ids with a cnql query and delete them one by one`,
|
|
158
|
+
` const deleted = await ctx.tables.${collection}.clear()`,
|
|
159
|
+
` return { deleted }`
|
|
160
|
+
]
|
|
161
|
+
});
|
|
162
|
+
break;
|
|
163
|
+
case 'api':
|
|
164
|
+
blocks.push({
|
|
165
|
+
exportName: `list${this.capitalize(collection)}`,
|
|
166
|
+
id: `List${this.capitalize(collection)}`,
|
|
167
|
+
description: `Every ${name}`,
|
|
168
|
+
trigger: `api.get('/${collection}')`,
|
|
169
|
+
returnType: `${typeName}[]`,
|
|
170
|
+
body: [` return ctx.query<${typeName}>('queries/${this.getQueryFileName(table)}')`]
|
|
171
|
+
});
|
|
172
|
+
blocks.push({
|
|
173
|
+
exportName: `get${name}`,
|
|
174
|
+
id: `Get${name}`,
|
|
175
|
+
description: `A single ${name} from its ${idName}`,
|
|
176
|
+
trigger: `api.get('/${collection}/:${idName}')`,
|
|
177
|
+
inputType: `{ ${idName}: ${idType} }`,
|
|
178
|
+
returnType: typeName,
|
|
179
|
+
body: [` return ctx.tables.${collection}.require(input.${idName})`]
|
|
180
|
+
});
|
|
181
|
+
blocks.push(creationBlock(`api.post('/${collection}')`, true));
|
|
182
|
+
blocks.push({
|
|
183
|
+
exportName: `delete${name}`,
|
|
184
|
+
id: `Delete${name}`,
|
|
185
|
+
description: `Deletes a ${name} from its ${idName}`,
|
|
186
|
+
trigger: `api.delete('/${collection}/:${idName}')`,
|
|
187
|
+
inputType: `{ ${idName}: ${idType} }`,
|
|
188
|
+
returnType: `{ deleted: boolean }`,
|
|
189
|
+
body: [
|
|
190
|
+
` await ctx.tables.${collection}.delete(input.${idName})`,
|
|
191
|
+
` return { deleted: true }`
|
|
192
|
+
]
|
|
193
|
+
});
|
|
194
|
+
break;
|
|
195
|
+
}
|
|
196
|
+
const lines = [
|
|
197
|
+
`// Generated by codenotch-cli (cn generate process -m ${model} -t ${name}), edit freely.`,
|
|
198
|
+
`// Process ids must stay unique across the project: rename them when they collide.`,
|
|
199
|
+
`import { process, ${model === 'api' ? 'api, ' : ''}Context } from '@codenotch/process'`,
|
|
200
|
+
...importLines
|
|
201
|
+
];
|
|
202
|
+
if (table.typeName === undefined) {
|
|
203
|
+
lines.push(``, `type ${typeName} = InferEntity<typeof ${table.variableName}>`);
|
|
204
|
+
}
|
|
205
|
+
for (const block of blocks) {
|
|
206
|
+
lines.push(``, ...this.renderBlock(block));
|
|
207
|
+
}
|
|
208
|
+
lines.push(``);
|
|
209
|
+
return { content: lines.join('\n'), warnings };
|
|
210
|
+
}
|
|
211
|
+
/** Content of the 'all rows' cnql query the list endpoint of the 'api' model reads */
|
|
212
|
+
static createAllRowsQuery(table, serviceName) {
|
|
213
|
+
const name = table.name ?? 'Table';
|
|
214
|
+
const columns = table.columns.filter(column => !column.isPrimary && !COLLECTION_RELATION_TYPES.includes(column.type ?? ''));
|
|
215
|
+
return [
|
|
216
|
+
`<CNQL xmlns="${serviceName}" PageSize="100" PageIndex="0">`,
|
|
217
|
+
` <${name} Ref="results">`,
|
|
218
|
+
` <Id />`,
|
|
219
|
+
...columns.map(column => ` <${this.capitalize(column.name)} />`),
|
|
220
|
+
` </${name}>`,
|
|
221
|
+
`</CNQL>`,
|
|
222
|
+
``
|
|
223
|
+
].join('\n');
|
|
224
|
+
}
|
|
225
|
+
static renderBlock(block) {
|
|
226
|
+
return [
|
|
227
|
+
`export const ${block.exportName} = process({`,
|
|
228
|
+
` id: '${block.id}',`,
|
|
229
|
+
` description: '${block.description}',`,
|
|
230
|
+
` auth: { scope: 'internal' },`,
|
|
231
|
+
block.trigger !== undefined
|
|
232
|
+
? ` trigger: ${block.trigger},`
|
|
233
|
+
: ` // No trigger: call it with 'ctx.call' from another process, or expose it (e.g. 'trigger: api.post(...)')`,
|
|
234
|
+
` run: async (ctx: Context${block.inputType === undefined ? '' : `, input: ${block.inputType}`}): Promise<${block.returnType}> => {`,
|
|
235
|
+
...block.body,
|
|
236
|
+
` },`,
|
|
237
|
+
`})`
|
|
238
|
+
];
|
|
239
|
+
}
|
|
240
|
+
/** Module specifier importing the table file from the generated one: posix, no extension */
|
|
241
|
+
static toSpecifier(tableFilePath, fromFilePath) {
|
|
242
|
+
const specifier = (0, path_1.relative)((0, path_1.dirname)(fromFilePath), tableFilePath).replaceAll('\\', '/').replace(/\.[^./]+$/, '');
|
|
243
|
+
return specifier.startsWith('.') ? specifier : `./${specifier}`;
|
|
244
|
+
}
|
|
245
|
+
/** 'TodoList' gives 'todo-list' */
|
|
246
|
+
static toKebab(name) {
|
|
247
|
+
return name.replace(/([a-z0-9])([A-Z])/g, '$1-$2').toLowerCase();
|
|
248
|
+
}
|
|
249
|
+
static capitalize(name) {
|
|
250
|
+
return name.charAt(0).toUpperCase() + name.slice(1);
|
|
251
|
+
}
|
|
252
|
+
}
|
|
253
|
+
exports.default = ProcessModelUtils;
|
|
254
|
+
//# sourceMappingURL=ProcessModelUtils.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ProcessModelUtils.js","sourceRoot":"","sources":["../../src/utils/ProcessModelUtils.ts"],"names":[],"mappings":";;;;;;AAAA,+BAAyC;AAEzC,oEAA4C;AAK/B,QAAA,cAAc,GAAsD;IAC7E,EAAE,IAAI,EAAE,KAAK,EAAE,WAAW,EAAE,mFAAmF,EAAE;IACjH,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,wCAAwC,EAAE;IACzE,EAAE,IAAI,EAAE,aAAa,EAAE,WAAW,EAAE,oCAAoC,EAAE;IAC1E,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,yCAAyC,EAAE;IAC1E,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,iEAAiE,EAAE;IAClG,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,yCAAyC,EAAE;IAC1E,EAAE,IAAI,EAAE,OAAO,EAAE,WAAW,EAAE,uDAAuD,EAAE;CAC1F,CAAC;AASF,oFAAoF;AACpF,MAAM,kBAAkB,GAAG,CAAC,SAAS,EAAE,UAAU,CAAC,CAAC;AAEnD,gGAAgG;AAChG,MAAM,yBAAyB,GAAG,CAAC,SAAS,CAAC,CAAC;AAe9C;;;;;GAKG;AACH,MAA8B,iBAAiB;IAE3C,+FAA+F;IAC/F,MAAM,CAAC,WAAW,CAAC,KAAuB,EAAE,KAAuB;QAC/D,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,IAAI,OAAO,CAAC,CAAC;QAClD,IAAI,KAAK,KAAK,KAAK,EAAE,CAAC;YAClB,OAAO,GAAG,KAAK,SAAS,CAAC;QAC7B,CAAC;QACD,iFAAiF;QACjF,MAAM,MAAM,GAAG,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,aAAa,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC;QAChF,OAAO,GAAG,MAAM,IAAI,KAAK,KAAK,CAAC;IACnC,CAAC;IAED,+FAA+F;IAC/F,MAAM,CAAC,gBAAgB,CAAC,KAAuB;QAC3C,OAAO,OAAO,uBAAa,CAAC,gBAAgB,CAAC,KAAK,CAAC,IAAI,IAAI,OAAO,CAAC,OAAO,CAAC;IAC/E,CAAC;IAED;;;OAGG;IACH,MAAM,CAAC,iBAAiB,CAAC,KAAuB,EAAE,KAAuB,EAAE,cAAsB;QAE7F,MAAM,QAAQ,GAAa,EAAE,CAAC;QAC9B,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,IAAI,OAAO,CAAC;QACnC,MAAM,QAAQ,GAAG,KAAK,CAAC,QAAQ,IAAI,IAAI,IAAI,EAAE,CAAC;QAC9C,MAAM,UAAU,GAAG,uBAAa,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC;QAExD,qFAAqF;QACrF,MAAM,WAAW,GAAa,EAAE,CAAC;QACjC,MAAM,SAAS,GAAG,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,QAAQ,EAAE,cAAc,CAAC,CAAC;QACnE,IAAI,KAAK,CAAC,QAAQ,KAAK,SAAS,EAAE,CAAC;YAC/B,WAAW,CAAC,IAAI,CAAC,iBAAiB,KAAK,CAAC,QAAQ,YAAY,SAAS,GAAG,CAAC,CAAC;QAC9E,CAAC;aACI,IAAI,KAAK,CAAC,YAAY,KAAK,SAAS,IAAI,KAAK,CAAC,UAAU,EAAE,CAAC;YAC5D,WAAW,CAAC,IAAI,CAAC,8CAA8C,CAAC,CAAC;YACjE,WAAW,CAAC,IAAI,CAAC,YAAY,KAAK,CAAC,YAAY,YAAY,SAAS,GAAG,CAAC,CAAC;QAC7E,CAAC;aACI,CAAC;YACF,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,cAAc,IAAI,+CAA+C,IAAI,8EAA8E,EAAE,CAAC;QACpL,CAAC;QAED,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;QAC/D,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;YACxB,QAAQ,CAAC,IAAI,CAAC,cAAc,IAAI,+DAA+D,CAAC,CAAC;QACrG,CAAC;QACD,MAAM,MAAM,GAAG,OAAO,EAAE,IAAI,IAAI,IAAI,CAAC;QACrC,MAAM,MAAM,GAAG,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,GAAG,QAAQ,KAAK,MAAM,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC;QAE7E,oFAAoF;QACpF,MAAM,OAAO,GAAG,OAAO,KAAK,SAAS,IAAI,CAAC,MAAM,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,IAAI,EAAE,CAAC;YAC5F,CAAC,CAAC,CAAC,aAAa,MAAM,eAAe,CAAC;YACtC,CAAC,CAAC;gBACE,iCAAiC,MAAM,mDAAmD;gBAC1F,aAAa,MAAM,oBAAoB,MAAM,EAAE;aAClD,CAAC;QAEN,MAAM,QAAQ,GAAG,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,SAAS,IAAI,CAAC,yBAAyB,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,CAAC;QAC7H,MAAM,QAAQ,GAAG,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,kBAAkB,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAE1H,kFAAkF;QAClF,MAAM,OAAO,GAAG,CAAC,MAAM,EAAE,GAAG,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,yBAAyB,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC;QAC9I,MAAM,aAAa,GAAG,QAAQ,QAAQ,KAAK,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,GAAG,GAAG,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC;QACzF,MAAM,cAAc,GAAG,QAAQ,CAAC,MAAM,GAAG,CAAC;YACtC,CAAC,CAAC,QAAQ,QAAQ,KAAK,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,IAAI,MAAM,CAAC,IAAI,GAAG,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG;YAChF,CAAC,CAAC,aAAa,CAAC;QAEpB,MAAM,aAAa,GAAG,CAAC,OAA2B,EAAE,WAAoB,EAAiB,EAAE,CAAC,CAAC;YACzF,UAAU,EAAE,SAAS,IAAI,EAAE;YAC3B,EAAE,EAAE,SAAS,IAAI,EAAE;YACnB,WAAW,EAAE,WAAW,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,aAAa,IAAI,gCAAgC,CAAC,CAAC,CAAC,aAAa,IAAI,EAAE;YACzH,OAAO;YACP,SAAS,EAAE,QAAQ,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,aAAa;YAC3F,UAAU,EAAE,KAAK,MAAM,KAAK,MAAM,IAAI;YACtC,IAAI,EAAE;gBACF,GAAG,OAAO;gBACV,wBAAwB,UAAU,UAAU,MAAM,KAAK,QAAQ,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,GAAG;gBAChG,gBAAgB,MAAM,IAAI;aAC7B;SACJ,CAAC,CAAC;QAEH,MAAM,MAAM,GAAoB,EAAE,CAAC;QACnC,QAAQ,KAAK,EAAE,CAAC;YAEZ,KAAK,QAAQ,CAAC;YACd,KAAK,aAAa;gBACd,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,SAAS,EAAE,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC;gBAC1D,MAAM;YAEV,KAAK,QAAQ;gBACT,MAAM,CAAC,IAAI,CAAC;oBACR,UAAU,EAAE,SAAS,IAAI,EAAE;oBAC3B,EAAE,EAAE,SAAS,IAAI,EAAE;oBACnB,WAAW,EAAE,iCAAiC,IAAI,EAAE;oBACpD,SAAS,EAAE,KAAK,MAAM,KAAK,MAAM,gBAAgB,aAAa,GAAG;oBACjE,UAAU,EAAE,sBAAsB;oBAClC,IAAI,EAAE;wBACF,eAAe,MAAM,uBAAuB;wBAC5C,wBAAwB,UAAU,YAAY,MAAM,GAAG;wBACvD,wBAAwB,UAAU,UAAU,MAAM,WAAW;wBAC7D,8BAA8B;qBACjC;iBACJ,CAAC,CAAC;gBACH,MAAM;YAEV,KAAK,QAAQ;gBACT,MAAM,CAAC,IAAI,CAAC;oBACR,UAAU,EAAE,SAAS,IAAI,EAAE;oBAC3B,EAAE,EAAE,SAAS,IAAI,EAAE;oBACnB,WAAW,EAAE,YAAY,IAAI,oBAAoB,MAAM,2CAA2C;oBAClG,SAAS,EAAE,KAAK,MAAM,KAAK,MAAM,QAAQ,aAAa,EAAE;oBACxD,UAAU,EAAE,sBAAsB;oBAClC,IAAI,EAAE;wBACF,eAAe,MAAM,uBAAuB;wBAC5C,uGAAuG;wBACvG,yCAAyC,UAAU,QAAQ,MAAM,GAAG;wBACpE,wBAAwB,UAAU,UAAU,MAAM,WAAW;wBAC7D,gDAAgD;qBACnD;iBACJ,CAAC,CAAC;gBACH,MAAM;YAEV,KAAK,QAAQ;gBACT,MAAM,CAAC,IAAI,CAAC;oBACR,UAAU,EAAE,SAAS,IAAI,EAAE;oBAC3B,EAAE,EAAE,SAAS,IAAI,EAAE;oBACnB,WAAW,EAAE,aAAa,IAAI,aAAa,MAAM,EAAE;oBACnD,SAAS,EAAE,KAAK,MAAM,KAAK,MAAM,IAAI;oBACrC,UAAU,EAAE,sBAAsB;oBAClC,IAAI,EAAE;wBACF,wBAAwB,UAAU,iBAAiB,MAAM,GAAG;wBAC5D,8BAA8B;qBACjC;iBACJ,CAAC,CAAC;gBACH,MAAM;YAEV,KAAK,OAAO;gBACR,MAAM,CAAC,IAAI,CAAC;oBACR,UAAU,EAAE,QAAQ,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE;oBACjD,EAAE,EAAE,QAAQ,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE;oBACzC,WAAW,EAAE,iBAAiB,IAAI,qBAAqB;oBACvD,UAAU,EAAE,qBAAqB;oBACjC,IAAI,EAAE;wBACF,wFAAwF;wBACxF,kEAAkE;wBAClE,wCAAwC,UAAU,UAAU;wBAC5D,wBAAwB;qBAC3B;iBACJ,CAAC,CAAC;gBACH,MAAM;YAEV,KAAK,KAAK;gBACN,MAAM,CAAC,IAAI,CAAC;oBACR,UAAU,EAAE,OAAO,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE;oBAChD,EAAE,EAAE,OAAO,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE;oBACxC,WAAW,EAAE,SAAS,IAAI,EAAE;oBAC5B,OAAO,EAAE,aAAa,UAAU,IAAI;oBACpC,UAAU,EAAE,GAAG,QAAQ,IAAI;oBAC3B,IAAI,EAAE,CAAC,wBAAwB,QAAQ,cAAc,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC,IAAI,CAAC;iBACzF,CAAC,CAAC;gBACH,MAAM,CAAC,IAAI,CAAC;oBACR,UAAU,EAAE,MAAM,IAAI,EAAE;oBACxB,EAAE,EAAE,MAAM,IAAI,EAAE;oBAChB,WAAW,EAAE,YAAY,IAAI,aAAa,MAAM,EAAE;oBAClD,OAAO,EAAE,aAAa,UAAU,KAAK,MAAM,IAAI;oBAC/C,SAAS,EAAE,KAAK,MAAM,KAAK,MAAM,IAAI;oBACrC,UAAU,EAAE,QAAQ;oBACpB,IAAI,EAAE,CAAC,yBAAyB,UAAU,kBAAkB,MAAM,GAAG,CAAC;iBACzE,CAAC,CAAC;gBACH,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,cAAc,UAAU,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC;gBAC/D,MAAM,CAAC,IAAI,CAAC;oBACR,UAAU,EAAE,SAAS,IAAI,EAAE;oBAC3B,EAAE,EAAE,SAAS,IAAI,EAAE;oBACnB,WAAW,EAAE,aAAa,IAAI,aAAa,MAAM,EAAE;oBACnD,OAAO,EAAE,gBAAgB,UAAU,KAAK,MAAM,IAAI;oBAClD,SAAS,EAAE,KAAK,MAAM,KAAK,MAAM,IAAI;oBACrC,UAAU,EAAE,sBAAsB;oBAClC,IAAI,EAAE;wBACF,wBAAwB,UAAU,iBAAiB,MAAM,GAAG;wBAC5D,8BAA8B;qBACjC;iBACJ,CAAC,CAAC;gBACH,MAAM;QACd,CAAC;QAED,MAAM,KAAK,GAAG;YACV,yDAAyD,KAAK,OAAO,IAAI,iBAAiB;YAC1F,oFAAoF;YACpF,qBAAqB,KAAK,KAAK,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,qCAAqC;YACxF,GAAG,WAAW;SACjB,CAAC;QAEF,IAAI,KAAK,CAAC,QAAQ,KAAK,SAAS,EAAE,CAAC;YAC/B,KAAK,CAAC,IAAI,CAAC,EAAE,EAAE,QAAQ,QAAQ,yBAAyB,KAAK,CAAC,YAAY,GAAG,CAAC,CAAC;QACnF,CAAC;QAED,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;YACzB,KAAK,CAAC,IAAI,CAAC,EAAE,EAAE,GAAG,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC;QAC/C,CAAC;QACD,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAEf,OAAO,EAAE,OAAO,EAAE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,CAAC;IACnD,CAAC;IAED,sFAAsF;IACtF,MAAM,CAAC,kBAAkB,CAAC,KAAuB,EAAE,WAAmB;QAElE,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,IAAI,OAAO,CAAC;QACnC,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,SAAS,IAAI,CAAC,yBAAyB,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,CAAC;QAE5H,OAAO;YACH,gBAAgB,WAAW,iCAAiC;YAC5D,QAAQ,IAAI,iBAAiB;YAC7B,gBAAgB;YAChB,GAAG,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,YAAY,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC;YACvE,SAAS,IAAI,GAAG;YAChB,SAAS;YACT,EAAE;SACL,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACjB,CAAC;IAEO,MAAM,CAAC,WAAW,CAAC,KAAoB;QAC3C,OAAO;YACH,gBAAgB,KAAK,CAAC,UAAU,cAAc;YAC9C,UAAU,KAAK,CAAC,EAAE,IAAI;YACtB,mBAAmB,KAAK,CAAC,WAAW,IAAI;YACxC,gCAAgC;YAChC,KAAK,CAAC,OAAO,KAAK,SAAS;gBACvB,CAAC,CAAC,cAAc,KAAK,CAAC,OAAO,GAAG;gBAChC,CAAC,CAAC,6GAA6G;YACnH,6BAA6B,KAAK,CAAC,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,YAAY,KAAK,CAAC,SAAS,EAAE,cAAc,KAAK,CAAC,UAAU,QAAQ;YACrI,GAAG,KAAK,CAAC,IAAI;YACb,MAAM;YACN,IAAI;SACP,CAAC;IACN,CAAC;IAED,4FAA4F;IACpF,MAAM,CAAC,WAAW,CAAC,aAAqB,EAAE,YAAoB;QAClE,MAAM,SAAS,GAAG,IAAA,eAAQ,EAAC,IAAA,cAAO,EAAC,YAAY,CAAC,EAAE,aAAa,CAAC,CAAC,UAAU,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC,OAAO,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC;QAChH,OAAO,SAAS,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,SAAS,EAAE,CAAC;IACpE,CAAC;IAED,mCAAmC;IAC3B,MAAM,CAAC,OAAO,CAAC,IAAY;QAC/B,OAAO,IAAI,CAAC,OAAO,CAAC,oBAAoB,EAAE,OAAO,CAAC,CAAC,WAAW,EAAE,CAAC;IACrE,CAAC;IAEO,MAAM,CAAC,UAAU,CAAC,IAAY;QAClC,OAAO,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IACxD,CAAC;CACJ;AA5PD,oCA4PC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ProjectCompilationUtils.js","sourceRoot":"","sources":["../../src/utils/ProjectCompilationUtils.ts"],"names":[],"mappings":";;;;;AAAA,gDAAwB;
|
|
1
|
+
{"version":3,"file":"ProjectCompilationUtils.js","sourceRoot":"","sources":["../../src/utils/ProjectCompilationUtils.ts"],"names":[],"mappings":"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"}
|
package/dist/utils/ServeUtils.js
CHANGED
|
@@ -39,7 +39,6 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
39
39
|
const chalk_1 = __importDefault(require("chalk"));
|
|
40
40
|
const fs_1 = require("fs");
|
|
41
41
|
const path_1 = require("path");
|
|
42
|
-
const ConsoleUtils_1 = __importDefault(require("./ConsoleUtils"));
|
|
43
42
|
class ServeUtils {
|
|
44
43
|
static async serveApp(directory, options) {
|
|
45
44
|
const port = options.port || 5000;
|
|
@@ -142,7 +141,7 @@ class ServeUtils {
|
|
|
142
141
|
}
|
|
143
142
|
});
|
|
144
143
|
const server = app.listen(options.port, () => {
|
|
145
|
-
console.log(chalk_1.default.green(`Server running on http://localhost:${options.port}`)
|
|
144
|
+
console.log(chalk_1.default.green(`Server running on http://localhost:${options.port}`));
|
|
146
145
|
});
|
|
147
146
|
const killServer = () => {
|
|
148
147
|
console.log(chalk_1.default.yellow('\nStopping server...'));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ServeUtils.js","sourceRoot":"","sources":["../../src/utils/ServeUtils.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,kDAA0B;AAC1B,2BAA8C;AAC9C,+BAA+B;
|
|
1
|
+
{"version":3,"file":"ServeUtils.js","sourceRoot":"","sources":["../../src/utils/ServeUtils.ts"],"names":[],"mappings":"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"}
|
|
@@ -91,6 +91,7 @@ class TemplateUtils {
|
|
|
91
91
|
...extra.dependencies
|
|
92
92
|
},
|
|
93
93
|
devDependencies: {
|
|
94
|
+
'@codenotch/process': '0.1.4',
|
|
94
95
|
...(withReact ? {
|
|
95
96
|
'@types/react': '^19.2.18',
|
|
96
97
|
'@types/react-dom': '^19.2.4',
|
|
@@ -104,13 +105,21 @@ class TemplateUtils {
|
|
|
104
105
|
/**
|
|
105
106
|
* Folders of a new project, relative to its root
|
|
106
107
|
*/
|
|
107
|
-
static PROJECT_FOLDERS = ['processes', 'apps', 'documents', '
|
|
108
|
+
static PROJECT_FOLDERS = ['processes', 'apps', 'documents', 'tables'];
|
|
108
109
|
static createGitignore() {
|
|
109
110
|
return [
|
|
110
111
|
'package-lock.json',
|
|
112
|
+
'',
|
|
113
|
+
'# Generated by the cli, regenerate them with the commands of the readme',
|
|
114
|
+
// Anchored with a leading slash: these three only ever sit at the root of the project
|
|
115
|
+
'/db-schema.ts',
|
|
116
|
+
'/db-schema.xml',
|
|
117
|
+
'/openapi.json',
|
|
118
|
+
// No slash: a translation file can sit anywhere, and its class is generated next to it
|
|
119
|
+
'*.i18n.ts',
|
|
120
|
+
'',
|
|
111
121
|
'/.codenotch',
|
|
112
|
-
'/node_modules'
|
|
113
|
-
'/typings'
|
|
122
|
+
'/node_modules'
|
|
114
123
|
].join('\n') + '\n';
|
|
115
124
|
}
|
|
116
125
|
/**
|
|
@@ -141,6 +150,15 @@ cn runtime start # start the local runtime
|
|
|
141
150
|
cn project start # build, deploy and open this project
|
|
142
151
|
${fence}
|
|
143
152
|
|
|
153
|
+
The files the cli derives from the sources are not versioned (see \`.gitignore\`), so after a
|
|
154
|
+
fresh clone they have to be written again before the project compiles:
|
|
155
|
+
|
|
156
|
+
${fence}sh
|
|
157
|
+
cn generate dbcontext -f . # db-schema.xml + db-schema.ts, when the project has tables
|
|
158
|
+
cn generate openapi -f . # openapi.json, when processes expose endpoints
|
|
159
|
+
cn generate i18n -f <file>.i18n.csv # the typed class of each translation file
|
|
160
|
+
${fence}
|
|
161
|
+
|
|
144
162
|
Then, after each change:
|
|
145
163
|
|
|
146
164
|
${fence}sh
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TemplateUtils.js","sourceRoot":"","sources":["../../src/utils/TemplateUtils.ts"],"names":[],"mappings":";;;;;;AACA,8DAAsC;AAEtC;;GAEG;AACU,QAAA,gBAAgB,GAAG,oBAAoB,CAAC;AAErD;;;;;;GAMG;AACH,MAA8B,aAAa;IAEvC,MAAM,CAAC,cAAc,CAAC,OAAe;QACjC,OAAO,wBAAgB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IAC1C,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,YAAY,CAAC,OAAe;QAC/B,OAAO;YACH,4BAA4B;YAC5B,4DAA4D;YAC5D,EAAE;YACF,SAAS,OAAO,0BAA0B;YAC1C,8BAA8B;YAC9B,EAAE;YACF,gBAAgB;YAChB,mCAAmC;YACnC,kDAAkD;YAClD,UAAU;YACV,IAAI;YACJ,EAAE;YACF,kBAAkB,OAAO,GAAG;YAC5B,EAAE;SACL,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACjB,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,iBAAiB,CAAC,OAAe;QACpC,OAAO;YACH,GAAG,EAAE;gBACD,IAAI,EAAE,OAAO;aAChB;YACD,IAAI,EAAE;gBACF,KAAK,EAAE,OAAO;aACjB;YACD,GAAG,EAAE;gBACD,IAAI,EAAE,OAAO;gBACb,OAAO,EAAE,YAAY;gBACrB,gBAAgB,EAAE;oBACd,yBAAyB;iBAC5B;gBACD,SAAS,EAAE,IAAI;gBACf,KAAK,EAAE;oBACH,EAAE,GAAG,EAAE,aAAa,EAAE,KAAK,EAAE,SAAS,EAAE,IAAI,EAAE,WAAW,EAAE;oBAC3D,EAAE,GAAG,EAAE,aAAa,EAAE,KAAK,EAAE,SAAS,EAAE,IAAI,EAAE,WAAW,EAAE;iBAC9D;aACJ;SACJ,CAAC;IACN,CAAC;IAED;;;;;OAKG;IACH,MAAM,CAAC,iBAAiB,CAAC,IAAY,EAAE,QAA6F,EAAE,EAAE,YAAqB,IAAI;QAC7J,OAAO;YACH,IAAI,EAAE,IAAI;YACV,OAAO,EAAE,OAAO;YAChB,WAAW,EAAE,uBAAuB;YACpC,IAAI,EAAE,UAAU;YAChB,OAAO,EAAE,EAAE;YACX,QAAQ,EAAE,EAAE;YACZ,MAAM,EAAE,EAAE;YACV,OAAO,EAAE,KAAK;YACd,YAAY,EAAE;gBACV,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC;oBACZ,OAAO,EAAE,SAAS;oBAClB,WAAW,EAAE,SAAS;oBACtB,4BAA4B,EAAE,oBAAU,CAAC,gBAAgB;iBAC5D,CAAC,CAAC,CAAC,EAAE,CAAC;gBACP,GAAG,KAAK,CAAC,YAAY;aACxB;YACD,eAAe,EAAE;gBACb,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC;oBACZ,cAAc,EAAE,UAAU;oBAC1B,kBAAkB,EAAE,SAAS;oBAC7B,sBAAsB,EAAE,QAAQ;iBACnC,CAAC,CAAC,CAAC,EAAE,CAAC;gBACP,YAAY,EAAE,QAAQ;gBACtB,GAAG,KAAK,CAAC,eAAe;aAC3B;SACJ,CAAC;IACN,CAAC;IAED;;OAEG;IACH,MAAM,CAAU,eAAe,GAAG,CAAC,WAAW,EAAE,MAAM,EAAE,WAAW,EAAE,
|
|
1
|
+
{"version":3,"file":"TemplateUtils.js","sourceRoot":"","sources":["../../src/utils/TemplateUtils.ts"],"names":[],"mappings":"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"}
|