@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
|
@@ -5,14 +5,26 @@ const lodash_1 = require("lodash");
|
|
|
5
5
|
const DataMapper_1 = require("../helpers/DataMapper");
|
|
6
6
|
const ValidationHelper_1 = require("../helpers/ValidationHelper");
|
|
7
7
|
const SearchQuery_1 = require("../base/SearchQuery");
|
|
8
|
+
/**
|
|
9
|
+
* Generic Read service (search and find)
|
|
10
|
+
*/
|
|
8
11
|
class ReadService {
|
|
9
12
|
constructor() {
|
|
13
|
+
/**
|
|
14
|
+
* Model primary key
|
|
15
|
+
*/
|
|
10
16
|
this.primaryKey = 'id';
|
|
11
17
|
}
|
|
12
18
|
init(repository, ModelClass) {
|
|
13
19
|
this.repository = repository;
|
|
14
20
|
this.modelClass = ModelClass;
|
|
15
21
|
}
|
|
22
|
+
/**
|
|
23
|
+
* Search models with pagination, order and filters
|
|
24
|
+
* @param dto
|
|
25
|
+
* @param context
|
|
26
|
+
* @param schemaClass
|
|
27
|
+
*/
|
|
16
28
|
async search(dto, context = null, schemaClass = null) {
|
|
17
29
|
await this.validate(dto, {
|
|
18
30
|
context,
|
|
@@ -23,21 +35,41 @@ class ReadService {
|
|
|
23
35
|
}
|
|
24
36
|
return result;
|
|
25
37
|
}
|
|
38
|
+
/**
|
|
39
|
+
* Find model by id
|
|
40
|
+
* @param id
|
|
41
|
+
* @param context
|
|
42
|
+
* @param schemaClass
|
|
43
|
+
*/
|
|
26
44
|
async findById(id, context = null, schemaClass = null) {
|
|
27
45
|
const searchQuery = schemaClass ? SearchQuery_1.default.createFromSchema(schemaClass) : new SearchQuery_1.default();
|
|
28
46
|
searchQuery.andWhere({ [this.primaryKey]: (0, lodash_1.toInteger)(id) });
|
|
29
47
|
const model = await this.findOne(searchQuery);
|
|
30
48
|
return schemaClass ? this.modelToSchema(model, schemaClass) : model;
|
|
31
49
|
}
|
|
50
|
+
/**
|
|
51
|
+
* Find one model by search query (selects and condition)
|
|
52
|
+
* @param searchQuery
|
|
53
|
+
*/
|
|
32
54
|
async findOne(searchQuery) {
|
|
33
55
|
return this.repository.findOne(searchQuery);
|
|
34
56
|
}
|
|
57
|
+
/**
|
|
58
|
+
* Find many models by search query (selects and condition)
|
|
59
|
+
* @param searchQuery
|
|
60
|
+
*/
|
|
35
61
|
async findMany(searchQuery) {
|
|
36
62
|
return await this.repository.findMany(searchQuery);
|
|
37
63
|
}
|
|
38
64
|
createQuery(config) {
|
|
39
65
|
return new SearchQuery_1.default(Object.assign({ onGetMany: this.findMany.bind(this), onGetOne: this.findOne.bind(this) }, (config || {})));
|
|
40
66
|
}
|
|
67
|
+
/**
|
|
68
|
+
* Mapping model to schema class
|
|
69
|
+
* @param model
|
|
70
|
+
* @param schemaClass
|
|
71
|
+
* @protected
|
|
72
|
+
*/
|
|
41
73
|
modelToSchema(model, schemaClass) {
|
|
42
74
|
return DataMapper_1.DataMapper.create(schemaClass, model);
|
|
43
75
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ReadService.js","sourceRoot":"","sources":["../../../src/usecases/services/ReadService.ts"],"names":[],"mappings":";;;AAAA,mCAA+C;AAE/C,sDAAiD;AAGjD,kEAA6D;AAC7D,qDAAoE;
|
|
1
|
+
{"version":3,"file":"ReadService.js","sourceRoot":"","sources":["../../../src/usecases/services/ReadService.ts"],"names":[],"mappings":";;;AAAA,mCAA+C;AAE/C,sDAAiD;AAGjD,kEAA6D;AAC7D,qDAAoE;AAKpE;;GAEG;AACH,MAAa,WAAW;IAAxB;QACI;;WAEG;QACO,eAAU,GAAW,IAAI,CAAC;IAyHxC,CAAC;IAtGG,IAAI,CAAC,UAAmC,EAAE,UAAyB;QAC/D,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;QAC7B,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;IACjC,CAAC;IASD;;;;;OAKG;IACH,KAAK,CAAC,MAAM,CACR,GAAe,EACf,UAAsB,IAAI,EAC1B,cAA8B,IAAI;QAElC,MAAM,IAAI,CAAC,QAAQ,CAAC,GAAG,EAAE;YACrB,OAAO;SACV,CAAC,CAAC;QAEH,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,MAAM,CACvC,GAAG,EACH,WAAW,CAAC,CAAC,CAAC,qBAAW,CAAC,gBAAgB,CAAS,WAAW,CAAC,CAAC,CAAC,CAAC,IAAI,qBAAW,EAAE,CACtF,CAAC;QACF,IAAI,WAAW,EAAE;YACb,MAAM,CAAC,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,KAAa,EAAE,EAAE,CAAC,IAAI,CAAC,aAAa,CAAU,KAAK,EAAE,WAAW,CAAC,CAAC,CAAC;SACvG;QACD,OAAO,MAAM,CAAC;IAClB,CAAC;IASD;;;;;OAKG;IACH,KAAK,CAAC,QAAQ,CACV,EAAmB,EACnB,UAAsB,IAAI,EAC1B,cAA8B,IAAI;QAElC,MAAM,WAAW,GAAG,WAAW,CAAC,CAAC,CAAC,qBAAW,CAAC,gBAAgB,CAAS,WAAW,CAAC,CAAC,CAAC,CAAC,IAAI,qBAAW,EAAU,CAAC;QAChH,WAAW,CAAC,QAAQ,CAAC,EAAC,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,IAAA,kBAAU,EAAC,EAAE,CAAC,EAAC,CAAC,CAAC;QAC1D,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;QAC9C,OAAO,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC,aAAa,CAAU,KAAK,EAAE,WAAW,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;IACjF,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,OAAO,CAAC,WAAgC;QAC1C,OAAO,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;IAChD,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,QAAQ,CAAC,WAAgC;QAC3C,OAAO,MAAM,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;IACvD,CAAC;IAED,WAAW,CAAC,MAAmC;QAC3C,OAAO,IAAI,qBAAW,iBAClB,SAAS,EAAE,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,EACnC,QAAQ,EAAE,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,IAC9B,CAAC,MAAM,IAAI,EAAE,CAAC,EACnB,CAAC;IACP,CAAC;IAED;;;;;OAKG;IACO,aAAa,CAAU,KAAa,EAAE,WAA2B;QACvE,OAAO,uBAAU,CAAC,MAAM,CAAC,WAAW,EAAE,KAAY,CAAC,CAAC;IACxD,CAAC;IAES,KAAK,CAAC,QAAQ,CAAC,GAAQ,EAAE,MAAyB;QACxD,MAAM,mCAAgB,CAAC,QAAQ,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;IAClE,CAAC;IAES,OAAO,CAAC,GAAY;QAC1B,OAAO,GAAG,YAAY,IAAI,CAAC,UAAU,CAAC;IAC1C,CAAC;CACJ;AA7HD,kCA6HC"}
|
|
@@ -8,6 +8,7 @@ const getFieldValidators = (MetaClass, fieldName) => {
|
|
|
8
8
|
exports.getFieldValidators = getFieldValidators;
|
|
9
9
|
function Validator(validatorInstance) {
|
|
10
10
|
return (object, fieldName) => {
|
|
11
|
+
// Add field to list
|
|
11
12
|
const validators = Reflect.getMetadata(exports.STEROIDS_META_VALIDATORS, object, fieldName) || [];
|
|
12
13
|
if (!validators.includes(validatorInstance)) {
|
|
13
14
|
validators.push(validatorInstance);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Validator.js","sourceRoot":"","sources":["../../../src/usecases/validators/Validator.ts"],"names":[],"mappings":";;;AAEa,QAAA,wBAAwB,GAAG,0BAA0B,CAAC;AAI5D,MAAM,kBAAkB,GAAG,CAAC,SAAS,EAAE,SAAS,EAAE,EAAE;IACvD,OAAO,OAAO,CAAC,WAAW,CAAC,gCAAwB,EAAE,SAAS,CAAC,SAAS,EAAE,SAAS,CAAC,IAAI,EAAE,CAAC;AAC/F,CAAC,CAAA;AAFY,QAAA,kBAAkB,sBAE9B;AAED,SAAgB,SAAS,CAAC,iBAA0C;IAChE,OAAO,CAAC,MAAM,EAAE,SAAS,EAAE,EAAE;
|
|
1
|
+
{"version":3,"file":"Validator.js","sourceRoot":"","sources":["../../../src/usecases/validators/Validator.ts"],"names":[],"mappings":";;;AAEa,QAAA,wBAAwB,GAAG,0BAA0B,CAAC;AAI5D,MAAM,kBAAkB,GAAG,CAAC,SAAS,EAAE,SAAS,EAAE,EAAE;IACvD,OAAO,OAAO,CAAC,WAAW,CAAC,gCAAwB,EAAE,SAAS,CAAC,SAAS,EAAE,SAAS,CAAC,IAAI,EAAE,CAAC;AAC/F,CAAC,CAAA;AAFY,QAAA,kBAAkB,sBAE9B;AAED,SAAgB,SAAS,CAAC,iBAA0C;IAChE,OAAO,CAAC,MAAM,EAAE,SAAS,EAAE,EAAE;QAEzB,oBAAoB;QACpB,MAAM,UAAU,GAAG,OAAO,CAAC,WAAW,CAAC,gCAAwB,EAAE,MAAM,EAAE,SAAS,CAAC,IAAI,EAAE,CAAC;QAC1F,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,iBAAiB,CAAC,EAAE;YACzC,UAAU,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;SACtC;QACD,OAAO,CAAC,cAAc,CAAC,gCAAwB,EAAE,UAAU,EAAE,MAAM,EAAE,SAAS,CAAC,CAAC;IACpF,CAAC,CAAC;AACN,CAAC;AAVD,8BAUC"}
|