From 16bdcdfc94b05c2a385b54e17f83ae2d1d27eca4 Mon Sep 17 00:00:00 2001 From: petruki <31597636+petruki@users.noreply.github.com> Date: Tue, 27 Oct 2026 17:11:08 -0700 Subject: [PATCH 1/2] chore: bump axios@1.21.0, mongoose@9.11.4, mongo queries --- .env-cmdrc-template | 4 +- README.md | 4 +- npm-shrinkwrap.json | 183 +++++++++++----------- package.json | 6 +- src/aggregator/configuration-resolvers.js | 3 +- src/aggregator/resolvers.js | 12 +- src/services/criteria.js | 2 +- 7 files changed, 110 insertions(+), 104 deletions(-) diff --git a/.env-cmdrc-template b/.env-cmdrc-template index 88d9b40..035d463 100644 --- a/.env-cmdrc-template +++ b/.env-cmdrc-template @@ -1,7 +1,7 @@ { "dev": { "ENV": "TEST", - "PORT": "3000", + "PORT": "3001", "SSL_CERT": "", "SSL_KEY": "", "MONGODB_URI": "mongodb://mongodb:27017/switcher-api", @@ -31,7 +31,7 @@ "test": { "NODE_OPTIONS": "--experimental-vm-modules", "ENV": "TEST", - "PORT": "3000", + "PORT": "3001", "SSL_CERT": "", "SSL_KEY": "", "MONGODB_URI": "mongodb://mongodb:27017/switcher-api-test", diff --git a/README.md b/README.md index f4eaa3c..74dcfa2 100644 --- a/README.md +++ b/README.md @@ -33,8 +33,8 @@ Resolver Node for Component Switchers
# Quick start -Open Swagger UI by accessing the URL: http://localhost:3000/api-docs
-Or use Postman by importing either the OpenAPI json from http://localhost:3000/swagger.json or Postman Collection from "requests/Switcher Resolver Node*" +Open Swagger UI by accessing the URL: http://localhost:3001/api-docs
+Or use Postman by importing either the OpenAPI json from http://localhost:3001/swagger.json or Postman Collection from "requests/Switcher Resolver Node*" # AI Disclaimer diff --git a/npm-shrinkwrap.json b/npm-shrinkwrap.json index 885e9a9..b94ab04 100644 --- a/npm-shrinkwrap.json +++ b/npm-shrinkwrap.json @@ -9,7 +9,7 @@ "version": "1.1.0", "license": "MIT", "dependencies": { - "axios": "^1.20.0", + "axios": "^1.21.0", "bcryptjs": "^3.0.3", "cors": "^2.8.6", "express": "^5.3.0", @@ -23,7 +23,7 @@ "jsonwebtoken": "^9.0.3", "moment": "^2.31.0", "mongodb": "^7.7.0", - "mongoose": "^9.11.1", + "mongoose": "^9.11.4", "pino": "^10.4.0", "pino-pretty": "^13.2.0", "swagger-ui-express": "^5.0.1", @@ -32,7 +32,7 @@ }, "devDependencies": { "env-cmd": "^11.0.0", - "eslint": "^10.12.0", + "eslint": "^10.13.0", "jest": "^30.5.2", "jest-sonar-reporter": "^2.0.0", "node-notifier": "^11.0.0", @@ -204,9 +204,9 @@ } }, "node_modules/@babel/helper-string-parser": { - "version": "7.29.7", - "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.29.7.tgz", - "integrity": "sha512-Pb5ijPrZ89GDH8223L4UP8i6QApWxs04RbPQJTeWDV0/keR2E36MeKnyr6LYmUUvqRRI+Iv87SuF1W6ErINzYw==", + "version": "7.29.11", + "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.29.11.tgz", + "integrity": "sha512-snZbO7MEDOof+hvNa97EjEY7qD7h2kwvQr5AJC3ZhQudKW5dnej6k3kP9NQV88hJwaS8vDqRLFo9rivLEhle2g==", "dev": true, "license": "MIT", "engines": { @@ -248,13 +248,13 @@ } }, "node_modules/@babel/parser": { - "version": "7.29.9", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.29.9.tgz", - "integrity": "sha512-CjXrNHTnvqBVqHgdBysY3vk2T8tpJHb5/RMeHJBTyVa9xgugCB0CJTx/3oO8RV2QRQP391RWpB7D6hLjm8V9uA==", + "version": "7.29.11", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.29.11.tgz", + "integrity": "sha512-OZ6+oaK7GMyg3IfCpj8JOmn8n+w2rJbDT0LLfVDTLb1ZFeKDh3AiNELgCMUw175IJHSkLl74hG0M0VLsvx+gag==", "dev": true, "license": "MIT", "dependencies": { - "@babel/types": "^7.29.8" + "@babel/types": "^7.29.11" }, "bin": { "parser": "bin/babel-parser.js" @@ -537,13 +537,13 @@ } }, "node_modules/@babel/types": { - "version": "7.29.8", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.29.8.tgz", - "integrity": "sha512-Vj1jF3cPfxg7OAfoI7QnVKLoILlm2JF9pnVHrX8qx7AHMiYWT+NDAA7jChlNgRS4WTLc/fD1lXLmPixluj+3Gg==", + "version": "7.29.11", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.29.11.tgz", + "integrity": "sha512-WCsemW40Cpc6gouC1SrY6PBaZ+oLRlEVY9XBvZBI7il/HyUrb2nJ505wE1MHEFyDZNnrWDEuy4jL50WVHfTTSQ==", "dev": true, "license": "MIT", "dependencies": { - "@babel/helper-string-parser": "^7.29.7", + "@babel/helper-string-parser": "^7.29.11", "@babel/helper-validator-identifier": "^7.29.7" }, "engines": { @@ -1123,9 +1123,9 @@ }, "node_modules/@jest/react-is-19": { "name": "react-is", - "version": "19.3.0", - "resolved": "https://registry.npmjs.org/react-is/-/react-is-19.3.0.tgz", - "integrity": "sha512-UpMYezM4v5/18F28aC66AEsjXIgE02kyEMH6yLdgLXu/UTfa1Ntwck/nNLrbqJsEXW7gPb0coNO9FQse9WTovA==", + "version": "19.3.1", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-19.3.1.tgz", + "integrity": "sha512-RRieF6IyxQBkcK6pP8xOHprLTPW6QjRkbGdImtqNme+/hYVwCZkLQLdlZGOhUqXwkS9IEynaGvPJtv6XB/cz0Q==", "dev": true, "license": "MIT" }, @@ -1326,18 +1326,18 @@ "license": "MIT" }, "node_modules/@mongodb-js/saslprep": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/@mongodb-js/saslprep/-/saslprep-1.6.0.tgz", - "integrity": "sha512-19jGXfpctLDJUELLUZGJ5BllcLT7rHdF+gTTaN2jzqu0bGkUhpdcYtgK2Vux+g3zuBAa0TM/W666QMIjYhYujw==", + "version": "1.6.1", + "resolved": "https://registry.npmjs.org/@mongodb-js/saslprep/-/saslprep-1.6.1.tgz", + "integrity": "sha512-D4CQtk9IwjCLAvCf1xvHEod3960q8XMUzfmdRU9qjUNlHnesGuTOvJcOTaPm9koZ1caUKA2aTbszZiAkcmSgmg==", "license": "MIT", "dependencies": { "sparse-bitfield": "^3.0.3" } }, "node_modules/@napi-rs/wasm-runtime": { - "version": "1.2.5", - "resolved": "https://registry.npmjs.org/@napi-rs/wasm-runtime/-/wasm-runtime-1.2.5.tgz", - "integrity": "sha512-HshSvXzmBxNzqejd3k/KemgQ3hdREUYFRRrgxOZ+gPljDIsO2SDZrVZMd4Z/HsxudQbE62OVyVFE8z9BCurfjA==", + "version": "1.2.6", + "resolved": "https://registry.npmjs.org/@napi-rs/wasm-runtime/-/wasm-runtime-1.2.6.tgz", + "integrity": "sha512-mRyDmEw9/fCDXCGfL1sbgIw/GUK0PVxRW4YwgPN61F3LQ+fSyoBFarJVzgGyhF6kRzEQZ0FejDqm4WLXSeqQmw==", "dev": true, "license": "MIT", "optional": true, @@ -1352,8 +1352,8 @@ "url": "https://github.com/sponsors/Brooooooklyn" }, "peerDependencies": { - "@emnapi/core": "^1.7.1 || ^2.0.0-alpha.4", - "@emnapi/runtime": "^1.7.1 || ^2.0.0-alpha.4" + "@emnapi/core": "^1.7.1 || 2.0.0-beta.2", + "@emnapi/runtime": "^1.7.1 || 2.0.0-beta.2" } }, "node_modules/@noble/hashes": { @@ -2445,9 +2445,9 @@ } }, "node_modules/axios": { - "version": "1.20.0", - "resolved": "https://registry.npmjs.org/axios/-/axios-1.20.0.tgz", - "integrity": "sha512-r8aOh8j9cGKpgQAqpzrUHnSIc6a59Y3Xf/cv8sy1DrHCkZHzQGEuoq1tARk6qSyDdtQGSDgpb9kFlruzPvrgwg==", + "version": "1.21.0", + "resolved": "https://registry.npmjs.org/axios/-/axios-1.21.0.tgz", + "integrity": "sha512-YCzXMB53Q9PZBsh7yN7wtapit4WepwcHS2fP8QhGsBxSz5YtgYobV7GGlWlAJi+RxfU77GQTQi2DSLUma42EYA==", "license": "MIT", "dependencies": { "follow-redirects": "^1.16.0", @@ -2566,9 +2566,9 @@ } }, "node_modules/baseline-browser-mapping": { - "version": "2.11.28", - "resolved": "https://registry.npmjs.org/baseline-browser-mapping/-/baseline-browser-mapping-2.11.28.tgz", - "integrity": "sha512-br0LOmjJqr6Rt4AEkadbcNf67Zpo7EPwKsWbjnRrJIa1QYFHQBqM4C7F2WTbV8ahTEcg1Eo+Y0aWjjORInYFyA==", + "version": "2.11.34", + "resolved": "https://registry.npmjs.org/baseline-browser-mapping/-/baseline-browser-mapping-2.11.34.tgz", + "integrity": "sha512-Aqr8mA1kIvyJ3UY5YAY7ib8LSo1DmDMbMnVqGPtsKW1LxaFQFwn9Eb3yvq2fUKJsRvaXjnAV7R5osqETapzNiA==", "dev": true, "license": "Apache-2.0", "bin": { @@ -2613,18 +2613,18 @@ } }, "node_modules/body-parser": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-2.3.0.tgz", - "integrity": "sha512-2cGmJupaNgg+QUwVLAucDuWuoMZ6EX9iHDRswZ5lsNYEmwPaRknMPCLZz07yTzVq/83p4o/wzbDZbBrTvGGTIw==", + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-2.4.0.tgz", + "integrity": "sha512-Ifk1KcLrxaGt1occQagQNFNNOqRt1LFuehEnHHzB8Z6cRgIxRU1TBaiIsUiCdA+gy5PL7Y1IX31DNKkRmxtXjQ==", "license": "MIT", "dependencies": { "bytes": "^3.1.2", - "content-type": "^2.0.0", + "content-type": "^2.1.0", "debug": "^4.4.3", "http-errors": "^2.0.1", - "iconv-lite": "^0.7.2", + "iconv-lite": "^0.7.3", "on-finished": "^2.4.1", - "qs": "^6.15.2", + "qs": "^6.16.1", "raw-body": "^3.0.2", "type-is": "^2.1.0" }, @@ -2663,9 +2663,9 @@ } }, "node_modules/browserslist": { - "version": "4.29.3", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.29.3.tgz", - "integrity": "sha512-1R4kiYKXGViqEN0CnoDrXc1StD9niAwu+j2dukWzrD4bJgsD4lDmEp0CRbc6E/vYJIfTHwPmwyaKtVSudICdPA==", + "version": "4.29.5", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.29.5.tgz", + "integrity": "sha512-khTmKu5NGYTotqcYo8Bew2k4RAE9PuXRSFRXG2lQBrCEQHyeQ/vX6gKMxfokwywBsLiXZMnHsmWMG1pnO8J7uQ==", "dev": true, "funding": [ { @@ -2683,11 +2683,11 @@ ], "license": "MIT", "dependencies": { - "baseline-browser-mapping": "^2.11.26", - "caniuse-lite": "^1.0.30001813", - "electron-to-chromium": "^1.5.439", - "node-releases": "^2.0.57", - "update-browserslist-db": "^1.3.3" + "baseline-browser-mapping": "^2.11.33", + "caniuse-lite": "^1.0.30001819", + "electron-to-chromium": "^1.5.464", + "node-releases": "^2.0.60", + "update-browserslist-db": "^1.3.4" }, "bin": { "browserslist": "cli.js" @@ -2794,9 +2794,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001815", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001815.tgz", - "integrity": "sha512-uDybUEyfgbyJJ93J1vikTylBX31AkdVYeVPeffMQpf8XN7hSfr0oZOn4VFOIMNvtU5+rHvC5Udg2TgtJKHm23Q==", + "version": "1.0.30001819", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001819.tgz", + "integrity": "sha512-LFUqIIAwpzsIuevnKnsR9qnStBcgzPShTX61lBwN9uFkkf8o8zLiebEjbW8AYtZiF+1YKDWfdt/pWDtMuG8Xwg==", "dev": true, "funding": [ { @@ -3237,9 +3237,9 @@ "license": "MIT" }, "node_modules/electron-to-chromium": { - "version": "1.5.452", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.452.tgz", - "integrity": "sha512-cVvk1YBSj6571VmV6hdJTqj94Y79xSu8cj6Y9t6ae4Y4431z8/7EJFvu3rVp90xhfuv9BpPKUmaLfTo4+FOGBg==", + "version": "1.5.467", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.467.tgz", + "integrity": "sha512-Nw9X371rtZmYcBSnEijnCDONILjs93biCZO34juC7MBOmK8E+GFnyD4T/WvyrlJkppul7oxg6TwvtKst9SODTw==", "dev": true, "license": "ISC" }, @@ -3391,9 +3391,9 @@ } }, "node_modules/eslint": { - "version": "10.12.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-10.12.0.tgz", - "integrity": "sha512-npHjrHb2o4ehH3mE+YuxABR+0gyb0aVWCIolgJDArwCiHEIsonBm3ZKjel5b0U5+a+MbEvIyRCGCzD3eKKK2NA==", + "version": "10.13.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-10.13.0.tgz", + "integrity": "sha512-UohDjD4zSzEwhf58M3O7vc/ycc8O1I7dNlhtD0WxE8Px8EHNJKtUwzBqrzeGhisRuv2ag4sAYswszCJRgKXYUg==", "dev": true, "license": "MIT", "workspaces": [ @@ -3705,9 +3705,9 @@ } }, "node_modules/fast-copy": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/fast-copy/-/fast-copy-4.1.2.tgz", - "integrity": "sha512-DUHggaYcouhy5I1LacDJ+JDSqGlumVJP2EAi5Nwt1pWPeLpSvIjkrY+x4fsoI1/+GlTyq+DM9zdgWCFSfqNODA==", + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/fast-copy/-/fast-copy-4.3.1.tgz", + "integrity": "sha512-CRzQaTFOFUs6PuhsAq7lk9Zqr995soJBcFNZlfJS/5keTSl1awREV9dZW4xS2nX4pWbhIIR0xp4h+J8PQxCkvg==", "license": "MIT" }, "node_modules/fast-deep-equal": { @@ -3828,9 +3828,9 @@ "license": "ISC" }, "node_modules/follow-redirects": { - "version": "1.16.1", - "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.16.1.tgz", - "integrity": "sha512-FNvFGzoMLWmE6Yj9spb/zjd7yiNCHiAW9/Tg9CXrQ8wuu32HtlJOwWO11OJafl5FfY3DxTdQ0vj42zU1kvv5jg==", + "version": "1.16.2", + "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.16.2.tgz", + "integrity": "sha512-/kVP2U8z596Ia0gwFrwyIeo74ta5aVmSeU1FfAUMAmcEP5EP7zydmag3SLiN64NaRKef3lxsq7i/g7ltJQDGow==", "funding": [ { "type": "individual", @@ -4357,9 +4357,9 @@ "license": "ISC" }, "node_modules/ip-address": { - "version": "10.7.4", - "resolved": "https://registry.npmjs.org/ip-address/-/ip-address-10.7.4.tgz", - "integrity": "sha512-DWBMKyeM25D70nrIiTkgQth59/G+naKOTep6huF9j+GmeK3DMD60Zvxg5d5qQnz+38AHgou6ean2LECX+lrKDg==", + "version": "10.7.5", + "resolved": "https://registry.npmjs.org/ip-address/-/ip-address-10.7.5.tgz", + "integrity": "sha512-t2v0rkILYv9WXmSL7TpAaU3HXgaFYOPUcH3QHgwQ++gpJuH3bqyMy4Fvt/DJCTKwzH3Cf+bAp5W/mFL39KPLzA==", "license": "MIT", "engines": { "node": ">= 12" @@ -5468,9 +5468,9 @@ } }, "node_modules/kareem": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/kareem/-/kareem-3.4.0.tgz", - "integrity": "sha512-JAKhnR4S027v/8949QXNInRskgETCg9rFUMi1VjhGbjX+XltCAAEFcXykkSocNkom1kc66EMJfjWvhj87BDQKg==", + "version": "3.4.1", + "resolved": "https://registry.npmjs.org/kareem/-/kareem-3.4.1.tgz", + "integrity": "sha512-UlgCAFNAdk/HLSsbfkmbH8pJqpEN52Ek8RG53Ys1i3Q3gbCQruSrWpplZlgIGyDHX/LNoLW97ei3OG43s7UhUA==", "license": "Apache-2.0", "engines": { "node": ">=18.0.0" @@ -5816,16 +5816,16 @@ } }, "node_modules/mongoose": { - "version": "9.11.1", - "resolved": "https://registry.npmjs.org/mongoose/-/mongoose-9.11.1.tgz", - "integrity": "sha512-fVtjTVACOtAb0PjDDF+O5NebcEJy5JpAH+AXk16/5i36w38YkW6MZ+KWV54bdIOJFymDz1VjjA5Xg6L2QfjQjQ==", + "version": "9.11.4", + "resolved": "https://registry.npmjs.org/mongoose/-/mongoose-9.11.4.tgz", + "integrity": "sha512-+xME0fduXl1sWF+NZpJHZaNcwQSt+X2vbJ/h7GRSZ/ltLycAkGZSEABhzic0+q3IMF66KqF0viEE5+frchKCAQ==", "license": "MIT", "dependencies": { "@standard-schema/spec": "^1.1.0", - "kareem": "3.4.0", + "kareem": "3.4.1", "mongodb": "~7.7", "mpath": "0.9.0", - "mquery": "6.0.0", + "mquery": "6.0.1", "ms": "2.1.3", "sift": "17.1.3" }, @@ -5847,9 +5847,9 @@ } }, "node_modules/mquery": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/mquery/-/mquery-6.0.0.tgz", - "integrity": "sha512-b2KQNsmgtkscfeDgkYMcWGn9vZI9YoXh802VDEwE6qc50zxBFQ0Oo8ROkawbPAsXCY1/Z1yp0MagqsZStPWJjw==", + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/mquery/-/mquery-6.0.1.tgz", + "integrity": "sha512-/Nijmq3JcpHwDM+5CwBp5yEl6fUa6jLsIhPsoQywlGXU/ZrKIvSpBzfaGnW9BLqcne/CoUwd1ch7MRqptDgFTA==", "license": "MIT", "engines": { "node": ">=20.19.0" @@ -5862,12 +5862,13 @@ "license": "MIT" }, "node_modules/napi-postinstall": { - "version": "0.3.4", - "resolved": "https://registry.npmjs.org/napi-postinstall/-/napi-postinstall-0.3.4.tgz", - "integrity": "sha512-PHI5f1O0EP5xJ9gQmFGMS6IZcrVvTjpXjz7Na41gTE7eE2hK11lg04CECCYEEjdc17EV4DO+fkGEtt7TpTaTiQ==", + "version": "0.3.7", + "resolved": "https://registry.npmjs.org/napi-postinstall/-/napi-postinstall-0.3.7.tgz", + "integrity": "sha512-jyU4cU4kVAmy/3qjP+DcoQTNXfINHc+dFw54gGqWC8nu0mpV0kOnk7kff+J+Q18SbX0k3Np8Rm7yFjd3phatNQ==", "dev": true, "license": "MIT", "bin": { + "napi-patch": "lib/patch.js", "napi-postinstall": "lib/cli.js" }, "engines": { @@ -5929,9 +5930,9 @@ } }, "node_modules/node-releases": { - "version": "2.0.58", - "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.58.tgz", - "integrity": "sha512-BdiKAgbfRlvfMq/XzO/AF9NPmaA8a+YpLAyAFTVFBj3gARrAIfWvNq7Q7NE4se3KgFu0KkrvQMxTS0XVnsGzHg==", + "version": "2.0.60", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.60.tgz", + "integrity": "sha512-OmO8+GM1JUZqXET720VrJCwkjUCXmCMQm0Z3UDDRbfNLHS4NEAvY60j5jiFv0tkKw2PNNlqOLhahVmwJIOLDIQ==", "dev": true, "license": "MIT", "engines": { @@ -6044,15 +6045,19 @@ } }, "node_modules/on-finished": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.4.1.tgz", - "integrity": "sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg==", + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.4.2.tgz", + "integrity": "sha512-ATWUv387i+nLD49EiDoOft5scf32Vsdz3ktrQJG9bi7jRFmaXTssvyvj1EmeKVVgvesbqUtvQQvaS2TpTukAZQ==", "license": "MIT", "dependencies": { "ee-first": "1.1.1" }, "engines": { "node": ">= 0.8" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/express" } }, "node_modules/once": { @@ -6546,9 +6551,9 @@ "license": "MIT" }, "node_modules/qs": { - "version": "6.16.0", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.16.0.tgz", - "integrity": "sha512-h6fhOIaRrID2CbEY2fqs+7t+UXZo+MLAnU5gRIq85uFtdiUPCdsApMlHhXogKVM4HM2DVbIjGNTTYH2OcmP1vA==", + "version": "6.17.0", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.17.0.tgz", + "integrity": "sha512-5LK5BZ2XDHMvcUJaf0CQ5HL3aVgKbpklvByC7qLSxYkfE8COEEbJg5xCHWCTqzqi0Gs4Jn5Mv5v3R38W6edscA==", "license": "BSD-3-Clause", "dependencies": { "es-define-property": "^1.0.1", @@ -7131,9 +7136,9 @@ } }, "node_modules/swagger-ui-dist": { - "version": "5.33.1", - "resolved": "https://registry.npmjs.org/swagger-ui-dist/-/swagger-ui-dist-5.33.1.tgz", - "integrity": "sha512-H872wWkA53bFIsGgi7OWgmq+CRWw3nFQGdJWRqOB9wNwTm6e5ol34+qPDkV4AJlK+gglM2EsJiOOzsGsEGbluA==", + "version": "5.34.0", + "resolved": "https://registry.npmjs.org/swagger-ui-dist/-/swagger-ui-dist-5.34.0.tgz", + "integrity": "sha512-H6tAIjr3XqE31PbkZl0OFya1ziRLDfTwh3J6OHdumPtPCLfjTnyLeagl/55kFNZcTOz9a9QI9WP0FXldwiGJag==", "license": "Apache-2.0", "dependencies": { "@scarf/scarf": "=1.4.0" diff --git a/package.json b/package.json index ac5f2ec..cb43e9e 100644 --- a/package.json +++ b/package.json @@ -37,7 +37,7 @@ ], "license": "MIT", "dependencies": { - "axios": "^1.20.0", + "axios": "^1.21.0", "bcryptjs": "^3.0.3", "cors": "^2.8.6", "express": "^5.3.0", @@ -51,7 +51,7 @@ "jsonwebtoken": "^9.0.3", "moment": "^2.31.0", "mongodb": "^7.7.0", - "mongoose": "^9.11.1", + "mongoose": "^9.11.4", "pino": "^10.4.0", "pino-pretty": "^13.2.0", "swagger-ui-express": "^5.0.1", @@ -60,7 +60,7 @@ }, "devDependencies": { "env-cmd": "^11.0.0", - "eslint": "^10.12.0", + "eslint": "^10.13.0", "jest": "^30.5.2", "jest-sonar-reporter": "^2.0.0", "node-notifier": "^11.0.0", diff --git a/src/aggregator/configuration-resolvers.js b/src/aggregator/configuration-resolvers.js index 73cf35d..119f784 100644 --- a/src/aggregator/configuration-resolvers.js +++ b/src/aggregator/configuration-resolvers.js @@ -1,6 +1,7 @@ import { getComponents } from '../services/component.js'; export async function resolveComponents(source) { - const components = await getComponents({ _id: { $in: source.components } }); + const componentIds = source.components.map(id => id.toString()); + const components = await getComponents({ _id: { $in: componentIds } }); return components.length ? components.map(component => component.name) : []; } \ No newline at end of file diff --git a/src/aggregator/resolvers.js b/src/aggregator/resolvers.js index 658225f..c036e0b 100644 --- a/src/aggregator/resolvers.js +++ b/src/aggregator/resolvers.js @@ -36,7 +36,7 @@ export async function resolveConfigStrategy(source, _id, strategy, operation, ac if (strategy) { args.strategy = Object.values(StrategiesType).find(t => t === strategy.toString()); } if (operation) { args.operation = Object.values(OperationsType).find(t => t === operation.toString()); } - let strategies = await ConfigStrategy.find({ config: source._id, ...args }).lean().exec(); + let strategies = await ConfigStrategy.find({ config: source._id.toString(), ...args }).lean().exec(); const environment = context.environment; if (environment) { @@ -71,7 +71,7 @@ export async function resolveConfig(source, _id, key, activated, context) { if (key) { args.key = key.toString(); } if (context._component) { args.components = context._component; } - let configs = await Config.find({ group: source._id, ...args }).lean().exec(); + let configs = await Config.find({ group: source._id.toString(), ...args }).lean().exec(); if (activated !== undefined) { configs = configs.filter(config => config.activated[context.environment] === activated); @@ -86,7 +86,7 @@ export async function resolveGroupConfig(source, _id, name, activated, context) if (_id) { args._id = new Types.ObjectId(_id.toString()); } if (name) { args.name = name.toString(); } - let groups = await GroupConfig.find({ domain: source._id, ...args }).lean().exec(); + let groups = await GroupConfig.find({ domain: source._id.toString(), ...args }).lean().exec(); if (activated !== undefined) { groups = groups.filter(group => group.activated[context.environment] === activated); @@ -112,11 +112,11 @@ export async function resolveDomain(activated, context) { */ async function resolveComponentsFirst(source, context, groups) { if (context._component) { - const component = await Component.findOne({ domain: source._id, name: context._component }).exec(); + const component = await Component.findOne({ domain: source._id.toString(), name: context._component }).exec(); context._component = component?._id; const configCounts = await Promise.all(groups.map(group => Config.find({ - domain: source._id, - group: group._id, + domain: source._id.toString(), + group: group._id.toString(), components: context._component }).countDocuments().exec())); diff --git a/src/services/criteria.js b/src/services/criteria.js index a98edf7..c639f8d 100644 --- a/src/services/criteria.js +++ b/src/services/criteria.js @@ -67,7 +67,7 @@ async function findGroup(config) { } async function findConfigStrategies(configId, domainId, strategyFilter) { - return ConfigStrategy.find({ config: configId, domain: domainId }, strategyFilter).lean(); + return ConfigStrategy.find({ config: configId.toString(), domain: domainId.toString() }, strategyFilter).lean(); } function checkFlags(config, environment, response) { From e3aaef2c2ee49f90b41b85caf350c7dc61e28cac Mon Sep 17 00:00:00 2001 From: petruki <31597636+petruki@users.noreply.github.com> Date: Tue, 27 Oct 2026 17:28:08 -0700 Subject: [PATCH 2/2] fix(ci): local mongo action incompatible with ubuntu 24 --- .github/workflows/master.yml | 6 +++--- .github/workflows/re-release.yml | 4 ++-- .github/workflows/release.yml | 4 ++-- .github/workflows/sonar.yml | 2 +- 4 files changed, 8 insertions(+), 8 deletions(-) diff --git a/.github/workflows/master.yml b/.github/workflows/master.yml index e05d5df..2b43242 100644 --- a/.github/workflows/master.yml +++ b/.github/workflows/master.yml @@ -9,7 +9,7 @@ on: jobs: build-test: name: Build & Test - runs-on: ubuntu-latest + runs-on: ubuntu-22.04 concurrency: ci-${{ github.ref }} steps: @@ -57,7 +57,7 @@ jobs: docker: name: Publish Docker Image needs: [ build-test ] - runs-on: ubuntu-latest + runs-on: ubuntu-22.04 if: success() && github.ref == 'refs/heads/master' outputs: @@ -87,7 +87,7 @@ jobs: update-kustomize: name: Deploy needs: [ docker ] - runs-on: ubuntu-latest + runs-on: ubuntu-22.04 steps: - name: Checkout diff --git a/.github/workflows/re-release.yml b/.github/workflows/re-release.yml index 0e33636..369d42b 100644 --- a/.github/workflows/re-release.yml +++ b/.github/workflows/re-release.yml @@ -11,7 +11,7 @@ on: jobs: build-test: name: Build & Test - runs-on: ubuntu-latest + runs-on: ubuntu-22.04 steps: - name: Git checkout @@ -53,7 +53,7 @@ jobs: docker: name: Publish Docker Image needs: [ build-test ] - runs-on: ubuntu-latest + runs-on: ubuntu-22.04 steps: - name: Checkout code diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 5e3e153..22b93cc 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -7,7 +7,7 @@ on: jobs: build-test: name: Build & Test - runs-on: ubuntu-latest + runs-on: ubuntu-22.04 steps: - name: Git checkout @@ -48,7 +48,7 @@ jobs: docker: name: Publish Docker Image needs: [ build-test ] - runs-on: ubuntu-latest + runs-on: ubuntu-22.04 steps: - name: Checkout code diff --git a/.github/workflows/sonar.yml b/.github/workflows/sonar.yml index b5ef339..13f34a2 100644 --- a/.github/workflows/sonar.yml +++ b/.github/workflows/sonar.yml @@ -11,7 +11,7 @@ on: jobs: sonar-analysis: name: SonarCloud Analysis for PR - runs-on: ubuntu-latest + runs-on: ubuntu-22.04 steps: - name: Get PR details