@futdevpro/nts-dynamo 1.15.15 → 1.15.16
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/.c8rc.json +26 -26
- package/.copilot/patterns.json +7 -7
- package/.cursor/rules/__assistant_guide.mdc +30 -30
- package/.cursor/rules/_ag_backend-structure.mdc +85 -85
- package/.cursor/rules/_ag_backend.mdc +16 -16
- package/.cursor/rules/_ag_frontend-structure.mdc +86 -86
- package/.cursor/rules/_ag_frontend.mdc +39 -39
- package/.cursor/rules/_ag_import-rules.mdc +44 -44
- package/.cursor/rules/_ag_naming.mdc +115 -115
- package/.cursor/rules/_ag_should-be.mdc +6 -6
- package/.cursor/rules/ai_development_guide.md +60 -60
- package/.cursor/rules/cursor-rules.md +160 -160
- package/.cursor/rules/default-command.mdc +464 -464
- package/.cursor/rules/error_code_pattern.md +39 -39
- package/.cursor/rules/saved rule mcp server use.md +15 -15
- package/.dynamo/version-bump.config.json +5 -0
- package/.github/workflows/main.yml +426 -393
- package/.husky/pre-commit +1 -0
- package/.vscode/settings.json +10 -10
- package/HOWTO.md +15 -15
- package/LICENSE +21 -21
- package/__documentations/2026-04-28-logs-module.md +49 -0
- package/__documentations/nts-integration-tests-2026-03-17.md +26 -26
- package/_specifications/BACKLOG.md +50 -50
- package/_specifications/TODO.md +15 -15
- package/_specifications/agent.md +138 -138
- package/eslint.config.js +3 -3
- package/nodemon.json +24 -24
- package/package.json +343 -362
- package/pipeline.cicd.config.json +152 -0
- package/scripts/run-coverage-tests.js +28 -28
- package/spec/support/helpers/spec-reporter-loader.js +359 -359
- package/spec/support/helpers/ts-node-helper.js +93 -93
- package/spec/support/jasmine.coverage.json +24 -24
- package/spec/support/jasmine.json +24 -24
- package/src/_collections/archive.util.spec.ts +57 -57
- package/src/_collections/archive.util.ts +18 -18
- package/src/_collections/atlas-default-db-options.const.ts +9 -9
- package/src/_collections/default-fallback-cache-max-age.const.spec.ts +11 -11
- package/src/_collections/default-fallback-cache-max-age.const.ts +2 -2
- package/src/_collections/default-not-found-page.const.spec.ts +19 -19
- package/src/_collections/default-not-found-page.const.ts +22 -22
- package/src/_collections/default-socket-path.const.spec.ts +12 -12
- package/src/_collections/default-socket-path.const.ts +2 -2
- package/src/_collections/get-environment-settings.util.spec.ts +210 -210
- package/src/_collections/get-environment-settings.util.ts +48 -48
- package/src/_collections/sample.env +21 -21
- package/src/_collections/star.controller.spec.ts +224 -224
- package/src/_collections/star.controller.ts +129 -129
- package/src/_enums/data-model-type.enum.ts +14 -14
- package/src/_enums/data-service-function.enum.ts +24 -24
- package/src/_enums/predefined-data-types.enum.ts +16 -16
- package/src/_enums/route-security.enum.ts +12 -12
- package/src/_models/control-models/api-call-params.control-model.spec.ts +152 -152
- package/src/_models/control-models/api-call-params.control-model.ts +142 -142
- package/src/_models/control-models/app-ext-system-controls.control-model.spec.ts +52 -52
- package/src/_models/control-models/app-ext-system-controls.control-model.ts +9 -9
- package/src/_models/control-models/app-params.control-model.spec.ts +225 -225
- package/src/_models/control-models/app-params.control-model.ts +136 -136
- package/src/_models/control-models/app-system-controls.control-model.spec.ts +31 -31
- package/src/_models/control-models/app-system-controls.control-model.ts +9 -9
- package/src/_models/control-models/endpoint-params.control-model.spec.ts +578 -578
- package/src/_models/control-models/endpoint-params.control-model.ts +526 -526
- package/src/_models/control-models/http-settings.control-model.spec.ts +77 -77
- package/src/_models/control-models/http-settings.control-model.ts +37 -37
- package/src/_models/control-models/system-control.control-model.spec.ts +27 -27
- package/src/_models/control-models/system-control.control-model.ts +12 -12
- package/src/_models/interfaces/certification-settings.interface.ts +7 -7
- package/src/_models/interfaces/environment-settings.interface.ts +59 -59
- package/src/_models/interfaces/global-log-settings.interface.ts +108 -108
- package/src/_models/interfaces/global-service-settings.interface.ts +47 -47
- package/src/_models/interfaces/routing-module-settings.interface.ts +21 -21
- package/src/_models/interfaces/static-client-settings.interface.spec.ts +29 -29
- package/src/_models/interfaces/static-client-settings.interface.ts +28 -28
- package/src/_models/types/db-update.type.ts +100 -100
- package/src/_modules/ai/_models/ai-input-interfaces.ts +117 -117
- package/src/_modules/ai/_models/ai-test-generation-result.interface.ts +16 -16
- package/src/_modules/ai/_modules/anthropic/_services/aai-user-key.control-service.ts +138 -138
- package/src/_modules/ai/_modules/anthropic/index.ts +5 -5
- package/src/_modules/ai/_modules/document-ai/_collections/dai-chunking.util.spec.ts +242 -242
- package/src/_modules/ai/_modules/document-ai/_collections/dai-chunking.util.ts +639 -639
- package/src/_modules/ai/_modules/document-ai/_collections/dai-document.util.spec.ts +209 -209
- package/src/_modules/ai/_modules/document-ai/_collections/dai-document.util.ts +85 -85
- package/src/_modules/ai/_modules/document-ai/_enums/dai-compare-result-type.enum.ts +7 -7
- package/src/_modules/ai/_modules/document-ai/_models/data-models/dai-doc-chunk.data-model.ts +146 -146
- package/src/_modules/ai/_modules/document-ai/_models/data-models/dai-doc-page.data-model.ts +162 -162
- package/src/_modules/ai/_modules/document-ai/_models/data-models/dai-document.data-model.ts +99 -99
- package/src/_modules/ai/_modules/document-ai/_models/interfaces/dai-doc-chunk-compare-result.interface.ts +18 -18
- package/src/_modules/ai/_modules/document-ai/_models/interfaces/dai-doc-page-compare-result.interface.ts +19 -19
- package/src/_modules/ai/_modules/document-ai/_models/interfaces/dai-document-compare-result.interface.ts +25 -25
- package/src/_modules/ai/_modules/document-ai/index.ts +28 -28
- package/src/_modules/ai/_modules/fdp-ai/_services/fdpai-user-key.control-service.ts +189 -189
- package/src/_modules/ai/_modules/fdp-ai/index.ts +5 -5
- package/src/_modules/ai/_modules/open-ai/_collections/oai-global-settings.const.ts +9 -9
- package/src/_modules/ai/_modules/open-ai/_collections/oai-llm-predefined-requests-hu.conts.ts +82 -82
- package/src/_modules/ai/_modules/open-ai/_collections/oai-llm-predefined-requests.conts.ts +75 -75
- package/src/_modules/ai/_modules/open-ai/_enums/oai-gpt-message-role.enum.ts +45 -45
- package/src/_modules/ai/_modules/open-ai/_models/interfaces/oai-global-settings.interface.ts +7 -7
- package/src/_modules/ai/_modules/open-ai/_models/interfaces/oai-gpt-message.interface.ts +7 -7
- package/src/_modules/ai/_modules/open-ai/_models/interfaces/oai-llm-predefined-requests.interface.ts +57 -57
- package/src/_modules/ai/_modules/open-ai/_services/data-services/oai-doc-chunk-data.service.ts +292 -292
- package/src/_modules/ai/_modules/open-ai/_services/data-services/oai-document.data-service.spec.ts +342 -342
- package/src/_modules/ai/_modules/open-ai/_services/data-services/oai-vector-data.service.spec.ts +550 -550
- package/src/_modules/ai/_modules/open-ai/_services/data-services/oai-vector-data.service.ts +630 -630
- package/src/_modules/ai/_modules/open-ai/_services/oai-embedding.control-service.spec.ts +240 -240
- package/src/_modules/ai/_modules/open-ai/_services/oai-embedding.control-service.ts +98 -98
- package/src/_modules/ai/_modules/open-ai/_services/oai-llm-chat.service-base.spec.ts +462 -462
- package/src/_modules/ai/_modules/open-ai/_services/oai-llm-chat.service-base.ts +615 -615
- package/src/_modules/ai/_modules/open-ai/_services/oai-llm.service-base.spec.ts +437 -437
- package/src/_modules/ai/_modules/open-ai/_services/oai-llm.service-base.ts +833 -833
- package/src/_modules/ai/_modules/open-ai/_services/oai-user-key.control-service.ts +157 -157
- package/src/_modules/ai/_services/ai-embedding.service-base.spec.ts +98 -98
- package/src/_modules/ai/_services/ai-embedding.service-base.ts +48 -48
- package/src/_modules/ai/_services/ai-llm-chat.service-base.spec.ts +229 -229
- package/src/_modules/ai/_services/ai-llm-chat.service-base.ts +68 -68
- package/src/_modules/ai/_services/ai-llm.service-base.spec.ts +250 -250
- package/src/_modules/ai/_services/ai-llm.service-base.ts +332 -332
- package/src/_modules/ai/_services/ai-provider.service-base.spec.ts +79 -79
- package/src/_modules/ai/_services/ai-provider.service-base.ts +29 -29
- package/src/_modules/ai/_services/ai-user-key.service-base.ts +59 -59
- package/src/_modules/ai/index.ts +13 -13
- package/src/_modules/assistant/_collections/ass-global-settings.const.ts +13 -13
- package/src/_modules/assistant/_collections/ass.util.spec.ts +176 -176
- package/src/_modules/assistant/_collections/ass.util.ts +50 -50
- package/src/_modules/assistant/_models/ass-global-settings.interface.ts +15 -15
- package/src/_modules/assistant/_services/ass-io.control-service.spec.ts +140 -140
- package/src/_modules/assistant/_services/ass-main.control-service.spec.ts +192 -192
- package/src/_modules/assistant/_services/ass-main.control-service.ts +107 -107
- package/src/_modules/bot/_collections/bot-default-commands.const.ts +12 -12
- package/src/_modules/bot/_collections/bot-global-settings.const.ts +39 -39
- package/src/_modules/bot/_models/bot-channel-wrapper.interface.ts +62 -62
- package/src/_modules/bot/_models/bot-command.interface.ts +8 -8
- package/src/_modules/bot/_models/bot-global-settings.interface.ts +96 -96
- package/src/_modules/bot/_models/bot-last-mention-date.interface.ts +6 -6
- package/src/_modules/bot/_models/bot-last-message-date.interface.ts +5 -5
- package/src/_modules/bot/_models/bot-user-wrapper.interface.ts +41 -41
- package/src/_modules/bot/_modules/discord-bot/_models/dib-platform.types.ts +9 -9
- package/src/_modules/bot/_modules/discord-bot/_services/dib-messaging-provider.control-service.spec.ts +431 -431
- package/src/_modules/bot/_modules/dynamo-bot/_collections/dyb-operations.util.spec.ts +160 -160
- package/src/_modules/bot/_modules/dynamo-bot/_collections/dyb-operations.util.ts +55 -55
- package/src/_modules/bot/_modules/dynamo-bot/_models/dyb-platform.types.ts +15 -15
- package/src/_modules/bot/_modules/dynamo-bot/_services/dyb-messaging-provider.control-service.spec.ts +374 -374
- package/src/_modules/bot/_modules/dynamo-bot/_services/dyb-messaging-provider.control-service.ts +447 -447
- package/src/_modules/bot/_modules/dynamo-bot/index.ts +15 -15
- package/src/_modules/bot/_modules/slack-bot/_models/slb-platform.types.ts +9 -9
- package/src/_modules/bot/_modules/slack-bot/_services/slb-messaging-provider.control-service.spec.ts +344 -344
- package/src/_modules/bot/_modules/slack-bot/_services/slb-messaging-provider.control-service.ts +197 -197
- package/src/_modules/bot/_modules/teams-bot/_models/teb-platform.types.ts +9 -9
- package/src/_modules/bot/_modules/teams-bot/_services/teb-messaging-provider.control-service.spec.ts +345 -345
- package/src/_modules/bot/_modules/teams-bot/_services/teb-messaging-provider.control-service.ts +197 -197
- package/src/_modules/bot/_services/bot-commands.control-service.spec.ts +116 -116
- package/src/_modules/bot/_services/bot-io.control-service.spec.ts +285 -285
- package/src/_modules/bot/_services/bot-main.control-service.spec.ts +208 -208
- package/src/_modules/bot/_services/bot-messaging-provider.service-base.spec.ts +349 -349
- package/src/_modules/bot/_services/bot-routines.control-service.spec.ts +111 -111
- package/src/_modules/custom-data/custom-data.controller.spec.ts +49 -49
- package/src/_modules/custom-data/custom-data.controller.ts +67 -67
- package/src/_modules/custom-data/custom-data.data-service.spec.ts +54 -54
- package/src/_modules/custom-data/custom-data.data-service.ts +21 -21
- package/src/_modules/custom-data/get-custom-data-routing-module.util.spec.ts +28 -28
- package/src/_modules/custom-data/get-custom-data-routing-module.util.ts +24 -24
- package/src/_modules/custom-data/index.ts +9 -9
- package/src/_modules/defaults/_collections/default-endpoints.util.ts +487 -487
- package/src/_modules/defaults/_models/default-user.data-model.ts +72 -72
- package/src/_modules/defaults/_services/default-auth.service.spec.ts +269 -269
- package/src/_modules/defaults/_services/default-auth.service.ts +177 -177
- package/src/_modules/defaults/_services/default-socket-events.service.spec.ts +42 -42
- package/src/_modules/defaults/_services/default-socket-events.service.ts +61 -61
- package/src/_modules/defaults/_services/default-user.data-service.spec.ts +187 -187
- package/src/_modules/defaults/_services/default-user.data-service.ts +98 -98
- package/src/_modules/defaults/index.ts +17 -17
- package/src/_modules/discord-assistant/_collections/dias-global-settings.const.ts +19 -19
- package/src/_modules/discord-assistant/_collections/dias.util.spec.ts +366 -366
- package/src/_modules/discord-assistant/_collections/dias.util.ts +132 -132
- package/src/_modules/discord-assistant/_models/dias-global-settings.interface.ts +19 -19
- package/src/_modules/discord-assistant/_models/dias-knowledge.data-model.ts +52 -52
- package/src/_modules/discord-assistant/_services/dias-chunk.data-service.ts +177 -177
- package/src/_modules/discord-assistant/_services/dias-io.control-service.spec.ts +108 -108
- package/src/_modules/discord-assistant/_services/dias-io.control-service.ts +69 -69
- package/src/_modules/discord-assistant/_services/dias-main.control-service.spec.ts +22 -22
- package/src/_modules/discord-assistant/_services/dias-main.control-service.ts +27 -27
- package/src/_modules/discord-assistant/_services/dias.service-base.spec.ts +195 -195
- package/src/_modules/discord-assistant/_services/dias.service-base.ts +76 -76
- package/src/_modules/discord-assistant/index.ts +38 -38
- package/src/_modules/discord-assistant-voiced/_services/dias-discord-bot.control-service.spec.ts +34 -34
- package/src/_modules/discord-assistant-voiced/_services/dias-discord-bot.control-service.ts +11 -11
- package/src/_modules/discord-assistant-voiced/index.ts +36 -36
- package/src/_modules/discord-bot/_collections/dibo-default-commands.const.ts +16 -16
- package/src/_modules/discord-bot/_collections/dibo-global-settings.conts.ts +55 -55
- package/src/_modules/discord-bot/_collections/dibo-operations.util.spec.ts +214 -214
- package/src/_modules/discord-bot/_collections/dibo-operations.util.ts +387 -387
- package/src/_modules/discord-bot/_models/dibo-command.interface.ts +12 -12
- package/src/_modules/discord-bot/_models/dibo-global-settings.interface.ts +98 -98
- package/src/_modules/discord-bot/_models/dibo-last-mention-date.inteface.ts +7 -7
- package/src/_modules/discord-bot/_models/dibo-last-message-date.interface.ts +6 -6
- package/src/_modules/discord-bot/_services/dibo-commands.control-service.spec.ts +154 -154
- package/src/_modules/discord-bot/_services/dibo-commands.control-service.ts +153 -153
- package/src/_modules/discord-bot/_services/dibo-io.control-service.spec.ts +264 -264
- package/src/_modules/discord-bot/_services/dibo-io.control-service.ts +306 -306
- package/src/_modules/discord-bot/_services/dibo-main.control-service.spec.ts +408 -408
- package/src/_modules/discord-bot/_services/dibo-main.control-service.ts +487 -487
- package/src/_modules/discord-bot/_services/dibo-routines.control-service.spec.ts +105 -105
- package/src/_modules/discord-bot/index.ts +36 -36
- package/src/_modules/local-vector-search/_enums/lvs-search-mode.enum.ts +19 -19
- package/src/_modules/local-vector-search/_models/lvs-search-result.interface.ts +17 -17
- package/src/_modules/local-vector-search/_services/lvs-doc-chunk-data.service.spec.ts +418 -418
- package/src/_modules/local-vector-search/_services/lvs-doc-chunk-data.service.ts +276 -276
- package/src/_modules/local-vector-search/_services/lvs-local-vector-search.data-service.spec.ts +345 -345
- package/src/_modules/local-vector-search/_services/lvs-local-vector-search.data-service.ts +330 -330
- package/src/_modules/local-vector-search/_services/lvs-vector-pool.control-service.spec.ts +393 -393
- package/src/_modules/local-vector-search/_services/lvs-vector-pool.control-service.ts +220 -220
- package/src/_modules/local-vector-search/index.ts +11 -11
- package/src/_modules/messaging/README.md +354 -354
- package/src/_modules/messaging/_collections/get-messaging-routing-module.util.ts +26 -26
- package/src/_modules/messaging/_collections/msg-global-settings.const.ts +22 -22
- package/src/_modules/messaging/_collections/msg.util.spec.ts +226 -226
- package/src/_modules/messaging/_models/msg-global-settings.interface.ts +37 -37
- package/src/_modules/messaging/_services/msg-conversation.data-service.ts +146 -146
- package/src/_modules/messaging/_services/msg-events.service.spec.ts +219 -219
- package/src/_modules/messaging/_services/msg-events.service.ts +267 -267
- package/src/_modules/messaging/_services/msg-integration.control-service.ts +179 -179
- package/src/_modules/messaging/_services/msg-main.control-service.spec.ts +147 -147
- package/src/_modules/messaging/_services/msg-main.control-service.ts +571 -571
- package/src/_modules/messaging/_services/msg-message.data-service.ts +129 -129
- package/src/_modules/messaging/_services/msg.controller.spec.ts +201 -201
- package/src/_modules/messaging/index.ts +30 -30
- package/src/_modules/mock/app-extended-server.mock.ts +201 -201
- package/src/_modules/mock/app-integration-test.mock.ts +51 -51
- package/src/_modules/mock/app-params.mock.spec.ts +21 -21
- package/src/_modules/mock/app-params.mock.ts +9 -9
- package/src/_modules/mock/app-server.mock.ts +188 -188
- package/src/_modules/mock/auth-service.mock.spec.ts +47 -47
- package/src/_modules/mock/auth-service.mock.ts +28 -28
- package/src/_modules/mock/controller.mock.spec.ts +26 -26
- package/src/_modules/mock/controller.mock.ts +16 -16
- package/src/_modules/mock/data-model.mock.spec.ts +111 -111
- package/src/_modules/mock/data-model.mock.ts +82 -82
- package/src/_modules/mock/email-service-collection.mock.spec.ts +24 -24
- package/src/_modules/mock/email-service-collection.mock.ts +15 -15
- package/src/_modules/mock/email-service.mock.spec.ts +17 -17
- package/src/_modules/mock/email-service.mock.ts +20 -20
- package/src/_modules/mock/email-template.mock.html +14 -14
- package/src/_modules/mock/endpoint.mock.ts +91 -91
- package/src/_modules/mock/socket-client.mock.spec.ts +40 -40
- package/src/_modules/mock/socket-client.mock.ts +45 -45
- package/src/_modules/mock/socket-server.mock.spec.ts +44 -44
- package/src/_modules/mock/socket-server.mock.ts +46 -46
- package/src/_modules/oauth2/_routes/oauth2.controller.spec.ts +107 -107
- package/src/_modules/oauth2/_routes/oauth2.controller.ts +98 -98
- package/src/_modules/oauth2/_services/oauth2.auth-service.spec.ts +254 -254
- package/src/_modules/oauth2/_services/oauth2.auth-service.ts +232 -232
- package/src/_modules/oauth2/_services/oauth2.control-service.spec.ts +585 -585
- package/src/_modules/oauth2/_services/oauth2.control-service.ts +653 -653
- package/src/_modules/oauth2/index.ts +17 -17
- package/src/_modules/server/errors/errors.control-service.spec.ts +230 -230
- package/src/_modules/server/errors/errors.control-service.ts +69 -69
- package/src/_modules/server/errors/errors.controller.spec.ts +165 -165
- package/src/_modules/server/errors/errors.controller.ts +270 -270
- package/src/_modules/server/errors/errors.data-service.spec.ts +355 -355
- package/src/_modules/server/index.ts +30 -30
- package/src/_modules/server/server-status/server-status-snapshot.control-service.spec.ts +70 -70
- package/src/_modules/server/server-status/server-status-snapshot.control-service.ts +17 -17
- package/src/_modules/server/server-status/server-status-snapshot.data-service.spec.ts +77 -77
- package/src/_modules/server/server-status/server-status-snapshot.data-service.ts +37 -37
- package/src/_modules/server/server-status/server-status.control-service.spec.ts +516 -516
- package/src/_modules/server/server-status/server-status.control-service.ts +336 -336
- package/src/_modules/server/server-status/server-status.controller.spec.ts +156 -156
- package/src/_modules/server/server-status/server-status.controller.ts +131 -131
- package/src/_modules/socket/_enums/socket-security.enum.ts +11 -11
- package/src/_modules/socket/_models/socket-client-service-params.control-model.spec.ts +32 -32
- package/src/_modules/socket/_models/socket-client-service-params.control-model.ts +22 -22
- package/src/_modules/socket/_models/socket-presence.control-model.spec.ts +164 -164
- package/src/_modules/socket/_models/socket-presence.control-model.ts +210 -210
- package/src/_modules/socket/_models/socket-server-service-params.control-model.spec.ts +46 -46
- package/src/_modules/socket/_models/socket-server-service-params.control-model.ts +22 -22
- package/src/_modules/socket/_services/socket-client.service.spec.ts +15 -15
- package/src/_modules/socket/_services/socket-client.service.ts +260 -260
- package/src/_modules/socket/_services/socket-server.service.spec.ts +11 -11
- package/src/_modules/socket/app-extended.integration.spec.ts +85 -85
- package/src/_modules/socket/app-extended.server.ts +630 -630
- package/src/_modules/socket/index.ts +42 -42
- package/src/_modules/test/get-test-routing-module.util.spec.ts +28 -28
- package/src/_modules/test/get-test-routing-module.util.ts +23 -23
- package/src/_modules/test/index.ts +11 -11
- package/src/_modules/test/test.controller.spec.ts +72 -72
- package/src/_modules/test/test.controller.ts +115 -115
- package/src/_modules/usage/get-usage-routing-module.util.ts +22 -22
- package/src/_modules/usage/index.ts +15 -15
- package/src/_modules/usage/usage.controller.spec.ts +81 -81
- package/src/_modules/usage/usage.controller.ts +126 -126
- package/src/_modules/usage/usage.data-service.spec.ts +332 -332
- package/src/_modules/usage/usage.data-service.ts +185 -185
- package/src/_services/base/api.service-base.spec.ts +125 -125
- package/src/_services/base/api.service-base.ts +74 -74
- package/src/_services/base/archive-data.service.spec.ts +196 -196
- package/src/_services/base/archive-data.service.ts +216 -216
- package/src/_services/base/data.service.spec.ts +493 -493
- package/src/_services/base/data.service.ts +2525 -2525
- package/src/_services/base/db.service.spec.ts +73 -73
- package/src/_services/base/db.service.ts +1575 -1575
- package/src/_services/base/singleton.service-base.spec.ts +28 -28
- package/src/_services/base/singleton.service-base.ts +24 -24
- package/src/_services/base/singleton.service.spec.ts +114 -114
- package/src/_services/base/singleton.service.ts +38 -38
- package/src/_services/core/api.service.spec.ts +140 -140
- package/src/_services/core/auth.service.spec.ts +159 -159
- package/src/_services/core/auth.service.ts +174 -174
- package/src/_services/core/email.service.spec.ts +85 -85
- package/src/_services/core/email.service.ts +742 -742
- package/src/_services/core/global.service.spec.ts +275 -275
- package/src/_services/core/global.service.ts +461 -461
- package/src/_services/core/service-collection.service.spec.ts +46 -46
- package/src/_services/core/service-collection.service.ts +6 -6
- package/src/_services/route/controller.service.spec.ts +53 -53
- package/src/_services/route/controller.service.ts +148 -148
- package/src/_services/route/routing-module.service.spec.ts +98 -98
- package/src/_services/route/routing-module.service.ts +330 -330
- package/src/_services/shared.static-service.spec.ts +99 -99
- package/src/_services/shared.static-service.ts +78 -78
- package/src/index.ts +94 -94
- package/tsconfig.app.json +12 -12
- package/tsconfig.json +42 -42
- package/build/_modules/logs/get-logs-routing-module.util.d.ts +0 -19
- package/build/_modules/logs/get-logs-routing-module.util.d.ts.map +0 -1
- package/build/_modules/logs/get-logs-routing-module.util.js +0 -32
- package/build/_modules/logs/get-logs-routing-module.util.js.map +0 -1
- package/build/_modules/logs/index.d.ts +0 -4
- package/build/_modules/logs/index.d.ts.map +0 -1
- package/build/_modules/logs/index.js +0 -10
- package/build/_modules/logs/index.js.map +0 -1
- package/build/_modules/logs/log-buffer.service.d.ts +0 -38
- package/build/_modules/logs/log-buffer.service.d.ts.map +0 -1
- package/build/_modules/logs/log-buffer.service.js +0 -97
- package/build/_modules/logs/log-buffer.service.js.map +0 -1
- package/build/_modules/logs/logs.controller.d.ts +0 -27
- package/build/_modules/logs/logs.controller.d.ts.map +0 -1
- package/build/_modules/logs/logs.controller.js +0 -90
- package/build/_modules/logs/logs.controller.js.map +0 -1
- package/build/_modules/logs/logs.service.d.ts +0 -40
- package/build/_modules/logs/logs.service.d.ts.map +0 -1
- package/build/_modules/logs/logs.service.js +0 -97
- package/build/_modules/logs/logs.service.js.map +0 -1
- package/src/_modules/logs/get-logs-routing-module.util.ts +0 -36
- package/src/_modules/logs/index.ts +0 -3
- package/src/_modules/logs/log-buffer.service.ts +0 -101
- package/src/_modules/logs/logs.controller.ts +0 -109
- package/src/_modules/logs/logs.service.ts +0 -100
|
@@ -1,111 +1,111 @@
|
|
|
1
|
-
|
|
2
|
-
import { DyNTS_Bot_Routines_ControlService } from './bot-routines.control-service';
|
|
3
|
-
import { DyNTS_Bot_Main_ControlService } from './bot-main.control-service';
|
|
4
|
-
import { DyNTS_Bot_MessagingProvider_ServiceBase } from './bot-messaging-provider.service-base';
|
|
5
|
-
import { DyFM_Error } from '@futdevpro/fsm-dynamo';
|
|
6
|
-
import { DyNTS_global_settings } from '../../../_collections/global-settings.const';
|
|
7
|
-
|
|
8
|
-
class TestBotRoutinesService extends DyNTS_Bot_Routines_ControlService {
|
|
9
|
-
protected declare mainBot_CS: any;
|
|
10
|
-
protected getMainBotControlService(): DyNTS_Bot_Main_ControlService {
|
|
11
|
-
return {
|
|
12
|
-
defaultProvider: {
|
|
13
|
-
botId: 'bot-123',
|
|
14
|
-
},
|
|
15
|
-
} as any;
|
|
16
|
-
}
|
|
17
|
-
|
|
18
|
-
startRoutines = async (issuer: string): Promise<void> => {
|
|
19
|
-
// Mock implementation
|
|
20
|
-
};
|
|
21
|
-
|
|
22
|
-
static getInstance(): TestBotRoutinesService {
|
|
23
|
-
return TestBotRoutinesService.getSingletonInstance();
|
|
24
|
-
}
|
|
25
|
-
}
|
|
26
|
-
|
|
27
|
-
xdescribe('| DyNTS_Bot_Routines_ControlService', () => {
|
|
28
|
-
let service: TestBotRoutinesService;
|
|
29
|
-
|
|
30
|
-
beforeEach(() => {
|
|
31
|
-
service = TestBotRoutinesService.getInstance();
|
|
32
|
-
});
|
|
33
|
-
|
|
34
|
-
it('| should be a singleton instance', () => {
|
|
35
|
-
const instance1 = TestBotRoutinesService.getInstance();
|
|
36
|
-
const instance2 = TestBotRoutinesService.getInstance();
|
|
37
|
-
|
|
38
|
-
expect(instance1).toBe(instance2);
|
|
39
|
-
expect(instance1).toBeInstanceOf(TestBotRoutinesService);
|
|
40
|
-
});
|
|
41
|
-
|
|
42
|
-
describe('| defaultProvider', () => {
|
|
43
|
-
it('| should return default provider from main bot service', () => {
|
|
44
|
-
(service as any).mainBot_CS = (service as any).getMainBotControlService();
|
|
45
|
-
|
|
46
|
-
expect(service.defaultProvider).toBeDefined();
|
|
47
|
-
});
|
|
48
|
-
});
|
|
49
|
-
|
|
50
|
-
describe('| routinesStarted', () => {
|
|
51
|
-
it('| should return undefined initially', () => {
|
|
52
|
-
// Reset the private _routinesStarted field to undefined for clean test
|
|
53
|
-
(service as any)._routinesStarted = undefined;
|
|
54
|
-
expect(service.routinesStarted).toBeFalsy();
|
|
55
|
-
});
|
|
56
|
-
|
|
57
|
-
it('| should return true after start', async () => {
|
|
58
|
-
(service as any).mainBot_CS = (service as any).getMainBotControlService();
|
|
59
|
-
await service.start('issuer-123');
|
|
60
|
-
|
|
61
|
-
expect(service.routinesStarted).toBe(true);
|
|
62
|
-
});
|
|
63
|
-
});
|
|
64
|
-
|
|
65
|
-
describe('| setup', () => {
|
|
66
|
-
it('| should setup main bot service', async () => {
|
|
67
|
-
await service.setup('issuer-123');
|
|
68
|
-
|
|
69
|
-
expect((service as any).mainBot_CS).toBeDefined();
|
|
70
|
-
});
|
|
71
|
-
|
|
72
|
-
it('| should throw error when main bot service not found', async () => {
|
|
73
|
-
const serviceWithoutMainBot = new (class extends TestBotRoutinesService {
|
|
74
|
-
protected override getMainBotControlService(): any {
|
|
75
|
-
return null;
|
|
76
|
-
}
|
|
77
|
-
} as any)();
|
|
78
|
-
|
|
79
|
-
await expectAsync(
|
|
80
|
-
serviceWithoutMainBot.setup('issuer-123')
|
|
81
|
-
).toBeRejected();
|
|
82
|
-
});
|
|
83
|
-
});
|
|
84
|
-
|
|
85
|
-
describe('| start', () => {
|
|
86
|
-
it('| should throw error when default provider not started', async () => {
|
|
87
|
-
const serviceWithoutProvider = new (class extends TestBotRoutinesService {
|
|
88
|
-
protected override getMainBotControlService(): any {
|
|
89
|
-
return {
|
|
90
|
-
defaultProvider: null,
|
|
91
|
-
};
|
|
92
|
-
}
|
|
93
|
-
} as any)();
|
|
94
|
-
|
|
95
|
-
await expectAsync(
|
|
96
|
-
serviceWithoutProvider.start('issuer-123')
|
|
97
|
-
).toBeRejected();
|
|
98
|
-
});
|
|
99
|
-
|
|
100
|
-
it('| should start routines and set routinesStarted flag', async () => {
|
|
101
|
-
(service as any).mainBot_CS = (service as any).getMainBotControlService();
|
|
102
|
-
spyOn(service, 'startRoutines').and.returnValue(Promise.resolve());
|
|
103
|
-
|
|
104
|
-
await service.start('issuer-123');
|
|
105
|
-
|
|
106
|
-
expect(service.startRoutines).toHaveBeenCalledWith('issuer-123');
|
|
107
|
-
expect(service.routinesStarted).toBe(true);
|
|
108
|
-
});
|
|
109
|
-
});
|
|
110
|
-
});
|
|
111
|
-
|
|
1
|
+
|
|
2
|
+
import { DyNTS_Bot_Routines_ControlService } from './bot-routines.control-service';
|
|
3
|
+
import { DyNTS_Bot_Main_ControlService } from './bot-main.control-service';
|
|
4
|
+
import { DyNTS_Bot_MessagingProvider_ServiceBase } from './bot-messaging-provider.service-base';
|
|
5
|
+
import { DyFM_Error } from '@futdevpro/fsm-dynamo';
|
|
6
|
+
import { DyNTS_global_settings } from '../../../_collections/global-settings.const';
|
|
7
|
+
|
|
8
|
+
class TestBotRoutinesService extends DyNTS_Bot_Routines_ControlService {
|
|
9
|
+
protected declare mainBot_CS: any;
|
|
10
|
+
protected getMainBotControlService(): DyNTS_Bot_Main_ControlService {
|
|
11
|
+
return {
|
|
12
|
+
defaultProvider: {
|
|
13
|
+
botId: 'bot-123',
|
|
14
|
+
},
|
|
15
|
+
} as any;
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
startRoutines = async (issuer: string): Promise<void> => {
|
|
19
|
+
// Mock implementation
|
|
20
|
+
};
|
|
21
|
+
|
|
22
|
+
static getInstance(): TestBotRoutinesService {
|
|
23
|
+
return TestBotRoutinesService.getSingletonInstance();
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
xdescribe('| DyNTS_Bot_Routines_ControlService', () => {
|
|
28
|
+
let service: TestBotRoutinesService;
|
|
29
|
+
|
|
30
|
+
beforeEach(() => {
|
|
31
|
+
service = TestBotRoutinesService.getInstance();
|
|
32
|
+
});
|
|
33
|
+
|
|
34
|
+
it('| should be a singleton instance', () => {
|
|
35
|
+
const instance1 = TestBotRoutinesService.getInstance();
|
|
36
|
+
const instance2 = TestBotRoutinesService.getInstance();
|
|
37
|
+
|
|
38
|
+
expect(instance1).toBe(instance2);
|
|
39
|
+
expect(instance1).toBeInstanceOf(TestBotRoutinesService);
|
|
40
|
+
});
|
|
41
|
+
|
|
42
|
+
describe('| defaultProvider', () => {
|
|
43
|
+
it('| should return default provider from main bot service', () => {
|
|
44
|
+
(service as any).mainBot_CS = (service as any).getMainBotControlService();
|
|
45
|
+
|
|
46
|
+
expect(service.defaultProvider).toBeDefined();
|
|
47
|
+
});
|
|
48
|
+
});
|
|
49
|
+
|
|
50
|
+
describe('| routinesStarted', () => {
|
|
51
|
+
it('| should return undefined initially', () => {
|
|
52
|
+
// Reset the private _routinesStarted field to undefined for clean test
|
|
53
|
+
(service as any)._routinesStarted = undefined;
|
|
54
|
+
expect(service.routinesStarted).toBeFalsy();
|
|
55
|
+
});
|
|
56
|
+
|
|
57
|
+
it('| should return true after start', async () => {
|
|
58
|
+
(service as any).mainBot_CS = (service as any).getMainBotControlService();
|
|
59
|
+
await service.start('issuer-123');
|
|
60
|
+
|
|
61
|
+
expect(service.routinesStarted).toBe(true);
|
|
62
|
+
});
|
|
63
|
+
});
|
|
64
|
+
|
|
65
|
+
describe('| setup', () => {
|
|
66
|
+
it('| should setup main bot service', async () => {
|
|
67
|
+
await service.setup('issuer-123');
|
|
68
|
+
|
|
69
|
+
expect((service as any).mainBot_CS).toBeDefined();
|
|
70
|
+
});
|
|
71
|
+
|
|
72
|
+
it('| should throw error when main bot service not found', async () => {
|
|
73
|
+
const serviceWithoutMainBot = new (class extends TestBotRoutinesService {
|
|
74
|
+
protected override getMainBotControlService(): any {
|
|
75
|
+
return null;
|
|
76
|
+
}
|
|
77
|
+
} as any)();
|
|
78
|
+
|
|
79
|
+
await expectAsync(
|
|
80
|
+
serviceWithoutMainBot.setup('issuer-123')
|
|
81
|
+
).toBeRejected();
|
|
82
|
+
});
|
|
83
|
+
});
|
|
84
|
+
|
|
85
|
+
describe('| start', () => {
|
|
86
|
+
it('| should throw error when default provider not started', async () => {
|
|
87
|
+
const serviceWithoutProvider = new (class extends TestBotRoutinesService {
|
|
88
|
+
protected override getMainBotControlService(): any {
|
|
89
|
+
return {
|
|
90
|
+
defaultProvider: null,
|
|
91
|
+
};
|
|
92
|
+
}
|
|
93
|
+
} as any)();
|
|
94
|
+
|
|
95
|
+
await expectAsync(
|
|
96
|
+
serviceWithoutProvider.start('issuer-123')
|
|
97
|
+
).toBeRejected();
|
|
98
|
+
});
|
|
99
|
+
|
|
100
|
+
it('| should start routines and set routinesStarted flag', async () => {
|
|
101
|
+
(service as any).mainBot_CS = (service as any).getMainBotControlService();
|
|
102
|
+
spyOn(service, 'startRoutines').and.returnValue(Promise.resolve());
|
|
103
|
+
|
|
104
|
+
await service.start('issuer-123');
|
|
105
|
+
|
|
106
|
+
expect(service.startRoutines).toHaveBeenCalledWith('issuer-123');
|
|
107
|
+
expect(service.routinesStarted).toBe(true);
|
|
108
|
+
});
|
|
109
|
+
});
|
|
110
|
+
});
|
|
111
|
+
|
|
@@ -1,49 +1,49 @@
|
|
|
1
|
-
|
|
2
|
-
import { DyNTS_CustomData_Controller } from './custom-data.controller';
|
|
3
|
-
import { DyFM_HttpCallType } from '@futdevpro/fsm-dynamo';
|
|
4
|
-
|
|
5
|
-
describe('| DyNTS_CustomData_Controller', () => {
|
|
6
|
-
let controller: DyNTS_CustomData_Controller;
|
|
7
|
-
|
|
8
|
-
beforeEach(() => {
|
|
9
|
-
controller = DyNTS_CustomData_Controller.getInstance();
|
|
10
|
-
});
|
|
11
|
-
|
|
12
|
-
it('| should be a singleton instance', () => {
|
|
13
|
-
const instance1 = DyNTS_CustomData_Controller.getInstance();
|
|
14
|
-
const instance2 = DyNTS_CustomData_Controller.getInstance();
|
|
15
|
-
|
|
16
|
-
expect(instance1).toBe(instance2);
|
|
17
|
-
expect(instance1).toBeInstanceOf(DyNTS_CustomData_Controller);
|
|
18
|
-
});
|
|
19
|
-
|
|
20
|
-
it('| should setup endpoints', () => {
|
|
21
|
-
controller.setupEndpoints();
|
|
22
|
-
|
|
23
|
-
expect(controller.endpoints).toBeDefined();
|
|
24
|
-
expect(controller.endpoints.length).toBeGreaterThan(0);
|
|
25
|
-
});
|
|
26
|
-
|
|
27
|
-
it('| should have getCustomData endpoint', () => {
|
|
28
|
-
controller.setupEndpoints();
|
|
29
|
-
|
|
30
|
-
const getCustomDataEndpoint = controller.endpoints.find(ep => ep.name === 'getCustomData');
|
|
31
|
-
|
|
32
|
-
expect(getCustomDataEndpoint).toBeDefined();
|
|
33
|
-
expect(getCustomDataEndpoint?.type).toBe(DyFM_HttpCallType.get);
|
|
34
|
-
expect((getCustomDataEndpoint as any)?.tasks).toBeDefined();
|
|
35
|
-
expect((getCustomDataEndpoint as any)?.tasks.length).toBeGreaterThan(0);
|
|
36
|
-
});
|
|
37
|
-
|
|
38
|
-
it('| should have modifyCustomData endpoint', () => {
|
|
39
|
-
controller.setupEndpoints();
|
|
40
|
-
|
|
41
|
-
const modifyCustomDataEndpoint = controller.endpoints.find(ep => ep.name === 'modifyCustomData');
|
|
42
|
-
|
|
43
|
-
expect(modifyCustomDataEndpoint).toBeDefined();
|
|
44
|
-
expect(modifyCustomDataEndpoint?.type).toBe(DyFM_HttpCallType.post);
|
|
45
|
-
expect((modifyCustomDataEndpoint as any)?.tasks).toBeDefined();
|
|
46
|
-
expect((modifyCustomDataEndpoint as any)?.tasks.length).toBeGreaterThan(0);
|
|
47
|
-
});
|
|
48
|
-
});
|
|
49
|
-
|
|
1
|
+
|
|
2
|
+
import { DyNTS_CustomData_Controller } from './custom-data.controller';
|
|
3
|
+
import { DyFM_HttpCallType } from '@futdevpro/fsm-dynamo';
|
|
4
|
+
|
|
5
|
+
describe('| DyNTS_CustomData_Controller', () => {
|
|
6
|
+
let controller: DyNTS_CustomData_Controller;
|
|
7
|
+
|
|
8
|
+
beforeEach(() => {
|
|
9
|
+
controller = DyNTS_CustomData_Controller.getInstance();
|
|
10
|
+
});
|
|
11
|
+
|
|
12
|
+
it('| should be a singleton instance', () => {
|
|
13
|
+
const instance1 = DyNTS_CustomData_Controller.getInstance();
|
|
14
|
+
const instance2 = DyNTS_CustomData_Controller.getInstance();
|
|
15
|
+
|
|
16
|
+
expect(instance1).toBe(instance2);
|
|
17
|
+
expect(instance1).toBeInstanceOf(DyNTS_CustomData_Controller);
|
|
18
|
+
});
|
|
19
|
+
|
|
20
|
+
it('| should setup endpoints', () => {
|
|
21
|
+
controller.setupEndpoints();
|
|
22
|
+
|
|
23
|
+
expect(controller.endpoints).toBeDefined();
|
|
24
|
+
expect(controller.endpoints.length).toBeGreaterThan(0);
|
|
25
|
+
});
|
|
26
|
+
|
|
27
|
+
it('| should have getCustomData endpoint', () => {
|
|
28
|
+
controller.setupEndpoints();
|
|
29
|
+
|
|
30
|
+
const getCustomDataEndpoint = controller.endpoints.find(ep => ep.name === 'getCustomData');
|
|
31
|
+
|
|
32
|
+
expect(getCustomDataEndpoint).toBeDefined();
|
|
33
|
+
expect(getCustomDataEndpoint?.type).toBe(DyFM_HttpCallType.get);
|
|
34
|
+
expect((getCustomDataEndpoint as any)?.tasks).toBeDefined();
|
|
35
|
+
expect((getCustomDataEndpoint as any)?.tasks.length).toBeGreaterThan(0);
|
|
36
|
+
});
|
|
37
|
+
|
|
38
|
+
it('| should have modifyCustomData endpoint', () => {
|
|
39
|
+
controller.setupEndpoints();
|
|
40
|
+
|
|
41
|
+
const modifyCustomDataEndpoint = controller.endpoints.find(ep => ep.name === 'modifyCustomData');
|
|
42
|
+
|
|
43
|
+
expect(modifyCustomDataEndpoint).toBeDefined();
|
|
44
|
+
expect(modifyCustomDataEndpoint?.type).toBe(DyFM_HttpCallType.post);
|
|
45
|
+
expect((modifyCustomDataEndpoint as any)?.tasks).toBeDefined();
|
|
46
|
+
expect((modifyCustomDataEndpoint as any)?.tasks.length).toBeGreaterThan(0);
|
|
47
|
+
});
|
|
48
|
+
});
|
|
49
|
+
|
|
@@ -1,67 +1,67 @@
|
|
|
1
|
-
|
|
2
|
-
import { Request, Response } from 'express';
|
|
3
|
-
|
|
4
|
-
import { DyFM_HttpCallType } from '@futdevpro/fsm-dynamo';
|
|
5
|
-
import { DyFM_customDataModule_settings } from '@futdevpro/fsm-dynamo/custom-data';
|
|
6
|
-
|
|
7
|
-
import {
|
|
8
|
-
DyNTS_Endpoint_Params
|
|
9
|
-
} from '../../_models/control-models/endpoint-params.control-model';
|
|
10
|
-
import { DyNTS_Controller } from '../../_services/route/controller.service';
|
|
11
|
-
import { DyNTS_CustomData_DataService } from './custom-data.data-service';
|
|
12
|
-
|
|
13
|
-
export class DyNTS_CustomData_Controller extends DyNTS_Controller {
|
|
14
|
-
|
|
15
|
-
static getInstance(): DyNTS_CustomData_Controller {
|
|
16
|
-
return DyNTS_CustomData_Controller.getSingletonInstance();
|
|
17
|
-
}
|
|
18
|
-
|
|
19
|
-
setupEndpoints(): void {
|
|
20
|
-
this.endpoints = [
|
|
21
|
-
// CUSTOM DATA
|
|
22
|
-
new DyNTS_Endpoint_Params({
|
|
23
|
-
name: 'getCustomData',
|
|
24
|
-
type: DyFM_HttpCallType.get,
|
|
25
|
-
endpoint: DyFM_customDataModule_settings.endPoints.getCustomData,
|
|
26
|
-
tasks: [
|
|
27
|
-
async (req: Request, res: Response): Promise<void> => {
|
|
28
|
-
const customDataService = new DyNTS_CustomData_DataService({
|
|
29
|
-
_id: req.params.customId,
|
|
30
|
-
});
|
|
31
|
-
|
|
32
|
-
await customDataService.getDataById();
|
|
33
|
-
|
|
34
|
-
res.send({
|
|
35
|
-
url: req.url,
|
|
36
|
-
result: 'get custom call was successful!',
|
|
37
|
-
response: customDataService.data,
|
|
38
|
-
request: `.../custom/get/${req.params.customId}`,
|
|
39
|
-
});
|
|
40
|
-
},
|
|
41
|
-
],
|
|
42
|
-
}),
|
|
43
|
-
|
|
44
|
-
new DyNTS_Endpoint_Params({
|
|
45
|
-
name: 'modifyCustomData',
|
|
46
|
-
type: DyFM_HttpCallType.post,
|
|
47
|
-
endpoint: DyFM_customDataModule_settings.endPoints.modifyCustomData,
|
|
48
|
-
tasks: [
|
|
49
|
-
async (req: Request, res: Response, issuer: string): Promise<void> => {
|
|
50
|
-
const customDataService = new DyNTS_CustomData_DataService(req.body, issuer);
|
|
51
|
-
|
|
52
|
-
res.send({
|
|
53
|
-
url: req.url,
|
|
54
|
-
result: 'post custom call was successful!',
|
|
55
|
-
response: await customDataService.saveData(req.body),
|
|
56
|
-
warning:
|
|
57
|
-
'keep in mind that this is a playground DB, ' +
|
|
58
|
-
'and it will be cleared out from time to time',
|
|
59
|
-
request: req.body,
|
|
60
|
-
});
|
|
61
|
-
},
|
|
62
|
-
],
|
|
63
|
-
}),
|
|
64
|
-
];
|
|
65
|
-
}
|
|
66
|
-
}
|
|
67
|
-
|
|
1
|
+
|
|
2
|
+
import { Request, Response } from 'express';
|
|
3
|
+
|
|
4
|
+
import { DyFM_HttpCallType } from '@futdevpro/fsm-dynamo';
|
|
5
|
+
import { DyFM_customDataModule_settings } from '@futdevpro/fsm-dynamo/custom-data';
|
|
6
|
+
|
|
7
|
+
import {
|
|
8
|
+
DyNTS_Endpoint_Params
|
|
9
|
+
} from '../../_models/control-models/endpoint-params.control-model';
|
|
10
|
+
import { DyNTS_Controller } from '../../_services/route/controller.service';
|
|
11
|
+
import { DyNTS_CustomData_DataService } from './custom-data.data-service';
|
|
12
|
+
|
|
13
|
+
export class DyNTS_CustomData_Controller extends DyNTS_Controller {
|
|
14
|
+
|
|
15
|
+
static getInstance(): DyNTS_CustomData_Controller {
|
|
16
|
+
return DyNTS_CustomData_Controller.getSingletonInstance();
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
setupEndpoints(): void {
|
|
20
|
+
this.endpoints = [
|
|
21
|
+
// CUSTOM DATA
|
|
22
|
+
new DyNTS_Endpoint_Params({
|
|
23
|
+
name: 'getCustomData',
|
|
24
|
+
type: DyFM_HttpCallType.get,
|
|
25
|
+
endpoint: DyFM_customDataModule_settings.endPoints.getCustomData,
|
|
26
|
+
tasks: [
|
|
27
|
+
async (req: Request, res: Response): Promise<void> => {
|
|
28
|
+
const customDataService = new DyNTS_CustomData_DataService({
|
|
29
|
+
_id: req.params.customId,
|
|
30
|
+
});
|
|
31
|
+
|
|
32
|
+
await customDataService.getDataById();
|
|
33
|
+
|
|
34
|
+
res.send({
|
|
35
|
+
url: req.url,
|
|
36
|
+
result: 'get custom call was successful!',
|
|
37
|
+
response: customDataService.data,
|
|
38
|
+
request: `.../custom/get/${req.params.customId}`,
|
|
39
|
+
});
|
|
40
|
+
},
|
|
41
|
+
],
|
|
42
|
+
}),
|
|
43
|
+
|
|
44
|
+
new DyNTS_Endpoint_Params({
|
|
45
|
+
name: 'modifyCustomData',
|
|
46
|
+
type: DyFM_HttpCallType.post,
|
|
47
|
+
endpoint: DyFM_customDataModule_settings.endPoints.modifyCustomData,
|
|
48
|
+
tasks: [
|
|
49
|
+
async (req: Request, res: Response, issuer: string): Promise<void> => {
|
|
50
|
+
const customDataService = new DyNTS_CustomData_DataService(req.body, issuer);
|
|
51
|
+
|
|
52
|
+
res.send({
|
|
53
|
+
url: req.url,
|
|
54
|
+
result: 'post custom call was successful!',
|
|
55
|
+
response: await customDataService.saveData(req.body),
|
|
56
|
+
warning:
|
|
57
|
+
'keep in mind that this is a playground DB, ' +
|
|
58
|
+
'and it will be cleared out from time to time',
|
|
59
|
+
request: req.body,
|
|
60
|
+
});
|
|
61
|
+
},
|
|
62
|
+
],
|
|
63
|
+
}),
|
|
64
|
+
];
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
|
|
@@ -1,54 +1,54 @@
|
|
|
1
|
-
|
|
2
|
-
import { DyNTS_CustomData_DataService } from './custom-data.data-service';
|
|
3
|
-
import { DyFM_CustomData } from '@futdevpro/fsm-dynamo/custom-data';
|
|
4
|
-
import { DyNTS_global_settings } from '../../_collections/global-settings.const';
|
|
5
|
-
import { DyFM_EnvironmentFlag } from '@futdevpro/fsm-dynamo';
|
|
6
|
-
import { DyNTS_GlobalService } from '../../_services/core/global.service';
|
|
7
|
-
|
|
8
|
-
describe('| DyNTS_CustomData_DataService', () => {
|
|
9
|
-
let mockDBService: jasmine.SpyObj<{ find: () => Promise<unknown[]>; findOne: () => Promise<unknown> }>;
|
|
10
|
-
|
|
11
|
-
beforeAll(() => {
|
|
12
|
-
if (!DyNTS_global_settings.systemShortCodeName) {
|
|
13
|
-
(DyNTS_global_settings as { systemShortCodeName?: string }).systemShortCodeName = 'TEST';
|
|
14
|
-
}
|
|
15
|
-
if (!DyNTS_global_settings.env_settings) {
|
|
16
|
-
(DyNTS_global_settings as { env_settings?: unknown }).env_settings = {
|
|
17
|
-
environment: DyFM_EnvironmentFlag.local,
|
|
18
|
-
};
|
|
19
|
-
}
|
|
20
|
-
});
|
|
21
|
-
|
|
22
|
-
beforeEach(() => {
|
|
23
|
-
mockDBService = jasmine.createSpyObj('DyNTS_DBService', ['find', 'findOne', 'getDataById', 'getAll', 'createData', 'modifyData']);
|
|
24
|
-
mockDBService.find.and.returnValue(Promise.resolve([]));
|
|
25
|
-
mockDBService.findOne.and.returnValue(Promise.resolve(null));
|
|
26
|
-
spyOn(DyNTS_GlobalService, 'getDBService').and.returnValue(mockDBService as never);
|
|
27
|
-
});
|
|
28
|
-
|
|
29
|
-
it('| should create service with custom data', () => {
|
|
30
|
-
const customData = new DyFM_CustomData({
|
|
31
|
-
_id: 'test-data-id',
|
|
32
|
-
} as any);
|
|
33
|
-
|
|
34
|
-
const service = new DyNTS_CustomData_DataService(customData, 'issuer-123');
|
|
35
|
-
|
|
36
|
-
expect(service).toBeInstanceOf(DyNTS_CustomData_DataService);
|
|
37
|
-
expect(service.data).toBeDefined();
|
|
38
|
-
expect(service.data._id).toBe('test-data-id');
|
|
39
|
-
});
|
|
40
|
-
|
|
41
|
-
it('| should create service without custom data', () => {
|
|
42
|
-
const service = new DyNTS_CustomData_DataService();
|
|
43
|
-
|
|
44
|
-
expect(service).toBeInstanceOf(DyNTS_CustomData_DataService);
|
|
45
|
-
expect(service.data).toBeDefined();
|
|
46
|
-
});
|
|
47
|
-
|
|
48
|
-
it('| should create service with issuer', () => {
|
|
49
|
-
const service = new DyNTS_CustomData_DataService(undefined, 'issuer-123');
|
|
50
|
-
|
|
51
|
-
expect(service).toBeInstanceOf(DyNTS_CustomData_DataService);
|
|
52
|
-
});
|
|
53
|
-
});
|
|
54
|
-
|
|
1
|
+
|
|
2
|
+
import { DyNTS_CustomData_DataService } from './custom-data.data-service';
|
|
3
|
+
import { DyFM_CustomData } from '@futdevpro/fsm-dynamo/custom-data';
|
|
4
|
+
import { DyNTS_global_settings } from '../../_collections/global-settings.const';
|
|
5
|
+
import { DyFM_EnvironmentFlag } from '@futdevpro/fsm-dynamo';
|
|
6
|
+
import { DyNTS_GlobalService } from '../../_services/core/global.service';
|
|
7
|
+
|
|
8
|
+
describe('| DyNTS_CustomData_DataService', () => {
|
|
9
|
+
let mockDBService: jasmine.SpyObj<{ find: () => Promise<unknown[]>; findOne: () => Promise<unknown> }>;
|
|
10
|
+
|
|
11
|
+
beforeAll(() => {
|
|
12
|
+
if (!DyNTS_global_settings.systemShortCodeName) {
|
|
13
|
+
(DyNTS_global_settings as { systemShortCodeName?: string }).systemShortCodeName = 'TEST';
|
|
14
|
+
}
|
|
15
|
+
if (!DyNTS_global_settings.env_settings) {
|
|
16
|
+
(DyNTS_global_settings as { env_settings?: unknown }).env_settings = {
|
|
17
|
+
environment: DyFM_EnvironmentFlag.local,
|
|
18
|
+
};
|
|
19
|
+
}
|
|
20
|
+
});
|
|
21
|
+
|
|
22
|
+
beforeEach(() => {
|
|
23
|
+
mockDBService = jasmine.createSpyObj('DyNTS_DBService', ['find', 'findOne', 'getDataById', 'getAll', 'createData', 'modifyData']);
|
|
24
|
+
mockDBService.find.and.returnValue(Promise.resolve([]));
|
|
25
|
+
mockDBService.findOne.and.returnValue(Promise.resolve(null));
|
|
26
|
+
spyOn(DyNTS_GlobalService, 'getDBService').and.returnValue(mockDBService as never);
|
|
27
|
+
});
|
|
28
|
+
|
|
29
|
+
it('| should create service with custom data', () => {
|
|
30
|
+
const customData = new DyFM_CustomData({
|
|
31
|
+
_id: 'test-data-id',
|
|
32
|
+
} as any);
|
|
33
|
+
|
|
34
|
+
const service = new DyNTS_CustomData_DataService(customData, 'issuer-123');
|
|
35
|
+
|
|
36
|
+
expect(service).toBeInstanceOf(DyNTS_CustomData_DataService);
|
|
37
|
+
expect(service.data).toBeDefined();
|
|
38
|
+
expect(service.data._id).toBe('test-data-id');
|
|
39
|
+
});
|
|
40
|
+
|
|
41
|
+
it('| should create service without custom data', () => {
|
|
42
|
+
const service = new DyNTS_CustomData_DataService();
|
|
43
|
+
|
|
44
|
+
expect(service).toBeInstanceOf(DyNTS_CustomData_DataService);
|
|
45
|
+
expect(service.data).toBeDefined();
|
|
46
|
+
});
|
|
47
|
+
|
|
48
|
+
it('| should create service with issuer', () => {
|
|
49
|
+
const service = new DyNTS_CustomData_DataService(undefined, 'issuer-123');
|
|
50
|
+
|
|
51
|
+
expect(service).toBeInstanceOf(DyNTS_CustomData_DataService);
|
|
52
|
+
});
|
|
53
|
+
});
|
|
54
|
+
|
|
@@ -1,22 +1,22 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
import {
|
|
5
|
-
DyFM_CustomData,
|
|
6
|
-
DyFM_customData_dataParams
|
|
7
|
-
} from '@futdevpro/fsm-dynamo/custom-data';
|
|
8
|
-
import { DyNTS_DataService } from '../../_services/base/data.service';
|
|
9
|
-
|
|
10
|
-
export class DyNTS_CustomData_DataService extends DyNTS_DataService<DyFM_CustomData> {
|
|
11
|
-
|
|
12
|
-
constructor(
|
|
13
|
-
customData?: DyFM_CustomData,
|
|
14
|
-
issuer?: string
|
|
15
|
-
) {
|
|
16
|
-
super(
|
|
17
|
-
new DyFM_CustomData(customData),
|
|
18
|
-
DyFM_customData_dataParams,
|
|
19
|
-
issuer
|
|
20
|
-
);
|
|
21
|
-
}
|
|
1
|
+
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
import {
|
|
5
|
+
DyFM_CustomData,
|
|
6
|
+
DyFM_customData_dataParams
|
|
7
|
+
} from '@futdevpro/fsm-dynamo/custom-data';
|
|
8
|
+
import { DyNTS_DataService } from '../../_services/base/data.service';
|
|
9
|
+
|
|
10
|
+
export class DyNTS_CustomData_DataService extends DyNTS_DataService<DyFM_CustomData> {
|
|
11
|
+
|
|
12
|
+
constructor(
|
|
13
|
+
customData?: DyFM_CustomData,
|
|
14
|
+
issuer?: string
|
|
15
|
+
) {
|
|
16
|
+
super(
|
|
17
|
+
new DyFM_CustomData(customData),
|
|
18
|
+
DyFM_customData_dataParams,
|
|
19
|
+
issuer
|
|
20
|
+
);
|
|
21
|
+
}
|
|
22
22
|
}
|