@futdevpro/nts-dynamo 1.7.16 → 1.7.20

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 (129) hide show
  1. package/.eslintrc.json +171 -0
  2. package/lib/_constants/mocks/app-extended-server.mock.d.ts.map +1 -1
  3. package/lib/_constants/mocks/app-extended-server.mock.js.map +1 -1
  4. package/lib/_constants/mocks/app-server.mock.d.ts.map +1 -1
  5. package/lib/_constants/mocks/app-server.mock.js.map +1 -1
  6. package/lib/_constants/mocks/data-model.mock.d.ts.map +1 -1
  7. package/lib/_constants/mocks/data-model.mock.js.map +1 -1
  8. package/lib/_constants/mocks/email-service-collection.mock.d.ts.map +1 -1
  9. package/lib/_constants/mocks/email-service-collection.mock.js.map +1 -1
  10. package/lib/_constants/mocks/email-service.mock.js +3 -3
  11. package/lib/_constants/mocks/email-service.mock.js.map +1 -1
  12. package/lib/_constants/mocks/endpoint.mock.d.ts.map +1 -1
  13. package/lib/_constants/mocks/endpoint.mock.js.map +1 -1
  14. package/lib/_constants/mocks/socket-server.mock.d.ts.map +1 -1
  15. package/lib/_constants/mocks/socket-server.mock.js.map +1 -1
  16. package/lib/_enums/index.js +1 -1
  17. package/lib/_enums/index.js.map +1 -1
  18. package/lib/_models/control-models/api-call-params.control-model.d.ts +2 -2
  19. package/lib/_models/control-models/api-call-params.control-model.d.ts.map +1 -1
  20. package/lib/_models/control-models/api-call-params.control-model.js.map +1 -1
  21. package/lib/_models/control-models/app-system-controls.control-model copy.d.ts.map +1 -1
  22. package/lib/_models/control-models/app-system-controls.control-model copy.js.map +1 -1
  23. package/lib/_models/control-models/app-system-controls.control-model.d.ts.map +1 -1
  24. package/lib/_models/control-models/app-system-controls.control-model.js.map +1 -1
  25. package/lib/_models/control-models/endpoint-params.control-model.d.ts.map +1 -1
  26. package/lib/_models/control-models/endpoint-params.control-model.js +15 -9
  27. package/lib/_models/control-models/endpoint-params.control-model.js.map +1 -1
  28. package/lib/_models/control-models/http-settings.control-model.d.ts +1 -1
  29. package/lib/_models/control-models/http-settings.control-model.d.ts.map +1 -1
  30. package/lib/_models/control-models/http-settings.control-model.js +3 -1
  31. package/lib/_models/control-models/http-settings.control-model.js.map +1 -1
  32. package/lib/_models/control-models/socket-client-service-params.control-model.js.map +1 -1
  33. package/lib/_models/control-models/socket-event.control-model.js.map +1 -1
  34. package/lib/_models/control-models/socket-presence.control-model.js.map +1 -1
  35. package/lib/_modules/custom-data/custom-data.controller.d.ts.map +1 -1
  36. package/lib/_modules/custom-data/custom-data.controller.js +2 -1
  37. package/lib/_modules/custom-data/custom-data.controller.js.map +1 -1
  38. package/lib/_modules/custom-data/get-custom-data-routing-module.util.d.ts.map +1 -1
  39. package/lib/_modules/custom-data/get-custom-data-routing-module.util.js.map +1 -1
  40. package/lib/_modules/test/get-test-routing-module.util.d.ts.map +1 -1
  41. package/lib/_modules/test/get-test-routing-module.util.js.map +1 -1
  42. package/lib/_modules/test/test.controller.d.ts.map +1 -1
  43. package/lib/_modules/test/test.controller.js.map +1 -1
  44. package/lib/_modules/usage/get-usage-routing-module.util.d.ts.map +1 -1
  45. package/lib/_modules/usage/get-usage-routing-module.util.js +1 -1
  46. package/lib/_modules/usage/get-usage-routing-module.util.js.map +1 -1
  47. package/lib/_modules/usage/usage.controller.d.ts.map +1 -1
  48. package/lib/_modules/usage/usage.controller.js +15 -14
  49. package/lib/_modules/usage/usage.controller.js.map +1 -1
  50. package/lib/_modules/usage/usage.data-service.d.ts +3 -1
  51. package/lib/_modules/usage/usage.data-service.d.ts.map +1 -1
  52. package/lib/_modules/usage/usage.data-service.js +24 -16
  53. package/lib/_modules/usage/usage.data-service.js.map +1 -1
  54. package/lib/_services/base/data.service.d.ts.map +1 -1
  55. package/lib/_services/base/data.service.js +45 -23
  56. package/lib/_services/base/data.service.js.map +1 -1
  57. package/lib/_services/base/db.service.d.ts.map +1 -1
  58. package/lib/_services/base/db.service.js +82 -53
  59. package/lib/_services/base/db.service.js.map +1 -1
  60. package/lib/_services/base/singleton.service.d.ts.map +1 -1
  61. package/lib/_services/base/singleton.service.js.map +1 -1
  62. package/lib/_services/core/api.service.d.ts +21 -13
  63. package/lib/_services/core/api.service.d.ts.map +1 -1
  64. package/lib/_services/core/api.service.js +192 -143
  65. package/lib/_services/core/api.service.js.map +1 -1
  66. package/lib/_services/core/auth.service.d.ts.map +1 -1
  67. package/lib/_services/core/auth.service.js.map +1 -1
  68. package/lib/_services/core/email.service.d.ts +50 -36
  69. package/lib/_services/core/email.service.d.ts.map +1 -1
  70. package/lib/_services/core/email.service.js +329 -94
  71. package/lib/_services/core/email.service.js.map +1 -1
  72. package/lib/_services/core/global.service.d.ts.map +1 -1
  73. package/lib/_services/core/global.service.js +30 -19
  74. package/lib/_services/core/global.service.js.map +1 -1
  75. package/lib/_services/route/controller.service.d.ts.map +1 -1
  76. package/lib/_services/route/controller.service.js.map +1 -1
  77. package/lib/_services/route/routing-module.service.d.ts.map +1 -1
  78. package/lib/_services/route/routing-module.service.js +2 -2
  79. package/lib/_services/route/routing-module.service.js.map +1 -1
  80. package/lib/_services/server/app-extended.server.d.ts.map +1 -1
  81. package/lib/_services/server/app-extended.server.js +19 -14
  82. package/lib/_services/server/app-extended.server.js.map +1 -1
  83. package/lib/_services/server/app-extended.server.spec.js +1 -0
  84. package/lib/_services/server/app-extended.server.spec.js.map +1 -1
  85. package/lib/_services/server/app.server.d.ts +4 -3
  86. package/lib/_services/server/app.server.d.ts.map +1 -1
  87. package/lib/_services/server/app.server.js +107 -52
  88. package/lib/_services/server/app.server.js.map +1 -1
  89. package/lib/_services/server/app.server.spec.js +1 -0
  90. package/lib/_services/server/app.server.spec.js.map +1 -1
  91. package/lib/_services/shared.static-service.js.map +1 -1
  92. package/lib/_services/socket/socket-client.service.js.map +1 -1
  93. package/lib/_services/socket/socket-server.service.js.map +1 -1
  94. package/lib/tsconfig.tsbuildinfo +1 -1
  95. package/nodemon.json +3 -1
  96. package/package.json +9 -8
  97. package/src/_constants/mocks/app-extended-server.mock.ts +6 -2
  98. package/src/_constants/mocks/app-server.mock.ts +7 -1
  99. package/src/_constants/mocks/data-model.mock.ts +2 -2
  100. package/src/_constants/mocks/email-service-collection.mock.ts +2 -1
  101. package/src/_constants/mocks/email-service.mock.ts +2 -2
  102. package/src/_constants/mocks/endpoint.mock.ts +28 -26
  103. package/src/_constants/mocks/socket-server.mock.ts +12 -4
  104. package/src/_enums/index.ts +1 -1
  105. package/src/_models/control-models/api-call-params.control-model.ts +3 -2
  106. package/src/_models/control-models/app-system-controls.control-model copy.ts +1 -1
  107. package/src/_models/control-models/app-system-controls.control-model.ts +1 -1
  108. package/src/_models/control-models/endpoint-params.control-model.ts +39 -16
  109. package/src/_models/control-models/http-settings.control-model.ts +4 -2
  110. package/src/_modules/custom-data/custom-data.controller.ts +55 -51
  111. package/src/_modules/custom-data/get-custom-data-routing-module.util.ts +7 -3
  112. package/src/_modules/test/get-test-routing-module.util.ts +7 -3
  113. package/src/_modules/test/test.controller.ts +98 -96
  114. package/src/_modules/usage/get-usage-routing-module.util.ts +8 -4
  115. package/src/_modules/usage/usage.controller.ts +108 -102
  116. package/src/_modules/usage/usage.data-service.ts +54 -28
  117. package/src/_services/base/data.service.ts +133 -34
  118. package/src/_services/base/db.service.ts +254 -171
  119. package/src/_services/base/singleton.service.ts +1 -1
  120. package/src/_services/core/api.service.ts +348 -218
  121. package/src/_services/core/auth.service.ts +2 -0
  122. package/src/_services/core/email.service.ts +537 -129
  123. package/src/_services/core/global.service.ts +56 -26
  124. package/src/_services/route/controller.service.ts +3 -1
  125. package/src/_services/route/routing-module.service.ts +33 -16
  126. package/src/_services/server/app-extended.server.spec.ts +22 -17
  127. package/src/_services/server/app-extended.server.ts +108 -45
  128. package/src/_services/server/app.server.spec.ts +17 -12
  129. package/src/_services/server/app.server.ts +264 -138
@@ -8,8 +8,6 @@ import {
8
8
  import { DynamoNTS_DBFilter } from '../../_models/types/db-filter.type';
9
9
  import { DynamoNTS_DBUpdate } from '../../_models/types/db-update.type';
10
10
 
11
-
12
-
13
11
  /**
14
12
  * DB Service for MongoDB
15
13
  */
@@ -50,7 +48,8 @@ export class DynamoNTS_DBService<T extends Dynamo_Metadata> {
50
48
  this.lookForDependencyDataSettings();
51
49
  } catch (error) {
52
50
  Dynamo_Log.error(
53
- `\nDynamoNTS_DBService ERROR, The dbService construction failed for ${dataParams.dataName}. ${this.serviceName}`,
51
+ `\nDynamoNTS_DBService ERROR, ` +
52
+ `The dbService construction failed for ${dataParams.dataName}. ${this.serviceName}`,
54
53
  error,
55
54
  new Error()
56
55
  );
@@ -69,14 +68,17 @@ export class DynamoNTS_DBService<T extends Dynamo_Metadata> {
69
68
  data.__lastModifiedBy = issuer;
70
69
 
71
70
  const dataModel = new this.dataModel(data);
72
- let newData: T = await dataModel.save().then(res => {
71
+ let newData: T = await dataModel.save().then((res): T => {
73
72
  if (res) {
74
73
  return res?.toObject() as T;
74
+
75
75
  } else {
76
76
  throw new Dynamo_Error({
77
77
  ...this._getDefaultErrorSettings(
78
78
  'createData',
79
- new Error(`createData failed, save ${this.dataParams.dbName} result not found! (NTS DB)`),
79
+ new Error(
80
+ `createData failed, save ${this.dataParams.dbName} result not found! (NTS DB)`
81
+ ),
80
82
  issuer,
81
83
  ),
82
84
 
@@ -86,9 +88,10 @@ export class DynamoNTS_DBService<T extends Dynamo_Metadata> {
86
88
  issuer,
87
89
  });
88
90
  }
89
- }).catch(error => {
91
+ }).catch((error): void => {
90
92
  if (error?.flag?.includes('DYNAMO')) {
91
93
  throw error;
94
+
92
95
  } else {
93
96
  throw new Dynamo_Error({
94
97
  ...this._getDefaultErrorSettings('createData', error, issuer),
@@ -96,7 +99,8 @@ export class DynamoNTS_DBService<T extends Dynamo_Metadata> {
96
99
  status: 422,
97
100
  errorCode: 'NTS-DBS-CD0',
98
101
  additionalContent: { data },
99
- message: `createData failed, Create new ${this.dataParams.dbName} was unsuccessful (NTS DB)`,
102
+ message:
103
+ `createData failed, Create new ${this.dataParams.dbName} was unsuccessful (NTS DB)`,
100
104
  issuer,
101
105
  });
102
106
  }
@@ -116,8 +120,11 @@ export class DynamoNTS_DBService<T extends Dynamo_Metadata> {
116
120
  data.__lastModified = new Date();
117
121
  data.__lastModifiedBy = issuer;
118
122
 
119
- /** EZ A SZAR TELJESEN SZAR, nem friss, nem a db-be mentett adatokat ad vissza, átír random value-kat össze vissza, WTF */
120
- /* let newData: T = */ await this.dataModel.findByIdAndUpdate(data._id, data).then(res => {
123
+ /**
124
+ * EZ A SZAR TELJESEN SZAR, nem friss, nem a db-be mentett adatokat ad vissza,
125
+ * átír random value-kat össze vissza, WTF
126
+ * */
127
+ /* let newData: T = */ await this.dataModel.findByIdAndUpdate(data._id, data).then((res) => {
121
128
  /* if (res) {
122
129
  //return res?.toObject() as T;
123
130
  } else {
@@ -134,7 +141,7 @@ export class DynamoNTS_DBService<T extends Dynamo_Metadata> {
134
141
  issuer,
135
142
  });
136
143
  } */
137
- }).catch(error => {
144
+ }).catch((error): void => {
138
145
  throw new Dynamo_Error({
139
146
  ...this._getDefaultErrorSettings('modifyData', error, issuer),
140
147
 
@@ -165,17 +172,18 @@ export class DynamoNTS_DBService<T extends Dynamo_Metadata> {
165
172
  });
166
173
  }
167
174
 
168
- let data: T = await this.dataModel.findById(id).then(res => {
169
- return res?.toObject() as T ?? null;
170
- }).catch(error => {
171
- throw new Dynamo_Error({
172
- ...this._getDefaultErrorSettings('getDataById', error),
175
+ let data: T = await this.dataModel
176
+ .findById(id)
177
+ .then((res): T => res?.toObject() as T ?? null)
178
+ .catch((error): void => {
179
+ throw new Dynamo_Error({
180
+ ...this._getDefaultErrorSettings('getDataById', error),
173
181
 
174
- errorCode: 'NTS-DBS-GI0',
175
- additionalContent: { id },
176
- message: `get ${this.dataParams.dbName} by ID was unsuccessful (NTS DB)`,
182
+ errorCode: 'NTS-DBS-GI0',
183
+ additionalContent: { id },
184
+ message: `get ${this.dataParams.dbName} by ID was unsuccessful (NTS DB)`,
185
+ });
177
186
  });
178
- });
179
187
 
180
188
  data = this.stringifyDataId(data, 'getDataById');
181
189
 
@@ -194,7 +202,10 @@ export class DynamoNTS_DBService<T extends Dynamo_Metadata> {
194
202
  throw new Dynamo_Error({
195
203
  ...this._getDefaultErrorSettings(
196
204
  'getDataByDependencyId',
197
- new Error(`dependencyDataIdKey not setted up for this db-service (${this.dataParams.dbName}) (NTS DB)`)
205
+ new Error(
206
+ `dependencyDataIdKey not setted up for this db-service (${this.dataParams.dbName}) ` +
207
+ `(NTS DB)`
208
+ )
198
209
  ),
199
210
 
200
211
  status: 501,
@@ -202,17 +213,19 @@ export class DynamoNTS_DBService<T extends Dynamo_Metadata> {
202
213
  });
203
214
  }
204
215
 
205
- let data: T = await this.dataModel.findOne({ [this.depDataName]: dependencyId }).then(res => {
206
- return res?.toObject() as T ?? null;
207
- }).catch(error => {
208
- throw new Dynamo_Error({
209
- ...this._getDefaultErrorSettings('getDataByDependencyId', error),
216
+ let data: T = await this.dataModel
217
+ .findOne({ [this.depDataName]: dependencyId })
218
+ .then((res): T => res?.toObject() as T ?? null)
219
+ .catch((error): void => {
220
+ throw new Dynamo_Error({
221
+ ...this._getDefaultErrorSettings('getDataByDependencyId', error),
210
222
 
211
- errorCode: 'NTS-DBS-GD1',
212
- additionalContent: { dependencyId },
213
- message: `get ${this.dataParams.dbName} by ${this.depDataName} was unsuccessful (NTS DB)`,
223
+ errorCode: 'NTS-DBS-GD1',
224
+ additionalContent: { dependencyId },
225
+ message:
226
+ `get ${this.dataParams.dbName} by ${this.depDataName} was unsuccessful (NTS DB)`,
227
+ });
214
228
  });
215
- });
216
229
 
217
230
  data = this.stringifyDataId(data, 'getDataByDependencyId');
218
231
 
@@ -231,7 +244,10 @@ export class DynamoNTS_DBService<T extends Dynamo_Metadata> {
231
244
  throw new Dynamo_Error({
232
245
  ...this._getDefaultErrorSettings(
233
246
  'getDataListByDependencyId',
234
- new Error(`dependencyDataIdKey not setted up for this db-service (${this.dataParams.dbName}) (NTS DB)`)
247
+ new Error(
248
+ `dependencyDataIdKey not setted up for this db-service (${this.dataParams.dbName}) ` +
249
+ `(NTS DB)`
250
+ )
235
251
  ),
236
252
 
237
253
  status: 501,
@@ -239,19 +255,21 @@ export class DynamoNTS_DBService<T extends Dynamo_Metadata> {
239
255
  });
240
256
  }
241
257
 
242
- let dataList: T[] = await this.dataModel.find({ [this.depDataName]: dependencyId }).then(res => {
243
- return res as T[] ?? [];
244
- }).catch(error => {
245
- throw new Dynamo_Error({
246
- ...this._getDefaultErrorSettings('getDataListByDependencyId', error),
247
-
248
- errorCode: 'NTS-DBS-GLD1',
249
- additionalContent: { dependencyId },
250
- message: `get ${this.dataParams.dbName} by ${this.depDataName} was unsuccessful (NTS DB)`,
258
+ const dataList: T[] = await this.dataModel
259
+ .find({ [this.depDataName]: dependencyId })
260
+ .then((res): T[] => res as T[] ?? [])
261
+ .catch((error): void => {
262
+ throw new Dynamo_Error({
263
+ ...this._getDefaultErrorSettings('getDataListByDependencyId', error),
264
+
265
+ errorCode: 'NTS-DBS-GLD1',
266
+ additionalContent: { dependencyId },
267
+ message:
268
+ `get ${this.dataParams.dbName} by ${this.depDataName} was unsuccessful (NTS DB)`,
269
+ });
251
270
  });
252
- });
253
271
 
254
- dataList.forEach((data: T) => {
272
+ dataList.forEach((data: T): void => {
255
273
  data = this.stringifyDataId(data, 'getDataListByDependencyId');
256
274
  });
257
275
 
@@ -263,7 +281,10 @@ export class DynamoNTS_DBService<T extends Dynamo_Metadata> {
263
281
  throw new Dynamo_Error({
264
282
  ...this._getDefaultErrorSettings(
265
283
  'getDatasByDependencyIds',
266
- new Error(`dependencyDataIdKey not setted up for this db-service (${this.dataParams.dbName}) (NTS DB)`)
284
+ new Error(
285
+ `dependencyDataIdKey not setted up for this db-service (${this.dataParams.dbName}) ` +
286
+ `(NTS DB)`
287
+ )
267
288
  ),
268
289
 
269
290
  status: 501,
@@ -271,19 +292,20 @@ export class DynamoNTS_DBService<T extends Dynamo_Metadata> {
271
292
  });
272
293
  }
273
294
 
274
- let dataList: T[] = await this.dataModel.find({ [this.depDataName]: { $in: dependencyIds }}).then(res => {
275
- return res as T[] ?? [];
276
- }).catch(error => {
277
- throw new Dynamo_Error({
278
- ...this._getDefaultErrorSettings('getDatasByDependencyIds', error),
295
+ const dataList: T[] = await this.dataModel
296
+ .find({ [this.depDataName]: { $in: dependencyIds }})
297
+ .then((res): T[] => res as T[] ?? [])
298
+ .catch((error): void => {
299
+ throw new Dynamo_Error({
300
+ ...this._getDefaultErrorSettings('getDatasByDependencyIds', error),
279
301
 
280
- errorCode: 'NTS-DBS-GLDS1',
281
- additionalContent: { dependencyIds },
282
- message: `get ${this.dataParams.dbName} by ${this.depDataName} was unsuccessful (NTS DB)`,
302
+ errorCode: 'NTS-DBS-GLDS1',
303
+ additionalContent: { dependencyIds },
304
+ message: `get ${this.dataParams.dbName} by ${this.depDataName} was unsuccessful (NTS DB)`,
305
+ });
283
306
  });
284
- });
285
307
 
286
- dataList.forEach((data: T) => {
308
+ dataList.forEach((data: T): void => {
287
309
  data = this.stringifyDataId(data, 'getDatasByDependencyIds');
288
310
  });
289
311
 
@@ -302,7 +324,10 @@ export class DynamoNTS_DBService<T extends Dynamo_Metadata> {
302
324
  throw new Dynamo_Error({
303
325
  ...this._getDefaultErrorSettings(
304
326
  'getDataListByDependencyIds',
305
- new Error(`dependencyDataIdKey not setted up for this db-service (${this.dataParams.dbName}) (NTS DB)`)
327
+ new Error(
328
+ `dependencyDataIdKey not setted up for this db-service (${this.dataParams.dbName}) ` +
329
+ `(NTS DB)`
330
+ )
306
331
  ),
307
332
 
308
333
  status: 501,
@@ -310,19 +335,21 @@ export class DynamoNTS_DBService<T extends Dynamo_Metadata> {
310
335
  });
311
336
  }
312
337
 
313
- let dataList: T[] = await this.dataModel.find({ [this.depDataName]: { $in: ids }}).then(res => {
314
- return res as T[] ?? [];
315
- }).catch(error => {
316
- throw new Dynamo_Error({
317
- ...this._getDefaultErrorSettings('getDataListByDependencyIds', error),
318
-
319
- errorCode: 'NTS-DBS-GLDS1',
320
- additionalContent: { ids },
321
- message: `get ${this.dataParams.dbName}s by ${this.depDataName}s was unsuccessful (NTS DB)`,
338
+ const dataList: T[] = await this.dataModel
339
+ .find({ [this.depDataName]: { $in: ids } })
340
+ .then((res): T[] => res as T[] ?? [])
341
+ .catch((error): void => {
342
+ throw new Dynamo_Error({
343
+ ...this._getDefaultErrorSettings('getDataListByDependencyIds', error),
344
+
345
+ errorCode: 'NTS-DBS-GLDS1',
346
+ additionalContent: { ids },
347
+ message:
348
+ `get ${this.dataParams.dbName}s by ${this.depDataName}s was unsuccessful (NTS DB)`,
349
+ });
322
350
  });
323
- });
324
351
 
325
- dataList.forEach((data: T) => {
352
+ dataList.forEach((data: T): void => {
326
353
  data = this.stringifyDataId(data, 'getDataListByDependencyIds');
327
354
  });
328
355
 
@@ -336,19 +363,19 @@ export class DynamoNTS_DBService<T extends Dynamo_Metadata> {
336
363
  * @returns dataList
337
364
  */
338
365
  async getAll(): Promise<T[]> {
339
- let dataList: T[] = await this.dataModel.find({})
340
- .then(res => {
341
- return res as T[] ?? [];
342
- }).catch(error => {
343
- throw new Dynamo_Error({
344
- ...this._getDefaultErrorSettings('getAll', error),
345
-
346
- errorCode: 'NTS-DBS-GA0',
347
- message: `get all ${this.dataParams.dbName} was unsuccessful (NTS DB)`,
366
+ const dataList: T[] = await this.dataModel
367
+ .find({})
368
+ .then((res): T[] => res as T[] ?? [])
369
+ .catch((error): void => {
370
+ throw new Dynamo_Error({
371
+ ...this._getDefaultErrorSettings('getAll', error),
372
+
373
+ errorCode: 'NTS-DBS-GA0',
374
+ message: `get all ${this.dataParams.dbName} was unsuccessful (NTS DB)`,
375
+ });
348
376
  });
349
- });
350
377
 
351
- dataList.forEach((data: T) => {
378
+ dataList.forEach((data: T): void => {
352
379
  data = this.stringifyDataId(data, 'getAll');
353
380
  });
354
381
 
@@ -360,15 +387,17 @@ export class DynamoNTS_DBService<T extends Dynamo_Metadata> {
360
387
  * @param id id
361
388
  */
362
389
  async deleteDataById(id: string): Promise<void> {
363
- await this.dataModel.findByIdAndDelete(id).catch(error => {
364
- throw new Dynamo_Error({
365
- ...this._getDefaultErrorSettings('deleteDataById', error),
366
-
367
- errorCode: 'NTS-DBS-DD0',
368
- additionalContent: { id },
369
- message: `delete ${this.dataParams.dbName} was unsuccessful (NTS DB)`,
390
+ await this.dataModel
391
+ .findByIdAndDelete(id)
392
+ .catch((error): void => {
393
+ throw new Dynamo_Error({
394
+ ...this._getDefaultErrorSettings('deleteDataById', error),
395
+
396
+ errorCode: 'NTS-DBS-DD0',
397
+ additionalContent: { id },
398
+ message: `delete ${this.dataParams.dbName} was unsuccessful (NTS DB)`,
399
+ });
370
400
  });
371
- });
372
401
  }
373
402
 
374
403
  /**
@@ -380,7 +409,10 @@ export class DynamoNTS_DBService<T extends Dynamo_Metadata> {
380
409
  throw new Dynamo_Error({
381
410
  ...this._getDefaultErrorSettings(
382
411
  'deleteDataByDependencyId',
383
- new Error(`dependencyDataIdKey not setted up for this db-service (${this.dataParams.dbName}) (NTS DB)`)
412
+ new Error(
413
+ `dependencyDataIdKey not setted up for this db-service (${this.dataParams.dbName}) ` +
414
+ `(NTS DB)`
415
+ )
384
416
  ),
385
417
 
386
418
  status: 501,
@@ -388,15 +420,18 @@ export class DynamoNTS_DBService<T extends Dynamo_Metadata> {
388
420
  });
389
421
  }
390
422
 
391
- await this.dataModel.deleteMany({ [this.depDataName]: dependencyId }).catch(error => {
392
- throw new Dynamo_Error({
393
- ...this._getDefaultErrorSettings('deleteDataByDependencyId', error),
423
+ await this.dataModel
424
+ .deleteMany({ [this.depDataName]: dependencyId })
425
+ .catch((error): void => {
426
+ throw new Dynamo_Error({
427
+ ...this._getDefaultErrorSettings('deleteDataByDependencyId', error),
394
428
 
395
- errorCode: 'NTS-DBS-DDD1',
396
- additionalContent: { dependencyId },
397
- message: `delete ${this.dataParams.dbName} by ${this.depDataName} was unsuccessful (NTS DB)`,
429
+ errorCode: 'NTS-DBS-DDD1',
430
+ additionalContent: { dependencyId },
431
+ message:
432
+ `delete ${this.dataParams.dbName} by ${this.depDataName} was unsuccessful (NTS DB)`,
433
+ });
398
434
  });
399
- });
400
435
  }
401
436
 
402
437
  /**
@@ -407,7 +442,10 @@ export class DynamoNTS_DBService<T extends Dynamo_Metadata> {
407
442
  * @param narrowByDependencyIds id
408
443
  * @returns dataList
409
444
  */
410
- async searchData(filterBy: DynamoNTS_DBFilter<T>, narrowByDependencyIds?: string[]): Promise<T[]> {
445
+ async searchData(
446
+ filterBy: DynamoNTS_DBFilter<T>,
447
+ narrowByDependencyIds?: string[]
448
+ ): Promise<T[]> {
411
449
  const filter = {};
412
450
 
413
451
  if (0 < narrowByDependencyIds.length) {
@@ -415,7 +453,10 @@ export class DynamoNTS_DBService<T extends Dynamo_Metadata> {
415
453
  throw new Dynamo_Error({
416
454
  ...this._getDefaultErrorSettings(
417
455
  'searchData',
418
- new Error(`dependencyDataIdKey not setted up for this db-service (${this.dataParams.dbName}) (NTS DB)`)
456
+ new Error(
457
+ `dependencyDataIdKey not setted up for this db-service (${this.dataParams.dbName}) ` +
458
+ `(NTS DB)`
459
+ )
419
460
  ),
420
461
 
421
462
  status: 501,
@@ -426,7 +467,7 @@ export class DynamoNTS_DBService<T extends Dynamo_Metadata> {
426
467
  filter[this.depDataName] = { $in: narrowByDependencyIds };
427
468
  }
428
469
 
429
- await this.dataParams.modelParams.forEach((modelParam: Dynamo_DataPropertyParams) => {
470
+ await this.dataParams.modelParams.forEach((modelParam: Dynamo_DataPropertyParams): void => {
430
471
  if (
431
472
  (filterBy[modelParam.key] !== null && filterBy[modelParam.key] !== undefined) ||
432
473
  filterBy[modelParam.key + 'Range']
@@ -435,6 +476,7 @@ export class DynamoNTS_DBService<T extends Dynamo_Metadata> {
435
476
  // inverz search filter (for Range and Array functions)
436
477
  if (modelParam.key.includes('Range')) {
437
478
  const searchParamKeyWithoutRange = modelParam.key.split('Range')[0];
479
+
438
480
  if (
439
481
  filterBy[searchParamKeyWithoutRange] !== null &&
440
482
  filterBy[searchParamKeyWithoutRange] !== undefined
@@ -457,9 +499,11 @@ export class DynamoNTS_DBService<T extends Dynamo_Metadata> {
457
499
  if (filterBy[modelParam.key + 'Range']) {
458
500
  if (filterBy[modelParam.key + 'Range'].from || filterBy[modelParam.key + 'Range'].to) {
459
501
  filter[modelParam.key] = {};
502
+
460
503
  if (filterBy[modelParam.key + 'Range'].from) {
461
504
  filter[modelParam.key].$gte = filterBy[modelParam.key + 'Range'].from;
462
505
  }
506
+
463
507
  if (filterBy[modelParam.key + 'Range'].to) {
464
508
  filter[modelParam.key].$lte = filterBy[modelParam.key + 'Range'].to;
465
509
  }
@@ -473,10 +517,10 @@ export class DynamoNTS_DBService<T extends Dynamo_Metadata> {
473
517
  }
474
518
  });
475
519
 
476
- let dataList: T[] = await this.dataModel
520
+ const dataList: T[] = await this.dataModel
477
521
  .find(filter)
478
- .then(res => res ?? [])
479
- .catch(error => {
522
+ .then((res): T[] => res as T[] ?? [])
523
+ .catch((error): void => {
480
524
  throw new Dynamo_Error({
481
525
  ...this._getDefaultErrorSettings('searchData', error),
482
526
 
@@ -486,7 +530,7 @@ export class DynamoNTS_DBService<T extends Dynamo_Metadata> {
486
530
  });
487
531
  });
488
532
 
489
- dataList.forEach((data: T) => {
533
+ dataList.forEach((data: T): void => {
490
534
  data = this.stringifyDataId(data, 'searchData');
491
535
  });
492
536
 
@@ -525,17 +569,18 @@ export class DynamoNTS_DBService<T extends Dynamo_Metadata> {
525
569
  * @returns {T} data: T
526
570
  */
527
571
  async findOne(filterBy: DynamoNTS_DBFilter<T>): Promise<T> {
528
- let data: T = await this.dataModel.findOne(filterBy).then(res => {
529
- return res as T ?? null;
530
- }).catch(error => {
531
- throw new Dynamo_Error({
532
- ...this._getDefaultErrorSettings('findOne', error),
572
+ let data: T = await this.dataModel
573
+ .findOne(filterBy)
574
+ .then((res): T => res as T ?? null)
575
+ .catch((error): void => {
576
+ throw new Dynamo_Error({
577
+ ...this._getDefaultErrorSettings('findOne', error),
533
578
 
534
- errorCode: 'NTS-DBS-FO0',
535
- additionalContent: { filterBy },
536
- message: `findOne ${this.dataParams.dbName} was unsuccessful (NTS DB)`,
579
+ errorCode: 'NTS-DBS-FO0',
580
+ additionalContent: { filterBy },
581
+ message: `findOne ${this.dataParams.dbName} was unsuccessful (NTS DB)`,
582
+ });
537
583
  });
538
- });
539
584
 
540
585
  data = this.stringifyDataId(data, 'findOne');
541
586
 
@@ -570,20 +615,20 @@ export class DynamoNTS_DBService<T extends Dynamo_Metadata> {
570
615
  * @returns {T[]} dataList: T[]
571
616
  */
572
617
  async find(filterBy: DynamoNTS_DBFilter<T>): Promise<T[]> {
573
- let dataList: T[] = await this.dataModel.find(filterBy)
574
- .then(res => {
575
- return res as T[] ?? [];
576
- }).catch(error => {
577
- throw new Dynamo_Error({
578
- ...this._getDefaultErrorSettings('find', error),
579
-
580
- errorCode: 'NTS-DBS-F0',
581
- additionalContent: { filterBy },
582
- message: `find ${this.dataParams.dbName} was unsuccessful (NTS DB)`,
618
+ const dataList: T[] = await this.dataModel
619
+ .find(filterBy)
620
+ .then((res): T[] => res as T[] ?? [])
621
+ .catch((error): void => {
622
+ throw new Dynamo_Error({
623
+ ...this._getDefaultErrorSettings('find', error),
624
+
625
+ errorCode: 'NTS-DBS-F0',
626
+ additionalContent: { filterBy },
627
+ message: `find ${this.dataParams.dbName} was unsuccessful (NTS DB)`,
628
+ });
583
629
  });
584
- });
585
630
 
586
- dataList.forEach((data: T) => {
631
+ dataList.forEach((data: T): void => {
587
632
  data = this.stringifyDataId(data, 'find');
588
633
  });
589
634
 
@@ -623,23 +668,29 @@ export class DynamoNTS_DBService<T extends Dynamo_Metadata> {
623
668
  * //
624
669
  * @returns {T[]} dataList: T[]
625
670
  */
626
- async findWithPaging(filterBy: DynamoNTS_DBFilter<T>, page: number, pageSize: number, sort?: any): Promise<T[]> {
627
- let dataList: T[] = await this.dataModel.find(filterBy)
628
- .sort(sort)
629
- .skip(page * pageSize)
630
- .limit(pageSize)
631
- .then(res => res ?? [])
632
- .catch(error => {
633
- throw new Dynamo_Error({
634
- ...this._getDefaultErrorSettings('findWithPaging', error),
635
-
636
- errorCode: 'NTS-DBS-WP0',
637
- additionalContent: { filterBy, page, pageSize, sort },
638
- message: `findWithPaging ${this.dataParams.dbName} was unsuccessful (NTS DB)`,
671
+ async findWithPaging(
672
+ filterBy: DynamoNTS_DBFilter<T>,
673
+ page: number,
674
+ pageSize: number,
675
+ sort?: any
676
+ ): Promise<T[]> {
677
+ const dataList: T[] = await this.dataModel
678
+ .find(filterBy)
679
+ .sort(sort)
680
+ .skip(page * pageSize)
681
+ .limit(pageSize)
682
+ .then((res): T => res ?? [])
683
+ .catch((error): void => {
684
+ throw new Dynamo_Error({
685
+ ...this._getDefaultErrorSettings('findWithPaging', error),
686
+
687
+ errorCode: 'NTS-DBS-WP0',
688
+ additionalContent: { filterBy, page, pageSize, sort },
689
+ message: `findWithPaging ${this.dataParams.dbName} was unsuccessful (NTS DB)`,
690
+ });
639
691
  });
640
- });
641
692
 
642
- dataList.forEach((data: T) => {
693
+ dataList.forEach((data: T): void => {
643
694
  data = this.stringifyDataId(data, 'findWithPaging');
644
695
  });
645
696
 
@@ -659,18 +710,19 @@ export class DynamoNTS_DBService<T extends Dynamo_Metadata> {
659
710
  update.__lastModified = new Date();
660
711
  update.__lastModifiedBy = issuer;
661
712
 
662
- let newData: T = await this.dataModel.findByIdAndUpdate(id, update).then(res => {
663
- return res?.toObject() as T ?? null;
664
- }).catch(error => {
665
- throw new Dynamo_Error({
666
- ...this._getDefaultErrorSettings('findByIdAndUpdate', error, issuer),
667
-
668
- errorCode: 'NTS-DBS-FIU0',
669
- additionalContent: { id, update },
670
- message: `findByIdAndUpdate ${this.dataParams.dbName} was unsuccessful (NTS DB)`,
671
- issuer,
713
+ let newData: T = await this.dataModel
714
+ .findByIdAndUpdate(id, update)
715
+ .then((res): T => res?.toObject() as T ?? null)
716
+ .catch((error): void => {
717
+ throw new Dynamo_Error({
718
+ ...this._getDefaultErrorSettings('findByIdAndUpdate', error, issuer),
719
+
720
+ errorCode: 'NTS-DBS-FIU0',
721
+ additionalContent: { id, update },
722
+ message: `findByIdAndUpdate ${this.dataParams.dbName} was unsuccessful (NTS DB)`,
723
+ issuer,
724
+ });
672
725
  });
673
- });
674
726
 
675
727
  newData = this.stringifyDataId(newData, 'findByIdAndUpdate');
676
728
 
@@ -729,20 +781,26 @@ export class DynamoNTS_DBService<T extends Dynamo_Metadata> {
729
781
  * $unset: // Removes the specified field from a document. (set: "" to value)
730
782
  * //
731
783
  */
732
- async updateOne(filterBy: DynamoNTS_DBFilter<T>, update: DynamoNTS_DBUpdate<T>, issuer: string): Promise<void> {
784
+ async updateOne(
785
+ filterBy: DynamoNTS_DBFilter<T>,
786
+ update: DynamoNTS_DBUpdate<T>,
787
+ issuer: string
788
+ ): Promise<void> {
733
789
  update.__lastModified = new Date();
734
790
  update.__lastModifiedBy = issuer;
735
791
 
736
- await this.dataModel.updateOne(filterBy, update).catch(error => {
737
- throw new Dynamo_Error({
738
- ...this._getDefaultErrorSettings('updateOne', error, issuer),
739
-
740
- errorCode: 'NTS-DBS-UO0',
741
- additionalContent: { filterBy, update },
742
- message: `updateOne ${this.dataParams.dbName} was unsuccessful (NTS DB)`,
743
- issuer,
792
+ await this.dataModel
793
+ .updateOne(filterBy, update)
794
+ .catch((error): void => {
795
+ throw new Dynamo_Error({
796
+ ...this._getDefaultErrorSettings('updateOne', error, issuer),
797
+
798
+ errorCode: 'NTS-DBS-UO0',
799
+ additionalContent: { filterBy, update },
800
+ message: `updateOne ${this.dataParams.dbName} was unsuccessful (NTS DB)`,
801
+ issuer,
802
+ });
744
803
  });
745
- });
746
804
  }
747
805
 
748
806
  /**
@@ -796,20 +854,26 @@ export class DynamoNTS_DBService<T extends Dynamo_Metadata> {
796
854
  * $unset: // Removes the specified field from a document. (set: "" to value)
797
855
  * //
798
856
  */
799
- async updateMany(filterBy: DynamoNTS_DBFilter<T>, update: DynamoNTS_DBUpdate<T>, issuer: string): Promise<void> {
857
+ async updateMany(
858
+ filterBy: DynamoNTS_DBFilter<T>,
859
+ update: DynamoNTS_DBUpdate<T>,
860
+ issuer: string
861
+ ): Promise<void> {
800
862
  update.__lastModified = new Date();
801
863
  update.__lastModifiedBy = issuer;
802
864
 
803
- await this.dataModel.updateMany(filterBy, update).catch(error => {
804
- throw new Dynamo_Error({
805
- ...this._getDefaultErrorSettings('updateMany', error, issuer),
806
-
807
- errorCode: 'NTS-DBS-UM0',
808
- additionalContent: { filterBy, update },
809
- message: `updateMany ${this.dataParams.dbName} was unsuccessful (NTS DB)`,
810
- issuer,
865
+ await this.dataModel
866
+ .updateMany(filterBy, update)
867
+ .catch((error): void => {
868
+ throw new Dynamo_Error({
869
+ ...this._getDefaultErrorSettings('updateMany', error, issuer),
870
+
871
+ errorCode: 'NTS-DBS-UM0',
872
+ additionalContent: { filterBy, update },
873
+ message: `updateMany ${this.dataParams.dbName} was unsuccessful (NTS DB)`,
874
+ issuer,
875
+ });
811
876
  });
812
- });
813
877
  }
814
878
 
815
879
  // ----------------------------------------------------------------------------------
@@ -825,7 +889,11 @@ export class DynamoNTS_DBService<T extends Dynamo_Metadata> {
825
889
  data = JSON.parse(JSON.stringify(data));
826
890
 
827
891
  if (typeof data._id !== 'string' || typeof data._id === 'object') {
828
- Dynamo_Log.error(`data._id stringifying failed! Please notfiy the DynamoNTS developers! (${fnName})`, new Error());
892
+ Dynamo_Log.error(
893
+ `data._id stringifying failed! Please notfiy the DynamoNTS developers! ` +
894
+ `(${fnName})`,
895
+ new Error()
896
+ );
829
897
  }
830
898
  }
831
899
  }
@@ -854,6 +922,7 @@ export class DynamoNTS_DBService<T extends Dynamo_Metadata> {
854
922
  */
855
923
  private getSchema(): mongoose.Schema {
856
924
  let schema: any = this.buildMongooseSchemaByModelParams();
925
+
857
926
  schema = this.addDynamo_MetadataToSchema(schema);
858
927
 
859
928
  // tslint:disable-next-line: no-string-literal
@@ -877,36 +946,50 @@ export class DynamoNTS_DBService<T extends Dynamo_Metadata> {
877
946
  params = this.dataParams.modelParams;
878
947
  }
879
948
 
880
- params.forEach((property: Dynamo_DataPropertyParams) => {
949
+ params.forEach((property: Dynamo_DataPropertyParams): void => {
881
950
  const beType = this.getBEType(property.type);
882
- if (beType !== Object || !property?.subObjectParams || property?.subObjectParams?.length == 0) {
951
+
952
+ if (
953
+ beType !== Object ||
954
+ !property?.subObjectParams ||
955
+ property?.subObjectParams?.length == 0
956
+ ) {
883
957
  schemaSettingsObj[property.key] = {
884
958
  type: beType
885
959
  };
960
+
886
961
  if (property.index) {
887
962
  schemaSettingsObj[property.key].index = true;
888
963
  }
964
+
889
965
  if (property.unique) {
890
966
  schemaSettingsObj[property.key].unique = true;
891
967
  }
968
+
892
969
  if (property.required) {
893
970
  schemaSettingsObj[property.key].required = true;
894
971
  }
972
+
895
973
  if (property.minlength) {
896
974
  schemaSettingsObj[property.key].minlength = property.minlength;
897
975
  }
976
+
898
977
  if (property.maxlength) {
899
978
  schemaSettingsObj[property.key].maxlength = property.maxlength;
900
979
  }
901
980
  } else {
902
- schemaSettingsObj[property.key] = this.buildMongooseSchemaByModelParams(property.subObjectParams);
981
+ schemaSettingsObj[property.key] = this.buildMongooseSchemaByModelParams(
982
+ property.subObjectParams
983
+ );
903
984
  }
904
985
  });
905
986
 
906
987
  return schemaSettingsObj;
907
988
  }
908
989
 
909
- private getBEType(type: string): String | Number | Boolean | Object | Function | Array<any> | Date {
990
+ private getBEType(
991
+ type: string
992
+ ): String | Number | Boolean | Object | Function | Array<any> | Date {
910
993
  switch (type) {
911
994
 
912
995
  case 'string':
@@ -954,7 +1037,7 @@ export class DynamoNTS_DBService<T extends Dynamo_Metadata> {
954
1037
  */
955
1038
  private lookForDependencyDataSettings(): void {
956
1039
  const dependencyParam: Dynamo_DataPropertyParams = this.dataParams.modelParams.find(
957
- (modelParams: Dynamo_DataPropertyParams) => modelParams.isDependencyHook
1040
+ (modelParams: Dynamo_DataPropertyParams): boolean => modelParams.isDependencyHook
958
1041
  );
959
1042
 
960
1043
  if (dependencyParam) {