@futdevpro/nts-dynamo 1.3.58 → 1.3.60
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/package.json +19 -19
- package/src/_models/dynamobe-endpoint-control.ts +39 -30
- package/src/_models/fullstack-models/control-models/dynamobe-data-params.ts +19 -0
- package/src/_models/fullstack-models/control-models/dynamobe-data-property-params.ts +2 -2
- package/src/_models/fullstack-models/data-models/custom-data.ts +8 -4
- package/src/_models/fullstack-models/data-models/usage-session.ts +19 -16
- package/src/_models/index.ts +1 -0
- package/src/_modules/test-route/custom-data.service.ts +0 -2
- package/src/_modules/usage-route/usage.service.ts +0 -3
- package/src/_services/dynamobe-app.ts +280 -0
- package/src/_services/dynamobe-auth.service.ts +16 -1
- package/src/_services/dynamobe-controller.service.ts +6 -1
- package/src/_services/dynamobe-data.service.ts +7 -9
- package/src/_services/dynamobe-db-service-collection.service.ts +1 -1
- package/src/_services/dynamobe-db.service.ts +44 -44
- package/src/_services/dynamobe-email-service-collection.service.ts +13 -0
- package/src/_services/dynamobe-email.service.ts +1 -1
- package/src/_services/dynamobe-global-collection.service.ts +57 -0
- package/src/_services/dynamobe-global.service.ts +50 -5
- package/src/_services/dynamobe-routing-module.service.ts +10 -6
- package/src/_services/dynamobe-server.ts +16 -12
- package/src/dynamobe-global.settings.ts +10 -0
- package/src/sync.ffs_db +0 -0
- package/src/version.json +1 -1
- package/lib/_constants/dynamobe-global.settings.d.ts +0 -3
- package/lib/_constants/dynamobe-global.settings.d.ts.map +0 -1
- package/lib/_constants/dynamobe-global.settings.js +0 -12
- package/lib/_constants/dynamobe-global.settings.js.map +0 -1
- package/lib/_enums/data-model-type.enum.d.ts +0 -6
- package/lib/_enums/data-model-type.enum.d.ts.map +0 -1
- package/lib/_enums/data-model-type.enum.js +0 -10
- package/lib/_enums/data-model-type.enum.js.map +0 -1
- package/lib/_enums/dynamobe-data-service-function.enum.d.ts +0 -8
- package/lib/_enums/dynamobe-data-service-function.enum.d.ts.map +0 -1
- package/lib/_enums/dynamobe-data-service-function.enum.js +0 -15
- package/lib/_enums/dynamobe-data-service-function.enum.js.map +0 -1
- package/lib/_enums/dynamobe-route-security.enum.d.ts +0 -6
- package/lib/_enums/dynamobe-route-security.enum.d.ts.map +0 -1
- package/lib/_enums/dynamobe-route-security.enum.js +0 -10
- package/lib/_enums/dynamobe-route-security.enum.js.map +0 -1
- package/lib/_enums/http/http-call-type.enum.d.ts +0 -8
- package/lib/_enums/http/http-call-type.enum.d.ts.map +0 -1
- package/lib/_enums/http/http-call-type.enum.js +0 -12
- package/lib/_enums/http/http-call-type.enum.js.map +0 -1
- package/lib/_enums/http/http-response-type.enum.d.ts +0 -7
- package/lib/_enums/http/http-response-type.enum.d.ts.map +0 -1
- package/lib/_enums/http/http-response-type.enum.js +0 -11
- package/lib/_enums/http/http-response-type.enum.js.map +0 -1
- package/lib/_enums/index.d.ts +0 -8
- package/lib/_enums/index.d.ts.map +0 -1
- package/lib/_enums/index.js +0 -39
- package/lib/_enums/index.js.map +0 -1
- package/lib/_enums/log-style.enum.d.ts +0 -26
- package/lib/_enums/log-style.enum.d.ts.map +0 -1
- package/lib/_enums/log-style.enum.js +0 -30
- package/lib/_enums/log-style.enum.js.map +0 -1
- package/lib/_enums/predefined-data-types.enum.d.ts +0 -8
- package/lib/_enums/predefined-data-types.enum.d.ts.map +0 -1
- package/lib/_enums/predefined-data-types.enum.js +0 -12
- package/lib/_enums/predefined-data-types.enum.js.map +0 -1
- package/lib/_models/dynamobe-api-call-params.d.ts +0 -35
- package/lib/_models/dynamobe-api-call-params.d.ts.map +0 -1
- package/lib/_models/dynamobe-api-call-params.js +0 -24
- package/lib/_models/dynamobe-api-call-params.js.map +0 -1
- package/lib/_models/dynamobe-app-params.d.ts +0 -15
- package/lib/_models/dynamobe-app-params.d.ts.map +0 -1
- package/lib/_models/dynamobe-app-params.js +0 -14
- package/lib/_models/dynamobe-app-params.js.map +0 -1
- package/lib/_models/dynamobe-data-model-params.d.ts +0 -13
- package/lib/_models/dynamobe-data-model-params.d.ts.map +0 -1
- package/lib/_models/dynamobe-data-model-params.js +0 -15
- package/lib/_models/dynamobe-data-model-params.js.map +0 -1
- package/lib/_models/dynamobe-endpoint-control.d.ts +0 -29
- package/lib/_models/dynamobe-endpoint-control.d.ts.map +0 -1
- package/lib/_models/dynamobe-endpoint-control.js +0 -86
- package/lib/_models/dynamobe-endpoint-control.js.map +0 -1
- package/lib/_models/dynamobe-global-settings.d.ts +0 -9
- package/lib/_models/dynamobe-global-settings.d.ts.map +0 -1
- package/lib/_models/dynamobe-global-settings.js +0 -3
- package/lib/_models/dynamobe-global-settings.js.map +0 -1
- package/lib/_models/fullstack-models/control-models/daily-usage-data.d.ts +0 -18
- package/lib/_models/fullstack-models/control-models/daily-usage-data.d.ts.map +0 -1
- package/lib/_models/fullstack-models/control-models/daily-usage-data.js +0 -22
- package/lib/_models/fullstack-models/control-models/daily-usage-data.js.map +0 -1
- package/lib/_models/fullstack-models/control-models/dynamobe-data-property-params.d.ts +0 -28
- package/lib/_models/fullstack-models/control-models/dynamobe-data-property-params.d.ts.map +0 -1
- package/lib/_models/fullstack-models/control-models/dynamobe-data-property-params.js +0 -67
- package/lib/_models/fullstack-models/control-models/dynamobe-data-property-params.js.map +0 -1
- package/lib/_models/fullstack-models/control-models/dynamobe-error.d.ts +0 -18
- package/lib/_models/fullstack-models/control-models/dynamobe-error.d.ts.map +0 -1
- package/lib/_models/fullstack-models/control-models/dynamobe-error.js +0 -188
- package/lib/_models/fullstack-models/control-models/dynamobe-error.js.map +0 -1
- package/lib/_models/fullstack-models/control-models/geo-ip-location.d.ts +0 -26
- package/lib/_models/fullstack-models/control-models/geo-ip-location.d.ts.map +0 -1
- package/lib/_models/fullstack-models/control-models/geo-ip-location.js +0 -3
- package/lib/_models/fullstack-models/control-models/geo-ip-location.js.map +0 -1
- package/lib/_models/fullstack-models/control-models/usage-action.d.ts +0 -9
- package/lib/_models/fullstack-models/control-models/usage-action.d.ts.map +0 -1
- package/lib/_models/fullstack-models/control-models/usage-action.js +0 -13
- package/lib/_models/fullstack-models/control-models/usage-action.js.map +0 -1
- package/lib/_models/fullstack-models/control-models/usage-data.d.ts +0 -14
- package/lib/_models/fullstack-models/control-models/usage-data.d.ts.map +0 -1
- package/lib/_models/fullstack-models/control-models/usage-data.js +0 -16
- package/lib/_models/fullstack-models/control-models/usage-data.js.map +0 -1
- package/lib/_models/fullstack-models/data-models/custom-data.d.ts +0 -16
- package/lib/_models/fullstack-models/data-models/custom-data.d.ts.map +0 -1
- package/lib/_models/fullstack-models/data-models/custom-data.js +0 -24
- package/lib/_models/fullstack-models/data-models/custom-data.js.map +0 -1
- package/lib/_models/fullstack-models/data-models/metadata.d.ts +0 -17
- package/lib/_models/fullstack-models/data-models/metadata.d.ts.map +0 -1
- package/lib/_models/fullstack-models/data-models/metadata.js +0 -17
- package/lib/_models/fullstack-models/data-models/metadata.js.map +0 -1
- package/lib/_models/fullstack-models/data-models/usage-session.d.ts +0 -34
- package/lib/_models/fullstack-models/data-models/usage-session.d.ts.map +0 -1
- package/lib/_models/fullstack-models/data-models/usage-session.js +0 -49
- package/lib/_models/fullstack-models/data-models/usage-session.js.map +0 -1
- package/lib/_models/index.d.ts +0 -15
- package/lib/_models/index.d.ts.map +0 -1
- package/lib/_models/index.js +0 -32
- package/lib/_models/index.js.map +0 -1
- package/lib/_modules/index.d.ts +0 -5
- package/lib/_modules/index.d.ts.map +0 -1
- package/lib/_modules/index.js +0 -9
- package/lib/_modules/index.js.map +0 -1
- package/lib/_modules/test-route/custom-data.service.d.ts +0 -6
- package/lib/_modules/test-route/custom-data.service.d.ts.map +0 -1
- package/lib/_modules/test-route/custom-data.service.js +0 -13
- package/lib/_modules/test-route/custom-data.service.js.map +0 -1
- package/lib/_modules/test-route/test-controller.d.ts +0 -6
- package/lib/_modules/test-route/test-controller.d.ts.map +0 -1
- package/lib/_modules/test-route/test-controller.js +0 -126
- package/lib/_modules/test-route/test-controller.js.map +0 -1
- package/lib/_modules/usage-route/usage-controller.d.ts +0 -7
- package/lib/_modules/usage-route/usage-controller.d.ts.map +0 -1
- package/lib/_modules/usage-route/usage-controller.js +0 -89
- package/lib/_modules/usage-route/usage-controller.js.map +0 -1
- package/lib/_modules/usage-route/usage.service.d.ts +0 -19
- package/lib/_modules/usage-route/usage.service.d.ts.map +0 -1
- package/lib/_modules/usage-route/usage.service.js +0 -111
- package/lib/_modules/usage-route/usage.service.js.map +0 -1
- package/lib/_services/dynamobe-api.service.d.ts +0 -10
- package/lib/_services/dynamobe-api.service.d.ts.map +0 -1
- package/lib/_services/dynamobe-api.service.js +0 -131
- package/lib/_services/dynamobe-api.service.js.map +0 -1
- package/lib/_services/dynamobe-app.d.ts +0 -12
- package/lib/_services/dynamobe-app.d.ts.map +0 -1
- package/lib/_services/dynamobe-app.js +0 -39
- package/lib/_services/dynamobe-app.js.map +0 -1
- package/lib/_services/dynamobe-auth.service.d.ts +0 -26
- package/lib/_services/dynamobe-auth.service.d.ts.map +0 -1
- package/lib/_services/dynamobe-auth.service.js +0 -25
- package/lib/_services/dynamobe-auth.service.js.map +0 -1
- package/lib/_services/dynamobe-controller.service.d.ts +0 -11
- package/lib/_services/dynamobe-controller.service.d.ts.map +0 -1
- package/lib/_services/dynamobe-controller.service.js +0 -12
- package/lib/_services/dynamobe-controller.service.js.map +0 -1
- package/lib/_services/dynamobe-data.service.d.ts +0 -52
- package/lib/_services/dynamobe-data.service.d.ts.map +0 -1
- package/lib/_services/dynamobe-data.service.js +0 -225
- package/lib/_services/dynamobe-data.service.js.map +0 -1
- package/lib/_services/dynamobe-db-service-collection.service.d.ts +0 -6
- package/lib/_services/dynamobe-db-service-collection.service.d.ts.map +0 -1
- package/lib/_services/dynamobe-db-service-collection.service.js +0 -8
- package/lib/_services/dynamobe-db-service-collection.service.js.map +0 -1
- package/lib/_services/dynamobe-db.service.d.ts +0 -151
- package/lib/_services/dynamobe-db.service.d.ts.map +0 -1
- package/lib/_services/dynamobe-db.service.js +0 -578
- package/lib/_services/dynamobe-db.service.js.map +0 -1
- package/lib/_services/dynamobe-email-service-collection.service.d.ts +0 -6
- package/lib/_services/dynamobe-email-service-collection.service.d.ts.map +0 -1
- package/lib/_services/dynamobe-email-service-collection.service.js +0 -8
- package/lib/_services/dynamobe-email-service-collection.service.js.map +0 -1
- package/lib/_services/dynamobe-email.service.d.ts +0 -34
- package/lib/_services/dynamobe-email.service.d.ts.map +0 -1
- package/lib/_services/dynamobe-email.service.js +0 -145
- package/lib/_services/dynamobe-email.service.js.map +0 -1
- package/lib/_services/dynamobe-global.service.d.ts +0 -23
- package/lib/_services/dynamobe-global.service.d.ts.map +0 -1
- package/lib/_services/dynamobe-global.service.js +0 -85
- package/lib/_services/dynamobe-global.service.js.map +0 -1
- package/lib/_services/dynamobe-routing-module.service.d.ts +0 -26
- package/lib/_services/dynamobe-routing-module.service.d.ts.map +0 -1
- package/lib/_services/dynamobe-routing-module.service.js +0 -113
- package/lib/_services/dynamobe-routing-module.service.js.map +0 -1
- package/lib/_services/dynamobe-server.d.ts +0 -32
- package/lib/_services/dynamobe-server.d.ts.map +0 -1
- package/lib/_services/dynamobe-server.js +0 -178
- package/lib/_services/dynamobe-server.js.map +0 -1
- package/lib/_services/dynamobe-shared.service.d.ts +0 -101
- package/lib/_services/dynamobe-shared.service.d.ts.map +0 -1
- package/lib/_services/dynamobe-shared.service.js +0 -295
- package/lib/_services/dynamobe-shared.service.js.map +0 -1
- package/lib/_services/dynamobe-singleton.service.d.ts +0 -6
- package/lib/_services/dynamobe-singleton.service.d.ts.map +0 -1
- package/lib/_services/dynamobe-singleton.service.js +0 -16
- package/lib/_services/dynamobe-singleton.service.js.map +0 -1
- package/lib/_services/index.d.ts +0 -15
- package/lib/_services/index.d.ts.map +0 -1
- package/lib/_services/index.js +0 -41
- package/lib/_services/index.js.map +0 -1
- package/lib/index.d.ts +0 -5
- package/lib/index.d.ts.map +0 -1
- package/lib/index.js +0 -12
- package/lib/index.js.map +0 -1
- package/lib/tsconfig.tsbuildinfo +0 -2107
|
@@ -1,578 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.DynamoBEDBService = void 0;
|
|
4
|
-
const tslib_1 = require("tslib");
|
|
5
|
-
const mongoose = tslib_1.__importStar(require("mongoose"));
|
|
6
|
-
const mongoose_1 = require("mongoose");
|
|
7
|
-
const dynamobe_error_1 = require("../_models/fullstack-models/control-models/dynamobe-error");
|
|
8
|
-
class DynamoBEDBService {
|
|
9
|
-
/**
|
|
10
|
-
* @param dataName name the model
|
|
11
|
-
* @param typeSample sample data for scheme creation (dont include Metadata!)
|
|
12
|
-
* @param schemaSettings additional settings for specific parameters as unique, required, minlength or maxlength
|
|
13
|
-
* schemaSettings also MUST contain specific types that differs from the listed above (Array, Date)
|
|
14
|
-
*/
|
|
15
|
-
constructor(dataName, dataModelParams) {
|
|
16
|
-
this.dataName = dataName;
|
|
17
|
-
this.dataModelParams = dataModelParams;
|
|
18
|
-
this.dataModel = mongoose.model(this.dataName, this.getSchema());
|
|
19
|
-
this.lookForDependencyDataSettings();
|
|
20
|
-
}
|
|
21
|
-
/**
|
|
22
|
-
* save new data
|
|
23
|
-
* @param data data
|
|
24
|
-
* @returns data
|
|
25
|
-
*/
|
|
26
|
-
createData(data, creator) {
|
|
27
|
-
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
28
|
-
data.__created = new Date();
|
|
29
|
-
data.__lastModified = new Date();
|
|
30
|
-
data.__createdBy = creator;
|
|
31
|
-
data.__lastModifiedBy = creator;
|
|
32
|
-
const dataModel = new this.dataModel(data);
|
|
33
|
-
let newData;
|
|
34
|
-
yield dataModel.save().then(res => {
|
|
35
|
-
if (res) {
|
|
36
|
-
newData = res.toObject();
|
|
37
|
-
}
|
|
38
|
-
else {
|
|
39
|
-
throw new dynamobe_error_1.DynamoBEError({ status: 204, message: `${this.dataName} not found! (BD)` });
|
|
40
|
-
}
|
|
41
|
-
}).catch(error => {
|
|
42
|
-
throw new dynamobe_error_1.DynamoBEError({ status: 422, message: `Create new ${this.dataName} was unsuccessful (BD)`, error });
|
|
43
|
-
});
|
|
44
|
-
if (typeof newData._id === 'object') {
|
|
45
|
-
newData._id = `${newData._id}`;
|
|
46
|
-
}
|
|
47
|
-
data._id = newData._id;
|
|
48
|
-
data.__v = newData.__v;
|
|
49
|
-
return data;
|
|
50
|
-
});
|
|
51
|
-
}
|
|
52
|
-
/**
|
|
53
|
-
* Find data by _id and update
|
|
54
|
-
* @param data data
|
|
55
|
-
* @returns data
|
|
56
|
-
*/
|
|
57
|
-
modifyData(data, modifier) {
|
|
58
|
-
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
59
|
-
data.__lastModified = new Date();
|
|
60
|
-
data.__lastModifiedBy = modifier;
|
|
61
|
-
const dataModel = new this.dataModel(data);
|
|
62
|
-
let newData;
|
|
63
|
-
yield this.dataModel.findByIdAndUpdate(data._id, dataModel).then(res => {
|
|
64
|
-
if (res) {
|
|
65
|
-
newData = res.toObject();
|
|
66
|
-
}
|
|
67
|
-
else {
|
|
68
|
-
throw new dynamobe_error_1.DynamoBEError({ status: 204, message: `${this.dataName} not found! (BD)` });
|
|
69
|
-
}
|
|
70
|
-
}).catch(error => {
|
|
71
|
-
throw new dynamobe_error_1.DynamoBEError({ status: 417, message: `modify ${this.dataName} was unsuccessful (DB)`, error });
|
|
72
|
-
});
|
|
73
|
-
data.__v = newData.__v;
|
|
74
|
-
return data;
|
|
75
|
-
});
|
|
76
|
-
}
|
|
77
|
-
/**
|
|
78
|
-
* get data by _id, throws error if not found
|
|
79
|
-
* @param id id
|
|
80
|
-
* @returns data
|
|
81
|
-
*/
|
|
82
|
-
getDataById(id) {
|
|
83
|
-
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
84
|
-
let data;
|
|
85
|
-
yield this.dataModel.findById(id).then(res => {
|
|
86
|
-
if (res) {
|
|
87
|
-
data = res.toObject();
|
|
88
|
-
}
|
|
89
|
-
else {
|
|
90
|
-
data = null;
|
|
91
|
-
}
|
|
92
|
-
}).catch(error => {
|
|
93
|
-
throw new dynamobe_error_1.DynamoBEError({ status: 417, message: `get ${this.dataName} by ID was unsuccessful (DB)`, error });
|
|
94
|
-
});
|
|
95
|
-
if (data && typeof data._id === 'object') {
|
|
96
|
-
data._id = `${data._id}`;
|
|
97
|
-
}
|
|
98
|
-
return data;
|
|
99
|
-
});
|
|
100
|
-
}
|
|
101
|
-
/**
|
|
102
|
-
* get data by dependency data id, throws error if not found
|
|
103
|
-
* @param dependencyId id
|
|
104
|
-
* @returns data
|
|
105
|
-
*/
|
|
106
|
-
getDataByDependencyId(dependencyId) {
|
|
107
|
-
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
108
|
-
if (this.depDataKey) {
|
|
109
|
-
let data;
|
|
110
|
-
yield this.dataModel.findOne({ [this.depDataKey]: dependencyId }).then(res => {
|
|
111
|
-
if (res) {
|
|
112
|
-
data = res.toObject();
|
|
113
|
-
}
|
|
114
|
-
else {
|
|
115
|
-
data = null;
|
|
116
|
-
}
|
|
117
|
-
}).catch(error => {
|
|
118
|
-
throw new dynamobe_error_1.DynamoBEError({ status: 417, message: `get ${this.dataName} by ${this.depDataKey} was unsuccessful (DB)`, error });
|
|
119
|
-
});
|
|
120
|
-
if (data && typeof data._id === 'object') {
|
|
121
|
-
data._id = `${data._id}`;
|
|
122
|
-
}
|
|
123
|
-
return data;
|
|
124
|
-
}
|
|
125
|
-
else {
|
|
126
|
-
throw new dynamobe_error_1.DynamoBEError({ status: 501, message: `dependencyDataIdKey not setted up for this db-service (${this.dataName}) (BD)` });
|
|
127
|
-
}
|
|
128
|
-
});
|
|
129
|
-
}
|
|
130
|
-
/**
|
|
131
|
-
* get data by dependency data id, throws error if not found
|
|
132
|
-
* @param dependencyId id
|
|
133
|
-
* @returns dataList
|
|
134
|
-
*/
|
|
135
|
-
getDataListByDependencyId(dependencyId) {
|
|
136
|
-
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
137
|
-
if (this.depDataKey) {
|
|
138
|
-
let dataList = [];
|
|
139
|
-
yield this.dataModel.find({ [this.depDataKey]: dependencyId }).then(res => {
|
|
140
|
-
if (res) {
|
|
141
|
-
dataList = res;
|
|
142
|
-
}
|
|
143
|
-
}).catch(error => {
|
|
144
|
-
throw new dynamobe_error_1.DynamoBEError({ status: 417, message: `get ${this.dataName} by ${this.depDataKey} was unsuccessful (DB)`, error });
|
|
145
|
-
});
|
|
146
|
-
if (0 < dataList.length && typeof dataList[0]._id === 'object') {
|
|
147
|
-
dataList.forEach((data) => {
|
|
148
|
-
data._id = `˙${data._id}`;
|
|
149
|
-
});
|
|
150
|
-
}
|
|
151
|
-
return dataList;
|
|
152
|
-
}
|
|
153
|
-
else {
|
|
154
|
-
throw new dynamobe_error_1.DynamoBEError({ status: 501, message: `dependencyDataIdKey not setted up for this db-service (${this.dataName}) (BD)` });
|
|
155
|
-
}
|
|
156
|
-
});
|
|
157
|
-
}
|
|
158
|
-
/**
|
|
159
|
-
* get multiple data objects by a list of DependencyIDs, throws error if not found
|
|
160
|
-
* @param ids ids
|
|
161
|
-
* @returns dataList
|
|
162
|
-
*/
|
|
163
|
-
getDataListByDependencyIds(ids) {
|
|
164
|
-
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
165
|
-
if (this.depDataKey) {
|
|
166
|
-
let dataList = [];
|
|
167
|
-
yield this.dataModel.find({ [this.depDataKey]: { $in: ids } }).then(res => {
|
|
168
|
-
if (res) {
|
|
169
|
-
dataList = res;
|
|
170
|
-
}
|
|
171
|
-
}).catch(error => {
|
|
172
|
-
throw new dynamobe_error_1.DynamoBEError({ status: 417, message: `get ${this.dataName}s by ${this.depDataKey}s was unsuccessful (DB)`, error });
|
|
173
|
-
});
|
|
174
|
-
return dataList;
|
|
175
|
-
}
|
|
176
|
-
else {
|
|
177
|
-
throw new dynamobe_error_1.DynamoBEError({ status: 501, message: `dependencyDataIdKey not setted up for this db-service (${this.dataName}) (BD)` });
|
|
178
|
-
}
|
|
179
|
-
});
|
|
180
|
-
}
|
|
181
|
-
/**
|
|
182
|
-
* returns search result for searchBy object params
|
|
183
|
-
* can use lists or xRange values for searchBy obj properties
|
|
184
|
-
* @param searchBy filter
|
|
185
|
-
* @param narrowByDependencyIds id
|
|
186
|
-
* @returns dataList
|
|
187
|
-
*/
|
|
188
|
-
searchData(searchBy, narrowByDependencyIds) {
|
|
189
|
-
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
190
|
-
const filter = {};
|
|
191
|
-
if (narrowByDependencyIds.length > 0) {
|
|
192
|
-
if (this.depDataKey) {
|
|
193
|
-
filter[this.depDataKey] = { $in: narrowByDependencyIds };
|
|
194
|
-
}
|
|
195
|
-
else {
|
|
196
|
-
throw new dynamobe_error_1.DynamoBEError({ status: 501, message: `dependencyDataIdKey not setted up for this db-service (${this.dataName}) (BD)` });
|
|
197
|
-
}
|
|
198
|
-
}
|
|
199
|
-
yield this.dataModelParams.forEach((modelParam) => {
|
|
200
|
-
if ((searchBy[modelParam.key] !== null && searchBy[modelParam.key] !== undefined) || searchBy[modelParam.key + 'Range']) {
|
|
201
|
-
if (modelParam.key.includes('Range') || modelParam.type.includes('[]')) {
|
|
202
|
-
// inverz search filter (for Range and Array functions)
|
|
203
|
-
if (modelParam.key.includes('Range')) {
|
|
204
|
-
const searchParamKeyWithoutRange = modelParam.key.split('Range')[0];
|
|
205
|
-
if (searchBy[searchParamKeyWithoutRange] !== null && searchBy[searchParamKeyWithoutRange] !== undefined) {
|
|
206
|
-
filter[modelParam.key] = {
|
|
207
|
-
from: { $lte: searchBy[searchParamKeyWithoutRange] },
|
|
208
|
-
to: { $gte: searchBy[searchParamKeyWithoutRange] }
|
|
209
|
-
};
|
|
210
|
-
}
|
|
211
|
-
}
|
|
212
|
-
else {
|
|
213
|
-
if (searchBy[modelParam.key] !== null && searchBy[modelParam.key] !== undefined) {
|
|
214
|
-
filter[modelParam.key] = { $in: searchBy[modelParam.key] };
|
|
215
|
-
}
|
|
216
|
-
}
|
|
217
|
-
}
|
|
218
|
-
else {
|
|
219
|
-
// basic search filter
|
|
220
|
-
if (searchBy[modelParam.key + 'Range']) {
|
|
221
|
-
if (searchBy[modelParam.key + 'Range'].from || searchBy[modelParam.key + 'Range'].to) {
|
|
222
|
-
filter[modelParam.key] = {};
|
|
223
|
-
if (searchBy[modelParam.key + 'Range'].from) {
|
|
224
|
-
filter[modelParam.key].$gte = searchBy[modelParam.key + 'Range'].from;
|
|
225
|
-
}
|
|
226
|
-
if (searchBy[modelParam.key + 'Range'].to) {
|
|
227
|
-
filter[modelParam.key].$lte = searchBy[modelParam.key + 'Range'].to;
|
|
228
|
-
}
|
|
229
|
-
}
|
|
230
|
-
}
|
|
231
|
-
else if (searchBy[modelParam.key] !== null && searchBy[modelParam.key] !== undefined) {
|
|
232
|
-
if (searchBy[modelParam.key].lenght > 0) {
|
|
233
|
-
filter[modelParam.key] = { $in: searchBy[modelParam.key] };
|
|
234
|
-
}
|
|
235
|
-
}
|
|
236
|
-
}
|
|
237
|
-
}
|
|
238
|
-
});
|
|
239
|
-
let dataList = [];
|
|
240
|
-
yield this.dataModel.find(filter).then(res => {
|
|
241
|
-
if (res) {
|
|
242
|
-
dataList = res;
|
|
243
|
-
}
|
|
244
|
-
}).catch(error => {
|
|
245
|
-
throw new dynamobe_error_1.DynamoBEError({ status: 417, message: `search ${this.dataName} was unsuccessful (DB)`, error });
|
|
246
|
-
});
|
|
247
|
-
if (0 < dataList.length && typeof dataList[0]._id === 'object') {
|
|
248
|
-
dataList.forEach((data) => {
|
|
249
|
-
data._id = `˙${data._id}`;
|
|
250
|
-
});
|
|
251
|
-
}
|
|
252
|
-
return dataList;
|
|
253
|
-
});
|
|
254
|
-
}
|
|
255
|
-
/**
|
|
256
|
-
* find data by any of its parameters, throws error if not found
|
|
257
|
-
* @param data etc.: by email: { email: email }
|
|
258
|
-
* { userIds: { $in: this.userId } }
|
|
259
|
-
* @returns data
|
|
260
|
-
*/
|
|
261
|
-
findData(data) {
|
|
262
|
-
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
263
|
-
yield this.dataModel.findOne(data).then(res => {
|
|
264
|
-
if (res) {
|
|
265
|
-
data = res.toObject();
|
|
266
|
-
}
|
|
267
|
-
else {
|
|
268
|
-
data = null;
|
|
269
|
-
}
|
|
270
|
-
}).catch(error => {
|
|
271
|
-
throw new dynamobe_error_1.DynamoBEError({ status: 417, message: `find ${this.dataName} was unsuccessful (DB)`, error });
|
|
272
|
-
});
|
|
273
|
-
if (data && typeof data._id === 'object') {
|
|
274
|
-
data._id = `${data._id}`;
|
|
275
|
-
}
|
|
276
|
-
return data;
|
|
277
|
-
});
|
|
278
|
-
}
|
|
279
|
-
/**
|
|
280
|
-
* returns all data from database, throws error if not found
|
|
281
|
-
* @returns dataList
|
|
282
|
-
*/
|
|
283
|
-
getAll() {
|
|
284
|
-
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
285
|
-
let dataList = [];
|
|
286
|
-
yield this.dataModel.find({}).then(res => {
|
|
287
|
-
if (res) {
|
|
288
|
-
dataList = res;
|
|
289
|
-
}
|
|
290
|
-
}).catch(error => {
|
|
291
|
-
throw new dynamobe_error_1.DynamoBEError({ status: 417, message: `get all ${this.dataName} was unsuccessful (DB)`, error });
|
|
292
|
-
});
|
|
293
|
-
if (0 < dataList.length && typeof dataList[0]._id === 'object') {
|
|
294
|
-
dataList.forEach((data) => {
|
|
295
|
-
data._id = `˙${data._id}`;
|
|
296
|
-
});
|
|
297
|
-
}
|
|
298
|
-
return dataList;
|
|
299
|
-
});
|
|
300
|
-
}
|
|
301
|
-
/**
|
|
302
|
-
* update one parameter by a specific
|
|
303
|
-
* { _id: pictureId }, { approved: true }
|
|
304
|
-
* @param updateBy etc.: { email: email } (always use unique parameters for find!)
|
|
305
|
-
* @param update etc.: { $inc: { popularity: this.newVote.amount }, emailVerified: true }
|
|
306
|
-
*/
|
|
307
|
-
/* async updateOneParameter(updateBy: any, update: any, modifier: string): Promise<void> {
|
|
308
|
-
update.__lastModified = new Date();
|
|
309
|
-
update.__lastModifiedBy = modifier;
|
|
310
|
-
await this.dataModel.updateOne(updateBy, update).catch(error => {
|
|
311
|
-
throw new DynamoBEError({ status: 417, message: `update one parameter on ${this.dataName} was unsuccessful (DB)`, error });
|
|
312
|
-
});
|
|
313
|
-
} */
|
|
314
|
-
/**
|
|
315
|
-
* deleted data by id
|
|
316
|
-
* @param id id
|
|
317
|
-
*/
|
|
318
|
-
deleteDataById(id) {
|
|
319
|
-
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
320
|
-
yield this.dataModel.findByIdAndDelete(id).catch(error => {
|
|
321
|
-
throw new dynamobe_error_1.DynamoBEError({ status: 417, message: `delete ${this.dataName} was unsuccessful (DB)`, error });
|
|
322
|
-
});
|
|
323
|
-
});
|
|
324
|
-
}
|
|
325
|
-
/**
|
|
326
|
-
* deleted data by id
|
|
327
|
-
* @param dependencyId id
|
|
328
|
-
*/
|
|
329
|
-
deleteDataByDependencyId(dependencyId) {
|
|
330
|
-
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
331
|
-
if (this.depDataKey) {
|
|
332
|
-
yield this.dataModel.deleteMany({ [this.depDataKey]: dependencyId }).catch(error => {
|
|
333
|
-
throw new dynamobe_error_1.DynamoBEError({ status: 417, message: `delete ${this.dataName} by ${this.depDataKey} was unsuccessful (DB)`, error });
|
|
334
|
-
});
|
|
335
|
-
}
|
|
336
|
-
else {
|
|
337
|
-
throw new dynamobe_error_1.DynamoBEError({ status: 501, message: `dependencyDataIdKey not setted up for this db-service (${this.dataName}) (BD)` });
|
|
338
|
-
}
|
|
339
|
-
});
|
|
340
|
-
}
|
|
341
|
-
// ----------------------------------------------------------------------------------
|
|
342
|
-
// ----------------------------------------------------------------------------------
|
|
343
|
-
// ----------------------------------------------------------------------------------
|
|
344
|
-
// DIRECT MONGOOSE CALLS (with error handlings)
|
|
345
|
-
/**
|
|
346
|
-
* find the data first by any of its parameters, throws error if not found
|
|
347
|
-
* @param filter etc. by email: { email: email }
|
|
348
|
-
* @returns data
|
|
349
|
-
*/
|
|
350
|
-
findOne(filter) {
|
|
351
|
-
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
352
|
-
let data;
|
|
353
|
-
yield this.dataModel.findOne(filter).then(res => {
|
|
354
|
-
if (res) {
|
|
355
|
-
data = res.toObject();
|
|
356
|
-
}
|
|
357
|
-
else {
|
|
358
|
-
data = null;
|
|
359
|
-
}
|
|
360
|
-
}).catch(error => {
|
|
361
|
-
throw new dynamobe_error_1.DynamoBEError({ status: 417, message: `findOne ${this.dataName} was unsuccessful (DB)`, error });
|
|
362
|
-
});
|
|
363
|
-
if (data && typeof data._id === 'object') {
|
|
364
|
-
data._id = `${data._id}`;
|
|
365
|
-
}
|
|
366
|
-
return data;
|
|
367
|
-
});
|
|
368
|
-
}
|
|
369
|
-
/**
|
|
370
|
-
* find all data by any of its parameters, throws error if not found
|
|
371
|
-
* @param filter etc. by email: { email: email, points: { $gte: 2, $lte: 12 }, userIds: { $in: this.userId } }
|
|
372
|
-
* @returns dataList
|
|
373
|
-
*/
|
|
374
|
-
find(filter) {
|
|
375
|
-
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
376
|
-
let dataList = [];
|
|
377
|
-
yield this.dataModel.find(filter).then(res => {
|
|
378
|
-
if (res) {
|
|
379
|
-
dataList = res;
|
|
380
|
-
}
|
|
381
|
-
}).catch(error => {
|
|
382
|
-
throw new dynamobe_error_1.DynamoBEError({ status: 417, message: `find ${this.dataName} was unsuccessful (DB)`, error });
|
|
383
|
-
});
|
|
384
|
-
if (0 < dataList.length && typeof dataList[0]._id === 'object') {
|
|
385
|
-
dataList.forEach((data) => {
|
|
386
|
-
data._id = `˙${data._id}`;
|
|
387
|
-
});
|
|
388
|
-
}
|
|
389
|
-
return dataList;
|
|
390
|
-
});
|
|
391
|
-
}
|
|
392
|
-
/**
|
|
393
|
-
* find all data by any of its parameters, throws error if not found
|
|
394
|
-
* @param filter etc. by email: { email: email, points: { $gte: 2, $lte: 12 }, userIds: { $in: this.userId } }
|
|
395
|
-
* @param page page
|
|
396
|
-
* @param pageSize pageSize
|
|
397
|
-
* @param sort etc. by dateTime: { dateTime: -1 }
|
|
398
|
-
* @returns dataList
|
|
399
|
-
*/
|
|
400
|
-
findWithPaging(filter, page, pageSize, sort) {
|
|
401
|
-
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
402
|
-
let dataList = [];
|
|
403
|
-
yield this.dataModel.find(filter)
|
|
404
|
-
.sort(sort)
|
|
405
|
-
.skip(page * pageSize)
|
|
406
|
-
.limit(pageSize)
|
|
407
|
-
.then(res => {
|
|
408
|
-
if (res) {
|
|
409
|
-
dataList = res;
|
|
410
|
-
}
|
|
411
|
-
}).catch(error => {
|
|
412
|
-
throw new dynamobe_error_1.DynamoBEError({ status: 417, message: `findWithPaging ${this.dataName} was unsuccessful (DB)`, error });
|
|
413
|
-
});
|
|
414
|
-
if (0 < dataList.length && typeof dataList[0]._id === 'object') {
|
|
415
|
-
dataList.forEach((data) => {
|
|
416
|
-
data._id = `˙${data._id}`;
|
|
417
|
-
});
|
|
418
|
-
}
|
|
419
|
-
return dataList;
|
|
420
|
-
});
|
|
421
|
-
}
|
|
422
|
-
/**
|
|
423
|
-
* Find data by _id and update
|
|
424
|
-
* @param id id
|
|
425
|
-
* @param update update
|
|
426
|
-
* @returns data
|
|
427
|
-
*/
|
|
428
|
-
findByIdAndUpdate(id, update, modifier) {
|
|
429
|
-
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
430
|
-
let data;
|
|
431
|
-
update.__lastModified = new Date();
|
|
432
|
-
update.__lastModifiedBy = modifier;
|
|
433
|
-
yield this.dataModel.findByIdAndUpdate(id, update).then(res => {
|
|
434
|
-
if (res) {
|
|
435
|
-
data = res.toObject();
|
|
436
|
-
}
|
|
437
|
-
else {
|
|
438
|
-
throw new dynamobe_error_1.DynamoBEError({ status: 204, message: `${this.dataName} not found! (BD)` });
|
|
439
|
-
}
|
|
440
|
-
}).catch(error => {
|
|
441
|
-
throw new dynamobe_error_1.DynamoBEError({ status: 417, message: `findByIdAndUpdate ${this.dataName} was unsuccessful (DB)`, error });
|
|
442
|
-
});
|
|
443
|
-
update.__v = data.__v;
|
|
444
|
-
return update;
|
|
445
|
-
});
|
|
446
|
-
}
|
|
447
|
-
/**
|
|
448
|
-
* update one parameter by a specific
|
|
449
|
-
* @param updateBy etc.: by email: { email: email, points: { $gte: 2, $lte: 12 }, userIds: { $in: this.userId } } (always use unique parameters for find!)
|
|
450
|
-
* @param update etc.: { $inc: { popularity: this.newVote.amount }, emailVerified: true }
|
|
451
|
-
*/
|
|
452
|
-
updateOne(updateBy, update, modifier) {
|
|
453
|
-
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
454
|
-
update.__lastModified = new Date();
|
|
455
|
-
update.__lastModifiedBy = modifier;
|
|
456
|
-
yield this.dataModel.updateOne(updateBy, update).catch(error => {
|
|
457
|
-
throw new dynamobe_error_1.DynamoBEError({ status: 417, message: `updateOne ${this.dataName} was unsuccessful (DB)`, error });
|
|
458
|
-
});
|
|
459
|
-
});
|
|
460
|
-
}
|
|
461
|
-
/**
|
|
462
|
-
* update one parameter by a specific
|
|
463
|
-
* @param updateBy etc.: by email: { email: email, points: { $gte: 2, $lte: 12 }, userIds: { $in: this.userId } } (always use unique parameters for find!)
|
|
464
|
-
* @param update etc.: { $inc: { popularity: this.newVote.amount }, emailVerified: true, reactions: { $push: this.newReaction } }
|
|
465
|
-
*/
|
|
466
|
-
updateMany(updateBy, update, modifier) {
|
|
467
|
-
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
468
|
-
update.__lastModified = new Date();
|
|
469
|
-
update.__lastModifiedBy = modifier;
|
|
470
|
-
yield this.dataModel.updateMany(updateBy, update).catch(error => {
|
|
471
|
-
throw new dynamobe_error_1.DynamoBEError({ status: 417, message: `updateMany ${this.dataName} was unsuccessful (DB)`, error });
|
|
472
|
-
});
|
|
473
|
-
});
|
|
474
|
-
}
|
|
475
|
-
// ----------------------------------------------------------------------------------
|
|
476
|
-
// ----------------------------------------------------------------------------------
|
|
477
|
-
// ----------------------------------------------------------------------------------
|
|
478
|
-
// PRIVATE BUILD FUNCTIONS
|
|
479
|
-
/**
|
|
480
|
-
* builds and returns mongoose schema
|
|
481
|
-
* @returns schema
|
|
482
|
-
*/
|
|
483
|
-
getSchema() {
|
|
484
|
-
let schema = this.buildMongooseSchemaByModelParams();
|
|
485
|
-
schema = this.addMetadataToSchema(schema);
|
|
486
|
-
// tslint:disable-next-line: no-string-literal
|
|
487
|
-
if (schema['_id']) {
|
|
488
|
-
// tslint:disable-next-line: no-string-literal
|
|
489
|
-
delete schema['_id'];
|
|
490
|
-
}
|
|
491
|
-
return new mongoose_1.Schema(schema);
|
|
492
|
-
}
|
|
493
|
-
/**
|
|
494
|
-
* builds mongoose schema building settings object by dynamoDataModelParamsList
|
|
495
|
-
* @param params DynamoBEDataPropertyParams
|
|
496
|
-
* @returns mongoose schema object
|
|
497
|
-
*/
|
|
498
|
-
buildMongooseSchemaByModelParams(params) {
|
|
499
|
-
const schemaSettingsObj = {};
|
|
500
|
-
if (!params) {
|
|
501
|
-
params = this.dataModelParams;
|
|
502
|
-
}
|
|
503
|
-
params.forEach((property) => {
|
|
504
|
-
const beType = this.getBEType(property.type);
|
|
505
|
-
if (beType !== Object || !property.subObjectParams) {
|
|
506
|
-
schemaSettingsObj[property.key] = {
|
|
507
|
-
type: beType
|
|
508
|
-
};
|
|
509
|
-
if (property.index) {
|
|
510
|
-
schemaSettingsObj[property.key].index = true;
|
|
511
|
-
}
|
|
512
|
-
if (property.unique) {
|
|
513
|
-
schemaSettingsObj[property.key].unique = true;
|
|
514
|
-
}
|
|
515
|
-
if (property.required) {
|
|
516
|
-
schemaSettingsObj[property.key].required = true;
|
|
517
|
-
}
|
|
518
|
-
if (property.minlength) {
|
|
519
|
-
schemaSettingsObj[property.key].minlength = property.minlength;
|
|
520
|
-
}
|
|
521
|
-
if (property.maxlength) {
|
|
522
|
-
schemaSettingsObj[property.key].maxlength = property.maxlength;
|
|
523
|
-
}
|
|
524
|
-
}
|
|
525
|
-
else {
|
|
526
|
-
schemaSettingsObj[property.key] = this.buildMongooseSchemaByModelParams(property.subObjectParams);
|
|
527
|
-
}
|
|
528
|
-
});
|
|
529
|
-
return schemaSettingsObj;
|
|
530
|
-
}
|
|
531
|
-
getBEType(type) {
|
|
532
|
-
switch (type) {
|
|
533
|
-
case 'string':
|
|
534
|
-
return String;
|
|
535
|
-
case 'number':
|
|
536
|
-
return Number;
|
|
537
|
-
case 'boolean':
|
|
538
|
-
return Boolean;
|
|
539
|
-
case 'Date':
|
|
540
|
-
return Date;
|
|
541
|
-
case 'object':
|
|
542
|
-
return Object;
|
|
543
|
-
default:
|
|
544
|
-
if (type.includes('[]')) {
|
|
545
|
-
return Array;
|
|
546
|
-
}
|
|
547
|
-
else if (type.includes('=>') || type.includes('function')) {
|
|
548
|
-
return Function;
|
|
549
|
-
}
|
|
550
|
-
else {
|
|
551
|
-
return Object;
|
|
552
|
-
}
|
|
553
|
-
}
|
|
554
|
-
}
|
|
555
|
-
/**
|
|
556
|
-
* adds dynamo metadata settings to any mongoose schema building settings object
|
|
557
|
-
* @param schema schema to update
|
|
558
|
-
* @returns updated schema
|
|
559
|
-
*/
|
|
560
|
-
addMetadataToSchema(schema) {
|
|
561
|
-
schema.__created = { type: Date };
|
|
562
|
-
schema.__createdBy = { type: String };
|
|
563
|
-
schema.__lastModified = { type: Date };
|
|
564
|
-
schema.__lastModifiedBy = { type: String };
|
|
565
|
-
return schema;
|
|
566
|
-
}
|
|
567
|
-
/**
|
|
568
|
-
* sets depDataKey
|
|
569
|
-
*/
|
|
570
|
-
lookForDependencyDataSettings() {
|
|
571
|
-
const dependencyParam = this.dataModelParams.find((modelParams) => modelParams.isDependencyHook);
|
|
572
|
-
if (dependencyParam) {
|
|
573
|
-
this.depDataKey = dependencyParam.key;
|
|
574
|
-
}
|
|
575
|
-
}
|
|
576
|
-
}
|
|
577
|
-
exports.DynamoBEDBService = DynamoBEDBService;
|
|
578
|
-
//# sourceMappingURL=dynamobe-db.service.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"dynamobe-db.service.js","sourceRoot":"","sources":["../../src/_services/dynamobe-db.service.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
import { DynamoBEEmailService } from './dynamobe-email.service';
|
|
2
|
-
import { DynamoBESingletonService } from './dynamobe-singleton.service';
|
|
3
|
-
export declare class DynamoBEEmailServiceCollection extends DynamoBESingletonService {
|
|
4
|
-
[service: string]: DynamoBEEmailService;
|
|
5
|
-
}
|
|
6
|
-
//# sourceMappingURL=dynamobe-email-service-collection.service.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"dynamobe-email-service-collection.service.d.ts","sourceRoot":"","sources":["../../src/_services/dynamobe-email-service-collection.service.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,oBAAoB,EAAE,MAAM,0BAA0B,CAAC;AAChE,OAAO,EAAE,wBAAwB,EAAE,MAAM,8BAA8B,CAAC;AAExE,qBAAa,8BAA+B,SAAQ,wBAAwB;IAE1E,CAAC,OAAO,EAAE,MAAM,GAAG,oBAAoB,CAAC;CAEzC"}
|
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.DynamoBEEmailServiceCollection = void 0;
|
|
4
|
-
const dynamobe_singleton_service_1 = require("./dynamobe-singleton.service");
|
|
5
|
-
class DynamoBEEmailServiceCollection extends dynamobe_singleton_service_1.DynamoBESingletonService {
|
|
6
|
-
}
|
|
7
|
-
exports.DynamoBEEmailServiceCollection = DynamoBEEmailServiceCollection;
|
|
8
|
-
//# sourceMappingURL=dynamobe-email-service-collection.service.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"dynamobe-email-service-collection.service.js","sourceRoot":"","sources":["../../src/_services/dynamobe-email-service-collection.service.ts"],"names":[],"mappings":";;;AAEA,6EAAwE;AAExE,MAAa,8BAA+B,SAAQ,qDAAwB;CAI3E;AAJD,wEAIC"}
|
|
@@ -1,34 +0,0 @@
|
|
|
1
|
-
import { Attachment } from 'nodemailer/lib/mailer';
|
|
2
|
-
export declare class DynamoBEEmailService {
|
|
3
|
-
private nmTransporter;
|
|
4
|
-
private senderName;
|
|
5
|
-
private senderNEmail;
|
|
6
|
-
private templates;
|
|
7
|
-
private templatePropertyKeys;
|
|
8
|
-
private templateLoadingInProgressCounter;
|
|
9
|
-
constructor(set: {
|
|
10
|
-
host: string;
|
|
11
|
-
port: number;
|
|
12
|
-
email: string;
|
|
13
|
-
pass: string;
|
|
14
|
-
senderName: string;
|
|
15
|
-
rootPath: string;
|
|
16
|
-
templatePaths: {
|
|
17
|
-
[templateName: string]: string;
|
|
18
|
-
};
|
|
19
|
-
});
|
|
20
|
-
private constructionFinished;
|
|
21
|
-
sendEmail(set: {
|
|
22
|
-
to: string;
|
|
23
|
-
subject: string;
|
|
24
|
-
content?: string;
|
|
25
|
-
useTemplate?: string;
|
|
26
|
-
templateProperties?: {
|
|
27
|
-
[propertyKey: string]: string;
|
|
28
|
-
};
|
|
29
|
-
attachments?: Attachment[];
|
|
30
|
-
}): Promise<void>;
|
|
31
|
-
private loadTemplate;
|
|
32
|
-
private getTemplatePropertyKeys;
|
|
33
|
-
}
|
|
34
|
-
//# sourceMappingURL=dynamobe-email.service.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"dynamobe-email.service.d.ts","sourceRoot":"","sources":["../../src/_services/dynamobe-email.service.ts"],"names":[],"mappings":"AAIA,OAAO,EAA0B,UAAU,EAAE,MAAM,uBAAuB,CAAC;AAI3E,qBAAa,oBAAoB;IAC/B,OAAO,CAAC,aAAa,CAAyB;IAC9C,OAAO,CAAC,UAAU,CAAS;IAC3B,OAAO,CAAC,YAAY,CAAS;IAC7B,OAAO,CAAC,SAAS,CAEV;IACP,OAAO,CAAC,oBAAoB,CAErB;IACP,OAAO,CAAC,gCAAgC,CAAK;gBAG3C,GAAG,EAAE;QACH,IAAI,EAAE,MAAM,CAAC;QACb,IAAI,EAAE,MAAM,CAAC;QACb,KAAK,EAAE,MAAM,CAAC;QACd,IAAI,EAAE,MAAM,CAAC;QACb,UAAU,EAAE,MAAM,CAAC;QAEnB,QAAQ,EAAE,MAAM,CAAC;QACjB,aAAa,EAAE;YACb,CAAC,YAAY,EAAE,MAAM,GAAG,MAAM,CAAA;SAC/B,CAAC;KACH;IA2BH,OAAO,CAAC,oBAAoB;IAIf,SAAS,CAAC,GAAG,EAAE;QAC1B,EAAE,EAAE,MAAM,CAAC;QACX,OAAO,EAAE,MAAM,CAAC;QAChB,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,kBAAkB,CAAC,EAAE;YACnB,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,CAAA;SAC9B,CAAC;QACF,WAAW,CAAC,EAAE,UAAU,EAAE,CAAA;KAC3B,GAAG,OAAO,CAAC,IAAI,CAAC;YA+CH,YAAY;IA2B1B,OAAO,CAAC,uBAAuB;CAuBhC"}
|