@futdevpro/nts-dynamo 1.9.26 → 1.9.29

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 (75) hide show
  1. package/build/_collections/global-settings.const.d.ts.map +1 -1
  2. package/build/_collections/global-settings.const.js +1 -0
  3. package/build/_collections/global-settings.const.js.map +1 -1
  4. package/build/_models/control-models/endpoint-params.control-model.d.ts +2 -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 +34 -20
  7. package/build/_models/control-models/endpoint-params.control-model.js.map +1 -1
  8. package/build/_models/interfaces/global-log-settings.interface.d.ts +4 -0
  9. package/build/_models/interfaces/global-log-settings.interface.d.ts.map +1 -1
  10. package/build/_modules/mock/socket-client.mock.d.ts +4 -4
  11. package/build/_modules/mock/socket-client.mock.d.ts.map +1 -1
  12. package/build/_modules/mock/socket-client.mock.js +4 -5
  13. package/build/_modules/mock/socket-client.mock.js.map +1 -1
  14. package/build/_modules/mock/socket-server.mock.d.ts +3 -3
  15. package/build/_modules/mock/socket-server.mock.d.ts.map +1 -1
  16. package/build/_modules/mock/socket-server.mock.js +2 -2
  17. package/build/_modules/mock/socket-server.mock.js.map +1 -1
  18. package/build/_modules/socket/_models/socket-client-service-params.control-model.d.ts +2 -8
  19. package/build/_modules/socket/_models/socket-client-service-params.control-model.d.ts.map +1 -1
  20. package/build/_modules/socket/_models/socket-client-service-params.control-model.js +4 -12
  21. package/build/_modules/socket/_models/socket-client-service-params.control-model.js.map +1 -1
  22. package/build/_modules/socket/_models/socket-presence.control-model.d.ts +5 -4
  23. package/build/_modules/socket/_models/socket-presence.control-model.d.ts.map +1 -1
  24. package/build/_modules/socket/_models/socket-presence.control-model.js +10 -8
  25. package/build/_modules/socket/_models/socket-presence.control-model.js.map +1 -1
  26. package/build/_modules/socket/_services/socket-client.service.d.ts +6 -6
  27. package/build/_modules/socket/_services/socket-client.service.d.ts.map +1 -1
  28. package/build/_modules/socket/_services/socket-client.service.js +20 -17
  29. package/build/_modules/socket/_services/socket-client.service.js.map +1 -1
  30. package/build/_modules/socket/_services/socket-server.service.d.ts +18 -18
  31. package/build/_modules/socket/_services/socket-server.service.d.ts.map +1 -1
  32. package/build/_modules/socket/_services/socket-server.service.js +79 -68
  33. package/build/_modules/socket/_services/socket-server.service.js.map +1 -1
  34. package/build/_modules/socket/index.d.ts +0 -2
  35. package/build/_modules/socket/index.d.ts.map +1 -1
  36. package/build/_modules/socket/index.js +0 -2
  37. package/build/_modules/socket/index.js.map +1 -1
  38. package/build/_modules/usage/usage.data-service.js +1 -1
  39. package/build/_modules/usage/usage.data-service.js.map +1 -1
  40. package/build/_services/base/data.service.js +4 -4
  41. package/build/_services/base/data.service.js.map +1 -1
  42. package/build/_services/base/db.service.js +3 -3
  43. package/build/_services/base/db.service.js.map +1 -1
  44. package/build/_services/core/email.service.js +1 -1
  45. package/build/_services/core/email.service.js.map +1 -1
  46. package/build/_services/server/app.server.d.ts +1 -1
  47. package/build/_services/server/app.server.d.ts.map +1 -1
  48. package/build/_services/server/app.server.js +1 -1
  49. package/build/_services/server/app.server.js.map +1 -1
  50. package/package.json +9 -19
  51. package/src/_collections/global-settings.const.ts +1 -0
  52. package/src/_models/control-models/endpoint-params.control-model.ts +51 -31
  53. package/src/_models/interfaces/global-log-settings.interface.ts +5 -0
  54. package/src/_modules/mock/socket-client.mock.ts +7 -7
  55. package/src/_modules/mock/socket-server.mock.ts +5 -4
  56. package/src/_modules/socket/_models/socket-client-service-params.control-model.ts +6 -15
  57. package/src/_modules/socket/_models/socket-presence.control-model.ts +13 -11
  58. package/src/_modules/socket/_services/socket-client.service.ts +30 -23
  59. package/src/_modules/socket/_services/socket-server.service.ts +129 -109
  60. package/src/_modules/socket/index.ts +0 -2
  61. package/src/_modules/usage/usage.data-service.ts +1 -1
  62. package/src/_services/base/data.service.ts +4 -4
  63. package/src/_services/base/db.service.ts +3 -3
  64. package/src/_services/core/email.service.ts +1 -1
  65. package/src/_services/server/app.server.ts +2 -2
  66. package/build/_modules/socket/_enums/socket-event-key.enum.d.ts +0 -15
  67. package/build/_modules/socket/_enums/socket-event-key.enum.d.ts.map +0 -1
  68. package/build/_modules/socket/_enums/socket-event-key.enum.js +0 -19
  69. package/build/_modules/socket/_enums/socket-event-key.enum.js.map +0 -1
  70. package/build/_modules/socket/_models/socket-event.control-model.d.ts +0 -61
  71. package/build/_modules/socket/_models/socket-event.control-model.d.ts.map +0 -1
  72. package/build/_modules/socket/_models/socket-event.control-model.js +0 -90
  73. package/build/_modules/socket/_models/socket-event.control-model.js.map +0 -1
  74. package/src/_modules/socket/_enums/socket-event-key.enum.ts +0 -18
  75. package/src/_modules/socket/_models/socket-event.control-model.ts +0 -150
@@ -273,7 +273,7 @@ export abstract class DyNTS_App extends DyNTS_SingletonService {
273
273
  'Unhandled Rejection: ', p_passWhatIsThis.toString().split('at')[0],
274
274
  '\n Rejection reason:', reason.toString().split('at')[0],
275
275
  '\n\n Stack:',
276
- (reason as any).stack.toString().split('\n at').shift().join('\n at')
276
+ (reason as any).stack.replaceAll?.('\n at', '\n at')
277
277
  );
278
278
 
279
279
  try {
@@ -1216,7 +1216,7 @@ export abstract class DyNTS_App extends DyNTS_SingletonService {
1216
1216
  /**
1217
1217
  * MISSING Description (TODO)
1218
1218
  */
1219
- getRootServices?(): Promise<DyNTS_SingletonService[]>;
1219
+ getRootServices?(): Promise<any[]>;
1220
1220
 
1221
1221
  /**
1222
1222
  * MISSING Description (TODO)
@@ -1,15 +0,0 @@
1
- export declare enum DyNTS_SocketEventKey {
2
- /** incoming connection */
3
- connection = "connection",
4
- /** outgoing connection */
5
- connect = "connect",
6
- subscribe = "subscribe",
7
- subscriptionSuccessful = "subscriptionSuccessful",
8
- unsubscribe = "unsubscribe",
9
- unsubscribeSuccessful = "unsubscribeSuccessful",
10
- disconnect = "disconnection",
11
- ping = "ping",
12
- event = "event",
13
- error = "error"
14
- }
15
- //# sourceMappingURL=socket-event-key.enum.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"socket-event-key.enum.d.ts","sourceRoot":"","sources":["../../../../src/_modules/socket/_enums/socket-event-key.enum.ts"],"names":[],"mappings":"AACA,oBAAY,oBAAoB;IAC9B,0BAA0B;IAC1B,UAAU,eAAe;IACzB,0BAA0B;IAC1B,OAAO,YAAY;IAEnB,SAAS,cAAc;IACvB,sBAAsB,2BAA2B;IACjD,WAAW,gBAAgB;IAC3B,qBAAqB,0BAA0B;IAC/C,UAAU,kBAAkB;IAE5B,IAAI,SAAS;IACb,KAAK,UAAU;IACf,KAAK,UAAU;CAChB"}
@@ -1,19 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.DyNTS_SocketEventKey = void 0;
4
- var DyNTS_SocketEventKey;
5
- (function (DyNTS_SocketEventKey) {
6
- /** incoming connection */
7
- DyNTS_SocketEventKey["connection"] = "connection";
8
- /** outgoing connection */
9
- DyNTS_SocketEventKey["connect"] = "connect";
10
- DyNTS_SocketEventKey["subscribe"] = "subscribe";
11
- DyNTS_SocketEventKey["subscriptionSuccessful"] = "subscriptionSuccessful";
12
- DyNTS_SocketEventKey["unsubscribe"] = "unsubscribe";
13
- DyNTS_SocketEventKey["unsubscribeSuccessful"] = "unsubscribeSuccessful";
14
- DyNTS_SocketEventKey["disconnect"] = "disconnection";
15
- DyNTS_SocketEventKey["ping"] = "ping";
16
- DyNTS_SocketEventKey["event"] = "event";
17
- DyNTS_SocketEventKey["error"] = "error";
18
- })(DyNTS_SocketEventKey || (exports.DyNTS_SocketEventKey = DyNTS_SocketEventKey = {}));
19
- //# sourceMappingURL=socket-event-key.enum.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"socket-event-key.enum.js","sourceRoot":"","sources":["../../../../src/_modules/socket/_enums/socket-event-key.enum.ts"],"names":[],"mappings":";;;AACA,IAAY,oBAeX;AAfD,WAAY,oBAAoB;IAC9B,0BAA0B;IAC1B,iDAAyB,CAAA;IACzB,0BAA0B;IAC1B,2CAAmB,CAAA;IAEnB,+CAAuB,CAAA;IACvB,yEAAiD,CAAA;IACjD,mDAA2B,CAAA;IAC3B,uEAA+C,CAAA;IAC/C,oDAA4B,CAAA;IAE5B,qCAAa,CAAA;IACb,uCAAe,CAAA;IACf,uCAAe,CAAA;AACjB,CAAC,EAfW,oBAAoB,oCAApB,oBAAoB,QAe/B"}
@@ -1,61 +0,0 @@
1
- import { DyNTS_SocketEventKey } from '../_enums/socket-event-key.enum';
2
- export type DyNTS_SocketEventPreprocessTask<T = any, R = any> = (content?: T, issuer?: string) => Promise<R>;
3
- export type DyNTS_SocketEventTask<T> = (content?: T, issuer?: string) => Promise<void>;
4
- /**
5
- * socket handling and clarification is under development
6
- */
7
- export declare class DyNTS_SocketEvent<T> {
8
- socketName?: string;
9
- eventKey: DyNTS_SocketEventKey | string;
10
- serviceName?: string;
11
- preProcesses?: DyNTS_SocketEventPreprocessTask<any, any>[];
12
- tasks?: DyNTS_SocketEventTask<T>[];
13
- logEvent?: boolean;
14
- logEventContent?: boolean;
15
- constructor(set: {
16
- /**
17
- * naming the socket will help to follow events on service,
18
- * if not set, the eventKey will be used
19
- */
20
- name?: string;
21
- /**
22
- * define socket event type such as;
23
- * connection, connect, disconnect, message, error, or anything else
24
- */
25
- eventKey: DyNTS_SocketEventKey | string;
26
- /**
27
- * serviceName is the name of the service that will be used for logging
28
- */
29
- serviceName?: string;
30
- /**
31
- * preprocesses are the functions the service needs to run before the actual function,
32
- * these can be used for authentications, or translating data
33
- *
34
- * the last function in the array should return the content in the type(T) of the socket<T>
35
- */
36
- preProcesses?: DyNTS_SocketEventPreprocessTask<any, any>[];
37
- /**
38
- * tasks are the functions the service needs to run
39
- */
40
- tasks?: DyNTS_SocketEventTask<T>[];
41
- /**
42
- * logEvent will create a log for the event triggered
43
- */
44
- logEvent?: boolean;
45
- /**
46
- * logEventContent will create a log for the event triggered with the content
47
- */
48
- logEventContent?: boolean;
49
- });
50
- /**
51
- *
52
- * @returns
53
- */
54
- private getPreLog;
55
- /**
56
- *
57
- * @returns
58
- */
59
- executeEventTasks(content?: T, issuer?: string): Promise<void>;
60
- }
61
- //# sourceMappingURL=socket-event.control-model.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"socket-event.control-model.d.ts","sourceRoot":"","sources":["../../../../src/_modules/socket/_models/socket-event.control-model.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,oBAAoB,EAAE,MAAM,iCAAiC,CAAC;AAGvE,MAAM,MAAM,+BAA+B,CAAC,CAAC,GAAG,GAAG,EAAE,CAAC,GAAG,GAAG,IAC1D,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE,MAAM,CAAC,EAAE,MAAM,KAAK,OAAO,CAAC,CAAC,CAAC,CAAC;AAC/C,MAAM,MAAM,qBAAqB,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE,MAAM,CAAC,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;AAEvF;;GAEG;AACH,qBAAa,iBAAiB,CAAC,CAAC;IAC9B,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,oBAAoB,GAAG,MAAM,CAAC;IACxC,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB,YAAY,CAAC,EAAE,+BAA+B,CAAC,GAAG,EAAE,GAAG,CAAC,EAAE,CAAC;IAC3D,KAAK,CAAC,EAAE,qBAAqB,CAAC,CAAC,CAAC,EAAE,CAAC;IAEnC,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,eAAe,CAAC,EAAE,OAAO,CAAC;gBAGxB,GAAG,EAAE;QACH;;;WAGG;QACH,IAAI,CAAC,EAAE,MAAM,CAAC;QACd;;;WAGG;QACH,QAAQ,EAAE,oBAAoB,GAAG,MAAM,CAAC;QACxC;;WAEG;QACH,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB;;;;;WAKG;QACH,YAAY,CAAC,EAAE,+BAA+B,CAAC,GAAG,EAAE,GAAG,CAAC,EAAE,CAAC;QAC3D;;WAEG;QACH,KAAK,CAAC,EAAE,qBAAqB,CAAC,CAAC,CAAC,EAAE,CAAC;QACnC;;WAEG;QACH,QAAQ,CAAC,EAAE,OAAO,CAAC;QACnB;;WAEG;QACH,eAAe,CAAC,EAAE,OAAO,CAAC;KAC3B;IAsCH;;;OAGG;YACW,SAAS;IAevB;;;OAGG;IACG,iBAAiB,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;CAyBrE"}
@@ -1,90 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.DyNTS_SocketEvent = void 0;
4
- const fsm_dynamo_1 = require("@futdevpro/fsm-dynamo");
5
- const global_settings_const_1 = require("../../../_collections/global-settings.const");
6
- const socket_event_key_enum_1 = require("../_enums/socket-event-key.enum");
7
- /**
8
- * socket handling and clarification is under development
9
- */
10
- class DyNTS_SocketEvent {
11
- socketName;
12
- eventKey;
13
- serviceName;
14
- preProcesses;
15
- tasks;
16
- logEvent;
17
- logEventContent;
18
- constructor(set) {
19
- try {
20
- this.socketName = set.name ?? set.eventKey;
21
- this.eventKey = set.eventKey;
22
- this.serviceName = set.serviceName ?? 'UnknownSocketService';
23
- this.preProcesses = set.preProcesses ?? [];
24
- this.tasks = set.tasks ?? [];
25
- if (set.logEvent !== undefined) {
26
- this.logEvent = set.logEvent;
27
- }
28
- else if (this.eventKey === socket_event_key_enum_1.DyNTS_SocketEventKey.subscribe) {
29
- this.logEvent = false;
30
- }
31
- else if ([
32
- socket_event_key_enum_1.DyNTS_SocketEventKey.connection,
33
- socket_event_key_enum_1.DyNTS_SocketEventKey.connect,
34
- socket_event_key_enum_1.DyNTS_SocketEventKey.disconnect,
35
- ].includes(this.eventKey)) {
36
- this.logEvent = global_settings_const_1.DyNTS_global_settings.log_settings.socket_mainEvents ||
37
- global_settings_const_1.DyNTS_global_settings.log_settings.socket_allEvents;
38
- }
39
- else {
40
- this.logEvent = global_settings_const_1.DyNTS_global_settings.log_settings.socket_allEvents;
41
- }
42
- this.logEventContent = set.logEventContent ??
43
- global_settings_const_1.DyNTS_global_settings.log_settings.socket_eventContent;
44
- }
45
- catch (error) {
46
- fsm_dynamo_1.DyFM_Log.error(`\nSocket Event params setup failed (${this.serviceName}): ${set.eventKey}`, error);
47
- throw error;
48
- }
49
- }
50
- /**
51
- *
52
- * @returns
53
- */
54
- async getPreLog(content) {
55
- try {
56
- if (this.logEventContent && this.eventKey !== socket_event_key_enum_1.DyNTS_SocketEventKey.connection) {
57
- fsm_dynamo_1.DyFM_Log.log(`---> incoming socket(${this.serviceName}) event: ${this.eventKey};
58
- \ncontent:`, content);
59
- }
60
- else {
61
- fsm_dynamo_1.DyFM_Log.log(`---> incoming socket(${this.serviceName}) event: ${this.eventKey}...`);
62
- }
63
- }
64
- catch (error) {
65
- fsm_dynamo_1.DyFM_Log.error(`PreLog failed... (socket: ${this.serviceName})`, error);
66
- }
67
- }
68
- /**
69
- *
70
- * @returns
71
- */
72
- async executeEventTasks(content, issuer) {
73
- try {
74
- if (this.logEvent || this.logEventContent) {
75
- await this.getPreLog(content);
76
- }
77
- await fsm_dynamo_1.DyFM_Array.asyncForEach(this.preProcesses, async (preProcess) => {
78
- content = await preProcess(content);
79
- });
80
- await fsm_dynamo_1.DyFM_Array.asyncForEach(this.tasks, async (task) => {
81
- await task(content, issuer);
82
- });
83
- }
84
- catch (error) {
85
- fsm_dynamo_1.DyFM_Log.error(`Socket Event tasks failed to execute on ${this.serviceName}.... (${this.eventKey})`, error, 'content:', content);
86
- }
87
- }
88
- }
89
- exports.DyNTS_SocketEvent = DyNTS_SocketEvent;
90
- //# sourceMappingURL=socket-event.control-model.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"socket-event.control-model.js","sourceRoot":"","sources":["../../../../src/_modules/socket/_models/socket-event.control-model.ts"],"names":[],"mappings":"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"}
@@ -1,18 +0,0 @@
1
-
2
- export enum DyNTS_SocketEventKey {
3
- /** incoming connection */
4
- connection = 'connection',
5
- /** outgoing connection */
6
- connect = 'connect',
7
-
8
- subscribe = 'subscribe',
9
- subscriptionSuccessful = 'subscriptionSuccessful',
10
- unsubscribe = 'unsubscribe',
11
- unsubscribeSuccessful = 'unsubscribeSuccessful',
12
- disconnect = 'disconnection',
13
-
14
- ping = 'ping',
15
- event = 'event',
16
- error = 'error',
17
- }
18
-
@@ -1,150 +0,0 @@
1
-
2
- import { DyFM_Array, DyFM_Log } from '@futdevpro/fsm-dynamo';
3
- import { DyNTS_global_settings } from '../../../_collections/global-settings.const';
4
- import { DyNTS_SocketEventKey } from '../_enums/socket-event-key.enum';
5
-
6
-
7
- export type DyNTS_SocketEventPreprocessTask<T = any, R = any> =
8
- (content?: T, issuer?: string) => Promise<R>;
9
- export type DyNTS_SocketEventTask<T> = (content?: T, issuer?: string) => Promise<void>;
10
-
11
- /**
12
- * socket handling and clarification is under development
13
- */
14
- export class DyNTS_SocketEvent<T>{
15
- socketName?: string;
16
- eventKey: DyNTS_SocketEventKey | string;
17
- serviceName?: string;
18
-
19
- preProcesses?: DyNTS_SocketEventPreprocessTask<any, any>[];
20
- tasks?: DyNTS_SocketEventTask<T>[];
21
-
22
- logEvent?: boolean;
23
- logEventContent?: boolean;
24
-
25
- constructor(
26
- set: {
27
- /**
28
- * naming the socket will help to follow events on service,
29
- * if not set, the eventKey will be used
30
- */
31
- name?: string,
32
- /**
33
- * define socket event type such as;
34
- * connection, connect, disconnect, message, error, or anything else
35
- */
36
- eventKey: DyNTS_SocketEventKey | string,
37
- /**
38
- * serviceName is the name of the service that will be used for logging
39
- */
40
- serviceName?: string,
41
- /**
42
- * preprocesses are the functions the service needs to run before the actual function,
43
- * these can be used for authentications, or translating data
44
- *
45
- * the last function in the array should return the content in the type(T) of the socket<T>
46
- */
47
- preProcesses?: DyNTS_SocketEventPreprocessTask<any, any>[],
48
- /**
49
- * tasks are the functions the service needs to run
50
- */
51
- tasks?: DyNTS_SocketEventTask<T>[],
52
- /**
53
- * logEvent will create a log for the event triggered
54
- */
55
- logEvent?: boolean,
56
- /**
57
- * logEventContent will create a log for the event triggered with the content
58
- */
59
- logEventContent?: boolean,
60
- }
61
- ) {
62
- try {
63
- this.socketName = set.name ?? set.eventKey;
64
- this.eventKey = set.eventKey;
65
- this.serviceName = set.serviceName ?? 'UnknownSocketService';
66
-
67
- this.preProcesses = set.preProcesses ?? [];
68
- this.tasks = set.tasks ?? [];
69
-
70
- if (set.logEvent !== undefined) {
71
- this.logEvent = set.logEvent;
72
- } else if (this.eventKey === DyNTS_SocketEventKey.subscribe) {
73
- this.logEvent = false;
74
- } else if (
75
- ([
76
- DyNTS_SocketEventKey.connection,
77
- DyNTS_SocketEventKey.connect,
78
- DyNTS_SocketEventKey.disconnect,
79
- ] as string[]).includes(this.eventKey)
80
- ) {
81
- this.logEvent = DyNTS_global_settings.log_settings.socket_mainEvents ||
82
- DyNTS_global_settings.log_settings.socket_allEvents;
83
- } else {
84
- this.logEvent = DyNTS_global_settings.log_settings.socket_allEvents;
85
- }
86
- this.logEventContent = set.logEventContent ??
87
- DyNTS_global_settings.log_settings.socket_eventContent;
88
- } catch (error) {
89
- DyFM_Log.error(
90
- `\nSocket Event params setup failed (${this.serviceName}): ${set.eventKey}`,
91
- error
92
- );
93
-
94
- throw error;
95
- }
96
- }
97
-
98
- /**
99
- *
100
- * @returns
101
- */
102
- private async getPreLog(content: T): Promise<void> {
103
- try {
104
- if (this.logEventContent && this.eventKey !== DyNTS_SocketEventKey.connection) {
105
- DyFM_Log.log(
106
- `---> incoming socket(${this.serviceName}) event: ${this.eventKey};
107
- \ncontent:`, content
108
- );
109
- } else {
110
- DyFM_Log.log(`---> incoming socket(${this.serviceName}) event: ${this.eventKey}...`);
111
- }
112
- } catch (error) {
113
- DyFM_Log.error(`PreLog failed... (socket: ${this.serviceName})`, error);
114
- }
115
- }
116
-
117
- /**
118
- *
119
- * @returns
120
- */
121
- async executeEventTasks(content?: T, issuer?: string): Promise<void> {
122
- try {
123
- if (this.logEvent || this.logEventContent) {
124
- await this.getPreLog(content);
125
- }
126
-
127
- await DyFM_Array.asyncForEach(
128
- this.preProcesses,
129
- async (preProcess: DyNTS_SocketEventPreprocessTask<any, any>) => {
130
- content = await preProcess(content);
131
- }
132
- );
133
-
134
- await DyFM_Array.asyncForEach(this.tasks, async (task: DyNTS_SocketEventTask<T>) => {
135
- await task(content, issuer);
136
- });
137
- } catch (error) {
138
- DyFM_Log.error(
139
- `Socket Event tasks failed to execute on ${this.serviceName}.... (${this.eventKey})`,
140
- error,
141
- 'content:',
142
- content
143
- );
144
- }
145
- }
146
- }
147
-
148
-
149
-
150
-