@mojaloop/sdk-scheme-adapter 24.12.0 → 24.13.0
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/.grype.yaml +5 -2
- package/.yarn/cache/{@apidevtools-json-schema-ref-parser-npm-11.9.1-affeb92b0d-d8ebea686e.zip → @apidevtools-json-schema-ref-parser-npm-11.9.3-539c6e355d-3d3618dbb6.zip} +0 -0
- package/.yarn/cache/{@babel-compat-data-npm-7.28.0-04d8eecea9-1a56a5e48c.zip → @babel-compat-data-npm-7.28.4-fdb823dde5-95b7864e6b.zip} +0 -0
- package/.yarn/cache/{@babel-helper-wrap-function-npm-7.27.1-7c7bc9ac83-effa5ba173.zip → @babel-helper-wrap-function-npm-7.28.3-abf7c7bf1f-a5ed5fe7b8.zip} +0 -0
- package/.yarn/cache/{@babel-plugin-syntax-jsx-npm-7.25.9-3df022f433-bb609d1ffb.zip → @babel-plugin-syntax-jsx-npm-7.27.1-2f6039b8f0-c6d1324cff.zip} +0 -0
- package/.yarn/cache/{@babel-plugin-syntax-typescript-npm-7.25.9-5201e4ba77-0e9821e8ba.zip → @babel-plugin-syntax-typescript-npm-7.27.1-5d60015570-87836f7e32.zip} +0 -0
- package/.yarn/cache/{@babel-plugin-transform-block-scoping-npm-7.28.0-a08eef2c22-eefa0d0b3c.zip → @babel-plugin-transform-block-scoping-npm-7.28.4-f325d4f6d4-0848c681b0.zip} +0 -0
- package/.yarn/cache/{@babel-plugin-transform-classes-npm-7.28.3-22fe11bcef-0aefcabe68.zip → @babel-plugin-transform-classes-npm-7.28.4-f261201c4b-1f8423d0ba.zip} +0 -0
- package/.yarn/cache/{@babel-plugin-transform-object-rest-spread-npm-7.28.0-7aa5a9958a-55d37dbc0d.zip → @babel-plugin-transform-object-rest-spread-npm-7.28.4-bc45781f0c-aebe464e36.zip} +0 -0
- package/.yarn/cache/@babel-plugin-transform-regenerator-npm-7.28.4-13f2152eb3-24da51a659.zip +0 -0
- package/.yarn/cache/{@dabh-diagnostics-npm-2.0.3-0f2cd64f24-14e449a7f4.zip → @dabh-diagnostics-npm-2.0.8-15e79eab9c-ac2267a4ee.zip} +0 -0
- package/.yarn/cache/@eslint-community-eslint-utils-npm-4.9.0-fe45a08548-89b1eb3137.zip +0 -0
- package/.yarn/cache/@eslint-compat-npm-1.4.0-2352faedcd-204f80bfde.zip +0 -0
- package/.yarn/cache/@eslint-core-npm-0.13.0-53447b33b9-737fd1c237.zip +0 -0
- package/.yarn/cache/@eslint-core-npm-0.16.0-ceefcac859-3cea45971b.zip +0 -0
- package/.yarn/cache/{@eslint-eslintrc-npm-3.3.0-72b2f21ce8-f17d232fc4.zip → @eslint-eslintrc-npm-3.3.1-c3967fc0c3-cc240addba.zip} +0 -0
- package/.yarn/cache/{@eslint-plugin-kit-npm-0.2.7-c313bcf919-e932da4ff9.zip → @eslint-plugin-kit-npm-0.2.8-b9d7e2ad65-2e7fe7a88e.zip} +0 -0
- package/.yarn/cache/@grpc-grpc-js-npm-1.14.0-23f158f5eb-e1f7d15dde.zip +0 -0
- package/.yarn/cache/@hapi-teamwork-npm-6.0.1-fd291504d2-1f83fe93c7.zip +0 -0
- package/.yarn/cache/@hapi-tlds-npm-1.1.3-cc5bc7f0cc-4e1a3fcec7.zip +0 -0
- package/.yarn/cache/{@humanfs-node-npm-0.16.6-6ee2cad587-6d43c67274.zip → @humanfs-node-npm-0.16.7-fa16bdb590-b3633d3dce.zip} +0 -0
- package/.yarn/cache/@humanwhocodes-retry-npm-0.4.3-a8d7ca1663-0b32cfd362.zip +0 -0
- package/.yarn/cache/{@ioredis-commands-npm-1.2.0-47541de88b-a8253c9539.zip → @ioredis-commands-npm-1.4.0-3a627ac2f0-ea299f2205.zip} +0 -0
- package/.yarn/cache/{@jest-diff-sequences-npm-30.0.0-a54cd58e53-aed609b228.zip → @jest-diff-sequences-npm-30.0.1-73f863a027-0ddb7c7ba9.zip} +0 -0
- package/.yarn/cache/{@jest-expect-utils-npm-30.0.0-bddc827ac5-442b926f88.zip → @jest-expect-utils-npm-30.2.0-d624ff36ec-f2442f1bce.zip} +0 -0
- package/.yarn/cache/@jest-get-type-npm-30.1.0-1ad604ab7f-e2a95fbb49.zip +0 -0
- package/.yarn/cache/@jest-transform-npm-30.2.0-e241ad53a4-c75d72d524.zip +0 -0
- package/.yarn/cache/@jest-types-npm-30.2.0-5ae4869189-f50fcaea56.zip +0 -0
- package/.yarn/cache/{@jridgewell-gen-mapping-npm-0.3.12-540cb6029b-1516675315.zip → @jridgewell-gen-mapping-npm-0.3.13-9bd96ac800-902f8261dc.zip} +0 -0
- package/.yarn/cache/{@jridgewell-sourcemap-codec-npm-1.5.4-0708d1c59d-f677787f52.zip → @jridgewell-sourcemap-codec-npm-1.5.5-5189d9fc79-5d9d207b46.zip} +0 -0
- package/.yarn/cache/@jridgewell-trace-mapping-npm-0.3.31-1ae81d75ac-da0283270e.zip +0 -0
- package/.yarn/cache/{@mojaloop-central-services-error-handling-npm-13.1.2-680b8f106e-1357eefd24.zip → @mojaloop-central-services-error-handling-npm-13.1.3-d798c7ad31-4eae5147c7.zip} +0 -0
- package/.yarn/cache/{@mojaloop-central-services-metrics-npm-12.7.1-a82eece473-0aa6374c0e.zip → @mojaloop-central-services-metrics-npm-12.8.0-e245e8b50d-627dc16865.zip} +0 -0
- package/.yarn/cache/{@mojaloop-central-services-shared-npm-18.33.3-676ab2f4ed-bed53621b8.zip → @mojaloop-central-services-shared-npm-18.34.0-98deaad7cb-660f407a57.zip} +0 -0
- package/.yarn/cache/{@mojaloop-event-sdk-npm-14.7.0-dfe9fa1933-59adbf133d.zip → @mojaloop-event-sdk-npm-14.8.0-c3e8d5a581-bc2be19e16.zip} +0 -0
- package/.yarn/cache/@mojaloop-inter-scheme-proxy-cache-lib-npm-2.7.0-84455815f8-7748014a4c.zip +0 -0
- package/.yarn/cache/@mojaloop-ml-number-npm-11.4.0-14b3424a94-f6e9fde53e.zip +0 -0
- package/.yarn/cache/@mojaloop-platform-shared-lib-nodejs-kafka-client-lib-npm-0.5.20-dc351718a9-e944d3f943.zip +0 -0
- package/.yarn/cache/{@mojaloop-sdk-standard-components-npm-19.17.0-0519957b97-95fef19fc4.zip → @mojaloop-sdk-standard-components-npm-19.18.0-c3cfe8de77-62ddc3ea84.zip} +0 -0
- package/.yarn/cache/{@redis-bloom-npm-5.8.2-1972c61f30-99ec4f127b.zip → @redis-bloom-npm-5.8.3-892faaab15-031bfb7d85.zip} +0 -0
- package/.yarn/cache/{@redis-client-npm-5.8.2-68c2d31768-653ba2d0ef.zip → @redis-client-npm-5.8.3-acc7573cc3-402e5f4520.zip} +0 -0
- package/.yarn/cache/{@redis-json-npm-5.8.2-99129c657f-2877cd93b7.zip → @redis-json-npm-5.8.3-bbddd9239e-fc81b7e638.zip} +0 -0
- package/.yarn/cache/{@redis-search-npm-5.8.2-c7014522ef-6cc0499a11.zip → @redis-search-npm-5.8.3-07f03dcedf-74c4ef9d3f.zip} +0 -0
- package/.yarn/cache/{@redis-time-series-npm-5.8.2-94d4c69124-a775817380.zip → @redis-time-series-npm-5.8.3-a029734baa-20ab29dfe1.zip} +0 -0
- package/.yarn/cache/{@redocly-ajv-npm-8.11.2-edb76e81a5-75d6d8bcc2.zip → @redocly-ajv-npm-8.11.3-90d671b655-da5946f032.zip} +0 -0
- package/.yarn/cache/{@sinclair-typebox-npm-0.34.35-4698edbad1-4b50006c80.zip → @sinclair-typebox-npm-0.34.41-602ecca817-5c04a7f421.zip} +0 -0
- package/.yarn/cache/@so-ric-colorspace-npm-1.1.6-4fa5d728ca-fc3285e5cb.zip +0 -0
- package/.yarn/cache/{@types-babel__generator-npm-7.6.8-61be1197d9-b53c215e90.zip → @types-babel__generator-npm-7.27.0-a5af33547a-f572e67a9a.zip} +0 -0
- package/.yarn/cache/@types-babel__traverse-npm-7.28.0-44a48c1b20-371c5e1b40.zip +0 -0
- package/.yarn/cache/@types-body-parser-npm-1.19.6-363c879d4f-33041e88ea.zip +0 -0
- package/.yarn/cache/@types-content-disposition-npm-0.5.9-0a4389ae4e-d895703c00.zip +0 -0
- package/.yarn/cache/@types-cookies-npm-0.9.1-d956f351a3-512635d55e.zip +0 -0
- package/.yarn/cache/@types-estree-npm-1.0.8-2195bac6d6-25a4c16a67.zip +0 -0
- package/.yarn/cache/@types-express-serve-static-core-npm-5.0.7-4a816a369e-74c69797f8.zip +0 -0
- package/.yarn/cache/@types-http-errors-npm-2.0.5-fc57abf6db-a88da66936.zip +0 -0
- package/.yarn/cache/@types-koa-npm-3.0.0-8807854f00-db461810b7.zip +0 -0
- package/.yarn/cache/{@types-lodash-npm-4.17.15-0a7d38c4ec-27b348b597.zip → @types-lodash-npm-4.17.20-d7ed6ac7af-8cd8ad3bd7.zip} +0 -0
- package/.yarn/cache/{@types-node-npm-24.5.2-7697d08520-a497aea88a.zip → @types-node-npm-24.6.2-22876fbd21-8d1e64b37a.zip} +0 -0
- package/.yarn/cache/@types-node-npm-24.7.0-fa253cad8d-db0b77e9b1.zip +0 -0
- package/.yarn/cache/@types-qs-npm-6.14.0-e27d9ca044-1909205514.zip +0 -0
- package/.yarn/cache/@types-semver-npm-7.7.1-1a46d6e2dd-8f09e7e6ca.zip +0 -0
- package/.yarn/cache/{@types-send-npm-0.17.4-9d7c55577f-28320a2aa1.zip → @types-send-npm-0.17.5-5278cc54b0-b68ae8f9ba.zip} +0 -0
- package/.yarn/cache/{@types-serve-static-npm-1.15.7-d4eef0bd1a-c5a7171d56.zip → @types-serve-static-npm-1.15.8-1f955e73b5-c031f870df.zip} +0 -0
- package/.yarn/cache/{@typescript-eslint-eslint-plugin-npm-8.44.0-3a3d745bcf-38d0491d96.zip → @typescript-eslint-eslint-plugin-npm-8.45.0-92bb8b7596-6d31dbd335.zip} +0 -0
- package/.yarn/cache/@typescript-eslint-parser-npm-8.45.0-9132cc3400-4f8b7c73ae.zip +0 -0
- package/.yarn/cache/@typescript-eslint-project-service-npm-8.45.0-a8f5eebf6e-919c8260da.zip +0 -0
- package/.yarn/cache/@typescript-eslint-scope-manager-npm-8.45.0-ee984aba27-e45d63a010.zip +0 -0
- package/.yarn/cache/@typescript-eslint-tsconfig-utils-npm-8.45.0-c8d2a74220-91696bbc34.zip +0 -0
- package/.yarn/cache/{@typescript-eslint-type-utils-npm-8.44.0-4b4c61deae-513c6d3719.zip → @typescript-eslint-type-utils-npm-8.45.0-7a1226a6e4-81017b3f47.zip} +0 -0
- package/.yarn/cache/@typescript-eslint-types-npm-8.45.0-48b82801f4-889ded2b9b.zip +0 -0
- package/.yarn/cache/@typescript-eslint-typescript-estree-npm-8.45.0-e7f29f17ac-2fb4e63ad6.zip +0 -0
- package/.yarn/cache/@typescript-eslint-utils-npm-8.45.0-ae9cdb989e-9e675a0da4.zip +0 -0
- package/.yarn/cache/{@typescript-eslint-visitor-keys-npm-8.38.0-533dcf6a78-a95a535146.zip → @typescript-eslint-visitor-keys-npm-8.45.0-2626ce19ce-8ae7e19c69.zip} +0 -0
- package/.yarn/cache/abbrev-npm-3.0.1-a34d600e50-ebd2c149dd.zip +0 -0
- package/.yarn/cache/acorn-npm-8.15.0-0764cf600e-77f2de5051.zip +0 -0
- package/.yarn/cache/agent-base-npm-7.1.4-cb8b4604d5-79bef16724.zip +0 -0
- package/.yarn/cache/ansi-regex-npm-6.2.2-f2d6691eb1-9b17ce2c6d.zip +0 -0
- package/.yarn/cache/ansi-styles-npm-6.2.3-6fc7ca2bf5-c49dad7639.zip +0 -0
- package/.yarn/cache/{aproba-npm-2.0.0-8716bcfde6-c2b9a63129.zip → aproba-npm-2.1.0-6cb03e605b-cb0e335ac3.zip} +0 -0
- package/.yarn/cache/async-generator-function-npm-1.0.0-14cf981d13-3d49e7acbe.zip +0 -0
- package/.yarn/cache/babel-jest-npm-30.2.0-c2df62d909-4c7351a366.zip +0 -0
- package/.yarn/cache/babel-plugin-istanbul-npm-7.0.1-4d31ae2722-fe9f865f97.zip +0 -0
- package/.yarn/cache/babel-plugin-jest-hoist-npm-30.2.0-6573d8bab9-360e87a9aa.zip +0 -0
- package/.yarn/cache/{babel-preset-current-node-syntax-npm-1.1.0-a3b84fe89f-46331111ae.zip → babel-preset-current-node-syntax-npm-1.2.0-a954a29b2b-3608fa671c.zip} +0 -0
- package/.yarn/cache/babel-preset-jest-npm-30.2.0-5a82b08b87-f75e155a8c.zip +0 -0
- package/.yarn/cache/baseline-browser-mapping-npm-2.8.11-ec62cbaabe-2325115f1c.zip +0 -0
- package/.yarn/cache/browserslist-npm-4.26.3-a3d5d315b1-49add06fd7.zip +0 -0
- package/.yarn/cache/caniuse-lite-npm-1.0.30001747-f845e7e6c5-b101dc4b13.zip +0 -0
- package/.yarn/cache/{chalk-npm-5.4.1-2f3fe4660a-29df3ffcdf.zip → chalk-npm-5.6.2-ecbd482482-1b2f48f6fb.zip} +0 -0
- package/.yarn/cache/cheerio-npm-1.1.2-b0fb353132-6b654bf5a3.zip +0 -0
- package/.yarn/cache/ci-info-npm-4.3.0-2894137978-01e359032a.zip +0 -0
- package/.yarn/cache/color-convert-npm-3.1.2-eca60588e1-6731d4d4e1.zip +0 -0
- package/.yarn/cache/color-name-npm-2.0.2-7e9a2237f7-58e5fa3853.zip +0 -0
- package/.yarn/cache/color-npm-5.0.2-3558f1a2be-2574e20a8a.zip +0 -0
- package/.yarn/cache/color-string-npm-2.1.2-7ceaab0b60-9f2fdf5a29.zip +0 -0
- package/.yarn/cache/compression-npm-1.8.1-e34a5db404-e7552bfbd7.zip +0 -0
- package/.yarn/cache/core-js-compat-npm-3.45.1-3c70e031ab-a6eb757ccf.zip +0 -0
- package/.yarn/cache/css-select-npm-5.2.2-6385fe3687-ebb6a88446.zip +0 -0
- package/.yarn/cache/{css-what-npm-6.1.0-57f751efbb-c67a3a2d0d.zip → css-what-npm-6.2.2-c497de3935-3c5a53be94.zip} +0 -0
- package/.yarn/cache/{debug-npm-4.4.1-6eab84b9f7-8e2709b214.zip → debug-npm-4.4.3-0105c6123a-9ada3434ea.zip} +0 -0
- package/.yarn/cache/dedent-npm-1.7.0-ec8ff53a59-c902f3e7e8.zip +0 -0
- package/.yarn/cache/dotenv-npm-17.2.3-2f9ab93ea1-f8b78626eb.zip +0 -0
- package/.yarn/cache/{electron-to-chromium-npm-1.5.191-037fcdd360-d5a5ca41bb.zip → electron-to-chromium-npm-1.5.230-2836cdf03c-af1c5b6b7b.zip} +0 -0
- package/.yarn/cache/encoding-sniffer-npm-0.2.1-55db9e1e21-7d74723823.zip +0 -0
- package/.yarn/cache/end-of-stream-npm-1.4.5-8e646acd73-1e0cfa6e7f.zip +0 -0
- package/.yarn/cache/entities-npm-6.0.1-84692dab43-62af130720.zip +0 -0
- package/.yarn/cache/error-ex-npm-1.3.4-c7248e4040-ae3939fd4a.zip +0 -0
- package/.yarn/cache/eslint-scope-npm-8.4.0-8ed12feb40-e8e611701f.zip +0 -0
- package/.yarn/cache/espree-npm-10.4.0-9633b00e55-9b355b32db.zip +0 -0
- package/.yarn/cache/expect-npm-30.2.0-cebe750b6e-cf98ab45ab.zip +0 -0
- package/.yarn/cache/fast-uri-npm-3.1.0-57fa0b3f3c-818b2c96dc.zip +0 -0
- package/.yarn/cache/{fastq-npm-1.19.0-5e2713df98-20457acfb1.zip → fastq-npm-1.19.1-ca0a13ec3f-75679dc226.zip} +0 -0
- package/.yarn/cache/fdir-npm-6.5.0-8814a0dec7-14ca1c9f0a.zip +0 -0
- package/.yarn/cache/{follow-redirects-npm-1.15.9-539785d34c-e3ab42d109.zip → follow-redirects-npm-1.15.11-ae7b2db266-07372fd74b.zip} +0 -0
- package/.yarn/cache/{fs-extra-npm-11.3.0-a6b1b4d5ad-c9fe7b23dd.zip → fs-extra-npm-11.3.2-490a8d09c5-d559545c73.zip} +0 -0
- package/.yarn/cache/generator-function-npm-2.0.1-aed34a724a-eb7e7eb896.zip +0 -0
- package/.yarn/cache/get-intrinsic-npm-1.3.1-2f734f40ec-bb579dda84.zip +0 -0
- package/.yarn/cache/htmlparser2-npm-10.0.0-2301362da5-768870f0e0.zip +0 -0
- package/.yarn/cache/http-cache-semantics-npm-4.2.0-fadacfb3ad-4efd2dfcfe.zip +0 -0
- package/.yarn/cache/ignore-npm-7.0.5-dea34ee430-f134b96a4d.zip +0 -0
- package/.yarn/cache/index-to-position-npm-1.2.0-76254be6df-fb6421c87a.zip +0 -0
- package/.yarn/cache/ip-address-npm-10.0.1-862be6199a-09731acda3.zip +0 -0
- package/.yarn/cache/is-generator-function-npm-1.1.2-d0a84b1a72-cc50fa0103.zip +0 -0
- package/.yarn/cache/is-npm-npm-6.1.0-3dd1685f37-54779c5541.zip +0 -0
- package/.yarn/cache/istanbul-reports-npm-3.2.0-b755b56d78-6773a1d5c7.zip +0 -0
- package/.yarn/cache/{jake-npm-10.9.2-3bf2173aed-3be324708f.zip → jake-npm-10.9.4-970487a1c4-97e48f73f5.zip} +0 -0
- package/.yarn/cache/jest-diff-npm-30.2.0-a9ffaeaf61-1fb9e4fb7d.zip +0 -0
- package/.yarn/cache/{jest-haste-map-npm-30.1.0-8189548adb-bd39053fe1.zip → jest-haste-map-npm-30.2.0-3a29f4d94a-a88be6b0b6.zip} +0 -0
- package/.yarn/cache/jest-matcher-utils-npm-30.2.0-4a694dfac2-f3f1ecf68c.zip +0 -0
- package/.yarn/cache/jest-message-util-npm-30.2.0-65acf2d429-e29ec76e8c.zip +0 -0
- package/.yarn/cache/{jest-mock-npm-30.0.0-1cab834040-4896ba2504.zip → jest-mock-npm-30.2.0-9e4a2da4cb-cde9b56805.zip} +0 -0
- package/.yarn/cache/{jest-util-npm-30.0.5-8940b46e20-44207c4b8c.zip → jest-util-npm-30.2.0-8ebfa9b786-cf2f2fb834.zip} +0 -0
- package/.yarn/cache/{jest-worker-npm-30.1.0-b4a01545e6-cc09d2ce86.zip → jest-worker-npm-30.2.0-4d4aaec97d-9354b0c71c.zip} +0 -0
- package/.yarn/cache/jsonfile-npm-6.2.0-aefb9ffd45-513aac94a6.zip +0 -0
- package/.yarn/cache/jwa-npm-1.4.2-9b996c4b2d-a46c9ddbcc.zip +0 -0
- package/.yarn/cache/jwa-npm-2.0.1-9ebe28a626-b04312a1de.zip +0 -0
- package/.yarn/cache/{long-npm-5.3.1-c44e0933f0-7713e10b4f.zip → long-npm-5.3.2-f80d0f7d39-b6b55ddae5.zip} +0 -0
- package/.yarn/cache/{minipass-fetch-npm-4.0.0-d4e49e0194-4b0772dbee.zip → minipass-fetch-npm-4.0.1-ce1d15e957-7ddfebdbb8.zip} +0 -0
- package/.yarn/cache/minizlib-npm-3.1.0-6680befdba-f47365cc2c.zip +0 -0
- package/.yarn/cache/mock-json-schema-npm-1.1.2-d0bf8a8e0c-d02d8aa908.zip +0 -0
- package/.yarn/cache/{nan-npm-2.22.1-09e9287ac1-3459e7e0b0.zip → nan-npm-2.23.0-b3b2a3ae9b-9822b38418.zip} +0 -0
- package/.yarn/cache/nanoid-npm-3.3.11-f98c1f9ef6-73b5afe597.zip +0 -0
- package/.yarn/cache/node-gyp-npm-11.4.2-75a7da9a3c-de0fdd1a23.zip +0 -0
- package/.yarn/cache/node-rdkafka-npm-3.4.1-cbfb65c8a6-ab51a61428.zip +0 -0
- package/.yarn/cache/node-releases-npm-2.0.21-93f7457975-5344d634b3.zip +0 -0
- package/.yarn/cache/normalize-url-npm-8.1.0-9b4f4e558b-59b765bfe7.zip +0 -0
- package/.yarn/cache/object.entries-npm-1.1.9-32f1b371e0-24163ab1e1.zip +0 -0
- package/.yarn/cache/parse5-npm-7.3.0-b0410074a3-b0e48be20b.zip +0 -0
- package/.yarn/cache/{picomatch-npm-4.0.2-e93516ddf2-ce617b8da3.zip → picomatch-npm-4.0.3-0a647b87cc-57b99055f4.zip} +0 -0
- package/.yarn/cache/portfinder-npm-1.0.38-d6e0c97a97-369155c3e7.zip +0 -0
- package/.yarn/cache/{postcss-npm-8.5.3-37174aa03d-6d7e21a772.zip → postcss-npm-8.5.6-e7f126c6f3-9e4fbe9757.zip} +0 -0
- package/.yarn/cache/pretty-format-npm-30.2.0-2787008ea2-725890d648.zip +0 -0
- package/.yarn/cache/{pump-npm-3.0.2-a8afc6734f-e0c4216874.zip → pump-npm-3.0.3-e7d0c1fbab-52843fc933.zip} +0 -0
- package/.yarn/cache/pupa-npm-3.3.0-00ad2ffe24-05c84c2c76.zip +0 -0
- package/.yarn/cache/{redis-npm-5.8.2-9c493c0c47-a7635cedf2.zip → redis-npm-5.8.3-3369ceaea3-3843f0ad95.zip} +0 -0
- package/.yarn/cache/regenerate-unicode-properties-npm-10.2.2-7d116b2ed9-5041ee3118.zip +0 -0
- package/.yarn/cache/regexpu-core-npm-6.4.0-8966e0bc82-bf5f85a502.zip +0 -0
- package/.yarn/cache/regjsparser-npm-0.13.0-c24f3ebde6-eeaabd3454.zip +0 -0
- package/.yarn/cache/{socks-npm-2.8.4-8194b86bd0-ab3af97aeb.zip → socks-npm-2.8.7-d1d20aae19-d19366c959.zip} +0 -0
- package/.yarn/cache/spdx-license-ids-npm-3.0.22-2b47dea449-a2f214aaf7.zip +0 -0
- package/.yarn/cache/statuses-npm-2.0.2-2d84c63b8c-6927feb50c.zip +0 -0
- package/.yarn/cache/strip-ansi-npm-7.1.2-aa4fadccd9-db0e3f9654.zip +0 -0
- package/.yarn/cache/{strip-json-comments-npm-5.0.1-4a8f1cb37e-b314af70c6.zip → strip-json-comments-npm-5.0.3-5042d1b870-3ccbf26f27.zip} +0 -0
- package/.yarn/cache/strnum-npm-1.1.2-67427480d6-ccd6297a1f.zip +0 -0
- package/.yarn/cache/{supports-color-npm-10.0.0-6cd1bb42a6-0475bf167d.zip → supports-color-npm-10.2.2-e43ac15f9f-bd132705fc.zip} +0 -0
- package/.yarn/cache/{swagger-ui-dist-npm-5.19.0-1a4737b567-d7433e00e5.zip → swagger-ui-dist-npm-5.29.3-403a6cab72-f896364781.zip} +0 -0
- package/.yarn/cache/tar-npm-7.5.1-7b414f7fec-4848cd2fa2.zip +0 -0
- package/.yarn/cache/tinyglobby-npm-0.2.15-0e783aadbd-d72bd826a8.zip +0 -0
- package/.yarn/cache/tmp-npm-0.2.5-e146296d91-dd4b78b323.zip +0 -0
- package/.yarn/cache/{typescript-patch-bcfe2ebaf8-bd810ab13e.zip → typescript-npm-5.9.3-48715be868-c089d9d3da.zip} +0 -0
- package/.yarn/cache/{typescript-npm-5.9.2-d00cd8b149-cc2fe6c822.zip → typescript-patch-6fda4d02cf-696e1b017b.zip} +0 -0
- package/.yarn/cache/undici-npm-7.16.0-f6b1c9157f-2bb71672b2.zip +0 -0
- package/.yarn/cache/{undici-types-npm-7.12.0-af0c725921-4a0f927c98.zip → undici-types-npm-7.13.0-df78d4ea2d-1088ad68dd.zip} +0 -0
- package/.yarn/cache/undici-types-npm-7.14.0-d9eb643e6a-0f8709b214.zip +0 -0
- package/.yarn/cache/unicode-match-property-value-ecmascript-npm-2.2.1-0b3c4504a2-a42bebebab.zip +0 -0
- package/.yarn/cache/unicode-property-aliases-ecmascript-npm-2.2.0-55d7728914-0dd0f6e701.zip +0 -0
- package/.yarn/cache/validator-npm-13.15.15-143146ad19-a43d9271c8.zip +0 -0
- package/.yarn/cache/zod-npm-3.25.76-7de26333f8-f0c963ec40.zip +0 -0
- package/.yarn/install-state.gz +0 -0
- package/.yarn/releases/{yarn-4.10.1.cjs → yarn-4.10.2.cjs} +3 -3
- package/.yarnrc.yml +1 -1
- package/CHANGELOG.md +12 -0
- package/docker-compose.yml +2 -2
- package/modules/api-svc/.env.example +2 -2
- package/modules/api-svc/package.json +9 -9
- package/modules/api-svc/src/FSPIOPEventHandler/handlers/bulk-quotes-requested.js +1 -1
- package/modules/api-svc/src/FSPIOPEventHandler/handlers/bulk-transfers-requested.js +1 -1
- package/modules/api-svc/src/FSPIOPEventHandler/handlers/party-info-requested.js +1 -1
- package/modules/api-svc/src/FSPIOPEventHandler/index.js +3 -3
- package/modules/api-svc/src/InboundServer/handlers.js +3 -3
- package/modules/api-svc/src/InboundServer/index.js +6 -6
- package/modules/api-svc/src/InboundServer/middlewares.js +6 -2
- package/modules/api-svc/src/OutboundServer/handlers.js +13 -13
- package/modules/api-svc/src/OutboundServer/index.js +5 -5
- package/modules/api-svc/src/config.js +4 -4
- package/modules/api-svc/src/index.js +19 -19
- package/modules/api-svc/src/lib/cache.js +12 -11
- package/modules/api-svc/src/lib/model/AccountsModel.js +1 -1
- package/modules/api-svc/src/lib/model/Async2SyncModel.js +1 -1
- package/modules/api-svc/src/lib/model/InboundPingModel.js +1 -1
- package/modules/api-svc/src/lib/model/InboundTransfersModel.js +1 -1
- package/modules/api-svc/src/lib/model/OutboundBulkQuotesModel.js +1 -1
- package/modules/api-svc/src/lib/model/OutboundBulkTransfersModel.js +1 -1
- package/modules/api-svc/src/lib/model/OutboundRequestToPayModel.js +1 -1
- package/modules/api-svc/src/lib/model/OutboundRequestToPayTransferModel.js +1 -1
- package/modules/api-svc/src/lib/model/OutboundTransfersModel.js +1 -1
- package/modules/api-svc/src/lib/model/ProxyModel/index.js +2 -2
- package/modules/api-svc/src/lib/utils.js +6 -6
- package/modules/api-svc/test/__mocks__/@mojaloop/sdk-standard-components.js +2 -2
- package/modules/api-svc/test/config/integration-pm4ml.env +2 -2
- package/modules/api-svc/test/config/integration.env +2 -2
- package/modules/api-svc/test/integration-pm4ml/mockServers/managementService/initConfig.js +1 -1
- package/modules/api-svc/test/unit/api/utils.js +7 -7
- package/modules/api-svc/test/unit/config.test.js +3 -3
- package/modules/api-svc/test/unit/data/defaultConfig.json +1 -1
- package/modules/api-svc/test/unit/lib/model/InboundPingModel.test.js +2 -2
- package/modules/api-svc/test/unit/lib/model/OutboundTransfersISO20022.test.js +1 -1
- package/modules/api-svc/test/unit/lib/model/data/defaultConfig.json +1 -1
- package/modules/api-svc/test/unit/outboundApi/handlers.test.js +15 -15
- package/modules/outbound-command-event-handler/package.json +8 -8
- package/modules/outbound-domain-event-handler/package.json +6 -6
- package/modules/private-shared-lib/package.json +8 -8
- package/package.json +7 -6
- package/{sbom-v24.11.0.csv → sbom-v24.12.0.csv} +47 -47
- package/.yarn/cache/@ampproject-remapping-npm-2.3.0-559c14eee4-f345152537.zip +0 -0
- package/.yarn/cache/@babel-code-frame-npm-7.26.2-4902b56813-db2c2122af.zip +0 -0
- package/.yarn/cache/@babel-compat-data-npm-7.26.8-fb802c4940-bdddf577f6.zip +0 -0
- package/.yarn/cache/@babel-compat-data-npm-7.27.2-22fa0c7782-eaa9f8aaeb.zip +0 -0
- package/.yarn/cache/@babel-core-npm-7.26.9-12b18cb40d-ceed199dbe.zip +0 -0
- package/.yarn/cache/@babel-core-npm-7.27.4-801e5891a4-28c01186d5.zip +0 -0
- package/.yarn/cache/@babel-generator-npm-7.26.9-3260f562f4-95075dd615.zip +0 -0
- package/.yarn/cache/@babel-generator-npm-7.27.1-12737d533a-6101825922.zip +0 -0
- package/.yarn/cache/@babel-generator-npm-7.27.3-9f345034e6-3b8477ae0c.zip +0 -0
- package/.yarn/cache/@babel-generator-npm-7.28.0-41b4249958-064c5ba4c0.zip +0 -0
- package/.yarn/cache/@babel-helper-annotate-as-pure-npm-7.25.9-a0f89e14a0-41edda10df.zip +0 -0
- package/.yarn/cache/@babel-helper-annotate-as-pure-npm-7.27.1-5d7897ae67-3f8e4d5914.zip +0 -0
- package/.yarn/cache/@babel-helper-compilation-targets-npm-7.26.5-e3b4215b3c-f3b5f0bfcd.zip +0 -0
- package/.yarn/cache/@babel-helper-create-class-features-plugin-npm-7.27.1-65d3087eb1-701579b490.zip +0 -0
- package/.yarn/cache/@babel-helper-create-regexp-features-plugin-npm-7.26.3-834c0b262a-4c44122ea1.zip +0 -0
- package/.yarn/cache/@babel-helper-module-imports-npm-7.25.9-b86e31bde9-e090be5dee.zip +0 -0
- package/.yarn/cache/@babel-helper-module-transforms-npm-7.26.0-7557a3558f-9841d2a62f.zip +0 -0
- package/.yarn/cache/@babel-helper-module-transforms-npm-7.27.1-d289bdccc6-415509a585.zip +0 -0
- package/.yarn/cache/@babel-helper-module-transforms-npm-7.27.3-90dc30d3d9-47abc90ceb.zip +0 -0
- package/.yarn/cache/@babel-helper-plugin-utils-npm-7.26.5-f9c17c9880-1cc0fd8514.zip +0 -0
- package/.yarn/cache/@babel-helper-string-parser-npm-7.25.9-eade578078-c28656c52b.zip +0 -0
- package/.yarn/cache/@babel-helper-validator-identifier-npm-7.25.9-2634b947a4-3f9b649be0.zip +0 -0
- package/.yarn/cache/@babel-helper-validator-option-npm-7.25.9-6450027d5d-9491b27559.zip +0 -0
- package/.yarn/cache/@babel-helpers-npm-7.26.10-4eb1d94ec4-6641462579.zip +0 -0
- package/.yarn/cache/@babel-helpers-npm-7.27.4-ba8f87a40e-a697280575.zip +0 -0
- package/.yarn/cache/@babel-parser-npm-7.26.9-5be13f2551-cb84fe3ba5.zip +0 -0
- package/.yarn/cache/@babel-parser-npm-7.27.2-70cd61f3e6-133b4ccfbc.zip +0 -0
- package/.yarn/cache/@babel-parser-npm-7.27.3-3085b3fa96-ea5a0cd55e.zip +0 -0
- package/.yarn/cache/@babel-parser-npm-7.27.4-c8d264780c-5ff6db87fd.zip +0 -0
- package/.yarn/cache/@babel-parser-npm-7.28.0-d5c2974608-2c14a0d260.zip +0 -0
- package/.yarn/cache/@babel-parser-npm-7.28.3-8acaa30019-9fa08282e3.zip +0 -0
- package/.yarn/cache/@babel-plugin-syntax-import-attributes-npm-7.26.0-7a281ed168-c122aa5771.zip +0 -0
- package/.yarn/cache/@babel-plugin-transform-regenerator-npm-7.28.3-36bb1b5a59-f95e929d41.zip +0 -0
- package/.yarn/cache/@babel-template-npm-7.26.9-6339558068-240288ceba.zip +0 -0
- package/.yarn/cache/@babel-traverse-npm-7.26.9-5dc40fea71-c16a79522e.zip +0 -0
- package/.yarn/cache/@babel-traverse-npm-7.27.1-cdef168378-9977271aa4.zip +0 -0
- package/.yarn/cache/@babel-traverse-npm-7.27.3-340ab882dc-caccdb8335.zip +0 -0
- package/.yarn/cache/@babel-traverse-npm-7.27.4-fe457ebf1b-4debb80b90.zip +0 -0
- package/.yarn/cache/@babel-traverse-npm-7.28.0-66b3390b4e-c1c24b12b6.zip +0 -0
- package/.yarn/cache/@babel-traverse-npm-7.28.3-7786c501c7-fe521591b7.zip +0 -0
- package/.yarn/cache/@babel-types-npm-7.26.9-ef3f43c2d5-11b62ea7ed.zip +0 -0
- package/.yarn/cache/@babel-types-npm-7.27.1-2a01e9d02f-81f8ada28c.zip +0 -0
- package/.yarn/cache/@babel-types-npm-7.27.3-7b6a22808d-a24e6accd8.zip +0 -0
- package/.yarn/cache/@babel-types-npm-7.28.2-9db4224804-a8de404a2e.zip +0 -0
- package/.yarn/cache/@eslint-community-eslint-utils-npm-4.4.1-c83a271e90-ae92a11412.zip +0 -0
- package/.yarn/cache/@eslint-community-eslint-utils-npm-4.7.0-47503bfa2a-43ed5d3915.zip +0 -0
- package/.yarn/cache/@eslint-compat-npm-1.3.2-b403da4a15-e710ec5ed8.zip +0 -0
- package/.yarn/cache/@eslint-core-npm-0.12.0-38bccca4dd-ee8a2c65ee.zip +0 -0
- package/.yarn/cache/@grpc-grpc-js-npm-1.13.4-4aa5cd2dfd-f1eb910ff7.zip +0 -0
- package/.yarn/cache/@grpc-proto-loader-npm-0.7.13-be5b6af1c1-7e2d842c20.zip +0 -0
- package/.yarn/cache/@hapi-teamwork-npm-6.0.0-0f3d56734c-e79c8e590e.zip +0 -0
- package/.yarn/cache/@hapi-tlds-npm-1.1.2-80b5f7031d-339761cd1a.zip +0 -0
- package/.yarn/cache/@humanwhocodes-retry-npm-0.3.1-9d87bf92c6-eb457f6995.zip +0 -0
- package/.yarn/cache/@humanwhocodes-retry-npm-0.4.2-78a05c1b69-8910c4cdf8.zip +0 -0
- package/.yarn/cache/@ioredis-commands-npm-1.3.0-c1ff038fb4-203029f09d.zip +0 -0
- package/.yarn/cache/@jest-get-type-npm-30.0.0-db16e5ad7d-6dc432caac.zip +0 -0
- package/.yarn/cache/@jest-pattern-npm-30.0.0-8f812d915e-4c21a48b1d.zip +0 -0
- package/.yarn/cache/@jest-schemas-npm-30.0.0-7943bf35b9-b97944e582.zip +0 -0
- package/.yarn/cache/@jest-transform-npm-30.1.2-14cfbd16d5-aec6c6a46f.zip +0 -0
- package/.yarn/cache/@jest-types-npm-30.0.0-ee47462915-647481170c.zip +0 -0
- package/.yarn/cache/@jest-types-npm-30.0.5-0475c9b283-6bf18f4e89.zip +0 -0
- package/.yarn/cache/@jridgewell-gen-mapping-npm-0.3.8-647be6e286-9d3a56ab36.zip +0 -0
- package/.yarn/cache/@jridgewell-set-array-npm-1.2.1-2312928209-832e513a85.zip +0 -0
- package/.yarn/cache/@jridgewell-sourcemap-codec-npm-1.5.0-dfd9126d71-4ed6123217.zip +0 -0
- package/.yarn/cache/@jridgewell-trace-mapping-npm-0.3.25-c076fd2279-dced32160a.zip +0 -0
- package/.yarn/cache/@jridgewell-trace-mapping-npm-0.3.29-6702d36c67-64e1ce0dc3.zip +0 -0
- package/.yarn/cache/@mojaloop-logging-bc-public-types-lib-npm-0.5.4-03ab70ac75-0d35363d3c.zip +0 -0
- package/.yarn/cache/@mojaloop-ml-number-npm-11.3.0-9858cadff5-8435794709.zip +0 -0
- package/.yarn/cache/@redocly-config-npm-0.20.3-701daa5910-dd9501c96d.zip +0 -0
- package/.yarn/cache/@redocly-openapi-core-npm-1.31.1-fb4096a34f-771e68ef15.zip +0 -0
- package/.yarn/cache/@redocly-openapi-core-npm-1.34.3-10568e0790-b70a92135e.zip +0 -0
- package/.yarn/cache/@types-babel__traverse-npm-7.20.6-fac4243243-63d13a3789.zip +0 -0
- package/.yarn/cache/@types-body-parser-npm-1.19.5-97fb106976-1e251118c4.zip +0 -0
- package/.yarn/cache/@types-content-disposition-npm-0.5.8-0074adf6a1-eeea868fb5.zip +0 -0
- package/.yarn/cache/@types-cookies-npm-0.9.0-a3671b5a75-88d2106834.zip +0 -0
- package/.yarn/cache/@types-estree-npm-1.0.6-b5e23f2ea2-9d35d47509.zip +0 -0
- package/.yarn/cache/@types-express-npm-5.0.0-a645691cd5-45b199ab66.zip +0 -0
- package/.yarn/cache/@types-express-serve-static-core-npm-5.0.6-e41caf262c-9dc51bdee7.zip +0 -0
- package/.yarn/cache/@types-http-errors-npm-2.0.4-8b39ca5d7c-1f3d7c3b32.zip +0 -0
- package/.yarn/cache/@types-node-npm-22.13.5-4c5912eee2-a69ec8dba3.zip +0 -0
- package/.yarn/cache/@types-qs-npm-6.9.18-125db28c30-152fab96ef.zip +0 -0
- package/.yarn/cache/@types-semver-npm-7.5.8-26073743d7-3496808818.zip +0 -0
- package/.yarn/cache/@typescript-eslint-parser-npm-8.44.0-9be86aa2f8-8c7ddabf46.zip +0 -0
- package/.yarn/cache/@typescript-eslint-project-service-npm-8.38.0-b50ac59922-fe21604603.zip +0 -0
- package/.yarn/cache/@typescript-eslint-project-service-npm-8.44.0-3208cc873e-400b4981e6.zip +0 -0
- package/.yarn/cache/@typescript-eslint-scope-manager-npm-8.38.0-64859efac1-0809a4135a.zip +0 -0
- package/.yarn/cache/@typescript-eslint-scope-manager-npm-8.44.0-02a051c9d1-5dae4a8386.zip +0 -0
- package/.yarn/cache/@typescript-eslint-tsconfig-utils-npm-8.38.0-79457d6001-e1c80d2a4b.zip +0 -0
- package/.yarn/cache/@typescript-eslint-tsconfig-utils-npm-8.44.0-de2d92d917-c8535d481d.zip +0 -0
- package/.yarn/cache/@typescript-eslint-types-npm-8.38.0-1cd62840a5-87ac2d199e.zip +0 -0
- package/.yarn/cache/@typescript-eslint-types-npm-8.44.0-89c4325651-9e28c95feb.zip +0 -0
- package/.yarn/cache/@typescript-eslint-typescript-estree-npm-8.38.0-b39ddf47a4-4ff14184a9.zip +0 -0
- package/.yarn/cache/@typescript-eslint-typescript-estree-npm-8.44.0-122f9245db-e2e579b15c.zip +0 -0
- package/.yarn/cache/@typescript-eslint-utils-npm-8.38.0-4fe3006f47-5be4936796.zip +0 -0
- package/.yarn/cache/@typescript-eslint-utils-npm-8.44.0-fc612e2915-436e21e3d0.zip +0 -0
- package/.yarn/cache/@typescript-eslint-visitor-keys-npm-8.44.0-131d4d0e8f-09b008b14f.zip +0 -0
- package/.yarn/cache/abbrev-npm-3.0.0-946682a7b1-2ceee14efd.zip +0 -0
- package/.yarn/cache/acorn-npm-8.14.0-dc46f61424-6df29c3555.zip +0 -0
- package/.yarn/cache/agent-base-npm-7.1.3-b2c16e72fb-3db6d8d465.zip +0 -0
- package/.yarn/cache/ansi-regex-npm-6.1.0-abe011aae4-495834a53b.zip +0 -0
- package/.yarn/cache/ansi-styles-npm-6.2.1-d43647018c-70fdf883b7.zip +0 -0
- package/.yarn/cache/async-npm-2.6.4-3155e80151-df8e52817d.zip +0 -0
- package/.yarn/cache/babel-jest-npm-30.1.2-2d68b3440b-9697119fe4.zip +0 -0
- package/.yarn/cache/babel-plugin-istanbul-npm-7.0.0-924905ff8c-4df567f291.zip +0 -0
- package/.yarn/cache/babel-plugin-jest-hoist-npm-30.0.1-be1f25b566-4d8d0eb372.zip +0 -0
- package/.yarn/cache/babel-preset-jest-npm-30.0.1-0b8ffd2c88-fa37b0fa11.zip +0 -0
- package/.yarn/cache/browserslist-npm-4.24.4-2fdeb5face-11fda105e8.zip +0 -0
- package/.yarn/cache/browserslist-npm-4.25.1-7df10d33cd-bfb5511b42.zip +0 -0
- package/.yarn/cache/call-bound-npm-1.0.3-f4cbf26326-c39a8245f6.zip +0 -0
- package/.yarn/cache/caniuse-lite-npm-1.0.30001700-af88646d2b-9203ed502f.zip +0 -0
- package/.yarn/cache/caniuse-lite-npm-1.0.30001727-5eb19a192b-6155a41413.zip +0 -0
- package/.yarn/cache/cheerio-npm-1.0.0-837785b57b-b535070add.zip +0 -0
- package/.yarn/cache/ci-info-npm-4.2.0-5451b2fa90-928d8457f3.zip +0 -0
- package/.yarn/cache/color-npm-3.2.1-568cf1014f-bf70438e01.zip +0 -0
- package/.yarn/cache/color-string-npm-1.9.1-dc020e56be-72aa0b81ee.zip +0 -0
- package/.yarn/cache/colorspace-npm-1.1.4-f01655548a-bb3934ef3c.zip +0 -0
- package/.yarn/cache/compression-npm-1.8.0-5088616544-ca213b9bd0.zip +0 -0
- package/.yarn/cache/core-js-compat-npm-3.44.0-840288badd-41885423aa.zip +0 -0
- package/.yarn/cache/css-select-npm-5.1.0-9365a79de5-d486b1e7eb.zip +0 -0
- package/.yarn/cache/debug-npm-4.4.0-f6efe76023-1847944c2e.zip +0 -0
- package/.yarn/cache/dedent-npm-1.5.3-123726df15-e5277f6268.zip +0 -0
- package/.yarn/cache/electron-to-chromium-npm-1.5.104-d9177e3237-ad580610ec.zip +0 -0
- package/.yarn/cache/encoding-sniffer-npm-0.2.0-7e717bfa93-fe61a759db.zip +0 -0
- package/.yarn/cache/end-of-stream-npm-1.4.4-497fc6dee1-530a5a5a1e.zip +0 -0
- package/.yarn/cache/error-ex-npm-1.3.2-5654f80c0f-d547740aa2.zip +0 -0
- package/.yarn/cache/es-abstract-npm-1.23.9-65d488dcce-31a321966d.zip +0 -0
- package/.yarn/cache/eslint-scope-npm-8.2.0-d74e314c9e-cd9ab60d5a.zip +0 -0
- package/.yarn/cache/eslint-visitor-keys-npm-4.2.0-a591434af3-9651b3356b.zip +0 -0
- package/.yarn/cache/espree-npm-10.3.0-e5b10052f5-3412d44d42.zip +0 -0
- package/.yarn/cache/expect-npm-30.0.0-c4f29cc906-2ad7d2a3cd.zip +0 -0
- package/.yarn/cache/fast-uri-npm-3.0.6-140ab22003-43c87cd039.zip +0 -0
- package/.yarn/cache/get-intrinsic-npm-1.3.0-35558f27b6-6e9dd920ff.zip +0 -0
- package/.yarn/cache/globals-npm-11.12.0-1fa7f41a6c-9f054fa38f.zip +0 -0
- package/.yarn/cache/htmlparser2-npm-9.1.0-5ef8394060-6352fa2a54.zip +0 -0
- package/.yarn/cache/http-cache-semantics-npm-4.1.1-1120131375-362d5ed66b.zip +0 -0
- package/.yarn/cache/ignore-npm-7.0.4-e6d7361b35-01ee59df2f.zip +0 -0
- package/.yarn/cache/index-to-position-npm-1.1.0-3704651970-16703893c7.zip +0 -0
- package/.yarn/cache/ip-address-npm-9.0.5-9fa024d42a-1ed81e0672.zip +0 -0
- package/.yarn/cache/is-arrayish-npm-0.3.2-f856180f79-81a78d518e.zip +0 -0
- package/.yarn/cache/is-generator-function-npm-1.1.0-e96e2ba973-5906ff51a8.zip +0 -0
- package/.yarn/cache/is-npm-npm-6.0.0-d8d9039032-fafe1ddc77.zip +0 -0
- package/.yarn/cache/istanbul-reports-npm-3.1.7-356486c0f4-f1faaa4684.zip +0 -0
- package/.yarn/cache/jest-diff-npm-30.0.0-3d7984567d-e17d8b5e66.zip +0 -0
- package/.yarn/cache/jest-matcher-utils-npm-30.0.0-df3cb56c58-3aa46a7d38.zip +0 -0
- package/.yarn/cache/jest-message-util-npm-30.0.0-3d72ccf669-d2585d8712.zip +0 -0
- package/.yarn/cache/jest-regex-util-npm-30.0.0-b67c1fc2bc-aa4449a029.zip +0 -0
- package/.yarn/cache/jest-util-npm-30.0.0-de14658072-55171f9010.zip +0 -0
- package/.yarn/cache/jsbn-npm-1.1.0-1da0181838-bebe7ae829.zip +0 -0
- package/.yarn/cache/jsesc-npm-3.0.2-3b3b74ec0d-8e5a7de6b7.zip +0 -0
- package/.yarn/cache/jsonfile-npm-6.1.0-20a4796cee-03014769e7.zip +0 -0
- package/.yarn/cache/jwa-npm-1.4.1-4f19d6572c-0bc002b71d.zip +0 -0
- package/.yarn/cache/jwa-npm-2.0.0-52a7c3f1ca-ab983f6685.zip +0 -0
- package/.yarn/cache/mime-db-npm-1.53.0-14fcdba2be-82409c568a.zip +0 -0
- package/.yarn/cache/minizlib-npm-3.0.1-4bdabd978f-622cb85f51.zip +0 -0
- package/.yarn/cache/mkdirp-npm-0.5.6-dcd5a6b97b-0c91b721bb.zip +0 -0
- package/.yarn/cache/mkdirp-npm-3.0.1-f94bfa769e-16fd79c286.zip +0 -0
- package/.yarn/cache/mock-json-schema-npm-1.1.1-0c1db4d1d1-3a45b85acd.zip +0 -0
- package/.yarn/cache/nanoid-npm-3.3.8-d22226208b-2d1766606c.zip +0 -0
- package/.yarn/cache/node-gyp-npm-11.1.0-bd7044e197-3314ebfeb9.zip +0 -0
- package/.yarn/cache/node-releases-npm-2.0.19-b123ed6240-c2b33b4f0c.zip +0 -0
- package/.yarn/cache/normalize-url-npm-8.0.1-c87adbf3f1-ae39203758.zip +0 -0
- package/.yarn/cache/object.entries-npm-1.1.8-386f7451b8-2301918fbd.zip +0 -0
- package/.yarn/cache/openapi-typescript-npm-7.8.0-7faf1e0691-9f0b55a91f.zip +0 -0
- package/.yarn/cache/parse5-npm-7.2.1-c48f333f28-fd1a8ad154.zip +0 -0
- package/.yarn/cache/pirates-npm-4.0.6-a8ec571a43-d02dda76f4.zip +0 -0
- package/.yarn/cache/portfinder-npm-1.0.32-20cc84ebcf-842058052f.zip +0 -0
- package/.yarn/cache/pretty-format-npm-30.0.0-d8f817d24c-3a02da797b.zip +0 -0
- package/.yarn/cache/protobufjs-npm-7.4.0-12c56a3adc-4084235066.zip +0 -0
- package/.yarn/cache/pupa-npm-3.1.0-8d0c9815fb-32784254b7.zip +0 -0
- package/.yarn/cache/regenerate-unicode-properties-npm-10.2.0-3d662e6e17-9150eae6fe.zip +0 -0
- package/.yarn/cache/regexpu-core-npm-6.2.0-56e98c3a61-4d054ffcd9.zip +0 -0
- package/.yarn/cache/regjsparser-npm-0.12.0-9d000fca30-c2d6506b33.zip +0 -0
- package/.yarn/cache/rimraf-npm-5.0.10-d0c6647697-f3b8ce81ee.zip +0 -0
- package/.yarn/cache/semver-npm-7.7.1-4572475307-4cfa1eb91e.zip +0 -0
- package/.yarn/cache/simple-swizzle-npm-0.2.2-8dee37fad1-c6dffff17a.zip +0 -0
- package/.yarn/cache/spdx-license-ids-npm-3.0.21-12f9261e85-17a033b4c3.zip +0 -0
- package/.yarn/cache/sprintf-js-npm-1.1.3-b99efd75b2-e7587128c4.zip +0 -0
- package/.yarn/cache/strip-ansi-npm-7.1.0-7453b80b79-475f53e9c4.zip +0 -0
- package/.yarn/cache/strnum-npm-1.1.1-67836fb7cf-5542ef16fd.zip +0 -0
- package/.yarn/cache/supports-color-npm-10.1.0-48517f80a7-28d191c4ad.zip +0 -0
- package/.yarn/cache/tar-npm-7.4.3-1dbbd1ffc3-12a2a4fc6d.zip +0 -0
- package/.yarn/cache/tmp-npm-0.2.3-ac2a701365-7b13696787.zip +0 -0
- package/.yarn/cache/type-fest-npm-4.40.0-18c72d1d94-dbca20979d.zip +0 -0
- package/.yarn/cache/undici-npm-6.21.3-28d9334837-b6b8f4a90e.zip +0 -0
- package/.yarn/cache/undici-types-npm-6.20.0-bd21e669af-583ac7bbf4.zip +0 -0
- package/.yarn/cache/unicode-match-property-value-ecmascript-npm-2.2.0-011b10a684-9fd53c657a.zip +0 -0
- package/.yarn/cache/unicode-property-aliases-ecmascript-npm-2.1.0-46779595f4-2435244318.zip +0 -0
- package/.yarn/cache/update-browserslist-db-npm-1.1.2-59b122fef6-e7bf8221df.zip +0 -0
- package/.yarn/cache/validator-npm-13.15.0-b048a51909-cc4435e37a.zip +0 -0
- package/.yarn/cache/which-typed-array-npm-1.1.18-23d1112113-11eed801b2.zip +0 -0
- package/.yarn/cache/yaml-npm-2.7.0-bb348b356b-c8c314c62f.zip +0 -0
- package/.yarn/cache/zod-npm-3.24.2-ab80dc0969-604c62a8cf.zip +0 -0
package/.yarnrc.yml
CHANGED
package/CHANGELOG.md
CHANGED
|
@@ -1,4 +1,16 @@
|
|
|
1
1
|
# Changelog: [mojaloop/sdk-scheme-adapter](https://github.com/mojaloop/sdk-scheme-adapter)
|
|
2
|
+
## [24.13.0](https://github.com/mojaloop/sdk-scheme-adapter/compare/v24.12.0...v24.13.0) (2025-10-06)
|
|
3
|
+
|
|
4
|
+
|
|
5
|
+
### Features
|
|
6
|
+
|
|
7
|
+
* **csi-1665:** improved logging ([#616](https://github.com/mojaloop/sdk-scheme-adapter/issues/616)) ([b8cae73](https://github.com/mojaloop/sdk-scheme-adapter/commit/b8cae734c71f5e94fef53cd0da1953042750bf54))
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
### Chore
|
|
11
|
+
|
|
12
|
+
* **sbom:** update sbom [skip ci] ([4cc79d0](https://github.com/mojaloop/sdk-scheme-adapter/commit/4cc79d0093732849ab25ba6d9357ce079347ab95))
|
|
13
|
+
|
|
2
14
|
## [24.12.0](https://github.com/mojaloop/sdk-scheme-adapter/compare/v24.11.0...v24.12.0) (2025-09-22)
|
|
3
15
|
|
|
4
16
|
|
package/docker-compose.yml
CHANGED
|
@@ -95,7 +95,7 @@ services:
|
|
|
95
95
|
kafka:
|
|
96
96
|
networks:
|
|
97
97
|
- mojaloop-net
|
|
98
|
-
image: docker.io/
|
|
98
|
+
image: docker.io/bitnamilegacy/kafka:3.4.0
|
|
99
99
|
container_name: kafka
|
|
100
100
|
ports:
|
|
101
101
|
- "9092:9092"
|
|
@@ -156,7 +156,7 @@ services:
|
|
|
156
156
|
init-kafka:
|
|
157
157
|
networks:
|
|
158
158
|
- mojaloop-net
|
|
159
|
-
image: docker.io/
|
|
159
|
+
image: docker.io/bitnamilegacy/kafka:3.4.0
|
|
160
160
|
depends_on:
|
|
161
161
|
kafka:
|
|
162
162
|
condition: service_healthy
|
|
@@ -126,7 +126,7 @@ CHECK_ILP=true
|
|
|
126
126
|
# set to true to enable test features such as request cacheing and retrieval endpoints
|
|
127
127
|
ENABLE_TEST_FEATURES=false
|
|
128
128
|
|
|
129
|
-
# set to true to mock
|
|
129
|
+
# set to true to mock OIDC oauth2 token endpoint
|
|
130
130
|
ENABLE_OAUTH_TOKEN_ENDPOINT=false
|
|
131
131
|
OAUTH_TOKEN_ENDPOINT_CLIENT_KEY=test-client-key
|
|
132
132
|
OAUTH_TOKEN_ENDPOINT_CLIENT_SECRET=test-client-secret
|
|
@@ -135,7 +135,7 @@ OAUTH_TOKEN_ENDPOINT_LISTEN_PORT=6000
|
|
|
135
135
|
# WSO2 Bearer Token specific to golden-fsp instance and environment
|
|
136
136
|
WSO2_BEARER_TOKEN=7718fa9b-be13-3fe7-87f0-a12cf1628168
|
|
137
137
|
|
|
138
|
-
# OAuth2 data used to obtain
|
|
138
|
+
# OAuth2 data used to obtain OIDC bearer token
|
|
139
139
|
OAUTH_TOKEN_ENDPOINT=
|
|
140
140
|
OAUTH_CLIENT_KEY=
|
|
141
141
|
OAUTH_CLIENT_SECRET=
|
|
@@ -64,21 +64,21 @@
|
|
|
64
64
|
},
|
|
65
65
|
"dependencies": {
|
|
66
66
|
"@koa/cors": "5.0.0",
|
|
67
|
-
"@mojaloop/api-snippets": "18.
|
|
68
|
-
"@mojaloop/central-services-error-handling": "13.1.
|
|
67
|
+
"@mojaloop/api-snippets": "18.2.0",
|
|
68
|
+
"@mojaloop/central-services-error-handling": "13.1.3",
|
|
69
69
|
"@mojaloop/central-services-logger": "11.10.1",
|
|
70
|
-
"@mojaloop/central-services-metrics": "12.
|
|
71
|
-
"@mojaloop/central-services-shared": "18.
|
|
72
|
-
"@mojaloop/event-sdk": "14.
|
|
70
|
+
"@mojaloop/central-services-metrics": "12.8.0",
|
|
71
|
+
"@mojaloop/central-services-shared": "18.34.0",
|
|
72
|
+
"@mojaloop/event-sdk": "14.8.0",
|
|
73
73
|
"@mojaloop/logging-bc-client-lib": "0.5.8",
|
|
74
74
|
"@mojaloop/ml-schema-transformer-lib": "2.7.8",
|
|
75
75
|
"@mojaloop/sdk-scheme-adapter-private-shared-lib": "workspace:^",
|
|
76
|
-
"@mojaloop/sdk-standard-components": "19.
|
|
76
|
+
"@mojaloop/sdk-standard-components": "19.18.0",
|
|
77
77
|
"ajv": "8.17.1",
|
|
78
78
|
"axios": "1.12.2",
|
|
79
79
|
"body-parser": "2.2.0",
|
|
80
80
|
"co-body": "6.2.0",
|
|
81
|
-
"dotenv": "17.2.
|
|
81
|
+
"dotenv": "17.2.3",
|
|
82
82
|
"env-var": "7.5.0",
|
|
83
83
|
"express": "4.21.2",
|
|
84
84
|
"fast-json-patch": "3.1.1",
|
|
@@ -96,7 +96,7 @@
|
|
|
96
96
|
"prom-client": "15.1.3",
|
|
97
97
|
"promise-timeout": "1.3.0",
|
|
98
98
|
"random-word-slugs": "0.1.7",
|
|
99
|
-
"redis": "5.8.
|
|
99
|
+
"redis": "5.8.3",
|
|
100
100
|
"retry": "^0.13.1",
|
|
101
101
|
"uuidv4": "6.2.13",
|
|
102
102
|
"ws": "8.18.3"
|
|
@@ -108,7 +108,7 @@
|
|
|
108
108
|
"@types/jest": "30.0.0",
|
|
109
109
|
"@types/retry": "^0",
|
|
110
110
|
"axios-mock-adapter": "2.1.0",
|
|
111
|
-
"babel-jest": "30.
|
|
111
|
+
"babel-jest": "30.2.0",
|
|
112
112
|
"eslint": "9.15.0",
|
|
113
113
|
"eslint-config-airbnb-base": "15.0.0",
|
|
114
114
|
"eslint-plugin-import": "2.32.0",
|
|
@@ -44,11 +44,11 @@ const {
|
|
|
44
44
|
} = require('./handlers');
|
|
45
45
|
|
|
46
46
|
class FSPIOPEventHandler {
|
|
47
|
-
constructor({ config, logger, cache,
|
|
47
|
+
constructor({ config, logger, cache, oidc }) {
|
|
48
48
|
this._conf = config;
|
|
49
49
|
this._logger = logger.push({ component: this.constructor.name });
|
|
50
50
|
this._cache = cache;
|
|
51
|
-
this.
|
|
51
|
+
this._oidc = oidc;
|
|
52
52
|
|
|
53
53
|
this._loggerFromLoggingBC = new DefaultLogger(BC_CONFIG.bcName, 'fspiop-event-handler', '0.0.1', config.logLevel);
|
|
54
54
|
|
|
@@ -70,7 +70,7 @@ class FSPIOPEventHandler {
|
|
|
70
70
|
producer: this._producer,
|
|
71
71
|
consumer: this._consumer,
|
|
72
72
|
cache: this._cache,
|
|
73
|
-
|
|
73
|
+
oidc: this._oidc,
|
|
74
74
|
config: this._conf,
|
|
75
75
|
};
|
|
76
76
|
|
|
@@ -74,7 +74,7 @@ const createInboundTransfersModel = (ctx) => new InboundTransfersModel({
|
|
|
74
74
|
},
|
|
75
75
|
cache: ctx.state.cache,
|
|
76
76
|
logger: ctx.state.logger,
|
|
77
|
-
|
|
77
|
+
oidc: ctx.state.oidc,
|
|
78
78
|
resourceVersions: ctx.resourceVersions,
|
|
79
79
|
backendSharedAgents: ctx.state.backendSharedAgents,
|
|
80
80
|
mojaloopSharedAgents: ctx.state.mojaloopSharedAgents,
|
|
@@ -1133,14 +1133,14 @@ const createPutFxTransfersHandler = (success) => async (ctx) => {
|
|
|
1133
1133
|
};
|
|
1134
1134
|
|
|
1135
1135
|
const handlePostPing = (ctx) => {
|
|
1136
|
-
const { jwsPingValidationResult, conf, logger,
|
|
1136
|
+
const { jwsPingValidationResult, conf, logger, oidc } = ctx.state;
|
|
1137
1137
|
const { sourceFspId, body, headers } = extractBodyHeadersSourceFspId(ctx);
|
|
1138
1138
|
|
|
1139
1139
|
const model = new InboundPingModel({
|
|
1140
1140
|
...conf,
|
|
1141
1141
|
resourceVersions: ctx.resourceVersions,
|
|
1142
1142
|
logger,
|
|
1143
|
-
|
|
1143
|
+
oidc,
|
|
1144
1144
|
});
|
|
1145
1145
|
model.postPing({ jwsPingValidationResult, sourceFspId, body, headers })
|
|
1146
1146
|
.catch(err => logger.error('error in handlePostPing:', err));
|
|
@@ -48,7 +48,7 @@ const _validator = new Validate({ logExcludePaths });
|
|
|
48
48
|
let _initialize;
|
|
49
49
|
|
|
50
50
|
class InboundApi extends EventEmitter {
|
|
51
|
-
constructor(conf, logger, cache, validator,
|
|
51
|
+
constructor(conf, logger, cache, validator, oidc, mojaloopSharedAgents) {
|
|
52
52
|
super({ captureExceptions: true });
|
|
53
53
|
this._conf = conf;
|
|
54
54
|
this._cache = cache;
|
|
@@ -72,7 +72,7 @@ class InboundApi extends EventEmitter {
|
|
|
72
72
|
validator,
|
|
73
73
|
cache,
|
|
74
74
|
jwsVerificationKeys: this._jwsVerificationKeys,
|
|
75
|
-
|
|
75
|
+
oidc,
|
|
76
76
|
backendSharedAgents: this.backendSharedAgents,
|
|
77
77
|
mojaloopSharedAgents: this.mojaloopSharedAgents,
|
|
78
78
|
});
|
|
@@ -121,7 +121,7 @@ class InboundApi extends EventEmitter {
|
|
|
121
121
|
}
|
|
122
122
|
}
|
|
123
123
|
|
|
124
|
-
static _SetupApi({ conf, logger, validator, cache, jwsVerificationKeys,
|
|
124
|
+
static _SetupApi({ conf, logger, validator, cache, jwsVerificationKeys, oidc, backendSharedAgents, mojaloopSharedAgents }) {
|
|
125
125
|
const api = new Koa();
|
|
126
126
|
|
|
127
127
|
api.use(middlewares.createErrorHandler(logger));
|
|
@@ -133,7 +133,7 @@ class InboundApi extends EventEmitter {
|
|
|
133
133
|
api.use(middlewares.createJwsValidator(logger, jwsVerificationKeys, jwsExclusions));
|
|
134
134
|
}
|
|
135
135
|
|
|
136
|
-
api.use(middlewares.applyState({ conf, cache,
|
|
136
|
+
api.use(middlewares.applyState({ conf, cache, oidc, logExcludePaths, backendSharedAgents, mojaloopSharedAgents }));
|
|
137
137
|
api.use(middlewares.createPingMiddleware(conf, jwsVerificationKeys));
|
|
138
138
|
api.use(middlewares.createRequestValidator(validator));
|
|
139
139
|
api.use(middlewares.assignFspiopIdentifier());
|
|
@@ -189,7 +189,7 @@ class InboundApi extends EventEmitter {
|
|
|
189
189
|
}
|
|
190
190
|
|
|
191
191
|
class InboundServer extends EventEmitter {
|
|
192
|
-
constructor(conf, logger, cache,
|
|
192
|
+
constructor(conf, logger, cache, oidc, mojaloopSharedAgents) {
|
|
193
193
|
super({ captureExceptions: true });
|
|
194
194
|
this._conf = conf;
|
|
195
195
|
this._logger = logger.push({ app: this.constructor.name });
|
|
@@ -198,7 +198,7 @@ class InboundServer extends EventEmitter {
|
|
|
198
198
|
this._logger,
|
|
199
199
|
cache,
|
|
200
200
|
_validator,
|
|
201
|
-
|
|
201
|
+
oidc,
|
|
202
202
|
mojaloopSharedAgents,
|
|
203
203
|
);
|
|
204
204
|
this._api.on('error', (...args) => {
|
|
@@ -46,7 +46,9 @@ const { transformHeadersIsoToFspiop } = require('../lib/utils');
|
|
|
46
46
|
const { API_TYPES } = require('../constants');
|
|
47
47
|
const Config = require('../config');
|
|
48
48
|
|
|
49
|
-
const INTERNAL_ROUTES = env.LOG_INTERNAL_ROUTES ? env.LOG_INTERNAL_ROUTES.split(',') : [
|
|
49
|
+
const INTERNAL_ROUTES = env.LOG_INTERNAL_ROUTES ? env.LOG_INTERNAL_ROUTES.split(',') : [
|
|
50
|
+
'/health', '/metrics', '/ready', '/ping'
|
|
51
|
+
];
|
|
50
52
|
const shouldLog = (path, log) => log.isInfoEnabled && !INTERNAL_ROUTES.includes(path);
|
|
51
53
|
|
|
52
54
|
/**
|
|
@@ -541,7 +543,9 @@ const createPingMiddleware = (config, validationKeys) => async (ctx, next) => {
|
|
|
541
543
|
|
|
542
544
|
const extractRequestBody = async (conf, ctx) => {
|
|
543
545
|
try {
|
|
544
|
-
|
|
546
|
+
const body = await coBody.json(ctx.req, { limit: conf.fspiopApiServerMaxRequestBytes });
|
|
547
|
+
ctx.request.body = body;
|
|
548
|
+
ctx.state.logger.debug('incoming request body: ', { body });
|
|
545
549
|
return true;
|
|
546
550
|
} catch (err) {
|
|
547
551
|
// error parsing body
|
|
@@ -128,7 +128,7 @@ const createOutboundTransfersModel = (ctx) => new OutboundTransfersModel({
|
|
|
128
128
|
...(ctx.state.path?.params?.dfspId && { dfspId: ctx.state.path.params.dfspId }),
|
|
129
129
|
cache: ctx.state.cache,
|
|
130
130
|
logger: ctx.state.logger,
|
|
131
|
-
|
|
131
|
+
oidc: ctx.state.oidc,
|
|
132
132
|
metricsClient: ctx.state.metricsClient,
|
|
133
133
|
mojaloopSharedAgents: ctx.state.sharedAgents,
|
|
134
134
|
});
|
|
@@ -138,7 +138,7 @@ const createOutboundBulkTransfersModel = (ctx) => new OutboundBulkTransfersModel
|
|
|
138
138
|
...(ctx.state.path?.params?.dfspId && { dfspId: ctx.state.path.params.dfspId }),
|
|
139
139
|
cache: ctx.state.cache,
|
|
140
140
|
logger: ctx.state.logger,
|
|
141
|
-
|
|
141
|
+
oidc: ctx.state.oidc,
|
|
142
142
|
});
|
|
143
143
|
|
|
144
144
|
/**
|
|
@@ -341,7 +341,7 @@ const postBulkQuotes = async (ctx) => {
|
|
|
341
341
|
...ctx.state.path?.params?.dfspId && {dfspId: ctx.state.path.params.dfspId},
|
|
342
342
|
cache: ctx.state.cache,
|
|
343
343
|
logger: ctx.state.logger,
|
|
344
|
-
|
|
344
|
+
oidc: ctx.state.oidc,
|
|
345
345
|
});
|
|
346
346
|
|
|
347
347
|
await model.initialize(bulkQuoteRequest);
|
|
@@ -373,7 +373,7 @@ const getBulkQuoteById = async (ctx) => {
|
|
|
373
373
|
...ctx.state.path?.params?.dfspId && {dfspId: ctx.state.path.params.dfspId},
|
|
374
374
|
cache: ctx.state.cache,
|
|
375
375
|
logger: ctx.state.logger,
|
|
376
|
-
|
|
376
|
+
oidc: ctx.state.oidc,
|
|
377
377
|
});
|
|
378
378
|
|
|
379
379
|
await model.initialize(bulkQuoteRequest);
|
|
@@ -404,7 +404,7 @@ const postRequestToPayTransfer = async (ctx) => {
|
|
|
404
404
|
...ctx.state.path?.params?.dfspId && {dfspId: ctx.state.path.params.dfspId},
|
|
405
405
|
cache: ctx.state.cache,
|
|
406
406
|
logger: ctx.state.logger,
|
|
407
|
-
|
|
407
|
+
oidc: ctx.state.oidc,
|
|
408
408
|
});
|
|
409
409
|
|
|
410
410
|
// initialize the transfer model and start it running
|
|
@@ -432,7 +432,7 @@ const putRequestToPayTransfer = async (ctx) => {
|
|
|
432
432
|
...ctx.state.path?.params?.dfspId && {dfspId: ctx.state.path.params.dfspId},
|
|
433
433
|
cache: ctx.state.cache,
|
|
434
434
|
logger: ctx.state.logger,
|
|
435
|
-
|
|
435
|
+
oidc: ctx.state.oidc,
|
|
436
436
|
});
|
|
437
437
|
|
|
438
438
|
// TODO: check the incoming body to reject party or quote when requested to do so
|
|
@@ -466,7 +466,7 @@ const postAccounts = async (ctx) => {
|
|
|
466
466
|
...ctx.state.path?.params?.dfspId && {dfspId: ctx.state.path.params.dfspId},
|
|
467
467
|
cache: ctx.state.cache,
|
|
468
468
|
logger: ctx.state.logger,
|
|
469
|
-
|
|
469
|
+
oidc: ctx.state.oidc,
|
|
470
470
|
mojaloopSharedAgents: ctx.state.sharedAgents,
|
|
471
471
|
});
|
|
472
472
|
|
|
@@ -497,7 +497,7 @@ const deleteAccountByTypeAndId = async (ctx) => {
|
|
|
497
497
|
...ctx.state.path?.params?.dfspId && {dfspId: ctx.state.path.params.dfspId},
|
|
498
498
|
cache: ctx.state.cache,
|
|
499
499
|
logger: ctx.state.logger,
|
|
500
|
-
|
|
500
|
+
oidc: ctx.state.oidc,
|
|
501
501
|
mojaloopSharedAgents: ctx.state.sharedAgents,
|
|
502
502
|
});
|
|
503
503
|
|
|
@@ -534,7 +534,7 @@ const postRequestToPay = async (ctx) => {
|
|
|
534
534
|
...ctx.state.path?.params?.dfspId && {dfspId: ctx.state.path.params.dfspId},
|
|
535
535
|
cache: ctx.state.cache,
|
|
536
536
|
logger: ctx.state.logger,
|
|
537
|
-
|
|
537
|
+
oidc: ctx.state.oidc,
|
|
538
538
|
});
|
|
539
539
|
|
|
540
540
|
// initialize the transfer model and start it running
|
|
@@ -563,7 +563,7 @@ const putRequestToPay = async (ctx) => {
|
|
|
563
563
|
...ctx.state.path?.params?.dfspId && {dfspId: ctx.state.path.params.dfspId},
|
|
564
564
|
cache: ctx.state.cache,
|
|
565
565
|
logger: ctx.state.logger,
|
|
566
|
-
|
|
566
|
+
oidc: ctx.state.oidc,
|
|
567
567
|
});
|
|
568
568
|
|
|
569
569
|
// TODO: check the incoming body to reject party or quote when requested to do so
|
|
@@ -605,7 +605,7 @@ const getPartiesByTypeAndId = async (ctx) => {
|
|
|
605
605
|
...ctx.state.path?.params?.dfspId && {dfspId: ctx.state.path.params.dfspId},
|
|
606
606
|
cache: ctx.state.cache,
|
|
607
607
|
logger: ctx.state.logger,
|
|
608
|
-
|
|
608
|
+
oidc: ctx.state.oidc,
|
|
609
609
|
};
|
|
610
610
|
|
|
611
611
|
const cacheKey = PartiesModel.generateKey(args);
|
|
@@ -640,7 +640,7 @@ const postQuotes = async (ctx) => {
|
|
|
640
640
|
...ctx.state.path?.params?.dfspId && {dfspId: ctx.state.path.params.dfspId},
|
|
641
641
|
cache: ctx.state.cache,
|
|
642
642
|
logger: ctx.state.logger,
|
|
643
|
-
|
|
643
|
+
oidc: ctx.state.oidc,
|
|
644
644
|
};
|
|
645
645
|
|
|
646
646
|
const cacheKey = QuotesModel.generateKey(args);
|
|
@@ -671,7 +671,7 @@ const postSimpleTransfers = async (ctx) => {
|
|
|
671
671
|
...ctx.state.path?.params?.dfspId && {dfspId: ctx.state.path.params.dfspId},
|
|
672
672
|
cache: ctx.state.cache,
|
|
673
673
|
logger: ctx.state.logger,
|
|
674
|
-
|
|
674
|
+
oidc: ctx.state.oidc,
|
|
675
675
|
};
|
|
676
676
|
|
|
677
677
|
const cacheKey = TransfersModel.generateKey(args);
|
|
@@ -51,7 +51,7 @@ const _validator = new Validate({ logExcludePaths });
|
|
|
51
51
|
let _initialize;
|
|
52
52
|
|
|
53
53
|
class OutboundApi extends EventEmitter {
|
|
54
|
-
constructor(conf, logger, cache, validator, metricsClient,
|
|
54
|
+
constructor(conf, logger, cache, validator, metricsClient, oidc, eventProducer, eventLogger, sharedAgents) {
|
|
55
55
|
super({ captureExceptions: true });
|
|
56
56
|
this._logger = logger.push({ component: this.constructor.name });
|
|
57
57
|
this._api = new Koa();
|
|
@@ -67,7 +67,7 @@ class OutboundApi extends EventEmitter {
|
|
|
67
67
|
})); // outbound always expects application/json
|
|
68
68
|
this._api.use(middlewares.applyState({
|
|
69
69
|
cache,
|
|
70
|
-
|
|
70
|
+
oidc,
|
|
71
71
|
conf,
|
|
72
72
|
metricsClient,
|
|
73
73
|
logExcludePaths,
|
|
@@ -86,7 +86,7 @@ class OutboundApi extends EventEmitter {
|
|
|
86
86
|
peerEndpoint: conf.peerEndpoint.replace(endpointRegex, ''),
|
|
87
87
|
proxyConfig: conf.proxyConfig,
|
|
88
88
|
logger: this._logger,
|
|
89
|
-
|
|
89
|
+
oidc: oidc,
|
|
90
90
|
tls: conf.outbound.tls,
|
|
91
91
|
}));
|
|
92
92
|
}
|
|
@@ -106,7 +106,7 @@ class OutboundApi extends EventEmitter {
|
|
|
106
106
|
}
|
|
107
107
|
|
|
108
108
|
class OutboundServer extends EventEmitter {
|
|
109
|
-
constructor(conf, logger, cache, metricsClient,
|
|
109
|
+
constructor(conf, logger, cache, metricsClient, oidc, mojaloopSharedAgents) {
|
|
110
110
|
super({ captureExceptions: true });
|
|
111
111
|
this._conf = conf;
|
|
112
112
|
this._logger = logger.push({ app: this.constructor.name });
|
|
@@ -126,7 +126,7 @@ class OutboundServer extends EventEmitter {
|
|
|
126
126
|
cache,
|
|
127
127
|
_validator,
|
|
128
128
|
metricsClient,
|
|
129
|
-
|
|
129
|
+
oidc,
|
|
130
130
|
this._eventProducer,
|
|
131
131
|
this._eventLogger,
|
|
132
132
|
{
|
|
@@ -201,17 +201,17 @@ module.exports = {
|
|
|
201
201
|
clientSecret: env.get('OAUTH_TOKEN_ENDPOINT_CLIENT_SECRET').asString(),
|
|
202
202
|
listenPort: env.get('OAUTH_TOKEN_ENDPOINT_LISTEN_PORT').asPortNumber(),
|
|
203
203
|
},
|
|
204
|
-
|
|
204
|
+
oidc: {
|
|
205
205
|
auth: {
|
|
206
|
-
staticToken: env.get('WSO2_BEARER_TOKEN').asString(),
|
|
207
|
-
tokenEndpoint: env.get('OAUTH_TOKEN_ENDPOINT').asString(),
|
|
206
|
+
staticToken: env.get('OIDC_BEARER_TOKEN').asString() || env.get('WSO2_BEARER_TOKEN').asString(), // for backward compatibility
|
|
207
|
+
tokenEndpoint: env.get('OAUTH_TOKEN_ENDPOINT').asString(), // Keycloak
|
|
208
208
|
clientKey: env.get('OAUTH_CLIENT_KEY').asString(),
|
|
209
209
|
clientSecret: env.get('OAUTH_CLIENT_SECRET').asString(),
|
|
210
210
|
refreshSeconds: env.get('OAUTH_REFRESH_SECONDS').default('60').asIntPositive(),
|
|
211
211
|
refreshRetrySeconds: env.get('OAUTH_REFRESH_RETRY_SECONDS').default('10').asIntPositive(),
|
|
212
212
|
},
|
|
213
213
|
mTlsEnabled: env.get('OAUTH_MUTUAL_TLS_ENABLED').default('false').asBool(),
|
|
214
|
-
requestAuthFailureRetryTimes: env.get('
|
|
214
|
+
requestAuthFailureRetryTimes: env.get('OIDC_AUTH_FAILURE_REQUEST_RETRIES').default('0').asIntPositive(),
|
|
215
215
|
},
|
|
216
216
|
rejectExpiredQuoteResponses: env.get('REJECT_EXPIRED_QUOTE_RESPONSES').default('false').asBool(),
|
|
217
217
|
rejectTransfersOnExpiredQuotes: env.get('REJECT_TRANSFERS_ON_EXPIRED_QUOTES').default('false').asBool(),
|
|
@@ -81,16 +81,16 @@ class Server extends EventEmitter {
|
|
|
81
81
|
// Create shared Mojaloop agents for switch communication (used by both servers)
|
|
82
82
|
this.mojaloopSharedAgents = this._createMojaloopSharedAgents(this.conf);
|
|
83
83
|
|
|
84
|
-
this.
|
|
85
|
-
this.
|
|
86
|
-
this.emit('error', '
|
|
84
|
+
this.oidc = createAuthClient(conf, logger);
|
|
85
|
+
this.oidc.auth.on('error', (msg) => {
|
|
86
|
+
this.emit('error', 'OIDC auth error in InboundApi', msg);
|
|
87
87
|
});
|
|
88
88
|
|
|
89
89
|
this.inboundServer = new InboundServer(
|
|
90
90
|
this.conf,
|
|
91
91
|
this.logger,
|
|
92
92
|
this.cache,
|
|
93
|
-
this.
|
|
93
|
+
this.oidc,
|
|
94
94
|
this.mojaloopSharedAgents,
|
|
95
95
|
);
|
|
96
96
|
this.inboundServer.on('error', (...args) => {
|
|
@@ -103,7 +103,7 @@ class Server extends EventEmitter {
|
|
|
103
103
|
this.logger,
|
|
104
104
|
this.cache,
|
|
105
105
|
this.metricsClient,
|
|
106
|
-
this.
|
|
106
|
+
this.oidc,
|
|
107
107
|
this.mojaloopSharedAgents,
|
|
108
108
|
);
|
|
109
109
|
this.outboundServer.on('error', (...args) => {
|
|
@@ -141,7 +141,7 @@ class Server extends EventEmitter {
|
|
|
141
141
|
config: this.conf,
|
|
142
142
|
logger: this.logger,
|
|
143
143
|
cache: this.cache,
|
|
144
|
-
|
|
144
|
+
oidc: this.oidc,
|
|
145
145
|
});
|
|
146
146
|
}
|
|
147
147
|
}
|
|
@@ -205,7 +205,7 @@ class Server extends EventEmitter {
|
|
|
205
205
|
|
|
206
206
|
async start() {
|
|
207
207
|
await this.cache.connect();
|
|
208
|
-
await this.
|
|
208
|
+
await this.oidc.auth.start();
|
|
209
209
|
|
|
210
210
|
// We only start the control client if we're running within Mojaloop Payment Manager.
|
|
211
211
|
// The control server is the Payment Manager Management API Service.
|
|
@@ -275,16 +275,16 @@ class Server extends EventEmitter {
|
|
|
275
275
|
restartActionsTaken.updateCache = true;
|
|
276
276
|
}
|
|
277
277
|
|
|
278
|
-
const
|
|
278
|
+
const updateOIDC = !_.isEqual(this.conf.oidc, newConf.oidc)
|
|
279
279
|
|| !_.isEqual(this.conf.outbound.tls, newConf.outbound.tls);
|
|
280
|
-
if (
|
|
281
|
-
this.
|
|
282
|
-
this.
|
|
283
|
-
this.
|
|
284
|
-
this.emit('error', '
|
|
280
|
+
if (updateOIDC) {
|
|
281
|
+
this.oidc.auth.stop();
|
|
282
|
+
this.oidc = createAuthClient(newConf, this.logger);
|
|
283
|
+
this.oidc.auth.on('error', (msg) => {
|
|
284
|
+
this.emit('error', 'OIDC auth error in InboundApi', msg);
|
|
285
285
|
});
|
|
286
|
-
await this.
|
|
287
|
-
restartActionsTaken.
|
|
286
|
+
await this.oidc.auth.start();
|
|
287
|
+
restartActionsTaken.updateOIDC = true;
|
|
288
288
|
}
|
|
289
289
|
|
|
290
290
|
this.logger.isDebugEnabled && this.logger.push({ oldConf: this.conf.inbound, newConf: newConf.inbound }).debug('Inbound server configuration');
|
|
@@ -300,7 +300,7 @@ class Server extends EventEmitter {
|
|
|
300
300
|
newConf,
|
|
301
301
|
this.logger,
|
|
302
302
|
this.cache,
|
|
303
|
-
this.
|
|
303
|
+
this.oidc,
|
|
304
304
|
this.mojaloopSharedAgents,
|
|
305
305
|
);
|
|
306
306
|
this.inboundServer.on('error', (...args) => {
|
|
@@ -328,7 +328,7 @@ class Server extends EventEmitter {
|
|
|
328
328
|
this.logger,
|
|
329
329
|
this.cache,
|
|
330
330
|
this.metricsClient,
|
|
331
|
-
this.
|
|
331
|
+
this.oidc,
|
|
332
332
|
this.mojaloopSharedAgents,
|
|
333
333
|
);
|
|
334
334
|
this.outboundServer.on('error', (...args) => {
|
|
@@ -350,7 +350,7 @@ class Server extends EventEmitter {
|
|
|
350
350
|
config: newConf,
|
|
351
351
|
logger: this.logger,
|
|
352
352
|
cache: this.cache,
|
|
353
|
-
|
|
353
|
+
oidc: this.oidc,
|
|
354
354
|
});
|
|
355
355
|
await this.fspiopEventHandler.start();
|
|
356
356
|
restartActionsTaken.updateFspiopEventHandler = true;
|
|
@@ -445,7 +445,7 @@ class Server extends EventEmitter {
|
|
|
445
445
|
|
|
446
446
|
stop() {
|
|
447
447
|
clearTimeout(this.pingTimeout);
|
|
448
|
-
this.
|
|
448
|
+
this.oidc.auth.stop();
|
|
449
449
|
this.controlClient?.removeAllListeners();
|
|
450
450
|
this.inboundServer.removeAllListeners();
|
|
451
451
|
return Promise.all([
|
|
@@ -201,7 +201,7 @@ class Cache {
|
|
|
201
201
|
|
|
202
202
|
/**
|
|
203
203
|
* Subscribes to a channel and waits for a single message with timeout support.
|
|
204
|
-
*
|
|
204
|
+
*
|
|
205
205
|
* NOTE:
|
|
206
206
|
* This implementation uses EventEmitter to handle Redis pub/sub concurrency issues
|
|
207
207
|
* that occur when multiple subscribers listen to the same channel simultaneously.
|
|
@@ -267,7 +267,7 @@ class Cache {
|
|
|
267
267
|
isResolved = true;
|
|
268
268
|
|
|
269
269
|
this._logger.push({ channel, needParse }).debug('Received message on subscribed channel');
|
|
270
|
-
|
|
270
|
+
|
|
271
271
|
cleanup();
|
|
272
272
|
|
|
273
273
|
try {
|
|
@@ -285,7 +285,7 @@ class Cache {
|
|
|
285
285
|
// Subscribe to Redis channel
|
|
286
286
|
this._subscriptionClient.subscribe(channel, (msg) => {
|
|
287
287
|
this._channelEmitter.emit(channel, msg);
|
|
288
|
-
|
|
288
|
+
|
|
289
289
|
// Auto-unsubscribe if no more listeners
|
|
290
290
|
unsubscribeFromRedis('auto-cleanup').catch(err => {
|
|
291
291
|
this._logger.push({ channel }).warn('Auto-unsubscribe failed', err);
|
|
@@ -386,8 +386,9 @@ class Cache {
|
|
|
386
386
|
} else {
|
|
387
387
|
// we should not be asked to unsubscribe from a subscription we do not have. Raise this as a promise
|
|
388
388
|
// rejection so it can be spotted. It may indicate a logic bug somewhere else
|
|
389
|
-
|
|
390
|
-
|
|
389
|
+
const errMessage = `Cache not subscribed to channel ${channel} for callbackId ${callbackId}`;
|
|
390
|
+
this._logger.error(errMessage);
|
|
391
|
+
throw new Error(errMessage);
|
|
391
392
|
}
|
|
392
393
|
}
|
|
393
394
|
|
|
@@ -395,7 +396,7 @@ class Cache {
|
|
|
395
396
|
if (channelKey && typeof subId === 'number') {
|
|
396
397
|
return this.unsubscribe(channelKey, subId)
|
|
397
398
|
.catch(err => {
|
|
398
|
-
this._logger.
|
|
399
|
+
this._logger.warn(`Unsubscribing cache error [${channelKey} ${subId}]: `, err);
|
|
399
400
|
});
|
|
400
401
|
}
|
|
401
402
|
}
|
|
@@ -413,11 +414,11 @@ class Cache {
|
|
|
413
414
|
const client = redis.createClient({ url: this._url });
|
|
414
415
|
|
|
415
416
|
client.on('error', (err) => {
|
|
416
|
-
this._logger.
|
|
417
|
+
this._logger.error('Error from REDIS client getting subscriber: ', err);
|
|
417
418
|
});
|
|
418
419
|
|
|
419
|
-
client.on('reconnecting', (
|
|
420
|
-
this._logger.
|
|
420
|
+
client.on('reconnecting', () => {
|
|
421
|
+
this._logger.verbose('REDIS client reconnecting...');
|
|
421
422
|
});
|
|
422
423
|
|
|
423
424
|
client.on('subscribe', (channel, count) => {
|
|
@@ -431,11 +432,11 @@ class Cache {
|
|
|
431
432
|
});
|
|
432
433
|
|
|
433
434
|
client.on('connect', () => {
|
|
434
|
-
this._logger.
|
|
435
|
+
this._logger.verbose(`REDIS client connected at: ${this._url}`);
|
|
435
436
|
});
|
|
436
437
|
|
|
437
438
|
client.on('ready', () => {
|
|
438
|
-
this._logger.
|
|
439
|
+
this._logger.info('REDIS client is ready');
|
|
439
440
|
});
|
|
440
441
|
await client.connect();
|
|
441
442
|
|