@steroidsjs/nest 1.4.3 → 1.4.4
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/package.json +1 -1
- package/src/usecases/base/SearchQuery.d.ts +1 -1
- package/src/usecases/base/SearchQuery.js +3 -2
- package/src/usecases/base/SearchQuery.js.map +1 -1
- package/src/usecases/services/CrudService.d.ts +2 -19
- package/src/usecases/services/CrudService.js +2 -40
- package/src/usecases/services/CrudService.js.map +1 -1
- package/src/usecases/services/ReadService.d.ts +23 -0
- package/src/usecases/services/ReadService.js +49 -0
- package/src/usecases/services/ReadService.js.map +1 -0
- package/src/usecases/validators/Validator.d.ts +0 -5
- package/src/usecases/validators/Validator.js.map +1 -1
- package/tsconfig.tsbuildinfo +1 -1
package/package.json
CHANGED
|
@@ -211,9 +211,10 @@ class SearchQuery {
|
|
|
211
211
|
return this._getRepository().findMany(this);
|
|
212
212
|
}
|
|
213
213
|
async scalar() {
|
|
214
|
-
var _a;
|
|
214
|
+
var _a, _b;
|
|
215
215
|
const row = await this._getRepository().findOne(this);
|
|
216
|
-
|
|
216
|
+
const key = (_a = this._select) === null || _a === void 0 ? void 0 : _a[0];
|
|
217
|
+
return row && (row === null || row === void 0 ? void 0 : row[key]) || ((_b = Object.values(row)) === null || _b === void 0 ? void 0 : _b[0]) || null;
|
|
217
218
|
}
|
|
218
219
|
async column() {
|
|
219
220
|
const rows = await this._getRepository().findMany(this);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SearchQuery.js","sourceRoot":"","sources":["../../../../src/usecases/base/SearchQuery.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"SearchQuery.js","sourceRoot":"","sources":["../../../../src/usecases/base/SearchQuery.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,23 +1,8 @@
|
|
|
1
1
|
import { Type } from '@nestjs/common';
|
|
2
|
-
import { ICrudRepository } from '../interfaces/ICrudRepository';
|
|
3
2
|
import { ISearchInputDto } from '../dtos/SearchInputDto';
|
|
4
|
-
import { SearchResultDto } from '../dtos/SearchResultDto';
|
|
5
|
-
import SearchQuery from '../base/SearchQuery';
|
|
6
3
|
import { ContextDto } from '../dtos/ContextDto';
|
|
7
|
-
import {
|
|
8
|
-
export declare class CrudService<TModel, TSearchDto = ISearchInputDto, TSaveDto = TModel> {
|
|
9
|
-
protected primaryKey: string;
|
|
10
|
-
protected repository: ICrudRepository<TModel>;
|
|
11
|
-
protected modelClass: any;
|
|
12
|
-
validators: IValidator[];
|
|
13
|
-
init(repository: ICrudRepository<TModel>, ModelClass: any): void;
|
|
14
|
-
search(dto: TSearchDto, context?: ContextDto | null): Promise<SearchResultDto<TModel>>;
|
|
15
|
-
search<TSchema>(dto: TSearchDto, context?: ContextDto | null, schemaClass?: Type<TSchema>): Promise<SearchResultDto<Type<TSchema>>>;
|
|
16
|
-
findById(id: number | string, context?: ContextDto | null): Promise<TModel>;
|
|
17
|
-
findById<TSchema>(id: number | string, context?: ContextDto | null, schemaClass?: Type<TSchema>): Promise<Type<TSchema>>;
|
|
18
|
-
createQuery(): SearchQuery;
|
|
19
|
-
findOne(searchQuery: SearchQuery): Promise<TModel>;
|
|
20
|
-
findMany(searchQuery: SearchQuery): Promise<TModel[]>;
|
|
4
|
+
import { ReadService } from './ReadService';
|
|
5
|
+
export declare class CrudService<TModel, TSearchDto = ISearchInputDto, TSaveDto = TModel> extends ReadService<TModel, TSearchDto> {
|
|
21
6
|
create(dto: TSaveDto, context?: ContextDto | null): Promise<TModel>;
|
|
22
7
|
create<TSchema>(dto: TSaveDto, context?: ContextDto | null, schemaClass?: Type<TSchema>): Promise<Type<TSchema>>;
|
|
23
8
|
update<TSchema>(id: number | string, dto: TSaveDto, context?: ContextDto | null): Promise<TModel>;
|
|
@@ -26,7 +11,5 @@ export declare class CrudService<TModel, TSearchDto = ISearchInputDto, TSaveDto
|
|
|
26
11
|
checkHasRelatedModels(id: string | number, service: CrudService<any>): Promise<void>;
|
|
27
12
|
remove(rawId: number | string, context?: ContextDto): Promise<void>;
|
|
28
13
|
removeInternal(id: number, context?: ContextDto): Promise<void>;
|
|
29
|
-
protected modelToSchema<TSchema>(model: TModel, schemaClass: Type<TSchema>): Type<TSchema>;
|
|
30
14
|
protected dtoToModel(dto: TSaveDto): TModel;
|
|
31
|
-
protected validate(dto: any, params?: IValidatorParams): Promise<void>;
|
|
32
15
|
}
|
|
@@ -3,44 +3,12 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.CrudService = void 0;
|
|
4
4
|
const lodash_1 = require("lodash");
|
|
5
5
|
const DataMapper_1 = require("../helpers/DataMapper");
|
|
6
|
-
const ValidationHelper_1 = require("../helpers/ValidationHelper");
|
|
7
6
|
const SearchQuery_1 = require("../base/SearchQuery");
|
|
8
7
|
const BaseField_1 = require("../../infrastructure/decorators/fields/BaseField");
|
|
9
8
|
const RelationTypeEnum_1 = require("../../domain/enums/RelationTypeEnum");
|
|
10
9
|
const exceptions_1 = require("../exceptions");
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
this.primaryKey = 'id';
|
|
14
|
-
}
|
|
15
|
-
init(repository, ModelClass) {
|
|
16
|
-
this.repository = repository;
|
|
17
|
-
this.modelClass = ModelClass;
|
|
18
|
-
}
|
|
19
|
-
async search(dto, context = null, schemaClass = null) {
|
|
20
|
-
await this.validate(dto, {
|
|
21
|
-
context,
|
|
22
|
-
});
|
|
23
|
-
const result = await this.repository.search(dto, schemaClass ? SearchQuery_1.default.createFromSchema(schemaClass) : new SearchQuery_1.default());
|
|
24
|
-
if (schemaClass) {
|
|
25
|
-
result.items = result.items.map((model) => this.modelToSchema(model, schemaClass));
|
|
26
|
-
}
|
|
27
|
-
return result;
|
|
28
|
-
}
|
|
29
|
-
async findById(id, context = null, schemaClass = null) {
|
|
30
|
-
const searchQuery = schemaClass ? SearchQuery_1.default.createFromSchema(schemaClass) : new SearchQuery_1.default();
|
|
31
|
-
searchQuery.andWhere({ [this.primaryKey]: (0, lodash_1.toInteger)(id) });
|
|
32
|
-
const model = await this.findOne(searchQuery);
|
|
33
|
-
return schemaClass ? this.modelToSchema(model, schemaClass) : model;
|
|
34
|
-
}
|
|
35
|
-
createQuery() {
|
|
36
|
-
return this.repository.createQuery();
|
|
37
|
-
}
|
|
38
|
-
async findOne(searchQuery) {
|
|
39
|
-
return await this.repository.findOne(searchQuery);
|
|
40
|
-
}
|
|
41
|
-
async findMany(searchQuery) {
|
|
42
|
-
return await this.repository.findMany(searchQuery);
|
|
43
|
-
}
|
|
10
|
+
const ReadService_1 = require("./ReadService");
|
|
11
|
+
class CrudService extends ReadService_1.ReadService {
|
|
44
12
|
async create(dto, context = null, schemaClass = null) {
|
|
45
13
|
const nextModel = await this.dtoToModel(dto);
|
|
46
14
|
await this.validate(dto, {
|
|
@@ -103,18 +71,12 @@ class CrudService {
|
|
|
103
71
|
await remove();
|
|
104
72
|
});
|
|
105
73
|
}
|
|
106
|
-
modelToSchema(model, schemaClass) {
|
|
107
|
-
return DataMapper_1.DataMapper.create(schemaClass, model);
|
|
108
|
-
}
|
|
109
74
|
dtoToModel(dto) {
|
|
110
75
|
if (!this.modelClass) {
|
|
111
76
|
throw new Error('Property modelClass is not set in service: ' + this.constructor.name);
|
|
112
77
|
}
|
|
113
78
|
return DataMapper_1.DataMapper.create(this.modelClass, dto);
|
|
114
79
|
}
|
|
115
|
-
async validate(dto, params) {
|
|
116
|
-
await ValidationHelper_1.ValidationHelper.validate(dto, params, this.validators);
|
|
117
|
-
}
|
|
118
80
|
}
|
|
119
81
|
exports.CrudService = CrudService;
|
|
120
82
|
//# sourceMappingURL=CrudService.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CrudService.js","sourceRoot":"","sources":["../../../../src/usecases/services/CrudService.ts"],"names":[],"mappings":";;;AACA,mCAA+C;
|
|
1
|
+
{"version":3,"file":"CrudService.js","sourceRoot":"","sources":["../../../../src/usecases/services/CrudService.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { Type } from '@nestjs/common';
|
|
2
|
+
import { ICrudRepository } from '../interfaces/ICrudRepository';
|
|
3
|
+
import { ISearchInputDto } from '../dtos/SearchInputDto';
|
|
4
|
+
import { SearchResultDto } from '../dtos/SearchResultDto';
|
|
5
|
+
import SearchQuery from '../base/SearchQuery';
|
|
6
|
+
import { ContextDto } from '../dtos/ContextDto';
|
|
7
|
+
import { IValidator, IValidatorParams } from '../interfaces/IValidator';
|
|
8
|
+
export declare class ReadService<TModel, TSearchDto = ISearchInputDto> {
|
|
9
|
+
protected primaryKey: string;
|
|
10
|
+
protected repository: ICrudRepository<TModel>;
|
|
11
|
+
protected modelClass: any;
|
|
12
|
+
validators: IValidator[];
|
|
13
|
+
init(repository: ICrudRepository<TModel>, ModelClass: any): void;
|
|
14
|
+
search(dto: TSearchDto, context?: ContextDto | null): Promise<SearchResultDto<TModel>>;
|
|
15
|
+
search<TSchema>(dto: TSearchDto, context?: ContextDto | null, schemaClass?: Type<TSchema>): Promise<SearchResultDto<Type<TSchema>>>;
|
|
16
|
+
findById(id: number | string, context?: ContextDto | null): Promise<TModel>;
|
|
17
|
+
findById<TSchema>(id: number | string, context?: ContextDto | null, schemaClass?: Type<TSchema>): Promise<Type<TSchema>>;
|
|
18
|
+
createQuery(): SearchQuery;
|
|
19
|
+
findOne(searchQuery: SearchQuery): Promise<TModel>;
|
|
20
|
+
findMany(searchQuery: SearchQuery): Promise<TModel[]>;
|
|
21
|
+
protected modelToSchema<TSchema>(model: TModel, schemaClass: Type<TSchema>): Type<TSchema>;
|
|
22
|
+
protected validate(dto: any, params?: IValidatorParams): Promise<void>;
|
|
23
|
+
}
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.ReadService = void 0;
|
|
4
|
+
const lodash_1 = require("lodash");
|
|
5
|
+
const DataMapper_1 = require("../helpers/DataMapper");
|
|
6
|
+
const ValidationHelper_1 = require("../helpers/ValidationHelper");
|
|
7
|
+
const SearchQuery_1 = require("../base/SearchQuery");
|
|
8
|
+
class ReadService {
|
|
9
|
+
constructor() {
|
|
10
|
+
this.primaryKey = 'id';
|
|
11
|
+
}
|
|
12
|
+
init(repository, ModelClass) {
|
|
13
|
+
this.repository = repository;
|
|
14
|
+
this.modelClass = ModelClass;
|
|
15
|
+
}
|
|
16
|
+
async search(dto, context = null, schemaClass = null) {
|
|
17
|
+
await this.validate(dto, {
|
|
18
|
+
context,
|
|
19
|
+
});
|
|
20
|
+
const result = await this.repository.search(dto, schemaClass ? SearchQuery_1.default.createFromSchema(schemaClass) : new SearchQuery_1.default());
|
|
21
|
+
if (schemaClass) {
|
|
22
|
+
result.items = result.items.map((model) => this.modelToSchema(model, schemaClass));
|
|
23
|
+
}
|
|
24
|
+
return result;
|
|
25
|
+
}
|
|
26
|
+
async findById(id, context = null, schemaClass = null) {
|
|
27
|
+
const searchQuery = schemaClass ? SearchQuery_1.default.createFromSchema(schemaClass) : new SearchQuery_1.default();
|
|
28
|
+
searchQuery.andWhere({ [this.primaryKey]: (0, lodash_1.toInteger)(id) });
|
|
29
|
+
const model = await this.findOne(searchQuery);
|
|
30
|
+
return schemaClass ? this.modelToSchema(model, schemaClass) : model;
|
|
31
|
+
}
|
|
32
|
+
createQuery() {
|
|
33
|
+
return this.repository.createQuery();
|
|
34
|
+
}
|
|
35
|
+
async findOne(searchQuery) {
|
|
36
|
+
return await this.repository.findOne(searchQuery);
|
|
37
|
+
}
|
|
38
|
+
async findMany(searchQuery) {
|
|
39
|
+
return await this.repository.findMany(searchQuery);
|
|
40
|
+
}
|
|
41
|
+
modelToSchema(model, schemaClass) {
|
|
42
|
+
return DataMapper_1.DataMapper.create(schemaClass, model);
|
|
43
|
+
}
|
|
44
|
+
async validate(dto, params) {
|
|
45
|
+
await ValidationHelper_1.ValidationHelper.validate(dto, params, this.validators);
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
exports.ReadService = ReadService;
|
|
49
|
+
//# sourceMappingURL=ReadService.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ReadService.js","sourceRoot":"","sources":["../../../../src/usecases/services/ReadService.ts"],"names":[],"mappings":";;;AACA,mCAA+C;AAE/C,sDAAiD;AAGjD,kEAA6D;AAC7D,qDAA8C;AAO9C,MAAa,WAAW;IAAxB;QAIc,eAAU,GAAW,IAAI,CAAC;IAiHxC,CAAC;IA9FG,IAAI,CAAC,UAAmC,EAAE,UAAU;QAChD,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;QAC7B,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;IACjC,CAAC;IAeD,KAAK,CAAC,MAAM,CACR,GAAe,EACf,UAAsB,IAAI,EAC1B,cAA6B,IAAI;QAEjC,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,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,IAAI,qBAAW,EAAE,CAC9E,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;IAeD,KAAK,CAAC,QAAQ,CACV,EAAmB,EACnB,UAAsB,IAAI,EAC1B,cAA6B,IAAI;QAEjC,MAAM,WAAW,GAAG,WAAW,CAAC,CAAC,CAAC,qBAAW,CAAC,gBAAgB,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,IAAI,qBAAW,EAAE,CAAC;QAChG,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,WAAW;QACP,OAAO,IAAI,CAAC,UAAU,CAAC,WAAW,EAAE,CAAC;IACzC,CAAC;IAMD,KAAK,CAAC,OAAO,CAAC,WAAwB;QAClC,OAAO,MAAM,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;IACtD,CAAC;IAMD,KAAK,CAAC,QAAQ,CAAC,WAAwB;QACnC,OAAO,MAAM,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;IACvD,CAAC;IAQS,aAAa,CAAU,KAAa,EAAE,WAA0B;QACtE,OAAO,uBAAU,CAAC,MAAM,CAAC,WAAW,EAAE,KAAK,CAAC,CAAC;IACjD,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;CACJ;AArHD,kCAqHC"}
|
|
@@ -1,8 +1,3 @@
|
|
|
1
1
|
export declare const STEROIDS_META_VALIDATOR_CLASSES = "steroids_meta_validator_classes";
|
|
2
|
-
export interface ITableOptions {
|
|
3
|
-
name: string;
|
|
4
|
-
label?: string;
|
|
5
|
-
modelClass?: any;
|
|
6
|
-
}
|
|
7
2
|
export declare const getFieldValidators: (MetaClass: any, fieldName: any) => any;
|
|
8
3
|
export declare function Validator(ValidatorClass: any): (object: any, fieldName: any) => void;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Validator.js","sourceRoot":"","sources":["../../../../src/usecases/validators/Validator.ts"],"names":[],"mappings":";;;AAAa,QAAA,+BAA+B,GAAG,iCAAiC,CAAC;
|
|
1
|
+
{"version":3,"file":"Validator.js","sourceRoot":"","sources":["../../../../src/usecases/validators/Validator.ts"],"names":[],"mappings":";;;AAAa,QAAA,+BAA+B,GAAG,iCAAiC,CAAC;AAE1E,MAAM,kBAAkB,GAAG,CAAC,SAAS,EAAE,SAAS,EAAE,EAAE;IACvD,OAAO,OAAO,CAAC,WAAW,CAAC,uCAA+B,EAAE,SAAS,CAAC,SAAS,EAAE,SAAS,CAAC,IAAI,EAAE,CAAC;AACtG,CAAC,CAAA;AAFY,QAAA,kBAAkB,sBAE9B;AAED,SAAgB,SAAS,CAAC,cAAc;IACpC,OAAO,CAAC,MAAM,EAAE,SAAS,EAAE,EAAE;QAGzB,MAAM,gBAAgB,GAAG,OAAO,CAAC,WAAW,CAAC,uCAA+B,EAAE,MAAM,EAAE,SAAS,CAAC,IAAI,EAAE,CAAC;QACvG,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAAC,cAAc,CAAC,EAAE;YAC5C,gBAAgB,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;SACzC;QACD,OAAO,CAAC,cAAc,CAAC,uCAA+B,EAAE,gBAAgB,EAAE,MAAM,EAAE,SAAS,CAAC,CAAC;IACjG,CAAC,CAAC;AACN,CAAC;AAVD,8BAUC"}
|