diff --git a/package-lock.json b/package-lock.json index c33d74f5..5f82de8a 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "@finos/git-proxy", - "version": "1.1.0", + "version": "1.2.0", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "@finos/git-proxy", - "version": "1.1.0", + "version": "1.2.0", "license": "Apache-2.0", "workspaces": [ "./packages/git-proxy-cli" @@ -814,13 +814,13 @@ } }, "node_modules/@babel/code-frame": { - "version": "7.23.5", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.23.5.tgz", - "integrity": "sha512-CgH3s1a96LipHCmSUmYFPwY7MNx8C3avkq7i4Wl3cfa662ldtUe4VM1TPXX70pfmrlWTb6jLqTYrZyT2ZTJBgA==", + "version": "7.24.2", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.24.2.tgz", + "integrity": "sha512-y5+tLQyV8pg3fsiln67BVLD1P13Eg4lh5RW9mF0zUuvLrv9uIQ4MCL+CRT+FTsBlBjcIan6PGsLcBN0m3ClUyQ==", "dev": true, "dependencies": { - "@babel/highlight": "^7.23.4", - "chalk": "^2.4.2" + "@babel/highlight": "^7.24.2", + "picocolors": "^1.0.0" }, "engines": { "node": ">=6.9.0" @@ -836,21 +836,21 @@ } }, "node_modules/@babel/core": { - "version": "7.23.7", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.23.7.tgz", - "integrity": "sha512-+UpDgowcmqe36d4NwqvKsyPMlOLNGMsfMmQ5WGCu+siCe3t3dfe9njrzGfdN4qq+bcNUt0+Vw6haRxBOycs4dw==", + "version": "7.24.5", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.24.5.tgz", + "integrity": "sha512-tVQRucExLQ02Boi4vdPp49svNGcfL2GhdTCT9aldhXgCJVAI21EtRfBettiuLUwce/7r6bFdgs6JFkcdTiFttA==", "dev": true, "dependencies": { "@ampproject/remapping": "^2.2.0", - "@babel/code-frame": "^7.23.5", - "@babel/generator": "^7.23.6", + "@babel/code-frame": "^7.24.2", + "@babel/generator": "^7.24.5", "@babel/helper-compilation-targets": "^7.23.6", - "@babel/helper-module-transforms": "^7.23.3", - "@babel/helpers": "^7.23.7", - "@babel/parser": "^7.23.6", - "@babel/template": "^7.22.15", - "@babel/traverse": "^7.23.7", - "@babel/types": "^7.23.6", + "@babel/helper-module-transforms": "^7.24.5", + "@babel/helpers": "^7.24.5", + "@babel/parser": "^7.24.5", + "@babel/template": "^7.24.0", + "@babel/traverse": "^7.24.5", + "@babel/types": "^7.24.5", "convert-source-map": "^2.0.0", "debug": "^4.1.0", "gensync": "^1.0.0-beta.2", @@ -866,9 +866,9 @@ } }, "node_modules/@babel/eslint-parser": { - "version": "7.24.1", - "resolved": "https://registry.npmjs.org/@babel/eslint-parser/-/eslint-parser-7.24.1.tgz", - "integrity": "sha512-d5guuzMlPeDfZIbpQ8+g1NaCNuAGBBGNECh0HVqz1sjOeVLh2CEaifuOysCH18URW6R7pqXINvf5PaR/dC6jLQ==", + "version": "7.24.5", + "resolved": "https://registry.npmjs.org/@babel/eslint-parser/-/eslint-parser-7.24.5.tgz", + "integrity": "sha512-gsUcqS/fPlgAw1kOtpss7uhY6E9SFFANQ6EFX5GTvzUwaV0+sGaZWk6xq22MOdeT9wfxyokW3ceCUvOiRtZciQ==", "dev": true, "dependencies": { "@nicolo-ribaudo/eslint-scope-5-internals": "5.1.1-v1", @@ -880,18 +880,18 @@ }, "peerDependencies": { "@babel/core": "^7.11.0", - "eslint": "^7.5.0 || ^8.0.0" + "eslint": "^7.5.0 || ^8.0.0 || ^9.0.0" } }, "node_modules/@babel/generator": { - "version": "7.23.6", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.23.6.tgz", - "integrity": "sha512-qrSfCYxYQB5owCmGLbl8XRpX1ytXlpueOb0N0UmQwA073KZxejgQTzAmJezxvpwQD9uGtK2shHdi55QT+MbjIw==", + "version": "7.24.5", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.24.5.tgz", + "integrity": "sha512-x32i4hEXvr+iI0NEoEfDKzlemF8AmtOP8CcrRaEcpzysWuoEb1KknpcvMsHKPONoKZiDuItklgWhB18xEhr9PA==", "dev": true, "dependencies": { - "@babel/types": "^7.23.6", - "@jridgewell/gen-mapping": "^0.3.2", - "@jridgewell/trace-mapping": "^0.3.17", + "@babel/types": "^7.24.5", + "@jridgewell/gen-mapping": "^0.3.5", + "@jridgewell/trace-mapping": "^0.3.25", "jsesc": "^2.5.1" }, "engines": { @@ -961,28 +961,28 @@ } }, "node_modules/@babel/helper-module-imports": { - "version": "7.22.15", - "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.22.15.tgz", - "integrity": "sha512-0pYVBnDKZO2fnSPCrgM/6WMc7eS20Fbok+0r88fp+YtWVLZrp4CkafFGIp+W0VKw4a22sgebPT99y+FDNMdP4w==", + "version": "7.24.3", + "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.24.3.tgz", + "integrity": "sha512-viKb0F9f2s0BCS22QSF308z/+1YWKV/76mwt61NBzS5izMzDPwdq1pTrzf+Li3npBWX9KdQbkeCt1jSAM7lZqg==", "dev": true, "dependencies": { - "@babel/types": "^7.22.15" + "@babel/types": "^7.24.0" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-module-transforms": { - "version": "7.23.3", - "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.23.3.tgz", - "integrity": "sha512-7bBs4ED9OmswdfDzpz4MpWgSrV7FXlc3zIagvLFjS5H+Mk7Snr21vQ6QwrsoCGMfNC4e4LQPdoULEt4ykz0SRQ==", + "version": "7.24.5", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.24.5.tgz", + "integrity": "sha512-9GxeY8c2d2mdQUP1Dye0ks3VDyIMS98kt/llQ2nUId8IsWqTF0l1LkSX0/uP7l7MCDrzXS009Hyhe2gzTiGW8A==", "dev": true, "dependencies": { "@babel/helper-environment-visitor": "^7.22.20", - "@babel/helper-module-imports": "^7.22.15", - "@babel/helper-simple-access": "^7.22.5", - "@babel/helper-split-export-declaration": "^7.22.6", - "@babel/helper-validator-identifier": "^7.22.20" + "@babel/helper-module-imports": "^7.24.3", + "@babel/helper-simple-access": "^7.24.5", + "@babel/helper-split-export-declaration": "^7.24.5", + "@babel/helper-validator-identifier": "^7.24.5" }, "engines": { "node": ">=6.9.0" @@ -1001,42 +1001,42 @@ } }, "node_modules/@babel/helper-simple-access": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.22.5.tgz", - "integrity": "sha512-n0H99E/K+Bika3++WNL17POvo4rKWZ7lZEp1Q+fStVbUi8nxPQEBOlTmCOxW/0JsS56SKKQ+ojAe2pHKJHN35w==", + "version": "7.24.5", + "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.24.5.tgz", + "integrity": "sha512-uH3Hmf5q5n7n8mz7arjUlDOCbttY/DW4DYhE6FUsjKJ/oYC1kQQUvwEQWxRwUpX9qQKRXeqLwWxrqilMrf32sQ==", "dev": true, "dependencies": { - "@babel/types": "^7.22.5" + "@babel/types": "^7.24.5" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-split-export-declaration": { - "version": "7.22.6", - "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.22.6.tgz", - "integrity": "sha512-AsUnxuLhRYsisFiaJwvp1QF+I3KjD5FOxut14q/GzovUe6orHLesW2C7d754kRm53h5gqrz6sFl6sxc4BVtE/g==", + "version": "7.24.5", + "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.24.5.tgz", + "integrity": "sha512-5CHncttXohrHk8GWOFCcCl4oRD9fKosWlIRgWm4ql9VYioKm52Mk2xsmoohvm7f3JoiLSM5ZgJuRaf5QZZYd3Q==", "dev": true, "dependencies": { - "@babel/types": "^7.22.5" + "@babel/types": "^7.24.5" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-string-parser": { - "version": "7.23.4", - "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.23.4.tgz", - "integrity": "sha512-803gmbQdqwdf4olxrX4AJyFBV/RTr3rSmOj0rKwesmzlfhYNDEs+/iOcznzpNWlJlIlTJC2QfPFcHB6DlzdVLQ==", + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.24.1.tgz", + "integrity": "sha512-2ofRCjnnA9y+wk8b9IAREroeUP02KHp431N2mhKniy2yKIDKpbrHv9eXwm8cBeWQYcJmzv5qKCu65P47eCF7CQ==", "dev": true, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-validator-identifier": { - "version": "7.22.20", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.22.20.tgz", - "integrity": "sha512-Y4OZ+ytlatR8AI+8KZfKuL5urKp7qey08ha31L8b3BwewJAoJamTzyvxPR/5D+KkdJCGPq/+8TukHBlY10FX9A==", + "version": "7.24.5", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.24.5.tgz", + "integrity": "sha512-3q93SSKX2TWCG30M2G2kwaKeTYgEUp5Snjuj8qm729SObL6nbtUldAi37qbxkD5gg3xnBio+f9nqpSepGZMvxA==", "dev": true, "engines": { "node": ">=6.9.0" @@ -1052,37 +1052,38 @@ } }, "node_modules/@babel/helpers": { - "version": "7.23.7", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.23.7.tgz", - "integrity": "sha512-6AMnjCoC8wjqBzDHkuqpa7jAKwvMo4dC+lr/TFBz+ucfulO1XMpDnwWPGBNwClOKZ8h6xn5N81W/R5OrcKtCbQ==", + "version": "7.24.5", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.24.5.tgz", + "integrity": "sha512-CiQmBMMpMQHwM5m01YnrM6imUG1ebgYJ+fAIW4FZe6m4qHTPaRHti+R8cggAwkdz4oXhtO4/K9JWlh+8hIfR2Q==", "dev": true, "dependencies": { - "@babel/template": "^7.22.15", - "@babel/traverse": "^7.23.7", - "@babel/types": "^7.23.6" + "@babel/template": "^7.24.0", + "@babel/traverse": "^7.24.5", + "@babel/types": "^7.24.5" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/highlight": { - "version": "7.23.4", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.23.4.tgz", - "integrity": "sha512-acGdbYSfp2WheJoJm/EBBBLh/ID8KDc64ISZ9DYtBmC8/Q204PZJLHyzeB5qMzJ5trcOkybd78M4x2KWsUq++A==", + "version": "7.24.5", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.24.5.tgz", + "integrity": "sha512-8lLmua6AVh/8SLJRRVD6V8p73Hir9w5mJrhE+IPpILG31KKlI9iz5zmBYKcWPS59qSfgP9RaSBQSHHE81WKuEw==", "dev": true, "dependencies": { - "@babel/helper-validator-identifier": "^7.22.20", + "@babel/helper-validator-identifier": "^7.24.5", "chalk": "^2.4.2", - "js-tokens": "^4.0.0" + "js-tokens": "^4.0.0", + "picocolors": "^1.0.0" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/parser": { - "version": "7.23.6", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.23.6.tgz", - "integrity": "sha512-Z2uID7YJ7oNvAI20O9X0bblw7Qqs8Q2hFy0R9tAfnfLkp5MW0UH9eUvnDSnFwKZ0AvgS1ucqR4KzvVHgnke1VQ==", + "version": "7.24.5", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.24.5.tgz", + "integrity": "sha512-EOv5IK8arwh3LI47dz1b0tKUb/1uhHAnHJOrjgtQMIpu1uXd9mlFrJg9IUgGUgZ41Ch0K8REPTYpO7B76b4vJg==", "dev": true, "bin": { "parser": "bin/babel-parser.js" @@ -1233,33 +1234,33 @@ } }, "node_modules/@babel/template": { - "version": "7.22.15", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.22.15.tgz", - "integrity": "sha512-QPErUVm4uyJa60rkI73qneDacvdvzxshT3kksGqlGWYdOTIUOwJ7RDUL8sGqslY1uXWSL6xMFKEXDS3ox2uF0w==", + "version": "7.24.0", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.24.0.tgz", + "integrity": "sha512-Bkf2q8lMB0AFpX0NFEqSbx1OkTHf0f+0j82mkw+ZpzBnkk7e9Ql0891vlfgi+kHwOk8tQjiQHpqh4LaSa0fKEA==", "dev": true, "dependencies": { - "@babel/code-frame": "^7.22.13", - "@babel/parser": "^7.22.15", - "@babel/types": "^7.22.15" + "@babel/code-frame": "^7.23.5", + "@babel/parser": "^7.24.0", + "@babel/types": "^7.24.0" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/traverse": { - "version": "7.23.7", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.23.7.tgz", - "integrity": "sha512-tY3mM8rH9jM0YHFGyfC0/xf+SB5eKUu7HPj7/k3fpi9dAlsMc5YbQvDi0Sh2QTPXqMhyaAtzAr807TIyfQrmyg==", + "version": "7.24.5", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.24.5.tgz", + "integrity": "sha512-7aaBLeDQ4zYcUFDUD41lJc1fG8+5IU9DaNSJAgal866FGvmD5EbWQgnEC6kO1gGLsX0esNkfnJSndbTXA3r7UA==", "dev": true, "dependencies": { - "@babel/code-frame": "^7.23.5", - "@babel/generator": "^7.23.6", + "@babel/code-frame": "^7.24.2", + "@babel/generator": "^7.24.5", "@babel/helper-environment-visitor": "^7.22.20", "@babel/helper-function-name": "^7.23.0", "@babel/helper-hoist-variables": "^7.22.5", - "@babel/helper-split-export-declaration": "^7.22.6", - "@babel/parser": "^7.23.6", - "@babel/types": "^7.23.6", + "@babel/helper-split-export-declaration": "^7.24.5", + "@babel/parser": "^7.24.5", + "@babel/types": "^7.24.5", "debug": "^4.3.1", "globals": "^11.1.0" }, @@ -1268,13 +1269,13 @@ } }, "node_modules/@babel/types": { - "version": "7.23.6", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.23.6.tgz", - "integrity": "sha512-+uarb83brBzPKN38NX1MkB6vb6+mwvR6amUulqAE7ccQw1pEl+bCia9TbdG1lsnFP7lZySvUn37CHyXQdfTwzg==", + "version": "7.24.5", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.24.5.tgz", + "integrity": "sha512-6mQNsaLeXTw0nxYUYu+NSa4Hx4BlF1x1x8/PMFbiR+GBSr+2DkECc69b8hgy2frEodNcvPffeH8YfWd3LI6jhQ==", "dev": true, "dependencies": { - "@babel/helper-string-parser": "^7.23.4", - "@babel/helper-validator-identifier": "^7.22.20", + "@babel/helper-string-parser": "^7.24.1", + "@babel/helper-validator-identifier": "^7.24.5", "to-fast-properties": "^2.0.0" }, "engines": { @@ -1993,14 +1994,14 @@ } }, "node_modules/@jridgewell/gen-mapping": { - "version": "0.3.3", - "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.3.tgz", - "integrity": "sha512-HLhSWOLRi875zjjMG/r+Nv0oCW8umGb0BgEhyX3dDX3egwZtB8PqLnjz3yedt8R5StBrzcg4aBpnh8UA9D1BoQ==", + "version": "0.3.5", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.5.tgz", + "integrity": "sha512-IzL8ZoEDIBRWEzlCcRhOaCupYyN5gdIK+Q6fbFdPDg6HqX6jpkItn7DFIpW9LQzXG6Df9sA7+OKnq0qlz/GaQg==", "dev": true, "dependencies": { - "@jridgewell/set-array": "^1.0.1", + "@jridgewell/set-array": "^1.2.1", "@jridgewell/sourcemap-codec": "^1.4.10", - "@jridgewell/trace-mapping": "^0.3.9" + "@jridgewell/trace-mapping": "^0.3.24" }, "engines": { "node": ">=6.0.0" @@ -2016,9 +2017,9 @@ } }, "node_modules/@jridgewell/set-array": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.1.2.tgz", - "integrity": "sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw==", + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.2.1.tgz", + "integrity": "sha512-R8gLRTZeyp03ymzP/6Lil/28tGeGEzhx1q2k703KGWRAI1VdvPIXdG70VJc2pAMw3NA6JKL5hhFu1sJX0Mnn/A==", "dev": true, "engines": { "node": ">=6.0.0" @@ -2031,9 +2032,9 @@ "dev": true }, "node_modules/@jridgewell/trace-mapping": { - "version": "0.3.20", - "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.20.tgz", - "integrity": "sha512-R8LcPeWZol2zR8mmH3JeKQ6QRCFb7XgUhV9ZlGhHLGyg4wpPiPZNQOOWhFZhxKw8u//yTbNGI42Bx/3paXEQ+Q==", + "version": "0.3.25", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.25.tgz", + "integrity": "sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==", "dev": true, "dependencies": { "@jridgewell/resolve-uri": "^3.1.0", diff --git a/package.json b/package.json index 93d31c9b..8e8c4b8d 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "@finos/git-proxy", - "version": "1.2.0", + "version": "1.2.1", "description": "Deploy custom push protections and policies on top of Git.", "scripts": { "cli": "node ./packages/git-proxy-cli/index.js", diff --git a/src/proxy/chain.js b/src/proxy/chain.js index 68982eef..c389a989 100644 --- a/src/proxy/chain.js +++ b/src/proxy/chain.js @@ -11,6 +11,7 @@ const pushActionChain = [ proc.push.pullRemote, proc.push.writePack, proc.push.getDiff, + proc.push.clearBareClone, proc.push.scanDiff, proc.push.blockForAuth, ]; diff --git a/src/proxy/processors/push-action/clearBareClone.js b/src/proxy/processors/push-action/clearBareClone.js new file mode 100644 index 00000000..dfda43eb --- /dev/null +++ b/src/proxy/processors/push-action/clearBareClone.js @@ -0,0 +1,20 @@ +const Step = require('../../actions').Step; +const fs = require('node:fs'); + +const exec = async (req, action) => { + const step = new Step('clearBareClone'); + + // Recursively remove the contents of ./.remote and ignore exceptions + fs.rm('./.remote', { recursive: true, force: true }, (err) => { + if (err) { + throw err; + } + console.log(`.remote is deleted!`); + }); + + action.addStep(step); + return action; +}; + +exec.displayName = 'clearBareClone.exec'; +exports.exec = exec; diff --git a/src/proxy/processors/push-action/index.js b/src/proxy/processors/push-action/index.js index 309b82cd..72a97b33 100644 --- a/src/proxy/processors/push-action/index.js +++ b/src/proxy/processors/push-action/index.js @@ -10,3 +10,4 @@ exports.checkIfWaitingAuth = require('./checkIfWaitingAuth').exec; exports.checkCommitMessages = require('./checkCommitMessages').exec; exports.checkAuthorEmails = require('./checkAuthorEmails').exec; exports.checkUserPushPermission = require('./checkUserPushPermission').exec; +exports.clearBareClone = require('./clearBareClone').exec; diff --git a/src/proxy/processors/push-action/pullRemote.js b/src/proxy/processors/push-action/pullRemote.js index a851044e..7d31edf7 100644 --- a/src/proxy/processors/push-action/pullRemote.js +++ b/src/proxy/processors/push-action/pullRemote.js @@ -21,26 +21,9 @@ const exec = async (req, action) => { const cmd = `git clone ${action.url} --bare`; - // Retrieve authorization headers - const authorizationHeader = req.headers?.authorization; - - // Validate the authorization headers - const authorizationValid = - authorizationHeader && - typeof authorizationHeader === 'string' && - authorizationHeader.includes('Basic '); - - // Construct clone URL depending on presence of authorization headers - const cloneUrl = authorizationValid - ? `https://${Buffer.from(authorizationHeader.split(' ')[1], 'base64')}@${action.url.replace( - /https*:\/\//, - '', - )}` - : action.url; - - step.log(`Exectuting ${cmd}${authorizationValid ? ' with credentials' : ''}`); - - const response = spawnSync('git', ['clone', cloneUrl, '--bare', '--progress'], { + step.log(`Exectuting ${cmd}`); + + const response = spawnSync('git', ['clone', action.url, '--bare', '--progress'], { cwd: action.proxyGitPath, encoding: 'utf-8', }); diff --git a/test/testClearBareClone.test.js b/test/testClearBareClone.test.js new file mode 100644 index 00000000..c600610c --- /dev/null +++ b/test/testClearBareClone.test.js @@ -0,0 +1,26 @@ +const fs = require('fs'); +const chai = require('chai'); +const clearBareClone = require('../src/proxy/processors/push-action/clearBareClone').exec; +const pullRemote = require('../src/proxy/processors/push-action/pullRemote').exec; +const { Action } = require('../src/proxy/actions/Action'); +chai.should(); + +const expect = chai.expect; +const timestamp = Date.now(); + +describe('clear bare and local clones', async () => { + it('pull remote generates a local .remote folder', async () => { + const action = new Action('123', 'type', 'get', timestamp, 'finos/git-proxy'); + action.url = 'https://github.com/finos/git-proxy'; + await pullRemote({}, action); + + expect(fs.existsSync(`./.remote/${timestamp}`)).to.be.true; + }); + + it('clear bare clone function purges .remote folder and specific clone folder', async () => { + const action = new Action('123', 'type', 'get', timestamp, 'finos/git-proxy'); + await clearBareClone(null, action); + expect(fs.existsSync(`./.remote`)).to.throw; + expect(fs.existsSync(`./.remote/${timestamp}`)).to.throw; + }); +}); diff --git a/website/docs/installation.mdx b/website/docs/installation.mdx index 600fdbce..4d807dec 100644 --- a/website/docs/installation.mdx +++ b/website/docs/installation.mdx @@ -22,7 +22,7 @@ npm install -g @finos/git-proxy-cli To install a specific version of Git Proxy, append the version to the end of the install command: ```bash -npm install -g @finos/git-proxy@1.2.0 +npm install -g @finos/git-proxy@1.2.1 ``` To install a specific version of the Git Proxy CLI, append the version to the end of the install command: diff --git a/website/docusaurus.config.js b/website/docusaurus.config.js index a82e3239..12e82c06 100644 --- a/website/docusaurus.config.js +++ b/website/docusaurus.config.js @@ -11,7 +11,7 @@ module.exports = { projectName: `${projectName}`, organizationName: 'FINOS', customFields: { - version: '1.2.0', + version: '1.2.1', }, scripts: ['https://buttons.github.io/buttons.js'], stylesheets: ['https://fonts.googleapis.com/css?family=Overpass:400,400i,700'], diff --git a/website/yarn.lock b/website/yarn.lock index b56022d4..b504f972 100644 --- a/website/yarn.lock +++ b/website/yarn.lock @@ -1241,10 +1241,10 @@ "@docsearch/css" "3.6.0" algoliasearch "^4.19.1" -"@docusaurus/core@3.3.0", "@docusaurus/core@^3.0.0": - version "3.3.0" - resolved "https://registry.yarnpkg.com/@docusaurus/core/-/core-3.3.0.tgz#25f63313d49016d2a09d81ca88fb6a686ec391c1" - integrity sha512-+sWlTg/QA36OooPsD9ig2hYwtTFHwsSVjLtyIFUIBwGsL7yQYXLunc2fZKxodRRLl6iVJBakovKRgCuHn0qChw== +"@docusaurus/core@3.3.2", "@docusaurus/core@^3.0.0": + version "3.3.2" + resolved "https://registry.yarnpkg.com/@docusaurus/core/-/core-3.3.2.tgz#67b8cd5329b32f47515ecf12eb7aa306dfc69922" + integrity sha512-PzKMydKI3IU1LmeZQDi+ut5RSuilbXnA8QdowGeJEgU8EJjmx3rBHNT1LxQxOVqNEwpWi/csLwd9bn7rUjggPA== dependencies: "@babel/core" "^7.23.3" "@babel/generator" "^7.23.3" @@ -1256,12 +1256,12 @@ "@babel/runtime" "^7.22.6" "@babel/runtime-corejs3" "^7.22.6" "@babel/traverse" "^7.22.8" - "@docusaurus/cssnano-preset" "3.3.0" - "@docusaurus/logger" "3.3.0" - "@docusaurus/mdx-loader" "3.3.0" - "@docusaurus/utils" "3.3.0" - "@docusaurus/utils-common" "3.3.0" - "@docusaurus/utils-validation" "3.3.0" + "@docusaurus/cssnano-preset" "3.3.2" + "@docusaurus/logger" "3.3.2" + "@docusaurus/mdx-loader" "3.3.2" + "@docusaurus/utils" "3.3.2" + "@docusaurus/utils-common" "3.3.2" + "@docusaurus/utils-validation" "3.3.2" autoprefixer "^10.4.14" babel-loader "^9.1.3" babel-plugin-dynamic-import-node "^2.3.3" @@ -1315,32 +1315,32 @@ webpack-merge "^5.9.0" webpackbar "^5.0.2" -"@docusaurus/cssnano-preset@3.3.0": - version "3.3.0" - resolved "https://registry.yarnpkg.com/@docusaurus/cssnano-preset/-/cssnano-preset-3.3.0.tgz#69c1c40f4df01a3d15a02c936b16995684360ee8" - integrity sha512-rNqMdqLXTsm5HIcEnPqSpQNQsN5cRK5e6Ai0Gb4lJzaV1yeM6smCCiBuR/CZ6TnYbamhZkl1ZopiXGZcsmJZIQ== +"@docusaurus/cssnano-preset@3.3.2": + version "3.3.2" + resolved "https://registry.yarnpkg.com/@docusaurus/cssnano-preset/-/cssnano-preset-3.3.2.tgz#fb971b3e89fe6821721782124b430b2795faeb38" + integrity sha512-+5+epLk/Rp4vFML4zmyTATNc3Is+buMAL6dNjrMWahdJCJlMWMPd/8YfU+2PA57t8mlSbhLJ7vAZVy54cd1vRQ== dependencies: cssnano-preset-advanced "^6.1.2" postcss "^8.4.38" postcss-sort-media-queries "^5.2.0" tslib "^2.6.0" -"@docusaurus/logger@3.3.0": - version "3.3.0" - resolved "https://registry.yarnpkg.com/@docusaurus/logger/-/logger-3.3.0.tgz#3123563614d9f1fb4ea7d80d15b33e29b282fa8b" - integrity sha512-J0IcS8nMNQ/fDEVDg2podzBcbsE2mD/eKAcErskC2fFwPtuVzfLxTT546/ScMSqXdf6gOf3cKPfiaEy5N2P7DA== +"@docusaurus/logger@3.3.2": + version "3.3.2" + resolved "https://registry.yarnpkg.com/@docusaurus/logger/-/logger-3.3.2.tgz#f43f7e08d4f5403be6a7196659490053e248325f" + integrity sha512-Ldu38GJ4P8g4guN7d7pyCOJ7qQugG7RVyaxrK8OnxuTlaImvQw33aDRwaX2eNmX8YK6v+//Z502F4sOZbHHCHQ== dependencies: chalk "^4.1.2" tslib "^2.6.0" -"@docusaurus/mdx-loader@3.3.0": - version "3.3.0" - resolved "https://registry.yarnpkg.com/@docusaurus/mdx-loader/-/mdx-loader-3.3.0.tgz#15634be7bfa965c315843f854cfc1ac92a114427" - integrity sha512-T24yRoymw3Pp5zD1diRYePqkLxHEtNdPw4s8LrfQF5uOczVWJv26a8/d9uEIHwXXENRtWIPb/xj+nn4EDlM3CQ== +"@docusaurus/mdx-loader@3.3.2": + version "3.3.2" + resolved "https://registry.yarnpkg.com/@docusaurus/mdx-loader/-/mdx-loader-3.3.2.tgz#424e3ffac8bcdeba27d8c0eb84a04736702fc187" + integrity sha512-AFRxj/aOk3/mfYDPxE3wTbrjeayVRvNSZP7mgMuUlrb2UlPRbSVAFX1k2RbgAJrnTSwMgb92m2BhJgYRfptN3g== dependencies: - "@docusaurus/logger" "3.3.0" - "@docusaurus/utils" "3.3.0" - "@docusaurus/utils-validation" "3.3.0" + "@docusaurus/logger" "3.3.2" + "@docusaurus/utils" "3.3.2" + "@docusaurus/utils-validation" "3.3.2" "@mdx-js/mdx" "^3.0.0" "@slorber/remark-comment" "^1.0.0" escape-html "^1.0.3" @@ -1363,12 +1363,12 @@ vfile "^6.0.1" webpack "^5.88.1" -"@docusaurus/module-type-aliases@3.3.0": - version "3.3.0" - resolved "https://registry.yarnpkg.com/@docusaurus/module-type-aliases/-/module-type-aliases-3.3.0.tgz#321611bf6c28c50f5ea61ddf127dfc25d2e44841" - integrity sha512-gaCpH7jyraIDpbkmQ1wflxGyg/6G0QAcD0RX7eIU45/Xot5F5fGTQn0UfzgnGyiGx44HxkOHKV6b5e1Lt56Oiw== +"@docusaurus/module-type-aliases@3.3.2": + version "3.3.2" + resolved "https://registry.yarnpkg.com/@docusaurus/module-type-aliases/-/module-type-aliases-3.3.2.tgz#02534449d08d080fd52dc9e046932bb600c38b01" + integrity sha512-b/XB0TBJah5yKb4LYuJT4buFvL0MGAb0+vJDrJtlYMguRtsEBkf2nWl5xP7h4Dlw6ol0hsHrCYzJ50kNIOEclw== dependencies: - "@docusaurus/types" "3.3.0" + "@docusaurus/types" "3.3.2" "@types/history" "^4.7.11" "@types/react" "*" "@types/react-router-config" "*" @@ -1376,18 +1376,18 @@ react-helmet-async "*" react-loadable "npm:@docusaurus/react-loadable@6.0.0" -"@docusaurus/plugin-content-blog@3.3.0": - version "3.3.0" - resolved "https://registry.yarnpkg.com/@docusaurus/plugin-content-blog/-/plugin-content-blog-3.3.0.tgz#bfc416ed22170f65ccb7a0884e9315dca357b5c9" - integrity sha512-WyAWiPguCCc9cQPcQwnbAPZBPfyyIbNHJ2HjNYkSvQkemKYUxpsUxc5Cjf8awQmBXAkNFWLRi8nyoYnDJMIV1A== - dependencies: - "@docusaurus/core" "3.3.0" - "@docusaurus/logger" "3.3.0" - "@docusaurus/mdx-loader" "3.3.0" - "@docusaurus/types" "3.3.0" - "@docusaurus/utils" "3.3.0" - "@docusaurus/utils-common" "3.3.0" - "@docusaurus/utils-validation" "3.3.0" +"@docusaurus/plugin-content-blog@3.3.2": + version "3.3.2" + resolved "https://registry.yarnpkg.com/@docusaurus/plugin-content-blog/-/plugin-content-blog-3.3.2.tgz#6496714b071447687ead1472e5756bfb1ae065d0" + integrity sha512-fJU+dmqp231LnwDJv+BHVWft8pcUS2xVPZdeYH6/ibH1s2wQ/sLcmUrGWyIv/Gq9Ptj8XWjRPMghlxghuPPoxg== + dependencies: + "@docusaurus/core" "3.3.2" + "@docusaurus/logger" "3.3.2" + "@docusaurus/mdx-loader" "3.3.2" + "@docusaurus/types" "3.3.2" + "@docusaurus/utils" "3.3.2" + "@docusaurus/utils-common" "3.3.2" + "@docusaurus/utils-validation" "3.3.2" cheerio "^1.0.0-rc.12" feed "^4.2.2" fs-extra "^11.1.1" @@ -1399,19 +1399,19 @@ utility-types "^3.10.0" webpack "^5.88.1" -"@docusaurus/plugin-content-docs@3.3.0": - version "3.3.0" - resolved "https://registry.yarnpkg.com/@docusaurus/plugin-content-docs/-/plugin-content-docs-3.3.0.tgz#a1f510e4f3b69108c020edb1c7ee06a88b41d1ed" - integrity sha512-3+o8v7SDPg/wvxUnHvpYdYXk3MYeLAKbNSnf2adqtMJTMGbpxCohO8++cdUjC/+ZMeQVEG9MEvbXpvPIIed4wQ== - dependencies: - "@docusaurus/core" "3.3.0" - "@docusaurus/logger" "3.3.0" - "@docusaurus/mdx-loader" "3.3.0" - "@docusaurus/module-type-aliases" "3.3.0" - "@docusaurus/types" "3.3.0" - "@docusaurus/utils" "3.3.0" - "@docusaurus/utils-common" "3.3.0" - "@docusaurus/utils-validation" "3.3.0" +"@docusaurus/plugin-content-docs@3.3.2": + version "3.3.2" + resolved "https://registry.yarnpkg.com/@docusaurus/plugin-content-docs/-/plugin-content-docs-3.3.2.tgz#dadfbb94acfb0b74fae12db51f425c4379e30087" + integrity sha512-Dm1ri2VlGATTN3VGk1ZRqdRXWa1UlFubjaEL6JaxaK7IIFqN/Esjpl+Xw10R33loHcRww/H76VdEeYayaL76eg== + dependencies: + "@docusaurus/core" "3.3.2" + "@docusaurus/logger" "3.3.2" + "@docusaurus/mdx-loader" "3.3.2" + "@docusaurus/module-type-aliases" "3.3.2" + "@docusaurus/types" "3.3.2" + "@docusaurus/utils" "3.3.2" + "@docusaurus/utils-common" "3.3.2" + "@docusaurus/utils-validation" "3.3.2" "@types/react-router-config" "^5.0.7" combine-promises "^1.1.0" fs-extra "^11.1.1" @@ -1421,114 +1421,114 @@ utility-types "^3.10.0" webpack "^5.88.1" -"@docusaurus/plugin-content-pages@3.3.0": - version "3.3.0" - resolved "https://registry.yarnpkg.com/@docusaurus/plugin-content-pages/-/plugin-content-pages-3.3.0.tgz#6972038be8cde4337296c70e0bdd1be6bec61e56" - integrity sha512-kZPSXRXlMTduh4cCRk1RbLx/NPOJjkkbZg1Z3o2NKLoYizSOzJ5gplg2911K47V0wOLj7sylRLiii0QmREu2kg== - dependencies: - "@docusaurus/core" "3.3.0" - "@docusaurus/mdx-loader" "3.3.0" - "@docusaurus/types" "3.3.0" - "@docusaurus/utils" "3.3.0" - "@docusaurus/utils-validation" "3.3.0" +"@docusaurus/plugin-content-pages@3.3.2": + version "3.3.2" + resolved "https://registry.yarnpkg.com/@docusaurus/plugin-content-pages/-/plugin-content-pages-3.3.2.tgz#04fc18d1925618c1102b111b85e6376442c1b7a9" + integrity sha512-EKc9fQn5H2+OcGER8x1aR+7URtAGWySUgULfqE/M14+rIisdrBstuEZ4lUPDRrSIexOVClML82h2fDS+GSb8Ew== + dependencies: + "@docusaurus/core" "3.3.2" + "@docusaurus/mdx-loader" "3.3.2" + "@docusaurus/types" "3.3.2" + "@docusaurus/utils" "3.3.2" + "@docusaurus/utils-validation" "3.3.2" fs-extra "^11.1.1" tslib "^2.6.0" webpack "^5.88.1" -"@docusaurus/plugin-debug@3.3.0": - version "3.3.0" - resolved "https://registry.yarnpkg.com/@docusaurus/plugin-debug/-/plugin-debug-3.3.0.tgz#6bbe23fad35247edf9cc76c12e36d2ce74714da8" - integrity sha512-KY0BLg09NLsj81MOiW5+tu6DWh5QSGfN8EXixebVkX12cN7/58d/gwhacFe2I4WlWpp9ULsPK0b70cNVbpCt6Q== +"@docusaurus/plugin-debug@3.3.2": + version "3.3.2" + resolved "https://registry.yarnpkg.com/@docusaurus/plugin-debug/-/plugin-debug-3.3.2.tgz#bb25fac2cb705eff7857b435219faef907ba949e" + integrity sha512-oBIBmwtaB+YS0XlmZ3gCO+cMbsGvIYuAKkAopoCh0arVjtlyPbejzPrHuCoRHB9G7abjNZw7zoONOR8+8LM5+Q== dependencies: - "@docusaurus/core" "3.3.0" - "@docusaurus/types" "3.3.0" - "@docusaurus/utils" "3.3.0" + "@docusaurus/core" "3.3.2" + "@docusaurus/types" "3.3.2" + "@docusaurus/utils" "3.3.2" fs-extra "^11.1.1" react-json-view-lite "^1.2.0" tslib "^2.6.0" -"@docusaurus/plugin-google-analytics@3.3.0": - version "3.3.0" - resolved "https://registry.yarnpkg.com/@docusaurus/plugin-google-analytics/-/plugin-google-analytics-3.3.0.tgz#934ee2a61caf68355c7e1940f6e1c40b24c9a582" - integrity sha512-qNkOguewdG5QcTuh2U+29npxmUXy5BENPIcC7pkiynEZxXF6ysuIw5mo1oL4ITzxT8G6E4Av9h5GPRsQiJ8YdA== +"@docusaurus/plugin-google-analytics@3.3.2": + version "3.3.2" + resolved "https://registry.yarnpkg.com/@docusaurus/plugin-google-analytics/-/plugin-google-analytics-3.3.2.tgz#6e51ee8593c79172ed2b2ac4d33e300f04bfbc87" + integrity sha512-jXhrEIhYPSClMBK6/IA8qf1/FBoxqGXZvg7EuBax9HaK9+kL3L0TJIlatd8jQJOMtds8mKw806TOCc3rtEad1A== dependencies: - "@docusaurus/core" "3.3.0" - "@docusaurus/types" "3.3.0" - "@docusaurus/utils-validation" "3.3.0" + "@docusaurus/core" "3.3.2" + "@docusaurus/types" "3.3.2" + "@docusaurus/utils-validation" "3.3.2" tslib "^2.6.0" -"@docusaurus/plugin-google-gtag@3.3.0": - version "3.3.0" - resolved "https://registry.yarnpkg.com/@docusaurus/plugin-google-gtag/-/plugin-google-gtag-3.3.0.tgz#84ce4c5f13a3d3d19553407ed644de733d3d4898" - integrity sha512-jvXpNqpn6dI0OqzZZHD3Em3cu0Km5qh+F4gHTdysf7svCqEn5feku2ODBSaeXgsp/ko8HxOPRBE3tnjWGyUzqg== +"@docusaurus/plugin-google-gtag@3.3.2": + version "3.3.2" + resolved "https://registry.yarnpkg.com/@docusaurus/plugin-google-gtag/-/plugin-google-gtag-3.3.2.tgz#f8126dfe1dfa6e722157d7301430da40b97354ba" + integrity sha512-vcrKOHGbIDjVnNMrfbNpRQR1x6Jvcrb48kVzpBAOsKbj9rXZm/idjVAXRaewwobHdOrJkfWS/UJoxzK8wyLRBQ== dependencies: - "@docusaurus/core" "3.3.0" - "@docusaurus/types" "3.3.0" - "@docusaurus/utils-validation" "3.3.0" + "@docusaurus/core" "3.3.2" + "@docusaurus/types" "3.3.2" + "@docusaurus/utils-validation" "3.3.2" "@types/gtag.js" "^0.0.12" tslib "^2.6.0" -"@docusaurus/plugin-google-tag-manager@3.3.0": - version "3.3.0" - resolved "https://registry.yarnpkg.com/@docusaurus/plugin-google-tag-manager/-/plugin-google-tag-manager-3.3.0.tgz#0c9a011b167386c97a63361dd489866c699d10eb" - integrity sha512-bEv6fgNvwz2DVsx9XWqbMyotV9q7x14Wd/aDKgwpTlTO+sbbayV09W4ET+3xAI/4EstzgNzVzzrPxlJ74qDobQ== +"@docusaurus/plugin-google-tag-manager@3.3.2": + version "3.3.2" + resolved "https://registry.yarnpkg.com/@docusaurus/plugin-google-tag-manager/-/plugin-google-tag-manager-3.3.2.tgz#7ce4cf4da6ef177d63bd83beafc4a45428ff01e2" + integrity sha512-ldkR58Fdeks0vC+HQ+L+bGFSJsotQsipXD+iKXQFvkOfmPIV6QbHRd7IIcm5b6UtwOiK33PylNS++gjyLUmaGw== dependencies: - "@docusaurus/core" "3.3.0" - "@docusaurus/types" "3.3.0" - "@docusaurus/utils-validation" "3.3.0" + "@docusaurus/core" "3.3.2" + "@docusaurus/types" "3.3.2" + "@docusaurus/utils-validation" "3.3.2" tslib "^2.6.0" -"@docusaurus/plugin-sitemap@3.3.0": - version "3.3.0" - resolved "https://registry.yarnpkg.com/@docusaurus/plugin-sitemap/-/plugin-sitemap-3.3.0.tgz#7d3dbb5f85a31d4eab5848a672d99a3a8fee56b0" - integrity sha512-8KwNtAOlXxsIdhmX28ZIZps4qvwywP17Kij0dLfhAHmwOkJNFMkhctLQIhy9J9gytMD2twDNlZU1dJA6hCToOA== - dependencies: - "@docusaurus/core" "3.3.0" - "@docusaurus/logger" "3.3.0" - "@docusaurus/types" "3.3.0" - "@docusaurus/utils" "3.3.0" - "@docusaurus/utils-common" "3.3.0" - "@docusaurus/utils-validation" "3.3.0" +"@docusaurus/plugin-sitemap@3.3.2": + version "3.3.2" + resolved "https://registry.yarnpkg.com/@docusaurus/plugin-sitemap/-/plugin-sitemap-3.3.2.tgz#f64fba6f03ebc14fdf55434aa2219bf80f752a13" + integrity sha512-/ZI1+bwZBhAgC30inBsHe3qY9LOZS+79fRGkNdTcGHRMcdAp6Vw2pCd1gzlxd/xU+HXsNP6cLmTOrggmRp3Ujg== + dependencies: + "@docusaurus/core" "3.3.2" + "@docusaurus/logger" "3.3.2" + "@docusaurus/types" "3.3.2" + "@docusaurus/utils" "3.3.2" + "@docusaurus/utils-common" "3.3.2" + "@docusaurus/utils-validation" "3.3.2" fs-extra "^11.1.1" sitemap "^7.1.1" tslib "^2.6.0" "@docusaurus/preset-classic@^3.0.0": - version "3.3.0" - resolved "https://registry.yarnpkg.com/@docusaurus/preset-classic/-/preset-classic-3.3.0.tgz#6a5e3e0201278e609b9f9eccede2c857ae177fcc" - integrity sha512-zpZOndiBH3DbiHsyv0JEUwwodlal0QG/wjhbbOq6gDwa8yF3z4tv4TSdG6HUn2q14NYN865uqz2zaTe2hymX1Q== - dependencies: - "@docusaurus/core" "3.3.0" - "@docusaurus/plugin-content-blog" "3.3.0" - "@docusaurus/plugin-content-docs" "3.3.0" - "@docusaurus/plugin-content-pages" "3.3.0" - "@docusaurus/plugin-debug" "3.3.0" - "@docusaurus/plugin-google-analytics" "3.3.0" - "@docusaurus/plugin-google-gtag" "3.3.0" - "@docusaurus/plugin-google-tag-manager" "3.3.0" - "@docusaurus/plugin-sitemap" "3.3.0" - "@docusaurus/theme-classic" "3.3.0" - "@docusaurus/theme-common" "3.3.0" - "@docusaurus/theme-search-algolia" "3.3.0" - "@docusaurus/types" "3.3.0" - -"@docusaurus/theme-classic@3.3.0": - version "3.3.0" - resolved "https://registry.yarnpkg.com/@docusaurus/theme-classic/-/theme-classic-3.3.0.tgz#aed91711b600c5e1fb4c6b395590cbab70b4f1e9" - integrity sha512-8MiVNfUwBRPs+86gNBP5PppK25BoagjVC8LGcuKE6EHmBFXoV97Y+xKJ3gqoFwb5/xbOolulVpGw4sijMEVn0A== - dependencies: - "@docusaurus/core" "3.3.0" - "@docusaurus/mdx-loader" "3.3.0" - "@docusaurus/module-type-aliases" "3.3.0" - "@docusaurus/plugin-content-blog" "3.3.0" - "@docusaurus/plugin-content-docs" "3.3.0" - "@docusaurus/plugin-content-pages" "3.3.0" - "@docusaurus/theme-common" "3.3.0" - "@docusaurus/theme-translations" "3.3.0" - "@docusaurus/types" "3.3.0" - "@docusaurus/utils" "3.3.0" - "@docusaurus/utils-common" "3.3.0" - "@docusaurus/utils-validation" "3.3.0" + version "3.3.2" + resolved "https://registry.yarnpkg.com/@docusaurus/preset-classic/-/preset-classic-3.3.2.tgz#1c89b5f35f9e727a1c91bc03eb25a5b42b7d67a6" + integrity sha512-1SDS7YIUN1Pg3BmD6TOTjhB7RSBHJRpgIRKx9TpxqyDrJ92sqtZhomDc6UYoMMLQNF2wHFZZVGFjxJhw2VpL+Q== + dependencies: + "@docusaurus/core" "3.3.2" + "@docusaurus/plugin-content-blog" "3.3.2" + "@docusaurus/plugin-content-docs" "3.3.2" + "@docusaurus/plugin-content-pages" "3.3.2" + "@docusaurus/plugin-debug" "3.3.2" + "@docusaurus/plugin-google-analytics" "3.3.2" + "@docusaurus/plugin-google-gtag" "3.3.2" + "@docusaurus/plugin-google-tag-manager" "3.3.2" + "@docusaurus/plugin-sitemap" "3.3.2" + "@docusaurus/theme-classic" "3.3.2" + "@docusaurus/theme-common" "3.3.2" + "@docusaurus/theme-search-algolia" "3.3.2" + "@docusaurus/types" "3.3.2" + +"@docusaurus/theme-classic@3.3.2": + version "3.3.2" + resolved "https://registry.yarnpkg.com/@docusaurus/theme-classic/-/theme-classic-3.3.2.tgz#44489580e034a6f5b877ec8bfd1203e226b4a4ab" + integrity sha512-gepHFcsluIkPb4Im9ukkiO4lXrai671wzS3cKQkY9BXQgdVwsdPf/KS0Vs4Xlb0F10fTz+T3gNjkxNEgSN9M0A== + dependencies: + "@docusaurus/core" "3.3.2" + "@docusaurus/mdx-loader" "3.3.2" + "@docusaurus/module-type-aliases" "3.3.2" + "@docusaurus/plugin-content-blog" "3.3.2" + "@docusaurus/plugin-content-docs" "3.3.2" + "@docusaurus/plugin-content-pages" "3.3.2" + "@docusaurus/theme-common" "3.3.2" + "@docusaurus/theme-translations" "3.3.2" + "@docusaurus/types" "3.3.2" + "@docusaurus/utils" "3.3.2" + "@docusaurus/utils-common" "3.3.2" + "@docusaurus/utils-validation" "3.3.2" "@mdx-js/react" "^3.0.0" clsx "^2.0.0" copy-text-to-clipboard "^3.2.0" @@ -1543,18 +1543,18 @@ tslib "^2.6.0" utility-types "^3.10.0" -"@docusaurus/theme-common@3.3.0": - version "3.3.0" - resolved "https://registry.yarnpkg.com/@docusaurus/theme-common/-/theme-common-3.3.0.tgz#ac356eb5e271e946a36d63f1b727cc15dc7e3f30" - integrity sha512-biDqzezb/O5BmWYCmGq8cDMPlsoPiKV8Rwk+nu3V0498KAKzQHZgrA9OqJ9T0W9oIRTBQcyi0KocczuR7S41ug== - dependencies: - "@docusaurus/mdx-loader" "3.3.0" - "@docusaurus/module-type-aliases" "3.3.0" - "@docusaurus/plugin-content-blog" "3.3.0" - "@docusaurus/plugin-content-docs" "3.3.0" - "@docusaurus/plugin-content-pages" "3.3.0" - "@docusaurus/utils" "3.3.0" - "@docusaurus/utils-common" "3.3.0" +"@docusaurus/theme-common@3.3.2": + version "3.3.2" + resolved "https://registry.yarnpkg.com/@docusaurus/theme-common/-/theme-common-3.3.2.tgz#26f8a6d26ea6c297350887f614c6dac73c2ede4a" + integrity sha512-kXqSaL/sQqo4uAMQ4fHnvRZrH45Xz2OdJ3ABXDS7YVGPSDTBC8cLebFrRR4YF9EowUHto1UC/EIklJZQMG/usA== + dependencies: + "@docusaurus/mdx-loader" "3.3.2" + "@docusaurus/module-type-aliases" "3.3.2" + "@docusaurus/plugin-content-blog" "3.3.2" + "@docusaurus/plugin-content-docs" "3.3.2" + "@docusaurus/plugin-content-pages" "3.3.2" + "@docusaurus/utils" "3.3.2" + "@docusaurus/utils-common" "3.3.2" "@types/history" "^4.7.11" "@types/react" "*" "@types/react-router-config" "*" @@ -1564,19 +1564,19 @@ tslib "^2.6.0" utility-types "^3.10.0" -"@docusaurus/theme-search-algolia@3.3.0": - version "3.3.0" - resolved "https://registry.yarnpkg.com/@docusaurus/theme-search-algolia/-/theme-search-algolia-3.3.0.tgz#bf289e44ce700f2b39908cc6b961f9d1717eceb8" - integrity sha512-VUgNKEPplZ0CG0RHMFDa9BNNsoL4mh8vtpsVZk7g6Ki6EbjfV8clRfiFIla8gZvkKKCHgEQjUt8JBS8w9NUshg== +"@docusaurus/theme-search-algolia@3.3.2": + version "3.3.2" + resolved "https://registry.yarnpkg.com/@docusaurus/theme-search-algolia/-/theme-search-algolia-3.3.2.tgz#fe669e756697a2ca79784052e26c43a07ea7e449" + integrity sha512-qLkfCl29VNBnF1MWiL9IyOQaHxUvicZp69hISyq/xMsNvFKHFOaOfk9xezYod2Q9xx3xxUh9t/QPigIei2tX4w== dependencies: "@docsearch/react" "^3.5.2" - "@docusaurus/core" "3.3.0" - "@docusaurus/logger" "3.3.0" - "@docusaurus/plugin-content-docs" "3.3.0" - "@docusaurus/theme-common" "3.3.0" - "@docusaurus/theme-translations" "3.3.0" - "@docusaurus/utils" "3.3.0" - "@docusaurus/utils-validation" "3.3.0" + "@docusaurus/core" "3.3.2" + "@docusaurus/logger" "3.3.2" + "@docusaurus/plugin-content-docs" "3.3.2" + "@docusaurus/theme-common" "3.3.2" + "@docusaurus/theme-translations" "3.3.2" + "@docusaurus/utils" "3.3.2" + "@docusaurus/utils-validation" "3.3.2" algoliasearch "^4.18.0" algoliasearch-helper "^3.13.3" clsx "^2.0.0" @@ -1586,18 +1586,18 @@ tslib "^2.6.0" utility-types "^3.10.0" -"@docusaurus/theme-translations@3.3.0": - version "3.3.0" - resolved "https://registry.yarnpkg.com/@docusaurus/theme-translations/-/theme-translations-3.3.0.tgz#9fad636b526943caa599f247d2cdad565d155262" - integrity sha512-aEla/7Ph64MzsWjgGistdoyo+WvbCo0yDnUrj0c2pq3t3ajHZ7cHX0bDe22jOrmMghz8EjhBkmeQV1eppASAfQ== +"@docusaurus/theme-translations@3.3.2": + version "3.3.2" + resolved "https://registry.yarnpkg.com/@docusaurus/theme-translations/-/theme-translations-3.3.2.tgz#39ad011573ce963f1eda98ded925971ca57c5a52" + integrity sha512-bPuiUG7Z8sNpGuTdGnmKl/oIPeTwKr0AXLGu9KaP6+UFfRZiyWbWE87ti97RrevB2ffojEdvchNujparR3jEZQ== dependencies: fs-extra "^11.1.1" tslib "^2.6.0" -"@docusaurus/types@3.3.0": - version "3.3.0" - resolved "https://registry.yarnpkg.com/@docusaurus/types/-/types-3.3.0.tgz#9219e58a4402238e2edec7d105b69e47e3358e59" - integrity sha512-jbuXyrSGY7Pn7vnYvbKapH3rzSMT9Msv3Vyu2wU6xXOCml8cr4TmczyNpDg8cbV1fUAZJVjkTpiBBE/5CVqCEw== +"@docusaurus/types@3.3.2": + version "3.3.2" + resolved "https://registry.yarnpkg.com/@docusaurus/types/-/types-3.3.2.tgz#0e17689512b22209a98f22ee80ac56899e94d390" + integrity sha512-5p201S7AZhliRxTU7uMKtSsoC8mgPA9bs9b5NQg1IRdRxJfflursXNVsgc3PcMqiUTul/v1s3k3rXXFlRE890w== dependencies: "@mdx-js/mdx" "^3.0.0" "@types/history" "^4.7.11" @@ -1609,32 +1609,32 @@ webpack "^5.88.1" webpack-merge "^5.9.0" -"@docusaurus/utils-common@3.3.0": - version "3.3.0" - resolved "https://registry.yarnpkg.com/@docusaurus/utils-common/-/utils-common-3.3.0.tgz#621729122a2a224072adbee925befaea88c70855" - integrity sha512-xIKT/ApEQZ9SpNo1CxY7/QIXqnnO+mOR3406uD663NJFrt8SjD2bnThj4HYhqvF+afvy0syBU7LXpjjjC7ZzGg== +"@docusaurus/utils-common@3.3.2": + version "3.3.2" + resolved "https://registry.yarnpkg.com/@docusaurus/utils-common/-/utils-common-3.3.2.tgz#d17868a55a25186bfdb35de317a3878e867f2005" + integrity sha512-QWFTLEkPYsejJsLStgtmetMFIA3pM8EPexcZ4WZ7b++gO5jGVH7zsipREnCHzk6+eDgeaXfkR6UPaTt86bp8Og== dependencies: tslib "^2.6.0" -"@docusaurus/utils-validation@3.3.0": - version "3.3.0" - resolved "https://registry.yarnpkg.com/@docusaurus/utils-validation/-/utils-validation-3.3.0.tgz#993fc34932a81782f454f8f46ea031d8ba748d59" - integrity sha512-8+71Ggk24EtEvrKx9mAJJOEvE4M8WvGmL6CIvFVZuyjlpMtfsKMgASfVaB9LDVA47LzBaOuMFdVt5gNIyYzKsw== +"@docusaurus/utils-validation@3.3.2": + version "3.3.2" + resolved "https://registry.yarnpkg.com/@docusaurus/utils-validation/-/utils-validation-3.3.2.tgz#7109888d9c9b23eec787b41341809438f54c2aec" + integrity sha512-itDgFs5+cbW9REuC7NdXals4V6++KifgVMzoGOOOSIifBQw+8ULhy86u5e1lnptVL0sv8oAjq2alO7I40GR7pA== dependencies: - "@docusaurus/logger" "3.3.0" - "@docusaurus/utils" "3.3.0" - "@docusaurus/utils-common" "3.3.0" + "@docusaurus/logger" "3.3.2" + "@docusaurus/utils" "3.3.2" + "@docusaurus/utils-common" "3.3.2" joi "^17.9.2" js-yaml "^4.1.0" tslib "^2.6.0" -"@docusaurus/utils@3.3.0": - version "3.3.0" - resolved "https://registry.yarnpkg.com/@docusaurus/utils/-/utils-3.3.0.tgz#9a9a261a3fe864eb213cad713bd87d412ace92dc" - integrity sha512-Z2UKiuMDRhVQb2yv6K5fTyHptXLUquEKuuQe+NhkedX7M16lEMUwwKe5W5mM53s0o8BubB20VYuBnMcsxSWirA== +"@docusaurus/utils@3.3.2": + version "3.3.2" + resolved "https://registry.yarnpkg.com/@docusaurus/utils/-/utils-3.3.2.tgz#2571baccb5b7ed53d50b670094139a31a53558df" + integrity sha512-f4YMnBVymtkSxONv4Y8js3Gez9IgHX+Lcg6YRMOjVbq8sgCcdYK1lf6SObAuz5qB/mxiSK7tW0M9aaiIaUSUJg== dependencies: - "@docusaurus/logger" "3.3.0" - "@docusaurus/utils-common" "3.3.0" + "@docusaurus/logger" "3.3.2" + "@docusaurus/utils-common" "3.3.2" "@svgr/webpack" "^8.1.0" escape-string-regexp "^4.0.0" file-loader "^6.2.0" @@ -3009,9 +3009,9 @@ caniuse-api@^3.0.0: lodash.uniq "^4.5.0" caniuse-lite@^1.0.0, caniuse-lite@^1.0.30001587, caniuse-lite@^1.0.30001599: - version "1.0.30001615" - resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001615.tgz#7c2c8772db681b6dee74d81d6550db68f2d28842" - integrity sha512-1IpazM5G3r38meiae0bHRnPhz+CBQ3ZLqbQMtrg+AsTPKAXgW38JNsXkyZ+v8waCsDmPq87lmfun5Q2AGysNEQ== + version "1.0.30001616" + resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001616.tgz#4342712750d35f71ebba9fcac65e2cf8870013c3" + integrity sha512-RHVYKov7IcdNjVHJFNY/78RdG4oGVjbayxv8u5IO74Wv7Hlq4PnJE6mo/OjFijjVFNy5ijnCt6H3IIo4t+wfEw== ccount@^2.0.0: version "2.0.1" @@ -3847,9 +3847,9 @@ ee-first@1.1.1: integrity sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow== electron-to-chromium@^1.4.668: - version "1.4.754" - resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.4.754.tgz#20a9f3cc80e0fb6a804b86605e55da16918a58b0" - integrity sha512-7Kr5jUdns5rL/M9wFFmMZAgFDuL2YOnanFH4OI4iFzUqyh3XOL7nAGbSlSMZdzKMIyyTpNSbqZsWG9odwLeKvA== + version "1.4.756" + resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.4.756.tgz#7b872ed8c8c5bee571be771730225d6d2a37fe45" + integrity sha512-RJKZ9+vEBMeiPAvKNWyZjuYyUqMndcP1f335oHqn3BEQbs2NFtVrnK5+6Xg5wSM9TknNNpWghGDUCKGYF+xWXw== emoji-regex@^8.0.0: version "8.0.0" @@ -8956,9 +8956,9 @@ unpipe@1.0.0, unpipe@~1.0.0: integrity sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ== update-browserslist-db@^1.0.13: - version "1.0.14" - resolved "https://registry.yarnpkg.com/update-browserslist-db/-/update-browserslist-db-1.0.14.tgz#46a9367c323f8ade9a9dddb7f3ae7814b3a0b31c" - integrity sha512-JixKH8GR2pWYshIPUg/NujK3JO7JiqEEUiNArE86NQyrgUuZeTlZQN3xuS/yiV5Kb48ev9K6RqNkaJjXsdg7Jw== + version "1.0.15" + resolved "https://registry.yarnpkg.com/update-browserslist-db/-/update-browserslist-db-1.0.15.tgz#60ed9f8cba4a728b7ecf7356f641a31e3a691d97" + integrity sha512-K9HWH62x3/EalU1U6sjSZiylm9C8tgq2mSvshZpqc7QE69RaA2qjhkW2HlNA0tFpEbtyFz7HTqbSdN4MSwUodA== dependencies: escalade "^3.1.2" picocolors "^1.0.0"