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

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 (32) 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 +1 -1
  5. package/dist/app.js.map +1 -1
  6. package/dist/common/configProvider/configProvider.definitions.d.ts +43 -13
  7. package/dist/common/configProvider/configProvider.definitions.js +21 -6
  8. package/dist/common/configProvider/configProvider.definitions.js.map +1 -1
  9. package/dist/common/configProvider/configProvider.module.js +2 -2
  10. package/dist/common/configProvider/configProvider.module.js.map +1 -1
  11. package/dist/common/configProvider/configProvider.service.js +29 -23
  12. package/dist/common/configProvider/configProvider.service.js.map +1 -1
  13. package/dist/common/definitions/common.constants.d.ts +9 -0
  14. package/dist/common/definitions/common.constants.js +12 -2
  15. package/dist/common/definitions/common.constants.js.map +1 -1
  16. package/dist/common/definitions/common.definitions.d.ts +3 -0
  17. package/dist/common/utils/utils.loadDynamicModules.d.ts +8 -5
  18. package/dist/common/utils/utils.loadDynamicModules.js +6 -2
  19. package/dist/common/utils/utils.loadDynamicModules.js.map +1 -1
  20. package/dist/domain/entityService/domain.entity.service.d.ts +11 -21
  21. package/dist/domain/entityService/domain.entity.service.definitions.d.ts +52 -11
  22. package/dist/domain/entityService/domain.entity.service.definitions.js +19 -2
  23. package/dist/domain/entityService/domain.entity.service.definitions.js.map +1 -1
  24. package/dist/domain/entityService/domain.entity.service.js +170 -41
  25. package/dist/domain/entityService/domain.entity.service.js.map +1 -1
  26. package/dist/persistance/entityService/persistance.entity.service.d.ts +12 -10
  27. package/dist/persistance/entityService/persistance.entity.service.definitions.d.ts +54 -3
  28. package/dist/persistance/entityService/persistance.entity.service.definitions.js +12 -2
  29. package/dist/persistance/entityService/persistance.entity.service.definitions.js.map +1 -1
  30. package/dist/persistance/entityService/persistance.entity.service.js +42 -10
  31. package/dist/persistance/entityService/persistance.entity.service.js.map +1 -1
  32. package/package.json +3 -2
@@ -1,5 +1,4 @@
1
- import { RequestMethod } from '@nestjs/common';
2
- import { GenericObject } from '../definitions';
1
+ import { GenericObject, HttpMethod } from '../definitions';
3
2
  export declare const APP_CONFIG_FROM_ENV_KEYS: AppConfigFromEnvKeys;
4
3
  export declare const APP_CONFIG_FROM_ENV_KEYS_PARENT_NAMES: AppConfigFromEnvKeysParentNames;
5
4
  type AppConfigIntermediate = AppConfigCommon & AppConfigProfile & AppConfigFromEnv;
@@ -8,8 +7,8 @@ type AppConfigAPIHTTPIntermediate = AppConfigCommonAPIHTTP & AppConfigFromEnvAPI
8
7
  export type AppConfigAPIHTTP = AppConfigAPIHTTPIntermediate & Required<Pick<AppConfigAPIHTTPIntermediate, 'allowedOrigins' | 'anonymousAccessRoutes' | 'hostname' | 'port'>>;
9
8
  export type AppConfigAPIREST = AppConfigCommonAPIREST & AppConfigFromEnvAPIREST;
10
9
  export type AppConfigDomainIAM = AppConfigCommonDomainIAM & AppConfigFromEnvDomainIAM;
11
- export type AppConfigPersistanceNoSQL = AppConfigCommonPersistanceNoSQL & AppConfigFromEnvPersistanceNoSQL;
12
- export type AppConfigPersistanceRDB = AppConfigCommonPersistanceRDB & AppConfigFromEnvPersistanceRDB;
10
+ export type AppConfigPersistanceNoSQL = AppConfigCommonPersistanceNoSQL & AppConfigFromEnvPersistanceNoSQL & AppConfigProfilePersistanceNoSQL;
11
+ export type AppConfigPersistanceRDB = AppConfigCommonPersistanceClickHouse & AppConfigCommonPersistanceRDB & AppConfigCommonPersistanceClickHouse & AppConfigFromEnvPersistanceRDB & AppConfigProfilePersistanceClickHouse & AppConfigProfilePersistanceRDB;
13
12
  export interface AppConfigCommon {
14
13
  api?: {
15
14
  [apiName: string]: GenericObject | AppConfigCommonAPIHTTP | AppConfigCommonAPIREST;
@@ -23,26 +22,37 @@ export interface AppConfigCommon {
23
22
  projectVersion: string;
24
23
  };
25
24
  persistance: {
26
- [moduleName: string]: GenericObject | AppConfigCommonPersistanceNoSQL | AppConfigCommonPersistanceRDB;
25
+ [moduleName: string]: GenericObject | AppConfigCommonPersistanceClickHouse | AppConfigCommonPersistanceNoSQL | AppConfigCommonPersistanceRDB;
27
26
  };
28
27
  }
29
28
  export interface AppConfigCommonAPIHTTP {
30
29
  allowedOrigins?: string[];
31
- anonymousAccessRoutes?: Record<string, RequestMethod[]>;
30
+ anonymousAccessRoutes?: Record<string, HttpMethod[]>;
31
+ endpointSecurityMode?: EndpointSecurityMode;
32
32
  hostname?: string;
33
33
  port?: number;
34
34
  }
35
35
  export type AppConfigCommonAPIREST = AppConfigCommonAPIHTTP;
36
36
  export interface AppConfigCommonDomainIAM {
37
37
  accessTokenExpiryTimeInMinutes?: number;
38
+ defaultUserIdentifierField: string;
38
39
  refreshTokenExpiryTimeInMinutes?: number;
40
+ userPasswordHMACAlgorithm?: string;
41
+ }
42
+ export interface AppConfigCommonPersistanceClickHouse {
43
+ type: RDBType;
39
44
  }
40
45
  export interface AppConfigCommonPersistanceNoSQL {
41
- type: NoSQLType;
46
+ clusterMode?: boolean;
47
+ defaultTTL?: number;
42
48
  storeDelimiter?: string;
43
49
  storeKey: string;
50
+ ttlPerEntity?: Record<string, number>;
51
+ type: NoSQLType;
52
+ useHashmap?: boolean;
44
53
  }
45
54
  export interface AppConfigCommonPersistanceRDB {
55
+ connectionName: string;
46
56
  type: RDBType;
47
57
  }
48
58
  export interface AppConfigFromEnv {
@@ -56,11 +66,16 @@ export interface AppConfigFromEnv {
56
66
  [moduleName: string]: GenericObject | AppConfigFromEnvPersistanceNoSQL | AppConfigFromEnvPersistanceRDB;
57
67
  };
58
68
  }
59
- export type AppConfigFromEnvAPIHTTP = AppConfigCommonAPIHTTP;
69
+ export interface AppConfigFromEnvAPIHTTP extends AppConfigCommonAPIHTTP {
70
+ apiKey?: string;
71
+ apiSecret?: string;
72
+ apiSecretAlgorithm?: string;
73
+ }
60
74
  export type AppConfigFromEnvAPIREST = AppConfigFromEnvAPIHTTP;
61
75
  export interface AppConfigFromEnvDomainIAM {
62
76
  jwtAccessSecret: string;
63
77
  jwtRefreshSecret: string;
78
+ userPasswordSecret?: string;
64
79
  }
65
80
  export interface AppConfigFromEnvKeys {
66
81
  [moduleCategory: string]: {
@@ -91,31 +106,44 @@ export interface AppConfigProfile {
91
106
  [apiName: string]: GenericObject | AppConfigProfileAPIHTTP | AppConfigProfileAPIREST;
92
107
  };
93
108
  domain?: {
94
- [domainName: string]: GenericObject | AppConfingProfileDomainIAM;
109
+ [domainName: string]: GenericObject | AppConfigProfileDomainIAM;
95
110
  };
96
111
  general: {
97
112
  environment: AppEnvironment;
98
113
  projectName?: string;
99
114
  projectVersion?: string;
100
115
  };
116
+ persistance?: {
117
+ [persistanceModuleName: string]: GenericObject | AppConfigProfilePersistanceClickHouse | AppConfigProfilePersistanceNoSQL | AppConfigProfilePersistanceRDB;
118
+ };
101
119
  }
102
120
  export type AppConfigProfileAPIHTTP = AppConfigCommonAPIHTTP;
103
121
  export type AppConfigProfileAPIREST = AppConfigProfileAPIHTTP;
104
- export interface AppConfingProfileDomainIAM {
122
+ export interface AppConfigProfileDomainIAM {
105
123
  accessTokenExpiryTimeInMinutes?: number;
106
124
  refreshTokenExpiryTimeInMinutes?: number;
107
125
  }
126
+ export type AppConfigProfilePersistanceClickHouse = AppConfigCommonPersistanceClickHouse;
127
+ export type AppConfigProfilePersistanceNoSQL = AppConfigCommonPersistanceNoSQL;
128
+ export type AppConfigProfilePersistanceRDB = AppConfigCommonPersistanceRDB & {
129
+ typeormExtraOptions?: GenericObject;
130
+ };
108
131
  export declare enum AppEnvironment {
109
132
  Development = "development",
110
133
  Local = "local",
111
134
  Production = "production",
112
- Staging = "staging"
135
+ Staging = "staging",
136
+ Test = "test"
113
137
  }
114
138
  export interface ConfigProviderModuleOptions {
115
139
  appConfigs: LoadConfigAppConfigs;
116
140
  envKeys: AppConfigFromEnvKeys;
117
141
  envKeysParentNames: AppConfigFromEnvKeysParentNames;
118
142
  }
143
+ export declare enum EndpointSecurityMode {
144
+ Lax = "lax",
145
+ Strict = "strict"
146
+ }
119
147
  export interface GenerateOrmconfigOptions {
120
148
  entitiesPathInModule: string;
121
149
  migrationsPathInModule: string;
@@ -124,10 +152,12 @@ export interface GenerateOrmconfigOptions {
124
152
  seedsPathInModule?: string;
125
153
  }
126
154
  export declare enum NoSQLType {
127
- Redis = "redis"
155
+ Redis = "redis",
156
+ Valkey = "valkey"
128
157
  }
129
158
  export declare enum RDBType {
130
- Clickhouse = "clickhouse",
159
+ Aurora = "aurora",
160
+ ClickHouse = "clickhouse",
131
161
  MySQL = "mysql",
132
162
  PG = "postgres"
133
163
  }
@@ -1,13 +1,19 @@
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: {
7
+ API_KEY: 'apiKey',
8
+ API_SECRET: 'apiSecret',
9
+ API_SECRET_ALGORITHM: 'apiSecretAlgorithm',
7
10
  HOSTNAME: 'hostname',
8
11
  PORT: 'port'
9
12
  },
10
13
  REST: {
14
+ API_KEY: 'apiKey',
15
+ API_SECRET: 'apiSecret',
16
+ API_SECRET_ALGORITHM: 'apiSecretAlgorithm',
11
17
  HOSTNAME: 'hostname',
12
18
  PORT: 'port'
13
19
  }
@@ -15,7 +21,8 @@ exports.APP_CONFIG_FROM_ENV_KEYS = {
15
21
  DOMAIN: {
16
22
  IAM: {
17
23
  JWT_ACCESS_SECRET: 'jwtAccessSecret',
18
- JWT_REFRESH_SECRET: 'jwtRefreshSecret'
24
+ JWT_REFRESH_SECRET: 'jwtRefreshSecret',
25
+ USER_PASSWORD_SECRET: 'userPasswordSecret'
19
26
  }
20
27
  },
21
28
  PERSISTANCE: {
@@ -62,15 +69,23 @@ var AppEnvironment;
62
69
  AppEnvironment["Local"] = "local";
63
70
  AppEnvironment["Production"] = "production";
64
71
  AppEnvironment["Staging"] = "staging";
65
- })(AppEnvironment = exports.AppEnvironment || (exports.AppEnvironment = {}));
72
+ AppEnvironment["Test"] = "test";
73
+ })(AppEnvironment || (exports.AppEnvironment = AppEnvironment = {}));
74
+ var EndpointSecurityMode;
75
+ (function (EndpointSecurityMode) {
76
+ EndpointSecurityMode["Lax"] = "lax";
77
+ EndpointSecurityMode["Strict"] = "strict";
78
+ })(EndpointSecurityMode || (exports.EndpointSecurityMode = EndpointSecurityMode = {}));
66
79
  var NoSQLType;
67
80
  (function (NoSQLType) {
68
81
  NoSQLType["Redis"] = "redis";
69
- })(NoSQLType = exports.NoSQLType || (exports.NoSQLType = {}));
82
+ NoSQLType["Valkey"] = "valkey";
83
+ })(NoSQLType || (exports.NoSQLType = NoSQLType = {}));
70
84
  var RDBType;
71
85
  (function (RDBType) {
72
- RDBType["Clickhouse"] = "clickhouse";
86
+ RDBType["Aurora"] = "aurora";
87
+ RDBType["ClickHouse"] = "clickhouse";
73
88
  RDBType["MySQL"] = "mysql";
74
89
  RDBType["PG"] = "postgres";
75
- })(RDBType = exports.RDBType || (exports.RDBType = {}));
90
+ })(RDBType || (exports.RDBType = RDBType = {}));
76
91
  //# 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,OAAO,EAAE,QAAQ;YACjB,UAAU,EAAE,WAAW;YACvB,oBAAoB,EAAE,oBAAoB;YAC1C,QAAQ,EAAE,UAAU;YACpB,IAAI,EAAE,MAAM;SACb;QACD,IAAI,EAAE;YACJ,OAAO,EAAE,QAAQ;YACjB,UAAU,EAAE,WAAW;YACvB,oBAAoB,EAAE,oBAAoB;YAC1C,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;AAoKF,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,SAKX;AALD,WAAY,SAAS;IAEnB,4BAAe,CAAA;IAEf,8BAAiB,CAAA;AACnB,CAAC,EALW,SAAS,yBAAT,SAAS,QAKpB;AAGD,IAAY,OASX;AATD,WAAY,OAAO;IAEjB,4BAAiB,CAAA;IAEjB,oCAAyB,CAAA;IAEzB,0BAAe,CAAA;IAEf,0BAAe,CAAA;AACjB,CAAC,EATW,OAAO,uBAAP,OAAO,QASlB"}
@@ -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
  };
@@ -62,8 +72,8 @@ exports.ConfigProviderService = void 0;
62
72
  const fs = __importStar(require("fs/promises"));
63
73
  const path = __importStar(require("path"));
64
74
  const common_1 = require("@nestjs/common");
65
- const general_tools_1 = require("@ramster/general-tools");
66
75
  const dotenv_1 = __importDefault(require("dotenv"));
76
+ const lodash_1 = __importDefault(require("lodash"));
67
77
  const ramda_1 = require("ramda");
68
78
  const configProvider_definitions_1 = require("./configProvider.definitions");
69
79
  const definitions_1 = require("../definitions");
@@ -79,6 +89,7 @@ let ConfigProviderService = class ConfigProviderService {
79
89
  const entitiesDirData = yield fs.readdir(entitiesDirPath);
80
90
  const entities = [];
81
91
  const migrationsPath = path.join(projectRootPath, modulePathInProject, migrationsPathInModule);
92
+ const moduleConfig = persistance[moduleName];
82
93
  const subscribers = [];
83
94
  for (const i in entitiesDirData) {
84
95
  const entityName = entitiesDirData[i];
@@ -105,18 +116,12 @@ let ConfigProviderService = class ConfigProviderService {
105
116
  }
106
117
  const ormconfigMigrations = [`${migrationsPath}/**/*.ts`];
107
118
  if (seedsPathInModule) {
108
- const baseSeedsBath = path.join(projectRootPath, modulePathInProject, seedsPathInModule);
109
- ormconfigMigrations.push(`${baseSeedsBath}/common/**/*.ts`);
119
+ const baseSeedsPath = path.join(projectRootPath, modulePathInProject, seedsPathInModule);
120
+ ormconfigMigrations.push(`${baseSeedsPath}/common/**/*.ts`);
110
121
  }
111
- yield fs.writeFile(path.join(projectRootPath, `ormconfig-${moduleName}.json`), JSON.stringify((0, ramda_1.mergeDeepRight)(persistance[moduleName], {
112
- entities: [...entities],
113
- subscribers: [...subscribers],
114
- migrations: ormconfigMigrations,
115
- cli: {
122
+ yield fs.writeFile(path.join(projectRootPath, `ormconfig-${moduleName}.json`), JSON.stringify((0, ramda_1.mergeDeepRight)(persistance[moduleName], Object.assign({ cli: {
116
123
  migrationsDir: migrationsPath
117
- }
118
- })));
119
- const moduleConfig = persistance[moduleName];
124
+ }, entities: [...entities], migrations: ormconfigMigrations, name: moduleConfig.connectionName, synchronize: moduleConfig.type === configProvider_definitions_1.RDBType.Aurora ? true : false, subscribers: [...subscribers], type: moduleConfig.type === configProvider_definitions_1.RDBType.Aurora ? configProvider_definitions_1.RDBType.MySQL : moduleConfig.type }, (moduleConfig.typeormExtraOptions || {})))));
120
125
  const entitiesPathInProject = path.join(modulePathInProject, entitiesPathInModule);
121
126
  yield fs.writeFile(path.join(projectRootPath, `datasource-${moduleName}.ts`), "import { loadDynamicModules } from '@node-c/core';\n" +
122
127
  '\n' +
@@ -132,11 +137,12 @@ let ConfigProviderService = class ConfigProviderService {
132
137
  ` host: '${moduleConfig.host}',\n` +
133
138
  ' logging: false,\n' +
134
139
  ` migrations: [${ormconfigMigrations.map(item => `'${item.replace(projectRootPath.replace(/\/$/, ''), '.')}'`).join(', ')}],\n` +
140
+ ` name: '${moduleConfig.connectionName}',\n` +
135
141
  ` password: '${moduleConfig.password}',\n` +
136
142
  ` port: ${moduleConfig.port},\n` +
137
143
  ' subscribers: [],\n' +
138
- ' synchronize: false,\n' +
139
- ` type: '${moduleConfig.type}',\n` +
144
+ ` synchronize: ${moduleConfig.type === configProvider_definitions_1.RDBType.Aurora ? true : false},\n` +
145
+ ` type: '${moduleConfig.type === configProvider_definitions_1.RDBType.Aurora ? configProvider_definitions_1.RDBType.MySQL : moduleConfig.type}',\n` +
140
146
  ` username: '${moduleConfig.user}'\n` +
141
147
  '});\n');
142
148
  });
@@ -187,7 +193,7 @@ let ConfigProviderService = class ConfigProviderService {
187
193
  for (const fieldName in moduleFieldsForType) {
188
194
  const configKey = `${categoryConfigKey}.${moduleConfigKey}.${moduleFieldsForType[fieldName]}`;
189
195
  const envKey = `${moduleCategory}_${moduleName}_${fieldName}`;
190
- (0, general_tools_1.setNested)(config, configKey, envVars[envKey]);
196
+ lodash_1.default.set(config, configKey, envVars[envKey]);
191
197
  }
192
198
  });
193
199
  }
@@ -196,10 +202,10 @@ let ConfigProviderService = class ConfigProviderService {
196
202
  });
197
203
  }
198
204
  };
199
- ConfigProviderService = __decorate([
205
+ exports.ConfigProviderService = ConfigProviderService;
206
+ exports.ConfigProviderService = ConfigProviderService = __decorate([
200
207
  (0, common_1.Injectable)(),
201
208
  __param(0, (0, common_1.Inject)(definitions_1.Constants.CONFIG)),
202
209
  __metadata("design:paramtypes", [Object])
203
210
  ], ConfigProviderService);
204
- exports.ConfigProviderService = ConfigProviderService;
205
211
  //# 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,3 +4,6 @@ export interface GenericObject<Values = unknown> {
4
4
  export declare class GenericObjectClass<Values = unknown> implements GenericObject<Values> {
5
5
  [fieldName: string]: Values;
6
6
  }
7
+ export type GenericObjectType<Type> = {
8
+ new (): Type;
9
+ } | ((..._args: unknown[]) => unknown);
@@ -3,9 +3,12 @@ import { GenericObject } from '../definitions';
3
3
  export type ProviderWithInjectionToken = Provider & {
4
4
  injectionToken?: string;
5
5
  };
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;
6
+ export declare const loadDynamicModules: (folderData: GenericObject<unknown>, options?: {
7
+ moduleRegisterOptions?: unknown;
8
+ registerOptionsPerModule?: GenericObject;
9
+ }) => {
10
+ controllers?: Provider[];
11
+ entities?: unknown[];
12
+ modules?: DynamicModule[];
13
+ services?: Provider[];
11
14
  };
@@ -1,7 +1,8 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.loadDynamicModules = void 0;
4
- const loadDynamicModules = (folderData) => {
4
+ const loadDynamicModules = (folderData, options) => {
5
+ const { moduleRegisterOptions, registerOptionsPerModule } = options || {};
5
6
  const controllers = [];
6
7
  const entities = [];
7
8
  const modules = [];
@@ -27,7 +28,10 @@ const loadDynamicModules = (folderData) => {
27
28
  continue;
28
29
  }
29
30
  if (key.match(/[mM]odule$/)) {
30
- modules.push(folderData[actualKey]);
31
+ const moduleClass = folderData[actualKey];
32
+ modules.push(moduleClass.register
33
+ ? moduleClass.register((registerOptionsPerModule === null || registerOptionsPerModule === void 0 ? void 0 : registerOptionsPerModule[key]) || moduleRegisterOptions)
34
+ : moduleClass);
31
35
  continue;
32
36
  }
33
37
  if (key.match(/[sS]ervice$/)) {
@@ -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,EAClC,OAAuF,EACe,EAAE;IACxG,MAAM,EAAE,qBAAqB,EAAE,wBAAwB,EAAE,GAAG,OAAO,IAAI,EAAE,CAAC;IAC1E,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,MAAM,WAAW,GAAG,UAAU,CAAC,SAAS,CAEvC,CAAC;YACF,OAAO,CAAC,IAAI,CACV,WAAW,CAAC,QAAQ;gBAClB,CAAC,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAA,wBAAwB,aAAxB,wBAAwB,uBAAxB,wBAAwB,CAAG,GAAG,CAAC,KAAI,qBAAqB,CAAC;gBAChF,CAAC,CAAC,WAAW,CAChB,CAAC;YACF,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;AA5DW,QAAA,kBAAkB,sBA4D7B"}
@@ -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, DomainBulkCreatePrivateOptions, DomainBulkCreateResult, DomainCreateOptions, DomainCreatePrivateOptions, DomainCreateResult, DomainDeleteOptions, DomainDeletePrivateOptions, DomainDeleteResult, DomainEntityServiceDefaultData, DomainFindOneOptions, DomainFindOnePrivateOptions, DomainFindOneResult, DomainFindOptions, DomainFindPrivateOptions, DomainFindResult, DomainPersistanceEntityServiceType, DomainRunMethodInAdditionalServicesOptions, DomainUpdateOptions, DomainUpdatePrivateOptions, 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?: DomainBulkCreatePrivateOptions): Promise<DomainBulkCreateResult<Entity>>;
10
+ create(data: Data['Create'], options?: DomainCreateOptions, privateOptions?: DomainCreatePrivateOptions): Promise<DomainCreateResult<Entity>>;
11
+ delete(options: DomainDeleteOptions, privateOptions?: DomainDeletePrivateOptions): Promise<DomainDeleteResult<Entity>>;
12
+ find(options: DomainFindOptions, privateOptions?: DomainFindOnePrivateOptions): Promise<DomainFindResult<Entity>>;
13
+ findOne(options: DomainFindOneOptions, privateOptions?: DomainFindPrivateOptions): 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?: DomainUpdatePrivateOptions): Promise<DomainUpdateResult<Entity>>;
27
17
  }
@@ -1,30 +1,71 @@
1
1
  import { GenericObject } from '../../common/definitions';
2
- import { PersistanceDeleteOptions, PersistanceDeleteResult, PersistanceFindOneOptions, PersistanceFindOptions, PersistanceFindResults, PersistanceUpdateOptions, PersistanceUpdateResult } from '../../persistance/entityService';
3
- export type DomainBaseOptions<Options> = Options & {
4
- optionsOverridesByService?: GenericObject<Partial<Options>>;
2
+ import { PersistanceBulkCreatePrivateOptions, PersistanceCreatePrivateOptions, PersistanceDeleteOptions, PersistanceDeletePrivateOptions, PersistanceDeleteResult, PersistanceFindOneOptions, PersistanceFindOnePrivateOptions, PersistanceFindOptions, PersistanceFindPrivateOptions, PersistanceFindResults, PersistanceUpdateOptions, PersistanceUpdatePrivateOptions, PersistanceUpdateResult } from '../../persistance/entityService';
3
+ export interface DomainBaseAdditionalServiceOptionsOverrides {
4
+ filterByFirstServiceResultFields?: GenericObject<string>;
5
+ runOnNoFirstServiceResultOnly?: boolean | string;
6
+ }
7
+ export type DomainBaseOptions<Options> = Options & DomainBaseOptionsForAdditionalServices<Options>;
8
+ export interface DomainBaseOptionsForAdditionalServices<Options> {
9
+ optionsOverridesByService?: GenericObject<Partial<Options> & DomainBaseAdditionalServiceOptionsOverrides>;
5
10
  persistanceServices?: DomainPersistanceServicesKey[];
6
- };
11
+ }
12
+ export type DomainBaseOptionsForAdditionalServicesFull<Options extends object | undefined = undefined, SaveAdditionalResultsOptions extends object | undefined = undefined> = DomainBaseOptionsForAdditionalServices<Options> & DomainBaseOptionsWithSearchPersistance<SaveAdditionalResultsOptions>;
13
+ export interface DomainBaseOptionsWithSearchPersistance<SaveAdditionalResultsOptions extends object | undefined = undefined> {
14
+ saveAdditionalResultsInFirstService?: {
15
+ saveOptions?: SaveAdditionalResultsOptions;
16
+ serviceName: string;
17
+ useResultsForFirstService?: boolean;
18
+ };
19
+ }
7
20
  export interface DomainBaseResult<Result> {
8
21
  result: Result;
9
22
  resultsByService?: GenericObject<Result>;
10
23
  }
24
+ export type DomainBulkCreatePrivateOptions = PersistanceBulkCreatePrivateOptions;
11
25
  export type DomainBulkCreateData<Entity> = Partial<Entity>[];
12
- export type DomainBulkCreateOptions = Omit<DomainBaseOptions<object>, 'optionsOverridesByService'>;
26
+ export type DomainBulkCreateOptions<Options = object> = DomainBaseOptions<Options>;
13
27
  export type DomainBulkCreateResult<Entity> = DomainBaseResult<Entity[]>;
14
28
  export type DomainCreateData<Entity> = Partial<Entity>;
15
- export type DomainCreateOptions = Omit<DomainBaseOptions<object>, 'optionsOverridesByService'>;
29
+ export type DomainCreateOptions<Options = object> = DomainBaseOptions<Options>;
30
+ export type DomainCreatePrivateOptions = PersistanceCreatePrivateOptions;
16
31
  export type DomainCreateResult<Entity> = DomainBaseResult<Entity>;
17
- export type DomainDeleteOptions = DomainBaseOptions<PersistanceDeleteOptions>;
18
- export type DomainDeleteResult = DomainBaseResult<PersistanceDeleteResult>;
19
- export type DomainFindOneOptions = DomainBaseOptions<PersistanceFindOneOptions>;
32
+ export type DomainDeleteOptions<Options = object> = Options & DomainBaseOptions<PersistanceDeleteOptions>;
33
+ export type DomainDeletePrivateOptions = PersistanceDeletePrivateOptions;
34
+ export type DomainDeleteResult<Entity> = DomainBaseResult<PersistanceDeleteResult<Entity>>;
35
+ export interface DomainEntityServiceDefaultData<Entity> {
36
+ BulkCreate: DomainBulkCreateData<Entity>;
37
+ Create: DomainCreateData<Entity>;
38
+ Update: DomainUpdateData<Entity>;
39
+ }
40
+ export type DomainFindOneOptions<Options = object> = Options & DomainBaseOptions<PersistanceFindOneOptions> & DomainBaseOptionsWithSearchPersistance<DomainCreateOptions>;
41
+ export type DomainFindOnePrivateOptions = PersistanceFindOnePrivateOptions;
20
42
  export type DomainFindOneResult<Entity> = DomainBaseResult<Entity | null>;
21
- export type DomainFindOptions = DomainBaseOptions<PersistanceFindOptions>;
43
+ export type DomainFindOptions<Options = object> = Options & DomainBaseOptions<PersistanceFindOptions> & DomainBaseOptionsWithSearchPersistance<DomainBulkCreateOptions>;
44
+ export type DomainFindPrivateOptions = PersistanceFindPrivateOptions;
22
45
  export type DomainFindResult<Entity> = DomainBaseResult<PersistanceFindResults<Entity>>;
46
+ export declare enum DomainMethod {
47
+ BulkCreate = "bulkCreate",
48
+ Create = "create",
49
+ Delete = "delete",
50
+ Find = "find",
51
+ FindOne = "findOne",
52
+ Update = "update"
53
+ }
54
+ export declare const DOMAIN_ENTITY_SERVICE_DEFAULT_METHODS: DomainMethod[];
23
55
  export declare enum DomainPersistanceEntityServiceType {
24
56
  All = "all",
25
57
  Main = "main"
26
58
  }
27
59
  export type DomainPersistanceServicesKey = DomainPersistanceEntityServiceType | string;
60
+ export type DomainRunMethodInAdditionalServicesOptions<Options> = {
61
+ firstServiceResult?: unknown;
62
+ hasFirstServiceResult: boolean;
63
+ methodArgs?: unknown[];
64
+ methodName: string;
65
+ optionsArgIndex?: number;
66
+ optionsOverridesByService?: GenericObject<Partial<Options> & DomainBaseAdditionalServiceOptionsOverrides>;
67
+ };
28
68
  export type DomainUpdateData<Entity> = Partial<Entity>;
29
- export type DomainUpdateOptions = DomainBaseOptions<PersistanceUpdateOptions>;
69
+ export type DomainUpdateOptions<Options = object> = Options & DomainBaseOptions<PersistanceUpdateOptions>;
70
+ export type DomainUpdatePrivateOptions = PersistanceUpdatePrivateOptions;
30
71
  export type DomainUpdateResult<Entity> = DomainBaseResult<PersistanceUpdateResult<Entity>>;