@futdevpro/nts-dynamo 1.9.17 → 1.9.18
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.copilot/patterns.json +1 -1
- package/README.md +2 -2
- package/build/_constants/global-settings.const.d.ts +2 -2
- package/build/_constants/global-settings.const.d.ts.map +1 -1
- package/build/_constants/global-settings.const.js +4 -4
- package/build/_constants/global-settings.const.js.map +1 -1
- package/build/_constants/mocks/app-extended-server.mock.d.ts +26 -26
- package/build/_constants/mocks/app-extended-server.mock.d.ts.map +1 -1
- package/build/_constants/mocks/app-extended-server.mock.js +29 -29
- package/build/_constants/mocks/app-extended-server.mock.js.map +1 -1
- package/build/_constants/mocks/app-params.mock.d.ts +2 -2
- package/build/_constants/mocks/app-params.mock.d.ts.map +1 -1
- package/build/_constants/mocks/app-params.mock.js +2 -2
- package/build/_constants/mocks/app-params.mock.js.map +1 -1
- package/build/_constants/mocks/app-server.mock.d.ts +28 -28
- package/build/_constants/mocks/app-server.mock.d.ts.map +1 -1
- package/build/_constants/mocks/app-server.mock.js +25 -25
- package/build/_constants/mocks/app-server.mock.js.map +1 -1
- package/build/_constants/mocks/auth-service.mock.d.ts +2 -2
- package/build/_constants/mocks/auth-service.mock.d.ts.map +1 -1
- package/build/_constants/mocks/auth-service.mock.js +1 -1
- package/build/_constants/mocks/auth-service.mock.js.map +1 -1
- package/build/_constants/mocks/controller.mock.d.ts +3 -3
- package/build/_constants/mocks/controller.mock.d.ts.map +1 -1
- package/build/_constants/mocks/controller.mock.js +5 -5
- package/build/_constants/mocks/controller.mock.js.map +1 -1
- package/build/_constants/mocks/data-model.mock.d.ts +5 -5
- package/build/_constants/mocks/data-model.mock.d.ts.map +1 -1
- package/build/_constants/mocks/data-model.mock.js +4 -4
- package/build/_constants/mocks/data-model.mock.js.map +1 -1
- package/build/_constants/mocks/email-service-collection.mock.d.ts +2 -2
- package/build/_constants/mocks/email-service-collection.mock.d.ts.map +1 -1
- package/build/_constants/mocks/email-service-collection.mock.js +1 -1
- package/build/_constants/mocks/email-service-collection.mock.js.map +1 -1
- package/build/_constants/mocks/email-service.mock.d.ts +2 -2
- package/build/_constants/mocks/email-service.mock.d.ts.map +1 -1
- package/build/_constants/mocks/email-service.mock.js +1 -1
- package/build/_constants/mocks/email-service.mock.js.map +1 -1
- package/build/_constants/mocks/endpoint.mock.d.ts +8 -8
- package/build/_constants/mocks/endpoint.mock.d.ts.map +1 -1
- package/build/_constants/mocks/endpoint.mock.js +20 -20
- package/build/_constants/mocks/endpoint.mock.js.map +1 -1
- package/build/_constants/mocks/socket-client.mock.d.ts +5 -5
- package/build/_constants/mocks/socket-client.mock.d.ts.map +1 -1
- package/build/_constants/mocks/socket-client.mock.js +4 -4
- package/build/_constants/mocks/socket-client.mock.js.map +1 -1
- package/build/_constants/mocks/socket-server.mock.d.ts +9 -9
- package/build/_constants/mocks/socket-server.mock.d.ts.map +1 -1
- package/build/_constants/mocks/socket-server.mock.js +6 -6
- package/build/_constants/mocks/socket-server.mock.js.map +1 -1
- package/build/_enums/data-model-type.enum.d.ts +1 -1
- package/build/_enums/data-model-type.enum.d.ts.map +1 -1
- package/build/_enums/data-model-type.enum.js +7 -7
- package/build/_enums/data-model-type.enum.js.map +1 -1
- package/build/_enums/data-service-function.enum.d.ts +1 -1
- package/build/_enums/data-service-function.enum.d.ts.map +1 -1
- package/build/_enums/data-service-function.enum.js +9 -9
- package/build/_enums/data-service-function.enum.js.map +1 -1
- package/build/_enums/http/http-call-type.enum.d.ts +1 -1
- package/build/_enums/http/http-call-type.enum.d.ts.map +1 -1
- package/build/_enums/http/http-call-type.enum.js +9 -9
- package/build/_enums/http/http-call-type.enum.js.map +1 -1
- package/build/_enums/http/http-response-type.enum.d.ts +1 -1
- package/build/_enums/http/http-response-type.enum.d.ts.map +1 -1
- package/build/_enums/http/http-response-type.enum.js +8 -8
- package/build/_enums/http/http-response-type.enum.js.map +1 -1
- package/build/_enums/http/socket-event-type.enum.d.ts +1 -1
- package/build/_enums/http/socket-event-type.enum.d.ts.map +1 -1
- package/build/_enums/http/socket-event-type.enum.js +14 -14
- package/build/_enums/http/socket-event-type.enum.js.map +1 -1
- package/build/_enums/route-security.enum.d.ts +1 -1
- package/build/_enums/route-security.enum.d.ts.map +1 -1
- package/build/_enums/route-security.enum.js +7 -7
- package/build/_enums/route-security.enum.js.map +1 -1
- package/build/_enums/socket-security.enum.d.ts +1 -1
- package/build/_enums/socket-security.enum.d.ts.map +1 -1
- package/build/_enums/socket-security.enum.js +6 -6
- package/build/_enums/socket-security.enum.js.map +1 -1
- package/build/_models/control-models/api-call-params.control-model.d.ts +9 -9
- package/build/_models/control-models/api-call-params.control-model.d.ts.map +1 -1
- package/build/_models/control-models/api-call-params.control-model.js +6 -6
- package/build/_models/control-models/api-call-params.control-model.js.map +1 -1
- package/build/_models/control-models/app-ext-system-controls.control-model.d.ts +5 -5
- package/build/_models/control-models/app-ext-system-controls.control-model.d.ts.map +1 -1
- package/build/_models/control-models/app-ext-system-controls.control-model.js +6 -6
- package/build/_models/control-models/app-ext-system-controls.control-model.js.map +1 -1
- package/build/_models/control-models/app-params.control-model.d.ts +2 -3
- package/build/_models/control-models/app-params.control-model.d.ts.map +1 -1
- package/build/_models/control-models/app-params.control-model.js +3 -3
- package/build/_models/control-models/app-params.control-model.js.map +1 -1
- package/build/_models/control-models/app-system-controls.control-model.d.ts +6 -6
- package/build/_models/control-models/app-system-controls.control-model.d.ts.map +1 -1
- package/build/_models/control-models/app-system-controls.control-model.js +7 -7
- package/build/_models/control-models/app-system-controls.control-model.js.map +1 -1
- package/build/_models/control-models/endpoint-params.control-model.d.ts +7 -7
- package/build/_models/control-models/endpoint-params.control-model.d.ts.map +1 -1
- package/build/_models/control-models/endpoint-params.control-model.js +35 -35
- package/build/_models/control-models/endpoint-params.control-model.js.map +1 -1
- package/build/_models/control-models/http-settings.control-model.d.ts +2 -2
- package/build/_models/control-models/http-settings.control-model.d.ts.map +1 -1
- package/build/_models/control-models/http-settings.control-model.js +3 -3
- package/build/_models/control-models/http-settings.control-model.js.map +1 -1
- package/build/_models/control-models/socket-client-service-params.control-model.d.ts +2 -2
- package/build/_models/control-models/socket-client-service-params.control-model.d.ts.map +1 -1
- package/build/_models/control-models/socket-client-service-params.control-model.js +3 -3
- package/build/_models/control-models/socket-client-service-params.control-model.js.map +1 -1
- package/build/_models/control-models/socket-event.control-model.d.ts +10 -10
- package/build/_models/control-models/socket-event.control-model.d.ts.map +1 -1
- package/build/_models/control-models/socket-event.control-model.js +19 -19
- package/build/_models/control-models/socket-event.control-model.js.map +1 -1
- package/build/_models/control-models/socket-presence.control-model.d.ts +1 -1
- package/build/_models/control-models/socket-presence.control-model.d.ts.map +1 -1
- package/build/_models/control-models/socket-presence.control-model.js +14 -14
- package/build/_models/control-models/socket-presence.control-model.js.map +1 -1
- package/build/_models/control-models/socket-server-service-params.control-model.d.ts +4 -4
- package/build/_models/control-models/socket-server-service-params.control-model.d.ts.map +1 -1
- package/build/_models/control-models/socket-server-service-params.control-model.js +4 -4
- package/build/_models/control-models/socket-server-service-params.control-model.js.map +1 -1
- package/build/_models/control-models/system-control.control-model.d.ts +1 -1
- package/build/_models/control-models/system-control.control-model.d.ts.map +1 -1
- package/build/_models/control-models/system-control.control-model.js +3 -3
- package/build/_models/control-models/system-control.control-model.js.map +1 -1
- package/build/_models/interfaces/certification-settings.interface.d.ts +1 -1
- package/build/_models/interfaces/certification-settings.interface.d.ts.map +1 -1
- package/build/_models/interfaces/global-service-settings.interface.d.ts +13 -13
- package/build/_models/interfaces/global-service-settings.interface.d.ts.map +1 -1
- package/build/_models/interfaces/global-settings.interface.d.ts +5 -5
- package/build/_models/interfaces/global-settings.interface.d.ts.map +1 -1
- package/build/_models/interfaces/routing-module-settings.interface.d.ts +5 -5
- package/build/_models/interfaces/routing-module-settings.interface.d.ts.map +1 -1
- package/build/_models/types/db-filter.type.d.ts +8 -8
- package/build/_models/types/db-filter.type.d.ts.map +1 -1
- package/build/_models/types/db-update.type.d.ts +3 -3
- package/build/_models/types/db-update.type.d.ts.map +1 -1
- package/build/_modules/custom-data/custom-data.controller.d.ts +3 -3
- package/build/_modules/custom-data/custom-data.controller.d.ts.map +1 -1
- package/build/_modules/custom-data/custom-data.controller.js +12 -12
- package/build/_modules/custom-data/custom-data.controller.js.map +1 -1
- package/build/_modules/custom-data/custom-data.data-service.d.ts +4 -4
- package/build/_modules/custom-data/custom-data.data-service.d.ts.map +1 -1
- package/build/_modules/custom-data/custom-data.data-service.js +4 -4
- package/build/_modules/custom-data/custom-data.data-service.js.map +1 -1
- package/build/_modules/custom-data/get-custom-data-routing-module.util.d.ts +3 -3
- package/build/_modules/custom-data/get-custom-data-routing-module.util.d.ts.map +1 -1
- package/build/_modules/custom-data/get-custom-data-routing-module.util.js +5 -5
- package/build/_modules/custom-data/get-custom-data-routing-module.util.js.map +1 -1
- package/build/_modules/test/get-test-routing-module.util.d.ts +3 -3
- package/build/_modules/test/get-test-routing-module.util.d.ts.map +1 -1
- package/build/_modules/test/get-test-routing-module.util.js +5 -5
- package/build/_modules/test/get-test-routing-module.util.js.map +1 -1
- package/build/_modules/test/test.controller.d.ts +3 -3
- package/build/_modules/test/test.controller.d.ts.map +1 -1
- package/build/_modules/test/test.controller.js +24 -24
- package/build/_modules/test/test.controller.js.map +1 -1
- package/build/_modules/usage/get-usage-routing-module.util.d.ts +3 -3
- package/build/_modules/usage/get-usage-routing-module.util.d.ts.map +1 -1
- package/build/_modules/usage/get-usage-routing-module.util.js +5 -5
- package/build/_modules/usage/get-usage-routing-module.util.js.map +1 -1
- package/build/_modules/usage/usage.controller.d.ts +3 -3
- package/build/_modules/usage/usage.controller.d.ts.map +1 -1
- package/build/_modules/usage/usage.controller.js +23 -23
- package/build/_modules/usage/usage.controller.js.map +1 -1
- package/build/_modules/usage/usage.data-service.d.ts +9 -9
- package/build/_modules/usage/usage.data-service.d.ts.map +1 -1
- package/build/_modules/usage/usage.data-service.js +13 -13
- package/build/_modules/usage/usage.data-service.js.map +1 -1
- package/build/_services/base/data.service.d.ts +14 -14
- package/build/_services/base/data.service.d.ts.map +1 -1
- package/build/_services/base/data.service.js +45 -45
- package/build/_services/base/data.service.js.map +1 -1
- package/build/_services/base/db.service.d.ts +15 -15
- package/build/_services/base/db.service.d.ts.map +1 -1
- package/build/_services/base/db.service.js +38 -38
- package/build/_services/base/db.service.js.map +1 -1
- package/build/_services/base/db.service.spec.js +1 -1
- package/build/_services/base/singleton.service.d.ts +1 -1
- package/build/_services/base/singleton.service.d.ts.map +1 -1
- package/build/_services/base/singleton.service.js +3 -3
- package/build/_services/base/singleton.service.js.map +1 -1
- package/build/_services/core/api.service.d.ts +6 -6
- package/build/_services/core/api.service.d.ts.map +1 -1
- package/build/_services/core/api.service.js +50 -50
- package/build/_services/core/api.service.js.map +1 -1
- package/build/_services/core/auth.service.d.ts +8 -8
- package/build/_services/core/auth.service.d.ts.map +1 -1
- package/build/_services/core/auth.service.js +5 -5
- package/build/_services/core/auth.service.js.map +1 -1
- package/build/_services/core/email.service.d.ts +8 -8
- package/build/_services/core/email.service.d.ts.map +1 -1
- package/build/_services/core/email.service.js +28 -28
- package/build/_services/core/email.service.js.map +1 -1
- package/build/_services/core/global.service.d.ts +21 -21
- package/build/_services/core/global.service.d.ts.map +1 -1
- package/build/_services/core/global.service.js +31 -31
- package/build/_services/core/global.service.js.map +1 -1
- package/build/_services/core/service-collection.service.d.ts +2 -2
- package/build/_services/core/service-collection.service.d.ts.map +1 -1
- package/build/_services/core/service-collection.service.js +3 -3
- package/build/_services/core/service-collection.service.js.map +1 -1
- package/build/_services/route/controller.service.d.ts +8 -8
- package/build/_services/route/controller.service.d.ts.map +1 -1
- package/build/_services/route/controller.service.js +6 -6
- package/build/_services/route/controller.service.js.map +1 -1
- package/build/_services/route/routing-module.service.d.ts +10 -10
- package/build/_services/route/routing-module.service.d.ts.map +1 -1
- package/build/_services/route/routing-module.service.js +32 -32
- package/build/_services/route/routing-module.service.js.map +1 -1
- package/build/_services/server/app-extended.server.d.ts +13 -13
- package/build/_services/server/app-extended.server.d.ts.map +1 -1
- package/build/_services/server/app-extended.server.js +46 -46
- package/build/_services/server/app-extended.server.js.map +1 -1
- package/build/_services/server/app-extended.server.spec.js +7 -7
- package/build/_services/server/app-extended.server.spec.js.map +1 -1
- package/build/_services/server/app.server.d.ts +39 -39
- package/build/_services/server/app.server.d.ts.map +1 -1
- package/build/_services/server/app.server.js +139 -139
- package/build/_services/server/app.server.js.map +1 -1
- package/build/_services/server/app.server.spec.js +8 -8
- package/build/_services/server/app.server.spec.js.map +1 -1
- package/build/_services/shared.service.spec.js +5 -5
- package/build/_services/shared.service.spec.js.map +1 -1
- package/build/_services/shared.static-service.d.ts +4 -4
- package/build/_services/shared.static-service.d.ts.map +1 -1
- package/build/_services/shared.static-service.js +3 -3
- package/build/_services/shared.static-service.js.map +1 -1
- package/build/_services/socket/socket-client.service.d.ts +8 -8
- package/build/_services/socket/socket-client.service.d.ts.map +1 -1
- package/build/_services/socket/socket-client.service.js +35 -35
- package/build/_services/socket/socket-client.service.js.map +1 -1
- package/build/_services/socket/socket-server.service.d.ts +20 -20
- package/build/_services/socket/socket-server.service.d.ts.map +1 -1
- package/build/_services/socket/socket-server.service.js +86 -86
- package/build/_services/socket/socket-server.service.js.map +1 -1
- package/build/_services/socket/socket-server.service.spec.js +2 -2
- package/build/_services/socket/socket-server.service.spec.js.map +1 -1
- package/package.json +5 -2
- package/src/_constants/global-settings.const.ts +6 -6
- package/src/_constants/mocks/app-extended-server.mock.ts +56 -56
- package/src/_constants/mocks/app-params.mock.ts +2 -2
- package/src/_constants/mocks/app-server.mock.ts +52 -52
- package/src/_constants/mocks/auth-service.mock.ts +2 -2
- package/src/_constants/mocks/controller.mock.ts +6 -6
- package/src/_constants/mocks/data-model.mock.ts +5 -5
- package/src/_constants/mocks/email-service-collection.mock.ts +2 -2
- package/src/_constants/mocks/email-service.mock.ts +2 -2
- package/src/_constants/mocks/endpoint.mock.ts +27 -27
- package/src/_constants/mocks/socket-client.mock.ts +9 -9
- package/src/_constants/mocks/socket-server.mock.ts +13 -13
- package/src/_enums/data-model-type.enum.ts +1 -1
- package/src/_enums/data-service-function.enum.ts +1 -1
- package/src/_enums/http/http-call-type.enum.ts +1 -1
- package/src/_enums/http/http-response-type.enum.ts +1 -1
- package/src/_enums/http/socket-event-type.enum.ts +1 -1
- package/src/_enums/route-security.enum.ts +1 -1
- package/src/_enums/socket-security.enum.ts +1 -1
- package/src/_models/control-models/api-call-params.control-model.ts +11 -11
- package/src/_models/control-models/app-ext-system-controls.control-model.ts +5 -5
- package/src/_models/control-models/app-params.control-model.ts +2 -3
- package/src/_models/control-models/app-system-controls.control-model.ts +6 -6
- package/src/_models/control-models/endpoint-params.control-model.ts +57 -57
- package/src/_models/control-models/http-settings.control-model.ts +2 -2
- package/src/_models/control-models/socket-client-service-params.control-model.ts +3 -2
- package/src/_models/control-models/socket-event.control-model.ts +29 -29
- package/src/_models/control-models/socket-presence.control-model.ts +18 -18
- package/src/_models/control-models/socket-server-service-params.control-model.ts +6 -6
- package/src/_models/control-models/system-control.control-model.ts +1 -1
- package/src/_models/interfaces/certification-settings.interface.ts +1 -1
- package/src/_models/interfaces/global-service-settings.interface.ts +15 -15
- package/src/_models/interfaces/global-settings.interface.ts +5 -5
- package/src/_models/interfaces/routing-module-settings.interface.ts +5 -5
- package/src/_models/types/db-filter.type.ts +11 -11
- package/src/_models/types/db-update.type.ts +3 -3
- package/src/_modules/custom-data/custom-data.controller.ts +16 -16
- package/src/_modules/custom-data/custom-data.data-service.ts +6 -6
- package/src/_modules/custom-data/get-custom-data-routing-module.util.ts +12 -12
- package/src/_modules/test/get-test-routing-module.util.ts +12 -12
- package/src/_modules/test/test.controller.ts +28 -28
- package/src/_modules/usage/get-usage-routing-module.util.ts +12 -12
- package/src/_modules/usage/usage.controller.ts +31 -31
- package/src/_modules/usage/usage.data-service.ts +32 -32
- package/src/_services/base/data.service.ts +66 -66
- package/src/_services/base/db.service.spec.ts +1 -1
- package/src/_services/base/db.service.ts +60 -60
- package/src/_services/base/singleton.service.ts +1 -1
- package/src/_services/core/api.service.ts +70 -70
- package/src/_services/core/auth.service.ts +11 -11
- package/src/_services/core/email.service.ts +47 -47
- package/src/_services/core/global.service.ts +65 -65
- package/src/_services/core/service-collection.service.ts +2 -2
- package/src/_services/route/controller.service.ts +11 -11
- package/src/_services/route/routing-module.service.ts +51 -51
- package/src/_services/server/app-extended.server.spec.ts +12 -12
- package/src/_services/server/app-extended.server.ts +59 -59
- package/src/_services/server/app.server.spec.ts +12 -12
- package/src/_services/server/app.server.ts +187 -187
- package/src/_services/shared.service.spec.ts +6 -6
- package/src/_services/shared.static-service.ts +4 -4
- package/src/_services/socket/socket-client.service.ts +49 -49
- package/src/_services/socket/socket-server.service.spec.ts +3 -3
- package/src/_services/socket/socket-server.service.ts +129 -129
|
@@ -1,19 +1,19 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { DyNTS_Shared } from './shared.static-service';
|
|
2
2
|
|
|
3
|
-
describe('
|
|
3
|
+
describe('DyNTS_Shared', () => {
|
|
4
4
|
it('getIpFromRequest should be accessible', () => {
|
|
5
|
-
expect(
|
|
5
|
+
expect(DyNTS_Shared.getIpFromRequest).toBeTruthy();
|
|
6
6
|
});
|
|
7
7
|
|
|
8
8
|
it('getIpFromRequest should be accessible', () => {
|
|
9
|
-
expect(
|
|
9
|
+
expect(DyNTS_Shared.getLocationDataByRequest).toBeTruthy();
|
|
10
10
|
});
|
|
11
11
|
|
|
12
12
|
it('getIpFromRequest should be accessible', () => {
|
|
13
|
-
expect(
|
|
13
|
+
expect(DyNTS_Shared.getLocationByIp).toBeTruthy();
|
|
14
14
|
});
|
|
15
15
|
|
|
16
16
|
it('getIpFromRequest should be accessible', () => {
|
|
17
|
-
expect(
|
|
17
|
+
expect(DyNTS_Shared.prompt).toBeTruthy();
|
|
18
18
|
});
|
|
19
19
|
});
|
|
@@ -3,12 +3,12 @@ import * as ReadLine from 'readline';
|
|
|
3
3
|
import * as GeoIp from 'geoip-lite';
|
|
4
4
|
import { Request } from 'express';
|
|
5
5
|
|
|
6
|
-
import {
|
|
6
|
+
import { DyFM_GeoIpLocation, DyFM_Shared } from '@futdevpro/fsm-dynamo/shared-service';
|
|
7
7
|
|
|
8
8
|
/**
|
|
9
9
|
*
|
|
10
10
|
*/
|
|
11
|
-
export class
|
|
11
|
+
export class DyNTS_Shared extends DyFM_Shared {
|
|
12
12
|
|
|
13
13
|
/**
|
|
14
14
|
*
|
|
@@ -35,7 +35,7 @@ export class DynamoNTS_Shared extends DynamoFM_Shared {
|
|
|
35
35
|
* @param request
|
|
36
36
|
* @returns
|
|
37
37
|
*/
|
|
38
|
-
static getLocationDataByRequest(request: Request):
|
|
38
|
+
static getLocationDataByRequest(request: Request): DyFM_GeoIpLocation {
|
|
39
39
|
return GeoIp.lookup(this.getIpFromRequest(request));
|
|
40
40
|
}
|
|
41
41
|
|
|
@@ -44,7 +44,7 @@ export class DynamoNTS_Shared extends DynamoFM_Shared {
|
|
|
44
44
|
* @param request
|
|
45
45
|
* @returns
|
|
46
46
|
*/
|
|
47
|
-
static getLocationByIp(ip: string):
|
|
47
|
+
static getLocationByIp(ip: string): DyFM_GeoIpLocation {
|
|
48
48
|
return GeoIp.lookup(ip);
|
|
49
49
|
}
|
|
50
50
|
|
|
@@ -3,72 +3,72 @@
|
|
|
3
3
|
|
|
4
4
|
import * as SocketIO from 'socket.io-client';
|
|
5
5
|
|
|
6
|
-
import {
|
|
7
|
-
import {
|
|
8
|
-
import {
|
|
6
|
+
import { DyNTS_SingletonService } from '../base/singleton.service';
|
|
7
|
+
import { DyFM_Error, DyFM_Log } from '@futdevpro/fsm-dynamo';
|
|
8
|
+
import { DyFM_delay, DyFM_Array } from '@futdevpro/fsm-dynamo/utils';
|
|
9
9
|
import {
|
|
10
|
-
|
|
10
|
+
DyNTS_SocketClientService_Params
|
|
11
11
|
} from '../../_models/control-models/socket-client-service-params.control-model';
|
|
12
|
-
import {
|
|
13
|
-
import {
|
|
14
|
-
import {
|
|
12
|
+
import { DyNTS_globalSettings } from '../../_constants/global-settings.const';
|
|
13
|
+
import { DyNTS_SocketEvent } from '../../_models/control-models/socket-event.control-model';
|
|
14
|
+
import { DyNTS_SocketEventKey } from '../../_enums/http/socket-event-type.enum';
|
|
15
15
|
|
|
16
|
-
export abstract class
|
|
16
|
+
export abstract class DyNTS_SocketClientService extends DyNTS_SingletonService {
|
|
17
17
|
|
|
18
|
-
private _params:
|
|
19
|
-
protected get params():
|
|
18
|
+
private _params: DyNTS_SocketClientService_Params;
|
|
19
|
+
protected get params(): DyNTS_SocketClientService_Params { return this._params; }
|
|
20
20
|
get name(): string { return this.params.name; }
|
|
21
21
|
|
|
22
22
|
protected socket: SocketIO.Socket;
|
|
23
23
|
|
|
24
|
-
protected incomingEvents:
|
|
24
|
+
protected incomingEvents: DyNTS_SocketEvent<any>[];
|
|
25
25
|
|
|
26
26
|
protected _connected: boolean = false;
|
|
27
27
|
get connected(): boolean { return this._connected; }
|
|
28
28
|
|
|
29
|
-
protected debugLog: boolean =
|
|
29
|
+
protected debugLog: boolean = DyNTS_globalSettings.logSetup;
|
|
30
30
|
protected logFn: boolean;
|
|
31
31
|
|
|
32
|
-
private defaultEvents:
|
|
33
|
-
new
|
|
34
|
-
eventKey:
|
|
32
|
+
private defaultEvents: DyNTS_SocketEvent<any>[] = [
|
|
33
|
+
new DyNTS_SocketEvent<any>({
|
|
34
|
+
eventKey: DyNTS_SocketEventKey.connect,
|
|
35
35
|
tasks: [
|
|
36
36
|
async () => {
|
|
37
37
|
this._connected = true;
|
|
38
|
-
|
|
38
|
+
DyFM_Log.success(`< > socket-client(${this.params.name}) connected!`);
|
|
39
39
|
},
|
|
40
40
|
],
|
|
41
41
|
}),
|
|
42
42
|
|
|
43
|
-
new
|
|
44
|
-
eventKey:
|
|
43
|
+
new DyNTS_SocketEvent<any>({
|
|
44
|
+
eventKey: DyNTS_SocketEventKey.disconnect,
|
|
45
45
|
tasks: [
|
|
46
46
|
async () => {
|
|
47
47
|
this._connected = false;
|
|
48
|
-
|
|
48
|
+
DyFM_Log.warn(`<x > socket-client(${this.params.name}) disconnected!`);
|
|
49
49
|
|
|
50
50
|
if (this._params.reconnect) {
|
|
51
|
-
await
|
|
51
|
+
await DyFM_delay(this._params.reconnectDelay);
|
|
52
52
|
this.connectSocket();
|
|
53
53
|
}
|
|
54
54
|
},
|
|
55
55
|
],
|
|
56
56
|
}),
|
|
57
57
|
|
|
58
|
-
new
|
|
59
|
-
eventKey:
|
|
58
|
+
new DyNTS_SocketEvent<any>({
|
|
59
|
+
eventKey: DyNTS_SocketEventKey.subscriptionSuccessful,
|
|
60
60
|
tasks: [
|
|
61
61
|
async () => {
|
|
62
|
-
|
|
62
|
+
DyFM_Log.success(`<=--> socket-client(${this.params.name}) subscription successful!`);
|
|
63
63
|
},
|
|
64
64
|
],
|
|
65
65
|
}),
|
|
66
66
|
|
|
67
|
-
new
|
|
68
|
-
eventKey:
|
|
67
|
+
new DyNTS_SocketEvent<any>({
|
|
68
|
+
eventKey: DyNTS_SocketEventKey.error,
|
|
69
69
|
tasks: [
|
|
70
70
|
async (content: any) => {
|
|
71
|
-
|
|
71
|
+
DyFM_Log.error(`=--> socket-client(${this.params.name}) ERROR!:`, content);
|
|
72
72
|
},
|
|
73
73
|
],
|
|
74
74
|
}),
|
|
@@ -78,12 +78,12 @@ export abstract class DynamoNTS_SocketClientService extends DynamoNTS_SingletonS
|
|
|
78
78
|
super();
|
|
79
79
|
|
|
80
80
|
this.asyncConstructor().catch((error: any) => {
|
|
81
|
-
|
|
81
|
+
DyFM_Log.error(`socket-client(${this.params?.name}) Service setup failed! ERROR:`, error);
|
|
82
82
|
|
|
83
83
|
if (error?.flag?.includes?.('DYNAMO-ERROR-OBJECT')) {
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
84
|
+
DyFM_Log.error(`\nErrorMessage: ${(error as DyFM_Error)._message}`);
|
|
85
|
+
DyFM_Log.error(`ErrorCode: ${(error as DyFM_Error)._errorCode}`);
|
|
86
|
+
DyFM_Log.error(`UserMessage: ${(error as DyFM_Error).__userMessage}`);
|
|
87
87
|
}
|
|
88
88
|
});
|
|
89
89
|
}
|
|
@@ -98,13 +98,13 @@ export abstract class DynamoNTS_SocketClientService extends DynamoNTS_SingletonS
|
|
|
98
98
|
|
|
99
99
|
await this.setupSocketEvents();
|
|
100
100
|
|
|
101
|
-
|
|
101
|
+
DyFM_Log.success(`\nsocket-client(${this.params?.name}) Service setup finished`);
|
|
102
102
|
|
|
103
103
|
await this.connectSocket();
|
|
104
104
|
} catch (error) {
|
|
105
|
-
|
|
105
|
+
DyFM_Log.error(`socket-client(${this.params?.name}) Service setup failed!`, error);
|
|
106
106
|
|
|
107
|
-
throw new
|
|
107
|
+
throw new DyFM_Error({
|
|
108
108
|
errorCode: 'NTS-SCS-001',
|
|
109
109
|
error: error,
|
|
110
110
|
});
|
|
@@ -115,10 +115,10 @@ export abstract class DynamoNTS_SocketClientService extends DynamoNTS_SingletonS
|
|
|
115
115
|
try {
|
|
116
116
|
if (this.logFn) console.log('\nFn:. setupDefaultEvents');
|
|
117
117
|
|
|
118
|
-
this.defaultEvents.forEach((defaultEvent:
|
|
118
|
+
this.defaultEvents.forEach((defaultEvent: DyNTS_SocketEvent<any>) => {
|
|
119
119
|
defaultEvent.serviceName = this.params.name;
|
|
120
120
|
const eventDeclared = this.incomingEvents.find(
|
|
121
|
-
(event:
|
|
121
|
+
(event: DyNTS_SocketEvent<any>) => event.eventKey === defaultEvent.eventKey
|
|
122
122
|
);
|
|
123
123
|
|
|
124
124
|
if (!eventDeclared) {
|
|
@@ -128,7 +128,7 @@ export abstract class DynamoNTS_SocketClientService extends DynamoNTS_SingletonS
|
|
|
128
128
|
}
|
|
129
129
|
});
|
|
130
130
|
} catch (error) {
|
|
131
|
-
|
|
131
|
+
DyFM_Log.error(
|
|
132
132
|
`socket-client(${this.params.name}) Service Setup Default Events failed, ` +
|
|
133
133
|
`ERROR:`, error
|
|
134
134
|
);
|
|
@@ -141,22 +141,22 @@ export abstract class DynamoNTS_SocketClientService extends DynamoNTS_SingletonS
|
|
|
141
141
|
try {
|
|
142
142
|
if (this.debugLog) console.log(`Setup socket-client(${this.params.name}) Events...`);
|
|
143
143
|
|
|
144
|
-
await
|
|
144
|
+
await DyFM_Array.asyncForEach(
|
|
145
145
|
this.incomingEvents,
|
|
146
|
-
async (event:
|
|
146
|
+
async (event: DyNTS_SocketEvent<any>) => {
|
|
147
147
|
event.serviceName = this.params.name;
|
|
148
148
|
this.socket.on(event.eventKey, async (content: any) => {
|
|
149
149
|
try {
|
|
150
150
|
await event.executeEventTasks(content, this.params.service);
|
|
151
151
|
} catch (error) {
|
|
152
|
-
|
|
153
|
-
await this.emitEvent(
|
|
152
|
+
DyFM_Log.error(`socket-client(${this.params.name}) Event failed, ERROR:`, error);
|
|
153
|
+
await this.emitEvent(DyNTS_SocketEventKey.error, error);
|
|
154
154
|
}
|
|
155
155
|
});
|
|
156
156
|
}
|
|
157
157
|
);
|
|
158
158
|
} catch (error) {
|
|
159
|
-
|
|
159
|
+
DyFM_Log.error(
|
|
160
160
|
`socket-client(${this.params.name}) Service Setup Socket Events failed, ` +
|
|
161
161
|
`ERROR:`, error
|
|
162
162
|
);
|
|
@@ -167,7 +167,7 @@ export abstract class DynamoNTS_SocketClientService extends DynamoNTS_SingletonS
|
|
|
167
167
|
|
|
168
168
|
private async connectSocket(): Promise<void> {
|
|
169
169
|
try {
|
|
170
|
-
|
|
170
|
+
DyFM_Log.info(
|
|
171
171
|
`< .. > socket-client(${this.params.name}) ` +
|
|
172
172
|
`connecting to ${this.params.address}:${this.params.port} ...`
|
|
173
173
|
);
|
|
@@ -178,7 +178,7 @@ export abstract class DynamoNTS_SocketClientService extends DynamoNTS_SingletonS
|
|
|
178
178
|
await this.tryReconnectIfNeeded();
|
|
179
179
|
}
|
|
180
180
|
} catch (error) {
|
|
181
|
-
|
|
181
|
+
DyFM_Log.error(
|
|
182
182
|
`socket-client(${this.params.name}) Service Connect Socket failed, ` +
|
|
183
183
|
`ERROR:`, error
|
|
184
184
|
);
|
|
@@ -190,13 +190,13 @@ export abstract class DynamoNTS_SocketClientService extends DynamoNTS_SingletonS
|
|
|
190
190
|
private async tryReconnectIfNeeded(): Promise<void> {
|
|
191
191
|
try {
|
|
192
192
|
if (this.logFn) console.log(`\nFn:. tryReconnectIfNeeded`);
|
|
193
|
-
await
|
|
193
|
+
await DyFM_delay(this._params.reconnectDelay);
|
|
194
194
|
|
|
195
195
|
if (!this._connected) {
|
|
196
196
|
await this.connectSocket();
|
|
197
197
|
}
|
|
198
198
|
} catch (error) {
|
|
199
|
-
|
|
199
|
+
DyFM_Log.error(
|
|
200
200
|
`socket-client(${this.params.name}) Service Try Reconnect failed, ` +
|
|
201
201
|
`ERROR:`, error
|
|
202
202
|
);
|
|
@@ -212,10 +212,10 @@ export abstract class DynamoNTS_SocketClientService extends DynamoNTS_SingletonS
|
|
|
212
212
|
*/
|
|
213
213
|
protected async emitEvent(eventType: string, content: any): Promise<void> {
|
|
214
214
|
try {
|
|
215
|
-
|
|
215
|
+
DyFM_Log.log(`<=-- outgoing socket-client(${this.params.name}) event: ${eventType}`);
|
|
216
216
|
this.socket.emit(eventType, content);
|
|
217
217
|
} catch (error) {
|
|
218
|
-
|
|
218
|
+
DyFM_Log.error(
|
|
219
219
|
`socket-client(${this.params.name}) ` +
|
|
220
220
|
`Service Emit Event failed: ${this.params?.name} (${this.params?.port})`, error
|
|
221
221
|
);
|
|
@@ -227,10 +227,10 @@ export abstract class DynamoNTS_SocketClientService extends DynamoNTS_SingletonS
|
|
|
227
227
|
/**
|
|
228
228
|
* You must setup params for the service in this function
|
|
229
229
|
*/
|
|
230
|
-
abstract getParams():
|
|
230
|
+
abstract getParams(): DyNTS_SocketClientService_Params;
|
|
231
231
|
|
|
232
232
|
/**
|
|
233
233
|
* You must setup events and required services in this function
|
|
234
234
|
*/
|
|
235
|
-
abstract getIncomingEvents():
|
|
235
|
+
abstract getIncomingEvents(): DyNTS_SocketEvent<any>[];
|
|
236
236
|
}
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
|
|
2
2
|
|
|
3
|
-
import {
|
|
3
|
+
import { DyNTS_SocketServer_Mock } from '../../_constants/mocks/socket-server.mock';
|
|
4
4
|
|
|
5
|
-
describe('
|
|
5
|
+
describe('DyNTS_SocketServerService', () => {
|
|
6
6
|
it('should create an instance', () => {
|
|
7
|
-
expect(new
|
|
7
|
+
expect(new DyNTS_SocketServer_Mock()).toBeTruthy();
|
|
8
8
|
});
|
|
9
9
|
});
|
|
10
10
|
|