@futdevpro/fsm-dynamo 1.16.4 → 1.16.7
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/.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/pipeline.cicd.config.json +18 -0
- package/.github/workflows/main.yml +433 -427
- package/.vscode/settings.json +11 -11
- package/LICENSE +21 -21
- package/build/_collections/utils/log.util.d.ts +8 -8
- package/build/_collections/utils/log.util.d.ts.map +1 -1
- package/build/_collections/utils/log.util.js +10 -18
- package/build/_collections/utils/log.util.js.map +1 -1
- package/build/_enums/error-status.enum.d.ts +28 -0
- package/build/_enums/error-status.enum.d.ts.map +1 -0
- package/build/_enums/error-status.enum.js +32 -0
- package/build/_enums/error-status.enum.js.map +1 -0
- package/build/_models/data-models/errors.data-model.d.ts +13 -0
- package/build/_models/data-models/errors.data-model.d.ts.map +1 -1
- package/build/_models/data-models/errors.data-model.js +13 -0
- package/build/_models/data-models/errors.data-model.js.map +1 -1
- package/build/_modules/socket/_models/sck-socket-event.control-model.js +1 -1
- package/build/index.d.ts +1 -0
- package/build/index.d.ts.map +1 -1
- package/build/index.js +1 -0
- package/build/index.js.map +1 -1
- package/eslint.config.js +4 -4
- package/nodemon.json +22 -22
- package/package.json +7 -3
- package/pnpm-workspace.yaml +2 -0
- package/scripts/crypto/CRYPTO-STABILITY-SOLUTION.md +196 -196
- package/scripts/crypto/README.md +113 -113
- package/scripts/crypto/demo-crypto-stability.js +120 -120
- package/scripts/crypto/stress-test-crypto.js +379 -379
- package/scripts/run-coverage-tests.js +24 -24
- package/spec/support/helpers/ts-node-helper.js +9 -9
- package/spec/support/jasmine.coverage.json +23 -23
- package/spec/support/jasmine.json +24 -24
- package/src/_collections/constants/data-sizes.const.ts +40 -40
- package/src/_collections/constants/error-defaults.const.ts +20 -20
- package/src/_collections/constants/global-settings.const.ts +24 -24
- package/src/_collections/constants/numbers.const.ts +40 -40
- package/src/_collections/constants/times.const.ts +45 -45
- package/src/_collections/utils/array.util.spec.ts +306 -306
- package/src/_collections/utils/array.util.ts +813 -813
- package/src/_collections/utils/async.util.spec.ts +354 -354
- package/src/_collections/utils/async.util.ts +197 -197
- package/src/_collections/utils/data.util.spec.ts +345 -345
- package/src/_collections/utils/data.util.ts +226 -226
- package/src/_collections/utils/json-error-helper.util.spec.ts +521 -521
- package/src/_collections/utils/json-error-helper.util.ts +301 -301
- package/src/_collections/utils/log.util.spec.ts +975 -975
- package/src/_collections/utils/log.util.ts +667 -665
- package/src/_collections/utils/math/box-bounds.spec.ts +73 -73
- package/src/_collections/utils/math/box-bounds.util.ts +183 -183
- package/src/_collections/utils/math/math.util.spec.ts +94 -94
- package/src/_collections/utils/math/math.util.ts +141 -141
- package/src/_collections/utils/math/random.util.spec.ts +82 -82
- package/src/_collections/utils/math/random.util.ts +139 -139
- package/src/_collections/utils/math/trigonometry.util.spec.ts +57 -57
- package/src/_collections/utils/math/trigonometry.util.ts +102 -102
- package/src/_collections/utils/math/vector2.util.spec.ts +94 -94
- package/src/_collections/utils/math/vector2.util.ts +653 -653
- package/src/_collections/utils/object.util.spec.ts +646 -646
- package/src/_collections/utils/regex/password-regex.util.spec.ts +51 -51
- package/src/_collections/utils/regex/password-regex.util.ts +65 -65
- package/src/_collections/utils/regex/regex.util.spec.ts +42 -42
- package/src/_collections/utils/regex/regex.util.ts +6 -6
- package/src/_collections/utils/regex/username-regex.util.spec.ts +61 -61
- package/src/_collections/utils/regex/username-regex.util.ts +35 -35
- package/src/_collections/utils/round-list.util.spec.ts +79 -79
- package/src/_collections/utils/round-list.util.ts +162 -162
- package/src/_collections/utils/stack.util.spec.ts +372 -372
- package/src/_collections/utils/stack.util.ts +164 -164
- package/src/_collections/utils/string-case.util.spec.ts +441 -441
- package/src/_collections/utils/string-case.util.ts +362 -362
- package/src/_collections/utils/string.util.spec.ts +975 -975
- package/src/_collections/utils/string.util.ts +449 -449
- package/src/_collections/utils/time.util.spec.ts +50 -50
- package/src/_collections/utils/time.util.ts +481 -481
- package/src/_collections/utils/type-cloning-facility.util.spec.ts +51 -51
- package/src/_collections/utils/type-cloning-facility.util.ts +168 -168
- package/src/_collections/utils/utilities.util.spec.ts +201 -201
- package/src/_collections/utils/utilities.util.ts +68 -68
- package/src/_collections/utils/uuid.util.spec.ts +30 -30
- package/src/_collections/utils/uuid.util.ts +50 -50
- package/src/_enums/basic-property-type.enum.ts +20 -20
- package/src/_enums/data-model-type.enum.ts +29 -29
- package/src/_enums/environment-flag.enum.ts +28 -28
- package/src/_enums/error-level.enum.ts +43 -43
- package/src/_enums/error-status.enum.ts +30 -0
- package/src/_enums/http/http-call-type.enum.ts +43 -43
- package/src/_enums/http/http-event-type.enum.ts +40 -40
- package/src/_enums/http/http-response-type.enum.ts +18 -18
- package/src/_enums/log-style.enum.ts +44 -44
- package/src/_enums/server-connection-status.enum.ts +6 -6
- package/src/_enums/time/day-of-week.enum.ts +55 -55
- package/src/_enums/time/month.enum.ts +25 -25
- package/src/_enums/time/relative-date.enum.ts +24 -24
- package/src/_models/control-models/data-model-params.control-model.spec.ts +85 -85
- package/src/_models/control-models/data-model-params.control-model.ts +300 -300
- package/src/_models/control-models/data-property-params.control-model.spec.ts +93 -93
- package/src/_models/control-models/data-property-params.control-model.ts +201 -201
- package/src/_models/control-models/error.control-model.spec.ts +912 -912
- package/src/_models/control-models/error.control-model.ts +1215 -1215
- package/src/_models/control-models/http/http-error-response.control-model.spec.ts +116 -116
- package/src/_models/control-models/http/http-error-response.control-model.ts +52 -52
- package/src/_models/control-models/http/http-headers.control-model.spec.ts +25 -25
- package/src/_models/control-models/http/http-headers.control-model.ts +124 -124
- package/src/_models/control-models/http/http-response.model-base.spec.ts +46 -46
- package/src/_models/control-models/http/http-response.model-base.ts +57 -57
- package/src/_models/control-models/poll.control-model.spec.ts +63 -63
- package/src/_models/control-models/poll.control-model.ts +151 -151
- package/src/_models/control-models/range-value.control-model.spec.ts +187 -187
- package/src/_models/control-models/range-value.control-model.ts +289 -289
- package/src/_models/control-models/server-status.control-model.spec.ts +66 -66
- package/src/_models/control-models/server-status.control-model.ts +85 -85
- package/src/_models/control-models/service-endpoint-settings-base.control-model.spec.ts +145 -145
- package/src/_models/control-models/service-endpoint-settings-base.control-model.ts +186 -186
- package/src/_models/data-models/errors.data-model.spec.ts +71 -71
- package/src/_models/data-models/errors.data-model.ts +175 -158
- package/src/_models/data-models/metadata.data-model.spec.ts +184 -184
- package/src/_models/data-models/metadata.data-model.ts +128 -128
- package/src/_models/interfaces/box-bounds.interface.ts +7 -7
- package/src/_models/interfaces/environment/global-log-settings.interface.ts +86 -86
- package/src/_models/interfaces/environment/global-settings.interface.ts +47 -47
- package/src/_models/interfaces/error-defaults.interface.ts +11 -11
- package/src/_models/interfaces/paged.interface.ts +12 -12
- package/src/_models/interfaces/random-weight.interface.ts +7 -7
- package/src/_models/interfaces/route-settings.interface.ts +15 -15
- package/src/_models/interfaces/search-query.interface.ts +23 -23
- package/src/_models/interfaces/search-result.interface.ts +5 -5
- package/src/_models/interfaces/server-error-statistics.interface.ts +24 -24
- package/src/_models/interfaces/vector2.interface.ts +20 -20
- package/src/_models/types/db-filter.type.ts +110 -110
- package/src/_models/types/db-sort.type.ts +4 -4
- package/src/_models/types/ds-filter.type.ts +68 -68
- package/src/_models/types/ds-sort.type.ts +21 -21
- package/src/_modules/ai/_collections/ai-model-ref.util.ts +88 -88
- package/src/_modules/ai/_collections/ai-model-registry.util.spec.ts +37 -37
- package/src/_modules/ai/_collections/ai-model-registry.util.ts +30 -30
- package/src/_modules/ai/_enums/ai-message-role.enum.ts +7 -7
- package/src/_modules/ai/_enums/ai-model-type.enum.ts +7 -7
- package/src/_modules/ai/_enums/ai-provider.enum.ts +7 -7
- package/src/_modules/ai/_models/ai-call-settings.interface.ts +84 -84
- package/src/_modules/ai/_models/ai-embedding-request.interface.ts +20 -20
- package/src/_modules/ai/_models/ai-embedding-response.interface.ts +26 -26
- package/src/_modules/ai/_models/ai-llm-request.interface.ts +24 -24
- package/src/_modules/ai/_models/ai-llm-response.interface.ts +30 -30
- package/src/_modules/ai/_models/ai-message.interface.ts +12 -12
- package/src/_modules/ai/_models/ai-model-capabilities.interface.ts +35 -35
- package/src/_modules/ai/_models/ai-model-info.interface.ts +63 -63
- package/src/_modules/ai/_models/ai-model-settings-schema.interface.ts +52 -52
- package/src/_modules/ai/_models/ai-provider-capabilities.interface.ts +28 -28
- package/src/_modules/ai/_models/ai-settings.interface.ts +17 -17
- package/src/_modules/ai/_models/ai-tool-call.interface.ts +18 -18
- package/src/_modules/ai/_models/ai-tool-handler.type.ts +11 -11
- package/src/_modules/ai/_models/ai-tool-result.interface.ts +16 -16
- package/src/_modules/ai/_models/ai-tool.interface.ts +16 -16
- package/src/_modules/ai/_models/ai-user-provider-config.control-model.ts +29 -29
- package/src/_modules/ai/_modules/anthropic/_collections/aai-models.const.ts +81 -81
- package/src/_modules/ai/_modules/anthropic/_enums/aai-model.enum.ts +19 -19
- package/src/_modules/ai/_modules/anthropic/_models/aai-call-settings.control-model.spec.ts +28 -28
- package/src/_modules/ai/_modules/anthropic/_models/aai-call-settings.control-model.ts +23 -23
- package/src/_modules/ai/_modules/anthropic/_models/aai-client-options.interface.ts +10 -10
- package/src/_modules/ai/_modules/anthropic/_models/aai-settings.control-model.spec.ts +22 -22
- package/src/_modules/ai/_modules/anthropic/_models/aai-settings.control-model.ts +27 -27
- package/src/_modules/ai/_modules/anthropic/_models/aai-user-provider-config.control-model.ts +20 -20
- package/src/_modules/ai/_modules/anthropic/index.ts +14 -14
- package/src/_modules/ai/_modules/document-ai/_models/dai-embedding-info.interface.ts +12 -12
- package/src/_modules/ai/_modules/document-ai/_models/dai-vector-search-params.interface.ts +22 -22
- package/src/_modules/ai/_modules/document-ai/index.ts +4 -4
- package/src/_modules/ai/_modules/fdp-ai/_collections/fdpai-models.const.ts +34 -34
- package/src/_modules/ai/_modules/fdp-ai/_enums/fdpai-model.enum.ts +6 -6
- package/src/_modules/ai/_modules/fdp-ai/_models/fdpai-call-settings.control-model.ts +19 -19
- package/src/_modules/ai/_modules/fdp-ai/_models/fdpai-client-options.interface.ts +11 -11
- package/src/_modules/ai/_modules/fdp-ai/_models/fdpai-settings.control-model.ts +24 -24
- package/src/_modules/ai/_modules/fdp-ai/_models/fdpai-user-provider-config.control-model.ts +20 -20
- package/src/_modules/ai/_modules/fdp-ai/index.ts +11 -11
- package/src/_modules/ai/_modules/google-ai/_collections/gai-models.const.ts +99 -99
- package/src/_modules/ai/_modules/google-ai/_enums/gai-model.enum.ts +16 -16
- package/src/_modules/ai/_modules/google-ai/_models/gai-call-settings.control-model.spec.ts +28 -28
- package/src/_modules/ai/_modules/google-ai/_models/gai-call-settings.control-model.ts +21 -21
- package/src/_modules/ai/_modules/google-ai/_models/gai-client-options.interface.ts +8 -8
- package/src/_modules/ai/_modules/google-ai/_models/gai-settings.control-model.spec.ts +22 -22
- package/src/_modules/ai/_modules/google-ai/_models/gai-settings.control-model.ts +25 -25
- package/src/_modules/ai/_modules/google-ai/_models/gai-user-provider-config.control-model.ts +20 -20
- package/src/_modules/ai/_modules/google-ai/index.ts +14 -14
- package/src/_modules/ai/_modules/local-ai/_collections/lai-models.const.ts +53 -53
- package/src/_modules/ai/_modules/local-ai/_enums/lai-model.enum.ts +6 -6
- package/src/_modules/ai/_modules/local-ai/_models/lai-call-settings.control-model.spec.ts +28 -28
- package/src/_modules/ai/_modules/local-ai/_models/lai-call-settings.control-model.ts +18 -18
- package/src/_modules/ai/_modules/local-ai/_models/lai-client-options.interface.ts +9 -9
- package/src/_modules/ai/_modules/local-ai/_models/lai-settings.control-model.spec.ts +22 -22
- package/src/_modules/ai/_modules/local-ai/_models/lai-settings.control-model.ts +23 -23
- package/src/_modules/ai/_modules/local-ai/index.ts +14 -14
- package/src/_modules/ai/_modules/open-ai/_collections/oai-embedding-model-dimensions.const.ts +7 -7
- package/src/_modules/ai/_modules/open-ai/_collections/oai-models.const.ts +252 -252
- package/src/_modules/ai/_modules/open-ai/_enums/oai-model.enum.ts +179 -179
- package/src/_modules/ai/_modules/open-ai/_models/oai-call-settings.control-model.spec.ts +28 -28
- package/src/_modules/ai/_modules/open-ai/_models/oai-call-settings.control-model.ts +21 -21
- package/src/_modules/ai/_modules/open-ai/_models/oai-client-options.interface.ts +81 -81
- package/src/_modules/ai/_modules/open-ai/_models/oai-embedding-info.interface.ts +13 -13
- package/src/_modules/ai/_modules/open-ai/_models/oai-settings.control-model.spec.ts +22 -22
- package/src/_modules/ai/_modules/open-ai/_models/oai-settings.control-model.ts +25 -25
- package/src/_modules/ai/_modules/open-ai/_models/oai-user-provider-config.control-model.ts +21 -21
- package/src/_modules/ai/_modules/open-ai/index.ts +28 -28
- package/src/_modules/ai/index.ts +27 -27
- package/src/_modules/ci-tools/_enums/cit-ci-result-code.enum.ts +11 -11
- package/src/_modules/ci-tools/_enums/cit-ci-step-result-code.enum.ts +9 -9
- package/src/_modules/ci-tools/_models/cit-ci-result-info.data-models.spec.ts +58 -58
- package/src/_modules/ci-tools/_models/cit-ci-result-info.data-models.ts +77 -77
- package/src/_modules/ci-tools/_models/cit-ci-step-result.interface.ts +12 -12
- package/src/_modules/ci-tools/index.ts +8 -8
- package/src/_modules/crypto/_collections/crypto.util.simple.spec.ts +512 -512
- package/src/_modules/crypto/index.ts +13 -13
- package/src/_modules/custom-data/_collections/cud-module-settings.const.ts +21 -21
- package/src/_modules/custom-data/_models/cud.data-model.spec.ts +38 -38
- package/src/_modules/custom-data/_models/cud.data-model.ts +39 -39
- package/src/_modules/custom-data/index.ts +10 -10
- package/src/_modules/data-handler/_models/data-handler-settings.control-model.spec.ts +110 -110
- package/src/_modules/data-handler/_models/data-handler-settings.control-model.ts +110 -110
- package/src/_modules/data-handler/_models/data-handler.control-model.spec.ts +445 -445
- package/src/_modules/data-handler/_models/data-handler.control-model.ts +459 -459
- package/src/_modules/data-handler/_models/data-list-handler.control-model.spec.ts +263 -263
- package/src/_modules/data-handler/_models/data-list-handler.control-model.ts +252 -252
- package/src/_modules/data-handler/_models/data-search-handler.control-model.spec.ts +417 -417
- package/src/_modules/data-handler/_models/data-search-handler.control-model.ts +390 -390
- package/src/_modules/data-handler/_models/list-collector-data-handler.control-model.spec.ts +374 -374
- package/src/_modules/data-handler/_models/list-collector-data-handler.control-model.ts +274 -274
- package/src/_modules/data-handler/index.ts +6 -6
- package/src/_modules/location/_collections/assets/country-codes-ISO-3166.json +3239 -3239
- package/src/_modules/location/_collections/assets/country-divisions-ISO-3166-all-list.json +19035 -19035
- package/src/_modules/location/_collections/assets/country-divisions-ISO-3166.json +4993 -4993
- package/src/_modules/location/_collections/assets/country-phone-codes.json +1203 -1203
- package/src/_modules/location/_collections/assets/country-subdivisions/afghanistan.json +137 -137
- package/src/_modules/location/_collections/assets/country-subdivisions/albania.json +49 -49
- package/src/_modules/location/_collections/assets/country-subdivisions/algeria.json +193 -193
- package/src/_modules/location/_collections/assets/country-subdivisions/andorra.json +29 -29
- package/src/_modules/location/_collections/assets/country-subdivisions/angola.json +73 -73
- package/src/_modules/location/_collections/assets/country-subdivisions/antigua-and-barbuda.json +33 -33
- package/src/_modules/location/_collections/assets/country-subdivisions/argentina.json +97 -97
- package/src/_modules/location/_collections/assets/country-subdivisions/armenia.json +45 -45
- package/src/_modules/location/_collections/assets/country-subdivisions/australia.json +33 -33
- package/src/_modules/location/_collections/assets/country-subdivisions/austria.json +37 -37
- package/src/_modules/location/_collections/assets/country-subdivisions/azerbaijan.json +5 -5
- package/src/_modules/location/_collections/assets/country-subdivisions/bahamas.json +125 -125
- package/src/_modules/location/_collections/assets/country-subdivisions/bahrain.json +21 -21
- package/src/_modules/location/_collections/assets/country-subdivisions/bangladesh.json +29 -29
- package/src/_modules/location/_collections/assets/country-subdivisions/barbados.json +45 -45
- package/src/_modules/location/_collections/assets/country-subdivisions/belarus.json +29 -29
- package/src/_modules/location/_collections/assets/country-subdivisions/belgium.json +13 -13
- package/src/_modules/location/_collections/assets/country-subdivisions/belize.json +25 -25
- package/src/_modules/location/_collections/assets/country-subdivisions/benin.json +49 -49
- package/src/_modules/location/_collections/assets/country-subdivisions/bhutan.json +81 -81
- package/src/_modules/location/_collections/assets/country-subdivisions/bolivia.json +37 -37
- package/src/_modules/location/_collections/assets/country-subdivisions/bosnia-and-herzegovina.json +13 -13
- package/src/_modules/location/_collections/assets/country-subdivisions/botswana.json +65 -65
- package/src/_modules/location/_collections/assets/country-subdivisions/brazil.json +109 -109
- package/src/_modules/location/_collections/assets/country-subdivisions/brunei-darussalam.json +17 -17
- package/src/_modules/location/_collections/assets/country-subdivisions/bulgaria.json +113 -113
- package/src/_modules/location/_collections/assets/country-subdivisions/burkina-faso.json +53 -53
- package/src/_modules/location/_collections/assets/country-subdivisions/burundi.json +69 -69
- package/src/_modules/location/_collections/assets/country-subdivisions/cambodia.json +97 -97
- package/src/_modules/location/_collections/assets/country-subdivisions/cameroon.json +41 -41
- package/src/_modules/location/_collections/assets/country-subdivisions/canada.json +79 -79
- package/src/_modules/location/_collections/assets/country-subdivisions/cape-verde.json +9 -9
- package/src/_modules/location/_collections/assets/country-subdivisions/central-african-republic.json +69 -69
- package/src/_modules/location/_collections/assets/country-subdivisions/chad.json +89 -89
- package/src/_modules/location/_collections/assets/country-subdivisions/chile.json +61 -61
- package/src/_modules/location/_collections/assets/country-subdivisions/china.json +205 -205
- package/src/_modules/location/_collections/assets/country-subdivisions/colombia.json +133 -133
- package/src/_modules/location/_collections/assets/country-subdivisions/comoros.json +13 -13
- package/src/_modules/location/_collections/assets/country-subdivisions/congo-the-democratic-republic-of-the.json +45 -45
- package/src/_modules/location/_collections/assets/country-subdivisions/congo.json +49 -49
- package/src/_modules/location/_collections/assets/country-subdivisions/costa-rica.json +29 -29
- package/src/_modules/location/_collections/assets/country-subdivisions/cote-d-ivoire-republic-of.json +77 -77
- package/src/_modules/location/_collections/assets/country-subdivisions/croatia.json +85 -85
- package/src/_modules/location/_collections/assets/country-subdivisions/cuba.json +65 -65
- package/src/_modules/location/_collections/assets/country-subdivisions/cyprus.json +25 -25
- package/src/_modules/location/_collections/assets/country-subdivisions/czech-republic.json +57 -57
- package/src/_modules/location/_collections/assets/country-subdivisions/denmark.json +21 -21
- package/src/_modules/location/_collections/assets/country-subdivisions/djibouti.json +25 -25
- package/src/_modules/location/_collections/assets/country-subdivisions/dominica.json +41 -41
- package/src/_modules/location/_collections/assets/country-subdivisions/dominican-republic.json +41 -41
- package/src/_modules/location/_collections/assets/country-subdivisions/ecuador.json +97 -97
- package/src/_modules/location/_collections/assets/country-subdivisions/egypt.json +117 -117
- package/src/_modules/location/_collections/assets/country-subdivisions/el-salvador.json +57 -57
- package/src/_modules/location/_collections/assets/country-subdivisions/equatorial-guinea.json +9 -9
- package/src/_modules/location/_collections/assets/country-subdivisions/eritrea.json +25 -25
- package/src/_modules/location/_collections/assets/country-subdivisions/estonia.json +61 -61
- package/src/_modules/location/_collections/assets/country-subdivisions/ethiopia.json +45 -45
- package/src/_modules/location/_collections/assets/country-subdivisions/fiji.json +21 -21
- package/src/_modules/location/_collections/assets/country-subdivisions/finland.json +77 -77
- package/src/_modules/location/_collections/assets/country-subdivisions/france.json +133 -133
- package/src/_modules/location/_collections/assets/country-subdivisions/gabon.json +37 -37
- package/src/_modules/location/_collections/assets/country-subdivisions/gambia.json +25 -25
- package/src/_modules/location/_collections/assets/country-subdivisions/georgia.json +49 -49
- package/src/_modules/location/_collections/assets/country-subdivisions/germany.json +65 -65
- package/src/_modules/location/_collections/assets/country-subdivisions/ghana.json +41 -41
- package/src/_modules/location/_collections/assets/country-subdivisions/greece.json +53 -53
- package/src/_modules/location/_collections/assets/country-subdivisions/greenland.json +17 -17
- package/src/_modules/location/_collections/assets/country-subdivisions/grenada.json +29 -29
- package/src/_modules/location/_collections/assets/country-subdivisions/guatemala.json +89 -89
- package/src/_modules/location/_collections/assets/country-subdivisions/guinea-bissau.json +13 -13
- package/src/_modules/location/_collections/assets/country-subdivisions/guinea.json +33 -33
- package/src/_modules/location/_collections/assets/country-subdivisions/guyana.json +41 -41
- package/src/_modules/location/_collections/assets/country-subdivisions/haiti.json +41 -41
- package/src/_modules/location/_collections/assets/country-subdivisions/honduras.json +73 -73
- package/src/_modules/location/_collections/assets/country-subdivisions/hong-kong.json +4 -4
- package/src/_modules/location/_collections/assets/country-subdivisions/hungary.json +173 -173
- package/src/_modules/location/_collections/assets/country-subdivisions/iceland.json +37 -37
- package/src/_modules/location/_collections/assets/country-subdivisions/india.json +181 -181
- package/src/_modules/location/_collections/assets/country-subdivisions/indonesia.json +29 -29
- package/src/_modules/location/_collections/assets/country-subdivisions/iran-islamic-republic-of.json +125 -125
- package/src/_modules/location/_collections/assets/country-subdivisions/iraq.json +73 -73
- package/src/_modules/location/_collections/assets/country-subdivisions/ireland.json +17 -17
- package/src/_modules/location/_collections/assets/country-subdivisions/israel.json +25 -25
- package/src/_modules/location/_collections/assets/country-subdivisions/italy.json +81 -81
- package/src/_modules/location/_collections/assets/country-subdivisions/jamaica.json +57 -57
- package/src/_modules/location/_collections/assets/country-subdivisions/japan.json +189 -189
- package/src/_modules/location/_collections/assets/country-subdivisions/jordan.json +49 -49
- package/src/_modules/location/_collections/assets/country-subdivisions/kazakhstan.json +65 -65
- package/src/_modules/location/_collections/assets/country-subdivisions/kenya.json +33 -33
- package/src/_modules/location/_collections/assets/country-subdivisions/kiribati.json +13 -13
- package/src/_modules/location/_collections/assets/country-subdivisions/korea-democratic-people-s-republic-of.json +45 -45
- package/src/_modules/location/_collections/assets/country-subdivisions/korea-republic-of.json +69 -69
- package/src/_modules/location/_collections/assets/country-subdivisions/kuwait.json +25 -25
- package/src/_modules/location/_collections/assets/country-subdivisions/kyrgyzstan.json +33 -33
- package/src/_modules/location/_collections/assets/country-subdivisions/lao-people-s-democratic-republic.json +73 -73
- package/src/_modules/location/_collections/assets/country-subdivisions/latvia.json +477 -477
- package/src/_modules/location/_collections/assets/country-subdivisions/lebanon.json +33 -33
- package/src/_modules/location/_collections/assets/country-subdivisions/lesotho.json +41 -41
- package/src/_modules/location/_collections/assets/country-subdivisions/liberia.json +61 -61
- package/src/_modules/location/_collections/assets/country-subdivisions/libyan-arab-jamahiriya.json +89 -89
- package/src/_modules/location/_collections/assets/country-subdivisions/liechtenstein.json +45 -45
- package/src/_modules/location/_collections/assets/country-subdivisions/lithuania.json +41 -41
- package/src/_modules/location/_collections/assets/country-subdivisions/luxembourg.json +13 -13
- package/src/_modules/location/_collections/assets/country-subdivisions/macedonia-the-former-yugoslav-republic-of.json +337 -337
- package/src/_modules/location/_collections/assets/country-subdivisions/madagascar.json +25 -25
- package/src/_modules/location/_collections/assets/country-subdivisions/malawi.json +13 -13
- package/src/_modules/location/_collections/assets/country-subdivisions/malaysia.json +81 -81
- package/src/_modules/location/_collections/assets/country-subdivisions/maldives.json +33 -33
- package/src/_modules/location/_collections/assets/country-subdivisions/mali.json +37 -37
- package/src/_modules/location/_collections/assets/country-subdivisions/malta.json +273 -273
- package/src/_modules/location/_collections/assets/country-subdivisions/marshall-islands.json +9 -9
- package/src/_modules/location/_collections/assets/country-subdivisions/mauritania.json +53 -53
- package/src/_modules/location/_collections/assets/country-subdivisions/mauritius.json +69 -69
- package/src/_modules/location/_collections/assets/country-subdivisions/mexico.json +161 -161
- package/src/_modules/location/_collections/assets/country-subdivisions/micronesia-federated-states-of.json +17 -17
- package/src/_modules/location/_collections/assets/country-subdivisions/moldova-republic-of.json +149 -149
- package/src/_modules/location/_collections/assets/country-subdivisions/monaco.json +69 -69
- package/src/_modules/location/_collections/assets/country-subdivisions/mongolia.json +89 -89
- package/src/_modules/location/_collections/assets/country-subdivisions/montenegro.json +93 -93
- package/src/_modules/location/_collections/assets/country-subdivisions/morocco.json +65 -65
- package/src/_modules/location/_collections/assets/country-subdivisions/mozambique.json +45 -45
- package/src/_modules/location/_collections/assets/country-subdivisions/myanmar.json +57 -57
- package/src/_modules/location/_collections/assets/country-subdivisions/namibia.json +57 -57
- package/src/_modules/location/_collections/assets/country-subdivisions/nauru.json +57 -57
- package/src/_modules/location/_collections/assets/country-subdivisions/nepal.json +21 -21
- package/src/_modules/location/_collections/assets/country-subdivisions/netherlands.json +91 -91
- package/src/_modules/location/_collections/assets/country-subdivisions/new-zealand.json +111 -111
- package/src/_modules/location/_collections/assets/country-subdivisions/nicaragua.json +69 -69
- package/src/_modules/location/_collections/assets/country-subdivisions/niger.json +33 -33
- package/src/_modules/location/_collections/assets/country-subdivisions/nigeria.json +149 -149
- package/src/_modules/location/_collections/assets/country-subdivisions/norway.json +85 -85
- package/src/_modules/location/_collections/assets/country-subdivisions/oman.json +37 -37
- package/src/_modules/location/_collections/assets/country-subdivisions/pakistan.json +33 -33
- package/src/_modules/location/_collections/assets/country-subdivisions/palau.json +65 -65
- package/src/_modules/location/_collections/assets/country-subdivisions/palestinian-territory-occupied.json +65 -65
- package/src/_modules/location/_collections/assets/country-subdivisions/panama.json +53 -53
- package/src/_modules/location/_collections/assets/country-subdivisions/papua-new-guinea.json +81 -81
- package/src/_modules/location/_collections/assets/country-subdivisions/paraguay.json +73 -73
- package/src/_modules/location/_collections/assets/country-subdivisions/peru.json +105 -105
- package/src/_modules/location/_collections/assets/country-subdivisions/philippines.json +69 -69
- package/src/_modules/location/_collections/assets/country-subdivisions/poland.json +65 -65
- package/src/_modules/location/_collections/assets/country-subdivisions/portugal.json +81 -81
- package/src/_modules/location/_collections/assets/country-subdivisions/qatar.json +29 -29
- package/src/_modules/location/_collections/assets/country-subdivisions/romania.json +169 -169
- package/src/_modules/location/_collections/assets/country-subdivisions/russian-federation.json +499 -499
- package/src/_modules/location/_collections/assets/country-subdivisions/rwanda.json +21 -21
- package/src/_modules/location/_collections/assets/country-subdivisions/saint-helena-ascension-and-tristan-da-cunha.json +13 -13
- package/src/_modules/location/_collections/assets/country-subdivisions/saint-kitts-and-nevis.json +9 -9
- package/src/_modules/location/_collections/assets/country-subdivisions/saint-lucia.json +45 -45
- package/src/_modules/location/_collections/assets/country-subdivisions/saint-vincent-and-the-grenadines.json +25 -25
- package/src/_modules/location/_collections/assets/country-subdivisions/samoa.json +45 -45
- package/src/_modules/location/_collections/assets/country-subdivisions/san-marino.json +37 -37
- package/src/_modules/location/_collections/assets/country-subdivisions/sao-tome-and-principe.json +9 -9
- package/src/_modules/location/_collections/assets/country-subdivisions/saudi-arabia.json +53 -53
- package/src/_modules/location/_collections/assets/country-subdivisions/senegal.json +57 -57
- package/src/_modules/location/_collections/assets/country-subdivisions/serbia.json +9 -9
- package/src/_modules/location/_collections/assets/country-subdivisions/seychelles.json +101 -101
- package/src/_modules/location/_collections/assets/country-subdivisions/sierra-leone.json +17 -17
- package/src/_modules/location/_collections/assets/country-subdivisions/singapore.json +21 -21
- package/src/_modules/location/_collections/assets/country-subdivisions/slovakia.json +33 -33
- package/src/_modules/location/_collections/assets/country-subdivisions/slovenia.json +841 -841
- package/src/_modules/location/_collections/assets/country-subdivisions/solomon-islands.json +41 -41
- package/src/_modules/location/_collections/assets/country-subdivisions/somalia.json +73 -73
- package/src/_modules/location/_collections/assets/country-subdivisions/south-africa.json +37 -37
- package/src/_modules/location/_collections/assets/country-subdivisions/south-sudan.json +41 -41
- package/src/_modules/location/_collections/assets/country-subdivisions/spain.json +346 -346
- package/src/_modules/location/_collections/assets/country-subdivisions/sri-lanka.json +37 -37
- package/src/_modules/location/_collections/assets/country-subdivisions/sudan.json +69 -69
- package/src/_modules/location/_collections/assets/country-subdivisions/suriname.json +41 -41
- package/src/_modules/location/_collections/assets/country-subdivisions/swaziland.json +17 -17
- package/src/_modules/location/_collections/assets/country-subdivisions/sweden.json +85 -85
- package/src/_modules/location/_collections/assets/country-subdivisions/switzerland.json +105 -105
- package/src/_modules/location/_collections/assets/country-subdivisions/syrian-arab-republic.json +57 -57
- package/src/_modules/location/_collections/assets/country-subdivisions/taiwan-province-of-china.json +93 -93
- package/src/_modules/location/_collections/assets/country-subdivisions/tajikistan.json +17 -17
- package/src/_modules/location/_collections/assets/country-subdivisions/tanzania-united-republic-of.json +105 -105
- package/src/_modules/location/_collections/assets/country-subdivisions/thailand.json +313 -313
- package/src/_modules/location/_collections/assets/country-subdivisions/timor-leste.json +53 -53
- package/src/_modules/location/_collections/assets/country-subdivisions/togo.json +21 -21
- package/src/_modules/location/_collections/assets/country-subdivisions/tonga.json +21 -21
- package/src/_modules/location/_collections/assets/country-subdivisions/trinidad-and-tobago.json +65 -65
- package/src/_modules/location/_collections/assets/country-subdivisions/tunisia.json +97 -97
- package/src/_modules/location/_collections/assets/country-subdivisions/turkey.json +325 -325
- package/src/_modules/location/_collections/assets/country-subdivisions/turkmenistan.json +25 -25
- package/src/_modules/location/_collections/assets/country-subdivisions/tuvalu.json +33 -33
- package/src/_modules/location/_collections/assets/country-subdivisions/uganda.json +17 -17
- package/src/_modules/location/_collections/assets/country-subdivisions/ukraine.json +109 -109
- package/src/_modules/location/_collections/assets/country-subdivisions/united-arab-emirates.json +29 -29
- package/src/_modules/location/_collections/assets/country-subdivisions/united-kingdom.json +1196 -1196
- package/src/_modules/location/_collections/assets/country-subdivisions/united-states-minor-outlying-islands.json +37 -37
- package/src/_modules/location/_collections/assets/country-subdivisions/united-states.json +286 -286
- package/src/_modules/location/_collections/assets/country-subdivisions/uruguay.json +77 -77
- package/src/_modules/location/_collections/assets/country-subdivisions/uzbekistan.json +57 -57
- package/src/_modules/location/_collections/assets/country-subdivisions/vanuatu.json +25 -25
- package/src/_modules/location/_collections/assets/country-subdivisions/venezuela.json +101 -101
- package/src/_modules/location/_collections/assets/country-subdivisions/viet-nam.json +257 -257
- package/src/_modules/location/_collections/assets/country-subdivisions/yemen.json +85 -85
- package/src/_modules/location/_collections/assets/country-subdivisions/zambia.json +37 -37
- package/src/_modules/location/_collections/assets/country-subdivisions/zimbabwe.json +41 -41
- package/src/_modules/location/_collections/loc-country-divisions.const.ts +10 -10
- package/src/_modules/location/_collections/loc-country-isos.const.ts +8 -8
- package/src/_modules/location/_collections/loc-regions.util.spec.ts +61 -61
- package/src/_modules/location/_collections/loc-regions.util.ts +137 -137
- package/src/_modules/location/_collections/loc.util.spec.ts +52 -52
- package/src/_modules/location/_collections/loc.util.ts +74 -74
- package/src/_modules/location/_enums/loc-region.enum.ts +14 -14
- package/src/_modules/location/_enums/loc-sub-region.enum.ts +31 -31
- package/src/_modules/location/_enums/loc-subdivision-region-type.enum.ts +47 -47
- package/src/_modules/location/_models/loc-coordinates.interface.ts +7 -7
- package/src/_modules/location/_models/loc-country-division.interface.ts +8 -8
- package/src/_modules/location/_models/loc-country-iso.interface.ts +23 -23
- package/src/_modules/location/_models/loc-country-phone-code.interface.ts +9 -9
- package/src/_modules/location/_models/loc-division-collection.interface.ts +12 -12
- package/src/_modules/location/_models/loc-division-region-data.interface.ts +9 -9
- package/src/_modules/location/_models/loc-geo-ip-location.interface.ts +27 -27
- package/src/_modules/location/index.ts +22 -22
- package/src/_modules/messaging/README.md +279 -279
- package/src/_modules/messaging/_collections/msg-module-settings.const.ts +46 -46
- package/src/_modules/messaging/_enums/msg-attachment-type.enum.ts +26 -26
- package/src/_modules/messaging/_enums/msg-delivery-status.enum.ts +17 -17
- package/src/_modules/messaging/_enums/msg-event-key.enum.ts +31 -31
- package/src/_modules/messaging/_enums/msg-participant-role.enum.ts +20 -20
- package/src/_modules/messaging/_enums/msg-provider-type.enum.ts +7 -7
- package/src/_modules/messaging/_enums/msg-type.enum.ts +23 -23
- package/src/_modules/messaging/_models/msg-attachment.interface.ts +46 -46
- package/src/_modules/messaging/_models/msg-conversation.data-model.spec.ts +69 -69
- package/src/_modules/messaging/_models/msg-conversation.data-model.ts +96 -96
- package/src/_modules/messaging/_models/msg-mention.interface.ts +29 -29
- package/src/_modules/messaging/_models/msg-message.data-model.spec.ts +79 -79
- package/src/_modules/messaging/_models/msg-message.data-model.ts +127 -127
- package/src/_modules/messaging/_models/msg-participant.interface.ts +46 -46
- package/src/_modules/messaging/_models/msg-reaction.interface.ts +20 -20
- package/src/_modules/messaging/_models/msg-thread-info.interface.ts +35 -35
- package/src/_modules/messaging/_modules/agent/_enums/agt-process-step-type.enum.ts +35 -35
- package/src/_modules/messaging/_modules/agent/_enums/agt-tool-status.enum.ts +23 -23
- package/src/_modules/messaging/_modules/agent/_models/agt-process-step.interface.ts +55 -55
- package/src/_modules/messaging/_modules/agent/_models/agt-reasoning-info.interface.ts +26 -26
- package/src/_modules/messaging/_modules/agent/_models/agt-tool-usage.interface.ts +37 -37
- package/src/_modules/messaging/_modules/agent/index.ts +8 -8
- package/src/_modules/messaging/index.ts +28 -28
- package/src/_modules/pipe/_collections/pip-transforms.const.ts +42 -42
- package/src/_modules/pipe/_collections/utils/pip-country-pipe.util.spec.ts +47 -47
- package/src/_modules/pipe/_collections/utils/pip-country-pipe.util.ts +41 -41
- package/src/_modules/pipe/_collections/utils/pip-custom-pipe.util.spec.ts +39 -39
- package/src/_modules/pipe/_collections/utils/pip-custom-pipe.util.ts +30 -30
- package/src/_modules/pipe/_collections/utils/pip-division-pipe.util.spec.ts +41 -41
- package/src/_modules/pipe/_collections/utils/pip-division-pipe.util.ts +36 -36
- package/src/_modules/pipe/_collections/utils/pip-json-pipe.util.spec.ts +62 -62
- package/src/_modules/pipe/_collections/utils/pip-json-pipe.util.ts +17 -17
- package/src/_modules/pipe/_collections/utils/pip-list-pipe.util.spec.ts +34 -34
- package/src/_modules/pipe/_collections/utils/pip-list-pipe.util.ts +25 -25
- package/src/_modules/pipe/_collections/utils/pip-multi-pipe-pipe.util.spec.ts +67 -67
- package/src/_modules/pipe/_collections/utils/pip-multi-pipe-pipe.util.ts +226 -226
- package/src/_modules/pipe/_collections/utils/pip-obj-key-pipe.util.spec.ts +28 -28
- package/src/_modules/pipe/_collections/utils/pip-obj-key-pipe.util.ts +21 -21
- package/src/_modules/pipe/_collections/utils/pip-range-pipe.util.spec.ts +59 -59
- package/src/_modules/pipe/_collections/utils/pip-range-pipe.util.ts +106 -106
- package/src/_modules/pipe/_collections/utils/pip-region-pipe.util.spec.ts +31 -31
- package/src/_modules/pipe/_collections/utils/pip-region-pipe.util.ts +35 -35
- package/src/_modules/pipe/_collections/utils/pip-replace-pipe.util.spec.ts +44 -44
- package/src/_modules/pipe/_collections/utils/pip-replace-pipe.util.ts +23 -23
- package/src/_modules/pipe/_collections/utils/pip-slider-pipe.util.spec.ts +21 -21
- package/src/_modules/pipe/_collections/utils/pip-slider-pipe.util.ts +33 -33
- package/src/_modules/pipe/_collections/utils/pip-smart-replace-pipe.util.spec.ts +62 -62
- package/src/_modules/pipe/_collections/utils/pip-smart-replace-pipe.util.ts +80 -80
- package/src/_modules/pipe/_enums/pip-range-pipe-setting.enum.ts +15 -15
- package/src/_modules/pipe/_enums/pip.enum.ts +65 -65
- package/src/_modules/pipe/_models/pip-multi-pipe-settings.type.ts +8 -8
- package/src/_modules/pipe/_models/pip-transforms.interface.ts +30 -30
- package/src/_modules/pipe/index.ts +30 -30
- package/src/_modules/socket/_enums/sck-event-key.enum.ts +21 -21
- package/src/_modules/socket/_models/sck-client-params.control-model.spec.ts +67 -67
- package/src/_modules/socket/_models/sck-client-params.control-model.ts +50 -50
- package/src/_modules/socket/_models/sck-socket-event.control-model.spec.ts +66 -66
- package/src/_modules/socket/_models/sck-socket-event.control-model.ts +172 -172
- package/src/_modules/socket/_services/sck-client.service-base.spec.ts +99 -99
- package/src/_modules/socket/_services/sck-client.service-base.ts +353 -353
- package/src/_modules/socket/index.ts +14 -14
- package/src/_modules/test/_collections/tst-module-settings.const.ts +67 -67
- package/src/_modules/test/index.ts +5 -5
- package/src/_modules/usage/_collections/usg-module-settings.const.ts +33 -33
- package/src/_modules/usage/_models/usg-action.control-model.spec.ts +27 -27
- package/src/_modules/usage/_models/usg-action.control-model.ts +28 -28
- package/src/_modules/usage/_models/usg-daily-usage-data.control-model.spec.ts +36 -36
- package/src/_modules/usage/_models/usg-daily-usage-data.control-model.ts +35 -35
- package/src/_modules/usage/_models/usg-data.control-model.spec.ts +41 -41
- package/src/_modules/usage/_models/usg-data.control-model.ts +35 -35
- package/src/_modules/usage/_models/usg-session.data-model.spec.ts +97 -97
- package/src/_modules/usage/_models/usg-session.data-model.ts +72 -72
- package/src/_modules/usage/index.ts +11 -11
- package/src/index.ts +104 -103
- package/tsconfig.app.json +12 -12
- package/tsconfig.json +31 -31
- package/tsconfig.test.json +16 -16
- package/tslint.json +153 -153
|
@@ -1,110 +1,110 @@
|
|
|
1
|
-
|
|
2
|
-
/**
|
|
3
|
-
* @example
|
|
4
|
-
* // by email:
|
|
5
|
-
* { email: email }
|
|
6
|
-
* //
|
|
7
|
-
* @example
|
|
8
|
-
* // or by id that is in list:
|
|
9
|
-
* { userIds: { $in: this.userId } }
|
|
10
|
-
* //
|
|
11
|
-
* @example
|
|
12
|
-
* // or by userIds:
|
|
13
|
-
* { userId: { $in: userIds } }
|
|
14
|
-
* //
|
|
15
|
-
* @example
|
|
16
|
-
* // or by number or Date that is Greater Than AND Less Than:
|
|
17
|
-
* { points: { $gt: 2, $lt: 14 } }
|
|
18
|
-
* // further tools (syntax matches with $gt):
|
|
19
|
-
* $eq: // Matches values that are EQual to a specified value.
|
|
20
|
-
* $gte: // Matches values that are Greater Than OR Equal to a specified value.
|
|
21
|
-
* $lte: // Matches values that are Less Than or Equal to a specified value.
|
|
22
|
-
* $ne: // Matches all values that are Not Equal to a specified value.
|
|
23
|
-
* $nin: // Matches None of the values specified IN an array.
|
|
24
|
-
* //
|
|
25
|
-
* @returns {T} data: T
|
|
26
|
-
*/
|
|
27
|
-
export type DyFM_DBFilter<T> =
|
|
28
|
-
DyFM_DBFilterSimple<T> |
|
|
29
|
-
DyFM_DBFilterOR<T> |
|
|
30
|
-
DyFM_DBFilterNOR<T>;
|
|
31
|
-
|
|
32
|
-
/**
|
|
33
|
-
* A simple filter for a DynamoDB query.
|
|
34
|
-
*/
|
|
35
|
-
export type DyFM_DBFilterSimple<T> = {
|
|
36
|
-
[K in keyof T]?: T[K] | DyFM_DBFilterExpressions<T[K] | boolean>;
|
|
37
|
-
} & {
|
|
38
|
-
[path: string]: any;
|
|
39
|
-
};
|
|
40
|
-
|
|
41
|
-
export type DyFM_DBFilterExpressions<T> = {
|
|
42
|
-
/**
|
|
43
|
-
* Matches values that are includes the value; This works only when T[K] is an array!
|
|
44
|
-
*/
|
|
45
|
-
$in?: T | T[] | any,
|
|
46
|
-
/**
|
|
47
|
-
* Matches values that are EQual to a specified value.
|
|
48
|
-
*/
|
|
49
|
-
$eq?: T,
|
|
50
|
-
/**
|
|
51
|
-
* Matches values that are Greater Than a specified value.
|
|
52
|
-
*/
|
|
53
|
-
$gt?: number | Date,
|
|
54
|
-
/**
|
|
55
|
-
* Matches values that are Greater Than OR Equal to a specified value.
|
|
56
|
-
*/
|
|
57
|
-
$gte?: number | Date,
|
|
58
|
-
/**
|
|
59
|
-
* Matches values that are Less Than a specified value.
|
|
60
|
-
*/
|
|
61
|
-
$lt?: number | Date,
|
|
62
|
-
/**
|
|
63
|
-
* Matches values that are Less Than or Equal to a specified value.
|
|
64
|
-
*/
|
|
65
|
-
$lte?: number | Date,
|
|
66
|
-
/**
|
|
67
|
-
* Matches all values that are Not Equal to a specified value.
|
|
68
|
-
*/
|
|
69
|
-
$ne?: any,
|
|
70
|
-
/**
|
|
71
|
-
* Matches None of the values specified IN an array.
|
|
72
|
-
*/
|
|
73
|
-
$nin?: T | T[] | any,
|
|
74
|
-
/**
|
|
75
|
-
* Inverts the effect of a query expression and returns documents that do not match the query expression.
|
|
76
|
-
*/
|
|
77
|
-
$not?: T | {
|
|
78
|
-
$regex?: RegExp | string,
|
|
79
|
-
},
|
|
80
|
-
/**
|
|
81
|
-
* Performs a regular expression on the field's value, and selects documents that match the regular expression.
|
|
82
|
-
*/
|
|
83
|
-
$exists?: boolean,
|
|
84
|
-
/**
|
|
85
|
-
* Selects documents if a field is of the specified type.
|
|
86
|
-
*/
|
|
87
|
-
$type?: string,
|
|
88
|
-
};
|
|
89
|
-
|
|
90
|
-
/**
|
|
91
|
-
* Joins query clauses with a logical AND returns all documents that match the conditions of both clauses.
|
|
92
|
-
*/
|
|
93
|
-
export type DyFM_DBFilterNOR<T> = {
|
|
94
|
-
/**
|
|
95
|
-
* Joins query clauses with a logical NOR returns all documents that fail to match both clauses.
|
|
96
|
-
*/
|
|
97
|
-
$nor: DyFM_DBFilterSimple<T>[];
|
|
98
|
-
}
|
|
99
|
-
|
|
100
|
-
/**
|
|
101
|
-
* Joins query clauses with a logical AND returns all documents that match the conditions of both clauses.
|
|
102
|
-
*/
|
|
103
|
-
export type DyFM_DBFilterOR<T> = {
|
|
104
|
-
/**
|
|
105
|
-
* Joins query clauses with a logical OR returns all documents that match the conditions of either clause.
|
|
106
|
-
*/
|
|
107
|
-
$or: DyFM_DBFilterSimple<T>[];
|
|
108
|
-
}
|
|
109
|
-
|
|
110
|
-
|
|
1
|
+
|
|
2
|
+
/**
|
|
3
|
+
* @example
|
|
4
|
+
* // by email:
|
|
5
|
+
* { email: email }
|
|
6
|
+
* //
|
|
7
|
+
* @example
|
|
8
|
+
* // or by id that is in list:
|
|
9
|
+
* { userIds: { $in: this.userId } }
|
|
10
|
+
* //
|
|
11
|
+
* @example
|
|
12
|
+
* // or by userIds:
|
|
13
|
+
* { userId: { $in: userIds } }
|
|
14
|
+
* //
|
|
15
|
+
* @example
|
|
16
|
+
* // or by number or Date that is Greater Than AND Less Than:
|
|
17
|
+
* { points: { $gt: 2, $lt: 14 } }
|
|
18
|
+
* // further tools (syntax matches with $gt):
|
|
19
|
+
* $eq: // Matches values that are EQual to a specified value.
|
|
20
|
+
* $gte: // Matches values that are Greater Than OR Equal to a specified value.
|
|
21
|
+
* $lte: // Matches values that are Less Than or Equal to a specified value.
|
|
22
|
+
* $ne: // Matches all values that are Not Equal to a specified value.
|
|
23
|
+
* $nin: // Matches None of the values specified IN an array.
|
|
24
|
+
* //
|
|
25
|
+
* @returns {T} data: T
|
|
26
|
+
*/
|
|
27
|
+
export type DyFM_DBFilter<T> =
|
|
28
|
+
DyFM_DBFilterSimple<T> |
|
|
29
|
+
DyFM_DBFilterOR<T> |
|
|
30
|
+
DyFM_DBFilterNOR<T>;
|
|
31
|
+
|
|
32
|
+
/**
|
|
33
|
+
* A simple filter for a DynamoDB query.
|
|
34
|
+
*/
|
|
35
|
+
export type DyFM_DBFilterSimple<T> = {
|
|
36
|
+
[K in keyof T]?: T[K] | DyFM_DBFilterExpressions<T[K] | boolean>;
|
|
37
|
+
} & {
|
|
38
|
+
[path: string]: any;
|
|
39
|
+
};
|
|
40
|
+
|
|
41
|
+
export type DyFM_DBFilterExpressions<T> = {
|
|
42
|
+
/**
|
|
43
|
+
* Matches values that are includes the value; This works only when T[K] is an array!
|
|
44
|
+
*/
|
|
45
|
+
$in?: T | T[] | any,
|
|
46
|
+
/**
|
|
47
|
+
* Matches values that are EQual to a specified value.
|
|
48
|
+
*/
|
|
49
|
+
$eq?: T,
|
|
50
|
+
/**
|
|
51
|
+
* Matches values that are Greater Than a specified value.
|
|
52
|
+
*/
|
|
53
|
+
$gt?: number | Date,
|
|
54
|
+
/**
|
|
55
|
+
* Matches values that are Greater Than OR Equal to a specified value.
|
|
56
|
+
*/
|
|
57
|
+
$gte?: number | Date,
|
|
58
|
+
/**
|
|
59
|
+
* Matches values that are Less Than a specified value.
|
|
60
|
+
*/
|
|
61
|
+
$lt?: number | Date,
|
|
62
|
+
/**
|
|
63
|
+
* Matches values that are Less Than or Equal to a specified value.
|
|
64
|
+
*/
|
|
65
|
+
$lte?: number | Date,
|
|
66
|
+
/**
|
|
67
|
+
* Matches all values that are Not Equal to a specified value.
|
|
68
|
+
*/
|
|
69
|
+
$ne?: any,
|
|
70
|
+
/**
|
|
71
|
+
* Matches None of the values specified IN an array.
|
|
72
|
+
*/
|
|
73
|
+
$nin?: T | T[] | any,
|
|
74
|
+
/**
|
|
75
|
+
* Inverts the effect of a query expression and returns documents that do not match the query expression.
|
|
76
|
+
*/
|
|
77
|
+
$not?: T | {
|
|
78
|
+
$regex?: RegExp | string,
|
|
79
|
+
},
|
|
80
|
+
/**
|
|
81
|
+
* Performs a regular expression on the field's value, and selects documents that match the regular expression.
|
|
82
|
+
*/
|
|
83
|
+
$exists?: boolean,
|
|
84
|
+
/**
|
|
85
|
+
* Selects documents if a field is of the specified type.
|
|
86
|
+
*/
|
|
87
|
+
$type?: string,
|
|
88
|
+
};
|
|
89
|
+
|
|
90
|
+
/**
|
|
91
|
+
* Joins query clauses with a logical AND returns all documents that match the conditions of both clauses.
|
|
92
|
+
*/
|
|
93
|
+
export type DyFM_DBFilterNOR<T> = {
|
|
94
|
+
/**
|
|
95
|
+
* Joins query clauses with a logical NOR returns all documents that fail to match both clauses.
|
|
96
|
+
*/
|
|
97
|
+
$nor: DyFM_DBFilterSimple<T>[];
|
|
98
|
+
}
|
|
99
|
+
|
|
100
|
+
/**
|
|
101
|
+
* Joins query clauses with a logical AND returns all documents that match the conditions of both clauses.
|
|
102
|
+
*/
|
|
103
|
+
export type DyFM_DBFilterOR<T> = {
|
|
104
|
+
/**
|
|
105
|
+
* Joins query clauses with a logical OR returns all documents that match the conditions of either clause.
|
|
106
|
+
*/
|
|
107
|
+
$or: DyFM_DBFilterSimple<T>[];
|
|
108
|
+
}
|
|
109
|
+
|
|
110
|
+
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
export type DyFM_DBSort<T> = {
|
|
4
|
-
[K in keyof T]?: 1 | -1 | 'asc' | 'desc' | 'ascending' | 'descending';
|
|
1
|
+
|
|
2
|
+
|
|
3
|
+
export type DyFM_DBSort<T> = {
|
|
4
|
+
[K in keyof T]?: 1 | -1 | 'asc' | 'desc' | 'ascending' | 'descending';
|
|
5
5
|
}
|
|
@@ -1,68 +1,68 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
import { DyFM_BasicProperty_Type } from '../../_enums/basic-property-type.enum';
|
|
4
|
-
import { DyFM_RangeValue } from '../control-models/range-value.control-model';
|
|
5
|
-
import { DyFM_DBFilterExpressions } from './db-filter.type';
|
|
6
|
-
|
|
7
|
-
/**
|
|
8
|
-
* A filter for a DynamoDB queries.
|
|
9
|
-
*
|
|
10
|
-
* it should be the value, a range or an array of the searching values
|
|
11
|
-
*/
|
|
12
|
-
export type DyFM_DSFilter<T> = {
|
|
13
|
-
[K in keyof T]?: DyFM_DSFilterProperty<T, K>;
|
|
14
|
-
};
|
|
15
|
-
export type DyFM_DSFilterProperty<T, K extends keyof T> = T[K] |
|
|
16
|
-
T[K][] |
|
|
17
|
-
DyFM_RangeValue<T[K]> |
|
|
18
|
-
DyFM_SpecialSearch<T[K]> |
|
|
19
|
-
DyFM_SpecialNestSearch |
|
|
20
|
-
DyFM_DBFilterExpressions<T[K]>;
|
|
21
|
-
|
|
22
|
-
export interface DyFM_SpecialSearch<T> {
|
|
23
|
-
isSpecialSearch: true;
|
|
24
|
-
searchValue: T | T[];
|
|
25
|
-
type: DyFM_SpecialSearch_Type;
|
|
26
|
-
}
|
|
27
|
-
|
|
28
|
-
/**
|
|
29
|
-
* searches for a nested properties in the object
|
|
30
|
-
*/
|
|
31
|
-
export interface DyFM_SpecialNestSearch {
|
|
32
|
-
isSpecialNestSearch: true;
|
|
33
|
-
nestedPropertySearches: DyFM_NestPropertySearch<any>[];
|
|
34
|
-
}
|
|
35
|
-
|
|
36
|
-
/**
|
|
37
|
-
* can search for nested properties in arrays as well with the following syntax used in key:
|
|
38
|
-
* nestKeys: [ 'arrayProperty', '*', 'nestedPropertySearch' ]
|
|
39
|
-
*/
|
|
40
|
-
export interface DyFM_NestPropertySearch<T> {
|
|
41
|
-
nestKeys: string[];
|
|
42
|
-
valueType: DyFM_BasicProperty_Type;
|
|
43
|
-
search: T |
|
|
44
|
-
T[] |
|
|
45
|
-
DyFM_RangeValue<T> |
|
|
46
|
-
DyFM_SpecialSearch<T>;
|
|
47
|
-
}
|
|
48
|
-
|
|
49
|
-
export enum DyFM_SpecialSearch_Type {
|
|
50
|
-
/**
|
|
51
|
-
* searches each word in the string, returns true if ANY word is found in ANY order
|
|
52
|
-
* */
|
|
53
|
-
stringListSearchAny = 'stringListSearchAny',
|
|
54
|
-
/**
|
|
55
|
-
* searches each word in the string, returns true if ALL words are found in ANY order
|
|
56
|
-
* */
|
|
57
|
-
stringListSearch = 'stringListSearch',
|
|
58
|
-
/**
|
|
59
|
-
* searches each word in the string, returns true if ALL words are found in the SAME order
|
|
60
|
-
* */
|
|
61
|
-
stringListSearchOrdered = 'stringListSearchOrdered',
|
|
62
|
-
}
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
1
|
+
|
|
2
|
+
|
|
3
|
+
import { DyFM_BasicProperty_Type } from '../../_enums/basic-property-type.enum';
|
|
4
|
+
import { DyFM_RangeValue } from '../control-models/range-value.control-model';
|
|
5
|
+
import { DyFM_DBFilterExpressions } from './db-filter.type';
|
|
6
|
+
|
|
7
|
+
/**
|
|
8
|
+
* A filter for a DynamoDB queries.
|
|
9
|
+
*
|
|
10
|
+
* it should be the value, a range or an array of the searching values
|
|
11
|
+
*/
|
|
12
|
+
export type DyFM_DSFilter<T> = {
|
|
13
|
+
[K in keyof T]?: DyFM_DSFilterProperty<T, K>;
|
|
14
|
+
};
|
|
15
|
+
export type DyFM_DSFilterProperty<T, K extends keyof T> = T[K] |
|
|
16
|
+
T[K][] |
|
|
17
|
+
DyFM_RangeValue<T[K]> |
|
|
18
|
+
DyFM_SpecialSearch<T[K]> |
|
|
19
|
+
DyFM_SpecialNestSearch |
|
|
20
|
+
DyFM_DBFilterExpressions<T[K]>;
|
|
21
|
+
|
|
22
|
+
export interface DyFM_SpecialSearch<T> {
|
|
23
|
+
isSpecialSearch: true;
|
|
24
|
+
searchValue: T | T[];
|
|
25
|
+
type: DyFM_SpecialSearch_Type;
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
/**
|
|
29
|
+
* searches for a nested properties in the object
|
|
30
|
+
*/
|
|
31
|
+
export interface DyFM_SpecialNestSearch {
|
|
32
|
+
isSpecialNestSearch: true;
|
|
33
|
+
nestedPropertySearches: DyFM_NestPropertySearch<any>[];
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
/**
|
|
37
|
+
* can search for nested properties in arrays as well with the following syntax used in key:
|
|
38
|
+
* nestKeys: [ 'arrayProperty', '*', 'nestedPropertySearch' ]
|
|
39
|
+
*/
|
|
40
|
+
export interface DyFM_NestPropertySearch<T> {
|
|
41
|
+
nestKeys: string[];
|
|
42
|
+
valueType: DyFM_BasicProperty_Type;
|
|
43
|
+
search: T |
|
|
44
|
+
T[] |
|
|
45
|
+
DyFM_RangeValue<T> |
|
|
46
|
+
DyFM_SpecialSearch<T>;
|
|
47
|
+
}
|
|
48
|
+
|
|
49
|
+
export enum DyFM_SpecialSearch_Type {
|
|
50
|
+
/**
|
|
51
|
+
* searches each word in the string, returns true if ANY word is found in ANY order
|
|
52
|
+
* */
|
|
53
|
+
stringListSearchAny = 'stringListSearchAny',
|
|
54
|
+
/**
|
|
55
|
+
* searches each word in the string, returns true if ALL words are found in ANY order
|
|
56
|
+
* */
|
|
57
|
+
stringListSearch = 'stringListSearch',
|
|
58
|
+
/**
|
|
59
|
+
* searches each word in the string, returns true if ALL words are found in the SAME order
|
|
60
|
+
* */
|
|
61
|
+
stringListSearchOrdered = 'stringListSearchOrdered',
|
|
62
|
+
}
|
|
63
|
+
|
|
64
|
+
|
|
65
|
+
|
|
66
|
+
|
|
67
|
+
|
|
68
|
+
|
|
@@ -1,21 +1,21 @@
|
|
|
1
|
-
import { DyFM_BasicProperty_Type } from '../../_enums/basic-property-type.enum';
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
export type DyFM_DSSort = DyFM_DSPropertySort | DyFM_DSNestedPropertySort;
|
|
6
|
-
export interface DyFM_DSPropertySort {
|
|
7
|
-
key: string;
|
|
8
|
-
order: 1 | -1 | 'asc' | 'desc' | 'ascending' | 'descending';
|
|
9
|
-
}
|
|
10
|
-
|
|
11
|
-
export interface DyFM_DSNestedPropertySort {
|
|
12
|
-
isNestedPropertySort: true;
|
|
13
|
-
/**
|
|
14
|
-
* the key to sort by
|
|
15
|
-
* (can be an array that is used for sorting by nested properties)
|
|
16
|
-
*/
|
|
17
|
-
nestKeys: string[];
|
|
18
|
-
valueType: DyFM_BasicProperty_Type;
|
|
19
|
-
order: 1 | -1 | 'asc' | 'desc' | 'ascending' | 'descending';
|
|
20
|
-
}
|
|
21
|
-
|
|
1
|
+
import { DyFM_BasicProperty_Type } from '../../_enums/basic-property-type.enum';
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
|
|
5
|
+
export type DyFM_DSSort = DyFM_DSPropertySort | DyFM_DSNestedPropertySort;
|
|
6
|
+
export interface DyFM_DSPropertySort {
|
|
7
|
+
key: string;
|
|
8
|
+
order: 1 | -1 | 'asc' | 'desc' | 'ascending' | 'descending';
|
|
9
|
+
}
|
|
10
|
+
|
|
11
|
+
export interface DyFM_DSNestedPropertySort {
|
|
12
|
+
isNestedPropertySort: true;
|
|
13
|
+
/**
|
|
14
|
+
* the key to sort by
|
|
15
|
+
* (can be an array that is used for sorting by nested properties)
|
|
16
|
+
*/
|
|
17
|
+
nestKeys: string[];
|
|
18
|
+
valueType: DyFM_BasicProperty_Type;
|
|
19
|
+
order: 1 | -1 | 'asc' | 'desc' | 'ascending' | 'descending';
|
|
20
|
+
}
|
|
21
|
+
|
|
@@ -1,88 +1,88 @@
|
|
|
1
|
-
import { DyFM_AI_Provider } from '../_enums/ai-provider.enum';
|
|
2
|
-
|
|
3
|
-
/**
|
|
4
|
-
* AI modell hivatkozas formatum: {provider}:{model}
|
|
5
|
-
*
|
|
6
|
-
* Peldak: "open-ai:gpt-4o", "anthropic:claude-3-5-sonnet-latest", "fdp-ai:fdp-base-1"
|
|
7
|
-
* A provider resz a DyFM_AI_Provider enum erteke, a model resz a provider sajat modell azonositoja.
|
|
8
|
-
*/
|
|
9
|
-
export class DyFM_AI_ModelRef_Util {
|
|
10
|
-
/** az elvlaszto karakter a provider es modell kozott */
|
|
11
|
-
private static readonly separator: string = ':';
|
|
12
|
-
|
|
13
|
-
/** az osszes ervenyes provider ertek gyorstarhely */
|
|
14
|
-
private static readonly validProviders: Set<string> = new Set(
|
|
15
|
-
Object.values(DyFM_AI_Provider)
|
|
16
|
-
);
|
|
17
|
-
|
|
18
|
-
/**
|
|
19
|
-
* Osszeallitas provider + model -bol
|
|
20
|
-
* @param provider - AI provider enum ertek
|
|
21
|
-
* @param model - provider-specifikus modell azonosito
|
|
22
|
-
*/
|
|
23
|
-
static create(provider: DyFM_AI_Provider, model: string): string {
|
|
24
|
-
return `${provider}${DyFM_AI_ModelRef_Util.separator}${model}`;
|
|
25
|
-
}
|
|
26
|
-
|
|
27
|
-
/**
|
|
28
|
-
* Szetbontas provider + model -re
|
|
29
|
-
* @param modelRef - formatum: {provider}:{model}
|
|
30
|
-
*/
|
|
31
|
-
static parse(modelRef: string): { provider: DyFM_AI_Provider; model: string } {
|
|
32
|
-
const separatorIndex: number = modelRef.indexOf(DyFM_AI_ModelRef_Util.separator);
|
|
33
|
-
|
|
34
|
-
if (separatorIndex < 0) {
|
|
35
|
-
throw new Error(`Ervenytelen modelRef formatum: "${modelRef}" -- hianyzik a "${DyFM_AI_ModelRef_Util.separator}" elvlaszto`);
|
|
36
|
-
}
|
|
37
|
-
|
|
38
|
-
const provider: string = modelRef.substring(0, separatorIndex);
|
|
39
|
-
const model: string = modelRef.substring(separatorIndex + 1);
|
|
40
|
-
|
|
41
|
-
if (!DyFM_AI_ModelRef_Util.validProviders.has(provider)) {
|
|
42
|
-
throw new Error(`Ismeretlen AI provider: "${provider}" a modelRef-ben: "${modelRef}"`);
|
|
43
|
-
}
|
|
44
|
-
|
|
45
|
-
if (!model) {
|
|
46
|
-
throw new Error(`Ures modell azonosito a modelRef-ben: "${modelRef}"`);
|
|
47
|
-
}
|
|
48
|
-
|
|
49
|
-
return { provider: provider as DyFM_AI_Provider, model: model };
|
|
50
|
-
}
|
|
51
|
-
|
|
52
|
-
/**
|
|
53
|
-
* Provider kinyerese a modelRef-bol
|
|
54
|
-
* @param modelRef - formatum: {provider}:{model}
|
|
55
|
-
*/
|
|
56
|
-
static getProvider(modelRef: string): DyFM_AI_Provider {
|
|
57
|
-
return DyFM_AI_ModelRef_Util.parse(modelRef).provider;
|
|
58
|
-
}
|
|
59
|
-
|
|
60
|
-
/**
|
|
61
|
-
* Model kinyerese a modelRef-bol
|
|
62
|
-
* @param modelRef - formatum: {provider}:{model}
|
|
63
|
-
*/
|
|
64
|
-
static getModel(modelRef: string): string {
|
|
65
|
-
return DyFM_AI_ModelRef_Util.parse(modelRef).model;
|
|
66
|
-
}
|
|
67
|
-
|
|
68
|
-
/**
|
|
69
|
-
* Validalas -- ellenorzi, hogy a modelRef megfelel-e a {provider}:{model} formatumnak
|
|
70
|
-
* @param modelRef - a vizsgalando string
|
|
71
|
-
*/
|
|
72
|
-
static isValid(modelRef: string): boolean {
|
|
73
|
-
if (!modelRef) {
|
|
74
|
-
return false;
|
|
75
|
-
}
|
|
76
|
-
|
|
77
|
-
const separatorIndex: number = modelRef.indexOf(DyFM_AI_ModelRef_Util.separator);
|
|
78
|
-
|
|
79
|
-
if (separatorIndex < 0) {
|
|
80
|
-
return false;
|
|
81
|
-
}
|
|
82
|
-
|
|
83
|
-
const provider: string = modelRef.substring(0, separatorIndex);
|
|
84
|
-
const model: string = modelRef.substring(separatorIndex + 1);
|
|
85
|
-
|
|
86
|
-
return DyFM_AI_ModelRef_Util.validProviders.has(provider) && !!model;
|
|
87
|
-
}
|
|
88
|
-
}
|
|
1
|
+
import { DyFM_AI_Provider } from '../_enums/ai-provider.enum';
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* AI modell hivatkozas formatum: {provider}:{model}
|
|
5
|
+
*
|
|
6
|
+
* Peldak: "open-ai:gpt-4o", "anthropic:claude-3-5-sonnet-latest", "fdp-ai:fdp-base-1"
|
|
7
|
+
* A provider resz a DyFM_AI_Provider enum erteke, a model resz a provider sajat modell azonositoja.
|
|
8
|
+
*/
|
|
9
|
+
export class DyFM_AI_ModelRef_Util {
|
|
10
|
+
/** az elvlaszto karakter a provider es modell kozott */
|
|
11
|
+
private static readonly separator: string = ':';
|
|
12
|
+
|
|
13
|
+
/** az osszes ervenyes provider ertek gyorstarhely */
|
|
14
|
+
private static readonly validProviders: Set<string> = new Set(
|
|
15
|
+
Object.values(DyFM_AI_Provider)
|
|
16
|
+
);
|
|
17
|
+
|
|
18
|
+
/**
|
|
19
|
+
* Osszeallitas provider + model -bol
|
|
20
|
+
* @param provider - AI provider enum ertek
|
|
21
|
+
* @param model - provider-specifikus modell azonosito
|
|
22
|
+
*/
|
|
23
|
+
static create(provider: DyFM_AI_Provider, model: string): string {
|
|
24
|
+
return `${provider}${DyFM_AI_ModelRef_Util.separator}${model}`;
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
/**
|
|
28
|
+
* Szetbontas provider + model -re
|
|
29
|
+
* @param modelRef - formatum: {provider}:{model}
|
|
30
|
+
*/
|
|
31
|
+
static parse(modelRef: string): { provider: DyFM_AI_Provider; model: string } {
|
|
32
|
+
const separatorIndex: number = modelRef.indexOf(DyFM_AI_ModelRef_Util.separator);
|
|
33
|
+
|
|
34
|
+
if (separatorIndex < 0) {
|
|
35
|
+
throw new Error(`Ervenytelen modelRef formatum: "${modelRef}" -- hianyzik a "${DyFM_AI_ModelRef_Util.separator}" elvlaszto`);
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
const provider: string = modelRef.substring(0, separatorIndex);
|
|
39
|
+
const model: string = modelRef.substring(separatorIndex + 1);
|
|
40
|
+
|
|
41
|
+
if (!DyFM_AI_ModelRef_Util.validProviders.has(provider)) {
|
|
42
|
+
throw new Error(`Ismeretlen AI provider: "${provider}" a modelRef-ben: "${modelRef}"`);
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
if (!model) {
|
|
46
|
+
throw new Error(`Ures modell azonosito a modelRef-ben: "${modelRef}"`);
|
|
47
|
+
}
|
|
48
|
+
|
|
49
|
+
return { provider: provider as DyFM_AI_Provider, model: model };
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
/**
|
|
53
|
+
* Provider kinyerese a modelRef-bol
|
|
54
|
+
* @param modelRef - formatum: {provider}:{model}
|
|
55
|
+
*/
|
|
56
|
+
static getProvider(modelRef: string): DyFM_AI_Provider {
|
|
57
|
+
return DyFM_AI_ModelRef_Util.parse(modelRef).provider;
|
|
58
|
+
}
|
|
59
|
+
|
|
60
|
+
/**
|
|
61
|
+
* Model kinyerese a modelRef-bol
|
|
62
|
+
* @param modelRef - formatum: {provider}:{model}
|
|
63
|
+
*/
|
|
64
|
+
static getModel(modelRef: string): string {
|
|
65
|
+
return DyFM_AI_ModelRef_Util.parse(modelRef).model;
|
|
66
|
+
}
|
|
67
|
+
|
|
68
|
+
/**
|
|
69
|
+
* Validalas -- ellenorzi, hogy a modelRef megfelel-e a {provider}:{model} formatumnak
|
|
70
|
+
* @param modelRef - a vizsgalando string
|
|
71
|
+
*/
|
|
72
|
+
static isValid(modelRef: string): boolean {
|
|
73
|
+
if (!modelRef) {
|
|
74
|
+
return false;
|
|
75
|
+
}
|
|
76
|
+
|
|
77
|
+
const separatorIndex: number = modelRef.indexOf(DyFM_AI_ModelRef_Util.separator);
|
|
78
|
+
|
|
79
|
+
if (separatorIndex < 0) {
|
|
80
|
+
return false;
|
|
81
|
+
}
|
|
82
|
+
|
|
83
|
+
const provider: string = modelRef.substring(0, separatorIndex);
|
|
84
|
+
const model: string = modelRef.substring(separatorIndex + 1);
|
|
85
|
+
|
|
86
|
+
return DyFM_AI_ModelRef_Util.validProviders.has(provider) && !!model;
|
|
87
|
+
}
|
|
88
|
+
}
|
|
@@ -1,37 +1,37 @@
|
|
|
1
|
-
import { DyFM_AI_ModelRegistry_Util } from './ai-model-registry.util';
|
|
2
|
-
import { DyFM_OAI_Models } from '../_modules/open-ai/_collections/oai-models.const';
|
|
3
|
-
import { DyFM_OAI_Model } from '../_modules/open-ai/_enums/oai-model.enum';
|
|
4
|
-
|
|
5
|
-
describe('| DyFM_AI_ModelRegistry_Util', (): void => {
|
|
6
|
-
|
|
7
|
-
describe('| findModelInfo', (): void => {
|
|
8
|
-
it('| should find a known model by id', (): void => {
|
|
9
|
-
const info = DyFM_AI_ModelRegistry_Util.findModelInfo(DyFM_OAI_Models, DyFM_OAI_Model.gpt55);
|
|
10
|
-
|
|
11
|
-
expect(info).toBeTruthy();
|
|
12
|
-
expect(info?.id).toBe(DyFM_OAI_Model.gpt55);
|
|
13
|
-
});
|
|
14
|
-
|
|
15
|
-
it('| should return undefined for an unknown id', (): void => {
|
|
16
|
-
const info = DyFM_AI_ModelRegistry_Util.findModelInfo(DyFM_OAI_Models, 'no-such-model');
|
|
17
|
-
|
|
18
|
-
expect(info).toBeUndefined();
|
|
19
|
-
});
|
|
20
|
-
});
|
|
21
|
-
|
|
22
|
-
describe('| modelSupportsTools', (): void => {
|
|
23
|
-
it('| should return true for a tool-capable chat model', (): void => {
|
|
24
|
-
expect(DyFM_AI_ModelRegistry_Util.modelSupportsTools(DyFM_OAI_Models, DyFM_OAI_Model.gpt55)).toBe(true);
|
|
25
|
-
});
|
|
26
|
-
|
|
27
|
-
it('| should return false for an embedding model', (): void => {
|
|
28
|
-
expect(
|
|
29
|
-
DyFM_AI_ModelRegistry_Util.modelSupportsTools(DyFM_OAI_Models, DyFM_OAI_Model.textEmbedding_3Small)
|
|
30
|
-
).toBe(false);
|
|
31
|
-
});
|
|
32
|
-
|
|
33
|
-
it('| should return false for an unknown id (no assumption of tool support)', (): void => {
|
|
34
|
-
expect(DyFM_AI_ModelRegistry_Util.modelSupportsTools(DyFM_OAI_Models, 'no-such-model')).toBe(false);
|
|
35
|
-
});
|
|
36
|
-
});
|
|
37
|
-
});
|
|
1
|
+
import { DyFM_AI_ModelRegistry_Util } from './ai-model-registry.util';
|
|
2
|
+
import { DyFM_OAI_Models } from '../_modules/open-ai/_collections/oai-models.const';
|
|
3
|
+
import { DyFM_OAI_Model } from '../_modules/open-ai/_enums/oai-model.enum';
|
|
4
|
+
|
|
5
|
+
describe('| DyFM_AI_ModelRegistry_Util', (): void => {
|
|
6
|
+
|
|
7
|
+
describe('| findModelInfo', (): void => {
|
|
8
|
+
it('| should find a known model by id', (): void => {
|
|
9
|
+
const info = DyFM_AI_ModelRegistry_Util.findModelInfo(DyFM_OAI_Models, DyFM_OAI_Model.gpt55);
|
|
10
|
+
|
|
11
|
+
expect(info).toBeTruthy();
|
|
12
|
+
expect(info?.id).toBe(DyFM_OAI_Model.gpt55);
|
|
13
|
+
});
|
|
14
|
+
|
|
15
|
+
it('| should return undefined for an unknown id', (): void => {
|
|
16
|
+
const info = DyFM_AI_ModelRegistry_Util.findModelInfo(DyFM_OAI_Models, 'no-such-model');
|
|
17
|
+
|
|
18
|
+
expect(info).toBeUndefined();
|
|
19
|
+
});
|
|
20
|
+
});
|
|
21
|
+
|
|
22
|
+
describe('| modelSupportsTools', (): void => {
|
|
23
|
+
it('| should return true for a tool-capable chat model', (): void => {
|
|
24
|
+
expect(DyFM_AI_ModelRegistry_Util.modelSupportsTools(DyFM_OAI_Models, DyFM_OAI_Model.gpt55)).toBe(true);
|
|
25
|
+
});
|
|
26
|
+
|
|
27
|
+
it('| should return false for an embedding model', (): void => {
|
|
28
|
+
expect(
|
|
29
|
+
DyFM_AI_ModelRegistry_Util.modelSupportsTools(DyFM_OAI_Models, DyFM_OAI_Model.textEmbedding_3Small)
|
|
30
|
+
).toBe(false);
|
|
31
|
+
});
|
|
32
|
+
|
|
33
|
+
it('| should return false for an unknown id (no assumption of tool support)', (): void => {
|
|
34
|
+
expect(DyFM_AI_ModelRegistry_Util.modelSupportsTools(DyFM_OAI_Models, 'no-such-model')).toBe(false);
|
|
35
|
+
});
|
|
36
|
+
});
|
|
37
|
+
});
|