@steroidsjs/nest 3.0.0 → 3.0.2
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/adapters/QueryAdapterTypeORM.js +26 -2
- package/infrastructure/adapters/QueryAdapterTypeORM.js.map +1 -1
- package/infrastructure/applications/base/config.js +1 -1
- package/infrastructure/applications/base/config.js.map +1 -1
- package/infrastructure/applications/console/ConsoleApplication.js +2 -2
- package/infrastructure/applications/console/ConsoleApplication.js.map +1 -1
- package/infrastructure/applications/console/config.js +3 -0
- package/infrastructure/applications/console/config.js.map +1 -1
- package/infrastructure/applications/rest/RestApplication.js +7 -0
- package/infrastructure/applications/rest/RestApplication.js.map +1 -1
- package/infrastructure/applications/rest/exceptions/RequestExecutionException.d.ts +6 -0
- package/infrastructure/applications/rest/exceptions/RequestExecutionException.js +6 -0
- package/infrastructure/applications/rest/exceptions/RequestExecutionException.js.map +1 -1
- package/infrastructure/commands/MigrateCommand.js +1 -0
- package/infrastructure/commands/MigrateCommand.js.map +1 -1
- package/infrastructure/commands/dbml/dbml2code.js +8 -0
- package/infrastructure/commands/dbml/dbml2code.js.map +1 -1
- package/infrastructure/commands/entity-generator/EntityCodeGenerateCommand.d.ts +4 -0
- package/infrastructure/commands/entity-generator/EntityCodeGenerateCommand.js +4 -0
- package/infrastructure/commands/entity-generator/EntityCodeGenerateCommand.js.map +1 -1
- package/infrastructure/commands/entity-generator/EntityCodeGenerator.js +1 -0
- package/infrastructure/commands/entity-generator/EntityCodeGenerator.js.map +1 -1
- package/infrastructure/commands/generate/CustomPostgresQueryRunner.d.ts +77 -0
- package/infrastructure/commands/generate/CustomPostgresQueryRunner.js +149 -0
- package/infrastructure/commands/generate/CustomPostgresQueryRunner.js.map +1 -1
- package/infrastructure/commands/generate/CustomRdbmsSchemaBuilder.js +7 -1
- package/infrastructure/commands/generate/CustomRdbmsSchemaBuilder.js.map +1 -1
- package/infrastructure/commands/generate/index.js +14 -0
- package/infrastructure/commands/generate/index.js.map +1 -1
- package/infrastructure/commands/importClassesFromDirectories.d.ts +3 -0
- package/infrastructure/commands/importClassesFromDirectories.js +3 -0
- package/infrastructure/commands/importClassesFromDirectories.js.map +1 -1
- package/infrastructure/decorators/Module.js +6 -0
- package/infrastructure/decorators/Module.js.map +1 -1
- package/infrastructure/decorators/TableFromModel.js +3 -0
- package/infrastructure/decorators/TableFromModel.js.map +1 -1
- package/infrastructure/decorators/fields/BaseField.js +5 -0
- package/infrastructure/decorators/fields/BaseField.js.map +1 -1
- package/infrastructure/decorators/fields/CreateTimeField.js +1 -0
- package/infrastructure/decorators/fields/CreateTimeField.js.map +1 -1
- package/infrastructure/decorators/fields/DateTimeField.js +5 -0
- package/infrastructure/decorators/fields/DateTimeField.js.map +1 -1
- package/infrastructure/decorators/fields/ExtendField.js +2 -0
- package/infrastructure/decorators/fields/ExtendField.js.map +1 -1
- package/infrastructure/decorators/fields/RelationField.js +3 -0
- package/infrastructure/decorators/fields/RelationField.js.map +1 -1
- package/infrastructure/decorators/fields/RelationIdField.js +2 -0
- package/infrastructure/decorators/fields/RelationIdField.js.map +1 -1
- package/infrastructure/decorators/fields/UidField.js +1 -0
- package/infrastructure/decorators/fields/UidField.js.map +1 -1
- package/infrastructure/decorators/fields/UpdateTimeField.js +1 -0
- package/infrastructure/decorators/fields/UpdateTimeField.js.map +1 -1
- package/infrastructure/filters/ValidationExceptionFilter.js +1 -0
- package/infrastructure/filters/ValidationExceptionFilter.js.map +1 -1
- package/infrastructure/helpers/ModuleHelper.d.ts +1 -0
- package/infrastructure/helpers/ModuleHelper.js +1 -0
- package/infrastructure/helpers/ModuleHelper.js.map +1 -1
- package/infrastructure/helpers/typeORM/ConditionHelperTypeORM.js +21 -18
- package/infrastructure/helpers/typeORM/ConditionHelperTypeORM.js.map +1 -1
- package/infrastructure/helpers/typeORM/SearchHelperTypeORM.js +6 -0
- package/infrastructure/helpers/typeORM/SearchHelperTypeORM.js.map +1 -1
- package/infrastructure/pipes/CreateDtoPipe.js +1 -0
- package/infrastructure/pipes/CreateDtoPipe.js.map +1 -1
- package/infrastructure/repositories/CrudRepository.d.ts +88 -0
- package/infrastructure/repositories/CrudRepository.js +85 -0
- package/infrastructure/repositories/CrudRepository.js.map +1 -1
- package/infrastructure/tests/ModelTest.test.js +23 -0
- package/infrastructure/tests/ModelTest.test.js.map +1 -1
- package/infrastructure/tests/app/services/ArticleService.d.ts +4 -1
- package/infrastructure/tests/app/services/ArticleService.js +3 -1
- package/infrastructure/tests/app/services/ArticleService.js.map +1 -1
- package/infrastructure/tests/app/services/CommentService.d.ts +4 -1
- package/infrastructure/tests/app/services/CommentService.js +3 -1
- package/infrastructure/tests/app/services/CommentService.js.map +1 -1
- package/infrastructure/tests/app/services/FileService.d.ts +4 -1
- package/infrastructure/tests/app/services/FileService.js +3 -1
- package/infrastructure/tests/app/services/FileService.js.map +1 -1
- package/infrastructure/tests/app/services/ImageService.d.ts +4 -1
- package/infrastructure/tests/app/services/ImageService.js +3 -1
- package/infrastructure/tests/app/services/ImageService.js.map +1 -1
- package/infrastructure/tests/app/services/TagService.d.ts +4 -1
- package/infrastructure/tests/app/services/TagService.js +3 -1
- package/infrastructure/tests/app/services/TagService.js.map +1 -1
- package/infrastructure/tests/app/services/UserService.d.ts +4 -1
- package/infrastructure/tests/app/services/UserService.js +3 -1
- package/infrastructure/tests/app/services/UserService.js.map +1 -1
- package/infrastructure/tests/bootstrap.js +1 -1
- package/infrastructure/tests/bootstrap.js.map +1 -1
- package/package.json +1 -1
- package/tsconfig.tsbuildinfo +1 -1
- package/usecases/base/SearchQuery.d.ts +12 -0
- package/usecases/base/SearchQuery.js +18 -0
- package/usecases/base/SearchQuery.js.map +1 -1
- package/usecases/helpers/DataMapper.js +6 -0
- package/usecases/helpers/DataMapper.js.map +1 -1
- package/usecases/helpers/ValidationHelper.d.ts +27 -0
- package/usecases/helpers/ValidationHelper.js +33 -0
- package/usecases/helpers/ValidationHelper.js.map +1 -1
- package/usecases/interfaces/IManualSchema.d.ts +4 -0
- package/usecases/services/CrudService.d.ts +47 -8
- package/usecases/services/CrudService.js +88 -0
- package/usecases/services/CrudService.js.map +1 -1
- package/usecases/services/ReadService.d.ts +31 -0
- package/usecases/services/ReadService.js +32 -0
- package/usecases/services/ReadService.js.map +1 -1
- package/usecases/validators/Validator.js +1 -0
- package/usecases/validators/Validator.js.map +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CustomPostgresQueryRunner.js","sourceRoot":"","sources":["../../../../src/infrastructure/commands/generate/CustomPostgresQueryRunner.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"CustomPostgresQueryRunner.js","sourceRoot":"","sources":["../../../../src/infrastructure/commands/generate/CustomPostgresQueryRunner.ts"],"names":[],"mappings":"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"}
|
|
@@ -5,20 +5,26 @@ const RdbmsSchemaBuilder_1 = require("@steroidsjs/typeorm/schema-builder/RdbmsSc
|
|
|
5
5
|
const CustomPostgresQueryRunner_1 = require("./CustomPostgresQueryRunner");
|
|
6
6
|
class CustomRdbmsSchemaBuilder extends RdbmsSchemaBuilder_1.RdbmsSchemaBuilder {
|
|
7
7
|
async log() {
|
|
8
|
+
// Create query runner
|
|
8
9
|
const queryRunner = new CustomPostgresQueryRunner_1.CustomPostgresQueryRunner(this.connection.driver, 'master');
|
|
9
10
|
queryRunner.manager = this.connection.createEntityManager(queryRunner);
|
|
10
11
|
this.queryRunner = queryRunner;
|
|
11
12
|
try {
|
|
13
|
+
// Flush the queryrunner table & view cache
|
|
12
14
|
const tablePaths = this.entityToSyncMetadatas.map(metadata => this.getTablePathCustom(metadata));
|
|
13
15
|
await this.queryRunner.getTables(tablePaths);
|
|
14
16
|
await this.queryRunner.getViews([]);
|
|
15
17
|
this.queryRunner.enableSqlMemory();
|
|
16
18
|
await this.executeSchemaSyncOperationsInProperOrder();
|
|
17
|
-
if
|
|
19
|
+
// if cache is enabled then perform cache-synchronization as well
|
|
20
|
+
if (this.connection.queryResultCache) // todo: check this functionality
|
|
18
21
|
await this.connection.queryResultCache.synchronize(this.queryRunner);
|
|
19
22
|
return this.queryRunner.getMemorySql();
|
|
20
23
|
}
|
|
21
24
|
finally {
|
|
25
|
+
// its important to disable this mode despite the fact we are release query builder
|
|
26
|
+
// because there exist drivers which reuse same query runner. Also its important to disable
|
|
27
|
+
// sql memory after call of getMemorySql() method because last one flushes sql memory.
|
|
22
28
|
this.queryRunner.disableSqlMemory();
|
|
23
29
|
await this.queryRunner.release();
|
|
24
30
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CustomRdbmsSchemaBuilder.js","sourceRoot":"","sources":["../../../../src/infrastructure/commands/generate/CustomRdbmsSchemaBuilder.ts"],"names":[],"mappings":";;;AAIA,8FAAyF;AACzF,2EAAwF;AAExF,MAAa,wBAAyB,SAAQ,uCAAkB;IAE5D,KAAK,CAAC,GAAG;
|
|
1
|
+
{"version":3,"file":"CustomRdbmsSchemaBuilder.js","sourceRoot":"","sources":["../../../../src/infrastructure/commands/generate/CustomRdbmsSchemaBuilder.ts"],"names":[],"mappings":";;;AAIA,8FAAyF;AACzF,2EAAwF;AAExF,MAAa,wBAAyB,SAAQ,uCAAkB;IAE5D,KAAK,CAAC,GAAG;QACL,sBAAsB;QACtB,MAAM,WAAW,GAAG,IAAI,qDAAyB,CAAC,IAAI,CAAC,UAAU,CAAC,MAAa,EAAE,QAAQ,CAAC,CAAC;QAC3F,WAAW,CAAC,OAAO,GAAG,IAAI,CAAC,UAAU,CAAC,mBAAmB,CAAC,WAAW,CAAC,CAAC;QACvE,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;QAE/B,IAAI;YACA,2CAA2C;YAC3C,MAAM,UAAU,GAAG,IAAI,CAAC,qBAAqB,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC,IAAI,CAAC,kBAAkB,CAAC,QAAQ,CAAC,CAAC,CAAC;YACjG,MAAM,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;YAC7C,MAAM,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;YAEpC,IAAI,CAAC,WAAW,CAAC,eAAe,EAAE,CAAC;YACnC,MAAM,IAAI,CAAC,wCAAwC,EAAE,CAAC;YAEtD,iEAAiE;YACjE,IAAI,IAAI,CAAC,UAAU,CAAC,gBAAgB,EAAE,iCAAiC;gBACnE,MAAM,IAAI,CAAC,UAAU,CAAC,gBAAgB,CAAC,WAAW,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;YAEzE,OAAO,IAAI,CAAC,WAAW,CAAC,YAAY,EAAsB,CAAC;SAE9D;gBAAS;YACN,mFAAmF;YACnF,2FAA2F;YAC3F,sFAAsF;YACtF,IAAI,CAAC,WAAW,CAAC,gBAAgB,EAAE,CAAC;YACpC,MAAM,IAAI,CAAC,WAAW,CAAC,OAAO,EAAE,CAAC;SACpC;IACL,CAAC;IAEO,kBAAkB,CAAC,MAAgE;QACvF,MAAM,MAAM,GAAG,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC;QAE7D,OAAO,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,cAAc,CACxC,MAAM,CAAC,SAAS,EAChB,MAAM,CAAC,MAAM,IAAI,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,MAAM,EAC9C,MAAM,CAAC,QAAQ,IAAI,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,QAAQ,CACrD,CAAC;IACN,CAAC;CAEJ;AA1CD,4DA0CC"}
|
|
@@ -21,6 +21,9 @@ const prettifyQuery = (query) => {
|
|
|
21
21
|
query = query.replace(/`/g, '\\`');
|
|
22
22
|
return query;
|
|
23
23
|
};
|
|
24
|
+
/**
|
|
25
|
+
* Gets contents of the migration file.
|
|
26
|
+
*/
|
|
24
27
|
const getTemplate = (name, timestamp, upSqls, downSqls) => {
|
|
25
28
|
const migrationName = `${name}${timestamp}`;
|
|
26
29
|
return `import {MigrationInterface, QueryRunner} from '@steroidsjs/typeorm';
|
|
@@ -41,6 +44,7 @@ ${downSqls.join(`
|
|
|
41
44
|
`;
|
|
42
45
|
};
|
|
43
46
|
const generate = async (connection) => {
|
|
47
|
+
// Get mapping model name to table name
|
|
44
48
|
const junctionTablesMap = {};
|
|
45
49
|
const classesToTablesMap = connection.entityMetadatas.reduce((obj, entityMeta) => {
|
|
46
50
|
obj[entityMeta.targetName] = entityMeta.tableName;
|
|
@@ -51,8 +55,10 @@ const generate = async (connection) => {
|
|
|
51
55
|
});
|
|
52
56
|
return obj;
|
|
53
57
|
}, {});
|
|
58
|
+
// Get source root directory
|
|
54
59
|
const cliConfiguration = await (0, load_configuration_1.loadConfiguration)();
|
|
55
60
|
const sourceRoot = (0, path_1.join)(process.cwd(), cliConfiguration.sourceRoot);
|
|
61
|
+
// Each all models, store models info by table names
|
|
56
62
|
const tablesInfo = {};
|
|
57
63
|
const moduleDirs = fs.readdirSync(sourceRoot);
|
|
58
64
|
for (const moduleName of moduleDirs) {
|
|
@@ -87,6 +93,7 @@ const generate = async (connection) => {
|
|
|
87
93
|
};
|
|
88
94
|
}
|
|
89
95
|
}
|
|
96
|
+
// Generate migrations, separated by table names
|
|
90
97
|
const migrationsByTables = {};
|
|
91
98
|
const sqlInMemory = await (new CustomRdbmsSchemaBuilder_1.CustomRdbmsSchemaBuilder(connection)).log();
|
|
92
99
|
for (const item of sqlInMemory.upTableQueries) {
|
|
@@ -103,11 +110,14 @@ const generate = async (connection) => {
|
|
|
103
110
|
const tableName = junctionTablesMap[item.tableName] || item.tableName;
|
|
104
111
|
migrationsByTables[tableName].downQueries.push(' await queryRunner.query(`' + prettifyQuery(item.query.query) + '`' + queryParams(item.query.parameters) + ');');
|
|
105
112
|
}
|
|
113
|
+
// Generate migrations
|
|
106
114
|
const timestamp = new Date().getTime();
|
|
107
115
|
if (Object.keys(migrationsByTables).length === 0) {
|
|
116
|
+
// eslint-disable-next-line no-console
|
|
108
117
|
console.log('info', 'No changes in database schema were found');
|
|
109
118
|
}
|
|
110
119
|
else {
|
|
120
|
+
// eslint-disable-next-line no-console
|
|
111
121
|
console.log('info', 'Created migrations:');
|
|
112
122
|
for (const tableName in migrationsByTables) {
|
|
113
123
|
if (!tablesInfo[tableName]) {
|
|
@@ -116,15 +126,18 @@ const generate = async (connection) => {
|
|
|
116
126
|
}
|
|
117
127
|
const tableClassName = tablesInfo[tableName].tableClassName;
|
|
118
128
|
const tablePath = tablesInfo[tableName].tablePath;
|
|
129
|
+
//Создание файла миграции с созданием таблиц, если такие запросы существуют
|
|
119
130
|
const tableDeclarationUpQueries = migrationsByTables[tableName].upQueries.filter(query => query.includes('CREATE TABLE'));
|
|
120
131
|
const tableDeclarationDownQueries = migrationsByTables[tableName].downQueries.filter(query => query.includes('DROP TABLE')).reverse();
|
|
121
132
|
if (tableDeclarationUpQueries.length > 0 || tableDeclarationDownQueries.length > 0) {
|
|
122
133
|
const tableDeclarationFileContent = getTemplate(tableClassName, timestamp, tableDeclarationUpQueries, tableDeclarationDownQueries);
|
|
123
134
|
const tableDeclarationFileName = timestamp + '-' + tableClassName + '.ts';
|
|
124
135
|
const tableDeclarationFilePath = (0, path_1.resolve)(tablePath, '../../migrations', tableDeclarationFileName);
|
|
136
|
+
// eslint-disable-next-line no-console
|
|
125
137
|
console.log('info', '\t' + tableDeclarationFilePath);
|
|
126
138
|
await CommandUtils_1.CommandUtils.createFile(tableDeclarationFilePath, tableDeclarationFileContent);
|
|
127
139
|
}
|
|
140
|
+
//Создание файла миграции с добавлением в таблицу внешних ключей, если такие запросы существуют
|
|
128
141
|
const nextTimestamp = timestamp + 1;
|
|
129
142
|
const foreignKeysUpQueries = migrationsByTables[tableName].upQueries.filter(query => !query.includes('CREATE TABLE'));
|
|
130
143
|
const foreignKeysDownQueries = migrationsByTables[tableName].downQueries.filter(query => !query.includes('DROP TABLE')).reverse();
|
|
@@ -132,6 +145,7 @@ const generate = async (connection) => {
|
|
|
132
145
|
const foreignKeysFileContent = getTemplate(tableClassName, nextTimestamp, foreignKeysUpQueries, foreignKeysDownQueries);
|
|
133
146
|
const foreignKeysFileName = nextTimestamp + '-' + tableClassName + '.ts';
|
|
134
147
|
const foreignKeysFilePath = (0, path_1.resolve)(tablePath, '../../migrations', foreignKeysFileName);
|
|
148
|
+
// eslint-disable-next-line no-console
|
|
135
149
|
console.log('info', '\t' + foreignKeysFilePath);
|
|
136
150
|
await CommandUtils_1.CommandUtils.createFile(foreignKeysFilePath, foreignKeysFileContent);
|
|
137
151
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/infrastructure/commands/generate/index.ts"],"names":[],"mappings":";;;AAAA,iFAA2E;AAC3E,+BAAmC;AAEnC,yBAAyB;AACzB,4EAAuE;AAEvE,mDAA2C;AAC3C,yEAAoE;AACpE,6BAA6B;AAC7B,6DAAwD;AAExD,MAAM,WAAW,GAAG,CAAC,UAA6B,EAAU,EAAE;IAC1D,IAAI,CAAC,UAAU,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE;QACnC,OAAO,EAAE,CAAC;KACb;IAED,OAAO,KAAK,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,EAAE,CAAC;AAC7C,CAAC,CAAA;AAED,MAAM,aAAa,GAAG,CAAC,KAAa,EAAE,EAAE;IACpC,MAAM,cAAc,GAAG,IAAA,kBAAM,EAAC,KAAK,EAAE,EAAC,MAAM,EAAE,MAAM,EAAC,CAAC,CAAC;IACvD,KAAK,GAAG,IAAI,GAAG,cAAc,CAAC,OAAO,CAAC,KAAK,EAAE,cAAc,CAAC,GAAG,YAAY,CAAC;IAC5E,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;IACnC,OAAO,KAAK,CAAC;AACjB,CAAC,CAAA;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/infrastructure/commands/generate/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -30,6 +30,9 @@ const createMockMigration = file => {
|
|
|
30
30
|
NewClass.prototype = Object.create(MockMigration.prototype);
|
|
31
31
|
return NewClass;
|
|
32
32
|
};
|
|
33
|
+
/**
|
|
34
|
+
* Loads all exported classes from the given directory.
|
|
35
|
+
*/
|
|
33
36
|
async function importClassesFromDirectories(logger, directories, formats = [".js", ".mjs", ".cjs", ".ts", ".mts", ".cts"]) {
|
|
34
37
|
const logLevel = "info";
|
|
35
38
|
const classesNotFoundMessage = "No classes were found using the provided glob pattern: ";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"importClassesFromDirectories.js","sourceRoot":"","sources":["../../../src/infrastructure/commands/importClassesFromDirectories.ts"],"names":[],"mappings":";;;AAAA,6BAA6B;AAC7B,8EAAyE;AACzE,iFAA4E;AAE5E,sEAAyE;AAEzE,MAAM,aAAa;IAMf,KAAK,CAAC,EAAE,CAAC,WAAW;QAChB,MAAM,IAAI,CAAC,KAAK,EAAE,CAAC;QACnB,MAAM,IAAI,CAAC,aAAa,CAAC,EAAE,CAAC,WAAW,CAAC,CAAC;IAC7C,CAAC;IAED,KAAK,CAAC,IAAI,CAAC,WAAW;QAClB,MAAM,IAAI,CAAC,KAAK,EAAE,CAAC;QACnB,MAAM,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IAC/C,CAAC;IAED,KAAK,CAAC,KAAK;;QACP,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE;YACrB,MAAM,MAAM,GAAQ,MAAM,IAAA,iCAAmB,EAAC,6BAAa,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;YACpF,MAAM,cAAc,GAAG,CAAA,MAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAG,CAAC,CAAC,0CAAG,IAAI,CAAC,IAAI,CAAC,MAAI,MAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAG,CAAC,CAAC,0CAAE,OAAO,CAAA,KAAI,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAG,CAAC,CAAC,CAAA,CAAC;YACvF,IAAI,CAAC,aAAa,GAAG,IAAI,cAAc,EAAE,CAAC;SAC7C;IACL,CAAC;CACJ;AAED,MAAM,mBAAmB,GAAG,IAAI,CAAC,EAAE;IAC/B,MAAM,OAAO,GAAG,mCAAmC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC/D,MAAM,IAAI,GAAG,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,eAAe,CAAC;IAEjE,MAAM,QAAQ,GAAG,IAAI,QAAQ,CAAC,kBAAkB,GAAG,IAAI,GAAG,mBAAmB,GAAG,IAAI,GAAG,kBAAkB,GAAG,IAAI,GAAG,KAAK,CAAC,EAAE,CAAC;IAC5H,QAAQ,CAAC,SAAS,GAAG,MAAM,CAAC,MAAM,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC;IAE5D,OAAO,QAAQ,CAAC;AACpB,CAAC,CAAA;
|
|
1
|
+
{"version":3,"file":"importClassesFromDirectories.js","sourceRoot":"","sources":["../../../src/infrastructure/commands/importClassesFromDirectories.ts"],"names":[],"mappings":"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"}
|
|
@@ -8,15 +8,18 @@ const ModuleHelper_1 = require("../helpers/ModuleHelper");
|
|
|
8
8
|
const PermissionsFactory_1 = require("../helpers/PermissionsFactory");
|
|
9
9
|
function Module(data) {
|
|
10
10
|
return (target) => {
|
|
11
|
+
// Custom module class
|
|
11
12
|
if (data.rootTarget) {
|
|
12
13
|
target = data.rootTarget;
|
|
13
14
|
}
|
|
14
15
|
if (!data.name) {
|
|
15
16
|
data.name = (0, lodash_1.camelCase)(target.name).replace(/Module$/, '');
|
|
16
17
|
}
|
|
18
|
+
// Store entities for use it in TypeOrm root module
|
|
17
19
|
if (data.tables) {
|
|
18
20
|
ModuleHelper_1.ModuleHelper.addEntities(data.tables, data.name);
|
|
19
21
|
}
|
|
22
|
+
// Lazy call nest module decorator (wait config initialize)
|
|
20
23
|
if (data.module) {
|
|
21
24
|
ModuleHelper_1.ModuleHelper.addInitializer(() => {
|
|
22
25
|
const nestConfig = data.module(ModuleHelper_1.ModuleHelper.getConfig(target));
|
|
@@ -24,12 +27,15 @@ function Module(data) {
|
|
|
24
27
|
(0, common_1.Module)(nestConfig)(target);
|
|
25
28
|
});
|
|
26
29
|
}
|
|
30
|
+
// Use global nest decorator
|
|
27
31
|
if (data.global) {
|
|
28
32
|
(0, common_1.Global)()(target);
|
|
29
33
|
}
|
|
34
|
+
// Add module permissions
|
|
30
35
|
if (data.permissions) {
|
|
31
36
|
PermissionsFactory_1.PermissionsFactory.add(data.permissions);
|
|
32
37
|
}
|
|
38
|
+
// Store module config for global use via ModuleHelper
|
|
33
39
|
if (data.config) {
|
|
34
40
|
ModuleHelper_1.ModuleHelper.setConfig(target, data.config);
|
|
35
41
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Module.js","sourceRoot":"","sources":["../../../src/infrastructure/decorators/Module.ts"],"names":[],"mappings":";;;AAAA,mCAA+C;AAC/C,2CAA4E;AAC5E,2DAAuD;AACvD,0DAAqD;AACrD,sEAAiE;AAYjE,SAAgB,MAAM,CAAC,IAAa;IAChC,OAAO,CAAC,MAAM,EAAE,EAAE;
|
|
1
|
+
{"version":3,"file":"Module.js","sourceRoot":"","sources":["../../../src/infrastructure/decorators/Module.ts"],"names":[],"mappings":";;;AAAA,mCAA+C;AAC/C,2CAA4E;AAC5E,2DAAuD;AACvD,0DAAqD;AACrD,sEAAiE;AAYjE,SAAgB,MAAM,CAAC,IAAa;IAChC,OAAO,CAAC,MAAM,EAAE,EAAE;QACd,sBAAsB;QACtB,IAAI,IAAI,CAAC,UAAU,EAAE;YACjB,MAAM,GAAG,IAAI,CAAC,UAAU,CAAC;SAC5B;QAED,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE;YACZ,IAAI,CAAC,IAAI,GAAG,IAAA,kBAAU,EAAC,MAAM,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC;SAC9D;QAED,mDAAmD;QACnD,IAAI,IAAI,CAAC,MAAM,EAAE;YACb,2BAAY,CAAC,WAAW,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;SACpD;QAED,2DAA2D;QAC3D,IAAI,IAAI,CAAC,MAAM,EAAE;YACb,2BAAY,CAAC,cAAc,CAAC,GAAG,EAAE;gBAC7B,MAAM,UAAU,GAAG,IAAI,CAAC,MAAM,CAAC,2BAAY,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC;gBAC/D,UAAU,CAAC,OAAO,GAAG,CAAC,UAAU,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,4BAAa,CAAC,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC;gBAC9F,IAAA,eAAU,EAAC,UAAU,CAAC,CAAC,MAAM,CAAC,CAAC;YACnC,CAAC,CAAC,CAAC;SACN;QAED,4BAA4B;QAC5B,IAAI,IAAI,CAAC,MAAM,EAAE;YACb,IAAA,eAAM,GAAE,CAAC,MAAM,CAAC,CAAC;SACpB;QAED,yBAAyB;QACzB,IAAI,IAAI,CAAC,WAAW,EAAE;YAClB,uCAAkB,CAAC,GAAG,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;SAC5C;QAED,sDAAsD;QACtD,IAAI,IAAI,CAAC,MAAM,EAAE;YACb,2BAAY,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;SAC/C;QAED,OAAO,MAAM,CAAC;IAClB,CAAC,CAAC;AACN,CAAC;AA1CD,wBA0CC"}
|
|
@@ -26,6 +26,9 @@ function TableFromModelInternal(ModelClass) {
|
|
|
26
26
|
return (target) => {
|
|
27
27
|
modelToTableMap[ModelClass.name] = target;
|
|
28
28
|
(0, BaseField_1.getMetaFields)(ModelClass).forEach(field => {
|
|
29
|
+
// считаем что поле модели полем таблицы, если для него задан декоратор,
|
|
30
|
+
// так как все steroids-поля задают декораторы
|
|
31
|
+
// @todo нужно определять является ли поле колонкой в бд более семантически логичным способом
|
|
29
32
|
const options = (0, BaseField_1.getFieldOptions)(ModelClass, field);
|
|
30
33
|
const isTableColumn = !!(0, BaseField_1.getFieldDecoratorName)(ModelClass, field);
|
|
31
34
|
if (isTableColumn && options && !options.noColumn) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TableFromModel.js","sourceRoot":"","sources":["../../../src/infrastructure/decorators/TableFromModel.ts"],"names":[],"mappings":";;;AAAA,iDAA2C;AAC3C,sDAAiD;AACjD,2CAA+C;AAC/C,kDAAyF;AAQzF,MAAM,eAAe,GAAG,EAAE,CAAC;AAC3B,MAAM,gBAAgB,GAAG,EAAE,CAAC;AAErB,MAAM,eAAe,GAAG,CAAC,UAAU,EAAE,cAAc,EAAE,EAAE;IAC1D,IAAI,cAAc,IAAI,gBAAgB,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE;QACrD,MAAM,IAAI,KAAK,CAAC,SAAS,GAAG,UAAU,CAAC,IAAI,GAAG,uBAAuB,CAAC,CAAC;KAC1E;IACD,gBAAgB,CAAC,UAAU,CAAC,IAAI,CAAC,GAAG,cAAc,CAAC;AACvD,CAAC,CAAA;AALY,QAAA,eAAe,mBAK3B;AAEM,MAAM,iBAAiB,GAAG,CAAC,UAAU,EAAE,EAAE;IAC5C,OAAO,eAAe,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC;AACpD,CAAC,CAAA;AAFY,QAAA,iBAAiB,qBAE7B;AAEM,MAAM,eAAe,GAAG,CAAC,UAAU,EAAE,EAAE;IAC1C,OAAO,gBAAgB,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC;AACrD,CAAC,CAAA;AAFY,QAAA,eAAe,mBAE3B;AAED,SAAS,sBAAsB,CAAC,UAAU;IACtC,OAAO,CAAC,MAAM,EAAE,EAAE;QACd,eAAe,CAAC,UAAU,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC;QAE1C,IAAA,yBAAa,EAAC,UAAU,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;
|
|
1
|
+
{"version":3,"file":"TableFromModel.js","sourceRoot":"","sources":["../../../src/infrastructure/decorators/TableFromModel.ts"],"names":[],"mappings":";;;AAAA,iDAA2C;AAC3C,sDAAiD;AACjD,2CAA+C;AAC/C,kDAAyF;AAQzF,MAAM,eAAe,GAAG,EAAE,CAAC;AAC3B,MAAM,gBAAgB,GAAG,EAAE,CAAC;AAErB,MAAM,eAAe,GAAG,CAAC,UAAU,EAAE,cAAc,EAAE,EAAE;IAC1D,IAAI,cAAc,IAAI,gBAAgB,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE;QACrD,MAAM,IAAI,KAAK,CAAC,SAAS,GAAG,UAAU,CAAC,IAAI,GAAG,uBAAuB,CAAC,CAAC;KAC1E;IACD,gBAAgB,CAAC,UAAU,CAAC,IAAI,CAAC,GAAG,cAAc,CAAC;AACvD,CAAC,CAAA;AALY,QAAA,eAAe,mBAK3B;AAEM,MAAM,iBAAiB,GAAG,CAAC,UAAU,EAAE,EAAE;IAC5C,OAAO,eAAe,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC;AACpD,CAAC,CAAA;AAFY,QAAA,iBAAiB,qBAE7B;AAEM,MAAM,eAAe,GAAG,CAAC,UAAU,EAAE,EAAE;IAC1C,OAAO,gBAAgB,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC;AACrD,CAAC,CAAA;AAFY,QAAA,eAAe,mBAE3B;AAED,SAAS,sBAAsB,CAAC,UAAU;IACtC,OAAO,CAAC,MAAM,EAAE,EAAE;QACd,eAAe,CAAC,UAAU,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC;QAE1C,IAAA,yBAAa,EAAC,UAAU,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;YACtC,wEAAwE;YACxE,8CAA8C;YAC9C,6FAA6F;YAC7F,MAAM,OAAO,GAAG,IAAA,2BAAe,EAAC,UAAU,EAAE,KAAK,CAAC,CAAC;YACnD,MAAM,aAAa,GAAG,CAAC,CAAC,IAAA,iCAAqB,EAAC,UAAU,EAAE,KAAK,CAAC,CAAC;YACjE,IAAI,aAAa,IAAI,OAAO,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE;gBAC/C,IAAA,yBAAW,EAAC,UAAU,CAAC,CAAC,MAAM,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;aACpD;QACL,CAAC,CAAC,CAAC;IAEP,CAAC,CAAC;AACN,CAAC;AAED,SAAgB,cAAc,CAAC,UAAU,EAAE,SAAS;IAChD,OAAO,IAAA,wBAAe,EAClB,IAAA,gBAAM,EAAC,SAAS,CAAC,EACjB,sBAAsB,CAAC,UAAU,CAAC,CACrC,CAAC;AACN,CAAC;AALD,wCAKC"}
|
|
@@ -67,6 +67,9 @@ const getMetaRelations = (MetaClass, parentPrefix = null) => {
|
|
|
67
67
|
return allRelations;
|
|
68
68
|
}
|
|
69
69
|
const relationValue = relationData.relationClass();
|
|
70
|
+
// Из-за этого кода возвращаются не все реляции в случаях, когда у одного MetaClass'а
|
|
71
|
+
// есть несколько реляций с одним и тем же классом (см. ImageDownloadSchema для примера)
|
|
72
|
+
// @todo нужно исправить этот баг, иначе реализовав кэширование уже обработанных классов
|
|
70
73
|
const key = [relationData.relationName, relationValue.name].join('.');
|
|
71
74
|
if (foundClasses.includes(key)) {
|
|
72
75
|
return allRelations;
|
|
@@ -109,8 +112,10 @@ const getFieldDecorator = (targetClass, fieldName) => {
|
|
|
109
112
|
};
|
|
110
113
|
exports.getFieldDecorator = getFieldDecorator;
|
|
111
114
|
const ColumnMetaDecorator = (options, internalOptions) => (object, propertyName) => {
|
|
115
|
+
//проверить getOwnMetadata
|
|
112
116
|
Reflect.defineMetadata(exports.STEROIDS_META_FIELD, options, object, propertyName);
|
|
113
117
|
Reflect.defineMetadata(exports.STEROIDS_META_FIELD_DECORATOR, internalOptions.decoratorName, object, propertyName);
|
|
118
|
+
// Add field to list
|
|
114
119
|
const fieldNames = (Reflect.getMetadata(exports.STEROIDS_META_KEYS, object) || []).concat(propertyName);
|
|
115
120
|
Reflect.defineMetadata(exports.STEROIDS_META_KEYS, fieldNames, object);
|
|
116
121
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BaseField.js","sourceRoot":"","sources":["../../../../src/infrastructure/decorators/fields/BaseField.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"BaseField.js","sourceRoot":"","sources":["../../../../src/infrastructure/decorators/fields/BaseField.ts"],"names":[],"mappings":"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"}
|
|
@@ -11,6 +11,7 @@ const Transform_1 = require("../Transform");
|
|
|
11
11
|
const CreateTimeBehaviour = (object, propertyName) => {
|
|
12
12
|
const methodName = propertyName + '__createTimeBehaviour';
|
|
13
13
|
if (!object[methodName]) {
|
|
14
|
+
// eslint-disable-next-line func-names
|
|
14
15
|
object[methodName] = function () {
|
|
15
16
|
this[propertyName] = (0, DateTimeField_1.normalizeDateTime)(new Date(), false);
|
|
16
17
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CreateTimeField.js","sourceRoot":"","sources":["../../../../src/infrastructure/decorators/fields/CreateTimeField.ts"],"names":[],"mappings":";;;AAAA,2CAA+C;AAC/C,mCAAmC;AACnC,iDAAmE;AACnE,8FAAyF;AACzF,2CAAyD;AACzD,mDAAkD;AAClD,4CAAqF;AAMrF,MAAM,mBAAmB,GAAG,CAAC,MAAM,EAAE,YAAY,EAAE,EAAE;IACjD,MAAM,UAAU,GAAG,YAAY,GAAG,uBAAuB,CAAC;IAC1D,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,EAAE;
|
|
1
|
+
{"version":3,"file":"CreateTimeField.js","sourceRoot":"","sources":["../../../../src/infrastructure/decorators/fields/CreateTimeField.ts"],"names":[],"mappings":";;;AAAA,2CAA+C;AAC/C,mCAAmC;AACnC,iDAAmE;AACnE,8FAAyF;AACzF,2CAAyD;AACzD,mDAAkD;AAClD,4CAAqF;AAMrF,MAAM,mBAAmB,GAAG,CAAC,MAAM,EAAE,YAAY,EAAE,EAAE;IACjD,MAAM,UAAU,GAAG,YAAY,GAAG,uBAAuB,CAAC;IAC1D,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,EAAE;QACrB,sCAAsC;QACtC,MAAM,CAAC,UAAU,CAAC,GAAG;YACjB,IAAI,CAAC,YAAY,CAAC,GAAG,IAAA,iCAAiB,EAAC,IAAI,IAAI,EAAE,EAAE,KAAK,CAAC,CAAC;QAC9D,CAAC,CAAC;KACL;IAED,IAAA,gCAAsB,GAAE,CAAC,eAAe,CAAC,IAAI,CAAC;QAC1C,MAAM,EAAE,MAAM,CAAC,WAAW;QAC1B,YAAY,EAAE,UAAU;QACxB,IAAI,EAAE,uCAAkB,CAAC,aAAa;KACzC,CAAC,CAAC;AACP,CAAC,CAAC;AAEF,SAAgB,eAAe,CAAC,UAAmC,EAAE;IACjE,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE;QAChB,OAAO,CAAC,KAAK,GAAG,QAAQ,CAAC;KAC5B;IAED,OAAO,IAAA,wBAAe,EAClB,IAAA,qBAAS,EAAC,OAAO,EAAE;QACf,aAAa,EAAE,iBAAiB;QAChC,OAAO,EAAE,YAAY;QACrB,MAAM,EAAE,QAAQ;KACnB,CAAC,EACF,IAAA,gBAAM,EAAC;QACH,IAAI,EAAE,WAAW;QACjB,SAAS,EAAE,IAAA,YAAI,EAAC,OAAO,EAAE,WAAW,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;QAC7D,OAAO,EAAE,IAAA,YAAI,EAAC,OAAO,EAAE,cAAc,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC,SAAS;QACzE,QAAQ,EAAE,IAAA,YAAI,EAAC,OAAO,EAAE,UAAU,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK;KACjE,CAAC,EACF,IAAA,qBAAS,EAAC,CAAC,EAAC,KAAK,EAAC,EAAE,EAAE,CAAC,IAAA,iCAAiB,EAAC,KAAK,EAAE,KAAK,CAAC,EAAE,kCAAsB,CAAC,EAC/E,IAAA,qBAAS,EAAC,CAAC,EAAC,KAAK,EAAC,EAAE,EAAE,CAAC,IAAA,iCAAiB,EAAC,KAAK,EAAE,KAAK,CAAC,EAAE,gCAAoB,CAAC,EAC7E,mBAAmB,CACtB,CAAC;AACN,CAAC;AArBD,0CAqBC"}
|
|
@@ -4,6 +4,7 @@ exports.DateTimeField = exports.normalizeDateTime = void 0;
|
|
|
4
4
|
const common_1 = require("@nestjs/common");
|
|
5
5
|
const lodash_1 = require("lodash");
|
|
6
6
|
const typeorm_1 = require("@steroidsjs/typeorm");
|
|
7
|
+
//import {IsDateString, ValidateIf} from 'class-validator';
|
|
7
8
|
const class_transformer_1 = require("class-transformer");
|
|
8
9
|
const BaseField_1 = require("./BaseField");
|
|
9
10
|
const date_fns_1 = require("date-fns");
|
|
@@ -29,6 +30,10 @@ function DateTimeField(options = {}) {
|
|
|
29
30
|
default: options.defaultValue,
|
|
30
31
|
nullable: options.nullable,
|
|
31
32
|
}),
|
|
33
|
+
// options.nullable && ValidateIf((object, value) => value !== null && typeof value !== 'undefined'),
|
|
34
|
+
// IsDateString({
|
|
35
|
+
// message: 'Некорректный формат даты',
|
|
36
|
+
// }),
|
|
32
37
|
(0, class_transformer_1.Type)(() => Date),
|
|
33
38
|
(0, Transform_1.Transform)(({ value }) => (0, exports.normalizeDateTime)(value, options.skipSeconds), Transform_1.TRANSFORM_TYPE_FROM_DB),
|
|
34
39
|
(0, Transform_1.Transform)(({ value }) => (0, exports.normalizeDateTime)(value, options.skipSeconds), Transform_1.TRANSFORM_TYPE_TO_DB),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DateTimeField.js","sourceRoot":"","sources":["../../../../src/infrastructure/decorators/fields/DateTimeField.ts"],"names":[],"mappings":";;;AAAA,2CAA+C;AAC/C,mCAAmC;AACnC,iDAA2C;
|
|
1
|
+
{"version":3,"file":"DateTimeField.js","sourceRoot":"","sources":["../../../../src/infrastructure/decorators/fields/DateTimeField.ts"],"names":[],"mappings":";;;AAAA,2CAA+C;AAC/C,mCAAmC;AACnC,iDAA2C;AAC3C,2DAA2D;AAC3D,yDAAuC;AACvC,2CAAyD;AACzD,uCAA0C;AAC1C,4CAAqF;AAE9E,MAAM,iBAAiB,GAAG,CAAC,KAAK,EAAE,WAAW,GAAG,IAAI,EAAE,EAAE;IAC3D,OAAO,KAAK;QACR,CAAC,CAAC,IAAA,iBAAM,EACJ,OAAO,KAAK,KAAK,QAAQ;YACrB,CAAC,CAAC,IAAA,mBAAQ,EAAC,KAAK,CAAC;YACjB,CAAC,CAAC,KAAK,EACX,kBAAkB,GAAG,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,CACnD;QACD,CAAC,CAAC,KAAK,CAAC;AAChB,CAAC,CAAC;AATW,QAAA,iBAAiB,qBAS5B;AAQF,SAAgB,aAAa,CAAC,UAAuC,EAAE;IACnE,OAAO,IAAA,wBAAe,EAClB,GAAG;QACC,IAAA,qBAAS,EAAC,OAAO,EAAE;YACf,aAAa,EAAE,eAAe;YAC9B,OAAO,EAAE,UAAU;YACnB,MAAM,EAAE,QAAQ;SACnB,CAAC;QACF,IAAA,gBAAM,EAAC;YACH,IAAI,EAAE,WAAW;YACjB,SAAS,EAAE,IAAA,YAAI,EAAC,OAAO,EAAE,WAAW,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;YAC7D,OAAO,EAAE,OAAO,CAAC,YAAY;YAC7B,QAAQ,EAAE,OAAO,CAAC,QAAQ;SAC7B,CAAC;QACF,qGAAqG;QACrG,iBAAiB;QACjB,2CAA2C;QAC3C,MAAM;QACN,IAAA,wBAAI,EAAC,GAAG,EAAE,CAAC,IAAI,CAAC;QAChB,IAAA,qBAAS,EACL,CAAC,EAAC,KAAK,EAAC,EAAE,EAAE,CAAC,IAAA,yBAAiB,EAAC,KAAK,EAAE,OAAO,CAAC,WAAW,CAAC,EAC1D,kCAAsB,CACzB;QACD,IAAA,qBAAS,EACL,CAAC,EAAC,KAAK,EAAC,EAAE,EAAE,CAAC,IAAA,yBAAiB,EAAC,KAAK,EAAE,OAAO,CAAC,WAAW,CAAC,EAC1D,gCAAoB,CACvB;KACJ,CAAC,MAAM,CAAC,OAAO,CAAC,CACpB,CAAC;AACN,CAAC;AA7BD,sCA6BC"}
|
|
@@ -14,10 +14,12 @@ function ExtendField(ModelClass, options = {
|
|
|
14
14
|
if (!modelFieldName) {
|
|
15
15
|
throw new Error('Not found field "' + propertyName + '" in model "' + ModelClass.name + '"');
|
|
16
16
|
}
|
|
17
|
+
// Execute decorator
|
|
17
18
|
const extendOptions = (0, BaseField_1.getFieldOptions)(ModelClass, modelFieldName);
|
|
18
19
|
const decorator = (0, BaseField_1.getFieldDecorator)(ModelClass, modelFieldName);
|
|
19
20
|
decorator(Object.assign(Object.assign({}, extendOptions), options))(object, propertyName);
|
|
20
21
|
if (options.extendValidators) {
|
|
22
|
+
// Extend validators
|
|
21
23
|
(0, Validator_1.getFieldValidators)(ModelClass, modelFieldName).forEach(ValidatorClass => {
|
|
22
24
|
(0, Validator_1.Validator)(ValidatorClass)(object, propertyName);
|
|
23
25
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ExtendField.js","sourceRoot":"","sources":["../../../../src/infrastructure/decorators/fields/ExtendField.ts"],"names":[],"mappings":";;;AAAA,2CAA+D;AAE/D,sEAAqF;AAOrF,SAAgB,WAAW,CACvB,UAAU,EACV,UAAgD;IAC5C,gBAAgB,EAAE,IAAI;CACzB;IAED,OAAO,CAAC,MAAM,EAAE,YAAY,EAAE,EAAE;QAC5B,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE;YAC7B,OAAO,GAAG,EAAC,eAAe,EAAE,OAAO,EAAC,CAAC;SACxC;QAED,MAAM,cAAc,GAAG,OAAO,CAAC,eAAe,IAAI,YAAY,CAAC;QAC/D,IAAI,CAAC,cAAc,EAAE;YACjB,MAAM,IAAI,KAAK,CAAC,mBAAmB,GAAG,YAAY,GAAG,cAAc,GAAG,UAAU,CAAC,IAAI,GAAG,GAAG,CAAC,CAAC;SAChG;
|
|
1
|
+
{"version":3,"file":"ExtendField.js","sourceRoot":"","sources":["../../../../src/infrastructure/decorators/fields/ExtendField.ts"],"names":[],"mappings":";;;AAAA,2CAA+D;AAE/D,sEAAqF;AAOrF,SAAgB,WAAW,CACvB,UAAU,EACV,UAAgD;IAC5C,gBAAgB,EAAE,IAAI;CACzB;IAED,OAAO,CAAC,MAAM,EAAE,YAAY,EAAE,EAAE;QAC5B,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE;YAC7B,OAAO,GAAG,EAAC,eAAe,EAAE,OAAO,EAAC,CAAC;SACxC;QAED,MAAM,cAAc,GAAG,OAAO,CAAC,eAAe,IAAI,YAAY,CAAC;QAC/D,IAAI,CAAC,cAAc,EAAE;YACjB,MAAM,IAAI,KAAK,CAAC,mBAAmB,GAAG,YAAY,GAAG,cAAc,GAAG,UAAU,CAAC,IAAI,GAAG,GAAG,CAAC,CAAC;SAChG;QAED,oBAAoB;QACpB,MAAM,aAAa,GAAG,IAAA,2BAAe,EAAC,UAAU,EAAE,cAAc,CAAC,CAAC;QAClE,MAAM,SAAS,GAAG,IAAA,6BAAiB,EAAC,UAAU,EAAE,cAAc,CAAC,CAAC;QAChE,SAAS,iCAAK,aAAa,GAAK,OAAO,EAAE,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;QAEhE,IAAI,OAAO,CAAC,gBAAgB,EAAE;YAC1B,oBAAoB;YACpB,IAAA,8BAAkB,EAAC,UAAU,EAAE,cAAc,CAAC,CAAC,OAAO,CAAC,cAAc,CAAC,EAAE;gBACpE,IAAA,qBAAS,EAAC,cAAc,CAAC,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;YACpD,CAAC,CAAC,CAAC;SACN;IACL,CAAC,CAAC;AACN,CAAC;AA5BD,kCA4BC"}
|