@steroidsjs/nest 1.7.21 → 1.7.23
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/infrastructure/applications/BaseApplication.js +3 -1
- package/infrastructure/applications/BaseApplication.js.map +1 -1
- package/infrastructure/commands/dbml/dbml2code.js +10 -6
- package/infrastructure/commands/dbml/dbml2code.js.map +1 -1
- package/infrastructure/commands/dbml/templates.d.ts +2 -2
- package/infrastructure/commands/dbml/templates.js +32 -15
- package/infrastructure/commands/dbml/templates.js.map +1 -1
- package/package.json +1 -1
- package/tsconfig.tsbuildinfo +1 -1
|
@@ -10,8 +10,10 @@ class BaseApplication {
|
|
|
10
10
|
this.initModules();
|
|
11
11
|
}
|
|
12
12
|
initEnv() {
|
|
13
|
-
process.env.APP_ENVIRONMENT = process.env.APP_ENVIRONMENT || 'dev';
|
|
14
13
|
dotenv.config();
|
|
14
|
+
if (!process.env.APP_ENVIRONMENT) {
|
|
15
|
+
throw new Error('APP_ENVIRONMENT is not found in env file');
|
|
16
|
+
}
|
|
15
17
|
}
|
|
16
18
|
initConfig() {
|
|
17
19
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BaseApplication.js","sourceRoot":"","sources":["../../../src/infrastructure/applications/BaseApplication.ts"],"names":[],"mappings":";;;AAAA,iCAAiC;AACjC,0DAAqD;AAErD,MAAsB,eAAe;IAGvB,KAAK,CAAC,IAAI;QAChB,IAAI,CAAC,OAAO,EAAE,CAAC;QACf,IAAI,CAAC,UAAU,EAAE,CAAC;QAClB,IAAI,CAAC,WAAW,EAAE,CAAC;IACvB,CAAC;IAES,OAAO;QACb,
|
|
1
|
+
{"version":3,"file":"BaseApplication.js","sourceRoot":"","sources":["../../../src/infrastructure/applications/BaseApplication.ts"],"names":[],"mappings":";;;AAAA,iCAAiC;AACjC,0DAAqD;AAErD,MAAsB,eAAe;IAGvB,KAAK,CAAC,IAAI;QAChB,IAAI,CAAC,OAAO,EAAE,CAAC;QACf,IAAI,CAAC,UAAU,EAAE,CAAC;QAClB,IAAI,CAAC,WAAW,EAAE,CAAC;IACvB,CAAC;IAES,OAAO;QACb,MAAM,CAAC,MAAM,EAAE,CAAC;QAEhB,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,eAAe,EAAE;YAC9B,MAAM,IAAI,KAAK,CAAC,0CAA0C,CAAC,CAAC;SAC/D;IACL,CAAC;IAES,UAAU;IAEpB,CAAC;IAES,WAAW;QACjB,2BAAY,CAAC,eAAe,EAAE,CAAC;IACnC,CAAC;CAGJ;AA1BD,0CA0BC"}
|
|
@@ -94,9 +94,6 @@ const getFieldJsType = (fieldType) => {
|
|
|
94
94
|
if (fieldType === 'boolean') {
|
|
95
95
|
fieldJsType = 'boolean';
|
|
96
96
|
}
|
|
97
|
-
if (['createTime', 'updateTime'].includes(fieldType)) {
|
|
98
|
-
fieldJsType = 'Date';
|
|
99
|
-
}
|
|
100
97
|
return fieldJsType;
|
|
101
98
|
};
|
|
102
99
|
const getRelationFieldName = (baseName, relationType, fieldName, relalationTableName) => {
|
|
@@ -149,6 +146,7 @@ async function dbml2code(path) {
|
|
|
149
146
|
table.fieldIds.forEach(fieldId => {
|
|
150
147
|
const fieldName = dbmlJson.fields[fieldId].name;
|
|
151
148
|
const fieldLabel = dbmlJson.fields[fieldId].note || '';
|
|
149
|
+
const isNullable = dbmlJson.fields[fieldId].not_null === false;
|
|
152
150
|
let isVirtualField = false;
|
|
153
151
|
if (dbmlJson.fields[fieldId].endpointIds.length > 0) {
|
|
154
152
|
const fieldLeft = dbmlJson.fields[fieldId];
|
|
@@ -159,10 +157,13 @@ async function dbml2code(path) {
|
|
|
159
157
|
const baseRightName = (0, lodash_1.camelCase)(rightTable.name);
|
|
160
158
|
const modelRightName = (0, lodash_1.upperFirst)(baseRightName) + 'Model';
|
|
161
159
|
let fieldName = getRelationFieldName(baseRightName, relationType, fieldLeft.name, rightTable.name);
|
|
160
|
+
const inverseSideFieldName = !['ManyToMany', 'ManyToOne'].includes(relationType)
|
|
161
|
+
? fieldRight.name.replace(/Id$/, '')
|
|
162
|
+
: null;
|
|
162
163
|
if (relationType === 'ManyToOne') {
|
|
163
164
|
isVirtualField = true;
|
|
164
165
|
}
|
|
165
|
-
let isOwningSide = false;
|
|
166
|
+
let isOwningSide = ['OneToOne', 'ManyToMany'].includes(relationType) ? false : null;
|
|
166
167
|
if ((relationType === 'OneToOne' && fieldName !== 'id')
|
|
167
168
|
|| (relationType === 'ManyToMany'
|
|
168
169
|
&& !relationsWithJoin.includes(`${fieldId} - ${fieldRight.id}`))) {
|
|
@@ -171,11 +172,14 @@ async function dbml2code(path) {
|
|
|
171
172
|
relationsWithJoin.push(`${fieldRight.id} - ${fieldId}`);
|
|
172
173
|
}
|
|
173
174
|
importedFields.push('RelationField');
|
|
175
|
+
if (relationType === 'ManyToOne') {
|
|
176
|
+
importedFields.push('RelationIdField');
|
|
177
|
+
}
|
|
174
178
|
if (rightTable.name !== table.name) {
|
|
175
179
|
const moduleToImport = (0, lodash_1.split)(rightTable.name, '_')[0];
|
|
176
180
|
importedModels.push({ model: modelRightName, module: moduleToImport });
|
|
177
181
|
}
|
|
178
|
-
modelFieldCodes.push((0, templates_1.templateModelRelation)(fieldLabel, relationType, isOwningSide, modelRightName, fieldName));
|
|
182
|
+
modelFieldCodes.push((0, templates_1.templateModelRelation)(fieldLabel, relationType, isOwningSide, modelRightName, fieldName, baseRightName, inverseSideFieldName, isNullable));
|
|
179
183
|
});
|
|
180
184
|
}
|
|
181
185
|
if (isVirtualField && !dbmlJson.fields[fieldId].pk) {
|
|
@@ -185,7 +189,7 @@ async function dbml2code(path) {
|
|
|
185
189
|
const fieldJsType = getFieldJsType(fieldType);
|
|
186
190
|
const decoratorName = (0, lodash_1.upperFirst)(fieldType) + 'Field';
|
|
187
191
|
importedFields.push(decoratorName);
|
|
188
|
-
modelFieldCodes.push((0, templates_1.templateModelField)(decoratorName, fieldLabel, fieldName, fieldJsType));
|
|
192
|
+
modelFieldCodes.push((0, templates_1.templateModelField)(decoratorName, fieldLabel, fieldName, fieldJsType, isNullable));
|
|
189
193
|
});
|
|
190
194
|
const modulesImports = (0, lodash_1.uniqWith)(importedModels, lodash_1.isEqual).reduce((code, importedModel) => {
|
|
191
195
|
let path = '';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dbml2code.js","sourceRoot":"","sources":["../../../../src/infrastructure/commands/dbml/dbml2code.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"dbml2code.js","sourceRoot":"","sources":["../../../../src/infrastructure/commands/dbml/dbml2code.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
export declare function templateModel(importedFields: any, modulesImports: any, tableDescription: any, modelName: any, modelFieldCodes: any): string;
|
|
2
|
-
export declare function templateModelField(decoratorName: any, fieldLabel: any, fieldName: any, fieldJsType: any): string;
|
|
3
|
-
export declare function templateModelRelation(fieldLabel: any, relationType: any, isOwningSide: any, modelRightName: any, fieldName: any): string;
|
|
2
|
+
export declare function templateModelField(decoratorName: any, fieldLabel: any, fieldName: any, fieldJsType: any, isNullable: any): string;
|
|
3
|
+
export declare function templateModelRelation(fieldLabel: any, relationType: any, isOwningSide: any, modelRightName: any, fieldName: any, baseRightName: any, inverseSideFieldName: any, isNullable: any): string;
|
|
4
4
|
export declare function templateTable(modelName: any, entityName: any, tableName: any): string;
|
|
@@ -16,30 +16,47 @@ ${modelFieldCodes.join('\n\n')}
|
|
|
16
16
|
`;
|
|
17
17
|
}
|
|
18
18
|
exports.templateModel = templateModel;
|
|
19
|
-
function templateModelField(decoratorName, fieldLabel, fieldName, fieldJsType) {
|
|
20
|
-
return
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
19
|
+
function templateModelField(decoratorName, fieldLabel, fieldName, fieldJsType, isNullable) {
|
|
20
|
+
return [
|
|
21
|
+
` @${decoratorName}({`,
|
|
22
|
+
` label: '${fieldLabel}',`,
|
|
23
|
+
isNullable && ` nullable: true,`,
|
|
24
|
+
' })',
|
|
25
|
+
` ${fieldName}: ${fieldJsType};`,
|
|
26
|
+
].filter(Boolean).join('\n');
|
|
24
27
|
}
|
|
25
28
|
exports.templateModelField = templateModelField;
|
|
26
|
-
function templateModelRelation(fieldLabel, relationType, isOwningSide, modelRightName, fieldName) {
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
29
|
+
function templateModelRelation(fieldLabel, relationType, isOwningSide, modelRightName, fieldName, baseRightName, inverseSideFieldName, isNullable) {
|
|
30
|
+
const lines = [
|
|
31
|
+
' @RelationField({',
|
|
32
|
+
` label: '${fieldLabel}',`,
|
|
33
|
+
` type: '${relationType}',`,
|
|
34
|
+
isOwningSide !== null && ` isOwningSide: ${isOwningSide},`,
|
|
35
|
+
` relationClass: () => ${modelRightName},`,
|
|
36
|
+
inverseSideFieldName && ` inverseSide: (${baseRightName}: ${modelRightName}) => ${baseRightName}.${inverseSideFieldName},`,
|
|
37
|
+
' })',
|
|
38
|
+
` ${fieldName}: ${modelRightName}${relationType.endsWith('Many') ? '[]' : ''};`,
|
|
39
|
+
].filter(Boolean);
|
|
40
|
+
if (relationType === 'ManyToOne') {
|
|
41
|
+
lines.push(...[
|
|
42
|
+
'\n @RelationIdField({',
|
|
43
|
+
` label: '${fieldLabel}',`,
|
|
44
|
+
isNullable && ` nullable: true,`,
|
|
45
|
+
` relationName: '${fieldName}',`,
|
|
46
|
+
' })',
|
|
47
|
+
` ${fieldName}Id: number;`,
|
|
48
|
+
].filter(Boolean));
|
|
49
|
+
}
|
|
50
|
+
return lines.join('\n');
|
|
34
51
|
}
|
|
35
52
|
exports.templateModelRelation = templateModelRelation;
|
|
36
53
|
function templateTable(modelName, entityName, tableName) {
|
|
37
54
|
return `import {TableFromModel} from '@steroidsjs/nest/infrastructure/decorators/TableFromModel';
|
|
38
|
-
import {
|
|
55
|
+
import {IDeepPartial} from '@steroidsjs/nest/usecases/interfaces/IDeepPartial';
|
|
39
56
|
import {${modelName}} from '../../domain/models/${modelName}';
|
|
40
57
|
|
|
41
58
|
@TableFromModel(${modelName}, '${entityName}')
|
|
42
|
-
export class ${tableName} implements
|
|
59
|
+
export class ${tableName} implements IDeepPartial<${modelName}> {}
|
|
43
60
|
`;
|
|
44
61
|
}
|
|
45
62
|
exports.templateTable = templateTable;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"templates.js","sourceRoot":"","sources":["../../../../src/infrastructure/commands/dbml/templates.ts"],"names":[],"mappings":";;;AAAA,mCAEgB;AAEhB,SAAgB,aAAa,CACzB,cAAc,EACd,cAAc,EACd,gBAAgB,EAChB,SAAS,EACT,eAAe;IAEf,OAAO;EACT,IAAA,aAAK,EAAC,cAAc,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC;;EAE5D,cAAc;;KAEX,gBAAgB;;eAEN,SAAS;EACtB,eAAe,CAAC,IAAI,CAAC,MAAM,CAAC;;CAE7B,CAAC;AACF,CAAC;AAlBD,sCAkBC;AAED,SAAgB,kBAAkB,CAC9B,aAAa,EACb,UAAU,EACV,SAAS,EACT,WAAW;
|
|
1
|
+
{"version":3,"file":"templates.js","sourceRoot":"","sources":["../../../../src/infrastructure/commands/dbml/templates.ts"],"names":[],"mappings":";;;AAAA,mCAEgB;AAEhB,SAAgB,aAAa,CACzB,cAAc,EACd,cAAc,EACd,gBAAgB,EAChB,SAAS,EACT,eAAe;IAEf,OAAO;EACT,IAAA,aAAK,EAAC,cAAc,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC;;EAE5D,cAAc;;KAEX,gBAAgB;;eAEN,SAAS;EACtB,eAAe,CAAC,IAAI,CAAC,MAAM,CAAC;;CAE7B,CAAC;AACF,CAAC;AAlBD,sCAkBC;AAED,SAAgB,kBAAkB,CAC9B,aAAa,EACb,UAAU,EACV,SAAS,EACT,WAAW,EACX,UAAU;IAEV,OAAO;QACH,QAAQ,aAAa,IAAI;QACzB,mBAAmB,UAAU,IAAI;QACjC,UAAU,IAAI,yBAAyB;QACvC,QAAQ;QACR,OAAO,SAAS,KAAK,WAAW,GAAG;KACtC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACjC,CAAC;AAdD,gDAcC;AAED,SAAgB,qBAAqB,CACjC,UAAU,EACV,YAAY,EACZ,YAAY,EACZ,cAAc,EACd,SAAS,EACT,aAAa,EACb,oBAAoB,EACpB,UAAU;IAEV,MAAM,KAAK,GAAG;QACV,sBAAsB;QACtB,mBAAmB,UAAU,IAAI;QACjC,kBAAkB,YAAY,IAAI;QAClC,YAAY,KAAK,IAAI,IAAI,yBAAyB,YAAY,GAAG;QACjE,gCAAgC,cAAc,GAAG;QACjD,oBAAoB,IAAI,yBAAyB,aAAa,KAAK,cAAc,QAAQ,aAAa,IAAI,oBAAoB,GAAG;QACjI,QAAQ;QACR,OAAO,SAAS,KAAK,cAAc,GAAG,YAAY,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,GAAG;KACrF,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IAElB,IAAI,YAAY,KAAK,WAAW,EAAE;QAC9B,KAAK,CAAC,IAAI,CAAC,GAAG;YACV,0BAA0B;YAC1B,mBAAmB,UAAU,IAAI;YACjC,UAAU,IAAI,yBAAyB;YACvC,0BAA0B,SAAS,IAAI;YACvC,QAAQ;YACR,OAAO,SAAS,aAAa;SAChC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC;KACtB;IAED,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;AAC3B,CAAC;AAjCD,sDAiCC;AAED,SAAgB,aAAa,CACzB,SAAS,EACT,UAAU,EACV,SAAS;IAET,OAAO;;UAED,SAAS,+BAA+B,SAAS;;kBAEzC,SAAS,MAAM,UAAU;eAC5B,SAAS,4BAA4B,SAAS;CAC5D,CAAC;AACF,CAAC;AAZD,sCAYC"}
|