diff --git a/ExpressAPI/package-lock.json b/ExpressAPI/package-lock.json
index 501120757707f743a83693294e8f26c2c86ab326..61c90d4fad90f700138fc789a6f056c774d023b2 100644
--- a/ExpressAPI/package-lock.json
+++ b/ExpressAPI/package-lock.json
@@ -10,15 +10,15 @@
             "license": "AGPLv3",
             "dependencies": {
                 "@dotenvx/dotenvx": "^0.45.0",
-                "@gitbeaker/rest": "^40.0.3",
-                "@prisma/client": "^5.16.1",
-                "axios": "^1.7.2",
-                "compression": "^1.7.4",
+                "@gitbeaker/rest": "^42.1.0",
+                "@prisma/client": "^6.4.1",
+                "axios": "^1.8.1",
+                "compression": "^1.8.0",
                 "cors": "^2.8.5",
-                "express": "^4.19.2",
-                "express-validator": "^7.1.0",
-                "form-data": "^4.0.0",
-                "helmet": "^7.1.0",
+                "express": "^4.21.2",
+                "express-validator": "^7.2.1",
+                "form-data": "^4.0.2",
+                "helmet": "^8.0.0",
                 "http-status-codes": "^2.3.0",
                 "json5": "^2.2.3",
                 "jsonwebtoken": "^9.0.2",
@@ -27,37 +27,37 @@
                 "mysql": "^2.18.1",
                 "node": "^20.15.0",
                 "parse-link-header": "^2.0.0",
-                "semver": "^7.6.2",
+                "semver": "^7.7.1",
                 "swagger-ui-express": "^5.0.1",
                 "tar-stream": "^3.1.7",
-                "uuid": "^10.0.0",
-                "winston": "^3.13.0",
-                "zod": "^3.23.8",
-                "zod-validation-error": "^3.3.0"
+                "uuid": "^11.1.0",
+                "winston": "^3.17.0",
+                "zod": "^3.24.2",
+                "zod-validation-error": "^3.4.0"
             },
             "devDependencies": {
-                "@redocly/cli": "^1.17.0",
+                "@eslint/js": "^9.21.0",
+                "@redocly/cli": "^1.31.2",
                 "@types/compression": "^1.7.5",
                 "@types/cors": "^2.8.17",
                 "@types/express": "^4.17.21",
-                "@types/jsonwebtoken": "^9.0.6",
+                "@types/jsonwebtoken": "^9.0.9",
                 "@types/morgan": "^1.9.9",
-                "@types/multer": "^1.4.11",
-                "@types/node": "^20.14.9",
+                "@types/multer": "^1.4.12",
+                "@types/node": "^22.13.5",
                 "@types/parse-link-header": "^2.0.3",
                 "@types/semver": "^7.5.8",
-                "@types/swagger-ui-express": "^4.1.6",
+                "@types/swagger-ui-express": "^4.1.8",
                 "@types/tar-stream": "^3.1.3",
                 "@types/uuid": "^10.0.0",
-                "dotenv-cli": "^7.4.2",
-                "eslint": "^8.57.0",
+                "dotenv-cli": "^8.0.0",
                 "genversion": "^3.2.0",
-                "nodemon": "^3.1.4",
-                "npm": "^10.8.1",
-                "prisma": "^5.16.1",
-                "tsx": "^4.16.2",
-                "typescript": "^5.5.3",
-                "typescript-eslint": "^7.15.0"
+                "nodemon": "^3.1.9",
+                "npm": "^11.1.0",
+                "prisma": "^6.4.1",
+                "tsx": "^4.19.3",
+                "typescript": "~5.5.4",
+                "typescript-eslint": "^7.18.0"
             }
         },
         "node_modules/@babel/code-frame": {
@@ -652,6 +652,7 @@
             "integrity": "sha512-269Z39MS6wVJtsoUl10L60WdkhJVdPG24Q4eZTH3nnF6lpvSShEK3wQjDX9JRWAUPvPh7COouPpU9IrqaZFvtQ==",
             "dev": true,
             "license": "MIT",
+            "peer": true,
             "dependencies": {
                 "ajv": "^6.12.4",
                 "debug": "^4.3.2",
@@ -676,6 +677,7 @@
             "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==",
             "dev": true,
             "license": "MIT",
+            "peer": true,
             "dependencies": {
                 "fast-deep-equal": "^3.1.1",
                 "fast-json-stable-stringify": "^2.0.0",
@@ -693,6 +695,7 @@
             "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==",
             "dev": true,
             "license": "MIT",
+            "peer": true,
             "dependencies": {
                 "balanced-match": "^1.0.0",
                 "concat-map": "0.0.1"
@@ -704,6 +707,7 @@
             "integrity": "sha512-6WTZ/IxCY/T6BALoZHaE4ctp9xm+Z5kY/pzYaCHRFeyVhojxlrm+46y68HA6hr0TcwEssoxNiDEUJQjfPZ/RYA==",
             "dev": true,
             "license": "MIT",
+            "peer": true,
             "dependencies": {
                 "ms": "^2.1.3"
             },
@@ -721,7 +725,8 @@
             "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz",
             "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==",
             "dev": true,
-            "license": "MIT"
+            "license": "MIT",
+            "peer": true
         },
         "node_modules/@eslint/eslintrc/node_modules/minimatch": {
             "version": "3.1.2",
@@ -729,6 +734,7 @@
             "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==",
             "dev": true,
             "license": "ISC",
+            "peer": true,
             "dependencies": {
                 "brace-expansion": "^1.1.7"
             },
@@ -741,16 +747,17 @@
             "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz",
             "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==",
             "dev": true,
-            "license": "MIT"
+            "license": "MIT",
+            "peer": true
         },
         "node_modules/@eslint/js": {
-            "version": "8.57.1",
-            "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.57.1.tgz",
-            "integrity": "sha512-d9zaMRSTIKDLhctzH12MtXvJKSSUhaHcjV+2Z+GK+EEY7XKpP5yR4x+N3TAcHTcu963nIr+TMcCb4DBCYX1z6Q==",
+            "version": "9.21.0",
+            "resolved": "https://registry.npmjs.org/@eslint/js/-/js-9.21.0.tgz",
+            "integrity": "sha512-BqStZ3HX8Yz6LvsF5ByXYrtigrV5AXADWLAGc7PH/1SxOb7/FIYYMszZZWiUou/GB9P2lXWk2SV4d+Z8h0nknw==",
             "dev": true,
             "license": "MIT",
             "engines": {
-                "node": "^12.22.0 || ^14.17.0 || >=16.0.0"
+                "node": "^18.18.0 || ^20.9.0 || >=21.1.0"
             }
         },
         "node_modules/@exodus/schemasafe": {
@@ -781,12 +788,12 @@
             }
         },
         "node_modules/@gitbeaker/core": {
-            "version": "40.6.0",
-            "resolved": "https://registry.npmjs.org/@gitbeaker/core/-/core-40.6.0.tgz",
-            "integrity": "sha512-tVVm8ZPrS9YCHEcuPV8vD1IcEf9POpdygWo+kPvkK7LcC36EERVcXagb8snEaGgGLfUaVQh8qP4iDZgPnP3YBQ==",
+            "version": "42.1.0",
+            "resolved": "https://registry.npmjs.org/@gitbeaker/core/-/core-42.1.0.tgz",
+            "integrity": "sha512-xoP3mUjiGyUdN+utmQ+wDh9r7b4bcf3wa8jxkDTZTiuyd7Tg+354nJhwBNBsq2vFfyQvONOyOT1hsFjTGbTpBA==",
             "license": "MIT",
             "dependencies": {
-                "@gitbeaker/requester-utils": "^40.6.0",
+                "@gitbeaker/requester-utils": "^42.1.0",
                 "qs": "^6.12.2",
                 "xcase": "^2.0.1"
             },
@@ -795,9 +802,9 @@
             }
         },
         "node_modules/@gitbeaker/requester-utils": {
-            "version": "40.6.0",
-            "resolved": "https://registry.npmjs.org/@gitbeaker/requester-utils/-/requester-utils-40.6.0.tgz",
-            "integrity": "sha512-DQu2l3iXtB+8e1Ye2ekeUHABt4mGMRTLtuVWtFqf74sqJnerHNOxVOjPn19qu/nKdvKR3ZLwSRTtPzEsxgcShg==",
+            "version": "42.1.0",
+            "resolved": "https://registry.npmjs.org/@gitbeaker/requester-utils/-/requester-utils-42.1.0.tgz",
+            "integrity": "sha512-q5NXy563UUM2AisM/V6Z3A92hIVQNMyx/VBj5Mg7gJkEtIYL+pEyibjIQxcq6nQ3bnj6bkM8NYguCs5tg7GR0Q==",
             "license": "MIT",
             "dependencies": {
                 "picomatch-browser": "^2.2.6",
@@ -810,13 +817,13 @@
             }
         },
         "node_modules/@gitbeaker/rest": {
-            "version": "40.6.0",
-            "resolved": "https://registry.npmjs.org/@gitbeaker/rest/-/rest-40.6.0.tgz",
-            "integrity": "sha512-sAwYJclU3NlB/gdxqhH6Hnmy5LWzvW7D3W33eShQEnxMhM0VjnFHPHcgJLQCIux3hMiub1uGtTw1hBJTxDc2mQ==",
+            "version": "42.1.0",
+            "resolved": "https://registry.npmjs.org/@gitbeaker/rest/-/rest-42.1.0.tgz",
+            "integrity": "sha512-7eSXktkUEF2O2A3F1cO/ZJ/3Mco4v59rptghzhrvjZryPcAxlYWxNJbuFtjc5bc0OnJW7i5AYfJSYvZQSh3gYg==",
             "license": "MIT",
             "dependencies": {
-                "@gitbeaker/core": "^40.6.0",
-                "@gitbeaker/requester-utils": "^40.6.0"
+                "@gitbeaker/core": "^42.1.0",
+                "@gitbeaker/requester-utils": "^42.1.0"
             },
             "engines": {
                 "node": ">=18.20.0"
@@ -829,6 +836,7 @@
             "deprecated": "Use @eslint/config-array instead",
             "dev": true,
             "license": "Apache-2.0",
+            "peer": true,
             "dependencies": {
                 "@humanwhocodes/object-schema": "^2.0.3",
                 "debug": "^4.3.1",
@@ -844,6 +852,7 @@
             "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==",
             "dev": true,
             "license": "MIT",
+            "peer": true,
             "dependencies": {
                 "balanced-match": "^1.0.0",
                 "concat-map": "0.0.1"
@@ -855,6 +864,7 @@
             "integrity": "sha512-6WTZ/IxCY/T6BALoZHaE4ctp9xm+Z5kY/pzYaCHRFeyVhojxlrm+46y68HA6hr0TcwEssoxNiDEUJQjfPZ/RYA==",
             "dev": true,
             "license": "MIT",
+            "peer": true,
             "dependencies": {
                 "ms": "^2.1.3"
             },
@@ -873,6 +883,7 @@
             "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==",
             "dev": true,
             "license": "ISC",
+            "peer": true,
             "dependencies": {
                 "brace-expansion": "^1.1.7"
             },
@@ -885,7 +896,8 @@
             "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz",
             "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==",
             "dev": true,
-            "license": "MIT"
+            "license": "MIT",
+            "peer": true
         },
         "node_modules/@humanwhocodes/module-importer": {
             "version": "1.0.1",
@@ -893,6 +905,7 @@
             "integrity": "sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==",
             "dev": true,
             "license": "Apache-2.0",
+            "peer": true,
             "engines": {
                 "node": ">=12.22"
             },
@@ -917,7 +930,8 @@
             "integrity": "sha512-93zYdMES/c1D69yZiKDBj0V24vqNzB/koF26KPaagAfd3P/4gUlh3Dys5ogAK+Exi9QyzlD8x/08Zt7wIKcDcA==",
             "deprecated": "Use @eslint/object-schema instead",
             "dev": true,
-            "license": "BSD-3-Clause"
+            "license": "BSD-3-Clause",
+            "peer": true
         },
         "node_modules/@inquirer/confirm": {
             "version": "2.0.17",
@@ -958,6 +972,21 @@
                 "node": ">=14.18.0"
             }
         },
+        "node_modules/@inquirer/core/node_modules/@types/node": {
+            "version": "20.17.19",
+            "resolved": "https://registry.npmjs.org/@types/node/-/node-20.17.19.tgz",
+            "integrity": "sha512-LEwC7o1ifqg/6r2gn9Dns0f1rhK+fPFDoMiceTJ6kWmVk6bgXBI/9IOWfVan4WiAavK9pIVWdX0/e3J+eEUh5A==",
+            "license": "MIT",
+            "dependencies": {
+                "undici-types": "~6.19.2"
+            }
+        },
+        "node_modules/@inquirer/core/node_modules/undici-types": {
+            "version": "6.19.8",
+            "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-6.19.8.tgz",
+            "integrity": "sha512-ve2KP6f/JnbPBFyobGHuerC9g1FYGn/F8n1LWTwNxCEzd6IfqTwUQcNXgEtmmQ6DlRrC1hrSrBnCZPokRrDHjw==",
+            "license": "MIT"
+        },
         "node_modules/@inquirer/type": {
             "version": "1.5.5",
             "resolved": "https://registry.npmjs.org/@inquirer/type/-/type-1.5.5.tgz",
@@ -1414,71 +1443,75 @@
             }
         },
         "node_modules/@prisma/client": {
-            "version": "5.22.0",
-            "resolved": "https://registry.npmjs.org/@prisma/client/-/client-5.22.0.tgz",
-            "integrity": "sha512-M0SVXfyHnQREBKxCgyo7sffrKttwE6R8PMq330MIUF0pTwjUhLbW84pFDlf06B27XyCR++VtjugEnIHdr07SVA==",
+            "version": "6.4.1",
+            "resolved": "https://registry.npmjs.org/@prisma/client/-/client-6.4.1.tgz",
+            "integrity": "sha512-A7Mwx44+GVZVexT5e2GF/WcKkEkNNKbgr059xpr5mn+oUm2ZW1svhe+0TRNBwCdzhfIZ+q23jEgsNPvKD9u+6g==",
             "hasInstallScript": true,
             "license": "Apache-2.0",
             "engines": {
-                "node": ">=16.13"
+                "node": ">=18.18"
             },
             "peerDependencies": {
-                "prisma": "*"
+                "prisma": "*",
+                "typescript": ">=5.1.0"
             },
             "peerDependenciesMeta": {
                 "prisma": {
                     "optional": true
+                },
+                "typescript": {
+                    "optional": true
                 }
             }
         },
         "node_modules/@prisma/debug": {
-            "version": "5.22.0",
-            "resolved": "https://registry.npmjs.org/@prisma/debug/-/debug-5.22.0.tgz",
-            "integrity": "sha512-AUt44v3YJeggO2ZU5BkXI7M4hu9BF2zzH2iF2V5pyXT/lRTyWiElZ7It+bRH1EshoMRxHgpYg4VB6rCM+mG5jQ==",
+            "version": "6.4.1",
+            "resolved": "https://registry.npmjs.org/@prisma/debug/-/debug-6.4.1.tgz",
+            "integrity": "sha512-Q9xk6yjEGIThjSD8zZegxd5tBRNHYd13GOIG0nLsanbTXATiPXCLyvlYEfvbR2ft6dlRsziQXfQGxAgv7zcMUA==",
             "devOptional": true,
             "license": "Apache-2.0"
         },
         "node_modules/@prisma/engines": {
-            "version": "5.22.0",
-            "resolved": "https://registry.npmjs.org/@prisma/engines/-/engines-5.22.0.tgz",
-            "integrity": "sha512-UNjfslWhAt06kVL3CjkuYpHAWSO6L4kDCVPegV6itt7nD1kSJavd3vhgAEhjglLJJKEdJ7oIqDJ+yHk6qO8gPA==",
+            "version": "6.4.1",
+            "resolved": "https://registry.npmjs.org/@prisma/engines/-/engines-6.4.1.tgz",
+            "integrity": "sha512-KldENzMHtKYwsOSLThghOIdXOBEsfDuGSrxAZjMnimBiDKd3AE4JQ+Kv+gBD/x77WoV9xIPf25GXMWffXZ17BA==",
             "devOptional": true,
             "hasInstallScript": true,
             "license": "Apache-2.0",
             "dependencies": {
-                "@prisma/debug": "5.22.0",
-                "@prisma/engines-version": "5.22.0-44.605197351a3c8bdd595af2d2a9bc3025bca48ea2",
-                "@prisma/fetch-engine": "5.22.0",
-                "@prisma/get-platform": "5.22.0"
+                "@prisma/debug": "6.4.1",
+                "@prisma/engines-version": "6.4.0-29.a9055b89e58b4b5bfb59600785423b1db3d0e75d",
+                "@prisma/fetch-engine": "6.4.1",
+                "@prisma/get-platform": "6.4.1"
             }
         },
         "node_modules/@prisma/engines-version": {
-            "version": "5.22.0-44.605197351a3c8bdd595af2d2a9bc3025bca48ea2",
-            "resolved": "https://registry.npmjs.org/@prisma/engines-version/-/engines-version-5.22.0-44.605197351a3c8bdd595af2d2a9bc3025bca48ea2.tgz",
-            "integrity": "sha512-2PTmxFR2yHW/eB3uqWtcgRcgAbG1rwG9ZriSvQw+nnb7c4uCr3RAcGMb6/zfE88SKlC1Nj2ziUvc96Z379mHgQ==",
+            "version": "6.4.0-29.a9055b89e58b4b5bfb59600785423b1db3d0e75d",
+            "resolved": "https://registry.npmjs.org/@prisma/engines-version/-/engines-version-6.4.0-29.a9055b89e58b4b5bfb59600785423b1db3d0e75d.tgz",
+            "integrity": "sha512-Xq54qw55vaCGrGgIJqyDwOq0TtjZPJEWsbQAHugk99hpDf2jcEeQhUcF+yzEsSqegBaDNLA4IC8Nn34sXmkiTQ==",
             "devOptional": true,
             "license": "Apache-2.0"
         },
         "node_modules/@prisma/fetch-engine": {
-            "version": "5.22.0",
-            "resolved": "https://registry.npmjs.org/@prisma/fetch-engine/-/fetch-engine-5.22.0.tgz",
-            "integrity": "sha512-bkrD/Mc2fSvkQBV5EpoFcZ87AvOgDxbG99488a5cexp5Ccny+UM6MAe/UFkUC0wLYD9+9befNOqGiIJhhq+HbA==",
+            "version": "6.4.1",
+            "resolved": "https://registry.npmjs.org/@prisma/fetch-engine/-/fetch-engine-6.4.1.tgz",
+            "integrity": "sha512-uZ5hVeTmDspx7KcaRCNoXmcReOD+84nwlO2oFvQPRQh9xiFYnnUKDz7l9bLxp8t4+25CsaNlgrgilXKSQwrIGQ==",
             "devOptional": true,
             "license": "Apache-2.0",
             "dependencies": {
-                "@prisma/debug": "5.22.0",
-                "@prisma/engines-version": "5.22.0-44.605197351a3c8bdd595af2d2a9bc3025bca48ea2",
-                "@prisma/get-platform": "5.22.0"
+                "@prisma/debug": "6.4.1",
+                "@prisma/engines-version": "6.4.0-29.a9055b89e58b4b5bfb59600785423b1db3d0e75d",
+                "@prisma/get-platform": "6.4.1"
             }
         },
         "node_modules/@prisma/get-platform": {
-            "version": "5.22.0",
-            "resolved": "https://registry.npmjs.org/@prisma/get-platform/-/get-platform-5.22.0.tgz",
-            "integrity": "sha512-pHhpQdr1UPFpt+zFfnPazhulaZYCUqeIcPpJViYoq9R+D/yw4fjE+CtnsnKzPYm0ddUbeXUzjGVGIRVgPDCk4Q==",
+            "version": "6.4.1",
+            "resolved": "https://registry.npmjs.org/@prisma/get-platform/-/get-platform-6.4.1.tgz",
+            "integrity": "sha512-gXqZaDI5scDkBF8oza7fOD3Q3QMD0e0rBynlzDDZdTWbWmzjuW58PRZtj+jkvKje2+ZigCWkH8SsWZAsH6q1Yw==",
             "devOptional": true,
             "license": "Apache-2.0",
             "dependencies": {
-                "@prisma/debug": "5.22.0"
+                "@prisma/debug": "6.4.1"
             }
         },
         "node_modules/@protobufjs/aspromise": {
@@ -1573,9 +1606,9 @@
             }
         },
         "node_modules/@redocly/cli": {
-            "version": "1.31.1",
-            "resolved": "https://registry.npmjs.org/@redocly/cli/-/cli-1.31.1.tgz",
-            "integrity": "sha512-9bsnA3Z6MqdhL5Qw2CeAZZX55F7TIpMkEJtB8ayx+/2nSnv85tGzDk+H2KmdLn6vu2w2ebuIT/Hi2zFU5BowXA==",
+            "version": "1.31.2",
+            "resolved": "https://registry.npmjs.org/@redocly/cli/-/cli-1.31.2.tgz",
+            "integrity": "sha512-xs3QLwfVmsmZCaL9sMSH+JgPaCwZoR2LVDCLnzQ4pDZTXK64CEUfjMrfCZZLmLqGWfxOeMQoi4VM+N2KRkr6Pg==",
             "dev": true,
             "license": "MIT",
             "dependencies": {
@@ -1584,8 +1617,8 @@
                 "@opentelemetry/resources": "1.26.0",
                 "@opentelemetry/sdk-trace-node": "1.26.0",
                 "@opentelemetry/semantic-conventions": "1.27.0",
-                "@redocly/openapi-core": "1.31.1",
-                "@redocly/respect-core": "1.31.1",
+                "@redocly/openapi-core": "1.31.2",
+                "@redocly/respect-core": "1.31.2",
                 "abort-controller": "^3.0.0",
                 "chokidar": "^3.5.1",
                 "colorette": "^1.2.0",
@@ -1661,21 +1694,21 @@
             }
         },
         "node_modules/@redocly/config": {
-            "version": "0.20.3",
-            "resolved": "https://registry.npmjs.org/@redocly/config/-/config-0.20.3.tgz",
-            "integrity": "sha512-Nyyv1Bj7GgYwj/l46O0nkH1GTKWbO3Ixe7KFcn021aZipkZd+z8Vlu1BwkhqtVgivcKaClaExtWU/lDHkjBzag==",
+            "version": "0.21.0",
+            "resolved": "https://registry.npmjs.org/@redocly/config/-/config-0.21.0.tgz",
+            "integrity": "sha512-JBtrrjBIURTnzb7KUIWOF46vSgpfC3rO6Mm8LjtRjtTNCLTyB+mOuU7HrTkVcvUCEBuSuzkivlTHMWT4JETz9A==",
             "dev": true,
             "license": "MIT"
         },
         "node_modules/@redocly/openapi-core": {
-            "version": "1.31.1",
-            "resolved": "https://registry.npmjs.org/@redocly/openapi-core/-/openapi-core-1.31.1.tgz",
-            "integrity": "sha512-FoTmi+iA6NGXk6rZpX6QvmEqbApbJgYC6soLj3zfx0f/1M4vUff5GuOEC24GWj7rN0vNx5E6eUx59h0M4sjRnQ==",
+            "version": "1.31.2",
+            "resolved": "https://registry.npmjs.org/@redocly/openapi-core/-/openapi-core-1.31.2.tgz",
+            "integrity": "sha512-HScpiSuluLic9+QpsI2JWaegeDuRn3hximPBpiUpy4WdXf74Ev094kpUgjhiD3xDuP/KpVdchooAkLnzQ0X+vg==",
             "dev": true,
             "license": "MIT",
             "dependencies": {
                 "@redocly/ajv": "^8.11.2",
-                "@redocly/config": "^0.20.1",
+                "@redocly/config": "^0.21.0",
                 "colorette": "^1.2.0",
                 "https-proxy-agent": "^7.0.5",
                 "js-levenshtein": "^1.1.6",
@@ -1690,15 +1723,15 @@
             }
         },
         "node_modules/@redocly/respect-core": {
-            "version": "1.31.1",
-            "resolved": "https://registry.npmjs.org/@redocly/respect-core/-/respect-core-1.31.1.tgz",
-            "integrity": "sha512-Vnr/VY0besJ/zCZo6htua+xHbfyJ1balZ/chxzxYCoZZPiVlL8UG7uoQ0Ptw08Ywg3gMcizJKzxaCc1/JdVOMQ==",
+            "version": "1.31.2",
+            "resolved": "https://registry.npmjs.org/@redocly/respect-core/-/respect-core-1.31.2.tgz",
+            "integrity": "sha512-DJHLTmDvwasTQH42ODIXwUTItke0UaBLLEa/35yaOkEvFRBXEr5LGucEFdxVr5y0/kZBpiSJaAz0GsjYglNjhg==",
             "dev": true,
             "license": "MIT",
             "dependencies": {
                 "@faker-js/faker": "^7.6.0",
                 "@redocly/ajv": "8.11.2",
-                "@redocly/openapi-core": "1.31.1",
+                "@redocly/openapi-core": "1.31.2",
                 "better-ajv-errors": "^1.2.0",
                 "colorette": "^2.0.20",
                 "concat-stream": "^2.0.0",
@@ -1964,12 +1997,12 @@
             }
         },
         "node_modules/@types/node": {
-            "version": "20.17.19",
-            "resolved": "https://registry.npmjs.org/@types/node/-/node-20.17.19.tgz",
-            "integrity": "sha512-LEwC7o1ifqg/6r2gn9Dns0f1rhK+fPFDoMiceTJ6kWmVk6bgXBI/9IOWfVan4WiAavK9pIVWdX0/e3J+eEUh5A==",
+            "version": "22.13.5",
+            "resolved": "https://registry.npmjs.org/@types/node/-/node-22.13.5.tgz",
+            "integrity": "sha512-+lTU0PxZXn0Dr1NBtC7Y8cR21AJr87dLLU953CWA6pMxxv/UDc7jYAY90upcrie1nRcD6XNG5HOYEDtgW5TxAg==",
             "license": "MIT",
             "dependencies": {
-                "undici-types": "~6.19.2"
+                "undici-types": "~6.20.0"
             }
         },
         "node_modules/@types/parse-link-header": {
@@ -2367,7 +2400,8 @@
             "resolved": "https://registry.npmjs.org/@ungap/structured-clone/-/structured-clone-1.3.0.tgz",
             "integrity": "sha512-WmoN8qaIAo7WTYWbAZuG8PYEhn5fkz7dZrqTBZ7dtt//lL2Gwms1IcnQ5yHqjDfX8Ft5j4YzDM23f87zBfDe9g==",
             "dev": true,
-            "license": "ISC"
+            "license": "ISC",
+            "peer": true
         },
         "node_modules/abort-controller": {
             "version": "3.0.0",
@@ -2410,6 +2444,7 @@
             "integrity": "sha512-cl669nCJTZBsL97OF4kUQm5g5hC2uihk0NxY3WENAC0TYdILVkAyHymAntgxGkl7K+t0cXIrH5siy5S4XkFycA==",
             "dev": true,
             "license": "MIT",
+            "peer": true,
             "bin": {
                 "acorn": "bin/acorn"
             },
@@ -2423,6 +2458,7 @@
             "integrity": "sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==",
             "dev": true,
             "license": "MIT",
+            "peer": true,
             "peerDependencies": {
                 "acorn": "^6.0.0 || ^7.0.0 || ^8.0.0"
             }
@@ -2594,9 +2630,9 @@
             }
         },
         "node_modules/axios": {
-            "version": "1.7.9",
-            "resolved": "https://registry.npmjs.org/axios/-/axios-1.7.9.tgz",
-            "integrity": "sha512-LhLcE7Hbiryz8oMDdDptSrWowmB4Bl6RCt6sIJKpRB4XtVf0iEgewX3au/pJqm+Py1kCASkb/FFKjxQaLtxJvw==",
+            "version": "1.8.1",
+            "resolved": "https://registry.npmjs.org/axios/-/axios-1.8.1.tgz",
+            "integrity": "sha512-NN+fvwH/kV01dYUQ3PTOZns4LWtWhOFCAhQ/pHb88WQ1hNe5V/dvFwc4VJcDL11LT9xSX0QtsR8sWUuyOuOq7g==",
             "license": "MIT",
             "dependencies": {
                 "follow-redirects": "^1.15.6",
@@ -2889,6 +2925,7 @@
             "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==",
             "dev": true,
             "license": "MIT",
+            "peer": true,
             "engines": {
                 "node": ">=6"
             }
@@ -3396,7 +3433,8 @@
             "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz",
             "integrity": "sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==",
             "dev": true,
-            "license": "MIT"
+            "license": "MIT",
+            "peer": true
         },
         "node_modules/default-browser": {
             "version": "5.2.1",
@@ -3515,6 +3553,7 @@
             "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==",
             "dev": true,
             "license": "Apache-2.0",
+            "peer": true,
             "dependencies": {
                 "esutils": "^2.0.2"
             },
@@ -3560,9 +3599,9 @@
             }
         },
         "node_modules/dotenv-cli": {
-            "version": "7.4.4",
-            "resolved": "https://registry.npmjs.org/dotenv-cli/-/dotenv-cli-7.4.4.tgz",
-            "integrity": "sha512-XkBYCG0tPIes+YZr4SpfFv76SQrV/LeCE8CI7JSEMi3VR9MvTihCGTOtbIexD6i2mXF+6px7trb1imVCXSNMDw==",
+            "version": "8.0.0",
+            "resolved": "https://registry.npmjs.org/dotenv-cli/-/dotenv-cli-8.0.0.tgz",
+            "integrity": "sha512-aLqYbK7xKOiTMIRf1lDPbI+Y+Ip/wo5k3eyp6ePysVaSqbyxjyK3dK35BTxG+rmd7djf5q2UPs4noPNH+cj0Qw==",
             "dev": true,
             "license": "MIT",
             "dependencies": {
@@ -3754,7 +3793,7 @@
             "version": "0.25.0",
             "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.25.0.tgz",
             "integrity": "sha512-BXq5mqc8ltbaN34cDqWuYKyNhX8D/Z0J1xdtdQ8UcIIIyJyz+ZMKUt58tF3SrZ85jcfN/PZYhjR5uDQAYNVbuw==",
-            "dev": true,
+            "devOptional": true,
             "hasInstallScript": true,
             "license": "MIT",
             "bin": {
@@ -3791,6 +3830,44 @@
                 "@esbuild/win32-x64": "0.25.0"
             }
         },
+        "node_modules/esbuild-register": {
+            "version": "3.6.0",
+            "resolved": "https://registry.npmjs.org/esbuild-register/-/esbuild-register-3.6.0.tgz",
+            "integrity": "sha512-H2/S7Pm8a9CL1uhp9OvjwrBh5Pvx0H8qVOxNu8Wed9Y7qv56MPtq+GGM8RJpq6glYJn9Wspr8uw7l55uyinNeg==",
+            "devOptional": true,
+            "license": "MIT",
+            "dependencies": {
+                "debug": "^4.3.4"
+            },
+            "peerDependencies": {
+                "esbuild": ">=0.12 <1"
+            }
+        },
+        "node_modules/esbuild-register/node_modules/debug": {
+            "version": "4.4.0",
+            "resolved": "https://registry.npmjs.org/debug/-/debug-4.4.0.tgz",
+            "integrity": "sha512-6WTZ/IxCY/T6BALoZHaE4ctp9xm+Z5kY/pzYaCHRFeyVhojxlrm+46y68HA6hr0TcwEssoxNiDEUJQjfPZ/RYA==",
+            "devOptional": true,
+            "license": "MIT",
+            "dependencies": {
+                "ms": "^2.1.3"
+            },
+            "engines": {
+                "node": ">=6.0"
+            },
+            "peerDependenciesMeta": {
+                "supports-color": {
+                    "optional": true
+                }
+            }
+        },
+        "node_modules/esbuild-register/node_modules/ms": {
+            "version": "2.1.3",
+            "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz",
+            "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==",
+            "devOptional": true,
+            "license": "MIT"
+        },
         "node_modules/escalade": {
             "version": "3.2.0",
             "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.2.0.tgz",
@@ -3813,6 +3890,7 @@
             "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==",
             "dev": true,
             "license": "MIT",
+            "peer": true,
             "engines": {
                 "node": ">=10"
             },
@@ -3827,6 +3905,7 @@
             "deprecated": "This version is no longer supported. Please see https://eslint.org/version-support for other options.",
             "dev": true,
             "license": "MIT",
+            "peer": true,
             "dependencies": {
                 "@eslint-community/eslint-utils": "^4.2.0",
                 "@eslint-community/regexpp": "^4.6.1",
@@ -3883,6 +3962,7 @@
             "integrity": "sha512-dOt21O7lTMhDM+X9mB4GX+DZrZtCUJPL/wlcTqxyrx5IvO0IYtILdtrQGQp+8n5S0gwSVmOf9NQrjMOgfQZlIg==",
             "dev": true,
             "license": "BSD-2-Clause",
+            "peer": true,
             "dependencies": {
                 "esrecurse": "^4.3.0",
                 "estraverse": "^5.2.0"
@@ -3907,12 +3987,24 @@
                 "url": "https://opencollective.com/eslint"
             }
         },
+        "node_modules/eslint/node_modules/@eslint/js": {
+            "version": "8.57.1",
+            "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.57.1.tgz",
+            "integrity": "sha512-d9zaMRSTIKDLhctzH12MtXvJKSSUhaHcjV+2Z+GK+EEY7XKpP5yR4x+N3TAcHTcu963nIr+TMcCb4DBCYX1z6Q==",
+            "dev": true,
+            "license": "MIT",
+            "peer": true,
+            "engines": {
+                "node": "^12.22.0 || ^14.17.0 || >=16.0.0"
+            }
+        },
         "node_modules/eslint/node_modules/ajv": {
             "version": "6.12.6",
             "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz",
             "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==",
             "dev": true,
             "license": "MIT",
+            "peer": true,
             "dependencies": {
                 "fast-deep-equal": "^3.1.1",
                 "fast-json-stable-stringify": "^2.0.0",
@@ -3930,6 +4022,7 @@
             "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==",
             "dev": true,
             "license": "MIT",
+            "peer": true,
             "dependencies": {
                 "balanced-match": "^1.0.0",
                 "concat-map": "0.0.1"
@@ -3941,6 +4034,7 @@
             "integrity": "sha512-6WTZ/IxCY/T6BALoZHaE4ctp9xm+Z5kY/pzYaCHRFeyVhojxlrm+46y68HA6hr0TcwEssoxNiDEUJQjfPZ/RYA==",
             "dev": true,
             "license": "MIT",
+            "peer": true,
             "dependencies": {
                 "ms": "^2.1.3"
             },
@@ -3959,6 +4053,7 @@
             "integrity": "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==",
             "dev": true,
             "license": "ISC",
+            "peer": true,
             "dependencies": {
                 "is-glob": "^4.0.3"
             },
@@ -3971,7 +4066,8 @@
             "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz",
             "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==",
             "dev": true,
-            "license": "MIT"
+            "license": "MIT",
+            "peer": true
         },
         "node_modules/eslint/node_modules/minimatch": {
             "version": "3.1.2",
@@ -3979,6 +4075,7 @@
             "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==",
             "dev": true,
             "license": "ISC",
+            "peer": true,
             "dependencies": {
                 "brace-expansion": "^1.1.7"
             },
@@ -3991,7 +4088,8 @@
             "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz",
             "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==",
             "dev": true,
-            "license": "MIT"
+            "license": "MIT",
+            "peer": true
         },
         "node_modules/espree": {
             "version": "9.6.1",
@@ -3999,6 +4097,7 @@
             "integrity": "sha512-oruZaFkjorTpF32kDSI5/75ViwGeZginGGy2NoOSg3Q9bnwlnmDm4HLnkl0RE3n+njDXR037aY1+x58Z/zFdwQ==",
             "dev": true,
             "license": "BSD-2-Clause",
+            "peer": true,
             "dependencies": {
                 "acorn": "^8.9.0",
                 "acorn-jsx": "^5.3.2",
@@ -4017,6 +4116,7 @@
             "integrity": "sha512-ca9pw9fomFcKPvFLXhBKUK90ZvGibiGOvRJNbjljY7s7uq/5YO4BOzcYtJqExdx99rF6aAcnRxHmcUHcz6sQsg==",
             "dev": true,
             "license": "BSD-3-Clause",
+            "peer": true,
             "dependencies": {
                 "estraverse": "^5.1.0"
             },
@@ -4030,6 +4130,7 @@
             "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==",
             "dev": true,
             "license": "BSD-2-Clause",
+            "peer": true,
             "dependencies": {
                 "estraverse": "^5.2.0"
             },
@@ -4043,6 +4144,7 @@
             "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==",
             "dev": true,
             "license": "BSD-2-Clause",
+            "peer": true,
             "engines": {
                 "node": ">=4.0"
             }
@@ -4053,6 +4155,7 @@
             "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==",
             "dev": true,
             "license": "BSD-2-Clause",
+            "peer": true,
             "engines": {
                 "node": ">=0.10.0"
             }
@@ -4229,14 +4332,16 @@
             "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz",
             "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==",
             "dev": true,
-            "license": "MIT"
+            "license": "MIT",
+            "peer": true
         },
         "node_modules/fast-levenshtein": {
             "version": "2.0.6",
             "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz",
             "integrity": "sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==",
             "dev": true,
-            "license": "MIT"
+            "license": "MIT",
+            "peer": true
         },
         "node_modules/fast-safe-stringify": {
             "version": "2.1.1",
@@ -4281,9 +4386,9 @@
             }
         },
         "node_modules/fastq": {
-            "version": "1.19.0",
-            "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.19.0.tgz",
-            "integrity": "sha512-7SFSRCNjBQIZH/xZR3iy5iQYR8aGBE0h3VG6/cwlbrpdciNYBMotQav8c1XI3HjHH+NikUpP53nPdlZSdWmFzA==",
+            "version": "1.19.1",
+            "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.19.1.tgz",
+            "integrity": "sha512-GwLTyxkCXjXbxqIhTsMI2Nui8huMPtnxg7krajPJAjnEG/iiOS7i+zCtWGZR9G0NBKbXKh6X9m9UIsYX/N6vvQ==",
             "dev": true,
             "license": "ISC",
             "dependencies": {
@@ -4326,6 +4431,7 @@
             "integrity": "sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==",
             "dev": true,
             "license": "MIT",
+            "peer": true,
             "dependencies": {
                 "flat-cache": "^3.0.4"
             },
@@ -4390,6 +4496,7 @@
             "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==",
             "dev": true,
             "license": "MIT",
+            "peer": true,
             "dependencies": {
                 "locate-path": "^6.0.0",
                 "path-exists": "^4.0.0"
@@ -4407,6 +4514,7 @@
             "integrity": "sha512-CYcENa+FtcUKLmhhqyctpclsq7QF38pKjZHsGNiSQF5r4FtoKDWabFDl3hzaEQMvT1LHEysw5twgLvpYYb4vbw==",
             "dev": true,
             "license": "MIT",
+            "peer": true,
             "dependencies": {
                 "flatted": "^3.2.9",
                 "keyv": "^4.5.3",
@@ -4421,7 +4529,8 @@
             "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.3.3.tgz",
             "integrity": "sha512-GX+ysw4PBCz0PzosHDepZGANEuFCMLrnRTiEy9McGjmkCQYwRq4A/X786G/fjM/+OjsWSU1ZrY5qyARZmO/uwg==",
             "dev": true,
-            "license": "ISC"
+            "license": "ISC",
+            "peer": true
         },
         "node_modules/fn.name": {
             "version": "1.1.0",
@@ -4697,6 +4806,7 @@
             "integrity": "sha512-AhO5QUcj8llrbG09iWhPU2B204J1xnPeL8kQmVorSsy+Sjj1sk8gIyh6cUocGmH4L0UuhAJy+hJMRA4mgA4mFQ==",
             "dev": true,
             "license": "MIT",
+            "peer": true,
             "dependencies": {
                 "type-fest": "^0.20.2"
             },
@@ -4713,6 +4823,7 @@
             "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==",
             "dev": true,
             "license": "(MIT OR CC0-1.0)",
+            "peer": true,
             "engines": {
                 "node": ">=10"
             },
@@ -4831,12 +4942,12 @@
             }
         },
         "node_modules/helmet": {
-            "version": "7.2.0",
-            "resolved": "https://registry.npmjs.org/helmet/-/helmet-7.2.0.tgz",
-            "integrity": "sha512-ZRiwvN089JfMXokizgqEPXsl2Guk094yExfoDXR0cBYWxtBbaSww/w+vT4WEJsBW2iTUi1GgZ6swmoug3Oy4Xw==",
+            "version": "8.0.0",
+            "resolved": "https://registry.npmjs.org/helmet/-/helmet-8.0.0.tgz",
+            "integrity": "sha512-VyusHLEIIO5mjQPUI1wpOAEu+wl6Q0998jzTxqUYGE45xCIcAxy3MsbEK/yyJUJ3ADeMoB6MornPH6GMWAf+Pw==",
             "license": "MIT",
             "engines": {
-                "node": ">=16.0.0"
+                "node": ">=18.0.0"
             }
         },
         "node_modules/http-errors": {
@@ -4970,6 +5081,7 @@
             "integrity": "sha512-TR3KfrTZTYLPB6jUjfx6MF9WcWrHL9su5TObK4ZkYgBdWKPOFoSoQIdEuTuR82pmtxH2spWG9h6etwfr1pLBqQ==",
             "dev": true,
             "license": "MIT",
+            "peer": true,
             "dependencies": {
                 "parent-module": "^1.0.0",
                 "resolve-from": "^4.0.0"
@@ -4987,6 +5099,7 @@
             "integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==",
             "dev": true,
             "license": "MIT",
+            "peer": true,
             "engines": {
                 "node": ">=0.8.19"
             }
@@ -5153,6 +5266,7 @@
             "integrity": "sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==",
             "dev": true,
             "license": "MIT",
+            "peer": true,
             "engines": {
                 "node": ">=8"
             }
@@ -5353,7 +5467,8 @@
             "resolved": "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.1.tgz",
             "integrity": "sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==",
             "dev": true,
-            "license": "MIT"
+            "license": "MIT",
+            "peer": true
         },
         "node_modules/json-pointer": {
             "version": "0.6.2",
@@ -5382,7 +5497,8 @@
             "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz",
             "integrity": "sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==",
             "dev": true,
-            "license": "MIT"
+            "license": "MIT",
+            "peer": true
         },
         "node_modules/json5": {
             "version": "2.2.3",
@@ -5480,6 +5596,7 @@
             "integrity": "sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw==",
             "dev": true,
             "license": "MIT",
+            "peer": true,
             "dependencies": {
                 "json-buffer": "3.0.1"
             }
@@ -5506,6 +5623,7 @@
             "integrity": "sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==",
             "dev": true,
             "license": "MIT",
+            "peer": true,
             "dependencies": {
                 "prelude-ls": "^1.2.1",
                 "type-check": "~0.4.0"
@@ -5520,6 +5638,7 @@
             "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==",
             "dev": true,
             "license": "MIT",
+            "peer": true,
             "dependencies": {
                 "p-locate": "^5.0.0"
             },
@@ -5577,7 +5696,8 @@
             "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz",
             "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==",
             "dev": true,
-            "license": "MIT"
+            "license": "MIT",
+            "peer": true
         },
         "node_modules/lodash.once": {
             "version": "4.1.1",
@@ -6271,9 +6391,9 @@
             }
         },
         "node_modules/npm": {
-            "version": "10.9.2",
-            "resolved": "https://registry.npmjs.org/npm/-/npm-10.9.2.tgz",
-            "integrity": "sha512-iriPEPIkoMYUy3F6f3wwSZAU93E0Eg6cHwIR6jzzOXWSy+SD/rOODEs74cVONHKSx2obXtuUoyidVEhISrisgQ==",
+            "version": "11.1.0",
+            "resolved": "https://registry.npmjs.org/npm/-/npm-11.1.0.tgz",
+            "integrity": "sha512-rPMBrZud26lI/LcjQeLw/K5Hf1apXMKgkpNNEzp0YQYmM877+T1ZNKPcB2hnTi7e6fBNz8xLtMMn/w46fVUqGw==",
             "bundleDependencies": [
                 "@isaacs/string-locale-compare",
                 "@npmcli/arborist",
@@ -6304,7 +6424,6 @@
                 "libnpmdiff",
                 "libnpmexec",
                 "libnpmfund",
-                "libnpmhook",
                 "libnpmorg",
                 "libnpmpack",
                 "libnpmpublish",
@@ -6341,8 +6460,7 @@
                 "tiny-relative-date",
                 "treeverse",
                 "validate-npm-package-name",
-                "which",
-                "write-file-atomic"
+                "which"
             ],
             "dev": true,
             "license": "Artistic-2.0",
@@ -6355,11 +6473,11 @@
             ],
             "dependencies": {
                 "@isaacs/string-locale-compare": "^1.1.0",
-                "@npmcli/arborist": "^8.0.0",
-                "@npmcli/config": "^9.0.0",
+                "@npmcli/arborist": "^9.0.0",
+                "@npmcli/config": "^10.0.1",
                 "@npmcli/fs": "^4.0.0",
                 "@npmcli/map-workspaces": "^4.0.2",
-                "@npmcli/package-json": "^6.1.0",
+                "@npmcli/package-json": "^6.1.1",
                 "@npmcli/promise-spawn": "^8.0.2",
                 "@npmcli/redact": "^3.0.0",
                 "@npmcli/run-script": "^9.0.1",
@@ -6367,7 +6485,7 @@
                 "abbrev": "^3.0.0",
                 "archy": "~1.0.0",
                 "cacache": "^19.0.1",
-                "chalk": "^5.3.0",
+                "chalk": "^5.4.1",
                 "ci-info": "^4.1.0",
                 "cli-columns": "^4.0.0",
                 "fastest-levenshtein": "^1.0.16",
@@ -6376,20 +6494,19 @@
                 "graceful-fs": "^4.2.11",
                 "hosted-git-info": "^8.0.2",
                 "ini": "^5.0.0",
-                "init-package-json": "^7.0.2",
+                "init-package-json": "^8.0.0",
                 "is-cidr": "^5.1.0",
                 "json-parse-even-better-errors": "^4.0.0",
-                "libnpmaccess": "^9.0.0",
-                "libnpmdiff": "^7.0.0",
-                "libnpmexec": "^9.0.0",
-                "libnpmfund": "^6.0.0",
-                "libnpmhook": "^11.0.0",
-                "libnpmorg": "^7.0.0",
-                "libnpmpack": "^8.0.0",
-                "libnpmpublish": "^10.0.1",
-                "libnpmsearch": "^8.0.0",
-                "libnpmteam": "^7.0.0",
-                "libnpmversion": "^7.0.0",
+                "libnpmaccess": "^10.0.0",
+                "libnpmdiff": "^8.0.0",
+                "libnpmexec": "^10.0.0",
+                "libnpmfund": "^7.0.0",
+                "libnpmorg": "^8.0.0",
+                "libnpmpack": "^9.0.0",
+                "libnpmpublish": "^11.0.0",
+                "libnpmsearch": "^9.0.0",
+                "libnpmteam": "^8.0.0",
+                "libnpmversion": "^8.0.0",
                 "make-fetch-happen": "^14.0.3",
                 "minimatch": "^9.0.5",
                 "minipass": "^7.1.1",
@@ -6400,13 +6517,13 @@
                 "normalize-package-data": "^7.0.0",
                 "npm-audit-report": "^6.0.0",
                 "npm-install-checks": "^7.1.1",
-                "npm-package-arg": "^12.0.0",
+                "npm-package-arg": "^12.0.1",
                 "npm-pick-manifest": "^10.0.0",
                 "npm-profile": "^11.0.1",
                 "npm-registry-fetch": "^18.0.2",
                 "npm-user-validate": "^3.0.0",
-                "p-map": "^4.0.0",
-                "pacote": "^19.0.1",
+                "p-map": "^7.0.3",
+                "pacote": "^21.0.0",
                 "parse-conflict-json": "^4.0.0",
                 "proc-log": "^5.0.0",
                 "qrcode-terminal": "^0.12.0",
@@ -6420,15 +6537,14 @@
                 "tiny-relative-date": "^1.3.0",
                 "treeverse": "^3.0.0",
                 "validate-npm-package-name": "^6.0.0",
-                "which": "^5.0.0",
-                "write-file-atomic": "^6.0.0"
+                "which": "^5.0.0"
             },
             "bin": {
                 "npm": "bin/npm-cli.js",
                 "npx": "bin/npx-cli.js"
             },
             "engines": {
-                "node": "^18.17.0 || >=20.5.0"
+                "node": "^20.17.0 || >=22.9.0"
             }
         },
         "node_modules/npm-run-path": {
@@ -6545,7 +6661,7 @@
             }
         },
         "node_modules/npm/node_modules/@npmcli/arborist": {
-            "version": "8.0.0",
+            "version": "9.0.0",
             "dev": true,
             "inBundle": true,
             "license": "ISC",
@@ -6554,7 +6670,7 @@
                 "@npmcli/fs": "^4.0.0",
                 "@npmcli/installed-package-contents": "^3.0.0",
                 "@npmcli/map-workspaces": "^4.0.1",
-                "@npmcli/metavuln-calculator": "^8.0.0",
+                "@npmcli/metavuln-calculator": "^9.0.0",
                 "@npmcli/name-from-folder": "^3.0.0",
                 "@npmcli/node-gyp": "^4.0.0",
                 "@npmcli/package-json": "^6.0.1",
@@ -6565,7 +6681,6 @@
                 "cacache": "^19.0.1",
                 "common-ancestor-path": "^1.0.1",
                 "hosted-git-info": "^8.0.0",
-                "json-parse-even-better-errors": "^4.0.0",
                 "json-stringify-nice": "^1.1.4",
                 "lru-cache": "^10.2.2",
                 "minimatch": "^9.0.4",
@@ -6574,7 +6689,7 @@
                 "npm-package-arg": "^12.0.0",
                 "npm-pick-manifest": "^10.0.0",
                 "npm-registry-fetch": "^18.0.1",
-                "pacote": "^19.0.0",
+                "pacote": "^21.0.0",
                 "parse-conflict-json": "^4.0.0",
                 "proc-log": "^5.0.0",
                 "proggy": "^3.0.0",
@@ -6584,17 +6699,17 @@
                 "semver": "^7.3.7",
                 "ssri": "^12.0.0",
                 "treeverse": "^3.0.0",
-                "walk-up-path": "^3.0.1"
+                "walk-up-path": "^4.0.0"
             },
             "bin": {
                 "arborist": "bin/index.js"
             },
             "engines": {
-                "node": "^18.17.0 || >=20.5.0"
+                "node": "^20.17.0 || >=22.9.0"
             }
         },
         "node_modules/npm/node_modules/@npmcli/config": {
-            "version": "9.0.0",
+            "version": "10.0.1",
             "dev": true,
             "inBundle": true,
             "license": "ISC",
@@ -6606,10 +6721,10 @@
                 "nopt": "^8.0.0",
                 "proc-log": "^5.0.0",
                 "semver": "^7.3.5",
-                "walk-up-path": "^3.0.1"
+                "walk-up-path": "^4.0.0"
             },
             "engines": {
-                "node": "^18.17.0 || >=20.5.0"
+                "node": "^20.17.0 || >=22.9.0"
             }
         },
         "node_modules/npm/node_modules/@npmcli/fs": {
@@ -6676,50 +6791,19 @@
             }
         },
         "node_modules/npm/node_modules/@npmcli/metavuln-calculator": {
-            "version": "8.0.1",
+            "version": "9.0.0",
             "dev": true,
             "inBundle": true,
             "license": "ISC",
             "dependencies": {
                 "cacache": "^19.0.0",
                 "json-parse-even-better-errors": "^4.0.0",
-                "pacote": "^20.0.0",
+                "pacote": "^21.0.0",
                 "proc-log": "^5.0.0",
                 "semver": "^7.3.5"
             },
             "engines": {
-                "node": "^18.17.0 || >=20.5.0"
-            }
-        },
-        "node_modules/npm/node_modules/@npmcli/metavuln-calculator/node_modules/pacote": {
-            "version": "20.0.0",
-            "dev": true,
-            "inBundle": true,
-            "license": "ISC",
-            "dependencies": {
-                "@npmcli/git": "^6.0.0",
-                "@npmcli/installed-package-contents": "^3.0.0",
-                "@npmcli/package-json": "^6.0.0",
-                "@npmcli/promise-spawn": "^8.0.0",
-                "@npmcli/run-script": "^9.0.0",
-                "cacache": "^19.0.0",
-                "fs-minipass": "^3.0.0",
-                "minipass": "^7.0.2",
-                "npm-package-arg": "^12.0.0",
-                "npm-packlist": "^9.0.0",
-                "npm-pick-manifest": "^10.0.0",
-                "npm-registry-fetch": "^18.0.0",
-                "proc-log": "^5.0.0",
-                "promise-retry": "^2.0.1",
-                "sigstore": "^3.0.0",
-                "ssri": "^12.0.0",
-                "tar": "^6.1.11"
-            },
-            "bin": {
-                "pacote": "bin/index.js"
-            },
-            "engines": {
-                "node": "^18.17.0 || >=20.5.0"
+                "node": "^20.17.0 || >=22.9.0"
             }
         },
         "node_modules/npm/node_modules/@npmcli/name-from-folder": {
@@ -6741,7 +6825,7 @@
             }
         },
         "node_modules/npm/node_modules/@npmcli/package-json": {
-            "version": "6.1.0",
+            "version": "6.1.1",
             "dev": true,
             "inBundle": true,
             "license": "ISC",
@@ -6750,9 +6834,9 @@
                 "glob": "^10.2.2",
                 "hosted-git-info": "^8.0.0",
                 "json-parse-even-better-errors": "^4.0.0",
-                "normalize-package-data": "^7.0.0",
                 "proc-log": "^5.0.0",
-                "semver": "^7.5.3"
+                "semver": "^7.5.3",
+                "validate-npm-package-license": "^3.0.4"
             },
             "engines": {
                 "node": "^18.17.0 || >=20.5.0"
@@ -6818,13 +6902,51 @@
                 "node": ">=14"
             }
         },
+        "node_modules/npm/node_modules/@sigstore/bundle": {
+            "version": "3.0.0",
+            "dev": true,
+            "inBundle": true,
+            "license": "Apache-2.0",
+            "dependencies": {
+                "@sigstore/protobuf-specs": "^0.3.2"
+            },
+            "engines": {
+                "node": "^18.17.0 || >=20.5.0"
+            }
+        },
+        "node_modules/npm/node_modules/@sigstore/core": {
+            "version": "2.0.0",
+            "dev": true,
+            "inBundle": true,
+            "license": "Apache-2.0",
+            "engines": {
+                "node": "^18.17.0 || >=20.5.0"
+            }
+        },
         "node_modules/npm/node_modules/@sigstore/protobuf-specs": {
-            "version": "0.3.2",
+            "version": "0.3.3",
             "dev": true,
             "inBundle": true,
             "license": "Apache-2.0",
             "engines": {
-                "node": "^16.14.0 || >=18.0.0"
+                "node": "^18.17.0 || >=20.5.0"
+            }
+        },
+        "node_modules/npm/node_modules/@sigstore/sign": {
+            "version": "3.0.0",
+            "dev": true,
+            "inBundle": true,
+            "license": "Apache-2.0",
+            "dependencies": {
+                "@sigstore/bundle": "^3.0.0",
+                "@sigstore/core": "^2.0.0",
+                "@sigstore/protobuf-specs": "^0.3.2",
+                "make-fetch-happen": "^14.0.1",
+                "proc-log": "^5.0.0",
+                "promise-retry": "^2.0.1"
+            },
+            "engines": {
+                "node": "^18.17.0 || >=20.5.0"
             }
         },
         "node_modules/npm/node_modules/@sigstore/tuf": {
@@ -6840,6 +6962,20 @@
                 "node": "^18.17.0 || >=20.5.0"
             }
         },
+        "node_modules/npm/node_modules/@sigstore/verify": {
+            "version": "2.0.0",
+            "dev": true,
+            "inBundle": true,
+            "license": "Apache-2.0",
+            "dependencies": {
+                "@sigstore/bundle": "^3.0.0",
+                "@sigstore/core": "^2.0.0",
+                "@sigstore/protobuf-specs": "^0.3.2"
+            },
+            "engines": {
+                "node": "^18.17.0 || >=20.5.0"
+            }
+        },
         "node_modules/npm/node_modules/@tufjs/canonical-json": {
             "version": "2.0.0",
             "dev": true,
@@ -6849,38 +6985,35 @@
                 "node": "^16.14.0 || >=18.0.0"
             }
         },
-        "node_modules/npm/node_modules/abbrev": {
-            "version": "3.0.0",
+        "node_modules/npm/node_modules/@tufjs/models": {
+            "version": "3.0.1",
             "dev": true,
             "inBundle": true,
-            "license": "ISC",
+            "license": "MIT",
+            "dependencies": {
+                "@tufjs/canonical-json": "2.0.0",
+                "minimatch": "^9.0.5"
+            },
             "engines": {
                 "node": "^18.17.0 || >=20.5.0"
             }
         },
-        "node_modules/npm/node_modules/agent-base": {
-            "version": "7.1.1",
+        "node_modules/npm/node_modules/abbrev": {
+            "version": "3.0.0",
             "dev": true,
             "inBundle": true,
-            "license": "MIT",
-            "dependencies": {
-                "debug": "^4.3.4"
-            },
+            "license": "ISC",
             "engines": {
-                "node": ">= 14"
+                "node": "^18.17.0 || >=20.5.0"
             }
         },
-        "node_modules/npm/node_modules/aggregate-error": {
-            "version": "3.1.0",
+        "node_modules/npm/node_modules/agent-base": {
+            "version": "7.1.3",
             "dev": true,
             "inBundle": true,
             "license": "MIT",
-            "dependencies": {
-                "clean-stack": "^2.0.0",
-                "indent-string": "^4.0.0"
-            },
             "engines": {
-                "node": ">=8"
+                "node": ">= 14"
             }
         },
         "node_modules/npm/node_modules/ansi-regex": {
@@ -6939,12 +7072,12 @@
             }
         },
         "node_modules/npm/node_modules/binary-extensions": {
-            "version": "2.3.0",
+            "version": "3.0.0",
             "dev": true,
             "inBundle": true,
             "license": "MIT",
             "engines": {
-                "node": ">=8"
+                "node": ">=18.20"
             },
             "funding": {
                 "url": "https://github.com/sponsors/sindresorhus"
@@ -7019,18 +7152,6 @@
                 "url": "https://github.com/sponsors/isaacs"
             }
         },
-        "node_modules/npm/node_modules/cacache/node_modules/p-map": {
-            "version": "7.0.2",
-            "dev": true,
-            "inBundle": true,
-            "license": "MIT",
-            "engines": {
-                "node": ">=18"
-            },
-            "funding": {
-                "url": "https://github.com/sponsors/sindresorhus"
-            }
-        },
         "node_modules/npm/node_modules/cacache/node_modules/tar": {
             "version": "7.4.3",
             "dev": true,
@@ -7058,7 +7179,7 @@
             }
         },
         "node_modules/npm/node_modules/chalk": {
-            "version": "5.3.0",
+            "version": "5.4.1",
             "dev": true,
             "inBundle": true,
             "license": "MIT",
@@ -7105,15 +7226,6 @@
                 "node": ">=14"
             }
         },
-        "node_modules/npm/node_modules/clean-stack": {
-            "version": "2.2.0",
-            "dev": true,
-            "inBundle": true,
-            "license": "MIT",
-            "engines": {
-                "node": ">=6"
-            }
-        },
         "node_modules/npm/node_modules/cli-columns": {
             "version": "4.0.0",
             "dev": true,
@@ -7202,7 +7314,7 @@
             }
         },
         "node_modules/npm/node_modules/debug": {
-            "version": "4.3.7",
+            "version": "4.4.0",
             "dev": true,
             "inBundle": true,
             "license": "MIT",
@@ -7219,7 +7331,7 @@
             }
         },
         "node_modules/npm/node_modules/diff": {
-            "version": "5.2.0",
+            "version": "7.0.0",
             "dev": true,
             "inBundle": true,
             "license": "BSD-3-Clause",
@@ -7365,12 +7477,12 @@
             }
         },
         "node_modules/npm/node_modules/https-proxy-agent": {
-            "version": "7.0.5",
+            "version": "7.0.6",
             "dev": true,
             "inBundle": true,
             "license": "MIT",
             "dependencies": {
-                "agent-base": "^7.0.2",
+                "agent-base": "^7.1.2",
                 "debug": "4"
             },
             "engines": {
@@ -7411,15 +7523,6 @@
                 "node": ">=0.8.19"
             }
         },
-        "node_modules/npm/node_modules/indent-string": {
-            "version": "4.0.0",
-            "dev": true,
-            "inBundle": true,
-            "license": "MIT",
-            "engines": {
-                "node": ">=8"
-            }
-        },
         "node_modules/npm/node_modules/ini": {
             "version": "5.0.0",
             "dev": true,
@@ -7430,12 +7533,12 @@
             }
         },
         "node_modules/npm/node_modules/init-package-json": {
-            "version": "7.0.2",
+            "version": "8.0.0",
             "dev": true,
             "inBundle": true,
             "license": "ISC",
             "dependencies": {
-                "@npmcli/package-json": "^6.0.0",
+                "@npmcli/package-json": "^6.1.0",
                 "npm-package-arg": "^12.0.0",
                 "promzard": "^2.0.0",
                 "read": "^4.0.0",
@@ -7444,7 +7547,7 @@
                 "validate-npm-package-name": "^6.0.0"
             },
             "engines": {
-                "node": "^18.17.0 || >=20.5.0"
+                "node": "^20.17.0 || >=22.9.0"
             }
         },
         "node_modules/npm/node_modules/ip-address": {
@@ -7560,7 +7663,7 @@
             "license": "MIT"
         },
         "node_modules/npm/node_modules/libnpmaccess": {
-            "version": "9.0.0",
+            "version": "10.0.0",
             "dev": true,
             "inBundle": true,
             "license": "ISC",
@@ -7569,76 +7672,63 @@
                 "npm-registry-fetch": "^18.0.1"
             },
             "engines": {
-                "node": "^18.17.0 || >=20.5.0"
+                "node": "^20.17.0 || >=22.9.0"
             }
         },
         "node_modules/npm/node_modules/libnpmdiff": {
-            "version": "7.0.0",
+            "version": "8.0.0",
             "dev": true,
             "inBundle": true,
             "license": "ISC",
             "dependencies": {
-                "@npmcli/arborist": "^8.0.0",
+                "@npmcli/arborist": "^9.0.0",
                 "@npmcli/installed-package-contents": "^3.0.0",
-                "binary-extensions": "^2.3.0",
-                "diff": "^5.1.0",
+                "binary-extensions": "^3.0.0",
+                "diff": "^7.0.0",
                 "minimatch": "^9.0.4",
                 "npm-package-arg": "^12.0.0",
-                "pacote": "^19.0.0",
+                "pacote": "^21.0.0",
                 "tar": "^6.2.1"
             },
             "engines": {
-                "node": "^18.17.0 || >=20.5.0"
+                "node": "^20.17.0 || >=22.9.0"
             }
         },
         "node_modules/npm/node_modules/libnpmexec": {
-            "version": "9.0.0",
+            "version": "10.0.0",
             "dev": true,
             "inBundle": true,
             "license": "ISC",
             "dependencies": {
-                "@npmcli/arborist": "^8.0.0",
+                "@npmcli/arborist": "^9.0.0",
                 "@npmcli/run-script": "^9.0.1",
                 "ci-info": "^4.0.0",
                 "npm-package-arg": "^12.0.0",
-                "pacote": "^19.0.0",
+                "pacote": "^21.0.0",
                 "proc-log": "^5.0.0",
                 "read": "^4.0.0",
                 "read-package-json-fast": "^4.0.0",
                 "semver": "^7.3.7",
-                "walk-up-path": "^3.0.1"
+                "walk-up-path": "^4.0.0"
             },
             "engines": {
-                "node": "^18.17.0 || >=20.5.0"
+                "node": "^20.17.0 || >=22.9.0"
             }
         },
         "node_modules/npm/node_modules/libnpmfund": {
-            "version": "6.0.0",
+            "version": "7.0.0",
             "dev": true,
             "inBundle": true,
             "license": "ISC",
             "dependencies": {
-                "@npmcli/arborist": "^8.0.0"
+                "@npmcli/arborist": "^9.0.0"
             },
             "engines": {
-                "node": "^18.17.0 || >=20.5.0"
-            }
-        },
-        "node_modules/npm/node_modules/libnpmhook": {
-            "version": "11.0.0",
-            "dev": true,
-            "inBundle": true,
-            "license": "ISC",
-            "dependencies": {
-                "aproba": "^2.0.0",
-                "npm-registry-fetch": "^18.0.1"
-            },
-            "engines": {
-                "node": "^18.17.0 || >=20.5.0"
+                "node": "^20.17.0 || >=22.9.0"
             }
         },
         "node_modules/npm/node_modules/libnpmorg": {
-            "version": "7.0.0",
+            "version": "8.0.0",
             "dev": true,
             "inBundle": true,
             "license": "ISC",
@@ -7647,26 +7737,26 @@
                 "npm-registry-fetch": "^18.0.1"
             },
             "engines": {
-                "node": "^18.17.0 || >=20.5.0"
+                "node": "^20.17.0 || >=22.9.0"
             }
         },
         "node_modules/npm/node_modules/libnpmpack": {
-            "version": "8.0.0",
+            "version": "9.0.0",
             "dev": true,
             "inBundle": true,
             "license": "ISC",
             "dependencies": {
-                "@npmcli/arborist": "^8.0.0",
+                "@npmcli/arborist": "^9.0.0",
                 "@npmcli/run-script": "^9.0.1",
                 "npm-package-arg": "^12.0.0",
-                "pacote": "^19.0.0"
+                "pacote": "^21.0.0"
             },
             "engines": {
-                "node": "^18.17.0 || >=20.5.0"
+                "node": "^20.17.0 || >=22.9.0"
             }
         },
         "node_modules/npm/node_modules/libnpmpublish": {
-            "version": "10.0.1",
+            "version": "11.0.0",
             "dev": true,
             "inBundle": true,
             "license": "ISC",
@@ -7681,11 +7771,11 @@
                 "ssri": "^12.0.0"
             },
             "engines": {
-                "node": "^18.17.0 || >=20.5.0"
+                "node": "^20.17.0 || >=22.9.0"
             }
         },
         "node_modules/npm/node_modules/libnpmsearch": {
-            "version": "8.0.0",
+            "version": "9.0.0",
             "dev": true,
             "inBundle": true,
             "license": "ISC",
@@ -7693,11 +7783,11 @@
                 "npm-registry-fetch": "^18.0.1"
             },
             "engines": {
-                "node": "^18.17.0 || >=20.5.0"
+                "node": "^20.17.0 || >=22.9.0"
             }
         },
         "node_modules/npm/node_modules/libnpmteam": {
-            "version": "7.0.0",
+            "version": "8.0.0",
             "dev": true,
             "inBundle": true,
             "license": "ISC",
@@ -7706,11 +7796,11 @@
                 "npm-registry-fetch": "^18.0.1"
             },
             "engines": {
-                "node": "^18.17.0 || >=20.5.0"
+                "node": "^20.17.0 || >=22.9.0"
             }
         },
         "node_modules/npm/node_modules/libnpmversion": {
-            "version": "7.0.0",
+            "version": "8.0.0",
             "dev": true,
             "inBundle": true,
             "license": "ISC",
@@ -7722,7 +7812,7 @@
                 "semver": "^7.3.7"
             },
             "engines": {
-                "node": "^18.17.0 || >=20.5.0"
+                "node": "^20.17.0 || >=22.9.0"
             }
         },
         "node_modules/npm/node_modules/lru-cache": {
@@ -8120,7 +8210,7 @@
             }
         },
         "node_modules/npm/node_modules/npm-package-arg": {
-            "version": "12.0.0",
+            "version": "12.0.1",
             "dev": true,
             "inBundle": true,
             "license": "ISC",
@@ -8135,7 +8225,7 @@
             }
         },
         "node_modules/npm/node_modules/npm-packlist": {
-            "version": "9.0.0",
+            "version": "10.0.0",
             "dev": true,
             "inBundle": true,
             "license": "ISC",
@@ -8143,7 +8233,7 @@
                 "ignore-walk": "^7.0.0"
             },
             "engines": {
-                "node": "^18.17.0 || >=20.5.0"
+                "node": "^20.17.0 || >=22.9.0"
             }
         },
         "node_modules/npm/node_modules/npm-pick-manifest": {
@@ -8216,15 +8306,12 @@
             }
         },
         "node_modules/npm/node_modules/p-map": {
-            "version": "4.0.0",
+            "version": "7.0.3",
             "dev": true,
             "inBundle": true,
             "license": "MIT",
-            "dependencies": {
-                "aggregate-error": "^3.0.0"
-            },
             "engines": {
-                "node": ">=10"
+                "node": ">=18"
             },
             "funding": {
                 "url": "https://github.com/sponsors/sindresorhus"
@@ -8237,7 +8324,7 @@
             "license": "BlueOak-1.0.0"
         },
         "node_modules/npm/node_modules/pacote": {
-            "version": "19.0.1",
+            "version": "21.0.0",
             "dev": true,
             "inBundle": true,
             "license": "ISC",
@@ -8251,7 +8338,7 @@
                 "fs-minipass": "^3.0.0",
                 "minipass": "^7.0.2",
                 "npm-package-arg": "^12.0.0",
-                "npm-packlist": "^9.0.0",
+                "npm-packlist": "^10.0.0",
                 "npm-pick-manifest": "^10.0.0",
                 "npm-registry-fetch": "^18.0.0",
                 "proc-log": "^5.0.0",
@@ -8264,7 +8351,7 @@
                 "pacote": "bin/index.js"
             },
             "engines": {
-                "node": "^18.17.0 || >=20.5.0"
+                "node": "^20.17.0 || >=22.9.0"
             }
         },
         "node_modules/npm/node_modules/parse-conflict-json": {
@@ -8521,58 +8608,6 @@
                 "node": "^18.17.0 || >=20.5.0"
             }
         },
-        "node_modules/npm/node_modules/sigstore/node_modules/@sigstore/bundle": {
-            "version": "3.0.0",
-            "dev": true,
-            "inBundle": true,
-            "license": "Apache-2.0",
-            "dependencies": {
-                "@sigstore/protobuf-specs": "^0.3.2"
-            },
-            "engines": {
-                "node": "^18.17.0 || >=20.5.0"
-            }
-        },
-        "node_modules/npm/node_modules/sigstore/node_modules/@sigstore/core": {
-            "version": "2.0.0",
-            "dev": true,
-            "inBundle": true,
-            "license": "Apache-2.0",
-            "engines": {
-                "node": "^18.17.0 || >=20.5.0"
-            }
-        },
-        "node_modules/npm/node_modules/sigstore/node_modules/@sigstore/sign": {
-            "version": "3.0.0",
-            "dev": true,
-            "inBundle": true,
-            "license": "Apache-2.0",
-            "dependencies": {
-                "@sigstore/bundle": "^3.0.0",
-                "@sigstore/core": "^2.0.0",
-                "@sigstore/protobuf-specs": "^0.3.2",
-                "make-fetch-happen": "^14.0.1",
-                "proc-log": "^5.0.0",
-                "promise-retry": "^2.0.1"
-            },
-            "engines": {
-                "node": "^18.17.0 || >=20.5.0"
-            }
-        },
-        "node_modules/npm/node_modules/sigstore/node_modules/@sigstore/verify": {
-            "version": "2.0.0",
-            "dev": true,
-            "inBundle": true,
-            "license": "Apache-2.0",
-            "dependencies": {
-                "@sigstore/bundle": "^3.0.0",
-                "@sigstore/core": "^2.0.0",
-                "@sigstore/protobuf-specs": "^0.3.2"
-            },
-            "engines": {
-                "node": "^18.17.0 || >=20.5.0"
-            }
-        },
         "node_modules/npm/node_modules/smart-buffer": {
             "version": "4.2.0",
             "dev": true,
@@ -8598,12 +8633,12 @@
             }
         },
         "node_modules/npm/node_modules/socks-proxy-agent": {
-            "version": "8.0.4",
+            "version": "8.0.5",
             "dev": true,
             "inBundle": true,
             "license": "MIT",
             "dependencies": {
-                "agent-base": "^7.1.1",
+                "agent-base": "^7.1.2",
                 "debug": "^4.3.4",
                 "socks": "^2.8.3"
             },
@@ -8648,7 +8683,7 @@
             }
         },
         "node_modules/npm/node_modules/spdx-license-ids": {
-            "version": "3.0.20",
+            "version": "3.0.21",
             "dev": true,
             "inBundle": true,
             "license": "CC0-1.0"
@@ -8822,19 +8857,6 @@
                 "node": "^18.17.0 || >=20.5.0"
             }
         },
-        "node_modules/npm/node_modules/tuf-js/node_modules/@tufjs/models": {
-            "version": "3.0.1",
-            "dev": true,
-            "inBundle": true,
-            "license": "MIT",
-            "dependencies": {
-                "@tufjs/canonical-json": "2.0.0",
-                "minimatch": "^9.0.5"
-            },
-            "engines": {
-                "node": "^18.17.0 || >=20.5.0"
-            }
-        },
         "node_modules/npm/node_modules/unique-filename": {
             "version": "4.0.0",
             "dev": true,
@@ -8895,10 +8917,13 @@
             }
         },
         "node_modules/npm/node_modules/walk-up-path": {
-            "version": "3.0.1",
+            "version": "4.0.0",
             "dev": true,
             "inBundle": true,
-            "license": "ISC"
+            "license": "ISC",
+            "engines": {
+                "node": "20 || >=22"
+            }
         },
         "node_modules/npm/node_modules/which": {
             "version": "5.0.0",
@@ -9247,6 +9272,7 @@
             "integrity": "sha512-6IpQ7mKUxRcZNLIObR0hz7lxsapSSIYNZJwXPGeF0mTVqGKFIXj1DQcMoT22S3ROcLyY/rz0PWaWZ9ayWmad9g==",
             "dev": true,
             "license": "MIT",
+            "peer": true,
             "dependencies": {
                 "deep-is": "^0.1.3",
                 "fast-levenshtein": "^2.0.6",
@@ -9295,6 +9321,7 @@
             "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==",
             "dev": true,
             "license": "MIT",
+            "peer": true,
             "dependencies": {
                 "yocto-queue": "^0.1.0"
             },
@@ -9311,6 +9338,7 @@
             "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==",
             "dev": true,
             "license": "MIT",
+            "peer": true,
             "dependencies": {
                 "p-limit": "^3.0.2"
             },
@@ -9342,6 +9370,7 @@
             "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==",
             "dev": true,
             "license": "MIT",
+            "peer": true,
             "dependencies": {
                 "callsites": "^3.0.0"
             },
@@ -9390,6 +9419,7 @@
             "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==",
             "dev": true,
             "license": "MIT",
+            "peer": true,
             "engines": {
                 "node": ">=8"
             }
@@ -9632,6 +9662,7 @@
             "integrity": "sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==",
             "dev": true,
             "license": "MIT",
+            "peer": true,
             "engines": {
                 "node": ">= 0.8.0"
             }
@@ -9665,23 +9696,33 @@
             }
         },
         "node_modules/prisma": {
-            "version": "5.22.0",
-            "resolved": "https://registry.npmjs.org/prisma/-/prisma-5.22.0.tgz",
-            "integrity": "sha512-vtpjW3XuYCSnMsNVBjLMNkTj6OZbudcPPTPYHqX0CJfpcdWciI1dM8uHETwmDxxiqEwCIE6WvXucWUetJgfu/A==",
+            "version": "6.4.1",
+            "resolved": "https://registry.npmjs.org/prisma/-/prisma-6.4.1.tgz",
+            "integrity": "sha512-q2uJkgXnua/jj66mk6P9bX/zgYJFI/jn4Yp0aS6SPRrjH/n6VyOV7RDe1vHD0DX8Aanx4MvgmUPPoYnR6MJnPg==",
             "devOptional": true,
             "hasInstallScript": true,
             "license": "Apache-2.0",
             "dependencies": {
-                "@prisma/engines": "5.22.0"
+                "@prisma/engines": "6.4.1",
+                "esbuild": ">=0.12 <1",
+                "esbuild-register": "3.6.0"
             },
             "bin": {
                 "prisma": "build/index.js"
             },
             "engines": {
-                "node": ">=16.13"
+                "node": ">=18.18"
             },
             "optionalDependencies": {
                 "fsevents": "2.3.3"
+            },
+            "peerDependencies": {
+                "typescript": ">=5.1.0"
+            },
+            "peerDependenciesMeta": {
+                "typescript": {
+                    "optional": true
+                }
             }
         },
         "node_modules/prismjs": {
@@ -9776,6 +9817,7 @@
             "integrity": "sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==",
             "dev": true,
             "license": "MIT",
+            "peer": true,
             "engines": {
                 "node": ">=6"
             }
@@ -10010,6 +10052,7 @@
             "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==",
             "dev": true,
             "license": "MIT",
+            "peer": true,
             "engines": {
                 "node": ">=4"
             }
@@ -10061,6 +10104,7 @@
             "deprecated": "Rimraf versions prior to v4 are no longer supported",
             "dev": true,
             "license": "ISC",
+            "peer": true,
             "dependencies": {
                 "glob": "^7.1.3"
             },
@@ -10077,6 +10121,7 @@
             "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==",
             "dev": true,
             "license": "MIT",
+            "peer": true,
             "dependencies": {
                 "balanced-match": "^1.0.0",
                 "concat-map": "0.0.1"
@@ -10089,6 +10134,7 @@
             "deprecated": "Glob versions prior to v9 are no longer supported",
             "dev": true,
             "license": "ISC",
+            "peer": true,
             "dependencies": {
                 "fs.realpath": "^1.0.0",
                 "inflight": "^1.0.4",
@@ -10110,6 +10156,7 @@
             "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==",
             "dev": true,
             "license": "ISC",
+            "peer": true,
             "dependencies": {
                 "brace-expansion": "^1.1.7"
             },
@@ -10739,6 +10786,7 @@
             "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==",
             "dev": true,
             "license": "MIT",
+            "peer": true,
             "engines": {
                 "node": ">=8"
             },
@@ -10986,6 +11034,7 @@
             "integrity": "sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==",
             "dev": true,
             "license": "MIT",
+            "peer": true,
             "dependencies": {
                 "prelude-ls": "^1.2.1"
             },
@@ -11025,10 +11074,10 @@
             "license": "MIT"
         },
         "node_modules/typescript": {
-            "version": "5.7.3",
-            "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.7.3.tgz",
-            "integrity": "sha512-84MVSjMEHP+FQRPy3pX9sTVV/INIex71s9TL2Gm5FG/WG1SqXeKyZ0k7/blY/4FdOzI12CBy1vGc4og/eus0fw==",
-            "dev": true,
+            "version": "5.5.4",
+            "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.5.4.tgz",
+            "integrity": "sha512-Mtq29sKDAEYP7aljRgtPOpTvOfbwRWlS6dPRzwjdE+C0R4brX/GUyhHSecbHMFLNBLcJIPt9nl9yG5TZ1weH+Q==",
+            "devOptional": true,
             "license": "Apache-2.0",
             "bin": {
                 "tsc": "bin/tsc",
@@ -11099,9 +11148,9 @@
             }
         },
         "node_modules/undici-types": {
-            "version": "6.19.8",
-            "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-6.19.8.tgz",
-            "integrity": "sha512-ve2KP6f/JnbPBFyobGHuerC9g1FYGn/F8n1LWTwNxCEzd6IfqTwUQcNXgEtmmQ6DlRrC1hrSrBnCZPokRrDHjw==",
+            "version": "6.20.0",
+            "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-6.20.0.tgz",
+            "integrity": "sha512-Ny6QZ2Nju20vw1SRHe3d9jVu6gJ+4e3+MMpqu7pqE5HT6WsTSlce++GQmK5UXS8mzV8DSYHrQH+Xrf2jVcuKNg==",
             "license": "MIT"
         },
         "node_modules/unpipe": {
@@ -11119,6 +11168,7 @@
             "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==",
             "dev": true,
             "license": "BSD-2-Clause",
+            "peer": true,
             "dependencies": {
                 "punycode": "^2.1.0"
             }
@@ -11163,16 +11213,16 @@
             }
         },
         "node_modules/uuid": {
-            "version": "10.0.0",
-            "resolved": "https://registry.npmjs.org/uuid/-/uuid-10.0.0.tgz",
-            "integrity": "sha512-8XkAphELsDnEGrDxUOHB3RGvXz6TeuYSGEZBOjtTtPm2lwhGBjLgOzLHB63IUWfBpNucQjND6d3AOudO+H3RWQ==",
+            "version": "11.1.0",
+            "resolved": "https://registry.npmjs.org/uuid/-/uuid-11.1.0.tgz",
+            "integrity": "sha512-0/A9rDy9P7cJ+8w1c9WD9V//9Wj15Ce2MPz8Ri6032usz+NfePxx5AcN3bN+r6ZL6jEo066/yNYB3tn4pQEx+A==",
             "funding": [
                 "https://github.com/sponsors/broofa",
                 "https://github.com/sponsors/ctavan"
             ],
             "license": "MIT",
             "bin": {
-                "uuid": "dist/bin/uuid"
+                "uuid": "dist/esm/bin/uuid"
             }
         },
         "node_modules/validator": {
@@ -11277,6 +11327,7 @@
             "integrity": "sha512-BN22B5eaMMI9UMtjrGd5g5eCYPpCPDUy0FJXbYsaT5zYxjFOckS53SQDE3pWkVoWpHXVb3BrYcEN4Twa55B5cA==",
             "dev": true,
             "license": "MIT",
+            "peer": true,
             "engines": {
                 "node": ">=0.10.0"
             }
@@ -11497,6 +11548,7 @@
             "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==",
             "dev": true,
             "license": "MIT",
+            "peer": true,
             "engines": {
                 "node": ">=10"
             },
diff --git a/ExpressAPI/package.json b/ExpressAPI/package.json
index d741e1870b4baa30b63a03707e01289769425de4..c984b33f2078d9a586570ebb11e18e704c3013a6 100644
--- a/ExpressAPI/package.json
+++ b/ExpressAPI/package.json
@@ -29,15 +29,15 @@
     },
     "dependencies"   : {
         "@dotenvx/dotenvx"    : "^0.45.0",
-        "@gitbeaker/rest"     : "^40.0.3",
-        "@prisma/client"      : "^5.16.1",
-        "axios"               : "^1.7.2",
-        "compression"         : "^1.7.4",
+        "@gitbeaker/rest"     : "^42.1.0",
+        "@prisma/client"      : "^6.4.1",
+        "axios"               : "^1.8.1",
+        "compression"         : "^1.8.0",
         "cors"                : "^2.8.5",
-        "express"             : "^4.19.2",
-        "express-validator"   : "^7.1.0",
-        "form-data"           : "^4.0.0",
-        "helmet"              : "^7.1.0",
+        "express"             : "^4.21.2",
+        "express-validator"   : "^7.2.1",
+        "form-data"           : "^4.0.2",
+        "helmet"              : "^8.0.0",
         "http-status-codes"   : "^2.3.0",
         "json5"               : "^2.2.3",
         "jsonwebtoken"        : "^9.0.2",
@@ -46,36 +46,36 @@
         "mysql"               : "^2.18.1",
         "node"                : "^20.15.0",
         "parse-link-header"   : "^2.0.0",
-        "semver"              : "^7.6.2",
+        "semver"              : "^7.7.1",
         "swagger-ui-express"  : "^5.0.1",
         "tar-stream"          : "^3.1.7",
-        "uuid"                : "^10.0.0",
-        "winston"             : "^3.13.0",
-        "zod"                 : "^3.23.8",
-        "zod-validation-error": "^3.3.0"
+        "uuid"                : "^11.1.0",
+        "winston"             : "^3.17.0",
+        "zod"                 : "^3.24.2",
+        "zod-validation-error": "^3.4.0"
     },
     "devDependencies": {
-        "@redocly/cli"             : "^1.17.0",
+        "@eslint/js"               : "^9.21.0",
+        "@redocly/cli"             : "^1.31.2",
         "@types/compression"       : "^1.7.5",
         "@types/cors"              : "^2.8.17",
         "@types/express"           : "^4.17.21",
-        "@types/jsonwebtoken"      : "^9.0.6",
+        "@types/jsonwebtoken"      : "^9.0.9",
         "@types/morgan"            : "^1.9.9",
-        "@types/multer"            : "^1.4.11",
-        "@types/node"              : "^20.14.9",
+        "@types/multer"            : "^1.4.12",
+        "@types/node"              : "^22.13.5",
         "@types/parse-link-header" : "^2.0.3",
         "@types/semver"            : "^7.5.8",
-        "@types/swagger-ui-express": "^4.1.6",
+        "@types/swagger-ui-express": "^4.1.8",
         "@types/tar-stream"        : "^3.1.3",
         "@types/uuid"              : "^10.0.0",
-        "dotenv-cli"               : "^7.4.2",
-        "eslint"                   : "^8.57.0",
+        "dotenv-cli"               : "^8.0.0",
         "genversion"               : "^3.2.0",
-        "nodemon"                  : "^3.1.4",
-        "npm"                      : "^10.8.1",
-        "prisma"                   : "^5.16.1",
-        "tsx"                      : "^4.16.2",
-        "typescript"               : "^5.5.3",
-        "typescript-eslint"        : "^7.15.0"
+        "nodemon"                  : "^3.1.9",
+        "npm"                      : "^11.1.0",
+        "prisma"                   : "^6.4.1",
+        "tsx"                      : "^4.19.3",
+        "typescript"               : "~5.5.4",
+        "typescript-eslint"        : "^7.18.0"
     }
 }
diff --git a/ExpressAPI/src/managers/GitlabManager.ts b/ExpressAPI/src/managers/GitlabManager.ts
index d550f701193e1a5d4445ec6b4c9516fa30185f76..76e23651578b5779f5a3629b6153dbc4b4f3c23f 100644
--- a/ExpressAPI/src/managers/GitlabManager.ts
+++ b/ExpressAPI/src/managers/GitlabManager.ts
@@ -159,7 +159,7 @@ class GitlabManager extends SharedGitlabManager {
 
     async addRepositoryMember(repoId: number, userId: number, accessLevel: Exclude<AccessLevel, AccessLevel.ADMIN>): Promise<MemberSchema> {
         try {
-            return await this.api.ProjectMembers.add(repoId, userId, accessLevel);
+            return await this.api.ProjectMembers.add(repoId, accessLevel, { userId });
         } catch ( e ) {
             logger.error(JSON.stringify(e));
             return Promise.reject(e);