@steroidsjs/nest 1.2.5 → 1.2.8

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.
Files changed (33) hide show
  1. package/package.json +1 -1
  2. package/src/infrastructure/decorators/fields/BaseField.js +2 -1
  3. package/src/infrastructure/decorators/fields/BaseField.js.map +1 -1
  4. package/src/infrastructure/decorators/fields/ExtendField.d.ts +1 -1
  5. package/src/infrastructure/decorators/fields/ExtendField.js.map +1 -1
  6. package/src/infrastructure/repositories/CrudRepository.js +1 -1
  7. package/src/infrastructure/repositories/CrudRepository.js.map +1 -1
  8. package/src/infrastructure/tests/ModelTest.test.js +14 -5
  9. package/src/infrastructure/tests/ModelTest.test.js.map +1 -1
  10. package/src/infrastructure/tests/app/models/UserInfoModel.d.ts +3 -0
  11. package/src/infrastructure/tests/app/models/UserInfoModel.js +15 -0
  12. package/src/infrastructure/tests/app/models/UserInfoModel.js.map +1 -1
  13. package/src/infrastructure/tests/app/schemas/ArticleSchema.d.ts +11 -0
  14. package/src/infrastructure/tests/app/schemas/ArticleSchema.js +54 -0
  15. package/src/infrastructure/tests/app/schemas/ArticleSchema.js.map +1 -0
  16. package/src/infrastructure/tests/app/schemas/FileSchema.d.ts +4 -0
  17. package/src/infrastructure/tests/app/schemas/FileSchema.js +26 -0
  18. package/src/infrastructure/tests/app/schemas/FileSchema.js.map +1 -0
  19. package/src/infrastructure/tests/app/schemas/ImageSchema.d.ts +5 -0
  20. package/src/infrastructure/tests/app/schemas/ImageSchema.js +30 -0
  21. package/src/infrastructure/tests/app/schemas/ImageSchema.js.map +1 -0
  22. package/src/infrastructure/tests/app/schemas/UserInfoSchema.d.ts +6 -0
  23. package/src/infrastructure/tests/app/schemas/UserInfoSchema.js +33 -0
  24. package/src/infrastructure/tests/app/schemas/UserInfoSchema.js.map +1 -0
  25. package/src/infrastructure/tests/app/schemas/UserSchema.d.ts +8 -0
  26. package/src/infrastructure/tests/app/schemas/UserSchema.js +40 -0
  27. package/src/infrastructure/tests/app/schemas/UserSchema.js.map +1 -0
  28. package/src/usecases/base/SearchQuery.d.ts +1 -5
  29. package/src/usecases/base/SearchQuery.js +34 -26
  30. package/src/usecases/base/SearchQuery.js.map +1 -1
  31. package/src/usecases/helpers/SearchHelper.js +6 -6
  32. package/src/usecases/helpers/SearchHelper.js.map +1 -1
  33. package/tsconfig.tsbuildinfo +1 -1
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@steroidsjs/nest",
3
- "version": "1.2.5",
3
+ "version": "1.2.8",
4
4
  "scripts": {
5
5
  "build": "tsc && copyfiles ./{package.json,LICENSE,README.md} dist/",
6
6
  "watch": "tsc -p tsconfig-debug.json",
@@ -33,7 +33,8 @@ const getMetaRelations = (MetaClass, parentPrefix = null) => {
33
33
  })
34
34
  .reduce((allRelations, relationName) => {
35
35
  allRelations.push(relationName);
36
- let relationValue = Reflect.getOwnMetadata('design:type', MetaClass.prototype, relationName);
36
+ const options = (0, exports.getFieldOptions)(MetaClass, relationName);
37
+ let relationValue = options.relationClass();
37
38
  if ((0, exports.isMetaClass)(relationValue)) {
38
39
  const subRelationNames = (0, exports.getMetaRelations)(relationValue, relationName).map(subRelationName => {
39
40
  return `${relationName}.${subRelationName}`;
@@ -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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"}
@@ -2,4 +2,4 @@ import { IAllFieldOptions } from "./index";
2
2
  export interface IExtendFieldOptions {
3
3
  sourceFieldName?: string;
4
4
  }
5
- export declare function ExtendField(modelClass: any, options?: string | IAllFieldOptions | any): (object: any, propertyName: any) => void;
5
+ export declare function ExtendField(modelClass: any, options?: (string | Partial<IAllFieldOptions>)): (object: any, propertyName: any) => void;
@@ -1 +1 @@
1
- {"version":3,"file":"ExtendField.js","sourceRoot":"","sources":["../../../../../src/infrastructure/decorators/fields/ExtendField.ts"],"names":[],"mappings":";;;AAAA,2CAAkF;AAQlF,SAAgB,WAAW,CAAC,UAAU,EAAE,UAA2C,EAAE;IACjF,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;QAGD,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;IACpE,CAAC,CAAC;AACN,CAAC;AAhBD,kCAgBC"}
1
+ {"version":3,"file":"ExtendField.js","sourceRoot":"","sources":["../../../../../src/infrastructure/decorators/fields/ExtendField.ts"],"names":[],"mappings":";;;AAAA,2CAA+D;AAO/D,SAAgB,WAAW,CAAC,UAAU,EAAE,UAAgD,EAAE;IACtF,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;QAGD,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;IACpE,CAAC,CAAC;AACN,CAAC;AAhBD,kCAgBC"}
@@ -35,7 +35,7 @@ class CrudRepository {
35
35
  searchQuery = new SearchQuery_1.default();
36
36
  searchQuery.condition = conditionOrQuery;
37
37
  }
38
- const dbQuery = this.dbRepository.createQueryBuilder();
38
+ const dbQuery = this.dbRepository.createQueryBuilder('model');
39
39
  SearchQuery_1.default.prepare(this.dbRepository, dbQuery, searchQuery);
40
40
  return dbQuery;
41
41
  }
@@ -1 +1 @@
1
- {"version":3,"file":"CrudRepository.js","sourceRoot":"","sources":["../../../../src/infrastructure/repositories/CrudRepository.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"CrudRepository.js","sourceRoot":"","sources":["../../../../src/infrastructure/repositories/CrudRepository.ts"],"names":[],"mappings":"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"}
@@ -14,6 +14,7 @@ const ImageModel_1 = require("./app/models/ImageModel");
14
14
  const ArticleService_1 = require("./app/services/ArticleService");
15
15
  const ArticleModel_1 = require("./app/models/ArticleModel");
16
16
  const TagModel_1 = require("./app/models/TagModel");
17
+ const ArticleSchema_1 = require("./app/schemas/ArticleSchema");
17
18
  const createPhoto = (app) => {
18
19
  return app.get(FileService_1.FileService).create(DataMapper_1.DataMapper.create(FileModel_1.FileModel, {
19
20
  name: 'file ' + Date.now(),
@@ -56,8 +57,17 @@ const createPhoto = (app) => {
56
57
  });
57
58
  (0, globals_1.it)('ManyToMany data', async () => {
58
59
  var _a, _b;
60
+ const passportScan = await createPhoto(app);
61
+ let user = await app.get(UserService_1.UserService).create(DataMapper_1.DataMapper.create(UserModel_1.UserModel, {
62
+ name: 'Test user ' + Date.now(),
63
+ info: DataMapper_1.DataMapper.create(UserInfoModel_1.UserInfoModel, {
64
+ passport: '0409 123456',
65
+ passportScanId: passportScan.id,
66
+ }),
67
+ }));
59
68
  let article = await app.get(ArticleService_1.ArticleService).create(DataMapper_1.DataMapper.create(ArticleModel_1.ArticleModel, {
60
- title: 'War!',
69
+ title: 'How to load relations in entities',
70
+ creatorUserId: user.id,
61
71
  tags: [
62
72
  DataMapper_1.DataMapper.create(TagModel_1.TagModel, { title: 'Tag 1' }),
63
73
  DataMapper_1.DataMapper.create(TagModel_1.TagModel, { title: 'Tag 2' }),
@@ -65,12 +75,11 @@ const createPhoto = (app) => {
65
75
  }));
66
76
  expect(article === null || article === void 0 ? void 0 : article.id).toBeGreaterThan(0);
67
77
  expect((_a = article === null || article === void 0 ? void 0 : article.tags) === null || _a === void 0 ? void 0 : _a.length).toEqual(2);
68
- article = await app.get(ArticleService_1.ArticleService).findOne(DataMapper_1.DataMapper.create(SearchQuery_1.default, {
69
- relations: ['tags'],
70
- condition: { id: article.id },
71
- }));
78
+ article = await app.get(ArticleService_1.ArticleService).findById(article.id, null, ArticleSchema_1.ArticleSchema);
72
79
  expect(article === null || article === void 0 ? void 0 : article.id).toBeGreaterThan(0);
73
80
  expect((_b = article === null || article === void 0 ? void 0 : article.tags) === null || _b === void 0 ? void 0 : _b.length).toEqual(2);
81
+ expect(article === null || article === void 0 ? void 0 : article.title).toEqual('HOW TO LOAD RELATIONS IN ENTITIES');
82
+ expect(article === null || article === void 0 ? void 0 : article.shortTitle).toEqual('How t');
74
83
  });
75
84
  (0, globals_1.it)('Complex test', async () => {
76
85
  var _a, _b;
@@ -1 +1 @@
1
- {"version":3,"file":"ModelTest.test.js","sourceRoot":"","sources":["../../../../src/infrastructure/tests/ModelTest.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ModelTest.test.js","sourceRoot":"","sources":["../../../../src/infrastructure/tests/ModelTest.test.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,10 @@
1
1
  import { UserModel } from './UserModel';
2
+ import { FileModel } from './FileModel';
2
3
  export declare class UserInfoModel {
3
4
  id: number;
4
5
  passport: string;
6
+ passportScanId: number;
7
+ passportScan: FileModel;
5
8
  userId: number;
6
9
  user: UserModel;
7
10
  }
@@ -12,6 +12,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
12
12
  exports.UserInfoModel = void 0;
13
13
  const fields_1 = require("../../../decorators/fields");
14
14
  const UserModel_1 = require("./UserModel");
15
+ const FileModel_1 = require("./FileModel");
15
16
  class UserInfoModel {
16
17
  }
17
18
  __decorate([
@@ -22,6 +23,20 @@ __decorate([
22
23
  (0, fields_1.StringField)(),
23
24
  __metadata("design:type", String)
24
25
  ], UserInfoModel.prototype, "passport", void 0);
26
+ __decorate([
27
+ (0, fields_1.RelationIdField)({
28
+ relationName: 'passportScan',
29
+ }),
30
+ __metadata("design:type", Number)
31
+ ], UserInfoModel.prototype, "passportScanId", void 0);
32
+ __decorate([
33
+ (0, fields_1.RelationField)({
34
+ type: 'ManyToOne',
35
+ relationClass: () => FileModel_1.FileModel,
36
+ nullable: true,
37
+ }),
38
+ __metadata("design:type", FileModel_1.FileModel)
39
+ ], UserInfoModel.prototype, "passportScan", void 0);
25
40
  __decorate([
26
41
  (0, fields_1.RelationIdField)({
27
42
  relationName: 'user',
@@ -1 +1 @@
1
- {"version":3,"file":"UserInfoModel.js","sourceRoot":"","sources":["../../../../../../src/infrastructure/tests/app/models/UserInfoModel.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,uDAGoC;AACpC,2CAAsC;AAEtC,MAAa,aAAa;CAmBzB;AAjBG;IADC,IAAA,wBAAe,GAAE;;yCACP;AAGX;IADC,IAAA,oBAAW,GAAE;;+CACG;AAKjB;IAHC,IAAA,wBAAe,EAAC;QACb,YAAY,EAAE,MAAM;KACvB,CAAC;;6CACa;AAQf;IANC,IAAA,sBAAa,EAAC;QACX,IAAI,EAAE,UAAU;QAChB,aAAa,EAAE,GAAG,EAAE,CAAC,qBAAS;QAC9B,YAAY,EAAE,KAAK;QACnB,QAAQ,EAAE,IAAI;KACjB,CAAC;8BACI,qBAAS;2CAAC;AAlBpB,sCAmBC"}
1
+ {"version":3,"file":"UserInfoModel.js","sourceRoot":"","sources":["../../../../../../src/infrastructure/tests/app/models/UserInfoModel.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,uDAGoC;AACpC,2CAAsC;AACtC,2CAAsC;AAEtC,MAAa,aAAa;CA+BzB;AA7BG;IADC,IAAA,wBAAe,GAAE;;yCACP;AAGX;IADC,IAAA,oBAAW,GAAE;;+CACG;AAKjB;IAHC,IAAA,wBAAe,EAAC;QACb,YAAY,EAAE,cAAc;KAC/B,CAAC;;qDACqB;AAOvB;IALC,IAAA,sBAAa,EAAC;QACX,IAAI,EAAE,WAAW;QACjB,aAAa,EAAE,GAAG,EAAE,CAAC,qBAAS;QAC9B,QAAQ,EAAE,IAAI;KACjB,CAAC;8BACY,qBAAS;mDAAC;AAKxB;IAHC,IAAA,wBAAe,EAAC;QACb,YAAY,EAAE,MAAM;KACvB,CAAC;;6CACa;AAQf;IANC,IAAA,sBAAa,EAAC;QACX,IAAI,EAAE,UAAU;QAChB,aAAa,EAAE,GAAG,EAAE,CAAC,qBAAS;QAC9B,YAAY,EAAE,KAAK;QACnB,QAAQ,EAAE,IAAI;KACjB,CAAC;8BACI,qBAAS;2CAAC;AA9BpB,sCA+BC"}
@@ -0,0 +1,11 @@
1
+ import { TagModel } from '../models/TagModel';
2
+ import { UserSchema } from './UserSchema';
3
+ export declare class ArticleSchema {
4
+ id: number;
5
+ title: string;
6
+ shortTitle: string;
7
+ text: string;
8
+ createTime: Date;
9
+ tags: TagModel[];
10
+ creatorUser: UserSchema;
11
+ }
@@ -0,0 +1,54 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.ArticleSchema = void 0;
13
+ const ExtendField_1 = require("../../../decorators/fields/ExtendField");
14
+ const ArticleModel_1 = require("../models/ArticleModel");
15
+ const fields_1 = require("../../../decorators/fields");
16
+ const Computable_1 = require("../../../decorators/Computable");
17
+ const UserSchema_1 = require("./UserSchema");
18
+ class ArticleSchema {
19
+ }
20
+ __decorate([
21
+ (0, ExtendField_1.ExtendField)(ArticleModel_1.ArticleModel),
22
+ __metadata("design:type", Number)
23
+ ], ArticleSchema.prototype, "id", void 0);
24
+ __decorate([
25
+ (0, ExtendField_1.ExtendField)(ArticleModel_1.ArticleModel, {
26
+ transform: ({ value }) => (value || '').toUpperCase(),
27
+ }),
28
+ __metadata("design:type", String)
29
+ ], ArticleSchema.prototype, "title", void 0);
30
+ __decorate([
31
+ (0, fields_1.StringField)(),
32
+ (0, Computable_1.Computable)(({ item }) => (item.title || '').substr(0, 5)),
33
+ __metadata("design:type", String)
34
+ ], ArticleSchema.prototype, "shortTitle", void 0);
35
+ __decorate([
36
+ (0, ExtendField_1.ExtendField)(ArticleModel_1.ArticleModel),
37
+ __metadata("design:type", String)
38
+ ], ArticleSchema.prototype, "text", void 0);
39
+ __decorate([
40
+ (0, ExtendField_1.ExtendField)(ArticleModel_1.ArticleModel),
41
+ __metadata("design:type", Date)
42
+ ], ArticleSchema.prototype, "createTime", void 0);
43
+ __decorate([
44
+ (0, ExtendField_1.ExtendField)(ArticleModel_1.ArticleModel),
45
+ __metadata("design:type", Array)
46
+ ], ArticleSchema.prototype, "tags", void 0);
47
+ __decorate([
48
+ (0, ExtendField_1.ExtendField)(ArticleModel_1.ArticleModel, {
49
+ relationClass: () => UserSchema_1.UserSchema,
50
+ }),
51
+ __metadata("design:type", UserSchema_1.UserSchema)
52
+ ], ArticleSchema.prototype, "creatorUser", void 0);
53
+ exports.ArticleSchema = ArticleSchema;
54
+ //# sourceMappingURL=ArticleSchema.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ArticleSchema.js","sourceRoot":"","sources":["../../../../../../src/infrastructure/tests/app/schemas/ArticleSchema.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,wEAAmE;AACnE,yDAAoD;AAEpD,uDAAuD;AACvD,+DAA0D;AAC1D,6CAAwC;AAExC,MAAa,aAAa;CA0BzB;AAxBG;IADC,IAAA,yBAAW,EAAC,2BAAY,CAAC;;yCACf;AAKX;IAHC,IAAA,yBAAW,EAAC,2BAAY,EAAE;QACvB,SAAS,EAAE,CAAC,EAAC,KAAK,EAAC,EAAE,EAAE,CAAC,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,WAAW,EAAE;KACtD,CAAC;;4CACY;AAId;IAFC,IAAA,oBAAW,GAAE;IACb,IAAA,uBAAU,EAAC,CAAC,EAAC,IAAI,EAAC,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;;iDACrC;AAGnB;IADC,IAAA,yBAAW,EAAC,2BAAY,CAAC;;2CACb;AAGb;IADC,IAAA,yBAAW,EAAC,2BAAY,CAAC;8BACd,IAAI;iDAAC;AAGjB;IADC,IAAA,yBAAW,EAAC,2BAAY,CAAC;;2CACT;AAKjB;IAHC,IAAA,yBAAW,EAAC,2BAAY,EAAE;QACvB,aAAa,EAAE,GAAG,EAAE,CAAC,uBAAU;KAClC,CAAC;8BACW,uBAAU;kDAAC;AAzB5B,sCA0BC"}
@@ -0,0 +1,4 @@
1
+ export declare class FileSchema {
2
+ id: number;
3
+ name: string;
4
+ }
@@ -0,0 +1,26 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.FileSchema = void 0;
13
+ const ExtendField_1 = require("../../../decorators/fields/ExtendField");
14
+ const FileModel_1 = require("../models/FileModel");
15
+ class FileSchema {
16
+ }
17
+ __decorate([
18
+ (0, ExtendField_1.ExtendField)(FileModel_1.FileModel),
19
+ __metadata("design:type", Number)
20
+ ], FileSchema.prototype, "id", void 0);
21
+ __decorate([
22
+ (0, ExtendField_1.ExtendField)(FileModel_1.FileModel),
23
+ __metadata("design:type", String)
24
+ ], FileSchema.prototype, "name", void 0);
25
+ exports.FileSchema = FileSchema;
26
+ //# sourceMappingURL=FileSchema.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FileSchema.js","sourceRoot":"","sources":["../../../../../../src/infrastructure/tests/app/schemas/FileSchema.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,wEAAmE;AACnE,mDAA8C;AAE9C,MAAa,UAAU;CAMtB;AAJG;IADC,IAAA,yBAAW,EAAC,qBAAS,CAAC;;sCACZ;AAGX;IADC,IAAA,yBAAW,EAAC,qBAAS,CAAC;;wCACV;AALjB,gCAMC"}
@@ -0,0 +1,5 @@
1
+ export declare class ImageSchema {
2
+ id: number;
3
+ size: string;
4
+ url: string;
5
+ }
@@ -0,0 +1,30 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.ImageSchema = void 0;
13
+ const ExtendField_1 = require("../../../decorators/fields/ExtendField");
14
+ const ImageModel_1 = require("../models/ImageModel");
15
+ class ImageSchema {
16
+ }
17
+ __decorate([
18
+ (0, ExtendField_1.ExtendField)(ImageModel_1.ImageModel),
19
+ __metadata("design:type", Number)
20
+ ], ImageSchema.prototype, "id", void 0);
21
+ __decorate([
22
+ (0, ExtendField_1.ExtendField)(ImageModel_1.ImageModel),
23
+ __metadata("design:type", String)
24
+ ], ImageSchema.prototype, "size", void 0);
25
+ __decorate([
26
+ (0, ExtendField_1.ExtendField)(ImageModel_1.ImageModel),
27
+ __metadata("design:type", String)
28
+ ], ImageSchema.prototype, "url", void 0);
29
+ exports.ImageSchema = ImageSchema;
30
+ //# sourceMappingURL=ImageSchema.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ImageSchema.js","sourceRoot":"","sources":["../../../../../../src/infrastructure/tests/app/schemas/ImageSchema.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,wEAAmE;AACnE,qDAAgD;AAEhD,MAAa,WAAW;CASvB;AAPG;IADC,IAAA,yBAAW,EAAC,uBAAU,CAAC;;uCACb;AAGX;IADC,IAAA,yBAAW,EAAC,uBAAU,CAAC;;yCACX;AAGb;IADC,IAAA,yBAAW,EAAC,uBAAU,CAAC;;wCACZ;AARhB,kCASC"}
@@ -0,0 +1,6 @@
1
+ import { FileSchema } from './FileSchema';
2
+ export declare class UserInfoSchema {
3
+ id: number;
4
+ passport: string;
5
+ passportScan: FileSchema;
6
+ }
@@ -0,0 +1,33 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.UserInfoSchema = void 0;
13
+ const ExtendField_1 = require("../../../decorators/fields/ExtendField");
14
+ const UserInfoModel_1 = require("../models/UserInfoModel");
15
+ const FileSchema_1 = require("./FileSchema");
16
+ class UserInfoSchema {
17
+ }
18
+ __decorate([
19
+ (0, ExtendField_1.ExtendField)(UserInfoModel_1.UserInfoModel),
20
+ __metadata("design:type", Number)
21
+ ], UserInfoSchema.prototype, "id", void 0);
22
+ __decorate([
23
+ (0, ExtendField_1.ExtendField)(UserInfoModel_1.UserInfoModel),
24
+ __metadata("design:type", String)
25
+ ], UserInfoSchema.prototype, "passport", void 0);
26
+ __decorate([
27
+ (0, ExtendField_1.ExtendField)(UserInfoModel_1.UserInfoModel, {
28
+ relationClass: () => FileSchema_1.FileSchema,
29
+ }),
30
+ __metadata("design:type", FileSchema_1.FileSchema)
31
+ ], UserInfoSchema.prototype, "passportScan", void 0);
32
+ exports.UserInfoSchema = UserInfoSchema;
33
+ //# sourceMappingURL=UserInfoSchema.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"UserInfoSchema.js","sourceRoot":"","sources":["../../../../../../src/infrastructure/tests/app/schemas/UserInfoSchema.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,wEAAmE;AACnE,2DAAsD;AACtD,6CAAwC;AAExC,MAAa,cAAc;CAW1B;AATG;IADC,IAAA,yBAAW,EAAC,6BAAa,CAAC;;0CAChB;AAGX;IADC,IAAA,yBAAW,EAAC,6BAAa,CAAC;;gDACV;AAKjB;IAHC,IAAA,yBAAW,EAAC,6BAAa,EAAE;QACxB,aAAa,EAAE,GAAG,EAAE,CAAC,uBAAU;KAClC,CAAC;8BACY,uBAAU;oDAAC;AAV7B,wCAWC"}
@@ -0,0 +1,8 @@
1
+ import { UserInfoSchema } from './UserInfoSchema';
2
+ import { FileSchema } from './FileSchema';
3
+ export declare class UserSchema {
4
+ id: number;
5
+ name: string;
6
+ info: UserInfoSchema;
7
+ mainPhoto: FileSchema;
8
+ }
@@ -0,0 +1,40 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.UserSchema = void 0;
13
+ const ExtendField_1 = require("../../../decorators/fields/ExtendField");
14
+ const UserModel_1 = require("../models/UserModel");
15
+ const UserInfoSchema_1 = require("./UserInfoSchema");
16
+ const FileSchema_1 = require("./FileSchema");
17
+ class UserSchema {
18
+ }
19
+ __decorate([
20
+ (0, ExtendField_1.ExtendField)(UserModel_1.UserModel),
21
+ __metadata("design:type", Number)
22
+ ], UserSchema.prototype, "id", void 0);
23
+ __decorate([
24
+ (0, ExtendField_1.ExtendField)(UserModel_1.UserModel),
25
+ __metadata("design:type", String)
26
+ ], UserSchema.prototype, "name", void 0);
27
+ __decorate([
28
+ (0, ExtendField_1.ExtendField)(UserModel_1.UserModel, {
29
+ relationClass: () => UserInfoSchema_1.UserInfoSchema,
30
+ }),
31
+ __metadata("design:type", UserInfoSchema_1.UserInfoSchema)
32
+ ], UserSchema.prototype, "info", void 0);
33
+ __decorate([
34
+ (0, ExtendField_1.ExtendField)(UserModel_1.UserModel, {
35
+ relationClass: () => FileSchema_1.FileSchema,
36
+ }),
37
+ __metadata("design:type", FileSchema_1.FileSchema)
38
+ ], UserSchema.prototype, "mainPhoto", void 0);
39
+ exports.UserSchema = UserSchema;
40
+ //# sourceMappingURL=UserSchema.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"UserSchema.js","sourceRoot":"","sources":["../../../../../../src/infrastructure/tests/app/schemas/UserSchema.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,wEAAmE;AACnE,mDAA8C;AAC9C,qDAAgD;AAChD,6CAAwC;AAExC,MAAa,UAAU;CAgBtB;AAdG;IADC,IAAA,yBAAW,EAAC,qBAAS,CAAC;;sCACZ;AAGX;IADC,IAAA,yBAAW,EAAC,qBAAS,CAAC;;wCACV;AAKb;IAHC,IAAA,yBAAW,EAAC,qBAAS,EAAE;QACpB,aAAa,EAAE,GAAG,EAAE,CAAC,+BAAc;KACtC,CAAC;8BACI,+BAAc;wCAAC;AAKrB;IAHC,IAAA,yBAAW,EAAC,qBAAS,EAAE;QACpB,aAAa,EAAE,GAAG,EAAE,CAAC,uBAAU;KAClC,CAAC;8BACS,uBAAU;6CAAC;AAf1B,gCAgBC"}
@@ -1,11 +1,6 @@
1
1
  import { Repository } from 'typeorm';
2
2
  import { SelectQueryBuilder } from 'typeorm/query-builder/SelectQueryBuilder';
3
3
  import { ICondition } from '../helpers/ConditionHelper';
4
- export interface IQueryRelation {
5
- name: string;
6
- alias?: string;
7
- isId?: boolean;
8
- }
9
4
  export default class SearchQuery {
10
5
  alias?: string;
11
6
  select?: string[];
@@ -14,4 +9,5 @@ export default class SearchQuery {
14
9
  condition?: ICondition;
15
10
  static createFromSchema(SchemaClass: any): SearchQuery;
16
11
  static prepare(dbRepository: Repository<any>, dbQuery: SelectQueryBuilder<any>, searchQuery: SearchQuery): void;
12
+ private static prepareRelations;
17
13
  }
@@ -14,9 +14,7 @@ class SearchQuery {
14
14
  }
15
15
  static prepare(dbRepository, dbQuery, searchQuery) {
16
16
  var _a, _b;
17
- const prefix = ((_a = dbQuery.expressionMap) === null || _a === void 0 ? void 0 : _a.mainAlias) ? dbQuery.expressionMap.mainAlias.name + '.' : '';
18
- const relationPrefix = ((_b = dbQuery.expressionMap) === null || _b === void 0 ? void 0 : _b.mainAlias) ? dbQuery.expressionMap.mainAlias.name + '_' : 'relation';
19
- const table = dbRepository.target;
17
+ const prefix = ((_b = (_a = dbQuery.expressionMap) === null || _a === void 0 ? void 0 : _a.mainAlias) === null || _b === void 0 ? void 0 : _b.name) || '';
20
18
  let select = searchQuery.select;
21
19
  if (searchQuery.excludeSelect) {
22
20
  select = dbRepository.metadata.columns
@@ -24,34 +22,44 @@ class SearchQuery {
24
22
  .filter(name => !searchQuery.excludeSelect.includes(name));
25
23
  }
26
24
  if (select) {
27
- dbQuery.select(select.map(name => prefix + name));
25
+ dbQuery.select(select.map(name => `${prefix}.${name}`));
28
26
  }
29
- (searchQuery.relations || []).forEach(relation => {
30
- const options = (0, BaseField_1.getFieldOptions)(table, relation);
31
- switch (options === null || options === void 0 ? void 0 : options.appType) {
32
- case 'relationId':
33
- const relationIdOptions = options;
34
- dbQuery.loadRelationIdAndMap(prefix + relation, prefix + relationIdOptions.relationName);
35
- break;
36
- default:
37
- case 'relation':
38
- let currentPrefix = prefix;
39
- let childRelation = null;
40
- const parentRelation = /\./.test(relation)
41
- ? relation.replace(/\.\w+/, '')
42
- : null;
43
- if (parentRelation) {
44
- currentPrefix = relationPrefix + parentRelation;
45
- childRelation = relation.replace(parentRelation, '');
46
- }
47
- dbQuery.leftJoinAndSelect(currentPrefix + (childRelation || relation), relationPrefix + relation);
48
- break;
49
- }
50
- });
27
+ searchQuery.relations && SearchQuery.prepareRelations(dbQuery, searchQuery.relations, prefix, dbRepository.target);
51
28
  if (searchQuery.condition) {
52
29
  dbQuery.andWhere(ConditionHelper_1.ConditionHelper.toTypeOrm(searchQuery.condition));
53
30
  }
54
31
  }
32
+ static prepareRelations(dbQuery, relations, parentPrefix, parentTable) {
33
+ relations.forEach(relation => {
34
+ let fieldOptions;
35
+ const relationFullPath = [...parentPrefix.split('.'), ...relation.split('.')];
36
+ const relationRelativePath = relation.replace(parentPrefix, '').split('.');
37
+ const currentRelationField = relationRelativePath[0];
38
+ if (relationRelativePath.length > 1) {
39
+ fieldOptions = (0, BaseField_1.getFieldOptions)(parentTable, currentRelationField);
40
+ relationRelativePath.splice(0, 1);
41
+ const childRelationRelativePath = relationRelativePath.join('.');
42
+ SearchQuery.prepareRelations(dbQuery, [childRelationRelativePath], `${parentPrefix}.${currentRelationField}`, fieldOptions.relationClass());
43
+ }
44
+ else {
45
+ fieldOptions = (0, BaseField_1.getFieldOptions)(parentTable, currentRelationField);
46
+ if (!fieldOptions) {
47
+ throw new Error('Not found meta data for relation "' + currentRelationField
48
+ + '" for table "' + parentTable + '"');
49
+ }
50
+ relationFullPath.pop();
51
+ const parentAlias = relationFullPath.join('_');
52
+ switch (fieldOptions.appType) {
53
+ case 'relationId':
54
+ dbQuery.loadRelationIdAndMap(`${parentAlias}.${currentRelationField}`, `${parentAlias}.${fieldOptions.relationName}`);
55
+ break;
56
+ case 'relation':
57
+ dbQuery.leftJoinAndSelect(`${parentAlias}.${currentRelationField}`, `${parentAlias}_${currentRelationField}`);
58
+ break;
59
+ }
60
+ }
61
+ });
62
+ }
55
63
  }
56
64
  exports.default = SearchQuery;
57
65
  //# sourceMappingURL=SearchQuery.js.map
@@ -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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"}
@@ -7,9 +7,7 @@ class SearchHelper {
7
7
  static async search(repository, dto, searchQuery, prepareHandler = null) {
8
8
  const result = new SearchResultDto_1.SearchResultDto();
9
9
  dto = Object.assign({ page: 1, pageSize: 50 }, dto);
10
- const dbQuery = searchQuery.alias
11
- ? repository.createQueryBuilder(searchQuery.alias)
12
- : repository.createQueryBuilder();
10
+ const dbQuery = repository.createQueryBuilder(searchQuery.alias || 'model');
13
11
  SearchQuery_1.default.prepare(repository, dbQuery, searchQuery);
14
12
  const sort = typeof dto.sort === 'string' ? dto.sort.split(',') : (dto.sort || []);
15
13
  if (sort.length === 0) {
@@ -21,9 +19,11 @@ class SearchHelper {
21
19
  if (prepareHandler) {
22
20
  prepareHandler.call(null, dbQuery);
23
21
  }
24
- dbQuery
25
- .offset((dto.page - 1) * dto.pageSize)
26
- .limit(dto.pageSize);
22
+ if (dto.pageSize > 0) {
23
+ dbQuery
24
+ .offset((dto.page - 1) * dto.pageSize)
25
+ .limit(dto.pageSize);
26
+ }
27
27
  const [items, total] = await dbQuery.getManyAndCount();
28
28
  result.items = items;
29
29
  result.total = total;
@@ -1 +1 @@
1
- {"version":3,"file":"SearchHelper.js","sourceRoot":"","sources":["../../../../src/usecases/helpers/SearchHelper.ts"],"names":[],"mappings":";;;AAGA,6DAAwD;AACxD,qDAA8C;AAE9C,MAAa,YAAY;IAErB,MAAM,CAAC,KAAK,CAAC,MAAM,CACf,UAA2B,EAC3B,GAAmB,EACnB,WAAwB,EACxB,iBAAqE,IAAI;QAEzE,MAAM,MAAM,GAAG,IAAI,iCAAe,EAAU,CAAC;QAG7C,GAAG,mBACC,IAAI,EAAE,CAAC,EACP,QAAQ,EAAE,EAAE,IACT,GAAG,CACT,CAAC;QAGF,MAAM,OAAO,GAAG,WAAW,CAAC,KAAK;YAC7B,CAAC,CAAC,UAAU,CAAC,kBAAkB,CAAC,WAAW,CAAC,KAAK,CAAC;YAClD,CAAC,CAAC,UAAU,CAAC,kBAAkB,EAAE,CACpC;QAED,qBAAW,CAAC,OAAO,CAAC,UAAU,EAAE,OAAO,EAAE,WAAW,CAAC,CAAC;QAGtD,MAAM,IAAI,GAAG,OAAO,GAAG,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC;QACnF,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE;YACnB,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,KAAK,EAAE,EAAE;gBACvC,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC;gBACxE,OAAO,GAAG,CAAC;YACf,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;SACX;QAGD,IAAI,cAAc,EAAE;YAChB,cAAc,CAAC,IAAI,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;SACtC;QAGD,OAAO;aACF,MAAM,CAAC,CAAC,GAAG,CAAC,IAAI,GAAG,CAAC,CAAC,GAAG,GAAG,CAAC,QAAQ,CAAC;aACrC,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QAGzB,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,GAAG,MAAM,OAAO,CAAC,eAAe,EAAE,CAAC;QACvD,MAAM,CAAC,KAAK,GAAG,KAAK,CAAC;QACrB,MAAM,CAAC,KAAK,GAAG,KAAK,CAAC;QAErB,OAAO,MAAM,CAAC;IAClB,CAAC;CACJ;AAnDD,oCAmDC"}
1
+ {"version":3,"file":"SearchHelper.js","sourceRoot":"","sources":["../../../../src/usecases/helpers/SearchHelper.ts"],"names":[],"mappings":";;;AAGA,6DAAwD;AACxD,qDAA8C;AAE9C,MAAa,YAAY;IAErB,MAAM,CAAC,KAAK,CAAC,MAAM,CACf,UAA2B,EAC3B,GAAmB,EACnB,WAAwB,EACxB,iBAAqE,IAAI;QAEzE,MAAM,MAAM,GAAG,IAAI,iCAAe,EAAU,CAAC;QAG7C,GAAG,mBACC,IAAI,EAAE,CAAC,EACP,QAAQ,EAAE,EAAE,IACT,GAAG,CACT,CAAC;QAGF,MAAM,OAAO,GAAG,UAAU,CAAC,kBAAkB,CAAC,WAAW,CAAC,KAAK,IAAI,OAAO,CAAC,CAAC;QAE5E,qBAAW,CAAC,OAAO,CAAC,UAAU,EAAE,OAAO,EAAE,WAAW,CAAC,CAAC;QAGtD,MAAM,IAAI,GAAG,OAAO,GAAG,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC;QACnF,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE;YACnB,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,KAAK,EAAE,EAAE;gBACvC,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC;gBACxE,OAAO,GAAG,CAAC;YACf,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;SACX;QAGD,IAAI,cAAc,EAAE;YAChB,cAAc,CAAC,IAAI,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;SACtC;QAGD,IAAI,GAAG,CAAC,QAAQ,GAAG,CAAC,EAAE;YAClB,OAAO;iBACF,MAAM,CAAC,CAAC,GAAG,CAAC,IAAI,GAAG,CAAC,CAAC,GAAG,GAAG,CAAC,QAAQ,CAAC;iBACrC,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;SAC5B;QAGD,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,GAAG,MAAM,OAAO,CAAC,eAAe,EAAE,CAAC;QACvD,MAAM,CAAC,KAAK,GAAG,KAAK,CAAC;QACrB,MAAM,CAAC,KAAK,GAAG,KAAK,CAAC;QAErB,OAAO,MAAM,CAAC;IAClB,CAAC;CACJ;AAlDD,oCAkDC"}