diff --git a/package-lock.json b/package-lock.json index f1a43051..7dcb9f33 100644 --- a/package-lock.json +++ b/package-lock.json @@ -16,7 +16,7 @@ "@js-soft/docdb-access-mongo": "1.1.9", "@js-soft/node-logger": "1.2.0", "@js-soft/ts-utils": "^2.3.3", - "@nmshd/runtime": "6.20.0", + "@nmshd/runtime": "6.23.0", "@nmshd/typescript-ioc": "^3.2.4", "@nmshd/typescript-rest": "^3.0.5", "agentkeepalive": "4.6.0", @@ -46,8 +46,8 @@ "@js-soft/eslint-config-ts": "1.6.13", "@js-soft/license-check": "1.0.9", "@nmshd/connector-sdk": "*", - "@nmshd/content": "6.20.0", - "@nmshd/core-types": "6.20.0", + "@nmshd/content": "6.23.0", + "@nmshd/core-types": "6.23.0", "@nmshd/typescript-rest-swagger": "^1.4.1", "@types/amqplib": "^0.10.6", "@types/compression": "^1.7.5", @@ -1729,39 +1729,39 @@ "link": true }, "node_modules/@nmshd/consumption": { - "version": "6.20.0", - "resolved": "https://registry.npmjs.org/@nmshd/consumption/-/consumption-6.20.0.tgz", - "integrity": "sha512-0jSoknBynFAPQ6RMTH0SLIZxI3tlVvtLMKcQsEL+Mfym/DZoN8XtQ+68MF8lJI0MiDl8rX3wy4YUeBxjX9CiVQ==", + "version": "6.23.0", + "resolved": "https://registry.npmjs.org/@nmshd/consumption/-/consumption-6.23.0.tgz", + "integrity": "sha512-9Qlzc3gfbXcBqZJUOyVrddMG+oQn5UFhekW+136FQgy91TWCEJ8WJeER5U9JNxgNnmalh5ThyfZQjSRRCjdxgQ==", "license": "MIT", "dependencies": { "@js-soft/docdb-querytranslator": "^1.1.5", "@js-soft/ts-serval": "2.0.11", "@js-soft/ts-utils": "2.3.3", - "@nmshd/content": "6.20.0", - "@nmshd/core-types": "6.20.0", + "@nmshd/content": "6.23.0", + "@nmshd/core-types": "6.23.0", "@nmshd/iql": "^1.0.2", - "@nmshd/transport": "6.20.0", + "@nmshd/transport": "6.23.0", "lodash": "^4.17.21", "ts-simple-nameof": "^1.3.1" } }, "node_modules/@nmshd/content": { - "version": "6.20.0", - "resolved": "https://registry.npmjs.org/@nmshd/content/-/content-6.20.0.tgz", - "integrity": "sha512-ApdHz/PTXRNyoQnOl++Te2aUE1La+iCJiBDgpj8J5g9MC7p/xBfPCm2xD5KZ7fofAYB1Pm7x6RwSehpPxcae7w==", + "version": "6.23.0", + "resolved": "https://registry.npmjs.org/@nmshd/content/-/content-6.23.0.tgz", + "integrity": "sha512-5FfAnQRdJbZd2PPPoOCo2r2hJIAKCOa+ELAXAY8h5gXBxskYCo6lJTZ8NcZki3BrUKyMejnWTsShjTIGclmbcA==", "license": "MIT", "dependencies": { "@js-soft/ts-serval": "2.0.11", - "@nmshd/core-types": "6.20.0", + "@nmshd/core-types": "6.23.0", "@nmshd/iql": "^1.0.2", "luxon": "^3.5.0", "ts-simple-nameof": "^1.3.1" } }, "node_modules/@nmshd/core-types": { - "version": "6.20.0", - "resolved": "https://registry.npmjs.org/@nmshd/core-types/-/core-types-6.20.0.tgz", - "integrity": "sha512-tF6hrdZhJe35Om4YMzlXaBwUEkuXYfDcBhO4/QIolMEMHAc7aur5InuF1maol8bi/4G6YVQ7QNuWpeGRQb0EAg==", + "version": "6.23.0", + "resolved": "https://registry.npmjs.org/@nmshd/core-types/-/core-types-6.23.0.tgz", + "integrity": "sha512-k1Vr2OCaDnLPlP2ojGx8m0k8GNJgVcdjl/vq2LL9IDQUICyKf0C19wYmcyC5+UaKp4dslz4XAvS89grFMJF0XA==", "license": "MIT", "dependencies": { "@js-soft/logging-abstractions": "^1.0.1", @@ -1787,21 +1787,21 @@ "license": "MIT" }, "node_modules/@nmshd/runtime": { - "version": "6.20.0", - "resolved": "https://registry.npmjs.org/@nmshd/runtime/-/runtime-6.20.0.tgz", - "integrity": "sha512-SdXUJ0PWLE5K+THWHGSs7jH+j+DHI2S1Vq52t9REWDy4uXHD2+O0/+aIozc8cwt3MR7QaRt1hZDk6+sQ/33Ofw==", + "version": "6.23.0", + "resolved": "https://registry.npmjs.org/@nmshd/runtime/-/runtime-6.23.0.tgz", + "integrity": "sha512-NhBnKvobnp45+Ho15WIxGoaD4EbxYA7AgP8/qI//0eyZnVfPIcPzxmKyOVUm6JHS8S5lBzk93iVWQ0G5wlXhVg==", "license": "MIT", "dependencies": { "@js-soft/docdb-querytranslator": "^1.1.5", "@js-soft/logging-abstractions": "^1.0.1", "@js-soft/ts-serval": "2.0.11", "@js-soft/ts-utils": "^2.3.3", - "@nmshd/consumption": "6.20.0", - "@nmshd/content": "6.20.0", - "@nmshd/core-types": "6.20.0", + "@nmshd/consumption": "6.23.0", + "@nmshd/content": "6.23.0", + "@nmshd/core-types": "6.23.0", "@nmshd/crypto": "2.1.0", "@nmshd/iql": "^1.0.2", - "@nmshd/transport": "6.20.0", + "@nmshd/transport": "6.23.0", "@nmshd/typescript-ioc": "3.2.4", "ajv": "^8.17.1", "ajv-errors": "^3.0.0", @@ -1815,16 +1815,16 @@ } }, "node_modules/@nmshd/transport": { - "version": "6.20.0", - "resolved": "https://registry.npmjs.org/@nmshd/transport/-/transport-6.20.0.tgz", - "integrity": "sha512-Iaj53EVPsWgqChA3G6BKqreduW5Cs8Two9g2U5PqZWzUTpPV5qX6MNdmUIivORBKtepviJQ0ZoO6oaOt/blR+Q==", + "version": "6.23.0", + "resolved": "https://registry.npmjs.org/@nmshd/transport/-/transport-6.23.0.tgz", + "integrity": "sha512-A2uiWesqQU4FiimqtyoLHCVrINw8PL22B/CGQss5RPNDlRmNrOJLYT02hcBnSBn/HoV+62nmAzVOAXNMAFRw2g==", "license": "MIT", "dependencies": { "@js-soft/docdb-access-abstractions": "1.0.4", "@js-soft/logging-abstractions": "^1.0.1", "@js-soft/simple-logger": "1.0.5", "@js-soft/ts-utils": "^2.3.3", - "@nmshd/core-types": "6.20.0", + "@nmshd/core-types": "6.23.0", "@nmshd/crypto": "2.1.0", "axios": "^1.7.9", "fast-json-patch": "^3.1.1", @@ -1836,13 +1836,13 @@ "qs": "^6.13.1", "reflect-metadata": "^0.2.2", "ts-simple-nameof": "^1.3.1", - "uuid": "^11.0.3" + "uuid": "^11.0.5" } }, "node_modules/@nmshd/transport/node_modules/uuid": { - "version": "11.0.3", - "resolved": "https://registry.npmjs.org/uuid/-/uuid-11.0.3.tgz", - "integrity": "sha512-d0z310fCWv5dJwnX1Y/MncBAqGMKEzlBb1AOf7z9K8ALnd0utBX/msg/fA0+sbyN1ihbMsLhrBlnl1ak7Wa0rg==", + "version": "11.0.5", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-11.0.5.tgz", + "integrity": "sha512-508e6IcKLrhxKdBbcA2b4KQZlLVp2+J5UwQ6F7Drckkc5N9ZJwFa4TgWtsww9UG8fGHbm6gbV19TdM5pQ4GaIA==", "funding": [ "https://github.com/sponsors/broofa", "https://github.com/sponsors/ctavan" @@ -2996,9 +2996,10 @@ } }, "node_modules/@types/qs": { - "version": "6.9.17", - "resolved": "https://registry.npmjs.org/@types/qs/-/qs-6.9.17.tgz", - "integrity": "sha512-rX4/bPcfmvxHDv0XjfJELTTr+iB+tn032nPILqHm5wbthUUUuVtNGGqzhya9XUxjTP8Fpr0qYgSZZKxGY++svQ==" + "version": "6.9.18", + "resolved": "https://registry.npmjs.org/@types/qs/-/qs-6.9.18.tgz", + "integrity": "sha512-kK7dgTYDyGqS+e2Q4aK9X3D7q234CIZ1Bv0q/7Z5IwRDoADNU81xXJK/YVyLbLTZCoIwUoDoffFeF+p/eIklAA==", + "license": "MIT" }, "node_modules/@types/ramda": { "version": "0.30.2", @@ -4291,6 +4292,7 @@ "version": "1.0.7", "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.7.tgz", "integrity": "sha512-GHTSNSYICQ7scH7sZ+M2rFopRoLh8t2bLSW6BbgrtLsahOIB5iyAVJf9GjWK3cYTDaMj4XdBpM1cA6pIS0Kv2w==", + "dev": true, "license": "MIT", "dependencies": { "es-define-property": "^1.0.0", @@ -4306,6 +4308,35 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/call-bind-apply-helpers": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/call-bind-apply-helpers/-/call-bind-apply-helpers-1.0.1.tgz", + "integrity": "sha512-BhYE+WDaywFg2TBWYNXAE+8B1ATnThNBqXHP5nQu0jWJdVvY2hvkpyB3qOmtmDePiS5/BDQ8wASEWGMWRG148g==", + "license": "MIT", + "dependencies": { + "es-errors": "^1.3.0", + "function-bind": "^1.1.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/call-bound": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/call-bound/-/call-bound-1.0.3.tgz", + "integrity": "sha512-YTd+6wGlNlPxSuri7Y6X8tY2dmm12UMH66RpKMhiX6rsk5wXXnYgbUcOt8kiS31/AjfoTOvCsE+w8nZQLQnzHA==", + "license": "MIT", + "dependencies": { + "call-bind-apply-helpers": "^1.0.1", + "get-intrinsic": "^1.2.6" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/call-me-maybe": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/call-me-maybe/-/call-me-maybe-1.0.2.tgz", @@ -5188,6 +5219,7 @@ "version": "1.1.4", "resolved": "https://registry.npmjs.org/define-data-property/-/define-data-property-1.1.4.tgz", "integrity": "sha512-rBMvIzlpA8v6E+SJZoo++HAYqsLrkg7MSfIinMPFhmkorw7X+dOXVJQs+QT69zGkzMyfDnIMN2Wid1+NbL3T+A==", + "dev": true, "license": "MIT", "dependencies": { "es-define-property": "^1.0.0", @@ -5347,6 +5379,20 @@ "node": ">=4" } }, + "node_modules/dunder-proto": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/dunder-proto/-/dunder-proto-1.0.1.tgz", + "integrity": "sha512-KIN/nDJBQRcXw0MLVhZE9iQHmG68qAVIBg9CqmUYjmQIhgij9U5MFvrqkUL5FbtyyzZuOeOt0zdeRe4UY7ct+A==", + "license": "MIT", + "dependencies": { + "call-bind-apply-helpers": "^1.0.1", + "es-errors": "^1.3.0", + "gopd": "^1.2.0" + }, + "engines": { + "node": ">= 0.4" + } + }, "node_modules/duplexer": { "version": "0.1.2", "resolved": "https://registry.npmjs.org/duplexer/-/duplexer-0.1.2.tgz", @@ -5564,13 +5610,10 @@ } }, "node_modules/es-define-property": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/es-define-property/-/es-define-property-1.0.0.tgz", - "integrity": "sha512-jxayLKShrEqqzJ0eumQbVhTYQM27CfT1T35+gCgDFoL82JLsXqTJ76zv6A0YLOgEnLUMvLzsDsGIrl8NFpT2gQ==", + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/es-define-property/-/es-define-property-1.0.1.tgz", + "integrity": "sha512-e3nRfgfUZ4rNGL232gUgX06QNyyez04KdjFrF+LTRoOXmrOgFKDg4BCdsjW8EnT69eqdYGmRpJwiPVYNrCaW3g==", "license": "MIT", - "dependencies": { - "get-intrinsic": "^1.2.4" - }, "engines": { "node": ">= 0.4" } @@ -5588,7 +5631,6 @@ "version": "1.0.0", "resolved": "https://registry.npmjs.org/es-object-atoms/-/es-object-atoms-1.0.0.tgz", "integrity": "sha512-MZ4iQ6JwHOBQjahnjwaC1ZtIBH+2ohjamzAO3oaHcXYup7qxjF2fixyH+Q71voWHeOkI2q/TnJao/KfXYIZWbw==", - "dev": true, "license": "MIT", "dependencies": { "es-errors": "^1.3.0" @@ -6020,6 +6062,7 @@ "version": "3.0.1", "resolved": "https://registry.npmjs.org/eventsource/-/eventsource-3.0.1.tgz", "integrity": "sha512-tyGtsrTc9fi+N5qFU6G2MLjcBbsdCOQ/QE9Cc96Mt6q02YkQrIJGOaNMg6qiXRJDzxecN7BntJYNRE/j0OIhMQ==", + "license": "MIT", "dependencies": { "eventsource-parser": "^3.0.0" }, @@ -6743,16 +6786,21 @@ } }, "node_modules/get-intrinsic": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.2.4.tgz", - "integrity": "sha512-5uYhsJH8VJBTv7oslg4BznJYhDoRI6waYCxMmCdnTrcCrHA/fCFKoTFz2JKKE0HdDFUF7/oQuhzumXJK7paBRQ==", + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.2.7.tgz", + "integrity": "sha512-VW6Pxhsrk0KAOqs3WEd0klDiF/+V7gQOpAvY1jVU/LHmaD/kQO4523aiJuikX/QAKYiW6x8Jh+RJej1almdtCA==", "license": "MIT", "dependencies": { + "call-bind-apply-helpers": "^1.0.1", + "es-define-property": "^1.0.1", "es-errors": "^1.3.0", + "es-object-atoms": "^1.0.0", "function-bind": "^1.1.2", - "has-proto": "^1.0.1", - "has-symbols": "^1.0.3", - "hasown": "^2.0.0" + "get-proto": "^1.0.0", + "gopd": "^1.2.0", + "has-symbols": "^1.1.0", + "hasown": "^2.0.2", + "math-intrinsics": "^1.1.0" }, "engines": { "node": ">= 0.4" @@ -6771,6 +6819,19 @@ "node": ">=8.0.0" } }, + "node_modules/get-proto": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/get-proto/-/get-proto-1.0.1.tgz", + "integrity": "sha512-sTSfBjoXBp89JvIKIefqw7U2CCebsc74kiY6awiGogKtoSGbgjYE/G/+l9sF3MWFPNc9IcoOC4ODfKHfxFmp0g==", + "license": "MIT", + "dependencies": { + "dunder-proto": "^1.0.1", + "es-object-atoms": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + } + }, "node_modules/get-stream": { "version": "6.0.1", "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-6.0.1.tgz", @@ -6974,12 +7035,12 @@ } }, "node_modules/gopd": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.0.1.tgz", - "integrity": "sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA==", + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.2.0.tgz", + "integrity": "sha512-ZUKRh6/kUFoAiTAtTYPZJ3hw9wNxx+BIBOijnlG9PnrJsCcSjs1wyyD6vJpaYtgnzDrKYRSqf3OO6Rfa93xsRg==", "license": "MIT", - "dependencies": { - "get-intrinsic": "^1.1.3" + "engines": { + "node": ">= 0.4" }, "funding": { "url": "https://github.com/sponsors/ljharb" @@ -7035,6 +7096,7 @@ "version": "1.0.2", "resolved": "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.2.tgz", "integrity": "sha512-55JNKuIW+vq4Ke1BjOTjM2YctQIvCT7GFzHwmfZPGo5wnrgkid0YQtnAleFSqumZm4az3n2BS+erby5ipJdgrg==", + "dev": true, "license": "MIT", "dependencies": { "es-define-property": "^1.0.0" @@ -7047,6 +7109,7 @@ "version": "1.0.3", "resolved": "https://registry.npmjs.org/has-proto/-/has-proto-1.0.3.tgz", "integrity": "sha512-SJ1amZAJUiZS+PhsVLf5tGydlaVB8EdFpaSO4gmiUKUOxk8qzn5AIy4ZeJUmh22znIdk/uMAUT2pl3FxzVUH+Q==", + "dev": true, "license": "MIT", "engines": { "node": ">= 0.4" @@ -7056,9 +7119,9 @@ } }, "node_modules/has-symbols": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.3.tgz", - "integrity": "sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.1.0.tgz", + "integrity": "sha512-1cDNdwJ2Jaohmb3sg4OmKaMBwuC48sYni5HUw2DvsC8LjGTLK9h+eb1X6RyuOHe4hT0ULCW68iomhjUoKUqlPQ==", "license": "MIT", "engines": { "node": ">= 0.4" @@ -9174,6 +9237,15 @@ "node": ">= 12" } }, + "node_modules/math-intrinsics": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/math-intrinsics/-/math-intrinsics-1.1.0.tgz", + "integrity": "sha512-/IXtbwEk5HTPyEwyKX6hGkYXxM9nbj64B+ilVJnC/R6B0pH5G4V3b0pVbL7DBj4tkhBAppbQUlf6F6Xl9LHu1g==", + "license": "MIT", + "engines": { + "node": ">= 0.4" + } + }, "node_modules/media-typer": { "version": "0.3.0", "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz", @@ -10221,9 +10293,9 @@ } }, "node_modules/object-inspect": { - "version": "1.13.2", - "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.13.2.tgz", - "integrity": "sha512-IRZSRuzJiynemAXPYtPe5BoI/RESNYR7TYm50MC5Mqbd3Jmw5y790sErYw3V6SryFJD64b74qQQs9wn5Bg/k3g==", + "version": "1.13.3", + "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.13.3.tgz", + "integrity": "sha512-kDCGIbxkDSXE3euJZZXzc6to7fCrKHNI/hSRQnRuQ+BWjFNzZwiFF8fj/6o2t2G9/jTj8PSIYTfCLelLZEeRpA==", "license": "MIT", "engines": { "node": ">= 0.4" @@ -11098,11 +11170,12 @@ } }, "node_modules/qs": { - "version": "6.13.1", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.13.1.tgz", - "integrity": "sha512-EJPeIn0CYrGu+hli1xilKAPXODtJ12T0sP63Ijx2/khC2JtuaN3JyNIpvmnkmaEtha9ocbG4A4cMcr+TvqvwQg==", + "version": "6.14.0", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.14.0.tgz", + "integrity": "sha512-YWWTjgABSKcvs/nWBi9PycY/JiPJqOD4JA6o9Sej2AtvSGarXxKC3OQSk4pAarbdQlKAh5D4FCQkJNkW+GAn3w==", + "license": "BSD-3-Clause", "dependencies": { - "side-channel": "^1.0.6" + "side-channel": "^1.1.0" }, "engines": { "node": ">=0.6" @@ -11860,6 +11933,7 @@ "version": "1.2.2", "resolved": "https://registry.npmjs.org/set-function-length/-/set-function-length-1.2.2.tgz", "integrity": "sha512-pgRc4hJ4/sNjWCSS9AmnS40x3bNMDTknHgL5UaMBTMyJnU90EgWh1Rz+MC9eFu4BuN/UwZjKQuY/1v3rM7HMfg==", + "dev": true, "license": "MIT", "dependencies": { "define-data-property": "^1.1.4", @@ -11939,15 +12013,69 @@ } }, "node_modules/side-channel": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.6.tgz", - "integrity": "sha512-fDW/EZ6Q9RiO8eFG8Hj+7u/oW+XrPTIChwCOM2+th2A6OblDtYYIpve9m+KvI9Z4C9qSEXlaGR6bTEYHReuglA==", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.1.0.tgz", + "integrity": "sha512-ZX99e6tRweoUXqR+VBrslhda51Nh5MTQwou5tnUDgbtyM0dBgmhEDtWGP/xbKn6hqfPRHujUNwz5fy/wbbhnpw==", "license": "MIT", "dependencies": { - "call-bind": "^1.0.7", "es-errors": "^1.3.0", - "get-intrinsic": "^1.2.4", - "object-inspect": "^1.13.1" + "object-inspect": "^1.13.3", + "side-channel-list": "^1.0.0", + "side-channel-map": "^1.0.1", + "side-channel-weakmap": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/side-channel-list": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/side-channel-list/-/side-channel-list-1.0.0.tgz", + "integrity": "sha512-FCLHtRD/gnpCiCHEiJLOwdmFP+wzCmDEkc9y7NsYxeF4u7Btsn1ZuwgwJGxImImHicJArLP4R0yX4c2KCrMrTA==", + "license": "MIT", + "dependencies": { + "es-errors": "^1.3.0", + "object-inspect": "^1.13.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/side-channel-map": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/side-channel-map/-/side-channel-map-1.0.1.tgz", + "integrity": "sha512-VCjCNfgMsby3tTdo02nbjtM/ewra6jPHmpThenkTYh8pG9ucZ/1P8So4u4FGBek/BjpOVsDCMoLA/iuBKIFXRA==", + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.2", + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.5", + "object-inspect": "^1.13.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/side-channel-weakmap": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/side-channel-weakmap/-/side-channel-weakmap-1.0.2.tgz", + "integrity": "sha512-WPS/HvHQTYnHisLo9McqBHOJk2FkHO/tlpvldyrnem4aeQp4hai3gythswg6p01oSoTl58rcpiFAjF2br2Ak2A==", + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.2", + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.5", + "object-inspect": "^1.13.3", + "side-channel-map": "^1.0.1" }, "engines": { "node": ">= 0.4" @@ -13874,13 +14002,13 @@ "name": "@nmshd/connector-sdk", "license": "MIT", "dependencies": { - "@nmshd/content": "6.20.0", + "@nmshd/content": "6.23.0", "axios": "^1.7.9", "form-data": "^4.0.1", - "qs": "^6.13.1" + "qs": "^6.14.0" }, "devDependencies": { - "@types/qs": "^6.9.17", + "@types/qs": "^6.9.18", "ts-json-schema-generator": "^2.3.0" } } diff --git a/package.json b/package.json index 867c437e..50a17b94 100644 --- a/package.json +++ b/package.json @@ -83,7 +83,7 @@ "@js-soft/docdb-access-mongo": "1.1.9", "@js-soft/node-logger": "1.2.0", "@js-soft/ts-utils": "^2.3.3", - "@nmshd/runtime": "6.20.0", + "@nmshd/runtime": "6.23.0", "@nmshd/typescript-ioc": "^3.2.4", "@nmshd/typescript-rest": "^3.0.5", "agentkeepalive": "4.6.0", @@ -113,8 +113,8 @@ "@js-soft/eslint-config-ts": "1.6.13", "@js-soft/license-check": "1.0.9", "@nmshd/connector-sdk": "*", - "@nmshd/content": "6.20.0", - "@nmshd/core-types": "6.20.0", + "@nmshd/content": "6.23.0", + "@nmshd/core-types": "6.23.0", "@nmshd/typescript-rest-swagger": "^1.4.1", "@types/amqplib": "^0.10.6", "@types/compression": "^1.7.5", diff --git a/packages/sdk/package.json b/packages/sdk/package.json index 3abb4c33..4c256994 100644 --- a/packages/sdk/package.json +++ b/packages/sdk/package.json @@ -30,13 +30,13 @@ "build:schemas:watch": "npx nodemon -e ts -w 'src/types' --exec 'npm run build:schemas'" }, "dependencies": { - "@nmshd/content": "6.20.0", + "@nmshd/content": "6.23.0", "axios": "^1.7.9", "form-data": "^4.0.1", - "qs": "^6.13.1" + "qs": "^6.14.0" }, "devDependencies": { - "@types/qs": "^6.9.17", + "@types/qs": "^6.9.18", "ts-json-schema-generator": "^2.3.0" }, "publishConfig": { diff --git a/test/attributes.test.ts b/test/attributes.test.ts index f29ff767..5fbaf228 100644 --- a/test/attributes.test.ts +++ b/test/attributes.test.ts @@ -7,6 +7,7 @@ import { getTimeout } from "./lib/setTimeout"; import { connectAndEmptyCollection, createRepositoryAttribute, + deleteAllAttributes, establishRelationship, executeFullCreateAndShareRelationshipAttributeFlow, executeFullCreateAndShareRepositoryAttributeFlow, @@ -31,7 +32,9 @@ beforeAll(async () => { }, getTimeout(30000)); afterAll(() => launcher.stop()); -beforeEach(() => { +beforeEach(async () => { + await deleteAllAttributes(client1, client1Address); + await deleteAllAttributes(client2, client2Address); client1._eventBus?.reset(); client2._eventBus?.reset(); }); diff --git a/test/identityMetadata.test.ts b/test/identityMetadata.test.ts index 4bde0dc4..170374f9 100644 --- a/test/identityMetadata.test.ts +++ b/test/identityMetadata.test.ts @@ -1,12 +1,13 @@ -import { Random, RandomCharacterRange } from "@nmshd/transport"; import { ConnectorClientWithMetadata, Launcher } from "./lib/Launcher"; import { ValidationSchema } from "./lib/validation"; const launcher = new Launcher(); let client1: ConnectorClientWithMetadata; +let client1Address: string; beforeAll(async () => { [client1] = await launcher.launch(1); + client1Address = (await client1.account.getIdentityInfo()).result.address; }, 30000); afterAll(() => launcher.stop()); @@ -14,35 +15,31 @@ afterAll(() => launcher.stop()); describe("IdentityMetadata", () => { test.each([ { - reference: "did:e:localhost:dids:1234567890abcdef123456", key: undefined, value: "value" }, { - reference: "did:e:localhost:dids:1234567890abcdef123456", key: undefined, value: { a: "json" } }, { - reference: "did:e:localhost:dids:1234567890abcdef123456", key: "key", value: "value" } ])("should upsert an IdentityMetadata with key '$key' and value '$value'", async (data) => { - const result = await client1.identityMetadata.upsertIdentityMetadata(data); + const result = await client1.identityMetadata.upsertIdentityMetadata({ ...data, reference: client1Address }); expect(result).toBeSuccessful(ValidationSchema.IdentityMetadata); const identityMetadata = result.result; - expect(identityMetadata.reference.toString()).toStrictEqual(data.reference); + expect(identityMetadata.reference.toString()).toStrictEqual(client1Address); expect(identityMetadata.key).toStrictEqual(data.key); expect(identityMetadata.value).toStrictEqual(data.value); }); test("should get an IdentityMetadata", async () => { - const reference = await generateReference(); - await client1.identityMetadata.upsertIdentityMetadata({ reference: reference, value: "value" }); + await client1.identityMetadata.upsertIdentityMetadata({ reference: client1Address, value: "value" }); - const result = await client1.identityMetadata.getIdentityMetadata(reference); + const result = await client1.identityMetadata.getIdentityMetadata(client1Address); expect(result).toBeSuccessful(ValidationSchema.IdentityMetadata); const identityMetadata = result.result; @@ -50,18 +47,12 @@ describe("IdentityMetadata", () => { }); test("should delete an IdentityMetadata", async () => { - const reference = await generateReference(); - await client1.identityMetadata.upsertIdentityMetadata({ reference: reference, value: "value" }); + await client1.identityMetadata.upsertIdentityMetadata({ reference: client1Address, value: "value" }); - const result = await client1.identityMetadata.deleteIdentityMetadata(reference); + const result = await client1.identityMetadata.deleteIdentityMetadata(client1Address); expect(result).toBeSuccessfulVoidResult(); - const getResult = await client1.identityMetadata.getIdentityMetadata(reference); - expect(getResult).toBeAnError("IdentityMetadata not found. Make sure the ID exists and the record is not expired.", "error.runtime.recordNotFound"); + const getResult = await client1.identityMetadata.getIdentityMetadata(client1Address); + expect(getResult).toBeAnError("There is no stored IdentityMetadata for the specified combination of reference and key.", "error.runtime.identityMetadata.notFound"); }); }); - -async function generateReference(): Promise { - const identityPart = await Random.string(22, `${RandomCharacterRange.Digit}abcdef`); - return `did:e:localhost:dids:${identityPart}`; -} diff --git a/test/iqlquery.test.ts b/test/iqlquery.test.ts index 1cdb3c12..ef8f6443 100644 --- a/test/iqlquery.test.ts +++ b/test/iqlquery.test.ts @@ -37,7 +37,7 @@ beforeAll(async () => { owner: client1Address, value: { "@type": "GivenName", - value: "AGivenName" + value: "ASecondGivenName" }, tags: ["language:de", "content:edu.de.higher"] } diff --git a/test/lib/testUtils.ts b/test/lib/testUtils.ts index 39e4e721..8d8a4ef6 100644 --- a/test/lib/testUtils.ts +++ b/test/lib/testUtils.ts @@ -519,3 +519,36 @@ export async function waitForEvent( clearTimeout(timeoutId); }); } + +export async function deleteAllAttributes(client: ConnectorClient, clientAddress: string): Promise { + const attributesResponse = await client.attributes.getAttributes({}); + expect(attributesResponse).toBeSuccessful(ValidationSchema.ConnectorAttributes); + + for (const attribute of attributesResponse.result) { + if (!attribute.shareInfo) { + const result = await client.attributes.deleteRepositoryAttribute(attribute.id); + expect(result).toBeSuccessfulVoidResult(); + continue; + } + + if (attribute.shareInfo.thirdPartyAddress) { + const result = await client.attributes.deleteThirdPartyRelationshipAttributeAndNotifyPeer(attribute.id); + expect(result).toBeSuccessful(ValidationSchema.DeleteThirdPartyRelationshipAttributeAndNotifyPeerResponse); + continue; + } + + if (attribute.content.owner === clientAddress) { + const result = await client.attributes.deleteOwnSharedAttributeAndNotifyPeer(attribute.id); + expect(result).toBeSuccessful(ValidationSchema.DeleteOwnSharedAttributeAndNotifyPeerResponse); + continue; + } + + if (attribute.content.owner !== clientAddress) { + const result = await client.attributes.deletePeerSharedAttributeAndNotifyOwner(attribute.id); + expect(result).toBeSuccessful(ValidationSchema.DeletePeerSharedAttributeAndNotifyOwnerResponse); + continue; + } + + throw new Error("No delete method called"); + } +} diff --git a/test/lib/validation.ts b/test/lib/validation.ts index bd9f2176..9907509e 100644 --- a/test/lib/validation.ts +++ b/test/lib/validation.ts @@ -37,7 +37,10 @@ export enum ValidationSchema { ConnectorAttribute = "ConnectorAttribute", ConnectorAttributes = "ConnectorAttributes", ConnectorAttributeTagCollection = "ConnectorAttributeTagCollection", - SucceedAttributeResponse = "SucceedAttributeResponse" + SucceedAttributeResponse = "SucceedAttributeResponse", + DeleteThirdPartyRelationshipAttributeAndNotifyPeerResponse = "DeleteThirdPartyRelationshipAttributeAndNotifyPeerResponse", + DeleteOwnSharedAttributeAndNotifyPeerResponse = "DeleteOwnSharedAttributeAndNotifyPeerResponse", + DeletePeerSharedAttributeAndNotifyOwnerResponse = "DeletePeerSharedAttributeAndNotifyOwnerResponse" } export function validateSchema(schemaName: ValidationSchema, obj: any): void {