@node-c/core 1.0.0-alpha2 → 1.0.0-alpha21
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/coverage/clover.xml +173 -112
- package/coverage/coverage-final.json +2 -2
- package/coverage/index.html +18 -18
- package/dist/app.js +1 -1
- package/dist/app.js.map +1 -1
- package/dist/common/configProvider/configProvider.definitions.d.ts +62 -15
- package/dist/common/configProvider/configProvider.definitions.js +21 -6
- package/dist/common/configProvider/configProvider.definitions.js.map +1 -1
- package/dist/common/configProvider/configProvider.module.js +2 -2
- package/dist/common/configProvider/configProvider.module.js.map +1 -1
- package/dist/common/configProvider/configProvider.service.js +29 -23
- package/dist/common/configProvider/configProvider.service.js.map +1 -1
- package/dist/common/definitions/common.constants.d.ts +11 -1
- package/dist/common/definitions/common.constants.js +13 -2
- package/dist/common/definitions/common.constants.js.map +1 -1
- package/dist/common/definitions/common.definitions.d.ts +3 -0
- package/dist/common/utils/utils.loadDynamicModules.d.ts +8 -5
- package/dist/common/utils/utils.loadDynamicModules.js +6 -2
- package/dist/common/utils/utils.loadDynamicModules.js.map +1 -1
- package/dist/domain/entityService/domain.entity.service.d.ts +11 -21
- package/dist/domain/entityService/domain.entity.service.definitions.d.ts +52 -11
- package/dist/domain/entityService/domain.entity.service.definitions.js +19 -2
- package/dist/domain/entityService/domain.entity.service.definitions.js.map +1 -1
- package/dist/domain/entityService/domain.entity.service.js +170 -41
- package/dist/domain/entityService/domain.entity.service.js.map +1 -1
- package/dist/persistance/entityService/persistance.entity.service.d.ts +16 -10
- package/dist/persistance/entityService/persistance.entity.service.definitions.d.ts +50 -3
- package/dist/persistance/entityService/persistance.entity.service.definitions.js +12 -2
- package/dist/persistance/entityService/persistance.entity.service.definitions.js.map +1 -1
- package/dist/persistance/entityService/persistance.entity.service.js +42 -10
- package/dist/persistance/entityService/persistance.entity.service.js.map +1 -1
- package/package.json +3 -2
|
@@ -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
|
|
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":";;;
|
|
1
|
+
{"version":3,"file":"domain.entity.service.definitions.js","sourceRoot":"","sources":["../../../src/domain/entityService/domain.entity.service.definitions.ts"],"names":[],"mappings":";;;AA+FA,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,152 @@ 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"));
|
|
28
|
+
const ramda_1 = require("ramda");
|
|
24
29
|
const domain_entity_service_definitions_1 = require("./domain.entity.service.definitions");
|
|
25
30
|
const definitions_1 = require("../../common/definitions");
|
|
26
31
|
class DomainEntityService {
|
|
27
|
-
constructor(persistanceEntityService, additionalPersistanceEntityServices) {
|
|
32
|
+
constructor(persistanceEntityService, defaultMethods = domain_entity_service_definitions_1.DOMAIN_ENTITY_SERVICE_DEFAULT_METHODS, additionalPersistanceEntityServices) {
|
|
28
33
|
this.persistanceEntityService = persistanceEntityService;
|
|
34
|
+
this.defaultMethods = defaultMethods;
|
|
29
35
|
this.additionalPersistanceEntityServices = additionalPersistanceEntityServices;
|
|
30
36
|
}
|
|
31
|
-
bulkCreate(data, options) {
|
|
37
|
+
bulkCreate(data, options, privateOptions) {
|
|
32
38
|
return __awaiter(this, void 0, void 0, function* () {
|
|
33
|
-
|
|
39
|
+
var _a;
|
|
40
|
+
if (!((_a = this.defaultMethods) === null || _a === void 0 ? void 0 : _a.includes(domain_entity_service_definitions_1.DomainMethod.BulkCreate))) {
|
|
41
|
+
throw new definitions_1.ApplicationError(`Method bulkCreate not implemented for class ${typeof this}.`);
|
|
42
|
+
}
|
|
43
|
+
const { optionsOverridesByService, persistanceServices = [domain_entity_service_definitions_1.DomainPersistanceEntityServiceType.Main] } = options || {};
|
|
34
44
|
const [firstServiceName, ...otherServiceNames] = persistanceServices;
|
|
35
|
-
const result = yield this.getPersistanceService(firstServiceName).bulkCreate(data);
|
|
45
|
+
const result = yield this.getPersistanceService(firstServiceName).bulkCreate(data, privateOptions);
|
|
36
46
|
return {
|
|
37
47
|
result,
|
|
38
48
|
resultsByService: yield this.runMethodInAdditionalServices(otherServiceNames || [], {
|
|
39
|
-
|
|
40
|
-
|
|
49
|
+
firstServiceResult: result,
|
|
50
|
+
hasFirstServiceResult: result.length > 0,
|
|
51
|
+
methodArgs: [result, privateOptions],
|
|
52
|
+
methodName: 'bulkCreate',
|
|
53
|
+
optionsArgIndex: 1,
|
|
54
|
+
optionsOverridesByService
|
|
41
55
|
})
|
|
42
56
|
};
|
|
43
57
|
});
|
|
44
58
|
}
|
|
45
|
-
create(data, options) {
|
|
59
|
+
create(data, options, privateOptions) {
|
|
46
60
|
return __awaiter(this, void 0, void 0, function* () {
|
|
47
|
-
|
|
61
|
+
var _a;
|
|
62
|
+
if (!((_a = this.defaultMethods) === null || _a === void 0 ? void 0 : _a.includes(domain_entity_service_definitions_1.DomainMethod.Create))) {
|
|
63
|
+
throw new definitions_1.ApplicationError(`Method create not implemented for class ${typeof this}.`);
|
|
64
|
+
}
|
|
65
|
+
const { optionsOverridesByService, persistanceServices = [domain_entity_service_definitions_1.DomainPersistanceEntityServiceType.Main] } = options || {};
|
|
48
66
|
const [firstServiceName, ...otherServiceNames] = persistanceServices;
|
|
49
|
-
const result = yield this.getPersistanceService(firstServiceName).create(data);
|
|
67
|
+
const result = yield this.getPersistanceService(firstServiceName).create(data, privateOptions);
|
|
50
68
|
return {
|
|
51
69
|
result,
|
|
52
70
|
resultsByService: yield this.runMethodInAdditionalServices(otherServiceNames || [], {
|
|
53
|
-
|
|
54
|
-
|
|
71
|
+
firstServiceResult: result,
|
|
72
|
+
hasFirstServiceResult: typeof result !== 'undefined' && result !== null,
|
|
73
|
+
methodArgs: [result, privateOptions],
|
|
74
|
+
methodName: 'create',
|
|
75
|
+
optionsArgIndex: 1,
|
|
76
|
+
optionsOverridesByService
|
|
55
77
|
})
|
|
56
78
|
};
|
|
57
79
|
});
|
|
58
80
|
}
|
|
59
|
-
delete(options) {
|
|
81
|
+
delete(options, privateOptions) {
|
|
60
82
|
return __awaiter(this, void 0, void 0, function* () {
|
|
61
|
-
|
|
83
|
+
var _a;
|
|
84
|
+
if (!((_a = this.defaultMethods) === null || _a === void 0 ? void 0 : _a.includes(domain_entity_service_definitions_1.DomainMethod.Delete))) {
|
|
85
|
+
throw new definitions_1.ApplicationError(`Method delete not implemented for class ${typeof this}.`);
|
|
86
|
+
}
|
|
87
|
+
const _b = options || {}, { optionsOverridesByService, persistanceServices = [domain_entity_service_definitions_1.DomainPersistanceEntityServiceType.Main] } = _b, otherOptions = __rest(_b, ["optionsOverridesByService", "persistanceServices"]);
|
|
62
88
|
const [firstServiceName, ...otherServiceNames] = persistanceServices;
|
|
63
|
-
const result = yield this.getPersistanceService(firstServiceName).delete(otherOptions);
|
|
89
|
+
const result = yield this.getPersistanceService(firstServiceName).delete(otherOptions, privateOptions);
|
|
64
90
|
return {
|
|
65
91
|
result,
|
|
66
92
|
resultsByService: yield this.runMethodInAdditionalServices(otherServiceNames || [], {
|
|
67
|
-
|
|
68
|
-
|
|
93
|
+
firstServiceResult: result,
|
|
94
|
+
hasFirstServiceResult: !!result.count,
|
|
95
|
+
methodArgs: [otherOptions, privateOptions],
|
|
96
|
+
methodName: 'delete',
|
|
97
|
+
optionsArgIndex: 0,
|
|
98
|
+
optionsOverridesByService
|
|
69
99
|
})
|
|
70
100
|
};
|
|
71
101
|
});
|
|
72
102
|
}
|
|
73
|
-
find(options) {
|
|
103
|
+
find(options, privateOptions) {
|
|
74
104
|
return __awaiter(this, void 0, void 0, function* () {
|
|
75
|
-
|
|
105
|
+
var _a, _b;
|
|
106
|
+
if (!((_a = this.defaultMethods) === null || _a === void 0 ? void 0 : _a.includes(domain_entity_service_definitions_1.DomainMethod.Find))) {
|
|
107
|
+
throw new definitions_1.ApplicationError(`Method find not implemented for class ${typeof this}.`);
|
|
108
|
+
}
|
|
109
|
+
const _c = options || {}, { optionsOverridesByService, persistanceServices = [domain_entity_service_definitions_1.DomainPersistanceEntityServiceType.Main], saveAdditionalResultsInFirstService } = _c, otherOptions = __rest(_c, ["optionsOverridesByService", "persistanceServices", "saveAdditionalResultsInFirstService"]);
|
|
76
110
|
const [firstServiceName, ...otherServiceNames] = persistanceServices;
|
|
77
|
-
|
|
111
|
+
let result = yield this.getPersistanceService(firstServiceName).find(otherOptions, privateOptions);
|
|
112
|
+
const hasFirstServiceResult = result.items.length > 0;
|
|
113
|
+
const resultsByService = yield this.runMethodInAdditionalServices(otherServiceNames || [], {
|
|
114
|
+
firstServiceResult: result,
|
|
115
|
+
hasFirstServiceResult,
|
|
116
|
+
methodArgs: [otherOptions, privateOptions],
|
|
117
|
+
methodName: 'find',
|
|
118
|
+
optionsArgIndex: 0,
|
|
119
|
+
optionsOverridesByService
|
|
120
|
+
});
|
|
121
|
+
if (saveAdditionalResultsInFirstService && resultsByService) {
|
|
122
|
+
const { saveOptions, serviceName, useResultsForFirstService } = saveAdditionalResultsInFirstService;
|
|
123
|
+
const dataFromAdditionalService = resultsByService[serviceName];
|
|
124
|
+
if ((_b = dataFromAdditionalService === null || dataFromAdditionalService === void 0 ? void 0 : dataFromAdditionalService.items) === null || _b === void 0 ? void 0 : _b.length) {
|
|
125
|
+
yield this.persistanceEntityService.bulkCreate(dataFromAdditionalService.items, saveOptions);
|
|
126
|
+
if (useResultsForFirstService && !hasFirstServiceResult) {
|
|
127
|
+
result = dataFromAdditionalService;
|
|
128
|
+
}
|
|
129
|
+
}
|
|
130
|
+
}
|
|
78
131
|
return {
|
|
79
132
|
result,
|
|
80
|
-
resultsByService
|
|
81
|
-
methodArgs: [otherOptions],
|
|
82
|
-
methodName: 'find'
|
|
83
|
-
})
|
|
133
|
+
resultsByService
|
|
84
134
|
};
|
|
85
135
|
});
|
|
86
136
|
}
|
|
87
|
-
findOne(options) {
|
|
137
|
+
findOne(options, privateOptions) {
|
|
88
138
|
return __awaiter(this, void 0, void 0, function* () {
|
|
89
|
-
|
|
139
|
+
var _a;
|
|
140
|
+
if (!((_a = this.defaultMethods) === null || _a === void 0 ? void 0 : _a.includes(domain_entity_service_definitions_1.DomainMethod.FindOne))) {
|
|
141
|
+
throw new definitions_1.ApplicationError(`Method findOne not implemented for class ${typeof this}.`);
|
|
142
|
+
}
|
|
143
|
+
const _b = options || {}, { optionsOverridesByService, persistanceServices = [domain_entity_service_definitions_1.DomainPersistanceEntityServiceType.Main], saveAdditionalResultsInFirstService } = _b, otherOptions = __rest(_b, ["optionsOverridesByService", "persistanceServices", "saveAdditionalResultsInFirstService"]);
|
|
90
144
|
const [firstServiceName, ...otherServiceNames] = persistanceServices;
|
|
91
|
-
|
|
145
|
+
let result = yield this.getPersistanceService(firstServiceName).findOne(otherOptions, privateOptions);
|
|
146
|
+
const hasFirstServiceResult = typeof result !== 'undefined' && result !== null;
|
|
147
|
+
const resultsByService = yield this.runMethodInAdditionalServices(otherServiceNames || [], {
|
|
148
|
+
firstServiceResult: result,
|
|
149
|
+
hasFirstServiceResult,
|
|
150
|
+
methodArgs: [otherOptions, privateOptions],
|
|
151
|
+
methodName: 'findOne',
|
|
152
|
+
optionsArgIndex: 0,
|
|
153
|
+
optionsOverridesByService
|
|
154
|
+
});
|
|
155
|
+
if (saveAdditionalResultsInFirstService && resultsByService) {
|
|
156
|
+
const { saveOptions, serviceName, useResultsForFirstService } = saveAdditionalResultsInFirstService;
|
|
157
|
+
const dataFromAdditionalService = resultsByService[serviceName];
|
|
158
|
+
if (dataFromAdditionalService) {
|
|
159
|
+
yield this.persistanceEntityService.create(dataFromAdditionalService, saveOptions);
|
|
160
|
+
if (useResultsForFirstService && !hasFirstServiceResult) {
|
|
161
|
+
result = dataFromAdditionalService;
|
|
162
|
+
}
|
|
163
|
+
}
|
|
164
|
+
}
|
|
92
165
|
return {
|
|
93
166
|
result,
|
|
94
|
-
resultsByService
|
|
95
|
-
methodArgs: [otherOptions],
|
|
96
|
-
methodName: 'findOne'
|
|
97
|
-
})
|
|
167
|
+
resultsByService
|
|
98
168
|
};
|
|
99
169
|
});
|
|
100
170
|
}
|
|
@@ -105,7 +175,7 @@ class DomainEntityService {
|
|
|
105
175
|
}
|
|
106
176
|
const service = (_a = this.additionalPersistanceEntityServices) === null || _a === void 0 ? void 0 : _a[serviceName];
|
|
107
177
|
if (!service) {
|
|
108
|
-
throw new definitions_1.ApplicationError(`PersistanceEntityService ${serviceName} does not exist for DomainEntityService ${this.persistanceEntityService.getEntityName()}.`);
|
|
178
|
+
throw new definitions_1.ApplicationError(`PersistanceEntityService ${serviceName} does not exist for DomainEntityService ${this.persistanceEntityService.getEntityName(true) || '(no entity name)'}.`);
|
|
109
179
|
}
|
|
110
180
|
return service;
|
|
111
181
|
}
|
|
@@ -114,32 +184,91 @@ class DomainEntityService {
|
|
|
114
184
|
if (!serviceNames.length) {
|
|
115
185
|
return undefined;
|
|
116
186
|
}
|
|
117
|
-
const { methodArgs = [], methodName } = options;
|
|
187
|
+
const { firstServiceResult, hasFirstServiceResult, methodArgs = [], methodName, optionsArgIndex, optionsOverridesByService = {} } = options;
|
|
118
188
|
const returnDataByService = {};
|
|
119
189
|
if (!this.additionalPersistanceEntityServices) {
|
|
120
|
-
throw new definitions_1.ApplicationError(`No additional PersistanceEntityServices exist for DomainEntityService ${this.persistanceEntityService.getEntityName()}.`);
|
|
190
|
+
throw new definitions_1.ApplicationError(`No additional PersistanceEntityServices exist for DomainEntityService ${this.persistanceEntityService.getEntityName(true) || '(no entity name)'}.`);
|
|
191
|
+
}
|
|
192
|
+
if (Object.keys(optionsOverridesByService).length &&
|
|
193
|
+
(typeof optionsArgIndex === 'undefined' || optionsArgIndex < 0 || optionsArgIndex > methodArgs.length - 1)) {
|
|
194
|
+
throw new definitions_1.ApplicationError(`Invalid optionsArgIndex value ${optionsArgIndex} provided for DomainEntityService ${this.persistanceEntityService.getEntityName(true) || '(no entity name)'}.}.`);
|
|
121
195
|
}
|
|
122
196
|
for (const i in serviceNames) {
|
|
123
197
|
const serviceName = serviceNames[i];
|
|
124
|
-
const service = this.
|
|
198
|
+
const service = this.getPersistanceService(serviceName);
|
|
125
199
|
if (!service) {
|
|
126
|
-
throw new definitions_1.ApplicationError(`PersistanceEntityService ${serviceName} does not exist for DomainEntityService ${this.persistanceEntityService.getEntityName()}.`);
|
|
200
|
+
throw new definitions_1.ApplicationError(`PersistanceEntityService ${serviceName} does not exist for DomainEntityService ${this.persistanceEntityService.getEntityName(true) || '(no entity name)'}.`);
|
|
127
201
|
}
|
|
128
|
-
|
|
202
|
+
const serviceMethodOptionsOverrides = optionsOverridesByService[serviceName] || {};
|
|
203
|
+
const { filterByFirstServiceResultFields, runOnNoFirstServiceResultOnly = true } = serviceMethodOptionsOverrides, actualMethodOptionsOverrides = __rest(serviceMethodOptionsOverrides, ["filterByFirstServiceResultFields", "runOnNoFirstServiceResultOnly"]);
|
|
204
|
+
if ((runOnNoFirstServiceResultOnly === true || runOnNoFirstServiceResultOnly === 'true') &&
|
|
205
|
+
hasFirstServiceResult) {
|
|
206
|
+
continue;
|
|
207
|
+
}
|
|
208
|
+
const serviceMethodArgs = immutable_1.default.fromJS(methodArgs).toJS();
|
|
209
|
+
if (typeof serviceMethodArgs[optionsArgIndex] === 'undefined') {
|
|
210
|
+
if (optionsArgIndex > serviceMethodArgs.length - 1) {
|
|
211
|
+
serviceMethodArgs.push(actualMethodOptionsOverrides);
|
|
212
|
+
}
|
|
213
|
+
else {
|
|
214
|
+
serviceMethodArgs[optionsArgIndex] = actualMethodOptionsOverrides;
|
|
215
|
+
}
|
|
216
|
+
}
|
|
217
|
+
else {
|
|
218
|
+
serviceMethodArgs[optionsArgIndex] = Object.assign(Object.assign({}, serviceMethodArgs[optionsArgIndex]), actualMethodOptionsOverrides);
|
|
219
|
+
}
|
|
220
|
+
if (filterByFirstServiceResultFields && Object.keys(filterByFirstServiceResultFields).length) {
|
|
221
|
+
if (!hasFirstServiceResult) {
|
|
222
|
+
continue;
|
|
223
|
+
}
|
|
224
|
+
const filters = {};
|
|
225
|
+
const resultItems = firstServiceResult.items || [
|
|
226
|
+
firstServiceResult
|
|
227
|
+
];
|
|
228
|
+
resultItems.forEach(resultItem => {
|
|
229
|
+
if (!resultItem) {
|
|
230
|
+
return;
|
|
231
|
+
}
|
|
232
|
+
for (const sourceFieldName in filterByFirstServiceResultFields) {
|
|
233
|
+
const fieldValue = resultItem[sourceFieldName];
|
|
234
|
+
const targetFieldName = filterByFirstServiceResultFields[sourceFieldName];
|
|
235
|
+
if (typeof fieldValue === 'undefined') {
|
|
236
|
+
return;
|
|
237
|
+
}
|
|
238
|
+
if (!filters[targetFieldName]) {
|
|
239
|
+
filters[targetFieldName] = [];
|
|
240
|
+
}
|
|
241
|
+
filters[targetFieldName].push(fieldValue);
|
|
242
|
+
}
|
|
243
|
+
});
|
|
244
|
+
if (Object.keys(filters).length) {
|
|
245
|
+
const serviceMethodOptions = serviceMethodArgs[optionsArgIndex];
|
|
246
|
+
serviceMethodArgs[optionsArgIndex] = Object.assign(Object.assign({}, serviceMethodOptions), { filters: Object.assign(Object.assign({}, (0, ramda_1.omit)(['page', 'perPage'], serviceMethodOptions.filters || {})), filters), findAll: true });
|
|
247
|
+
}
|
|
248
|
+
}
|
|
249
|
+
returnDataByService[serviceName] = (yield service[methodName].apply(service, serviceMethodArgs));
|
|
129
250
|
}
|
|
130
251
|
return returnDataByService;
|
|
131
252
|
});
|
|
132
253
|
}
|
|
133
|
-
update(data, options) {
|
|
254
|
+
update(data, options, privateOptions) {
|
|
134
255
|
return __awaiter(this, void 0, void 0, function* () {
|
|
135
|
-
|
|
256
|
+
var _a;
|
|
257
|
+
if (!((_a = this.defaultMethods) === null || _a === void 0 ? void 0 : _a.includes(domain_entity_service_definitions_1.DomainMethod.Update))) {
|
|
258
|
+
throw new definitions_1.ApplicationError(`Method update not implemented for class ${typeof this}.`);
|
|
259
|
+
}
|
|
260
|
+
const { optionsOverridesByService, persistanceServices = [domain_entity_service_definitions_1.DomainPersistanceEntityServiceType.Main] } = options, otherOptions = __rest(options, ["optionsOverridesByService", "persistanceServices"]);
|
|
136
261
|
const [firstServiceName, ...otherServiceNames] = persistanceServices;
|
|
137
|
-
const result = yield this.getPersistanceService(firstServiceName).update(data, otherOptions);
|
|
262
|
+
const result = yield this.getPersistanceService(firstServiceName).update(data, otherOptions, privateOptions);
|
|
138
263
|
return {
|
|
139
264
|
result,
|
|
140
265
|
resultsByService: yield this.runMethodInAdditionalServices(otherServiceNames || [], {
|
|
141
|
-
|
|
142
|
-
|
|
266
|
+
firstServiceResult: result,
|
|
267
|
+
hasFirstServiceResult: !!result.count,
|
|
268
|
+
methodArgs: [data, otherOptions, privateOptions],
|
|
269
|
+
methodName: 'update',
|
|
270
|
+
optionsArgIndex: 1,
|
|
271
|
+
optionsOverridesByService
|
|
143
272
|
})
|
|
144
273
|
};
|
|
145
274
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"domain.entity.service.js","sourceRoot":"","sources":["../../../src/domain/entityService/domain.entity.service.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"domain.entity.service.js","sourceRoot":"","sources":["../../../src/domain/entityService/domain.entity.service.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,11 +1,17 @@
|
|
|
1
|
-
import { PersistanceDeleteOptions, PersistanceDeleteResult, PersistanceFindOneOptions, PersistanceFindOptions, PersistanceFindResults, PersistanceUpdateOptions, PersistanceUpdateResult } from './persistance.entity.service.definitions';
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
1
|
+
import { PersistanceBulkCreatePrivateOptions, PersistanceCountPrivateOptions, PersistanceCreatePrivateOptions, PersistanceDeleteOptions, PersistanceDeletePrivateOptions, PersistanceDeleteResult, PersistanceFindOneOptions, PersistanceFindOnePrivateOptions, PersistanceFindOptions, PersistanceFindPrivateOptions, PersistanceFindResults, PersistanceUpdateOptions, PersistanceUpdatePrivateOptions, PersistanceUpdateResult, ProcessObjectAllowedFieldsOptions } from './persistance.entity.service.definitions';
|
|
2
|
+
import { AppConfigCommonPersistanceEntityServiceSettings, ConfigProviderService } from '../../common/configProvider';
|
|
3
|
+
export declare abstract class PersistanceEntityService<Entity> {
|
|
4
|
+
protected configProvider: ConfigProviderService;
|
|
5
|
+
protected persistanceModuleName: string;
|
|
6
|
+
protected settings: AppConfigCommonPersistanceEntityServiceSettings;
|
|
7
|
+
constructor(configProvider: ConfigProviderService, persistanceModuleName: string);
|
|
8
|
+
bulkCreate(_data: Partial<Entity>[], _options?: unknown, _privateOptions?: PersistanceBulkCreatePrivateOptions): Promise<Entity[]>;
|
|
9
|
+
count(_options: PersistanceFindOptions, _privateOptions?: PersistanceCountPrivateOptions): Promise<number | undefined>;
|
|
10
|
+
create(_data: Partial<Entity>, _options?: unknown, _privateOptions?: PersistanceCreatePrivateOptions): Promise<Entity>;
|
|
11
|
+
delete(_options: PersistanceDeleteOptions, _privateOptions?: PersistanceDeletePrivateOptions): Promise<PersistanceDeleteResult<Entity>>;
|
|
12
|
+
find(_options: PersistanceFindOptions, _privateOptions?: PersistanceFindPrivateOptions): Promise<PersistanceFindResults<Entity>>;
|
|
13
|
+
findOne(_options: PersistanceFindOneOptions, _privateOptions?: PersistanceFindOnePrivateOptions): Promise<Entity | null>;
|
|
14
|
+
getEntityName(noError?: boolean): string | null;
|
|
15
|
+
protected processObjectAllowedFields<Data = Partial<Entity>>(data: Data | Data[], options: ProcessObjectAllowedFieldsOptions): Promise<Data | Data[]>;
|
|
16
|
+
update(_data: Partial<Entity>, _options: PersistanceUpdateOptions, _privateOptions?: PersistanceUpdatePrivateOptions): Promise<PersistanceUpdateResult<Entity>>;
|
|
11
17
|
}
|
|
@@ -1,44 +1,75 @@
|
|
|
1
1
|
import { GenericObject } from '../../common/definitions';
|
|
2
|
+
export interface PersistanceBulkCreatePrivateOptions extends GenericObject {
|
|
3
|
+
processInputAllowedFieldsEnabled?: boolean;
|
|
4
|
+
}
|
|
2
5
|
export interface PersistanceCountOptions {
|
|
3
6
|
filters?: GenericObject;
|
|
4
7
|
findAll?: boolean;
|
|
5
8
|
withDeleted?: boolean;
|
|
6
9
|
}
|
|
10
|
+
export interface PersistanceCountPrivateOptions extends GenericObject {
|
|
11
|
+
processFiltersAllowedFieldsEnabled?: boolean;
|
|
12
|
+
}
|
|
13
|
+
export interface PersistanceCreatePrivateOptions {
|
|
14
|
+
processInputAllowedFieldsEnabled?: boolean;
|
|
15
|
+
}
|
|
7
16
|
export interface PersistanceDeleteOptions {
|
|
8
17
|
filters: GenericObject;
|
|
18
|
+
returnOriginalItems?: boolean;
|
|
9
19
|
softDelete?: boolean;
|
|
10
20
|
}
|
|
11
|
-
export interface
|
|
21
|
+
export interface PersistanceDeletePrivateOptions extends GenericObject {
|
|
22
|
+
processFiltersAllowedFieldsEnabled?: boolean;
|
|
23
|
+
requirePrimaryKeys?: boolean;
|
|
24
|
+
}
|
|
25
|
+
export interface PersistanceDeleteResult<Item> {
|
|
12
26
|
count?: number;
|
|
27
|
+
originalItems?: Item[];
|
|
13
28
|
}
|
|
14
29
|
export interface PersistanceFindOneOptions {
|
|
15
30
|
filters: GenericObject;
|
|
16
31
|
include?: string[];
|
|
17
|
-
orderBy?: GenericObject<
|
|
32
|
+
orderBy?: GenericObject<PersistanceOrderByDirection>;
|
|
18
33
|
select?: string[];
|
|
19
34
|
selectOperator?: PersistanceSelectOperator;
|
|
20
35
|
withDeleted?: boolean;
|
|
21
36
|
}
|
|
37
|
+
export interface PersistanceFindOnePrivateOptions extends GenericObject {
|
|
38
|
+
processFiltersAllowedFieldsEnabled?: boolean;
|
|
39
|
+
}
|
|
22
40
|
export interface PersistanceFindOptions {
|
|
23
41
|
filters?: GenericObject;
|
|
24
42
|
findAll?: boolean;
|
|
43
|
+
getTotalCount?: boolean;
|
|
25
44
|
include?: string[];
|
|
26
|
-
orderBy?: GenericObject<
|
|
45
|
+
orderBy?: GenericObject<PersistanceOrderByDirection>;
|
|
27
46
|
page?: number;
|
|
28
47
|
perPage?: number;
|
|
29
48
|
select?: string[];
|
|
30
49
|
withDeleted?: boolean;
|
|
31
50
|
}
|
|
51
|
+
export interface PersistanceFindPrivateOptions extends GenericObject {
|
|
52
|
+
processFiltersAllowedFieldsEnabled?: boolean;
|
|
53
|
+
}
|
|
32
54
|
export interface PersistanceFindResults<Item> {
|
|
33
55
|
items: Item[];
|
|
34
56
|
more: boolean;
|
|
35
57
|
page: number;
|
|
36
58
|
perPage: number;
|
|
59
|
+
totalCount?: number;
|
|
37
60
|
}
|
|
38
61
|
export interface PersistanceNumberItem {
|
|
39
62
|
deleted?: boolean;
|
|
40
63
|
value: number;
|
|
41
64
|
}
|
|
65
|
+
export interface PersistanceOrderBy {
|
|
66
|
+
field: string;
|
|
67
|
+
direction: PersistanceOrderByDirection;
|
|
68
|
+
}
|
|
69
|
+
export declare enum PersistanceOrderByDirection {
|
|
70
|
+
Asc = "ASC",
|
|
71
|
+
Desc = "DESC"
|
|
72
|
+
}
|
|
42
73
|
export declare enum PersistanceSelectOperator {
|
|
43
74
|
Between = "$between",
|
|
44
75
|
Contains = "$contains",
|
|
@@ -55,8 +86,24 @@ export declare enum PersistanceSelectOperator {
|
|
|
55
86
|
export interface PersistanceUpdateOptions {
|
|
56
87
|
filters: GenericObject;
|
|
57
88
|
returnData?: boolean;
|
|
89
|
+
returnOriginalItems?: boolean;
|
|
90
|
+
}
|
|
91
|
+
export interface PersistanceUpdatePrivateOptions extends GenericObject {
|
|
92
|
+
processFiltersAllowedFieldsEnabled?: boolean;
|
|
93
|
+
processInputAllowedFieldsEnabled?: boolean;
|
|
94
|
+
requirePrimaryKeys?: boolean;
|
|
58
95
|
}
|
|
59
96
|
export interface PersistanceUpdateResult<Item> {
|
|
60
97
|
count?: number;
|
|
61
98
|
items?: Item[];
|
|
99
|
+
originalItems?: Item[];
|
|
100
|
+
}
|
|
101
|
+
export interface ProcessObjectAllowedFieldsOptions {
|
|
102
|
+
allowedFields: string[];
|
|
103
|
+
isEnabled?: boolean;
|
|
104
|
+
objectType: string;
|
|
105
|
+
}
|
|
106
|
+
export declare enum ProcessObjectAllowedFieldsType {
|
|
107
|
+
Filters = "processFiltersAllowedFieldsEnabled",
|
|
108
|
+
Input = "processInputAllowedFieldsEnabled"
|
|
62
109
|
}
|
|
@@ -1,6 +1,11 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.PersistanceSelectOperator = void 0;
|
|
3
|
+
exports.ProcessObjectAllowedFieldsType = exports.PersistanceSelectOperator = exports.PersistanceOrderByDirection = void 0;
|
|
4
|
+
var PersistanceOrderByDirection;
|
|
5
|
+
(function (PersistanceOrderByDirection) {
|
|
6
|
+
PersistanceOrderByDirection["Asc"] = "ASC";
|
|
7
|
+
PersistanceOrderByDirection["Desc"] = "DESC";
|
|
8
|
+
})(PersistanceOrderByDirection || (exports.PersistanceOrderByDirection = PersistanceOrderByDirection = {}));
|
|
4
9
|
var PersistanceSelectOperator;
|
|
5
10
|
(function (PersistanceSelectOperator) {
|
|
6
11
|
PersistanceSelectOperator["Between"] = "$between";
|
|
@@ -14,5 +19,10 @@ var PersistanceSelectOperator;
|
|
|
14
19
|
PersistanceSelectOperator["ILike"] = "$ilike";
|
|
15
20
|
PersistanceSelectOperator["Not"] = "$not";
|
|
16
21
|
PersistanceSelectOperator["Or"] = "$or";
|
|
17
|
-
})(PersistanceSelectOperator
|
|
22
|
+
})(PersistanceSelectOperator || (exports.PersistanceSelectOperator = PersistanceSelectOperator = {}));
|
|
23
|
+
var ProcessObjectAllowedFieldsType;
|
|
24
|
+
(function (ProcessObjectAllowedFieldsType) {
|
|
25
|
+
ProcessObjectAllowedFieldsType["Filters"] = "processFiltersAllowedFieldsEnabled";
|
|
26
|
+
ProcessObjectAllowedFieldsType["Input"] = "processInputAllowedFieldsEnabled";
|
|
27
|
+
})(ProcessObjectAllowedFieldsType || (exports.ProcessObjectAllowedFieldsType = ProcessObjectAllowedFieldsType = {}));
|
|
18
28
|
//# sourceMappingURL=persistance.entity.service.definitions.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"persistance.entity.service.definitions.js","sourceRoot":"","sources":["../../../src/persistance/entityService/persistance.entity.service.definitions.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"persistance.entity.service.definitions.js","sourceRoot":"","sources":["../../../src/persistance/entityService/persistance.entity.service.definitions.ts"],"names":[],"mappings":";;;AAmFA,IAAY,2BAKX;AALD,WAAY,2BAA2B;IAErC,0CAAW,CAAA;IAEX,4CAAa,CAAA;AACf,CAAC,EALW,2BAA2B,2CAA3B,2BAA2B,QAKtC;AAED,IAAY,yBAuBX;AAvBD,WAAY,yBAAyB;IAEnC,iDAAoB,CAAA;IAEpB,mDAAsB,CAAA;IAEtB,2CAAc,CAAA;IAEd,gDAAmB,CAAA;IAEnB,wDAA2B,CAAA;IAE3B,6CAAgB,CAAA;IAEhB,qDAAwB,CAAA;IAExB,2CAAc,CAAA;IAEd,6CAAgB,CAAA;IAEhB,yCAAY,CAAA;IAEZ,uCAAU,CAAA;AACZ,CAAC,EAvBW,yBAAyB,yCAAzB,yBAAyB,QAuBpC;AA0BD,IAAY,8BAKX;AALD,WAAY,8BAA8B;IAExC,gFAA8C,CAAA;IAE9C,4EAA0C,CAAA;AAC5C,CAAC,EALW,8BAA8B,8CAA9B,8BAA8B,QAKzC"}
|
|
@@ -12,34 +12,66 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
12
12
|
exports.PersistanceEntityService = void 0;
|
|
13
13
|
const definitions_1 = require("../../common/definitions");
|
|
14
14
|
class PersistanceEntityService {
|
|
15
|
-
|
|
15
|
+
constructor(configProvider, persistanceModuleName) {
|
|
16
|
+
this.configProvider = configProvider;
|
|
17
|
+
this.persistanceModuleName = persistanceModuleName;
|
|
18
|
+
const { settingsPerEntity } = configProvider.config.persistance[persistanceModuleName];
|
|
19
|
+
this.settings = settingsPerEntity || {};
|
|
20
|
+
}
|
|
21
|
+
bulkCreate(_data, _options, _privateOptions) {
|
|
16
22
|
return __awaiter(this, void 0, void 0, function* () {
|
|
17
23
|
throw new definitions_1.ApplicationError(`Method bulkCreate not implemented for class ${typeof this}.`);
|
|
18
24
|
});
|
|
19
25
|
}
|
|
20
|
-
|
|
26
|
+
count(_options, _privateOptions) {
|
|
21
27
|
return __awaiter(this, void 0, void 0, function* () {
|
|
22
|
-
throw new definitions_1.ApplicationError(`Method
|
|
28
|
+
throw new definitions_1.ApplicationError(`Method count not implemented for class ${typeof this}.`);
|
|
23
29
|
});
|
|
24
30
|
}
|
|
25
|
-
|
|
31
|
+
create(_data, _options, _privateOptions) {
|
|
26
32
|
return __awaiter(this, void 0, void 0, function* () {
|
|
27
|
-
throw new definitions_1.ApplicationError(`Method
|
|
33
|
+
throw new definitions_1.ApplicationError(`Method create not implemented for class ${typeof this}.`);
|
|
28
34
|
});
|
|
29
35
|
}
|
|
30
|
-
delete(_options) {
|
|
36
|
+
delete(_options, _privateOptions) {
|
|
31
37
|
throw new definitions_1.ApplicationError(`Method delete not implemented for class ${typeof this}.`);
|
|
32
38
|
}
|
|
33
|
-
find(_options) {
|
|
39
|
+
find(_options, _privateOptions) {
|
|
34
40
|
throw new definitions_1.ApplicationError(`Method find not implemented for class ${typeof this}.`);
|
|
35
41
|
}
|
|
36
|
-
findOne(_options) {
|
|
42
|
+
findOne(_options, _privateOptions) {
|
|
37
43
|
throw new definitions_1.ApplicationError(`Method findOne not implemented for class ${typeof this}.`);
|
|
38
44
|
}
|
|
39
|
-
getEntityName() {
|
|
45
|
+
getEntityName(noError) {
|
|
46
|
+
if (noError) {
|
|
47
|
+
return null;
|
|
48
|
+
}
|
|
40
49
|
throw new definitions_1.ApplicationError(`Method getEntityName not implemented for class ${typeof this}.`);
|
|
41
50
|
}
|
|
42
|
-
|
|
51
|
+
processObjectAllowedFields(data, options) {
|
|
52
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
53
|
+
const { settings } = this;
|
|
54
|
+
const { allowedFields, isEnabled, objectType } = options;
|
|
55
|
+
if (isEnabled === false || (typeof isEnabled === 'undefined' && !settings[objectType])) {
|
|
56
|
+
return data;
|
|
57
|
+
}
|
|
58
|
+
const actualData = data instanceof Array ? data : [data];
|
|
59
|
+
const processedData = [];
|
|
60
|
+
actualData.forEach(dataItem => {
|
|
61
|
+
const processedDataItem = {};
|
|
62
|
+
allowedFields.forEach(fieldName => {
|
|
63
|
+
const typedFieldName = fieldName;
|
|
64
|
+
const value = dataItem[typedFieldName];
|
|
65
|
+
if (typeof value !== 'undefined') {
|
|
66
|
+
processedDataItem[typedFieldName] = value;
|
|
67
|
+
}
|
|
68
|
+
});
|
|
69
|
+
processedData.push(processedDataItem);
|
|
70
|
+
});
|
|
71
|
+
return processedData.length === 1 ? processedData[0] : processedData;
|
|
72
|
+
});
|
|
73
|
+
}
|
|
74
|
+
update(_data, _options, _privateOptions) {
|
|
43
75
|
return __awaiter(this, void 0, void 0, function* () {
|
|
44
76
|
throw new definitions_1.ApplicationError(`Method update not implemented for class ${typeof this}.`);
|
|
45
77
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"persistance.entity.service.js","sourceRoot":"","sources":["../../../src/persistance/entityService/persistance.entity.service.ts"],"names":[],"mappings":";;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"persistance.entity.service.js","sourceRoot":"","sources":["../../../src/persistance/entityService/persistance.entity.service.ts"],"names":[],"mappings":"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"}
|