@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 CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@steroidsjs/nest",
3
- "version": "1.4.3",
3
+ "version": "1.4.4",
4
4
  "scripts": {
5
5
  "build": "tsc && copyfiles ./{package.json,LICENSE,README.md} dist/",
6
6
  "watch": "tsc -p tsconfig-debug.json",
@@ -45,6 +45,6 @@ export default class SearchQuery {
45
45
  _getRepository(): ICrudRepository<any>;
46
46
  one(): Promise<any>;
47
47
  many(): Promise<any[]>;
48
- scalar(): Promise<unknown>;
48
+ scalar(): Promise<any>;
49
49
  column(): Promise<unknown[]>;
50
50
  }
@@ -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
- return row && ((_a = Object.values(row)) === null || _a === void 0 ? void 0 : _a[0]) || null;
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 { IValidator, IValidatorParams } from '../interfaces/IValidator';
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
- class CrudService {
12
- constructor() {
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":"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"}
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;AAQ1E,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"}
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"}