From abee37a52cee48206d9e950861f382ba8f30cdb0 Mon Sep 17 00:00:00 2001 From: cawa Date: Fri, 2 Jun 2023 18:32:48 +0300 Subject: [PATCH] wiping tool added refs #175 @4h --- db_tool/README.md | 8 +- db_tool/main.js | 85 +++++- db_tool/package-lock.json | 609 -------------------------------------- 3 files changed, 86 insertions(+), 616 deletions(-) diff --git a/db_tool/README.md b/db_tool/README.md index 7f0981a..fcec59b 100644 --- a/db_tool/README.md +++ b/db_tool/README.md @@ -1,9 +1,13 @@ -# Mongo buckup tool +# Mongo tools - create backup of database - restore from local folder -**Backups goes to `dump` folder** +**Backups goes to `dumps` folder** + +- clear collection +- drop field from collection + ## Setup diff --git a/db_tool/main.js b/db_tool/main.js index aa0575f..4015220 100644 --- a/db_tool/main.js +++ b/db_tool/main.js @@ -70,6 +70,63 @@ function generateConnectionString({ username, password, host, port }) { return uri; } +async function chooseCollection(client) { + const { databaseName } = await prompt([ + { + type: "list", + name: "databaseName", + message: "Choose a database:", + choices: await client + .db() + .admin() + .listDatabases() + .then(({ databases }) => databases.map(({ name }) => name)), + }, + ]); + const db = await client.db(databaseName); + + let collectionList = await db.listCollections().toArray(); + const collections = collectionList.map(c => c.name); + + const { collectionName } = await prompt([ + { + type: "list", + name: "collectionName", + message: "Choose a collection:", + choices: collections, + }, + ]); + const collection = db.collection(collectionName); + + return collection; +} + +async function chooseField(collection) { + const { fieldName } = await prompt([ + { + type: "input", + name: "fieldName", + message: "Enter a field name:", + }, + ]); + + return fieldName; +} + +async function clearColleciton(collection) { + const result = await collection.deleteMany({}); + console.log(result.deletedCount + " documents deleted"); +} + +async function clearField(collection, field) { + try { + const result = await collection.updateMany({}, { $unset: { [field]: "" } }); + console.log(result.modifiedCount + " documents updated. Deleted field " + field); + } catch (err) { + console.log(err); + } +} + async function main() { try { const credentials = await prompt([ @@ -109,7 +166,7 @@ async function main() { type: "list", name: "action", message: "Choose an action:", - choices: ["Backup", "Restore"], + choices: ["Clear ...", "Backup", "Restore"], }, ]); @@ -151,13 +208,31 @@ async function main() { await client.close(); return; } - } + } else if (action === "Clear ...") { + const { subject } = await prompt([ + { + type: "list", + name: "subject", + message: "Choose what you are going to clean up:", + choices: ["collection", "field"], + }, + ]); - await client.close(); - console.log("Disconnected from MongoDB."); + if (subject === "collection") { + const collection = await chooseCollection(client); + await clearColleciton(collection); + } else if (subject === "field") { + const collection = await chooseCollection(client); + const field = await chooseField(client); + await clearField(collection, field); + } + + await client.close(); + console.log("Disconnected from MongoDB."); + } } catch (error) { console.error("An error occurred:", error); } } -main(); +await main(); diff --git a/db_tool/package-lock.json b/db_tool/package-lock.json index cf30e18..49376e3 100644 --- a/db_tool/package-lock.json +++ b/db_tool/package-lock.json @@ -69,16 +69,6 @@ "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, - "node_modules/async": { - "version": "0.2.10", - "resolved": "https://registry.npmjs.org/async/-/async-0.2.10.tgz", - "integrity": "sha512-eAkdoKxU6/LkKDBzLpT+t6Ff5EtfSF4wx1WfJiPEEV7WNLnDaRXk0oVysiEPm262roaachGexwUv94WhSgN5TQ==" - }, - "node_modules/balanced-match": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", - "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==" - }, "node_modules/base64-js": { "version": "1.5.1", "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz", @@ -98,17 +88,6 @@ } ] }, - "node_modules/basic-authentication": { - "version": "1.5.9", - "resolved": "https://registry.npmjs.org/basic-authentication/-/basic-authentication-1.5.9.tgz", - "integrity": "sha512-umXW2OnbZWtXcev1D7pXHlFp1DRyEeTRqx2YSebofBCBuWLCu16tyvJEBG6zUrVrCUkkjG5/DTBzd3TQUMI9xQ==", - "dependencies": { - "setheaders": "0.0.2" - }, - "engines": { - "node": "^0.10" - } - }, "node_modules/bl": { "version": "4.1.0", "resolved": "https://registry.npmjs.org/bl/-/bl-4.1.0.tgz", @@ -119,26 +98,6 @@ "readable-stream": "^3.4.0" } }, - "node_modules/block-stream": { - "version": "0.0.9", - "resolved": "https://registry.npmjs.org/block-stream/-/block-stream-0.0.9.tgz", - "integrity": "sha512-OorbnJVPII4DuUKbjARAe8u8EfqOmkEEaSFIyoQ7OjTHn6kafxWl0wLgoZ2rXaYd7MyLcDaU4TmhfxtwgcccMQ==", - "dependencies": { - "inherits": "~2.0.0" - }, - "engines": { - "node": "0.4 || >=0.5.8" - } - }, - "node_modules/brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", - "dependencies": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, "node_modules/bson": { "version": "5.3.0", "resolved": "https://registry.npmjs.org/bson/-/bson-5.3.0.tgz", @@ -240,27 +199,6 @@ "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" }, - "node_modules/colors": { - "version": "0.6.2", - "resolved": "https://registry.npmjs.org/colors/-/colors-0.6.2.tgz", - "integrity": "sha512-OsSVtHK8Ir8r3+Fxw/b4jS1ZLPXkV6ZxDRJQzeD7qo0SqMXWrHDM71DgYzPMHY8SFJ0Ao+nNU2p1MmwdzKqPrw==", - "engines": { - "node": ">=0.1.90" - } - }, - "node_modules/concat-map": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", - "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==" - }, - "node_modules/cycle": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/cycle/-/cycle-1.0.3.tgz", - "integrity": "sha512-TVF6svNzeQCOpjCqsy0/CSy8VgObG3wXusJ73xW2GbG5rGx7lC8zxDSURicsXI2UsGdi2L0QNRCi745/wUDvsA==", - "engines": { - "node": ">=0.4.0" - } - }, "node_modules/defaults": { "version": "1.0.4", "resolved": "https://registry.npmjs.org/defaults/-/defaults-1.0.4.tgz", @@ -272,11 +210,6 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/ee-first": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.0.tgz", - "integrity": "sha512-n4X/DaHVKHyDy1Rwuzm1UPjTRIBSarj1BBZ5R5HLOFLn58yhw510qoF1zk94jjkw3mXScdsmMtYCNR1jsAJlEA==" - }, "node_modules/emoji-regex": { "version": "8.0.0", "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", @@ -306,14 +239,6 @@ "node": ">=4" } }, - "node_modules/eyes": { - "version": "0.1.8", - "resolved": "https://registry.npmjs.org/eyes/-/eyes-0.1.8.tgz", - "integrity": "sha512-GipyPsXO1anza0AOZdy69Im7hGFCNB7Y/NGjDlZGJ3GJJLtwNSb2vrzYrTYJRrRloVx7pl+bhUaTB8yiccPvFQ==", - "engines": { - "node": "> 0.1.90" - } - }, "node_modules/figures": { "version": "5.0.0", "resolved": "https://registry.npmjs.org/figures/-/figures-5.0.0.tgz", @@ -329,49 +254,6 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/fs.realpath": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", - "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==" - }, - "node_modules/fstream": { - "version": "1.0.12", - "resolved": "https://registry.npmjs.org/fstream/-/fstream-1.0.12.tgz", - "integrity": "sha512-WvJ193OHa0GHPEL+AycEJgxvBEwyfRkN1vhjca23OaPVMCaLCXTd5qAu82AjTcgP1UJmytkOKb63Ypde7raDIg==", - "dependencies": { - "graceful-fs": "^4.1.2", - "inherits": "~2.0.0", - "mkdirp": ">=0.5 0", - "rimraf": "2" - }, - "engines": { - "node": ">=0.6" - } - }, - "node_modules/glob": { - "version": "7.2.3", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", - "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", - "dependencies": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.1.1", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - }, - "engines": { - "node": "*" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/graceful-fs": { - "version": "4.2.11", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz", - "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==" - }, "node_modules/has-flag": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", @@ -410,15 +292,6 @@ } ] }, - "node_modules/inflight": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", - "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", - "dependencies": { - "once": "^1.3.0", - "wrappy": "1" - } - }, "node_modules/inherits": { "version": "2.0.4", "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", @@ -481,21 +354,6 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/isstream": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz", - "integrity": "sha512-Yljz7ffyPbrLpLngrMtZ7NduUgVvi6wG9RJ9IUcyCd59YQ911PBJphODUcbOVbqYfxe1wuYf/LJ8PauMRwsM/g==" - }, - "node_modules/kerberos": { - "version": "0.0.7", - "resolved": "https://registry.npmjs.org/kerberos/-/kerberos-0.0.7.tgz", - "integrity": "sha512-ZLknDqiRGrs6pYGwvV+2v9qVakTfBXvYV5dkz5MAPPlcsJa+aXR/3muh7aiebrPRQsO2LXxa5i4bV/QUXyt7Eg==", - "hasInstallScript": true, - "optional": true, - "dependencies": { - "nan": "1.3.0" - } - }, "node_modules/lodash": { "version": "4.17.21", "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", @@ -542,20 +400,6 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/logger-request": { - "version": "3.2.5", - "resolved": "https://registry.npmjs.org/logger-request/-/logger-request-3.2.5.tgz", - "integrity": "sha512-cF8ZnvVVMnE2+34LW2HuUjMWo8jttVH4cb5UQx3ACpgFYIzxb7eyJArEYMCC3yIOSDl3GvCGZ3epVXzkCBaEIw==", - "dependencies": { - "basic-authentication": "1.5.9", - "on-finished": "2.2.0", - "transfer-rate": "1.0.4", - "winston": "0.8.3" - }, - "engines": { - "node": "^0.10" - } - }, "node_modules/memory-pager": { "version": "1.5.0", "resolved": "https://registry.npmjs.org/memory-pager/-/memory-pager-1.5.0.tgz", @@ -570,36 +414,6 @@ "node": ">=6" } }, - "node_modules/minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", - "dependencies": { - "brace-expansion": "^1.1.7" - }, - "engines": { - "node": "*" - } - }, - "node_modules/minimist": { - "version": "1.2.8", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.8.tgz", - "integrity": "sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==", - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/mkdirp": { - "version": "0.5.6", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz", - "integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==", - "dependencies": { - "minimist": "^1.2.6" - }, - "bin": { - "mkdirp": "bin/cmd.js" - } - }, "node_modules/moment": { "version": "2.29.4", "resolved": "https://registry.npmjs.org/moment/-/moment-2.29.4.tgz", @@ -649,53 +463,6 @@ "whatwg-url": "^11.0.0" } }, - "node_modules/mongodb-restore": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/mongodb-restore/-/mongodb-restore-0.1.0.tgz", - "integrity": "sha512-Ch0ucFjeNGyB4ufzEPYzf1C05sAjupFJG1TdHGj9Glv/RKNNRTeO8AOUzsi5Iza1WNSqaNCX/S3QB+XRcJrgVw==", - "dependencies": { - "logger-request": "3.2.5", - "mongodb": "1.4.26", - "tar": "1.0.3" - }, - "engines": { - "node": "^0.10" - } - }, - "node_modules/mongodb-restore/node_modules/bson": { - "version": "0.2.22", - "resolved": "https://registry.npmjs.org/bson/-/bson-0.2.22.tgz", - "integrity": "sha512-Je/+cMAEklcr2Dctw7VtlukmotWOwp45w1nsNLtNwH9Tq7N6wKa86oBnf9kRRYzrEuzIAu4MugFP9xJamYhNxw==", - "deprecated": "Fixed a critical issue with BSON serialization documented in CVE-2019-2391, see https://bit.ly/2KcpXdo for more details", - "hasInstallScript": true, - "dependencies": { - "nan": "~1.8" - }, - "engines": { - "node": ">=0.6.19" - } - }, - "node_modules/mongodb-restore/node_modules/mongodb": { - "version": "1.4.26", - "resolved": "https://registry.npmjs.org/mongodb/-/mongodb-1.4.26.tgz", - "integrity": "sha512-BM9qpjjKxKD+hnRaZB2V/0F4l1+XUXqCey/+58leC7altY/KQa1niNpp87ZmAGWyD3c3HiJpJTpe5mD4yCaiiQ==", - "deprecated": "Please upgrade to 2.2.19 or higher", - "dependencies": { - "bson": "~0.2" - }, - "engines": { - "node": ">=0.6.19" - }, - "optionalDependencies": { - "kerberos": "0.0.7", - "readable-stream": "latest" - } - }, - "node_modules/mongodb-restore/node_modules/nan": { - "version": "1.8.4", - "resolved": "https://registry.npmjs.org/nan/-/nan-1.8.4.tgz", - "integrity": "sha512-609zQ1h3ApgH/94qmbbEklSrjcYYXCHnsWk4MAojq4OUk3tidhDYhPaMasMFKsZPZ96r4eQA1hbR2W4H7/77XA==" - }, "node_modules/mute-stream": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-1.0.0.tgz", @@ -704,31 +471,6 @@ "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/nan": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/nan/-/nan-1.3.0.tgz", - "integrity": "sha512-2xPpifjI6OzUZtboDKhRlk9u98eV395Twdp0i0GnwP9PLGpphm4R7Q0wIZXmgmu31ukqUJCg1uXlD44fph/sKg==", - "optional": true - }, - "node_modules/on-finished": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.2.0.tgz", - "integrity": "sha512-BqYzuII3QaxNzOE7ZbFf1z11E6vyo1pkRZ0iGJ3tHj+IbzLLeXXNGMGyauk2f9VaiGEFAKvlcIeMdlvD36OHLQ==", - "dependencies": { - "ee-first": "1.1.0" - }, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/once": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", - "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", - "dependencies": { - "wrappy": "1" - } - }, "node_modules/onetime": { "version": "5.1.2", "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz", @@ -799,22 +541,6 @@ "node": ">=0.10.0" } }, - "node_modules/path-is-absolute": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", - "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/pkginfo": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/pkginfo/-/pkginfo-0.3.1.tgz", - "integrity": "sha512-yO5feByMzAp96LtP58wvPKSbaKAi/1C4kV9XpTctr6EepnP6F33RBNOiVrdz9BrPA98U2BMFsTNHo44TWcbQ2A==", - "engines": { - "node": ">= 0.4.0" - } - }, "node_modules/punycode": { "version": "2.3.0", "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.0.tgz", @@ -848,17 +574,6 @@ "node": ">=8" } }, - "node_modules/rimraf": { - "version": "2.7.1", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", - "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", - "dependencies": { - "glob": "^7.1.3" - }, - "bin": { - "rimraf": "bin.js" - } - }, "node_modules/run-async": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/run-async/-/run-async-3.0.0.tgz", @@ -911,14 +626,6 @@ "node": ">=6" } }, - "node_modules/setheaders": { - "version": "0.0.2", - "resolved": "https://registry.npmjs.org/setheaders/-/setheaders-0.0.2.tgz", - "integrity": "sha512-9mtKLj5a1A+ozSyMBl/UsHagxE/tYVL3s4aGpmLDmQlw81+hPzZZSW4V5hWeMZgpjt+D4x1xCKxs3D2e1TBI4Q==", - "engines": { - "node": "^0.10" - } - }, "node_modules/signal-exit": { "version": "3.0.7", "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", @@ -955,14 +662,6 @@ "memory-pager": "^1.0.2" } }, - "node_modules/stack-trace": { - "version": "0.0.10", - "resolved": "https://registry.npmjs.org/stack-trace/-/stack-trace-0.0.10.tgz", - "integrity": "sha512-KGzahc7puUKkzyMt+IqAep+TVNbKP+k2Lmwhub39m1AsTSkaDutx56aDCo+HLDzf/D26BIHTJWNiTG1KAJiQCg==", - "engines": { - "node": "*" - } - }, "node_modules/string_decoder": { "version": "1.3.0", "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", @@ -1006,17 +705,6 @@ "node": ">=8" } }, - "node_modules/tar": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/tar/-/tar-1.0.3.tgz", - "integrity": "sha512-/quI12ZS9lw9pGwkxXrSicTSwujEDJWdGLLlzRG6SR7Yih11Efy3paaKof6TUqf1emBIt3z/Ua5qFxpm9JCTbg==", - "deprecated": "This version of tar is no longer supported, and will not receive security updates. Please upgrade asap.", - "dependencies": { - "block-stream": "*", - "fstream": "^1.0.2", - "inherits": "2" - } - }, "node_modules/through": { "version": "2.3.8", "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz", @@ -1044,14 +732,6 @@ "node": ">=12" } }, - "node_modules/transfer-rate": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/transfer-rate/-/transfer-rate-1.0.4.tgz", - "integrity": "sha512-Knuh90+4zmSpxZ2ZltkmdOQaTqxkBGJ5gcK/r5zfixXhRKTVaZymhUM2Zvh0dBUmYQ/SUB1LGr89PjZPU0YF4A==", - "engines": { - "node": "^0.10" - } - }, "node_modules/tslib": { "version": "2.5.2", "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.5.2.tgz", @@ -1101,23 +781,6 @@ "node": ">=12" } }, - "node_modules/winston": { - "version": "0.8.3", - "resolved": "https://registry.npmjs.org/winston/-/winston-0.8.3.tgz", - "integrity": "sha512-fPoamsHq8leJ62D1M9V/f15mjQ1UHe4+7j1wpAT3fqgA5JqhJkk4aIfPEjfMTI9x6ZTjaLOpMAjluLtmgO5b6g==", - "dependencies": { - "async": "0.2.x", - "colors": "0.6.x", - "cycle": "1.0.x", - "eyes": "0.1.x", - "isstream": "0.1.x", - "pkginfo": "0.3.x", - "stack-trace": "0.0.x" - }, - "engines": { - "node": ">= 0.6.0" - } - }, "node_modules/wrap-ansi": { "version": "6.2.0", "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-6.2.0.tgz", @@ -1130,11 +793,6 @@ "engines": { "node": ">=8" } - }, - "node_modules/wrappy": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", - "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==" } }, "dependencies": { @@ -1178,29 +836,11 @@ "color-convert": "^2.0.1" } }, - "async": { - "version": "0.2.10", - "resolved": "https://registry.npmjs.org/async/-/async-0.2.10.tgz", - "integrity": "sha512-eAkdoKxU6/LkKDBzLpT+t6Ff5EtfSF4wx1WfJiPEEV7WNLnDaRXk0oVysiEPm262roaachGexwUv94WhSgN5TQ==" - }, - "balanced-match": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", - "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==" - }, "base64-js": { "version": "1.5.1", "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz", "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==" }, - "basic-authentication": { - "version": "1.5.9", - "resolved": "https://registry.npmjs.org/basic-authentication/-/basic-authentication-1.5.9.tgz", - "integrity": "sha512-umXW2OnbZWtXcev1D7pXHlFp1DRyEeTRqx2YSebofBCBuWLCu16tyvJEBG6zUrVrCUkkjG5/DTBzd3TQUMI9xQ==", - "requires": { - "setheaders": "0.0.2" - } - }, "bl": { "version": "4.1.0", "resolved": "https://registry.npmjs.org/bl/-/bl-4.1.0.tgz", @@ -1211,23 +851,6 @@ "readable-stream": "^3.4.0" } }, - "block-stream": { - "version": "0.0.9", - "resolved": "https://registry.npmjs.org/block-stream/-/block-stream-0.0.9.tgz", - "integrity": "sha512-OorbnJVPII4DuUKbjARAe8u8EfqOmkEEaSFIyoQ7OjTHn6kafxWl0wLgoZ2rXaYd7MyLcDaU4TmhfxtwgcccMQ==", - "requires": { - "inherits": "~2.0.0" - } - }, - "brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", - "requires": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, "bson": { "version": "5.3.0", "resolved": "https://registry.npmjs.org/bson/-/bson-5.3.0.tgz", @@ -1288,21 +911,6 @@ "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" }, - "colors": { - "version": "0.6.2", - "resolved": "https://registry.npmjs.org/colors/-/colors-0.6.2.tgz", - "integrity": "sha512-OsSVtHK8Ir8r3+Fxw/b4jS1ZLPXkV6ZxDRJQzeD7qo0SqMXWrHDM71DgYzPMHY8SFJ0Ao+nNU2p1MmwdzKqPrw==" - }, - "concat-map": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", - "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==" - }, - "cycle": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/cycle/-/cycle-1.0.3.tgz", - "integrity": "sha512-TVF6svNzeQCOpjCqsy0/CSy8VgObG3wXusJ73xW2GbG5rGx7lC8zxDSURicsXI2UsGdi2L0QNRCi745/wUDvsA==" - }, "defaults": { "version": "1.0.4", "resolved": "https://registry.npmjs.org/defaults/-/defaults-1.0.4.tgz", @@ -1311,11 +919,6 @@ "clone": "^1.0.2" } }, - "ee-first": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.0.tgz", - "integrity": "sha512-n4X/DaHVKHyDy1Rwuzm1UPjTRIBSarj1BBZ5R5HLOFLn58yhw510qoF1zk94jjkw3mXScdsmMtYCNR1jsAJlEA==" - }, "emoji-regex": { "version": "8.0.0", "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", @@ -1336,11 +939,6 @@ "tmp": "^0.0.33" } }, - "eyes": { - "version": "0.1.8", - "resolved": "https://registry.npmjs.org/eyes/-/eyes-0.1.8.tgz", - "integrity": "sha512-GipyPsXO1anza0AOZdy69Im7hGFCNB7Y/NGjDlZGJ3GJJLtwNSb2vrzYrTYJRrRloVx7pl+bhUaTB8yiccPvFQ==" - }, "figures": { "version": "5.0.0", "resolved": "https://registry.npmjs.org/figures/-/figures-5.0.0.tgz", @@ -1350,40 +948,6 @@ "is-unicode-supported": "^1.2.0" } }, - "fs.realpath": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", - "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==" - }, - "fstream": { - "version": "1.0.12", - "resolved": "https://registry.npmjs.org/fstream/-/fstream-1.0.12.tgz", - "integrity": "sha512-WvJ193OHa0GHPEL+AycEJgxvBEwyfRkN1vhjca23OaPVMCaLCXTd5qAu82AjTcgP1UJmytkOKb63Ypde7raDIg==", - "requires": { - "graceful-fs": "^4.1.2", - "inherits": "~2.0.0", - "mkdirp": ">=0.5 0", - "rimraf": "2" - } - }, - "glob": { - "version": "7.2.3", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", - "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", - "requires": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.1.1", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - } - }, - "graceful-fs": { - "version": "4.2.11", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz", - "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==" - }, "has-flag": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", @@ -1402,15 +966,6 @@ "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz", "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==" }, - "inflight": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", - "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", - "requires": { - "once": "^1.3.0", - "wrappy": "1" - } - }, "inherits": { "version": "2.0.4", "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", @@ -1458,20 +1013,6 @@ "resolved": "https://registry.npmjs.org/is-unicode-supported/-/is-unicode-supported-1.3.0.tgz", "integrity": "sha512-43r2mRvz+8JRIKnWJ+3j8JtjRKZ6GmjzfaE/qiBJnikNnYv/6bagRJ1kUhNk8R5EX/GkobD+r+sfxCPJsiKBLQ==" }, - "isstream": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz", - "integrity": "sha512-Yljz7ffyPbrLpLngrMtZ7NduUgVvi6wG9RJ9IUcyCd59YQ911PBJphODUcbOVbqYfxe1wuYf/LJ8PauMRwsM/g==" - }, - "kerberos": { - "version": "0.0.7", - "resolved": "https://registry.npmjs.org/kerberos/-/kerberos-0.0.7.tgz", - "integrity": "sha512-ZLknDqiRGrs6pYGwvV+2v9qVakTfBXvYV5dkz5MAPPlcsJa+aXR/3muh7aiebrPRQsO2LXxa5i4bV/QUXyt7Eg==", - "optional": true, - "requires": { - "nan": "1.3.0" - } - }, "lodash": { "version": "4.17.21", "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", @@ -1502,17 +1043,6 @@ } } }, - "logger-request": { - "version": "3.2.5", - "resolved": "https://registry.npmjs.org/logger-request/-/logger-request-3.2.5.tgz", - "integrity": "sha512-cF8ZnvVVMnE2+34LW2HuUjMWo8jttVH4cb5UQx3ACpgFYIzxb7eyJArEYMCC3yIOSDl3GvCGZ3epVXzkCBaEIw==", - "requires": { - "basic-authentication": "1.5.9", - "on-finished": "2.2.0", - "transfer-rate": "1.0.4", - "winston": "0.8.3" - } - }, "memory-pager": { "version": "1.5.0", "resolved": "https://registry.npmjs.org/memory-pager/-/memory-pager-1.5.0.tgz", @@ -1524,27 +1054,6 @@ "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz", "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==" }, - "minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", - "requires": { - "brace-expansion": "^1.1.7" - } - }, - "minimist": { - "version": "1.2.8", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.8.tgz", - "integrity": "sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==" - }, - "mkdirp": { - "version": "0.5.6", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz", - "integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==", - "requires": { - "minimist": "^1.2.6" - } - }, "moment": { "version": "2.29.4", "resolved": "https://registry.npmjs.org/moment/-/moment-2.29.4.tgz", @@ -1570,67 +1079,11 @@ "whatwg-url": "^11.0.0" } }, - "mongodb-restore": { - "version": "https://registry.npmjs.org/mongodb-restore/-/mongodb-restore-0.1.0.tgz", - "integrity": "sha512-Ch0ucFjeNGyB4ufzEPYzf1C05sAjupFJG1TdHGj9Glv/RKNNRTeO8AOUzsi5Iza1WNSqaNCX/S3QB+XRcJrgVw==", - "requires": { - "logger-request": "3.2.5", - "mongodb": "1.4.26", - "tar": "1.0.3" - }, - "dependencies": { - "bson": { - "version": "0.2.22", - "resolved": "https://registry.npmjs.org/bson/-/bson-0.2.22.tgz", - "integrity": "sha512-Je/+cMAEklcr2Dctw7VtlukmotWOwp45w1nsNLtNwH9Tq7N6wKa86oBnf9kRRYzrEuzIAu4MugFP9xJamYhNxw==", - "requires": { - "nan": "~1.8" - } - }, - "mongodb": { - "version": "1.4.26", - "resolved": "https://registry.npmjs.org/mongodb/-/mongodb-1.4.26.tgz", - "integrity": "sha512-BM9qpjjKxKD+hnRaZB2V/0F4l1+XUXqCey/+58leC7altY/KQa1niNpp87ZmAGWyD3c3HiJpJTpe5mD4yCaiiQ==", - "requires": { - "bson": "~0.2", - "kerberos": "0.0.7", - "readable-stream": "latest" - } - }, - "nan": { - "version": "1.8.4", - "resolved": "https://registry.npmjs.org/nan/-/nan-1.8.4.tgz", - "integrity": "sha512-609zQ1h3ApgH/94qmbbEklSrjcYYXCHnsWk4MAojq4OUk3tidhDYhPaMasMFKsZPZ96r4eQA1hbR2W4H7/77XA==" - } - } - }, "mute-stream": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-1.0.0.tgz", "integrity": "sha512-avsJQhyd+680gKXyG/sQc0nXaC6rBkPOfyHYcFb9+hdkqQkR9bdnkJ0AMZhke0oesPqIO+mFFJ+IdBc7mst4IA==" }, - "nan": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/nan/-/nan-1.3.0.tgz", - "integrity": "sha512-2xPpifjI6OzUZtboDKhRlk9u98eV395Twdp0i0GnwP9PLGpphm4R7Q0wIZXmgmu31ukqUJCg1uXlD44fph/sKg==", - "optional": true - }, - "on-finished": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.2.0.tgz", - "integrity": "sha512-BqYzuII3QaxNzOE7ZbFf1z11E6vyo1pkRZ0iGJ3tHj+IbzLLeXXNGMGyauk2f9VaiGEFAKvlcIeMdlvD36OHLQ==", - "requires": { - "ee-first": "1.1.0" - } - }, - "once": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", - "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", - "requires": { - "wrappy": "1" - } - }, "onetime": { "version": "5.1.2", "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz", @@ -1676,16 +1129,6 @@ "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz", "integrity": "sha512-D2FR03Vir7FIu45XBY20mTb+/ZSWB00sjU9jdQXt83gDrI4Ztz5Fs7/yy74g2N5SVQY4xY1qDr4rNddwYRVX0g==" }, - "path-is-absolute": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", - "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==" - }, - "pkginfo": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/pkginfo/-/pkginfo-0.3.1.tgz", - "integrity": "sha512-yO5feByMzAp96LtP58wvPKSbaKAi/1C4kV9XpTctr6EepnP6F33RBNOiVrdz9BrPA98U2BMFsTNHo44TWcbQ2A==" - }, "punycode": { "version": "2.3.0", "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.0.tgz", @@ -1710,14 +1153,6 @@ "signal-exit": "^3.0.2" } }, - "rimraf": { - "version": "2.7.1", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", - "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", - "requires": { - "glob": "^7.1.3" - } - }, "run-async": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/run-async/-/run-async-3.0.0.tgz", @@ -1750,11 +1185,6 @@ "sparse-bitfield": "^3.0.3" } }, - "setheaders": { - "version": "0.0.2", - "resolved": "https://registry.npmjs.org/setheaders/-/setheaders-0.0.2.tgz", - "integrity": "sha512-9mtKLj5a1A+ozSyMBl/UsHagxE/tYVL3s4aGpmLDmQlw81+hPzZZSW4V5hWeMZgpjt+D4x1xCKxs3D2e1TBI4Q==" - }, "signal-exit": { "version": "3.0.7", "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", @@ -1783,11 +1213,6 @@ "memory-pager": "^1.0.2" } }, - "stack-trace": { - "version": "0.0.10", - "resolved": "https://registry.npmjs.org/stack-trace/-/stack-trace-0.0.10.tgz", - "integrity": "sha512-KGzahc7puUKkzyMt+IqAep+TVNbKP+k2Lmwhub39m1AsTSkaDutx56aDCo+HLDzf/D26BIHTJWNiTG1KAJiQCg==" - }, "string_decoder": { "version": "1.3.0", "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", @@ -1822,16 +1247,6 @@ "has-flag": "^4.0.0" } }, - "tar": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/tar/-/tar-1.0.3.tgz", - "integrity": "sha512-/quI12ZS9lw9pGwkxXrSicTSwujEDJWdGLLlzRG6SR7Yih11Efy3paaKof6TUqf1emBIt3z/Ua5qFxpm9JCTbg==", - "requires": { - "block-stream": "*", - "fstream": "^1.0.2", - "inherits": "2" - } - }, "through": { "version": "2.3.8", "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz", @@ -1853,11 +1268,6 @@ "punycode": "^2.1.1" } }, - "transfer-rate": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/transfer-rate/-/transfer-rate-1.0.4.tgz", - "integrity": "sha512-Knuh90+4zmSpxZ2ZltkmdOQaTqxkBGJ5gcK/r5zfixXhRKTVaZymhUM2Zvh0dBUmYQ/SUB1LGr89PjZPU0YF4A==" - }, "tslib": { "version": "2.5.2", "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.5.2.tgz", @@ -1895,20 +1305,6 @@ "webidl-conversions": "^7.0.0" } }, - "winston": { - "version": "0.8.3", - "resolved": "https://registry.npmjs.org/winston/-/winston-0.8.3.tgz", - "integrity": "sha512-fPoamsHq8leJ62D1M9V/f15mjQ1UHe4+7j1wpAT3fqgA5JqhJkk4aIfPEjfMTI9x6ZTjaLOpMAjluLtmgO5b6g==", - "requires": { - "async": "0.2.x", - "colors": "0.6.x", - "cycle": "1.0.x", - "eyes": "0.1.x", - "isstream": "0.1.x", - "pkginfo": "0.3.x", - "stack-trace": "0.0.x" - } - }, "wrap-ansi": { "version": "6.2.0", "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-6.2.0.tgz", @@ -1918,11 +1314,6 @@ "string-width": "^4.1.0", "strip-ansi": "^6.0.0" } - }, - "wrappy": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", - "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==" } } }