@node-c/core 1.0.0-alpha2 → 1.0.0-alpha4

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 (28) hide show
  1. package/coverage/clover.xml +173 -112
  2. package/coverage/coverage-final.json +2 -2
  3. package/coverage/index.html +18 -18
  4. package/dist/app.js.map +1 -1
  5. package/dist/common/configProvider/configProvider.definitions.d.ts +18 -7
  6. package/dist/common/configProvider/configProvider.definitions.js +12 -5
  7. package/dist/common/configProvider/configProvider.definitions.js.map +1 -1
  8. package/dist/common/configProvider/configProvider.module.js +2 -2
  9. package/dist/common/configProvider/configProvider.module.js.map +1 -1
  10. package/dist/common/configProvider/configProvider.service.js +19 -9
  11. package/dist/common/configProvider/configProvider.service.js.map +1 -1
  12. package/dist/common/definitions/common.constants.d.ts +9 -0
  13. package/dist/common/definitions/common.constants.js +12 -2
  14. package/dist/common/definitions/common.constants.js.map +1 -1
  15. package/dist/common/utils/utils.loadDynamicModules.d.ts +4 -4
  16. package/dist/common/utils/utils.loadDynamicModules.js.map +1 -1
  17. package/dist/domain/entityService/domain.entity.service.d.ts +11 -21
  18. package/dist/domain/entityService/domain.entity.service.definitions.d.ts +42 -9
  19. package/dist/domain/entityService/domain.entity.service.definitions.js +19 -2
  20. package/dist/domain/entityService/domain.entity.service.definitions.js.map +1 -1
  21. package/dist/domain/entityService/domain.entity.service.js +129 -37
  22. package/dist/domain/entityService/domain.entity.service.js.map +1 -1
  23. package/dist/persistance/entityService/persistance.entity.service.d.ts +7 -7
  24. package/dist/persistance/entityService/persistance.entity.service.definitions.js +1 -1
  25. package/dist/persistance/entityService/persistance.entity.service.definitions.js.map +1 -1
  26. package/dist/persistance/entityService/persistance.entity.service.js +7 -7
  27. package/dist/persistance/entityService/persistance.entity.service.js.map +1 -1
  28. package/package.json +1 -1
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.RDBType = exports.NoSQLType = exports.AppEnvironment = exports.APP_CONFIG_FROM_ENV_KEYS_PARENT_NAMES = exports.APP_CONFIG_FROM_ENV_KEYS = void 0;
3
+ exports.RDBType = exports.NoSQLType = exports.EndpointSecurityMode = exports.AppEnvironment = exports.APP_CONFIG_FROM_ENV_KEYS_PARENT_NAMES = exports.APP_CONFIG_FROM_ENV_KEYS = void 0;
4
4
  exports.APP_CONFIG_FROM_ENV_KEYS = {
5
5
  API: {
6
6
  HTTP: {
@@ -15,7 +15,8 @@ exports.APP_CONFIG_FROM_ENV_KEYS = {
15
15
  DOMAIN: {
16
16
  IAM: {
17
17
  JWT_ACCESS_SECRET: 'jwtAccessSecret',
18
- JWT_REFRESH_SECRET: 'jwtRefreshSecret'
18
+ JWT_REFRESH_SECRET: 'jwtRefreshSecret',
19
+ USER_PASSWORD_SECRET: 'userPasswordSecret'
19
20
  }
20
21
  },
21
22
  PERSISTANCE: {
@@ -62,15 +63,21 @@ var AppEnvironment;
62
63
  AppEnvironment["Local"] = "local";
63
64
  AppEnvironment["Production"] = "production";
64
65
  AppEnvironment["Staging"] = "staging";
65
- })(AppEnvironment = exports.AppEnvironment || (exports.AppEnvironment = {}));
66
+ AppEnvironment["Test"] = "test";
67
+ })(AppEnvironment || (exports.AppEnvironment = AppEnvironment = {}));
68
+ var EndpointSecurityMode;
69
+ (function (EndpointSecurityMode) {
70
+ EndpointSecurityMode["Lax"] = "lax";
71
+ EndpointSecurityMode["Strict"] = "strict";
72
+ })(EndpointSecurityMode || (exports.EndpointSecurityMode = EndpointSecurityMode = {}));
66
73
  var NoSQLType;
67
74
  (function (NoSQLType) {
68
75
  NoSQLType["Redis"] = "redis";
69
- })(NoSQLType = exports.NoSQLType || (exports.NoSQLType = {}));
76
+ })(NoSQLType || (exports.NoSQLType = NoSQLType = {}));
70
77
  var RDBType;
71
78
  (function (RDBType) {
72
79
  RDBType["Clickhouse"] = "clickhouse";
73
80
  RDBType["MySQL"] = "mysql";
74
81
  RDBType["PG"] = "postgres";
75
- })(RDBType = exports.RDBType || (exports.RDBType = {}));
82
+ })(RDBType || (exports.RDBType = RDBType = {}));
76
83
  //# sourceMappingURL=configProvider.definitions.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"configProvider.definitions.js","sourceRoot":"","sources":["../../../src/common/configProvider/configProvider.definitions.ts"],"names":[],"mappings":";;;AAOa,QAAA,wBAAwB,GAAyB;IAC5D,GAAG,EAAE;QACH,IAAI,EAAE;YACJ,QAAQ,EAAE,UAAU;YACpB,IAAI,EAAE,MAAM;SACb;QACD,IAAI,EAAE;YACJ,QAAQ,EAAE,UAAU;YACpB,IAAI,EAAE,MAAM;SACb;KACF;IACD,MAAM,EAAE;QACN,GAAG,EAAE;YACH,iBAAiB,EAAE,iBAAiB;YACpC,kBAAkB,EAAE,kBAAkB;SACvC;KACF;IACD,WAAW,EAAE;QACX,KAAK,EAAE;YACL,IAAI,EAAE,MAAM;YACZ,QAAQ,EAAE,UAAU;YACpB,IAAI,EAAE,MAAM;YACZ,IAAI,EAAE,MAAM;SACb;QACD,GAAG,EAAE;YACH,aAAa,EAAE,UAAU;YACzB,IAAI,EAAE,MAAM;YACZ,QAAQ,EAAE,UAAU;YACpB,IAAI,EAAE,MAAM;YACZ,IAAI,EAAE,MAAM;SACb;KACF;CACF,CAAC;AAQW,QAAA,qCAAqC,GAAoC;IACpF,GAAG,EAAE;QACH,QAAQ,EAAE;YACR,IAAI,EAAE,MAAM;YACZ,IAAI,EAAE,MAAM;SACb;QACD,IAAI,EAAE,KAAK;KACZ;IACD,MAAM,EAAE;QACN,QAAQ,EAAE;YACR,GAAG,EAAE,KAAK;SACX;QACD,IAAI,EAAE,QAAQ;KACf;IACD,WAAW,EAAE;QACX,QAAQ,EAAE;YACR,EAAE,EAAE,IAAI;YACR,KAAK,EAAE,OAAO;SACf;QACD,IAAI,EAAE,aAAa;KACpB;CACF,CAAC;AA0HF,IAAY,cASX;AATD,WAAY,cAAc;IAExB,6CAA2B,CAAA;IAE3B,iCAAe,CAAA;IAEf,2CAAyB,CAAA;IAEzB,qCAAmB,CAAA;AACrB,CAAC,EATW,cAAc,GAAd,sBAAc,KAAd,sBAAc,QASzB;AAqBD,IAAY,SAGX;AAHD,WAAY,SAAS;IAEnB,4BAAe,CAAA;AACjB,CAAC,EAHW,SAAS,GAAT,iBAAS,KAAT,iBAAS,QAGpB;AAGD,IAAY,OAOX;AAPD,WAAY,OAAO;IAEjB,oCAAyB,CAAA;IAEzB,0BAAe,CAAA;IAEf,0BAAe,CAAA;AACjB,CAAC,EAPW,OAAO,GAAP,eAAO,KAAP,eAAO,QAOlB"}
1
+ {"version":3,"file":"configProvider.definitions.js","sourceRoot":"","sources":["../../../src/common/configProvider/configProvider.definitions.ts"],"names":[],"mappings":";;;AAKa,QAAA,wBAAwB,GAAyB;IAC5D,GAAG,EAAE;QACH,IAAI,EAAE;YACJ,QAAQ,EAAE,UAAU;YACpB,IAAI,EAAE,MAAM;SACb;QACD,IAAI,EAAE;YACJ,QAAQ,EAAE,UAAU;YACpB,IAAI,EAAE,MAAM;SACb;KACF;IACD,MAAM,EAAE;QACN,GAAG,EAAE;YACH,iBAAiB,EAAE,iBAAiB;YACpC,kBAAkB,EAAE,kBAAkB;YACtC,oBAAoB,EAAE,oBAAoB;SAC3C;KACF;IACD,WAAW,EAAE;QACX,KAAK,EAAE;YACL,IAAI,EAAE,MAAM;YACZ,QAAQ,EAAE,UAAU;YACpB,IAAI,EAAE,MAAM;YACZ,IAAI,EAAE,MAAM;SACb;QACD,GAAG,EAAE;YACH,aAAa,EAAE,UAAU;YACzB,IAAI,EAAE,MAAM;YACZ,QAAQ,EAAE,UAAU;YACpB,IAAI,EAAE,MAAM;YACZ,IAAI,EAAE,MAAM;SACb;KACF;CACF,CAAC;AAQW,QAAA,qCAAqC,GAAoC;IACpF,GAAG,EAAE;QACH,QAAQ,EAAE;YACR,IAAI,EAAE,MAAM;YACZ,IAAI,EAAE,MAAM;SACb;QACD,IAAI,EAAE,KAAK;KACZ;IACD,MAAM,EAAE;QACN,QAAQ,EAAE;YACR,GAAG,EAAE,KAAK;SACX;QACD,IAAI,EAAE,QAAQ;KACf;IACD,WAAW,EAAE;QACX,QAAQ,EAAE;YACR,EAAE,EAAE,IAAI;YACR,KAAK,EAAE,OAAO;SACf;QACD,IAAI,EAAE,aAAa;KACpB;CACF,CAAC;AAiIF,IAAY,cAWX;AAXD,WAAY,cAAc;IAExB,6CAA2B,CAAA;IAE3B,iCAAe,CAAA;IAEf,2CAAyB,CAAA;IAEzB,qCAAmB,CAAA;IAEnB,+BAAa,CAAA;AACf,CAAC,EAXW,cAAc,8BAAd,cAAc,QAWzB;AAaD,IAAY,oBAKX;AALD,WAAY,oBAAoB;IAE9B,mCAAW,CAAA;IAEX,yCAAiB,CAAA;AACnB,CAAC,EALW,oBAAoB,oCAApB,oBAAoB,QAK/B;AAWD,IAAY,SAGX;AAHD,WAAY,SAAS;IAEnB,4BAAe,CAAA;AACjB,CAAC,EAHW,SAAS,yBAAT,SAAS,QAGpB;AAGD,IAAY,OAOX;AAPD,WAAY,OAAO;IAEjB,oCAAyB,CAAA;IAEzB,0BAAe,CAAA;IAEf,0BAAe,CAAA;AACjB,CAAC,EAPW,OAAO,uBAAP,OAAO,QAOlB"}
@@ -37,8 +37,8 @@ let ConfigProviderModule = ConfigProviderModule_1 = class ConfigProviderModule {
37
37
  };
38
38
  }
39
39
  };
40
- ConfigProviderModule = ConfigProviderModule_1 = __decorate([
40
+ exports.ConfigProviderModule = ConfigProviderModule;
41
+ exports.ConfigProviderModule = ConfigProviderModule = ConfigProviderModule_1 = __decorate([
41
42
  (0, common_1.Module)({})
42
43
  ], ConfigProviderModule);
43
- exports.ConfigProviderModule = ConfigProviderModule;
44
44
  //# sourceMappingURL=configProvider.module.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"configProvider.module.js","sourceRoot":"","sources":["../../../src/common/configProvider/configProvider.module.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;AAAA,2CAAuD;AAGvD,qEAAiE;AAEjE,gDAA2C;AAGpC,IAAM,oBAAoB,4BAA1B,MAAM,oBAAoB;IAC/B,MAAM,CAAC,QAAQ,CAAC,OAAoC;QAClD,MAAM,EAAE,UAAU,EAAE,OAAO,EAAE,kBAAkB,EAAE,GAAG,OAAO,CAAC;QAC5D,OAAO;YACL,MAAM,EAAE,IAAI;YACZ,MAAM,EAAE,sBAAoB;YAC5B,SAAS,EAAE;gBACT;oBACE,OAAO,EAAE,uBAAS,CAAC,MAAM;oBACzB,UAAU,EAAE,GAAS,EAAE,gDAAC,OAAA,MAAM,8CAAqB,CAAC,UAAU,CAAC,UAAU,EAAE,EAAE,OAAO,EAAE,kBAAkB,EAAE,CAAC,CAAA,GAAA;iBAC5G;gBACD,8CAAqB;aACtB;YACD,OAAO,EAAE,CAAC,uBAAS,CAAC,MAAM,EAAE,8CAAqB,CAAC;SACnD,CAAC;IACJ,CAAC;CACF,CAAA;AAhBY,oBAAoB;IADhC,IAAA,eAAM,EAAC,EAAE,CAAC;GACE,oBAAoB,CAgBhC;AAhBY,oDAAoB"}
1
+ {"version":3,"file":"configProvider.module.js","sourceRoot":"","sources":["../../../src/common/configProvider/configProvider.module.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;AAAA,2CAAuD;AAGvD,qEAAiE;AAEjE,gDAA2C;AAGpC,IAAM,oBAAoB,4BAA1B,MAAM,oBAAoB;IAC/B,MAAM,CAAC,QAAQ,CAAC,OAAoC;QAClD,MAAM,EAAE,UAAU,EAAE,OAAO,EAAE,kBAAkB,EAAE,GAAG,OAAO,CAAC;QAC5D,OAAO;YACL,MAAM,EAAE,IAAI;YACZ,MAAM,EAAE,sBAAoB;YAC5B,SAAS,EAAE;gBACT;oBACE,OAAO,EAAE,uBAAS,CAAC,MAAM;oBACzB,UAAU,EAAE,GAAS,EAAE,gDAAC,OAAA,MAAM,8CAAqB,CAAC,UAAU,CAAC,UAAU,EAAE,EAAE,OAAO,EAAE,kBAAkB,EAAE,CAAC,CAAA,GAAA;iBAC5G;gBACD,8CAAqB;aACtB;YACD,OAAO,EAAE,CAAC,uBAAS,CAAC,MAAM,EAAE,8CAAqB,CAAC;SACnD,CAAC;IACJ,CAAC;CACF,CAAA;AAhBY,oDAAoB;+BAApB,oBAAoB;IADhC,IAAA,eAAM,EAAC,EAAE,CAAC;GACE,oBAAoB,CAgBhC"}
@@ -21,13 +21,23 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
21
21
  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;
22
22
  return c > 3 && r && Object.defineProperty(target, key, r), r;
23
23
  };
24
- var __importStar = (this && this.__importStar) || function (mod) {
25
- if (mod && mod.__esModule) return mod;
26
- var result = {};
27
- if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
28
- __setModuleDefault(result, mod);
29
- return result;
30
- };
24
+ var __importStar = (this && this.__importStar) || (function () {
25
+ var ownKeys = function(o) {
26
+ ownKeys = Object.getOwnPropertyNames || function (o) {
27
+ var ar = [];
28
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
29
+ return ar;
30
+ };
31
+ return ownKeys(o);
32
+ };
33
+ return function (mod) {
34
+ if (mod && mod.__esModule) return mod;
35
+ var result = {};
36
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
37
+ __setModuleDefault(result, mod);
38
+ return result;
39
+ };
40
+ })();
31
41
  var __metadata = (this && this.__metadata) || function (k, v) {
32
42
  if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
33
43
  };
@@ -196,10 +206,10 @@ let ConfigProviderService = class ConfigProviderService {
196
206
  });
197
207
  }
198
208
  };
199
- ConfigProviderService = __decorate([
209
+ exports.ConfigProviderService = ConfigProviderService;
210
+ exports.ConfigProviderService = ConfigProviderService = __decorate([
200
211
  (0, common_1.Injectable)(),
201
212
  __param(0, (0, common_1.Inject)(definitions_1.Constants.CONFIG)),
202
213
  __metadata("design:paramtypes", [Object])
203
214
  ], ConfigProviderService);
204
- exports.ConfigProviderService = ConfigProviderService;
205
215
  //# sourceMappingURL=configProvider.service.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"configProvider.service.js","sourceRoot":"","sources":["../../../src/common/configProvider/configProvider.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"configProvider.service.js","sourceRoot":"","sources":["../../../src/common/configProvider/configProvider.service.ts"],"names":[],"mappings":"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"}
@@ -3,3 +3,12 @@ export declare enum Constants {
3
3
  CONFIG = "CONFIG",
4
4
  DOMAIN_MODULE_NAME = "DOMAIN_MODULE_NAME"
5
5
  }
6
+ export declare enum HttpMethod {
7
+ DELETE = "delete",
8
+ GET = "get",
9
+ HEAD = "head",
10
+ OPTIONS = "options",
11
+ PATCH = "patch",
12
+ POST = "post",
13
+ PUT = "put"
14
+ }
@@ -1,10 +1,20 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.Constants = void 0;
3
+ exports.HttpMethod = exports.Constants = void 0;
4
4
  var Constants;
5
5
  (function (Constants) {
6
6
  Constants["API_MODULE_NAME"] = "API_MODULE_NAME";
7
7
  Constants["CONFIG"] = "CONFIG";
8
8
  Constants["DOMAIN_MODULE_NAME"] = "DOMAIN_MODULE_NAME";
9
- })(Constants = exports.Constants || (exports.Constants = {}));
9
+ })(Constants || (exports.Constants = Constants = {}));
10
+ var HttpMethod;
11
+ (function (HttpMethod) {
12
+ HttpMethod["DELETE"] = "delete";
13
+ HttpMethod["GET"] = "get";
14
+ HttpMethod["HEAD"] = "head";
15
+ HttpMethod["OPTIONS"] = "options";
16
+ HttpMethod["PATCH"] = "patch";
17
+ HttpMethod["POST"] = "post";
18
+ HttpMethod["PUT"] = "put";
19
+ })(HttpMethod || (exports.HttpMethod = HttpMethod = {}));
10
20
  //# sourceMappingURL=common.constants.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"common.constants.js","sourceRoot":"","sources":["../../../src/common/definitions/common.constants.ts"],"names":[],"mappings":";;;AAAA,IAAY,SAOX;AAPD,WAAY,SAAS;IAEnB,gDAAmC,CAAA;IAEnC,8BAAiB,CAAA;IAEjB,sDAAyC,CAAA;AAC3C,CAAC,EAPW,SAAS,GAAT,iBAAS,KAAT,iBAAS,QAOpB"}
1
+ {"version":3,"file":"common.constants.js","sourceRoot":"","sources":["../../../src/common/definitions/common.constants.ts"],"names":[],"mappings":";;;AAAA,IAAY,SAOX;AAPD,WAAY,SAAS;IAEnB,gDAAmC,CAAA;IAEnC,8BAAiB,CAAA;IAEjB,sDAAyC,CAAA;AAC3C,CAAC,EAPW,SAAS,yBAAT,SAAS,QAOpB;AAED,IAAY,UAeX;AAfD,WAAY,UAAU;IAEpB,+BAAiB,CAAA;IAEjB,yBAAW,CAAA;IAEX,2BAAa,CAAA;IAEb,iCAAmB,CAAA;IAEnB,6BAAe,CAAA;IAEf,2BAAa,CAAA;IAEb,yBAAW,CAAA;AACb,CAAC,EAfW,UAAU,0BAAV,UAAU,QAerB"}
@@ -4,8 +4,8 @@ export type ProviderWithInjectionToken = Provider & {
4
4
  injectionToken?: string;
5
5
  };
6
6
  export declare const loadDynamicModules: (folderData: GenericObject<unknown>) => {
7
- controllers?: Provider<any>[] | undefined;
8
- entities?: unknown[] | undefined;
9
- modules?: DynamicModule[] | undefined;
10
- services?: Provider<any>[] | undefined;
7
+ controllers?: Provider[];
8
+ entities?: unknown[];
9
+ modules?: DynamicModule[];
10
+ services?: Provider[];
11
11
  };
@@ -1 +1 @@
1
- {"version":3,"file":"utils.loadDynamicModules.js","sourceRoot":"","sources":["../../../src/common/utils/utils.loadDynamicModules.ts"],"names":[],"mappings":";;;AAQO,MAAM,kBAAkB,GAAG,CAChC,UAAkC,EACoE,EAAE;IACxG,MAAM,WAAW,GAAe,EAAE,CAAC;IACnC,MAAM,QAAQ,GAAc,EAAE,CAAC;IAC/B,MAAM,OAAO,GAAoB,EAAE,CAAC;IACpC,MAAM,QAAQ,GAAe,EAAE,CAAC;IAChC,KAAK,MAAM,GAAG,IAAI,UAAU,EAAE;QAC5B,MAAM,SAAS,GAAG,GAA8B,CAAC;QACjD,IAAI,GAAG,CAAC,KAAK,CAAC,aAAa,CAAC,EAAE;YAC5B,SAAS;SACV;QACD,IAAI,GAAG,CAAC,KAAK,CAAC,gBAAgB,CAAC,EAAE;YAC/B,MAAM,cAAc,GAAG,UAAU,CAAC,SAAS,CAA+B,CAAC;YAC3E,IAAI,cAAc,CAAC,cAAc,EAAE;gBACjC,WAAW,CAAC,IAAI,CAAC;oBACf,OAAO,EAAE,cAAc,CAAC,cAAc;oBACtC,QAAQ,EAAE,cAA2C;iBACtD,CAAC,CAAC;aAEJ;YACD,WAAW,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;YACjC,SAAS;SACV;QACD,IAAI,GAAG,CAAC,KAAK,CAAC,YAAY,CAAC,EAAE;YAC3B,QAAQ,CAAC,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC,CAAC;YACrC,SAAS;SACV;QACD,IAAI,GAAG,CAAC,KAAK,CAAC,YAAY,CAAC,EAAE;YAC3B,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,SAAS,CAA6B,CAAC,CAAC;YAChE,SAAS;SACV;QACD,IAAI,GAAG,CAAC,KAAK,CAAC,aAAa,CAAC,EAAE;YAC5B,MAAM,cAAc,GAAG,UAAU,CAAC,SAAS,CAA+B,CAAC;YAC3E,IAAI,cAAc,CAAC,cAAc,EAAE;gBACjC,QAAQ,CAAC,IAAI,CAAC;oBACZ,OAAO,EAAE,cAAc,CAAC,cAAc;oBACtC,QAAQ,EAAE,cAA2C;iBACtD,CAAC,CAAC;aAEJ;YACD,QAAQ,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;YAC9B,SAAS;SACV;KACF;IACD,OAAO;QACL,WAAW,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS;QACzD,QAAQ,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS;QAChD,OAAO,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS;QAC7C,QAAQ,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS;KACjD,CAAC;AACJ,CAAC,CAAC;AAnDW,QAAA,kBAAkB,sBAmD7B"}
1
+ {"version":3,"file":"utils.loadDynamicModules.js","sourceRoot":"","sources":["../../../src/common/utils/utils.loadDynamicModules.ts"],"names":[],"mappings":";;;AAQO,MAAM,kBAAkB,GAAG,CAChC,UAAkC,EACoE,EAAE;IACxG,MAAM,WAAW,GAAe,EAAE,CAAC;IACnC,MAAM,QAAQ,GAAc,EAAE,CAAC;IAC/B,MAAM,OAAO,GAAoB,EAAE,CAAC;IACpC,MAAM,QAAQ,GAAe,EAAE,CAAC;IAChC,KAAK,MAAM,GAAG,IAAI,UAAU,EAAE,CAAC;QAC7B,MAAM,SAAS,GAAG,GAA8B,CAAC;QACjD,IAAI,GAAG,CAAC,KAAK,CAAC,aAAa,CAAC,EAAE,CAAC;YAC7B,SAAS;QACX,CAAC;QACD,IAAI,GAAG,CAAC,KAAK,CAAC,gBAAgB,CAAC,EAAE,CAAC;YAChC,MAAM,cAAc,GAAG,UAAU,CAAC,SAAS,CAA+B,CAAC;YAC3E,IAAI,cAAc,CAAC,cAAc,EAAE,CAAC;gBAClC,WAAW,CAAC,IAAI,CAAC;oBACf,OAAO,EAAE,cAAc,CAAC,cAAc;oBACtC,QAAQ,EAAE,cAA2C;iBACtD,CAAC,CAAC;YAEL,CAAC;YACD,WAAW,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;YACjC,SAAS;QACX,CAAC;QACD,IAAI,GAAG,CAAC,KAAK,CAAC,YAAY,CAAC,EAAE,CAAC;YAC5B,QAAQ,CAAC,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC,CAAC;YACrC,SAAS;QACX,CAAC;QACD,IAAI,GAAG,CAAC,KAAK,CAAC,YAAY,CAAC,EAAE,CAAC;YAC5B,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,SAAS,CAA6B,CAAC,CAAC;YAChE,SAAS;QACX,CAAC;QACD,IAAI,GAAG,CAAC,KAAK,CAAC,aAAa,CAAC,EAAE,CAAC;YAC7B,MAAM,cAAc,GAAG,UAAU,CAAC,SAAS,CAA+B,CAAC;YAC3E,IAAI,cAAc,CAAC,cAAc,EAAE,CAAC;gBAClC,QAAQ,CAAC,IAAI,CAAC;oBACZ,OAAO,EAAE,cAAc,CAAC,cAAc;oBACtC,QAAQ,EAAE,cAA2C;iBACtD,CAAC,CAAC;YAEL,CAAC;YACD,QAAQ,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;YAC9B,SAAS;QACX,CAAC;IACH,CAAC;IACD,OAAO;QACL,WAAW,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS;QACzD,QAAQ,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS;QAChD,OAAO,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS;QAC7C,QAAQ,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS;KACjD,CAAC;AACJ,CAAC,CAAC;AAnDW,QAAA,kBAAkB,sBAmD7B"}
@@ -1,27 +1,17 @@
1
- import { DomainBulkCreateData, DomainBulkCreateOptions, DomainBulkCreateResult, DomainCreateData, DomainCreateOptions, DomainCreateResult, DomainDeleteOptions, DomainDeleteResult, DomainFindOneOptions, DomainFindOneResult, DomainFindOptions, DomainFindResult, DomainPersistanceEntityServiceType, DomainUpdateData, DomainUpdateOptions, DomainUpdateResult } from './domain.entity.service.definitions';
1
+ import { DomainBulkCreateOptions, DomainBulkCreateResult, DomainCreateOptions, DomainCreateResult, DomainDeleteOptions, DomainDeleteResult, DomainEntityServiceDefaultData, DomainFindOneOptions, DomainFindOneResult, DomainFindOptions, DomainFindResult, DomainPersistanceEntityServiceType, DomainRunMethodInAdditionalServicesOptions, DomainUpdateOptions, DomainUpdateResult } from './domain.entity.service.definitions';
2
2
  import { GenericObject } from '../../common/definitions';
3
3
  import { PersistanceEntityService } from '../../persistance/entityService';
4
- export declare class DomainEntityService<Entity, EntityService extends PersistanceEntityService<Entity>, Data extends {
5
- BulkCreate: DomainBulkCreateData<Entity>;
6
- Create: DomainCreateData<Entity>;
7
- Update: DomainUpdateData<Entity>;
8
- } = {
9
- BulkCreate: DomainBulkCreateData<Entity>;
10
- Create: DomainCreateData<Entity>;
11
- Update: DomainUpdateData<Entity>;
12
- }, AdditionalEntityServices extends Record<string, PersistanceEntityService<Entity>> | undefined = undefined> {
4
+ export declare class DomainEntityService<Entity, EntityService extends PersistanceEntityService<Entity>, Data extends DomainEntityServiceDefaultData<Entity> = DomainEntityServiceDefaultData<Entity>, AdditionalEntityServices extends Record<string, PersistanceEntityService<Partial<Entity>>> | undefined = undefined> {
13
5
  protected persistanceEntityService: EntityService;
6
+ protected defaultMethods: string[];
14
7
  protected additionalPersistanceEntityServices?: AdditionalEntityServices | undefined;
15
- constructor(persistanceEntityService: EntityService, additionalPersistanceEntityServices?: AdditionalEntityServices | undefined);
16
- bulkCreate(data: Data['BulkCreate'], options?: DomainBulkCreateOptions): Promise<DomainBulkCreateResult<Entity>>;
17
- create(data: Data['Create'], options?: DomainCreateOptions): Promise<DomainCreateResult<Entity>>;
18
- delete(options: DomainDeleteOptions): Promise<DomainDeleteResult>;
19
- find(options: DomainFindOptions): Promise<DomainFindResult<Entity>>;
20
- findOne(options: DomainFindOneOptions): Promise<DomainFindOneResult<Entity>>;
8
+ constructor(persistanceEntityService: EntityService, defaultMethods?: string[], additionalPersistanceEntityServices?: AdditionalEntityServices | undefined);
9
+ bulkCreate(data: Data['BulkCreate'], options?: DomainBulkCreateOptions, privateOptions?: unknown): Promise<DomainBulkCreateResult<Entity>>;
10
+ create(data: Data['Create'], options?: DomainCreateOptions, privateOptions?: unknown): Promise<DomainCreateResult<Entity>>;
11
+ delete(options: DomainDeleteOptions, privateOptions?: unknown): Promise<DomainDeleteResult>;
12
+ find(options: DomainFindOptions, privateOptions?: unknown): Promise<DomainFindResult<Entity>>;
13
+ findOne(options: DomainFindOneOptions, privateOptions?: unknown): Promise<DomainFindOneResult<Entity>>;
21
14
  protected getPersistanceService(serviceName: DomainPersistanceEntityServiceType.Main | string): PersistanceEntityService<Entity>;
22
- protected runMethodInAdditionalServices<ServiceReturnData>(serviceNames: string[], options: {
23
- methodArgs?: unknown[];
24
- methodName: string;
25
- }): Promise<GenericObject<ServiceReturnData> | undefined>;
26
- update(data: Data['Update'], options: DomainUpdateOptions): Promise<DomainUpdateResult<Entity>>;
15
+ protected runMethodInAdditionalServices<ServiceReturnData>(serviceNames: string[], options: DomainRunMethodInAdditionalServicesOptions<unknown>): Promise<GenericObject<ServiceReturnData> | undefined>;
16
+ update(data: Data['Update'], options: DomainUpdateOptions, privateOptions?: unknown): Promise<DomainUpdateResult<Entity>>;
27
17
  }
@@ -1,30 +1,63 @@
1
1
  import { GenericObject } from '../../common/definitions';
2
2
  import { PersistanceDeleteOptions, PersistanceDeleteResult, PersistanceFindOneOptions, PersistanceFindOptions, PersistanceFindResults, PersistanceUpdateOptions, PersistanceUpdateResult } from '../../persistance/entityService';
3
- export type DomainBaseOptions<Options> = Options & {
4
- optionsOverridesByService?: GenericObject<Partial<Options>>;
3
+ export interface DomainBaseAdditionalServiceOptionsOverrides {
4
+ runOnNoMainServiceResultOnly?: boolean;
5
+ }
6
+ export type DomainBaseOptions<Options> = Options & DomainBaseOptionsForAdditionalServices<Options>;
7
+ export interface DomainBaseOptionsForAdditionalServices<Options> {
8
+ optionsOverridesByService?: GenericObject<Partial<Options> & DomainBaseAdditionalServiceOptionsOverrides>;
5
9
  persistanceServices?: DomainPersistanceServicesKey[];
6
- };
10
+ }
11
+ export type DomainBaseOptionsForAdditionalServicesFull<Options extends object | undefined = undefined, SaveAdditionalResultsOptions extends object | undefined = undefined> = DomainBaseOptionsForAdditionalServices<Options> & DomainBaseOptionsWithSearchPersistance<SaveAdditionalResultsOptions>;
12
+ export interface DomainBaseOptionsWithSearchPersistance<SaveAdditionalResultsOptions extends object | undefined = undefined> {
13
+ saveAdditionalResultsInMain?: {
14
+ saveOptions?: SaveAdditionalResultsOptions;
15
+ serviceName: string;
16
+ useResultsAsMain?: boolean;
17
+ };
18
+ }
7
19
  export interface DomainBaseResult<Result> {
8
20
  result: Result;
9
21
  resultsByService?: GenericObject<Result>;
10
22
  }
11
23
  export type DomainBulkCreateData<Entity> = Partial<Entity>[];
12
- export type DomainBulkCreateOptions = Omit<DomainBaseOptions<object>, 'optionsOverridesByService'>;
24
+ export type DomainBulkCreateOptions<Options = object> = DomainBaseOptions<Options>;
13
25
  export type DomainBulkCreateResult<Entity> = DomainBaseResult<Entity[]>;
14
26
  export type DomainCreateData<Entity> = Partial<Entity>;
15
- export type DomainCreateOptions = Omit<DomainBaseOptions<object>, 'optionsOverridesByService'>;
27
+ export type DomainCreateOptions<Options = object> = DomainBaseOptions<Options>;
16
28
  export type DomainCreateResult<Entity> = DomainBaseResult<Entity>;
17
- export type DomainDeleteOptions = DomainBaseOptions<PersistanceDeleteOptions>;
29
+ export type DomainDeleteOptions<Options = object> = Options & DomainBaseOptions<PersistanceDeleteOptions>;
18
30
  export type DomainDeleteResult = DomainBaseResult<PersistanceDeleteResult>;
19
- export type DomainFindOneOptions = DomainBaseOptions<PersistanceFindOneOptions>;
31
+ export interface DomainEntityServiceDefaultData<Entity> {
32
+ BulkCreate: DomainBulkCreateData<Entity>;
33
+ Create: DomainCreateData<Entity>;
34
+ Update: DomainUpdateData<Entity>;
35
+ }
36
+ export type DomainFindOneOptions<Options = object> = Options & DomainBaseOptions<PersistanceFindOneOptions> & DomainBaseOptionsWithSearchPersistance<DomainCreateOptions>;
20
37
  export type DomainFindOneResult<Entity> = DomainBaseResult<Entity | null>;
21
- export type DomainFindOptions = DomainBaseOptions<PersistanceFindOptions>;
38
+ export type DomainFindOptions<Options = object> = Options & DomainBaseOptions<PersistanceFindOptions> & DomainBaseOptionsWithSearchPersistance<DomainBulkCreateOptions>;
22
39
  export type DomainFindResult<Entity> = DomainBaseResult<PersistanceFindResults<Entity>>;
40
+ export declare enum DomainMethod {
41
+ BulkCreate = "bulkCreate",
42
+ Create = "create",
43
+ Delete = "delete",
44
+ Find = "find",
45
+ FindOne = "findOne",
46
+ Update = "update"
47
+ }
48
+ export declare const DOMAIN_ENTITY_SERVICE_DEFAULT_METHODS: DomainMethod[];
23
49
  export declare enum DomainPersistanceEntityServiceType {
24
50
  All = "all",
25
51
  Main = "main"
26
52
  }
27
53
  export type DomainPersistanceServicesKey = DomainPersistanceEntityServiceType | string;
54
+ export type DomainRunMethodInAdditionalServicesOptions<Options> = {
55
+ hasMainServiceResult: boolean;
56
+ methodArgs?: unknown[];
57
+ methodName: string;
58
+ optionsArgIndex?: number;
59
+ optionsOverridesByService?: GenericObject<Partial<Options> & DomainBaseAdditionalServiceOptionsOverrides>;
60
+ };
28
61
  export type DomainUpdateData<Entity> = Partial<Entity>;
29
- export type DomainUpdateOptions = DomainBaseOptions<PersistanceUpdateOptions>;
62
+ export type DomainUpdateOptions<Options = object> = Options & DomainBaseOptions<PersistanceUpdateOptions>;
30
63
  export type DomainUpdateResult<Entity> = DomainBaseResult<PersistanceUpdateResult<Entity>>;
@@ -1,9 +1,26 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.DomainPersistanceEntityServiceType = void 0;
3
+ exports.DomainPersistanceEntityServiceType = exports.DOMAIN_ENTITY_SERVICE_DEFAULT_METHODS = exports.DomainMethod = void 0;
4
+ var DomainMethod;
5
+ (function (DomainMethod) {
6
+ DomainMethod["BulkCreate"] = "bulkCreate";
7
+ DomainMethod["Create"] = "create";
8
+ DomainMethod["Delete"] = "delete";
9
+ DomainMethod["Find"] = "find";
10
+ DomainMethod["FindOne"] = "findOne";
11
+ DomainMethod["Update"] = "update";
12
+ })(DomainMethod || (exports.DomainMethod = DomainMethod = {}));
13
+ exports.DOMAIN_ENTITY_SERVICE_DEFAULT_METHODS = [
14
+ DomainMethod.BulkCreate,
15
+ DomainMethod.Create,
16
+ DomainMethod.Delete,
17
+ DomainMethod.Find,
18
+ DomainMethod.FindOne,
19
+ DomainMethod.Update
20
+ ];
4
21
  var DomainPersistanceEntityServiceType;
5
22
  (function (DomainPersistanceEntityServiceType) {
6
23
  DomainPersistanceEntityServiceType["All"] = "all";
7
24
  DomainPersistanceEntityServiceType["Main"] = "main";
8
- })(DomainPersistanceEntityServiceType = exports.DomainPersistanceEntityServiceType || (exports.DomainPersistanceEntityServiceType = {}));
25
+ })(DomainPersistanceEntityServiceType || (exports.DomainPersistanceEntityServiceType = DomainPersistanceEntityServiceType = {}));
9
26
  //# sourceMappingURL=domain.entity.service.definitions.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"domain.entity.service.definitions.js","sourceRoot":"","sources":["../../../src/domain/entityService/domain.entity.service.definitions.ts"],"names":[],"mappings":";;;AA8CA,IAAY,kCAKX;AALD,WAAY,kCAAkC;IAE5C,iDAAW,CAAA;IAEX,mDAAa,CAAA;AACf,CAAC,EALW,kCAAkC,GAAlC,0CAAkC,KAAlC,0CAAkC,QAK7C"}
1
+ {"version":3,"file":"domain.entity.service.definitions.js","sourceRoot":"","sources":["../../../src/domain/entityService/domain.entity.service.definitions.ts"],"names":[],"mappings":";;;AA8EA,IAAY,YAaX;AAbD,WAAY,YAAY;IAEtB,yCAAyB,CAAA;IAEzB,iCAAiB,CAAA;IAEjB,iCAAiB,CAAA;IAEjB,6BAAa,CAAA;IAEb,mCAAmB,CAAA;IAEnB,iCAAiB,CAAA;AACnB,CAAC,EAbW,YAAY,4BAAZ,YAAY,QAavB;AAEY,QAAA,qCAAqC,GAAG;IACnD,YAAY,CAAC,UAAU;IACvB,YAAY,CAAC,MAAM;IACnB,YAAY,CAAC,MAAM;IACnB,YAAY,CAAC,IAAI;IACjB,YAAY,CAAC,OAAO;IACpB,YAAY,CAAC,MAAM;CACpB,CAAC;AAEF,IAAY,kCAKX;AALD,WAAY,kCAAkC;IAE5C,iDAAW,CAAA;IAEX,mDAAa,CAAA;AACf,CAAC,EALW,kCAAkC,kDAAlC,kCAAkC,QAK7C"}
@@ -19,82 +19,146 @@ var __rest = (this && this.__rest) || function (s, e) {
19
19
  }
20
20
  return t;
21
21
  };
22
+ var __importDefault = (this && this.__importDefault) || function (mod) {
23
+ return (mod && mod.__esModule) ? mod : { "default": mod };
24
+ };
22
25
  Object.defineProperty(exports, "__esModule", { value: true });
23
26
  exports.DomainEntityService = void 0;
27
+ const immutable_1 = __importDefault(require("immutable"));
24
28
  const domain_entity_service_definitions_1 = require("./domain.entity.service.definitions");
25
29
  const definitions_1 = require("../../common/definitions");
26
30
  class DomainEntityService {
27
- constructor(persistanceEntityService, additionalPersistanceEntityServices) {
31
+ constructor(persistanceEntityService, defaultMethods = domain_entity_service_definitions_1.DOMAIN_ENTITY_SERVICE_DEFAULT_METHODS, additionalPersistanceEntityServices) {
28
32
  this.persistanceEntityService = persistanceEntityService;
33
+ this.defaultMethods = defaultMethods;
29
34
  this.additionalPersistanceEntityServices = additionalPersistanceEntityServices;
30
35
  }
31
- bulkCreate(data, options) {
36
+ bulkCreate(data, options, privateOptions) {
32
37
  return __awaiter(this, void 0, void 0, function* () {
33
- const { persistanceServices = [domain_entity_service_definitions_1.DomainPersistanceEntityServiceType.Main] } = options || {};
38
+ var _a;
39
+ if (!((_a = this.defaultMethods) === null || _a === void 0 ? void 0 : _a.includes(domain_entity_service_definitions_1.DomainMethod.BulkCreate))) {
40
+ throw new definitions_1.ApplicationError(`Method bulkCreate not implemented for class ${typeof this}.`);
41
+ }
42
+ const { optionsOverridesByService, persistanceServices = [domain_entity_service_definitions_1.DomainPersistanceEntityServiceType.Main] } = options || {};
34
43
  const [firstServiceName, ...otherServiceNames] = persistanceServices;
35
- const result = yield this.getPersistanceService(firstServiceName).bulkCreate(data);
44
+ const result = yield this.getPersistanceService(firstServiceName).bulkCreate(data, privateOptions);
36
45
  return {
37
46
  result,
38
47
  resultsByService: yield this.runMethodInAdditionalServices(otherServiceNames || [], {
39
- methodArgs: [result],
40
- methodName: 'bulkCreate'
48
+ hasMainServiceResult: result.length > 0,
49
+ methodArgs: [result, privateOptions],
50
+ methodName: 'bulkCreate',
51
+ optionsArgIndex: 1,
52
+ optionsOverridesByService
41
53
  })
42
54
  };
43
55
  });
44
56
  }
45
- create(data, options) {
57
+ create(data, options, privateOptions) {
46
58
  return __awaiter(this, void 0, void 0, function* () {
47
- const { persistanceServices = [domain_entity_service_definitions_1.DomainPersistanceEntityServiceType.Main] } = options || {};
59
+ var _a;
60
+ if (!((_a = this.defaultMethods) === null || _a === void 0 ? void 0 : _a.includes(domain_entity_service_definitions_1.DomainMethod.Create))) {
61
+ throw new definitions_1.ApplicationError(`Method create not implemented for class ${typeof this}.`);
62
+ }
63
+ const { optionsOverridesByService, persistanceServices = [domain_entity_service_definitions_1.DomainPersistanceEntityServiceType.Main] } = options || {};
48
64
  const [firstServiceName, ...otherServiceNames] = persistanceServices;
49
- const result = yield this.getPersistanceService(firstServiceName).create(data);
65
+ const result = yield this.getPersistanceService(firstServiceName).create(data, privateOptions);
50
66
  return {
51
67
  result,
52
68
  resultsByService: yield this.runMethodInAdditionalServices(otherServiceNames || [], {
53
- methodArgs: [result],
54
- methodName: 'create'
69
+ hasMainServiceResult: typeof result !== 'undefined' && result !== null,
70
+ methodArgs: [result, privateOptions],
71
+ methodName: 'create',
72
+ optionsArgIndex: 1,
73
+ optionsOverridesByService
55
74
  })
56
75
  };
57
76
  });
58
77
  }
59
- delete(options) {
78
+ delete(options, privateOptions) {
60
79
  return __awaiter(this, void 0, void 0, function* () {
61
- const _a = options || {}, { persistanceServices = [domain_entity_service_definitions_1.DomainPersistanceEntityServiceType.Main] } = _a, otherOptions = __rest(_a, ["persistanceServices"]);
80
+ var _a;
81
+ if (!((_a = this.defaultMethods) === null || _a === void 0 ? void 0 : _a.includes(domain_entity_service_definitions_1.DomainMethod.Delete))) {
82
+ throw new definitions_1.ApplicationError(`Method delete not implemented for class ${typeof this}.`);
83
+ }
84
+ const _b = options || {}, { optionsOverridesByService, persistanceServices = [domain_entity_service_definitions_1.DomainPersistanceEntityServiceType.Main] } = _b, otherOptions = __rest(_b, ["optionsOverridesByService", "persistanceServices"]);
62
85
  const [firstServiceName, ...otherServiceNames] = persistanceServices;
63
- const result = yield this.getPersistanceService(firstServiceName).delete(otherOptions);
86
+ const result = yield this.getPersistanceService(firstServiceName).delete(otherOptions, privateOptions);
64
87
  return {
65
88
  result,
66
89
  resultsByService: yield this.runMethodInAdditionalServices(otherServiceNames || [], {
67
- methodArgs: [otherOptions],
68
- methodName: 'delete'
90
+ hasMainServiceResult: !!result.count,
91
+ methodArgs: [otherOptions, privateOptions],
92
+ methodName: 'delete',
93
+ optionsArgIndex: 0,
94
+ optionsOverridesByService
69
95
  })
70
96
  };
71
97
  });
72
98
  }
73
- find(options) {
99
+ find(options, privateOptions) {
74
100
  return __awaiter(this, void 0, void 0, function* () {
75
- const _a = options || {}, { persistanceServices = [domain_entity_service_definitions_1.DomainPersistanceEntityServiceType.Main] } = _a, otherOptions = __rest(_a, ["persistanceServices"]);
101
+ var _a;
102
+ if (!((_a = this.defaultMethods) === null || _a === void 0 ? void 0 : _a.includes(domain_entity_service_definitions_1.DomainMethod.Find))) {
103
+ throw new definitions_1.ApplicationError(`Method find not implemented for class ${typeof this}.`);
104
+ }
105
+ const _b = options || {}, { optionsOverridesByService, persistanceServices = [domain_entity_service_definitions_1.DomainPersistanceEntityServiceType.Main], saveAdditionalResultsInMain } = _b, otherOptions = __rest(_b, ["optionsOverridesByService", "persistanceServices", "saveAdditionalResultsInMain"]);
76
106
  const [firstServiceName, ...otherServiceNames] = persistanceServices;
77
- const result = yield this.getPersistanceService(firstServiceName).find(otherOptions);
107
+ let result = yield this.getPersistanceService(firstServiceName).find(otherOptions, privateOptions);
108
+ const hasMainServiceResult = result.items.length > 0;
109
+ const resultsByService = yield this.runMethodInAdditionalServices(otherServiceNames || [], {
110
+ hasMainServiceResult,
111
+ methodArgs: [otherOptions, privateOptions],
112
+ methodName: 'find',
113
+ optionsArgIndex: 0,
114
+ optionsOverridesByService
115
+ });
116
+ if (saveAdditionalResultsInMain && resultsByService) {
117
+ const { saveOptions, serviceName, useResultsAsMain } = saveAdditionalResultsInMain;
118
+ const dataFromAdditionalService = resultsByService[serviceName];
119
+ if (dataFromAdditionalService.items.length) {
120
+ yield this.persistanceEntityService.bulkCreate(dataFromAdditionalService.items, saveOptions);
121
+ if (useResultsAsMain && !hasMainServiceResult) {
122
+ result = dataFromAdditionalService;
123
+ }
124
+ }
125
+ }
78
126
  return {
79
127
  result,
80
- resultsByService: yield this.runMethodInAdditionalServices(otherServiceNames || [], {
81
- methodArgs: [otherOptions],
82
- methodName: 'find'
83
- })
128
+ resultsByService
84
129
  };
85
130
  });
86
131
  }
87
- findOne(options) {
132
+ findOne(options, privateOptions) {
88
133
  return __awaiter(this, void 0, void 0, function* () {
89
- const _a = options || {}, { persistanceServices = [domain_entity_service_definitions_1.DomainPersistanceEntityServiceType.Main] } = _a, otherOptions = __rest(_a, ["persistanceServices"]);
134
+ var _a;
135
+ if (!((_a = this.defaultMethods) === null || _a === void 0 ? void 0 : _a.includes(domain_entity_service_definitions_1.DomainMethod.FindOne))) {
136
+ throw new definitions_1.ApplicationError(`Method findOne not implemented for class ${typeof this}.`);
137
+ }
138
+ const _b = options || {}, { optionsOverridesByService, persistanceServices = [domain_entity_service_definitions_1.DomainPersistanceEntityServiceType.Main], saveAdditionalResultsInMain } = _b, otherOptions = __rest(_b, ["optionsOverridesByService", "persistanceServices", "saveAdditionalResultsInMain"]);
90
139
  const [firstServiceName, ...otherServiceNames] = persistanceServices;
91
- const result = yield this.getPersistanceService(firstServiceName).findOne(otherOptions);
140
+ let result = yield this.getPersistanceService(firstServiceName).findOne(otherOptions, privateOptions);
141
+ const hasMainServiceResult = typeof result !== 'undefined' && result !== null;
142
+ const resultsByService = yield this.runMethodInAdditionalServices(otherServiceNames || [], {
143
+ hasMainServiceResult,
144
+ methodArgs: [otherOptions, privateOptions],
145
+ methodName: 'findOne',
146
+ optionsArgIndex: 0,
147
+ optionsOverridesByService
148
+ });
149
+ if (saveAdditionalResultsInMain && resultsByService) {
150
+ const { saveOptions, serviceName, useResultsAsMain } = saveAdditionalResultsInMain;
151
+ const dataFromAdditionalService = resultsByService[serviceName];
152
+ if (dataFromAdditionalService) {
153
+ yield this.persistanceEntityService.create(dataFromAdditionalService, saveOptions);
154
+ if (useResultsAsMain && !hasMainServiceResult) {
155
+ result = dataFromAdditionalService;
156
+ }
157
+ }
158
+ }
92
159
  return {
93
160
  result,
94
- resultsByService: yield this.runMethodInAdditionalServices(otherServiceNames || [], {
95
- methodArgs: [otherOptions],
96
- methodName: 'findOne'
97
- })
161
+ resultsByService
98
162
  };
99
163
  });
100
164
  }
@@ -114,32 +178,60 @@ class DomainEntityService {
114
178
  if (!serviceNames.length) {
115
179
  return undefined;
116
180
  }
117
- const { methodArgs = [], methodName } = options;
181
+ const { hasMainServiceResult, methodArgs = [], methodName, optionsArgIndex, optionsOverridesByService = {} } = options;
118
182
  const returnDataByService = {};
119
183
  if (!this.additionalPersistanceEntityServices) {
120
184
  throw new definitions_1.ApplicationError(`No additional PersistanceEntityServices exist for DomainEntityService ${this.persistanceEntityService.getEntityName()}.`);
121
185
  }
186
+ if (Object.keys(optionsOverridesByService).length &&
187
+ (typeof optionsArgIndex === 'undefined' || optionsArgIndex < 0 || optionsArgIndex > methodArgs.length - 1)) {
188
+ throw new definitions_1.ApplicationError(`Invalid optionsArgIndex value ${optionsArgIndex} provided for DomainEntityService ${this.persistanceEntityService.getEntityName()}.}.`);
189
+ }
122
190
  for (const i in serviceNames) {
123
191
  const serviceName = serviceNames[i];
124
192
  const service = this.additionalPersistanceEntityServices[serviceName];
125
193
  if (!service) {
126
194
  throw new definitions_1.ApplicationError(`PersistanceEntityService ${serviceName} does not exist for DomainEntityService ${this.persistanceEntityService.getEntityName()}.`);
127
195
  }
128
- returnDataByService[serviceName] = (yield service[methodName].apply(service, methodArgs));
196
+ const serviceMethodOptionsOverrides = optionsOverridesByService[serviceName] || {};
197
+ const { runOnNoMainServiceResultOnly = true } = serviceMethodOptionsOverrides, actualMethodOptionsOverrides = __rest(serviceMethodOptionsOverrides, ["runOnNoMainServiceResultOnly"]);
198
+ if (runOnNoMainServiceResultOnly && hasMainServiceResult) {
199
+ continue;
200
+ }
201
+ const serviceMethodArgs = immutable_1.default.fromJS(methodArgs).toJS();
202
+ if (typeof serviceMethodArgs[optionsArgIndex] === 'undefined') {
203
+ if (optionsArgIndex > serviceMethodArgs.length - 1) {
204
+ serviceMethodArgs.push(actualMethodOptionsOverrides);
205
+ }
206
+ else {
207
+ serviceMethodArgs[optionsArgIndex] = actualMethodOptionsOverrides;
208
+ }
209
+ }
210
+ else {
211
+ serviceMethodArgs[optionsArgIndex] = Object.assign(Object.assign({}, serviceMethodArgs[optionsArgIndex]), actualMethodOptionsOverrides);
212
+ }
213
+ returnDataByService[serviceName] = (yield service[methodName].apply(service, serviceMethodArgs));
129
214
  }
130
215
  return returnDataByService;
131
216
  });
132
217
  }
133
- update(data, options) {
218
+ update(data, options, privateOptions) {
134
219
  return __awaiter(this, void 0, void 0, function* () {
135
- const { persistanceServices = [domain_entity_service_definitions_1.DomainPersistanceEntityServiceType.Main] } = options, otherOptions = __rest(options, ["persistanceServices"]);
220
+ var _a;
221
+ if (!((_a = this.defaultMethods) === null || _a === void 0 ? void 0 : _a.includes(domain_entity_service_definitions_1.DomainMethod.Update))) {
222
+ throw new definitions_1.ApplicationError(`Method update not implemented for class ${typeof this}.`);
223
+ }
224
+ const { optionsOverridesByService, persistanceServices = [domain_entity_service_definitions_1.DomainPersistanceEntityServiceType.Main] } = options, otherOptions = __rest(options, ["optionsOverridesByService", "persistanceServices"]);
136
225
  const [firstServiceName, ...otherServiceNames] = persistanceServices;
137
- const result = yield this.getPersistanceService(firstServiceName).update(data, otherOptions);
226
+ const result = yield this.getPersistanceService(firstServiceName).update(data, otherOptions, privateOptions);
138
227
  return {
139
228
  result,
140
229
  resultsByService: yield this.runMethodInAdditionalServices(otherServiceNames || [], {
141
- methodArgs: [data, otherOptions],
142
- methodName: 'update'
230
+ hasMainServiceResult: !!result.count,
231
+ methodArgs: [data, otherOptions, privateOptions],
232
+ methodName: 'update',
233
+ optionsArgIndex: 1,
234
+ optionsOverridesByService
143
235
  })
144
236
  };
145
237
  });