@futdevpro/nts-dynamo 1.9.38 → 1.9.40

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 (49) hide show
  1. package/build/_collections/archive.util.d.ts +3 -0
  2. package/build/_collections/archive.util.d.ts.map +1 -0
  3. package/build/_collections/archive.util.js +9 -0
  4. package/build/_collections/archive.util.js.map +1 -0
  5. package/build/_models/control-models/endpoint-params.control-model.d.ts.map +1 -1
  6. package/build/_models/control-models/endpoint-params.control-model.js +19 -2
  7. package/build/_models/control-models/endpoint-params.control-model.js.map +1 -1
  8. package/build/_modules/socket/_models/socket-client-service-params.control-model.d.ts.map +1 -1
  9. package/build/_modules/socket/_models/socket-client-service-params.control-model.js +1 -1
  10. package/build/_modules/socket/_models/socket-client-service-params.control-model.js.map +1 -1
  11. package/build/_modules/socket/_models/socket-presence.control-model.js +1 -1
  12. package/build/_modules/socket/_models/socket-presence.control-model.js.map +1 -1
  13. package/build/_modules/socket/_services/socket-server.service.d.ts.map +1 -1
  14. package/build/_modules/socket/_services/socket-server.service.js +44 -28
  15. package/build/_modules/socket/_services/socket-server.service.js.map +1 -1
  16. package/build/_services/base/archive-data.service.d.ts +24 -0
  17. package/build/_services/base/archive-data.service.d.ts.map +1 -0
  18. package/build/_services/base/archive-data.service.js +135 -0
  19. package/build/_services/base/archive-data.service.js.map +1 -0
  20. package/build/_services/base/data.service.d.ts +3 -2
  21. package/build/_services/base/data.service.d.ts.map +1 -1
  22. package/build/_services/base/data.service.js +61 -46
  23. package/build/_services/base/data.service.js.map +1 -1
  24. package/build/_services/base/db.service.d.ts +6 -5
  25. package/build/_services/base/db.service.d.ts.map +1 -1
  26. package/build/_services/base/db.service.js +31 -14
  27. package/build/_services/base/db.service.js.map +1 -1
  28. package/build/_services/core/global.service.d.ts.map +1 -1
  29. package/build/_services/core/global.service.js +11 -0
  30. package/build/_services/core/global.service.js.map +1 -1
  31. package/build/_services/server/app.server.d.ts.map +1 -1
  32. package/build/_services/server/app.server.js +8 -6
  33. package/build/_services/server/app.server.js.map +1 -1
  34. package/build/index.d.ts +7 -6
  35. package/build/index.d.ts.map +1 -1
  36. package/build/index.js +12 -6
  37. package/build/index.js.map +1 -1
  38. package/package.json +3 -3
  39. package/src/_collections/archive.util.ts +9 -0
  40. package/src/_models/control-models/endpoint-params.control-model.ts +32 -3
  41. package/src/_modules/socket/_models/socket-client-service-params.control-model.ts +2 -1
  42. package/src/_modules/socket/_models/socket-presence.control-model.ts +1 -1
  43. package/src/_modules/socket/_services/socket-server.service.ts +56 -28
  44. package/src/_services/base/archive-data.service.ts +207 -0
  45. package/src/_services/base/data.service.ts +91 -70
  46. package/src/_services/base/db.service.ts +41 -14
  47. package/src/_services/core/global.service.ts +14 -0
  48. package/src/_services/server/app.server.ts +28 -24
  49. package/src/index.ts +16 -6
@@ -3,12 +3,12 @@ import {
3
3
  DyFM_Metadata, DyFM_DataModel_Params, DyFM_DataProperty_Params, DyFM_Error,
4
4
  DyFM_Log, DyFM_AnyError, DyFM_Error_Settings, DyFM_ErrorLevel
5
5
  } from '@futdevpro/fsm-dynamo';
6
+
6
7
  import { DyNTS_DBFilter } from '../../_models/types/db-filter.type';
7
8
  import { DyNTS_DBUpdate } from '../../_models/types/db-update.type';
8
-
9
- import { DyNTS_DBService } from './db.service';
10
- import { DyNTS_GlobalService } from '../core/global.service';
11
9
  import { DyNTS_global_settings } from '../../_collections/global-settings.const';
10
+ import { DyNTS_GlobalService } from '../core/global.service';
11
+ import { DyNTS_DBService } from './db.service';
12
12
 
13
13
  // TODO: 2 type of archiving service system: within list, or separate db elements
14
14
 
@@ -79,12 +79,13 @@ export class DyNTS_DataService<T extends DyFM_Metadata> {
79
79
  } catch (error) {
80
80
  throw new DyFM_Error({
81
81
  ...this._getDefaultErrorSettings('constructor', error),
82
- message: `The dataService construction failed for "${dataParams?.dataName}". ` +
83
- `at "${this.serviceName}" (${this.constructor.name})` +
84
- `\nMaybe you forgot to add the dbService to the GlobalService?\n\n`,
85
- level: DyFM_ErrorLevel.critical,
86
82
 
87
83
  errorCode: 'NTS-DS0-C00',
84
+ message:
85
+ `The dataService construction failed for "${dataParams?.dataName}". ` +
86
+ `at "${this.serviceName}" (${this.constructor.name})` +
87
+ `\nMaybe you forgot to add the dbService to the GlobalService?\n\n`,
88
+ level: DyFM_ErrorLevel.critical,
88
89
  });
89
90
  /* DyFM_Log.error(
90
91
  `\nDyNTS_DataService ERROR: ` +
@@ -243,6 +244,9 @@ export class DyNTS_DataService<T extends DyFM_Metadata> {
243
244
  ),
244
245
 
245
246
  errorCode: 'NTS-DS0-GD2',
247
+ additionalContent: {
248
+ data: this.data,
249
+ },
246
250
  });
247
251
  }
248
252
 
@@ -367,6 +371,9 @@ export class DyNTS_DataService<T extends DyFM_Metadata> {
367
371
  ),
368
372
 
369
373
  errorCode: 'NTS-DS0-GLD2',
374
+ additionalContent: {
375
+ data: this.data,
376
+ },
370
377
  });
371
378
  }
372
379
 
@@ -573,24 +580,32 @@ export class DyNTS_DataService<T extends DyFM_Metadata> {
573
580
  * //
574
581
  */
575
582
  async updateData(
576
- set: { filterBy?: DyNTS_DBFilter<T>, update: DyNTS_DBUpdate<T> }
583
+ set: { filterBy?: DyNTS_DBFilter<T>, update: DyNTS_DBUpdate<T> },
584
+ dontUpdateModified?: boolean
577
585
  ): Promise<void> {
578
586
  try {
579
587
  if (set.filterBy) {
580
- await this.dataDBService.updateOne(set.filterBy, set.update, this.issuer);
588
+ await this.dataDBService.updateOne(
589
+ set.filterBy,
590
+ set.update,
591
+ this.issuer,
592
+ dontUpdateModified
593
+ );
581
594
 
582
595
  } else if (this.data._id) {
583
596
  await this.dataDBService.updateOne(
584
597
  { _id: this.data._id } as DyNTS_DBFilter<T>,
585
598
  set.update,
586
- this.issuer
599
+ this.issuer,
600
+ dontUpdateModified
587
601
  );
588
602
 
589
603
  } else if (this.depKey && this.data[this.depKey]) {
590
604
  await this.dataDBService.updateOne(
591
605
  { [this.depKey]: this.data[this.depKey] } as DyNTS_DBFilter<T>,
592
606
  set.update,
593
- this.issuer
607
+ this.issuer,
608
+ dontUpdateModified
594
609
  );
595
610
 
596
611
  } else {
@@ -604,13 +619,15 @@ export class DyNTS_DataService<T extends DyFM_Metadata> {
604
619
  ),
605
620
 
606
621
  errorCode: 'NTS-DS0-UD1',
622
+ additionalContent: {
623
+ data: this.data,
624
+ filterBy: set.filterBy,
625
+ },
607
626
  });
608
627
  }
609
- } catch (error) {
610
-
628
+ } catch (error) {
611
629
  if (error?.errorCode == 'NTS-DS0-UD1') {
612
630
  throw error;
613
-
614
631
  } else {
615
632
  throw new DyFM_Error({
616
633
  ...this._getDefaultErrorSettings('updateData', error),
@@ -621,6 +638,25 @@ export class DyNTS_DataService<T extends DyFM_Metadata> {
621
638
  }
622
639
  }
623
640
 
641
+ protected ensureData(data?: T): T {
642
+ if (!data && this.data) {
643
+ data = this.data;
644
+ }
645
+
646
+ if (!data) {
647
+ throw new DyFM_Error({
648
+ ...this._getDefaultErrorSettings(
649
+ 'saveData',
650
+ new Error(`no data to save! (${this.dataParams.dataName})`)
651
+ ),
652
+
653
+ errorCode: 'NTS-DS0-ED0',
654
+ });
655
+ }
656
+
657
+ return data;
658
+ }
659
+
624
660
  /**
625
661
  * modifies data if the data have ID and already exists in the DB,
626
662
  * creates new if the ID is not present or cant find in DB,
@@ -632,24 +668,11 @@ export class DyNTS_DataService<T extends DyFM_Metadata> {
632
668
  * (when you simultaneously trying to change the same data's
633
669
  * different values from different flows)
634
670
  */
635
- async saveData(data?: T, dontSetToService?: boolean): Promise<T> {
671
+ async saveData(data?: T, dontSetToService?: boolean, dontUpdateModified?: boolean): Promise<T> {
636
672
  try {
637
- if (!data && this.data) {
638
- data = this.data;
639
- }
673
+ data = this.ensureData(data);
640
674
 
641
- if (!data) {
642
- throw new DyFM_Error({
643
- ...this._getDefaultErrorSettings(
644
- 'saveData',
645
- new Error(`no data to save! (${this.dataParams.dataName})`)
646
- ),
647
-
648
- errorCode: 'NTS-DS0-SD4',
649
- });
650
- }
651
-
652
- await this.validateForSave();
675
+ await this.validateForSave(data);
653
676
 
654
677
  if (!data._id && (!this.depKey || !data[this.depKey])) {
655
678
  // if ID of dependencyID is not present, data not exists, create new data
@@ -666,31 +689,33 @@ export class DyNTS_DataService<T extends DyFM_Metadata> {
666
689
 
667
690
  // check if data already exists with the specific ID
668
691
  if (data._id) {
669
- dataExists = await this.getDataById(null, true);
670
-
671
- if (dataExists) {
672
- // if data exists do modify
673
- data = await this.dataDBService.modifyData(data, this.issuer);
692
+ dataExists = await this.getDataById(data._id, true);
674
693
 
675
- if (!dontSetToService) {
676
- this.data = data;
677
- }
678
-
679
- return data;
680
-
681
- } else {
694
+ if (!dataExists) {
682
695
  throw new DyFM_Error({
683
696
  ...this._getDefaultErrorSettings(
684
697
  'saveData',
685
698
  new Error(
686
699
  `saveData was unsuccessful: provided ID not exists ` +
687
- `(id: ${data._id}, ${this.dataParams.dataName})`
700
+ `(id: "${data._id}", ${this.dataParams.dataName})`
688
701
  )
689
702
  ),
690
703
 
691
704
  errorCode: 'NTS-DS0-SD1',
705
+ additionalContent: {
706
+ data: data,
707
+ },
692
708
  });
693
709
  }
710
+
711
+ // if data exists do modify
712
+ data = await this.dataDBService.modifyData(data, this.issuer, dontUpdateModified);
713
+
714
+ if (!dontSetToService) {
715
+ this.data = data;
716
+ }
717
+
718
+ return data;
694
719
  }
695
720
 
696
721
  if (this.depKey) {
@@ -705,15 +730,18 @@ export class DyNTS_DataService<T extends DyFM_Metadata> {
705
730
  ),
706
731
 
707
732
  errorCode: 'NTS-DS0-SD2',
733
+ additionalContent: {
734
+ data: data,
735
+ },
708
736
  });
709
737
  }
710
738
 
711
739
  if (this.depKeyIsUnique) {
712
- dataExists = await this.getDataByDependencyId(null, true);
740
+ dataExists = await this.getDataByDependencyId(data[this.depKey], true);
713
741
 
714
742
  if (dataExists) {
715
743
  // if data exists do modify
716
- data = await this.dataDBService.modifyData(data, this.issuer);
744
+ data = await this.dataDBService.modifyData(data, this.issuer, dontUpdateModified);
717
745
 
718
746
  if (!dontSetToService) {
719
747
  this.data = data;
@@ -787,8 +815,12 @@ export class DyNTS_DataService<T extends DyFM_Metadata> {
787
815
  errorCode: 'NTS-DS0-DD1',
788
816
  });
789
817
  }
790
-
818
+
791
819
  await this.dataDBService.deleteDataById(id);
820
+
821
+ if (this.data._id === id) {
822
+ delete this.data._id;
823
+ }
792
824
  } catch (error) {
793
825
  if (error?.errorCode == 'NTS-DS0-DD1') {
794
826
  throw error;
@@ -807,34 +839,17 @@ export class DyNTS_DataService<T extends DyFM_Metadata> {
807
839
  */
808
840
  async validateForSave(data?: T): Promise<void> {
809
841
  try {
810
- if (!data) {
811
- data = this.data;
812
- }
813
-
814
- if (!data) {
815
- throw new DyFM_Error({
816
- ...this._getDefaultErrorSettings(
817
- 'validateForSave',
818
- new Error(`validateForSave failed, no data provided! (${this.dataParams.dataName})`)
819
- ),
820
-
821
- status: 522,
822
- errorCode: 'NTS-DS0-VD4',
823
- });
824
- }
842
+ data = this.ensureData(data);
825
843
 
826
844
  for (const element of this.dataParams.properties) {
827
845
  // basic required validations
828
846
  if (
829
- (element.required &&
830
- (data[element.key] === null ||
831
- data[element.key] === undefined
832
- )
833
- ) ||
834
- (element.index &&
835
- (data[element.key] === null ||
836
- data[element.key] === undefined
837
- )
847
+ (
848
+ element.required ||
849
+ element.index
850
+ ) && (
851
+ data[element.key] === null ||
852
+ data[element.key] === undefined
838
853
  )
839
854
  ) {
840
855
  throw new DyFM_Error({
@@ -849,6 +864,9 @@ export class DyNTS_DataService<T extends DyFM_Metadata> {
849
864
  status: 522,
850
865
  errorCode: 'NTS-DS0-VD1',
851
866
  userMessage: this.defaultValidationErrorUserMsg,
867
+ additionalContent: {
868
+ data: data,
869
+ },
852
870
  });
853
871
  }
854
872
 
@@ -868,6 +886,9 @@ export class DyNTS_DataService<T extends DyFM_Metadata> {
868
886
  status: 522,
869
887
  errorCode: 'NTS-DS0-VD2',
870
888
  userMessage: this.defaultValidationErrorUserMsg,
889
+ additionalContent: {
890
+ data: data,
891
+ },
871
892
  });
872
893
  }
873
894
 
@@ -8,6 +8,7 @@ import {
8
8
  } from '@futdevpro/fsm-dynamo';
9
9
  import { DyNTS_DBFilter } from '../../_models/types/db-filter.type';
10
10
  import { DyNTS_DBUpdate } from '../../_models/types/db-update.type';
11
+ import { DyNTS_archiveSuffix } from '../../_collections/archive.util';
11
12
 
12
13
  /**
13
14
  * DB Service for MongoDB
@@ -125,9 +126,11 @@ export class DyNTS_DBService<T extends DyFM_Metadata> {
125
126
  * @param data data
126
127
  * @returns data
127
128
  */
128
- async modifyData(data: T, issuer: string): Promise<T> {
129
- data.__lastModified = new Date();
130
- data.__lastModifiedBy = issuer;
129
+ async modifyData(data: T, issuer: string, dontUpdateModified?: boolean): Promise<T> {
130
+ if (!dontUpdateModified) {
131
+ data.__lastModified = new Date();
132
+ data.__lastModifiedBy = issuer;
133
+ }
131
134
 
132
135
  /**
133
136
  * EZ A SZAR TELJESEN SZAR, nem friss, nem a db-be mentett adatokat ad vissza,
@@ -718,9 +721,16 @@ export class DyNTS_DBService<T extends DyFM_Metadata> {
718
721
  * @param update update
719
722
  * @returns data
720
723
  */
721
- async findByIdAndUpdate(id: string, update: DyNTS_DBUpdate<T>, issuer: string): Promise<T> {
722
- update.__lastModified = new Date();
723
- update.__lastModifiedBy = issuer;
724
+ async findByIdAndUpdate(
725
+ id: string,
726
+ update: DyNTS_DBUpdate<T>,
727
+ issuer: string,
728
+ dontUpdateModified?: boolean
729
+ ): Promise<T> {
730
+ if (!dontUpdateModified) {
731
+ update.__lastModified = new Date();
732
+ update.__lastModifiedBy = issuer;
733
+ }
724
734
 
725
735
  let newData: T = await this.dataModel
726
736
  .findByIdAndUpdate(id, update)
@@ -796,10 +806,13 @@ export class DyNTS_DBService<T extends DyFM_Metadata> {
796
806
  async updateOne(
797
807
  filterBy: DyNTS_DBFilter<T>,
798
808
  update: DyNTS_DBUpdate<T>,
799
- issuer: string
809
+ issuer: string,
810
+ dontUpdateModified?: boolean
800
811
  ): Promise<void> {
801
- update.__lastModified = new Date();
802
- update.__lastModifiedBy = issuer;
812
+ if (!dontUpdateModified) {
813
+ update.__lastModified = new Date();
814
+ update.__lastModifiedBy = issuer;
815
+ }
803
816
 
804
817
  await this.dataModel
805
818
  .updateOne(filterBy, update)
@@ -869,10 +882,13 @@ export class DyNTS_DBService<T extends DyFM_Metadata> {
869
882
  async updateMany(
870
883
  filterBy: DyNTS_DBFilter<T>,
871
884
  update: DyNTS_DBUpdate<T>,
872
- issuer: string
885
+ issuer: string,
886
+ dontUpdateModified?: boolean
873
887
  ): Promise<void> {
874
- update.__lastModified = new Date();
875
- update.__lastModifiedBy = issuer;
888
+ if (!dontUpdateModified) {
889
+ update.__lastModified = new Date();
890
+ update.__lastModifiedBy = issuer;
891
+ }
876
892
 
877
893
  await this.dataModel
878
894
  .updateMany(filterBy, update)
@@ -939,7 +955,11 @@ export class DyNTS_DBService<T extends DyFM_Metadata> {
939
955
  private getSchema(): mongoose.Schema {
940
956
  let schema: any = this.buildMongooseSchemaByModelParams();
941
957
 
942
- schema = this.addDyFM_MetadataToSchema(schema);
958
+ schema = this.addMetadataToSchema(schema);
959
+
960
+ if (this.dataParams.dataName.includes(DyNTS_archiveSuffix)) {
961
+ schema = this.addArchiveMetadataToSchema(schema);
962
+ }
943
963
 
944
964
  // tslint:disable-next-line: no-string-literal
945
965
  if (schema['_id']) {
@@ -1039,7 +1059,7 @@ export class DyNTS_DBService<T extends DyFM_Metadata> {
1039
1059
  * @param schema schema to update
1040
1060
  * @returns updated schema
1041
1061
  */
1042
- private addDyFM_MetadataToSchema(schema: any): any {
1062
+ private addMetadataToSchema(schema: any): any {
1043
1063
  schema.__created = { type: Date };
1044
1064
  schema.__createdBy = { type: String };
1045
1065
  schema.__lastModified = { type: Date };
@@ -1048,6 +1068,13 @@ export class DyNTS_DBService<T extends DyFM_Metadata> {
1048
1068
  return schema;
1049
1069
  }
1050
1070
 
1071
+ private addArchiveMetadataToSchema(schema: any): any {
1072
+ schema._originalId = { type: String, required: true, index: true, unique: true };
1073
+ schema._archived = { type: Date, required: true };
1074
+
1075
+ return schema;
1076
+ }
1077
+
1051
1078
  /**
1052
1079
  * sets depDataKey
1053
1080
  */
@@ -23,6 +23,8 @@ import { DyNTS_Service_Collection } from './service-collection.service';
23
23
  /* import { DyNTS_EmailServiceCollection } from './email-service-collection.service'; */
24
24
  import { DyNTS_SingletonService } from '../base/singleton.service';
25
25
  import { DyNTS_global_settings } from '../../_collections/global-settings.const';
26
+ /* import { DyNTS_archiveFlag } from '../../_collections/archive-flag.const'; */
27
+ import { DyNTS_getArchivedDBName } from '../../_collections/archive.util';
26
28
 
27
29
  /**
28
30
  * This is the main Global/Core Service Collection used by DynamoBE,
@@ -84,6 +86,18 @@ export class DyNTS_GlobalService extends DyNTS_SingletonService {
84
86
  private static async setDBServices(dbModels?: DyFM_DataModel_Params[]): Promise<void> {
85
87
  try {
86
88
  this.instance.dbServiceCollection = {};
89
+
90
+ dbModels?.forEach((dbModel: DyFM_DataModel_Params): void => {
91
+ if (dbModel.addArchive) {
92
+ const archiveModel: DyFM_DataModel_Params = new DyFM_DataModel_Params({
93
+ ...dbModel,
94
+ dataName: DyNTS_getArchivedDBName(dbModel.dataName),
95
+ });
96
+
97
+ dbModels.push(archiveModel);
98
+ }
99
+ });
100
+
87
101
  dbModels?.forEach((dbModel: DyFM_DataModel_Params): void => {
88
102
  if (!dbModel.constructed) {
89
103
  throw new DyFM_Error({
@@ -271,32 +271,36 @@ export abstract class DyNTS_App extends DyNTS_SingletonService {
271
271
  constructor(extended?: boolean){
272
272
  super();
273
273
 
274
- process.on('unhandledRejection', (reason: object, p_passWhatIsThis: any): void => {
275
- DyFM_Log.H_error(
276
- 'Unhandled Rejection: ', p_passWhatIsThis?.toString()?.split('at')?.[0],
277
- '\n Rejection reason:', reason?.toString()?.split('at')?.[0],
278
- '\n\n Stack:',
279
- (reason as any)?.stack?.replaceAll?.('\n at', '\n at'),
280
- );
281
-
282
- try {
283
- DyNTS_GlobalService.globalErrorHandler?.(
284
- new DyFM_Error({
285
- errorCode: 'NTS-AS0-BASE-UR',
286
- message: 'Unhandled Rejection!',
287
- error: new Error(p_passWhatIsThis),
288
- additionalContent: {
289
- reason: reason,
290
- p_noIdeaWhatIsThisFromProcessRejection: p_passWhatIsThis,
291
- },
292
- level: DyFM_ErrorLevel.critical,
293
- })
274
+ process.on(
275
+ 'unhandledRejection',
276
+ (reason_theError: object, p_passWhatIsThis_maybeThePromise: any): void => {
277
+ DyFM_Log.H_error(
278
+ 'Unhandled Rejection: ', (p_passWhatIsThis_maybeThePromise as Promise<any>)?.toString(),
279
+ '\n Rejection reason:', (reason_theError as Error)?.stack?.split('at')?.[0],
280
+ /* '\n ErrorCode:', (reason as any)?.code, */
281
+ '\n\n Stack:',
282
+ (reason_theError as Error)?.stack?.replaceAll?.('\n at', '\n at'),
294
283
  );
295
284
 
296
- } catch (error) {
297
- DyFM_Log.error('globalErrorHandler (MULTILEVEL) ERROR:', error);
285
+ try {
286
+ DyNTS_GlobalService.globalErrorHandler?.(
287
+ new DyFM_Error({
288
+ errorCode: 'NTS-AS0-BASE-UR',
289
+ message: 'Unhandled Rejection!',
290
+ error: reason_theError as Error,
291
+ additionalContent: {
292
+ reason: reason_theError,
293
+ rejectedPromise: p_passWhatIsThis_maybeThePromise,
294
+ },
295
+ level: DyFM_ErrorLevel.critical,
296
+ })
297
+ );
298
+
299
+ } catch (error) {
300
+ DyFM_Log.error('globalErrorHandler (MULTILEVEL) ERROR:', error);
301
+ }
298
302
  }
299
- });
303
+ );
300
304
 
301
305
  this.asyncConstruct(extended).catch((error: any): void => {
302
306
  if (
@@ -313,7 +317,7 @@ export abstract class DyNTS_App extends DyNTS_SingletonService {
313
317
  );
314
318
  }
315
319
 
316
- DyFM_Log.H_warn('T1000\n', error?.additionalContent);
320
+ DyFM_Log.H_warn('asyncConstruct error\n', error?.additionalContent);
317
321
  });
318
322
  }
319
323
 
package/src/index.ts CHANGED
@@ -33,19 +33,29 @@ export * from './_models/types/db-update.type';
33
33
 
34
34
 
35
35
  // SERVICES
36
+ // services/CORE
36
37
  export * from './_services/core/api.service';
37
- export * from './_services/server/app.server';
38
38
  export * from './_services/core/auth.service';
39
- export * from './_services/route/controller.service';
40
- export * from './_services/base/data.service';
41
- export * from './_services/base/db.service';
42
39
  export * from './_services/core/email.service';
43
40
  export * from './_services/core/global.service';
41
+ export * from './_services/core/service-collection.service';
42
+
43
+ // services/BASE
44
+ export * from './_services/base/archive-data.service';
45
+ export * from './_services/base/data.service';
46
+ export * from './_services/base/db.service';
47
+ export * from './_services/base/singleton.service';
48
+
49
+ // services/SERVER
50
+ export * from './_services/server/app.server';
51
+
52
+ // services/ROUTE
53
+ export * from './_services/route/controller.service';
44
54
  export * from './_services/route/controller.service';
45
55
  export * from './_services/route/routing-module.service';
46
- export * from './_services/core/service-collection.service';
56
+
57
+ // services/SHARED
47
58
  export * from './_services/shared.static-service';
48
- export * from './_services/base/singleton.service';
49
59
 
50
60
 
51
61