@futdevpro/nts-dynamo 1.14.75 → 1.14.77

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 (33) hide show
  1. package/build/_modules/ai/_modules/open-ai/_services/data-services/oai-vector-data.service.d.ts +1 -0
  2. package/build/_modules/ai/_modules/open-ai/_services/data-services/oai-vector-data.service.d.ts.map +1 -1
  3. package/build/_modules/ai/_modules/open-ai/_services/data-services/oai-vector-data.service.js +6 -0
  4. package/build/_modules/ai/_modules/open-ai/_services/data-services/oai-vector-data.service.js.map +1 -1
  5. package/build/_modules/defaults/_collections/default-endpoints.util.d.ts +237 -0
  6. package/build/_modules/defaults/_collections/default-endpoints.util.d.ts.map +1 -0
  7. package/build/_modules/defaults/_collections/default-endpoints.util.js +299 -0
  8. package/build/_modules/defaults/_collections/default-endpoints.util.js.map +1 -0
  9. package/build/_modules/defaults/index.d.ts +1 -0
  10. package/build/_modules/defaults/index.d.ts.map +1 -1
  11. package/build/_modules/defaults/index.js +2 -0
  12. package/build/_modules/defaults/index.js.map +1 -1
  13. package/build/_services/base/data.service.d.ts +7 -0
  14. package/build/_services/base/data.service.d.ts.map +1 -1
  15. package/build/_services/base/data.service.js +199 -86
  16. package/build/_services/base/data.service.js.map +1 -1
  17. package/build/_services/route/controller.service.d.ts +18 -0
  18. package/build/_services/route/controller.service.d.ts.map +1 -1
  19. package/build/_services/route/controller.service.js +18 -0
  20. package/build/_services/route/controller.service.js.map +1 -1
  21. package/build/_services/server/app.server.d.ts.map +1 -1
  22. package/build/_services/server/app.server.js +1 -0
  23. package/build/_services/server/app.server.js.map +1 -1
  24. package/build/_services/shared.static-service.spec.js +1 -7
  25. package/build/_services/shared.static-service.spec.js.map +1 -1
  26. package/package.json +4 -4
  27. package/src/_modules/ai/_modules/open-ai/_services/data-services/oai-vector-data.service.ts +8 -0
  28. package/src/_modules/defaults/_collections/default-endpoints.util.ts +372 -0
  29. package/src/_modules/defaults/index.ts +3 -0
  30. package/src/_services/base/data.service.ts +205 -87
  31. package/src/_services/route/controller.service.ts +18 -0
  32. package/src/_services/server/app.server.ts +1 -0
  33. package/src/_services/shared.static-service.spec.ts +1 -10
@@ -21,7 +21,10 @@ import {
21
21
  DyFM_RangeValue,
22
22
  DyFM_SearchQuery,
23
23
  DyFM_SearchResult,
24
- DyFM_SpecialSearch
24
+ DyFM_SpecialSearch,
25
+ DyFM_String,
26
+ DyFM_ValidationError,
27
+ DyFM_ValidationErrors
25
28
  } from '@futdevpro/fsm-dynamo';
26
29
 
27
30
  import { DyNTS_getArchivedDBName } from '../../_collections/archive.util';
@@ -55,11 +58,15 @@ import { DyNTS_DBService } from './db.service';
55
58
  export class DyNTS_DataService<T extends DyFM_Metadata> {
56
59
 
57
60
  serviceName: string;
61
+ serviceNameShortCode: string;
62
+ /** error code base */
63
+ ecBase: string = `${DyNTS_global_settings.systemShortCodeName}|`;
58
64
 
59
65
  dataDBService: DyNTS_DBService<T>;
60
66
  haveArchiveDataService: boolean;
61
67
 
62
68
  /* data: T; */
69
+ /** @deprecated */
63
70
  dataList: T[] = [];
64
71
  /* issuer: string; */
65
72
 
@@ -87,6 +94,7 @@ export class DyNTS_DataService<T extends DyFM_Metadata> {
87
94
  constructor(
88
95
  /**
89
96
  * Initial data, this will be used by functions on default
97
+ * @deprecated
90
98
  */
91
99
  public data: T,
92
100
  /**
@@ -101,6 +109,8 @@ export class DyNTS_DataService<T extends DyFM_Metadata> {
101
109
  ) {
102
110
  try {
103
111
  this.serviceName = this.constructor?.name;
112
+ this.serviceNameShortCode = DyFM_String.anyNameToShortCode(this.serviceName);
113
+ this.ecBase = `${DyNTS_global_settings.systemShortCodeName}|${this.serviceNameShortCode}|`;
104
114
  this.dataDBService = DyNTS_GlobalService.getDBService<T>(this.dataParams);
105
115
  /* this.data = data; */
106
116
  /* this.dataParams = dataParams; */
@@ -138,7 +148,7 @@ export class DyNTS_DataService<T extends DyFM_Metadata> {
138
148
  new Error('getArchiveDataService is not implemented!')
139
149
  ),
140
150
 
141
- errorCode: `${DyNTS_global_settings.systemShortCodeName}|DyNTS-DS0-GAD0`,
151
+ errorCode: `${this.ecBase}DyNTS-DS-GAD0`,
142
152
  });
143
153
  }
144
154
 
@@ -166,7 +176,7 @@ export class DyNTS_DataService<T extends DyFM_Metadata> {
166
176
  throw new DyFM_Error({
167
177
  ...this._getDefaultErrorSettings('getAll', error),
168
178
 
169
- errorCode: `${DyNTS_global_settings.systemShortCodeName}|DyNTS-DS0-GA0`,
179
+ errorCode: `${this.ecBase}DyNTS-DS-GA0`,
170
180
  });
171
181
  }
172
182
  }
@@ -209,7 +219,7 @@ export class DyNTS_DataService<T extends DyFM_Metadata> {
209
219
  )
210
220
  ),
211
221
 
212
- errorCode: `${DyNTS_global_settings.systemShortCodeName}|DyNTS-DS0-GI1`,
222
+ errorCode: `${this.ecBase}DyNTS-DS-GI1`,
213
223
  });
214
224
  }
215
225
 
@@ -232,7 +242,7 @@ export class DyNTS_DataService<T extends DyFM_Metadata> {
232
242
  } else {
233
243
  throw new DyFM_Error({
234
244
  ...this._getDefaultErrorSettings('getDataById', error),
235
- errorCode: `${DyNTS_global_settings.systemShortCodeName}|DyNTS-DS0-GI0`,
245
+ errorCode: `${this.ecBase}DyNTS-DS-GI0`,
236
246
  });
237
247
  }
238
248
  }
@@ -247,7 +257,7 @@ export class DyNTS_DataService<T extends DyFM_Metadata> {
247
257
  new Error(`getDataByIds failed, ids is missing! (${this.dataParams.dataName})`)
248
258
  ),
249
259
 
250
- errorCode: `${DyNTS_global_settings.systemShortCodeName}|DyNTS-DS0-GIS1`,
260
+ errorCode: `${this.ecBase}DyNTS-DS-GIS1`,
251
261
  });
252
262
  }
253
263
 
@@ -266,7 +276,7 @@ export class DyNTS_DataService<T extends DyFM_Metadata> {
266
276
  throw new DyFM_Error({
267
277
  ...this._getDefaultErrorSettings('getDataByIds', error),
268
278
 
269
- errorCode: `${DyNTS_global_settings.systemShortCodeName}|DyNTS-DS0-GIS0`,
279
+ errorCode: `${this.ecBase}DyNTS-DS-GIS0`,
270
280
  });
271
281
  }
272
282
  }
@@ -284,7 +294,7 @@ export class DyNTS_DataService<T extends DyFM_Metadata> {
284
294
  throw new DyFM_Error({
285
295
  ...this._getDefaultErrorSettings('getDataListByIds', error),
286
296
 
287
- errorCode: `${DyNTS_global_settings.systemShortCodeName}|DyNTS-DS0-GIL0`,
297
+ errorCode: `${this.ecBase}DyNTS-DS-GIL0`,
288
298
  });
289
299
  }
290
300
  }
@@ -308,7 +318,7 @@ export class DyNTS_DataService<T extends DyFM_Metadata> {
308
318
  )
309
319
  ),
310
320
 
311
- errorCode: `${DyNTS_global_settings.systemShortCodeName}|DyNTS-DS0-GD1`,
321
+ errorCode: `${this.ecBase}DyNTS-DS-GD1`,
312
322
  });
313
323
  }
314
324
 
@@ -326,7 +336,7 @@ export class DyNTS_DataService<T extends DyFM_Metadata> {
326
336
  )
327
337
  ),
328
338
 
329
- errorCode: `${DyNTS_global_settings.systemShortCodeName}|DyNTS-DS0-GD2`,
339
+ errorCode: `${this.ecBase}DyNTS-DS-GD2`,
330
340
  });
331
341
  }
332
342
  } else if (!dependencyIds) {
@@ -351,7 +361,7 @@ export class DyNTS_DataService<T extends DyFM_Metadata> {
351
361
  )
352
362
  ),
353
363
 
354
- errorCode: `${DyNTS_global_settings.systemShortCodeName}|DyNTS-DS0-GD3`,
364
+ errorCode: `${this.ecBase}DyNTS-DS-GD3`,
355
365
  });
356
366
  }
357
367
 
@@ -394,15 +404,15 @@ export class DyNTS_DataService<T extends DyFM_Metadata> {
394
404
  return dataExists;
395
405
  } catch (error) {
396
406
  if ([
397
- `${DyNTS_global_settings.systemShortCodeName}|DyNTS-DS0-GD1`,
398
- `${DyNTS_global_settings.systemShortCodeName}|DyNTS-DS0-GD2`
407
+ `${this.ecBase}DyNTS-DS0-GD1`,
408
+ `${this.ecBase}DyNTS-DS0-GD2`
399
409
  ].includes(error?.errorCode)) {
400
410
  throw error;
401
411
  } else {
402
412
  throw new DyFM_Error({
403
413
  ...this._getDefaultErrorSettings('getDataByDependencyId', error),
404
414
 
405
- errorCode: `${DyNTS_global_settings.systemShortCodeName}|DyNTS-DS0-GD0`,
415
+ errorCode: `${this.ecBase}DyNTS-DS-GD0`,
406
416
  });
407
417
  }
408
418
  }
@@ -424,7 +434,7 @@ export class DyNTS_DataService<T extends DyFM_Metadata> {
424
434
  )
425
435
  ),
426
436
 
427
- errorCode: `${DyNTS_global_settings.systemShortCodeName}|DyNTS-DS0-GDS1`,
437
+ errorCode: `${this.ecBase}DyNTS-DS-GDS1`,
428
438
  });
429
439
  }
430
440
 
@@ -442,7 +452,7 @@ export class DyNTS_DataService<T extends DyFM_Metadata> {
442
452
  )
443
453
  ),
444
454
 
445
- errorCode: `${DyNTS_global_settings.systemShortCodeName}|DyNTS-DS0-GDS2`,
455
+ errorCode: `${this.ecBase}DyNTS-DS-GDS2`,
446
456
  });
447
457
  }
448
458
  }
@@ -457,7 +467,7 @@ export class DyNTS_DataService<T extends DyFM_Metadata> {
457
467
  )
458
468
  ),
459
469
 
460
- errorCode: `${DyNTS_global_settings.systemShortCodeName}|DyNTS-DS0-GDS3`,
470
+ errorCode: `${this.ecBase}DyNTS-DS-GDS3`,
461
471
  });
462
472
  }
463
473
 
@@ -476,15 +486,15 @@ export class DyNTS_DataService<T extends DyFM_Metadata> {
476
486
  return dataList;
477
487
  } catch (error) {
478
488
  if ([
479
- `${DyNTS_global_settings.systemShortCodeName}|DyNTS-DS0-GDS1`,
480
- `${DyNTS_global_settings.systemShortCodeName}|DyNTS-DS0-GDS2`
489
+ `${this.ecBase}DyNTS-DS0-GDS1`,
490
+ `${this.ecBase}DyNTS-DS0-GDS2`
481
491
  ].includes(error?.errorCode)) {
482
492
  throw error;
483
493
  } else {
484
494
  throw new DyFM_Error({
485
495
  ...this._getDefaultErrorSettings('getDataListByDependencyIds', error),
486
496
 
487
- errorCode: `${DyNTS_global_settings.systemShortCodeName}|DyNTS-DS0-GDS0`,
497
+ errorCode: `${this.ecBase}DyNTS-DS0-GDS0`,
488
498
  });
489
499
  }
490
500
  }
@@ -525,15 +535,15 @@ export class DyNTS_DataService<T extends DyFM_Metadata> {
525
535
  return dataListExists;
526
536
  } catch (error) {
527
537
  if ([
528
- `${DyNTS_global_settings.systemShortCodeName}|DyNTS-DS0-GLD1`,
529
- `${DyNTS_global_settings.systemShortCodeName}|DyNTS-DS0-GLD2`
538
+ `${this.ecBase}DyNTS-DS0-GLD1`,
539
+ `${this.ecBase}DyNTS-DS0-GLD2`
530
540
  ].includes(error?.errorCode)) {
531
541
  throw error;
532
542
  } else {
533
543
  throw new DyFM_Error({
534
544
  ...this._getDefaultErrorSettings('getDataListByDependencyId', error),
535
545
 
536
- errorCode: `${DyNTS_global_settings.systemShortCodeName}|DyNTS-DS0-GLD0`,
546
+ errorCode: `${this.ecBase}DyNTS-DS0-GLD0`,
537
547
 
538
548
  });
539
549
  }
@@ -593,7 +603,7 @@ export class DyNTS_DataService<T extends DyFM_Metadata> {
593
603
  throw new DyFM_Error({
594
604
  ...this._getDefaultErrorSettings('findData', error),
595
605
 
596
- errorCode: `${DyNTS_global_settings.systemShortCodeName}|DyNTS-DS0-FD0`,
606
+ errorCode: `${this.ecBase}DyNTS-DS0-FD0`,
597
607
  });
598
608
  }
599
609
  }
@@ -652,7 +662,7 @@ export class DyNTS_DataService<T extends DyFM_Metadata> {
652
662
  throw new DyFM_Error({
653
663
  ...this._getDefaultErrorSettings('findDataList', error),
654
664
 
655
- errorCode: `${DyNTS_global_settings.systemShortCodeName}|DyNTS-DS0-FDS0`,
665
+ errorCode: `${this.ecBase}DyNTS-DS0-FDS0`,
656
666
  });
657
667
  }
658
668
  }
@@ -765,7 +775,7 @@ export class DyNTS_DataService<T extends DyFM_Metadata> {
765
775
  )
766
776
  ),
767
777
 
768
- errorCode: `${DyNTS_global_settings.systemShortCodeName}|DyNTS-DS0-UD1`,
778
+ errorCode: `${this.ecBase}DyNTS-DS0-UD1`,
769
779
  additionalContent: {
770
780
  data: this.data,
771
781
  filterBy: set.filterBy,
@@ -779,7 +789,7 @@ export class DyNTS_DataService<T extends DyFM_Metadata> {
779
789
  throw new DyFM_Error({
780
790
  ...this._getDefaultErrorSettings('updateData', error),
781
791
 
782
- errorCode: `${DyNTS_global_settings.systemShortCodeName}|DyNTS-DS0-UD0`,
792
+ errorCode: `${this.ecBase}DyNTS-DS0-UD0`,
783
793
  });
784
794
  }
785
795
  }
@@ -797,7 +807,7 @@ export class DyNTS_DataService<T extends DyFM_Metadata> {
797
807
  new Error(`no data to save! (${this.dataParams.dataName})`)
798
808
  ),
799
809
 
800
- errorCode: `${DyNTS_global_settings.systemShortCodeName}|DyNTS-DS0-ED0`,
810
+ errorCode: `${this.ecBase}DyNTS-DS0-ED0`,
801
811
  });
802
812
  }
803
813
 
@@ -846,7 +856,7 @@ export class DyNTS_DataService<T extends DyFM_Metadata> {
846
856
  throw new DyFM_Error({
847
857
  ...this._getDefaultErrorSettings('patchData', error),
848
858
 
849
- errorCode: `${DyNTS_global_settings.systemShortCodeName}|DyNTS-DS0-PD0`,
859
+ errorCode: `${this.ecBase}DyNTS-DS0-PD0`,
850
860
  });
851
861
  }
852
862
  }
@@ -883,7 +893,7 @@ export class DyNTS_DataService<T extends DyFM_Metadata> {
883
893
  )
884
894
  ),
885
895
 
886
- errorCode: `${DyNTS_global_settings.systemShortCodeName}|DyNTS-DS0-SD1`,
896
+ errorCode: `${this.ecBase}DyNTS-DS0-SD1`,
887
897
  additionalContent: {
888
898
  data: data,
889
899
  },
@@ -916,7 +926,7 @@ export class DyNTS_DataService<T extends DyFM_Metadata> {
916
926
  )
917
927
  ),
918
928
 
919
- errorCode: `${DyNTS_global_settings.systemShortCodeName}|DyNTS-DS0-SD2`,
929
+ errorCode: `${this.ecBase}DyNTS-DS0-SD2`,
920
930
  additionalContent: {
921
931
  data: data,
922
932
  },
@@ -945,7 +955,7 @@ export class DyNTS_DataService<T extends DyFM_Metadata> {
945
955
  )
946
956
  ),
947
957
 
948
- errorCode: `${DyNTS_global_settings.systemShortCodeName}|DyNTS-DS0-SD3`,
958
+ errorCode: `${this.ecBase}DyNTS-DS0-SD3`,
949
959
  additionalContent: {
950
960
  data: data,
951
961
  },
@@ -967,7 +977,7 @@ export class DyNTS_DataService<T extends DyFM_Metadata> {
967
977
  )
968
978
  ),
969
979
 
970
- errorCode: `${DyNTS_global_settings.systemShortCodeName}|DyNTS-DS0-SD4`,
980
+ errorCode: `${this.ecBase}DyNTS-DS0-SD4`,
971
981
  });
972
982
  }
973
983
 
@@ -986,7 +996,7 @@ export class DyNTS_DataService<T extends DyFM_Metadata> {
986
996
  )
987
997
  ),
988
998
 
989
- errorCode: `${DyNTS_global_settings.systemShortCodeName}|DyNTS-DS0-SD4`,
999
+ errorCode: `${this.ecBase}DyNTS-DS0-SD4`,
990
1000
  });
991
1001
  }
992
1002
  }
@@ -1025,7 +1035,7 @@ export class DyNTS_DataService<T extends DyFM_Metadata> {
1025
1035
  )
1026
1036
  ),
1027
1037
 
1028
- errorCode: `${DyNTS_global_settings.systemShortCodeName}|DyNTS-DS0-SD5`,
1038
+ errorCode: `${this.ecBase}DyNTS-DS0-SD5`,
1029
1039
  additionalContent: {
1030
1040
  data: data,
1031
1041
  },
@@ -1040,11 +1050,11 @@ export class DyNTS_DataService<T extends DyFM_Metadata> {
1040
1050
 
1041
1051
  } catch (error) {
1042
1052
  if ([
1043
- `${DyNTS_global_settings.systemShortCodeName}|DyNTS-DS0-SD1`,
1044
- `${DyNTS_global_settings.systemShortCodeName}|DyNTS-DS0-SD2`,
1045
- `${DyNTS_global_settings.systemShortCodeName}|DyNTS-DS0-SD3`,
1046
- `${DyNTS_global_settings.systemShortCodeName}|DyNTS-DS0-SD4`,
1047
- `${DyNTS_global_settings.systemShortCodeName}|DyNTS-DS0-SD5`,
1053
+ `${this.ecBase}DyNTS-DS0-SD1`,
1054
+ `${this.ecBase}DyNTS-DS0-SD2`,
1055
+ `${this.ecBase}DyNTS-DS0-SD3`,
1056
+ `${this.ecBase}DyNTS-DS0-SD4`,
1057
+ `${this.ecBase}DyNTS-DS0-SD5`,
1048
1058
  ].includes(error?.errorCode)) {
1049
1059
  throw error;
1050
1060
 
@@ -1052,7 +1062,7 @@ export class DyNTS_DataService<T extends DyFM_Metadata> {
1052
1062
  throw new DyFM_Error({
1053
1063
  ...this._getDefaultErrorSettings('saveData', error),
1054
1064
 
1055
- errorCode: `${DyNTS_global_settings.systemShortCodeName}|DyNTS-DS0-SD0`,
1065
+ errorCode: `${this.ecBase}DyNTS-DS0-SD0`,
1056
1066
  });
1057
1067
  }
1058
1068
  }
@@ -1075,7 +1085,7 @@ export class DyNTS_DataService<T extends DyFM_Metadata> {
1075
1085
  new Error(`deleteData failed, ID is missing! (${this.dataParams.dataName})`)
1076
1086
  ),
1077
1087
 
1078
- errorCode: `${DyNTS_global_settings.systemShortCodeName}|DyNTS-DS0-DD1`,
1088
+ errorCode: `${this.ecBase}DyNTS-DS0-DD1`,
1079
1089
  });
1080
1090
  }
1081
1091
 
@@ -1088,7 +1098,7 @@ export class DyNTS_DataService<T extends DyFM_Metadata> {
1088
1098
  new Error(`deleteData failed, data not found! (${this.dataParams.dataName})`)
1089
1099
  ),
1090
1100
 
1091
- errorCode: `${DyNTS_global_settings.systemShortCodeName}|DyNTS-DS0-DD2`,
1101
+ errorCode: `${this.ecBase}DyNTS-DS0-DD2`,
1092
1102
  });
1093
1103
  }
1094
1104
 
@@ -1118,7 +1128,7 @@ export class DyNTS_DataService<T extends DyFM_Metadata> {
1118
1128
  throw new DyFM_Error({
1119
1129
  ...this._getDefaultErrorSettings('deleteData', error),
1120
1130
 
1121
- errorCode: `${DyNTS_global_settings.systemShortCodeName}|DyNTS-DS0-DD0`,
1131
+ errorCode: `${this.ecBase}DyNTS-DS0-DD0`,
1122
1132
  });
1123
1133
  }
1124
1134
  }
@@ -1163,7 +1173,7 @@ export class DyNTS_DataService<T extends DyFM_Metadata> {
1163
1173
  throw new DyFM_Error({
1164
1174
  ...this._getDefaultErrorSettings('deleteAllData', error),
1165
1175
 
1166
- errorCode: `${DyNTS_global_settings.systemShortCodeName}|DyNTS-DS0-DAD0`,
1176
+ errorCode: `${this.ecBase}DyNTS-DS0-DAD0`,
1167
1177
  });
1168
1178
  }
1169
1179
  }
@@ -1181,7 +1191,7 @@ export class DyNTS_DataService<T extends DyFM_Metadata> {
1181
1191
  new Error(`restoreDeletedData failed, ID is missing! (${this.dataParams.dataName})`)
1182
1192
  ),
1183
1193
 
1184
- errorCode: `${DyNTS_global_settings.systemShortCodeName}|DyNTS-DS0-RD1`,
1194
+ errorCode: `${this.ecBase}DyNTS-DS0-RD1`,
1185
1195
  });
1186
1196
  }
1187
1197
 
@@ -1204,7 +1214,7 @@ export class DyNTS_DataService<T extends DyFM_Metadata> {
1204
1214
  )
1205
1215
  ),
1206
1216
 
1207
- errorCode: `${DyNTS_global_settings.systemShortCodeName}|DyNTS-DS0-RD2`,
1217
+ errorCode: `${this.ecBase}DyNTS-DS0-RD2`,
1208
1218
  });
1209
1219
  }
1210
1220
 
@@ -1216,7 +1226,7 @@ export class DyNTS_DataService<T extends DyFM_Metadata> {
1216
1226
  throw new DyFM_Error({
1217
1227
  ...this._getDefaultErrorSettings('restoreDeletedData', error),
1218
1228
 
1219
- errorCode: `${DyNTS_global_settings.systemShortCodeName}|DyNTS-DS0-RD0`,
1229
+ errorCode: `${this.ecBase}DyNTS-DS0-RD0`,
1220
1230
  });
1221
1231
  }
1222
1232
  }
@@ -1232,7 +1242,7 @@ export class DyNTS_DataService<T extends DyFM_Metadata> {
1232
1242
  if (!data) {
1233
1243
  throw new DyFM_Error({
1234
1244
  ...this._getDefaultErrorSettings('validateForSave', new Error('No data to validate! (validateForSave)')),
1235
- errorCode: `${DyNTS_global_settings.systemShortCodeName}|DyNTS-DS0-VBP0`,
1245
+ errorCode: `${this.ecBase}DyNTS-DS0-VBP0`,
1236
1246
  });
1237
1247
  }
1238
1248
 
@@ -1245,7 +1255,7 @@ export class DyNTS_DataService<T extends DyFM_Metadata> {
1245
1255
  ...this._getDefaultErrorSettings('validateForSave', error),
1246
1256
 
1247
1257
  status: 522,
1248
- errorCode: `${DyNTS_global_settings.systemShortCodeName}|DyNTS-DS0-VD0`,
1258
+ errorCode: `${this.ecBase}DyNTS-DS0-VD0`,
1249
1259
  });
1250
1260
  }
1251
1261
  }
@@ -1268,7 +1278,7 @@ export class DyNTS_DataService<T extends DyFM_Metadata> {
1268
1278
  ((data as any)?.name ? `\n The failed data's name: ${(data as any).name}` : '')
1269
1279
  )
1270
1280
  ),
1271
- errorCode: `${DyNTS_global_settings.systemShortCodeName}|DyNTS-DS0-VDP1`,
1281
+ errorCode: `${this.ecBase}DyNTS-DS0-VDP1`,
1272
1282
  });
1273
1283
  } else {
1274
1284
  return;
@@ -1283,39 +1293,47 @@ export class DyNTS_DataService<T extends DyFM_Metadata> {
1283
1293
  ((data as any)?.name ? `\n The failed data's name: ${(data as any).name}` : '')
1284
1294
  )
1285
1295
  ),
1286
- errorCode: `${DyNTS_global_settings.systemShortCodeName}|DyNTS-DS0-VDP2`,
1296
+ errorCode: `${this.ecBase}DyNTS-DS0-VDP2`,
1287
1297
  additionalContent: {
1288
1298
  data: data,
1289
1299
  },
1290
1300
  });
1291
1301
  }
1292
1302
 
1293
- const errors: DyFM_Error[] = [];
1303
+ const validationErrors: DyFM_Error[] = [];
1294
1304
 
1295
1305
  Object.values(properties).forEach(
1296
1306
  (propertyParams: DyFM_DataProperty_Params<any, T>) => {
1297
1307
  try {
1298
1308
  this.validateProperty(data, data[propertyParams.key], propertyParams, isSubObjectOf);
1299
1309
  } catch (error) {
1300
- errors.push(error);
1310
+ validationErrors.push(error);
1301
1311
  }
1302
1312
  }
1303
1313
  );
1304
1314
 
1305
- if (errors.length > 0) {
1306
- if (errors.length === 1) {
1307
- throw errors[0];
1315
+ if (validationErrors.length > 0) {
1316
+ if (validationErrors.length === 1) {
1317
+ throw validationErrors[0];
1308
1318
  } else {
1319
+ const validationErrorsSet: DyFM_ValidationErrors = {};
1320
+ validationErrors.forEach((error: DyFM_Error) => {
1321
+ Object.keys(error.validationErrors).forEach((key: string) => {
1322
+ validationErrors[key] = error.validationErrors[key];
1323
+ });
1324
+ });
1325
+
1309
1326
  throw new DyFM_Error({
1310
1327
  ...this._getDefaultErrorSettings(
1311
1328
  'validateByPropertyParams',
1312
1329
  new Error(
1313
1330
  'Validation failed! (multiple validation errors)' +
1314
- errors.map((error: DyFM_Error) => `\n ${DyFM_Error.getAnyMessage(error)}`).join('')
1331
+ validationErrors.map((error: DyFM_Error) => `\n ${DyFM_Error.getAnyMessage(error)}`).join('')
1315
1332
  )
1316
1333
  ),
1317
- errorCode: `${DyNTS_global_settings.systemShortCodeName}|DyNTS-DS0-VDP3`,
1318
- errors: errors,
1334
+ errorCode: `${this.ecBase}DyNTS-DS0-VDP3`,
1335
+ errors: validationErrors,
1336
+ validationErrors: validationErrorsSet,
1319
1337
  });
1320
1338
  }
1321
1339
  }
@@ -1327,7 +1345,7 @@ export class DyNTS_DataService<T extends DyFM_Metadata> {
1327
1345
  ...this._getDefaultErrorSettings('validateByPropertyParams', error),
1328
1346
 
1329
1347
  status: 522,
1330
- errorCode: `${DyNTS_global_settings.systemShortCodeName}|DyNTS-DS0-VDP0`,
1348
+ errorCode: `${this.ecBase}DyNTS-DS0-VDP0`,
1331
1349
  });
1332
1350
  }
1333
1351
  }
@@ -1368,8 +1386,17 @@ export class DyNTS_DataService<T extends DyFM_Metadata> {
1368
1386
  ),
1369
1387
 
1370
1388
  status: 522,
1371
- errorCode: `${DyNTS_global_settings.systemShortCodeName}|DyNTS-DS0-VP1`,
1389
+ errorCode: `${this.ecBase}DyNTS-DS0-VP1`,
1372
1390
  userMessage: this.defaultValidationErrorUserMsg,
1391
+ validationErrors: {
1392
+ [propertyParams.key]: {
1393
+ message: `validateProperty failed, "${this.getPropertyKey(propertyParams, isSubObjectOf)}" is missing! ` +
1394
+ `(index or required in "${this.dataParams.dataName}" dataParams) ` +
1395
+ ((data as any)?.name ? `\n The failed data's name: ${(data as any).name}` : ''),
1396
+ code: `${this.ecBase}DyNTS-DS0-VP1`,
1397
+ userMessage: 'The property is required and must be a valid value!',
1398
+ },
1399
+ },
1373
1400
  __localStack: this.dataParams.stackLocation,
1374
1401
  additionalContent: {
1375
1402
  data: data,
@@ -1390,8 +1417,17 @@ export class DyNTS_DataService<T extends DyFM_Metadata> {
1390
1417
  ),
1391
1418
 
1392
1419
  status: 522,
1393
- errorCode: `${DyNTS_global_settings.systemShortCodeName}|DyNTS-DS0-VP2`,
1420
+ errorCode: `${this.ecBase}DyNTS-DS0-VP2`,
1394
1421
  userMessage: this.defaultValidationErrorUserMsg,
1422
+ validationErrors: {
1423
+ [propertyParams.key]: {
1424
+ message: `validateProperty failed, "${this.getPropertyKey(propertyParams, isSubObjectOf)}" is forbidden! ` +
1425
+ `(${this.dataParams.dataName}) ` +
1426
+ ((data as any)?.name ? `\n The failed data's name: ${(data as any).name}` : ''),
1427
+ code: `${this.ecBase}DyNTS-DS0-VP2`,
1428
+ userMessage: 'The property modification is forbidden!',
1429
+ },
1430
+ },
1395
1431
  __localStack: this.dataParams.stackLocation,
1396
1432
  additionalContent: {
1397
1433
  data: data,
@@ -1422,8 +1458,17 @@ export class DyNTS_DataService<T extends DyFM_Metadata> {
1422
1458
  ),
1423
1459
 
1424
1460
  status: 522,
1425
- errorCode: `${DyNTS_global_settings.systemShortCodeName}|DyNTS-DS0-VP3`,
1461
+ errorCode: `${this.ecBase}DyNTS-DS0-VP3`,
1426
1462
  userMessage: this.defaultValidationErrorUserMsg,
1463
+ validationErrors: {
1464
+ [propertyParams.key]: {
1465
+ message: `validateProperty failed, "${this.getPropertyKey(propertyParams, isSubObjectOf)}" is not a valid date! ` +
1466
+ `(${this.dataParams.dataName})` +
1467
+ ((data as any)?.name ? `\n The failed data's name: ${(data as any).name}` : ''),
1468
+ code: `${this.ecBase}DyNTS-DS0-VP3`,
1469
+ userMessage: 'The property is required and must be a valid date!',
1470
+ },
1471
+ },
1427
1472
  __localStack: this.dataParams.stackLocation,
1428
1473
  additionalContent: {
1429
1474
  data: data,
@@ -1445,8 +1490,17 @@ export class DyNTS_DataService<T extends DyFM_Metadata> {
1445
1490
  ),
1446
1491
 
1447
1492
  status: 522,
1448
- errorCode: `${DyNTS_global_settings.systemShortCodeName}|DyNTS-DS0-VP4`,
1493
+ errorCode: `${this.ecBase}DyNTS-DS0-VP4`,
1449
1494
  userMessage: this.defaultValidationErrorUserMsg,
1495
+ validationErrors: {
1496
+ [propertyParams.key]: {
1497
+ message: `validateProperty failed, "${this.getPropertyKey(propertyParams, isSubObjectOf)}" is not a valid number! ` +
1498
+ `(${this.dataParams.dataName})` +
1499
+ ((data as any)?.name ? `\n The failed data's name: ${(data as any).name}` : ''),
1500
+ code: `${this.ecBase}DyNTS-DS0-VP4`,
1501
+ userMessage: 'The property is required and must be a valid number!',
1502
+ },
1503
+ },
1450
1504
  __localStack: this.dataParams.stackLocation,
1451
1505
  additionalContent: {
1452
1506
  data: data,
@@ -1469,8 +1523,18 @@ export class DyNTS_DataService<T extends DyFM_Metadata> {
1469
1523
  ),
1470
1524
 
1471
1525
  status: 522,
1472
- errorCode: `${DyNTS_global_settings.systemShortCodeName}|DyNTS-DS0-VP5`,
1526
+ errorCode: `${this.ecBase}DyNTS-DS0-VP5`,
1473
1527
  userMessage: this.defaultValidationErrorUserMsg,
1528
+ validationErrors: {
1529
+ [propertyParams.key]: {
1530
+ message: `validateProperty failed, "${this.getPropertyKey(propertyParams, isSubObjectOf)}" is not a valid string! ` +
1531
+ `(type: ${typeof propertyValue}, value: "${propertyValue}") ` +
1532
+ `(${this.dataParams.dataName})` +
1533
+ ((data as any)?.name ? `\n The failed data's name: ${(data as any).name}` : ''),
1534
+ code: `${this.ecBase}DyNTS-DS0-VP5`,
1535
+ userMessage: 'The property is required and must be a valid string!',
1536
+ },
1537
+ },
1474
1538
  __localStack: this.dataParams.stackLocation,
1475
1539
  additionalContent: {
1476
1540
  data: data,
@@ -1493,8 +1557,18 @@ export class DyNTS_DataService<T extends DyFM_Metadata> {
1493
1557
  ),
1494
1558
 
1495
1559
  status: 522,
1496
- errorCode: `${DyNTS_global_settings.systemShortCodeName}|DyNTS-DS0-VP6`,
1560
+ errorCode: `${this.ecBase}DyNTS-DS0-VP6`,
1497
1561
  userMessage: this.defaultValidationErrorUserMsg,
1562
+ validationErrors: {
1563
+ [propertyParams.key]: {
1564
+ message: `validateProperty failed, "${this.getPropertyKey(propertyParams, isSubObjectOf)}" is not a valid boolean! ` +
1565
+ `(type: ${typeof propertyValue}, value: "${propertyValue}") ` +
1566
+ `(${this.dataParams.dataName})` +
1567
+ ((data as any)?.name ? `\n The failed data's name: ${(data as any).name}` : ''),
1568
+ code: `${this.ecBase}DyNTS-DS0-VP6`,
1569
+ userMessage: 'The property is required and must be a valid boolean!',
1570
+ },
1571
+ },
1498
1572
  __localStack: this.dataParams.stackLocation,
1499
1573
  });
1500
1574
  }
@@ -1514,8 +1588,18 @@ export class DyNTS_DataService<T extends DyFM_Metadata> {
1514
1588
  ),
1515
1589
 
1516
1590
  status: 522,
1517
- errorCode: `${DyNTS_global_settings.systemShortCodeName}|DyNTS-DS0-VP7`,
1591
+ errorCode: `${this.ecBase}DyNTS-DS0-VP7`,
1518
1592
  userMessage: this.defaultValidationErrorUserMsg,
1593
+ validationErrors: {
1594
+ [propertyParams.key]: {
1595
+ message: `validateProperty failed, "${this.getPropertyKey(propertyParams, isSubObjectOf)}" is not a valid object! ` +
1596
+ `(type: ${typeof propertyValue}, value: "${propertyValue}") ` +
1597
+ `(${this.dataParams.dataName})` +
1598
+ (data as any)?.name ? `\n That failed data's name: ${(data as any).name}` : '',
1599
+ code: `${this.ecBase}DyNTS-DS0-VP7`,
1600
+ userMessage: 'The property is required and must be an object!',
1601
+ },
1602
+ },
1519
1603
  __localStack: this.dataParams.stackLocation,
1520
1604
  });
1521
1605
  }
@@ -1539,8 +1623,18 @@ export class DyNTS_DataService<T extends DyFM_Metadata> {
1539
1623
  ),
1540
1624
 
1541
1625
  status: 522,
1542
- errorCode: `${DyNTS_global_settings.systemShortCodeName}|DyNTS-DS0-VP8`,
1626
+ errorCode: `${this.ecBase}DyNTS-DS0-VP8`,
1543
1627
  userMessage: this.defaultValidationErrorUserMsg,
1628
+ validationErrors: {
1629
+ [propertyParams.key]: {
1630
+ message: `validateProperty failed, "${this.getPropertyKey(propertyParams, isSubObjectOf)}" is not a valid array! ` +
1631
+ `(type: ${typeof propertyValue}, value: "${propertyValue}") ` +
1632
+ `(${this.dataParams.dataName})` +
1633
+ ((data as any)?.name ? `\n The failed data's name: ${(data as any).name}` : ''),
1634
+ code: `${this.ecBase}DyNTS-DS0-VP8`,
1635
+ userMessage: 'The property is required and must be a valid array!',
1636
+ },
1637
+ },
1544
1638
  __localStack: this.dataParams.stackLocation,
1545
1639
  });
1546
1640
  }
@@ -1569,8 +1663,17 @@ export class DyNTS_DataService<T extends DyFM_Metadata> {
1569
1663
  ),
1570
1664
 
1571
1665
  status: 522,
1572
- errorCode: `${DyNTS_global_settings.systemShortCodeName}|DyNTS-DS0-VP9`,
1666
+ errorCode: `${this.ecBase}VP9`,
1573
1667
  userMessage: this.defaultValidationErrorUserMsg,
1668
+ validationErrors: {
1669
+ [propertyParams.key]: {
1670
+ message: `validateProperty failed, "${this.getPropertyKey(propertyParams, isSubObjectOf)}" is not a valid function! ` +
1671
+ `(${this.dataParams.dataName})` +
1672
+ ((data as any)?.name ? `\n The failed data's name: ${(data as any).name}` : ''),
1673
+ code: `${this.ecBase}DyNTS-DS0-VP9`,
1674
+ userMessage: 'The property is required and must be a valid function!',
1675
+ },
1676
+ },
1574
1677
  __localStack: this.dataParams.stackLocation,
1575
1678
  });
1576
1679
  } */
@@ -1590,8 +1693,19 @@ export class DyNTS_DataService<T extends DyFM_Metadata> {
1590
1693
  ),
1591
1694
 
1592
1695
  status: 522,
1593
- errorCode: `${DyNTS_global_settings.systemShortCodeName}|DyNTS-DS0-VP10`,
1696
+ errorCode: `${this.ecBase}DyNTS-DS0-VP10`,
1594
1697
  userMessage: this.defaultValidationErrorUserMsg,
1698
+ validationErrors: {
1699
+ [propertyParams.key]: {
1700
+ message: `validateProperty failed, "${this.getPropertyKey(propertyParams, isSubObjectOf)}" is not a valid property type! ` +
1701
+ `(type: ${propertyParams.type}, nonBasicType: ${propertyParams.nonBasicType}) ` +
1702
+ `(value type: ${typeof propertyValue}, value: "${propertyValue}") ` +
1703
+ `(${this.dataParams.dataName})` +
1704
+ ((data as any)?.name ? `\n The failed data's name: ${(data as any).name}` : ''),
1705
+ code: `${this.ecBase}DyNTS-DS0-VP10`,
1706
+ userMessage: 'The property is required and must be a valid property type!',
1707
+ },
1708
+ },
1595
1709
  __localStack: this.dataParams.stackLocation,
1596
1710
  });
1597
1711
  }
@@ -1641,7 +1755,7 @@ export class DyNTS_DataService<T extends DyFM_Metadata> {
1641
1755
  throw new DyFM_Error({
1642
1756
  ...this._getDefaultErrorSettings('searchData', error),
1643
1757
 
1644
- errorCode: `${DyNTS_global_settings.systemShortCodeName}|DyNTS-DS0-SD0`,
1758
+ errorCode: `${this.ecBase}DyNTS-DS0-SD0`,
1645
1759
  });
1646
1760
  }
1647
1761
  }
@@ -1752,7 +1866,7 @@ export class DyNTS_DataService<T extends DyFM_Metadata> {
1752
1866
  )
1753
1867
  ),
1754
1868
 
1755
- errorCode: `${DyNTS_global_settings.systemShortCodeName}|DyNTS-DS0-SD1`,
1869
+ errorCode: `${this.ecBase}DyNTS-DS0-SD1`,
1756
1870
  });
1757
1871
  }
1758
1872
 
@@ -1795,7 +1909,7 @@ export class DyNTS_DataService<T extends DyFM_Metadata> {
1795
1909
  throw new DyFM_Error({
1796
1910
  ...this._getDefaultErrorSettings('searchData', error),
1797
1911
 
1798
- errorCode: `${DyNTS_global_settings.systemShortCodeName}|DyNTS-DS0-SD0`,
1912
+ errorCode: `${this.ecBase}DyNTS-DS0-SD0`,
1799
1913
  });
1800
1914
  }
1801
1915
  }
@@ -1816,7 +1930,7 @@ export class DyNTS_DataService<T extends DyFM_Metadata> {
1816
1930
  )
1817
1931
  ),
1818
1932
 
1819
- errorCode: `${DyNTS_global_settings.systemShortCodeName}|DyNTS-DS0-GFF1`,
1933
+ errorCode: `${this.ecBase}DyNTS-DS0-GFF1`,
1820
1934
  });
1821
1935
  }
1822
1936
 
@@ -1831,7 +1945,7 @@ export class DyNTS_DataService<T extends DyFM_Metadata> {
1831
1945
  )
1832
1946
  ),
1833
1947
 
1834
- errorCode: `${DyNTS_global_settings.systemShortCodeName}|DyNTS-DS0-GFF3`,
1948
+ errorCode: `${this.ecBase}DyNTS-DS0-GFF3`,
1835
1949
  });
1836
1950
  }
1837
1951
  } else {
@@ -1845,7 +1959,7 @@ export class DyNTS_DataService<T extends DyFM_Metadata> {
1845
1959
  )
1846
1960
  ),
1847
1961
 
1848
- errorCode: `${DyNTS_global_settings.systemShortCodeName}|DyNTS-DS0-GFF2`,
1962
+ errorCode: `${this.ecBase}DyNTS-DS0-GFF2`,
1849
1963
  });
1850
1964
  }
1851
1965
 
@@ -1864,7 +1978,7 @@ export class DyNTS_DataService<T extends DyFM_Metadata> {
1864
1978
  )
1865
1979
  ),
1866
1980
 
1867
- errorCode: `${DyNTS_global_settings.systemShortCodeName}|DyNTS-DS0-GFF4`,
1981
+ errorCode: `${this.ecBase}DyNTS-DS0-GFF4`,
1868
1982
  });
1869
1983
  }
1870
1984
 
@@ -1968,7 +2082,7 @@ export class DyNTS_DataService<T extends DyFM_Metadata> {
1968
2082
  )
1969
2083
  ),
1970
2084
 
1971
- errorCode: `${DyNTS_global_settings.systemShortCodeName}|DyNTS-DS0-GFF5`,
2085
+ errorCode: `${this.ecBase}DyNTS-DS0-GFF5`,
1972
2086
  });
1973
2087
  }
1974
2088
 
@@ -1992,7 +2106,7 @@ export class DyNTS_DataService<T extends DyFM_Metadata> {
1992
2106
  )
1993
2107
  ),
1994
2108
 
1995
- errorCode: `${DyNTS_global_settings.systemShortCodeName}|DyNTS-DS0-GFF6`,
2109
+ errorCode: `${this.ecBase}DyNTS-DS0-GFF6`,
1996
2110
  additionalContent: {
1997
2111
  searchValue: searchValue,
1998
2112
  },
@@ -2028,7 +2142,7 @@ export class DyNTS_DataService<T extends DyFM_Metadata> {
2028
2142
  )
2029
2143
  ),
2030
2144
 
2031
- errorCode: `${DyNTS_global_settings.systemShortCodeName}|DyNTS-DS0-GFF7`,
2145
+ errorCode: `${this.ecBase}DyNTS-DS0-GFF7`,
2032
2146
  });
2033
2147
  }
2034
2148
 
@@ -2045,7 +2159,7 @@ export class DyNTS_DataService<T extends DyFM_Metadata> {
2045
2159
  error
2046
2160
  ),
2047
2161
 
2048
- errorCode: `${DyNTS_global_settings.systemShortCodeName}|DyNTS-DS0-GFF0`,
2162
+ errorCode: `${this.ecBase}DyNTS-DS0-GFF0`,
2049
2163
  additionalContent: {
2050
2164
  key: key,
2051
2165
  searchValue: searchValue,
@@ -2108,7 +2222,7 @@ export class DyNTS_DataService<T extends DyFM_Metadata> {
2108
2222
  )
2109
2223
  ),
2110
2224
 
2111
- errorCode: `${DyNTS_global_settings.systemShortCodeName}|DyNTS-DS0-GSF1`,
2225
+ errorCode: `${this.ecBase}DyNTS-DS0-GSF1`,
2112
2226
  });
2113
2227
  }
2114
2228
 
@@ -2130,7 +2244,7 @@ export class DyNTS_DataService<T extends DyFM_Metadata> {
2130
2244
  )
2131
2245
  ),
2132
2246
 
2133
- errorCode: `${DyNTS_global_settings.systemShortCodeName}|DyNTS-DS0-GSF1`,
2247
+ errorCode: `${this.ecBase}DyNTS-DS0-GSF1`,
2134
2248
  });
2135
2249
  }
2136
2250
 
@@ -2203,7 +2317,7 @@ export class DyNTS_DataService<T extends DyFM_Metadata> {
2203
2317
  )
2204
2318
  ),
2205
2319
 
2206
- errorCode: `${DyNTS_global_settings.systemShortCodeName}|DyNTS-DS0-GSF2`,
2320
+ errorCode: `${this.ecBase}DyNTS-DS0-GSF2`,
2207
2321
  });
2208
2322
  }
2209
2323
  }
@@ -2282,7 +2396,7 @@ export class DyNTS_DataService<T extends DyFM_Metadata> {
2282
2396
  )
2283
2397
  ),
2284
2398
 
2285
- errorCode: `${DyNTS_global_settings.systemShortCodeName}|DyNTS-DS0-GSF2`,
2399
+ errorCode: `${this.ecBase}DyNTS-DS0-GSF2`,
2286
2400
  });
2287
2401
  }
2288
2402
  } */
@@ -2329,7 +2443,7 @@ export class DyNTS_DataService<T extends DyFM_Metadata> {
2329
2443
  ),
2330
2444
 
2331
2445
  status: 500,
2332
- errorCode: `${DyNTS_global_settings.systemShortCodeName}|DyNTS-DS0-GDDB0`,
2446
+ errorCode: `${this.ecBase}DyNTS-DS0-GDDB0`,
2333
2447
  });
2334
2448
  }
2335
2449
 
@@ -2341,6 +2455,10 @@ export class DyNTS_DataService<T extends DyFM_Metadata> {
2341
2455
  return this.depDataDBService;
2342
2456
  }
2343
2457
  }
2458
+
2459
+ getProvidedData(data: T): T {
2460
+ return data;
2461
+ }
2344
2462
 
2345
2463
  private _getDefaultErrorSettings(
2346
2464
  fnName: string,