diff --git a/ExpressAPI/package-lock.json b/ExpressAPI/package-lock.json index 30c87dabc67c4ad49a99b25c88483fd49e895e8a..ca91bb541c89fef5f001a5992964b8dc5474da1a 100644 --- a/ExpressAPI/package-lock.json +++ b/ExpressAPI/package-lock.json @@ -19,14 +19,14 @@ "express-validator": "^7.0.1", "form-data": "^4.0.0", "helmet": "^7.0.0", - "hjson": "^3.2.2", "http-status-codes": "^2.2.0", + "json5": "^2.2.3", "jsonwebtoken": "^9.0.0", "knex": "^2.4.2", "morgan": "^1.10.0", "multer": "^1.4.5-lts.1", "mysql": "^2.18.1", - "node": "^20.2.0", + "node": "^20.5.0", "parse-link-header": "^2.0.0", "uuid": "^9.0.0", "winston": "^3.8.2" @@ -36,15 +36,14 @@ "@types/compression": "^1.7.2", "@types/cors": "^2.8.13", "@types/express": "^4.17.17", - "@types/hjson": "^2.4.3", "@types/jsonwebtoken": "^9.0.2", "@types/morgan": "^1.9.4", "@types/multer": "^1.4.7", - "@types/node": "^20.4.6", + "@types/node": "^20.4.7", "@types/parse-link-header": "^2.0.1", "@types/uuid": "^9.0.2", - "nodemon": "^2.0.22", - "npm": "^9.6.7", + "nodemon": "^3.0.1", + "npm": "^9.8.1", "prisma": "^5.1.1", "ts-node": "^10.9.1", "typescript": "^5.1.6" @@ -228,12 +227,6 @@ "@types/send": "*" } }, - "node_modules/@types/hjson": { - "version": "2.4.3", - "resolved": "https://registry.npmjs.org/@types/hjson/-/hjson-2.4.3.tgz", - "integrity": "sha512-EDixutNn3FQwa5HdET+Tx0h7TirP2knJa9TB21ySqr8XVqT/VsvvOwnanTLHUOOpNofcUhkRKhOk0Wh4YD9RSA==", - "dev": true - }, "node_modules/@types/jsonwebtoken": { "version": "9.0.2", "resolved": "https://registry.npmjs.org/@types/jsonwebtoken/-/jsonwebtoken-9.0.2.tgz", @@ -268,9 +261,9 @@ } }, "node_modules/@types/node": { - "version": "20.4.6", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.4.6.tgz", - "integrity": "sha512-q0RkvNgMweWWIvSMDiXhflGUKMdIxBo2M2tYM/0kEGDueQByFzK4KZAgu5YHGFNxziTlppNpTIBcqHQAxlfHdA==", + "version": "20.4.7", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.4.7.tgz", + "integrity": "sha512-bUBrPjEry2QUTsnuEjzjbS7voGWCc30W0qzgMf90GPeDGFRakvrz47ju+oqDAKCXLUCe39u57/ORMl/O/04/9g==", "dev": true }, "node_modules/@types/parse-link-header": { @@ -1120,14 +1113,6 @@ "node": ">=16.0.0" } }, - "node_modules/hjson": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/hjson/-/hjson-3.2.2.tgz", - "integrity": "sha512-MkUeB0cTIlppeSsndgESkfFD21T2nXPRaBStLtf3cAYA2bVEFdXlodZB0TukwZiobPD1Ksax5DK4RTZeaXCI3Q==", - "bin": { - "hjson": "bin/hjson" - } - }, "node_modules/http-errors": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-2.0.0.tgz", @@ -1265,6 +1250,17 @@ "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==" }, + "node_modules/json5": { + "version": "2.2.3", + "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.3.tgz", + "integrity": "sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==", + "bin": { + "json5": "lib/cli.js" + }, + "engines": { + "node": ">=6" + } + }, "node_modules/jsonwebtoken": { "version": "9.0.0", "resolved": "https://registry.npmjs.org/jsonwebtoken/-/jsonwebtoken-9.0.0.tgz", @@ -1612,9 +1608,9 @@ "integrity": "sha512-opgw9iSCAzT2+6wJOETCpeRYAQxSopqQ2z+N6BXwIMsQQ7Zj5M8MaafQY8JMlolRR6R1UXg2WmhKp0p9lSOivg==" }, "node_modules/nodemon": { - "version": "2.0.22", - "resolved": "https://registry.npmjs.org/nodemon/-/nodemon-2.0.22.tgz", - "integrity": "sha512-B8YqaKMmyuCO7BowF1Z1/mkPqLk6cs/l63Ojtd6otKjMx47Dq1utxfRxcavH1I7VSaL8n5BUaoutadnsX3AAVQ==", + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/nodemon/-/nodemon-3.0.1.tgz", + "integrity": "sha512-g9AZ7HmkhQkqXkRc20w+ZfQ73cHLbE8hnPbtaFbFtCumZsjyMhKk9LajQ07U5Ux28lvFjZ5X7HvWR1xzU8jHVw==", "dev": true, "dependencies": { "chokidar": "^3.5.2", @@ -1622,8 +1618,8 @@ "ignore-by-default": "^1.0.1", "minimatch": "^3.1.2", "pstree.remy": "^1.1.8", - "semver": "^5.7.1", - "simple-update-notifier": "^1.0.7", + "semver": "^7.5.3", + "simple-update-notifier": "^2.0.0", "supports-color": "^5.5.0", "touch": "^3.1.0", "undefsafe": "^2.0.5" @@ -1632,7 +1628,7 @@ "nodemon": "bin/nodemon.js" }, "engines": { - "node": ">=8.10.0" + "node": ">=10" }, "funding": { "type": "opencollective", @@ -1654,15 +1650,6 @@ "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", "dev": true }, - "node_modules/nodemon/node_modules/semver": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", - "dev": true, - "bin": { - "semver": "bin/semver" - } - }, "node_modules/nopt": { "version": "1.0.10", "resolved": "https://registry.npmjs.org/nopt/-/nopt-1.0.10.tgz", @@ -1688,15 +1675,17 @@ } }, "node_modules/npm": { - "version": "9.6.7", - "resolved": "https://registry.npmjs.org/npm/-/npm-9.6.7.tgz", - "integrity": "sha512-xwkU1hSZl6Qrkfw3fhxVmMfNWu0A67+aZZs5gz/LoehCeAPkVhQDB90Z2NFoPSI1KpfBWCJ6Bp28wXzv5U5/2g==", + "version": "9.8.1", + "resolved": "https://registry.npmjs.org/npm/-/npm-9.8.1.tgz", + "integrity": "sha512-AfDvThQzsIXhYgk9zhbk5R+lh811lKkLAeQMMhSypf1BM7zUafeIIBzMzespeuVEJ0+LvY36oRQYf7IKLzU3rw==", "bundleDependencies": [ "@isaacs/string-locale-compare", "@npmcli/arborist", "@npmcli/config", + "@npmcli/fs", "@npmcli/map-workspaces", "@npmcli/package-json", + "@npmcli/promise-spawn", "@npmcli/run-script", "abbrev", "archy", @@ -1747,10 +1736,10 @@ "proc-log", "qrcode-terminal", "read", - "read-package-json", - "read-package-json-fast", "semver", + "sigstore", "ssri", + "supports-color", "tar", "text-table", "tiny-relative-date", @@ -1762,47 +1751,49 @@ "dev": true, "dependencies": { "@isaacs/string-locale-compare": "^1.1.0", - "@npmcli/arborist": "^6.2.9", - "@npmcli/config": "^6.1.7", + "@npmcli/arborist": "^6.3.0", + "@npmcli/config": "^6.2.1", + "@npmcli/fs": "^3.1.0", "@npmcli/map-workspaces": "^3.0.4", - "@npmcli/package-json": "^3.1.0", + "@npmcli/package-json": "^4.0.1", + "@npmcli/promise-spawn": "^6.0.2", "@npmcli/run-script": "^6.0.2", "abbrev": "^2.0.0", "archy": "~1.0.0", - "cacache": "^17.1.2", - "chalk": "^4.1.2", + "cacache": "^17.1.3", + "chalk": "^5.3.0", "ci-info": "^3.8.0", "cli-columns": "^4.0.0", "cli-table3": "^0.6.3", "columnify": "^1.6.0", "fastest-levenshtein": "^1.0.16", "fs-minipass": "^3.0.2", - "glob": "^10.2.4", + "glob": "^10.2.7", "graceful-fs": "^4.2.11", "hosted-git-info": "^6.1.1", - "ini": "^4.1.0", + "ini": "^4.1.1", "init-package-json": "^5.0.0", "is-cidr": "^4.0.2", "json-parse-even-better-errors": "^3.0.0", "libnpmaccess": "^7.0.2", - "libnpmdiff": "^5.0.17", - "libnpmexec": "^5.0.17", - "libnpmfund": "^4.0.17", + "libnpmdiff": "^5.0.19", + "libnpmexec": "^6.0.3", + "libnpmfund": "^4.0.19", "libnpmhook": "^9.0.3", "libnpmorg": "^5.0.4", - "libnpmpack": "^5.0.17", - "libnpmpublish": "^7.2.0", + "libnpmpack": "^5.0.19", + "libnpmpublish": "^7.5.0", "libnpmsearch": "^6.0.2", "libnpmteam": "^5.0.3", "libnpmversion": "^4.0.2", "make-fetch-happen": "^11.1.1", - "minimatch": "^9.0.0", + "minimatch": "^9.0.3", "minipass": "^5.0.0", "minipass-pipeline": "^1.2.4", "ms": "^2.1.2", - "node-gyp": "^9.3.1", - "nopt": "^7.1.0", - "npm-audit-report": "^4.0.0", + "node-gyp": "^9.4.0", + "nopt": "^7.2.0", + "npm-audit-report": "^5.0.0", "npm-install-checks": "^6.1.1", "npm-package-arg": "^10.1.0", "npm-pick-manifest": "^8.0.1", @@ -1811,16 +1802,16 @@ "npm-user-validate": "^2.0.0", "npmlog": "^7.0.1", "p-map": "^4.0.0", - "pacote": "^15.1.3", + "pacote": "^15.2.0", "parse-conflict-json": "^3.0.1", "proc-log": "^3.0.0", "qrcode-terminal": "^0.12.0", "read": "^2.1.0", - "read-package-json": "^6.0.3", - "read-package-json-fast": "^3.0.2", - "semver": "^7.5.1", + "semver": "^7.5.4", + "sigstore": "^1.7.0", "ssri": "^10.0.4", - "tar": "^6.1.14", + "supports-color": "^9.4.0", + "tar": "^6.1.15", "text-table": "~0.2.0", "tiny-relative-date": "^1.3.0", "treeverse": "^3.0.0", @@ -1846,12 +1837,6 @@ "node": ">=0.1.90" } }, - "node_modules/npm/node_modules/@gar/promisify": { - "version": "1.1.3", - "dev": true, - "inBundle": true, - "license": "MIT" - }, "node_modules/npm/node_modules/@isaacs/cliui": { "version": "8.0.2", "dev": true, @@ -1905,7 +1890,7 @@ } }, "node_modules/npm/node_modules/@isaacs/cliui/node_modules/strip-ansi": { - "version": "7.0.1", + "version": "7.1.0", "dev": true, "inBundle": true, "license": "MIT", @@ -1926,7 +1911,7 @@ "license": "ISC" }, "node_modules/npm/node_modules/@npmcli/arborist": { - "version": "6.2.9", + "version": "6.3.0", "dev": true, "inBundle": true, "license": "ISC", @@ -1938,7 +1923,7 @@ "@npmcli/metavuln-calculator": "^5.0.0", "@npmcli/name-from-folder": "^2.0.0", "@npmcli/node-gyp": "^3.0.0", - "@npmcli/package-json": "^3.0.0", + "@npmcli/package-json": "^4.0.0", "@npmcli/query": "^3.0.0", "@npmcli/run-script": "^6.0.0", "bin-links": "^4.0.1", @@ -1973,12 +1958,13 @@ } }, "node_modules/npm/node_modules/@npmcli/config": { - "version": "6.1.7", + "version": "6.2.1", "dev": true, "inBundle": true, "license": "ISC", "dependencies": { "@npmcli/map-workspaces": "^3.0.2", + "ci-info": "^3.8.0", "ini": "^4.1.0", "nopt": "^7.0.0", "proc-log": "^3.0.0", @@ -2015,7 +2001,7 @@ } }, "node_modules/npm/node_modules/@npmcli/git": { - "version": "4.0.4", + "version": "4.1.0", "dev": true, "inBundle": true, "license": "ISC", @@ -2079,19 +2065,6 @@ "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/npm/node_modules/@npmcli/move-file": { - "version": "2.0.1", - "dev": true, - "inBundle": true, - "license": "MIT", - "dependencies": { - "mkdirp": "^1.0.4", - "rimraf": "^3.0.2" - }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - } - }, "node_modules/npm/node_modules/@npmcli/name-from-folder": { "version": "2.0.0", "dev": true, @@ -2111,15 +2084,18 @@ } }, "node_modules/npm/node_modules/@npmcli/package-json": { - "version": "3.1.0", + "version": "4.0.1", "dev": true, "inBundle": true, "license": "ISC", "dependencies": { + "@npmcli/git": "^4.1.0", "glob": "^10.2.2", + "hosted-git-info": "^6.1.1", "json-parse-even-better-errors": "^3.0.0", "normalize-package-data": "^5.0.0", - "npm-normalize-package-bin": "^3.0.1" + "proc-log": "^3.0.0", + "semver": "^7.5.3" }, "engines": { "node": "^14.17.0 || ^16.13.0 || >=18.0.0" @@ -2184,6 +2160,19 @@ "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, + "node_modules/npm/node_modules/@sigstore/tuf": { + "version": "1.0.2", + "dev": true, + "inBundle": true, + "license": "Apache-2.0", + "dependencies": { + "@sigstore/protobuf-specs": "^0.1.0", + "tuf-js": "^1.1.7" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, "node_modules/npm/node_modules/@tootallnate/once": { "version": "2.0.0", "dev": true, @@ -2351,7 +2340,7 @@ "license": "MIT" }, "node_modules/npm/node_modules/bin-links": { - "version": "4.0.1", + "version": "4.0.2", "dev": true, "inBundle": true, "license": "ISC", @@ -2417,7 +2406,7 @@ } }, "node_modules/npm/node_modules/cacache": { - "version": "17.1.2", + "version": "17.1.3", "dev": true, "inBundle": true, "license": "ISC", @@ -2440,16 +2429,12 @@ } }, "node_modules/npm/node_modules/chalk": { - "version": "4.1.2", + "version": "5.3.0", "dev": true, "inBundle": true, "license": "MIT", - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, "engines": { - "node": ">=10" + "node": "^12.17.0 || ^14.13 || >=16.0.0" }, "funding": { "url": "https://github.com/chalk/chalk?sponsor=1" @@ -2759,6 +2744,12 @@ "node": ">=0.8.x" } }, + "node_modules/npm/node_modules/exponential-backoff": { + "version": "3.1.1", + "dev": true, + "inBundle": true, + "license": "Apache-2.0" + }, "node_modules/npm/node_modules/fastest-levenshtein": { "version": "1.0.16", "dev": true, @@ -2828,15 +2819,15 @@ } }, "node_modules/npm/node_modules/glob": { - "version": "10.2.4", + "version": "10.2.7", "dev": true, "inBundle": true, "license": "ISC", "dependencies": { "foreground-child": "^3.1.0", "jackspeak": "^2.0.3", - "minimatch": "^9.0.0", - "minipass": "^5.0.0 || ^6.0.0", + "minimatch": "^9.0.1", + "minipass": "^5.0.0 || ^6.0.2", "path-scurry": "^1.7.0" }, "bin": { @@ -2867,15 +2858,6 @@ "node": ">= 0.4.0" } }, - "node_modules/npm/node_modules/has-flag": { - "version": "4.0.0", - "dev": true, - "inBundle": true, - "license": "MIT", - "engines": { - "node": ">=8" - } - }, "node_modules/npm/node_modules/has-unicode": { "version": "2.0.1", "dev": true, @@ -2999,12 +2981,6 @@ "node": ">=8" } }, - "node_modules/npm/node_modules/infer-owner": { - "version": "1.0.4", - "dev": true, - "inBundle": true, - "license": "ISC" - }, "node_modules/npm/node_modules/inflight": { "version": "1.0.6", "dev": true, @@ -3022,7 +2998,7 @@ "license": "ISC" }, "node_modules/npm/node_modules/ini": { - "version": "4.1.0", + "version": "4.1.1", "dev": true, "inBundle": true, "license": "ISC", @@ -3076,7 +3052,7 @@ } }, "node_modules/npm/node_modules/is-core-module": { - "version": "2.12.0", + "version": "2.12.1", "dev": true, "inBundle": true, "license": "MIT", @@ -3109,7 +3085,7 @@ "license": "ISC" }, "node_modules/npm/node_modules/jackspeak": { - "version": "2.2.0", + "version": "2.2.1", "dev": true, "inBundle": true, "license": "BlueOak-1.0.0", @@ -3179,12 +3155,12 @@ } }, "node_modules/npm/node_modules/libnpmdiff": { - "version": "5.0.17", + "version": "5.0.19", "dev": true, "inBundle": true, "license": "ISC", "dependencies": { - "@npmcli/arborist": "^6.2.9", + "@npmcli/arborist": "^6.3.0", "@npmcli/disparity-colors": "^3.0.0", "@npmcli/installed-package-contents": "^2.0.2", "binary-extensions": "^2.2.0", @@ -3199,14 +3175,13 @@ } }, "node_modules/npm/node_modules/libnpmexec": { - "version": "5.0.17", + "version": "6.0.3", "dev": true, "inBundle": true, "license": "ISC", "dependencies": { - "@npmcli/arborist": "^6.2.9", + "@npmcli/arborist": "^6.3.0", "@npmcli/run-script": "^6.0.0", - "chalk": "^4.1.0", "ci-info": "^3.7.1", "npm-package-arg": "^10.1.0", "npmlog": "^7.0.1", @@ -3222,12 +3197,12 @@ } }, "node_modules/npm/node_modules/libnpmfund": { - "version": "4.0.17", + "version": "4.0.19", "dev": true, "inBundle": true, "license": "ISC", "dependencies": { - "@npmcli/arborist": "^6.2.9" + "@npmcli/arborist": "^6.3.0" }, "engines": { "node": "^14.17.0 || ^16.13.0 || >=18.0.0" @@ -3260,12 +3235,12 @@ } }, "node_modules/npm/node_modules/libnpmpack": { - "version": "5.0.17", + "version": "5.0.19", "dev": true, "inBundle": true, "license": "ISC", "dependencies": { - "@npmcli/arborist": "^6.2.9", + "@npmcli/arborist": "^6.3.0", "@npmcli/run-script": "^6.0.0", "npm-package-arg": "^10.1.0", "pacote": "^15.0.8" @@ -3275,7 +3250,7 @@ } }, "node_modules/npm/node_modules/libnpmpublish": { - "version": "7.2.0", + "version": "7.5.0", "dev": true, "inBundle": true, "license": "ISC", @@ -3370,7 +3345,7 @@ } }, "node_modules/npm/node_modules/minimatch": { - "version": "9.0.0", + "version": "9.0.3", "dev": true, "inBundle": true, "license": "ISC", @@ -3590,15 +3565,16 @@ } }, "node_modules/npm/node_modules/node-gyp": { - "version": "9.3.1", + "version": "9.4.0", "dev": true, "inBundle": true, "license": "MIT", "dependencies": { "env-paths": "^2.2.0", + "exponential-backoff": "^3.1.1", "glob": "^7.1.4", "graceful-fs": "^4.2.6", - "make-fetch-happen": "^10.0.3", + "make-fetch-happen": "^11.0.3", "nopt": "^6.0.0", "npmlog": "^6.0.0", "rimraf": "^3.0.2", @@ -3613,19 +3589,6 @@ "node": "^12.13 || ^14.13 || >=16" } }, - "node_modules/npm/node_modules/node-gyp/node_modules/@npmcli/fs": { - "version": "2.1.2", - "dev": true, - "inBundle": true, - "license": "ISC", - "dependencies": { - "@gar/promisify": "^1.1.3", - "semver": "^7.3.5" - }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - } - }, "node_modules/npm/node_modules/node-gyp/node_modules/abbrev": { "version": "1.1.1", "dev": true, @@ -3655,87 +3618,6 @@ "concat-map": "0.0.1" } }, - "node_modules/npm/node_modules/node-gyp/node_modules/cacache": { - "version": "16.1.3", - "dev": true, - "inBundle": true, - "license": "ISC", - "dependencies": { - "@npmcli/fs": "^2.1.0", - "@npmcli/move-file": "^2.0.0", - "chownr": "^2.0.0", - "fs-minipass": "^2.1.0", - "glob": "^8.0.1", - "infer-owner": "^1.0.4", - "lru-cache": "^7.7.1", - "minipass": "^3.1.6", - "minipass-collect": "^1.0.2", - "minipass-flush": "^1.0.5", - "minipass-pipeline": "^1.2.4", - "mkdirp": "^1.0.4", - "p-map": "^4.0.0", - "promise-inflight": "^1.0.1", - "rimraf": "^3.0.2", - "ssri": "^9.0.0", - "tar": "^6.1.11", - "unique-filename": "^2.0.0" - }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - } - }, - "node_modules/npm/node_modules/node-gyp/node_modules/cacache/node_modules/brace-expansion": { - "version": "2.0.1", - "dev": true, - "inBundle": true, - "license": "MIT", - "dependencies": { - "balanced-match": "^1.0.0" - } - }, - "node_modules/npm/node_modules/node-gyp/node_modules/cacache/node_modules/glob": { - "version": "8.1.0", - "dev": true, - "inBundle": true, - "license": "ISC", - "dependencies": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^5.0.1", - "once": "^1.3.0" - }, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/npm/node_modules/node-gyp/node_modules/cacache/node_modules/minimatch": { - "version": "5.1.6", - "dev": true, - "inBundle": true, - "license": "ISC", - "dependencies": { - "brace-expansion": "^2.0.1" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/npm/node_modules/node-gyp/node_modules/fs-minipass": { - "version": "2.1.0", - "dev": true, - "inBundle": true, - "license": "ISC", - "dependencies": { - "minipass": "^3.0.0" - }, - "engines": { - "node": ">= 8" - } - }, "node_modules/npm/node_modules/node-gyp/node_modules/gauge": { "version": "4.0.4", "dev": true, @@ -3775,33 +3657,6 @@ "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/npm/node_modules/node-gyp/node_modules/make-fetch-happen": { - "version": "10.2.1", - "dev": true, - "inBundle": true, - "license": "ISC", - "dependencies": { - "agentkeepalive": "^4.2.1", - "cacache": "^16.1.0", - "http-cache-semantics": "^4.1.0", - "http-proxy-agent": "^5.0.0", - "https-proxy-agent": "^5.0.0", - "is-lambda": "^1.0.1", - "lru-cache": "^7.7.1", - "minipass": "^3.1.6", - "minipass-collect": "^1.0.2", - "minipass-fetch": "^2.0.3", - "minipass-flush": "^1.0.5", - "minipass-pipeline": "^1.2.4", - "negotiator": "^0.6.3", - "promise-retry": "^2.0.1", - "socks-proxy-agent": "^7.0.0", - "ssri": "^9.0.0" - }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - } - }, "node_modules/npm/node_modules/node-gyp/node_modules/minimatch": { "version": "3.1.2", "dev": true, @@ -3814,35 +3669,6 @@ "node": "*" } }, - "node_modules/npm/node_modules/node-gyp/node_modules/minipass": { - "version": "3.3.6", - "dev": true, - "inBundle": true, - "license": "ISC", - "dependencies": { - "yallist": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/npm/node_modules/node-gyp/node_modules/minipass-fetch": { - "version": "2.1.2", - "dev": true, - "inBundle": true, - "license": "MIT", - "dependencies": { - "minipass": "^3.1.6", - "minipass-sized": "^1.0.3", - "minizlib": "^2.1.2" - }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - }, - "optionalDependencies": { - "encoding": "^0.1.13" - } - }, "node_modules/npm/node_modules/node-gyp/node_modules/nopt": { "version": "6.0.0", "dev": true, @@ -3893,42 +3719,6 @@ "inBundle": true, "license": "ISC" }, - "node_modules/npm/node_modules/node-gyp/node_modules/ssri": { - "version": "9.0.1", - "dev": true, - "inBundle": true, - "license": "ISC", - "dependencies": { - "minipass": "^3.1.1" - }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - } - }, - "node_modules/npm/node_modules/node-gyp/node_modules/unique-filename": { - "version": "2.0.1", - "dev": true, - "inBundle": true, - "license": "ISC", - "dependencies": { - "unique-slug": "^3.0.0" - }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - } - }, - "node_modules/npm/node_modules/node-gyp/node_modules/unique-slug": { - "version": "3.0.0", - "dev": true, - "inBundle": true, - "license": "ISC", - "dependencies": { - "imurmurhash": "^0.1.4" - }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - } - }, "node_modules/npm/node_modules/node-gyp/node_modules/which": { "version": "2.0.2", "dev": true, @@ -3945,7 +3735,7 @@ } }, "node_modules/npm/node_modules/nopt": { - "version": "7.1.0", + "version": "7.2.0", "dev": true, "inBundle": true, "license": "ISC", @@ -3975,13 +3765,10 @@ } }, "node_modules/npm/node_modules/npm-audit-report": { - "version": "4.0.0", + "version": "5.0.0", "dev": true, "inBundle": true, "license": "ISC", - "dependencies": { - "chalk": "^4.0.0" - }, "engines": { "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } @@ -4141,7 +3928,7 @@ } }, "node_modules/npm/node_modules/pacote": { - "version": "15.1.3", + "version": "15.2.0", "dev": true, "inBundle": true, "license": "ISC", @@ -4205,13 +3992,13 @@ } }, "node_modules/npm/node_modules/path-scurry": { - "version": "1.9.1", + "version": "1.9.2", "dev": true, "inBundle": true, "license": "BlueOak-1.0.0", "dependencies": { "lru-cache": "^9.1.1", - "minipass": "^5.0.0 || ^6.0.0" + "minipass": "^5.0.0 || ^6.0.2" }, "engines": { "node": ">=16 || 14 >=14.17" @@ -4339,7 +4126,7 @@ } }, "node_modules/npm/node_modules/read-package-json": { - "version": "6.0.3", + "version": "6.0.4", "dev": true, "inBundle": true, "license": "ISC", @@ -4448,8 +4235,22 @@ } }, "node_modules/npm/node_modules/safe-buffer": { - "version": "5.1.2", + "version": "5.2.1", "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], "inBundle": true, "license": "MIT" }, @@ -4461,7 +4262,7 @@ "optional": true }, "node_modules/npm/node_modules/semver": { - "version": "7.5.1", + "version": "7.5.4", "dev": true, "inBundle": true, "license": "ISC", @@ -4527,14 +4328,14 @@ } }, "node_modules/npm/node_modules/sigstore": { - "version": "1.5.2", + "version": "1.7.0", "dev": true, "inBundle": true, "license": "Apache-2.0", "dependencies": { "@sigstore/protobuf-specs": "^0.1.0", - "make-fetch-happen": "^11.0.1", - "tuf-js": "^1.1.3" + "@sigstore/tuf": "^1.0.1", + "make-fetch-happen": "^11.0.1" }, "bin": { "sigstore": "bin/sigstore.js" @@ -4626,12 +4427,12 @@ } }, "node_modules/npm/node_modules/string_decoder": { - "version": "1.1.1", + "version": "1.3.0", "dev": true, "inBundle": true, "license": "MIT", "dependencies": { - "safe-buffer": "~5.1.0" + "safe-buffer": "~5.2.0" } }, "node_modules/npm/node_modules/string-width": { @@ -4689,19 +4490,19 @@ } }, "node_modules/npm/node_modules/supports-color": { - "version": "7.2.0", + "version": "9.4.0", "dev": true, "inBundle": true, "license": "MIT", - "dependencies": { - "has-flag": "^4.0.0" - }, "engines": { - "node": ">=8" + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/supports-color?sponsor=1" } }, "node_modules/npm/node_modules/tar": { - "version": "6.1.14", + "version": "6.1.15", "dev": true, "inBundle": true, "license": "ISC", @@ -4763,14 +4564,14 @@ } }, "node_modules/npm/node_modules/tuf-js": { - "version": "1.1.6", + "version": "1.1.7", "dev": true, "inBundle": true, "license": "MIT", "dependencies": { "@tufjs/models": "1.0.4", "debug": "^4.3.4", - "make-fetch-happen": "^11.1.0" + "make-fetch-happen": "^11.1.1" }, "engines": { "node": "^14.17.0 || ^16.13.0 || >=18.0.0" @@ -4950,7 +4751,7 @@ } }, "node_modules/npm/node_modules/wrap-ansi/node_modules/strip-ansi": { - "version": "7.0.1", + "version": "7.1.0", "dev": true, "inBundle": true, "license": "MIT", @@ -5270,9 +5071,9 @@ "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==" }, "node_modules/semver": { - "version": "7.5.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.1.tgz", - "integrity": "sha512-Wvss5ivl8TMRZXXESstBA4uR5iXgEN/VC5/sOcuXdVLzcdkz4HWetIoRfG5gb5X+ij/G9rw9YoGn3QoQ8OCSpw==", + "version": "7.5.4", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", + "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", "dependencies": { "lru-cache": "^6.0.0" }, @@ -5352,24 +5153,15 @@ } }, "node_modules/simple-update-notifier": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/simple-update-notifier/-/simple-update-notifier-1.1.0.tgz", - "integrity": "sha512-VpsrsJSUcJEseSbMHkrsrAVSdvVS5I96Qo1QAQ4FxQ9wXFcB+pjj7FB7/us9+GcgfW4ziHtYMc1J0PLczb55mg==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/simple-update-notifier/-/simple-update-notifier-2.0.0.tgz", + "integrity": "sha512-a2B9Y0KlNXl9u/vsW6sTIu9vGEpfKu2wRV6l1H3XEas/0gUIzGzBoP/IouTcUQbm9JWZLH3COxyn03TYlFax6w==", "dev": true, "dependencies": { - "semver": "~7.0.0" + "semver": "^7.5.3" }, "engines": { - "node": ">=8.10.0" - } - }, - "node_modules/simple-update-notifier/node_modules/semver": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.0.0.tgz", - "integrity": "sha512-+GB6zVA9LWh6zovYQLALHwv5rb2PHGlJi3lfiqIHxR0uuwCgefcOJc59v9fv1w8GbStwxuuqqAjI9NMAOOgq1A==", - "dev": true, - "bin": { - "semver": "bin/semver.js" + "node": ">=10" } }, "node_modules/sqlstring": { diff --git a/ExpressAPI/package.json b/ExpressAPI/package.json index 60207b678d0c7619644fa7422edf7a85d7913d76..033739129505cbb04ae90f47e8004a285db99c50 100644 --- a/ExpressAPI/package.json +++ b/ExpressAPI/package.json @@ -30,14 +30,14 @@ "express-validator": "^7.0.1", "form-data" : "^4.0.0", "helmet" : "^7.0.0", - "hjson" : "^3.2.2", "http-status-codes": "^2.2.0", + "json5" : "^2.2.3", "jsonwebtoken" : "^9.0.0", "knex" : "^2.4.2", "morgan" : "^1.10.0", "multer" : "^1.4.5-lts.1", "mysql" : "^2.18.1", - "node" : "^20.2.0", + "node" : "^20.5.0", "parse-link-header": "^2.0.0", "uuid" : "^9.0.0", "winston" : "^3.8.2" @@ -47,17 +47,16 @@ "@types/compression" : "^1.7.2", "@types/cors" : "^2.8.13", "@types/express" : "^4.17.17", - "@types/hjson" : "^2.4.3", "@types/jsonwebtoken" : "^9.0.2", "@types/morgan" : "^1.9.4", "@types/multer" : "^1.4.7", - "@types/node" : "^20.4.6", + "@types/node" : "^20.4.7", "@types/parse-link-header": "^2.0.1", "@types/uuid" : "^9.0.2", - "nodemon" : "^2.0.22", + "nodemon" : "^3.0.1", "prisma" : "^5.1.1", "ts-node" : "^10.9.1", "typescript" : "^5.1.6", - "npm" : "^9.6.7" + "npm" : "^9.8.1" } } diff --git a/ExpressAPI/src/routes/ExerciceRoutes.ts b/ExpressAPI/src/routes/ExerciceRoutes.ts index 1300354945dde7391b4faf8502689f38498061d7..42cbff97a98872488819411b83f78f36e9c1b658 100644 --- a/ExpressAPI/src/routes/ExerciceRoutes.ts +++ b/ExpressAPI/src/routes/ExerciceRoutes.ts @@ -23,7 +23,7 @@ import GitlabTreeFile from '../shared/types/Gitlab/GitlabTreeFil import GitlabFile from '../shared/types/Gitlab/GitlabFile'; import EnonceFile from '../shared/types/Dojo/EnonceFile'; import GitlabTreeFileType from '../shared/types/Gitlab/GitlabTreeFileType'; -import hjson from 'hjson'; +import JSON5 from 'json5'; class ExerciceRoutes implements RoutesManager { @@ -149,7 +149,7 @@ class ExerciceRoutes implements RoutesManager { return file; })); - const dojoEnonceFile: EnonceFile = hjson.parse(atob(enonceHjsonFile.content)) as EnonceFile; + const dojoEnonceFile: EnonceFile = JSON5.parse(atob(enonceHjsonFile.content)) as EnonceFile; const immutablePaths = dojoEnonceFile.immutable.map(fileDescriptor => fileDescriptor.path); diff --git a/ExpressAPI/src/shared b/ExpressAPI/src/shared index 7d7227e748ce8d5475fee4a5a5fc2ced0c0ef5c3..4dc9da6a4b20987a1f0df47c884b6f2891f4e415 160000 --- a/ExpressAPI/src/shared +++ b/ExpressAPI/src/shared @@ -1 +1 @@ -Subproject commit 7d7227e748ce8d5475fee4a5a5fc2ced0c0ef5c3 +Subproject commit 4dc9da6a4b20987a1f0df47c884b6f2891f4e415