@futdevpro/fsm-dynamo 1.16.27 → 1.16.29
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- 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/ai_directives.md +2 -2
- 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/.vscode/settings.json +11 -11
- package/LICENSE +21 -21
- package/__documentations/2026-06-01-fr047-fc-foundation.md +1 -1
- package/__documentations/2026-06-01-fr047-p1-function-calling-vocabulary.md +3 -3
- package/__documentations/2026-06-05-secret-mask-url-cred-any-scheme.md +37 -0
- package/__documentations/2026-06-22-dyfm-error-extends-error.md +109 -109
- package/__documentations/plans/00-MASTER-ngx-models-fsm-merge.md +1 -1
- package/build/_collections/utils/secret-mask.util.d.ts.map +1 -1
- package/build/_collections/utils/secret-mask.util.js +6 -2
- package/build/_collections/utils/secret-mask.util.js.map +1 -1
- package/build/_modules/ai/_models/ai-call-settings.interface.d.ts +1 -1
- package/build/_modules/ai/_models/ai-call-settings.interface.js +1 -1
- package/build/_modules/ai/_models/ai-model-settings-schema.interface.d.ts +1 -1
- package/build/_modules/ai/_modules/anthropic/_collections/aai-models.const.js +1 -1
- package/build/_modules/ai/_modules/fdp-ai/_collections/fdpai-models.const.d.ts +1 -1
- package/build/_modules/ai/_modules/fdp-ai/_collections/fdpai-models.const.js +1 -1
- package/build/_modules/ai/_modules/local-ai/_collections/lai-models.const.d.ts +1 -1
- package/build/_modules/ai/_modules/local-ai/_collections/lai-models.const.js +1 -1
- package/build/_modules/ai/_modules/open-ai/_collections/oai-models.const.js +1 -1
- package/build/_modules/socket/_models/sck-socket-event.control-model.js +1 -1
- package/eslint.config.js +4 -4
- package/nodemon.json +22 -22
- package/package.json +1 -1
- 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 -667
- 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/secret-mask.util.spec.ts +66 -0
- package/src/_collections/utils/secret-mask.util.ts +6 -2
- 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/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 +133 -133
- package/src/_models/control-models/data-model-params.control-model.ts +352 -352
- 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 +210 -210
- package/src/_models/control-models/error.control-model.spec.ts +912 -912
- package/src/_models/control-models/error.control-model.ts +1274 -1274
- 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 +94 -94
- 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 -175
- package/src/_models/data-models/metadata.data-model.spec.ts +184 -184
- package/src/_models/data-models/metadata.data-model.ts +153 -153
- 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 +135 -135
- 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 +40 -40
- 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 +161 -161
- 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 +59 -59
- 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 +404 -404
- 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 +473 -473
- package/src/_modules/data-handler/_models/data-handler.control-model.ts +486 -486
- 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 -104
- package/tsconfig.app.json +12 -12
- package/tsconfig.json +31 -31
- package/tsconfig.test.json +16 -16
- package/tslint.json +153 -153
package/scripts/crypto/README.md
CHANGED
|
@@ -1,114 +1,114 @@
|
|
|
1
|
-
# Crypto Scripts Directory
|
|
2
|
-
|
|
3
|
-
This directory contains scripts and documentation for testing and demonstrating the stability of the DyFM_Crypto implementation.
|
|
4
|
-
|
|
5
|
-
## 📁 Files Overview
|
|
6
|
-
|
|
7
|
-
### 🔥 `stress-test-crypto.js`
|
|
8
|
-
**Comprehensive stress testing script** that validates the crypto implementation under extreme conditions.
|
|
9
|
-
|
|
10
|
-
**What it tests:**
|
|
11
|
-
- ✅ Different data types and sizes (strings, numbers, objects, arrays)
|
|
12
|
-
- ✅ Long-term stability (10,000 iterations)
|
|
13
|
-
- ✅ Database scenarios (MongoDB, PostgreSQL, MySQL)
|
|
14
|
-
- ✅ Network communication (HTTP headers, WebSocket, API responses)
|
|
15
|
-
- ✅ Various keys and configurations
|
|
16
|
-
- ✅ Memory and performance under load
|
|
17
|
-
|
|
18
|
-
**Usage:**
|
|
19
|
-
```bash
|
|
20
|
-
cd NPM-packages/dynamo-fsm
|
|
21
|
-
node scripts/crypto/stress-test-crypto.js
|
|
22
|
-
```
|
|
23
|
-
|
|
24
|
-
**Expected Output:** 100% success rate across all test categories
|
|
25
|
-
|
|
26
|
-
### 🎯 `demo-crypto-stability.js`
|
|
27
|
-
**Demonstration script** showing the deterministic behavior and consistency of the crypto implementation.
|
|
28
|
-
|
|
29
|
-
**What it demonstrates:**
|
|
30
|
-
- ✅ Deterministic encryption (same input = same output)
|
|
31
|
-
- ✅ Decryption consistency
|
|
32
|
-
- ✅ Cross-platform compatibility
|
|
33
|
-
- ✅ Performance characteristics
|
|
34
|
-
- ✅ Configuration variations
|
|
35
|
-
|
|
36
|
-
**Usage:**
|
|
37
|
-
```bash
|
|
38
|
-
cd NPM-packages/dynamo-fsm
|
|
39
|
-
node scripts/crypto/demo-crypto-stability.js
|
|
40
|
-
```
|
|
41
|
-
|
|
42
|
-
**Expected Output:** All demonstrations showing ✅ PASS results
|
|
43
|
-
|
|
44
|
-
### 📚 `CRYPTO-STABILITY-SOLUTION.md`
|
|
45
|
-
**Comprehensive documentation** explaining the crypto stability solution and implementation details.
|
|
46
|
-
|
|
47
|
-
**Contents:**
|
|
48
|
-
- Problem statement and analysis
|
|
49
|
-
- Solution overview and key changes
|
|
50
|
-
- Security vs. stability trade-offs
|
|
51
|
-
- Test coverage details
|
|
52
|
-
- Usage examples
|
|
53
|
-
- Performance characteristics
|
|
54
|
-
- Long-term benefits
|
|
55
|
-
|
|
56
|
-
## 🚀 Quick Start
|
|
57
|
-
|
|
58
|
-
1. **Build the project first:**
|
|
59
|
-
```bash
|
|
60
|
-
npm run build-base
|
|
61
|
-
```
|
|
62
|
-
|
|
63
|
-
2. **Run the demo to see basic functionality:**
|
|
64
|
-
```bash
|
|
65
|
-
node scripts/crypto/demo-crypto-stability.js
|
|
66
|
-
```
|
|
67
|
-
|
|
68
|
-
3. **Run the stress test for comprehensive validation:**
|
|
69
|
-
```bash
|
|
70
|
-
node scripts/crypto/stress-test-crypto.js
|
|
71
|
-
```
|
|
72
|
-
|
|
73
|
-
4. **Read the documentation for detailed understanding:**
|
|
74
|
-
```bash
|
|
75
|
-
# Open CRYPTO-STABILITY-SOLUTION.md in your editor
|
|
76
|
-
```
|
|
77
|
-
|
|
78
|
-
## 🎯 Purpose
|
|
79
|
-
|
|
80
|
-
These scripts were created to address the requirement for **reliable, long-term encryption** that works consistently across different systems and over time. They validate that the simplified crypto implementation prioritizes **stability and cross-platform compatibility** over maximum security.
|
|
81
|
-
|
|
82
|
-
## ✅ Success Criteria
|
|
83
|
-
|
|
84
|
-
- **Stress Test**: 100% pass rate across all categories
|
|
85
|
-
- **Demo**: All demonstrations showing consistent results
|
|
86
|
-
- **Performance**: Stable memory usage and consistent timing
|
|
87
|
-
- **Compatibility**: Works across different data types and configurations
|
|
88
|
-
|
|
89
|
-
## 🔧 Requirements
|
|
90
|
-
|
|
91
|
-
- Node.js (tested with v18+)
|
|
92
|
-
- Built project (`npm run build-base`)
|
|
93
|
-
- CryptoJS dependency (included in package)
|
|
94
|
-
|
|
95
|
-
## 📊 Test Results
|
|
96
|
-
|
|
97
|
-
When all tests pass, you should see:
|
|
98
|
-
```
|
|
99
|
-
🎯 STRESS TEST ÖSSZESÍTÉS:
|
|
100
|
-
========================
|
|
101
|
-
✅ Adattípusok
|
|
102
|
-
✅ Hosszú távú stabilitás
|
|
103
|
-
✅ Adatbázis szimuláció
|
|
104
|
-
✅ Hálózati kommunikáció
|
|
105
|
-
✅ Kulcsok és konfigurációk
|
|
106
|
-
✅ Memória és teljesítmény
|
|
107
|
-
|
|
108
|
-
📊 Eredmény: 6/6 teszt sikeres
|
|
109
|
-
Sikeresség: 100.0%
|
|
110
|
-
|
|
111
|
-
🎉 MINDEN TESZT SIKERES!
|
|
112
|
-
A kriptográfiai implementáció valóban stabil és megbízható!
|
|
113
|
-
Biztonságosan használható hosszú távon különböző rendszerek között.
|
|
1
|
+
# Crypto Scripts Directory
|
|
2
|
+
|
|
3
|
+
This directory contains scripts and documentation for testing and demonstrating the stability of the DyFM_Crypto implementation.
|
|
4
|
+
|
|
5
|
+
## 📁 Files Overview
|
|
6
|
+
|
|
7
|
+
### 🔥 `stress-test-crypto.js`
|
|
8
|
+
**Comprehensive stress testing script** that validates the crypto implementation under extreme conditions.
|
|
9
|
+
|
|
10
|
+
**What it tests:**
|
|
11
|
+
- ✅ Different data types and sizes (strings, numbers, objects, arrays)
|
|
12
|
+
- ✅ Long-term stability (10,000 iterations)
|
|
13
|
+
- ✅ Database scenarios (MongoDB, PostgreSQL, MySQL)
|
|
14
|
+
- ✅ Network communication (HTTP headers, WebSocket, API responses)
|
|
15
|
+
- ✅ Various keys and configurations
|
|
16
|
+
- ✅ Memory and performance under load
|
|
17
|
+
|
|
18
|
+
**Usage:**
|
|
19
|
+
```bash
|
|
20
|
+
cd NPM-packages/dynamo-fsm
|
|
21
|
+
node scripts/crypto/stress-test-crypto.js
|
|
22
|
+
```
|
|
23
|
+
|
|
24
|
+
**Expected Output:** 100% success rate across all test categories
|
|
25
|
+
|
|
26
|
+
### 🎯 `demo-crypto-stability.js`
|
|
27
|
+
**Demonstration script** showing the deterministic behavior and consistency of the crypto implementation.
|
|
28
|
+
|
|
29
|
+
**What it demonstrates:**
|
|
30
|
+
- ✅ Deterministic encryption (same input = same output)
|
|
31
|
+
- ✅ Decryption consistency
|
|
32
|
+
- ✅ Cross-platform compatibility
|
|
33
|
+
- ✅ Performance characteristics
|
|
34
|
+
- ✅ Configuration variations
|
|
35
|
+
|
|
36
|
+
**Usage:**
|
|
37
|
+
```bash
|
|
38
|
+
cd NPM-packages/dynamo-fsm
|
|
39
|
+
node scripts/crypto/demo-crypto-stability.js
|
|
40
|
+
```
|
|
41
|
+
|
|
42
|
+
**Expected Output:** All demonstrations showing ✅ PASS results
|
|
43
|
+
|
|
44
|
+
### 📚 `CRYPTO-STABILITY-SOLUTION.md`
|
|
45
|
+
**Comprehensive documentation** explaining the crypto stability solution and implementation details.
|
|
46
|
+
|
|
47
|
+
**Contents:**
|
|
48
|
+
- Problem statement and analysis
|
|
49
|
+
- Solution overview and key changes
|
|
50
|
+
- Security vs. stability trade-offs
|
|
51
|
+
- Test coverage details
|
|
52
|
+
- Usage examples
|
|
53
|
+
- Performance characteristics
|
|
54
|
+
- Long-term benefits
|
|
55
|
+
|
|
56
|
+
## 🚀 Quick Start
|
|
57
|
+
|
|
58
|
+
1. **Build the project first:**
|
|
59
|
+
```bash
|
|
60
|
+
npm run build-base
|
|
61
|
+
```
|
|
62
|
+
|
|
63
|
+
2. **Run the demo to see basic functionality:**
|
|
64
|
+
```bash
|
|
65
|
+
node scripts/crypto/demo-crypto-stability.js
|
|
66
|
+
```
|
|
67
|
+
|
|
68
|
+
3. **Run the stress test for comprehensive validation:**
|
|
69
|
+
```bash
|
|
70
|
+
node scripts/crypto/stress-test-crypto.js
|
|
71
|
+
```
|
|
72
|
+
|
|
73
|
+
4. **Read the documentation for detailed understanding:**
|
|
74
|
+
```bash
|
|
75
|
+
# Open CRYPTO-STABILITY-SOLUTION.md in your editor
|
|
76
|
+
```
|
|
77
|
+
|
|
78
|
+
## 🎯 Purpose
|
|
79
|
+
|
|
80
|
+
These scripts were created to address the requirement for **reliable, long-term encryption** that works consistently across different systems and over time. They validate that the simplified crypto implementation prioritizes **stability and cross-platform compatibility** over maximum security.
|
|
81
|
+
|
|
82
|
+
## ✅ Success Criteria
|
|
83
|
+
|
|
84
|
+
- **Stress Test**: 100% pass rate across all categories
|
|
85
|
+
- **Demo**: All demonstrations showing consistent results
|
|
86
|
+
- **Performance**: Stable memory usage and consistent timing
|
|
87
|
+
- **Compatibility**: Works across different data types and configurations
|
|
88
|
+
|
|
89
|
+
## 🔧 Requirements
|
|
90
|
+
|
|
91
|
+
- Node.js (tested with v18+)
|
|
92
|
+
- Built project (`npm run build-base`)
|
|
93
|
+
- CryptoJS dependency (included in package)
|
|
94
|
+
|
|
95
|
+
## 📊 Test Results
|
|
96
|
+
|
|
97
|
+
When all tests pass, you should see:
|
|
98
|
+
```
|
|
99
|
+
🎯 STRESS TEST ÖSSZESÍTÉS:
|
|
100
|
+
========================
|
|
101
|
+
✅ Adattípusok
|
|
102
|
+
✅ Hosszú távú stabilitás
|
|
103
|
+
✅ Adatbázis szimuláció
|
|
104
|
+
✅ Hálózati kommunikáció
|
|
105
|
+
✅ Kulcsok és konfigurációk
|
|
106
|
+
✅ Memória és teljesítmény
|
|
107
|
+
|
|
108
|
+
📊 Eredmény: 6/6 teszt sikeres
|
|
109
|
+
Sikeresség: 100.0%
|
|
110
|
+
|
|
111
|
+
🎉 MINDEN TESZT SIKERES!
|
|
112
|
+
A kriptográfiai implementáció valóban stabil és megbízható!
|
|
113
|
+
Biztonságosan használható hosszú távon különböző rendszerek között.
|
|
114
114
|
```
|
|
@@ -1,121 +1,121 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Crypto Stability Demonstration
|
|
3
|
-
* Shows how our simplified encryption maintains consistency across multiple calls
|
|
4
|
-
* and different data types for long-term reliability
|
|
5
|
-
*/
|
|
6
|
-
|
|
7
|
-
const { DyFM_Crypto } = require('../../build/_modules/crypto/index.js');
|
|
8
|
-
|
|
9
|
-
console.log('🔐 Crypto Stability Demonstration\n');
|
|
10
|
-
|
|
11
|
-
// Test 1: Deterministic encryption consistency
|
|
12
|
-
console.log('1️⃣ Testing Deterministic Encryption Consistency:');
|
|
13
|
-
const testData = { id: 1, name: 'test', timestamp: '2024-01-01T00:00:00Z' };
|
|
14
|
-
const key = 'stable-test-key-123';
|
|
15
|
-
|
|
16
|
-
const encrypted1 = DyFM_Crypto.encrypt(testData, key);
|
|
17
|
-
const encrypted2 = DyFM_Crypto.encrypt(testData, key);
|
|
18
|
-
const encrypted3 = DyFM_Crypto.encrypt(testData, key);
|
|
19
|
-
|
|
20
|
-
console.log(` Same data encrypted 3 times:`);
|
|
21
|
-
console.log(` Encrypted 1: ${encrypted1.substring(0, 50)}...`);
|
|
22
|
-
console.log(` Encrypted 2: ${encrypted2.substring(0, 50)}...`);
|
|
23
|
-
console.log(` Encrypted 3: ${encrypted3.substring(0, 50)}...`);
|
|
24
|
-
console.log(` All identical: ${encrypted1 === encrypted2 && encrypted2 === encrypted3 ? '✅ YES' : '❌ NO'}`);
|
|
25
|
-
|
|
26
|
-
// Test 2: Decryption consistency
|
|
27
|
-
console.log('\n2️⃣ Testing Decryption Consistency:');
|
|
28
|
-
const decrypted1 = DyFM_Crypto.decrypt(encrypted1, key);
|
|
29
|
-
const decrypted2 = DyFM_Crypto.decrypt(encrypted2, key);
|
|
30
|
-
const decrypted3 = DyFM_Crypto.decrypt(encrypted3, key);
|
|
31
|
-
|
|
32
|
-
console.log(` Decrypted 1: ${JSON.stringify(decrypted1)}`);
|
|
33
|
-
console.log(` Decrypted 2: ${JSON.stringify(decrypted2)}`);
|
|
34
|
-
console.log(` Decrypted 3: ${JSON.stringify(decrypted3)}`);
|
|
35
|
-
console.log(` All match original: ${JSON.stringify(decrypted1) === JSON.stringify(testData) ? '✅ YES' : '❌ NO'}`);
|
|
36
|
-
|
|
37
|
-
// Test 3: Different data types consistency
|
|
38
|
-
console.log('\n3️⃣ Testing Different Data Types Consistency:');
|
|
39
|
-
const testCases = [
|
|
40
|
-
{ data: { id: 1, name: 'simple' }, key: 'key1' },
|
|
41
|
-
{ data: 'plain string', key: 'key2' },
|
|
42
|
-
{ data: [1, 2, 3, 'array'], key: 'key3' },
|
|
43
|
-
{ data: { nested: { deep: { value: true } } }, key: 'key4' }
|
|
44
|
-
];
|
|
45
|
-
|
|
46
|
-
testCases.forEach(({ data, key }, index) => {
|
|
47
|
-
const encrypted1 = DyFM_Crypto.encrypt(data, key);
|
|
48
|
-
const encrypted2 = DyFM_Crypto.encrypt(data, key);
|
|
49
|
-
const isConsistent = encrypted1 === encrypted2;
|
|
50
|
-
console.log(` Test ${index + 1}: ${isConsistent ? '✅' : '❌'} ${typeof data === 'string' ? 'String' : 'Object'}`);
|
|
51
|
-
});
|
|
52
|
-
|
|
53
|
-
// Test 4: Performance and memory stability
|
|
54
|
-
console.log('\n4️⃣ Testing Performance and Memory Stability:');
|
|
55
|
-
const performanceData = { id: 1, name: 'performance-test' };
|
|
56
|
-
const performanceKey = 'performance-key';
|
|
57
|
-
|
|
58
|
-
const startTime = Date.now();
|
|
59
|
-
let allConsistent = true;
|
|
60
|
-
|
|
61
|
-
// Perform 1000 encryption/decryption cycles
|
|
62
|
-
for (let i = 0; i < 1000; i++) {
|
|
63
|
-
const encrypted = DyFM_Crypto.encrypt(performanceData, performanceKey);
|
|
64
|
-
const decrypted = DyFM_Crypto.decrypt(encrypted, performanceKey);
|
|
65
|
-
|
|
66
|
-
if (JSON.stringify(decrypted) !== JSON.stringify(performanceData)) {
|
|
67
|
-
allConsistent = false;
|
|
68
|
-
break;
|
|
69
|
-
}
|
|
70
|
-
}
|
|
71
|
-
|
|
72
|
-
const endTime = Date.now();
|
|
73
|
-
const duration = endTime - startTime;
|
|
74
|
-
|
|
75
|
-
console.log(` 1000 cycles completed in: ${duration}ms`);
|
|
76
|
-
console.log(` All cycles consistent: ${allConsistent ? '✅ YES' : '❌ NO'}`);
|
|
77
|
-
|
|
78
|
-
// Test 5: Cross-platform compatibility simulation
|
|
79
|
-
console.log('\n5️⃣ Testing Cross-Platform Compatibility:');
|
|
80
|
-
const unicodeData = {
|
|
81
|
-
hungarian: 'árvíztűrő tükörfúrógép',
|
|
82
|
-
chinese: '你好世界',
|
|
83
|
-
emoji: '🚀💻🔒',
|
|
84
|
-
special: '!@#$%^&*()_+-=[]{}|;:,.<>?'
|
|
85
|
-
};
|
|
86
|
-
const unicodeKey = 'unicode-test-key';
|
|
87
|
-
|
|
88
|
-
const unicodeEncrypted1 = DyFM_Crypto.encrypt(unicodeData, unicodeKey);
|
|
89
|
-
const unicodeEncrypted2 = DyFM_Crypto.encrypt(unicodeData, unicodeKey);
|
|
90
|
-
const unicodeDecrypted = DyFM_Crypto.decrypt(unicodeEncrypted1, unicodeKey);
|
|
91
|
-
|
|
92
|
-
console.log(` Unicode data encrypted consistently: ${unicodeEncrypted1 === unicodeEncrypted2 ? '✅ YES' : '❌ NO'}`);
|
|
93
|
-
console.log(` Unicode data decrypted correctly: ${JSON.stringify(unicodeDecrypted) === JSON.stringify(unicodeData) ? '✅ YES' : '❌ NO'}`);
|
|
94
|
-
|
|
95
|
-
// Test 6: Configuration stability
|
|
96
|
-
console.log('\n6️⃣ Testing Configuration Stability:');
|
|
97
|
-
const configData = { id: 1, name: 'config-test' };
|
|
98
|
-
const configKey = 'config-test-key';
|
|
99
|
-
|
|
100
|
-
// Test with default config
|
|
101
|
-
const defaultEncrypted = DyFM_Crypto.encrypt(configData, configKey);
|
|
102
|
-
const defaultDecrypted = DyFM_Crypto.decrypt(defaultEncrypted, configKey);
|
|
103
|
-
|
|
104
|
-
// Test with custom config
|
|
105
|
-
const customConfig = { keyIterations: 500, keySize: 6 };
|
|
106
|
-
const customEncrypted = DyFM_Crypto.encrypt(configData, configKey, customConfig);
|
|
107
|
-
const customDecrypted = DyFM_Crypto.decrypt(customEncrypted, configKey, customConfig);
|
|
108
|
-
|
|
109
|
-
console.log(` Default config works: ${JSON.stringify(defaultDecrypted) === JSON.stringify(configData) ? '✅ YES' : '❌ NO'}`);
|
|
110
|
-
console.log(` Custom config works: ${JSON.stringify(customDecrypted) === JSON.stringify(configData) ? '✅ YES' : '❌ NO'}`);
|
|
111
|
-
console.log(` Different configs produce different results: ${defaultEncrypted !== customEncrypted ? '✅ YES' : '❌ NO'}`);
|
|
112
|
-
|
|
113
|
-
console.log('\n🎯 Summary:');
|
|
114
|
-
console.log(' Our simplified encryption implementation prioritizes:');
|
|
115
|
-
console.log(' ✅ Deterministic results (same input = same output)');
|
|
116
|
-
console.log(' ✅ Cross-platform compatibility');
|
|
117
|
-
console.log(' ✅ Long-term stability');
|
|
118
|
-
console.log(' ✅ Performance consistency');
|
|
119
|
-
console.log(' ✅ Memory efficiency');
|
|
120
|
-
console.log('\n This makes it ideal for systems that need reliable encryption');
|
|
1
|
+
/**
|
|
2
|
+
* Crypto Stability Demonstration
|
|
3
|
+
* Shows how our simplified encryption maintains consistency across multiple calls
|
|
4
|
+
* and different data types for long-term reliability
|
|
5
|
+
*/
|
|
6
|
+
|
|
7
|
+
const { DyFM_Crypto } = require('../../build/_modules/crypto/index.js');
|
|
8
|
+
|
|
9
|
+
console.log('🔐 Crypto Stability Demonstration\n');
|
|
10
|
+
|
|
11
|
+
// Test 1: Deterministic encryption consistency
|
|
12
|
+
console.log('1️⃣ Testing Deterministic Encryption Consistency:');
|
|
13
|
+
const testData = { id: 1, name: 'test', timestamp: '2024-01-01T00:00:00Z' };
|
|
14
|
+
const key = 'stable-test-key-123';
|
|
15
|
+
|
|
16
|
+
const encrypted1 = DyFM_Crypto.encrypt(testData, key);
|
|
17
|
+
const encrypted2 = DyFM_Crypto.encrypt(testData, key);
|
|
18
|
+
const encrypted3 = DyFM_Crypto.encrypt(testData, key);
|
|
19
|
+
|
|
20
|
+
console.log(` Same data encrypted 3 times:`);
|
|
21
|
+
console.log(` Encrypted 1: ${encrypted1.substring(0, 50)}...`);
|
|
22
|
+
console.log(` Encrypted 2: ${encrypted2.substring(0, 50)}...`);
|
|
23
|
+
console.log(` Encrypted 3: ${encrypted3.substring(0, 50)}...`);
|
|
24
|
+
console.log(` All identical: ${encrypted1 === encrypted2 && encrypted2 === encrypted3 ? '✅ YES' : '❌ NO'}`);
|
|
25
|
+
|
|
26
|
+
// Test 2: Decryption consistency
|
|
27
|
+
console.log('\n2️⃣ Testing Decryption Consistency:');
|
|
28
|
+
const decrypted1 = DyFM_Crypto.decrypt(encrypted1, key);
|
|
29
|
+
const decrypted2 = DyFM_Crypto.decrypt(encrypted2, key);
|
|
30
|
+
const decrypted3 = DyFM_Crypto.decrypt(encrypted3, key);
|
|
31
|
+
|
|
32
|
+
console.log(` Decrypted 1: ${JSON.stringify(decrypted1)}`);
|
|
33
|
+
console.log(` Decrypted 2: ${JSON.stringify(decrypted2)}`);
|
|
34
|
+
console.log(` Decrypted 3: ${JSON.stringify(decrypted3)}`);
|
|
35
|
+
console.log(` All match original: ${JSON.stringify(decrypted1) === JSON.stringify(testData) ? '✅ YES' : '❌ NO'}`);
|
|
36
|
+
|
|
37
|
+
// Test 3: Different data types consistency
|
|
38
|
+
console.log('\n3️⃣ Testing Different Data Types Consistency:');
|
|
39
|
+
const testCases = [
|
|
40
|
+
{ data: { id: 1, name: 'simple' }, key: 'key1' },
|
|
41
|
+
{ data: 'plain string', key: 'key2' },
|
|
42
|
+
{ data: [1, 2, 3, 'array'], key: 'key3' },
|
|
43
|
+
{ data: { nested: { deep: { value: true } } }, key: 'key4' }
|
|
44
|
+
];
|
|
45
|
+
|
|
46
|
+
testCases.forEach(({ data, key }, index) => {
|
|
47
|
+
const encrypted1 = DyFM_Crypto.encrypt(data, key);
|
|
48
|
+
const encrypted2 = DyFM_Crypto.encrypt(data, key);
|
|
49
|
+
const isConsistent = encrypted1 === encrypted2;
|
|
50
|
+
console.log(` Test ${index + 1}: ${isConsistent ? '✅' : '❌'} ${typeof data === 'string' ? 'String' : 'Object'}`);
|
|
51
|
+
});
|
|
52
|
+
|
|
53
|
+
// Test 4: Performance and memory stability
|
|
54
|
+
console.log('\n4️⃣ Testing Performance and Memory Stability:');
|
|
55
|
+
const performanceData = { id: 1, name: 'performance-test' };
|
|
56
|
+
const performanceKey = 'performance-key';
|
|
57
|
+
|
|
58
|
+
const startTime = Date.now();
|
|
59
|
+
let allConsistent = true;
|
|
60
|
+
|
|
61
|
+
// Perform 1000 encryption/decryption cycles
|
|
62
|
+
for (let i = 0; i < 1000; i++) {
|
|
63
|
+
const encrypted = DyFM_Crypto.encrypt(performanceData, performanceKey);
|
|
64
|
+
const decrypted = DyFM_Crypto.decrypt(encrypted, performanceKey);
|
|
65
|
+
|
|
66
|
+
if (JSON.stringify(decrypted) !== JSON.stringify(performanceData)) {
|
|
67
|
+
allConsistent = false;
|
|
68
|
+
break;
|
|
69
|
+
}
|
|
70
|
+
}
|
|
71
|
+
|
|
72
|
+
const endTime = Date.now();
|
|
73
|
+
const duration = endTime - startTime;
|
|
74
|
+
|
|
75
|
+
console.log(` 1000 cycles completed in: ${duration}ms`);
|
|
76
|
+
console.log(` All cycles consistent: ${allConsistent ? '✅ YES' : '❌ NO'}`);
|
|
77
|
+
|
|
78
|
+
// Test 5: Cross-platform compatibility simulation
|
|
79
|
+
console.log('\n5️⃣ Testing Cross-Platform Compatibility:');
|
|
80
|
+
const unicodeData = {
|
|
81
|
+
hungarian: 'árvíztűrő tükörfúrógép',
|
|
82
|
+
chinese: '你好世界',
|
|
83
|
+
emoji: '🚀💻🔒',
|
|
84
|
+
special: '!@#$%^&*()_+-=[]{}|;:,.<>?'
|
|
85
|
+
};
|
|
86
|
+
const unicodeKey = 'unicode-test-key';
|
|
87
|
+
|
|
88
|
+
const unicodeEncrypted1 = DyFM_Crypto.encrypt(unicodeData, unicodeKey);
|
|
89
|
+
const unicodeEncrypted2 = DyFM_Crypto.encrypt(unicodeData, unicodeKey);
|
|
90
|
+
const unicodeDecrypted = DyFM_Crypto.decrypt(unicodeEncrypted1, unicodeKey);
|
|
91
|
+
|
|
92
|
+
console.log(` Unicode data encrypted consistently: ${unicodeEncrypted1 === unicodeEncrypted2 ? '✅ YES' : '❌ NO'}`);
|
|
93
|
+
console.log(` Unicode data decrypted correctly: ${JSON.stringify(unicodeDecrypted) === JSON.stringify(unicodeData) ? '✅ YES' : '❌ NO'}`);
|
|
94
|
+
|
|
95
|
+
// Test 6: Configuration stability
|
|
96
|
+
console.log('\n6️⃣ Testing Configuration Stability:');
|
|
97
|
+
const configData = { id: 1, name: 'config-test' };
|
|
98
|
+
const configKey = 'config-test-key';
|
|
99
|
+
|
|
100
|
+
// Test with default config
|
|
101
|
+
const defaultEncrypted = DyFM_Crypto.encrypt(configData, configKey);
|
|
102
|
+
const defaultDecrypted = DyFM_Crypto.decrypt(defaultEncrypted, configKey);
|
|
103
|
+
|
|
104
|
+
// Test with custom config
|
|
105
|
+
const customConfig = { keyIterations: 500, keySize: 6 };
|
|
106
|
+
const customEncrypted = DyFM_Crypto.encrypt(configData, configKey, customConfig);
|
|
107
|
+
const customDecrypted = DyFM_Crypto.decrypt(customEncrypted, configKey, customConfig);
|
|
108
|
+
|
|
109
|
+
console.log(` Default config works: ${JSON.stringify(defaultDecrypted) === JSON.stringify(configData) ? '✅ YES' : '❌ NO'}`);
|
|
110
|
+
console.log(` Custom config works: ${JSON.stringify(customDecrypted) === JSON.stringify(configData) ? '✅ YES' : '❌ NO'}`);
|
|
111
|
+
console.log(` Different configs produce different results: ${defaultEncrypted !== customEncrypted ? '✅ YES' : '❌ NO'}`);
|
|
112
|
+
|
|
113
|
+
console.log('\n🎯 Summary:');
|
|
114
|
+
console.log(' Our simplified encryption implementation prioritizes:');
|
|
115
|
+
console.log(' ✅ Deterministic results (same input = same output)');
|
|
116
|
+
console.log(' ✅ Cross-platform compatibility');
|
|
117
|
+
console.log(' ✅ Long-term stability');
|
|
118
|
+
console.log(' ✅ Performance consistency');
|
|
119
|
+
console.log(' ✅ Memory efficiency');
|
|
120
|
+
console.log('\n This makes it ideal for systems that need reliable encryption');
|
|
121
121
|
console.log(' that works consistently across different environments and over time.');
|