diff --git a/.env.example b/.env.example index f692e16..d4ec083 100644 --- a/.env.example +++ b/.env.example @@ -1,10 +1,15 @@ DISCORD_TOKEN= MONGO_TOKEN= GIPHY_TOKEN= -TOPGG_TOKEN= +WEBHOOK_ID= +WEBHOOK_TOKEN= + +# Not neccessary variables +DISCORD_STATUS="Listening to meself, I'm a stupid bot, https://github.com/corwindev/discord-bot" RADIO= +TOPGG_TOKEN= SPOTIFY_CLIENT_ID= SPOTIFY_CLIENT_SECRET= -LAVALINK_HOST= -LAVALINK_PASSWORD= -LAVALINK_PORT= \ No newline at end of file +LAVALINK_HOST=lava.link +LAVALINK_PASSWORD=I'm a secret +LAVALINK_PORT=80 \ No newline at end of file diff --git a/.gitignore b/.gitignore index 6704566..5d847b3 100644 --- a/.gitignore +++ b/.gitignore @@ -102,3 +102,5 @@ dist # TernJS port file .tern-port + +src/config/* \ No newline at end of file diff --git a/.replit b/.replit new file mode 100644 index 0000000..713aa2a --- /dev/null +++ b/.replit @@ -0,0 +1,83 @@ +hidden = [".config"] +run = "npm run start" + +[env] +DISCORD_TOKEN = "fillin" +MONGO_TOKEN = "fillin" +GIPHY_TOKEN = "fillin" +WEBHOOK_ID = "fillin" +WEBHOOK_TOKEN = "fillin" + +[[hints]] +regex = "Error \\[ERR_REQUIRE_ESM\\]" +message = "We see that you are using require(...) inside your code. We currently do not support this syntax. Please use 'import' instead when using external modules. (https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/import)" + +[nix] +channel = "stable-22_05" + +[env] +XDG_CONFIG_HOME = "/home/runner/.config" +PATH = "/home/runner/$REPL_SLUG/.config/npm/node_global/bin:/home/runner/$REPL_SLUG/node_modules/.bin" +npm_config_prefix = "/home/runner/$REPL_SLUG/.config/npm/node_global" + +[gitHubImport] +requiredFiles = [".replit", "replit.nix", ".config"] + +[packager] +language = "nodejs" + +[packager.features] +packageSearch = true +guessImports = true +enabledForHosting = false + +[unitTest] +language = "nodejs" + +[debugger] +support = true + +[debugger.interactive] +transport = "localhost:0" +startCommand = ["dap-node"] + +[debugger.interactive.initializeMessage] +command = "initialize" +type = "request" + +[debugger.interactive.initializeMessage.arguments] +clientID = "replit" +clientName = "replit.com" +columnsStartAt1 = true +linesStartAt1 = true +locale = "en-us" +pathFormat = "path" +supportsInvalidatedEvent = true +supportsProgressReporting = true +supportsRunInTerminalRequest = true +supportsVariablePaging = true +supportsVariableType = true + +[debugger.interactive.launchMessage] +command = "launch" +type = "request" + +[debugger.interactive.launchMessage.arguments] +args = [] +console = "externalTerminal" +cwd = "." +environment = [] +pauseForSourceMap = false +program = "./index.js" +request = "launch" +sourceMaps = true +stopOnEntry = false +type = "pwa-node" + +[languages] + +[languages.javascript] +pattern = "**/{*.js,*.jsx,*.ts,*.tsx}" + +[languages.javascript.languageServer] +start = "typescript-language-server --stdio" diff --git a/.replit.nix b/.replit.nix new file mode 100644 index 0000000..e69de29 diff --git a/package-lock.json b/package-lock.json index 8ce4c2e..18555da 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,149 +1,1196 @@ { "name": "discordbot", - "version": "9.0.4", + "version": "10.0.0", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "discordbot", - "version": "9.0.4", + "version": "10.0.0", "license": "ISC", "dependencies": { - "@discordjs/builders": "^0.11.0", - "@discordjs/rest": "^0.1.0-canary.0", - "@discordjs/voice": "^0.7.5", + "@discordjs/voice": "^0.14.0", "@haileybot/captcha-generator": "^1.7.0", - "@iamtraction/google-translate": "^1.1.2", + "@iamtraction/google-translate": "^2.0.1", "@top-gg/sdk": "^3.1.3", - "axios": "^0.24.0", - "canvacord": "^5.2.3", + "axios": "^1.2.1", + "canvacord": "^5.4.8", "chalk": "^4.1.2", - "discord-api-types": "^0.26.0", - "discord-giveaways": "^5.1.1", - "discord-image-generation": "^1.4.9", - "discord.js": "^13.5.1", - "dompurify": "^2.3.5", - "dotenv": "^10.0.0", - "erela.js": "^2.3.3", + "discord-giveaways": "^6.0.1", + "discord-image-generation": "^1.4.15", + "discord.js": "^14.7.1", + "dompurify": "^2.4.1", + "dotenv": "^16.0.3", + "erela.js": "^2.4.0", "erela.js-apple": "^1.2.6", "erela.js-deezer": "^1.0.7", "erela.js-facebook": "^1.0.4", "erela.js-spotify": "^1.2.0", "figlet": "^1.5.2", "fs": "^0.0.1-security", - "generate-password": "^1.6.1", + "generate-password": "^1.7.0", "giphy-api": "^2.0.2", "hdqwalls-wrapper": "^1.0.4", "he": "^1.2.0", - "html-entities": "^2.3.2", + "html-entities": "^2.3.3", "i": "^0.3.7", "is-hexcolor": "^1.0.0", "isgd": "^1.1.3", - "jsdom": "^18.1.0", - "libsodium-wrappers": "^0.7.9", + "jsdom": "^20.0.3", + "libsodium-wrappers": "^0.7.10", "lyrics-finder": "^21.7.0", - "mathjs": "^10.0.2", - "moment": "^2.29.1", + "mathjs": "^11.5.0", + "moment": "^2.29.4", "moment-duration-format": "^2.3.2", - "moment-timezone": "^0.5.33", - "mongoose": "^6.0.13", + "moment-timezone": "^0.5.39", + "mongoose": "^6.8.0", "ms": "^2.1.3", - "npm": "^8.3.0", - "popcat-wrapper": "^1.5.0", - "sourcebin": "^4.2.5", + "npm": "^9.2.0", + "popcat-wrapper": "^1.5.4", + "sourcebin": "^5.0.0", "topgg-autoposter": "^2.0.1", - "util": "^0.12.4", + "util": "^0.12.5", "weather-js": "^2.0.0", - "ytdl-core": "^4.9.2" + "ytdl-core": "^4.11.2" + } + }, + "node_modules/@aws-crypto/ie11-detection": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/@aws-crypto/ie11-detection/-/ie11-detection-2.0.2.tgz", + "integrity": "sha512-5XDMQY98gMAf/WRTic5G++jfmS/VLM0rwpiOpaainKi4L0nqWMSB1SzsrEG5rjFZGYN6ZAefO+/Yta2dFM0kMw==", + "optional": true, + "dependencies": { + "tslib": "^1.11.1" + } + }, + "node_modules/@aws-crypto/ie11-detection/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", + "optional": true + }, + "node_modules/@aws-crypto/sha256-browser": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@aws-crypto/sha256-browser/-/sha256-browser-2.0.0.tgz", + "integrity": "sha512-rYXOQ8BFOaqMEHJrLHul/25ckWH6GTJtdLSajhlqGMx0PmSueAuvboCuZCTqEKlxR8CQOwRarxYMZZSYlhRA1A==", + "optional": true, + "dependencies": { + "@aws-crypto/ie11-detection": "^2.0.0", + "@aws-crypto/sha256-js": "^2.0.0", + "@aws-crypto/supports-web-crypto": "^2.0.0", + "@aws-crypto/util": "^2.0.0", + "@aws-sdk/types": "^3.1.0", + "@aws-sdk/util-locate-window": "^3.0.0", + "@aws-sdk/util-utf8-browser": "^3.0.0", + "tslib": "^1.11.1" + } + }, + "node_modules/@aws-crypto/sha256-browser/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", + "optional": true + }, + "node_modules/@aws-crypto/sha256-js": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@aws-crypto/sha256-js/-/sha256-js-2.0.0.tgz", + "integrity": "sha512-VZY+mCY4Nmrs5WGfitmNqXzaE873fcIZDu54cbaDaaamsaTOP1DBImV9F4pICc3EHjQXujyE8jig+PFCaew9ig==", + "optional": true, + "dependencies": { + "@aws-crypto/util": "^2.0.0", + "@aws-sdk/types": "^3.1.0", + "tslib": "^1.11.1" + } + }, + "node_modules/@aws-crypto/sha256-js/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", + "optional": true + }, + "node_modules/@aws-crypto/supports-web-crypto": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/@aws-crypto/supports-web-crypto/-/supports-web-crypto-2.0.2.tgz", + "integrity": "sha512-6mbSsLHwZ99CTOOswvCRP3C+VCWnzBf+1SnbWxzzJ9lR0mA0JnY2JEAhp8rqmTE0GPFy88rrM27ffgp62oErMQ==", + "optional": true, + "dependencies": { + "tslib": "^1.11.1" + } + }, + "node_modules/@aws-crypto/supports-web-crypto/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", + "optional": true + }, + "node_modules/@aws-crypto/util": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/@aws-crypto/util/-/util-2.0.2.tgz", + "integrity": "sha512-Lgu5v/0e/BcrZ5m/IWqzPUf3UYFTy/PpeED+uc9SWUR1iZQL8XXbGQg10UfllwwBryO3hFF5dizK+78aoXC1eA==", + "optional": true, + "dependencies": { + "@aws-sdk/types": "^3.110.0", + "@aws-sdk/util-utf8-browser": "^3.0.0", + "tslib": "^1.11.1" + } + }, + "node_modules/@aws-crypto/util/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", + "optional": true + }, + "node_modules/@aws-sdk/abort-controller": { + "version": "3.226.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/abort-controller/-/abort-controller-3.226.0.tgz", + "integrity": "sha512-cJVzr1xxPBd08voknXvR0RLgtZKGKt6WyDpH/BaPCu3rfSqWCDZKzwqe940eqosjmKrxC6pUZNKASIqHOQ8xxQ==", + "optional": true, + "dependencies": { + "@aws-sdk/types": "3.226.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/client-cognito-identity": { + "version": "3.226.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-cognito-identity/-/client-cognito-identity-3.226.0.tgz", + "integrity": "sha512-f97yYtFN2YyVLCkDM51yLakb5NKy9gTSSXWe9mA9rgynLPfgsJbIHXv3zr1Qg0Ay0p4j1eLYukLaVw1MKlHDgw==", + "optional": true, + "dependencies": { + "@aws-crypto/sha256-browser": "2.0.0", + "@aws-crypto/sha256-js": "2.0.0", + "@aws-sdk/client-sts": "3.226.0", + "@aws-sdk/config-resolver": "3.226.0", + "@aws-sdk/credential-provider-node": "3.226.0", + "@aws-sdk/fetch-http-handler": "3.226.0", + "@aws-sdk/hash-node": "3.226.0", + "@aws-sdk/invalid-dependency": "3.226.0", + "@aws-sdk/middleware-content-length": "3.226.0", + "@aws-sdk/middleware-endpoint": "3.226.0", + "@aws-sdk/middleware-host-header": "3.226.0", + "@aws-sdk/middleware-logger": "3.226.0", + "@aws-sdk/middleware-recursion-detection": "3.226.0", + "@aws-sdk/middleware-retry": "3.226.0", + "@aws-sdk/middleware-serde": "3.226.0", + "@aws-sdk/middleware-signing": "3.226.0", + "@aws-sdk/middleware-stack": "3.226.0", + "@aws-sdk/middleware-user-agent": "3.226.0", + "@aws-sdk/node-config-provider": "3.226.0", + "@aws-sdk/node-http-handler": "3.226.0", + "@aws-sdk/protocol-http": "3.226.0", + "@aws-sdk/smithy-client": "3.226.0", + "@aws-sdk/types": "3.226.0", + "@aws-sdk/url-parser": "3.226.0", + "@aws-sdk/util-base64": "3.208.0", + "@aws-sdk/util-body-length-browser": "3.188.0", + "@aws-sdk/util-body-length-node": "3.208.0", + "@aws-sdk/util-defaults-mode-browser": "3.226.0", + "@aws-sdk/util-defaults-mode-node": "3.226.0", + "@aws-sdk/util-endpoints": "3.226.0", + "@aws-sdk/util-user-agent-browser": "3.226.0", + "@aws-sdk/util-user-agent-node": "3.226.0", + "@aws-sdk/util-utf8-browser": "3.188.0", + "@aws-sdk/util-utf8-node": "3.208.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/client-sso": { + "version": "3.226.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-sso/-/client-sso-3.226.0.tgz", + "integrity": "sha512-+Hl1YSLKrxPnQLijhWryI6uV8eKZIsUhvWlzFKx75kjxzjsC/jyk5zV59jnCu0SCCepXB8DKyLVa2WpH7iAHew==", + "optional": true, + "dependencies": { + "@aws-crypto/sha256-browser": "2.0.0", + "@aws-crypto/sha256-js": "2.0.0", + "@aws-sdk/config-resolver": "3.226.0", + "@aws-sdk/fetch-http-handler": "3.226.0", + "@aws-sdk/hash-node": "3.226.0", + "@aws-sdk/invalid-dependency": "3.226.0", + "@aws-sdk/middleware-content-length": "3.226.0", + "@aws-sdk/middleware-endpoint": "3.226.0", + "@aws-sdk/middleware-host-header": "3.226.0", + "@aws-sdk/middleware-logger": "3.226.0", + "@aws-sdk/middleware-recursion-detection": "3.226.0", + "@aws-sdk/middleware-retry": "3.226.0", + "@aws-sdk/middleware-serde": "3.226.0", + "@aws-sdk/middleware-stack": "3.226.0", + "@aws-sdk/middleware-user-agent": "3.226.0", + "@aws-sdk/node-config-provider": "3.226.0", + "@aws-sdk/node-http-handler": "3.226.0", + "@aws-sdk/protocol-http": "3.226.0", + "@aws-sdk/smithy-client": "3.226.0", + "@aws-sdk/types": "3.226.0", + "@aws-sdk/url-parser": "3.226.0", + "@aws-sdk/util-base64": "3.208.0", + "@aws-sdk/util-body-length-browser": "3.188.0", + "@aws-sdk/util-body-length-node": "3.208.0", + "@aws-sdk/util-defaults-mode-browser": "3.226.0", + "@aws-sdk/util-defaults-mode-node": "3.226.0", + "@aws-sdk/util-endpoints": "3.226.0", + "@aws-sdk/util-user-agent-browser": "3.226.0", + "@aws-sdk/util-user-agent-node": "3.226.0", + "@aws-sdk/util-utf8-browser": "3.188.0", + "@aws-sdk/util-utf8-node": "3.208.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/client-sso-oidc": { + "version": "3.226.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-sso-oidc/-/client-sso-oidc-3.226.0.tgz", + "integrity": "sha512-IKzAhL6RoPs7IZ/rJvekjedQ4oesazCO+Aqh9l2Xct+XY0MFBdh4amgg4t/8fjksfIzmJH48BZoNv5gVak6yRw==", + "optional": true, + "dependencies": { + "@aws-crypto/sha256-browser": "2.0.0", + "@aws-crypto/sha256-js": "2.0.0", + "@aws-sdk/config-resolver": "3.226.0", + "@aws-sdk/fetch-http-handler": "3.226.0", + "@aws-sdk/hash-node": "3.226.0", + "@aws-sdk/invalid-dependency": "3.226.0", + "@aws-sdk/middleware-content-length": "3.226.0", + "@aws-sdk/middleware-endpoint": "3.226.0", + "@aws-sdk/middleware-host-header": "3.226.0", + "@aws-sdk/middleware-logger": "3.226.0", + "@aws-sdk/middleware-recursion-detection": "3.226.0", + "@aws-sdk/middleware-retry": "3.226.0", + "@aws-sdk/middleware-serde": "3.226.0", + "@aws-sdk/middleware-stack": "3.226.0", + "@aws-sdk/middleware-user-agent": "3.226.0", + "@aws-sdk/node-config-provider": "3.226.0", + "@aws-sdk/node-http-handler": "3.226.0", + "@aws-sdk/protocol-http": "3.226.0", + "@aws-sdk/smithy-client": "3.226.0", + "@aws-sdk/types": "3.226.0", + "@aws-sdk/url-parser": "3.226.0", + "@aws-sdk/util-base64": "3.208.0", + "@aws-sdk/util-body-length-browser": "3.188.0", + "@aws-sdk/util-body-length-node": "3.208.0", + "@aws-sdk/util-defaults-mode-browser": "3.226.0", + "@aws-sdk/util-defaults-mode-node": "3.226.0", + "@aws-sdk/util-endpoints": "3.226.0", + "@aws-sdk/util-user-agent-browser": "3.226.0", + "@aws-sdk/util-user-agent-node": "3.226.0", + "@aws-sdk/util-utf8-browser": "3.188.0", + "@aws-sdk/util-utf8-node": "3.208.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/client-sts": { + "version": "3.226.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-sts/-/client-sts-3.226.0.tgz", + "integrity": "sha512-ZBlqRVbnHvvbkN5g56+mXltNybHNzgV69+2ARubQ8ge9U2qF/LweCmGqZnZLWqdGXwaB9IOvz5ZW2npyJh1X/A==", + "optional": true, + "dependencies": { + "@aws-crypto/sha256-browser": "2.0.0", + "@aws-crypto/sha256-js": "2.0.0", + "@aws-sdk/config-resolver": "3.226.0", + "@aws-sdk/credential-provider-node": "3.226.0", + "@aws-sdk/fetch-http-handler": "3.226.0", + "@aws-sdk/hash-node": "3.226.0", + "@aws-sdk/invalid-dependency": "3.226.0", + "@aws-sdk/middleware-content-length": "3.226.0", + "@aws-sdk/middleware-endpoint": "3.226.0", + "@aws-sdk/middleware-host-header": "3.226.0", + "@aws-sdk/middleware-logger": "3.226.0", + "@aws-sdk/middleware-recursion-detection": "3.226.0", + "@aws-sdk/middleware-retry": "3.226.0", + "@aws-sdk/middleware-sdk-sts": "3.226.0", + "@aws-sdk/middleware-serde": "3.226.0", + "@aws-sdk/middleware-signing": "3.226.0", + "@aws-sdk/middleware-stack": "3.226.0", + "@aws-sdk/middleware-user-agent": "3.226.0", + "@aws-sdk/node-config-provider": "3.226.0", + "@aws-sdk/node-http-handler": "3.226.0", + "@aws-sdk/protocol-http": "3.226.0", + "@aws-sdk/smithy-client": "3.226.0", + "@aws-sdk/types": "3.226.0", + "@aws-sdk/url-parser": "3.226.0", + "@aws-sdk/util-base64": "3.208.0", + "@aws-sdk/util-body-length-browser": "3.188.0", + "@aws-sdk/util-body-length-node": "3.208.0", + "@aws-sdk/util-defaults-mode-browser": "3.226.0", + "@aws-sdk/util-defaults-mode-node": "3.226.0", + "@aws-sdk/util-endpoints": "3.226.0", + "@aws-sdk/util-user-agent-browser": "3.226.0", + "@aws-sdk/util-user-agent-node": "3.226.0", + "@aws-sdk/util-utf8-browser": "3.188.0", + "@aws-sdk/util-utf8-node": "3.208.0", + "fast-xml-parser": "4.0.11", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/config-resolver": { + "version": "3.226.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/config-resolver/-/config-resolver-3.226.0.tgz", + "integrity": "sha512-0UWXtfnTT0OtnRP8jJodc8V7xAnWSqsh4RCRyV5uu3Z2Tv+xyW91GKxO+gOXoUP0hHu0lvBM9lYiMJcJWZYLYw==", + "optional": true, + "dependencies": { + "@aws-sdk/signature-v4": "3.226.0", + "@aws-sdk/types": "3.226.0", + "@aws-sdk/util-config-provider": "3.208.0", + "@aws-sdk/util-middleware": "3.226.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/credential-provider-cognito-identity": { + "version": "3.226.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-cognito-identity/-/credential-provider-cognito-identity-3.226.0.tgz", + "integrity": "sha512-ukueK6kgTxvUX89oQBoArj7Oh0dYfkToHypnin08SHRZry9VNnK5IfSMO+Q1tXmxCnDtai1ejaAOny900OjMyg==", + "optional": true, + "dependencies": { + "@aws-sdk/client-cognito-identity": "3.226.0", + "@aws-sdk/property-provider": "3.226.0", + "@aws-sdk/types": "3.226.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/credential-provider-env": { + "version": "3.226.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-env/-/credential-provider-env-3.226.0.tgz", + "integrity": "sha512-sd8uK1ojbXxaZXlthzw/VXZwCPUtU3PjObOfr3Evj7MPIM2IH8h29foOlggx939MdLQGboJf9gKvLlvKDWtJRA==", + "optional": true, + "dependencies": { + "@aws-sdk/property-provider": "3.226.0", + "@aws-sdk/types": "3.226.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/credential-provider-imds": { + "version": "3.226.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-imds/-/credential-provider-imds-3.226.0.tgz", + "integrity": "sha512-//z/COQm2AjYFI1Lb0wKHTQSrvLFTyuKLFQGPJsKS7DPoxGOCKB7hmYerlbl01IDoCxTdyL//TyyPxbZEOQD5Q==", + "optional": true, + "dependencies": { + "@aws-sdk/node-config-provider": "3.226.0", + "@aws-sdk/property-provider": "3.226.0", + "@aws-sdk/types": "3.226.0", + "@aws-sdk/url-parser": "3.226.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/credential-provider-ini": { + "version": "3.226.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-ini/-/credential-provider-ini-3.226.0.tgz", + "integrity": "sha512-Sj7SGl53qmKkD7wvgU0MSTyj8ho6A3tKVbadTHljVz60jiauTEM97Z1DIai6U3oPFVteaKqx7npc8ozeK6mKNg==", + "optional": true, + "dependencies": { + "@aws-sdk/credential-provider-env": "3.226.0", + "@aws-sdk/credential-provider-imds": "3.226.0", + "@aws-sdk/credential-provider-sso": "3.226.0", + "@aws-sdk/credential-provider-web-identity": "3.226.0", + "@aws-sdk/property-provider": "3.226.0", + "@aws-sdk/shared-ini-file-loader": "3.226.0", + "@aws-sdk/types": "3.226.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/credential-provider-node": { + "version": "3.226.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-node/-/credential-provider-node-3.226.0.tgz", + "integrity": "sha512-kuOeiVmlhSyMC1Eix0pqHmb4EmpbMHrTw+9ObZbQ2bRXy05Q9fLA6SVBcI01bI1KVh7Qqz9i8ojOY3A2zscjyA==", + "optional": true, + "dependencies": { + "@aws-sdk/credential-provider-env": "3.226.0", + "@aws-sdk/credential-provider-imds": "3.226.0", + "@aws-sdk/credential-provider-ini": "3.226.0", + "@aws-sdk/credential-provider-process": "3.226.0", + "@aws-sdk/credential-provider-sso": "3.226.0", + "@aws-sdk/credential-provider-web-identity": "3.226.0", + "@aws-sdk/property-provider": "3.226.0", + "@aws-sdk/shared-ini-file-loader": "3.226.0", + "@aws-sdk/types": "3.226.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/credential-provider-process": { + "version": "3.226.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-process/-/credential-provider-process-3.226.0.tgz", + "integrity": "sha512-iUDMdnrTvbvaCFhWwqyXrhvQ9+ojPqPqXhwZtY1X/Qaz+73S9gXBPJHZaZb2Ke0yKE1Ql3bJbKvmmxC/qLQMng==", + "optional": true, + "dependencies": { + "@aws-sdk/property-provider": "3.226.0", + "@aws-sdk/shared-ini-file-loader": "3.226.0", + "@aws-sdk/types": "3.226.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/credential-provider-sso": { + "version": "3.226.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-sso/-/credential-provider-sso-3.226.0.tgz", + "integrity": "sha512-QSBeyOIAus4/8u/DeAstE8w/zw+F7PQohdB8JFP/BPaCfc8uKue4UkqqvQWRfm4VSEnHeXt037MDopmCpd98Iw==", + "optional": true, + "dependencies": { + "@aws-sdk/client-sso": "3.226.0", + "@aws-sdk/property-provider": "3.226.0", + "@aws-sdk/shared-ini-file-loader": "3.226.0", + "@aws-sdk/token-providers": "3.226.0", + "@aws-sdk/types": "3.226.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/credential-provider-web-identity": { + "version": "3.226.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-web-identity/-/credential-provider-web-identity-3.226.0.tgz", + "integrity": "sha512-CCpv847rLB0SFOHz2igvUMFAzeT2fD3YnY4C8jltuJoEkn0ITn1Hlgt13nTJ5BUuvyti2mvyXZHmNzhMIMrIlw==", + "optional": true, + "dependencies": { + "@aws-sdk/property-provider": "3.226.0", + "@aws-sdk/types": "3.226.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/credential-providers": { + "version": "3.226.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-providers/-/credential-providers-3.226.0.tgz", + "integrity": "sha512-oNkUBxlX0kmwt8jEyQAH7p5Tk1g9iWEKGGCTPPZ7A5RoZpmv83zT8ReZ/+QsSmJIWGb0zzraHMzKbmfMSeztZg==", + "optional": true, + "dependencies": { + "@aws-sdk/client-cognito-identity": "3.226.0", + "@aws-sdk/client-sso": "3.226.0", + "@aws-sdk/client-sts": "3.226.0", + "@aws-sdk/credential-provider-cognito-identity": "3.226.0", + "@aws-sdk/credential-provider-env": "3.226.0", + "@aws-sdk/credential-provider-imds": "3.226.0", + "@aws-sdk/credential-provider-ini": "3.226.0", + "@aws-sdk/credential-provider-node": "3.226.0", + "@aws-sdk/credential-provider-process": "3.226.0", + "@aws-sdk/credential-provider-sso": "3.226.0", + "@aws-sdk/credential-provider-web-identity": "3.226.0", + "@aws-sdk/property-provider": "3.226.0", + "@aws-sdk/shared-ini-file-loader": "3.226.0", + "@aws-sdk/types": "3.226.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/fetch-http-handler": { + "version": "3.226.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/fetch-http-handler/-/fetch-http-handler-3.226.0.tgz", + "integrity": "sha512-JewZPMNEBXfi1xVnRa7pVtK/zgZD8/lQ/YnD8pq79WuMa2cwyhDtr8oqCoqsPW+WJT5ScXoMtuHxN78l8eKWgg==", + "optional": true, + "dependencies": { + "@aws-sdk/protocol-http": "3.226.0", + "@aws-sdk/querystring-builder": "3.226.0", + "@aws-sdk/types": "3.226.0", + "@aws-sdk/util-base64": "3.208.0", + "tslib": "^2.3.1" + } + }, + "node_modules/@aws-sdk/hash-node": { + "version": "3.226.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/hash-node/-/hash-node-3.226.0.tgz", + "integrity": "sha512-MdlJhJ9/Espwd0+gUXdZRsHuostB2WxEVAszWxobP0FTT9PnicqnfK7ExmW+DUAc0ywxtEbR3e0UND65rlSTVw==", + "optional": true, + "dependencies": { + "@aws-sdk/types": "3.226.0", + "@aws-sdk/util-buffer-from": "3.208.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/invalid-dependency": { + "version": "3.226.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/invalid-dependency/-/invalid-dependency-3.226.0.tgz", + "integrity": "sha512-QXOYFmap8g9QzRjumcRCIo2GEZkdCwd7ePQW0OABWPhKHzlJ74vvBxywjU3s39EEBEluWXtZ7Iufg6GxZM4ifw==", + "optional": true, + "dependencies": { + "@aws-sdk/types": "3.226.0", + "tslib": "^2.3.1" + } + }, + "node_modules/@aws-sdk/is-array-buffer": { + "version": "3.201.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/is-array-buffer/-/is-array-buffer-3.201.0.tgz", + "integrity": "sha512-UPez5qLh3dNgt0DYnPD/q0mVJY84rA17QE26hVNOW3fAji8W2wrwrxdacWOxyXvlxWsVRcKmr+lay1MDqpAMfg==", + "optional": true, + "dependencies": { + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/middleware-content-length": { + "version": "3.226.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-content-length/-/middleware-content-length-3.226.0.tgz", + "integrity": "sha512-ksUzlHJN2JMuyavjA46a4sctvnrnITqt2tbGGWWrAuXY1mel2j+VbgnmJUiwHKUO6bTFBBeft5Vd1TSOb4JmiA==", + "optional": true, + "dependencies": { + "@aws-sdk/protocol-http": "3.226.0", + "@aws-sdk/types": "3.226.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/middleware-endpoint": { + "version": "3.226.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-endpoint/-/middleware-endpoint-3.226.0.tgz", + "integrity": "sha512-EvLFafjtUxTT0AC9p3aBQu1/fjhWdIeK58jIXaNFONfZ3F8QbEYUPuF/SqZvJM6cWfOO9qwYKkRDbCSTYhprIg==", + "optional": true, + "dependencies": { + "@aws-sdk/middleware-serde": "3.226.0", + "@aws-sdk/protocol-http": "3.226.0", + "@aws-sdk/signature-v4": "3.226.0", + "@aws-sdk/types": "3.226.0", + "@aws-sdk/url-parser": "3.226.0", + "@aws-sdk/util-config-provider": "3.208.0", + "@aws-sdk/util-middleware": "3.226.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/middleware-host-header": { + "version": "3.226.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-host-header/-/middleware-host-header-3.226.0.tgz", + "integrity": "sha512-haVkWVh6BUPwKgWwkL6sDvTkcZWvJjv8AgC8jiQuSl8GLZdzHTB8Qhi3IsfFta9HAuoLjxheWBE5Z/L0UrfhLA==", + "optional": true, + "dependencies": { + "@aws-sdk/protocol-http": "3.226.0", + "@aws-sdk/types": "3.226.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/middleware-logger": { + "version": "3.226.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-logger/-/middleware-logger-3.226.0.tgz", + "integrity": "sha512-m9gtLrrYnpN6yckcQ09rV7ExWOLMuq8mMPF/K3DbL/YL0TuILu9i2T1W+JuxSX+K9FMG2HrLAKivE/kMLr55xA==", + "optional": true, + "dependencies": { + "@aws-sdk/types": "3.226.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/middleware-recursion-detection": { + "version": "3.226.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-recursion-detection/-/middleware-recursion-detection-3.226.0.tgz", + "integrity": "sha512-mwRbdKEUeuNH5TEkyZ5FWxp6bL2UC1WbY+LDv6YjHxmSMKpAoOueEdtU34PqDOLrpXXxIGHDFmjeGeMfktyEcA==", + "optional": true, + "dependencies": { + "@aws-sdk/protocol-http": "3.226.0", + "@aws-sdk/types": "3.226.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/middleware-retry": { + "version": "3.226.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-retry/-/middleware-retry-3.226.0.tgz", + "integrity": "sha512-uMn4dSkv9Na2uvt6K3HgTnVrCRAlGv1MBAtUDLXONqUv1L/Z1fp3CkFkLKQHKylfBwBhe6dXfYEo87i8LZFoqg==", + "optional": true, + "dependencies": { + "@aws-sdk/protocol-http": "3.226.0", + "@aws-sdk/service-error-classification": "3.226.0", + "@aws-sdk/types": "3.226.0", + "@aws-sdk/util-middleware": "3.226.0", + "tslib": "^2.3.1", + "uuid": "^8.3.2" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/middleware-sdk-sts": { + "version": "3.226.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-sdk-sts/-/middleware-sdk-sts-3.226.0.tgz", + "integrity": "sha512-NN9T/qoSD1kZvAT+VLny3NnlqgylYQcsgV3rvi/8lYzw/G/2s8VS6sm/VTWGGZhx08wZRv20MWzYu3bftcyqUg==", + "optional": true, + "dependencies": { + "@aws-sdk/middleware-signing": "3.226.0", + "@aws-sdk/property-provider": "3.226.0", + "@aws-sdk/protocol-http": "3.226.0", + "@aws-sdk/signature-v4": "3.226.0", + "@aws-sdk/types": "3.226.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/middleware-serde": { + "version": "3.226.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-serde/-/middleware-serde-3.226.0.tgz", + "integrity": "sha512-nPuOOAkSfx9TxzdKFx0X2bDlinOxGrqD7iof926K/AEflxGD1DBdcaDdjlYlPDW2CVE8LV/rAgbYuLxh/E/1VA==", + "optional": true, + "dependencies": { + "@aws-sdk/types": "3.226.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/middleware-signing": { + "version": "3.226.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-signing/-/middleware-signing-3.226.0.tgz", + "integrity": "sha512-E6HmtPcl+IjYDDzi1xI2HpCbBq2avNWcjvCriMZWuTAtRVpnA6XDDGW5GY85IfS3A8G8vuWqEVPr8JcYUcjfew==", + "optional": true, + "dependencies": { + "@aws-sdk/property-provider": "3.226.0", + "@aws-sdk/protocol-http": "3.226.0", + "@aws-sdk/signature-v4": "3.226.0", + "@aws-sdk/types": "3.226.0", + "@aws-sdk/util-middleware": "3.226.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/middleware-stack": { + "version": "3.226.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-stack/-/middleware-stack-3.226.0.tgz", + "integrity": "sha512-85wF29LvPvpoed60fZGDYLwv1Zpd/cM0C22WSSFPw1SSJeqO4gtFYyCg2squfT3KI6kF43IIkOCJ+L7GtryPug==", + "optional": true, + "dependencies": { + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/middleware-user-agent": { + "version": "3.226.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-user-agent/-/middleware-user-agent-3.226.0.tgz", + "integrity": "sha512-N1WnfzCW1Y5yWhVAphf8OPGTe8Df3vmV7/LdsoQfmpkCZgLZeK2o0xITkUQhRj1mbw7yp8tVFLFV3R2lMurdAQ==", + "optional": true, + "dependencies": { + "@aws-sdk/protocol-http": "3.226.0", + "@aws-sdk/types": "3.226.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/node-config-provider": { + "version": "3.226.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/node-config-provider/-/node-config-provider-3.226.0.tgz", + "integrity": "sha512-B8lQDqiRk7X5izFEUMXmi8CZLOKCTWQJU9HQf3ako+sF0gexo4nHN3jhoRWyLtcgC5S3on/2jxpAcqtm7kuY3w==", + "optional": true, + "dependencies": { + "@aws-sdk/property-provider": "3.226.0", + "@aws-sdk/shared-ini-file-loader": "3.226.0", + "@aws-sdk/types": "3.226.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/node-http-handler": { + "version": "3.226.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/node-http-handler/-/node-http-handler-3.226.0.tgz", + "integrity": "sha512-xQCddnZNMiPmjr3W7HYM+f5ir4VfxgJh37eqZwX6EZmyItFpNNeVzKUgA920ka1VPz/ZUYB+2OFGiX3LCLkkaA==", + "optional": true, + "dependencies": { + "@aws-sdk/abort-controller": "3.226.0", + "@aws-sdk/protocol-http": "3.226.0", + "@aws-sdk/querystring-builder": "3.226.0", + "@aws-sdk/types": "3.226.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/property-provider": { + "version": "3.226.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/property-provider/-/property-provider-3.226.0.tgz", + "integrity": "sha512-TsljjG+Sg0LmdgfiAlWohluWKnxB/k8xenjeozZfzOr5bHmNHtdbWv6BtNvD/R83hw7SFXxbJHlD5H4u9p2NFg==", + "optional": true, + "dependencies": { + "@aws-sdk/types": "3.226.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/protocol-http": { + "version": "3.226.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/protocol-http/-/protocol-http-3.226.0.tgz", + "integrity": "sha512-zWkVqiTA9RXL6y0hhfZc9bcU4DX2NI6Hw9IhQmSPeM59mdbPjJlY4bLlMr5YxywqO3yQ/ylNoAfrEzrDjlOSRg==", + "optional": true, + "dependencies": { + "@aws-sdk/types": "3.226.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/querystring-builder": { + "version": "3.226.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/querystring-builder/-/querystring-builder-3.226.0.tgz", + "integrity": "sha512-LVurypuNeotO4lmirKXRC4NYrZRAyMJXuwO0f2a5ZAUJCjauwYrifKue6yCfU7bls7gut7nfcR6B99WBYpHs3g==", + "optional": true, + "dependencies": { + "@aws-sdk/types": "3.226.0", + "@aws-sdk/util-uri-escape": "3.201.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/querystring-parser": { + "version": "3.226.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/querystring-parser/-/querystring-parser-3.226.0.tgz", + "integrity": "sha512-FzB+VrQ47KAFxiPt2YXrKZ8AOLZQqGTLCKHzx4bjxGmwgsjV8yIbtJiJhZLMcUQV4LtGeIY9ixIqQhGvnZHE4A==", + "optional": true, + "dependencies": { + "@aws-sdk/types": "3.226.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/service-error-classification": { + "version": "3.226.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/service-error-classification/-/service-error-classification-3.226.0.tgz", + "integrity": "sha512-9R01dBpE8JILe2CTft7YN2tMufT2mMWMTqxmHwPSmOpsxHTj8hEII7GTfvpb95ThHwW7XMNhg7pbHLbrTJZCVA==", + "optional": true, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/shared-ini-file-loader": { + "version": "3.226.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/shared-ini-file-loader/-/shared-ini-file-loader-3.226.0.tgz", + "integrity": "sha512-661VQefsARxVyyV2FX9V61V+nNgImk7aN2hYlFKla6BCwZfMng+dEtD0xVGyg1PfRw0qvEv5LQyxMVgHcUSevA==", + "optional": true, + "dependencies": { + "@aws-sdk/types": "3.226.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/signature-v4": { + "version": "3.226.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/signature-v4/-/signature-v4-3.226.0.tgz", + "integrity": "sha512-/R5q5agdPd7HJB68XMzpxrNPk158EHUvkFkuRu5Qf3kkkHebEzWEBlWoVpUe6ss4rP9Tqcue6xPuaftEmhjpYw==", + "optional": true, + "dependencies": { + "@aws-sdk/is-array-buffer": "3.201.0", + "@aws-sdk/types": "3.226.0", + "@aws-sdk/util-hex-encoding": "3.201.0", + "@aws-sdk/util-middleware": "3.226.0", + "@aws-sdk/util-uri-escape": "3.201.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/smithy-client": { + "version": "3.226.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/smithy-client/-/smithy-client-3.226.0.tgz", + "integrity": "sha512-BWr1FhWSUhkSBp0TLzliD5AQBjA2Jmo9FlOOt+cBwd9BKkSGlGj+HgATYJ83Sjjg2+J6qvEZBxB78LKVHhorBw==", + "optional": true, + "dependencies": { + "@aws-sdk/middleware-stack": "3.226.0", + "@aws-sdk/types": "3.226.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/token-providers": { + "version": "3.226.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/token-providers/-/token-providers-3.226.0.tgz", + "integrity": "sha512-3ouRt2i3ve8ivg54PxPhtOTcipzf6BoQsMw0EiO23yYKujhyeFH2IkxV4EYC687xFrUjheqJf8FWU/DD8EQ/ow==", + "optional": true, + "dependencies": { + "@aws-sdk/client-sso-oidc": "3.226.0", + "@aws-sdk/property-provider": "3.226.0", + "@aws-sdk/shared-ini-file-loader": "3.226.0", + "@aws-sdk/types": "3.226.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/types": { + "version": "3.226.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/types/-/types-3.226.0.tgz", + "integrity": "sha512-MmmNHrWeO4man7wpOwrAhXlevqtOV9ZLcH4RhnG5LmRce0RFOApx24HoKENfFCcOyCm5LQBlsXCqi0dZWDWU0A==", + "optional": true, + "dependencies": { + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/url-parser": { + "version": "3.226.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/url-parser/-/url-parser-3.226.0.tgz", + "integrity": "sha512-p5RLE0QWyP0OcTOLmFcLdVgUcUEzmEfmdrnOxyNzomcYb0p3vUagA5zfa1HVK2azsQJFBv28GfvMnba9bGhObg==", + "optional": true, + "dependencies": { + "@aws-sdk/querystring-parser": "3.226.0", + "@aws-sdk/types": "3.226.0", + "tslib": "^2.3.1" + } + }, + "node_modules/@aws-sdk/util-base64": { + "version": "3.208.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-base64/-/util-base64-3.208.0.tgz", + "integrity": "sha512-PQniZph5A6N7uuEOQi+1hnMz/FSOK/8kMFyFO+4DgA1dZ5pcKcn5wiFwHkcTb/BsgVqQa3Jx0VHNnvhlS8JyTg==", + "optional": true, + "dependencies": { + "@aws-sdk/util-buffer-from": "3.208.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/util-body-length-browser": { + "version": "3.188.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-body-length-browser/-/util-body-length-browser-3.188.0.tgz", + "integrity": "sha512-8VpnwFWXhnZ/iRSl9mTf+VKOX9wDE8QtN4bj9pBfxwf90H1X7E8T6NkiZD3k+HubYf2J94e7DbeHs7fuCPW5Qg==", + "optional": true, + "dependencies": { + "tslib": "^2.3.1" + } + }, + "node_modules/@aws-sdk/util-body-length-node": { + "version": "3.208.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-body-length-node/-/util-body-length-node-3.208.0.tgz", + "integrity": "sha512-3zj50e5g7t/MQf53SsuuSf0hEELzMtD8RX8C76f12OSRo2Bca4FLLYHe0TZbxcfQHom8/hOaeZEyTyMogMglqg==", + "optional": true, + "dependencies": { + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/util-buffer-from": { + "version": "3.208.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-buffer-from/-/util-buffer-from-3.208.0.tgz", + "integrity": "sha512-7L0XUixNEFcLUGPeBF35enCvB9Xl+K6SQsmbrPk1P3mlV9mguWSDQqbOBwY1Ir0OVbD6H/ZOQU7hI/9RtRI0Zw==", + "optional": true, + "dependencies": { + "@aws-sdk/is-array-buffer": "3.201.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/util-config-provider": { + "version": "3.208.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-config-provider/-/util-config-provider-3.208.0.tgz", + "integrity": "sha512-DSRqwrERUsT34ug+anlMBIFooBEGwM8GejC7q00Y/9IPrQy50KnG5PW2NiTjuLKNi7pdEOlwTSEocJE15eDZIg==", + "optional": true, + "dependencies": { + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/util-defaults-mode-browser": { + "version": "3.226.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-defaults-mode-browser/-/util-defaults-mode-browser-3.226.0.tgz", + "integrity": "sha512-chLx+6AeMSjuPsCVbI1B4Pg3jftjjcsuTsJucjo0DKBb1VSWqPCitmOILQVvKiA2Km8TSs3VcbUuOCyDExkzAg==", + "optional": true, + "dependencies": { + "@aws-sdk/property-provider": "3.226.0", + "@aws-sdk/types": "3.226.0", + "bowser": "^2.11.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/@aws-sdk/util-defaults-mode-node": { + "version": "3.226.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-defaults-mode-node/-/util-defaults-mode-node-3.226.0.tgz", + "integrity": "sha512-Zr0AEj6g8gqiOhr31Pa2tdOFdPQciaAUCg3Uj/eH0znNBdVoptCj67oCW/I5v4pY4ZLZtGhr3uuoxDJH2MB3yg==", + "optional": true, + "dependencies": { + "@aws-sdk/config-resolver": "3.226.0", + "@aws-sdk/credential-provider-imds": "3.226.0", + "@aws-sdk/node-config-provider": "3.226.0", + "@aws-sdk/property-provider": "3.226.0", + "@aws-sdk/types": "3.226.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/@aws-sdk/util-endpoints": { + "version": "3.226.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-endpoints/-/util-endpoints-3.226.0.tgz", + "integrity": "sha512-iqOkac/zLmyPBUJd7SLN0PeZMkOmlGgD5PHmmekTClOkce2eUjK9SNX1PzL73aXPoPTyhg9QGLH8uEZEQ8YUzg==", + "optional": true, + "dependencies": { + "@aws-sdk/types": "3.226.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/util-hex-encoding": { + "version": "3.201.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-hex-encoding/-/util-hex-encoding-3.201.0.tgz", + "integrity": "sha512-7t1vR1pVxKx0motd3X9rI3m/xNp78p3sHtP5yo4NP4ARpxyJ0fokBomY8ScaH2D/B+U5o9ARxldJUdMqyBlJcA==", + "optional": true, + "dependencies": { + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/util-locate-window": { + "version": "3.208.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-locate-window/-/util-locate-window-3.208.0.tgz", + "integrity": "sha512-iua1A2+P7JJEDHVgvXrRJSvsnzG7stYSGQnBVphIUlemwl6nN5D+QrgbjECtrbxRz8asYFHSzhdhECqN+tFiBg==", + "optional": true, + "dependencies": { + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/util-middleware": { + "version": "3.226.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-middleware/-/util-middleware-3.226.0.tgz", + "integrity": "sha512-B96CQnwX4gRvQdaQkdUtqvDPkrptV5+va6FVeJOocU/DbSYMAScLxtR3peMS8cnlOT6nL1Eoa42OI9AfZz1VwQ==", + "optional": true, + "dependencies": { + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/util-uri-escape": { + "version": "3.201.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-uri-escape/-/util-uri-escape-3.201.0.tgz", + "integrity": "sha512-TeTWbGx4LU2c5rx0obHeDFeO9HvwYwQtMh1yniBz00pQb6Qt6YVOETVQikRZ+XRQwEyCg/dA375UplIpiy54mA==", + "optional": true, + "dependencies": { + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/util-user-agent-browser": { + "version": "3.226.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-user-agent-browser/-/util-user-agent-browser-3.226.0.tgz", + "integrity": "sha512-PhBIu2h6sPJPcv2I7ELfFizdl5pNiL4LfxrasMCYXQkJvVnoXztHA1x+CQbXIdtZOIlpjC+6BjDcE0uhnpvfcA==", + "optional": true, + "dependencies": { + "@aws-sdk/types": "3.226.0", + "bowser": "^2.11.0", + "tslib": "^2.3.1" + } + }, + "node_modules/@aws-sdk/util-user-agent-node": { + "version": "3.226.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-user-agent-node/-/util-user-agent-node-3.226.0.tgz", + "integrity": "sha512-othPc5Dz/pkYkxH+nZPhc1Al0HndQT8zHD4e9h+EZ+8lkd8n+IsnLfTS/mSJWrfiC6UlNRVw55cItstmJyMe/A==", + "optional": true, + "dependencies": { + "@aws-sdk/node-config-provider": "3.226.0", + "@aws-sdk/types": "3.226.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + }, + "peerDependencies": { + "aws-crt": ">=1.0.0" + }, + "peerDependenciesMeta": { + "aws-crt": { + "optional": true + } + } + }, + "node_modules/@aws-sdk/util-utf8-browser": { + "version": "3.188.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-utf8-browser/-/util-utf8-browser-3.188.0.tgz", + "integrity": "sha512-jt627x0+jE+Ydr9NwkFstg3cUvgWh56qdaqAMDsqgRlKD21md/6G226z/Qxl7lb1VEW2LlmCx43ai/37Qwcj2Q==", + "optional": true, + "dependencies": { + "tslib": "^2.3.1" + } + }, + "node_modules/@aws-sdk/util-utf8-node": { + "version": "3.208.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-utf8-node/-/util-utf8-node-3.208.0.tgz", + "integrity": "sha512-jKY87Acv0yWBdFxx6bveagy5FYjz+dtV8IPT7ay1E2WPWH1czoIdMAkc8tSInK31T6CRnHWkLZ1qYwCbgRfERQ==", + "optional": true, + "dependencies": { + "@aws-sdk/util-buffer-from": "3.208.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" } }, "node_modules/@babel/runtime": { - "version": "7.19.0", - "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.19.0.tgz", - "integrity": "sha512-eR8Lo9hnDS7tqkO7NsV+mKvCmv5boaXFSZ70DnfhcgiEne8hv9oCEd36Klw74EtizEqLsy4YnW8UWwpBVolHZA==", + "version": "7.20.6", + "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.20.6.tgz", + "integrity": "sha512-Q+8MqP7TiHMWzSfwiJwXCjyf4GYA4Dgw3emg/7xmwsdLJOZUp+nMqcOwOzzYheuM1rhDu8FSj2l0aoMygEuXuA==", "dependencies": { - "regenerator-runtime": "^0.13.4" + "regenerator-runtime": "^0.13.11" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@discordjs/builders": { - "version": "0.11.0", - "resolved": "https://registry.npmjs.org/@discordjs/builders/-/builders-0.11.0.tgz", - "integrity": "sha512-ZTB8yJdJKrKlq44dpWkNUrAtEJEq0gqpb7ASdv4vmq6/mZal5kOv312hQ56I/vxwMre+VIkoHquNUAfnTbiYtg==", - "deprecated": "no longer supported", + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/@discordjs/builders/-/builders-1.4.0.tgz", + "integrity": "sha512-nEeTCheTTDw5kO93faM1j8ZJPonAX86qpq/QVoznnSa8WWcCgJpjlu6GylfINTDW6o7zZY0my2SYdxx2mfNwGA==", "dependencies": { - "@sindresorhus/is": "^4.2.0", - "discord-api-types": "^0.26.0", - "ts-mixer": "^6.0.0", - "tslib": "^2.3.1", - "zod": "^3.11.6" + "@discordjs/util": "^0.1.0", + "@sapphire/shapeshift": "^3.7.1", + "discord-api-types": "^0.37.20", + "fast-deep-equal": "^3.1.3", + "ts-mixer": "^6.0.2", + "tslib": "^2.4.1" }, "engines": { - "node": ">=16.0.0", - "npm": ">=7.0.0" + "node": ">=16.9.0" } }, "node_modules/@discordjs/collection": { - "version": "0.1.6", - "resolved": "https://registry.npmjs.org/@discordjs/collection/-/collection-0.1.6.tgz", - "integrity": "sha512-utRNxnd9kSS2qhyivo9lMlt5qgAUasH2gb7BEOn6p0efFh24gjGomHzWKMAPn2hEReOPQZCJaRKoURwRotKucQ==", - "deprecated": "no longer supported" - }, - "node_modules/@discordjs/rest": { - "version": "0.1.0-canary.0", - "resolved": "https://registry.npmjs.org/@discordjs/rest/-/rest-0.1.0-canary.0.tgz", - "integrity": "sha512-d+s//ISYVV+e0w/926wMEeO7vju+Pn11x1JM4tcmVMCHSDgpi6pnFCNAXF1TEdnDcy7xf9tq5cf2pQkb/7ySTQ==", - "deprecated": "no longer supported", - "dependencies": { - "@discordjs/collection": "^0.1.6", - "@sapphire/async-queue": "^1.1.4", - "@sapphire/snowflake": "^1.3.5", - "abort-controller": "^3.0.0", - "discord-api-types": "^0.18.1", - "form-data": "^4.0.0", - "node-fetch": "^2.6.1", - "tslib": "^2.3.0" - }, + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/@discordjs/collection/-/collection-1.3.0.tgz", + "integrity": "sha512-ylt2NyZ77bJbRij4h9u/wVy7qYw/aDqQLWnadjvDqW/WoWCxrsX6M3CIw9GVP5xcGCDxsrKj5e0r5evuFYwrKg==", "engines": { - "node": ">=16.0.0" + "node": ">=16.9.0" } }, - "node_modules/@discordjs/rest/node_modules/discord-api-types": { - "version": "0.18.1", - "resolved": "https://registry.npmjs.org/discord-api-types/-/discord-api-types-0.18.1.tgz", - "integrity": "sha512-hNC38R9ZF4uaujaZQtQfm5CdQO58uhdkoHQAVvMfIL0LgOSZeW575W8H6upngQOuoxWd8tiRII3LLJm9zuQKYg==", - "deprecated": "No longer supported. Install the latest release (0.20.2)", + "node_modules/@discordjs/rest": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/@discordjs/rest/-/rest-1.4.0.tgz", + "integrity": "sha512-k3Ip7ffFSAfp7Mu4H/3BEXFvFz+JsbXRrRtpeBMnSp1LefhtlZWJE6xdXzNlblktKNQltnRwY+z0NZrGQdxAMw==", + "dependencies": { + "@discordjs/collection": "^1.3.0", + "@discordjs/util": "^0.1.0", + "@sapphire/async-queue": "^1.5.0", + "@sapphire/snowflake": "^3.2.2", + "discord-api-types": "^0.37.20", + "file-type": "^18.0.0", + "tslib": "^2.4.1", + "undici": "^5.13.0" + }, "engines": { - "node": ">=12" + "node": ">=16.9.0" + } + }, + "node_modules/@discordjs/rest/node_modules/file-type": { + "version": "18.0.0", + "resolved": "https://registry.npmjs.org/file-type/-/file-type-18.0.0.tgz", + "integrity": "sha512-jjMwFpnW8PKofLE/4ohlhqwDk5k0NC6iy0UHAJFKoY1fQeGMN0GDdLgHQrvCbSpMwbqzoCZhRI5dETCZna5qVA==", + "dependencies": { + "readable-web-to-node-stream": "^3.0.2", + "strtok3": "^7.0.0", + "token-types": "^5.0.1" + }, + "engines": { + "node": ">=14.16" + }, + "funding": { + "url": "https://github.com/sindresorhus/file-type?sponsor=1" + } + }, + "node_modules/@discordjs/util": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/@discordjs/util/-/util-0.1.0.tgz", + "integrity": "sha512-e7d+PaTLVQav6rOc2tojh2y6FE8S7REkqLldq1XF4soCx74XB/DIjbVbVLtBemf0nLW77ntz0v+o5DytKwFNLQ==", + "engines": { + "node": ">=16.9.0" } }, "node_modules/@discordjs/voice": { - "version": "0.7.5", - "resolved": "https://registry.npmjs.org/@discordjs/voice/-/voice-0.7.5.tgz", - "integrity": "sha512-lUk+CmIXNKslT6DkC9IF9rpsqhzlTiedauUCPBzepjd4XWxwBZiyVIzR6QpbAirxkAwCoAbbje+3Ho71PGLEAw==", - "deprecated": "no longer supported", + "version": "0.14.0", + "resolved": "https://registry.npmjs.org/@discordjs/voice/-/voice-0.14.0.tgz", + "integrity": "sha512-/LV8LSFuJ1c4OEW1ubPg3al2QNpUpwX8ZL+KL+LORmnUFVCtehSaEh+38uDfWg1O/TgiGI5vOLj4ZKql43drcw==", "dependencies": { - "@types/ws": "^8.2.0", - "discord-api-types": "^0.24.0", - "prism-media": "^1.3.2", - "tiny-typed-emitter": "^2.1.0", - "tslib": "^2.3.1", - "ws": "^8.2.3" + "@types/ws": "^8.5.3", + "discord-api-types": "^0.37.20", + "prism-media": "^1.3.4", + "tslib": "^2.4.1", + "ws": "^8.11.0" }, "engines": { - "node": ">=16.0.0", - "npm": ">=7.0.0" - } - }, - "node_modules/@discordjs/voice/node_modules/discord-api-types": { - "version": "0.24.0", - "resolved": "https://registry.npmjs.org/discord-api-types/-/discord-api-types-0.24.0.tgz", - "integrity": "sha512-X0uA2a92cRjowUEXpLZIHWl4jiX1NsUpDhcEOpa1/hpO1vkaokgZ8kkPtPih9hHth5UVQ3mHBu/PpB4qjyfJ4A==", - "deprecated": "No longer supported. Install the latest release!", - "engines": { - "node": ">=12" + "node": ">=16.9.0" } }, "node_modules/@haileybot/captcha-generator": { @@ -162,14 +1209,14 @@ } }, "node_modules/@iamtraction/google-translate": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/@iamtraction/google-translate/-/google-translate-1.1.2.tgz", - "integrity": "sha512-z30o1rz2b7JTTqmy/MSQjwfz59++qrBpTXGHWQrqxPW1mTW5pLEMM2FymxCyJcg6alogKgSLT2RVrjuvuNCxVA==", + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/@iamtraction/google-translate/-/google-translate-2.0.1.tgz", + "integrity": "sha512-kOTkt23zflxpgxLIe9tLvDU8IvNscXYbgMSXydNkZGWDtJ75YJiU3v7EBz+t7h/gSiY7sT5r4dlFkMrHCl+N6A==", "dependencies": { - "got": "^11.8.1" + "undici": "^5.12.0" }, "engines": { - "node": ">=8.0.0" + "node": ">=16.0.0" } }, "node_modules/@jimp/bmp": { @@ -661,9 +1708,9 @@ } }, "node_modules/@sapphire/shapeshift": { - "version": "3.7.0", - "resolved": "https://registry.npmjs.org/@sapphire/shapeshift/-/shapeshift-3.7.0.tgz", - "integrity": "sha512-A6vI1zJoxhjWo4grsxpBRBgk96SqSdjLX5WlzKp9H+bJbkM07mvwcbtbVAmUZHbi/OG3HLfiZ1rlw4BhH6tsBQ==", + "version": "3.7.1", + "resolved": "https://registry.npmjs.org/@sapphire/shapeshift/-/shapeshift-3.7.1.tgz", + "integrity": "sha512-JmYN/0GW49Vl8Hi4PwrsDBNjcuCylH78vWYolVys74LRIzilAAMINxx4RHQOdvYoz+ceJKVp4+zBbQ5kuIFOLw==", "dependencies": { "fast-deep-equal": "^3.1.3", "lodash.uniqwith": "^4.5.0" @@ -674,36 +1721,24 @@ } }, "node_modules/@sapphire/snowflake": { - "version": "1.3.6", - "resolved": "https://registry.npmjs.org/@sapphire/snowflake/-/snowflake-1.3.6.tgz", - "integrity": "sha512-QnzuLp+p9D7agynVub/zqlDVriDza9y3STArBhNiNBUgIX8+GL5FpQxstRfw1jDr5jkZUjcuKYAHxjIuXKdJAg==", - "deprecated": "This version has been automatically deprecated by @favware/npm-deprecate. Please use a newer version.", + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/@sapphire/snowflake/-/snowflake-3.3.0.tgz", + "integrity": "sha512-Hec5N6zEkZuZFLybVKyLFLlcSgYmR6C1/+9NkIhxPwOf6tgX52ndJCSz8ADejmbrNE0VuNCNkpzhRZzenEC9vA==", "engines": { - "node": ">=12", - "npm": ">=6" - } - }, - "node_modules/@sindresorhus/is": { - "version": "4.6.0", - "resolved": "https://registry.npmjs.org/@sindresorhus/is/-/is-4.6.0.tgz", - "integrity": "sha512-t09vSN3MdfsyCHoFcTRCH/iUtG7OJ0CsjzB8cjAmKc/va/kIgeDI/TxsigdncE/4be734m0cvIYwNaV4i2XqAw==", - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sindresorhus/is?sponsor=1" + "node": ">=v14.0.0", + "npm": ">=7.0.0" } }, "node_modules/@skyra/gifenc": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/@skyra/gifenc/-/gifenc-1.0.0.tgz", - "integrity": "sha512-4GEUDLofUdb4F21cNnwEkcS4srTlGpz9O8Mg+X+J+A3MAgFe25490r8EdfwszS07EE0m1l8Hp6oJ9xLsAwyxIQ==", + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@skyra/gifenc/-/gifenc-1.0.1.tgz", + "integrity": "sha512-kxu65ZchumEKWnFwPwy+/T2+/lzQZtwK6f5VTG3OJIBqvfdyRyxrWvbeBHT6G8p6nBEuxSwyI3YXTv2koXvHVQ==", "dependencies": { - "tslib": "^2.3.0" + "tslib": "^2.4.0" }, "engines": { - "node": ">=14", - "npm": ">=6" + "node": ">=v14.18.0", + "npm": ">=7.24.2" } }, "node_modules/@sourcebin/linguist": { @@ -711,16 +1746,10 @@ "resolved": "https://registry.npmjs.org/@sourcebin/linguist/-/linguist-0.0.3.tgz", "integrity": "sha512-VVkb/34pISdK+1tyqmwBac6crn8UhviKCRV5w/wc8iZyTCOoTrOu0Cgbqfh0bfMGxNlQuhaRy6cMmEmHxa5R3g==" }, - "node_modules/@szmarczak/http-timer": { - "version": "4.0.6", - "resolved": "https://registry.npmjs.org/@szmarczak/http-timer/-/http-timer-4.0.6.tgz", - "integrity": "sha512-4BAffykYOgO+5nzBWYwE3W90sBgLJoUPRWWcL8wlyiM8IB8ipJz3UMJ9KXQd1RKQXpKp8Tutn80HZtWsu2u76w==", - "dependencies": { - "defer-to-connect": "^2.0.0" - }, - "engines": { - "node": ">=10" - } + "node_modules/@tokenizer/token": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/@tokenizer/token/-/token-0.3.0.tgz", + "integrity": "sha512-OvjF+z51L3ov0OyAU0duzsYuvO01PH7x4t6DJx+guahgTnBHkhJdG7soQeTSFLWN3efnHyibZ4Z8l2EuWwJN3A==" }, "node_modules/@tootallnate/once": { "version": "2.0.0", @@ -739,64 +1768,10 @@ "raw-body": "^2.4.1" } }, - "node_modules/@types/cacheable-request": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/@types/cacheable-request/-/cacheable-request-6.0.2.tgz", - "integrity": "sha512-B3xVo+dlKM6nnKTcmm5ZtY/OL8bOAOd2Olee9M1zft65ox50OzjEHW91sDiU9j6cvW8Ejg1/Qkf4xd2kugApUA==", - "dependencies": { - "@types/http-cache-semantics": "*", - "@types/keyv": "*", - "@types/node": "*", - "@types/responselike": "*" - } - }, - "node_modules/@types/http-cache-semantics": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/@types/http-cache-semantics/-/http-cache-semantics-4.0.1.tgz", - "integrity": "sha512-SZs7ekbP8CN0txVG2xVRH6EgKmEm31BOxA07vkFaETzZz1xh+cbt8BcI0slpymvwhx5dlFnQG2rTlPVQn+iRPQ==" - }, - "node_modules/@types/keyv": { - "version": "3.1.4", - "resolved": "https://registry.npmjs.org/@types/keyv/-/keyv-3.1.4.tgz", - "integrity": "sha512-BQ5aZNSCpj7D6K2ksrRCTmKRLEpnPvWDiLPfoGyhZ++8YtiK9d/3DBKPJgry359X/P1PfruyYwvnvwFjuEiEIg==", - "dependencies": { - "@types/node": "*" - } - }, "node_modules/@types/node": { - "version": "18.8.0", - "resolved": "https://registry.npmjs.org/@types/node/-/node-18.8.0.tgz", - "integrity": "sha512-u+h43R6U8xXDt2vzUaVP3VwjjLyOJk6uEciZS8OSyziUQGOwmk+l+4drxcsDboHXwyTaqS1INebghmWMRxq3LA==" - }, - "node_modules/@types/node-fetch": { - "version": "2.6.2", - "resolved": "https://registry.npmjs.org/@types/node-fetch/-/node-fetch-2.6.2.tgz", - "integrity": "sha512-DHqhlq5jeESLy19TYhLakJ07kNumXWjcDdxXsLUMJZ6ue8VZJj4kLPQVE/2mdHh3xZziNF1xppu5lwmS53HR+A==", - "dependencies": { - "@types/node": "*", - "form-data": "^3.0.0" - } - }, - "node_modules/@types/node-fetch/node_modules/form-data": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/form-data/-/form-data-3.0.1.tgz", - "integrity": "sha512-RHkBKtLWUVwd7SqRIvCZMEvAMoGUp0XU+seQiZejj0COz3RI3hWP4sCv3gZWWLjJTd7rGwcsF5eKZGii0r/hbg==", - "dependencies": { - "asynckit": "^0.4.0", - "combined-stream": "^1.0.8", - "mime-types": "^2.1.12" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/@types/responselike": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/@types/responselike/-/responselike-1.0.0.tgz", - "integrity": "sha512-85Y2BjiufFzaMIlvJDvTTB8Fxl2xfLo4HgmHzVBz08w4wDePCTjYw66PdrolO0kzli3yam/YCgRufyo1DdQVTA==", - "dependencies": { - "@types/node": "*" - } + "version": "18.11.12", + "resolved": "https://registry.npmjs.org/@types/node/-/node-18.11.12.tgz", + "integrity": "sha512-FgD3NtTAKvyMmD44T07zz2fEf+OKwutgBCEVM8GcvMGVGaDktiLNTDvPwC/LUe3PinMW+X6CuLOF2Ui1mAlSXg==" }, "node_modules/@types/webidl-conversions": { "version": "7.0.0", @@ -830,21 +1805,10 @@ "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz", "integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==" }, - "node_modules/abort-controller": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/abort-controller/-/abort-controller-3.0.0.tgz", - "integrity": "sha512-h8lQ8tacZYnR3vNQTgibj+tODHI5/+l06Au2Pcriv/Gmet0eaj4TwWH41sO9wnHDiQsEj19q0drzdWdeAHtweg==", - "dependencies": { - "event-target-shim": "^5.0.0" - }, - "engines": { - "node": ">=6.5" - } - }, "node_modules/acorn": { - "version": "8.8.0", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.8.0.tgz", - "integrity": "sha512-QOxyigPVrpZ2GXT+PFyZTl6TtOFc5egxHIP9IlQ+RbupQuX4RkT/Bee4/kQuC02Xkzg84JcT7oLYtDIQxp+v7w==", + "version": "8.8.1", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.8.1.tgz", + "integrity": "sha512-7zFpHzhnqYKrkYdUjF1HI1bzd0VygEGX8lFk4k5zVMqHEoES+P+7TKI+EvLO9WVMJ8eekdO0aDEK044xTXwPPA==", "bin": { "acorn": "bin/acorn" }, @@ -853,29 +1817,18 @@ } }, "node_modules/acorn-globals": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/acorn-globals/-/acorn-globals-6.0.0.tgz", - "integrity": "sha512-ZQl7LOWaF5ePqqcX4hLuv/bLXYQNfNWw2c0/yX/TsPRKamzHcTGQnlCjHT3TsmkOUVEPS3crCxiPfdzE/Trlhg==", + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/acorn-globals/-/acorn-globals-7.0.1.tgz", + "integrity": "sha512-umOSDSDrfHbTNPuNpC2NSnnA3LUrqpevPb4T9jRx4MagXNS0rs+gwiTcAvqCRmsD6utzsrzNt+ebm00SNWiC3Q==", "dependencies": { - "acorn": "^7.1.1", - "acorn-walk": "^7.1.1" - } - }, - "node_modules/acorn-globals/node_modules/acorn": { - "version": "7.4.1", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz", - "integrity": "sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==", - "bin": { - "acorn": "bin/acorn" - }, - "engines": { - "node": ">=0.4.0" + "acorn": "^8.1.0", + "acorn-walk": "^8.0.2" } }, "node_modules/acorn-walk": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-7.2.0.tgz", - "integrity": "sha512-OPdCF6GsMIP+Az+aWfAAOEt2/+iVDKE7oy6lJ098aoe59oAmK76qV6Gw60SbZ8jHuG2wH058GF4pLFbYamYrVA==", + "version": "8.2.0", + "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-8.2.0.tgz", + "integrity": "sha512-k+iyHEuPgSw6SbuDpGQM+06HQUa04DZ3o+F6CSzXMvvI5KMvnaEqXe+YVe555R9nn6GPt404fos4wcgpw12SDA==", "engines": { "node": ">=0.4.0" } @@ -996,11 +1949,13 @@ "integrity": "sha512-xh1Rl34h6Fi1DC2WWKfxUTVqRsNnr6LsKz2+hfwDxQJWmrx8+c7ylaqBMcHfl1U1r2dsifOvKX3LQuLNZ+XSvA==" }, "node_modules/axios": { - "version": "0.24.0", - "resolved": "https://registry.npmjs.org/axios/-/axios-0.24.0.tgz", - "integrity": "sha512-Q6cWsys88HoPgAaFAVUb0WpPk0O8iTeisR9IMqy9G8AbO4NlpVknrnQS03zzF9PGAWgO3cgletO3VjV/P7VztA==", + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/axios/-/axios-1.2.1.tgz", + "integrity": "sha512-I88cFiGu9ryt/tfVEi4kX2SITsvDddTajXTOFmt2uK1ZVA8LytjtdeyefdQWEf5PU8w+4SSJDoYnggflB5tW4A==", "dependencies": { - "follow-redirects": "^1.14.4" + "follow-redirects": "^1.15.0", + "form-data": "^4.0.0", + "proxy-from-env": "^1.1.0" } }, "node_modules/balanced-match": { @@ -1045,6 +2000,12 @@ "resolved": "https://registry.npmjs.org/boolbase/-/boolbase-1.0.0.tgz", "integrity": "sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww==" }, + "node_modules/bowser": { + "version": "2.11.0", + "resolved": "https://registry.npmjs.org/bowser/-/bowser-2.11.0.tgz", + "integrity": "sha512-AlcaJBi/pqqJBIQ8U9Mcpc9i8Aqxn88Skv5d+xBX006BY5u8N3mGLHa5Lgppa7L/HfwgwLgZ6NYs+Ag6uUmJRA==", + "optional": true + }, "node_modules/brace-expansion": { "version": "1.1.11", "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", @@ -1054,11 +2015,6 @@ "concat-map": "0.0.1" } }, - "node_modules/browser-process-hrtime": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/browser-process-hrtime/-/browser-process-hrtime-1.0.0.tgz", - "integrity": "sha512-9o5UecI3GhkpM6DrXr69PblIuWxPKk9Y0jHBRhdocZ2y7YECBFCsHm79Pr3OyR2AvjhDkabFJaDJMYRazHgsow==" - }, "node_modules/bson": { "version": "4.7.0", "resolved": "https://registry.npmjs.org/bson/-/bson-4.7.0.tgz", @@ -1120,31 +2076,6 @@ "node": ">= 0.8" } }, - "node_modules/cacheable-lookup": { - "version": "5.0.4", - "resolved": "https://registry.npmjs.org/cacheable-lookup/-/cacheable-lookup-5.0.4.tgz", - "integrity": "sha512-2/kNscPhpcxrOigMZzbiWF7dz8ilhb/nIHU3EyZiXWXpeq/au8qJ8VhdftMkty3n7Gj6HIGalQG8oiBNB3AJgA==", - "engines": { - "node": ">=10.6.0" - } - }, - "node_modules/cacheable-request": { - "version": "7.0.2", - "resolved": "https://registry.npmjs.org/cacheable-request/-/cacheable-request-7.0.2.tgz", - "integrity": "sha512-pouW8/FmiPQbuGpkXQ9BAPv/Mo5xDGANgSNXzTzJ8DrKGuXOssM4wIQRjfanNRh3Yu5cfYPvcorqbhg2KIJtew==", - "dependencies": { - "clone-response": "^1.0.2", - "get-stream": "^5.1.0", - "http-cache-semantics": "^4.0.0", - "keyv": "^4.0.0", - "lowercase-keys": "^2.0.0", - "normalize-url": "^6.0.1", - "responselike": "^2.0.0" - }, - "engines": { - "node": ">=8" - } - }, "node_modules/call-bind": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz", @@ -1179,9 +2110,9 @@ } }, "node_modules/canvacord/node_modules/chalk": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-5.0.1.tgz", - "integrity": "sha512-Fo07WOYGqMfCWHOzSXOt2CxDbC6skS/jO9ynEcmpANMoPrD+W1r1K6Vx7iNm+AQmETU1Xr2t+n8nzkV9t6xh3w==", + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-5.2.0.tgz", + "integrity": "sha512-ree3Gqw/nazQAPuJJEy+avdl7QfZMcUvmHIKgEZkGL+xOBzRvup5Hxo6LHuMceSxOabuJLJm5Yp/92R9eMmMvA==", "engines": { "node": "^12.17.0 || ^14.13 || >=16.0.0" }, @@ -1190,13 +2121,13 @@ } }, "node_modules/canvas": { - "version": "2.10.1", - "resolved": "https://registry.npmjs.org/canvas/-/canvas-2.10.1.tgz", - "integrity": "sha512-29pIjn9uwTUsIgJUNd7GXxKk8sg4iyJwLm1wIilNIqX1mVzXSc2nUij9exW1LqNpis1d2ebMYfMqTWcokZ4pdA==", + "version": "2.10.2", + "resolved": "https://registry.npmjs.org/canvas/-/canvas-2.10.2.tgz", + "integrity": "sha512-FSmlsip0nZ0U4Zcfht0qBJqDhlfGuevTZKE8h+dBOYrJjGvY3iqMGSzzbvkaFhvMXiVxfcMaPHS/kge++T5SKg==", "hasInstallScript": true, "dependencies": { "@mapbox/node-pre-gyp": "^1.0.0", - "nan": "^2.15.0", + "nan": "^2.17.0", "simple-get": "^3.0.3" }, "engines": { @@ -1267,17 +2198,6 @@ "node": ">=10" } }, - "node_modules/clone-response": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/clone-response/-/clone-response-1.0.3.tgz", - "integrity": "sha512-ROoL94jJH2dUVML2Y/5PEDNaSHgeOdSDicUyS7izcF63G6sTc/FTjLub4b8Il9S8S0beOfYt0TaA5qvFK+w0wA==", - "dependencies": { - "mimic-response": "^1.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/color-convert": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", @@ -1411,18 +2331,6 @@ "node": ">=12" } }, - "node_modules/data-urls/node_modules/whatwg-url": { - "version": "11.0.0", - "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-11.0.0.tgz", - "integrity": "sha512-RKT8HExMpoYx4igMiVMY83lN6UeITKJlBQ+vR/8ZJ8OCdSiN3RwCq+9gH0+Xzj0+5IrM6i4j/6LuvzbZIQgEcQ==", - "dependencies": { - "tr46": "^3.0.0", - "webidl-conversions": "^7.0.0" - }, - "engines": { - "node": ">=12" - } - }, "node_modules/debug": { "version": "4.3.4", "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", @@ -1445,34 +2353,9 @@ "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" }, "node_modules/decimal.js": { - "version": "10.4.1", - "resolved": "https://registry.npmjs.org/decimal.js/-/decimal.js-10.4.1.tgz", - "integrity": "sha512-F29o+vci4DodHYT9UrR5IEbfBw9pE5eSapIJdTqXK5+6hq+t8VRxwQyKlW2i+KDKFkkJQRvFyI/QXD83h8LyQw==" - }, - "node_modules/decompress-response": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/decompress-response/-/decompress-response-6.0.0.tgz", - "integrity": "sha512-aW35yZM6Bb/4oJlZncMH2LCoZtJXTRxES17vE3hoRiowU2kWHaJKFkSBDnDR+cm9J+9QhXmREyIfv0pji9ejCQ==", - "dependencies": { - "mimic-response": "^3.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/decompress-response/node_modules/mimic-response": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-3.1.0.tgz", - "integrity": "sha512-z0yWI+4FDrrweS8Zmt4Ej5HdJmky15+L2e6Wgn3+iK5fWzb6T3fhNFq2+MeTRb064c6Wr4N/wv0DzQTjNzHNGQ==", - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } + "version": "10.4.3", + "resolved": "https://registry.npmjs.org/decimal.js/-/decimal.js-10.4.3.tgz", + "integrity": "sha512-VBBaLc1MgL5XpzgIP7ny5Z6Nx3UrRkIViUkPUdtl9aya5amy3De1gsUUSB1g3+3sExYNjCAsAznmukyxCb1GRA==" }, "node_modules/deep-is": { "version": "0.1.4", @@ -1487,29 +2370,6 @@ "node": ">=12.4.0" } }, - "node_modules/defer-to-connect": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/defer-to-connect/-/defer-to-connect-2.0.1.tgz", - "integrity": "sha512-4tvttepXG1VaYGrRibk5EwJd1t4udunSOVMdLSAL6mId1ix438oPwPZMALY41FCijukO1L0twNcGsdzS7dHgDg==", - "engines": { - "node": ">=10" - } - }, - "node_modules/define-properties": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.1.4.tgz", - "integrity": "sha512-uckOqKcfaVvtBdsVkdPv3XjveQJsNQqmhXgRi8uhvWWuPYZCNlzT8qAyblUgNoXdHdjMTzAqeGjAoli8f+bzPA==", - "dependencies": { - "has-property-descriptors": "^1.0.0", - "object-keys": "^1.1.1" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, "node_modules/delayed-stream": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", @@ -1523,14 +2383,6 @@ "resolved": "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz", "integrity": "sha512-bd2L678uiWATM6m5Z1VzNCErI3jiGzt6HGY8OVICs40JQq/HALfbyNJmp0UDakEY4pMMaN0Ly5om/B1VI/+xfQ==" }, - "node_modules/denque": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/denque/-/denque-2.1.0.tgz", - "integrity": "sha512-HVQE3AAb/pxF8fQAoiqpvg9i3evqug3hoiwakOyZAwJm+6vZehbkYXZ0l4JxS+I3QxM97v5aaRNhj8v5oBhekw==", - "engines": { - "node": ">=0.10" - } - }, "node_modules/depd": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz", @@ -1548,32 +2400,29 @@ } }, "node_modules/discord-api-types": { - "version": "0.26.1", - "resolved": "https://registry.npmjs.org/discord-api-types/-/discord-api-types-0.26.1.tgz", - "integrity": "sha512-T5PdMQ+Y1MEECYMV5wmyi9VEYPagEDEi4S0amgsszpWY0VB9JJ/hEvM6BgLhbdnKky4gfmZEXtEEtojN8ZKJQQ==", - "engines": { - "node": ">=12" - } + "version": "0.37.21", + "resolved": "https://registry.npmjs.org/discord-api-types/-/discord-api-types-0.37.21.tgz", + "integrity": "sha512-GB4ThibZEzWXcvgL2QfjKoDX5j1sNLWtgibodiJ9M9PM0u9bdR2t3vZ24oQWLKlksJehSJmZDtRsAibhcr46vw==" }, "node_modules/discord-giveaways": { - "version": "5.2.2", - "resolved": "https://registry.npmjs.org/discord-giveaways/-/discord-giveaways-5.2.2.tgz", - "integrity": "sha512-aYUF1IiPdni+yxdSbPoUtQT5DmU9SOxmFjeuOJLF+4GUVewwT3o+V3tG3P5oJRc3yyYgzCiaWhFCXeHTu4YReA==", + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/discord-giveaways/-/discord-giveaways-6.0.1.tgz", + "integrity": "sha512-hs6Vtb62VdlV7NfB93Phaxc8FW0cH4N1Nkb0bXVZ2npgn73yGOFVmdp8bBP5gsC2ady9OAXXI8Gb66t1IddkFw==", "dependencies": { - "deepmerge-ts": "^4.0.3", + "deepmerge-ts": "^4.2.1", "serialize-javascript": "^6.0.0" }, "engines": { - "node": ">=16.6.0" + "node": ">=16.9.0" }, "peerDependencies": { - "discord.js": ">=13.5.0" + "discord.js": ">=14.0.0" } }, "node_modules/discord-image-generation": { - "version": "1.4.14", - "resolved": "https://registry.npmjs.org/discord-image-generation/-/discord-image-generation-1.4.14.tgz", - "integrity": "sha512-RHPlwAu7S3O8IhHa/Q4tdYmuvis2Dv6BAcg9sR37Nj9bdNlC9wOHdsIzh+3aYa34oZQa595v3Mmsqi9TFF//Pw==", + "version": "1.4.15", + "resolved": "https://registry.npmjs.org/discord-image-generation/-/discord-image-generation-1.4.15.tgz", + "integrity": "sha512-+yNZAdmxPrGcDC87EPxdX9zqhyOJB1PMM+uBHldztnTbmroZKAI2P/tC9TpyUOgCCUiciKdAKGBAJ2Gkh8793w==", "dependencies": { "canvas": "^2.10.1", "gifencoder": "^2.0.1", @@ -1581,60 +2430,27 @@ } }, "node_modules/discord.js": { - "version": "13.11.0", - "resolved": "https://registry.npmjs.org/discord.js/-/discord.js-13.11.0.tgz", - "integrity": "sha512-/vA6oQtKilFlwVZSIFipPeWg5kU6gjUOffuaYWtDDJwIXKqiThNdymLkmQhnf8Ztlt+3vKsoqXENrgpQdaNCVQ==", + "version": "14.7.1", + "resolved": "https://registry.npmjs.org/discord.js/-/discord.js-14.7.1.tgz", + "integrity": "sha512-1FECvqJJjjeYcjSm0IGMnPxLqja/pmG1B0W2l3lUY2Gi4KXiyTeQmU1IxWcbXHn2k+ytP587mMWqva2IA87EbA==", "dependencies": { - "@discordjs/builders": "^0.16.0", - "@discordjs/collection": "^0.7.0", - "@sapphire/async-queue": "^1.5.0", - "@types/node-fetch": "^2.6.2", + "@discordjs/builders": "^1.4.0", + "@discordjs/collection": "^1.3.0", + "@discordjs/rest": "^1.4.0", + "@discordjs/util": "^0.1.0", + "@sapphire/snowflake": "^3.2.2", "@types/ws": "^8.5.3", - "discord-api-types": "^0.33.5", - "form-data": "^4.0.0", - "node-fetch": "^2.6.7", - "ws": "^8.8.1" - }, - "engines": { - "node": ">=16.6.0", - "npm": ">=7.0.0" - } - }, - "node_modules/discord.js/node_modules/@discordjs/builders": { - "version": "0.16.0", - "resolved": "https://registry.npmjs.org/@discordjs/builders/-/builders-0.16.0.tgz", - "integrity": "sha512-9/NCiZrLivgRub2/kBc0Vm5pMBE5AUdYbdXsLu/yg9ANgvnaJ0bZKTY8yYnLbsEc/LYUP79lEIdC73qEYhWq7A==", - "deprecated": "no longer supported", - "dependencies": { - "@sapphire/shapeshift": "^3.5.1", - "discord-api-types": "^0.36.2", + "discord-api-types": "^0.37.20", "fast-deep-equal": "^3.1.3", - "ts-mixer": "^6.0.1", - "tslib": "^2.4.0" + "lodash.snakecase": "^4.1.1", + "tslib": "^2.4.1", + "undici": "^5.13.0", + "ws": "^8.11.0" }, "engines": { "node": ">=16.9.0" } }, - "node_modules/discord.js/node_modules/@discordjs/builders/node_modules/discord-api-types": { - "version": "0.36.3", - "resolved": "https://registry.npmjs.org/discord-api-types/-/discord-api-types-0.36.3.tgz", - "integrity": "sha512-bz/NDyG0KBo/tY14vSkrwQ/n3HKPf87a0WFW/1M9+tXYK+vp5Z5EksawfCWo2zkAc6o7CClc0eff1Pjrqznlwg==" - }, - "node_modules/discord.js/node_modules/@discordjs/collection": { - "version": "0.7.0", - "resolved": "https://registry.npmjs.org/@discordjs/collection/-/collection-0.7.0.tgz", - "integrity": "sha512-R5i8Wb8kIcBAFEPLLf7LVBQKBDYUL+ekb23sOgpkpyGT+V4P7V83wTxcsqmX+PbqHt4cEHn053uMWfRqh/Z/nA==", - "deprecated": "no longer supported", - "engines": { - "node": ">=16.9.0" - } - }, - "node_modules/discord.js/node_modules/discord-api-types": { - "version": "0.33.5", - "resolved": "https://registry.npmjs.org/discord-api-types/-/discord-api-types-0.33.5.tgz", - "integrity": "sha512-dvO5M52v7m7Dy96+XUnzXNsQ/0npsYpU6dL205kAtEDueswoz3aU3bh1UMoK4cQmcGtB1YRyLKqp+DXi05lzFg==" - }, "node_modules/dom-serializer": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-2.0.0.tgz", @@ -1690,9 +2506,9 @@ } }, "node_modules/dompurify": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/dompurify/-/dompurify-2.4.0.tgz", - "integrity": "sha512-Be9tbQMZds4a3C6xTmz68NlMfeONA//4dOavl/1rNw50E+/QO0KVpbcU0PcaW0nsQxurXls9ZocqFxk8R2mWEA==" + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/dompurify/-/dompurify-2.4.1.tgz", + "integrity": "sha512-ewwFzHzrrneRjxzmK6oVz/rZn9VWspGFRDb4/rRtIsM1n36t9AKma/ye8syCpcw+XJ25kOK/hOG7t1j2I2yBqA==" }, "node_modules/domutils": { "version": "3.0.1", @@ -1708,11 +2524,11 @@ } }, "node_modules/dotenv": { - "version": "10.0.0", - "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-10.0.0.tgz", - "integrity": "sha512-rlBi9d8jpv9Sf1klPjNfFAuWDjKLwTIJJ/VxtoTwIR6hnZxcEOQCZg2oIL3MWBYw5GpUDKOEnND7LXTbIpQ03Q==", + "version": "16.0.3", + "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-16.0.3.tgz", + "integrity": "sha512-7GO6HghkA5fYG9TYnNxi14/7K9f5occMlp3zXAuSxn7CKCxt9xbNWG7yF8hTCSUchlfWSe3uLmlPfigevRItzQ==", "engines": { - "node": ">=10" + "node": ">=12" } }, "node_modules/ecc-jsbn": { @@ -1737,14 +2553,6 @@ "iconv-lite": "^0.6.2" } }, - "node_modules/end-of-stream": { - "version": "1.4.4", - "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.4.tgz", - "integrity": "sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==", - "dependencies": { - "once": "^1.4.0" - } - }, "node_modules/entities": { "version": "4.4.0", "resolved": "https://registry.npmjs.org/entities/-/entities-4.4.0.tgz", @@ -1840,67 +2648,6 @@ "follow-redirects": "^1.10.0" } }, - "node_modules/erela.js/node_modules/@discordjs/collection": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/@discordjs/collection/-/collection-1.1.0.tgz", - "integrity": "sha512-PQ2Bv6pnT7aGPCKWbvvNRww5tYCGpggIQVgpuF9TdDPeR6n6vQYxezXiLVOS9z2B62Dp4c+qepQ15SgJbLYtCQ==", - "engines": { - "node": ">=16.9.0" - } - }, - "node_modules/es-abstract": { - "version": "1.20.3", - "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.20.3.tgz", - "integrity": "sha512-AyrnaKVpMzljIdwjzrj+LxGmj8ik2LckwXacHqrJJ/jxz6dDDBcZ7I7nlHM0FvEW8MfbWJwOd+yT2XzYW49Frw==", - "dependencies": { - "call-bind": "^1.0.2", - "es-to-primitive": "^1.2.1", - "function-bind": "^1.1.1", - "function.prototype.name": "^1.1.5", - "get-intrinsic": "^1.1.3", - "get-symbol-description": "^1.0.0", - "has": "^1.0.3", - "has-property-descriptors": "^1.0.0", - "has-symbols": "^1.0.3", - "internal-slot": "^1.0.3", - "is-callable": "^1.2.6", - "is-negative-zero": "^2.0.2", - "is-regex": "^1.1.4", - "is-shared-array-buffer": "^1.0.2", - "is-string": "^1.0.7", - "is-weakref": "^1.0.2", - "object-inspect": "^1.12.2", - "object-keys": "^1.1.1", - "object.assign": "^4.1.4", - "regexp.prototype.flags": "^1.4.3", - "safe-regex-test": "^1.0.0", - "string.prototype.trimend": "^1.0.5", - "string.prototype.trimstart": "^1.0.5", - "unbox-primitive": "^1.0.2" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/es-to-primitive": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.1.tgz", - "integrity": "sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==", - "dependencies": { - "is-callable": "^1.1.4", - "is-date-object": "^1.0.1", - "is-symbol": "^1.0.2" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, "node_modules/escape-latex": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/escape-latex/-/escape-latex-1.2.0.tgz", @@ -1955,14 +2702,6 @@ "node": ">=0.10.0" } }, - "node_modules/event-target-shim": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/event-target-shim/-/event-target-shim-5.0.1.tgz", - "integrity": "sha512-i/2XbnSz/uxRCU6+NdVJgKWDTM427+MqYbkQzD321DuCQJUqOuJKIA0IM2+W2xtYHdKOmZ4dR6fExsd4SXL+WQ==", - "engines": { - "node": ">=6" - } - }, "node_modules/exif-parser": { "version": "0.1.12", "resolved": "https://registry.npmjs.org/exif-parser/-/exif-parser-0.1.12.tgz", @@ -1996,6 +2735,22 @@ "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", "integrity": "sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==" }, + "node_modules/fast-xml-parser": { + "version": "4.0.11", + "resolved": "https://registry.npmjs.org/fast-xml-parser/-/fast-xml-parser-4.0.11.tgz", + "integrity": "sha512-4aUg3aNRR/WjQAcpceODG1C3x3lFANXRo8+1biqfieHmg9pyMt7qB4lQV/Ta6sJCTbA5vfD8fnA8S54JATiFUA==", + "optional": true, + "dependencies": { + "strnum": "^1.0.5" + }, + "bin": { + "fxparser": "src/cli/cli.js" + }, + "funding": { + "type": "paypal", + "url": "https://paypal.me/naturalintelligence" + } + }, "node_modules/figlet": { "version": "1.5.2", "resolved": "https://registry.npmjs.org/figlet/-/figlet-1.5.2.tgz", @@ -2088,6 +2843,17 @@ "node": ">= 8" } }, + "node_modules/fs-minipass/node_modules/minipass": { + "version": "3.3.6", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", + "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, "node_modules/fs.realpath": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", @@ -2098,31 +2864,6 @@ "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==" }, - "node_modules/function.prototype.name": { - "version": "1.1.5", - "resolved": "https://registry.npmjs.org/function.prototype.name/-/function.prototype.name-1.1.5.tgz", - "integrity": "sha512-uN7m/BzVKQnCUF/iW8jYea67v++2u7m5UgENbHRtdDVclOUP+FMPlCNdmk0h/ysGyo2tavMJEDqJAkJdRa1vMA==", - "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.3", - "es-abstract": "^1.19.0", - "functions-have-names": "^1.2.2" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/functions-have-names": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/functions-have-names/-/functions-have-names-1.2.3.tgz", - "integrity": "sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==", - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, "node_modules/gauge": { "version": "3.0.2", "resolved": "https://registry.npmjs.org/gauge/-/gauge-3.0.2.tgz", @@ -2160,35 +2901,6 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/get-stream": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-5.2.0.tgz", - "integrity": "sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA==", - "dependencies": { - "pump": "^3.0.0" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/get-symbol-description": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/get-symbol-description/-/get-symbol-description-1.0.0.tgz", - "integrity": "sha512-2EmdH1YvIQiZpltCNgkuiUnyukzxM/R6NDJX31Ke3BG1Nq5b0S2PhX59UKi9vZpPDQVdqn+1IcaAwnzTT5vCjw==", - "dependencies": { - "call-bind": "^1.0.2", - "get-intrinsic": "^1.1.1" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, "node_modules/getpass": { "version": "0.1.7", "resolved": "https://registry.npmjs.org/getpass/-/getpass-0.1.7.tgz", @@ -2247,28 +2959,15 @@ "process": "^0.11.10" } }, - "node_modules/got": { - "version": "11.8.5", - "resolved": "https://registry.npmjs.org/got/-/got-11.8.5.tgz", - "integrity": "sha512-o0Je4NvQObAuZPHLFoRSkdG2lTgtcynqymzg2Vupdx6PorhaT5MCbIyXG6d4D94kk8ZG57QeosgdiqfJWhEhlQ==", + "node_modules/gopd": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.0.1.tgz", + "integrity": "sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA==", "dependencies": { - "@sindresorhus/is": "^4.0.0", - "@szmarczak/http-timer": "^4.0.5", - "@types/cacheable-request": "^6.0.1", - "@types/responselike": "^1.0.0", - "cacheable-lookup": "^5.0.3", - "cacheable-request": "^7.0.2", - "decompress-response": "^6.0.0", - "http2-wrapper": "^1.0.0-beta.5.2", - "lowercase-keys": "^2.0.0", - "p-cancelable": "^2.0.0", - "responselike": "^2.0.0" - }, - "engines": { - "node": ">=10.19.0" + "get-intrinsic": "^1.1.3" }, "funding": { - "url": "https://github.com/sindresorhus/got?sponsor=1" + "url": "https://github.com/sponsors/ljharb" } }, "node_modules/har-schema": { @@ -2303,14 +3002,6 @@ "node": ">= 0.4.0" } }, - "node_modules/has-bigints": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/has-bigints/-/has-bigints-1.0.2.tgz", - "integrity": "sha512-tSvCKtBr9lkF0Ex0aQiP9N+OpV4zi2r/Nee5VkRDbaqv35RLYMzbwQfFSZZH0kR+Rd6302UJZ2p/bJCEoR3VoQ==", - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, "node_modules/has-flag": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", @@ -2319,17 +3010,6 @@ "node": ">=8" } }, - "node_modules/has-property-descriptors": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.0.tgz", - "integrity": "sha512-62DVLZGoiEBDHQyqG4w9xCuZ7eJEwNmJRWw2VY84Oedb7WFcA27fiEVe8oUQx9hAUJ4ekurquucTGwsyO1XGdQ==", - "dependencies": { - "get-intrinsic": "^1.1.1" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, "node_modules/has-symbols": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.3.tgz", @@ -2501,11 +3181,6 @@ "entities": "^4.3.0" } }, - "node_modules/http-cache-semantics": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-4.1.0.tgz", - "integrity": "sha512-carPklcUh7ROWRK7Cv27RPtdhYhUsela/ue5/jKzjegVvXDqM2ILE9Q2BGn9JZJh1g87cp56su/FgQSzcWS8cQ==" - }, "node_modules/http-errors": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-2.0.0.tgz", @@ -2548,18 +3223,6 @@ "npm": ">=1.3.7" } }, - "node_modules/http2-wrapper": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/http2-wrapper/-/http2-wrapper-1.0.3.tgz", - "integrity": "sha512-V+23sDMr12Wnz7iTcDeJr3O6AIxlnvT/bmaAAAP/Xda35C90p9599p0F1eHR/N1KILWSoWVAiOMFjBBXaXSMxg==", - "dependencies": { - "quick-lru": "^5.1.1", - "resolve-alpn": "^1.0.0" - }, - "engines": { - "node": ">=10.19.0" - } - }, "node_modules/https-proxy-agent": { "version": "5.0.1", "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.1.tgz", @@ -2637,19 +3300,6 @@ "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" }, - "node_modules/internal-slot": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/internal-slot/-/internal-slot-1.0.3.tgz", - "integrity": "sha512-O0DB1JC/sPyZl7cIo78n5dR7eUSwwpYPiXRhTzNxZVAMUuB8vlnRFyLxdrVToks6XPLVnFfbzaVd5WLjhgg+vA==", - "dependencies": { - "get-intrinsic": "^1.1.0", - "has": "^1.0.3", - "side-channel": "^1.0.4" - }, - "engines": { - "node": ">= 0.4" - } - }, "node_modules/ip": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/ip/-/ip-2.0.0.tgz", @@ -2670,32 +3320,6 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/is-bigint": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/is-bigint/-/is-bigint-1.0.4.tgz", - "integrity": "sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg==", - "dependencies": { - "has-bigints": "^1.0.1" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-boolean-object": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.1.2.tgz", - "integrity": "sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA==", - "dependencies": { - "call-bind": "^1.0.2", - "has-tostringtag": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, "node_modules/is-callable": { "version": "1.2.7", "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.7.tgz", @@ -2707,20 +3331,6 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/is-date-object": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.5.tgz", - "integrity": "sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ==", - "dependencies": { - "has-tostringtag": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, "node_modules/is-fullwidth-code-point": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", @@ -2756,99 +3366,20 @@ "hex-color-regex": "~1.0.2" } }, - "node_modules/is-negative-zero": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.2.tgz", - "integrity": "sha512-dqJvarLawXsFbNDeJW7zAz8ItJ9cd28YufuuFzh0G8pNHjJMnY08Dv7sYX2uF5UpQOwieAeOExEYAWWfu7ZZUA==", - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-number-object": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/is-number-object/-/is-number-object-1.0.7.tgz", - "integrity": "sha512-k1U0IRzLMo7ZlYIfzRu23Oh6MiIFasgpb9X76eqfFZAqwH44UI4KTBvBYIZ1dSL9ZzChTB9ShHfLkR4pdW5krQ==", - "dependencies": { - "has-tostringtag": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, "node_modules/is-potential-custom-element-name": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/is-potential-custom-element-name/-/is-potential-custom-element-name-1.0.1.tgz", "integrity": "sha512-bCYeRA2rVibKZd+s2625gGnGF/t7DSqDs4dP7CrLA1m7jKWz6pps0LpYLJN8Q64HtmPKJ1hrN3nzPNKFEKOUiQ==" }, - "node_modules/is-regex": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.1.4.tgz", - "integrity": "sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg==", - "dependencies": { - "call-bind": "^1.0.2", - "has-tostringtag": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-shared-array-buffer": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-shared-array-buffer/-/is-shared-array-buffer-1.0.2.tgz", - "integrity": "sha512-sqN2UDu1/0y6uvXyStCOzyhAjCSlHceFoMKJW8W9EU9cvic/QdsZ0kEU93HEy3IUEFZIiH/3w+AH/UQbPHNdhA==", - "dependencies": { - "call-bind": "^1.0.2" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-string": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.0.7.tgz", - "integrity": "sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg==", - "dependencies": { - "has-tostringtag": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-symbol": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.4.tgz", - "integrity": "sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg==", - "dependencies": { - "has-symbols": "^1.0.2" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, "node_modules/is-typed-array": { - "version": "1.1.9", - "resolved": "https://registry.npmjs.org/is-typed-array/-/is-typed-array-1.1.9.tgz", - "integrity": "sha512-kfrlnTTn8pZkfpJMUgYD7YZ3qzeJgWUn8XfVYBARc4wnmNOmLbmuuaAs3q5fvB0UJOn6yHAKaGTPM7d6ezoD/A==", + "version": "1.1.10", + "resolved": "https://registry.npmjs.org/is-typed-array/-/is-typed-array-1.1.10.tgz", + "integrity": "sha512-PJqgEHiWZvMpaFZ3uTc8kHPM4+4ADTlDniuQL7cU/UDA0Ql7F70yGfHph3cLNe+c9toaigv+DFzTJKhc2CtO6A==", "dependencies": { "available-typed-arrays": "^1.0.5", "call-bind": "^1.0.2", - "es-abstract": "^1.20.0", "for-each": "^0.3.3", + "gopd": "^1.0.1", "has-tostringtag": "^1.0.0" }, "engines": { @@ -2863,17 +3394,6 @@ "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz", "integrity": "sha512-cyA56iCMHAh5CdzjJIa4aohJyeO1YbwLi3Jc35MmRU6poroFjIGZzUzupGiRPOjgHg9TLu43xbpwXk523fMxKA==" }, - "node_modules/is-weakref": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-weakref/-/is-weakref-1.0.2.tgz", - "integrity": "sha512-qctsuLZmIQ0+vSSMfoVvyFe2+GSEvnmZ2ezTup1SBse9+twCCeial6EEi3Nc2KFcf6+qz2FBPnjXsk8xhKSaPQ==", - "dependencies": { - "call-bind": "^1.0.2" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, "node_modules/isgd": { "version": "1.1.3", "resolved": "https://registry.npmjs.org/isgd/-/isgd-1.1.3.tgz", @@ -2913,40 +3433,39 @@ "integrity": "sha512-UVU9dibq2JcFWxQPA6KCqj5O42VOmAY3zQUfEKxU0KpTGXwNoCjkX1e13eHNvw/xPynt6pU0rZ1htjWTNTSXsg==" }, "node_modules/jsdom": { - "version": "18.1.1", - "resolved": "https://registry.npmjs.org/jsdom/-/jsdom-18.1.1.tgz", - "integrity": "sha512-NmJQbjQ/gpS/1at/ce3nCx89HbXL/f5OcenBe8wU1Eik0ROhyUc3LtmG3567dEHAGXkN8rmILW/qtCOPxPHQJw==", + "version": "20.0.3", + "resolved": "https://registry.npmjs.org/jsdom/-/jsdom-20.0.3.tgz", + "integrity": "sha512-SYhBvTh89tTfCD/CRdSOm13mOBa42iTaTyfyEWBdKcGdPxPtLFBXuHR8XHb33YNYaP+lLbmSvBTsnoesCNJEsQ==", "dependencies": { - "abab": "^2.0.5", - "acorn": "^8.5.0", - "acorn-globals": "^6.0.0", + "abab": "^2.0.6", + "acorn": "^8.8.1", + "acorn-globals": "^7.0.0", "cssom": "^0.5.0", "cssstyle": "^2.3.0", - "data-urls": "^3.0.1", - "decimal.js": "^10.3.1", + "data-urls": "^3.0.2", + "decimal.js": "^10.4.2", "domexception": "^4.0.0", "escodegen": "^2.0.0", "form-data": "^4.0.0", "html-encoding-sniffer": "^3.0.0", "http-proxy-agent": "^5.0.0", - "https-proxy-agent": "^5.0.0", + "https-proxy-agent": "^5.0.1", "is-potential-custom-element-name": "^1.0.1", - "nwsapi": "^2.2.0", - "parse5": "6.0.1", - "saxes": "^5.0.1", + "nwsapi": "^2.2.2", + "parse5": "^7.1.1", + "saxes": "^6.0.0", "symbol-tree": "^3.2.4", - "tough-cookie": "^4.0.0", - "w3c-hr-time": "^1.0.2", - "w3c-xmlserializer": "^3.0.0", + "tough-cookie": "^4.1.2", + "w3c-xmlserializer": "^4.0.0", "webidl-conversions": "^7.0.0", "whatwg-encoding": "^2.0.0", "whatwg-mimetype": "^3.0.0", - "whatwg-url": "^10.0.0", - "ws": "^8.2.3", + "whatwg-url": "^11.0.0", + "ws": "^8.11.0", "xml-name-validator": "^4.0.0" }, "engines": { - "node": ">=12" + "node": ">=14" }, "peerDependencies": { "canvas": "^2.5.0" @@ -2957,16 +3476,6 @@ } } }, - "node_modules/jsdom/node_modules/parse5": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/parse5/-/parse5-6.0.1.tgz", - "integrity": "sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw==" - }, - "node_modules/json-buffer": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.1.tgz", - "integrity": "sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==" - }, "node_modules/json-schema": { "version": "0.4.0", "resolved": "https://registry.npmjs.org/json-schema/-/json-schema-0.4.0.tgz", @@ -2997,16 +3506,11 @@ } }, "node_modules/kareem": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/kareem/-/kareem-2.4.1.tgz", - "integrity": "sha512-aJ9opVoXroQUPfovYP5kaj2lM7Jn02Gw13bL0lg9v0V7SaUc0qavPs0Eue7d2DcC3NjqI6QAUElXNsuZSeM+EA==" - }, - "node_modules/keyv": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/keyv/-/keyv-4.5.0.tgz", - "integrity": "sha512-2YvuMsA+jnFGtBareKqgANOEKe1mk3HKiXu2fRmAfyxG0MJAywNhi5ttWA3PMjl4NmpyjZNbFifR2vNjW1znfA==", - "dependencies": { - "json-buffer": "3.0.1" + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/kareem/-/kareem-2.5.0.tgz", + "integrity": "sha512-rVBUGGwvqg130iwYu8k7lutHuDBFj1yGRdnlE44wEhxAmFBad1zcL66PdWC1raw3tIObY6XWhtv3VL04xQb/cg==", + "engines": { + "node": ">=12.0.0" } }, "node_modules/levn": { @@ -3054,19 +3558,16 @@ "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==" }, + "node_modules/lodash.snakecase": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/lodash.snakecase/-/lodash.snakecase-4.1.1.tgz", + "integrity": "sha512-QZ1d4xoBHYUeuouhEq3lk3Uq7ldgyFXGBhg04+oRLnIz8o9T65Eh+8YdroUwn846zchkA9yDsDl5CVVaV2nqYw==" + }, "node_modules/lodash.uniqwith": { "version": "4.5.0", "resolved": "https://registry.npmjs.org/lodash.uniqwith/-/lodash.uniqwith-4.5.0.tgz", "integrity": "sha512-7lYL8bLopMoy4CTICbxygAUq6CdRJ36vFc80DucPueUee+d5NBRxz3FdT9Pes/HEx5mPoT9jwnsEJWz1N7uq7Q==" }, - "node_modules/lowercase-keys": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-2.0.0.tgz", - "integrity": "sha512-tqNXrS78oMOE73NMxK4EMLQsQowWf8jKooH9g7xPavRT706R6bkQJ6DY2Te7QukaZsulxa30wQ7bk0pm4XiHmA==", - "engines": { - "node": ">=8" - } - }, "node_modules/lru-cache": { "version": "6.0.0", "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", @@ -3126,19 +3627,19 @@ } }, "node_modules/mathjs": { - "version": "10.6.4", - "resolved": "https://registry.npmjs.org/mathjs/-/mathjs-10.6.4.tgz", - "integrity": "sha512-omQyvRE1jIy+3k2qsqkWASOcd45aZguXZDckr3HtnTYyXk5+2xpVfC3kATgbO2Srjxlqww3TVdhD0oUdZ/hiFA==", + "version": "11.5.0", + "resolved": "https://registry.npmjs.org/mathjs/-/mathjs-11.5.0.tgz", + "integrity": "sha512-vJ/+SqWtxjW6/aeDRt8xL3TlOVKqwN15BIyTGVqGbIWuiqgY4SxZ0yLuna82YH9CB757iFP7uJ4m3KvVBX7Qcg==", "dependencies": { - "@babel/runtime": "^7.18.6", + "@babel/runtime": "^7.20.6", "complex.js": "^2.1.1", - "decimal.js": "^10.3.1", + "decimal.js": "^10.4.3", "escape-latex": "^1.2.0", "fraction.js": "^4.2.0", "javascript-natural-sort": "^0.7.1", "seedrandom": "^3.0.5", "tiny-emitter": "^2.1.0", - "typed-function": "^2.1.0" + "typed-function": "^4.1.0" }, "bin": { "mathjs": "bin/cli.js" @@ -3183,14 +3684,6 @@ "node": ">= 0.6" } }, - "node_modules/mimic-response": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-1.0.1.tgz", - "integrity": "sha512-j5EctnkH7amfV/q5Hgmoal1g2QHFJRraOtmx0JpIqkxhBhI/lJSl1nMpQ45hVarwNETOoWEimndZ4QK0RHxuxQ==", - "engines": { - "node": ">=4" - } - }, "node_modules/min-document": { "version": "2.19.0", "resolved": "https://registry.npmjs.org/min-document/-/min-document-2.19.0.tgz", @@ -3219,14 +3712,17 @@ } }, "node_modules/minimist": { - "version": "1.2.6", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.6.tgz", - "integrity": "sha512-Jsjnk4bw3YJqYzbdyBiNsPWHPfO++UGG749Cxs6peCu5Xg4nrena6OVxOYxrQTqww0Jmwt+Ref8rggumkTLz9Q==" + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.7.tgz", + "integrity": "sha512-bzfL1YUZsP41gmu/qjrEk0Q6i2ix/cVeAhbCbqH9u3zYutS1cLg00qhrD0M2MVdCcx4Sc0UpP2eBWo9rotpq6g==", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } }, "node_modules/minipass": { - "version": "3.3.4", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.4.tgz", - "integrity": "sha512-I9WPbWHCGu8W+6k1ZiGpPu0GkoKBeorkfKNuAFBNS1HNFJvke82sxvI5bzcCNpWPorkOO5QQ+zomzzwRxejXiw==", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-4.0.0.tgz", + "integrity": "sha512-g2Uuh2jEKoht+zvO6vJqXmYpflPqzRBT+Th2h01DKh5z7wbY/AZ2gCQ78cP70YoHPyFdY30YBV5WxgLOEwOykw==", "dependencies": { "yallist": "^4.0.0" }, @@ -3246,6 +3742,17 @@ "node": ">= 8" } }, + "node_modules/minizlib/node_modules/minipass": { + "version": "3.3.6", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", + "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, "node_modules/mkdirp": { "version": "0.5.6", "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz", @@ -3271,9 +3778,9 @@ "integrity": "sha512-cBMXjSW+fjOb4tyaVHuaVE/A5TqkukDWiOfxxAjY+PEqmmBQlLwn+8OzwPiG3brouXKY5Un4pBjAeB6UToXHaQ==" }, "node_modules/moment-timezone": { - "version": "0.5.37", - "resolved": "https://registry.npmjs.org/moment-timezone/-/moment-timezone-0.5.37.tgz", - "integrity": "sha512-uEDzDNFhfaywRl+vwXxffjjq1q0Vzr+fcQpQ1bU0kbzorfS7zVtZnCnGc8mhWmF39d4g4YriF6kwA75mJKE/Zg==", + "version": "0.5.39", + "resolved": "https://registry.npmjs.org/moment-timezone/-/moment-timezone-0.5.39.tgz", + "integrity": "sha512-hoB6suq4ISDj7BDgctiOy6zljBsdYT0++0ZzZm9rtxIvJhIbQ3nmbgSWe7dNFGurl6/7b1OUkHlmN9JWgXVz7w==", "dependencies": { "moment": ">= 2.9.0" }, @@ -3282,55 +3789,43 @@ } }, "node_modules/mongodb": { - "version": "4.9.1", - "resolved": "https://registry.npmjs.org/mongodb/-/mongodb-4.9.1.tgz", - "integrity": "sha512-ZhgI/qBf84fD7sI4waZBoLBNJYPQN5IOC++SBCiPiyhzpNKOxN/fi0tBHvH2dEC42HXtNEbFB0zmNz4+oVtorQ==", + "version": "4.12.1", + "resolved": "https://registry.npmjs.org/mongodb/-/mongodb-4.12.1.tgz", + "integrity": "sha512-koT87tecZmxPKtxRQD8hCKfn+ockEL2xBiUvx3isQGI6mFmagWt4f4AyCE9J4sKepnLhMacoCTQQA6SLAI2L6w==", "dependencies": { "bson": "^4.7.0", - "denque": "^2.1.0", - "mongodb-connection-string-url": "^2.5.3", - "socks": "^2.7.0" + "mongodb-connection-string-url": "^2.5.4", + "socks": "^2.7.1" }, "engines": { "node": ">=12.9.0" }, "optionalDependencies": { + "@aws-sdk/credential-providers": "^3.186.0", "saslprep": "^1.0.3" } }, "node_modules/mongodb-connection-string-url": { - "version": "2.5.4", - "resolved": "https://registry.npmjs.org/mongodb-connection-string-url/-/mongodb-connection-string-url-2.5.4.tgz", - "integrity": "sha512-SeAxuWs0ez3iI3vvmLk/j2y+zHwigTDKQhtdxTgt5ZCOQQS5+HW4g45/Xw5vzzbn7oQXCNQ24Z40AkJsizEy7w==", + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/mongodb-connection-string-url/-/mongodb-connection-string-url-2.6.0.tgz", + "integrity": "sha512-WvTZlI9ab0QYtTYnuMLgobULWhokRjtC7db9LtcVfJ+Hsnyr5eo6ZtNAt3Ly24XZScGMelOcGtm7lSn0332tPQ==", "dependencies": { "@types/whatwg-url": "^8.2.1", "whatwg-url": "^11.0.0" } }, - "node_modules/mongodb-connection-string-url/node_modules/whatwg-url": { - "version": "11.0.0", - "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-11.0.0.tgz", - "integrity": "sha512-RKT8HExMpoYx4igMiVMY83lN6UeITKJlBQ+vR/8ZJ8OCdSiN3RwCq+9gH0+Xzj0+5IrM6i4j/6LuvzbZIQgEcQ==", - "dependencies": { - "tr46": "^3.0.0", - "webidl-conversions": "^7.0.0" - }, - "engines": { - "node": ">=12" - } - }, "node_modules/mongoose": { - "version": "6.6.3", - "resolved": "https://registry.npmjs.org/mongoose/-/mongoose-6.6.3.tgz", - "integrity": "sha512-2Ye018PNBBXJd717qhfjBGo7k8HQb/pKziO9d5wY14iZSUI7hxqL7bwNDg+poeBwnlhBYLncZkips15Blfgxbw==", + "version": "6.8.0", + "resolved": "https://registry.npmjs.org/mongoose/-/mongoose-6.8.0.tgz", + "integrity": "sha512-zlUfjcLya3pLfLTxwyH5S9bZUolJWGKF2M7PEV0118jv4VWHR/krjb6LIWu1RPQN2rwYmnmjjzJLVhbhmHqSmg==", "dependencies": { - "bson": "^4.6.5", - "kareem": "2.4.1", - "mongodb": "4.9.1", + "bson": "^4.7.0", + "kareem": "2.5.0", + "mongodb": "4.12.1", "mpath": "0.9.0", "mquery": "4.0.3", "ms": "2.1.3", - "sift": "16.0.0" + "sift": "16.0.1" }, "engines": { "node": ">=12.0.0" @@ -3365,9 +3860,9 @@ "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==" }, "node_modules/nan": { - "version": "2.16.0", - "resolved": "https://registry.npmjs.org/nan/-/nan-2.16.0.tgz", - "integrity": "sha512-UdAqHyFngu7TfQKsCBgAA6pWDkT8MAO7d0jyOecVhN5354xbLqdn8mV9Tat9gepAupm0bt2DbeaSC8vS52MuFA==" + "version": "2.17.0", + "resolved": "https://registry.npmjs.org/nan/-/nan-2.17.0.tgz", + "integrity": "sha512-2ZTgtl0nJsO0KQCjEpxcIr5D+Yv90plTitZt9JBfQvVJDS5seMl3FOvsh3+9CoYWXf/1l5OaZzzF6nDm4cagaQ==" }, "node_modules/node-fetch": { "version": "2.6.7", @@ -3421,36 +3916,22 @@ "node": ">=6" } }, - "node_modules/normalize-url": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/normalize-url/-/normalize-url-6.1.0.tgz", - "integrity": "sha512-DlL+XwOy3NxAQ8xuC0okPgK46iuVNAK01YN7RueYBqqFeGsBjV9XmCAzAdgt+667bCl5kPh9EqKKDwnaPG1I7A==", - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/npm": { - "version": "8.19.2", - "resolved": "https://registry.npmjs.org/npm/-/npm-8.19.2.tgz", - "integrity": "sha512-MWkISVv5f7iZbfNkry5/5YBqSYJEDAKSJdL+uzSQuyLg+hgLQUyZynu3SH6bOZlvR9ZvJYk2EiJO6B1r+ynwHg==", + "version": "9.2.0", + "resolved": "https://registry.npmjs.org/npm/-/npm-9.2.0.tgz", + "integrity": "sha512-oypVdaWGHDuV79RXLvp+B9gh6gDyAmoHKrQ0/JBYTWWx5D8/+AAxFdZC84fSIiyDdyW4qfrSyYGKhekxDOaMXQ==", "bundleDependencies": [ "@isaacs/string-locale-compare", "@npmcli/arborist", - "@npmcli/ci-detect", "@npmcli/config", - "@npmcli/fs", "@npmcli/map-workspaces", "@npmcli/package-json", - "@npmcli/promise-spawn", "@npmcli/run-script", "abbrev", "archy", "cacache", "chalk", - "chownr", + "ci-info", "cli-columns", "cli-table3", "columnify", @@ -3479,7 +3960,6 @@ "minipass", "minipass-pipeline", "mkdirp", - "mkdirp-infer-owner", "ms", "node-gyp", "nopt", @@ -3491,7 +3971,6 @@ "npm-registry-fetch", "npm-user-validate", "npmlog", - "opener", "p-map", "pacote", "parse-conflict-json", @@ -3500,7 +3979,6 @@ "read", "read-package-json", "read-package-json-fast", - "readdir-scoped-modules", "rimraf", "semver", "ssri", @@ -3514,86 +3992,80 @@ ], "dependencies": { "@isaacs/string-locale-compare": "^1.1.0", - "@npmcli/arborist": "^5.6.2", - "@npmcli/ci-detect": "^2.0.0", - "@npmcli/config": "^4.2.1", - "@npmcli/fs": "^2.1.0", - "@npmcli/map-workspaces": "^2.0.3", - "@npmcli/package-json": "^2.0.0", - "@npmcli/promise-spawn": "*", - "@npmcli/run-script": "^4.2.1", - "abbrev": "~1.1.1", + "@npmcli/arborist": "^6.1.5", + "@npmcli/config": "^6.1.0", + "@npmcli/map-workspaces": "^3.0.0", + "@npmcli/package-json": "^3.0.0", + "@npmcli/run-script": "^6.0.0", + "abbrev": "^2.0.0", "archy": "~1.0.0", - "cacache": "^16.1.3", + "cacache": "^17.0.3", "chalk": "^4.1.2", - "chownr": "^2.0.0", + "ci-info": "^3.7.0", "cli-columns": "^4.0.0", - "cli-table3": "^0.6.2", + "cli-table3": "^0.6.3", "columnify": "^1.6.0", - "fastest-levenshtein": "^1.0.12", - "fs-minipass": "*", + "fastest-levenshtein": "^1.0.16", + "fs-minipass": "^2.1.0", "glob": "^8.0.1", "graceful-fs": "^4.2.10", - "hosted-git-info": "^5.1.0", + "hosted-git-info": "^6.1.1", "ini": "^3.0.1", - "init-package-json": "^3.0.2", + "init-package-json": "^4.0.1", "is-cidr": "^4.0.2", - "json-parse-even-better-errors": "^2.3.1", - "libnpmaccess": "^6.0.4", - "libnpmdiff": "^4.0.5", - "libnpmexec": "^4.0.13", - "libnpmfund": "^3.0.4", - "libnpmhook": "^8.0.4", - "libnpmorg": "^4.0.4", - "libnpmpack": "^4.1.3", - "libnpmpublish": "^6.0.5", - "libnpmsearch": "^5.0.4", - "libnpmteam": "^4.0.4", - "libnpmversion": "^3.0.7", - "make-fetch-happen": "^10.2.0", - "minimatch": "*", - "minipass": "^3.1.6", + "json-parse-even-better-errors": "^3.0.0", + "libnpmaccess": "^7.0.1", + "libnpmdiff": "^5.0.6", + "libnpmexec": "^5.0.6", + "libnpmfund": "^4.0.6", + "libnpmhook": "^9.0.1", + "libnpmorg": "^5.0.1", + "libnpmpack": "^5.0.6", + "libnpmpublish": "^7.0.6", + "libnpmsearch": "^6.0.1", + "libnpmteam": "^5.0.1", + "libnpmversion": "^4.0.1", + "make-fetch-happen": "^11.0.2", + "minimatch": "^5.1.1", + "minipass": "^4.0.0", "minipass-pipeline": "^1.2.4", "mkdirp": "^1.0.4", - "mkdirp-infer-owner": "^2.0.0", "ms": "^2.1.2", - "node-gyp": "^9.1.0", - "nopt": "^6.0.0", - "npm-audit-report": "^3.0.0", - "npm-install-checks": "^5.0.0", - "npm-package-arg": "^9.1.0", - "npm-pick-manifest": "^7.0.2", - "npm-profile": "^6.2.0", - "npm-registry-fetch": "^13.3.1", + "node-gyp": "^9.3.0", + "nopt": "^7.0.0", + "npm-audit-report": "^4.0.0", + "npm-install-checks": "^6.0.0", + "npm-package-arg": "^10.1.0", + "npm-pick-manifest": "^8.0.1", + "npm-profile": "^7.0.1", + "npm-registry-fetch": "^14.0.3", "npm-user-validate": "^1.0.1", - "npmlog": "^6.0.2", - "opener": "^1.5.2", + "npmlog": "^7.0.1", "p-map": "^4.0.0", - "pacote": "^13.6.2", - "parse-conflict-json": "^2.0.2", - "proc-log": "^2.0.1", + "pacote": "^15.0.7", + "parse-conflict-json": "^3.0.0", + "proc-log": "^3.0.0", "qrcode-terminal": "^0.12.0", "read": "~1.0.7", - "read-package-json": "^5.0.2", - "read-package-json-fast": "^2.0.3", - "readdir-scoped-modules": "^1.1.0", + "read-package-json": "^6.0.0", + "read-package-json-fast": "^3.0.1", "rimraf": "^3.0.2", - "semver": "^7.3.7", - "ssri": "^9.0.1", - "tar": "^6.1.11", + "semver": "^7.3.8", + "ssri": "^10.0.1", + "tar": "^6.1.13", "text-table": "~0.2.0", "tiny-relative-date": "^1.3.0", - "treeverse": "^2.0.0", - "validate-npm-package-name": "^4.0.0", - "which": "^2.0.2", - "write-file-atomic": "^4.0.1" + "treeverse": "^3.0.0", + "validate-npm-package-name": "^5.0.0", + "which": "^3.0.0", + "write-file-atomic": "^5.0.0" }, "bin": { "npm": "bin/npm-cli.js", "npx": "bin/npx-cli.js" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16" + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, "node_modules/npm/node_modules/@colors/colors": { @@ -3616,183 +4088,150 @@ "license": "ISC" }, "node_modules/npm/node_modules/@npmcli/arborist": { - "version": "5.6.2", + "version": "6.1.5", "inBundle": true, "license": "ISC", "dependencies": { "@isaacs/string-locale-compare": "^1.1.0", - "@npmcli/installed-package-contents": "^1.0.7", - "@npmcli/map-workspaces": "^2.0.3", - "@npmcli/metavuln-calculator": "^3.0.1", - "@npmcli/move-file": "^2.0.0", + "@npmcli/fs": "^3.1.0", + "@npmcli/installed-package-contents": "^2.0.0", + "@npmcli/map-workspaces": "^3.0.0", + "@npmcli/metavuln-calculator": "^5.0.0", "@npmcli/name-from-folder": "^1.0.1", - "@npmcli/node-gyp": "^2.0.0", - "@npmcli/package-json": "^2.0.0", - "@npmcli/query": "^1.2.0", - "@npmcli/run-script": "^4.1.3", - "bin-links": "^3.0.3", - "cacache": "^16.1.3", + "@npmcli/node-gyp": "^3.0.0", + "@npmcli/package-json": "^3.0.0", + "@npmcli/query": "^3.0.0", + "@npmcli/run-script": "^6.0.0", + "bin-links": "^4.0.1", + "cacache": "^17.0.3", "common-ancestor-path": "^1.0.1", - "json-parse-even-better-errors": "^2.3.1", + "hosted-git-info": "^6.1.1", + "json-parse-even-better-errors": "^3.0.0", "json-stringify-nice": "^1.1.4", - "minimatch": "^5.1.0", - "mkdirp": "^1.0.4", - "mkdirp-infer-owner": "^2.0.0", - "nopt": "^6.0.0", - "npm-install-checks": "^5.0.0", - "npm-package-arg": "^9.0.0", - "npm-pick-manifest": "^7.0.2", - "npm-registry-fetch": "^13.0.0", - "npmlog": "^6.0.2", - "pacote": "^13.6.1", - "parse-conflict-json": "^2.0.1", - "proc-log": "^2.0.0", + "minimatch": "^5.1.1", + "nopt": "^7.0.0", + "npm-install-checks": "^6.0.0", + "npm-package-arg": "^10.1.0", + "npm-pick-manifest": "^8.0.1", + "npm-registry-fetch": "^14.0.3", + "npmlog": "^7.0.1", + "pacote": "^15.0.7", + "parse-conflict-json": "^3.0.0", + "proc-log": "^3.0.0", "promise-all-reject-late": "^1.0.0", "promise-call-limit": "^1.0.1", - "read-package-json-fast": "^2.0.2", - "readdir-scoped-modules": "^1.1.0", - "rimraf": "^3.0.2", + "read-package-json-fast": "^3.0.1", "semver": "^7.3.7", - "ssri": "^9.0.0", - "treeverse": "^2.0.0", + "ssri": "^10.0.1", + "treeverse": "^3.0.0", "walk-up-path": "^1.0.0" }, "bin": { "arborist": "bin/index.js" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - } - }, - "node_modules/npm/node_modules/@npmcli/ci-detect": { - "version": "2.0.0", - "inBundle": true, - "license": "ISC", - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16" + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, "node_modules/npm/node_modules/@npmcli/config": { - "version": "4.2.2", + "version": "6.1.0", "inBundle": true, "license": "ISC", "dependencies": { - "@npmcli/map-workspaces": "^2.0.2", + "@npmcli/map-workspaces": "^3.0.0", "ini": "^3.0.0", - "mkdirp-infer-owner": "^2.0.0", - "nopt": "^6.0.0", - "proc-log": "^2.0.0", - "read-package-json-fast": "^2.0.3", + "nopt": "^7.0.0", + "proc-log": "^3.0.0", + "read-package-json-fast": "^3.0.0", "semver": "^7.3.5", "walk-up-path": "^1.0.0" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, "node_modules/npm/node_modules/@npmcli/disparity-colors": { - "version": "2.0.0", + "version": "3.0.0", "inBundle": true, "license": "ISC", "dependencies": { "ansi-styles": "^4.3.0" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, "node_modules/npm/node_modules/@npmcli/fs": { - "version": "2.1.2", + "version": "3.1.0", "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": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, "node_modules/npm/node_modules/@npmcli/git": { - "version": "3.0.2", + "version": "4.0.3", "inBundle": true, "license": "ISC", "dependencies": { - "@npmcli/promise-spawn": "^3.0.0", + "@npmcli/promise-spawn": "^6.0.0", "lru-cache": "^7.4.4", "mkdirp": "^1.0.4", - "npm-pick-manifest": "^7.0.0", - "proc-log": "^2.0.0", + "npm-pick-manifest": "^8.0.0", + "proc-log": "^3.0.0", "promise-inflight": "^1.0.1", "promise-retry": "^2.0.1", "semver": "^7.3.5", - "which": "^2.0.2" + "which": "^3.0.0" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, "node_modules/npm/node_modules/@npmcli/installed-package-contents": { - "version": "1.0.7", + "version": "2.0.1", "inBundle": true, "license": "ISC", "dependencies": { - "npm-bundled": "^1.1.1", - "npm-normalize-package-bin": "^1.0.1" + "npm-bundled": "^3.0.0", + "npm-normalize-package-bin": "^3.0.0" }, "bin": { - "installed-package-contents": "index.js" + "installed-package-contents": "lib/index.js" }, "engines": { - "node": ">= 10" - } - }, - "node_modules/npm/node_modules/@npmcli/installed-package-contents/node_modules/npm-bundled": { - "version": "1.1.2", - "inBundle": true, - "license": "ISC", - "dependencies": { - "npm-normalize-package-bin": "^1.0.1" + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, "node_modules/npm/node_modules/@npmcli/map-workspaces": { - "version": "2.0.4", + "version": "3.0.0", "inBundle": true, "license": "ISC", "dependencies": { "@npmcli/name-from-folder": "^1.0.1", "glob": "^8.0.1", "minimatch": "^5.0.1", - "read-package-json-fast": "^2.0.3" + "read-package-json-fast": "^3.0.0" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, "node_modules/npm/node_modules/@npmcli/metavuln-calculator": { - "version": "3.1.1", + "version": "5.0.0", "inBundle": true, "license": "ISC", "dependencies": { - "cacache": "^16.0.0", - "json-parse-even-better-errors": "^2.3.1", - "pacote": "^13.0.3", + "cacache": "^17.0.0", + "json-parse-even-better-errors": "^3.0.0", + "pacote": "^15.0.0", "semver": "^7.3.5" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - } - }, - "node_modules/npm/node_modules/@npmcli/move-file": { - "version": "2.0.1", - "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": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, "node_modules/npm/node_modules/@npmcli/name-from-folder": { @@ -3801,61 +4240,59 @@ "license": "ISC" }, "node_modules/npm/node_modules/@npmcli/node-gyp": { - "version": "2.0.0", + "version": "3.0.0", "inBundle": true, "license": "ISC", "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, "node_modules/npm/node_modules/@npmcli/package-json": { - "version": "2.0.0", - "inBundle": true, - "license": "ISC", - "dependencies": { - "json-parse-even-better-errors": "^2.3.1" - }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - } - }, - "node_modules/npm/node_modules/@npmcli/promise-spawn": { "version": "3.0.0", "inBundle": true, "license": "ISC", "dependencies": { - "infer-owner": "^1.0.4" + "json-parse-even-better-errors": "^3.0.0" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/npm/node_modules/@npmcli/promise-spawn": { + "version": "6.0.1", + "inBundle": true, + "license": "ISC", + "dependencies": { + "which": "^3.0.0" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, "node_modules/npm/node_modules/@npmcli/query": { - "version": "1.2.0", + "version": "3.0.0", "inBundle": true, "license": "ISC", "dependencies": { - "npm-package-arg": "^9.1.0", - "postcss-selector-parser": "^6.0.10", - "semver": "^7.3.7" + "postcss-selector-parser": "^6.0.10" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, "node_modules/npm/node_modules/@npmcli/run-script": { - "version": "4.2.1", + "version": "6.0.0", "inBundle": true, "license": "ISC", "dependencies": { - "@npmcli/node-gyp": "^2.0.0", - "@npmcli/promise-spawn": "^3.0.0", + "@npmcli/node-gyp": "^3.0.0", + "@npmcli/promise-spawn": "^6.0.0", "node-gyp": "^9.0.0", - "read-package-json-fast": "^2.0.3", - "which": "^2.0.2" + "read-package-json-fast": "^3.0.0", + "which": "^3.0.0" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, "node_modules/npm/node_modules/@tootallnate/once": { @@ -3867,9 +4304,23 @@ } }, "node_modules/npm/node_modules/abbrev": { - "version": "1.1.1", + "version": "2.0.0", "inBundle": true, - "license": "ISC" + "license": "ISC", + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/npm/node_modules/abort-controller": { + "version": "3.0.0", + "inBundle": true, + "license": "MIT", + "dependencies": { + "event-target-shim": "^5.0.0" + }, + "engines": { + "node": ">=6.5" + } }, "node_modules/npm/node_modules/agent-base": { "version": "6.0.2", @@ -3940,49 +4391,90 @@ "license": "MIT" }, "node_modules/npm/node_modules/are-we-there-yet": { - "version": "3.0.1", + "version": "4.0.0", "inBundle": true, "license": "ISC", "dependencies": { "delegates": "^1.0.0", - "readable-stream": "^3.6.0" + "readable-stream": "^4.1.0" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/npm/node_modules/asap": { - "version": "2.0.6", + "node_modules/npm/node_modules/are-we-there-yet/node_modules/buffer": { + "version": "6.0.3", + "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" + "license": "MIT", + "dependencies": { + "base64-js": "^1.3.1", + "ieee754": "^1.2.1" + } + }, + "node_modules/npm/node_modules/are-we-there-yet/node_modules/readable-stream": { + "version": "4.2.0", + "inBundle": true, + "license": "MIT", + "dependencies": { + "abort-controller": "^3.0.0", + "buffer": "^6.0.3", + "events": "^3.3.0", + "process": "^0.11.10" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + } }, "node_modules/npm/node_modules/balanced-match": { "version": "1.0.2", "inBundle": true, "license": "MIT" }, + "node_modules/npm/node_modules/base64-js": { + "version": "1.5.1", + "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" + }, "node_modules/npm/node_modules/bin-links": { - "version": "3.0.3", + "version": "4.0.1", "inBundle": true, "license": "ISC", "dependencies": { - "cmd-shim": "^5.0.0", - "mkdirp-infer-owner": "^2.0.0", - "npm-normalize-package-bin": "^2.0.0", - "read-cmd-shim": "^3.0.0", - "rimraf": "^3.0.0", - "write-file-atomic": "^4.0.0" + "cmd-shim": "^6.0.0", + "npm-normalize-package-bin": "^3.0.0", + "read-cmd-shim": "^4.0.0", + "write-file-atomic": "^5.0.0" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - } - }, - "node_modules/npm/node_modules/bin-links/node_modules/npm-normalize-package-bin": { - "version": "2.0.0", - "inBundle": true, - "license": "ISC", - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, "node_modules/npm/node_modules/binary-extensions": { @@ -4010,31 +4502,26 @@ } }, "node_modules/npm/node_modules/cacache": { - "version": "16.1.3", + "version": "17.0.3", "inBundle": true, "license": "ISC", "dependencies": { - "@npmcli/fs": "^2.1.0", - "@npmcli/move-file": "^2.0.0", - "chownr": "^2.0.0", + "@npmcli/fs": "^3.1.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": "^4.0.0", "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", + "ssri": "^10.0.0", "tar": "^6.1.11", - "unique-filename": "^2.0.0" + "unique-filename": "^3.0.0" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, "node_modules/npm/node_modules/chalk": { @@ -4060,6 +4547,14 @@ "node": ">=10" } }, + "node_modules/npm/node_modules/ci-info": { + "version": "3.7.0", + "inBundle": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, "node_modules/npm/node_modules/cidr-regex": { "version": "3.1.1", "inBundle": true, @@ -4092,7 +4587,7 @@ } }, "node_modules/npm/node_modules/cli-table3": { - "version": "0.6.2", + "version": "0.6.3", "inBundle": true, "license": "MIT", "dependencies": { @@ -4114,14 +4609,11 @@ } }, "node_modules/npm/node_modules/cmd-shim": { - "version": "5.0.0", + "version": "6.0.0", "inBundle": true, "license": "ISC", - "dependencies": { - "mkdirp-infer-owner": "^2.0.0" - }, "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, "node_modules/npm/node_modules/color-convert": { @@ -4207,14 +4699,6 @@ "inBundle": true, "license": "MIT" }, - "node_modules/npm/node_modules/debuglog": { - "version": "1.0.1", - "inBundle": true, - "license": "MIT", - "engines": { - "node": "*" - } - }, "node_modules/npm/node_modules/defaults": { "version": "1.0.3", "inBundle": true, @@ -4236,15 +4720,6 @@ "node": ">= 0.6" } }, - "node_modules/npm/node_modules/dezalgo": { - "version": "1.0.4", - "inBundle": true, - "license": "ISC", - "dependencies": { - "asap": "^2.0.0", - "wrappy": "1" - } - }, "node_modules/npm/node_modules/diff": { "version": "5.1.0", "inBundle": true, @@ -4280,10 +4755,29 @@ "inBundle": true, "license": "MIT" }, - "node_modules/npm/node_modules/fastest-levenshtein": { - "version": "1.0.12", + "node_modules/npm/node_modules/event-target-shim": { + "version": "5.0.1", "inBundle": true, - "license": "MIT" + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/npm/node_modules/events": { + "version": "3.3.0", + "inBundle": true, + "license": "MIT", + "engines": { + "node": ">=0.8.x" + } + }, + "node_modules/npm/node_modules/fastest-levenshtein": { + "version": "1.0.16", + "inBundle": true, + "license": "MIT", + "engines": { + "node": ">= 4.9.1" + } }, "node_modules/npm/node_modules/fs-minipass": { "version": "2.1.0", @@ -4296,6 +4790,17 @@ "node": ">= 8" } }, + "node_modules/npm/node_modules/fs-minipass/node_modules/minipass": { + "version": "3.3.6", + "inBundle": true, + "license": "ISC", + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, "node_modules/npm/node_modules/fs.realpath": { "version": "1.0.0", "inBundle": true, @@ -4307,7 +4812,7 @@ "license": "MIT" }, "node_modules/npm/node_modules/gauge": { - "version": "4.0.4", + "version": "5.0.0", "inBundle": true, "license": "ISC", "dependencies": { @@ -4321,7 +4826,7 @@ "wide-align": "^1.1.5" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, "node_modules/npm/node_modules/glob": { @@ -4372,14 +4877,14 @@ "license": "ISC" }, "node_modules/npm/node_modules/hosted-git-info": { - "version": "5.1.0", + "version": "6.1.1", "inBundle": true, "license": "ISC", "dependencies": { "lru-cache": "^7.5.1" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, "node_modules/npm/node_modules/http-cache-semantics": { @@ -4432,15 +4937,34 @@ "node": ">=0.10.0" } }, + "node_modules/npm/node_modules/ieee754": { + "version": "1.2.1", + "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": "BSD-3-Clause" + }, "node_modules/npm/node_modules/ignore-walk": { - "version": "5.0.1", + "version": "6.0.0", "inBundle": true, "license": "ISC", "dependencies": { "minimatch": "^5.0.1" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, "node_modules/npm/node_modules/imurmurhash": { @@ -4487,20 +5011,20 @@ } }, "node_modules/npm/node_modules/init-package-json": { - "version": "3.0.2", + "version": "4.0.1", "inBundle": true, "license": "ISC", "dependencies": { - "npm-package-arg": "^9.0.1", + "npm-package-arg": "^10.0.0", "promzard": "^0.3.0", "read": "^1.0.7", - "read-package-json": "^5.0.0", + "read-package-json": "^6.0.0", "semver": "^7.3.5", "validate-npm-package-license": "^3.0.4", - "validate-npm-package-name": "^4.0.0" + "validate-npm-package-name": "^5.0.0" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, "node_modules/npm/node_modules/ip": { @@ -4557,9 +5081,12 @@ "license": "ISC" }, "node_modules/npm/node_modules/json-parse-even-better-errors": { - "version": "2.3.1", + "version": "3.0.0", "inBundle": true, - "license": "MIT" + "license": "MIT", + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } }, "node_modules/npm/node_modules/json-stringify-nice": { "version": "1.1.4", @@ -4588,160 +5115,158 @@ "license": "MIT" }, "node_modules/npm/node_modules/libnpmaccess": { - "version": "6.0.4", + "version": "7.0.1", "inBundle": true, "license": "ISC", "dependencies": { - "aproba": "^2.0.0", - "minipass": "^3.1.1", - "npm-package-arg": "^9.0.1", - "npm-registry-fetch": "^13.0.0" + "npm-package-arg": "^10.1.0", + "npm-registry-fetch": "^14.0.3" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, "node_modules/npm/node_modules/libnpmdiff": { - "version": "4.0.5", + "version": "5.0.6", "inBundle": true, "license": "ISC", "dependencies": { - "@npmcli/disparity-colors": "^2.0.0", - "@npmcli/installed-package-contents": "^1.0.7", + "@npmcli/arborist": "^6.1.5", + "@npmcli/disparity-colors": "^3.0.0", + "@npmcli/installed-package-contents": "^2.0.0", "binary-extensions": "^2.2.0", "diff": "^5.1.0", - "minimatch": "^5.0.1", - "npm-package-arg": "^9.0.1", - "pacote": "^13.6.1", - "tar": "^6.1.0" + "minimatch": "^5.1.1", + "npm-package-arg": "^10.1.0", + "pacote": "^15.0.7", + "tar": "^6.1.13" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, "node_modules/npm/node_modules/libnpmexec": { - "version": "4.0.13", + "version": "5.0.6", "inBundle": true, "license": "ISC", "dependencies": { - "@npmcli/arborist": "^5.6.2", - "@npmcli/ci-detect": "^2.0.0", - "@npmcli/fs": "^2.1.1", - "@npmcli/run-script": "^4.2.0", + "@npmcli/arborist": "^6.1.5", + "@npmcli/run-script": "^6.0.0", "chalk": "^4.1.0", - "mkdirp-infer-owner": "^2.0.0", - "npm-package-arg": "^9.0.1", - "npmlog": "^6.0.2", - "pacote": "^13.6.1", - "proc-log": "^2.0.0", + "ci-info": "^3.7.0", + "npm-package-arg": "^10.1.0", + "npmlog": "^7.0.1", + "pacote": "^15.0.7", + "proc-log": "^3.0.0", "read": "^1.0.7", - "read-package-json-fast": "^2.0.2", + "read-package-json-fast": "^3.0.1", "semver": "^7.3.7", "walk-up-path": "^1.0.0" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, "node_modules/npm/node_modules/libnpmfund": { - "version": "3.0.4", + "version": "4.0.6", "inBundle": true, "license": "ISC", "dependencies": { - "@npmcli/arborist": "^5.6.2" + "@npmcli/arborist": "^6.1.5" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, "node_modules/npm/node_modules/libnpmhook": { - "version": "8.0.4", + "version": "9.0.1", "inBundle": true, "license": "ISC", "dependencies": { "aproba": "^2.0.0", - "npm-registry-fetch": "^13.0.0" + "npm-registry-fetch": "^14.0.3" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, "node_modules/npm/node_modules/libnpmorg": { - "version": "4.0.4", + "version": "5.0.1", "inBundle": true, "license": "ISC", "dependencies": { "aproba": "^2.0.0", - "npm-registry-fetch": "^13.0.0" + "npm-registry-fetch": "^14.0.3" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, "node_modules/npm/node_modules/libnpmpack": { - "version": "4.1.3", + "version": "5.0.6", "inBundle": true, "license": "ISC", "dependencies": { - "@npmcli/run-script": "^4.1.3", - "npm-package-arg": "^9.0.1", - "pacote": "^13.6.1" + "@npmcli/arborist": "^6.1.5", + "@npmcli/run-script": "^6.0.0", + "npm-package-arg": "^10.1.0", + "pacote": "^15.0.7" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, "node_modules/npm/node_modules/libnpmpublish": { - "version": "6.0.5", + "version": "7.0.6", "inBundle": true, "license": "ISC", "dependencies": { - "normalize-package-data": "^4.0.0", - "npm-package-arg": "^9.0.1", - "npm-registry-fetch": "^13.0.0", + "normalize-package-data": "^5.0.0", + "npm-package-arg": "^10.1.0", + "npm-registry-fetch": "^14.0.3", "semver": "^7.3.7", - "ssri": "^9.0.0" + "ssri": "^10.0.1" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, "node_modules/npm/node_modules/libnpmsearch": { - "version": "5.0.4", + "version": "6.0.1", "inBundle": true, "license": "ISC", "dependencies": { - "npm-registry-fetch": "^13.0.0" + "npm-registry-fetch": "^14.0.3" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, "node_modules/npm/node_modules/libnpmteam": { - "version": "4.0.4", + "version": "5.0.1", "inBundle": true, "license": "ISC", "dependencies": { "aproba": "^2.0.0", - "npm-registry-fetch": "^13.0.0" + "npm-registry-fetch": "^14.0.3" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, "node_modules/npm/node_modules/libnpmversion": { - "version": "3.0.7", + "version": "4.0.1", "inBundle": true, "license": "ISC", "dependencies": { - "@npmcli/git": "^3.0.0", - "@npmcli/run-script": "^4.1.3", - "json-parse-even-better-errors": "^2.3.1", - "proc-log": "^2.0.0", + "@npmcli/git": "^4.0.1", + "@npmcli/run-script": "^6.0.0", + "json-parse-even-better-errors": "^3.0.0", + "proc-log": "^3.0.0", "semver": "^7.3.7" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, "node_modules/npm/node_modules/lru-cache": { @@ -4753,6 +5278,416 @@ } }, "node_modules/npm/node_modules/make-fetch-happen": { + "version": "11.0.2", + "inBundle": true, + "license": "ISC", + "dependencies": { + "agentkeepalive": "^4.2.1", + "cacache": "^17.0.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": "^4.0.0", + "minipass-collect": "^1.0.2", + "minipass-fetch": "^3.0.0", + "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": "^10.0.0" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/npm/node_modules/minimatch": { + "version": "5.1.1", + "inBundle": true, + "license": "ISC", + "dependencies": { + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/npm/node_modules/minipass": { + "version": "4.0.0", + "inBundle": true, + "license": "ISC", + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/npm/node_modules/minipass-collect": { + "version": "1.0.2", + "inBundle": true, + "license": "ISC", + "dependencies": { + "minipass": "^3.0.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/npm/node_modules/minipass-collect/node_modules/minipass": { + "version": "3.3.6", + "inBundle": true, + "license": "ISC", + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/npm/node_modules/minipass-fetch": { + "version": "3.0.0", + "inBundle": true, + "license": "MIT", + "dependencies": { + "minipass": "^3.1.6", + "minipass-sized": "^1.0.3", + "minizlib": "^2.1.2" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + }, + "optionalDependencies": { + "encoding": "^0.1.13" + } + }, + "node_modules/npm/node_modules/minipass-fetch/node_modules/minipass": { + "version": "3.3.6", + "inBundle": true, + "license": "ISC", + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/npm/node_modules/minipass-flush": { + "version": "1.0.5", + "inBundle": true, + "license": "ISC", + "dependencies": { + "minipass": "^3.0.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/npm/node_modules/minipass-flush/node_modules/minipass": { + "version": "3.3.6", + "inBundle": true, + "license": "ISC", + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/npm/node_modules/minipass-json-stream": { + "version": "1.0.1", + "inBundle": true, + "license": "MIT", + "dependencies": { + "jsonparse": "^1.3.1", + "minipass": "^3.0.0" + } + }, + "node_modules/npm/node_modules/minipass-json-stream/node_modules/minipass": { + "version": "3.3.6", + "inBundle": true, + "license": "ISC", + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/npm/node_modules/minipass-pipeline": { + "version": "1.2.4", + "inBundle": true, + "license": "ISC", + "dependencies": { + "minipass": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/npm/node_modules/minipass-pipeline/node_modules/minipass": { + "version": "3.3.6", + "inBundle": true, + "license": "ISC", + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/npm/node_modules/minipass-sized": { + "version": "1.0.3", + "inBundle": true, + "license": "ISC", + "dependencies": { + "minipass": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/npm/node_modules/minipass-sized/node_modules/minipass": { + "version": "3.3.6", + "inBundle": true, + "license": "ISC", + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/npm/node_modules/minizlib": { + "version": "2.1.2", + "inBundle": true, + "license": "MIT", + "dependencies": { + "minipass": "^3.0.0", + "yallist": "^4.0.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/npm/node_modules/minizlib/node_modules/minipass": { + "version": "3.3.6", + "inBundle": true, + "license": "ISC", + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/npm/node_modules/mkdirp": { + "version": "1.0.4", + "inBundle": true, + "license": "MIT", + "bin": { + "mkdirp": "bin/cmd.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/npm/node_modules/ms": { + "version": "2.1.3", + "inBundle": true, + "license": "MIT" + }, + "node_modules/npm/node_modules/mute-stream": { + "version": "0.0.8", + "inBundle": true, + "license": "ISC" + }, + "node_modules/npm/node_modules/negotiator": { + "version": "0.6.3", + "inBundle": true, + "license": "MIT", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/npm/node_modules/node-gyp": { + "version": "9.3.0", + "inBundle": true, + "license": "MIT", + "dependencies": { + "env-paths": "^2.2.0", + "glob": "^7.1.4", + "graceful-fs": "^4.2.6", + "make-fetch-happen": "^10.0.3", + "nopt": "^6.0.0", + "npmlog": "^6.0.0", + "rimraf": "^3.0.2", + "semver": "^7.3.5", + "tar": "^6.1.2", + "which": "^2.0.2" + }, + "bin": { + "node-gyp": "bin/node-gyp.js" + }, + "engines": { + "node": "^12.22 || ^14.13 || >=16" + } + }, + "node_modules/npm/node_modules/node-gyp/node_modules/@npmcli/fs": { + "version": "2.1.2", + "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/@npmcli/move-file": { + "version": "2.0.1", + "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/node-gyp/node_modules/abbrev": { + "version": "1.1.1", + "inBundle": true, + "license": "ISC" + }, + "node_modules/npm/node_modules/node-gyp/node_modules/are-we-there-yet": { + "version": "3.0.1", + "inBundle": true, + "license": "ISC", + "dependencies": { + "delegates": "^1.0.0", + "readable-stream": "^3.6.0" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + } + }, + "node_modules/npm/node_modules/node-gyp/node_modules/brace-expansion": { + "version": "1.1.11", + "inBundle": true, + "license": "MIT", + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/npm/node_modules/node-gyp/node_modules/cacache": { + "version": "16.1.3", + "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", + "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.0.3", + "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.0", + "inBundle": true, + "license": "ISC", + "dependencies": { + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/npm/node_modules/node-gyp/node_modules/gauge": { + "version": "4.0.4", + "inBundle": true, + "license": "ISC", + "dependencies": { + "aproba": "^1.0.3 || ^2.0.0", + "color-support": "^1.1.3", + "console-control-strings": "^1.1.0", + "has-unicode": "^2.0.1", + "signal-exit": "^3.0.7", + "string-width": "^4.2.3", + "strip-ansi": "^6.0.1", + "wide-align": "^1.1.5" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + } + }, + "node_modules/npm/node_modules/node-gyp/node_modules/glob": { + "version": "7.2.3", + "inBundle": true, + "license": "ISC", + "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/npm/node_modules/node-gyp/node_modules/make-fetch-happen": { "version": "10.2.1", "inBundle": true, "license": "ISC", @@ -4778,19 +5713,19 @@ "node": "^12.13.0 || ^14.15.0 || >=16.0.0" } }, - "node_modules/npm/node_modules/minimatch": { - "version": "5.1.0", + "node_modules/npm/node_modules/node-gyp/node_modules/minimatch": { + "version": "3.1.2", "inBundle": true, "license": "ISC", "dependencies": { - "brace-expansion": "^2.0.1" + "brace-expansion": "^1.1.7" }, "engines": { - "node": ">=10" + "node": "*" } }, - "node_modules/npm/node_modules/minipass": { - "version": "3.3.4", + "node_modules/npm/node_modules/node-gyp/node_modules/minipass": { + "version": "3.3.6", "inBundle": true, "license": "ISC", "dependencies": { @@ -4800,19 +5735,8 @@ "node": ">=8" } }, - "node_modules/npm/node_modules/minipass-collect": { - "version": "1.0.2", - "inBundle": true, - "license": "ISC", - "dependencies": { - "minipass": "^3.0.0" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/npm/node_modules/minipass-fetch": { - "version": "2.1.1", + "node_modules/npm/node_modules/node-gyp/node_modules/minipass-fetch": { + "version": "2.1.2", "inBundle": true, "license": "MIT", "dependencies": { @@ -4827,179 +5751,7 @@ "encoding": "^0.1.13" } }, - "node_modules/npm/node_modules/minipass-flush": { - "version": "1.0.5", - "inBundle": true, - "license": "ISC", - "dependencies": { - "minipass": "^3.0.0" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/npm/node_modules/minipass-json-stream": { - "version": "1.0.1", - "inBundle": true, - "license": "MIT", - "dependencies": { - "jsonparse": "^1.3.1", - "minipass": "^3.0.0" - } - }, - "node_modules/npm/node_modules/minipass-pipeline": { - "version": "1.2.4", - "inBundle": true, - "license": "ISC", - "dependencies": { - "minipass": "^3.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/npm/node_modules/minipass-sized": { - "version": "1.0.3", - "inBundle": true, - "license": "ISC", - "dependencies": { - "minipass": "^3.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/npm/node_modules/minizlib": { - "version": "2.1.2", - "inBundle": true, - "license": "MIT", - "dependencies": { - "minipass": "^3.0.0", - "yallist": "^4.0.0" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/npm/node_modules/mkdirp": { - "version": "1.0.4", - "inBundle": true, - "license": "MIT", - "bin": { - "mkdirp": "bin/cmd.js" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/npm/node_modules/mkdirp-infer-owner": { - "version": "2.0.0", - "inBundle": true, - "license": "ISC", - "dependencies": { - "chownr": "^2.0.0", - "infer-owner": "^1.0.4", - "mkdirp": "^1.0.3" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/npm/node_modules/ms": { - "version": "2.1.3", - "inBundle": true, - "license": "MIT" - }, - "node_modules/npm/node_modules/mute-stream": { - "version": "0.0.8", - "inBundle": true, - "license": "ISC" - }, - "node_modules/npm/node_modules/negotiator": { - "version": "0.6.3", - "inBundle": true, - "license": "MIT", - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/npm/node_modules/node-gyp": { - "version": "9.1.0", - "inBundle": true, - "license": "MIT", - "dependencies": { - "env-paths": "^2.2.0", - "glob": "^7.1.4", - "graceful-fs": "^4.2.6", - "make-fetch-happen": "^10.0.3", - "nopt": "^5.0.0", - "npmlog": "^6.0.0", - "rimraf": "^3.0.2", - "semver": "^7.3.5", - "tar": "^6.1.2", - "which": "^2.0.2" - }, - "bin": { - "node-gyp": "bin/node-gyp.js" - }, - "engines": { - "node": "^12.22 || ^14.13 || >=16" - } - }, - "node_modules/npm/node_modules/node-gyp/node_modules/brace-expansion": { - "version": "1.1.11", - "inBundle": true, - "license": "MIT", - "dependencies": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "node_modules/npm/node_modules/node-gyp/node_modules/glob": { - "version": "7.2.3", - "inBundle": true, - "license": "ISC", - "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/npm/node_modules/node-gyp/node_modules/minimatch": { - "version": "3.1.2", - "inBundle": true, - "license": "ISC", - "dependencies": { - "brace-expansion": "^1.1.7" - }, - "engines": { - "node": "*" - } - }, "node_modules/npm/node_modules/node-gyp/node_modules/nopt": { - "version": "5.0.0", - "inBundle": true, - "license": "ISC", - "dependencies": { - "abbrev": "1" - }, - "bin": { - "nopt": "bin/nopt.js" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/npm/node_modules/nopt": { "version": "6.0.0", "inBundle": true, "license": "ISC", @@ -5013,162 +5765,7 @@ "node": "^12.13.0 || ^14.15.0 || >=16.0.0" } }, - "node_modules/npm/node_modules/normalize-package-data": { - "version": "4.0.1", - "inBundle": true, - "license": "BSD-2-Clause", - "dependencies": { - "hosted-git-info": "^5.0.0", - "is-core-module": "^2.8.1", - "semver": "^7.3.5", - "validate-npm-package-license": "^3.0.4" - }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - } - }, - "node_modules/npm/node_modules/npm-audit-report": { - "version": "3.0.0", - "inBundle": true, - "license": "ISC", - "dependencies": { - "chalk": "^4.0.0" - }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - } - }, - "node_modules/npm/node_modules/npm-bundled": { - "version": "2.0.1", - "inBundle": true, - "license": "ISC", - "dependencies": { - "npm-normalize-package-bin": "^2.0.0" - }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - } - }, - "node_modules/npm/node_modules/npm-bundled/node_modules/npm-normalize-package-bin": { - "version": "2.0.0", - "inBundle": true, - "license": "ISC", - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - } - }, - "node_modules/npm/node_modules/npm-install-checks": { - "version": "5.0.0", - "inBundle": true, - "license": "BSD-2-Clause", - "dependencies": { - "semver": "^7.1.1" - }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - } - }, - "node_modules/npm/node_modules/npm-normalize-package-bin": { - "version": "1.0.1", - "inBundle": true, - "license": "ISC" - }, - "node_modules/npm/node_modules/npm-package-arg": { - "version": "9.1.0", - "inBundle": true, - "license": "ISC", - "dependencies": { - "hosted-git-info": "^5.0.0", - "proc-log": "^2.0.1", - "semver": "^7.3.5", - "validate-npm-package-name": "^4.0.0" - }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - } - }, - "node_modules/npm/node_modules/npm-packlist": { - "version": "5.1.3", - "inBundle": true, - "license": "ISC", - "dependencies": { - "glob": "^8.0.1", - "ignore-walk": "^5.0.1", - "npm-bundled": "^2.0.0", - "npm-normalize-package-bin": "^2.0.0" - }, - "bin": { - "npm-packlist": "bin/index.js" - }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - } - }, - "node_modules/npm/node_modules/npm-packlist/node_modules/npm-normalize-package-bin": { - "version": "2.0.0", - "inBundle": true, - "license": "ISC", - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - } - }, - "node_modules/npm/node_modules/npm-pick-manifest": { - "version": "7.0.2", - "inBundle": true, - "license": "ISC", - "dependencies": { - "npm-install-checks": "^5.0.0", - "npm-normalize-package-bin": "^2.0.0", - "npm-package-arg": "^9.0.0", - "semver": "^7.3.5" - }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - } - }, - "node_modules/npm/node_modules/npm-pick-manifest/node_modules/npm-normalize-package-bin": { - "version": "2.0.0", - "inBundle": true, - "license": "ISC", - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - } - }, - "node_modules/npm/node_modules/npm-profile": { - "version": "6.2.1", - "inBundle": true, - "license": "ISC", - "dependencies": { - "npm-registry-fetch": "^13.0.1", - "proc-log": "^2.0.0" - }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - } - }, - "node_modules/npm/node_modules/npm-registry-fetch": { - "version": "13.3.1", - "inBundle": true, - "license": "ISC", - "dependencies": { - "make-fetch-happen": "^10.0.6", - "minipass": "^3.1.6", - "minipass-fetch": "^2.0.3", - "minipass-json-stream": "^1.0.1", - "minizlib": "^2.1.2", - "npm-package-arg": "^9.0.1", - "proc-log": "^2.0.0" - }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - } - }, - "node_modules/npm/node_modules/npm-user-validate": { - "version": "1.0.1", - "inBundle": true, - "license": "BSD-2-Clause" - }, - "node_modules/npm/node_modules/npmlog": { + "node_modules/npm/node_modules/node-gyp/node_modules/npmlog": { "version": "6.0.2", "inBundle": true, "license": "ISC", @@ -5182,6 +5779,209 @@ "node": "^12.13.0 || ^14.15.0 || >=16.0.0" } }, + "node_modules/npm/node_modules/node-gyp/node_modules/ssri": { + "version": "9.0.1", + "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", + "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", + "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", + "inBundle": true, + "license": "ISC", + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "node-which": "bin/node-which" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/npm/node_modules/nopt": { + "version": "7.0.0", + "inBundle": true, + "license": "ISC", + "dependencies": { + "abbrev": "^2.0.0" + }, + "bin": { + "nopt": "bin/nopt.js" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/npm/node_modules/normalize-package-data": { + "version": "5.0.0", + "inBundle": true, + "license": "BSD-2-Clause", + "dependencies": { + "hosted-git-info": "^6.0.0", + "is-core-module": "^2.8.1", + "semver": "^7.3.5", + "validate-npm-package-license": "^3.0.4" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/npm/node_modules/npm-audit-report": { + "version": "4.0.0", + "inBundle": true, + "license": "ISC", + "dependencies": { + "chalk": "^4.0.0" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/npm/node_modules/npm-bundled": { + "version": "3.0.0", + "inBundle": true, + "license": "ISC", + "dependencies": { + "npm-normalize-package-bin": "^3.0.0" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/npm/node_modules/npm-install-checks": { + "version": "6.0.0", + "inBundle": true, + "license": "BSD-2-Clause", + "dependencies": { + "semver": "^7.1.1" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/npm/node_modules/npm-normalize-package-bin": { + "version": "3.0.0", + "inBundle": true, + "license": "ISC", + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/npm/node_modules/npm-package-arg": { + "version": "10.1.0", + "inBundle": true, + "license": "ISC", + "dependencies": { + "hosted-git-info": "^6.0.0", + "proc-log": "^3.0.0", + "semver": "^7.3.5", + "validate-npm-package-name": "^5.0.0" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/npm/node_modules/npm-packlist": { + "version": "7.0.4", + "inBundle": true, + "license": "ISC", + "dependencies": { + "ignore-walk": "^6.0.0" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/npm/node_modules/npm-pick-manifest": { + "version": "8.0.1", + "inBundle": true, + "license": "ISC", + "dependencies": { + "npm-install-checks": "^6.0.0", + "npm-normalize-package-bin": "^3.0.0", + "npm-package-arg": "^10.0.0", + "semver": "^7.3.5" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/npm/node_modules/npm-profile": { + "version": "7.0.1", + "inBundle": true, + "license": "ISC", + "dependencies": { + "npm-registry-fetch": "^14.0.0", + "proc-log": "^3.0.0" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/npm/node_modules/npm-registry-fetch": { + "version": "14.0.3", + "inBundle": true, + "license": "ISC", + "dependencies": { + "make-fetch-happen": "^11.0.0", + "minipass": "^4.0.0", + "minipass-fetch": "^3.0.0", + "minipass-json-stream": "^1.0.1", + "minizlib": "^2.1.2", + "npm-package-arg": "^10.0.0", + "proc-log": "^3.0.0" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/npm/node_modules/npm-user-validate": { + "version": "1.0.1", + "inBundle": true, + "license": "BSD-2-Clause" + }, + "node_modules/npm/node_modules/npmlog": { + "version": "7.0.1", + "inBundle": true, + "license": "ISC", + "dependencies": { + "are-we-there-yet": "^4.0.0", + "console-control-strings": "^1.1.0", + "gauge": "^5.0.0", + "set-blocking": "^2.0.0" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, "node_modules/npm/node_modules/once": { "version": "1.4.0", "inBundle": true, @@ -5190,14 +5990,6 @@ "wrappy": "1" } }, - "node_modules/npm/node_modules/opener": { - "version": "1.5.2", - "inBundle": true, - "license": "(WTFPL OR MIT)", - "bin": { - "opener": "bin/opener-bin.js" - } - }, "node_modules/npm/node_modules/p-map": { "version": "4.0.0", "inBundle": true, @@ -5213,50 +6005,46 @@ } }, "node_modules/npm/node_modules/pacote": { - "version": "13.6.2", + "version": "15.0.7", "inBundle": true, "license": "ISC", "dependencies": { - "@npmcli/git": "^3.0.0", - "@npmcli/installed-package-contents": "^1.0.7", - "@npmcli/promise-spawn": "^3.0.0", - "@npmcli/run-script": "^4.1.0", - "cacache": "^16.0.0", - "chownr": "^2.0.0", + "@npmcli/git": "^4.0.0", + "@npmcli/installed-package-contents": "^2.0.1", + "@npmcli/promise-spawn": "^6.0.1", + "@npmcli/run-script": "^6.0.0", + "cacache": "^17.0.0", "fs-minipass": "^2.1.0", - "infer-owner": "^1.0.4", - "minipass": "^3.1.6", - "mkdirp": "^1.0.4", - "npm-package-arg": "^9.0.0", - "npm-packlist": "^5.1.0", - "npm-pick-manifest": "^7.0.0", - "npm-registry-fetch": "^13.0.1", - "proc-log": "^2.0.0", + "minipass": "^4.0.0", + "npm-package-arg": "^10.0.0", + "npm-packlist": "^7.0.0", + "npm-pick-manifest": "^8.0.0", + "npm-registry-fetch": "^14.0.0", + "proc-log": "^3.0.0", "promise-retry": "^2.0.1", - "read-package-json": "^5.0.0", - "read-package-json-fast": "^2.0.3", - "rimraf": "^3.0.2", - "ssri": "^9.0.0", + "read-package-json": "^6.0.0", + "read-package-json-fast": "^3.0.0", + "ssri": "^10.0.0", "tar": "^6.1.11" }, "bin": { "pacote": "lib/bin.js" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, "node_modules/npm/node_modules/parse-conflict-json": { - "version": "2.0.2", + "version": "3.0.0", "inBundle": true, "license": "ISC", "dependencies": { - "json-parse-even-better-errors": "^2.3.1", + "json-parse-even-better-errors": "^3.0.0", "just-diff": "^5.0.1", "just-diff-apply": "^5.2.0" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, "node_modules/npm/node_modules/path-is-absolute": { @@ -5280,11 +6068,19 @@ } }, "node_modules/npm/node_modules/proc-log": { - "version": "2.0.1", + "version": "3.0.0", "inBundle": true, "license": "ISC", "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/npm/node_modules/process": { + "version": "0.11.10", + "inBundle": true, + "license": "MIT", + "engines": { + "node": ">= 0.6.0" } }, "node_modules/npm/node_modules/promise-all-reject-late": { @@ -5347,45 +6143,37 @@ } }, "node_modules/npm/node_modules/read-cmd-shim": { - "version": "3.0.0", + "version": "4.0.0", "inBundle": true, "license": "ISC", "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, "node_modules/npm/node_modules/read-package-json": { - "version": "5.0.2", + "version": "6.0.0", "inBundle": true, "license": "ISC", "dependencies": { "glob": "^8.0.1", - "json-parse-even-better-errors": "^2.3.1", - "normalize-package-data": "^4.0.0", - "npm-normalize-package-bin": "^2.0.0" + "json-parse-even-better-errors": "^3.0.0", + "normalize-package-data": "^5.0.0", + "npm-normalize-package-bin": "^3.0.0" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, "node_modules/npm/node_modules/read-package-json-fast": { - "version": "2.0.3", + "version": "3.0.1", "inBundle": true, "license": "ISC", "dependencies": { - "json-parse-even-better-errors": "^2.3.0", - "npm-normalize-package-bin": "^1.0.1" + "json-parse-even-better-errors": "^3.0.0", + "npm-normalize-package-bin": "^3.0.0" }, "engines": { - "node": ">=10" - } - }, - "node_modules/npm/node_modules/read-package-json/node_modules/npm-normalize-package-bin": { - "version": "2.0.0", - "inBundle": true, - "license": "ISC", - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, "node_modules/npm/node_modules/readable-stream": { @@ -5401,17 +6189,6 @@ "node": ">= 6" } }, - "node_modules/npm/node_modules/readdir-scoped-modules": { - "version": "1.1.0", - "inBundle": true, - "license": "ISC", - "dependencies": { - "debuglog": "^1.0.1", - "dezalgo": "^1.0.0", - "graceful-fs": "^4.1.2", - "once": "^1.3.0" - } - }, "node_modules/npm/node_modules/retry": { "version": "0.12.0", "inBundle": true, @@ -5499,7 +6276,7 @@ "optional": true }, "node_modules/npm/node_modules/semver": { - "version": "7.3.7", + "version": "7.3.8", "inBundle": true, "license": "ISC", "dependencies": { @@ -5597,14 +6374,14 @@ "license": "CC0-1.0" }, "node_modules/npm/node_modules/ssri": { - "version": "9.0.1", + "version": "10.0.1", "inBundle": true, "license": "ISC", "dependencies": { - "minipass": "^3.1.1" + "minipass": "^4.0.0" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, "node_modules/npm/node_modules/string_decoder": { @@ -5651,19 +6428,19 @@ } }, "node_modules/npm/node_modules/tar": { - "version": "6.1.11", + "version": "6.1.13", "inBundle": true, "license": "ISC", "dependencies": { "chownr": "^2.0.0", "fs-minipass": "^2.0.0", - "minipass": "^3.0.0", + "minipass": "^4.0.0", "minizlib": "^2.1.1", "mkdirp": "^1.0.3", "yallist": "^4.0.0" }, "engines": { - "node": ">= 10" + "node": ">=10" } }, "node_modules/npm/node_modules/text-table": { @@ -5677,33 +6454,33 @@ "license": "MIT" }, "node_modules/npm/node_modules/treeverse": { - "version": "2.0.0", + "version": "3.0.0", "inBundle": true, "license": "ISC", "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, "node_modules/npm/node_modules/unique-filename": { - "version": "2.0.1", + "version": "3.0.0", "inBundle": true, "license": "ISC", "dependencies": { - "unique-slug": "^3.0.0" + "unique-slug": "^4.0.0" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, "node_modules/npm/node_modules/unique-slug": { - "version": "3.0.0", + "version": "4.0.0", "inBundle": true, "license": "ISC", "dependencies": { "imurmurhash": "^0.1.4" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, "node_modules/npm/node_modules/util-deprecate": { @@ -5721,14 +6498,14 @@ } }, "node_modules/npm/node_modules/validate-npm-package-name": { - "version": "4.0.0", + "version": "5.0.0", "inBundle": true, "license": "ISC", "dependencies": { "builtins": "^5.0.0" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, "node_modules/npm/node_modules/walk-up-path": { @@ -5745,17 +6522,17 @@ } }, "node_modules/npm/node_modules/which": { - "version": "2.0.2", + "version": "3.0.0", "inBundle": true, "license": "ISC", "dependencies": { "isexe": "^2.0.0" }, "bin": { - "node-which": "bin/node-which" + "node-which": "bin/which.js" }, "engines": { - "node": ">= 8" + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, "node_modules/npm/node_modules/wide-align": { @@ -5772,7 +6549,7 @@ "license": "ISC" }, "node_modules/npm/node_modules/write-file-atomic": { - "version": "4.0.2", + "version": "5.0.0", "inBundle": true, "license": "ISC", "dependencies": { @@ -5780,7 +6557,7 @@ "signal-exit": "^3.0.7" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, "node_modules/npm/node_modules/yallist": { @@ -5831,39 +6608,6 @@ "node": ">=0.10.0" } }, - "node_modules/object-inspect": { - "version": "1.12.2", - "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.12.2.tgz", - "integrity": "sha512-z+cPxW0QGUp0mcqcsgQyLVRDoXFQbXOwBaqyF7VIgI4TWNQsDHrBpUQslRmIfAoYWdYzs6UlKJtB2XJpTaNSpQ==", - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/object-keys": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", - "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==", - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/object.assign": { - "version": "4.1.4", - "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.4.tgz", - "integrity": "sha512-1mxKf0e58bvyjSCtKYY4sRe9itRk3PJpquJOjeIkz885CczcI4IvJJDLPS72oowuSh+pBxUFROpX+TU++hxhZQ==", - "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.4", - "has-symbols": "^1.0.3", - "object-keys": "^1.1.1" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, "node_modules/omggif": { "version": "1.0.10", "resolved": "https://registry.npmjs.org/omggif/-/omggif-1.0.10.tgz", @@ -5893,14 +6637,6 @@ "node": ">= 0.8.0" } }, - "node_modules/p-cancelable": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/p-cancelable/-/p-cancelable-2.1.1.tgz", - "integrity": "sha512-BZOr3nRQHOntUjTrH8+Lh54smKHoHyur8We1V8DSMVrl5A2malOOwuJRnKRDjSnkoeBh4at6BwEnb5I7Jl31wg==", - "engines": { - "node": ">=8" - } - }, "node_modules/pako": { "version": "1.0.11", "resolved": "https://registry.npmjs.org/pako/-/pako-1.0.11.tgz", @@ -5931,9 +6667,9 @@ "integrity": "sha512-ft3iAoLOB/MlwbNXgzy43SWGP6sQki2jQvAyBg/zDFAgr9bfNWZIUj42Kw2eJIl8kEi4PbgE6U1Zau/HwI75HA==" }, "node_modules/parse5": { - "version": "7.1.1", - "resolved": "https://registry.npmjs.org/parse5/-/parse5-7.1.1.tgz", - "integrity": "sha512-kwpuwzB+px5WUg9pyK0IcK/shltJN5/OVhQagxhCQNtT9Y9QRZqNY2e1cmbu/paRh5LMnz/oVTVLBpjFmMZhSg==", + "version": "7.1.2", + "resolved": "https://registry.npmjs.org/parse5/-/parse5-7.1.2.tgz", + "integrity": "sha512-Czj1WaSVpaoj0wbhMzLmWD69anp2WH7FXMB9n1Sy8/ZFF9jolSQVMu1Ij5WIyGmcBmhk7EOndpO4mIpihVqAXw==", "dependencies": { "entities": "^4.4.0" }, @@ -5961,6 +6697,18 @@ "node": ">=0.10.0" } }, + "node_modules/peek-readable": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/peek-readable/-/peek-readable-5.0.0.tgz", + "integrity": "sha512-YtCKvLUOvwtMGmrniQPdO7MwPjgkFBtFIrmfSbYmYuq3tKDV/mcfAhBth1+C3ru7uXIZasc/pHnb+YDYNkkj4A==", + "engines": { + "node": ">=14.16" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/Borewit" + } + }, "node_modules/performance-now": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz", @@ -6040,20 +6788,16 @@ "node": ">= 0.6.0" } }, + "node_modules/proxy-from-env": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/proxy-from-env/-/proxy-from-env-1.1.0.tgz", + "integrity": "sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg==" + }, "node_modules/psl": { "version": "1.9.0", "resolved": "https://registry.npmjs.org/psl/-/psl-1.9.0.tgz", "integrity": "sha512-E/ZsdU4HLs/68gYzgGTkMicWTLPdAftJLfJFlLUAAKZGkStNU72sZjT66SnMDVOfOWY/YAoiD7Jxa9iHvngcag==" }, - "node_modules/pump": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz", - "integrity": "sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==", - "dependencies": { - "end-of-stream": "^1.1.0", - "once": "^1.3.1" - } - }, "node_modules/punycode": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", @@ -6075,17 +6819,6 @@ "resolved": "https://registry.npmjs.org/querystringify/-/querystringify-2.2.0.tgz", "integrity": "sha512-FIqgj2EUvTa7R50u0rGsyTftzjYmv/a3hO345bZNrqabNqjtgiDMgmo4mkUjd+nzU5oF3dClKqFIPUKybUyqoQ==" }, - "node_modules/quick-lru": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/quick-lru/-/quick-lru-5.1.1.tgz", - "integrity": "sha512-WuyALRjWPDGtt/wzJiadO5AXY+8hZ80hVpe6MyivgraREW751X3SbhRvG3eLKOYN+8VEvqLcf3wdnt44Z4S4SA==", - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/randombytes": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz", @@ -6132,27 +6865,26 @@ "node": ">= 6" } }, - "node_modules/regenerator-runtime": { - "version": "0.13.9", - "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.9.tgz", - "integrity": "sha512-p3VT+cOEgxFsRRA9X4lkI1E+k2/CtnKtU4gcxyaCUreilL/vqI6CdZ3wxVUx3UOUg+gnUOQQcRI7BmSI656MYA==" - }, - "node_modules/regexp.prototype.flags": { - "version": "1.4.3", - "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.4.3.tgz", - "integrity": "sha512-fjggEOO3slI6Wvgjwflkc4NFRCTZAu5CnNfBd5qOMYhWdn67nJBBu34/TkD++eeFmd8C9r9jfXJ27+nSiRkSUA==", + "node_modules/readable-web-to-node-stream": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/readable-web-to-node-stream/-/readable-web-to-node-stream-3.0.2.tgz", + "integrity": "sha512-ePeK6cc1EcKLEhJFt/AebMCLL+GgSKhuygrZ/GLaKZYEecIgIECf4UaUuaByiGtzckwR4ain9VzUh95T1exYGw==", "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.3", - "functions-have-names": "^1.2.2" + "readable-stream": "^3.6.0" }, "engines": { - "node": ">= 0.4" + "node": ">=8" }, "funding": { - "url": "https://github.com/sponsors/ljharb" + "type": "github", + "url": "https://github.com/sponsors/Borewit" } }, + "node_modules/regenerator-runtime": { + "version": "0.13.11", + "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.11.tgz", + "integrity": "sha512-kY1AZVr2Ra+t+piVaJ4gxaFaReZVH40AKNo7UCX6W+dEwBo/2oZJzqfuN1qLq1oL45o56cPaTXELwrTh8Fpggg==" + }, "node_modules/request": { "version": "2.88.2", "resolved": "https://registry.npmjs.org/request/-/request-2.88.2.tgz", @@ -6209,27 +6941,20 @@ "node": ">=0.8" } }, + "node_modules/request/node_modules/uuid": { + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.4.0.tgz", + "integrity": "sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==", + "deprecated": "Please upgrade to version 7 or higher. Older versions may use Math.random() in certain circumstances, which is known to be problematic. See https://v8.dev/blog/math-random for details.", + "bin": { + "uuid": "bin/uuid" + } + }, "node_modules/requires-port": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/requires-port/-/requires-port-1.0.0.tgz", "integrity": "sha512-KigOCHcocU3XODJxsu8i/j8T9tzT4adHiecwORRQ0ZZFcp7ahwXuRU1m+yuO90C5ZUyGeGfocHDI14M3L3yDAQ==" }, - "node_modules/resolve-alpn": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/resolve-alpn/-/resolve-alpn-1.2.1.tgz", - "integrity": "sha512-0a1F4l73/ZFZOakJnQ3FvkJ2+gSTQWz/r2KE5OdDY0TxPm5h4GkqkWWfM47T7HsbnOtcJVEF4epCVy6u7Q3K+g==" - }, - "node_modules/responselike": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/responselike/-/responselike-2.0.1.tgz", - "integrity": "sha512-4gl03wn3hj1HP3yzgdI7d3lCkF95F21Pz4BPGvKHinyQzALR5CapwC8yIi0Rh58DEMQ/SguC03wFj2k0M/mHhw==", - "dependencies": { - "lowercase-keys": "^2.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/rimraf": { "version": "3.0.2", "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", @@ -6263,19 +6988,6 @@ } ] }, - "node_modules/safe-regex-test": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/safe-regex-test/-/safe-regex-test-1.0.0.tgz", - "integrity": "sha512-JBUUzyOgEwXQY1NuPtvcj/qcBDbDmEvWufhlnXZIm75DEHp+afM1r1ujJpJsV/gSM4t59tpDyPi1sd6ZaPFfsA==", - "dependencies": { - "call-bind": "^1.0.2", - "get-intrinsic": "^1.1.3", - "is-regex": "^1.1.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, "node_modules/safer-buffer": { "version": "2.1.2", "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", @@ -6299,14 +7011,14 @@ "integrity": "sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==" }, "node_modules/saxes": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/saxes/-/saxes-5.0.1.tgz", - "integrity": "sha512-5LBh1Tls8c9xgGjw3QrMwETmTMVk0oFgvrFSvWx62llR2hcEInrKNZ2GZCCuuy2lvWrdl5jhbpeqc5hRYKFOcw==", + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/saxes/-/saxes-6.0.0.tgz", + "integrity": "sha512-xAg7SOnEhrm5zI3puOOKyy1OMcMlIJZYNJY7xLBwSze0UjhPLnWfj2GF2EpT0jmzaJKIWKHLsaSSajf35bcYnA==", "dependencies": { "xmlchars": "^2.2.0" }, "engines": { - "node": ">=10" + "node": ">=v12.22.7" } }, "node_modules/seedrandom": { @@ -6315,9 +7027,9 @@ "integrity": "sha512-8OwmbklUNzwezjGInmZ+2clQmExQPvomqjL7LFqOYqtmuxRgQYqOD3mHaU+MvZn5FLUeVxVfQjwLZW/n/JFuqg==" }, "node_modules/semver": { - "version": "7.3.7", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.7.tgz", - "integrity": "sha512-QlYTucUYOews+WeEujDoEGziz4K6c47V/Bd+LjSSYcA94p+DmINdf7ncaUinThfvZyu13lN9OY1XDxt8C0Tw0g==", + "version": "7.3.8", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.8.tgz", + "integrity": "sha512-NB1ctGL5rlHrPJtFDVIVzTyQylMLu9N9VICA6HSFJo8MCGVTMW6gfpicwKmmK/dAjTOrqu5l63JJOpDSrAis3A==", "dependencies": { "lru-cache": "^6.0.0" }, @@ -6346,23 +7058,10 @@ "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.2.0.tgz", "integrity": "sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==" }, - "node_modules/side-channel": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.4.tgz", - "integrity": "sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==", - "dependencies": { - "call-bind": "^1.0.0", - "get-intrinsic": "^1.0.2", - "object-inspect": "^1.9.0" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, "node_modules/sift": { - "version": "16.0.0", - "resolved": "https://registry.npmjs.org/sift/-/sift-16.0.0.tgz", - "integrity": "sha512-ILTjdP2Mv9V1kIxWMXeMTIRbOBrqKc4JAXmFMnFq3fKeyQ2Qwa3Dw1ubcye3vR+Y6ofA0b9gNDr/y2t6eUeIzQ==" + "version": "16.0.1", + "resolved": "https://registry.npmjs.org/sift/-/sift-16.0.1.tgz", + "integrity": "sha512-Wv6BjQ5zbhW7VFefWusVP33T/EM0vYikCaQ2qR8yULbsilAT8/wQaXvuQ3ptGLpoKx+lihJE3y2UTgKDyyNHZQ==" }, "node_modules/signal-exit": { "version": "3.0.7", @@ -6452,12 +7151,21 @@ } }, "node_modules/sourcebin": { - "version": "4.3.6", - "resolved": "https://registry.npmjs.org/sourcebin/-/sourcebin-4.3.6.tgz", - "integrity": "sha512-CmpeHdcpYNtew+s8DCkiyjQuhP4QMXHY99HQ1evzj6cjxtxNBgPCoobFOGMFFc3Hk6mJ8EB/nZ5e9W2OBqiCjA==", + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/sourcebin/-/sourcebin-5.0.0.tgz", + "integrity": "sha512-UWlYVRTa2RN0iSlmYnzhOkfVstv7hs245OWOVqHCaJ3Cy6fBAX4HcZ5a7KRe0CooVv0GAjJZ1nqJly0CN9yjnA==", "dependencies": { "@sourcebin/linguist": "^0.0.3", - "got": "^11.8.5" + "axios": "^0.27.2" + } + }, + "node_modules/sourcebin/node_modules/axios": { + "version": "0.27.2", + "resolved": "https://registry.npmjs.org/axios/-/axios-0.27.2.tgz", + "integrity": "sha512-t+yRIyySRTp/wua5xEr+z1q60QmLq8ABsS5O9Me1AsE5dfKqgnCFzwiCZZ/cGNd1lq4/7akDWMxdhVlucjmnOQ==", + "dependencies": { + "follow-redirects": "^1.14.9", + "form-data": "^4.0.0" } }, "node_modules/sparse-bitfield": { @@ -6530,32 +7238,6 @@ "node": ">=8" } }, - "node_modules/string.prototype.trimend": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.5.tgz", - "integrity": "sha512-I7RGvmjV4pJ7O3kdf+LXFpVfdNOxtCW/2C8f6jNiW4+PQchwxkCDzlk1/7p+Wl4bqFIZeF47qAHXLuHHWKAxog==", - "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.4", - "es-abstract": "^1.19.5" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/string.prototype.trimstart": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.5.tgz", - "integrity": "sha512-THx16TJCGlsN0o6dl2o6ncWUsdgnLRSA23rRE5pyGBw/mLr3Ej/R2LaqCtgP8VNMGZsvMWnf9ooZPyY2bHvUFg==", - "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.4", - "es-abstract": "^1.19.5" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, "node_modules/strip-ansi": { "version": "6.0.1", "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", @@ -6567,6 +7249,28 @@ "node": ">=8" } }, + "node_modules/strnum": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/strnum/-/strnum-1.0.5.tgz", + "integrity": "sha512-J8bbNyKKXl5qYcR36TIO8W3mVGVHrmmxsd5PAItGkmyzwJvybiw2IVq5nqd0i4LSNSkB/sx9VHllbfFdr9k1JA==", + "optional": true + }, + "node_modules/strtok3": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/strtok3/-/strtok3-7.0.0.tgz", + "integrity": "sha512-pQ+V+nYQdC5H3Q7qBZAz/MO6lwGhoC2gOAjuouGf/VO0m7vQRh8QNMl2Uf6SwAtzZ9bOw3UIeBukEGNJl5dtXQ==", + "dependencies": { + "@tokenizer/token": "^0.3.0", + "peek-readable": "^5.0.0" + }, + "engines": { + "node": ">=14.16" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/Borewit" + } + }, "node_modules/supports-color": { "version": "7.2.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", @@ -6584,19 +7288,19 @@ "integrity": "sha512-9QNk5KwDF+Bvz+PyObkmSYjI5ksVUYtjW7AU22r2NKcfLJcXp96hkDWU3+XndOsUb+AQ9QhfzfCT2O+CNWT5Tw==" }, "node_modules/tar": { - "version": "6.1.11", - "resolved": "https://registry.npmjs.org/tar/-/tar-6.1.11.tgz", - "integrity": "sha512-an/KZQzQUkZCkuoAA64hM92X0Urb6VpRhAFllDzz44U2mcD5scmT3zBc4VgVpkugF580+DQn8eAFSyoQt0tznA==", + "version": "6.1.13", + "resolved": "https://registry.npmjs.org/tar/-/tar-6.1.13.tgz", + "integrity": "sha512-jdIBIN6LTIe2jqzay/2vtYLlBHa3JF42ot3h1dW8Q0PaAG4v8rm0cvpVePtau5C6OKXGGcgO9q2AMNSWxiLqKw==", "dependencies": { "chownr": "^2.0.0", "fs-minipass": "^2.0.0", - "minipass": "^3.0.0", + "minipass": "^4.0.0", "minizlib": "^2.1.1", "mkdirp": "^1.0.3", "yallist": "^4.0.0" }, "engines": { - "node": ">= 10" + "node": ">=10" } }, "node_modules/tar/node_modules/mkdirp": { @@ -6620,11 +7324,6 @@ "resolved": "https://registry.npmjs.org/tiny-emitter/-/tiny-emitter-2.1.0.tgz", "integrity": "sha512-NB6Dk1A9xgQPMoGqC5CVXn123gWyte215ONT5Pp5a0yt4nlEoO1ZWeCwpncaekPHXO60i47ihFnZPiRPjRMq4Q==" }, - "node_modules/tiny-typed-emitter": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/tiny-typed-emitter/-/tiny-typed-emitter-2.1.0.tgz", - "integrity": "sha512-qVtvMxeXbVej0cQWKqVSSAHmKZEHAvxdF8HEUBFWts8h+xEo5m/lEiPakuyZ3BnCBjOD8i24kzNOiOLLgsSxhA==" - }, "node_modules/tinycolor2": { "version": "1.4.2", "resolved": "https://registry.npmjs.org/tinycolor2/-/tinycolor2-1.4.2.tgz", @@ -6641,6 +7340,22 @@ "node": ">=0.6" } }, + "node_modules/token-types": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/token-types/-/token-types-5.0.1.tgz", + "integrity": "sha512-Y2fmSnZjQdDb9W4w4r1tswlMHylzWIeOKpx0aZH9BgGtACHhrk3OkT52AzwcuqTRBZtvvnTjDBh8eynMulu8Vg==", + "dependencies": { + "@tokenizer/token": "^0.3.0", + "ieee754": "^1.2.1" + }, + "engines": { + "node": ">=14.16" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/Borewit" + } + }, "node_modules/topgg-autoposter": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/topgg-autoposter/-/topgg-autoposter-2.0.1.tgz", @@ -6677,14 +7392,14 @@ } }, "node_modules/ts-mixer": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/ts-mixer/-/ts-mixer-6.0.1.tgz", - "integrity": "sha512-hvE+ZYXuINrx6Ei6D6hz+PTim0Uf++dYbK9FFifLNwQj+RwKquhQpn868yZsCtJYiclZF1u8l6WZxxKi+vv7Rg==" + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/ts-mixer/-/ts-mixer-6.0.2.tgz", + "integrity": "sha512-zvHx3VM83m2WYCE8XL99uaM7mFwYSkjR2OZti98fabHrwkjsCvgwChda5xctein3xGOyaQhtTeDq/1H/GNvF3A==" }, "node_modules/tslib": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.4.0.tgz", - "integrity": "sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ==" + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.4.1.tgz", + "integrity": "sha512-tGyy4dAjRIEwI7BzsB0lynWgOpfqjUdq91XXAlIWD2OwKBH7oCl/GZG/HT4BOHrTlPMOASlMQ7veyTqpmRcrNA==" }, "node_modules/tunnel-agent": { "version": "0.6.0", @@ -6714,17 +7429,17 @@ } }, "node_modules/typed-function": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/typed-function/-/typed-function-2.1.0.tgz", - "integrity": "sha512-bctQIOqx2iVbWGDGPWwIm18QScpu2XRmkC19D8rQGFsjKSgteq/o1hTZvIG/wuDq8fanpBDrLkLq+aEN/6y5XQ==", + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/typed-function/-/typed-function-4.1.0.tgz", + "integrity": "sha512-DGwUl6cioBW5gw2L+6SMupGwH/kZOqivy17E4nsh1JI9fKF87orMmlQx3KISQPmg3sfnOUGlwVkroosvgddrlg==", "engines": { - "node": ">= 10" + "node": ">= 14" } }, "node_modules/typescript": { - "version": "4.8.4", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.8.4.tgz", - "integrity": "sha512-QCh+85mCy+h0IGff8r5XWzOVSbBO+KfeYrMQh7NJ58QujwcE22u+NUSmUxqF+un70P9GXKxa2HCNiTTMJknyjQ==", + "version": "4.9.4", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.9.4.tgz", + "integrity": "sha512-Uz+dTXYzxXXbsFpM86Wh3dKCxrQqUcVMxwU54orwlJjOpO3ao8L7j5lH+dWfTwgCwIuM9GQ2kvVotzYJMXTBZg==", "bin": { "tsc": "bin/tsc", "tsserver": "bin/tsserver" @@ -6733,24 +7448,10 @@ "node": ">=4.2.0" } }, - "node_modules/unbox-primitive": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.0.2.tgz", - "integrity": "sha512-61pPlCD9h51VoreyJ0BReideM3MDKMKnh6+V9L08331ipq6Q8OFXZYiqP6n/tbHx4s5I9uRhcye6BrbkizkBDw==", - "dependencies": { - "call-bind": "^1.0.2", - "has-bigints": "^1.0.2", - "has-symbols": "^1.0.3", - "which-boxed-primitive": "^1.0.2" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, "node_modules/undici": { - "version": "5.11.0", - "resolved": "https://registry.npmjs.org/undici/-/undici-5.11.0.tgz", - "integrity": "sha512-oWjWJHzFet0Ow4YZBkyiJwiK5vWqEYoH7BINzJAJOLedZ++JpAlCbUktW2GQ2DS2FpKmxD/JMtWUUWl1BtghGw==", + "version": "5.14.0", + "resolved": "https://registry.npmjs.org/undici/-/undici-5.14.0.tgz", + "integrity": "sha512-yJlHYw6yXPPsuOH0x2Ib1Km61vu4hLiRRQoafs+WUgX1vO64vgnxiCEN9dpIrhZyHFsai3F0AEj4P9zy19enEQ==", "dependencies": { "busboy": "^1.6.0" }, @@ -6800,15 +7501,14 @@ } }, "node_modules/util": { - "version": "0.12.4", - "resolved": "https://registry.npmjs.org/util/-/util-0.12.4.tgz", - "integrity": "sha512-bxZ9qtSlGUWSOy9Qa9Xgk11kSslpuZwaxCg4sNIDj6FLucDab2JxnHwyNTCpHMtK1MjoQiWQ6DiUMZYbSrO+Sw==", + "version": "0.12.5", + "resolved": "https://registry.npmjs.org/util/-/util-0.12.5.tgz", + "integrity": "sha512-kZf/K6hEIrWHI6XqOFUiiMa+79wE/D8Q+NCNAWclkyg3b4d2k7s0QGepNjiABc+aR3N1PAyHL7p6UcLY6LmrnA==", "dependencies": { "inherits": "^2.0.3", "is-arguments": "^1.0.4", "is-generator-function": "^1.0.7", "is-typed-array": "^1.1.3", - "safe-buffer": "^5.1.2", "which-typed-array": "^1.1.2" } }, @@ -6818,12 +7518,12 @@ "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==" }, "node_modules/uuid": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.4.0.tgz", - "integrity": "sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==", - "deprecated": "Please upgrade to version 7 or higher. Older versions may use Math.random() in certain circumstances, which is known to be problematic. See https://v8.dev/blog/math-random for details.", + "version": "8.3.2", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz", + "integrity": "sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==", + "optional": true, "bin": { - "uuid": "bin/uuid" + "uuid": "dist/bin/uuid" } }, "node_modules/verror": { @@ -6839,23 +7539,15 @@ "extsprintf": "^1.2.0" } }, - "node_modules/w3c-hr-time": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/w3c-hr-time/-/w3c-hr-time-1.0.2.tgz", - "integrity": "sha512-z8P5DvDNjKDoFIHK7q8r8lackT6l+jo/Ye3HOle7l9nICP9lf1Ci25fy9vHd0JOWewkIFzXIEig3TdKT7JQ5fQ==", - "dependencies": { - "browser-process-hrtime": "^1.0.0" - } - }, "node_modules/w3c-xmlserializer": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/w3c-xmlserializer/-/w3c-xmlserializer-3.0.0.tgz", - "integrity": "sha512-3WFqGEgSXIyGhOmAFtlicJNMjEps8b1MG31NCA0/vOF9+nKMUW1ckhi9cnNHmf88Rzw5V+dwIwsm2C7X8k9aQg==", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/w3c-xmlserializer/-/w3c-xmlserializer-4.0.0.tgz", + "integrity": "sha512-d+BFHzbiCx6zGfz0HyQ6Rg69w9k19nviJspaj4yNscGjrHu94sVP+aRm75yEbCh+r2/yR+7q6hux9LVtbuTGBw==", "dependencies": { "xml-name-validator": "^4.0.0" }, "engines": { - "node": ">=12" + "node": ">=14" } }, "node_modules/weather-js": { @@ -6895,9 +7587,9 @@ } }, "node_modules/whatwg-url": { - "version": "10.0.0", - "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-10.0.0.tgz", - "integrity": "sha512-CLxxCmdUby142H5FZzn4D8ikO1cmypvXVQktsgosNy4a4BHrDHeciBBGZhb0bNoR5/MltoCatso+vFjjGx8t0w==", + "version": "11.0.0", + "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-11.0.0.tgz", + "integrity": "sha512-RKT8HExMpoYx4igMiVMY83lN6UeITKJlBQ+vR/8ZJ8OCdSiN3RwCq+9gH0+Xzj0+5IrM6i4j/6LuvzbZIQgEcQ==", "dependencies": { "tr46": "^3.0.0", "webidl-conversions": "^7.0.0" @@ -6906,32 +7598,17 @@ "node": ">=12" } }, - "node_modules/which-boxed-primitive": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/which-boxed-primitive/-/which-boxed-primitive-1.0.2.tgz", - "integrity": "sha512-bwZdv0AKLpplFY2KZRX6TvyuN7ojjr7lwkg6ml0roIy9YeuSr7JS372qlNW18UQYzgYK9ziGcerWqZOmEn9VNg==", - "dependencies": { - "is-bigint": "^1.0.1", - "is-boolean-object": "^1.1.0", - "is-number-object": "^1.0.4", - "is-string": "^1.0.5", - "is-symbol": "^1.0.3" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, "node_modules/which-typed-array": { - "version": "1.1.8", - "resolved": "https://registry.npmjs.org/which-typed-array/-/which-typed-array-1.1.8.tgz", - "integrity": "sha512-Jn4e5PItbcAHyLoRDwvPj1ypu27DJbtdYXUa5zsinrUx77Uvfb0cXwwnGMTn7cjUfhhqgVQnVJCwF+7cgU7tpw==", + "version": "1.1.9", + "resolved": "https://registry.npmjs.org/which-typed-array/-/which-typed-array-1.1.9.tgz", + "integrity": "sha512-w9c4xkx6mPidwp7180ckYWfMmvxpjlZuIudNtDf4N/tTAUB8VJbX25qZoAsrtGuYNnGw3pa0AXgbGKRB8/EceA==", "dependencies": { "available-typed-arrays": "^1.0.5", "call-bind": "^1.0.2", - "es-abstract": "^1.20.0", "for-each": "^0.3.3", + "gopd": "^1.0.1", "has-tostringtag": "^1.0.0", - "is-typed-array": "^1.1.9" + "is-typed-array": "^1.1.10" }, "engines": { "node": ">= 0.4" @@ -6962,9 +7639,9 @@ "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==" }, "node_modules/ws": { - "version": "8.9.0", - "resolved": "https://registry.npmjs.org/ws/-/ws-8.9.0.tgz", - "integrity": "sha512-Ja7nszREasGaYUYCI2k4lCKIRTt+y7XuqVoHR44YpI49TtryyqbqvDMn5eqfW7e6HzTukDRIsXqzVHScqRcafg==", + "version": "8.11.0", + "resolved": "https://registry.npmjs.org/ws/-/ws-8.11.0.tgz", + "integrity": "sha512-HPG3wQd9sNQoT9xHyNCXoDUa+Xw/VevmY9FoHyQ+g+rrMn4j6FB4np7Z0OhdTgjx6MgQLK7jwSy1YecU1+4Asg==", "engines": { "node": ">=10.0.0" }, @@ -7055,82 +7732,967 @@ "engines": { "node": ">=12" } - }, - "node_modules/zod": { - "version": "3.19.1", - "resolved": "https://registry.npmjs.org/zod/-/zod-3.19.1.tgz", - "integrity": "sha512-LYjZsEDhCdYET9ikFu6dVPGp2YH9DegXjdJToSzD9rO6fy4qiRYFoyEYwps88OseJlPyl2NOe2iJuhEhL7IpEA==", - "funding": { - "url": "https://github.com/sponsors/colinhacks" - } } }, "dependencies": { - "@babel/runtime": { - "version": "7.19.0", - "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.19.0.tgz", - "integrity": "sha512-eR8Lo9hnDS7tqkO7NsV+mKvCmv5boaXFSZ70DnfhcgiEne8hv9oCEd36Klw74EtizEqLsy4YnW8UWwpBVolHZA==", + "@aws-crypto/ie11-detection": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/@aws-crypto/ie11-detection/-/ie11-detection-2.0.2.tgz", + "integrity": "sha512-5XDMQY98gMAf/WRTic5G++jfmS/VLM0rwpiOpaainKi4L0nqWMSB1SzsrEG5rjFZGYN6ZAefO+/Yta2dFM0kMw==", + "optional": true, "requires": { - "regenerator-runtime": "^0.13.4" + "tslib": "^1.11.1" + }, + "dependencies": { + "tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", + "optional": true + } + } + }, + "@aws-crypto/sha256-browser": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@aws-crypto/sha256-browser/-/sha256-browser-2.0.0.tgz", + "integrity": "sha512-rYXOQ8BFOaqMEHJrLHul/25ckWH6GTJtdLSajhlqGMx0PmSueAuvboCuZCTqEKlxR8CQOwRarxYMZZSYlhRA1A==", + "optional": true, + "requires": { + "@aws-crypto/ie11-detection": "^2.0.0", + "@aws-crypto/sha256-js": "^2.0.0", + "@aws-crypto/supports-web-crypto": "^2.0.0", + "@aws-crypto/util": "^2.0.0", + "@aws-sdk/types": "^3.1.0", + "@aws-sdk/util-locate-window": "^3.0.0", + "@aws-sdk/util-utf8-browser": "^3.0.0", + "tslib": "^1.11.1" + }, + "dependencies": { + "tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", + "optional": true + } + } + }, + "@aws-crypto/sha256-js": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@aws-crypto/sha256-js/-/sha256-js-2.0.0.tgz", + "integrity": "sha512-VZY+mCY4Nmrs5WGfitmNqXzaE873fcIZDu54cbaDaaamsaTOP1DBImV9F4pICc3EHjQXujyE8jig+PFCaew9ig==", + "optional": true, + "requires": { + "@aws-crypto/util": "^2.0.0", + "@aws-sdk/types": "^3.1.0", + "tslib": "^1.11.1" + }, + "dependencies": { + "tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", + "optional": true + } + } + }, + "@aws-crypto/supports-web-crypto": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/@aws-crypto/supports-web-crypto/-/supports-web-crypto-2.0.2.tgz", + "integrity": "sha512-6mbSsLHwZ99CTOOswvCRP3C+VCWnzBf+1SnbWxzzJ9lR0mA0JnY2JEAhp8rqmTE0GPFy88rrM27ffgp62oErMQ==", + "optional": true, + "requires": { + "tslib": "^1.11.1" + }, + "dependencies": { + "tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", + "optional": true + } + } + }, + "@aws-crypto/util": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/@aws-crypto/util/-/util-2.0.2.tgz", + "integrity": "sha512-Lgu5v/0e/BcrZ5m/IWqzPUf3UYFTy/PpeED+uc9SWUR1iZQL8XXbGQg10UfllwwBryO3hFF5dizK+78aoXC1eA==", + "optional": true, + "requires": { + "@aws-sdk/types": "^3.110.0", + "@aws-sdk/util-utf8-browser": "^3.0.0", + "tslib": "^1.11.1" + }, + "dependencies": { + "tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", + "optional": true + } + } + }, + "@aws-sdk/abort-controller": { + "version": "3.226.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/abort-controller/-/abort-controller-3.226.0.tgz", + "integrity": "sha512-cJVzr1xxPBd08voknXvR0RLgtZKGKt6WyDpH/BaPCu3rfSqWCDZKzwqe940eqosjmKrxC6pUZNKASIqHOQ8xxQ==", + "optional": true, + "requires": { + "@aws-sdk/types": "3.226.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/client-cognito-identity": { + "version": "3.226.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-cognito-identity/-/client-cognito-identity-3.226.0.tgz", + "integrity": "sha512-f97yYtFN2YyVLCkDM51yLakb5NKy9gTSSXWe9mA9rgynLPfgsJbIHXv3zr1Qg0Ay0p4j1eLYukLaVw1MKlHDgw==", + "optional": true, + "requires": { + "@aws-crypto/sha256-browser": "2.0.0", + "@aws-crypto/sha256-js": "2.0.0", + "@aws-sdk/client-sts": "3.226.0", + "@aws-sdk/config-resolver": "3.226.0", + "@aws-sdk/credential-provider-node": "3.226.0", + "@aws-sdk/fetch-http-handler": "3.226.0", + "@aws-sdk/hash-node": "3.226.0", + "@aws-sdk/invalid-dependency": "3.226.0", + "@aws-sdk/middleware-content-length": "3.226.0", + "@aws-sdk/middleware-endpoint": "3.226.0", + "@aws-sdk/middleware-host-header": "3.226.0", + "@aws-sdk/middleware-logger": "3.226.0", + "@aws-sdk/middleware-recursion-detection": "3.226.0", + "@aws-sdk/middleware-retry": "3.226.0", + "@aws-sdk/middleware-serde": "3.226.0", + "@aws-sdk/middleware-signing": "3.226.0", + "@aws-sdk/middleware-stack": "3.226.0", + "@aws-sdk/middleware-user-agent": "3.226.0", + "@aws-sdk/node-config-provider": "3.226.0", + "@aws-sdk/node-http-handler": "3.226.0", + "@aws-sdk/protocol-http": "3.226.0", + "@aws-sdk/smithy-client": "3.226.0", + "@aws-sdk/types": "3.226.0", + "@aws-sdk/url-parser": "3.226.0", + "@aws-sdk/util-base64": "3.208.0", + "@aws-sdk/util-body-length-browser": "3.188.0", + "@aws-sdk/util-body-length-node": "3.208.0", + "@aws-sdk/util-defaults-mode-browser": "3.226.0", + "@aws-sdk/util-defaults-mode-node": "3.226.0", + "@aws-sdk/util-endpoints": "3.226.0", + "@aws-sdk/util-user-agent-browser": "3.226.0", + "@aws-sdk/util-user-agent-node": "3.226.0", + "@aws-sdk/util-utf8-browser": "3.188.0", + "@aws-sdk/util-utf8-node": "3.208.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/client-sso": { + "version": "3.226.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-sso/-/client-sso-3.226.0.tgz", + "integrity": "sha512-+Hl1YSLKrxPnQLijhWryI6uV8eKZIsUhvWlzFKx75kjxzjsC/jyk5zV59jnCu0SCCepXB8DKyLVa2WpH7iAHew==", + "optional": true, + "requires": { + "@aws-crypto/sha256-browser": "2.0.0", + "@aws-crypto/sha256-js": "2.0.0", + "@aws-sdk/config-resolver": "3.226.0", + "@aws-sdk/fetch-http-handler": "3.226.0", + "@aws-sdk/hash-node": "3.226.0", + "@aws-sdk/invalid-dependency": "3.226.0", + "@aws-sdk/middleware-content-length": "3.226.0", + "@aws-sdk/middleware-endpoint": "3.226.0", + "@aws-sdk/middleware-host-header": "3.226.0", + "@aws-sdk/middleware-logger": "3.226.0", + "@aws-sdk/middleware-recursion-detection": "3.226.0", + "@aws-sdk/middleware-retry": "3.226.0", + "@aws-sdk/middleware-serde": "3.226.0", + "@aws-sdk/middleware-stack": "3.226.0", + "@aws-sdk/middleware-user-agent": "3.226.0", + "@aws-sdk/node-config-provider": "3.226.0", + "@aws-sdk/node-http-handler": "3.226.0", + "@aws-sdk/protocol-http": "3.226.0", + "@aws-sdk/smithy-client": "3.226.0", + "@aws-sdk/types": "3.226.0", + "@aws-sdk/url-parser": "3.226.0", + "@aws-sdk/util-base64": "3.208.0", + "@aws-sdk/util-body-length-browser": "3.188.0", + "@aws-sdk/util-body-length-node": "3.208.0", + "@aws-sdk/util-defaults-mode-browser": "3.226.0", + "@aws-sdk/util-defaults-mode-node": "3.226.0", + "@aws-sdk/util-endpoints": "3.226.0", + "@aws-sdk/util-user-agent-browser": "3.226.0", + "@aws-sdk/util-user-agent-node": "3.226.0", + "@aws-sdk/util-utf8-browser": "3.188.0", + "@aws-sdk/util-utf8-node": "3.208.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/client-sso-oidc": { + "version": "3.226.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-sso-oidc/-/client-sso-oidc-3.226.0.tgz", + "integrity": "sha512-IKzAhL6RoPs7IZ/rJvekjedQ4oesazCO+Aqh9l2Xct+XY0MFBdh4amgg4t/8fjksfIzmJH48BZoNv5gVak6yRw==", + "optional": true, + "requires": { + "@aws-crypto/sha256-browser": "2.0.0", + "@aws-crypto/sha256-js": "2.0.0", + "@aws-sdk/config-resolver": "3.226.0", + "@aws-sdk/fetch-http-handler": "3.226.0", + "@aws-sdk/hash-node": "3.226.0", + "@aws-sdk/invalid-dependency": "3.226.0", + "@aws-sdk/middleware-content-length": "3.226.0", + "@aws-sdk/middleware-endpoint": "3.226.0", + "@aws-sdk/middleware-host-header": "3.226.0", + "@aws-sdk/middleware-logger": "3.226.0", + "@aws-sdk/middleware-recursion-detection": "3.226.0", + "@aws-sdk/middleware-retry": "3.226.0", + "@aws-sdk/middleware-serde": "3.226.0", + "@aws-sdk/middleware-stack": "3.226.0", + "@aws-sdk/middleware-user-agent": "3.226.0", + "@aws-sdk/node-config-provider": "3.226.0", + "@aws-sdk/node-http-handler": "3.226.0", + "@aws-sdk/protocol-http": "3.226.0", + "@aws-sdk/smithy-client": "3.226.0", + "@aws-sdk/types": "3.226.0", + "@aws-sdk/url-parser": "3.226.0", + "@aws-sdk/util-base64": "3.208.0", + "@aws-sdk/util-body-length-browser": "3.188.0", + "@aws-sdk/util-body-length-node": "3.208.0", + "@aws-sdk/util-defaults-mode-browser": "3.226.0", + "@aws-sdk/util-defaults-mode-node": "3.226.0", + "@aws-sdk/util-endpoints": "3.226.0", + "@aws-sdk/util-user-agent-browser": "3.226.0", + "@aws-sdk/util-user-agent-node": "3.226.0", + "@aws-sdk/util-utf8-browser": "3.188.0", + "@aws-sdk/util-utf8-node": "3.208.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/client-sts": { + "version": "3.226.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-sts/-/client-sts-3.226.0.tgz", + "integrity": "sha512-ZBlqRVbnHvvbkN5g56+mXltNybHNzgV69+2ARubQ8ge9U2qF/LweCmGqZnZLWqdGXwaB9IOvz5ZW2npyJh1X/A==", + "optional": true, + "requires": { + "@aws-crypto/sha256-browser": "2.0.0", + "@aws-crypto/sha256-js": "2.0.0", + "@aws-sdk/config-resolver": "3.226.0", + "@aws-sdk/credential-provider-node": "3.226.0", + "@aws-sdk/fetch-http-handler": "3.226.0", + "@aws-sdk/hash-node": "3.226.0", + "@aws-sdk/invalid-dependency": "3.226.0", + "@aws-sdk/middleware-content-length": "3.226.0", + "@aws-sdk/middleware-endpoint": "3.226.0", + "@aws-sdk/middleware-host-header": "3.226.0", + "@aws-sdk/middleware-logger": "3.226.0", + "@aws-sdk/middleware-recursion-detection": "3.226.0", + "@aws-sdk/middleware-retry": "3.226.0", + "@aws-sdk/middleware-sdk-sts": "3.226.0", + "@aws-sdk/middleware-serde": "3.226.0", + "@aws-sdk/middleware-signing": "3.226.0", + "@aws-sdk/middleware-stack": "3.226.0", + "@aws-sdk/middleware-user-agent": "3.226.0", + "@aws-sdk/node-config-provider": "3.226.0", + "@aws-sdk/node-http-handler": "3.226.0", + "@aws-sdk/protocol-http": "3.226.0", + "@aws-sdk/smithy-client": "3.226.0", + "@aws-sdk/types": "3.226.0", + "@aws-sdk/url-parser": "3.226.0", + "@aws-sdk/util-base64": "3.208.0", + "@aws-sdk/util-body-length-browser": "3.188.0", + "@aws-sdk/util-body-length-node": "3.208.0", + "@aws-sdk/util-defaults-mode-browser": "3.226.0", + "@aws-sdk/util-defaults-mode-node": "3.226.0", + "@aws-sdk/util-endpoints": "3.226.0", + "@aws-sdk/util-user-agent-browser": "3.226.0", + "@aws-sdk/util-user-agent-node": "3.226.0", + "@aws-sdk/util-utf8-browser": "3.188.0", + "@aws-sdk/util-utf8-node": "3.208.0", + "fast-xml-parser": "4.0.11", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/config-resolver": { + "version": "3.226.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/config-resolver/-/config-resolver-3.226.0.tgz", + "integrity": "sha512-0UWXtfnTT0OtnRP8jJodc8V7xAnWSqsh4RCRyV5uu3Z2Tv+xyW91GKxO+gOXoUP0hHu0lvBM9lYiMJcJWZYLYw==", + "optional": true, + "requires": { + "@aws-sdk/signature-v4": "3.226.0", + "@aws-sdk/types": "3.226.0", + "@aws-sdk/util-config-provider": "3.208.0", + "@aws-sdk/util-middleware": "3.226.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/credential-provider-cognito-identity": { + "version": "3.226.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-cognito-identity/-/credential-provider-cognito-identity-3.226.0.tgz", + "integrity": "sha512-ukueK6kgTxvUX89oQBoArj7Oh0dYfkToHypnin08SHRZry9VNnK5IfSMO+Q1tXmxCnDtai1ejaAOny900OjMyg==", + "optional": true, + "requires": { + "@aws-sdk/client-cognito-identity": "3.226.0", + "@aws-sdk/property-provider": "3.226.0", + "@aws-sdk/types": "3.226.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/credential-provider-env": { + "version": "3.226.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-env/-/credential-provider-env-3.226.0.tgz", + "integrity": "sha512-sd8uK1ojbXxaZXlthzw/VXZwCPUtU3PjObOfr3Evj7MPIM2IH8h29foOlggx939MdLQGboJf9gKvLlvKDWtJRA==", + "optional": true, + "requires": { + "@aws-sdk/property-provider": "3.226.0", + "@aws-sdk/types": "3.226.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/credential-provider-imds": { + "version": "3.226.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-imds/-/credential-provider-imds-3.226.0.tgz", + "integrity": "sha512-//z/COQm2AjYFI1Lb0wKHTQSrvLFTyuKLFQGPJsKS7DPoxGOCKB7hmYerlbl01IDoCxTdyL//TyyPxbZEOQD5Q==", + "optional": true, + "requires": { + "@aws-sdk/node-config-provider": "3.226.0", + "@aws-sdk/property-provider": "3.226.0", + "@aws-sdk/types": "3.226.0", + "@aws-sdk/url-parser": "3.226.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/credential-provider-ini": { + "version": "3.226.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-ini/-/credential-provider-ini-3.226.0.tgz", + "integrity": "sha512-Sj7SGl53qmKkD7wvgU0MSTyj8ho6A3tKVbadTHljVz60jiauTEM97Z1DIai6U3oPFVteaKqx7npc8ozeK6mKNg==", + "optional": true, + "requires": { + "@aws-sdk/credential-provider-env": "3.226.0", + "@aws-sdk/credential-provider-imds": "3.226.0", + "@aws-sdk/credential-provider-sso": "3.226.0", + "@aws-sdk/credential-provider-web-identity": "3.226.0", + "@aws-sdk/property-provider": "3.226.0", + "@aws-sdk/shared-ini-file-loader": "3.226.0", + "@aws-sdk/types": "3.226.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/credential-provider-node": { + "version": "3.226.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-node/-/credential-provider-node-3.226.0.tgz", + "integrity": "sha512-kuOeiVmlhSyMC1Eix0pqHmb4EmpbMHrTw+9ObZbQ2bRXy05Q9fLA6SVBcI01bI1KVh7Qqz9i8ojOY3A2zscjyA==", + "optional": true, + "requires": { + "@aws-sdk/credential-provider-env": "3.226.0", + "@aws-sdk/credential-provider-imds": "3.226.0", + "@aws-sdk/credential-provider-ini": "3.226.0", + "@aws-sdk/credential-provider-process": "3.226.0", + "@aws-sdk/credential-provider-sso": "3.226.0", + "@aws-sdk/credential-provider-web-identity": "3.226.0", + "@aws-sdk/property-provider": "3.226.0", + "@aws-sdk/shared-ini-file-loader": "3.226.0", + "@aws-sdk/types": "3.226.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/credential-provider-process": { + "version": "3.226.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-process/-/credential-provider-process-3.226.0.tgz", + "integrity": "sha512-iUDMdnrTvbvaCFhWwqyXrhvQ9+ojPqPqXhwZtY1X/Qaz+73S9gXBPJHZaZb2Ke0yKE1Ql3bJbKvmmxC/qLQMng==", + "optional": true, + "requires": { + "@aws-sdk/property-provider": "3.226.0", + "@aws-sdk/shared-ini-file-loader": "3.226.0", + "@aws-sdk/types": "3.226.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/credential-provider-sso": { + "version": "3.226.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-sso/-/credential-provider-sso-3.226.0.tgz", + "integrity": "sha512-QSBeyOIAus4/8u/DeAstE8w/zw+F7PQohdB8JFP/BPaCfc8uKue4UkqqvQWRfm4VSEnHeXt037MDopmCpd98Iw==", + "optional": true, + "requires": { + "@aws-sdk/client-sso": "3.226.0", + "@aws-sdk/property-provider": "3.226.0", + "@aws-sdk/shared-ini-file-loader": "3.226.0", + "@aws-sdk/token-providers": "3.226.0", + "@aws-sdk/types": "3.226.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/credential-provider-web-identity": { + "version": "3.226.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-web-identity/-/credential-provider-web-identity-3.226.0.tgz", + "integrity": "sha512-CCpv847rLB0SFOHz2igvUMFAzeT2fD3YnY4C8jltuJoEkn0ITn1Hlgt13nTJ5BUuvyti2mvyXZHmNzhMIMrIlw==", + "optional": true, + "requires": { + "@aws-sdk/property-provider": "3.226.0", + "@aws-sdk/types": "3.226.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/credential-providers": { + "version": "3.226.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-providers/-/credential-providers-3.226.0.tgz", + "integrity": "sha512-oNkUBxlX0kmwt8jEyQAH7p5Tk1g9iWEKGGCTPPZ7A5RoZpmv83zT8ReZ/+QsSmJIWGb0zzraHMzKbmfMSeztZg==", + "optional": true, + "requires": { + "@aws-sdk/client-cognito-identity": "3.226.0", + "@aws-sdk/client-sso": "3.226.0", + "@aws-sdk/client-sts": "3.226.0", + "@aws-sdk/credential-provider-cognito-identity": "3.226.0", + "@aws-sdk/credential-provider-env": "3.226.0", + "@aws-sdk/credential-provider-imds": "3.226.0", + "@aws-sdk/credential-provider-ini": "3.226.0", + "@aws-sdk/credential-provider-node": "3.226.0", + "@aws-sdk/credential-provider-process": "3.226.0", + "@aws-sdk/credential-provider-sso": "3.226.0", + "@aws-sdk/credential-provider-web-identity": "3.226.0", + "@aws-sdk/property-provider": "3.226.0", + "@aws-sdk/shared-ini-file-loader": "3.226.0", + "@aws-sdk/types": "3.226.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/fetch-http-handler": { + "version": "3.226.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/fetch-http-handler/-/fetch-http-handler-3.226.0.tgz", + "integrity": "sha512-JewZPMNEBXfi1xVnRa7pVtK/zgZD8/lQ/YnD8pq79WuMa2cwyhDtr8oqCoqsPW+WJT5ScXoMtuHxN78l8eKWgg==", + "optional": true, + "requires": { + "@aws-sdk/protocol-http": "3.226.0", + "@aws-sdk/querystring-builder": "3.226.0", + "@aws-sdk/types": "3.226.0", + "@aws-sdk/util-base64": "3.208.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/hash-node": { + "version": "3.226.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/hash-node/-/hash-node-3.226.0.tgz", + "integrity": "sha512-MdlJhJ9/Espwd0+gUXdZRsHuostB2WxEVAszWxobP0FTT9PnicqnfK7ExmW+DUAc0ywxtEbR3e0UND65rlSTVw==", + "optional": true, + "requires": { + "@aws-sdk/types": "3.226.0", + "@aws-sdk/util-buffer-from": "3.208.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/invalid-dependency": { + "version": "3.226.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/invalid-dependency/-/invalid-dependency-3.226.0.tgz", + "integrity": "sha512-QXOYFmap8g9QzRjumcRCIo2GEZkdCwd7ePQW0OABWPhKHzlJ74vvBxywjU3s39EEBEluWXtZ7Iufg6GxZM4ifw==", + "optional": true, + "requires": { + "@aws-sdk/types": "3.226.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/is-array-buffer": { + "version": "3.201.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/is-array-buffer/-/is-array-buffer-3.201.0.tgz", + "integrity": "sha512-UPez5qLh3dNgt0DYnPD/q0mVJY84rA17QE26hVNOW3fAji8W2wrwrxdacWOxyXvlxWsVRcKmr+lay1MDqpAMfg==", + "optional": true, + "requires": { + "tslib": "^2.3.1" + } + }, + "@aws-sdk/middleware-content-length": { + "version": "3.226.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-content-length/-/middleware-content-length-3.226.0.tgz", + "integrity": "sha512-ksUzlHJN2JMuyavjA46a4sctvnrnITqt2tbGGWWrAuXY1mel2j+VbgnmJUiwHKUO6bTFBBeft5Vd1TSOb4JmiA==", + "optional": true, + "requires": { + "@aws-sdk/protocol-http": "3.226.0", + "@aws-sdk/types": "3.226.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/middleware-endpoint": { + "version": "3.226.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-endpoint/-/middleware-endpoint-3.226.0.tgz", + "integrity": "sha512-EvLFafjtUxTT0AC9p3aBQu1/fjhWdIeK58jIXaNFONfZ3F8QbEYUPuF/SqZvJM6cWfOO9qwYKkRDbCSTYhprIg==", + "optional": true, + "requires": { + "@aws-sdk/middleware-serde": "3.226.0", + "@aws-sdk/protocol-http": "3.226.0", + "@aws-sdk/signature-v4": "3.226.0", + "@aws-sdk/types": "3.226.0", + "@aws-sdk/url-parser": "3.226.0", + "@aws-sdk/util-config-provider": "3.208.0", + "@aws-sdk/util-middleware": "3.226.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/middleware-host-header": { + "version": "3.226.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-host-header/-/middleware-host-header-3.226.0.tgz", + "integrity": "sha512-haVkWVh6BUPwKgWwkL6sDvTkcZWvJjv8AgC8jiQuSl8GLZdzHTB8Qhi3IsfFta9HAuoLjxheWBE5Z/L0UrfhLA==", + "optional": true, + "requires": { + "@aws-sdk/protocol-http": "3.226.0", + "@aws-sdk/types": "3.226.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/middleware-logger": { + "version": "3.226.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-logger/-/middleware-logger-3.226.0.tgz", + "integrity": "sha512-m9gtLrrYnpN6yckcQ09rV7ExWOLMuq8mMPF/K3DbL/YL0TuILu9i2T1W+JuxSX+K9FMG2HrLAKivE/kMLr55xA==", + "optional": true, + "requires": { + "@aws-sdk/types": "3.226.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/middleware-recursion-detection": { + "version": "3.226.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-recursion-detection/-/middleware-recursion-detection-3.226.0.tgz", + "integrity": "sha512-mwRbdKEUeuNH5TEkyZ5FWxp6bL2UC1WbY+LDv6YjHxmSMKpAoOueEdtU34PqDOLrpXXxIGHDFmjeGeMfktyEcA==", + "optional": true, + "requires": { + "@aws-sdk/protocol-http": "3.226.0", + "@aws-sdk/types": "3.226.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/middleware-retry": { + "version": "3.226.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-retry/-/middleware-retry-3.226.0.tgz", + "integrity": "sha512-uMn4dSkv9Na2uvt6K3HgTnVrCRAlGv1MBAtUDLXONqUv1L/Z1fp3CkFkLKQHKylfBwBhe6dXfYEo87i8LZFoqg==", + "optional": true, + "requires": { + "@aws-sdk/protocol-http": "3.226.0", + "@aws-sdk/service-error-classification": "3.226.0", + "@aws-sdk/types": "3.226.0", + "@aws-sdk/util-middleware": "3.226.0", + "tslib": "^2.3.1", + "uuid": "^8.3.2" + } + }, + "@aws-sdk/middleware-sdk-sts": { + "version": "3.226.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-sdk-sts/-/middleware-sdk-sts-3.226.0.tgz", + "integrity": "sha512-NN9T/qoSD1kZvAT+VLny3NnlqgylYQcsgV3rvi/8lYzw/G/2s8VS6sm/VTWGGZhx08wZRv20MWzYu3bftcyqUg==", + "optional": true, + "requires": { + "@aws-sdk/middleware-signing": "3.226.0", + "@aws-sdk/property-provider": "3.226.0", + "@aws-sdk/protocol-http": "3.226.0", + "@aws-sdk/signature-v4": "3.226.0", + "@aws-sdk/types": "3.226.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/middleware-serde": { + "version": "3.226.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-serde/-/middleware-serde-3.226.0.tgz", + "integrity": "sha512-nPuOOAkSfx9TxzdKFx0X2bDlinOxGrqD7iof926K/AEflxGD1DBdcaDdjlYlPDW2CVE8LV/rAgbYuLxh/E/1VA==", + "optional": true, + "requires": { + "@aws-sdk/types": "3.226.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/middleware-signing": { + "version": "3.226.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-signing/-/middleware-signing-3.226.0.tgz", + "integrity": "sha512-E6HmtPcl+IjYDDzi1xI2HpCbBq2avNWcjvCriMZWuTAtRVpnA6XDDGW5GY85IfS3A8G8vuWqEVPr8JcYUcjfew==", + "optional": true, + "requires": { + "@aws-sdk/property-provider": "3.226.0", + "@aws-sdk/protocol-http": "3.226.0", + "@aws-sdk/signature-v4": "3.226.0", + "@aws-sdk/types": "3.226.0", + "@aws-sdk/util-middleware": "3.226.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/middleware-stack": { + "version": "3.226.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-stack/-/middleware-stack-3.226.0.tgz", + "integrity": "sha512-85wF29LvPvpoed60fZGDYLwv1Zpd/cM0C22WSSFPw1SSJeqO4gtFYyCg2squfT3KI6kF43IIkOCJ+L7GtryPug==", + "optional": true, + "requires": { + "tslib": "^2.3.1" + } + }, + "@aws-sdk/middleware-user-agent": { + "version": "3.226.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-user-agent/-/middleware-user-agent-3.226.0.tgz", + "integrity": "sha512-N1WnfzCW1Y5yWhVAphf8OPGTe8Df3vmV7/LdsoQfmpkCZgLZeK2o0xITkUQhRj1mbw7yp8tVFLFV3R2lMurdAQ==", + "optional": true, + "requires": { + "@aws-sdk/protocol-http": "3.226.0", + "@aws-sdk/types": "3.226.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/node-config-provider": { + "version": "3.226.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/node-config-provider/-/node-config-provider-3.226.0.tgz", + "integrity": "sha512-B8lQDqiRk7X5izFEUMXmi8CZLOKCTWQJU9HQf3ako+sF0gexo4nHN3jhoRWyLtcgC5S3on/2jxpAcqtm7kuY3w==", + "optional": true, + "requires": { + "@aws-sdk/property-provider": "3.226.0", + "@aws-sdk/shared-ini-file-loader": "3.226.0", + "@aws-sdk/types": "3.226.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/node-http-handler": { + "version": "3.226.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/node-http-handler/-/node-http-handler-3.226.0.tgz", + "integrity": "sha512-xQCddnZNMiPmjr3W7HYM+f5ir4VfxgJh37eqZwX6EZmyItFpNNeVzKUgA920ka1VPz/ZUYB+2OFGiX3LCLkkaA==", + "optional": true, + "requires": { + "@aws-sdk/abort-controller": "3.226.0", + "@aws-sdk/protocol-http": "3.226.0", + "@aws-sdk/querystring-builder": "3.226.0", + "@aws-sdk/types": "3.226.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/property-provider": { + "version": "3.226.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/property-provider/-/property-provider-3.226.0.tgz", + "integrity": "sha512-TsljjG+Sg0LmdgfiAlWohluWKnxB/k8xenjeozZfzOr5bHmNHtdbWv6BtNvD/R83hw7SFXxbJHlD5H4u9p2NFg==", + "optional": true, + "requires": { + "@aws-sdk/types": "3.226.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/protocol-http": { + "version": "3.226.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/protocol-http/-/protocol-http-3.226.0.tgz", + "integrity": "sha512-zWkVqiTA9RXL6y0hhfZc9bcU4DX2NI6Hw9IhQmSPeM59mdbPjJlY4bLlMr5YxywqO3yQ/ylNoAfrEzrDjlOSRg==", + "optional": true, + "requires": { + "@aws-sdk/types": "3.226.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/querystring-builder": { + "version": "3.226.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/querystring-builder/-/querystring-builder-3.226.0.tgz", + "integrity": "sha512-LVurypuNeotO4lmirKXRC4NYrZRAyMJXuwO0f2a5ZAUJCjauwYrifKue6yCfU7bls7gut7nfcR6B99WBYpHs3g==", + "optional": true, + "requires": { + "@aws-sdk/types": "3.226.0", + "@aws-sdk/util-uri-escape": "3.201.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/querystring-parser": { + "version": "3.226.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/querystring-parser/-/querystring-parser-3.226.0.tgz", + "integrity": "sha512-FzB+VrQ47KAFxiPt2YXrKZ8AOLZQqGTLCKHzx4bjxGmwgsjV8yIbtJiJhZLMcUQV4LtGeIY9ixIqQhGvnZHE4A==", + "optional": true, + "requires": { + "@aws-sdk/types": "3.226.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/service-error-classification": { + "version": "3.226.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/service-error-classification/-/service-error-classification-3.226.0.tgz", + "integrity": "sha512-9R01dBpE8JILe2CTft7YN2tMufT2mMWMTqxmHwPSmOpsxHTj8hEII7GTfvpb95ThHwW7XMNhg7pbHLbrTJZCVA==", + "optional": true + }, + "@aws-sdk/shared-ini-file-loader": { + "version": "3.226.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/shared-ini-file-loader/-/shared-ini-file-loader-3.226.0.tgz", + "integrity": "sha512-661VQefsARxVyyV2FX9V61V+nNgImk7aN2hYlFKla6BCwZfMng+dEtD0xVGyg1PfRw0qvEv5LQyxMVgHcUSevA==", + "optional": true, + "requires": { + "@aws-sdk/types": "3.226.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/signature-v4": { + "version": "3.226.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/signature-v4/-/signature-v4-3.226.0.tgz", + "integrity": "sha512-/R5q5agdPd7HJB68XMzpxrNPk158EHUvkFkuRu5Qf3kkkHebEzWEBlWoVpUe6ss4rP9Tqcue6xPuaftEmhjpYw==", + "optional": true, + "requires": { + "@aws-sdk/is-array-buffer": "3.201.0", + "@aws-sdk/types": "3.226.0", + "@aws-sdk/util-hex-encoding": "3.201.0", + "@aws-sdk/util-middleware": "3.226.0", + "@aws-sdk/util-uri-escape": "3.201.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/smithy-client": { + "version": "3.226.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/smithy-client/-/smithy-client-3.226.0.tgz", + "integrity": "sha512-BWr1FhWSUhkSBp0TLzliD5AQBjA2Jmo9FlOOt+cBwd9BKkSGlGj+HgATYJ83Sjjg2+J6qvEZBxB78LKVHhorBw==", + "optional": true, + "requires": { + "@aws-sdk/middleware-stack": "3.226.0", + "@aws-sdk/types": "3.226.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/token-providers": { + "version": "3.226.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/token-providers/-/token-providers-3.226.0.tgz", + "integrity": "sha512-3ouRt2i3ve8ivg54PxPhtOTcipzf6BoQsMw0EiO23yYKujhyeFH2IkxV4EYC687xFrUjheqJf8FWU/DD8EQ/ow==", + "optional": true, + "requires": { + "@aws-sdk/client-sso-oidc": "3.226.0", + "@aws-sdk/property-provider": "3.226.0", + "@aws-sdk/shared-ini-file-loader": "3.226.0", + "@aws-sdk/types": "3.226.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/types": { + "version": "3.226.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/types/-/types-3.226.0.tgz", + "integrity": "sha512-MmmNHrWeO4man7wpOwrAhXlevqtOV9ZLcH4RhnG5LmRce0RFOApx24HoKENfFCcOyCm5LQBlsXCqi0dZWDWU0A==", + "optional": true, + "requires": { + "tslib": "^2.3.1" + } + }, + "@aws-sdk/url-parser": { + "version": "3.226.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/url-parser/-/url-parser-3.226.0.tgz", + "integrity": "sha512-p5RLE0QWyP0OcTOLmFcLdVgUcUEzmEfmdrnOxyNzomcYb0p3vUagA5zfa1HVK2azsQJFBv28GfvMnba9bGhObg==", + "optional": true, + "requires": { + "@aws-sdk/querystring-parser": "3.226.0", + "@aws-sdk/types": "3.226.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/util-base64": { + "version": "3.208.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-base64/-/util-base64-3.208.0.tgz", + "integrity": "sha512-PQniZph5A6N7uuEOQi+1hnMz/FSOK/8kMFyFO+4DgA1dZ5pcKcn5wiFwHkcTb/BsgVqQa3Jx0VHNnvhlS8JyTg==", + "optional": true, + "requires": { + "@aws-sdk/util-buffer-from": "3.208.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/util-body-length-browser": { + "version": "3.188.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-body-length-browser/-/util-body-length-browser-3.188.0.tgz", + "integrity": "sha512-8VpnwFWXhnZ/iRSl9mTf+VKOX9wDE8QtN4bj9pBfxwf90H1X7E8T6NkiZD3k+HubYf2J94e7DbeHs7fuCPW5Qg==", + "optional": true, + "requires": { + "tslib": "^2.3.1" + } + }, + "@aws-sdk/util-body-length-node": { + "version": "3.208.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-body-length-node/-/util-body-length-node-3.208.0.tgz", + "integrity": "sha512-3zj50e5g7t/MQf53SsuuSf0hEELzMtD8RX8C76f12OSRo2Bca4FLLYHe0TZbxcfQHom8/hOaeZEyTyMogMglqg==", + "optional": true, + "requires": { + "tslib": "^2.3.1" + } + }, + "@aws-sdk/util-buffer-from": { + "version": "3.208.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-buffer-from/-/util-buffer-from-3.208.0.tgz", + "integrity": "sha512-7L0XUixNEFcLUGPeBF35enCvB9Xl+K6SQsmbrPk1P3mlV9mguWSDQqbOBwY1Ir0OVbD6H/ZOQU7hI/9RtRI0Zw==", + "optional": true, + "requires": { + "@aws-sdk/is-array-buffer": "3.201.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/util-config-provider": { + "version": "3.208.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-config-provider/-/util-config-provider-3.208.0.tgz", + "integrity": "sha512-DSRqwrERUsT34ug+anlMBIFooBEGwM8GejC7q00Y/9IPrQy50KnG5PW2NiTjuLKNi7pdEOlwTSEocJE15eDZIg==", + "optional": true, + "requires": { + "tslib": "^2.3.1" + } + }, + "@aws-sdk/util-defaults-mode-browser": { + "version": "3.226.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-defaults-mode-browser/-/util-defaults-mode-browser-3.226.0.tgz", + "integrity": "sha512-chLx+6AeMSjuPsCVbI1B4Pg3jftjjcsuTsJucjo0DKBb1VSWqPCitmOILQVvKiA2Km8TSs3VcbUuOCyDExkzAg==", + "optional": true, + "requires": { + "@aws-sdk/property-provider": "3.226.0", + "@aws-sdk/types": "3.226.0", + "bowser": "^2.11.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/util-defaults-mode-node": { + "version": "3.226.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-defaults-mode-node/-/util-defaults-mode-node-3.226.0.tgz", + "integrity": "sha512-Zr0AEj6g8gqiOhr31Pa2tdOFdPQciaAUCg3Uj/eH0znNBdVoptCj67oCW/I5v4pY4ZLZtGhr3uuoxDJH2MB3yg==", + "optional": true, + "requires": { + "@aws-sdk/config-resolver": "3.226.0", + "@aws-sdk/credential-provider-imds": "3.226.0", + "@aws-sdk/node-config-provider": "3.226.0", + "@aws-sdk/property-provider": "3.226.0", + "@aws-sdk/types": "3.226.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/util-endpoints": { + "version": "3.226.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-endpoints/-/util-endpoints-3.226.0.tgz", + "integrity": "sha512-iqOkac/zLmyPBUJd7SLN0PeZMkOmlGgD5PHmmekTClOkce2eUjK9SNX1PzL73aXPoPTyhg9QGLH8uEZEQ8YUzg==", + "optional": true, + "requires": { + "@aws-sdk/types": "3.226.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/util-hex-encoding": { + "version": "3.201.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-hex-encoding/-/util-hex-encoding-3.201.0.tgz", + "integrity": "sha512-7t1vR1pVxKx0motd3X9rI3m/xNp78p3sHtP5yo4NP4ARpxyJ0fokBomY8ScaH2D/B+U5o9ARxldJUdMqyBlJcA==", + "optional": true, + "requires": { + "tslib": "^2.3.1" + } + }, + "@aws-sdk/util-locate-window": { + "version": "3.208.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-locate-window/-/util-locate-window-3.208.0.tgz", + "integrity": "sha512-iua1A2+P7JJEDHVgvXrRJSvsnzG7stYSGQnBVphIUlemwl6nN5D+QrgbjECtrbxRz8asYFHSzhdhECqN+tFiBg==", + "optional": true, + "requires": { + "tslib": "^2.3.1" + } + }, + "@aws-sdk/util-middleware": { + "version": "3.226.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-middleware/-/util-middleware-3.226.0.tgz", + "integrity": "sha512-B96CQnwX4gRvQdaQkdUtqvDPkrptV5+va6FVeJOocU/DbSYMAScLxtR3peMS8cnlOT6nL1Eoa42OI9AfZz1VwQ==", + "optional": true, + "requires": { + "tslib": "^2.3.1" + } + }, + "@aws-sdk/util-uri-escape": { + "version": "3.201.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-uri-escape/-/util-uri-escape-3.201.0.tgz", + "integrity": "sha512-TeTWbGx4LU2c5rx0obHeDFeO9HvwYwQtMh1yniBz00pQb6Qt6YVOETVQikRZ+XRQwEyCg/dA375UplIpiy54mA==", + "optional": true, + "requires": { + "tslib": "^2.3.1" + } + }, + "@aws-sdk/util-user-agent-browser": { + "version": "3.226.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-user-agent-browser/-/util-user-agent-browser-3.226.0.tgz", + "integrity": "sha512-PhBIu2h6sPJPcv2I7ELfFizdl5pNiL4LfxrasMCYXQkJvVnoXztHA1x+CQbXIdtZOIlpjC+6BjDcE0uhnpvfcA==", + "optional": true, + "requires": { + "@aws-sdk/types": "3.226.0", + "bowser": "^2.11.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/util-user-agent-node": { + "version": "3.226.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-user-agent-node/-/util-user-agent-node-3.226.0.tgz", + "integrity": "sha512-othPc5Dz/pkYkxH+nZPhc1Al0HndQT8zHD4e9h+EZ+8lkd8n+IsnLfTS/mSJWrfiC6UlNRVw55cItstmJyMe/A==", + "optional": true, + "requires": { + "@aws-sdk/node-config-provider": "3.226.0", + "@aws-sdk/types": "3.226.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/util-utf8-browser": { + "version": "3.188.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-utf8-browser/-/util-utf8-browser-3.188.0.tgz", + "integrity": "sha512-jt627x0+jE+Ydr9NwkFstg3cUvgWh56qdaqAMDsqgRlKD21md/6G226z/Qxl7lb1VEW2LlmCx43ai/37Qwcj2Q==", + "optional": true, + "requires": { + "tslib": "^2.3.1" + } + }, + "@aws-sdk/util-utf8-node": { + "version": "3.208.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-utf8-node/-/util-utf8-node-3.208.0.tgz", + "integrity": "sha512-jKY87Acv0yWBdFxx6bveagy5FYjz+dtV8IPT7ay1E2WPWH1czoIdMAkc8tSInK31T6CRnHWkLZ1qYwCbgRfERQ==", + "optional": true, + "requires": { + "@aws-sdk/util-buffer-from": "3.208.0", + "tslib": "^2.3.1" + } + }, + "@babel/runtime": { + "version": "7.20.6", + "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.20.6.tgz", + "integrity": "sha512-Q+8MqP7TiHMWzSfwiJwXCjyf4GYA4Dgw3emg/7xmwsdLJOZUp+nMqcOwOzzYheuM1rhDu8FSj2l0aoMygEuXuA==", + "requires": { + "regenerator-runtime": "^0.13.11" } }, "@discordjs/builders": { - "version": "0.11.0", - "resolved": "https://registry.npmjs.org/@discordjs/builders/-/builders-0.11.0.tgz", - "integrity": "sha512-ZTB8yJdJKrKlq44dpWkNUrAtEJEq0gqpb7ASdv4vmq6/mZal5kOv312hQ56I/vxwMre+VIkoHquNUAfnTbiYtg==", + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/@discordjs/builders/-/builders-1.4.0.tgz", + "integrity": "sha512-nEeTCheTTDw5kO93faM1j8ZJPonAX86qpq/QVoznnSa8WWcCgJpjlu6GylfINTDW6o7zZY0my2SYdxx2mfNwGA==", "requires": { - "@sindresorhus/is": "^4.2.0", - "discord-api-types": "^0.26.0", - "ts-mixer": "^6.0.0", - "tslib": "^2.3.1", - "zod": "^3.11.6" + "@discordjs/util": "^0.1.0", + "@sapphire/shapeshift": "^3.7.1", + "discord-api-types": "^0.37.20", + "fast-deep-equal": "^3.1.3", + "ts-mixer": "^6.0.2", + "tslib": "^2.4.1" } }, "@discordjs/collection": { - "version": "0.1.6", - "resolved": "https://registry.npmjs.org/@discordjs/collection/-/collection-0.1.6.tgz", - "integrity": "sha512-utRNxnd9kSS2qhyivo9lMlt5qgAUasH2gb7BEOn6p0efFh24gjGomHzWKMAPn2hEReOPQZCJaRKoURwRotKucQ==" + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/@discordjs/collection/-/collection-1.3.0.tgz", + "integrity": "sha512-ylt2NyZ77bJbRij4h9u/wVy7qYw/aDqQLWnadjvDqW/WoWCxrsX6M3CIw9GVP5xcGCDxsrKj5e0r5evuFYwrKg==" }, "@discordjs/rest": { - "version": "0.1.0-canary.0", - "resolved": "https://registry.npmjs.org/@discordjs/rest/-/rest-0.1.0-canary.0.tgz", - "integrity": "sha512-d+s//ISYVV+e0w/926wMEeO7vju+Pn11x1JM4tcmVMCHSDgpi6pnFCNAXF1TEdnDcy7xf9tq5cf2pQkb/7ySTQ==", + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/@discordjs/rest/-/rest-1.4.0.tgz", + "integrity": "sha512-k3Ip7ffFSAfp7Mu4H/3BEXFvFz+JsbXRrRtpeBMnSp1LefhtlZWJE6xdXzNlblktKNQltnRwY+z0NZrGQdxAMw==", "requires": { - "@discordjs/collection": "^0.1.6", - "@sapphire/async-queue": "^1.1.4", - "@sapphire/snowflake": "^1.3.5", - "abort-controller": "^3.0.0", - "discord-api-types": "^0.18.1", - "form-data": "^4.0.0", - "node-fetch": "^2.6.1", - "tslib": "^2.3.0" + "@discordjs/collection": "^1.3.0", + "@discordjs/util": "^0.1.0", + "@sapphire/async-queue": "^1.5.0", + "@sapphire/snowflake": "^3.2.2", + "discord-api-types": "^0.37.20", + "file-type": "^18.0.0", + "tslib": "^2.4.1", + "undici": "^5.13.0" }, "dependencies": { - "discord-api-types": { - "version": "0.18.1", - "resolved": "https://registry.npmjs.org/discord-api-types/-/discord-api-types-0.18.1.tgz", - "integrity": "sha512-hNC38R9ZF4uaujaZQtQfm5CdQO58uhdkoHQAVvMfIL0LgOSZeW575W8H6upngQOuoxWd8tiRII3LLJm9zuQKYg==" + "file-type": { + "version": "18.0.0", + "resolved": "https://registry.npmjs.org/file-type/-/file-type-18.0.0.tgz", + "integrity": "sha512-jjMwFpnW8PKofLE/4ohlhqwDk5k0NC6iy0UHAJFKoY1fQeGMN0GDdLgHQrvCbSpMwbqzoCZhRI5dETCZna5qVA==", + "requires": { + "readable-web-to-node-stream": "^3.0.2", + "strtok3": "^7.0.0", + "token-types": "^5.0.1" + } } } }, + "@discordjs/util": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/@discordjs/util/-/util-0.1.0.tgz", + "integrity": "sha512-e7d+PaTLVQav6rOc2tojh2y6FE8S7REkqLldq1XF4soCx74XB/DIjbVbVLtBemf0nLW77ntz0v+o5DytKwFNLQ==" + }, "@discordjs/voice": { - "version": "0.7.5", - "resolved": "https://registry.npmjs.org/@discordjs/voice/-/voice-0.7.5.tgz", - "integrity": "sha512-lUk+CmIXNKslT6DkC9IF9rpsqhzlTiedauUCPBzepjd4XWxwBZiyVIzR6QpbAirxkAwCoAbbje+3Ho71PGLEAw==", + "version": "0.14.0", + "resolved": "https://registry.npmjs.org/@discordjs/voice/-/voice-0.14.0.tgz", + "integrity": "sha512-/LV8LSFuJ1c4OEW1ubPg3al2QNpUpwX8ZL+KL+LORmnUFVCtehSaEh+38uDfWg1O/TgiGI5vOLj4ZKql43drcw==", "requires": { - "@types/ws": "^8.2.0", - "discord-api-types": "^0.24.0", - "prism-media": "^1.3.2", - "tiny-typed-emitter": "^2.1.0", - "tslib": "^2.3.1", - "ws": "^8.2.3" - }, - "dependencies": { - "discord-api-types": { - "version": "0.24.0", - "resolved": "https://registry.npmjs.org/discord-api-types/-/discord-api-types-0.24.0.tgz", - "integrity": "sha512-X0uA2a92cRjowUEXpLZIHWl4jiX1NsUpDhcEOpa1/hpO1vkaokgZ8kkPtPih9hHth5UVQ3mHBu/PpB4qjyfJ4A==" - } + "@types/ws": "^8.5.3", + "discord-api-types": "^0.37.20", + "prism-media": "^1.3.4", + "tslib": "^2.4.1", + "ws": "^8.11.0" } }, "@haileybot/captcha-generator": { @@ -7142,11 +8704,11 @@ } }, "@iamtraction/google-translate": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/@iamtraction/google-translate/-/google-translate-1.1.2.tgz", - "integrity": "sha512-z30o1rz2b7JTTqmy/MSQjwfz59++qrBpTXGHWQrqxPW1mTW5pLEMM2FymxCyJcg6alogKgSLT2RVrjuvuNCxVA==", + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/@iamtraction/google-translate/-/google-translate-2.0.1.tgz", + "integrity": "sha512-kOTkt23zflxpgxLIe9tLvDU8IvNscXYbgMSXydNkZGWDtJ75YJiU3v7EBz+t7h/gSiY7sT5r4dlFkMrHCl+N6A==", "requires": { - "got": "^11.8.1" + "undici": "^5.12.0" } }, "@jimp/bmp": { @@ -7519,30 +9081,25 @@ "integrity": "sha512-JkLdIsP8fPAdh9ZZjrbHWR/+mZj0wvKS5ICibcLrRI1j84UmLMshx5n9QmL8b95d4onJ2xxiyugTgSAX7AalmA==" }, "@sapphire/shapeshift": { - "version": "3.7.0", - "resolved": "https://registry.npmjs.org/@sapphire/shapeshift/-/shapeshift-3.7.0.tgz", - "integrity": "sha512-A6vI1zJoxhjWo4grsxpBRBgk96SqSdjLX5WlzKp9H+bJbkM07mvwcbtbVAmUZHbi/OG3HLfiZ1rlw4BhH6tsBQ==", + "version": "3.7.1", + "resolved": "https://registry.npmjs.org/@sapphire/shapeshift/-/shapeshift-3.7.1.tgz", + "integrity": "sha512-JmYN/0GW49Vl8Hi4PwrsDBNjcuCylH78vWYolVys74LRIzilAAMINxx4RHQOdvYoz+ceJKVp4+zBbQ5kuIFOLw==", "requires": { "fast-deep-equal": "^3.1.3", "lodash.uniqwith": "^4.5.0" } }, "@sapphire/snowflake": { - "version": "1.3.6", - "resolved": "https://registry.npmjs.org/@sapphire/snowflake/-/snowflake-1.3.6.tgz", - "integrity": "sha512-QnzuLp+p9D7agynVub/zqlDVriDza9y3STArBhNiNBUgIX8+GL5FpQxstRfw1jDr5jkZUjcuKYAHxjIuXKdJAg==" - }, - "@sindresorhus/is": { - "version": "4.6.0", - "resolved": "https://registry.npmjs.org/@sindresorhus/is/-/is-4.6.0.tgz", - "integrity": "sha512-t09vSN3MdfsyCHoFcTRCH/iUtG7OJ0CsjzB8cjAmKc/va/kIgeDI/TxsigdncE/4be734m0cvIYwNaV4i2XqAw==" + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/@sapphire/snowflake/-/snowflake-3.3.0.tgz", + "integrity": "sha512-Hec5N6zEkZuZFLybVKyLFLlcSgYmR6C1/+9NkIhxPwOf6tgX52ndJCSz8ADejmbrNE0VuNCNkpzhRZzenEC9vA==" }, "@skyra/gifenc": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/@skyra/gifenc/-/gifenc-1.0.0.tgz", - "integrity": "sha512-4GEUDLofUdb4F21cNnwEkcS4srTlGpz9O8Mg+X+J+A3MAgFe25490r8EdfwszS07EE0m1l8Hp6oJ9xLsAwyxIQ==", + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@skyra/gifenc/-/gifenc-1.0.1.tgz", + "integrity": "sha512-kxu65ZchumEKWnFwPwy+/T2+/lzQZtwK6f5VTG3OJIBqvfdyRyxrWvbeBHT6G8p6nBEuxSwyI3YXTv2koXvHVQ==", "requires": { - "tslib": "^2.3.0" + "tslib": "^2.4.0" } }, "@sourcebin/linguist": { @@ -7550,13 +9107,10 @@ "resolved": "https://registry.npmjs.org/@sourcebin/linguist/-/linguist-0.0.3.tgz", "integrity": "sha512-VVkb/34pISdK+1tyqmwBac6crn8UhviKCRV5w/wc8iZyTCOoTrOu0Cgbqfh0bfMGxNlQuhaRy6cMmEmHxa5R3g==" }, - "@szmarczak/http-timer": { - "version": "4.0.6", - "resolved": "https://registry.npmjs.org/@szmarczak/http-timer/-/http-timer-4.0.6.tgz", - "integrity": "sha512-4BAffykYOgO+5nzBWYwE3W90sBgLJoUPRWWcL8wlyiM8IB8ipJz3UMJ9KXQd1RKQXpKp8Tutn80HZtWsu2u76w==", - "requires": { - "defer-to-connect": "^2.0.0" - } + "@tokenizer/token": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/@tokenizer/token/-/token-0.3.0.tgz", + "integrity": "sha512-OvjF+z51L3ov0OyAU0duzsYuvO01PH7x4t6DJx+guahgTnBHkhJdG7soQeTSFLWN3efnHyibZ4Z8l2EuWwJN3A==" }, "@tootallnate/once": { "version": "2.0.0", @@ -7572,63 +9126,10 @@ "raw-body": "^2.4.1" } }, - "@types/cacheable-request": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/@types/cacheable-request/-/cacheable-request-6.0.2.tgz", - "integrity": "sha512-B3xVo+dlKM6nnKTcmm5ZtY/OL8bOAOd2Olee9M1zft65ox50OzjEHW91sDiU9j6cvW8Ejg1/Qkf4xd2kugApUA==", - "requires": { - "@types/http-cache-semantics": "*", - "@types/keyv": "*", - "@types/node": "*", - "@types/responselike": "*" - } - }, - "@types/http-cache-semantics": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/@types/http-cache-semantics/-/http-cache-semantics-4.0.1.tgz", - "integrity": "sha512-SZs7ekbP8CN0txVG2xVRH6EgKmEm31BOxA07vkFaETzZz1xh+cbt8BcI0slpymvwhx5dlFnQG2rTlPVQn+iRPQ==" - }, - "@types/keyv": { - "version": "3.1.4", - "resolved": "https://registry.npmjs.org/@types/keyv/-/keyv-3.1.4.tgz", - "integrity": "sha512-BQ5aZNSCpj7D6K2ksrRCTmKRLEpnPvWDiLPfoGyhZ++8YtiK9d/3DBKPJgry359X/P1PfruyYwvnvwFjuEiEIg==", - "requires": { - "@types/node": "*" - } - }, "@types/node": { - "version": "18.8.0", - "resolved": "https://registry.npmjs.org/@types/node/-/node-18.8.0.tgz", - "integrity": "sha512-u+h43R6U8xXDt2vzUaVP3VwjjLyOJk6uEciZS8OSyziUQGOwmk+l+4drxcsDboHXwyTaqS1INebghmWMRxq3LA==" - }, - "@types/node-fetch": { - "version": "2.6.2", - "resolved": "https://registry.npmjs.org/@types/node-fetch/-/node-fetch-2.6.2.tgz", - "integrity": "sha512-DHqhlq5jeESLy19TYhLakJ07kNumXWjcDdxXsLUMJZ6ue8VZJj4kLPQVE/2mdHh3xZziNF1xppu5lwmS53HR+A==", - "requires": { - "@types/node": "*", - "form-data": "^3.0.0" - }, - "dependencies": { - "form-data": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/form-data/-/form-data-3.0.1.tgz", - "integrity": "sha512-RHkBKtLWUVwd7SqRIvCZMEvAMoGUp0XU+seQiZejj0COz3RI3hWP4sCv3gZWWLjJTd7rGwcsF5eKZGii0r/hbg==", - "requires": { - "asynckit": "^0.4.0", - "combined-stream": "^1.0.8", - "mime-types": "^2.1.12" - } - } - } - }, - "@types/responselike": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/@types/responselike/-/responselike-1.0.0.tgz", - "integrity": "sha512-85Y2BjiufFzaMIlvJDvTTB8Fxl2xfLo4HgmHzVBz08w4wDePCTjYw66PdrolO0kzli3yam/YCgRufyo1DdQVTA==", - "requires": { - "@types/node": "*" - } + "version": "18.11.12", + "resolved": "https://registry.npmjs.org/@types/node/-/node-18.11.12.tgz", + "integrity": "sha512-FgD3NtTAKvyMmD44T07zz2fEf+OKwutgBCEVM8GcvMGVGaDktiLNTDvPwC/LUe3PinMW+X6CuLOF2Ui1mAlSXg==" }, "@types/webidl-conversions": { "version": "7.0.0", @@ -7662,39 +9163,24 @@ "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz", "integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==" }, - "abort-controller": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/abort-controller/-/abort-controller-3.0.0.tgz", - "integrity": "sha512-h8lQ8tacZYnR3vNQTgibj+tODHI5/+l06Au2Pcriv/Gmet0eaj4TwWH41sO9wnHDiQsEj19q0drzdWdeAHtweg==", - "requires": { - "event-target-shim": "^5.0.0" - } - }, "acorn": { - "version": "8.8.0", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.8.0.tgz", - "integrity": "sha512-QOxyigPVrpZ2GXT+PFyZTl6TtOFc5egxHIP9IlQ+RbupQuX4RkT/Bee4/kQuC02Xkzg84JcT7oLYtDIQxp+v7w==" + "version": "8.8.1", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.8.1.tgz", + "integrity": "sha512-7zFpHzhnqYKrkYdUjF1HI1bzd0VygEGX8lFk4k5zVMqHEoES+P+7TKI+EvLO9WVMJ8eekdO0aDEK044xTXwPPA==" }, "acorn-globals": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/acorn-globals/-/acorn-globals-6.0.0.tgz", - "integrity": "sha512-ZQl7LOWaF5ePqqcX4hLuv/bLXYQNfNWw2c0/yX/TsPRKamzHcTGQnlCjHT3TsmkOUVEPS3crCxiPfdzE/Trlhg==", + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/acorn-globals/-/acorn-globals-7.0.1.tgz", + "integrity": "sha512-umOSDSDrfHbTNPuNpC2NSnnA3LUrqpevPb4T9jRx4MagXNS0rs+gwiTcAvqCRmsD6utzsrzNt+ebm00SNWiC3Q==", "requires": { - "acorn": "^7.1.1", - "acorn-walk": "^7.1.1" - }, - "dependencies": { - "acorn": { - "version": "7.4.1", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz", - "integrity": "sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==" - } + "acorn": "^8.1.0", + "acorn-walk": "^8.0.2" } }, "acorn-walk": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-7.2.0.tgz", - "integrity": "sha512-OPdCF6GsMIP+Az+aWfAAOEt2/+iVDKE7oy6lJ098aoe59oAmK76qV6Gw60SbZ8jHuG2wH058GF4pLFbYamYrVA==" + "version": "8.2.0", + "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-8.2.0.tgz", + "integrity": "sha512-k+iyHEuPgSw6SbuDpGQM+06HQUa04DZ3o+F6CSzXMvvI5KMvnaEqXe+YVe555R9nn6GPt404fos4wcgpw12SDA==" }, "agent-base": { "version": "6.0.2", @@ -7781,11 +9267,13 @@ "integrity": "sha512-xh1Rl34h6Fi1DC2WWKfxUTVqRsNnr6LsKz2+hfwDxQJWmrx8+c7ylaqBMcHfl1U1r2dsifOvKX3LQuLNZ+XSvA==" }, "axios": { - "version": "0.24.0", - "resolved": "https://registry.npmjs.org/axios/-/axios-0.24.0.tgz", - "integrity": "sha512-Q6cWsys88HoPgAaFAVUb0WpPk0O8iTeisR9IMqy9G8AbO4NlpVknrnQS03zzF9PGAWgO3cgletO3VjV/P7VztA==", + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/axios/-/axios-1.2.1.tgz", + "integrity": "sha512-I88cFiGu9ryt/tfVEi4kX2SITsvDddTajXTOFmt2uK1ZVA8LytjtdeyefdQWEf5PU8w+4SSJDoYnggflB5tW4A==", "requires": { - "follow-redirects": "^1.14.4" + "follow-redirects": "^1.15.0", + "form-data": "^4.0.0", + "proxy-from-env": "^1.1.0" } }, "balanced-match": { @@ -7816,6 +9304,12 @@ "resolved": "https://registry.npmjs.org/boolbase/-/boolbase-1.0.0.tgz", "integrity": "sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww==" }, + "bowser": { + "version": "2.11.0", + "resolved": "https://registry.npmjs.org/bowser/-/bowser-2.11.0.tgz", + "integrity": "sha512-AlcaJBi/pqqJBIQ8U9Mcpc9i8Aqxn88Skv5d+xBX006BY5u8N3mGLHa5Lgppa7L/HfwgwLgZ6NYs+Ag6uUmJRA==", + "optional": true + }, "brace-expansion": { "version": "1.1.11", "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", @@ -7825,11 +9319,6 @@ "concat-map": "0.0.1" } }, - "browser-process-hrtime": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/browser-process-hrtime/-/browser-process-hrtime-1.0.0.tgz", - "integrity": "sha512-9o5UecI3GhkpM6DrXr69PblIuWxPKk9Y0jHBRhdocZ2y7YECBFCsHm79Pr3OyR2AvjhDkabFJaDJMYRazHgsow==" - }, "bson": { "version": "4.7.0", "resolved": "https://registry.npmjs.org/bson/-/bson-4.7.0.tgz", @@ -7865,25 +9354,6 @@ "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.2.tgz", "integrity": "sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==" }, - "cacheable-lookup": { - "version": "5.0.4", - "resolved": "https://registry.npmjs.org/cacheable-lookup/-/cacheable-lookup-5.0.4.tgz", - "integrity": "sha512-2/kNscPhpcxrOigMZzbiWF7dz8ilhb/nIHU3EyZiXWXpeq/au8qJ8VhdftMkty3n7Gj6HIGalQG8oiBNB3AJgA==" - }, - "cacheable-request": { - "version": "7.0.2", - "resolved": "https://registry.npmjs.org/cacheable-request/-/cacheable-request-7.0.2.tgz", - "integrity": "sha512-pouW8/FmiPQbuGpkXQ9BAPv/Mo5xDGANgSNXzTzJ8DrKGuXOssM4wIQRjfanNRh3Yu5cfYPvcorqbhg2KIJtew==", - "requires": { - "clone-response": "^1.0.2", - "get-stream": "^5.1.0", - "http-cache-semantics": "^4.0.0", - "keyv": "^4.0.0", - "lowercase-keys": "^2.0.0", - "normalize-url": "^6.0.1", - "responselike": "^2.0.0" - } - }, "call-bind": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz", @@ -7907,19 +9377,19 @@ }, "dependencies": { "chalk": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-5.0.1.tgz", - "integrity": "sha512-Fo07WOYGqMfCWHOzSXOt2CxDbC6skS/jO9ynEcmpANMoPrD+W1r1K6Vx7iNm+AQmETU1Xr2t+n8nzkV9t6xh3w==" + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-5.2.0.tgz", + "integrity": "sha512-ree3Gqw/nazQAPuJJEy+avdl7QfZMcUvmHIKgEZkGL+xOBzRvup5Hxo6LHuMceSxOabuJLJm5Yp/92R9eMmMvA==" } } }, "canvas": { - "version": "2.10.1", - "resolved": "https://registry.npmjs.org/canvas/-/canvas-2.10.1.tgz", - "integrity": "sha512-29pIjn9uwTUsIgJUNd7GXxKk8sg4iyJwLm1wIilNIqX1mVzXSc2nUij9exW1LqNpis1d2ebMYfMqTWcokZ4pdA==", + "version": "2.10.2", + "resolved": "https://registry.npmjs.org/canvas/-/canvas-2.10.2.tgz", + "integrity": "sha512-FSmlsip0nZ0U4Zcfht0qBJqDhlfGuevTZKE8h+dBOYrJjGvY3iqMGSzzbvkaFhvMXiVxfcMaPHS/kge++T5SKg==", "requires": { "@mapbox/node-pre-gyp": "^1.0.0", - "nan": "^2.15.0", + "nan": "^2.17.0", "simple-get": "^3.0.3" } }, @@ -7969,14 +9439,6 @@ "resolved": "https://registry.npmjs.org/chownr/-/chownr-2.0.0.tgz", "integrity": "sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ==" }, - "clone-response": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/clone-response/-/clone-response-1.0.3.tgz", - "integrity": "sha512-ROoL94jJH2dUVML2Y/5PEDNaSHgeOdSDicUyS7izcF63G6sTc/FTjLub4b8Il9S8S0beOfYt0TaA5qvFK+w0wA==", - "requires": { - "mimic-response": "^1.0.0" - } - }, "color-convert": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", @@ -8076,17 +9538,6 @@ "abab": "^2.0.6", "whatwg-mimetype": "^3.0.0", "whatwg-url": "^11.0.0" - }, - "dependencies": { - "whatwg-url": { - "version": "11.0.0", - "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-11.0.0.tgz", - "integrity": "sha512-RKT8HExMpoYx4igMiVMY83lN6UeITKJlBQ+vR/8ZJ8OCdSiN3RwCq+9gH0+Xzj0+5IrM6i4j/6LuvzbZIQgEcQ==", - "requires": { - "tr46": "^3.0.0", - "webidl-conversions": "^7.0.0" - } - } } }, "debug": { @@ -8105,24 +9556,9 @@ } }, "decimal.js": { - "version": "10.4.1", - "resolved": "https://registry.npmjs.org/decimal.js/-/decimal.js-10.4.1.tgz", - "integrity": "sha512-F29o+vci4DodHYT9UrR5IEbfBw9pE5eSapIJdTqXK5+6hq+t8VRxwQyKlW2i+KDKFkkJQRvFyI/QXD83h8LyQw==" - }, - "decompress-response": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/decompress-response/-/decompress-response-6.0.0.tgz", - "integrity": "sha512-aW35yZM6Bb/4oJlZncMH2LCoZtJXTRxES17vE3hoRiowU2kWHaJKFkSBDnDR+cm9J+9QhXmREyIfv0pji9ejCQ==", - "requires": { - "mimic-response": "^3.1.0" - }, - "dependencies": { - "mimic-response": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-3.1.0.tgz", - "integrity": "sha512-z0yWI+4FDrrweS8Zmt4Ej5HdJmky15+L2e6Wgn3+iK5fWzb6T3fhNFq2+MeTRb064c6Wr4N/wv0DzQTjNzHNGQ==" - } - } + "version": "10.4.3", + "resolved": "https://registry.npmjs.org/decimal.js/-/decimal.js-10.4.3.tgz", + "integrity": "sha512-VBBaLc1MgL5XpzgIP7ny5Z6Nx3UrRkIViUkPUdtl9aya5amy3De1gsUUSB1g3+3sExYNjCAsAznmukyxCb1GRA==" }, "deep-is": { "version": "0.1.4", @@ -8134,20 +9570,6 @@ "resolved": "https://registry.npmjs.org/deepmerge-ts/-/deepmerge-ts-4.2.2.tgz", "integrity": "sha512-Ka3Kb21tiWjvQvS9U+1Dx+aqFAHsdTnMdYptLTmC2VAmDFMugWMY1e15aTODstipmCun8iNuqeSfcx6rsUUk0Q==" }, - "defer-to-connect": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/defer-to-connect/-/defer-to-connect-2.0.1.tgz", - "integrity": "sha512-4tvttepXG1VaYGrRibk5EwJd1t4udunSOVMdLSAL6mId1ix438oPwPZMALY41FCijukO1L0twNcGsdzS7dHgDg==" - }, - "define-properties": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.1.4.tgz", - "integrity": "sha512-uckOqKcfaVvtBdsVkdPv3XjveQJsNQqmhXgRi8uhvWWuPYZCNlzT8qAyblUgNoXdHdjMTzAqeGjAoli8f+bzPA==", - "requires": { - "has-property-descriptors": "^1.0.0", - "object-keys": "^1.1.1" - } - }, "delayed-stream": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", @@ -8158,11 +9580,6 @@ "resolved": "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz", "integrity": "sha512-bd2L678uiWATM6m5Z1VzNCErI3jiGzt6HGY8OVICs40JQq/HALfbyNJmp0UDakEY4pMMaN0Ly5om/B1VI/+xfQ==" }, - "denque": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/denque/-/denque-2.1.0.tgz", - "integrity": "sha512-HVQE3AAb/pxF8fQAoiqpvg9i3evqug3hoiwakOyZAwJm+6vZehbkYXZ0l4JxS+I3QxM97v5aaRNhj8v5oBhekw==" - }, "depd": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz", @@ -8174,23 +9591,23 @@ "integrity": "sha512-463v3ZeIrcWtdgIg6vI6XUncguvr2TnGl4SzDXinkt9mSLpBJKXT3mW6xT3VQdDN11+WVs29pgvivTc4Lp8v+w==" }, "discord-api-types": { - "version": "0.26.1", - "resolved": "https://registry.npmjs.org/discord-api-types/-/discord-api-types-0.26.1.tgz", - "integrity": "sha512-T5PdMQ+Y1MEECYMV5wmyi9VEYPagEDEi4S0amgsszpWY0VB9JJ/hEvM6BgLhbdnKky4gfmZEXtEEtojN8ZKJQQ==" + "version": "0.37.21", + "resolved": "https://registry.npmjs.org/discord-api-types/-/discord-api-types-0.37.21.tgz", + "integrity": "sha512-GB4ThibZEzWXcvgL2QfjKoDX5j1sNLWtgibodiJ9M9PM0u9bdR2t3vZ24oQWLKlksJehSJmZDtRsAibhcr46vw==" }, "discord-giveaways": { - "version": "5.2.2", - "resolved": "https://registry.npmjs.org/discord-giveaways/-/discord-giveaways-5.2.2.tgz", - "integrity": "sha512-aYUF1IiPdni+yxdSbPoUtQT5DmU9SOxmFjeuOJLF+4GUVewwT3o+V3tG3P5oJRc3yyYgzCiaWhFCXeHTu4YReA==", + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/discord-giveaways/-/discord-giveaways-6.0.1.tgz", + "integrity": "sha512-hs6Vtb62VdlV7NfB93Phaxc8FW0cH4N1Nkb0bXVZ2npgn73yGOFVmdp8bBP5gsC2ady9OAXXI8Gb66t1IddkFw==", "requires": { - "deepmerge-ts": "^4.0.3", + "deepmerge-ts": "^4.2.1", "serialize-javascript": "^6.0.0" } }, "discord-image-generation": { - "version": "1.4.14", - "resolved": "https://registry.npmjs.org/discord-image-generation/-/discord-image-generation-1.4.14.tgz", - "integrity": "sha512-RHPlwAu7S3O8IhHa/Q4tdYmuvis2Dv6BAcg9sR37Nj9bdNlC9wOHdsIzh+3aYa34oZQa595v3Mmsqi9TFF//Pw==", + "version": "1.4.15", + "resolved": "https://registry.npmjs.org/discord-image-generation/-/discord-image-generation-1.4.15.tgz", + "integrity": "sha512-+yNZAdmxPrGcDC87EPxdX9zqhyOJB1PMM+uBHldztnTbmroZKAI2P/tC9TpyUOgCCUiciKdAKGBAJ2Gkh8793w==", "requires": { "canvas": "^2.10.1", "gifencoder": "^2.0.1", @@ -8198,50 +9615,22 @@ } }, "discord.js": { - "version": "13.11.0", - "resolved": "https://registry.npmjs.org/discord.js/-/discord.js-13.11.0.tgz", - "integrity": "sha512-/vA6oQtKilFlwVZSIFipPeWg5kU6gjUOffuaYWtDDJwIXKqiThNdymLkmQhnf8Ztlt+3vKsoqXENrgpQdaNCVQ==", + "version": "14.7.1", + "resolved": "https://registry.npmjs.org/discord.js/-/discord.js-14.7.1.tgz", + "integrity": "sha512-1FECvqJJjjeYcjSm0IGMnPxLqja/pmG1B0W2l3lUY2Gi4KXiyTeQmU1IxWcbXHn2k+ytP587mMWqva2IA87EbA==", "requires": { - "@discordjs/builders": "^0.16.0", - "@discordjs/collection": "^0.7.0", - "@sapphire/async-queue": "^1.5.0", - "@types/node-fetch": "^2.6.2", + "@discordjs/builders": "^1.4.0", + "@discordjs/collection": "^1.3.0", + "@discordjs/rest": "^1.4.0", + "@discordjs/util": "^0.1.0", + "@sapphire/snowflake": "^3.2.2", "@types/ws": "^8.5.3", - "discord-api-types": "^0.33.5", - "form-data": "^4.0.0", - "node-fetch": "^2.6.7", - "ws": "^8.8.1" - }, - "dependencies": { - "@discordjs/builders": { - "version": "0.16.0", - "resolved": "https://registry.npmjs.org/@discordjs/builders/-/builders-0.16.0.tgz", - "integrity": "sha512-9/NCiZrLivgRub2/kBc0Vm5pMBE5AUdYbdXsLu/yg9ANgvnaJ0bZKTY8yYnLbsEc/LYUP79lEIdC73qEYhWq7A==", - "requires": { - "@sapphire/shapeshift": "^3.5.1", - "discord-api-types": "^0.36.2", - "fast-deep-equal": "^3.1.3", - "ts-mixer": "^6.0.1", - "tslib": "^2.4.0" - }, - "dependencies": { - "discord-api-types": { - "version": "0.36.3", - "resolved": "https://registry.npmjs.org/discord-api-types/-/discord-api-types-0.36.3.tgz", - "integrity": "sha512-bz/NDyG0KBo/tY14vSkrwQ/n3HKPf87a0WFW/1M9+tXYK+vp5Z5EksawfCWo2zkAc6o7CClc0eff1Pjrqznlwg==" - } - } - }, - "@discordjs/collection": { - "version": "0.7.0", - "resolved": "https://registry.npmjs.org/@discordjs/collection/-/collection-0.7.0.tgz", - "integrity": "sha512-R5i8Wb8kIcBAFEPLLf7LVBQKBDYUL+ekb23sOgpkpyGT+V4P7V83wTxcsqmX+PbqHt4cEHn053uMWfRqh/Z/nA==" - }, - "discord-api-types": { - "version": "0.33.5", - "resolved": "https://registry.npmjs.org/discord-api-types/-/discord-api-types-0.33.5.tgz", - "integrity": "sha512-dvO5M52v7m7Dy96+XUnzXNsQ/0npsYpU6dL205kAtEDueswoz3aU3bh1UMoK4cQmcGtB1YRyLKqp+DXi05lzFg==" - } + "discord-api-types": "^0.37.20", + "fast-deep-equal": "^3.1.3", + "lodash.snakecase": "^4.1.1", + "tslib": "^2.4.1", + "undici": "^5.13.0", + "ws": "^8.11.0" } }, "dom-serializer": { @@ -8281,9 +9670,9 @@ } }, "dompurify": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/dompurify/-/dompurify-2.4.0.tgz", - "integrity": "sha512-Be9tbQMZds4a3C6xTmz68NlMfeONA//4dOavl/1rNw50E+/QO0KVpbcU0PcaW0nsQxurXls9ZocqFxk8R2mWEA==" + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/dompurify/-/dompurify-2.4.1.tgz", + "integrity": "sha512-ewwFzHzrrneRjxzmK6oVz/rZn9VWspGFRDb4/rRtIsM1n36t9AKma/ye8syCpcw+XJ25kOK/hOG7t1j2I2yBqA==" }, "domutils": { "version": "3.0.1", @@ -8296,9 +9685,9 @@ } }, "dotenv": { - "version": "10.0.0", - "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-10.0.0.tgz", - "integrity": "sha512-rlBi9d8jpv9Sf1klPjNfFAuWDjKLwTIJJ/VxtoTwIR6hnZxcEOQCZg2oIL3MWBYw5GpUDKOEnND7LXTbIpQ03Q==" + "version": "16.0.3", + "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-16.0.3.tgz", + "integrity": "sha512-7GO6HghkA5fYG9TYnNxi14/7K9f5occMlp3zXAuSxn7CKCxt9xbNWG7yF8hTCSUchlfWSe3uLmlPfigevRItzQ==" }, "ecc-jsbn": { "version": "0.1.2", @@ -8322,14 +9711,6 @@ "iconv-lite": "^0.6.2" } }, - "end-of-stream": { - "version": "1.4.4", - "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.4.tgz", - "integrity": "sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==", - "requires": { - "once": "^1.4.0" - } - }, "entities": { "version": "4.4.0", "resolved": "https://registry.npmjs.org/entities/-/entities-4.4.0.tgz", @@ -8344,13 +9725,6 @@ "tslib": "^2.4.0", "undici": "^5.10.0", "ws": "^8.8.1" - }, - "dependencies": { - "@discordjs/collection": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/@discordjs/collection/-/collection-1.1.0.tgz", - "integrity": "sha512-PQ2Bv6pnT7aGPCKWbvvNRww5tYCGpggIQVgpuF9TdDPeR6n6vQYxezXiLVOS9z2B62Dp4c+qepQ15SgJbLYtCQ==" - } } }, "erela.js-apple": { @@ -8430,47 +9804,6 @@ } } }, - "es-abstract": { - "version": "1.20.3", - "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.20.3.tgz", - "integrity": "sha512-AyrnaKVpMzljIdwjzrj+LxGmj8ik2LckwXacHqrJJ/jxz6dDDBcZ7I7nlHM0FvEW8MfbWJwOd+yT2XzYW49Frw==", - "requires": { - "call-bind": "^1.0.2", - "es-to-primitive": "^1.2.1", - "function-bind": "^1.1.1", - "function.prototype.name": "^1.1.5", - "get-intrinsic": "^1.1.3", - "get-symbol-description": "^1.0.0", - "has": "^1.0.3", - "has-property-descriptors": "^1.0.0", - "has-symbols": "^1.0.3", - "internal-slot": "^1.0.3", - "is-callable": "^1.2.6", - "is-negative-zero": "^2.0.2", - "is-regex": "^1.1.4", - "is-shared-array-buffer": "^1.0.2", - "is-string": "^1.0.7", - "is-weakref": "^1.0.2", - "object-inspect": "^1.12.2", - "object-keys": "^1.1.1", - "object.assign": "^4.1.4", - "regexp.prototype.flags": "^1.4.3", - "safe-regex-test": "^1.0.0", - "string.prototype.trimend": "^1.0.5", - "string.prototype.trimstart": "^1.0.5", - "unbox-primitive": "^1.0.2" - } - }, - "es-to-primitive": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.1.tgz", - "integrity": "sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==", - "requires": { - "is-callable": "^1.1.4", - "is-date-object": "^1.0.1", - "is-symbol": "^1.0.2" - } - }, "escape-latex": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/escape-latex/-/escape-latex-1.2.0.tgz", @@ -8503,11 +9836,6 @@ "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==" }, - "event-target-shim": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/event-target-shim/-/event-target-shim-5.0.1.tgz", - "integrity": "sha512-i/2XbnSz/uxRCU6+NdVJgKWDTM427+MqYbkQzD321DuCQJUqOuJKIA0IM2+W2xtYHdKOmZ4dR6fExsd4SXL+WQ==" - }, "exif-parser": { "version": "0.1.12", "resolved": "https://registry.npmjs.org/exif-parser/-/exif-parser-0.1.12.tgz", @@ -8538,6 +9866,15 @@ "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", "integrity": "sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==" }, + "fast-xml-parser": { + "version": "4.0.11", + "resolved": "https://registry.npmjs.org/fast-xml-parser/-/fast-xml-parser-4.0.11.tgz", + "integrity": "sha512-4aUg3aNRR/WjQAcpceODG1C3x3lFANXRo8+1biqfieHmg9pyMt7qB4lQV/Ta6sJCTbA5vfD8fnA8S54JATiFUA==", + "optional": true, + "requires": { + "strnum": "^1.0.5" + } + }, "figlet": { "version": "1.5.2", "resolved": "https://registry.npmjs.org/figlet/-/figlet-1.5.2.tgz", @@ -8592,6 +9929,16 @@ "integrity": "sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg==", "requires": { "minipass": "^3.0.0" + }, + "dependencies": { + "minipass": { + "version": "3.3.6", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", + "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", + "requires": { + "yallist": "^4.0.0" + } + } } }, "fs.realpath": { @@ -8604,22 +9951,6 @@ "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==" }, - "function.prototype.name": { - "version": "1.1.5", - "resolved": "https://registry.npmjs.org/function.prototype.name/-/function.prototype.name-1.1.5.tgz", - "integrity": "sha512-uN7m/BzVKQnCUF/iW8jYea67v++2u7m5UgENbHRtdDVclOUP+FMPlCNdmk0h/ysGyo2tavMJEDqJAkJdRa1vMA==", - "requires": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.3", - "es-abstract": "^1.19.0", - "functions-have-names": "^1.2.2" - } - }, - "functions-have-names": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/functions-have-names/-/functions-have-names-1.2.3.tgz", - "integrity": "sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==" - }, "gauge": { "version": "3.0.2", "resolved": "https://registry.npmjs.org/gauge/-/gauge-3.0.2.tgz", @@ -8651,23 +9982,6 @@ "has-symbols": "^1.0.3" } }, - "get-stream": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-5.2.0.tgz", - "integrity": "sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA==", - "requires": { - "pump": "^3.0.0" - } - }, - "get-symbol-description": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/get-symbol-description/-/get-symbol-description-1.0.0.tgz", - "integrity": "sha512-2EmdH1YvIQiZpltCNgkuiUnyukzxM/R6NDJX31Ke3BG1Nq5b0S2PhX59UKi9vZpPDQVdqn+1IcaAwnzTT5vCjw==", - "requires": { - "call-bind": "^1.0.2", - "get-intrinsic": "^1.1.1" - } - }, "getpass": { "version": "0.1.7", "resolved": "https://registry.npmjs.org/getpass/-/getpass-0.1.7.tgz", @@ -8720,22 +10034,12 @@ "process": "^0.11.10" } }, - "got": { - "version": "11.8.5", - "resolved": "https://registry.npmjs.org/got/-/got-11.8.5.tgz", - "integrity": "sha512-o0Je4NvQObAuZPHLFoRSkdG2lTgtcynqymzg2Vupdx6PorhaT5MCbIyXG6d4D94kk8ZG57QeosgdiqfJWhEhlQ==", + "gopd": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.0.1.tgz", + "integrity": "sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA==", "requires": { - "@sindresorhus/is": "^4.0.0", - "@szmarczak/http-timer": "^4.0.5", - "@types/cacheable-request": "^6.0.1", - "@types/responselike": "^1.0.0", - "cacheable-lookup": "^5.0.3", - "cacheable-request": "^7.0.2", - "decompress-response": "^6.0.0", - "http2-wrapper": "^1.0.0-beta.5.2", - "lowercase-keys": "^2.0.0", - "p-cancelable": "^2.0.0", - "responselike": "^2.0.0" + "get-intrinsic": "^1.1.3" } }, "har-schema": { @@ -8760,24 +10064,11 @@ "function-bind": "^1.1.1" } }, - "has-bigints": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/has-bigints/-/has-bigints-1.0.2.tgz", - "integrity": "sha512-tSvCKtBr9lkF0Ex0aQiP9N+OpV4zi2r/Nee5VkRDbaqv35RLYMzbwQfFSZZH0kR+Rd6302UJZ2p/bJCEoR3VoQ==" - }, "has-flag": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==" }, - "has-property-descriptors": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.0.tgz", - "integrity": "sha512-62DVLZGoiEBDHQyqG4w9xCuZ7eJEwNmJRWw2VY84Oedb7WFcA27fiEVe8oUQx9hAUJ4ekurquucTGwsyO1XGdQ==", - "requires": { - "get-intrinsic": "^1.1.1" - } - }, "has-symbols": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.3.tgz", @@ -8913,11 +10204,6 @@ "entities": "^4.3.0" } }, - "http-cache-semantics": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-4.1.0.tgz", - "integrity": "sha512-carPklcUh7ROWRK7Cv27RPtdhYhUsela/ue5/jKzjegVvXDqM2ILE9Q2BGn9JZJh1g87cp56su/FgQSzcWS8cQ==" - }, "http-errors": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-2.0.0.tgz", @@ -8950,15 +10236,6 @@ "sshpk": "^1.7.0" } }, - "http2-wrapper": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/http2-wrapper/-/http2-wrapper-1.0.3.tgz", - "integrity": "sha512-V+23sDMr12Wnz7iTcDeJr3O6AIxlnvT/bmaAAAP/Xda35C90p9599p0F1eHR/N1KILWSoWVAiOMFjBBXaXSMxg==", - "requires": { - "quick-lru": "^5.1.1", - "resolve-alpn": "^1.0.0" - } - }, "https-proxy-agent": { "version": "5.0.1", "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.1.tgz", @@ -9015,16 +10292,6 @@ "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" }, - "internal-slot": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/internal-slot/-/internal-slot-1.0.3.tgz", - "integrity": "sha512-O0DB1JC/sPyZl7cIo78n5dR7eUSwwpYPiXRhTzNxZVAMUuB8vlnRFyLxdrVToks6XPLVnFfbzaVd5WLjhgg+vA==", - "requires": { - "get-intrinsic": "^1.1.0", - "has": "^1.0.3", - "side-channel": "^1.0.4" - } - }, "ip": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/ip/-/ip-2.0.0.tgz", @@ -9039,36 +10306,11 @@ "has-tostringtag": "^1.0.0" } }, - "is-bigint": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/is-bigint/-/is-bigint-1.0.4.tgz", - "integrity": "sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg==", - "requires": { - "has-bigints": "^1.0.1" - } - }, - "is-boolean-object": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.1.2.tgz", - "integrity": "sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA==", - "requires": { - "call-bind": "^1.0.2", - "has-tostringtag": "^1.0.0" - } - }, "is-callable": { "version": "1.2.7", "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.7.tgz", "integrity": "sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==" }, - "is-date-object": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.5.tgz", - "integrity": "sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ==", - "requires": { - "has-tostringtag": "^1.0.0" - } - }, "is-fullwidth-code-point": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", @@ -9095,66 +10337,20 @@ "hex-color-regex": "~1.0.2" } }, - "is-negative-zero": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.2.tgz", - "integrity": "sha512-dqJvarLawXsFbNDeJW7zAz8ItJ9cd28YufuuFzh0G8pNHjJMnY08Dv7sYX2uF5UpQOwieAeOExEYAWWfu7ZZUA==" - }, - "is-number-object": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/is-number-object/-/is-number-object-1.0.7.tgz", - "integrity": "sha512-k1U0IRzLMo7ZlYIfzRu23Oh6MiIFasgpb9X76eqfFZAqwH44UI4KTBvBYIZ1dSL9ZzChTB9ShHfLkR4pdW5krQ==", - "requires": { - "has-tostringtag": "^1.0.0" - } - }, "is-potential-custom-element-name": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/is-potential-custom-element-name/-/is-potential-custom-element-name-1.0.1.tgz", "integrity": "sha512-bCYeRA2rVibKZd+s2625gGnGF/t7DSqDs4dP7CrLA1m7jKWz6pps0LpYLJN8Q64HtmPKJ1hrN3nzPNKFEKOUiQ==" }, - "is-regex": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.1.4.tgz", - "integrity": "sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg==", - "requires": { - "call-bind": "^1.0.2", - "has-tostringtag": "^1.0.0" - } - }, - "is-shared-array-buffer": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-shared-array-buffer/-/is-shared-array-buffer-1.0.2.tgz", - "integrity": "sha512-sqN2UDu1/0y6uvXyStCOzyhAjCSlHceFoMKJW8W9EU9cvic/QdsZ0kEU93HEy3IUEFZIiH/3w+AH/UQbPHNdhA==", - "requires": { - "call-bind": "^1.0.2" - } - }, - "is-string": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.0.7.tgz", - "integrity": "sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg==", - "requires": { - "has-tostringtag": "^1.0.0" - } - }, - "is-symbol": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.4.tgz", - "integrity": "sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg==", - "requires": { - "has-symbols": "^1.0.2" - } - }, "is-typed-array": { - "version": "1.1.9", - "resolved": "https://registry.npmjs.org/is-typed-array/-/is-typed-array-1.1.9.tgz", - "integrity": "sha512-kfrlnTTn8pZkfpJMUgYD7YZ3qzeJgWUn8XfVYBARc4wnmNOmLbmuuaAs3q5fvB0UJOn6yHAKaGTPM7d6ezoD/A==", + "version": "1.1.10", + "resolved": "https://registry.npmjs.org/is-typed-array/-/is-typed-array-1.1.10.tgz", + "integrity": "sha512-PJqgEHiWZvMpaFZ3uTc8kHPM4+4ADTlDniuQL7cU/UDA0Ql7F70yGfHph3cLNe+c9toaigv+DFzTJKhc2CtO6A==", "requires": { "available-typed-arrays": "^1.0.5", "call-bind": "^1.0.2", - "es-abstract": "^1.20.0", "for-each": "^0.3.3", + "gopd": "^1.0.1", "has-tostringtag": "^1.0.0" } }, @@ -9163,14 +10359,6 @@ "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz", "integrity": "sha512-cyA56iCMHAh5CdzjJIa4aohJyeO1YbwLi3Jc35MmRU6poroFjIGZzUzupGiRPOjgHg9TLu43xbpwXk523fMxKA==" }, - "is-weakref": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-weakref/-/is-weakref-1.0.2.tgz", - "integrity": "sha512-qctsuLZmIQ0+vSSMfoVvyFe2+GSEvnmZ2ezTup1SBse9+twCCeial6EEi3Nc2KFcf6+qz2FBPnjXsk8xhKSaPQ==", - "requires": { - "call-bind": "^1.0.2" - } - }, "isgd": { "version": "1.1.3", "resolved": "https://registry.npmjs.org/isgd/-/isgd-1.1.3.tgz", @@ -9209,51 +10397,38 @@ "integrity": "sha512-UVU9dibq2JcFWxQPA6KCqj5O42VOmAY3zQUfEKxU0KpTGXwNoCjkX1e13eHNvw/xPynt6pU0rZ1htjWTNTSXsg==" }, "jsdom": { - "version": "18.1.1", - "resolved": "https://registry.npmjs.org/jsdom/-/jsdom-18.1.1.tgz", - "integrity": "sha512-NmJQbjQ/gpS/1at/ce3nCx89HbXL/f5OcenBe8wU1Eik0ROhyUc3LtmG3567dEHAGXkN8rmILW/qtCOPxPHQJw==", + "version": "20.0.3", + "resolved": "https://registry.npmjs.org/jsdom/-/jsdom-20.0.3.tgz", + "integrity": "sha512-SYhBvTh89tTfCD/CRdSOm13mOBa42iTaTyfyEWBdKcGdPxPtLFBXuHR8XHb33YNYaP+lLbmSvBTsnoesCNJEsQ==", "requires": { - "abab": "^2.0.5", - "acorn": "^8.5.0", - "acorn-globals": "^6.0.0", + "abab": "^2.0.6", + "acorn": "^8.8.1", + "acorn-globals": "^7.0.0", "cssom": "^0.5.0", "cssstyle": "^2.3.0", - "data-urls": "^3.0.1", - "decimal.js": "^10.3.1", + "data-urls": "^3.0.2", + "decimal.js": "^10.4.2", "domexception": "^4.0.0", "escodegen": "^2.0.0", "form-data": "^4.0.0", "html-encoding-sniffer": "^3.0.0", "http-proxy-agent": "^5.0.0", - "https-proxy-agent": "^5.0.0", + "https-proxy-agent": "^5.0.1", "is-potential-custom-element-name": "^1.0.1", - "nwsapi": "^2.2.0", - "parse5": "6.0.1", - "saxes": "^5.0.1", + "nwsapi": "^2.2.2", + "parse5": "^7.1.1", + "saxes": "^6.0.0", "symbol-tree": "^3.2.4", - "tough-cookie": "^4.0.0", - "w3c-hr-time": "^1.0.2", - "w3c-xmlserializer": "^3.0.0", + "tough-cookie": "^4.1.2", + "w3c-xmlserializer": "^4.0.0", "webidl-conversions": "^7.0.0", "whatwg-encoding": "^2.0.0", "whatwg-mimetype": "^3.0.0", - "whatwg-url": "^10.0.0", - "ws": "^8.2.3", + "whatwg-url": "^11.0.0", + "ws": "^8.11.0", "xml-name-validator": "^4.0.0" - }, - "dependencies": { - "parse5": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/parse5/-/parse5-6.0.1.tgz", - "integrity": "sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw==" - } } }, - "json-buffer": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.1.tgz", - "integrity": "sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==" - }, "json-schema": { "version": "0.4.0", "resolved": "https://registry.npmjs.org/json-schema/-/json-schema-0.4.0.tgz", @@ -9281,17 +10456,9 @@ } }, "kareem": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/kareem/-/kareem-2.4.1.tgz", - "integrity": "sha512-aJ9opVoXroQUPfovYP5kaj2lM7Jn02Gw13bL0lg9v0V7SaUc0qavPs0Eue7d2DcC3NjqI6QAUElXNsuZSeM+EA==" - }, - "keyv": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/keyv/-/keyv-4.5.0.tgz", - "integrity": "sha512-2YvuMsA+jnFGtBareKqgANOEKe1mk3HKiXu2fRmAfyxG0MJAywNhi5ttWA3PMjl4NmpyjZNbFifR2vNjW1znfA==", - "requires": { - "json-buffer": "3.0.1" - } + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/kareem/-/kareem-2.5.0.tgz", + "integrity": "sha512-rVBUGGwvqg130iwYu8k7lutHuDBFj1yGRdnlE44wEhxAmFBad1zcL66PdWC1raw3tIObY6XWhtv3VL04xQb/cg==" }, "levn": { "version": "0.3.0", @@ -9335,16 +10502,16 @@ "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==" }, + "lodash.snakecase": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/lodash.snakecase/-/lodash.snakecase-4.1.1.tgz", + "integrity": "sha512-QZ1d4xoBHYUeuouhEq3lk3Uq7ldgyFXGBhg04+oRLnIz8o9T65Eh+8YdroUwn846zchkA9yDsDl5CVVaV2nqYw==" + }, "lodash.uniqwith": { "version": "4.5.0", "resolved": "https://registry.npmjs.org/lodash.uniqwith/-/lodash.uniqwith-4.5.0.tgz", "integrity": "sha512-7lYL8bLopMoy4CTICbxygAUq6CdRJ36vFc80DucPueUee+d5NBRxz3FdT9Pes/HEx5mPoT9jwnsEJWz1N7uq7Q==" }, - "lowercase-keys": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-2.0.0.tgz", - "integrity": "sha512-tqNXrS78oMOE73NMxK4EMLQsQowWf8jKooH9g7xPavRT706R6bkQJ6DY2Te7QukaZsulxa30wQ7bk0pm4XiHmA==" - }, "lru-cache": { "version": "6.0.0", "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", @@ -9388,19 +10555,19 @@ } }, "mathjs": { - "version": "10.6.4", - "resolved": "https://registry.npmjs.org/mathjs/-/mathjs-10.6.4.tgz", - "integrity": "sha512-omQyvRE1jIy+3k2qsqkWASOcd45aZguXZDckr3HtnTYyXk5+2xpVfC3kATgbO2Srjxlqww3TVdhD0oUdZ/hiFA==", + "version": "11.5.0", + "resolved": "https://registry.npmjs.org/mathjs/-/mathjs-11.5.0.tgz", + "integrity": "sha512-vJ/+SqWtxjW6/aeDRt8xL3TlOVKqwN15BIyTGVqGbIWuiqgY4SxZ0yLuna82YH9CB757iFP7uJ4m3KvVBX7Qcg==", "requires": { - "@babel/runtime": "^7.18.6", + "@babel/runtime": "^7.20.6", "complex.js": "^2.1.1", - "decimal.js": "^10.3.1", + "decimal.js": "^10.4.3", "escape-latex": "^1.2.0", "fraction.js": "^4.2.0", "javascript-natural-sort": "^0.7.1", "seedrandom": "^3.0.5", "tiny-emitter": "^2.1.0", - "typed-function": "^2.1.0" + "typed-function": "^4.1.0" } }, "memory-pager": { @@ -9427,11 +10594,6 @@ "mime-db": "1.52.0" } }, - "mimic-response": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-1.0.1.tgz", - "integrity": "sha512-j5EctnkH7amfV/q5Hgmoal1g2QHFJRraOtmx0JpIqkxhBhI/lJSl1nMpQ45hVarwNETOoWEimndZ4QK0RHxuxQ==" - }, "min-document": { "version": "2.19.0", "resolved": "https://registry.npmjs.org/min-document/-/min-document-2.19.0.tgz", @@ -9454,14 +10616,14 @@ } }, "minimist": { - "version": "1.2.6", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.6.tgz", - "integrity": "sha512-Jsjnk4bw3YJqYzbdyBiNsPWHPfO++UGG749Cxs6peCu5Xg4nrena6OVxOYxrQTqww0Jmwt+Ref8rggumkTLz9Q==" + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.7.tgz", + "integrity": "sha512-bzfL1YUZsP41gmu/qjrEk0Q6i2ix/cVeAhbCbqH9u3zYutS1cLg00qhrD0M2MVdCcx4Sc0UpP2eBWo9rotpq6g==" }, "minipass": { - "version": "3.3.4", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.4.tgz", - "integrity": "sha512-I9WPbWHCGu8W+6k1ZiGpPu0GkoKBeorkfKNuAFBNS1HNFJvke82sxvI5bzcCNpWPorkOO5QQ+zomzzwRxejXiw==", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-4.0.0.tgz", + "integrity": "sha512-g2Uuh2jEKoht+zvO6vJqXmYpflPqzRBT+Th2h01DKh5z7wbY/AZ2gCQ78cP70YoHPyFdY30YBV5WxgLOEwOykw==", "requires": { "yallist": "^4.0.0" } @@ -9473,6 +10635,16 @@ "requires": { "minipass": "^3.0.0", "yallist": "^4.0.0" + }, + "dependencies": { + "minipass": { + "version": "3.3.6", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", + "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", + "requires": { + "yallist": "^4.0.0" + } + } } }, "mkdirp": { @@ -9494,57 +10666,46 @@ "integrity": "sha512-cBMXjSW+fjOb4tyaVHuaVE/A5TqkukDWiOfxxAjY+PEqmmBQlLwn+8OzwPiG3brouXKY5Un4pBjAeB6UToXHaQ==" }, "moment-timezone": { - "version": "0.5.37", - "resolved": "https://registry.npmjs.org/moment-timezone/-/moment-timezone-0.5.37.tgz", - "integrity": "sha512-uEDzDNFhfaywRl+vwXxffjjq1q0Vzr+fcQpQ1bU0kbzorfS7zVtZnCnGc8mhWmF39d4g4YriF6kwA75mJKE/Zg==", + "version": "0.5.39", + "resolved": "https://registry.npmjs.org/moment-timezone/-/moment-timezone-0.5.39.tgz", + "integrity": "sha512-hoB6suq4ISDj7BDgctiOy6zljBsdYT0++0ZzZm9rtxIvJhIbQ3nmbgSWe7dNFGurl6/7b1OUkHlmN9JWgXVz7w==", "requires": { "moment": ">= 2.9.0" } }, "mongodb": { - "version": "4.9.1", - "resolved": "https://registry.npmjs.org/mongodb/-/mongodb-4.9.1.tgz", - "integrity": "sha512-ZhgI/qBf84fD7sI4waZBoLBNJYPQN5IOC++SBCiPiyhzpNKOxN/fi0tBHvH2dEC42HXtNEbFB0zmNz4+oVtorQ==", + "version": "4.12.1", + "resolved": "https://registry.npmjs.org/mongodb/-/mongodb-4.12.1.tgz", + "integrity": "sha512-koT87tecZmxPKtxRQD8hCKfn+ockEL2xBiUvx3isQGI6mFmagWt4f4AyCE9J4sKepnLhMacoCTQQA6SLAI2L6w==", "requires": { + "@aws-sdk/credential-providers": "^3.186.0", "bson": "^4.7.0", - "denque": "^2.1.0", - "mongodb-connection-string-url": "^2.5.3", + "mongodb-connection-string-url": "^2.5.4", "saslprep": "^1.0.3", - "socks": "^2.7.0" + "socks": "^2.7.1" } }, "mongodb-connection-string-url": { - "version": "2.5.4", - "resolved": "https://registry.npmjs.org/mongodb-connection-string-url/-/mongodb-connection-string-url-2.5.4.tgz", - "integrity": "sha512-SeAxuWs0ez3iI3vvmLk/j2y+zHwigTDKQhtdxTgt5ZCOQQS5+HW4g45/Xw5vzzbn7oQXCNQ24Z40AkJsizEy7w==", + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/mongodb-connection-string-url/-/mongodb-connection-string-url-2.6.0.tgz", + "integrity": "sha512-WvTZlI9ab0QYtTYnuMLgobULWhokRjtC7db9LtcVfJ+Hsnyr5eo6ZtNAt3Ly24XZScGMelOcGtm7lSn0332tPQ==", "requires": { "@types/whatwg-url": "^8.2.1", "whatwg-url": "^11.0.0" - }, - "dependencies": { - "whatwg-url": { - "version": "11.0.0", - "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-11.0.0.tgz", - "integrity": "sha512-RKT8HExMpoYx4igMiVMY83lN6UeITKJlBQ+vR/8ZJ8OCdSiN3RwCq+9gH0+Xzj0+5IrM6i4j/6LuvzbZIQgEcQ==", - "requires": { - "tr46": "^3.0.0", - "webidl-conversions": "^7.0.0" - } - } } }, "mongoose": { - "version": "6.6.3", - "resolved": "https://registry.npmjs.org/mongoose/-/mongoose-6.6.3.tgz", - "integrity": "sha512-2Ye018PNBBXJd717qhfjBGo7k8HQb/pKziO9d5wY14iZSUI7hxqL7bwNDg+poeBwnlhBYLncZkips15Blfgxbw==", + "version": "6.8.0", + "resolved": "https://registry.npmjs.org/mongoose/-/mongoose-6.8.0.tgz", + "integrity": "sha512-zlUfjcLya3pLfLTxwyH5S9bZUolJWGKF2M7PEV0118jv4VWHR/krjb6LIWu1RPQN2rwYmnmjjzJLVhbhmHqSmg==", "requires": { - "bson": "^4.6.5", - "kareem": "2.4.1", - "mongodb": "4.9.1", + "bson": "^4.7.0", + "kareem": "2.5.0", + "mongodb": "4.12.1", "mpath": "0.9.0", "mquery": "4.0.3", "ms": "2.1.3", - "sift": "16.0.0" + "sift": "16.0.1" } }, "mpath": { @@ -9566,9 +10727,9 @@ "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==" }, "nan": { - "version": "2.16.0", - "resolved": "https://registry.npmjs.org/nan/-/nan-2.16.0.tgz", - "integrity": "sha512-UdAqHyFngu7TfQKsCBgAA6pWDkT8MAO7d0jyOecVhN5354xbLqdn8mV9Tat9gepAupm0bt2DbeaSC8vS52MuFA==" + "version": "2.17.0", + "resolved": "https://registry.npmjs.org/nan/-/nan-2.17.0.tgz", + "integrity": "sha512-2ZTgtl0nJsO0KQCjEpxcIr5D+Yv90plTitZt9JBfQvVJDS5seMl3FOvsh3+9CoYWXf/1l5OaZzzF6nDm4cagaQ==" }, "node-fetch": { "version": "2.6.7", @@ -9607,90 +10768,79 @@ "abbrev": "1" } }, - "normalize-url": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/normalize-url/-/normalize-url-6.1.0.tgz", - "integrity": "sha512-DlL+XwOy3NxAQ8xuC0okPgK46iuVNAK01YN7RueYBqqFeGsBjV9XmCAzAdgt+667bCl5kPh9EqKKDwnaPG1I7A==" - }, "npm": { - "version": "8.19.2", - "resolved": "https://registry.npmjs.org/npm/-/npm-8.19.2.tgz", - "integrity": "sha512-MWkISVv5f7iZbfNkry5/5YBqSYJEDAKSJdL+uzSQuyLg+hgLQUyZynu3SH6bOZlvR9ZvJYk2EiJO6B1r+ynwHg==", + "version": "9.2.0", + "resolved": "https://registry.npmjs.org/npm/-/npm-9.2.0.tgz", + "integrity": "sha512-oypVdaWGHDuV79RXLvp+B9gh6gDyAmoHKrQ0/JBYTWWx5D8/+AAxFdZC84fSIiyDdyW4qfrSyYGKhekxDOaMXQ==", "requires": { "@isaacs/string-locale-compare": "^1.1.0", - "@npmcli/arborist": "^5.6.2", - "@npmcli/ci-detect": "^2.0.0", - "@npmcli/config": "^4.2.1", - "@npmcli/fs": "^2.1.0", - "@npmcli/map-workspaces": "^2.0.3", - "@npmcli/package-json": "^2.0.0", - "@npmcli/promise-spawn": "*", - "@npmcli/run-script": "^4.2.1", - "abbrev": "~1.1.1", + "@npmcli/arborist": "^6.1.5", + "@npmcli/config": "^6.1.0", + "@npmcli/map-workspaces": "^3.0.0", + "@npmcli/package-json": "^3.0.0", + "@npmcli/run-script": "^6.0.0", + "abbrev": "^2.0.0", "archy": "~1.0.0", - "cacache": "^16.1.3", + "cacache": "^17.0.3", "chalk": "^4.1.2", - "chownr": "^2.0.0", + "ci-info": "^3.7.0", "cli-columns": "^4.0.0", - "cli-table3": "^0.6.2", + "cli-table3": "^0.6.3", "columnify": "^1.6.0", - "fastest-levenshtein": "^1.0.12", - "fs-minipass": "*", + "fastest-levenshtein": "^1.0.16", + "fs-minipass": "^2.1.0", "glob": "^8.0.1", "graceful-fs": "^4.2.10", - "hosted-git-info": "^5.1.0", + "hosted-git-info": "^6.1.1", "ini": "^3.0.1", - "init-package-json": "^3.0.2", + "init-package-json": "^4.0.1", "is-cidr": "^4.0.2", - "json-parse-even-better-errors": "^2.3.1", - "libnpmaccess": "^6.0.4", - "libnpmdiff": "^4.0.5", - "libnpmexec": "^4.0.13", - "libnpmfund": "^3.0.4", - "libnpmhook": "^8.0.4", - "libnpmorg": "^4.0.4", - "libnpmpack": "^4.1.3", - "libnpmpublish": "^6.0.5", - "libnpmsearch": "^5.0.4", - "libnpmteam": "^4.0.4", - "libnpmversion": "^3.0.7", - "make-fetch-happen": "^10.2.0", - "minimatch": "*", - "minipass": "^3.1.6", + "json-parse-even-better-errors": "^3.0.0", + "libnpmaccess": "^7.0.1", + "libnpmdiff": "^5.0.6", + "libnpmexec": "^5.0.6", + "libnpmfund": "^4.0.6", + "libnpmhook": "^9.0.1", + "libnpmorg": "^5.0.1", + "libnpmpack": "^5.0.6", + "libnpmpublish": "^7.0.6", + "libnpmsearch": "^6.0.1", + "libnpmteam": "^5.0.1", + "libnpmversion": "^4.0.1", + "make-fetch-happen": "^11.0.2", + "minimatch": "^5.1.1", + "minipass": "^4.0.0", "minipass-pipeline": "^1.2.4", "mkdirp": "^1.0.4", - "mkdirp-infer-owner": "^2.0.0", "ms": "^2.1.2", - "node-gyp": "^9.1.0", - "nopt": "^6.0.0", - "npm-audit-report": "^3.0.0", - "npm-install-checks": "^5.0.0", - "npm-package-arg": "^9.1.0", - "npm-pick-manifest": "^7.0.2", - "npm-profile": "^6.2.0", - "npm-registry-fetch": "^13.3.1", + "node-gyp": "^9.3.0", + "nopt": "^7.0.0", + "npm-audit-report": "^4.0.0", + "npm-install-checks": "^6.0.0", + "npm-package-arg": "^10.1.0", + "npm-pick-manifest": "^8.0.1", + "npm-profile": "^7.0.1", + "npm-registry-fetch": "^14.0.3", "npm-user-validate": "^1.0.1", - "npmlog": "^6.0.2", - "opener": "^1.5.2", + "npmlog": "^7.0.1", "p-map": "^4.0.0", - "pacote": "^13.6.2", - "parse-conflict-json": "^2.0.2", - "proc-log": "^2.0.1", + "pacote": "^15.0.7", + "parse-conflict-json": "^3.0.0", + "proc-log": "^3.0.0", "qrcode-terminal": "^0.12.0", "read": "~1.0.7", - "read-package-json": "^5.0.2", - "read-package-json-fast": "^2.0.3", - "readdir-scoped-modules": "^1.1.0", + "read-package-json": "^6.0.0", + "read-package-json-fast": "^3.0.1", "rimraf": "^3.0.2", - "semver": "^7.3.7", - "ssri": "^9.0.1", - "tar": "^6.1.11", + "semver": "^7.3.8", + "ssri": "^10.0.1", + "tar": "^6.1.13", "text-table": "~0.2.0", "tiny-relative-date": "^1.3.0", - "treeverse": "^2.0.0", - "validate-npm-package-name": "^4.0.0", - "which": "^2.0.2", - "write-file-atomic": "^4.0.1" + "treeverse": "^3.0.0", + "validate-npm-package-name": "^5.0.0", + "which": "^3.0.0", + "write-file-atomic": "^5.0.0" }, "dependencies": { "@colors/colors": { @@ -9707,180 +10857,152 @@ "bundled": true }, "@npmcli/arborist": { - "version": "5.6.2", + "version": "6.1.5", "bundled": true, "requires": { "@isaacs/string-locale-compare": "^1.1.0", - "@npmcli/installed-package-contents": "^1.0.7", - "@npmcli/map-workspaces": "^2.0.3", - "@npmcli/metavuln-calculator": "^3.0.1", - "@npmcli/move-file": "^2.0.0", + "@npmcli/fs": "^3.1.0", + "@npmcli/installed-package-contents": "^2.0.0", + "@npmcli/map-workspaces": "^3.0.0", + "@npmcli/metavuln-calculator": "^5.0.0", "@npmcli/name-from-folder": "^1.0.1", - "@npmcli/node-gyp": "^2.0.0", - "@npmcli/package-json": "^2.0.0", - "@npmcli/query": "^1.2.0", - "@npmcli/run-script": "^4.1.3", - "bin-links": "^3.0.3", - "cacache": "^16.1.3", + "@npmcli/node-gyp": "^3.0.0", + "@npmcli/package-json": "^3.0.0", + "@npmcli/query": "^3.0.0", + "@npmcli/run-script": "^6.0.0", + "bin-links": "^4.0.1", + "cacache": "^17.0.3", "common-ancestor-path": "^1.0.1", - "json-parse-even-better-errors": "^2.3.1", + "hosted-git-info": "^6.1.1", + "json-parse-even-better-errors": "^3.0.0", "json-stringify-nice": "^1.1.4", - "minimatch": "^5.1.0", - "mkdirp": "^1.0.4", - "mkdirp-infer-owner": "^2.0.0", - "nopt": "^6.0.0", - "npm-install-checks": "^5.0.0", - "npm-package-arg": "^9.0.0", - "npm-pick-manifest": "^7.0.2", - "npm-registry-fetch": "^13.0.0", - "npmlog": "^6.0.2", - "pacote": "^13.6.1", - "parse-conflict-json": "^2.0.1", - "proc-log": "^2.0.0", + "minimatch": "^5.1.1", + "nopt": "^7.0.0", + "npm-install-checks": "^6.0.0", + "npm-package-arg": "^10.1.0", + "npm-pick-manifest": "^8.0.1", + "npm-registry-fetch": "^14.0.3", + "npmlog": "^7.0.1", + "pacote": "^15.0.7", + "parse-conflict-json": "^3.0.0", + "proc-log": "^3.0.0", "promise-all-reject-late": "^1.0.0", "promise-call-limit": "^1.0.1", - "read-package-json-fast": "^2.0.2", - "readdir-scoped-modules": "^1.1.0", - "rimraf": "^3.0.2", + "read-package-json-fast": "^3.0.1", "semver": "^7.3.7", - "ssri": "^9.0.0", - "treeverse": "^2.0.0", + "ssri": "^10.0.1", + "treeverse": "^3.0.0", "walk-up-path": "^1.0.0" } }, - "@npmcli/ci-detect": { - "version": "2.0.0", - "bundled": true - }, "@npmcli/config": { - "version": "4.2.2", + "version": "6.1.0", "bundled": true, "requires": { - "@npmcli/map-workspaces": "^2.0.2", + "@npmcli/map-workspaces": "^3.0.0", "ini": "^3.0.0", - "mkdirp-infer-owner": "^2.0.0", - "nopt": "^6.0.0", - "proc-log": "^2.0.0", - "read-package-json-fast": "^2.0.3", + "nopt": "^7.0.0", + "proc-log": "^3.0.0", + "read-package-json-fast": "^3.0.0", "semver": "^7.3.5", "walk-up-path": "^1.0.0" } }, "@npmcli/disparity-colors": { - "version": "2.0.0", + "version": "3.0.0", "bundled": true, "requires": { "ansi-styles": "^4.3.0" } }, "@npmcli/fs": { - "version": "2.1.2", + "version": "3.1.0", "bundled": true, "requires": { - "@gar/promisify": "^1.1.3", "semver": "^7.3.5" } }, "@npmcli/git": { - "version": "3.0.2", + "version": "4.0.3", "bundled": true, "requires": { - "@npmcli/promise-spawn": "^3.0.0", + "@npmcli/promise-spawn": "^6.0.0", "lru-cache": "^7.4.4", "mkdirp": "^1.0.4", - "npm-pick-manifest": "^7.0.0", - "proc-log": "^2.0.0", + "npm-pick-manifest": "^8.0.0", + "proc-log": "^3.0.0", "promise-inflight": "^1.0.1", "promise-retry": "^2.0.1", "semver": "^7.3.5", - "which": "^2.0.2" + "which": "^3.0.0" } }, "@npmcli/installed-package-contents": { - "version": "1.0.7", + "version": "2.0.1", "bundled": true, "requires": { - "npm-bundled": "^1.1.1", - "npm-normalize-package-bin": "^1.0.1" - }, - "dependencies": { - "npm-bundled": { - "version": "1.1.2", - "bundled": true, - "requires": { - "npm-normalize-package-bin": "^1.0.1" - } - } + "npm-bundled": "^3.0.0", + "npm-normalize-package-bin": "^3.0.0" } }, "@npmcli/map-workspaces": { - "version": "2.0.4", + "version": "3.0.0", "bundled": true, "requires": { "@npmcli/name-from-folder": "^1.0.1", "glob": "^8.0.1", "minimatch": "^5.0.1", - "read-package-json-fast": "^2.0.3" + "read-package-json-fast": "^3.0.0" } }, "@npmcli/metavuln-calculator": { - "version": "3.1.1", + "version": "5.0.0", "bundled": true, "requires": { - "cacache": "^16.0.0", - "json-parse-even-better-errors": "^2.3.1", - "pacote": "^13.0.3", + "cacache": "^17.0.0", + "json-parse-even-better-errors": "^3.0.0", + "pacote": "^15.0.0", "semver": "^7.3.5" } }, - "@npmcli/move-file": { - "version": "2.0.1", - "bundled": true, - "requires": { - "mkdirp": "^1.0.4", - "rimraf": "^3.0.2" - } - }, "@npmcli/name-from-folder": { "version": "1.0.1", "bundled": true }, "@npmcli/node-gyp": { - "version": "2.0.0", + "version": "3.0.0", "bundled": true }, "@npmcli/package-json": { - "version": "2.0.0", - "bundled": true, - "requires": { - "json-parse-even-better-errors": "^2.3.1" - } - }, - "@npmcli/promise-spawn": { "version": "3.0.0", "bundled": true, "requires": { - "infer-owner": "^1.0.4" + "json-parse-even-better-errors": "^3.0.0" + } + }, + "@npmcli/promise-spawn": { + "version": "6.0.1", + "bundled": true, + "requires": { + "which": "^3.0.0" } }, "@npmcli/query": { - "version": "1.2.0", + "version": "3.0.0", "bundled": true, "requires": { - "npm-package-arg": "^9.1.0", - "postcss-selector-parser": "^6.0.10", - "semver": "^7.3.7" + "postcss-selector-parser": "^6.0.10" } }, "@npmcli/run-script": { - "version": "4.2.1", + "version": "6.0.0", "bundled": true, "requires": { - "@npmcli/node-gyp": "^2.0.0", - "@npmcli/promise-spawn": "^3.0.0", + "@npmcli/node-gyp": "^3.0.0", + "@npmcli/promise-spawn": "^6.0.0", "node-gyp": "^9.0.0", - "read-package-json-fast": "^2.0.3", - "which": "^2.0.2" + "read-package-json-fast": "^3.0.0", + "which": "^3.0.0" } }, "@tootallnate/once": { @@ -9888,9 +11010,16 @@ "bundled": true }, "abbrev": { - "version": "1.1.1", + "version": "2.0.0", "bundled": true }, + "abort-controller": { + "version": "3.0.0", + "bundled": true, + "requires": { + "event-target-shim": "^5.0.0" + } + }, "agent-base": { "version": "6.0.2", "bundled": true, @@ -9935,37 +11064,49 @@ "bundled": true }, "are-we-there-yet": { - "version": "3.0.1", + "version": "4.0.0", "bundled": true, "requires": { "delegates": "^1.0.0", - "readable-stream": "^3.6.0" + "readable-stream": "^4.1.0" + }, + "dependencies": { + "buffer": { + "version": "6.0.3", + "bundled": true, + "requires": { + "base64-js": "^1.3.1", + "ieee754": "^1.2.1" + } + }, + "readable-stream": { + "version": "4.2.0", + "bundled": true, + "requires": { + "abort-controller": "^3.0.0", + "buffer": "^6.0.3", + "events": "^3.3.0", + "process": "^0.11.10" + } + } } }, - "asap": { - "version": "2.0.6", - "bundled": true - }, "balanced-match": { "version": "1.0.2", "bundled": true }, + "base64-js": { + "version": "1.5.1", + "bundled": true + }, "bin-links": { - "version": "3.0.3", + "version": "4.0.1", "bundled": true, "requires": { - "cmd-shim": "^5.0.0", - "mkdirp-infer-owner": "^2.0.0", - "npm-normalize-package-bin": "^2.0.0", - "read-cmd-shim": "^3.0.0", - "rimraf": "^3.0.0", - "write-file-atomic": "^4.0.0" - }, - "dependencies": { - "npm-normalize-package-bin": { - "version": "2.0.0", - "bundled": true - } + "cmd-shim": "^6.0.0", + "npm-normalize-package-bin": "^3.0.0", + "read-cmd-shim": "^4.0.0", + "write-file-atomic": "^5.0.0" } }, "binary-extensions": { @@ -9987,27 +11128,22 @@ } }, "cacache": { - "version": "16.1.3", + "version": "17.0.3", "bundled": true, "requires": { - "@npmcli/fs": "^2.1.0", - "@npmcli/move-file": "^2.0.0", - "chownr": "^2.0.0", + "@npmcli/fs": "^3.1.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": "^4.0.0", "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", + "ssri": "^10.0.0", "tar": "^6.1.11", - "unique-filename": "^2.0.0" + "unique-filename": "^3.0.0" } }, "chalk": { @@ -10022,6 +11158,10 @@ "version": "2.0.0", "bundled": true }, + "ci-info": { + "version": "3.7.0", + "bundled": true + }, "cidr-regex": { "version": "3.1.1", "bundled": true, @@ -10042,7 +11182,7 @@ } }, "cli-table3": { - "version": "0.6.2", + "version": "0.6.3", "bundled": true, "requires": { "@colors/colors": "1.5.0", @@ -10054,11 +11194,8 @@ "bundled": true }, "cmd-shim": { - "version": "5.0.0", - "bundled": true, - "requires": { - "mkdirp-infer-owner": "^2.0.0" - } + "version": "6.0.0", + "bundled": true }, "color-convert": { "version": "2.0.1", @@ -10112,10 +11249,6 @@ } } }, - "debuglog": { - "version": "1.0.1", - "bundled": true - }, "defaults": { "version": "1.0.3", "bundled": true, @@ -10131,14 +11264,6 @@ "version": "1.1.2", "bundled": true }, - "dezalgo": { - "version": "1.0.4", - "bundled": true, - "requires": { - "asap": "^2.0.0", - "wrappy": "1" - } - }, "diff": { "version": "5.1.0", "bundled": true @@ -10163,8 +11288,16 @@ "version": "2.0.3", "bundled": true }, + "event-target-shim": { + "version": "5.0.1", + "bundled": true + }, + "events": { + "version": "3.3.0", + "bundled": true + }, "fastest-levenshtein": { - "version": "1.0.12", + "version": "1.0.16", "bundled": true }, "fs-minipass": { @@ -10172,6 +11305,15 @@ "bundled": true, "requires": { "minipass": "^3.0.0" + }, + "dependencies": { + "minipass": { + "version": "3.3.6", + "bundled": true, + "requires": { + "yallist": "^4.0.0" + } + } } }, "fs.realpath": { @@ -10183,7 +11325,7 @@ "bundled": true }, "gauge": { - "version": "4.0.4", + "version": "5.0.0", "bundled": true, "requires": { "aproba": "^1.0.3 || ^2.0.0", @@ -10227,7 +11369,7 @@ "bundled": true }, "hosted-git-info": { - "version": "5.1.0", + "version": "6.1.1", "bundled": true, "requires": { "lru-cache": "^7.5.1" @@ -10269,8 +11411,12 @@ "safer-buffer": ">= 2.1.2 < 3.0.0" } }, + "ieee754": { + "version": "1.2.1", + "bundled": true + }, "ignore-walk": { - "version": "5.0.1", + "version": "6.0.0", "bundled": true, "requires": { "minimatch": "^5.0.1" @@ -10305,16 +11451,16 @@ "bundled": true }, "init-package-json": { - "version": "3.0.2", + "version": "4.0.1", "bundled": true, "requires": { - "npm-package-arg": "^9.0.1", + "npm-package-arg": "^10.0.0", "promzard": "^0.3.0", "read": "^1.0.7", - "read-package-json": "^5.0.0", + "read-package-json": "^6.0.0", "semver": "^7.3.5", "validate-npm-package-license": "^3.0.4", - "validate-npm-package-name": "^4.0.0" + "validate-npm-package-name": "^5.0.0" } }, "ip": { @@ -10352,7 +11498,7 @@ "bundled": true }, "json-parse-even-better-errors": { - "version": "2.3.1", + "version": "3.0.0", "bundled": true }, "json-stringify-nice": { @@ -10372,115 +11518,113 @@ "bundled": true }, "libnpmaccess": { - "version": "6.0.4", + "version": "7.0.1", "bundled": true, "requires": { - "aproba": "^2.0.0", - "minipass": "^3.1.1", - "npm-package-arg": "^9.0.1", - "npm-registry-fetch": "^13.0.0" + "npm-package-arg": "^10.1.0", + "npm-registry-fetch": "^14.0.3" } }, "libnpmdiff": { - "version": "4.0.5", + "version": "5.0.6", "bundled": true, "requires": { - "@npmcli/disparity-colors": "^2.0.0", - "@npmcli/installed-package-contents": "^1.0.7", + "@npmcli/arborist": "^6.1.5", + "@npmcli/disparity-colors": "^3.0.0", + "@npmcli/installed-package-contents": "^2.0.0", "binary-extensions": "^2.2.0", "diff": "^5.1.0", - "minimatch": "^5.0.1", - "npm-package-arg": "^9.0.1", - "pacote": "^13.6.1", - "tar": "^6.1.0" + "minimatch": "^5.1.1", + "npm-package-arg": "^10.1.0", + "pacote": "^15.0.7", + "tar": "^6.1.13" } }, "libnpmexec": { - "version": "4.0.13", + "version": "5.0.6", "bundled": true, "requires": { - "@npmcli/arborist": "^5.6.2", - "@npmcli/ci-detect": "^2.0.0", - "@npmcli/fs": "^2.1.1", - "@npmcli/run-script": "^4.2.0", + "@npmcli/arborist": "^6.1.5", + "@npmcli/run-script": "^6.0.0", "chalk": "^4.1.0", - "mkdirp-infer-owner": "^2.0.0", - "npm-package-arg": "^9.0.1", - "npmlog": "^6.0.2", - "pacote": "^13.6.1", - "proc-log": "^2.0.0", + "ci-info": "^3.7.0", + "npm-package-arg": "^10.1.0", + "npmlog": "^7.0.1", + "pacote": "^15.0.7", + "proc-log": "^3.0.0", "read": "^1.0.7", - "read-package-json-fast": "^2.0.2", + "read-package-json-fast": "^3.0.1", "semver": "^7.3.7", "walk-up-path": "^1.0.0" } }, "libnpmfund": { - "version": "3.0.4", + "version": "4.0.6", "bundled": true, "requires": { - "@npmcli/arborist": "^5.6.2" + "@npmcli/arborist": "^6.1.5" } }, "libnpmhook": { - "version": "8.0.4", + "version": "9.0.1", "bundled": true, "requires": { "aproba": "^2.0.0", - "npm-registry-fetch": "^13.0.0" + "npm-registry-fetch": "^14.0.3" } }, "libnpmorg": { - "version": "4.0.4", + "version": "5.0.1", "bundled": true, "requires": { "aproba": "^2.0.0", - "npm-registry-fetch": "^13.0.0" + "npm-registry-fetch": "^14.0.3" } }, "libnpmpack": { - "version": "4.1.3", + "version": "5.0.6", "bundled": true, "requires": { - "@npmcli/run-script": "^4.1.3", - "npm-package-arg": "^9.0.1", - "pacote": "^13.6.1" + "@npmcli/arborist": "^6.1.5", + "@npmcli/run-script": "^6.0.0", + "npm-package-arg": "^10.1.0", + "pacote": "^15.0.7" } }, "libnpmpublish": { - "version": "6.0.5", + "version": "7.0.6", "bundled": true, "requires": { - "normalize-package-data": "^4.0.0", - "npm-package-arg": "^9.0.1", - "npm-registry-fetch": "^13.0.0", + "normalize-package-data": "^5.0.0", + "npm-package-arg": "^10.1.0", + "npm-registry-fetch": "^14.0.3", "semver": "^7.3.7", - "ssri": "^9.0.0" + "ssri": "^10.0.1" } }, "libnpmsearch": { - "version": "5.0.4", + "version": "6.0.1", "bundled": true, "requires": { - "npm-registry-fetch": "^13.0.0" + "npm-registry-fetch": "^14.0.3" } }, "libnpmteam": { - "version": "4.0.4", + "version": "5.0.1", "bundled": true, "requires": { "aproba": "^2.0.0", - "npm-registry-fetch": "^13.0.0" + "npm-registry-fetch": "^14.0.3" } }, "libnpmversion": { - "version": "3.0.7", + "version": "4.0.1", "bundled": true, "requires": { - "@npmcli/git": "^3.0.0", - "@npmcli/run-script": "^4.1.3", - "json-parse-even-better-errors": "^2.3.1", - "proc-log": "^2.0.0", + "@npmcli/git": "^4.0.1", + "@npmcli/run-script": "^6.0.0", + "json-parse-even-better-errors": "^3.0.0", + "proc-log": "^3.0.0", "semver": "^7.3.7" } }, @@ -10489,36 +11633,36 @@ "bundled": true }, "make-fetch-happen": { - "version": "10.2.1", + "version": "11.0.2", "bundled": true, "requires": { "agentkeepalive": "^4.2.1", - "cacache": "^16.1.0", + "cacache": "^17.0.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": "^4.0.0", "minipass-collect": "^1.0.2", - "minipass-fetch": "^2.0.3", + "minipass-fetch": "^3.0.0", "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" + "ssri": "^10.0.0" } }, "minimatch": { - "version": "5.1.0", + "version": "5.1.1", "bundled": true, "requires": { "brace-expansion": "^2.0.1" } }, "minipass": { - "version": "3.3.4", + "version": "4.0.0", "bundled": true, "requires": { "yallist": "^4.0.0" @@ -10529,16 +11673,34 @@ "bundled": true, "requires": { "minipass": "^3.0.0" + }, + "dependencies": { + "minipass": { + "version": "3.3.6", + "bundled": true, + "requires": { + "yallist": "^4.0.0" + } + } } }, "minipass-fetch": { - "version": "2.1.1", + "version": "3.0.0", "bundled": true, "requires": { "encoding": "^0.1.13", "minipass": "^3.1.6", "minipass-sized": "^1.0.3", "minizlib": "^2.1.2" + }, + "dependencies": { + "minipass": { + "version": "3.3.6", + "bundled": true, + "requires": { + "yallist": "^4.0.0" + } + } } }, "minipass-flush": { @@ -10546,6 +11708,15 @@ "bundled": true, "requires": { "minipass": "^3.0.0" + }, + "dependencies": { + "minipass": { + "version": "3.3.6", + "bundled": true, + "requires": { + "yallist": "^4.0.0" + } + } } }, "minipass-json-stream": { @@ -10554,6 +11725,15 @@ "requires": { "jsonparse": "^1.3.1", "minipass": "^3.0.0" + }, + "dependencies": { + "minipass": { + "version": "3.3.6", + "bundled": true, + "requires": { + "yallist": "^4.0.0" + } + } } }, "minipass-pipeline": { @@ -10561,6 +11741,15 @@ "bundled": true, "requires": { "minipass": "^3.0.0" + }, + "dependencies": { + "minipass": { + "version": "3.3.6", + "bundled": true, + "requires": { + "yallist": "^4.0.0" + } + } } }, "minipass-sized": { @@ -10568,6 +11757,15 @@ "bundled": true, "requires": { "minipass": "^3.0.0" + }, + "dependencies": { + "minipass": { + "version": "3.3.6", + "bundled": true, + "requires": { + "yallist": "^4.0.0" + } + } } }, "minizlib": { @@ -10576,21 +11774,21 @@ "requires": { "minipass": "^3.0.0", "yallist": "^4.0.0" + }, + "dependencies": { + "minipass": { + "version": "3.3.6", + "bundled": true, + "requires": { + "yallist": "^4.0.0" + } + } } }, "mkdirp": { "version": "1.0.4", "bundled": true }, - "mkdirp-infer-owner": { - "version": "2.0.0", - "bundled": true, - "requires": { - "chownr": "^2.0.0", - "infer-owner": "^1.0.4", - "mkdirp": "^1.0.3" - } - }, "ms": { "version": "2.1.3", "bundled": true @@ -10604,14 +11802,14 @@ "bundled": true }, "node-gyp": { - "version": "9.1.0", + "version": "9.3.0", "bundled": true, "requires": { "env-paths": "^2.2.0", "glob": "^7.1.4", "graceful-fs": "^4.2.6", "make-fetch-happen": "^10.0.3", - "nopt": "^5.0.0", + "nopt": "^6.0.0", "npmlog": "^6.0.0", "rimraf": "^3.0.2", "semver": "^7.3.5", @@ -10619,6 +11817,34 @@ "which": "^2.0.2" }, "dependencies": { + "@npmcli/fs": { + "version": "2.1.2", + "bundled": true, + "requires": { + "@gar/promisify": "^1.1.3", + "semver": "^7.3.5" + } + }, + "@npmcli/move-file": { + "version": "2.0.1", + "bundled": true, + "requires": { + "mkdirp": "^1.0.4", + "rimraf": "^3.0.2" + } + }, + "abbrev": { + "version": "1.1.1", + "bundled": true + }, + "are-we-there-yet": { + "version": "3.0.1", + "bundled": true, + "requires": { + "delegates": "^1.0.0", + "readable-stream": "^3.6.0" + } + }, "brace-expansion": { "version": "1.1.11", "bundled": true, @@ -10627,6 +11853,71 @@ "concat-map": "0.0.1" } }, + "cacache": { + "version": "16.1.3", + "bundled": true, + "requires": { + "@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" + }, + "dependencies": { + "brace-expansion": { + "version": "2.0.1", + "bundled": true, + "requires": { + "balanced-match": "^1.0.0" + } + }, + "glob": { + "version": "8.0.3", + "bundled": true, + "requires": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^5.0.1", + "once": "^1.3.0" + } + }, + "minimatch": { + "version": "5.1.0", + "bundled": true, + "requires": { + "brace-expansion": "^2.0.1" + } + } + } + }, + "gauge": { + "version": "4.0.4", + "bundled": true, + "requires": { + "aproba": "^1.0.3 || ^2.0.0", + "color-support": "^1.1.3", + "console-control-strings": "^1.1.0", + "has-unicode": "^2.0.1", + "signal-exit": "^3.0.7", + "string-width": "^4.2.3", + "strip-ansi": "^6.0.1", + "wide-align": "^1.1.5" + } + }, "glob": { "version": "7.2.3", "bundled": true, @@ -10639,6 +11930,28 @@ "path-is-absolute": "^1.0.0" } }, + "make-fetch-happen": { + "version": "10.2.1", + "bundled": true, + "requires": { + "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" + } + }, "minimatch": { "version": "3.1.2", "bundled": true, @@ -10646,124 +11959,158 @@ "brace-expansion": "^1.1.7" } }, - "nopt": { - "version": "5.0.0", + "minipass": { + "version": "3.3.6", "bundled": true, "requires": { - "abbrev": "1" + "yallist": "^4.0.0" + } + }, + "minipass-fetch": { + "version": "2.1.2", + "bundled": true, + "requires": { + "encoding": "^0.1.13", + "minipass": "^3.1.6", + "minipass-sized": "^1.0.3", + "minizlib": "^2.1.2" + } + }, + "nopt": { + "version": "6.0.0", + "bundled": true, + "requires": { + "abbrev": "^1.0.0" + } + }, + "npmlog": { + "version": "6.0.2", + "bundled": true, + "requires": { + "are-we-there-yet": "^3.0.0", + "console-control-strings": "^1.1.0", + "gauge": "^4.0.3", + "set-blocking": "^2.0.0" + } + }, + "ssri": { + "version": "9.0.1", + "bundled": true, + "requires": { + "minipass": "^3.1.1" + } + }, + "unique-filename": { + "version": "2.0.1", + "bundled": true, + "requires": { + "unique-slug": "^3.0.0" + } + }, + "unique-slug": { + "version": "3.0.0", + "bundled": true, + "requires": { + "imurmurhash": "^0.1.4" + } + }, + "which": { + "version": "2.0.2", + "bundled": true, + "requires": { + "isexe": "^2.0.0" } } } }, "nopt": { - "version": "6.0.0", + "version": "7.0.0", "bundled": true, "requires": { - "abbrev": "^1.0.0" + "abbrev": "^2.0.0" } }, "normalize-package-data": { - "version": "4.0.1", + "version": "5.0.0", "bundled": true, "requires": { - "hosted-git-info": "^5.0.0", + "hosted-git-info": "^6.0.0", "is-core-module": "^2.8.1", "semver": "^7.3.5", "validate-npm-package-license": "^3.0.4" } }, "npm-audit-report": { - "version": "3.0.0", + "version": "4.0.0", "bundled": true, "requires": { "chalk": "^4.0.0" } }, "npm-bundled": { - "version": "2.0.1", + "version": "3.0.0", "bundled": true, "requires": { - "npm-normalize-package-bin": "^2.0.0" - }, - "dependencies": { - "npm-normalize-package-bin": { - "version": "2.0.0", - "bundled": true - } + "npm-normalize-package-bin": "^3.0.0" } }, "npm-install-checks": { - "version": "5.0.0", + "version": "6.0.0", "bundled": true, "requires": { "semver": "^7.1.1" } }, "npm-normalize-package-bin": { - "version": "1.0.1", + "version": "3.0.0", "bundled": true }, "npm-package-arg": { - "version": "9.1.0", + "version": "10.1.0", "bundled": true, "requires": { - "hosted-git-info": "^5.0.0", - "proc-log": "^2.0.1", + "hosted-git-info": "^6.0.0", + "proc-log": "^3.0.0", "semver": "^7.3.5", - "validate-npm-package-name": "^4.0.0" + "validate-npm-package-name": "^5.0.0" } }, "npm-packlist": { - "version": "5.1.3", + "version": "7.0.4", "bundled": true, "requires": { - "glob": "^8.0.1", - "ignore-walk": "^5.0.1", - "npm-bundled": "^2.0.0", - "npm-normalize-package-bin": "^2.0.0" - }, - "dependencies": { - "npm-normalize-package-bin": { - "version": "2.0.0", - "bundled": true - } + "ignore-walk": "^6.0.0" } }, "npm-pick-manifest": { - "version": "7.0.2", + "version": "8.0.1", "bundled": true, "requires": { - "npm-install-checks": "^5.0.0", - "npm-normalize-package-bin": "^2.0.0", - "npm-package-arg": "^9.0.0", + "npm-install-checks": "^6.0.0", + "npm-normalize-package-bin": "^3.0.0", + "npm-package-arg": "^10.0.0", "semver": "^7.3.5" - }, - "dependencies": { - "npm-normalize-package-bin": { - "version": "2.0.0", - "bundled": true - } } }, "npm-profile": { - "version": "6.2.1", + "version": "7.0.1", "bundled": true, "requires": { - "npm-registry-fetch": "^13.0.1", - "proc-log": "^2.0.0" + "npm-registry-fetch": "^14.0.0", + "proc-log": "^3.0.0" } }, "npm-registry-fetch": { - "version": "13.3.1", + "version": "14.0.3", "bundled": true, "requires": { - "make-fetch-happen": "^10.0.6", - "minipass": "^3.1.6", - "minipass-fetch": "^2.0.3", + "make-fetch-happen": "^11.0.0", + "minipass": "^4.0.0", + "minipass-fetch": "^3.0.0", "minipass-json-stream": "^1.0.1", "minizlib": "^2.1.2", - "npm-package-arg": "^9.0.1", - "proc-log": "^2.0.0" + "npm-package-arg": "^10.0.0", + "proc-log": "^3.0.0" } }, "npm-user-validate": { @@ -10771,12 +12118,12 @@ "bundled": true }, "npmlog": { - "version": "6.0.2", + "version": "7.0.1", "bundled": true, "requires": { - "are-we-there-yet": "^3.0.0", + "are-we-there-yet": "^4.0.0", "console-control-strings": "^1.1.0", - "gauge": "^4.0.3", + "gauge": "^5.0.0", "set-blocking": "^2.0.0" } }, @@ -10787,10 +12134,6 @@ "wrappy": "1" } }, - "opener": { - "version": "1.5.2", - "bundled": true - }, "p-map": { "version": "4.0.0", "bundled": true, @@ -10799,37 +12142,33 @@ } }, "pacote": { - "version": "13.6.2", + "version": "15.0.7", "bundled": true, "requires": { - "@npmcli/git": "^3.0.0", - "@npmcli/installed-package-contents": "^1.0.7", - "@npmcli/promise-spawn": "^3.0.0", - "@npmcli/run-script": "^4.1.0", - "cacache": "^16.0.0", - "chownr": "^2.0.0", + "@npmcli/git": "^4.0.0", + "@npmcli/installed-package-contents": "^2.0.1", + "@npmcli/promise-spawn": "^6.0.1", + "@npmcli/run-script": "^6.0.0", + "cacache": "^17.0.0", "fs-minipass": "^2.1.0", - "infer-owner": "^1.0.4", - "minipass": "^3.1.6", - "mkdirp": "^1.0.4", - "npm-package-arg": "^9.0.0", - "npm-packlist": "^5.1.0", - "npm-pick-manifest": "^7.0.0", - "npm-registry-fetch": "^13.0.1", - "proc-log": "^2.0.0", + "minipass": "^4.0.0", + "npm-package-arg": "^10.0.0", + "npm-packlist": "^7.0.0", + "npm-pick-manifest": "^8.0.0", + "npm-registry-fetch": "^14.0.0", + "proc-log": "^3.0.0", "promise-retry": "^2.0.1", - "read-package-json": "^5.0.0", - "read-package-json-fast": "^2.0.3", - "rimraf": "^3.0.2", - "ssri": "^9.0.0", + "read-package-json": "^6.0.0", + "read-package-json-fast": "^3.0.0", + "ssri": "^10.0.0", "tar": "^6.1.11" } }, "parse-conflict-json": { - "version": "2.0.2", + "version": "3.0.0", "bundled": true, "requires": { - "json-parse-even-better-errors": "^2.3.1", + "json-parse-even-better-errors": "^3.0.0", "just-diff": "^5.0.1", "just-diff-apply": "^5.2.0" } @@ -10847,7 +12186,11 @@ } }, "proc-log": { - "version": "2.0.1", + "version": "3.0.0", + "bundled": true + }, + "process": { + "version": "0.11.10", "bundled": true }, "promise-all-reject-late": { @@ -10889,31 +12232,25 @@ } }, "read-cmd-shim": { - "version": "3.0.0", + "version": "4.0.0", "bundled": true }, "read-package-json": { - "version": "5.0.2", + "version": "6.0.0", "bundled": true, "requires": { "glob": "^8.0.1", - "json-parse-even-better-errors": "^2.3.1", - "normalize-package-data": "^4.0.0", - "npm-normalize-package-bin": "^2.0.0" - }, - "dependencies": { - "npm-normalize-package-bin": { - "version": "2.0.0", - "bundled": true - } + "json-parse-even-better-errors": "^3.0.0", + "normalize-package-data": "^5.0.0", + "npm-normalize-package-bin": "^3.0.0" } }, "read-package-json-fast": { - "version": "2.0.3", + "version": "3.0.1", "bundled": true, "requires": { - "json-parse-even-better-errors": "^2.3.0", - "npm-normalize-package-bin": "^1.0.1" + "json-parse-even-better-errors": "^3.0.0", + "npm-normalize-package-bin": "^3.0.0" } }, "readable-stream": { @@ -10925,16 +12262,6 @@ "util-deprecate": "^1.0.1" } }, - "readdir-scoped-modules": { - "version": "1.1.0", - "bundled": true, - "requires": { - "debuglog": "^1.0.1", - "dezalgo": "^1.0.0", - "graceful-fs": "^4.1.2", - "once": "^1.3.0" - } - }, "retry": { "version": "0.12.0", "bundled": true @@ -10985,7 +12312,7 @@ "optional": true }, "semver": { - "version": "7.3.7", + "version": "7.3.8", "bundled": true, "requires": { "lru-cache": "^6.0.0" @@ -11054,10 +12381,10 @@ "bundled": true }, "ssri": { - "version": "9.0.1", + "version": "10.0.1", "bundled": true, "requires": { - "minipass": "^3.1.1" + "minipass": "^4.0.0" } }, "string_decoder": { @@ -11091,12 +12418,12 @@ } }, "tar": { - "version": "6.1.11", + "version": "6.1.13", "bundled": true, "requires": { "chownr": "^2.0.0", "fs-minipass": "^2.0.0", - "minipass": "^3.0.0", + "minipass": "^4.0.0", "minizlib": "^2.1.1", "mkdirp": "^1.0.3", "yallist": "^4.0.0" @@ -11111,18 +12438,18 @@ "bundled": true }, "treeverse": { - "version": "2.0.0", + "version": "3.0.0", "bundled": true }, "unique-filename": { - "version": "2.0.1", + "version": "3.0.0", "bundled": true, "requires": { - "unique-slug": "^3.0.0" + "unique-slug": "^4.0.0" } }, "unique-slug": { - "version": "3.0.0", + "version": "4.0.0", "bundled": true, "requires": { "imurmurhash": "^0.1.4" @@ -11141,7 +12468,7 @@ } }, "validate-npm-package-name": { - "version": "4.0.0", + "version": "5.0.0", "bundled": true, "requires": { "builtins": "^5.0.0" @@ -11159,7 +12486,7 @@ } }, "which": { - "version": "2.0.2", + "version": "3.0.0", "bundled": true, "requires": { "isexe": "^2.0.0" @@ -11177,7 +12504,7 @@ "bundled": true }, "write-file-atomic": { - "version": "4.0.2", + "version": "5.0.0", "bundled": true, "requires": { "imurmurhash": "^0.1.4", @@ -11224,27 +12551,6 @@ "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", "integrity": "sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==" }, - "object-inspect": { - "version": "1.12.2", - "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.12.2.tgz", - "integrity": "sha512-z+cPxW0QGUp0mcqcsgQyLVRDoXFQbXOwBaqyF7VIgI4TWNQsDHrBpUQslRmIfAoYWdYzs6UlKJtB2XJpTaNSpQ==" - }, - "object-keys": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", - "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==" - }, - "object.assign": { - "version": "4.1.4", - "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.4.tgz", - "integrity": "sha512-1mxKf0e58bvyjSCtKYY4sRe9itRk3PJpquJOjeIkz885CczcI4IvJJDLPS72oowuSh+pBxUFROpX+TU++hxhZQ==", - "requires": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.4", - "has-symbols": "^1.0.3", - "object-keys": "^1.1.1" - } - }, "omggif": { "version": "1.0.10", "resolved": "https://registry.npmjs.org/omggif/-/omggif-1.0.10.tgz", @@ -11271,11 +12577,6 @@ "word-wrap": "~1.2.3" } }, - "p-cancelable": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/p-cancelable/-/p-cancelable-2.1.1.tgz", - "integrity": "sha512-BZOr3nRQHOntUjTrH8+Lh54smKHoHyur8We1V8DSMVrl5A2malOOwuJRnKRDjSnkoeBh4at6BwEnb5I7Jl31wg==" - }, "pako": { "version": "1.0.11", "resolved": "https://registry.npmjs.org/pako/-/pako-1.0.11.tgz", @@ -11306,9 +12607,9 @@ "integrity": "sha512-ft3iAoLOB/MlwbNXgzy43SWGP6sQki2jQvAyBg/zDFAgr9bfNWZIUj42Kw2eJIl8kEi4PbgE6U1Zau/HwI75HA==" }, "parse5": { - "version": "7.1.1", - "resolved": "https://registry.npmjs.org/parse5/-/parse5-7.1.1.tgz", - "integrity": "sha512-kwpuwzB+px5WUg9pyK0IcK/shltJN5/OVhQagxhCQNtT9Y9QRZqNY2e1cmbu/paRh5LMnz/oVTVLBpjFmMZhSg==", + "version": "7.1.2", + "resolved": "https://registry.npmjs.org/parse5/-/parse5-7.1.2.tgz", + "integrity": "sha512-Czj1WaSVpaoj0wbhMzLmWD69anp2WH7FXMB9n1Sy8/ZFF9jolSQVMu1Ij5WIyGmcBmhk7EOndpO4mIpihVqAXw==", "requires": { "entities": "^4.4.0" } @@ -11327,6 +12628,11 @@ "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==" }, + "peek-readable": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/peek-readable/-/peek-readable-5.0.0.tgz", + "integrity": "sha512-YtCKvLUOvwtMGmrniQPdO7MwPjgkFBtFIrmfSbYmYuq3tKDV/mcfAhBth1+C3ru7uXIZasc/pHnb+YDYNkkj4A==" + }, "performance-now": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz", @@ -11375,20 +12681,16 @@ "resolved": "https://registry.npmjs.org/process/-/process-0.11.10.tgz", "integrity": "sha512-cdGef/drWFoydD1JsMzuFf8100nZl+GT+yacc2bEced5f9Rjk4z+WtFUTBu9PhOi9j/jfmBPu0mMEY4wIdAF8A==" }, + "proxy-from-env": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/proxy-from-env/-/proxy-from-env-1.1.0.tgz", + "integrity": "sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg==" + }, "psl": { "version": "1.9.0", "resolved": "https://registry.npmjs.org/psl/-/psl-1.9.0.tgz", "integrity": "sha512-E/ZsdU4HLs/68gYzgGTkMicWTLPdAftJLfJFlLUAAKZGkStNU72sZjT66SnMDVOfOWY/YAoiD7Jxa9iHvngcag==" }, - "pump": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz", - "integrity": "sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==", - "requires": { - "end-of-stream": "^1.1.0", - "once": "^1.3.1" - } - }, "punycode": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", @@ -11404,11 +12706,6 @@ "resolved": "https://registry.npmjs.org/querystringify/-/querystringify-2.2.0.tgz", "integrity": "sha512-FIqgj2EUvTa7R50u0rGsyTftzjYmv/a3hO345bZNrqabNqjtgiDMgmo4mkUjd+nzU5oF3dClKqFIPUKybUyqoQ==" }, - "quick-lru": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/quick-lru/-/quick-lru-5.1.1.tgz", - "integrity": "sha512-WuyALRjWPDGtt/wzJiadO5AXY+8hZ80hVpe6MyivgraREW751X3SbhRvG3eLKOYN+8VEvqLcf3wdnt44Z4S4SA==" - }, "randombytes": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz", @@ -11448,21 +12745,19 @@ "util-deprecate": "^1.0.1" } }, - "regenerator-runtime": { - "version": "0.13.9", - "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.9.tgz", - "integrity": "sha512-p3VT+cOEgxFsRRA9X4lkI1E+k2/CtnKtU4gcxyaCUreilL/vqI6CdZ3wxVUx3UOUg+gnUOQQcRI7BmSI656MYA==" - }, - "regexp.prototype.flags": { - "version": "1.4.3", - "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.4.3.tgz", - "integrity": "sha512-fjggEOO3slI6Wvgjwflkc4NFRCTZAu5CnNfBd5qOMYhWdn67nJBBu34/TkD++eeFmd8C9r9jfXJ27+nSiRkSUA==", + "readable-web-to-node-stream": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/readable-web-to-node-stream/-/readable-web-to-node-stream-3.0.2.tgz", + "integrity": "sha512-ePeK6cc1EcKLEhJFt/AebMCLL+GgSKhuygrZ/GLaKZYEecIgIECf4UaUuaByiGtzckwR4ain9VzUh95T1exYGw==", "requires": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.3", - "functions-have-names": "^1.2.2" + "readable-stream": "^3.6.0" } }, + "regenerator-runtime": { + "version": "0.13.11", + "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.11.tgz", + "integrity": "sha512-kY1AZVr2Ra+t+piVaJ4gxaFaReZVH40AKNo7UCX6W+dEwBo/2oZJzqfuN1qLq1oL45o56cPaTXELwrTh8Fpggg==" + }, "request": { "version": "2.88.2", "resolved": "https://registry.npmjs.org/request/-/request-2.88.2.tgz", @@ -11508,6 +12803,11 @@ "psl": "^1.1.28", "punycode": "^2.1.1" } + }, + "uuid": { + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.4.0.tgz", + "integrity": "sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==" } } }, @@ -11516,19 +12816,6 @@ "resolved": "https://registry.npmjs.org/requires-port/-/requires-port-1.0.0.tgz", "integrity": "sha512-KigOCHcocU3XODJxsu8i/j8T9tzT4adHiecwORRQ0ZZFcp7ahwXuRU1m+yuO90C5ZUyGeGfocHDI14M3L3yDAQ==" }, - "resolve-alpn": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/resolve-alpn/-/resolve-alpn-1.2.1.tgz", - "integrity": "sha512-0a1F4l73/ZFZOakJnQ3FvkJ2+gSTQWz/r2KE5OdDY0TxPm5h4GkqkWWfM47T7HsbnOtcJVEF4epCVy6u7Q3K+g==" - }, - "responselike": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/responselike/-/responselike-2.0.1.tgz", - "integrity": "sha512-4gl03wn3hj1HP3yzgdI7d3lCkF95F21Pz4BPGvKHinyQzALR5CapwC8yIi0Rh58DEMQ/SguC03wFj2k0M/mHhw==", - "requires": { - "lowercase-keys": "^2.0.0" - } - }, "rimraf": { "version": "3.0.2", "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", @@ -11542,16 +12829,6 @@ "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==" }, - "safe-regex-test": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/safe-regex-test/-/safe-regex-test-1.0.0.tgz", - "integrity": "sha512-JBUUzyOgEwXQY1NuPtvcj/qcBDbDmEvWufhlnXZIm75DEHp+afM1r1ujJpJsV/gSM4t59tpDyPi1sd6ZaPFfsA==", - "requires": { - "call-bind": "^1.0.2", - "get-intrinsic": "^1.1.3", - "is-regex": "^1.1.4" - } - }, "safer-buffer": { "version": "2.1.2", "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", @@ -11572,9 +12849,9 @@ "integrity": "sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==" }, "saxes": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/saxes/-/saxes-5.0.1.tgz", - "integrity": "sha512-5LBh1Tls8c9xgGjw3QrMwETmTMVk0oFgvrFSvWx62llR2hcEInrKNZ2GZCCuuy2lvWrdl5jhbpeqc5hRYKFOcw==", + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/saxes/-/saxes-6.0.0.tgz", + "integrity": "sha512-xAg7SOnEhrm5zI3puOOKyy1OMcMlIJZYNJY7xLBwSze0UjhPLnWfj2GF2EpT0jmzaJKIWKHLsaSSajf35bcYnA==", "requires": { "xmlchars": "^2.2.0" } @@ -11585,9 +12862,9 @@ "integrity": "sha512-8OwmbklUNzwezjGInmZ+2clQmExQPvomqjL7LFqOYqtmuxRgQYqOD3mHaU+MvZn5FLUeVxVfQjwLZW/n/JFuqg==" }, "semver": { - "version": "7.3.7", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.7.tgz", - "integrity": "sha512-QlYTucUYOews+WeEujDoEGziz4K6c47V/Bd+LjSSYcA94p+DmINdf7ncaUinThfvZyu13lN9OY1XDxt8C0Tw0g==", + "version": "7.3.8", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.8.tgz", + "integrity": "sha512-NB1ctGL5rlHrPJtFDVIVzTyQylMLu9N9VICA6HSFJo8MCGVTMW6gfpicwKmmK/dAjTOrqu5l63JJOpDSrAis3A==", "requires": { "lru-cache": "^6.0.0" } @@ -11610,20 +12887,10 @@ "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.2.0.tgz", "integrity": "sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==" }, - "side-channel": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.4.tgz", - "integrity": "sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==", - "requires": { - "call-bind": "^1.0.0", - "get-intrinsic": "^1.0.2", - "object-inspect": "^1.9.0" - } - }, "sift": { - "version": "16.0.0", - "resolved": "https://registry.npmjs.org/sift/-/sift-16.0.0.tgz", - "integrity": "sha512-ILTjdP2Mv9V1kIxWMXeMTIRbOBrqKc4JAXmFMnFq3fKeyQ2Qwa3Dw1ubcye3vR+Y6ofA0b9gNDr/y2t6eUeIzQ==" + "version": "16.0.1", + "resolved": "https://registry.npmjs.org/sift/-/sift-16.0.1.tgz", + "integrity": "sha512-Wv6BjQ5zbhW7VFefWusVP33T/EM0vYikCaQ2qR8yULbsilAT8/wQaXvuQ3ptGLpoKx+lihJE3y2UTgKDyyNHZQ==" }, "signal-exit": { "version": "3.0.7", @@ -11681,12 +12948,23 @@ "optional": true }, "sourcebin": { - "version": "4.3.6", - "resolved": "https://registry.npmjs.org/sourcebin/-/sourcebin-4.3.6.tgz", - "integrity": "sha512-CmpeHdcpYNtew+s8DCkiyjQuhP4QMXHY99HQ1evzj6cjxtxNBgPCoobFOGMFFc3Hk6mJ8EB/nZ5e9W2OBqiCjA==", + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/sourcebin/-/sourcebin-5.0.0.tgz", + "integrity": "sha512-UWlYVRTa2RN0iSlmYnzhOkfVstv7hs245OWOVqHCaJ3Cy6fBAX4HcZ5a7KRe0CooVv0GAjJZ1nqJly0CN9yjnA==", "requires": { "@sourcebin/linguist": "^0.0.3", - "got": "^11.8.5" + "axios": "^0.27.2" + }, + "dependencies": { + "axios": { + "version": "0.27.2", + "resolved": "https://registry.npmjs.org/axios/-/axios-0.27.2.tgz", + "integrity": "sha512-t+yRIyySRTp/wua5xEr+z1q60QmLq8ABsS5O9Me1AsE5dfKqgnCFzwiCZZ/cGNd1lq4/7akDWMxdhVlucjmnOQ==", + "requires": { + "follow-redirects": "^1.14.9", + "form-data": "^4.0.0" + } + } } }, "sparse-bitfield": { @@ -11742,26 +13020,6 @@ "strip-ansi": "^6.0.1" } }, - "string.prototype.trimend": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.5.tgz", - "integrity": "sha512-I7RGvmjV4pJ7O3kdf+LXFpVfdNOxtCW/2C8f6jNiW4+PQchwxkCDzlk1/7p+Wl4bqFIZeF47qAHXLuHHWKAxog==", - "requires": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.4", - "es-abstract": "^1.19.5" - } - }, - "string.prototype.trimstart": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.5.tgz", - "integrity": "sha512-THx16TJCGlsN0o6dl2o6ncWUsdgnLRSA23rRE5pyGBw/mLr3Ej/R2LaqCtgP8VNMGZsvMWnf9ooZPyY2bHvUFg==", - "requires": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.4", - "es-abstract": "^1.19.5" - } - }, "strip-ansi": { "version": "6.0.1", "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", @@ -11770,6 +13028,21 @@ "ansi-regex": "^5.0.1" } }, + "strnum": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/strnum/-/strnum-1.0.5.tgz", + "integrity": "sha512-J8bbNyKKXl5qYcR36TIO8W3mVGVHrmmxsd5PAItGkmyzwJvybiw2IVq5nqd0i4LSNSkB/sx9VHllbfFdr9k1JA==", + "optional": true + }, + "strtok3": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/strtok3/-/strtok3-7.0.0.tgz", + "integrity": "sha512-pQ+V+nYQdC5H3Q7qBZAz/MO6lwGhoC2gOAjuouGf/VO0m7vQRh8QNMl2Uf6SwAtzZ9bOw3UIeBukEGNJl5dtXQ==", + "requires": { + "@tokenizer/token": "^0.3.0", + "peek-readable": "^5.0.0" + } + }, "supports-color": { "version": "7.2.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", @@ -11784,13 +13057,13 @@ "integrity": "sha512-9QNk5KwDF+Bvz+PyObkmSYjI5ksVUYtjW7AU22r2NKcfLJcXp96hkDWU3+XndOsUb+AQ9QhfzfCT2O+CNWT5Tw==" }, "tar": { - "version": "6.1.11", - "resolved": "https://registry.npmjs.org/tar/-/tar-6.1.11.tgz", - "integrity": "sha512-an/KZQzQUkZCkuoAA64hM92X0Urb6VpRhAFllDzz44U2mcD5scmT3zBc4VgVpkugF580+DQn8eAFSyoQt0tznA==", + "version": "6.1.13", + "resolved": "https://registry.npmjs.org/tar/-/tar-6.1.13.tgz", + "integrity": "sha512-jdIBIN6LTIe2jqzay/2vtYLlBHa3JF42ot3h1dW8Q0PaAG4v8rm0cvpVePtau5C6OKXGGcgO9q2AMNSWxiLqKw==", "requires": { "chownr": "^2.0.0", "fs-minipass": "^2.0.0", - "minipass": "^3.0.0", + "minipass": "^4.0.0", "minizlib": "^2.1.1", "mkdirp": "^1.0.3", "yallist": "^4.0.0" @@ -11813,11 +13086,6 @@ "resolved": "https://registry.npmjs.org/tiny-emitter/-/tiny-emitter-2.1.0.tgz", "integrity": "sha512-NB6Dk1A9xgQPMoGqC5CVXn123gWyte215ONT5Pp5a0yt4nlEoO1ZWeCwpncaekPHXO60i47ihFnZPiRPjRMq4Q==" }, - "tiny-typed-emitter": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/tiny-typed-emitter/-/tiny-typed-emitter-2.1.0.tgz", - "integrity": "sha512-qVtvMxeXbVej0cQWKqVSSAHmKZEHAvxdF8HEUBFWts8h+xEo5m/lEiPakuyZ3BnCBjOD8i24kzNOiOLLgsSxhA==" - }, "tinycolor2": { "version": "1.4.2", "resolved": "https://registry.npmjs.org/tinycolor2/-/tinycolor2-1.4.2.tgz", @@ -11828,6 +13096,15 @@ "resolved": "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.1.tgz", "integrity": "sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA==" }, + "token-types": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/token-types/-/token-types-5.0.1.tgz", + "integrity": "sha512-Y2fmSnZjQdDb9W4w4r1tswlMHylzWIeOKpx0aZH9BgGtACHhrk3OkT52AzwcuqTRBZtvvnTjDBh8eynMulu8Vg==", + "requires": { + "@tokenizer/token": "^0.3.0", + "ieee754": "^1.2.1" + } + }, "topgg-autoposter": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/topgg-autoposter/-/topgg-autoposter-2.0.1.tgz", @@ -11858,14 +13135,14 @@ } }, "ts-mixer": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/ts-mixer/-/ts-mixer-6.0.1.tgz", - "integrity": "sha512-hvE+ZYXuINrx6Ei6D6hz+PTim0Uf++dYbK9FFifLNwQj+RwKquhQpn868yZsCtJYiclZF1u8l6WZxxKi+vv7Rg==" + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/ts-mixer/-/ts-mixer-6.0.2.tgz", + "integrity": "sha512-zvHx3VM83m2WYCE8XL99uaM7mFwYSkjR2OZti98fabHrwkjsCvgwChda5xctein3xGOyaQhtTeDq/1H/GNvF3A==" }, "tslib": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.4.0.tgz", - "integrity": "sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ==" + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.4.1.tgz", + "integrity": "sha512-tGyy4dAjRIEwI7BzsB0lynWgOpfqjUdq91XXAlIWD2OwKBH7oCl/GZG/HT4BOHrTlPMOASlMQ7veyTqpmRcrNA==" }, "tunnel-agent": { "version": "0.6.0", @@ -11889,30 +13166,19 @@ } }, "typed-function": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/typed-function/-/typed-function-2.1.0.tgz", - "integrity": "sha512-bctQIOqx2iVbWGDGPWwIm18QScpu2XRmkC19D8rQGFsjKSgteq/o1hTZvIG/wuDq8fanpBDrLkLq+aEN/6y5XQ==" + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/typed-function/-/typed-function-4.1.0.tgz", + "integrity": "sha512-DGwUl6cioBW5gw2L+6SMupGwH/kZOqivy17E4nsh1JI9fKF87orMmlQx3KISQPmg3sfnOUGlwVkroosvgddrlg==" }, "typescript": { - "version": "4.8.4", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.8.4.tgz", - "integrity": "sha512-QCh+85mCy+h0IGff8r5XWzOVSbBO+KfeYrMQh7NJ58QujwcE22u+NUSmUxqF+un70P9GXKxa2HCNiTTMJknyjQ==" - }, - "unbox-primitive": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.0.2.tgz", - "integrity": "sha512-61pPlCD9h51VoreyJ0BReideM3MDKMKnh6+V9L08331ipq6Q8OFXZYiqP6n/tbHx4s5I9uRhcye6BrbkizkBDw==", - "requires": { - "call-bind": "^1.0.2", - "has-bigints": "^1.0.2", - "has-symbols": "^1.0.3", - "which-boxed-primitive": "^1.0.2" - } + "version": "4.9.4", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.9.4.tgz", + "integrity": "sha512-Uz+dTXYzxXXbsFpM86Wh3dKCxrQqUcVMxwU54orwlJjOpO3ao8L7j5lH+dWfTwgCwIuM9GQ2kvVotzYJMXTBZg==" }, "undici": { - "version": "5.11.0", - "resolved": "https://registry.npmjs.org/undici/-/undici-5.11.0.tgz", - "integrity": "sha512-oWjWJHzFet0Ow4YZBkyiJwiK5vWqEYoH7BINzJAJOLedZ++JpAlCbUktW2GQ2DS2FpKmxD/JMtWUUWl1BtghGw==", + "version": "5.14.0", + "resolved": "https://registry.npmjs.org/undici/-/undici-5.14.0.tgz", + "integrity": "sha512-yJlHYw6yXPPsuOH0x2Ib1Km61vu4hLiRRQoafs+WUgX1vO64vgnxiCEN9dpIrhZyHFsai3F0AEj4P9zy19enEQ==", "requires": { "busboy": "^1.6.0" } @@ -11953,15 +13219,14 @@ } }, "util": { - "version": "0.12.4", - "resolved": "https://registry.npmjs.org/util/-/util-0.12.4.tgz", - "integrity": "sha512-bxZ9qtSlGUWSOy9Qa9Xgk11kSslpuZwaxCg4sNIDj6FLucDab2JxnHwyNTCpHMtK1MjoQiWQ6DiUMZYbSrO+Sw==", + "version": "0.12.5", + "resolved": "https://registry.npmjs.org/util/-/util-0.12.5.tgz", + "integrity": "sha512-kZf/K6hEIrWHI6XqOFUiiMa+79wE/D8Q+NCNAWclkyg3b4d2k7s0QGepNjiABc+aR3N1PAyHL7p6UcLY6LmrnA==", "requires": { "inherits": "^2.0.3", "is-arguments": "^1.0.4", "is-generator-function": "^1.0.7", "is-typed-array": "^1.1.3", - "safe-buffer": "^5.1.2", "which-typed-array": "^1.1.2" } }, @@ -11971,9 +13236,10 @@ "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==" }, "uuid": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.4.0.tgz", - "integrity": "sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==" + "version": "8.3.2", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz", + "integrity": "sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==", + "optional": true }, "verror": { "version": "1.10.0", @@ -11985,18 +13251,10 @@ "extsprintf": "^1.2.0" } }, - "w3c-hr-time": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/w3c-hr-time/-/w3c-hr-time-1.0.2.tgz", - "integrity": "sha512-z8P5DvDNjKDoFIHK7q8r8lackT6l+jo/Ye3HOle7l9nICP9lf1Ci25fy9vHd0JOWewkIFzXIEig3TdKT7JQ5fQ==", - "requires": { - "browser-process-hrtime": "^1.0.0" - } - }, "w3c-xmlserializer": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/w3c-xmlserializer/-/w3c-xmlserializer-3.0.0.tgz", - "integrity": "sha512-3WFqGEgSXIyGhOmAFtlicJNMjEps8b1MG31NCA0/vOF9+nKMUW1ckhi9cnNHmf88Rzw5V+dwIwsm2C7X8k9aQg==", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/w3c-xmlserializer/-/w3c-xmlserializer-4.0.0.tgz", + "integrity": "sha512-d+BFHzbiCx6zGfz0HyQ6Rg69w9k19nviJspaj4yNscGjrHu94sVP+aRm75yEbCh+r2/yR+7q6hux9LVtbuTGBw==", "requires": { "xml-name-validator": "^4.0.0" } @@ -12029,37 +13287,25 @@ "integrity": "sha512-nt+N2dzIutVRxARx1nghPKGv1xHikU7HKdfafKkLNLindmPU/ch3U31NOCGGA/dmPcmb1VlofO0vnKAcsm0o/Q==" }, "whatwg-url": { - "version": "10.0.0", - "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-10.0.0.tgz", - "integrity": "sha512-CLxxCmdUby142H5FZzn4D8ikO1cmypvXVQktsgosNy4a4BHrDHeciBBGZhb0bNoR5/MltoCatso+vFjjGx8t0w==", + "version": "11.0.0", + "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-11.0.0.tgz", + "integrity": "sha512-RKT8HExMpoYx4igMiVMY83lN6UeITKJlBQ+vR/8ZJ8OCdSiN3RwCq+9gH0+Xzj0+5IrM6i4j/6LuvzbZIQgEcQ==", "requires": { "tr46": "^3.0.0", "webidl-conversions": "^7.0.0" } }, - "which-boxed-primitive": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/which-boxed-primitive/-/which-boxed-primitive-1.0.2.tgz", - "integrity": "sha512-bwZdv0AKLpplFY2KZRX6TvyuN7ojjr7lwkg6ml0roIy9YeuSr7JS372qlNW18UQYzgYK9ziGcerWqZOmEn9VNg==", - "requires": { - "is-bigint": "^1.0.1", - "is-boolean-object": "^1.1.0", - "is-number-object": "^1.0.4", - "is-string": "^1.0.5", - "is-symbol": "^1.0.3" - } - }, "which-typed-array": { - "version": "1.1.8", - "resolved": "https://registry.npmjs.org/which-typed-array/-/which-typed-array-1.1.8.tgz", - "integrity": "sha512-Jn4e5PItbcAHyLoRDwvPj1ypu27DJbtdYXUa5zsinrUx77Uvfb0cXwwnGMTn7cjUfhhqgVQnVJCwF+7cgU7tpw==", + "version": "1.1.9", + "resolved": "https://registry.npmjs.org/which-typed-array/-/which-typed-array-1.1.9.tgz", + "integrity": "sha512-w9c4xkx6mPidwp7180ckYWfMmvxpjlZuIudNtDf4N/tTAUB8VJbX25qZoAsrtGuYNnGw3pa0AXgbGKRB8/EceA==", "requires": { "available-typed-arrays": "^1.0.5", "call-bind": "^1.0.2", - "es-abstract": "^1.20.0", "for-each": "^0.3.3", + "gopd": "^1.0.1", "has-tostringtag": "^1.0.0", - "is-typed-array": "^1.1.9" + "is-typed-array": "^1.1.10" } }, "wide-align": { @@ -12081,9 +13327,9 @@ "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==" }, "ws": { - "version": "8.9.0", - "resolved": "https://registry.npmjs.org/ws/-/ws-8.9.0.tgz", - "integrity": "sha512-Ja7nszREasGaYUYCI2k4lCKIRTt+y7XuqVoHR44YpI49TtryyqbqvDMn5eqfW7e6HzTukDRIsXqzVHScqRcafg==", + "version": "8.11.0", + "resolved": "https://registry.npmjs.org/ws/-/ws-8.11.0.tgz", + "integrity": "sha512-HPG3wQd9sNQoT9xHyNCXoDUa+Xw/VevmY9FoHyQ+g+rrMn4j6FB4np7Z0OhdTgjx6MgQLK7jwSy1YecU1+4Asg==", "requires": {} }, "xhr": { @@ -12145,11 +13391,6 @@ "miniget": "^4.2.2", "sax": "^1.1.3" } - }, - "zod": { - "version": "3.19.1", - "resolved": "https://registry.npmjs.org/zod/-/zod-3.19.1.tgz", - "integrity": "sha512-LYjZsEDhCdYET9ikFu6dVPGp2YH9DegXjdJToSzD9rO6fy4qiRYFoyEYwps88OseJlPyl2NOe2iJuhEhL7IpEA==" } } } diff --git a/package.json b/package.json index 8cc632b..f492bda 100644 --- a/package.json +++ b/package.json @@ -1,7 +1,7 @@ { "name": "discordbot", - "version": "9.0.4", - "description": "DiscordBot is a bot with which you can run your entire server! With no less than 400+ commands", + "version": "10.0.0", + "description": "Discord Bot is a bot with which you can run your entire server! With no less than 400+ commands", "main": "./src/index.js", "scripts": { "test": "echo \"Error: no test specified\" && exit 1", @@ -26,51 +26,48 @@ "author": "CorwinDev", "license": "ISC", "dependencies": { - "@discordjs/builders": "^0.11.0", - "@discordjs/rest": "^0.1.0-canary.0", - "@discordjs/voice": "^0.7.5", + "@discordjs/voice": "^0.14.0", "@haileybot/captcha-generator": "^1.7.0", - "@iamtraction/google-translate": "^1.1.2", + "@iamtraction/google-translate": "^2.0.1", "@top-gg/sdk": "^3.1.3", - "axios": "^0.24.0", - "canvacord": "^5.2.3", + "axios": "^1.2.1", + "canvacord": "^5.4.8", "chalk": "^4.1.2", - "discord-api-types": "^0.26.0", - "discord-giveaways": "^5.1.1", - "discord-image-generation": "^1.4.9", - "discord.js": "^13.5.1", - "dompurify": "^2.3.5", - "dotenv": "^10.0.0", - "erela.js": "^2.3.3", + "discord-giveaways": "^6.0.1", + "discord-image-generation": "^1.4.15", + "discord.js": "^14.7.1", + "dompurify": "^2.4.1", + "dotenv": "^16.0.3", + "erela.js": "^2.4.0", "erela.js-apple": "^1.2.6", "erela.js-deezer": "^1.0.7", "erela.js-facebook": "^1.0.4", "erela.js-spotify": "^1.2.0", "figlet": "^1.5.2", "fs": "^0.0.1-security", - "generate-password": "^1.6.1", + "generate-password": "^1.7.0", "giphy-api": "^2.0.2", "hdqwalls-wrapper": "^1.0.4", "he": "^1.2.0", - "html-entities": "^2.3.2", + "html-entities": "^2.3.3", "i": "^0.3.7", "is-hexcolor": "^1.0.0", "isgd": "^1.1.3", - "jsdom": "^18.1.0", - "libsodium-wrappers": "^0.7.9", + "jsdom": "^20.0.3", + "libsodium-wrappers": "^0.7.10", "lyrics-finder": "^21.7.0", - "mathjs": "^10.0.2", - "moment": "^2.29.1", + "mathjs": "^11.5.0", + "moment": "^2.29.4", "moment-duration-format": "^2.3.2", - "moment-timezone": "^0.5.33", - "mongoose": "^6.0.13", + "moment-timezone": "^0.5.39", + "mongoose": "^6.8.0", "ms": "^2.1.3", - "npm": "^8.3.0", - "popcat-wrapper": "^1.5.0", - "sourcebin": "^4.2.5", + "npm": "^9.2.0", + "popcat-wrapper": "^1.5.4", + "sourcebin": "^5.0.0", "topgg-autoposter": "^2.0.1", - "util": "^0.12.4", + "util": "^0.12.5", "weather-js": "^2.0.0", - "ytdl-core": "^4.9.2" + "ytdl-core": "^4.11.2" } } diff --git a/src/assets/utils/TriviaPlayer.js b/src/assets/utils/TriviaPlayer.js index 7dd34d3..e75e430 100644 --- a/src/assets/utils/TriviaPlayer.js +++ b/src/assets/utils/TriviaPlayer.js @@ -249,8 +249,17 @@ class TriviaPlayer { }); this.audioPlayer.play(resource); } catch (err) { - console.error(err); - return this.process(queue); + console.log(err.message) + if (err.message === 'FFmpeg/avconv not found!') { + this.textChannel.client.embed({ + title: `🎶・Music Quiz`, + desc: `FFmpg/avconv not found!`, + edit: true + }, this.textChannel) + return this.stop(); + } else { + return this.process(queue); + } } } } diff --git a/src/bot.js b/src/bot.js index 13ecdaa..eddfb09 100644 --- a/src/bot.js +++ b/src/bot.js @@ -21,29 +21,30 @@ const client = new Discord.Client({ "TYPING_START" ], partials: [ - 'USER', - 'CHANNEL', - 'GUILD_MEMBER', - 'MESSAGE', - 'REACTION', - 'GUILD_SCHEDULED_EVENT' + Discord.Partials.Channel, + Discord.Partials.GuildMember, + Discord.Partials.Message, + Discord.Partials.Reaction, + Discord.Partials.User, + Discord.Partials.GuildScheduledEvent ], intents: [ - Discord.Intents.FLAGS.GUILDS, - Discord.Intents.FLAGS.GUILD_MEMBERS, - Discord.Intents.FLAGS.GUILD_BANS, - Discord.Intents.FLAGS.GUILD_EMOJIS_AND_STICKERS, - Discord.Intents.FLAGS.GUILD_INTEGRATIONS, - Discord.Intents.FLAGS.GUILD_WEBHOOKS, - Discord.Intents.FLAGS.GUILD_INVITES, - Discord.Intents.FLAGS.GUILD_VOICE_STATES, - Discord.Intents.FLAGS.GUILD_MESSAGES, - Discord.Intents.FLAGS.GUILD_MESSAGE_REACTIONS, - Discord.Intents.FLAGS.GUILD_MESSAGE_TYPING, - Discord.Intents.FLAGS.DIRECT_MESSAGES, - Discord.Intents.FLAGS.DIRECT_MESSAGE_REACTIONS, - Discord.Intents.FLAGS.DIRECT_MESSAGE_TYPING, - Discord.Intents.FLAGS.GUILD_SCHEDULED_EVENTS, + Discord.GatewayIntentBits.Guilds, + Discord.GatewayIntentBits.GuildMembers, + Discord.GatewayIntentBits.GuildBans, + Discord.GatewayIntentBits.GuildEmojisAndStickers, + Discord.GatewayIntentBits.GuildIntegrations, + Discord.GatewayIntentBits.GuildWebhooks, + Discord.GatewayIntentBits.GuildInvites, + Discord.GatewayIntentBits.GuildVoiceStates, + Discord.GatewayIntentBits.GuildMessages, + Discord.GatewayIntentBits.GuildMessageReactions, + Discord.GatewayIntentBits.GuildMessageTyping, + Discord.GatewayIntentBits.DirectMessages, + Discord.GatewayIntentBits.DirectMessageReactions, + Discord.GatewayIntentBits.DirectMessageTyping, + Discord.GatewayIntentBits.GuildScheduledEvents, + Discord.GatewayIntentBits.MessageContent ], restTimeOffset: 0 }); @@ -51,33 +52,54 @@ const client = new Discord.Client({ const clientID = process.env.SPOTIFY_CLIENT_ID; const clientSecret = process.env.SPOTIFY_CLIENT_SECRET; - -// Lavalink client -client.player = new Manager({ - plugins: [ - new AppleMusic(), - new Deezer(), - new Facebook(), - new Spotify({ - clientID, - clientSecret, - playlistLimit: 100, - albumLimit: 100 - }) - ], - nodes: [ - { - host: process.env.LAVALINK_HOST, - port: parseInt(process.env.LAVALINK_PORT), - password: process.env.LAVALINK_PASSWORD, +if (clientID && clientSecret) { + // Lavalink client + client.player = new Manager({ + plugins: [ + new AppleMusic(), + new Deezer(), + new Facebook(), + new Spotify({ + clientID, + clientSecret, + playlistLimit: 100, + albumLimit: 100 + }) + ], + nodes: [ + { + host: process.env.LAVALINK_HOST || "lava.link", + port: parseInt(process.env.LAVALINK_PORT) || 80, + password: process.env.LAVALINK_PASSWORD || "CorwinDev" + }, + ], + send(id, payload) { + const guild = client.guilds.cache.get(id); + if (guild) guild.shard.send(payload); }, - ], - send(id, payload) { - const guild = client.guilds.cache.get(id); - if (guild) guild.shard.send(payload); - }, -}) + }) +} else { + // Lavalink client + client.player = new Manager({ + plugins: [ + new AppleMusic(), + new Deezer(), + new Facebook(), + ], + nodes: [ + { + host: process.env.LAVALINK_HOST || "lava.link", + port: parseInt(process.env.LAVALINK_PORT) || 80, + password: process.env.LAVALINK_PASSWORD || "CorwinDev" + }, + ], + send(id, payload) { + const guild = client.guilds.cache.get(id); + if (guild) guild.shard.send(payload); + } + }) +} const events = fs.readdirSync(`./src/events/music`).filter(files => files.endsWith('.js')); for (const file of events) { @@ -93,6 +115,49 @@ client.config = require('./config/bot'); client.changelogs = require('./config/changelogs'); client.emotes = require("./config/emojis.json"); client.webhooks = require("./config/webhooks.json"); +if (process.env.WEBHOOK_ID && process.env.WEBHOOK_TOKEN) { + client.webhooks.startLogs.id = process.env.WEBHOOK_ID; + client.webhooks.startLogs.token = process.env.WEBHOOK_TOKEN; + + client.webhooks.shardLogs.id = process.env.WEBHOOK_ID; + client.webhooks.shardLogs.token = process.env.WEBHOOK_TOKEN; + + client.webhooks.errorLogs.id = process.env.WEBHOOK_ID; + client.webhooks.errorLogs.token = process.env.WEBHOOK_TOKEN; + + client.webhooks.dmLogs.id = process.env.WEBHOOK_ID; + client.webhooks.dmLogs.token = process.env.WEBHOOK_TOKEN; + + client.webhooks.voiceLogs.id = process.env.WEBHOOK_ID; + client.webhooks.voiceLogs.token = process.env.WEBHOOK_TOKEN; + + client.webhooks.serverLogs.id = process.env.WEBHOOK_ID; + client.webhooks.serverLogs.token = process.env.WEBHOOK_TOKEN; + + client.webhooks.serverLogs2.id = process.env.WEBHOOK_ID; + client.webhooks.serverLogs2.token = process.env.WEBHOOK_TOKEN; + + client.webhooks.commandLogs.id = process.env.WEBHOOK_ID; + client.webhooks.commandLogs.token = process.env.WEBHOOK_TOKEN; + + client.webhooks.consoleLogs.id = process.env.WEBHOOK_ID; + client.webhooks.consoleLogs.token = process.env.WEBHOOK_TOKEN; + + client.webhooks.warnLogs.id = process.env.WEBHOOK_ID; + client.webhooks.warnLogs.token = process.env.WEBHOOK_TOKEN; + + client.webhooks.voiceErrorLogs.id = process.env.WEBHOOK_ID; + client.webhooks.voiceErrorLogs.token = process.env.WEBHOOK_TOKEN; + + client.webhooks.creditLogs.id = process.env.WEBHOOK_ID; + client.webhooks.creditLogs.token = process.env.WEBHOOK_TOKEN; + + client.webhooks.evalLogs.id = process.env.WEBHOOK_ID; + client.webhooks.evalLogs.token = process.env.WEBHOOK_TOKEN; + + client.webhooks.interactionLogs.id = process.env.WEBHOOK_ID; + client.webhooks.interactionLogs.token = process.env.WEBHOOK_TOKEN; +} client.commands = new Discord.Collection(); client.playerManager = new Map(); client.triviaManager = new Map(); @@ -119,10 +184,21 @@ fs.readdirSync('./src/handlers').forEach((dir) => { client.login(process.env.DISCORD_TOKEN); process.on('unhandledRejection', error => { - const embed = new Discord.MessageEmbed() + console.error('Unhandled promise rejection:', error); + if (error) if (error.length > 950) error = error.slice(0, 950) + '... view console for details'; + if (error.stack) if (error.stack.length > 950) error.stack = error.stack.slice(0, 950) + '... view console for details'; + const embed = new Discord.EmbedBuilder() .setTitle(`🚨・Unhandled promise rejection`) - .addField(`Error`, `\`\`\`${error}\`\`\``) - .addField(`Stack error`, `\`\`\`${error.stack}\`\`\``) + .addFields([ + { + name: "Error", + value: error ? Discord.codeBlock(error) : "No error", + }, + { + name: "Stack error", + value: error.stack ? Discord.codeBlock(error.stack) : "No stack error", + } + ]) .setColor(client.config.colors.normal) consoleLogs.send({ username: 'Bot Logs', @@ -133,9 +209,14 @@ process.on('unhandledRejection', error => { }); process.on('warning', warn => { - const embed = new Discord.MessageEmbed() + const embed = new Discord.EmbedBuilder() .setTitle(`🚨・New warning found`) - .addField(`Warn`, `\`\`\`${warn}\`\`\``) + .addFields([ + { + name: `Warn`, + value: `\`\`\`${warn}\`\`\``, + }, + ]) .setColor(client.config.colors.normal) warnLogs.send({ username: 'Bot Logs', @@ -146,10 +227,18 @@ process.on('warning', warn => { }); client.on('shardError', error => { - const embed = new Discord.MessageEmbed() + const embed = new Discord.EmbedBuilder() .setTitle(`🚨・A websocket connection encountered an error`) - .addField(`Error`, `\`\`\`${error}\`\`\``) - .addField(`Stack error`, `\`\`\`${error.stack}\`\`\``) + .addFields([ + { + name: `Error`, + value: `\`\`\`${error}\`\`\``, + }, + { + name: `Stack error`, + value: `\`\`\`${error.stack}\`\`\``, + } + ]) .setColor(client.config.colors.normal) consoleLogs.send({ username: 'Bot Logs', @@ -157,4 +246,3 @@ client.on('shardError', error => { }); }); - \ No newline at end of file diff --git a/src/commands/afk/set.js b/src/commands/afk/set.js index 73b3b05..09c208f 100644 --- a/src/commands/afk/set.js +++ b/src/commands/afk/set.js @@ -24,8 +24,8 @@ module.exports = async (client, interaction, args) => { } client.succNormal({ - text: `Your AFK has been set up succesfully`, - type: 'ephemeral' + text: `Your AFK has been set up successfully`, + type: 'ephemeraledit' }, interaction); client.embed({ diff --git a/src/commands/autosetup/customvoice.js b/src/commands/autosetup/customvoice.js index 594a46b..e440186 100644 --- a/src/commands/autosetup/customvoice.js +++ b/src/commands/autosetup/customvoice.js @@ -3,15 +3,17 @@ const Discord = require('discord.js'); const voiceSchema = require("../../database/models/voice"); module.exports = async (client, interaction, args) => { - interaction.guild.channels.create("Custom voice", { - type: "GUILD_CATEGORY" + interaction.guild.channels.create({ + name: "Custom voice", + type: Discord.ChannelType.GuildCategory, }).then((cat) => { - interaction.guild.channels.create("➕ Create Voice", { - type: "GUILD_VOICE", + interaction.guild.channels.create({ + name: "➕ Create Voice", + type: Discord.ChannelType.GuildVoice, parent: cat.id, permissionOverwrites: [ { - deny: 'SPEAK', + deny: [Discord.PermissionsBitField.Flags.Speak], id: interaction.guild.id }, ], @@ -47,4 +49,3 @@ module.exports = async (client, interaction, args) => { }) } - \ No newline at end of file diff --git a/src/commands/autosetup/fun.js b/src/commands/autosetup/fun.js index 913ee77..2e5581c 100644 --- a/src/commands/autosetup/fun.js +++ b/src/commands/autosetup/fun.js @@ -10,44 +10,48 @@ module.exports = async (client, interaction, args) => { const choice = interaction.options.getString('setup'); if (choice == "birthdays") { - interaction.guild.channels.create("birthdays", { - type: "GUILD_TEXT" + interaction.guild.channels.create({ + name: "birthdays", + type: Discord.ChannelType.GuildText }).then((ch) => { client.createChannelSetup(Birthdays, ch, interaction) }) } if (choice == "chatbot") { - interaction.guild.channels.create("chatbot", { - type: "GUILD_TEXT" + interaction.guild.channels.create({ + name: "chatbot", + type: Discord.ChannelType.GuildText }).then((ch) => { client.createChannelSetup(Chatbot, ch, interaction) }) } if (choice == "reviews") { - interaction.guild.channels.create("reviews", { - type: "GUILD_TEXT" + interaction.guild.channels.create({ + name: "reviews", + type: Discord.ChannelType.GuildText }).then((ch) => { client.createChannelSetup(Review, ch, interaction) }) } if (choice == "suggestions") { - interaction.guild.channels.create("suggestions", { - type: "GUILD_TEXT" + interaction.guild.channels.create({ + name: "suggestions", + type: Discord.ChannelType.GuildText }).then((ch) => { client.createChannelSetup(Suggestion, ch, interaction) }) } if (choice == "starboard") { - interaction.guild.channels.create("starboard", { - type: "GUILD_TEXT" + interaction.guild.channels.create({ + name: "starboard", + type: Discord.ChannelType.GuildText }).then((ch) => { client.createChannelSetup(StarBoard, ch, interaction) }) } } - \ No newline at end of file diff --git a/src/commands/autosetup/games.js b/src/commands/autosetup/games.js index c88a9bb..d1f48ad 100644 --- a/src/commands/autosetup/games.js +++ b/src/commands/autosetup/games.js @@ -9,8 +9,9 @@ module.exports = async (client, interaction, args) => { const choice = interaction.options.getString('setup'); if (choice == "counting") { - interaction.guild.channels.create("counting", { - type: "GUILD_TEXT" + interaction.guild.channels.create({ + name: "counting", + type: Discord.ChannelType.GuildText }).then((ch) => { client.embed({ title: `🔢・Counting`, @@ -22,10 +23,11 @@ module.exports = async (client, interaction, args) => { } if (choice == "gtn") { - interaction.guild.channels.create("guess-the-number", { - type: "GUILD_TEXT" + interaction.guild.channels.create({ + name:"guess-the-number", + type: Discord.ChannelType.GuildText }).then((ch) => { - client.embed({ + client.embed({ title: `🔢・Guess the number`, desc: `Guess the number between **1** and **10.000**!` }, ch) @@ -35,13 +37,14 @@ module.exports = async (client, interaction, args) => { } if (choice == "gtw") { - interaction.guild.channels.create("guess-the-word", { - type: "GUILD_TEXT" + interaction.guild.channels.create({ + name: "guess-the-word", + type: Discord.ChannelType.GuildText }).then((ch) => { var word = "start"; var shuffled = word.split('').sort(function () { return 0.5 - Math.random() }).join(''); - client.embed({ + client.embed({ title: `💬・Guess the word`, desc: `Put the letters in the right position!`, fields: [ @@ -51,18 +54,18 @@ module.exports = async (client, interaction, args) => { } ], }, ch) - + client.createChannelSetup(GTW, ch, interaction) }) } if (choice == "wordsnake") { - interaction.guild.channels.create("word-snake", { - type: "GUILD_TEXT" + interaction.guild.channels.create({ + name: "word-snake", + type: Discord.ChannelType.GuildText }).then((ch) => { client.createChannelSetup(WordSnake, ch, interaction) }) } } - \ No newline at end of file diff --git a/src/commands/autosetup/logs.js b/src/commands/autosetup/logs.js index bf5d848..25e2d78 100644 --- a/src/commands/autosetup/logs.js +++ b/src/commands/autosetup/logs.js @@ -8,34 +8,36 @@ module.exports = async (client, interaction, args) => { const choice = interaction.options.getString('setup'); if (choice == "serverLogs") { - interaction.guild.channels.create("server-logs", { + interaction.guild.channels.create({ + name: "server-logs", permissionOverwrites: [ { - deny: 'VIEW_CHANNEL', + deny: [Discord.PermissionsBitField.Flags.ViewChannel], id: interaction.guild.id }, ], - type: "GUILD_TEXT" + type: Discord.ChannelType.GuildText }).then((ch) => { client.createChannelSetup(logs, ch, interaction) }) } if (choice == "levelLogs") { - interaction.guild.channels.create("level-logs", { - type: "GUILD_TEXT" + interaction.guild.channels.create({ + name: "level-logs", + type: Discord.ChannelType.GuildText }).then((ch) => { client.createChannelSetup(levelLogs, ch, interaction) }) } if (choice == "boostLogs") { - interaction.guild.channels.create("boosts", { - type: "GUILD_TEXT" + interaction.guild.channels.create({ + name: "boosts", + type: Discord.ChannelType.GuildText }).then((ch) => { client.createChannelSetup(boostLogs, ch, interaction) }) } } - \ No newline at end of file diff --git a/src/commands/autosetup/ticketpanel.js b/src/commands/autosetup/ticketpanel.js index 4372b1e..ee85d75 100644 --- a/src/commands/autosetup/ticketpanel.js +++ b/src/commands/autosetup/ticketpanel.js @@ -6,13 +6,13 @@ module.exports = async (client, interaction, args) => { ticketSchema.findOne({ Guild: interaction.guild.id }, async (err, ticketData) => { if (ticketData) { const channel = interaction.guild.channels.cache.get(ticketData.Channel); - const button = new Discord.MessageButton() + const button = new Discord.ButtonBuilder() .setCustomId('Bot_openticket') .setLabel("Tickets") - .setStyle('PRIMARY') + .setStyle(Discord.ButtonStyle.Primary) .setEmoji('🎫') - const row = new Discord.MessageActionRow() + const row = new Discord.ActionRowBuilder() .addComponents(button) client.embed({ diff --git a/src/commands/autosetup/welcome.js b/src/commands/autosetup/welcome.js index 810aca4..5ba4b20 100644 --- a/src/commands/autosetup/welcome.js +++ b/src/commands/autosetup/welcome.js @@ -8,8 +8,9 @@ module.exports = async (client, interaction, args) => { const choice = interaction.options.getString('setup'); if (choice == "welcomechannel") { - interaction.guild.channels.create("Welcome", { - type: "GUILD_TEXT" + interaction.guild.channels.create({ + name: "Welcome", + type: Discord.ChannelType.GuildText }).then((ch) => { client.createChannelSetup(welcomeChannel, ch, interaction) }) @@ -25,8 +26,9 @@ module.exports = async (client, interaction, args) => { } if (choice == "leavechannel") { - interaction.guild.channels.create("Bye", { - type: "GUILD_TEXT" + interaction.guild.channels.create({ + name: "Bye", + type: Discord.ChannelType.GuildText }).then((ch) => { client.createChannelSetup(leaveChannel, ch, interaction) }) diff --git a/src/commands/bot/donate.js b/src/commands/bot/donate.js index d15d4c4..7c18424 100644 --- a/src/commands/bot/donate.js +++ b/src/commands/bot/donate.js @@ -1,19 +1,19 @@ const Discord = require('discord.js'); module.exports = async (client, interaction, args) => { - let row = new Discord.MessageActionRow() + let row = new Discord.ActionRowBuilder() .addComponents( - new Discord.MessageButton() - .setLabel("Donatebot") - .setURL("https://donatebot.io/checkout/735868402194710530") - .setStyle("LINK"), + new Discord.ButtonBuilder() + .setLabel("CorwinDev GitHub") + .setURL("https://github.com/sponsors/CorwinDev") + .setStyle(Discord.ButtonStyle.Link), ); client.embed({ title: `${client.user.username}・Donate`, - desc: '_____ \n\nClick the button below for the donation page \n**Pay attention! Donating is not required**', + desc: '_____ \n\nClick the button below for the sponsor page \n**Pay attention! sponsor is not required**', thumbnail: client.user.avatarURL({ dynamic: true }), - url: "https://donatebot.io/checkout/735868402194710530", + url: "https://github.com/sponsors/CorwinDev", components: [row], type: 'editreply' }, interaction) diff --git a/src/commands/bot/feedback.js b/src/commands/bot/feedback.js index 9268023..921c958 100644 --- a/src/commands/bot/feedback.js +++ b/src/commands/bot/feedback.js @@ -8,9 +8,11 @@ const webhookClient = new Discord.WebhookClient({ module.exports = async (client, interaction, args) => { const feedback = interaction.options.getString('feedback'); - const embed = new Discord.MessageEmbed() + const embed = new Discord.EmbedBuilder() .setTitle(`📝・New feedback!`) - .addField("User", `${interaction.user} (${interaction.user.tag})`) + .addFields( + { name: "User", value: `${interaction.user} (${interaction.user.tag})`, inline: true }, + ) .setDescription(`${feedback}`) .setColor(client.config.colors.normal) webhookClient.send({ diff --git a/src/commands/bot/links.js b/src/commands/bot/links.js index c54c2b1..7702c8a 100644 --- a/src/commands/bot/links.js +++ b/src/commands/bot/links.js @@ -1,9 +1,9 @@ const Discord = require('discord.js'); module.exports = async (client, interaction, args) => { - const row = new Discord.MessageActionRow() + const row = new Discord.ActionRowBuilder() .addComponents( - new Discord.MessageSelectMenu() + new Discord.StringSelectMenuBuilder() .setCustomId('Bot-linkspanel') .setPlaceholder('❌┆Nothing selected') .addOptions([ diff --git a/src/commands/bot/support.js b/src/commands/bot/support.js index 8a2c3a0..7117104 100644 --- a/src/commands/bot/support.js +++ b/src/commands/bot/support.js @@ -1,12 +1,12 @@ const Discord = require('discord.js'); module.exports = async (client, interaction, args) => { - let row = new Discord.MessageActionRow() + let row = new Discord.ActionRowBuilder() .addComponents( - new Discord.MessageButton() + new Discord.ButtonBuilder() .setLabel("Support server") .setURL(client.config.discord.serverInvite) - .setStyle("LINK"), + .setStyle(Discord.ButtonStyle.Link), ); client.embed({ diff --git a/src/commands/bot/vote.js b/src/commands/bot/vote.js index e912e20..7b2cc98 100644 --- a/src/commands/bot/vote.js +++ b/src/commands/bot/vote.js @@ -6,12 +6,12 @@ require("moment-duration-format"); module.exports = async (client, interaction, args) => { let dbl = new Topgg.Api(process.env.TOPGG_TOKEN) - let row = new Discord.MessageActionRow() + let row = new Discord.ActionRowBuilder() .addComponents( - new Discord.MessageButton() + new Discord.ButtonBuilder() .setLabel("Vote for me") .setURL("https://top.gg/bot/798144456528363550/vote") - .setStyle("LINK"), + .setStyle(Discord.ButtonStyle.Link), ); dbl.hasVoted(interaction.user.id).then(voted => { diff --git a/src/commands/casino/blackjack.js b/src/commands/casino/blackjack.js index f48c6ce..f32e904 100644 --- a/src/commands/casino/blackjack.js +++ b/src/commands/casino/blackjack.js @@ -132,17 +132,17 @@ module.exports = async (client, interaction, args) => { dealerMsg += " > " + dealer.score.toString(); } - const row = new Discord.MessageActionRow() + const row = new Discord.ActionRowBuilder() .addComponents( - new Discord.MessageButton() + new Discord.ButtonBuilder() .setCustomId('blackjack_hit') .setLabel(`Hit`) - .setStyle('PRIMARY'), + .setStyle(Discord.ButtonStyle.Primary), - new Discord.MessageButton() + new Discord.ButtonBuilder() .setCustomId('blackjack_stand') .setLabel(`Stand`) - .setStyle('PRIMARY'), + .setStyle(Discord.ButtonStyle.Primary), ) if (cl) { diff --git a/src/commands/casino/crash.js b/src/commands/casino/crash.js index 4e2a187..3dca718 100644 --- a/src/commands/casino/crash.js +++ b/src/commands/casino/crash.js @@ -13,20 +13,20 @@ module.exports = async (client, interaction, args) => { if (money > data.Money) return client.errNormal({ error: `You are betting more than you have!`, type: 'editreply' }, interaction); - const row = new Discord.MessageActionRow() + const row = new Discord.ActionRowBuilder() .addComponents( - new Discord.MessageButton() + new Discord.ButtonBuilder() .setCustomId('crash_stop') .setEmoji("🛑") - .setStyle('DANGER'), + .setStyle(Discord.ButtonStyle.Danger), ) - const disableRow = new Discord.MessageActionRow() + const disableRow = new Discord.ActionRowBuilder() .addComponents( - new Discord.MessageButton() + new Discord.ButtonBuilder() .setCustomId('crash_stop') .setEmoji("🛑") - .setStyle('DANGER') + .setStyle(Discord.ButtonStyle.Danger) .setDisabled(true), ) diff --git a/src/commands/casino/slots.js b/src/commands/casino/slots.js index b06d471..14e6944 100644 --- a/src/commands/casino/slots.js +++ b/src/commands/casino/slots.js @@ -26,22 +26,22 @@ module.exports = async (client, interaction, args) => { win = true; } - const row = new Discord.MessageActionRow() + const row = new Discord.ActionRowBuilder() .addComponents( - new Discord.MessageButton() + new Discord.ButtonBuilder() .setCustomId('slots_1') .setLabel(`${slotItems[number[0]]}`) - .setStyle('PRIMARY'), + .setStyle(Discord.ButtonStyle.Primary), - new Discord.MessageButton() + new Discord.ButtonBuilder() .setCustomId('slots_2') .setLabel(`${slotItems[number[1]]}`) - .setStyle('PRIMARY'), + .setStyle(Discord.ButtonStyle.Primary), - new Discord.MessageButton() + new Discord.ButtonBuilder() .setCustomId('slots_3') .setLabel(`${slotItems[number[2]]}`) - .setStyle('PRIMARY'), + .setStyle(Discord.ButtonStyle.Primary), ); if (win) { diff --git a/src/commands/config/leavemessage.js b/src/commands/config/leavemessage.js index ffd4f7d..4685847 100644 --- a/src/commands/config/leavemessage.js +++ b/src/commands/config/leavemessage.js @@ -4,8 +4,8 @@ const inviteMessages = require("../../database/models/inviteMessages"); module.exports = async (client, interaction, args) => { const perms = await client.checkUserPerms({ - flags: [Discord.Permissions.FLAGS.MANAGE_MESSAGES], - perms: ["MANAGE_MESSAGES"] + flags: [Discord.PermissionsBitField.Flags.ManageMessages], + perms: [Discord.PermissionsBitField.Flags.ManageMessages] }, interaction) if (perms == false) return; diff --git a/src/commands/config/levelmessage.js b/src/commands/config/levelmessage.js index f3487c8..8035a63 100644 --- a/src/commands/config/levelmessage.js +++ b/src/commands/config/levelmessage.js @@ -4,8 +4,8 @@ const Schema = require("../../database/models/levelMessages"); module.exports = async (client, interaction, args) => { const perms = await client.checkUserPerms({ - flags: [Discord.Permissions.FLAGS.MANAGE_MESSAGES], - perms: ["MANAGE_MESSAGES"] + flags: [Discord.PermissionsBitField.Flags.ManageMessages], + perms: [Discord.PermissionsBitField.Flags.ManageMessages] }, interaction) if (perms == false) return; diff --git a/src/commands/config/levels.js b/src/commands/config/levels.js index c4c9b90..2a8cabc 100644 --- a/src/commands/config/levels.js +++ b/src/commands/config/levels.js @@ -4,8 +4,8 @@ const Schema = require("../../database/models/functions"); module.exports = async (client, interaction, args) => { const perms = await client.checkUserPerms({ - flags: [Discord.Permissions.FLAGS.MANAGE_MESSAGES], - perms: ["MANAGE_MESSAGES"] + flags: [Discord.PermissionsBitField.Flags.ManageMessages], + perms: [Discord.PermissionsBitField.Flags.ManageMessages] }, interaction) if (perms == false) return; diff --git a/src/commands/config/setchannelname.js b/src/commands/config/setchannelname.js index d3e2d54..446b6bd 100644 --- a/src/commands/config/setchannelname.js +++ b/src/commands/config/setchannelname.js @@ -4,8 +4,8 @@ const Schema = require("../../database/models/stats"); module.exports = async (client, interaction, args) => { const perms = await client.checkUserPerms({ - flags: [Discord.Permissions.FLAGS.MANAGE_CHANNELS], - perms: ["MANAGE_CHANNELS"] + flags: [Discord.PermissionsBitField.Flags.ManageChannels], + perms: [Discord.PermissionsBitField.Flags.ManageChannels] }, interaction) if (perms == false) return; diff --git a/src/commands/config/setcolor.js b/src/commands/config/setcolor.js index c98a75f..6f72605 100644 --- a/src/commands/config/setcolor.js +++ b/src/commands/config/setcolor.js @@ -4,8 +4,8 @@ const Schema = require("../../database/models/functions"); module.exports = async (client, interaction, args) => { const perms = await client.checkUserPerms({ - flags: [Discord.Permissions.FLAGS.ADMINISTRATOR], - perms: ["ADMINISTRATOR"] + flags: [Discord.PermissionsBitField.Flags.Administrator], + perms: [Discord.PermissionsBitField.Flags.Administrator] }, interaction) if (perms == false) return; diff --git a/src/commands/config/setverify.js b/src/commands/config/setverify.js index ab73f5e..8db1f98 100644 --- a/src/commands/config/setverify.js +++ b/src/commands/config/setverify.js @@ -4,8 +4,8 @@ const Schema = require("../../database/models/verify"); module.exports = async (client, interaction, args) => { const perms = await client.checkUserPerms({ - flags: [Discord.Permissions.FLAGS.MANAGE_MESSAGES], - perms: ["MANAGE_MESSAGES"] + flags: [Discord.PermissionsBitField.Flags.ManageMessages], + perms: [Discord.PermissionsBitField.Flags.ManageMessages] }, interaction) if (perms == false) return; @@ -46,12 +46,12 @@ module.exports = async (client, interaction, args) => { type: 'editreply' }, interaction); - const row = new Discord.MessageActionRow() + const row = new Discord.ActionRowBuilder() .addComponents( - new Discord.MessageButton() + new Discord.ButtonBuilder() .setCustomId('Bot_verify') .setEmoji('✅') - .setStyle('SUCCESS'), + .setStyle(Discord.ButtonStyle.Success), ); client.embed({ diff --git a/src/commands/config/ticketmessage.js b/src/commands/config/ticketmessage.js index c46fed4..024ca56 100644 --- a/src/commands/config/ticketmessage.js +++ b/src/commands/config/ticketmessage.js @@ -4,8 +4,8 @@ const Schema = require("../../database/models/ticketMessage"); module.exports = async (client, interaction, args) => { const perms = await client.checkUserPerms({ - flags: [Discord.Permissions.FLAGS.MANAGE_MESSAGES], - perms: ["MANAGE_MESSAGES"] + flags: [Discord.PermissionsBitField.Flags.ManageMessages], + perms: [Discord.PermissionsBitField.Flags.ManageMessages] }, interaction) if (perms == false) return; diff --git a/src/commands/config/welcomemessage.js b/src/commands/config/welcomemessage.js index cd8b65d..9607653 100644 --- a/src/commands/config/welcomemessage.js +++ b/src/commands/config/welcomemessage.js @@ -4,8 +4,8 @@ const inviteMessages = require("../../database/models/inviteMessages"); module.exports = async (client, interaction, args) => { const perms = await client.checkUserPerms({ - flags: [Discord.Permissions.FLAGS.MANAGE_MESSAGES], - perms: ["MANAGE_MESSAGES"] + flags: [Discord.PermissionsBitField.Flags.ManageMessages], + perms: [Discord.PermissionsBitField.Flags.ManageMessages] }, interaction) if (perms == false) return; diff --git a/src/commands/custom-commands/add.js b/src/commands/custom-commands/add.js index 0c5b39a..dcedb7e 100644 --- a/src/commands/custom-commands/add.js +++ b/src/commands/custom-commands/add.js @@ -10,9 +10,9 @@ module.exports = async (client, interaction, args) => { client.errNormal({ error: "This command name is already added in guild custom commands!", type: 'editreply' }, interaction); } else { - const row = new Discord.MessageActionRow() + const row = new Discord.ActionRowBuilder() .addComponents( - new Discord.MessageSelectMenu() + new Discord.StringSelectMenuBuilder() .setCustomId('customSelect') .setPlaceholder('❌┆Nothing selected') .addOptions( @@ -42,6 +42,7 @@ module.exports = async (client, interaction, args) => { interaction.channel.awaitMessageComponent({ filter, max: 1 }).then(async i => { if (i.customId == 'customSelect') { + await i.deferUpdate(); if (i.values[0] === "command-embed") { new Schema({ Guild: interaction.guild.id, @@ -57,6 +58,7 @@ module.exports = async (client, interaction, args) => { value: `\`\`\`${cmdname.toLowerCase()}\`\`\``, inline: true, }], + components: [], type: 'editreply' }, i); } @@ -76,6 +78,7 @@ module.exports = async (client, interaction, args) => { value: `\`\`\`${cmdname.toLowerCase()}\`\`\``, inline: true, }], + components: [], type: 'editreply' }, i); } @@ -95,6 +98,7 @@ module.exports = async (client, interaction, args) => { value: `\`\`\`${cmdname.toLowerCase()}\`\`\``, inline: true, }], + components: [], type: 'editreply' }, i); } diff --git a/src/commands/custom-commands/delete.js b/src/commands/custom-commands/delete.js index bc7ddd9..dd62ed0 100644 --- a/src/commands/custom-commands/delete.js +++ b/src/commands/custom-commands/delete.js @@ -3,11 +3,13 @@ const Schema = require("../../database/models/customCommandAdvanced"); module.exports = async (client, interaction, args) => { const cmdname = interaction.options.getString('command'); - Schema.findOne({ Guild: interaction.guild.id, Name: cmdname.toLowerCase() }, async (err, data) => { + console.log(data) if (data) { - Schema.findOneAndDelete({ Guild: interaction.guild.id, Name: cmdname }).then(async () => { - const command = await interaction.guild.commands.cache.find((cmd => cmd.name == cmdname)); + Schema.findOneAndDelete({ Guild: interaction.guild.id, Name: cmdname.toLowerCase() }).then(async () => { + var commands = await interaction.guild.commands.fetch() + var command = await commands.find((cmd => cmd.name == cmdname.toLowerCase())) + if(!command) return client.errNormal({ error: "Unable to find this command!", type: 'editreply' }, interaction ); await interaction.guild.commands.delete(command.id); client.succNormal({ diff --git a/src/commands/developers/badge.js b/src/commands/developers/badge.js index 681550d..395935e 100644 --- a/src/commands/developers/badge.js +++ b/src/commands/developers/badge.js @@ -71,11 +71,13 @@ module.exports = async (client, interaction, args) => { }, interaction) } - let embedLogs = new Discord.MessageEmbed() + let embedLogs = new Discord.EmbedBuilder() .setTitle(`📛・Badge added`) .setDescription(`Added a new badge to ${member} (${member.id})`) - .addField('👤┆Added By', `${interaction.user} (${interaction.user.tag})`, true) - .addField(`📛┆Badge`, `${badgeFlags[badge.toUpperCase()]} (${badge.toUpperCase()})`, true) + .addFields( + { name: "👤┆Added By", value: `${interaction.user} (${interaction.user.tag})`, inline: true }, + { name: `📛┆Badge`, value: `${badgeFlags[badge.toUpperCase()]} (${badge.toUpperCase()})`, inline: true }, + ) .setColor(client.config.colors.normal) .setFooter(client.config.discord.footer) .setTimestamp(); @@ -86,7 +88,7 @@ module.exports = async (client, interaction, args) => { } else if (boolean == false) { if (!Badges.FLAGS.includes(badge.toUpperCase())) return client.errNormal({ - error: `The user does not have this badge`, + error: `The user doesn't have that badge`, type: `editreply` }, interaction); @@ -104,7 +106,7 @@ module.exports = async (client, interaction, args) => { if (!array[0]) { let deleted = await model.deleteMany({ User: member.id }); client.succNormal({ - text: `Removed the ${badgeFlags[badge.toUpperCase()]} (${badge.toUpperCase()}) badge, the user is now removed of the badge system, it has no badges left!`, + text: `Removed the ${badgeFlags[badge.toUpperCase()]} (${badge.toUpperCase()}) badge, the user have been removed from the badge system, he has no badges left!`, type: 'editreply' }, interaction); @@ -123,11 +125,13 @@ module.exports = async (client, interaction, args) => { }, interaction); } - let embedLogs = new Discord.MessageEmbed() + let embedLogs = new Discord.EmbedBuilder() .setTitle(`📛・Badge removed`) .setDescription(`Removed a badge from ${member} (${member.id})`) - .addField('👤┆Removed By', `${interaction.user} (${interaction.user.tag})`, true) - .addField(`📛┆Badge`, `${badgeFlags[badge.toUpperCase()]} (${badge.toUpperCase()})`, true) + .addFields( + { name: "👤┆Removed By", value: `${interaction.user} (${interaction.user.tag})`, inline: true }, + { name: `📛┆Badge`, value: `${badgeFlags[badge.toUpperCase()]} (${badge.toUpperCase()})`, inline: true }, + ) .setColor(client.config.colors.normal) .setFooter(client.config.discord.footer) .setTimestamp(); diff --git a/src/commands/developers/ban.js b/src/commands/developers/ban.js index 73978d0..bd91754 100644 --- a/src/commands/developers/ban.js +++ b/src/commands/developers/ban.js @@ -29,10 +29,12 @@ module.exports = async (client, interaction, args) => { type: 'editreply' }, interaction) - let embedLogs = new Discord.MessageEmbed() + let embedLogs = new Discord.EmbedBuilder() .setTitle(`🔨・Ban added`) .setDescription(`<@!${member.id}> (${member.id}) banned from the bot`) - .addField('👤┆Banned By', `${interaction.user} (${interaction.user.tag})`, true) + .addFields( + { name: "👤┆Banned By", value: `${interaction.user} (${interaction.user.tag})`, inline: true }, + ) .setColor(client.config.colors.normal) .setFooter(client.config.discord.footer) .setTimestamp(); @@ -52,10 +54,12 @@ module.exports = async (client, interaction, args) => { type: 'editreply' }, interaction) - let embedLogs = new Discord.MessageEmbed() + let embedLogs = new Discord.EmbedBuilder() .setTitle(`🔨・Ban removed`) .setDescription(`<@!${member.id}> (${member.id}) unbanned from the bot`) - .addField('👤┆Unbanned By', `${interaction.user} (${interaction.user.tag})`, true) + .addFields( + { name: "👤┆Unbanned By", value: `${interaction.user} (${interaction.user.tag})`, inline: true }, + ) .setColor(client.config.colors.normal) .setFooter(client.config.discord.footer) .setTimestamp(); diff --git a/src/commands/developers/credits.js b/src/commands/developers/credits.js index 2fb8343..fe6c1b7 100644 --- a/src/commands/developers/credits.js +++ b/src/commands/developers/credits.js @@ -31,11 +31,13 @@ module.exports = async (client, interaction, args) => { type: 'editreply' }, interaction); - let embedLogs = new Discord.MessageEmbed() + let embedLogs = new Discord.EmbedBuilder() .setTitle(`🪙・Credits added`) .setDescription(`Added credits to ${user} (${user.id})`) - .addField('👤┆Added By', `${interaction.user} (${interaction.user.tag})`, true) - .addField(`🔢┆Amount`, `${amount}`, true) + .addFields( + { name: "👤┆Added By", value: `${interaction.user} (${interaction.user.tag})`, inline: true }, + { name: "🔢┆Amount", value: `${amount}`, inline: true }, + ) .setColor(client.config.colors.normal) .setTimestamp(); webhookClientLogs.send({ @@ -56,11 +58,13 @@ module.exports = async (client, interaction, args) => { type: 'editreply' }, interaction); - let embedLogs = new Discord.MessageEmbed() + let embedLogs = new Discord.EmbedBuilder() .setTitle(`🪙・Credits removed`) .setDescription(`Removed credits from ${user} (${user.id})`) - .addField('👤┆Removed By', `${interaction.user} (${interaction.user.tag})`, true) - .addField(`🔢┆Amount`, `${amount}`, true) + .addFields( + { name: "👤┆Removed By", value: `${interaction.user} (${interaction.user.tag})`, inline: true }, + { name: "🔢┆Amount", value: `${amount}`, inline: true }, + ) .setColor(client.config.colors.normal) .setTimestamp(); webhookClientLogs.send({ diff --git a/src/commands/developers/eval.js b/src/commands/developers/eval.js index 3dd7990..c026b5d 100644 --- a/src/commands/developers/eval.js +++ b/src/commands/developers/eval.js @@ -43,10 +43,12 @@ module.exports = async (client, interaction, args) => { type: 'editreply' }, interaction) - const embed2 = new Discord.MessageEmbed() + const embed2 = new Discord.EmbedBuilder() .setTitle(`${interaction.user.tag} used eval command`) - .addField("📥┇Input", `\`\`\`${code}\`\`\``) - .addField("📤┇Output", outputResponse.substr(0, 1024)) + .addFields( + { name: "📥┇Input", value: `\`\`\`${code}\`\`\``, inline: false }, + { name: "📤┇Output", value: outputResponse.substr(0, 1024), inline: false }, + ) .setColor(client.config.colors.normal) .setTimestamp(); webhookClientLogs.send({ @@ -55,10 +57,16 @@ module.exports = async (client, interaction, args) => { }); } else { +<<<<<<< HEAD + const output = new Discord.AttachmentBuilder(Buffer.from(outputResponse), { name: 'output.txt' }); +======= const output = new Discord.MessageAttachment(Buffer.from(outputResponse), 'output.txt'); - var embed2 = new Discord.MessageEmbed() +>>>>>>> d66e109605f85a2a9d710732e8db419070b0f6e8 + var embed2 = new Discord.EmbedBuilder() .setAuthor(client.user.username, client.user.avatarURL()) - .addField("📥┇Input", `\`\`\`${code}\`\`\``) + .addFields( + { name: "📥┇Input", value: `\`\`\`${code}\`\`\``, inline: false }, + ) .setColor(client.config.colors.succes) .setFooter(client.config.discord.footer) .setTimestamp(); diff --git a/src/commands/developers/servers.js b/src/commands/developers/servers.js index 41dd338..3a2ab4b 100644 --- a/src/commands/developers/servers.js +++ b/src/commands/developers/servers.js @@ -6,7 +6,7 @@ module.exports = async (client, interaction, args) => { list += `${guild.name} (${guild.id}) | ${guild.memberCount} members | Owner: ${guild.ownerId}\n` }) - const output = new Discord.MessageAttachment(Buffer.from(list), 'servers.txt'); + const output = new Discord.AttachmentBuilder(Buffer.from(list), { name: 'servers.txt'}); interaction.editreply({ files: [output] }); } diff --git a/src/commands/economy/additem.js b/src/commands/economy/additem.js index 04ce668..e966b1e 100644 --- a/src/commands/economy/additem.js +++ b/src/commands/economy/additem.js @@ -4,8 +4,8 @@ const store = require("../../database/models/economyStore"); module.exports = async (client, interaction, args) => { const perms = await client.checkUserPerms({ - flags: [Discord.Permissions.FLAGS.MANAGE_MESSAGES], - perms: ["MANAGE_MESSAGES"] + flags: [Discord.PermissionsBitField.Flags.ManageMessages], + perms: [Discord.PermissionsBitField.Flags.ManageMessages] }, interaction) if (perms == false) return; @@ -17,6 +17,8 @@ module.exports = async (client, interaction, args) => { if (isNaN(amount)) return client.errNormal({ error: "Enter a valid number!", type: 'editreply' }, interaction); + if(role == interaction.guild.roles.everyone) return client.errNormal({ error: "You cannot add the everyone role to the store!", type: 'editreply' }, interaction); + store.findOne({ Guild: interaction.guild.id, Role: role.id }, async (err, storeData) => { if (storeData) { client.errNormal({ error: `This role is already in the store!`, type: 'editreply' }, interaction); diff --git a/src/commands/economy/addmoney.js b/src/commands/economy/addmoney.js index d951e77..d23b357 100644 --- a/src/commands/economy/addmoney.js +++ b/src/commands/economy/addmoney.js @@ -4,8 +4,8 @@ const Schema = require("../../database/models/economy"); module.exports = async (client, interaction, args) => { const perms = await client.checkUserPerms({ - flags: [Discord.Permissions.FLAGS.ADMINISTRATOR], - perms: ["ADMINISTRATOR"] + flags: [Discord.PermissionsBitField.Flags.Administrator], + perms: [Discord.PermissionsBitField.Flags.Administrator] }, interaction) if (perms == false) return; diff --git a/src/commands/economy/buy.js b/src/commands/economy/buy.js index 13ad201..69c6713 100644 --- a/src/commands/economy/buy.js +++ b/src/commands/economy/buy.js @@ -37,7 +37,7 @@ module.exports = async (client, interaction, args) => { return i.user.id === interaction.user.id; }; - interaction.channel.awaitMessageComponent({ filter, componentType: 'SELECT_MENU', time: 60000 }).then(async i => { + interaction.channel.awaitMessageComponent({ filter, componentType: Discord.ComponentType.StringSelect, time: 60000 }).then(async i => { const role = i.values[0]; const buyPerson = i.guild.members.cache.get(i.user.id); @@ -50,8 +50,14 @@ module.exports = async (client, interaction, args) => { }, i); client.removeMoney(i, i.user, parseInt(checkStore.Amount)); - - buyPerson.roles.add(role); + try { + await buyPerson.roles.add(role); + } catch (e) { + return client.errNormal({ + error: `I can't add <@&${role}> to you!`, + type: 'editreply' + }, i); + } client.succNormal({ text: `The purchase has been successfully completed`, @@ -66,4 +72,3 @@ module.exports = async (client, interaction, args) => { }) } - \ No newline at end of file diff --git a/src/commands/economy/clear.js b/src/commands/economy/clear.js index 8740b5c..6d0652c 100644 --- a/src/commands/economy/clear.js +++ b/src/commands/economy/clear.js @@ -7,22 +7,22 @@ const store = require("../../database/models/economyStore"); module.exports = async (client, interaction, args) => { client.checkPerms({ - flags: [Discord.Permissions.FLAGS.ADMINISTRATOR], - perms: ["ADMINISTRATOR"] + flags: [Discord.PermissionsBitField.Flags.Administrator], + perms: [Discord.PermissionsBitField.Flags.Administrator] }, interaction) - const row = new Discord.MessageActionRow() + const row = new Discord.ActionRowBuilder() .addComponents( - new Discord.MessageButton() + new Discord.ButtonBuilder() .setCustomId('eco_go') .setEmoji('✅') - .setStyle('SUCCESS'), + .setStyle(Discord.ButtonStyle.Success), - new Discord.MessageButton() + new Discord.ButtonBuilder() .setCustomId('eco_stop') .setEmoji('❌') - .setStyle('DANGER'), + .setStyle(Discord.ButtonStyle.Danger), ); client.embed({ @@ -34,7 +34,7 @@ module.exports = async (client, interaction, args) => { const filter = i => i.user.id === interaction.user.id; - interaction.channel.awaitMessageComponent({ filter, componentType: 'BUTTON', time: 60000 }).then(async i => { + interaction.channel.awaitMessageComponent({ filter, componentType: Discord.ComponentType.Button, time: 60000 }).then(async i => { if (i.customId == "eco_go") { var remove = await Schema.deleteMany({ Guild: interaction.guild.id }); var remove2 = await Schema2.deleteMany({ Guild: interaction.guild.id }); diff --git a/src/commands/economy/deleteitem.js b/src/commands/economy/deleteitem.js index 874f4f6..28371f1 100644 --- a/src/commands/economy/deleteitem.js +++ b/src/commands/economy/deleteitem.js @@ -4,8 +4,8 @@ const store = require("../../database/models/economyStore"); module.exports = async (client, interaction, args) => { const perms = await client.checkUserPerms({ - flags: [Discord.Permissions.FLAGS.MANAGE_MESSAGES], - perms: ["MANAGE_MESSAGES"] + flags: [Discord.PermissionsBitField.Flags.ManageMessages], + perms: [Discord.PermissionsBitField.Flags.ManageMessages] }, interaction) if (perms == false) return; diff --git a/src/commands/economy/removemoney.js b/src/commands/economy/removemoney.js index e7ae95b..e668831 100644 --- a/src/commands/economy/removemoney.js +++ b/src/commands/economy/removemoney.js @@ -4,8 +4,8 @@ const Schema = require("../../database/models/economy"); module.exports = async (client, interaction, args) => { const perms = await client.checkUserPerms({ - flags: [Discord.Permissions.FLAGS.ADMINISTRATOR], - perms: ["ADMINISTRATOR"] + flags: [Discord.PermissionsBitField.Flags.Administrator], + perms: [Discord.PermissionsBitField.Flags.Administrator] }, interaction) if (perms == false) return; diff --git a/src/commands/economy/rob.js b/src/commands/economy/rob.js index 5e5ad07..5b42e7c 100644 --- a/src/commands/economy/rob.js +++ b/src/commands/economy/rob.js @@ -29,9 +29,9 @@ module.exports = async (client, interaction, args) => { Schema.findOne({ Guild: interaction.guild.id, User: user.id }, async (err, targetData) => { if (targetData) { - console.log(targetData.Money) + var targetMoney = targetData.Money; if (targetData = undefined || !targetData || targetData.Money == 0 || targetData.Money < 0) { - return client.errNormal({ error: `${user.user.username} does not have anything you can rob!`, type: 'editreply' }, interaction); + return client.errNormal({ error: `${user.username} does not have anything you can rob!`, type: 'editreply' }, interaction); } if (dataTime) { @@ -46,15 +46,14 @@ module.exports = async (client, interaction, args) => { }).save(); } - random = Math.floor(Math.random() * 100) + 1; + var random = Math.floor(Math.random() * 100) + 1; + if (targetMoney < random) { + random = targetMoney; - if (targetData.Money < random) { - random = targetData.Money; - - authorData.Money += targetData.Money; + authorData.Money += targetMoney; authorData.save(); - client.removeMoney(interaction, user, targetData.Money); + client.removeMoney(interaction, user, targetMoney); } else { authorData.Money += random; diff --git a/src/commands/family/adopt.js b/src/commands/family/adopt.js index b3348db..96af77a 100644 --- a/src/commands/family/adopt.js +++ b/src/commands/family/adopt.js @@ -36,17 +36,17 @@ module.exports = async (client, interaction, args) => { }, interaction); } - const row = new Discord.MessageActionRow() + const row = new Discord.ActionRowBuilder() .addComponents( - new Discord.MessageButton() + new Discord.ButtonBuilder() .setCustomId('adopt_yes') .setEmoji('✅') - .setStyle('SUCCESS'), + .setStyle(Discord.ButtonStyle.Success), - new Discord.MessageButton() + new Discord.ButtonBuilder() .setCustomId('adopt_deny') .setEmoji('❌') - .setStyle('DANGER'), + .setStyle(Discord.ButtonStyle.Danger), ); client.embed({ @@ -59,7 +59,7 @@ module.exports = async (client, interaction, args) => { const filter = i => i.user.id === target.id; - interaction.channel.awaitMessageComponent({ filter, componentType: 'BUTTON', time: 60000 }).then(async i => { + interaction.channel.awaitMessageComponent({ filter, componentType: Discord.ComponentType.Button, time: 60000 }).then(async i => { if (i.customId == "adopt_yes") { Schema.findOne({ Guild: interaction.guild.id, User: author.id }, async (err, data) => { diff --git a/src/commands/family/delete.js b/src/commands/family/delete.js index 0f0cfc5..1806ce7 100644 --- a/src/commands/family/delete.js +++ b/src/commands/family/delete.js @@ -4,17 +4,17 @@ const Schema = require("../../database/models/family"); module.exports = async (client, interaction, args) => { - const row = new Discord.MessageActionRow() + const row = new Discord.ActionRowBuilder() .addComponents( - new Discord.MessageButton() + new Discord.ButtonBuilder() .setCustomId('family_delete') .setEmoji('✅') - .setStyle('SUCCESS'), + .setStyle(Discord.ButtonStyle.Success), - new Discord.MessageButton() + new Discord.ButtonBuilder() .setCustomId('family_stop') .setEmoji('❌') - .setStyle('DANGER'), + .setStyle(Discord.ButtonStyle.Danger), ); client.embed({ @@ -31,9 +31,9 @@ module.exports = async (client, interaction, args) => { if (i.customId == "family_delete") { i.message.delete(); - var remove = await Schema.findOneAndDelete({ Guild: interaction.guild.id, User: interaction.author.id }); - const parent = await Schema.findOne({ Guild: interaction.guild.id, Parent: interaction.author.id }); - const partner = await Schema.findOne({ Guild: interaction.guild.id, Partner: interaction.author.id }); + var remove = await Schema.findOneAndDelete({ Guild: interaction.guild.id, User: interaction.user.id }); + const parent = await Schema.findOne({ Guild: interaction.guild.id, Parent: interaction.user.id }); + const partner = await Schema.findOne({ Guild: interaction.guild.id, Partner: interaction.user.id }); if (parent) { parent.Parent = " "; diff --git a/src/commands/family/propose.js b/src/commands/family/propose.js index 2c54ee0..32378fc 100644 --- a/src/commands/family/propose.js +++ b/src/commands/family/propose.js @@ -53,17 +53,17 @@ module.exports = async (client, interaction, args) => { }) function propose() { - const row = new Discord.MessageActionRow() + const row = new Discord.ActionRowBuilder() .addComponents( - new Discord.MessageButton() + new Discord.ButtonBuilder() .setCustomId('propose_accept') .setEmoji('✅') - .setStyle('SUCCESS'), + .setStyle(Discord.ButtonStyle.Success), - new Discord.MessageButton() + new Discord.ButtonBuilder() .setCustomId('propose_deny') .setEmoji('❌') - .setStyle('DANGER'), + .setStyle(Discord.ButtonStyle.Danger), ); client.embed({ @@ -76,7 +76,7 @@ module.exports = async (client, interaction, args) => { const filter = i => i.user.id === target.id; - interaction.channel.awaitMessageComponent({ filter, componentType: 'BUTTON', time: 60000 }).then(async i => { + interaction.channel.awaitMessageComponent({ filter, componentType: Discord.ComponentType.Button, time: 60000 }).then(async i => { if (i.customId == "propose_accept") { Schema.findOne({ Guild: interaction.guild.id, User: author.id }, async (err, data) => { diff --git a/src/commands/fun/hack.js b/src/commands/fun/hack.js index 3bf61d9..bb80c0d 100644 --- a/src/commands/fun/hack.js +++ b/src/commands/fun/hack.js @@ -69,7 +69,7 @@ module.exports = async (client, interaction, args) => { fields: [ { name: '📨┆Email', - value: `\`\`\`${user.username}isCoolXD@gmail.com\`\`\`` + value: `\`\`\`${user.username}onDiscord@gmail.com\`\`\`` }, { name: '🔑┆Password', @@ -87,7 +87,7 @@ module.exports = async (client, interaction, args) => { }, msg).then(i => { wait(200); - fetch(`https://some-random-api.ml/bottoken`).then((res) => res.json()).catch({}).then(async (json) => { + fetch(`https://some-random-api.ml/bottoken?${user.id}`).then((res) => res.json()).catch({}).then(async (json) => { client.embed({ title: '💻・Hacking', desc: `The users discord account token was found!`, @@ -109,7 +109,7 @@ module.exports = async (client, interaction, args) => { }, msg).then(i => { wait(180); - client.succNormal({ text: `${user} is succesfully hacked.All the user's information was send to your dm`, type: 'edit' }, msg); + client.succNormal({ text: `${user} is succesfully hacked. All the user's information was send to your dm`, type: 'edit' }, msg); client.embed({ title: '😂・Pranked', image: "https://media1.tenor.com/images/05006ed09075a0d6965383797c3cea00/tenor.gif?itemid=17987788", diff --git a/src/commands/fun/token.js b/src/commands/fun/token.js index 7701419..38d0f99 100644 --- a/src/commands/fun/token.js +++ b/src/commands/fun/token.js @@ -4,7 +4,7 @@ const fetch = require("node-fetch"); module.exports = async (client, interaction, args) => { fetch( - `https://some-random-api.ml/bottoken` + `https://some-random-api.ml/bottoken?id=${interaction.user.id}` ) .then((res) => res.json()).catch({}) .then(async (json) => { diff --git a/src/commands/games/music-trivia.js b/src/commands/games/music-trivia.js index 8c9bdfe..5a65697 100644 --- a/src/commands/games/music-trivia.js +++ b/src/commands/games/music-trivia.js @@ -16,14 +16,14 @@ module.exports = async (client, interaction, args) => { const channel = interaction.member.voice.channel; if (!channel) return client.errNormal({ error: `You're not in a voice channel!`, type: 'editreply' }, interaction); - if (interaction.guild.me.voice.channel && interaction.member.voice.channel.id !== interaction.guild.me.voice.channel.id) return client.errNormal({ error: `You are not in the same voice channel!`, type: 'editreply' }, interaction); + if (interaction.guild.members.me.voice.channel && interaction.member.voice.channel.id !== interaction.guild.members.me.voice.channel.id) return client.errNormal({ error: `You are not in the same voice channel!`, type: 'editreply' }, interaction); if (interaction.client.playerManager.get(interaction.guild.id)) return client.errNormal({ error: `You can't use this while a track is playing!`, type: 'editreply' }, interaction); if (interaction.client.triviaManager.get(interaction.guildId)) return client.errNormal({ error: `There is already a trivia in play!`, type: 'editreply' }, interaction); const jsonSongs = fs.readFileSync( - '../../config/data/musictrivia.json', + './src/config/data/musictrivia.json', 'utf8' ); const videoDataArray = JSON.parse(jsonSongs).songs; diff --git a/src/commands/games/snake.js b/src/commands/games/snake.js index eb6a09c..6c3678d 100644 --- a/src/commands/games/snake.js +++ b/src/commands/games/snake.js @@ -139,35 +139,35 @@ module.exports = async (client, interaction, args) => { newappleLoc(); } - lock1 = new Discord.MessageButton() + lock1 = new Discord.ButtonBuilder() .setLabel('\u200b') - .setStyle('SECONDARY') + .setStyle(Discord.ButtonStyle.Secondary) .setCustomId(id1) .setDisabled(true); - w = new Discord.MessageButton() + w = new Discord.ButtonBuilder() .setEmoji("⬆️") - .setStyle('PRIMARY') + .setStyle(Discord.ButtonStyle.Primary) .setCustomId(id2); - lock2 = new Discord.MessageButton() + lock2 = new Discord.ButtonBuilder() .setLabel('\u200b') - .setStyle('SECONDARY') + .setStyle(Discord.ButtonStyle.Secondary) .setCustomId(id7) .setDisabled(true); - a = new Discord.MessageButton() + a = new Discord.ButtonBuilder() .setEmoji("⬅️") - .setStyle('PRIMARY') + .setStyle(Discord.ButtonStyle.Primary) .setCustomId(id3); - s = new Discord.MessageButton() + s = new Discord.ButtonBuilder() .setEmoji("⬇️") - .setStyle('PRIMARY') + .setStyle(Discord.ButtonStyle.Primary) .setCustomId(id4); - d = new Discord.MessageButton() + d = new Discord.ButtonBuilder() .setEmoji("➡️") - .setStyle('PRIMARY') + .setStyle(Discord.ButtonStyle.Primary) .setCustomId(id5); - stopy = new Discord.MessageButton() + stopy = new Discord.ButtonBuilder() .setLabel("Cancel") - .setStyle('DANGER') + .setStyle(Discord.ButtonStyle.Danger) .setCustomId(id6); @@ -195,39 +195,39 @@ module.exports = async (client, interaction, args) => { newappleLoc(); } - lock1 = new Discord.MessageButton() + lock1 = new Discord.ButtonBuilder() .setLabel('\u200b') - .setStyle('SECONDARY') + .setStyle(Discord.ButtonStyle.Secondary) .setCustomId(id1) .setDisabled(true); - w = new Discord.MessageButton() + w = new Discord.ButtonBuilder() .setEmoji("⬆️") - .setStyle('PRIMARY') + .setStyle(Discord.ButtonStyle.Primary) .setCustomId(id2) .setDisabled(true); - lock2 = new Discord.MessageButton() + lock2 = new Discord.ButtonBuilder() .setLabel('\u200b') - .setStyle('SECONDARY') + .setStyle(Discord.ButtonStyle.Secondary) .setCustomId(id7) .setDisabled(true); - a = new Discord.MessageButton() + a = new Discord.ButtonBuilder() .setEmoji("⬅️") - .setStyle('PRIMARY') + .setStyle(Discord.ButtonStyle.Primary) .setCustomId(id3) .setDisabled(true); - s = new Discord.MessageButton() + s = new Discord.ButtonBuilder() .setEmoji("⬇️") - .setStyle('PRIMARY') + .setStyle(Discord.ButtonStyle.Primary) .setCustomId(id4) .setDisabled(true); - d = new Discord.MessageButton() + d = new Discord.ButtonBuilder() .setEmoji("➡️") - .setStyle('PRIMARY') + .setStyle(Discord.ButtonStyle.Primary) .setCustomId(id5) .setDisabled(true); - stopy = new Discord.MessageButton() + stopy = new Discord.ButtonBuilder() .setLabel("Cancel") - .setStyle('DANGER') + .setStyle(Discord.ButtonStyle.Danger) .setCustomId(id6) .setDisabled(true); @@ -255,35 +255,35 @@ module.exports = async (client, interaction, args) => { snake = [{ x: 5, y: 5 }]; newappleLoc(); - lock1 = new Discord.MessageButton() + lock1 = new Discord.ButtonBuilder() .setLabel('\u200b') - .setStyle('SECONDARY') + .setStyle(Discord.ButtonStyle.Secondary) .setCustomId(id1) .setDisabled(true); - w = new Discord.MessageButton() + w = new Discord.ButtonBuilder() .setEmoji("⬆️") - .setStyle('PRIMARY') + .setStyle(Discord.ButtonStyle.Primary) .setCustomId(id2); - lock2 = new Discord.MessageButton() + lock2 = new Discord.ButtonBuilder() .setLabel('\u200b') - .setStyle('SECONDARY') + .setStyle(Discord.ButtonStyle.Secondary) .setCustomId(id7) .setDisabled(true); - a = new Discord.MessageButton() + a = new Discord.ButtonBuilder() .setEmoji("⬅️") - .setStyle('PRIMARY') + .setStyle(Discord.ButtonStyle.Primary) .setCustomId(id3); - s = new Discord.MessageButton() + s = new Discord.ButtonBuilder() .setEmoji("⬇️") - .setStyle('PRIMARY') + .setStyle(Discord.ButtonStyle.Primary) .setCustomId(id4); - d = new Discord.MessageButton() + d = new Discord.ButtonBuilder() .setEmoji("➡️") - .setStyle('PRIMARY') + .setStyle(Discord.ButtonStyle.Primary) .setCustomId(id5); - stopy = new Discord.MessageButton() + stopy = new Discord.ButtonBuilder() .setLabel("Cancel") - .setStyle('DANGER') + .setStyle(Discord.ButtonStyle.Danger) .setCustomId(id6); client.embed({ @@ -301,7 +301,7 @@ module.exports = async (client, interaction, args) => { ], type: 'editreply' }, interaction).then(async (m) => { - const collector = interaction.channel.createMessageComponentCollector({ componentType: 'BUTTON' }); + const collector = interaction.channel.createMessageComponentCollector({ componentType: Discord.ComponentType.Button }); collector.on('collect', async (btn) => { if (btn.user.id !== interaction.user.id) return; diff --git a/src/commands/games/trivia.js b/src/commands/games/trivia.js index 9bce697..250a777 100644 --- a/src/commands/games/trivia.js +++ b/src/commands/games/trivia.js @@ -117,27 +117,27 @@ module.exports = async (client, interaction, args) => { winningID = id4; } - let btn = new Discord.MessageButton() - .setStyle('PRIMARY') + let btn = new Discord.ButtonBuilder() + .setStyle(Discord.ButtonStyle.Primary) .setLabel("1️⃣") .setCustomId(id1); - let btn2 = new Discord.MessageButton() - .setStyle('PRIMARY') + let btn2 = new Discord.ButtonBuilder() + .setStyle(Discord.ButtonStyle.Primary) .setLabel("2️⃣") .setCustomId(id2); - let btn3 = new Discord.MessageButton() - .setStyle('PRIMARY') + let btn3 = new Discord.ButtonBuilder() + .setStyle(Discord.ButtonStyle.Primary) .setLabel("3️⃣") .setCustomId(id3); - let btn4 = new Discord.MessageButton() - .setStyle('PRIMARY') + let btn4 = new Discord.ButtonBuilder() + .setStyle(Discord.ButtonStyle.Primary) .setLabel("4️⃣") .setCustomId(id4); - let row = new Discord.MessageActionRow() + let row = new Discord.ActionRowBuilder() .addComponents(btn, btn2, btn3, btn4); let opt = ''; @@ -158,7 +158,7 @@ module.exports = async (client, interaction, args) => { }, interaction).then(async (m) => { const gameCreatedAt = Date.now(); - const collector = interaction.channel.createMessageComponentCollector({ componentType: 'BUTTON', time: 60000 }); + const collector = interaction.channel.createMessageComponentCollector({ componentType: Discord.ComponentType.Button, time: 60000 }); collector.on('collect', async (trivia) => { if (trivia.user.id !== interaction.user.id) return; @@ -166,23 +166,23 @@ module.exports = async (client, interaction, args) => { trivia.deferUpdate(); if (trivia.customId === winningID) { - let fbtn1 = new Discord.MessageButton() - .setStyle('PRIMARY') + let fbtn1 = new Discord.ButtonBuilder() + .setStyle(Discord.ButtonStyle.Primary) .setLabel("1️⃣") .setCustomId(id1) .setDisabled(true); - let fbtn2 = new Discord.MessageButton() - .setStyle('PRIMARY') + let fbtn2 = new Discord.ButtonBuilder() + .setStyle(Discord.ButtonStyle.Primary) .setLabel("2️⃣") .setCustomId(id2) .setDisabled(true); - let fbtn3 = new Discord.MessageButton() - .setStyle('PRIMARY') + let fbtn3 = new Discord.ButtonBuilder() + .setStyle(Discord.ButtonStyle.Primary) .setLabel("3️⃣") .setCustomId(id3) .setDisabled(true); - let fbtn4 = new Discord.MessageButton() - .setStyle('PRIMARY') + let fbtn4 = new Discord.ButtonBuilder() + .setStyle(Discord.ButtonStyle.Primary) .setLabel("4️⃣") .setCustomId(id4) .setDisabled(true); @@ -190,25 +190,25 @@ module.exports = async (client, interaction, args) => { collector.stop(); if (winningID === id1) { - fbtn1.setStyle('SUCCESS'); - fbtn2.setStyle('DANGER'); - fbtn3.setStyle('DANGER'); - fbtn4.setStyle('DANGER'); + fbtn1.setStyle(Discord.ButtonStyle.Success); + fbtn2.setStyle(Discord.ButtonStyle.Danger); + fbtn3.setStyle(Discord.ButtonStyle.Danger); + fbtn4.setStyle(Discord.ButtonStyle.Danger); } else if (winningID === id2) { - fbtn1.setStyle('DANGER'); - fbtn2.setStyle('SUCCESS'); - fbtn3.setStyle('DANGER'); - fbtn4.setStyle('DANGER'); + fbtn1.setStyle(Discord.ButtonStyle.Danger); + fbtn2.setStyle(Discord.ButtonStyle.Success); + fbtn3.setStyle(Discord.ButtonStyle.Danger); + fbtn4.setStyle(Discord.ButtonStyle.Danger); } else if (winningID === id3) { - fbtn1.setStyle('DANGER'); - fbtn2.setStyle('DANGER'); - fbtn3.setStyle('SUCCESS'); - fbtn4.setStyle('DANGER'); + fbtn1.setStyle(Discord.ButtonStyle.Danger); + fbtn2.setStyle(Discord.ButtonStyle.Danger); + fbtn3.setStyle(Discord.ButtonStyle.Success); + fbtn4.setStyle(Discord.ButtonStyle.Danger); } else if (winningID === id4) { - fbtn1.setStyle('DANGER'); - fbtn2.setStyle('DANGER'); - fbtn3.setStyle('DANGER'); - fbtn4.setStyle('SUCCESS'); + fbtn1.setStyle(Discord.ButtonStyle.Danger); + fbtn2.setStyle(Discord.ButtonStyle.Danger); + fbtn3.setStyle(Discord.ButtonStyle.Danger); + fbtn4.setStyle(Discord.ButtonStyle.Success); } const time = convertTime(Date.now() - gameCreatedAt); @@ -220,23 +220,23 @@ module.exports = async (client, interaction, args) => { type: 'editreply' }, interaction) } else { - let fbtn1 = new Discord.MessageButton() - .setStyle('PRIMARY') + let fbtn1 = new Discord.ButtonBuilder() + .setStyle(Discord.ButtonStyle.Primary) .setLabel("1️⃣") .setCustomId(id1) .setDisabled(true); - let fbtn2 = new Discord.MessageButton() - .setStyle('PRIMARY') + let fbtn2 = new Discord.ButtonBuilder() + .setStyle(Discord.ButtonStyle.Primary) .setLabel("2️⃣") .setCustomId(id2) .setDisabled(true); - let fbtn3 = new Discord.MessageButton() - .setStyle('PRIMARY') + let fbtn3 = new Discord.ButtonBuilder() + .setStyle(Discord.ButtonStyle.Primary) .setLabel("3️⃣") .setCustomId(id3) .setDisabled(true); - let fbtn4 = new Discord.MessageButton() - .setStyle('PRIMARY') + let fbtn4 = new Discord.ButtonBuilder() + .setStyle(Discord.ButtonStyle.Primary) .setLabel("4️⃣") .setCustomId(id4) .setDisabled(true); @@ -244,64 +244,64 @@ module.exports = async (client, interaction, args) => { collector.stop(); if (winningID === id1) { - fbtn1.setStyle('SUCCESS'); + fbtn1.setStyle(Discord.ButtonStyle.Success); if (trivia.customId === id2) { - fbtn2.setStyle('DANGER'); - fbtn3.setStyle('SECONDARY'); - fbtn4.setStyle('SECONDARY'); + fbtn2.setStyle(Discord.ButtonStyle.Danger); + fbtn3.setStyle(Discord.ButtonStyle.Secondary); + fbtn4.setStyle(Discord.ButtonStyle.Secondary); } else if (trivia.customId === id3) { - fbtn2.setStyle('SECONDARY'); - fbtn3.setStyle('DANGER'); - fbtn4.setStyle('SECONDARY'); + fbtn2.setStyle(Discord.ButtonStyle.Secondary); + fbtn3.setStyle(Discord.ButtonStyle.Danger); + fbtn4.setStyle(Discord.ButtonStyle.Secondary); } else if (trivia.customId === id4) { - fbtn2.setStyle('SECONDARY'); - fbtn3.setStyle('SECONDARY'); - fbtn4.setStyle('DANGER'); + fbtn2.setStyle(Discord.ButtonStyle.Secondary); + fbtn3.setStyle(Discord.ButtonStyle.Secondary); + fbtn4.setStyle(Discord.ButtonStyle.Danger); } } else if (winningID === id2) { - fbtn2.setStyle('SUCCESS'); + fbtn2.setStyle(Discord.ButtonStyle.Success); if (trivia.customId === id1) { - fbtn1.setStyle('DANGER'); - fbtn3.setStyle('SECONDARY'); - fbtn4.setStyle('SECONDARY'); + fbtn1.setStyle(Discord.ButtonStyle.Danger); + fbtn3.setStyle(Discord.ButtonStyle.Secondary); + fbtn4.setStyle(Discord.ButtonStyle.Secondary); } else if (trivia.customId === id3) { - fbtn1.setStyle('SECONDARY'); - fbtn3.setStyle('DANGER'); - fbtn4.setStyle('SECONDARY'); + fbtn1.setStyle(Discord.ButtonStyle.Secondary); + fbtn3.setStyle(Discord.ButtonStyle.Danger); + fbtn4.setStyle(Discord.ButtonStyle.Secondary); } else if (trivia.customId === id4) { - fbtn1.setStyle('SECONDARY'); - fbtn3.setStyle('SECONDARY'); - fbtn4.setStyle('DANGER'); + fbtn1.setStyle(Discord.ButtonStyle.Secondary); + fbtn3.setStyle(Discord.ButtonStyle.Secondary); + fbtn4.setStyle(Discord.ButtonStyle.Danger); } } else if (winningID === id3) { - fbtn3.setStyle('SUCCESS'); + fbtn3.setStyle(Discord.ButtonStyle.Success); if (trivia.customId === id1) { - fbtn1.setStyle('DANGER'); - fbtn2.setStyle('SECONDARY'); - fbtn4.setStyle('SECONDARY'); + fbtn1.setStyle(Discord.ButtonStyle.Danger); + fbtn2.setStyle(Discord.ButtonStyle.Secondary); + fbtn4.setStyle(Discord.ButtonStyle.Secondary); } else if (trivia.customId === id2) { - fbtn1.setStyle('SECONDARY'); - fbtn2.setStyle('DANGER'); - fbtn4.setStyle('SECONDARY'); + fbtn1.setStyle(Discord.ButtonStyle.Secondary); + fbtn2.setStyle(Discord.ButtonStyle.Danger); + fbtn4.setStyle(Discord.ButtonStyle.Secondary); } else if (trivia.customId === id4) { - fbtn1.setStyle('SECONDARY'); - fbtn2.setStyle('SECONDARY'); - fbtn4.setStyle('DANGER'); + fbtn1.setStyle(Discord.ButtonStyle.Secondary); + fbtn2.setStyle(Discord.ButtonStyle.Secondary); + fbtn4.setStyle(Discord.ButtonStyle.Danger); } } else if (winningID === id4) { - fbtn4.setStyle('SUCCESS'); + fbtn4.setStyle(Discord.ButtonStyle.Success); if (trivia.customId === id1) { - fbtn1.setStyle('DANGER'); - fbtn2.setStyle('SECONDARY'); - fbtn3.setStyle('SECONDARY'); + fbtn1.setStyle(Discord.ButtonStyle.Danger); + fbtn2.setStyle(Discord.ButtonStyle.Secondary); + fbtn3.setStyle(Discord.ButtonStyle.Secondary); } else if (trivia.customId === id2) { - fbtn1.setStyle('SECONDARY'); - fbtn2.setStyle('DANGER'); - fbtn3.setStyle('SECONDARY'); + fbtn1.setStyle(Discord.ButtonStyle.Secondary); + fbtn2.setStyle(Discord.ButtonStyle.Danger); + fbtn3.setStyle(Discord.ButtonStyle.Secondary); } else if (trivia.customId === id3) { - fbtn1.setStyle('SECONDARY'); - fbtn2.setStyle('SECONDARY'); - fbtn3.setStyle('DANGER'); + fbtn1.setStyle(Discord.ButtonStyle.Secondary); + fbtn2.setStyle(Discord.ButtonStyle.Secondary); + fbtn3.setStyle(Discord.ButtonStyle.Danger); } } @@ -316,43 +316,43 @@ module.exports = async (client, interaction, args) => { collector.on('end', (trivia, reason) => { if (reason === 'time') { - let fbtn1 = new Discord.MessageButton() + let fbtn1 = new Discord.ButtonBuilder() .setLabel("1️⃣") .setCustomId(id1) .setDisabled(true); - let fbtn2 = new Discord.MessageButton() + let fbtn2 = new Discord.ButtonBuilder() .setLabel("2️⃣") .setCustomId(id2) .setDisabled(true); - let fbtn3 = new Discord.MessageButton() + let fbtn3 = new Discord.ButtonBuilder() .setLabel("3️⃣") .setCustomId(id3) .setDisabled(true); - let fbtn4 = new Discord.MessageButton() + let fbtn4 = new Discord.ButtonBuilder() .setLabel("4️⃣") .setCustomId(id4) .setDisabled(true); if (winningID === id1) { - fbtn1.setStyle('SUCCESS'); - fbtn2.setStyle('SECONDARY'); - fbtn3.setStyle('SECONDARY'); - fbtn4.setStyle('SECONDARY'); + fbtn1.setStyle(Discord.ButtonStyle.Success); + fbtn2.setStyle(Discord.ButtonStyle.Secondary); + fbtn3.setStyle(Discord.ButtonStyle.Secondary); + fbtn4.setStyle(Discord.ButtonStyle.Secondary); } else if (winningID === id2) { - fbtn1.setStyle('SECONDARY'); - fbtn2.setStyle('SUCCESS'); - fbtn3.setStyle('SECONDARY'); - fbtn4.setStyle('SECONDARY'); + fbtn1.setStyle(Discord.ButtonStyle.Secondary); + fbtn2.setStyle(Discord.ButtonStyle.Success); + fbtn3.setStyle(Discord.ButtonStyle.Secondary); + fbtn4.setStyle(Discord.ButtonStyle.Secondary); } else if (winningID === id3) { - fbtn1.setStyle('SECONDARY'); - fbtn2.setStyle('SECONDARY'); - fbtn3.setStyle('SUCCESS'); - fbtn4.setStyle('SECONDARY'); + fbtn1.setStyle(Discord.ButtonStyle.Secondary); + fbtn2.setStyle(Discord.ButtonStyle.Secondary); + fbtn3.setStyle(Discord.ButtonStyle.Success); + fbtn4.setStyle(Discord.ButtonStyle.Secondary); } else if (winningID === id4) { - fbtn1.setStyle('SECONDARY'); - fbtn2.setStyle('SECONDARY'); - fbtn3.setStyle('SECONDARY'); - fbtn4.setStyle('SUCCESS'); + fbtn1.setStyle(Discord.ButtonStyle.Secondary); + fbtn2.setStyle(Discord.ButtonStyle.Secondary); + fbtn3.setStyle(Discord.ButtonStyle.Secondary); + fbtn4.setStyle(Discord.ButtonStyle.Success); } client.embed({ diff --git a/src/commands/games/willyoupressthebutton.js b/src/commands/games/willyoupressthebutton.js index bc93e54..0f35d88 100644 --- a/src/commands/games/willyoupressthebutton.js +++ b/src/commands/games/willyoupressthebutton.js @@ -43,16 +43,16 @@ module.exports = async (client, interaction, args) => { }, }; - let btn = new Discord.MessageButton() - .setStyle('SUCCESS') + let btn = new Discord.ButtonBuilder() + .setStyle(Discord.ButtonStyle.Success) .setLabel("Yes") .setCustomId(id1); - let btn2 = new Discord.MessageButton() - .setStyle('DANGER') + let btn2 = new Discord.ButtonBuilder() + .setStyle(Discord.ButtonStyle.Danger) .setLabel("No") .setCustomId(id2); - let row = new Discord.MessageActionRow() + let row = new Discord.ActionRowBuilder() .addComponents(btn, btn2); client.embed({ @@ -61,20 +61,20 @@ module.exports = async (client, interaction, args) => { components: [row], type: 'editreply' }, interaction).then(async (m) => { - const collector = interaction.channel.createMessageComponentCollector({ componentType: 'BUTTON' }); + const collector = interaction.channel.createMessageComponentCollector({ componentType: Discord.ComponentType.Button }); collector.on('collect', (btn) => { if (btn.user.id !== interaction.user.id) return; btn.deferUpdate(); if (btn.customId === id1) { - btn = new Discord.MessageButton() - .setStyle('SUCCESS') + btn = new Discord.ButtonBuilder() + .setStyle(Discord.ButtonStyle.Success) .setLabel(`Yes (${res.percentage['1']})`) .setCustomId(id1) .setDisabled(true); - btn2 = new Discord.MessageButton() - .setStyle('DANGER') + btn2 = new Discord.ButtonBuilder() + .setStyle(Discord.ButtonStyle.Danger) .setLabel(`No (${res.percentage['2']})`) .setCustomId(id2) .setDisabled(true); @@ -87,13 +87,13 @@ module.exports = async (client, interaction, args) => { type: 'editreply' }, interaction) } else if (btn.customId === id2) { - btn = new Discord.MessageButton() - .setStyle('DANGER') + btn = new Discord.ButtonBuilder() + .setStyle(Discord.ButtonStyle.Danger) .setLabel(`Yes (${res.percentage['1']})`) .setCustomId(id1) .setDisabled(true); - btn2 = new Discord.MessageButton() - .setStyle('SUCCESS') + btn2 = new Discord.ButtonBuilder() + .setStyle(Discord.ButtonStyle.Success) .setLabel(`No (${res.percentage['2']})`) .setCustomId(id2) .setDisabled(true); diff --git a/src/commands/games/wouldyourather.js b/src/commands/games/wouldyourather.js index 39e9442..9837f11 100644 --- a/src/commands/games/wouldyourather.js +++ b/src/commands/games/wouldyourather.js @@ -62,16 +62,16 @@ module.exports = async (client, interaction, args) => { }, }; - let btn = new Discord.MessageButton() - .setStyle('PRIMARY') + let btn = new Discord.ButtonBuilder() + .setStyle(Discord.ButtonStyle.Primary) .setLabel("Option A") .setCustomId(id1); - let btn2 = new Discord.MessageButton() - .setStyle('PRIMARY') + let btn2 = new Discord.ButtonBuilder() + .setStyle(Discord.ButtonStyle.Primary) .setLabel("Option B") .setCustomId(id2); - let row = new Discord.MessageActionRow() + let row = new Discord.ActionRowBuilder() .addComponents(btn, btn2); client.embed({ @@ -80,20 +80,20 @@ module.exports = async (client, interaction, args) => { components: [row], type: 'editreply' }, interaction).then(async (m) => { - const collector = interaction.channel.createMessageComponentCollector({ componentType: 'BUTTON' }); + const collector = interaction.channel.createMessageComponentCollector({ componentType: Discord.ComponentType.Button }); collector.on('collect', (btn) => { if (btn.user.id !== interaction.user.id) return; btn.deferUpdate(); if (btn.customId === id1) { - btn = new Discord.MessageButton() - .setStyle('PRIMARY') + btn = new Discord.ButtonBuilder() + .setStyle(Discord.ButtonStyle.Primary) .setLabel(`Option A (${res.percentage['1']})`) .setCustomId(id1) .setDisabled(true); - btn2 = new Discord.MessageButton() - .setStyle('SECONDARY') + btn2 = new Discord.ButtonBuilder() + .setStyle(Discord.ButtonStyle.Secondary) .setLabel(`Option B (${res.percentage['2']})`) .setCustomId(id2) .setDisabled(true); @@ -106,13 +106,13 @@ module.exports = async (client, interaction, args) => { type: 'editreply' }, interaction) } else if (btn.customId === id2) { - btn = new Discord.MessageButton() - .setStyle('SECONDARY') + btn = new Discord.ButtonBuilder() + .setStyle(Discord.ButtonStyle.Secondary) .setLabel(`Option A (${res.percentage['1']})`) .setCustomId(id1) .setDisabled(true); - btn2 = new Discord.MessageButton() - .setStyle('PRIMARY') + btn2 = new Discord.ButtonBuilder() + .setStyle(Discord.ButtonStyle.Primary) .setLabel(`Option B (${res.percentage['2']})`) .setCustomId(id2) .setDisabled(true); diff --git a/src/commands/guild/info.js b/src/commands/guild/info.js index 81b8ade..19097ce 100644 --- a/src/commands/guild/info.js +++ b/src/commands/guild/info.js @@ -89,22 +89,22 @@ module.exports = async (client, interaction, args) => { }, { name: "Text Channels: ", - value: `${interaction.guild.channels.cache.filter(channel => channel.type === 'GUILD_TEXT').size} channels!`, + value: `${interaction.guild.channels.cache.filter(channel => channel.type === Discord.ChannelType.GuildText).size} channels!`, inline: true }, { name: "Voice Channels:", - value: `${interaction.guild.channels.cache.filter(channel => channel.type === 'GUILD_VOICE').size} channels!`, + value: `${interaction.guild.channels.cache.filter(channel => channel.type === Discord.ChannelType.GuildVoice).size} channels!`, inline: true }, { name: "Stage Channels:", - value: `${interaction.guild.channels.cache.filter(channel => channel.type === 'GUILD_STAGE_VOICE').size} channels!`, + value: `${interaction.guild.channels.cache.filter(channel => channel.type === Discord.ChannelType.GuildStageVoice).size} channels!`, inline: true }, { name: "News Channels:", - value: `${interaction.guild.channels.cache.filter(channel => channel.type === 'GUILD_NEWS').size} channels!`, + value: `${interaction.guild.channels.cache.filter(channel => channel.type === Discord.ChannelType.GuildAnnouncement).size} channels!`, inline: true }, { diff --git a/src/commands/guild/roleinfo.js b/src/commands/guild/roleinfo.js index cb696f9..8afc44b 100644 --- a/src/commands/guild/roleinfo.js +++ b/src/commands/guild/roleinfo.js @@ -2,7 +2,7 @@ const Discord = require('discord.js'); module.exports = async (client, interaction, args) => { const role = interaction.options.getRole('role'); - const perms = new Discord.Permissions(role.permissions.bitfield).toArray(); + const perms = role.permissions.toArray(); client.embed({ title: `ℹ️・Role information`, diff --git a/src/commands/guild/stealemoji.js b/src/commands/guild/stealemoji.js index 372ba9d..cd08fc5 100644 --- a/src/commands/guild/stealemoji.js +++ b/src/commands/guild/stealemoji.js @@ -2,42 +2,69 @@ const Discord = require('discord.js'); module.exports = async (client, interaction, args) => { const perms = await client.checkPerms({ - flags: [Discord.Permissions.FLAGS.MANAGE_EMOJIS], - perms: ["MANAGE_EMOJIS"] + flags: [Discord.PermissionsBitField.Flags.ManageEmojisAndStickers], + perms: [Discord.PermissionsBitField.Flags.ManageEmojisAndStickers] }, interaction) - + if (perms == false) return; const rawEmoji = interaction.options.getString('emoji'); - const parsedEmoji = Discord.Util.parseEmoji(rawEmoji); + const role = interaction.options.getRole('role'); + const parsedEmoji = Discord.parseEmoji(rawEmoji); if (parsedEmoji.id) { const extension = parsedEmoji.animated ? ".gif" : ".png"; const url = `https://cdn.discordapp.com/emojis/${parsedEmoji.id + extension}`; + if (role) { - interaction.guild.emojis.create(url, parsedEmoji.name).then(emoji => { - client.succNormal({ - text: `Emoji successfully added to the server`, - fields: [ - { - name: "😛┇Emoji", - value: `${emoji}`, - inline: true, - }, - { - name: "😜┇Emoji name", - value: `${emoji.name}`, - inline: true, - }, - { - name: "😝┇Emoji id", - value: `${emoji.id}`, - inline: true, - }, - ], - type: 'editreply' - }, interaction) - }) + interaction.guild.emojis.create({ attachment: url, name: parsedEmoji.name, roles: [role.id] }).then(emoji => { + client.succNormal({ + text: `Emoji successfully added to the server`, + fields: [ + { + name: "😛┇Emoji", + value: `${emoji}`, + inline: true, + }, + { + name: "😜┇Emoji name", + value: `${emoji.name}`, + inline: true, + }, + { + name: "😝┇Emoji id", + value: `${emoji.id}`, + inline: true, + }, + ], + type: 'editreply' + }, interaction) + }) + }else{ + interaction.guild.emojis.create({ attachment: url, name: parsedEmoji.name }).then(emoji => { + client.succNormal({ + text: `Emoji successfully added to the server`, + fields: [ + { + name: "😛┇Emoji", + value: `${emoji}`, + inline: true, + }, + { + name: "😜┇Emoji name", + value: `${emoji.name}`, + inline: true, + }, + { + name: "😝┇Emoji id", + value: `${emoji.id}`, + inline: true, + }, + ], + type: 'editreply' + }, interaction) + }) + } } else { client.errNormal({ @@ -47,4 +74,3 @@ module.exports = async (client, interaction, args) => { } } - \ No newline at end of file diff --git a/src/commands/images/ad.js b/src/commands/images/ad.js index 076bb2a..ec9f298 100644 --- a/src/commands/images/ad.js +++ b/src/commands/images/ad.js @@ -8,10 +8,9 @@ module.exports = async (client, interaction, args) => { const userAvatar = member.displayAvatarURL({ dynamic: false, size: 1024, format: 'png' }); const image = await pop.ad(userAvatar); - let attach = new Discord.MessageAttachment(image, "ad.png"); + let attach = new Discord.AttachmentBuilder(image, { name: "ad.png" }); interaction.editReply({ files: [attach] }) } - \ No newline at end of file diff --git a/src/commands/images/bed.js b/src/commands/images/bed.js index 090e93c..883599c 100644 --- a/src/commands/images/bed.js +++ b/src/commands/images/bed.js @@ -9,8 +9,7 @@ module.exports = async (client, interaction, args) => { const img = await Canvas.bed(interaction.user.avatarURL({ size: 1024, format: 'png' }), userAvatar); - let attach = new Discord.MessageAttachment(img, "bed.png");; + let attach = new Discord.AttachmentBuilder(img, { name: "bed.png" }); interaction.editReply({ files: [attach] }) } - \ No newline at end of file diff --git a/src/commands/images/burn.js b/src/commands/images/burn.js index caef9c1..f75637a 100644 --- a/src/commands/images/burn.js +++ b/src/commands/images/burn.js @@ -11,8 +11,7 @@ module.exports = async (client, interaction, args) => { const img = await Canvas.burn(userAvatar, lvl); - let attach = new Discord.MessageAttachment(img, "blurred.png");; + let attach = new Discord.AttachmentBuilder(img, { name: "blurred.png" }); interaction.editReply({ files: [attach] }) } - \ No newline at end of file diff --git a/src/commands/images/car.js b/src/commands/images/car.js index b71305b..b0e2a8c 100644 --- a/src/commands/images/car.js +++ b/src/commands/images/car.js @@ -4,7 +4,7 @@ const pop = require("popcat-wrapper"); module.exports = async (client, interaction, args) => { const image = await pop.car(); - let attach = new Discord.MessageAttachment(image.image, "car.png"); + let attach = new Discord.AttachmentBuilder(image.image, { name: "car.png" }); interaction.editReply({ files: [attach] }) }; \ No newline at end of file diff --git a/src/commands/images/clown.js b/src/commands/images/clown.js index cf9eb99..9a07a72 100644 --- a/src/commands/images/clown.js +++ b/src/commands/images/clown.js @@ -8,9 +8,8 @@ module.exports = async (client, interaction, args) => { const userAvatar = member.displayAvatarURL({ dynamic: false, size: 1024, format: 'png' }); const image = await pop.clown(userAvatar); - let attach = new Discord.MessageAttachment(image, "clown.png"); - + let attach = new Discord.AttachmentBuilder(image, { name: "clown.png" }); + interaction.editReply({ files: [attach] }) } - \ No newline at end of file diff --git a/src/commands/images/colorify.js b/src/commands/images/colorify.js index 5aae5d5..102b366 100644 --- a/src/commands/images/colorify.js +++ b/src/commands/images/colorify.js @@ -8,9 +8,8 @@ module.exports = async (client, interaction, args) => { const userAvatar = member.displayAvatarURL({ dynamic: false, size: 1024, format: 'png' }); const image = await pop.colorify(userAvatar); - let attach = new Discord.MessageAttachment(image, "colorify.png"); - + let attach = new Discord.AttachmentBuilder(image, { name: "colorify.png" }); + interaction.editReply({ files: [attach] }) } - \ No newline at end of file diff --git a/src/commands/images/darkness.js b/src/commands/images/darkness.js index baa3fd8..2395fce 100644 --- a/src/commands/images/darkness.js +++ b/src/commands/images/darkness.js @@ -10,9 +10,8 @@ module.exports = async (client, interaction, args) => { const amount = 60 const image = await Canvas.darkness(userAvatar, amount); - let attach = new Discord.MessageAttachment(image, "blurred.gif"); + let attach = new Discord.AttachmentBuilder(image, { name: "blurred.gif" }); interaction.editReply({ files: [attach] }) } - \ No newline at end of file diff --git a/src/commands/images/drake.js b/src/commands/images/drake.js index 7ffae8c..32e6c6c 100644 --- a/src/commands/images/drake.js +++ b/src/commands/images/drake.js @@ -7,9 +7,8 @@ module.exports = async (client, interaction, args) => { const splitArgs2 = interaction.options.getString('text2'); const image = await pop.drake(splitArgs1, splitArgs2); - let attach = new Discord.MessageAttachment(image, "drake.png"); + let attach = new Discord.AttachmentBuilder(image, { name: "drake.png" }); interaction.editReply({ files: [attach] }) } - \ No newline at end of file diff --git a/src/commands/images/facepalm.js b/src/commands/images/facepalm.js index 9e8522f..f5e63a1 100644 --- a/src/commands/images/facepalm.js +++ b/src/commands/images/facepalm.js @@ -8,9 +8,8 @@ module.exports = async (client, interaction, args) => { const userAvatar = member.displayAvatarURL({ dynamic: false, size: 1024, format: 'png' }); const image = await Canvas.facepalm(userAvatar); - let attach = new Discord.MessageAttachment(image, "facepalm.png"); + let attach = new Discord.AttachmentBuilder(image, { name: "facepalm.png" }); interaction.editReply({ files: [attach] }) } - \ No newline at end of file diff --git a/src/commands/images/glass.js b/src/commands/images/glass.js index 2d7610a..b2311c1 100644 --- a/src/commands/images/glass.js +++ b/src/commands/images/glass.js @@ -3,7 +3,7 @@ const Discord = require('discord.js'); module.exports = async (client, interaction, args) => { let link = `https://some-random-api.ml/canvas/glass/?avatar=${interaction.user.avatarURL({ size: 1024, format: 'png' })}` - const attachment = new Discord.MessageAttachment(link, 'glass.png'); + const attachment = new Discord.AttachmentBuilder(link, {name:'glass.png'}); interaction.editReply({ files: [attachment] }) }; \ No newline at end of file diff --git a/src/commands/images/greyscale.js b/src/commands/images/greyscale.js index 38080ab..ea9a8d6 100644 --- a/src/commands/images/greyscale.js +++ b/src/commands/images/greyscale.js @@ -8,9 +8,8 @@ module.exports = async (client, interaction, args) => { const userAvatar = member.displayAvatarURL({ dynamic: false, size: 1024, format: 'png' }); const image = await pop.greyscale(userAvatar); - let attach = new Discord.MessageAttachment(image, "greyscale.png"); + let attach = new Discord.AttachmentBuilder(image, { name: "greyscale.png" }); interaction.editReply({ files: [attach] }) } - \ No newline at end of file diff --git a/src/commands/images/invert.js b/src/commands/images/invert.js index a2d21c5..3f835eb 100644 --- a/src/commands/images/invert.js +++ b/src/commands/images/invert.js @@ -8,9 +8,8 @@ module.exports = async (client, interaction, args) => { const userAvatar = member.displayAvatarURL({ dynamic: false, size: 1024, format: 'png' }); const image = await pop.invert(userAvatar); - let attach = new Discord.MessageAttachment(image, "invert.png"); + let attach = new Discord.AttachmentBuilder(image, { name: "invert.png" }); interaction.editReply({ files: [attach] }) } - \ No newline at end of file diff --git a/src/commands/images/kiss.js b/src/commands/images/kiss.js index 27a4051..b1698c6 100644 --- a/src/commands/images/kiss.js +++ b/src/commands/images/kiss.js @@ -8,9 +8,8 @@ module.exports = async (client, interaction, args) => { let avatar = interaction.user.displayAvatarURL({ dynamic: false, size: 1024, format: 'png' }); const userAvatar = member.displayAvatarURL({ dynamic: false, size: 1024, format: 'png' }); const image = await new DIG.Kiss().getImage(avatar, userAvatar); - let attach = new Discord.MessageAttachment(image, "kiss.png"); + let attach = new Discord.AttachmentBuilder(image, { name: "kiss.png" }); interaction.editReply({ files: [attach] }) } - \ No newline at end of file diff --git a/src/commands/images/podium.js b/src/commands/images/podium.js index db2cac3..19ba740 100644 --- a/src/commands/images/podium.js +++ b/src/commands/images/podium.js @@ -6,14 +6,13 @@ module.exports = async (client, interaction, args) => { const user2 = interaction.options.getUser('user2') || interaction.user; const user3 = interaction.options.getUser('user3') || interaction.user; - var user1Avatar = user1.displayAvatarURL({ dynamic: false, size: 1024, format: 'png' }); - var user2Avatar = user2.displayAvatarURL({ dynamic: false, size: 1024, format: 'png' }); - var user3Avatar = user3.displayAvatarURL({ dynamic: false, size: 1024, format: 'png' }); + var user1Avatar = user1.displayAvatarURL({ dynamic: false, size: 1024, format: 'png' }); + var user2Avatar = user2.displayAvatarURL({ dynamic: false, size: 1024, format: 'png' }); + var user3Avatar = user3.displayAvatarURL({ dynamic: false, size: 1024, format: 'png' }); - var img = await new DIG.Podium().getImage(user1Avatar, user2Avatar, user3Avatar, user1.tag, user2.tag, user3.tag); - var attach = new Discord.MessageAttachment(img, "podium.png"); + var img = await new DIG.Podium().getImage(user1Avatar, user2Avatar, user3Avatar, user1.tag, user2.tag, user3.tag); + var attach = new Discord.AttachmentBuilder(img, { name: "podium.png" }); interaction.editReply({ files: [attach] }) } - \ No newline at end of file diff --git a/src/commands/images/pooh.js b/src/commands/images/pooh.js index c71ca12..b3e86f1 100644 --- a/src/commands/images/pooh.js +++ b/src/commands/images/pooh.js @@ -7,10 +7,9 @@ module.exports = async (client, interaction, args) => { const splitArgs2 = interaction.options.getString('text2'); const image = await pop.pooh(splitArgs1, splitArgs2); - let attach = new Discord.MessageAttachment(image, "pooh.png"); + let attach = new Discord.AttachmentBuilder(image, { name: "pooh.png" }); interaction.editReply({ files: [attach] }) } - \ No newline at end of file diff --git a/src/commands/images/spank.js b/src/commands/images/spank.js index 4ad71a8..c08a3b1 100644 --- a/src/commands/images/spank.js +++ b/src/commands/images/spank.js @@ -7,7 +7,7 @@ module.exports = async (client, interaction, args) => { let avatar = interaction.user.displayAvatarURL({ dynamic: false, size: 1024, format: 'png' }); const userAvatar = user.displayAvatarURL({ dynamic: false, size: 1024, format: 'png' }); const image = await new DIG.Spank().getImage(avatar, userAvatar); - let attach = new Discord.MessageAttachment(image, "spank.png"); + let attach = new Discord.AttachmentBuilder(image, {name: "spank.png"}); interaction.editReply({ files: [attach] }) } diff --git a/src/commands/images/triggered.js b/src/commands/images/triggered.js index f9a6033..1ef07d8 100644 --- a/src/commands/images/triggered.js +++ b/src/commands/images/triggered.js @@ -3,7 +3,7 @@ const Discord = require('discord.js'); module.exports = async (client, interaction, args) => { let link = `https://some-random-api.ml/canvas/triggered/?avatar=${interaction.user.avatarURL({ size: 1024, format: 'png' })}` - const attachment = new Discord.MessageAttachment(link, 'triggered.gif'); + const attachment = new Discord.AttachmentBuilder(link, { name: 'triggered.gif' }); interaction.editReply({ files: [attachment] }) }; \ No newline at end of file diff --git a/src/commands/images/wanted.js b/src/commands/images/wanted.js index d5c1820..053f370 100644 --- a/src/commands/images/wanted.js +++ b/src/commands/images/wanted.js @@ -6,9 +6,8 @@ module.exports = async (client, interaction, args) => { let userAvatar = user.displayAvatarURL({ size: 1024, dynamic: false, format: 'png' }); let img = await new DIG.Wanted().getImage(userAvatar, `€`); - let attach = new Discord.MessageAttachment(img, "wanted.png");; + let attach = new Discord.AttachmentBuilder(img, { name: "wanted.png" }); interaction.editReply({ files: [attach] }) } - \ No newline at end of file diff --git a/src/commands/invites/add.js b/src/commands/invites/add.js index f4ec792..8153662 100644 --- a/src/commands/invites/add.js +++ b/src/commands/invites/add.js @@ -7,8 +7,8 @@ module.exports = async (client, interaction, args) => { let amount = interaction.options.getNumber('amount'); const perms = await client.checkUserPerms({ - flags: [Discord.Permissions.FLAGS.MANAGE_MESSAGES], - perms: ["MANAGE_MESSAGES"] + flags: [Discord.PermissionsBitField.Flags.ManageMessages], + perms: [Discord.PermissionsBitField.Flags.ManageMessages] }, interaction) if (perms == false) return; diff --git a/src/commands/invites/remove.js b/src/commands/invites/remove.js index 99f4bbb..0fbf173 100644 --- a/src/commands/invites/remove.js +++ b/src/commands/invites/remove.js @@ -7,8 +7,8 @@ module.exports = async (client, interaction, args) => { let amount = interaction.options.getNumber('amount'); const perms = await client.checkUserPerms({ - flags: [Discord.Permissions.FLAGS.MANAGE_MESSAGES], - perms: ["MANAGE_MESSAGES"] + flags: [Discord.PermissionsBitField.Flags.ManageMessages], + perms: [Discord.PermissionsBitField.Flags.ManageMessages] }, interaction) if (perms == false) return; diff --git a/src/commands/levels/createreward.js b/src/commands/levels/createreward.js index 2a405c6..be6688d 100644 --- a/src/commands/levels/createreward.js +++ b/src/commands/levels/createreward.js @@ -7,8 +7,8 @@ module.exports = async (client, interaction, args) => { let role = interaction.options.getRole('role'); const perms = await client.checkUserPerms({ - flags: [Discord.Permissions.FLAGS.MANAGE_MESSAGES], - perms: ["MANAGE_MESSAGES"] + flags: [Discord.PermissionsBitField.Flags.ManageMessages], + perms: [Discord.PermissionsBitField.Flags.ManageMessages] }, interaction) if (perms == false) return; diff --git a/src/commands/levels/deletereward.js b/src/commands/levels/deletereward.js index 69fdd38..b21c40e 100644 --- a/src/commands/levels/deletereward.js +++ b/src/commands/levels/deletereward.js @@ -6,8 +6,8 @@ module.exports = async (client, interaction, args) => { let level = interaction.options.getNumber('level'); const perms = await client.checkUserPerms({ - flags: [Discord.Permissions.FLAGS.MANAGE_MESSAGES], - perms: ["MANAGE_MESSAGES"] + flags: [Discord.PermissionsBitField.Flags.ManageMessages], + perms: [Discord.PermissionsBitField.Flags.ManageMessages] }, interaction) if (perms == false) return; diff --git a/src/commands/levels/rank.js b/src/commands/levels/rank.js index b9c7a1b..98cd615 100644 --- a/src/commands/levels/rank.js +++ b/src/commands/levels/rank.js @@ -26,7 +26,7 @@ module.exports = async (client, interaction, args) => { rankCard.build() .then(data => { - const attachment = new Discord.MessageAttachment(data, "RankCard.png"); + const attachment = new Discord.AttachmentBuilder(data, { name: "RankCard.png" }); interaction.editReply({ files: [attachment] }); }); } @@ -38,4 +38,3 @@ module.exports = async (client, interaction, args) => { } } - \ No newline at end of file diff --git a/src/commands/levels/setlevel.js b/src/commands/levels/setlevel.js index a45c801..c561202 100644 --- a/src/commands/levels/setlevel.js +++ b/src/commands/levels/setlevel.js @@ -8,8 +8,8 @@ module.exports = async (client, interaction, args) => { const data = await Functions.findOne({ Guild: interaction.guild.id }); const perms = await client.checkUserPerms({ - flags: [Discord.Permissions.FLAGS.MANAGE_MESSAGES], - perms: ["MANAGE_MESSAGES"] + flags: [Discord.PermissionsBitField.Flags.ManageMessages], + perms: [Discord.PermissionsBitField.Flags.ManageMessages] }, interaction) if (perms == false) return; diff --git a/src/commands/levels/setxp.js b/src/commands/levels/setxp.js index b6d0701..83eecfd 100644 --- a/src/commands/levels/setxp.js +++ b/src/commands/levels/setxp.js @@ -8,8 +8,8 @@ module.exports = async (client, interaction, args) => { const data = await Functions.findOne({ Guild: interaction.guild.id }); const perms = await client.checkUserPerms({ - flags: [Discord.Permissions.FLAGS.MANAGE_MESSAGES], - perms: ["MANAGE_MESSAGES"] + flags: [Discord.PermissionsBitField.Flags.ManageMessages], + perms: [Discord.PermissionsBitField.Flags.ManageMessages] }, interaction) if (perms == false) return; diff --git a/src/commands/messages/add.js b/src/commands/messages/add.js index 7c541c9..1913150 100644 --- a/src/commands/messages/add.js +++ b/src/commands/messages/add.js @@ -7,8 +7,8 @@ module.exports = async (client, interaction, args) => { let amount = interaction.options.getNumber('amount'); const perms = await client.checkUserPerms({ - flags: [Discord.Permissions.FLAGS.MANAGE_MESSAGES], - perms: ["MANAGE_MESSAGES"] + flags: [Discord.PermissionsBitField.Flags.ManageMessages], + perms: [Discord.PermissionsBitField.Flags.ManageMessages] }, interaction) if (perms == false) return; diff --git a/src/commands/messages/createreward.js b/src/commands/messages/createreward.js index 48ee901..829167e 100644 --- a/src/commands/messages/createreward.js +++ b/src/commands/messages/createreward.js @@ -7,8 +7,8 @@ module.exports = async (client, interaction, args) => { let role = interaction.options.getRole('role'); const perms = await client.checkUserPerms({ - flags: [Discord.Permissions.FLAGS.MANAGE_MESSAGES], - perms: ["MANAGE_MESSAGES"] + flags: [Discord.PermissionsBitField.Flags.ManageMessages], + perms: [Discord.PermissionsBitField.Flags.ManageMessages] }, interaction) if (perms == false) return; diff --git a/src/commands/messages/deletereward.js b/src/commands/messages/deletereward.js index e213712..5d75a10 100644 --- a/src/commands/messages/deletereward.js +++ b/src/commands/messages/deletereward.js @@ -6,8 +6,8 @@ module.exports = async (client, interaction, args) => { let messages = interaction.options.getNumber('amount'); const perms = await client.checkUserPerms({ - flags: [Discord.Permissions.FLAGS.MANAGE_MESSAGES], - perms: ["MANAGE_MESSAGES"] + flags: [Discord.PermissionsBitField.Flags.ManageMessages], + perms: [Discord.PermissionsBitField.Flags.ManageMessages] }, interaction) if (perms == false) return; diff --git a/src/commands/messages/remove.js b/src/commands/messages/remove.js index ee5dfde..0b41bc7 100644 --- a/src/commands/messages/remove.js +++ b/src/commands/messages/remove.js @@ -7,8 +7,8 @@ module.exports = async (client, interaction, args) => { let amount = interaction.options.getNumber('amount'); const perms = await client.checkUserPerms({ - flags: [Discord.Permissions.FLAGS.MANAGE_MESSAGES], - perms: ["MANAGE_MESSAGES"] + flags: [Discord.PermissionsBitField.Flags.ManageMessages], + perms: [Discord.PermissionsBitField.Flags.ManageMessages] }, interaction) if (perms == false) return; diff --git a/src/commands/moderation/ban.js b/src/commands/moderation/ban.js index 792347a..40da02d 100644 --- a/src/commands/moderation/ban.js +++ b/src/commands/moderation/ban.js @@ -2,8 +2,8 @@ const Discord = require('discord.js'); module.exports = async (client, interaction, args) => { const perms = await client.checkPerms({ - flags: [Discord.Permissions.FLAGS.BAN_MEMBERS], - perms: ["BAN_MEMBERS"] + flags: [Discord.PermissionsBitField.Flags.BanMembers], + perms: [Discord.PermissionsBitField.Flags.BanMembers] }, interaction) if (perms == false) return; @@ -11,7 +11,7 @@ module.exports = async (client, interaction, args) => { const member = await interaction.guild.members.fetch(interaction.options.getUser('user').id); const reason = interaction.options.getString('reason') || 'Not given'; - if (member.permissions.has(Discord.Permissions.FLAGS.BAN_MEMBERS) || member.permissions.has(Discord.Permissions.FLAGS.BAN_MEMBERS)) return client.errNormal({ + if (member.permissions.has(Discord.PermissionsBitField.Flags.BanMembers) || member.permissions.has(Discord.PermissionsBitField.Flags.BanMembers)) return client.errNormal({ error: "You can't ban a moderator", type: 'editreply' }, interaction); diff --git a/src/commands/moderation/banlist.js b/src/commands/moderation/banlist.js index e41ebe4..109b2e9 100644 --- a/src/commands/moderation/banlist.js +++ b/src/commands/moderation/banlist.js @@ -2,8 +2,8 @@ const Discord = require('discord.js'); module.exports = async (client, interaction, args) => { const perms = await client.checkPerms({ - flags: [Discord.Permissions.FLAGS.BAN_MEMBERS], - perms: ["BAN_MEMBERS"] + flags: [Discord.PermissionsBitField.Flags.BanMembers], + perms: [Discord.PermissionsBitField.Flags.BanMembers] }, interaction) if (perms == false) return; diff --git a/src/commands/moderation/clear.js b/src/commands/moderation/clear.js index 77f48e5..2bd713d 100644 --- a/src/commands/moderation/clear.js +++ b/src/commands/moderation/clear.js @@ -2,8 +2,8 @@ const Discord = require('discord.js'); module.exports = async (client, interaction, args) => { const perms = await client.checkPerms({ - flags: [Discord.Permissions.FLAGS.MANAGE_MESSAGES], - perms: ["MANAGE_MESSAGES"] + flags: [Discord.PermissionsBitField.Flags.ManageMessages], + perms: [Discord.PermissionsBitField.Flags.ManageMessages] }, interaction); if (perms == false) return; diff --git a/src/commands/moderation/clearuser.js b/src/commands/moderation/clearuser.js index 3eaca08..330ed11 100644 --- a/src/commands/moderation/clearuser.js +++ b/src/commands/moderation/clearuser.js @@ -2,8 +2,8 @@ const Discord = require('discord.js'); module.exports = async (client, interaction, args) => { const perms = await client.checkPerms({ - flags: [Discord.Permissions.FLAGS.MANAGE_MESSAGES], - perms: ["MANAGE_MESSAGES"] + flags: [Discord.PermissionsBitField.Flags.ManageMessages], + perms: [Discord.PermissionsBitField.Flags.ManageMessages] }, interaction); if (perms == false) return; diff --git a/src/commands/moderation/demote.js b/src/commands/moderation/demote.js index ed8a3fc..ae6664a 100644 --- a/src/commands/moderation/demote.js +++ b/src/commands/moderation/demote.js @@ -2,8 +2,8 @@ const Discord = require('discord.js'); module.exports = async (client, interaction, args) => { const perms = await client.checkPerms({ - flags: [Discord.Permissions.FLAGS.BAN_MEMBERS], - perms: ["BAN_MEMBERS"] + flags: [Discord.PermissionsBitField.Flags.BanMembers], + perms: [Discord.PermissionsBitField.Flags.BanMembers] }, interaction) if (perms == false) return; diff --git a/src/commands/moderation/kick.js b/src/commands/moderation/kick.js index 4545c27..bb1d74e 100644 --- a/src/commands/moderation/kick.js +++ b/src/commands/moderation/kick.js @@ -2,8 +2,8 @@ const Discord = require('discord.js'); module.exports = async (client, interaction, args) => { const perms = await client.checkPerms({ - flags: [Discord.Permissions.FLAGS.KICK_MEMBERS], - perms: ["KICK_MEMBERS"] + flags: [Discord.PermissionsBitField.Flags.KickMembers], + perms: [Discord.PermissionsBitField.Flags.KickMembers] }, interaction) if (perms == false) return; @@ -11,7 +11,7 @@ module.exports = async (client, interaction, args) => { const member = await interaction.guild.members.fetch(interaction.options.getUser('user').id); const reason = interaction.options.getString('reason') || 'Not given'; - if (member.permissions.has(Discord.Permissions.FLAGS.KICK_MEMBERS) || member.permissions.has(Discord.Permissions.FLAGS.KICK_MEMBERS)) return client.errNormal({ + if (member.permissions.has(Discord.PermissionsBitField.Flags.KickMembers) || member.permissions.has(Discord.PermissionsBitField.Flags.KickMembers)) return client.errNormal({ error: "You can't kick a moderator", type: 'editreply' }, interaction); diff --git a/src/commands/moderation/lock.js b/src/commands/moderation/lock.js index 1193d21..9b85f41 100644 --- a/src/commands/moderation/lock.js +++ b/src/commands/moderation/lock.js @@ -2,8 +2,8 @@ const Discord = require('discord.js'); module.exports = async (client, interaction, args) => { const perms = await client.checkPerms({ - flags: [Discord.Permissions.FLAGS.MANAGE_CHANNELS], - perms: ["MANAGE_CHANNELS"] + flags: [Discord.PermissionsBitField.Flags.ManageChannels], + perms: [Discord.PermissionsBitField.Flags.ManageChannels] }, interaction); if (perms == false) return; @@ -11,7 +11,7 @@ module.exports = async (client, interaction, args) => { const channel = interaction.options.getChannel('channel') || interaction.channel; await channel.permissionOverwrites.edit(interaction.guild.roles.cache.find(x => x.name === '@everyone'), { - SEND_MESSAGES: false, + SendMessages: false, }); client.succNormal({ diff --git a/src/commands/moderation/lockdown.js b/src/commands/moderation/lockdown.js index 9eeaa90..2844018 100644 --- a/src/commands/moderation/lockdown.js +++ b/src/commands/moderation/lockdown.js @@ -2,16 +2,16 @@ const Discord = require('discord.js'); module.exports = async (client, interaction, args) => { const perms = await client.checkPerms({ - flags: [Discord.Permissions.FLAGS.MANAGE_CHANNELS], - perms: ["MANAGE_CHANNELS"] + flags: [Discord.PermissionsBitField.Flags.ManageChannels], + perms: [Discord.PermissionsBitField.Flags.ManageChannels] }, interaction); if (perms == false) return; interaction.guild.channels.cache.forEach(ch => { - if (ch.type == "text") { - ch.permissionOverwrites.edit(interaction.guild.roles.cache.find(x => x.name === '@everyone'), { - SEND_MESSAGES: false, + if (ch.type == Discord.ChannelType.GuildText) { + ch.permissionOverwrites.edit(interaction.guild.id, { + SendMessages: false, }); } }) diff --git a/src/commands/moderation/nuke.js b/src/commands/moderation/nuke.js index c0116d2..5039faf 100644 --- a/src/commands/moderation/nuke.js +++ b/src/commands/moderation/nuke.js @@ -2,8 +2,8 @@ const Discord = require('discord.js'); module.exports = async (client, interaction, args) => { const perms = await client.checkPerms({ - flags: [Discord.Permissions.FLAGS.MANAGE_CHANNELS], - perms: ["MANAGE_CHANNELS"] + flags: [Discord.PermissionsBitField.Flags.ManageChannels], + perms: [Discord.PermissionsBitField.Flags.ManageChannels] }, interaction); if (perms == false) return; diff --git a/src/commands/moderation/softban.js b/src/commands/moderation/softban.js index 04ec678..e417e4d 100644 --- a/src/commands/moderation/softban.js +++ b/src/commands/moderation/softban.js @@ -2,8 +2,8 @@ const Discord = require('discord.js'); module.exports = async (client, interaction, args) => { const perms = await client.checkPerms({ - flags: [Discord.Permissions.FLAGS.BAN_MEMBERS], - perms: ["BAN_MEMBERS"] + flags: [Discord.PermissionsBitField.Flags.BanMembers], + perms: [Discord.PermissionsBitField.Flags.BanMembers] }, interaction) if (perms == false) return; @@ -11,7 +11,7 @@ module.exports = async (client, interaction, args) => { const member = await interaction.guild.members.fetch(interaction.options.getUser('user').id); const reason = interaction.options.getString('reason') || 'Not given'; - if (member.permissions.has(Discord.Permissions.FLAGS.BAN_MEMBERS) || member.permissions.has(Discord.Permissions.FLAGS.BAN_MEMBERS)) return client.errNormal({ + if (member.permissions.has(Discord.PermissionsBitField.Flags.BanMembers) || member.permissions.has(Discord.PermissionsBitField.Flags.BanMembers)) return client.errNormal({ error: "You can't ban a moderator", type: 'editreply' }, interaction); diff --git a/src/commands/moderation/tempban.js b/src/commands/moderation/tempban.js index 092bd55..2433af0 100644 --- a/src/commands/moderation/tempban.js +++ b/src/commands/moderation/tempban.js @@ -4,8 +4,8 @@ const TempSchema = require("../../database/models/tempban"); module.exports = async (client, interaction, args) => { const perms = await client.checkPerms({ - flags: [Discord.Permissions.FLAGS.BAN_MEMBERS], - perms: ["BAN_MEMBERS"] + flags: [Discord.PermissionsBitField.Flags.BanMembers], + perms: [Discord.PermissionsBitField.Flags.BanMembers] }, interaction) if (perms == false) return; @@ -13,7 +13,7 @@ module.exports = async (client, interaction, args) => { const member = await interaction.guild.members.fetch(interaction.options.getUser('user').id); const reason = interaction.options.getString('reason') || 'Not given'; - if (member.permissions.has(Discord.Permissions.FLAGS.BAN_MEMBERS) || member.permissions.has(Discord.Permissions.FLAGS.BAN_MEMBERS)) return client.errNormal({ + if (member.permissions.has(Discord.PermissionsBitField.Flags.BanMembers) || member.permissions.has(Discord.PermissionsBitField.Flags.BanMembers)) return client.errNormal({ error: "You can't ban a moderator", type: 'editreply' }, interaction); diff --git a/src/commands/moderation/timeout.js b/src/commands/moderation/timeout.js index c36ae9c..376dc86 100644 --- a/src/commands/moderation/timeout.js +++ b/src/commands/moderation/timeout.js @@ -2,8 +2,8 @@ const Discord = require('discord.js'); module.exports = async (client, interaction, args) => { const perms = await client.checkPerms({ - flags: [Discord.Permissions.FLAGS.MODERATE_MEMBERS], - perms: ["MODERATE_MEMBERS"] + flags: [Discord.PermissionsBitField.Flags.ModerateMembers], + perms: [Discord.PermissionsBitField.Flags.ModerateMembers] }, interaction); if (perms == false) return; diff --git a/src/commands/moderation/unban.js b/src/commands/moderation/unban.js index 3bc4514..1974f41 100644 --- a/src/commands/moderation/unban.js +++ b/src/commands/moderation/unban.js @@ -2,25 +2,26 @@ const Discord = require('discord.js'); module.exports = async (client, interaction, args) => { const perms = await client.checkPerms({ - flags: [Discord.Permissions.FLAGS.BAN_MEMBERS], - perms: ["BAN_MEMBERS"] + flags: [Discord.PermissionsBitField.Flags.BanMembers], + perms: [Discord.PermissionsBitField.Flags.BanMembers] }, interaction) if (perms == false) return; - interaction.guild.members.unban(interaction.options.getString('user')).then(function () { + interaction.guild.members.unban(interaction.options.getString('user')).then(async function () { + var member = await interaction.guild.members.cache.get(interaction.options.getString('user')); client.succNormal({ text: "The specified user has been successfully unbanned!", fields: [ { name: "👤┆User", - value: member.user.tag, + value: member ? member.user.tag : interaction.options.getString('user'), inline: true } ], type: 'editreply' }, interaction); - }).catch(function () { + }).catch(function (e) { return client.errNormal({ error: `I could not find the user!`, type: 'editreply' diff --git a/src/commands/moderation/unlock.js b/src/commands/moderation/unlock.js index d1f7963..49a78d5 100644 --- a/src/commands/moderation/unlock.js +++ b/src/commands/moderation/unlock.js @@ -2,8 +2,8 @@ const Discord = require('discord.js'); module.exports = async (client, interaction, args) => { const perms = await client.checkPerms({ - flags: [Discord.Permissions.FLAGS.MANAGE_CHANNELS], - perms: ["MANAGE_CHANNELS"] + flags: [Discord.PermissionsBitField.Flags.ManageChannels], + perms: [Discord.PermissionsBitField.Flags.ManageChannels] }, interaction); if (perms == false) return; @@ -11,7 +11,7 @@ module.exports = async (client, interaction, args) => { const channel = interaction.options.getChannel('channel') || interaction.channel; await channel.permissionOverwrites.edit(interaction.guild.roles.cache.find(x => x.name === '@everyone'), { - SEND_MESSAGES: true, + SendMessages: true, }); client.succNormal({ diff --git a/src/commands/moderation/unwarn.js b/src/commands/moderation/unwarn.js index ab73030..782c9b6 100644 --- a/src/commands/moderation/unwarn.js +++ b/src/commands/moderation/unwarn.js @@ -4,8 +4,8 @@ const Schema = require("../../database/models/warnings"); module.exports = async (client, interaction, args) => { const perms = await client.checkUserPerms({ - flags: [Discord.Permissions.FLAGS.MANAGE_MESSAGES], - perms: ["MANAGE_MESSAGES"] + flags: [Discord.PermissionsBitField.Flags.ManageMessages], + perms: [Discord.PermissionsBitField.Flags.ManageMessages] }, interaction); if (perms == false) return; diff --git a/src/commands/moderation/warn.js b/src/commands/moderation/warn.js index f2b0cbc..6ee7694 100644 --- a/src/commands/moderation/warn.js +++ b/src/commands/moderation/warn.js @@ -4,8 +4,8 @@ const Schema = require("../../database/models/warnings"); module.exports = async (client, interaction, args) => { const perms = await client.checkUserPerms({ - flags: [Discord.Permissions.FLAGS.MANAGE_MESSAGES], - perms: ["MANAGE_MESSAGES"] + flags: [Discord.PermissionsBitField.Flags.ManageMessages], + perms: [Discord.PermissionsBitField.Flags.ManageMessages] }, interaction); if (perms == false) return; diff --git a/src/commands/moderation/warnings.js b/src/commands/moderation/warnings.js index ba14c94..302d788 100644 --- a/src/commands/moderation/warnings.js +++ b/src/commands/moderation/warnings.js @@ -4,8 +4,8 @@ const Schema = require("../../database/models/warnings"); module.exports = async (client, interaction, args) => { const perms = await client.checkUserPerms({ - flags: [Discord.Permissions.FLAGS.MANAGE_MESSAGES], - perms: ["MANAGE_MESSAGES"] + flags: [Discord.PermissionsBitField.Flags.ManageMessages], + perms: [Discord.PermissionsBitField.Flags.ManageMessages] }, interaction); if (perms == false) return; diff --git a/src/commands/music/play.js b/src/commands/music/play.js index 77af298..5cf685d 100644 --- a/src/commands/music/play.js +++ b/src/commands/music/play.js @@ -34,8 +34,8 @@ module.exports = async (client, interaction, args) => { player.connect() setTimeout(() => { - if (channel.type == "GUILD_STAGE_VOICE") { - interaction.guild.me.voice.setSuppressed(false); + if (channel.type == Discord.ChannelType.GuildStageVoice) { + interaction.guild.members.me.voice.setSuppressed(false); } }, 500) } @@ -119,41 +119,41 @@ module.exports = async (client, interaction, args) => { let max = 5, collected, filter = (i) => i.user.id === interaction.user.id; if (res.tracks.length < max) max = res.tracks.length; - let row = new Discord.MessageActionRow() + let row = new Discord.ActionRowBuilder() .addComponents( - new Discord.MessageButton() + new Discord.ButtonBuilder() .setEmoji("1️⃣") .setCustomId("1") - .setStyle("SECONDARY"), + .setStyle(Discord.ButtonStyle.Secondary), - new Discord.MessageButton() + new Discord.ButtonBuilder() .setEmoji("2️⃣") .setCustomId("2") - .setStyle("SECONDARY"), + .setStyle(Discord.ButtonStyle.Secondary), - new Discord.MessageButton() + new Discord.ButtonBuilder() .setEmoji("3️⃣") .setCustomId("3") - .setStyle("SECONDARY"), + .setStyle(Discord.ButtonStyle.Secondary), - new Discord.MessageButton() + new Discord.ButtonBuilder() .setEmoji("4️⃣") .setCustomId("4") - .setStyle("SECONDARY"), + .setStyle(Discord.ButtonStyle.Secondary), - new Discord.MessageButton() + new Discord.ButtonBuilder() .setEmoji("5️⃣") .setCustomId("5") - .setStyle("SECONDARY"), + .setStyle(Discord.ButtonStyle.Secondary), ); - let row2 = new Discord.MessageActionRow() + let row2 = new Discord.ActionRowBuilder() .addComponents( - new Discord.MessageButton() + new Discord.ButtonBuilder() .setEmoji("🛑") .setLabel("Cancel") .setCustomId("cancel") - .setStyle("DANGER"), + .setStyle(Discord.ButtonStyle.Danger), ); const results = res.tracks @@ -176,7 +176,7 @@ module.exports = async (client, interaction, args) => { }, interaction) try { - i = await interaction.channel.awaitMessageComponent({ filter, max: 1, time: 30e3, componentType: 'BUTTON', errors: ['time'] }); + i = await interaction.channel.awaitMessageComponent({ filter, max: 1, time: 30e3, componentType: Discord.ComponentType.Button, errors: ['time'] }); } catch (e) { if (!player.queue.current) player.destroy(); return client.errNormal({ diff --git a/src/commands/music/previous.js b/src/commands/music/previous.js index dd071a7..5a2e839 100644 --- a/src/commands/music/previous.js +++ b/src/commands/music/previous.js @@ -21,27 +21,27 @@ module.exports = async (client, interaction, args) => { const track = player.queue.previous; - let row = new Discord.MessageActionRow() + let row = new Discord.ActionRowBuilder() .addComponents( - new Discord.MessageButton() + new Discord.ButtonBuilder() .setEmoji("⏮️") .setCustomId("Bot-musicprev") - .setStyle("PRIMARY"), + .setStyle(Discord.ButtonStyle.Primary), - new Discord.MessageButton() + new Discord.ButtonBuilder() .setEmoji("⏸️") .setCustomId("Bot-musicpause") - .setStyle("PRIMARY"), + .setStyle(Discord.ButtonStyle.Primary), - new Discord.MessageButton() + new Discord.ButtonBuilder() .setEmoji("⏹️") .setCustomId("Bot-musicstop") - .setStyle("PRIMARY"), + .setStyle(Discord.ButtonStyle.Primary), - new Discord.MessageButton() + new Discord.ButtonBuilder() .setEmoji("⏭️") .setCustomId("Bot-musicnext") - .setStyle("PRIMARY"), + .setStyle(Discord.ButtonStyle.Primary), ); client.embed({ diff --git a/src/commands/profile/gender.js b/src/commands/profile/gender.js index bc0292c..3f2f190 100644 --- a/src/commands/profile/gender.js +++ b/src/commands/profile/gender.js @@ -5,7 +5,7 @@ module.exports = async (client, interaction, args) => { Schema.findOne({ User: interaction.user.id }, async (err, data) => { if (data) { - const menu = new Discord.MessageSelectMenu() + const menu = new Discord.StringSelectMenuBuilder() .setCustomId('gender-setup') .setPlaceholder('❌┆Nothing selected') .addOptions( @@ -26,7 +26,7 @@ module.exports = async (client, interaction, args) => { } ); - const row = new Discord.MessageActionRow() + const row = new Discord.ActionRowBuilder() .addComponents(menu) client.embed({ diff --git a/src/commands/radio/play.js b/src/commands/radio/play.js index 2f1c1ed..8f9a318 100644 --- a/src/commands/radio/play.js +++ b/src/commands/radio/play.js @@ -47,12 +47,14 @@ module.exports = async (client, interaction, args) => { type: 'editreply' }, interaction) - let embed = new Discord.MessageEmbed() + let embed = new Discord.EmbedBuilder() .setTitle(`📻・Started radio`) .setDescription(`_______________ \n\nRadio has started successfully`) - .addField('👤┆Started by', `${interaction.user} (${interaction.user.tag})`, true) - .addField(`📺┆Channel`, `${channel} (${channel.id})`, true) - .addField(`⚙️┆Guild`, `${interaction.guild.name} (${interaction.guild.id})`, true) + .addFields( + { name: "👤┆Started By", value: `${interaction.user} (${interaction.user.tag})`, inline: true }, + { name: "📺┆Channel", value: `${channel} (${channel.name})`, inline: true }, + { name: "⚙️┆Guild", value: `${interaction.guild.name} (${interaction.guild.id})`, inline: true }, + ) .setColor(client.config.colors.normal) .setTimestamp(); webhookClientLogs.send({ diff --git a/src/commands/radio/stop.js b/src/commands/radio/stop.js index 04d9e2b..d99d753 100644 --- a/src/commands/radio/stop.js +++ b/src/commands/radio/stop.js @@ -31,12 +31,14 @@ module.exports = async (client, interaction, args) => { type: 'editreply' }, interaction) - let embed = new Discord.MessageEmbed() + let embed = new Discord.EmbedBuilder() .setTitle(`📻・Radio stopped`) .setDescription(`_______________ \n\nRadio has stopped successfully`) - .addField('👤┆Stopped by', `${interaction.user} (${interaction.user.tag})`, true) - .addField(`📺┆Channel`, `${channel} (${channel.id})`, true) - .addField(`⚙️┆Guild`, `${interaction.guild.name} (${interaction.guild.id})`, true) + .addFields( + { name: "👤┆Stopped By", value: `${interaction.user} (${interaction.user.tag})`, inline: true }, + { name: "📺┆Channel", value: `${channel} (${channel.name})`, inline: true }, + { name: "⚙️┆Guild", value: `${interaction.guild.name} (${interaction.guild.id})`, inline: true }, + ) .setColor(client.config.colors.normal) .setTimestamp(); webhookClientLogs.send({ diff --git a/src/commands/reactionroles/add.js b/src/commands/reactionroles/add.js index d4a9b01..b0283fd 100644 --- a/src/commands/reactionroles/add.js +++ b/src/commands/reactionroles/add.js @@ -7,7 +7,7 @@ module.exports = async (client, interaction, args) => { const role = interaction.options.getRole('role'); const emoji = interaction.options.getString('emoji'); - const parsedEmoji = Discord.Util.parseEmoji(emoji); + const parsedEmoji = Discord.parseEmoji(emoji); if (!parsedEmoji) return client.errNormal({ error: `Emoji not found in this server!`, type: 'editreply' diff --git a/src/commands/reactionroles/menu.js b/src/commands/reactionroles/menu.js index 0872453..49c2a50 100644 --- a/src/commands/reactionroles/menu.js +++ b/src/commands/reactionroles/menu.js @@ -22,7 +22,7 @@ module.exports = async (client, interaction, args) => { return `${data.Roles[value][1].raw} | ${role}`; }).join("\n"); - const menu = new Discord.MessageSelectMenu() + const menu = new Discord.StringSelectMenuBuilder() .setCustomId('reaction_select') .setPlaceholder('❌┇Nothing selected') .setMinValues(1) @@ -44,7 +44,7 @@ module.exports = async (client, interaction, args) => { await menu.addOptions(labels); - const row = new Discord.MessageActionRow() + const row = new Discord.ActionRowBuilder() .addComponents(menu) client.embed({ diff --git a/src/commands/serverstats/animated-emoji.js b/src/commands/serverstats/animated-emoji.js index c176105..854c98d 100644 --- a/src/commands/serverstats/animated-emoji.js +++ b/src/commands/serverstats/animated-emoji.js @@ -25,10 +25,11 @@ module.exports = async (client, interaction, args) => { channelName = channelName.replace(`{emoji}`, "🤡") channelName = channelName.replace(`{name}`, `Animated Emojis: ${Animated || '0'}`) - await interaction.guild.channels.create(channelName, { - type: 'GUILD_VOICE', permissionOverwrites: [ + await interaction.guild.channels.create({ + name: channelName, + type: Discord.ChannelType.GuildVoice, permissionOverwrites: [ { - deny: 'CONNECT', + deny: [Discord.PermissionsBitField.Flags.Connect], id: interaction.guild.id }, ], diff --git a/src/commands/serverstats/boosts.js b/src/commands/serverstats/boosts.js index 7fd6942..405415d 100644 --- a/src/commands/serverstats/boosts.js +++ b/src/commands/serverstats/boosts.js @@ -7,10 +7,11 @@ module.exports = async (client, interaction, args) => { channelName = channelName.replace(`{emoji}`, "💎") channelName = channelName.replace(`{name}`, `Boosts: ${interaction.guild.premiumSubscriptionCount || '0'}`) - interaction.guild.channels.create(channelName, { - type: 'GUILD_VOICE', permissionOverwrites: [ + interaction.guild.channels.create({ + name: channelName, + type: Discord.ChannelType.GuildVoice, permissionOverwrites: [ { - deny: 'CONNECT', + deny: [Discord.PermissionsBitField.Flags.Connect], id: interaction.guild.id }, ], @@ -42,4 +43,3 @@ module.exports = async (client, interaction, args) => { } - \ No newline at end of file diff --git a/src/commands/serverstats/bots.js b/src/commands/serverstats/bots.js index f80766d..c12bf7f 100644 --- a/src/commands/serverstats/bots.js +++ b/src/commands/serverstats/bots.js @@ -9,10 +9,11 @@ module.exports = async (client, interaction, args) => { channelName = channelName.replace(`{emoji}`, "🤖") channelName = channelName.replace(`{name}`, `Bots: ${members.filter(member => member.user.bot).size || 0}`) - await interaction.guild.channels.create(channelName, { - type: 'GUILD_VOICE', permissionOverwrites: [ + await interaction.guild.channels.create({ + name: channelName, + type: Discord.ChannelType.GuildVoice, permissionOverwrites: [ { - deny: 'CONNECT', + deny: [Discord.PermissionsBitField.Flags.Connect], id: interaction.guild.id }, ], diff --git a/src/commands/serverstats/channels.js b/src/commands/serverstats/channels.js index 61f3276..7d46908 100644 --- a/src/commands/serverstats/channels.js +++ b/src/commands/serverstats/channels.js @@ -7,10 +7,11 @@ module.exports = async (client, interaction, args) => { channelName = channelName.replace(`{emoji}`, "🔧") channelName = channelName.replace(`{name}`, `Channels: ${interaction.guild.channels.cache.size.toLocaleString()}`) - await interaction.guild.channels.create(channelName, { - type: 'GUILD_VOICE', permissionOverwrites: [ + await interaction.guild.channels.create({ + name: channelName, + type: Discord.ChannelType.GuildVoice, permissionOverwrites: [ { - deny: 'CONNECT', + deny: [Discord.PermissionsBitField.Flags.Connect], id: interaction.guild.id }, ], diff --git a/src/commands/serverstats/emoji.js b/src/commands/serverstats/emoji.js index 911c9fa..696ff90 100644 --- a/src/commands/serverstats/emoji.js +++ b/src/commands/serverstats/emoji.js @@ -7,10 +7,11 @@ module.exports = async (client, interaction, args) => { channelName = channelName.replace(`{emoji}`, "😛") channelName = channelName.replace(`{name}`, `Emojis: ${interaction.guild.emojis.cache.size || '0'}`) - await interaction.guild.channels.create(channelName, { - type: 'GUILD_VOICE', permissionOverwrites: [ + await interaction.guild.channels.create({ + name: channelName, + type: Discord.ChannelType.GuildVoice, permissionOverwrites: [ { - deny: 'CONNECT', + deny: [Discord.PermissionsBitField.Flags.Connect], id: interaction.guild.id }, ], diff --git a/src/commands/serverstats/members.js b/src/commands/serverstats/members.js index 10e8d16..c449a89 100644 --- a/src/commands/serverstats/members.js +++ b/src/commands/serverstats/members.js @@ -7,10 +7,11 @@ module.exports = async (client, interaction, args) => { channelName = channelName.replace(`{emoji}`, "👤") channelName = channelName.replace(`{name}`, `Members: ${interaction.guild.memberCount.toLocaleString()}`) - await interaction.guild.channels.create(channelName, { - type: 'GUILD_VOICE', permissionOverwrites: [ + await interaction.guild.channels.create({ + name: channelName, + type: Discord.ChannelType.GuildVoice, permissionOverwrites: [ { - deny: 'CONNECT', + deny: [Discord.PermissionsBitField.Flags.Connect], id: interaction.guild.id }, ], diff --git a/src/commands/serverstats/news-channels.js b/src/commands/serverstats/news-channels.js index 37cd48b..332f91a 100644 --- a/src/commands/serverstats/news-channels.js +++ b/src/commands/serverstats/news-channels.js @@ -5,12 +5,13 @@ const Schema = require("../../database/models/stats"); module.exports = async (client, interaction, args) => { var channelName = await client.getTemplate(interaction.guild); channelName = channelName.replace(`{emoji}`, "📢") - channelName = channelName.replace(`{name}`, `News Channels: ${interaction.guild.channels.cache.filter(channel => channel.type === 'GUILD_NEWS').size || 0}`) + channelName = channelName.replace(`{name}`, `News Channels: ${interaction.guild.channels.cache.filter(channel => channel.type === Discord.ChannelType.GuildAnnouncement).size || 0}`) - await interaction.guild.channels.create(channelName, { - type: 'GUILD_VOICE', permissionOverwrites: [ + await interaction.guild.channels.create({ + name: channelName, + type: Discord.ChannelType.GuildVoice, permissionOverwrites: [ { - deny: 'CONNECT', + deny: [Discord.PermissionsBitField.Flags.Connect], id: interaction.guild.id }, ], diff --git a/src/commands/serverstats/roles.js b/src/commands/serverstats/roles.js index 305561e..f81487e 100644 --- a/src/commands/serverstats/roles.js +++ b/src/commands/serverstats/roles.js @@ -7,10 +7,11 @@ module.exports = async (client, interaction, args) => { channelName = channelName.replace(`{emoji}`, "👔") channelName = channelName.replace(`{name}`, `Roles: ${interaction.guild.roles.cache.size.toLocaleString()}`) - await interaction.guild.channels.create(channelName, { - type: 'GUILD_VOICE', permissionOverwrites: [ + await interaction.guild.channels.create({ + name: channelName, + type: Discord.ChannelType.GuildVoice, permissionOverwrites: [ { - deny: 'CONNECT', + deny: [Discord.PermissionsBitField.Flags.Connect], id: interaction.guild.id }, ], diff --git a/src/commands/serverstats/stage-channels.js b/src/commands/serverstats/stage-channels.js index f14f3e2..0a533be 100644 --- a/src/commands/serverstats/stage-channels.js +++ b/src/commands/serverstats/stage-channels.js @@ -5,12 +5,13 @@ const Schema = require("../../database/models/stats"); module.exports = async (client, interaction, args) => { var channelName = await client.getTemplate(interaction.guild); channelName = channelName.replace(`{emoji}`, "🎤") - channelName = channelName.replace(`{name}`, `Stage Channels: ${interaction.guild.channels.cache.filter(channel => channel.type === 'GUILD_STAGE_VOICE').size || 0}`) + channelName = channelName.replace(`{name}`, `Stage Channels: ${interaction.guild.channels.cache.filter(channel => channel.type === Discord.ChannelType.GuildStageVoice).size || 0}`) - await interaction.guild.channels.create(channelName, { - type: 'GUILD_VOICE', permissionOverwrites: [ + await interaction.guild.channels.create({ + name: channelName, + type: Discord.ChannelType.GuildVoice, permissionOverwrites: [ { - deny: 'CONNECT', + deny: [Discord.PermissionsBitField.Flags.Connect], id: interaction.guild.id }, ], diff --git a/src/commands/serverstats/static-emoji.js b/src/commands/serverstats/static-emoji.js index 1671d57..d94b432 100644 --- a/src/commands/serverstats/static-emoji.js +++ b/src/commands/serverstats/static-emoji.js @@ -25,10 +25,11 @@ module.exports = async (client, interaction, args) => { channelName = channelName.replace(`{emoji}`, "😀") channelName = channelName.replace(`{name}`, `Static Emojis: ${EmojiCount || '0'}`) - await interaction.guild.channels.create(channelName, { - type: 'GUILD_VOICE', permissionOverwrites: [ + await interaction.guild.channels.create({ + name: channelName, + type: Discord.ChannelType.GuildVoice, permissionOverwrites: [ { - deny: 'CONNECT', + deny: [Discord.PermissionsBitField.Flags.Connect], id: interaction.guild.id }, ], @@ -60,4 +61,3 @@ module.exports = async (client, interaction, args) => { } - \ No newline at end of file diff --git a/src/commands/serverstats/text-channels.js b/src/commands/serverstats/text-channels.js index 8eb1746..3b54c95 100644 --- a/src/commands/serverstats/text-channels.js +++ b/src/commands/serverstats/text-channels.js @@ -5,12 +5,13 @@ const Schema = require("../../database/models/stats"); module.exports = async (client, interaction, args) => { var channelName = await client.getTemplate(interaction.guild); channelName = channelName.replace(`{emoji}`, "💬") - channelName = channelName.replace(`{name}`, `Text Channels: ${interaction.guild.channels.cache.filter(channel => channel.type === 'GUILD_TEXT').size || 0}`) + channelName = channelName.replace(`{name}`, `Text Channels: ${interaction.guild.channels.cache.filter(channel => channel.type === Discord.ChannelType.GuildText).size || 0}`) - await interaction.guild.channels.create(channelName, { - type: 'GUILD_VOICE', permissionOverwrites: [ + await interaction.guild.channels.create({ + name: channelName, + type: Discord.ChannelType.GuildVoice, permissionOverwrites: [ { - deny: 'CONNECT', + deny: [Discord.PermissionsBitField.Flags.Connect], id: interaction.guild.id }, ], diff --git a/src/commands/serverstats/tier.js b/src/commands/serverstats/tier.js index ed2f7ce..3c2b31b 100644 --- a/src/commands/serverstats/tier.js +++ b/src/commands/serverstats/tier.js @@ -14,10 +14,11 @@ module.exports = async (client, interaction, args) => { channelName = channelName.replace(`{emoji}`, "🥇") channelName = channelName.replace(`{name}`, `Tier: ${tier[interaction.guild.premiumTier] || '0'}`) - await interaction.guild.channels.create(channelName, { - type: 'GUILD_VOICE', permissionOverwrites: [ + await interaction.guild.channels.create({ + name: channelName, + type: Discord.ChannelType.GuildVoice, permissionOverwrites: [ { - deny: 'CONNECT', + deny: [Discord.PermissionsBitField.Flags.Connect], id: interaction.guild.id }, ], diff --git a/src/commands/serverstats/time.js b/src/commands/serverstats/time.js index e45b9e8..de7ce64 100644 --- a/src/commands/serverstats/time.js +++ b/src/commands/serverstats/time.js @@ -18,10 +18,11 @@ module.exports = async (client, interaction, args) => { channelName = channelName.replace(`{emoji}`, "⏰") channelName = channelName.replace(`{name}`, `${timeNow}`) - await interaction.guild.channels.create(channelName, { - type: 'GUILD_VOICE', permissionOverwrites: [ + await interaction.guild.channels.create({ + name: channelName, + type: Discord.ChannelType.GuildVoice, permissionOverwrites: [ { - deny: 'CONNECT', + deny: [Discord.PermissionsBitField.Flags.Connect], id: interaction.guild.id }, ], diff --git a/src/commands/serverstats/voice-channels.js b/src/commands/serverstats/voice-channels.js index 12400b0..991c817 100644 --- a/src/commands/serverstats/voice-channels.js +++ b/src/commands/serverstats/voice-channels.js @@ -5,12 +5,13 @@ const Schema = require("../../database/models/stats"); module.exports = async (client, interaction, args) => { var channelName = await client.getTemplate(interaction.guild); channelName = channelName.replace(`{emoji}`, "🔊") - channelName = channelName.replace(`{name}`, `Voice Channels: ${interaction.guild.channels.cache.filter(channel => channel.type === 'GUILD_VOICE').size || 0}`) + channelName = channelName.replace(`{name}`, `Voice Channels: ${interaction.guild.channels.cache.filter(channel => channel.type === Discord.ChannelType.GuildVoice).size || 0}`) - await interaction.guild.channels.create(channelName, { - type: 'GUILD_VOICE', permissionOverwrites: [ + await interaction.guild.channels.create({ + name: channelName, + type: Discord.ChannelType.GuildVoice, permissionOverwrites: [ { - deny: 'CONNECT', + deny: [Discord.PermissionsBitField.Flags.Connect], id: interaction.guild.id }, ], diff --git a/src/commands/setup/customvoice.js b/src/commands/setup/customvoice.js index d48e9d1..81260ad 100644 --- a/src/commands/setup/customvoice.js +++ b/src/commands/setup/customvoice.js @@ -6,12 +6,13 @@ module.exports = async (client, interaction, args) => { const category = interaction.options.getChannel('category'); const ChannelName = interaction.options.getString('channelname'); - interaction.guild.channels.create(ChannelName, { - type: "GUILD_VOICE", + interaction.guild.channels.create({ + name: ChannelName, + type: Discord.ChannelType.GuildVoice, parent: category.id, permissionOverwrites: [ { - deny: 'SPEAK', + deny: [Discord.PermissionsBitField.Flags.Speak], id: interaction.guild.id }, ], diff --git a/src/commands/setup/ticketpanel.js b/src/commands/setup/ticketpanel.js index ee8a876..62fa340 100644 --- a/src/commands/setup/ticketpanel.js +++ b/src/commands/setup/ticketpanel.js @@ -9,13 +9,13 @@ module.exports = async (client, interaction, args) => { ticketSchema.findOne({ Guild: interaction.guild.id }, async (err, ticketData) => { if (ticketData) { const channel = interaction.guild.channels.cache.get(ticketData.Channel); - const button = new Discord.MessageButton() + const button = new Discord.ButtonBuilder() .setCustomId('Bot_openticket') .setLabel(name) - .setStyle('PRIMARY') + .setStyle(Discord.ButtonStyle.Primary) .setEmoji('🎫') - const row = new Discord.MessageActionRow() + const row = new Discord.ActionRowBuilder() .addComponents(button) client.embed({ diff --git a/src/commands/soundboard/dancememe.js b/src/commands/soundboard/dancememe.js index 4f41e62..817b15c 100644 --- a/src/commands/soundboard/dancememe.js +++ b/src/commands/soundboard/dancememe.js @@ -3,7 +3,7 @@ module.exports = async (client, interaction, args) => { if (!interaction.member.voice.channel) return client.errNormal({ error: `You're not in a voice channel!`, type: 'editreply' }, interaction); - if (interaction.guild.me.voice.channel && interaction.member.voice.channel.id !== interaction.guild.me.voice.channel.id) return client.errNormal({ error: `You are not in the same voice channel!`, type: 'editreply' }, interaction); + if (interaction.guild.members.me.voice.channel && interaction.member.voice.channel.id !== interaction.guild.members.me.voice.channel.id) return client.errNormal({ error: `You are not in the same voice channel!`, type: 'editreply' }, interaction); client.soundboard(interaction.guild.id, interaction, "https://www.myinstants.com/media/sounds/y2mate-mp3cut_sRzY6rh.mp3"); diff --git a/src/commands/soundboard/defaultdance.js b/src/commands/soundboard/defaultdance.js index 96948b3..0a6a433 100644 --- a/src/commands/soundboard/defaultdance.js +++ b/src/commands/soundboard/defaultdance.js @@ -3,7 +3,7 @@ module.exports = async (client, interaction, args) => { if (!interaction.member.voice.channel) return client.errNormal({ error: `You're not in a voice channel!`, type: 'editreply' }, interaction); - if (interaction.guild.me.voice.channel && interaction.member.voice.channel.id !== interaction.guild.me.voice.channel.id) return client.errNormal({ error: `You are not in the same voice channel!`, type: 'editreply' }, interaction); + if (interaction.guild.members.me.voice.channel && interaction.member.voice.channel.id !== interaction.guild.members.me.voice.channel.id) return client.errNormal({ error: `You are not in the same voice channel!`, type: 'editreply' }, interaction); client.soundboard(interaction.guild.id, interaction, "https://www.myinstants.com/media/sounds/fortnite-default-dance-bass-boosted.mp3"); diff --git a/src/commands/soundboard/despacito.js b/src/commands/soundboard/despacito.js index b46bfee..c7becc9 100644 --- a/src/commands/soundboard/despacito.js +++ b/src/commands/soundboard/despacito.js @@ -3,7 +3,7 @@ module.exports = async (client, interaction, args) => { if (!interaction.member.voice.channel) return client.errNormal({ error: `You're not in a voice channel!`, type: 'editreply' }, interaction); - if (interaction.guild.me.voice.channel && interaction.member.voice.channel.id !== interaction.guild.me.voice.channel.id) return client.errNormal({ error: `You are not in the same voice channel!`, type: 'editreply' }, interaction); + if (interaction.guild.members.me.voice.channel && interaction.member.voice.channel.id !== interaction.guild.members.me.voice.channel.id) return client.errNormal({ error: `You are not in the same voice channel!`, type: 'editreply' }, interaction); client.soundboard(interaction.guild.id, interaction, "https://www.myinstants.com/media/sounds/despacito.mp3"); diff --git a/src/commands/soundboard/discordcall.js b/src/commands/soundboard/discordcall.js index 14fd5e7..5aadaf1 100644 --- a/src/commands/soundboard/discordcall.js +++ b/src/commands/soundboard/discordcall.js @@ -3,7 +3,7 @@ module.exports = async (client, interaction, args) => { if (!interaction.member.voice.channel) return client.errNormal({ error: `You're not in a voice channel!`, type: 'editreply' }, interaction); - if (interaction.guild.me.voice.channel && interaction.member.voice.channel.id !== interaction.guild.me.voice.channel.id) return client.errNormal({ error: `You are not in the same voice channel!`, type: 'editreply' }, interaction); + if (interaction.guild.members.me.voice.channel && interaction.member.voice.channel.id !== interaction.guild.members.me.voice.channel.id) return client.errNormal({ error: `You are not in the same voice channel!`, type: 'editreply' }, interaction); client.soundboard(interaction.guild.id, interaction, "https://www.myinstants.com/media/sounds/discord-call-sound.mp3"); diff --git a/src/commands/soundboard/discordjoin.js b/src/commands/soundboard/discordjoin.js index 027cee3..77166c0 100644 --- a/src/commands/soundboard/discordjoin.js +++ b/src/commands/soundboard/discordjoin.js @@ -3,7 +3,7 @@ module.exports = async (client, interaction, args) => { if (!interaction.member.voice.channel) return client.errNormal({ error: `You're not in a voice channel!`, type: 'editreply' }, interaction); - if (interaction.guild.me.voice.channel && interaction.member.voice.channel.id !== interaction.guild.me.voice.channel.id) return client.errNormal({ error: `You are not in the same voice channel!`, type: 'editreply' }, interaction); + if (interaction.guild.members.me.voice.channel && interaction.member.voice.channel.id !== interaction.guild.members.me.voice.channel.id) return client.errNormal({ error: `You are not in the same voice channel!`, type: 'editreply' }, interaction); client.soundboard(interaction.guild.id, interaction, "https://www.myinstants.com/media/sounds/discord-sounds.mp3"); diff --git a/src/commands/soundboard/discordleave.js b/src/commands/soundboard/discordleave.js index 1798f5d..2ddd423 100644 --- a/src/commands/soundboard/discordleave.js +++ b/src/commands/soundboard/discordleave.js @@ -3,7 +3,7 @@ module.exports = async (client, interaction, args) => { if (!interaction.member.voice.channel) return client.errNormal({ error: `You're not in a voice channel!`, type: 'editreply' }, interaction); - if (interaction.guild.me.voice.channel && interaction.member.voice.channel.id !== interaction.guild.me.voice.channel.id) return client.errNormal({ error: `You are not in the same voice channel!`, type: 'editreply' }, interaction); + if (interaction.guild.members.me.voice.channel && interaction.member.voice.channel.id !== interaction.guild.members.me.voice.channel.id) return client.errNormal({ error: `You are not in the same voice channel!`, type: 'editreply' }, interaction); client.soundboard(interaction.guild.id, interaction, "https://www.myinstants.com/media/sounds/discord-leave_soGsPwn.mp3"); diff --git a/src/commands/soundboard/discordnotification.js b/src/commands/soundboard/discordnotification.js index 40be79e..1833ec1 100644 --- a/src/commands/soundboard/discordnotification.js +++ b/src/commands/soundboard/discordnotification.js @@ -3,7 +3,7 @@ module.exports = async (client, interaction, args) => { if (!interaction.member.voice.channel) return client.errNormal({ error: `You're not in a voice channel!`, type: 'editreply' }, interaction); - if (interaction.guild.me.voice.channel && interaction.member.voice.channel.id !== interaction.guild.me.voice.channel.id) return client.errNormal({ error: `You are not in the same voice channel!`, type: 'editreply' }, interaction); + if (interaction.guild.members.me.voice.channel && interaction.member.voice.channel.id !== interaction.guild.members.me.voice.channel.id) return client.errNormal({ error: `You are not in the same voice channel!`, type: 'editreply' }, interaction); client.soundboard(interaction.guild.id, interaction, "https://www.myinstants.com/media/sounds/discord-notification.mp3"); diff --git a/src/commands/soundboard/elevator.js b/src/commands/soundboard/elevator.js index 316c50c..22a2e8d 100644 --- a/src/commands/soundboard/elevator.js +++ b/src/commands/soundboard/elevator.js @@ -3,7 +3,7 @@ module.exports = async (client, interaction, args) => { if (!interaction.member.voice.channel) return client.errNormal({ error: `You're not in a voice channel!`, type: 'editreply' }, interaction); - if (interaction.guild.me.voice.channel && interaction.member.voice.channel.id !== interaction.guild.me.voice.channel.id) return client.errNormal({ error: `You are not in the same voice channel!`, type: 'editreply' }, interaction); + if (interaction.guild.members.me.voice.channel && interaction.member.voice.channel.id !== interaction.guild.members.me.voice.channel.id) return client.errNormal({ error: `You are not in the same voice channel!`, type: 'editreply' }, interaction); client.soundboard(interaction.guild.id, interaction, "https://www.myinstants.com/media/sounds/musique-dascenseur-mp3cut.mp3"); diff --git a/src/commands/soundboard/fbi.js b/src/commands/soundboard/fbi.js index ac1d29a..298d6b7 100644 --- a/src/commands/soundboard/fbi.js +++ b/src/commands/soundboard/fbi.js @@ -3,7 +3,7 @@ module.exports = async (client, interaction, args) => { if (!interaction.member.voice.channel) return client.errNormal({ error: `You're not in a voice channel!`, type: 'editreply' }, interaction); - if (interaction.guild.me.voice.channel && interaction.member.voice.channel.id !== interaction.guild.me.voice.channel.id) return client.errNormal({ error: `You are not in the same voice channel!`, type: 'editreply' }, interaction); + if (interaction.guild.members.me.voice.channel && interaction.member.voice.channel.id !== interaction.guild.members.me.voice.channel.id) return client.errNormal({ error: `You are not in the same voice channel!`, type: 'editreply' }, interaction); client.soundboard(interaction.guild.id, interaction, "https://www.myinstants.com/media/sounds/fbi-open-up-sfx.mp3"); diff --git a/src/commands/soundboard/jeff.js b/src/commands/soundboard/jeff.js index c2764fb..2290c4b 100644 --- a/src/commands/soundboard/jeff.js +++ b/src/commands/soundboard/jeff.js @@ -3,7 +3,7 @@ module.exports = async (client, interaction, args) => { if (!interaction.member.voice.channel) return client.errNormal({ error: `You're not in a voice channel!`, type: 'editreply' }, interaction); - if (interaction.guild.me.voice.channel && interaction.member.voice.channel.id !== interaction.guild.me.voice.channel.id) return client.errNormal({ error: `You are not in the same voice channel!`, type: 'editreply' }, interaction); + if (interaction.guild.members.me.voice.channel && interaction.member.voice.channel.id !== interaction.guild.members.me.voice.channel.id) return client.errNormal({ error: `You are not in the same voice channel!`, type: 'editreply' }, interaction); client.soundboard(interaction.guild.id, interaction, "https://www.myinstants.com/media/sounds/jeff.mp3"); diff --git a/src/commands/soundboard/lambo.js b/src/commands/soundboard/lambo.js index 7b4e56f..ab9c3fc 100644 --- a/src/commands/soundboard/lambo.js +++ b/src/commands/soundboard/lambo.js @@ -3,7 +3,7 @@ module.exports = async (client, interaction, args) => { if (!interaction.member.voice.channel) return client.errNormal({ error: `You're not in a voice channel!`, type: 'editreply' }, interaction); - if (interaction.guild.me.voice.channel && interaction.member.voice.channel.id !== interaction.guild.me.voice.channel.id) return client.errNormal({ error: `You are not in the same voice channel!`, type: 'editreply' }, interaction); + if (interaction.guild.members.me.voice.channel && interaction.member.voice.channel.id !== interaction.guild.members.me.voice.channel.id) return client.errNormal({ error: `You are not in the same voice channel!`, type: 'editreply' }, interaction); client.soundboard(interaction.guild.id, interaction, "https://www.myinstants.com/media/sounds/lambo.mp3"); diff --git a/src/commands/soundboard/missionfailed.js b/src/commands/soundboard/missionfailed.js index 473f013..59ff473 100644 --- a/src/commands/soundboard/missionfailed.js +++ b/src/commands/soundboard/missionfailed.js @@ -3,7 +3,7 @@ module.exports = async (client, interaction, args) => { if (!interaction.member.voice.channel) return client.errNormal({ error: `You're not in a voice channel!`, type: 'editreply' }, interaction); - if (interaction.guild.me.voice.channel && interaction.member.voice.channel.id !== interaction.guild.me.voice.channel.id) return client.errNormal({ error: `You are not in the same voice channel!`, type: 'editreply' }, interaction); + if (interaction.guild.members.me.voice.channel && interaction.member.voice.channel.id !== interaction.guild.members.me.voice.channel.id) return client.errNormal({ error: `You are not in the same voice channel!`, type: 'editreply' }, interaction); client.soundboard(interaction.guild.id, interaction, "https://www.myinstants.com/media/sounds/dank-meme-compilation-volume-17_cutted.mp3"); diff --git a/src/commands/soundboard/moaning.js b/src/commands/soundboard/moaning.js index 3995809..9ae8295 100644 --- a/src/commands/soundboard/moaning.js +++ b/src/commands/soundboard/moaning.js @@ -3,7 +3,7 @@ module.exports = async (client, interaction, args) => { if (!interaction.member.voice.channel) return client.errNormal({ error: `You're not in a voice channel!`, type: 'editreply' }, interaction); - if (interaction.guild.me.voice.channel && interaction.member.voice.channel.id !== interaction.guild.me.voice.channel.id) return client.errNormal({ error: `You are not in the same voice channel!`, type: 'editreply' }, interaction); + if (interaction.guild.members.me.voice.channel && interaction.member.voice.channel.id !== interaction.guild.members.me.voice.channel.id) return client.errNormal({ error: `You are not in the same voice channel!`, type: 'editreply' }, interaction); client.soundboard(interaction.guild.id, interaction, "https://www.myinstants.com/media/sounds/moaning.mp3"); diff --git a/src/commands/soundboard/nani.js b/src/commands/soundboard/nani.js index 7c0e0a1..3d16d8e 100644 --- a/src/commands/soundboard/nani.js +++ b/src/commands/soundboard/nani.js @@ -3,7 +3,7 @@ module.exports = async (client, interaction, args) => { if (!interaction.member.voice.channel) return client.errNormal({ error: `You're not in a voice channel!`, type: 'editreply' }, interaction); - if (interaction.guild.me.voice.channel && interaction.member.voice.channel.id !== interaction.guild.me.voice.channel.id) return client.errNormal({ error: `You are not in the same voice channel!`, type: 'editreply' }, interaction); + if (interaction.guild.members.me.voice.channel && interaction.member.voice.channel.id !== interaction.guild.members.me.voice.channel.id) return client.errNormal({ error: `You are not in the same voice channel!`, type: 'editreply' }, interaction); client.soundboard(interaction.guild.id, interaction, "https://www.myinstants.com/media/sounds/nani.mp3"); diff --git a/src/commands/soundboard/nyancat.js b/src/commands/soundboard/nyancat.js index e6759f5..3c2171b 100644 --- a/src/commands/soundboard/nyancat.js +++ b/src/commands/soundboard/nyancat.js @@ -3,7 +3,7 @@ module.exports = async (client, interaction, args) => { if (!interaction.member.voice.channel) return client.errNormal({ error: `You're not in a voice channel!`, type: 'editreply' }, interaction); - if (interaction.guild.me.voice.channel && interaction.member.voice.channel.id !== interaction.guild.me.voice.channel.id) return client.errNormal({ error: `You are not in the same voice channel!`, type: 'editreply' }, interaction); + if (interaction.guild.members.me.voice.channel && interaction.member.voice.channel.id !== interaction.guild.members.me.voice.channel.id) return client.errNormal({ error: `You are not in the same voice channel!`, type: 'editreply' }, interaction); client.soundboard(interaction.guild.id, interaction, "https://www.myinstants.com/media/sounds/nyan-cat.mp3"); diff --git a/src/commands/soundboard/ohh.js b/src/commands/soundboard/ohh.js index c55fc42..196bc38 100644 --- a/src/commands/soundboard/ohh.js +++ b/src/commands/soundboard/ohh.js @@ -3,7 +3,7 @@ module.exports = async (client, interaction, args) => { if (!interaction.member.voice.channel) return client.errNormal({ error: `You're not in a voice channel!`, type: 'editreply' }, interaction); - if (interaction.guild.me.voice.channel && interaction.member.voice.channel.id !== interaction.guild.me.voice.channel.id) return client.errNormal({ error: `You are not in the same voice channel!`, type: 'editreply' }, interaction); + if (interaction.guild.members.me.voice.channel && interaction.member.voice.channel.id !== interaction.guild.members.me.voice.channel.id) return client.errNormal({ error: `You are not in the same voice channel!`, type: 'editreply' }, interaction); client.soundboard(interaction.guild.id, interaction, "https://www.myinstants.com/media/sounds/ohh.mp3"); diff --git a/src/commands/soundboard/reee.js b/src/commands/soundboard/reee.js index 430c402..11a6e0e 100644 --- a/src/commands/soundboard/reee.js +++ b/src/commands/soundboard/reee.js @@ -3,7 +3,7 @@ module.exports = async (client, interaction, args) => { if (!interaction.member.voice.channel) return client.errNormal({ error: `You're not in a voice channel!`, type: 'editreply' }, interaction); - if (interaction.guild.me.voice.channel && interaction.member.voice.channel.id !== interaction.guild.me.voice.channel.id) return client.errNormal({ error: `You are not in the same voice channel!`, type: 'editreply' }, interaction); + if (interaction.guild.members.me.voice.channel && interaction.member.voice.channel.id !== interaction.guild.members.me.voice.channel.id) return client.errNormal({ error: `You are not in the same voice channel!`, type: 'editreply' }, interaction); client.soundboard(interaction.guild.id, interaction, "https://www.myinstants.com/media/sounds/reee.mp3"); diff --git a/src/commands/soundboard/rickastley.js b/src/commands/soundboard/rickastley.js index 66721d1..bda2b56 100644 --- a/src/commands/soundboard/rickastley.js +++ b/src/commands/soundboard/rickastley.js @@ -3,7 +3,7 @@ module.exports = async (client, interaction, args) => { if (!interaction.member.voice.channel) return client.errNormal({ error: `You're not in a voice channel!`, type: 'editreply' }, interaction); - if (interaction.guild.me.voice.channel && interaction.member.voice.channel.id !== interaction.guild.me.voice.channel.id) return client.errNormal({ error: `You are not in the same voice channel!`, type: 'editreply' }, interaction); + if (interaction.guild.members.me.voice.channel && interaction.member.voice.channel.id !== interaction.guild.members.me.voice.channel.id) return client.errNormal({ error: `You are not in the same voice channel!`, type: 'editreply' }, interaction); client.soundboard(interaction.guild.id, interaction, "https://www.myinstants.com/media/sounds/epic.swf_1.mp3"); diff --git a/src/commands/soundboard/rimshot.js b/src/commands/soundboard/rimshot.js index dce4cd1..7be35bb 100644 --- a/src/commands/soundboard/rimshot.js +++ b/src/commands/soundboard/rimshot.js @@ -3,7 +3,7 @@ module.exports = async (client, interaction, args) => { if (!interaction.member.voice.channel) return client.errNormal({ error: `You're not in a voice channel!`, type: 'editreply' }, interaction); - if (interaction.guild.me.voice.channel && interaction.member.voice.channel.id !== interaction.guild.me.voice.channel.id) return client.errNormal({ error: `You are not in the same voice channel!`, type: 'editreply' }, interaction); + if (interaction.guild.members.me.voice.channel && interaction.member.voice.channel.id !== interaction.guild.members.me.voice.channel.id) return client.errNormal({ error: `You are not in the same voice channel!`, type: 'editreply' }, interaction); client.soundboard(interaction.guild.id, interaction, "https://www.myinstants.com/media/sounds/rimshot.mp3"); diff --git a/src/commands/soundboard/roblox.js b/src/commands/soundboard/roblox.js index b0d3176..06e5c3c 100644 --- a/src/commands/soundboard/roblox.js +++ b/src/commands/soundboard/roblox.js @@ -3,7 +3,7 @@ module.exports = async (client, interaction, args) => { if (!interaction.member.voice.channel) return client.errNormal({ error: `You're not in a voice channel!`, type: 'editreply' }, interaction); - if (interaction.guild.me.voice.channel && interaction.member.voice.channel.id !== interaction.guild.me.voice.channel.id) return client.errNormal({ error: `You are not in the same voice channel!`, type: 'editreply' }, interaction); + if (interaction.guild.members.me.voice.channel && interaction.member.voice.channel.id !== interaction.guild.members.me.voice.channel.id) return client.errNormal({ error: `You are not in the same voice channel!`, type: 'editreply' }, interaction); client.soundboard(interaction.guild.id, interaction, "https://www.myinstants.com/media/sounds/roblox-death-sound-effect.mp3"); diff --git a/src/commands/soundboard/running.js b/src/commands/soundboard/running.js index c1e3771..a86b3c5 100644 --- a/src/commands/soundboard/running.js +++ b/src/commands/soundboard/running.js @@ -3,7 +3,7 @@ module.exports = async (client, interaction, args) => { if (!interaction.member.voice.channel) return client.errNormal({ error: `You're not in a voice channel!`, type: 'editreply' }, interaction); - if (interaction.guild.me.voice.channel && interaction.member.voice.channel.id !== interaction.guild.me.voice.channel.id) return client.errNormal({ error: `You are not in the same voice channel!`, type: 'editreply' }, interaction); + if (interaction.guild.members.me.voice.channel && interaction.member.voice.channel.id !== interaction.guild.members.me.voice.channel.id) return client.errNormal({ error: `You are not in the same voice channel!`, type: 'editreply' }, interaction); client.soundboard(interaction.guild.id, interaction, "https://www.myinstants.com/media/sounds/running.mp3"); diff --git a/src/commands/soundboard/shotdown.js b/src/commands/soundboard/shotdown.js index 872fce2..3378369 100644 --- a/src/commands/soundboard/shotdown.js +++ b/src/commands/soundboard/shotdown.js @@ -3,7 +3,7 @@ module.exports = async (client, interaction, args) => { if (!interaction.member.voice.channel) return client.errNormal({ error: `You're not in a voice channel!`, type: 'editreply' }, interaction); - if (interaction.guild.me.voice.channel && interaction.member.voice.channel.id !== interaction.guild.me.voice.channel.id) return client.errNormal({ error: `You are not in the same voice channel!`, type: 'editreply' }, interaction); + if (interaction.guild.members.me.voice.channel && interaction.member.voice.channel.id !== interaction.guild.members.me.voice.channel.id) return client.errNormal({ error: `You are not in the same voice channel!`, type: 'editreply' }, interaction); client.soundboard(interaction.guild.id, interaction, "https://www.myinstants.com/media/sounds/shotdown.mp3"); diff --git a/src/commands/soundboard/spongebob.js b/src/commands/soundboard/spongebob.js index 114a285..e7c37b4 100644 --- a/src/commands/soundboard/spongebob.js +++ b/src/commands/soundboard/spongebob.js @@ -3,7 +3,7 @@ module.exports = async (client, interaction, args) => { if (!interaction.member.voice.channel) return client.errNormal({ error: `You're not in a voice channel!`, type: 'editreply' }, interaction); - if (interaction.guild.me.voice.channel && interaction.member.voice.channel.id !== interaction.guild.me.voice.channel.id) return client.errNormal({ error: `You are not in the same voice channel!`, type: 'editreply' }, interaction); + if (interaction.guild.members.me.voice.channel && interaction.member.voice.channel.id !== interaction.guild.members.me.voice.channel.id) return client.errNormal({ error: `You are not in the same voice channel!`, type: 'editreply' }, interaction); client.soundboard(interaction.guild.id, interaction, "https://www.myinstants.com/media/sounds/a-few-moments-later-hd.mp3"); diff --git a/src/commands/soundboard/startup.js b/src/commands/soundboard/startup.js index 31fce80..8a4dc0d 100644 --- a/src/commands/soundboard/startup.js +++ b/src/commands/soundboard/startup.js @@ -3,7 +3,7 @@ module.exports = async (client, interaction, args) => { if (!interaction.member.voice.channel) return client.errNormal({ error: `You're not in a voice channel!`, type: 'editreply' }, interaction); - if (interaction.guild.me.voice.channel && interaction.member.voice.channel.id !== interaction.guild.me.voice.channel.id) return client.errNormal({ error: `You are not in the same voice channel!`, type: 'editreply' }, interaction); + if (interaction.guild.members.me.voice.channel && interaction.member.voice.channel.id !== interaction.guild.members.me.voice.channel.id) return client.errNormal({ error: `You are not in the same voice channel!`, type: 'editreply' }, interaction); client.soundboard(interaction.guild.id, interaction, "https://www.myinstants.com/media/sounds/startup.mp3"); diff --git a/src/commands/soundboard/thomas.js b/src/commands/soundboard/thomas.js index 1e62463..bcf0f8c 100644 --- a/src/commands/soundboard/thomas.js +++ b/src/commands/soundboard/thomas.js @@ -3,7 +3,7 @@ module.exports = async (client, interaction, args) => { if (!interaction.member.voice.channel) return client.errNormal({ error: `You're not in a voice channel!`, type: 'editreply' }, interaction); - if (interaction.guild.me.voice.channel && interaction.member.voice.channel.id !== interaction.guild.me.voice.channel.id) return client.errNormal({ error: `You are not in the same voice channel!`, type: 'editreply' }, interaction); + if (interaction.guild.members.me.voice.channel && interaction.member.voice.channel.id !== interaction.guild.members.me.voice.channel.id) return client.errNormal({ error: `You are not in the same voice channel!`, type: 'editreply' }, interaction); client.soundboard(interaction.guild.id, interaction, "https://www.myinstants.com/media/sounds/thomas.mp3"); diff --git a/src/commands/soundboard/tobecontinued.js b/src/commands/soundboard/tobecontinued.js index 3ec0836..c9c5bab 100644 --- a/src/commands/soundboard/tobecontinued.js +++ b/src/commands/soundboard/tobecontinued.js @@ -3,7 +3,7 @@ module.exports = async (client, interaction, args) => { if (!interaction.member.voice.channel) return client.errNormal({ error: `You're not in a voice channel!`, type: 'editreply' }, interaction); - if (interaction.guild.me.voice.channel && interaction.member.voice.channel.id !== interaction.guild.me.voice.channel.id) return client.errNormal({ error: `You are not in the same voice channel!`, type: 'editreply' }, interaction); + if (interaction.guild.members.me.voice.channel && interaction.member.voice.channel.id !== interaction.guild.members.me.voice.channel.id) return client.errNormal({ error: `You are not in the same voice channel!`, type: 'editreply' }, interaction); client.soundboard(interaction.guild.id, interaction, "https://www.myinstants.com/media/sounds/untitled_1071.mp3"); diff --git a/src/commands/soundboard/wegothim.js b/src/commands/soundboard/wegothim.js index 1e693eb..3061939 100644 --- a/src/commands/soundboard/wegothim.js +++ b/src/commands/soundboard/wegothim.js @@ -3,7 +3,7 @@ module.exports = async (client, interaction, args) => { if (!interaction.member.voice.channel) return client.errNormal({ error: `You're not in a voice channel!`, type: 'editreply' }, interaction); - if (interaction.guild.me.voice.channel && interaction.member.voice.channel.id !== interaction.guild.me.voice.channel.id) return client.errNormal({ error: `You are not in the same voice channel!`, type: 'editreply' }, interaction); + if (interaction.guild.members.me.voice.channel && interaction.member.voice.channel.id !== interaction.guild.members.me.voice.channel.id) return client.errNormal({ error: `You are not in the same voice channel!`, type: 'editreply' }, interaction); client.soundboard(interaction.guild.id, interaction, "https://www.myinstants.com/media/sounds/ladies-and-gentlemen-we-got-him-song.mp3"); diff --git a/src/commands/soundboard/windowserror.js b/src/commands/soundboard/windowserror.js index 1c1d86c..afb351c 100644 --- a/src/commands/soundboard/windowserror.js +++ b/src/commands/soundboard/windowserror.js @@ -3,7 +3,7 @@ module.exports = async (client, interaction, args) => { if (!interaction.member.voice.channel) return client.errNormal({ error: `You're not in a voice channel!`, type: 'editreply' }, interaction); - if (interaction.guild.me.voice.channel && interaction.member.voice.channel.id !== interaction.guild.me.voice.channel.id) return client.errNormal({ error: `You are not in the same voice channel!`, type: 'editreply' }, interaction); + if (interaction.guild.members.me.voice.channel && interaction.member.voice.channel.id !== interaction.guild.members.me.voice.channel.id) return client.errNormal({ error: `You are not in the same voice channel!`, type: 'editreply' }, interaction); client.soundboard(interaction.guild.id, interaction, "https://www.myinstants.com/media/sounds/erro.mp3"); diff --git a/src/commands/soundboard/windowsshutdown.js b/src/commands/soundboard/windowsshutdown.js index b53890b..76e8534 100644 --- a/src/commands/soundboard/windowsshutdown.js +++ b/src/commands/soundboard/windowsshutdown.js @@ -3,7 +3,7 @@ module.exports = async (client, interaction, args) => { if (!interaction.member.voice.channel) return client.errNormal({ error: `You're not in a voice channel!`, type: 'editreply' }, interaction); - if (interaction.guild.me.voice.channel && interaction.member.voice.channel.id !== interaction.guild.me.voice.channel.id) return client.errNormal({ error: `You are not in the same voice channel!`, type: 'editreply' }, interaction); + if (interaction.guild.members.me.voice.channel && interaction.member.voice.channel.id !== interaction.guild.members.me.voice.channel.id) return client.errNormal({ error: `You are not in the same voice channel!`, type: 'editreply' }, interaction); client.soundboard(interaction.guild.id, interaction, "https://www.myinstants.com/media/sounds/preview_4.mp3"); diff --git a/src/commands/soundboard/windowsstartup.js b/src/commands/soundboard/windowsstartup.js index bd2909d..83f27c4 100644 --- a/src/commands/soundboard/windowsstartup.js +++ b/src/commands/soundboard/windowsstartup.js @@ -3,7 +3,7 @@ module.exports = async (client, interaction, args) => { if (!interaction.member.voice.channel) return client.errNormal({ error: `You're not in a voice channel!`, type: 'editreply' }, interaction); - if (interaction.guild.me.voice.channel && interaction.member.voice.channel.id !== interaction.guild.me.voice.channel.id) return client.errNormal({ error: `You are not in the same voice channel!`, type: 'editreply' }, interaction); + if (interaction.guild.members.me.voice.channel && interaction.member.voice.channel.id !== interaction.guild.members.me.voice.channel.id) return client.errNormal({ error: `You are not in the same voice channel!`, type: 'editreply' }, interaction); client.soundboard(interaction.guild.id, interaction, "https://www.myinstants.com/media/sounds/windows-xp-startup.mp3"); diff --git a/src/commands/soundboard/wow.js b/src/commands/soundboard/wow.js index 25989cb..0b632fb 100644 --- a/src/commands/soundboard/wow.js +++ b/src/commands/soundboard/wow.js @@ -3,7 +3,7 @@ module.exports = async (client, interaction, args) => { if (!interaction.member.voice.channel) return client.errNormal({ error: `You're not in a voice channel!`, type: 'editreply' }, interaction); - if (interaction.guild.me.voice.channel && interaction.member.voice.channel.id !== interaction.guild.me.voice.channel.id) return client.errNormal({ error: `You are not in the same voice channel!`, type: 'editreply' }, interaction); + if (interaction.guild.members.me.voice.channel && interaction.member.voice.channel.id !== interaction.guild.members.me.voice.channel.id) return client.errNormal({ error: `You are not in the same voice channel!`, type: 'editreply' }, interaction); client.soundboard(interaction.guild.id, interaction, "https://www.myinstants.com/media/sounds/anime-wow-sound-effect.mp3"); diff --git a/src/commands/soundboard/yeet.js b/src/commands/soundboard/yeet.js index 7b7628a..de0cacb 100644 --- a/src/commands/soundboard/yeet.js +++ b/src/commands/soundboard/yeet.js @@ -3,7 +3,7 @@ module.exports = async (client, interaction, args) => { if (!interaction.member.voice.channel) return client.errNormal({ error: `You're not in a voice channel!`, type: 'editreply' }, interaction); - if (interaction.guild.me.voice.channel && interaction.member.voice.channel.id !== interaction.guild.me.voice.channel.id) return client.errNormal({ error: `You are not in the same voice channel!`, type: 'editreply' }, interaction); + if (interaction.guild.members.me.voice.channel && interaction.member.voice.channel.id !== interaction.guild.members.me.voice.channel.id) return client.errNormal({ error: `You are not in the same voice channel!`, type: 'editreply' }, interaction); client.soundboard(interaction.guild.id, interaction, "https://www.myinstants.com/media/sounds/yeet.mp3"); diff --git a/src/commands/stickymessages/stick.js b/src/commands/stickymessages/stick.js index bf693aa..892ed88 100644 --- a/src/commands/stickymessages/stick.js +++ b/src/commands/stickymessages/stick.js @@ -6,7 +6,7 @@ module.exports = async (client, interaction, args) => { const channel = interaction.options.getChannel('channel'); const content = interaction.options.getString('message'); - const embed = new Discord.MessageEmbed() + const embed = new Discord.EmbedBuilder() .setDescription(`${content}`) .setColor(client.config.colors.normal); channel.send({ embeds: [embed] }).then(msg => { diff --git a/src/commands/suggestions/accept.js b/src/commands/suggestions/accept.js index dc8301f..b3c05f8 100644 --- a/src/commands/suggestions/accept.js +++ b/src/commands/suggestions/accept.js @@ -4,8 +4,8 @@ const Schema = require("../../database/models/suggestionChannels"); module.exports = async (client, interaction, args) => { const perms = await client.checkUserPerms({ - flags: [Discord.Permissions.FLAGS.MANAGE_MESSAGES], - perms: ["MANAGE_MESSAGES"] + flags: [Discord.PermissionsBitField.Flags.ManageMessages], + perms: [Discord.PermissionsBitField.Flags.ManageMessages] }, interaction) if (perms == false) return; diff --git a/src/commands/suggestions/deny.js b/src/commands/suggestions/deny.js index 90ea3e0..076f7d1 100644 --- a/src/commands/suggestions/deny.js +++ b/src/commands/suggestions/deny.js @@ -4,8 +4,8 @@ const Schema = require("../../database/models/suggestionChannels"); module.exports = async (client, interaction, args) => { const perms = await client.checkUserPerms({ - flags: [Discord.Permissions.FLAGS.MANAGE_MESSAGES], - perms: ["MANAGE_MESSAGES"] + flags: [Discord.PermissionsBitField.Flags.ManageMessages], + perms: [Discord.PermissionsBitField.Flags.ManageMessages] }, interaction) if (perms == false) return; diff --git a/src/commands/tickets/add.js b/src/commands/tickets/add.js index d45ed65..e660d72 100644 --- a/src/commands/tickets/add.js +++ b/src/commands/tickets/add.js @@ -6,8 +6,8 @@ module.exports = async (client, interaction, args) => { const data = await ticketSchema.findOne({ Guild: interaction.guild.id }); const perms = await client.checkUserPerms({ - flags: [Discord.Permissions.FLAGS.MANAGE_MESSAGES], - perms: ["MANAGE_MESSAGES"] + flags: [Discord.PermissionsBitField.Flags.ManageMessages], + perms: [Discord.PermissionsBitField.Flags.ManageMessages] }, interaction) if (perms == false) return; @@ -23,7 +23,7 @@ module.exports = async (client, interaction, args) => { if (interaction.channel.parentId == ticketCategory.id) { let user = interaction.options.getUser('user'); - interaction.channel.permissionOverwrites.edit(user.id, { VIEW_CHANNEL: true, SEND_MESSAGES: true }); + interaction.channel.permissionOverwrites.edit(user.id, { ViewChannel: true, SendMessages: true }); return client.simpleEmbed({ desc: `Added ${user}`, diff --git a/src/commands/tickets/claim.js b/src/commands/tickets/claim.js index e3a3d85..e1e60e2 100644 --- a/src/commands/tickets/claim.js +++ b/src/commands/tickets/claim.js @@ -13,8 +13,8 @@ module.exports = async (client, interaction, args) => { if (ticketData) { if (interaction.user.id !== ticketData.creator) { const perms = await client.checkUserPerms({ - flags: [Discord.Permissions.FLAGS.MANAGE_MESSAGES], - perms: ["MANAGE_MESSAGES"] + flags: [Discord.PermissionsBitField.Flags.ManageMessages], + perms: [Discord.PermissionsBitField.Flags.ManageMessages] }, interaction) if (perms == false) return; diff --git a/src/commands/tickets/close.js b/src/commands/tickets/close.js index 28f00ba..55bb320 100644 --- a/src/commands/tickets/close.js +++ b/src/commands/tickets/close.js @@ -31,11 +31,11 @@ module.exports = async (client, interaction, args) => { if (interaction.guild.channels.cache.find(c => c.id === ticketCategory.id)) { client.users.fetch(ticketData.creator).then(async usr => { interaction.channel.permissionOverwrites.edit(usr, { - VIEW_CHANNEL: false, - SEND_MESSAGES: false, - ATTACH_FILES: false, - READ_MESSAGE_HISTORY: false, - ADD_REACTIONS: false + ViewChannel: false, + SendMessages: false, + AttachFiles: false, + ReadMessageHistory: false, + AddReactions: false }); try { @@ -110,22 +110,22 @@ module.exports = async (client, interaction, args) => { type: type }, interaction) - const row = new Discord.MessageActionRow() + const row = new Discord.ActionRowBuilder() .addComponents( - new Discord.MessageButton() + new Discord.ButtonBuilder() .setCustomId('Bot_transcriptTicket') .setEmoji('📝') - .setStyle('PRIMARY'), + .setStyle(Discord.ButtonStyle.Primary), - new Discord.MessageButton() + new Discord.ButtonBuilder() .setCustomId('Bot_openTicket') .setEmoji('🔓') - .setStyle('PRIMARY'), + .setStyle(Discord.ButtonStyle.Primary), - new Discord.MessageButton() + new Discord.ButtonBuilder() .setCustomId('Bot_deleteTicket') .setEmoji('⛔') - .setStyle('DANGER'), + .setStyle(Discord.ButtonStyle.Danger), ); client.embed({ diff --git a/src/commands/tickets/create.js b/src/commands/tickets/create.js index 22b65bb..2c49ba9 100644 --- a/src/commands/tickets/create.js +++ b/src/commands/tickets/create.js @@ -39,27 +39,27 @@ module.exports = async (client, interaction, args) => { openTicket = ticketMessageData.openTicket; } - const row = new Discord.MessageActionRow() + const row = new Discord.ActionRowBuilder() .addComponents( - new Discord.MessageButton() + new Discord.ButtonBuilder() .setCustomId('Bot_closeticket') .setEmoji('🔒') - .setStyle('PRIMARY'), + .setStyle(Discord.ButtonStyle.Primary), - new Discord.MessageButton() + new Discord.ButtonBuilder() .setCustomId('Bot_claimTicket') .setEmoji('✋') - .setStyle('PRIMARY'), + .setStyle(Discord.ButtonStyle.Primary), - new Discord.MessageButton() + new Discord.ButtonBuilder() .setCustomId('Bot_transcriptTicket') .setEmoji('📝') - .setStyle('PRIMARY'), + .setStyle(Discord.ButtonStyle.Primary), - new Discord.MessageButton() + new Discord.ButtonBuilder() .setCustomId('Bot_noticeTicket') .setEmoji('🔔') - .setStyle('PRIMARY'), + .setStyle(Discord.ButtonStyle.Primary), ); client.embed({ @@ -88,19 +88,20 @@ module.exports = async (client, interaction, args) => { let category = interaction.guild.channels.cache.find(c => c.id === ticketCategory.id); let permsToHave = [ - 'VIEW_CHANNEL', - 'SEND_MESSAGES', - 'ATTACH_FILES', - 'READ_MESSAGE_HISTORY', - 'ADD_REACTIONS' + Discord.PermissionsBitField.Flags.AddReactions, + Discord.PermissionsBitField.Flags.SendMessages, + Discord.PermissionsBitField.Flags.ViewChannel, + Discord.PermissionsBitField.Flags.AttachFiles, + Discord.PermissionsBitField.Flags.ReadMessageHistory, ] var ticketid = String(TicketData.TicketCount).padStart(4, 0);; - interaction.guild.channels.create(`ticket-${ticketid}`, { + interaction.guild.channels.create({ + name: `ticket-${ticketid}`, permissionOverwrites: [ { - deny: 'VIEW_CHANNEL', + deny: [Discord.PermissionsBitField.Flags.ViewChannel], id: interaction.guild.id }, { diff --git a/src/commands/tickets/delete.js b/src/commands/tickets/delete.js index da94e62..ba2697c 100644 --- a/src/commands/tickets/delete.js +++ b/src/commands/tickets/delete.js @@ -5,8 +5,8 @@ const ticketChannels = require("../../database/models/ticketChannels"); module.exports = async (client, interaction, args) => { const perms = await client.checkUserPerms({ - flags: [Discord.Permissions.FLAGS.MANAGE_MESSAGES], - perms: ["MANAGE_MESSAGES"] + flags: [Discord.PermissionsBitField.Flags.ManageMessages], + perms: [Discord.PermissionsBitField.Flags.ManageMessages] }, interaction) if (perms == false) return; diff --git a/src/commands/tickets/lower.js b/src/commands/tickets/lower.js index 01cd082..e8bf929 100644 --- a/src/commands/tickets/lower.js +++ b/src/commands/tickets/lower.js @@ -5,8 +5,8 @@ const ticketChannels = require("../../database/models/ticketChannels"); module.exports = async (client, interaction, args) => { const perms = await client.checkUserPerms({ - flags: [Discord.Permissions.FLAGS.MANAGE_MESSAGES], - perms: ["MANAGE_MESSAGES"] + flags: [Discord.PermissionsBitField.Flags.ManageMessages], + perms: [Discord.PermissionsBitField.Flags.ManageMessages] }, interaction) if (perms == false) return; @@ -27,11 +27,11 @@ module.exports = async (client, interaction, args) => { try { interaction.channel.permissionOverwrites.edit(ticketRole, { - VIEW_CHANNEL: true, - SEND_MESSAGES: true, - ATTACH_FILES: true, - READ_MESSAGE_HISTORY: true, - ADD_REACTIONS: true + ViewChannel: true, + SendMessages: true, + AttachFiles: true, + ReadMessageHistory: true, + AddReactions: true }); return client.simpleEmbed({ diff --git a/src/commands/tickets/notice.js b/src/commands/tickets/notice.js index b29277b..3f50321 100644 --- a/src/commands/tickets/notice.js +++ b/src/commands/tickets/notice.js @@ -5,8 +5,8 @@ const ticketChannels = require("../../database/models/ticketChannels"); module.exports = async (client, interaction, args) => { const perms = await client.checkUserPerms({ - flags: [Discord.Permissions.FLAGS.MANAGE_MESSAGES], - perms: ["MANAGE_MESSAGES"] + flags: [Discord.PermissionsBitField.Flags.ManageMessages], + perms: [Discord.PermissionsBitField.Flags.ManageMessages] }, interaction) if (perms == false) return; diff --git a/src/commands/tickets/open.js b/src/commands/tickets/open.js index a28931c..780e3c1 100644 --- a/src/commands/tickets/open.js +++ b/src/commands/tickets/open.js @@ -5,8 +5,8 @@ const ticketChannels = require("../../database/models/ticketChannels"); module.exports = async (client, interaction, args) => { const perms = await client.checkUserPerms({ - flags: [Discord.Permissions.FLAGS.MANAGE_MESSAGES], - perms: ["MANAGE_MESSAGES"] + flags: [Discord.PermissionsBitField.Flags.ManageMessages], + perms: [Discord.PermissionsBitField.Flags.ManageMessages] }, interaction) if (perms == false) return; @@ -35,11 +35,11 @@ module.exports = async (client, interaction, args) => { if (interaction.channel.parentId == ticketCategory.id) { client.users.fetch(ticketData.creator).then(usr => { interaction.channel.permissionOverwrites.edit(usr, { - VIEW_CHANNEL: true, - SEND_MESSAGES: true, - ATTACH_FILES: true, - READ_MESSAGE_HISTORY: true, - ADD_REACTIONS: true + ViewChannel: true, + SendMessages: true, + AttachFiles: true, + ReadMessageHistory: true, + AddReactions: true }); var ticketid = String(ticketData.TicketID).padStart(4, 0); diff --git a/src/commands/tickets/raise.js b/src/commands/tickets/raise.js index d555ffd..f44a3cc 100644 --- a/src/commands/tickets/raise.js +++ b/src/commands/tickets/raise.js @@ -5,8 +5,8 @@ const ticketChannels = require("../../database/models/ticketChannels"); module.exports = async (client, interaction, args) => { const perms = await client.checkUserPerms({ - flags: [Discord.Permissions.FLAGS.MANAGE_MESSAGES], - perms: ["MANAGE_MESSAGES"] + flags: [Discord.PermissionsBitField.Flags.ManageMessages], + perms: [Discord.PermissionsBitField.Flags.ManageMessages] }, interaction) if (perms == false) return; @@ -27,11 +27,11 @@ module.exports = async (client, interaction, args) => { try { interaction.channel.permissionOverwrites.edit(ticketRole, { - VIEW_CHANNEL: false, - SEND_MESSAGES: false, - ATTACH_FILES: false, - READ_MESSAGE_HISTORY: false, - ADD_REACTIONS: false + ViewChannel: false, + SendMessages: false, + AttachFiles: false, + ReadMessageHistory: false, + AddReactions: false }); return client.simpleEmbed({ diff --git a/src/commands/tickets/remove.js b/src/commands/tickets/remove.js index fb05322..87a69e1 100644 --- a/src/commands/tickets/remove.js +++ b/src/commands/tickets/remove.js @@ -8,8 +8,8 @@ module.exports = async (client, interaction, args) => { const ticketData = await ticketChannels.findOne({ Guild: interaction.guild.id, channelID: interaction.channel.id }); const perms = await client.checkUserPerms({ - flags: [Discord.Permissions.FLAGS.MANAGE_MESSAGES], - perms: ["MANAGE_MESSAGES"] + flags: [Discord.PermissionsBitField.Flags.ManageMessages], + perms: [Discord.PermissionsBitField.Flags.ManageMessages] }, interaction) if (perms == false) return; @@ -32,7 +32,7 @@ module.exports = async (client, interaction, args) => { }, interaction) } - interaction.channel.permissionOverwrites.edit(user.id, { VIEW_CHANNEL: false, SEND_MESSAGES: false }); + interaction.channel.permissionOverwrites.edit(user.id, { ViewChannel: false, SendMessages: false }); return client.simpleEmbed({ desc: `Removed ${user}`, diff --git a/src/commands/tickets/rename.js b/src/commands/tickets/rename.js index f21c395..c4ebf1c 100644 --- a/src/commands/tickets/rename.js +++ b/src/commands/tickets/rename.js @@ -6,8 +6,8 @@ module.exports = async (client, interaction, args) => { const data = await ticketSchema.findOne({ Guild: interaction.guild.id }); const perms = await client.checkUserPerms({ - flags: [Discord.Permissions.FLAGS.MANAGE_MESSAGES], - perms: ["MANAGE_MESSAGES"] + flags: [Discord.PermissionsBitField.Flags.ManageMessages], + perms: [Discord.PermissionsBitField.Flags.ManageMessages] }, interaction) if (perms == false) return; diff --git a/src/commands/tickets/transcript.js b/src/commands/tickets/transcript.js index 03efaa1..a13fe52 100644 --- a/src/commands/tickets/transcript.js +++ b/src/commands/tickets/transcript.js @@ -5,8 +5,8 @@ const ticketChannels = require("../../database/models/ticketChannels"); module.exports = async (client, interaction, args) => { const perms = await client.checkUserPerms({ - flags: [Discord.Permissions.FLAGS.MANAGE_MESSAGES], - perms: ["MANAGE_MESSAGES"] + flags: [Discord.PermissionsBitField.Flags.ManageMessages], + perms: [Discord.PermissionsBitField.Flags.ManageMessages] }, interaction) if (perms == false) return; diff --git a/src/commands/tickets/unclaim.js b/src/commands/tickets/unclaim.js index 3ac6fe0..1d8afe3 100644 --- a/src/commands/tickets/unclaim.js +++ b/src/commands/tickets/unclaim.js @@ -10,8 +10,8 @@ module.exports = async (client, interaction, args) => { if (ticketData) { if (interaction.user.id !== ticketData.creator) { const perms = await client.checkUserPerms({ - flags: [Discord.Permissions.FLAGS.MANAGE_MESSAGES], - perms: ["MANAGE_MESSAGES"] + flags: [Discord.PermissionsBitField.Flags.ManageMessages], + perms: [Discord.PermissionsBitField.Flags.ManageMessages] }, interaction) if (perms == false) return; diff --git a/src/commands/tools/button.js b/src/commands/tools/button.js index 3a220db..78178e8 100644 --- a/src/commands/tools/button.js +++ b/src/commands/tools/button.js @@ -7,12 +7,12 @@ module.exports = async (client, interaction, args) => { if (text.length > 50) return client.errNormal({ error: "Your button text cannot be longer than 50 characters", type: 'editreply' }, interaction); - let button = new Discord.MessageButton() + let button = new Discord.ButtonBuilder() .setLabel(`${text}`) .setURL(`${url}`) - .setStyle("LINK"); + .setStyle(Discord.ButtonStyle.Link); - let row = new Discord.MessageActionRow() + let row = new Discord.ActionRowBuilder() .addComponents(button) client.embed({ diff --git a/src/commands/tools/calculator.js b/src/commands/tools/calculator.js index 8cf1112..38c86a7 100644 --- a/src/commands/tools/calculator.js +++ b/src/commands/tools/calculator.js @@ -3,11 +3,11 @@ const math = require('mathjs'); module.exports = async (client, interaction, args) => { const createButton = (label, disabled, getRandomString) => { - let style = 'SECONDARY'; + let style = Discord.ButtonStyle.Secondary; if (label === 'AC' || label === 'DC' || label === '⌫') { - style = 'DANGER'; + style = Discord.ButtonStyle.Danger; } else if (label === '=') { - style = 'SUCCESS'; + style = Discord.ButtonStyle.Success; } else if ( label === '(' || label === ')' || @@ -19,10 +19,10 @@ module.exports = async (client, interaction, args) => { label === '+' || label === '.' ) { - style = 'PRIMARY'; + style = Discord.ButtonStyle.Primary; } if (disabled) { - const btn = new Discord.MessageButton() + const btn = new Discord.ButtonBuilder() .setLabel(label) .setStyle(style) .setDisabled(); @@ -33,7 +33,7 @@ module.exports = async (client, interaction, args) => { } return btn; } else { - const btn = new Discord.MessageButton().setLabel(label).setStyle(style); + const btn = new Discord.ButtonBuilder().setLabel(label).setStyle(style); if (label === '\u200b') { btn.setDisabled(); btn.setCustomId(`${getRandomString(10)}`); @@ -45,7 +45,7 @@ module.exports = async (client, interaction, args) => { }; const addRow = (btns) => { - const row = new Discord.MessageActionRow(); + const row = new Discord.ActionRowBuilder(); for (const btn of btns) { row.addComponents(btn); } @@ -147,7 +147,7 @@ module.exports = async (client, interaction, args) => { }, interaction) } - const calc = interaction.channel.createMessageComponentCollector({ componentType: 'BUTTON' }); + const calc = interaction.channel.createMessageComponentCollector({ componentType: Discord.ComponentType.Button }); calc.on('collect', async (btn) => { if (btn.user.id !== interaction.user.id) return; diff --git a/src/commands/tools/enlarge.js b/src/commands/tools/enlarge.js index eb49fe3..16c7fd4 100644 --- a/src/commands/tools/enlarge.js +++ b/src/commands/tools/enlarge.js @@ -3,7 +3,7 @@ const Discord = require('discord.js'); module.exports = async (client, interaction, args) => { const emoji = interaction.options.getString('emoji'); - const parsedEmoji = Discord.Util.parseEmoji(emoji) + const parsedEmoji = Discord.parseEmoji(emoji) if (parsedEmoji) { const ex = parsedEmoji.animated ? ".gif" : ".png"; diff --git a/src/commands/voice/limit.js b/src/commands/voice/limit.js index 21f2af2..6689bcc 100644 --- a/src/commands/voice/limit.js +++ b/src/commands/voice/limit.js @@ -2,8 +2,8 @@ const Discord = require('discord.js'); module.exports = async (client, interaction, args) => { const perms = await client.checkBotPerms({ - flags: [Discord.Permissions.FLAGS.MANAGE_CHANNELS], - perms: ["MANAGE_CHANNELS"] + flags: [Discord.PermissionsBitField.Flags.ManageChannels], + perms: [Discord.PermissionsBitField.Flags.ManageChannels] }, interaction) if (perms == false) return; diff --git a/src/commands/voice/lock.js b/src/commands/voice/lock.js index da47640..9c2e88a 100644 --- a/src/commands/voice/lock.js +++ b/src/commands/voice/lock.js @@ -2,8 +2,8 @@ const Discord = require('discord.js'); module.exports = async (client, interaction, args) => { const perms = await client.checkBotPerms({ - flags: [Discord.Permissions.FLAGS.MANAGE_CHANNELS], - perms: ["MANAGE_CHANNELS"] + flags: [Discord.PermissionsBitField.Flags.ManageChannels], + perms: [Discord.PermissionsBitField.Flags.ManageChannels] }, interaction) if (perms == false) return; @@ -31,7 +31,7 @@ module.exports = async (client, interaction, args) => { }, interaction); channel.permissionOverwrites.edit(interaction.guild.roles.cache.find(x => x.name === '@everyone'), { - CONNECT: false + Connect: false }); } diff --git a/src/commands/voice/rename.js b/src/commands/voice/rename.js index 9b578d0..46f30a9 100644 --- a/src/commands/voice/rename.js +++ b/src/commands/voice/rename.js @@ -2,8 +2,8 @@ const Discord = require('discord.js'); module.exports = async (client, interaction, args) => { const perms = await client.checkBotPerms({ - flags: [Discord.Permissions.FLAGS.MANAGE_CHANNELS], - perms: ["MANAGE_CHANNELS"] + flags: [Discord.PermissionsBitField.Flags.ManageChannels], + perms: [Discord.PermissionsBitField.Flags.ManageChannels] }, interaction) if (perms == false) return; diff --git a/src/commands/voice/unlock.js b/src/commands/voice/unlock.js index db732b7..fda4ff9 100644 --- a/src/commands/voice/unlock.js +++ b/src/commands/voice/unlock.js @@ -2,8 +2,8 @@ const Discord = require('discord.js'); module.exports = async (client, interaction, args) => { const perms = await client.checkBotPerms({ - flags: [Discord.Permissions.FLAGS.MANAGE_CHANNELS], - perms: ["MANAGE_CHANNELS"] + flags: [Discord.PermissionsBitField.Flags.ManageChannels], + perms: [Discord.PermissionsBitField.Flags.ManageChannels] }, interaction) if (perms == false) return; @@ -31,7 +31,7 @@ module.exports = async (client, interaction, args) => { }, interaction); channel.permissionOverwrites.edit(interaction.guild.roles.cache.find(x => x.name === '@everyone'), { - CONNECT: true + Connect: true }); } diff --git a/src/config/bot.js b/src/config/bot.js index 8d1d9b7..842760e 100644 --- a/src/config/bot.js +++ b/src/config/bot.js @@ -6,11 +6,11 @@ module.exports = { }, discord: { - id: "", - prefix: 'd!', - footer: `© Bot 2021 - ${new Date().getFullYear()}`, - botInvite: "https://discord.com/oauth2/authorize?&client_id=QQQQQQQQQQQQ&scope=applications.commands+bot&permissions=8", - serverInvite: "https://discord.gg/QQQQQQQQ", + id: process.env.DISCORD_ID, + prefix: '!', + footer: `© Corwin 2021 - ${new Date().getFullYear()}`, + botInvite: `https://discord.com/oauth2/authorize?&client_id=840212110817755157&scope=applications.commands+bot&permissions=8`, + serverInvite: "https://discord.gg/qHXxpQKC2H", }, wordList: `Airplane diff --git a/src/config/emojis.json b/src/config/emojis.json index b330ca8..98f892c 100644 --- a/src/config/emojis.json +++ b/src/config/emojis.json @@ -1,69 +1,69 @@ { "normal": { - "error": "<:error:898486909070876672>", - "check": "<:check:898486908907315201>", - "music": "<:music:830897792665911306>", - "volume": "<:speaker:898486908819226626>", - "ball": "<:8ball:898486908798238722>", - "christmas": "<:christmas_tree:819983426832302110>", - "heart": "<:heart:898486909033148416>", - "paper": "<:paper:898486909175726151>", - "scissors": "<:scissor:898486909020536842>", - "stone": "<:rock:898486908991205377>", - "pong": "<:ping_pong:898486909028945950>", - "birthday": "<:birthday:898486908932456560>", - "clock": "<:clock:898486909158981682>", - "gift": "<:present:898486909205106708>", - "medal": "<:medal:898486908714373121>", - "party": "<:confetti:898486909083476038> ", - "info": "<:information:830896670349721611>", - "arrowDown": "<:arrow_down:898486909012172820>", - "arrowUp": "<:arrow_up:898486909083476018>", - "dcredits": "<:dcredits:857336404173127710>", - "tv": "<:tv:898486909070868510>", - "slash": "<:Bot_icon_slash:902906467835850762>" + "error": "❌", + "check": "✔️", + "music": "🎵", + "volume": "🔉", + "ball": "🎱", + "christmas": "🎄", + "heart": "❤️", + "paper": "📰", + "scissors": "✂️", + "stone": "🪨", + "pong": "🏓", + "birthday": "🎂", + "clock": "⏰", + "gift": "🎁", + "medal": "🏅", + "party": "🎉", + "info": "ℹ️", + "arrowDown": "⬇️", + "arrowUp": "⬆️", + "dcredits": "💳", + "tv": "📺", + "slash": "" }, "Bot": { - "add": "<:DBadd:842662619579678741>", - "info": "<:DBinfo:842662509797179392>", - "min": "<:DBmin:842662541452247090>" + "add": "📥", + "info": "ℹ️", + "min": "🔻" }, "economy": { - "pocket": "<:pocket:830896614448037888>", - "bank": "<:bank:898493130398105600>", - "coins": "<:dcoin:846789240653086841>" + "pocket": "👛", + "bank": "🏦", + "coins": "💰" }, "music": { - "next": "<:BotNext:929752783903666266>", - "pause": "<:BotPause:929752783953985577>", - "previous": "<:BotPrevious:929752783916269668>", - "stop": "<:BotStop:929752783937208340>", - "play": "<:BotPlay:929755513363791912>" + "next": "⏭️", + "pause": "⏸️", + "previous": "⏮️", + "stop": "⏹️", + "play": "▶️" }, "badges": { - "bot": "<:BotBots:898483233061232641>", - "management": "<:BotManagement:898483234009145344>", - "bug": "<:BotBugHunter:898485057986121748>", - "developer": "<:BotDeveloper:898485057159852032>", - "supporter": "<:BotSupporter:898483233367396362>", - "team": "<:TeamBot:898483233497440263>", - "booster": "<:BotBooster:898485057122095134>", - "partner": "<:BotPartner:898483233522610207>", - "voter": "<:BotVoter:898483233119952916>", - "support": "<:BotSupport:898483233572917248>", - "moderator": "<:BotModerator:898483232885075979>", - "designer": "<:BotDesigner:898483232994103306>", - "active": "<:BotActive:898483231203164160>", - "event": "<:BotEvent:898483233614860338>", - "vip": "<:BotVip:898483233614856232>", - "marketing": "<:BotMarketing:898483234617319455>" + "bot": "🤖", + "management": "👑", + "bug": "🐛", + "developer": "👨‍💻", + "supporter": "👨‍🔧", + "team": "👨‍👩‍👧‍👦", + "booster": "🚀", + "partner": "🤝", + "voter": "🗳️", + "support": "🔧", + "moderator": "👮", + "designer": "🎨", + "active": "🔥", + "event": "🎉", + "vip": "👑", + "marketing": "📈" }, "animated": { - "loading": "" + "loading": "🔄️" } } \ No newline at end of file diff --git a/src/config/index.html b/src/config/index.html deleted file mode 100644 index 502ddd7..0000000 --- a/src/config/index.html +++ /dev/null @@ -1,109 +0,0 @@ -
Bot#1963 Sun Feb 06 2022 9:58:37 PM EST<@794613782893953024>, <@&939984253901475850>
Bot#1963 Sun Feb 06 2022 9:58:37 PM EST<@794613782893953024>, <@&939984253901475850>
\ No newline at end of file diff --git a/src/database/connect.js b/src/database/connect.js index 3923ac5..27bfb0b 100644 --- a/src/database/connect.js +++ b/src/database/connect.js @@ -2,10 +2,18 @@ const mongoose = require('mongoose'); const chalk = require('chalk'); async function connect() { - mongoose.connect(process.env.MONGO_TOKEN, { - useNewUrlParser: true, - useUnifiedTopology: true, - }); + mongoose.set('strictQuery', false); + try { + await mongoose.connect(process.env.MONGO_TOKEN, { + useNewUrlParser: true, + useUnifiedTopology: true, + }); + } catch (err) { + console.log(chalk.red(`[ERROR]`), chalk.white(`>>`), chalk.red(`MongoDB`), chalk.white(`>>`), chalk.red(`Failed to connect to MongoDB!`), chalk.white(`>>`), chalk.red(`Error: ${err}`)) + console.log(chalk.red("Exiting...")) + process.exit(1) + } + mongoose.connection.once("open", () => { console.log(chalk.blue(chalk.bold(`System`)), (chalk.white(`>>`)), chalk.red(`MongoDB`), chalk.green(`is ready!`)) diff --git a/src/events/client/errorCreate.js b/src/events/client/errorCreate.js index 78393de..ccaa0d6 100644 --- a/src/events/client/errorCreate.js +++ b/src/events/client/errorCreate.js @@ -12,12 +12,14 @@ module.exports = (client, err, command, interaction) => { token: client.webhooks.errorLogs.token, }); - let embed = new Discord.MessageEmbed() + let embed = new Discord.EmbedBuilder() .setTitle(`🚨・${password}`) - .addField("✅┇Guild", `${interaction.guild.name} (${interaction.guild.id})`) - .addField(`💻┇Command`, `${command}`) - .addField(`💬┇Error`, `\`\`\`${err}\`\`\``) - .addField(`📃┇Stack error`, `\`\`\`${err.stack.substr(0, 1018)}\`\`\``) + .addFields( + { name: "✅┇Guild", value: `${interaction.guild.name} (${interaction.guild.id})`}, + { name: `💻┇Command`, value: `${command}`}, + { name: `💬┇Error`, value: `\`\`\`${err}\`\`\``}, + { name: `📃┇Stack error`, value: `\`\`\`${err.stack.substr(0, 1018)}\`\`\``}, + ) .setColor(client.config.colors.normal) errorlog.send({ username: `Bot errors`, @@ -25,12 +27,12 @@ module.exports = (client, err, command, interaction) => { }).catch(error => { console.log(error) }) - let row = new Discord.MessageActionRow() + let row = new Discord.ActionRowBuilder() .addComponents( - new Discord.MessageButton() + new Discord.ButtonBuilder() .setLabel("Support server") .setURL(client.config.discord.serverInvite) - .setStyle("LINK"), + .setStyle(Discord.ButtonStyle.Link), ); client.embed({ diff --git a/src/events/client/guildCreate.js b/src/events/client/guildCreate.js index 5a83e13..b6b77eb 100644 --- a/src/events/client/guildCreate.js +++ b/src/events/client/guildCreate.js @@ -23,13 +23,15 @@ module.exports = async (client, guild) => { Promise.all(promises) .then(async (results) => { const totalGuilds = results[0].reduce((acc, guildCount) => acc + guildCount, 0); - const embed = new Discord.MessageEmbed() + const embed = new Discord.EmbedBuilder() .setTitle("🟢・Added to a new server!") - .addField("Total servers:", `${totalGuilds}`, true) - .addField("Server name", `${guild.name}`, true) - .addField("Server ID", `${guild.id}`, true) - .addField("Server members", `${guild.memberCount}`, true) - .addField("Server owner", `<@!${guild.ownerId}> (${guild.ownerId})`, true) + .addFields( + { name: "Total servers:", value: `${totalGuilds}`, inline: true }, + { name: "Server name", value: `${guild.name}`, inline: true }, + { name: "Server ID", value: `${guild.id}`, inline: true }, + { name: "Server members", value: `${guild.memberCount}`, inline: true }, + { name: "Server owner", value: `<@!${guild.ownerId}> (${guild.ownerId})`, inline: true }, + ) .setThumbnail("https://cdn.discordapp.com/attachments/843487478881976381/852419422392156210/BotPartyEmote.png") .setColor(client.config.colors.normal) webhookClient.send({ @@ -41,35 +43,30 @@ module.exports = async (client, guild) => { let defaultChannel = ""; guild.channels.cache.forEach((channel) => { - if (channel.type == "GUILD_TEXT" && defaultChannel == "") { + if (channel.type == Discord.ChannelType.GuildText && defaultChannel == "") { if (channel.permissionsFor(guild.me).has("SEND_MESSAGES")) { defaultChannel = channel; } } }) - let row = new Discord.MessageActionRow() + let row = new Discord.ActionRowBuilder() .addComponents( - new Discord.MessageButton() + new Discord.ButtonBuilder() .setLabel("Invite") .setURL(client.config.discord.botInvite) - .setStyle("LINK"), + .setStyle(Discord.ButtonStyle.Link), - new Discord.MessageButton() + new Discord.ButtonBuilder() .setLabel("Support server") .setURL(client.config.discord.serverInvite) - .setStyle("LINK"), + .setStyle(Discord.ButtonStyle.Link), ); client.embed({ title: "Thanks for inviting the bot!", image: "https://cdn.discordapp.com/attachments/843487478881976381/874694194474668052/Bot_banner_invite.jpg", fields: [{ - name: "📢┆Alert!", - value: 'After more than 1 year we decided to stop Bot on April 15th, for more information go to [this server](https://discord.gg/techpoint)', - inline: false, - }, - { name: "❓┆How to setup?", value: 'The default prefix = \`/\` \nTo run setups with Bot run \`/setup\`', inline: false, diff --git a/src/events/client/guildDelete.js b/src/events/client/guildDelete.js index 46c5c63..40ed2ab 100644 --- a/src/events/client/guildDelete.js +++ b/src/events/client/guildDelete.js @@ -53,13 +53,15 @@ module.exports = async (client, guild) => { .then(async (results) => { const totalGuilds = results[0].reduce((acc, guildCount) => acc + guildCount, 0); - const embed = new discord.MessageEmbed() + const embed = new discord.EmbedBuilder() .setTitle("🔴・Removed from a server!") - .addField("Total servers:", `${totalGuilds}`, true) - .addField("Server name", `${guild.name}`, true) - .addField("Server ID", `${guild.id}`, true) - .addField("Server members", `${guild.memberCount}`, true) - .addField("Server owner", `<@!${guild.ownerId}> (${guild.ownerId})`, true) + .addFields( + { name: "Total servers:", value: `${totalGuilds}`, inline: true }, + { name: "Server name", value: `${guild.name}`, inline: true }, + { name: "Server ID", value: `${guild.id}`, inline: true }, + { name: "Server members", value: `${guild.memberCount}`, inline: true }, + { name: "Server owner", value: `<@!${guild.ownerId}> (${guild.ownerId})`, inline: true }, + ) .setThumbnail("https://cdn.discordapp.com/attachments/843487478881976381/852419424895631370/BotSadEmote.png") .setColor(client.config.colors.normal) kickLogs.send({ diff --git a/src/events/client/interactionCreate.js b/src/events/client/interactionCreate.js index ee83450..90fcb87 100644 --- a/src/events/client/interactionCreate.js +++ b/src/events/client/interactionCreate.js @@ -4,10 +4,11 @@ const Captcha = require("@haileybot/captcha-generator"); const reactionSchema = require("../../database/models/reactionRoles"); const banSchema = require("../../database/models/userBans"); const verify = require("../../database/models/verify"); - +const Commands = require("../../database/models/customCommand"); +const CommandsSchema = require("../../database/models/customCommandAdvanced"); module.exports = async (client, interaction) => { // Commands - if (interaction.isCommand() || interaction.isContextMenu()) { + if (interaction.isCommand() || interaction.isUserContextMenuCommand()) { await interaction.deferReply({ fetchReply: true }); banSchema.findOne({ User: interaction.user.id }, async (err, data) => { @@ -19,6 +20,44 @@ module.exports = async (client, interaction) => { } else { const cmd = client.commands.get(interaction.commandName); + if (!cmd){ + const cmdd = await Commands.findOne({ + Guild: interaction.guild.id, + Name: interaction.commandName, + }); + if (cmdd) { + return interaction.channel.send({ content: cmdd.Responce }); + } + + const cmdx = await CommandsSchema.findOne({ + Guild: interaction.guild.id, + Name: interaction.commandName, + }); + if (cmdx) { + // Remove interaction + if (cmdx.Action == "Normal") { + return interaction.reply({ content: cmdx.Responce }); + } else if (cmdx.Action == "Embed") { + return client.simpleEmbed( + { + desc: `${cmdx.Responce}`, + type: 'editreply' + }, + interaction, + ); + } else if (cmdx.Action == "DM") { + interaction.deleteReply(); + return interaction.user.send({ content: cmdx.Responce }).catch((e) => { + client.errNormal( + { + error: "I can't DM you, maybe you have DM turned off!", + }, + interaction + ); + }); + } + } + } if (interaction.options._subcommand !== null && interaction.options.getSubcommand() == "help") { const commands = interaction.client.commands.filter(x => x.data.name == interaction.commandName).map((x) => x.data.options.map((c) => '`' + c.name + '` - ' + c.description).join("\n")); @@ -29,7 +68,7 @@ module.exports = async (client, interaction) => { }, interaction) } - cmd.run(client, interaction, interaction.options._hoistedOptions).catch(err => { + if(cmd) cmd.run(client, interaction, interaction.options._hoistedOptions).catch(err => { client.emit("errorCreate", err, interaction.commandName, interaction) }) } @@ -43,7 +82,7 @@ module.exports = async (client, interaction) => { let captcha = new Captcha(); try { - var image = new Discord.MessageAttachment(captcha.JPEGStream, "captcha.jpeg"); + var image = new Discord.AttachmentBuilder(captcha.JPEGStream, {name:"captcha.jpeg"}); interaction.reply({ files: [image], fetchReply: true }).then(function (msg) { const filter = s => s.author.id == interaction.user.id; @@ -113,7 +152,7 @@ module.exports = async (client, interaction) => { } // Reaction roles select - if (interaction.isSelectMenu()) { + if (interaction.isStringSelectMenu()) { if (interaction.customId == "reaction_select") { reactionSchema.findOne( { Message: interaction.message.id }, @@ -150,7 +189,6 @@ module.exports = async (client, interaction) => { ); } } - // Tickets if (interaction.customId == "Bot_openticket") { return require(`${process.cwd()}/src/commands/tickets/create.js`)(client, interaction); diff --git a/src/events/client/ready.js b/src/events/client/ready.js index 4ff61d8..bbf662c 100644 --- a/src/events/client/ready.js +++ b/src/events/client/ready.js @@ -1,5 +1,6 @@ const Discord = require('discord.js'); const chalk = require('chalk'); +const { random } = require('mathjs'); module.exports = async (client) => { const startLogs = new Discord.WebhookClient({ @@ -11,11 +12,13 @@ module.exports = async (client) => { console.log(chalk.blue(chalk.bold(`System`)), (chalk.white(`>>`)), chalk.red(`Shard #${client.shard.ids[0] + 1}`), chalk.green(`is ready!`)) console.log(chalk.blue(chalk.bold(`Bot`)), (chalk.white(`>>`)), chalk.green(`Started on`), chalk.red(`${client.guilds.cache.size}`), chalk.green(`servers!`)) - let embed = new Discord.MessageEmbed() + let embed = new Discord.EmbedBuilder() .setTitle(`🆙・Finishing shard`) .setDescription(`A shard just finished`) - .addField("🆔┆ID", `${client.shard.ids[0] + 1}/${client.options.shardCount}`, true) - .addField(`📃┆State`, `Ready`, true) + .addFields( + { name: "🆔┆ID", value: `${client.shard.ids[0] + 1}/${client.options.shardCount}`, inline: true }, + { name: "📃┆State", value: `Ready`, inline: true }, + ) .setColor(client.config.colors.normal) startLogs.send({ username: 'Bot Logs', @@ -29,30 +32,24 @@ module.exports = async (client) => { return Promise.all(promises) .then(results => { const totalGuilds = results[0].reduce((acc, guildCount) => acc + guildCount, 0); - - let statuttext = [ - `・🥳┆1 year Bot`, - `・❓┆/help`, - `・💻┆${totalGuilds} servers`, - `・📨┆discord.me/Bot`, - `・🎉┆400+ commands`, - `・🏷️┆Version ${require(`${process.cwd()}/package.json`).version}` - ]; + let statuttext; + if (process.env.DISCORD_STATUS) { + statuttext = process.env.DISCORD_STATUS.split(', '); + } else { + statuttext = [ + `・❓┆/help`, + `・💻┆${totalGuilds} servers`, + `・📨┆discord.me/corwindev`, + `・🎉┆400+ commands`, + `・🏷️┆Version ${require(`${process.cwd()}/package.json`).version}` + ]; + } const randomText = statuttext[Math.floor(Math.random() * statuttext.length)]; - - client.user.setPresence({ - activities: [ - { - name: "・😥┆Ends on April 15", - type: "STREAMING", - url: "https://www.twitch.tv/discord" - } - ] - }); + client.user.setActivity('activity', { type: Discord.ActivityType.Streaming }); + client.user.setPresence({ activities: [{ name: randomText }], status: 'online' }); }) }, 50000) client.player.init(client.user.id); } - \ No newline at end of file diff --git a/src/events/message/messageCreate.js b/src/events/message/messageCreate.js index c31bd0a..0674a51 100644 --- a/src/events/message/messageCreate.js +++ b/src/events/message/messageCreate.js @@ -21,20 +21,20 @@ module.exports = async (client, message) => { if (message.author.bot) return; if (message.channel.type === "DM") { - let embedLogs = new Discord.MessageEmbed() + let embedLogs = new Discord.EmbedBuilder() .setTitle(`💬・New DM message!`) .setDescription(`Bot has received a new DM message!`) - .addField("👤┆Send By", `${message.author} (${message.author.tag})`, true) - .addField(`💬┆Message`, `${message.content || "None"}`, true) + .addFields( + { name: "👤┆Send By", value: `${message.author} (${message.author.tag})`, inline: true }, + { name: `💬┆Message`, value: `${message.content || "None"}`, inline: true }, + ) .setColor(client.config.colors.normal) .setTimestamp(); if (message.attachments.size > 0) - embedLogs.addField( - `📃┆Attachments`, - `${message.attachments.first()?.url}`, - false - ); + embedLogs.addFields( + { name: `📃┆Attachments`, value: `${message.attachments.first()?.url}`, inline: false }, + ) return dmlog.send({ username: "Bot DM", embeds: [embedLogs], @@ -317,18 +317,18 @@ module.exports = async (client, message) => { message.mentions.users.first().id == client.user.id && command.length === 0 ) { - let row = new Discord.MessageActionRow().addComponents( - new Discord.MessageButton() + let row = new Discord.ActionRowBuilder().addComponents( + new Discord.ButtonBuilder() .setLabel("Invite") .setURL( "https://discord.com/oauth2/authorize?&client_id=798144456528363550&scope=applications.commands+bot&permissions=8" ) - .setStyle("LINK"), + .setStyle(Discord.ButtonStyle.Link), - new Discord.MessageButton() + new Discord.ButtonBuilder() .setLabel("Support server") .setURL("https://discord.gg/56FZySQaY7") - .setStyle("LINK") + .setStyle(Discord.ButtonStyle.Link) ); client @@ -402,18 +402,18 @@ module.exports = async (client, message) => { } if (command) { - let row = new Discord.MessageActionRow().addComponents( - new Discord.MessageButton() + let row = new Discord.ActionRowBuilder().addComponents( + new Discord.ButtonBuilder() .setLabel("Invite") .setURL( "https://discord.com/oauth2/authorize?&client_id=798144456528363550&scope=applications.commands+bot&permissions=8" ) - .setStyle("LINK"), + .setStyle(Discord.ButtonStyle.Link), - new Discord.MessageButton() + new Discord.ButtonBuilder() .setLabel("Support server") .setURL("https://discord.gg/56FZySQaY7") - .setStyle("LINK") + .setStyle(Discord.ButtonStyle.Link) ); client.embed( diff --git a/src/events/music/trackStart.js b/src/events/music/trackStart.js index 7b1b688..467b473 100644 --- a/src/events/music/trackStart.js +++ b/src/events/music/trackStart.js @@ -1,27 +1,27 @@ const Discord = require('discord.js'); module.exports = (client, player, track) => { - let row = new Discord.MessageActionRow() + let row = new Discord.ActionRowBuilder() .addComponents( - new Discord.MessageButton() + new Discord.ButtonBuilder() .setEmoji(client.emotes.music.previous) .setCustomId("Bot-musicprev") - .setStyle("SECONDARY"), + .setStyle(Discord.ButtonStyle.Secondary), - new Discord.MessageButton() + new Discord.ButtonBuilder() .setEmoji(client.emotes.music.pause) .setCustomId("Bot-musicpause") - .setStyle("SECONDARY"), + .setStyle(Discord.ButtonStyle.Secondary), - new Discord.MessageButton() + new Discord.ButtonBuilder() .setEmoji(client.emotes.music.stop) .setCustomId("Bot-musicstop") - .setStyle("SECONDARY"), + .setStyle(Discord.ButtonStyle.Secondary), - new Discord.MessageButton() + new Discord.ButtonBuilder() .setEmoji(client.emotes.music.next) .setCustomId("Bot-musicnext") - .setStyle("SECONDARY"), + .setStyle(Discord.ButtonStyle.Secondary), ); const channel = client.channels.cache.get(player.textChannel); diff --git a/src/events/stats/updateNewsChannels.js b/src/events/stats/updateNewsChannels.js index b3cb883..94601e1 100644 --- a/src/events/stats/updateNewsChannels.js +++ b/src/events/stats/updateNewsChannels.js @@ -3,11 +3,11 @@ const discord = require('discord.js'); const Schema = require("../../database/models/stats"); module.exports = async (client, channel, guild) => { - if (channel.type == "GUILD_NEWS") { + if (channel.type == Discord.ChannelType.GuildAnnouncement) { try { var channelName = await client.getTemplate(guild); channelName = channelName.replace(`{emoji}`, "📢") - channelName = channelName.replace(`{name}`, `News Channels: ${guild.channels.cache.filter(channel => channel.type === 'GUILD_NEWS').size || 0}`) + channelName = channelName.replace(`{name}`, `News Channels: ${guild.channels.cache.filter(channel => channel.type === Discord.ChannelType.GuildAnnouncement).size || 0}`) const data = await Schema.findOne({ Guild: guild.id }); const changeChannel = guild.channels.cache.get(data.NewsChannels) diff --git a/src/events/stats/updateStageChannels.js b/src/events/stats/updateStageChannels.js index f9e703b..ac32c46 100644 --- a/src/events/stats/updateStageChannels.js +++ b/src/events/stats/updateStageChannels.js @@ -3,11 +3,11 @@ const discord = require('discord.js'); const Schema = require("../../database/models/stats"); module.exports = async (client, channel, guild) => { - if (channel.type == "GUILD_STAGE_VOICE") { + if (channel.type == Discord.ChannelType.GuildStageVoice) { try { var channelName = await client.getTemplate(guild); channelName = channelName.replace(`{emoji}`, "🎤") - channelName = channelName.replace(`{name}`, `Stage Channels: ${guild.channels.cache.filter(channel => channel.type === 'GUILD_STAGE_VOICE').size || 0}`) + channelName = channelName.replace(`{name}`, `Stage Channels: ${guild.channels.cache.filter(channel => channel.type === Discord.ChannelType.GuildStageVoice).size || 0}`) const data = await Schema.findOne({ Guild: guild.id }); const changeChannel = guild.channels.cache.get(data.StageChannels) diff --git a/src/events/stats/updateTextChannels.js b/src/events/stats/updateTextChannels.js index c57207d..77b21ae 100644 --- a/src/events/stats/updateTextChannels.js +++ b/src/events/stats/updateTextChannels.js @@ -3,11 +3,11 @@ const discord = require('discord.js'); const Schema = require("../../database/models/stats"); module.exports = async (client, channel, guild) => { - if (channel.type == "GUILD_TEXT") { + if (channel.type == Discord.ChannelType.GuildText) { try { var channelName = await client.getTemplate(guild); channelName = channelName.replace(`{emoji}`, "💬") - channelName = channelName.replace(`{name}`, `Text Channels: ${guild.channels.cache.filter(channel => channel.type === 'GUILD_TEXT').size || 0}`) + channelName = channelName.replace(`{name}`, `Text Channels: ${guild.channels.cache.filter(channel => channel.type === Discord.ChannelType.GuildText).size || 0}`) const data = await Schema.findOne({ Guild: guild.id }); const changeChannel = guild.channels.cache.get(data.TextChannels) diff --git a/src/events/stats/updateVoiceChannels.js b/src/events/stats/updateVoiceChannels.js index 6cfaf9f..55d5be2 100644 --- a/src/events/stats/updateVoiceChannels.js +++ b/src/events/stats/updateVoiceChannels.js @@ -3,11 +3,11 @@ const discord = require('discord.js'); const Schema = require("../../database/models/stats"); module.exports = async (client, channel, guild) => { - if (channel.type == "GUILD_VOICE") { + if (channel.type == Discord.ChannelType.GuildVoice) { try { var channelName = await client.getTemplate(guild); channelName = channelName.replace(`{emoji}`, "🔊") - channelName = channelName.replace(`{name}`, `Voice Channels: ${guild.channels.cache.filter(channel => channel.type === 'GUILD_VOICE').size || 0}`) + channelName = channelName.replace(`{name}`, `Voice Channels: ${guild.channels.cache.filter(channel => channel.type === Discord.ChannelType.GuildVoice).size || 0}`) const data = await Schema.findOne({ Guild: guild.id }); const changeChannel = guild.channels.cache.get(data.VoiceChannels) diff --git a/src/events/voice/voiceError.js b/src/events/voice/voiceError.js index 3e4fc48..b1ef1ea 100644 --- a/src/events/voice/voiceError.js +++ b/src/events/voice/voiceError.js @@ -10,10 +10,12 @@ module.exports = (client, error) => { token: client.webhooks.voiceErrorLogs.token, }); - let embed = new Discord.MessageEmbed() + let embed = new Discord.EmbedBuilder() .setTitle(`🚨・Voice error`) - .addField(`Error`, `\`\`\`${error.message}\`\`\``) - .addField(`Stack error`, `\`\`\`${error.stack}\`\`\``) + .addFields( + { name: "Error", value: `\`\`\`${error.message}\`\`\``}, + { name: `Stack error`, value: `\`\`\`${error.stack.substr(0, 1018)}\`\`\``}, + ) .setColor(client.config.colors.normal) errorlog.send({ username: `Bot errors`, diff --git a/src/events/voice/voiceStateUpdate.js b/src/events/voice/voiceStateUpdate.js index d34e1bd..38fb393 100644 --- a/src/events/voice/voiceStateUpdate.js +++ b/src/events/voice/voiceStateUpdate.js @@ -1,4 +1,4 @@ -const discord = require('discord.js'); +const Discord = require('discord.js'); const voiceSchema = require("../../database/models/voice"); const channelSchema = require("../../database/models/voiceChannels"); @@ -89,8 +89,9 @@ module.exports = (client, oldState, newState) => { channelName = channelName.replace(`{emoji}`, "🔊") channelName = channelName.replace(`{channel name}`, `Voice ${data.ChannelCount}`) - const channel = await newState.guild.channels.create("⌛", { - type: "GUILD_VOICE", + const channel = await newState.guild.channels.create({ + name: "⌛", + type: Discord.ChannelType.GuildVoice, parent: data.Category, }); diff --git a/src/handlers/audio/music.js b/src/handlers/audio/music.js index 31cd89d..8ec0c1e 100644 --- a/src/handlers/audio/music.js +++ b/src/handlers/audio/music.js @@ -14,27 +14,27 @@ module.exports = (client) => { const embedData = interaction.message.embeds[0]; - let row = new Discord.MessageActionRow() + let row = new Discord.ActionRowBuilder() .addComponents( - new Discord.MessageButton() + new Discord.ButtonBuilder() .setEmoji(client.emotes.music.previous) .setCustomId("Bot-musicprev") - .setStyle("SECONDARY"), + .setStyle(Discord.ButtonStyle.Secondary), - new Discord.MessageButton() + new Discord.ButtonBuilder() .setEmoji(client.emotes.music.play) .setCustomId("Bot-musicstart") - .setStyle("SECONDARY"), + .setStyle(Discord.ButtonStyle.Secondary), - new Discord.MessageButton() + new Discord.ButtonBuilder() .setEmoji(client.emotes.music.stop) .setCustomId("Bot-musicstop") - .setStyle("SECONDARY"), + .setStyle(Discord.ButtonStyle.Secondary), - new Discord.MessageButton() + new Discord.ButtonBuilder() .setEmoji(client.emotes.music.next) .setCustomId("Bot-musicnext") - .setStyle("SECONDARY"), + .setStyle(Discord.ButtonStyle.Secondary), ); client.embed({ @@ -59,27 +59,27 @@ module.exports = (client) => { const embedData = interaction.message.embeds[0]; - let row = new Discord.MessageActionRow() + let row = new Discord.ActionRowBuilder() .addComponents( - new Discord.MessageButton() + new Discord.ButtonBuilder() .setEmoji(client.emotes.music.previous) .setCustomId("Bot-musicprev") - .setStyle("SECONDARY"), + .setStyle(Discord.ButtonStyle.Secondary), - new Discord.MessageButton() + new Discord.ButtonBuilder() .setEmoji(client.emotes.music.pause) .setCustomId("Bot-musicpause") - .setStyle("SECONDARY"), + .setStyle(Discord.ButtonStyle.Secondary), - new Discord.MessageButton() + new Discord.ButtonBuilder() .setEmoji(client.emotes.music.stop) .setCustomId("Bot-musicstop") - .setStyle("SECONDARY"), + .setStyle(Discord.ButtonStyle.Secondary), - new Discord.MessageButton() + new Discord.ButtonBuilder() .setEmoji(client.emotes.music.next) .setCustomId("Bot-musicnext") - .setStyle("SECONDARY"), + .setStyle(Discord.ButtonStyle.Secondary), ); client.embed({ @@ -119,27 +119,27 @@ module.exports = (client) => { const track = player.queue.current; - let row = new Discord.MessageActionRow() + let row = new Discord.ActionRowBuilder() .addComponents( - new Discord.MessageButton() + new Discord.ButtonBuilder() .setEmoji("⏮️") .setCustomId("Bot-musicprev") - .setStyle("PRIMARY"), + .setStyle(Discord.ButtonStyle.Primary), - new Discord.MessageButton() + new Discord.ButtonBuilder() .setEmoji("⏸️") .setCustomId("Bot-musicpause") - .setStyle("PRIMARY"), + .setStyle(Discord.ButtonStyle.Primary), - new Discord.MessageButton() + new Discord.ButtonBuilder() .setEmoji("⏹️") .setCustomId("Bot-musicstop") - .setStyle("PRIMARY"), + .setStyle(Discord.ButtonStyle.Primary), - new Discord.MessageButton() + new Discord.ButtonBuilder() .setEmoji("⏭️") .setCustomId("Bot-musicnext") - .setStyle("PRIMARY"), + .setStyle(Discord.ButtonStyle.Primary), ); client.embed({ @@ -177,27 +177,27 @@ module.exports = (client) => { const track = player.queue.previous; - let row = new Discord.MessageActionRow() + let row = new Discord.ActionRowBuilder() .addComponents( - new Discord.MessageButton() + new Discord.ButtonBuilder() .setEmoji("⏮️") .setCustomId("Bot-musicprev") - .setStyle("PRIMARY"), + .setStyle(Discord.ButtonStyle.Primary), - new Discord.MessageButton() + new Discord.ButtonBuilder() .setEmoji("⏸️") .setCustomId("Bot-musicpause") - .setStyle("PRIMARY"), + .setStyle(Discord.ButtonStyle.Primary), - new Discord.MessageButton() + new Discord.ButtonBuilder() .setEmoji("⏹️") .setCustomId("Bot-musicstop") - .setStyle("PRIMARY"), + .setStyle(Discord.ButtonStyle.Primary), - new Discord.MessageButton() + new Discord.ButtonBuilder() .setEmoji("⏭️") .setCustomId("Bot-musicnext") - .setStyle("PRIMARY"), + .setStyle(Discord.ButtonStyle.Primary), ); client.embed({ diff --git a/src/handlers/audio/radio.js b/src/handlers/audio/radio.js index bae643a..e149c4c 100644 --- a/src/handlers/audio/radio.js +++ b/src/handlers/audio/radio.js @@ -29,7 +29,7 @@ module.exports = (client) => { }); setTimeout(() => { - if (channel.type == "GUILD_STAGE_VOICE") { + if (channel.type == Discord.ChannelType.GuildStageVoice) { channel.guild.me.voice.setSuppressed(false).catch(() => { }); } }, 500) @@ -64,17 +64,17 @@ module.exports = (client) => { player.on('stateChange', (oldState, newState) => { if (newState.status === Voice.AudioPlayerStatus.Idle) { - client.startStream(process.env.RADIO) + client.startStream(process.env.RADIO || "https://playerservices.streamtheworld.com/api/livestream-redirect/RADIO538") } }); player.on('error', error => { client.emit("voiceError", error); - client.startStream(process.env.RADIO); + client.startStream(process.env.RADIO || "https://playerservices.streamtheworld.com/api/livestream-redirect/RADIO538"); }); client.on('ready', async () => { - client.startStream(process.env.RADIO); + client.startStream(process.env.RADIO || "https://playerservices.streamtheworld.com/api/livestream-redirect/RADIO538"); Schema.find(async (err, data) => { if (data) { diff --git a/src/handlers/components/button.js b/src/handlers/components/button.js index 566ee89..a874c13 100644 --- a/src/handlers/components/button.js +++ b/src/handlers/components/button.js @@ -6,15 +6,15 @@ module.exports = (client) => { var sendComponents = []; reactions.map((emoji) => { - let btn = new Discord.MessageButton() - .setStyle('PRIMARY') + let btn = new Discord.ButtonBuilder() + .setStyle(Discord.ButtonStyle.Primary) .setEmoji(`${emoji}`) .setCustomId(`reaction_button-${emoji}`); return labels.push(btn); }) if (labels.length < 5 || labels.length == 5) { - const row = new Discord.MessageActionRow() + const row = new Discord.ActionRowBuilder() row.addComponents(labels.slice(0, 5)) @@ -22,8 +22,8 @@ module.exports = (client) => { } if (labels.length < 10 && labels.length > 5 || labels.length == 10) { - const row = new Discord.MessageActionRow() - const row2 = new Discord.MessageActionRow() + const row = new Discord.ActionRowBuilder() + const row2 = new Discord.ActionRowBuilder() row.addComponents(labels.slice(0, 5)) row2.addComponents(labels.slice(5, 10)) @@ -32,9 +32,9 @@ module.exports = (client) => { } if (labels.length < 15 && labels.length > 10 || labels.length == 15) { - const row = new Discord.MessageActionRow() - const row2 = new Discord.MessageActionRow() - const row3 = new Discord.MessageActionRow() + const row = new Discord.ActionRowBuilder() + const row2 = new Discord.ActionRowBuilder() + const row3 = new Discord.ActionRowBuilder() row.addComponents(labels.slice(0, 5)) row2.addComponents(labels.slice(5, 10)) @@ -44,10 +44,10 @@ module.exports = (client) => { } if (labels.length < 20 && labels.length > 15 || labels.length == 20) { - const row = new Discord.MessageActionRow() - const row2 = new Discord.MessageActionRow() - const row3 = new Discord.MessageActionRow() - const row4 = new Discord.MessageActionRow() + const row = new Discord.ActionRowBuilder() + const row2 = new Discord.ActionRowBuilder() + const row3 = new Discord.ActionRowBuilder() + const row4 = new Discord.ActionRowBuilder() row.addComponents(labels.slice(0, 5)) row2.addComponents(labels.slice(5, 10)) @@ -58,11 +58,11 @@ module.exports = (client) => { } if (labels.length < 25 && labels.length > 20 || labels.length == 25) { - const row = new Discord.MessageActionRow() - const row2 = new Discord.MessageActionRow() - const row3 = new Discord.MessageActionRow() - const row4 = new Discord.MessageActionRow() - const row5 = new Discord.MessageActionRow() + const row = new Discord.ActionRowBuilder() + const row2 = new Discord.ActionRowBuilder() + const row3 = new Discord.ActionRowBuilder() + const row4 = new Discord.ActionRowBuilder() + const row5 = new Discord.ActionRowBuilder() row.addComponents(labels.slice(0, 5)) row2.addComponents(labels.slice(5, 10)) diff --git a/src/handlers/components/customEvents.js b/src/handlers/components/customEvents.js index 44ad681..b556b9c 100644 --- a/src/handlers/components/customEvents.js +++ b/src/handlers/components/customEvents.js @@ -1,4 +1,5 @@ const Schema = require("../../database/models/logChannels"); +const Discord = require('discord.js'); module.exports = async (client) => { client.getLogs = async function (guildId) { @@ -71,7 +72,7 @@ module.exports = async (client) => { }) client.on('channelUpdate', (oldChannel, newChannel) => { - if (oldChannel.type === 'GUILD_TEXT' && oldChannel.topic !== newChannel.topic) { + if (oldChannel.type === Discord.ChannelType.GuildText && oldChannel.topic !== newChannel.topic) { client.emit('channelTopicUpdate', newChannel, oldChannel.topic, newChannel.topic); } diff --git a/src/handlers/components/embed.js b/src/handlers/components/embed.js index b2df803..d92f1be 100644 --- a/src/handlers/components/embed.js +++ b/src/handlers/components/embed.js @@ -10,7 +10,7 @@ const Schema = require("../../database/models/functions"); module.exports = (client) => { client.templateEmbed = function () { - return new Discord.MessageEmbed() + return new Discord.EmbedBuilder() .setAuthor({ name: client.user.username, iconURL: client.user.avatarURL({ size: 1024 }) @@ -37,7 +37,9 @@ module.exports = (client) => { }, interaction) { embed.setTitle(`${client.emotes.normal.error}・Error!`) embed.setDescription(`Something went wrong!`) - embed.addField("💬┇Error comment", `\`\`\`${error}\`\`\``) + embed.addFields( + { name: "💬┆Error comment", value: `\`\`\`${error}\`\`\``}, + ) embed.setColor(client.config.colors.error) return client.sendEmbed({ @@ -58,7 +60,9 @@ module.exports = (client) => { }, interaction) { embed.setTitle(`${client.emotes.normal.error}・Error!`) embed.setDescription(`You did not provide the correct arguments`) - embed.addField("💬┇Required arguments", `\`\`\`${usage}\`\`\``) + embed.addFields( + { name: "💬┆Required arguments", value: `\`\`\`${usage}\`\`\``}, + ) embed.setColor(client.config.colors.error) return client.sendEmbed({ @@ -80,7 +84,9 @@ module.exports = (client) => { }, interaction) { embed.setTitle(`${client.emotes.normal.error}・Error!`) embed.setDescription(`You don't have the right permissions`) - embed.addField("🔑┇Required Permission", `\`\`\`${perms}\`\`\``) + embed.addFields( + { name: "🔑┆Required Permission", value: `\`\`\`${perms}\`\`\``}, + ) embed.setColor(client.config.colors.error) return client.sendEmbed({ @@ -102,7 +108,9 @@ module.exports = (client) => { }, interaction) { embed.setTitle(`${client.emotes.normal.error}・Error!`) embed.setDescription(`I don't have the right permissions`) - embed.addField("🔑┇Required Permission", `\`\`\`${perms}\`\`\``) + embed.addFields( + { name: "🔑┆Required Permission", value: `\`\`\`${perms}\`\`\``}, + ) embed.setColor(client.config.colors.error) return client.sendEmbed({ @@ -124,7 +132,9 @@ module.exports = (client) => { }, interaction) { embed.setTitle(`${client.emotes.normal.error}・Error!`) embed.setDescription(`You've already done this once`) - embed.addField("⏰┇Try again on", ``) + embed.addFields( + { name: "⏰┆Try again on", value: ``}, + ) embed.setColor(client.config.colors.error) return client.sendEmbed({ @@ -193,10 +203,9 @@ module.exports = (client) => { if (fields) embed.addFields(fields); if (author) embed.setAuthor(author); if (url) embed.setURL(url); - if (footer) embed.setFooter(footer); + if (footer) embed.setFooter({ text: footer }); if (color) embed.setColor(color); if (functiondata && functiondata.Color && !color) embed.setColor(functiondata.Color) - return client.sendEmbed({ embeds: [embed], content: content, @@ -220,7 +229,7 @@ module.exports = (client) => { }, interaction) { const functiondata = await Schema.findOne({ Guild: interaction.guild.id }) - let embed = new Discord.MessageEmbed() + let embed = new Discord.EmbedBuilder() .setColor(client.config.colors.normal) if (title) embed.setTitle(title); diff --git a/src/handlers/components/select.js b/src/handlers/components/select.js index 10ffa6d..ef99ca1 100644 --- a/src/handlers/components/select.js +++ b/src/handlers/components/select.js @@ -4,14 +4,14 @@ module.exports = (client) => { client.generateSelect = async function (id, labels) { let sendComponents = []; - let row = new Discord.MessageActionRow(); - let row2 = new Discord.MessageActionRow(); - let row3 = new Discord.MessageActionRow(); - let row4 = new Discord.MessageActionRow(); - let row5 = new Discord.MessageActionRow(); + let row = new Discord.ActionRowBuilder(); + let row2 = new Discord.ActionRowBuilder(); + let row3 = new Discord.ActionRowBuilder(); + let row4 = new Discord.ActionRowBuilder(); + let row5 = new Discord.ActionRowBuilder(); if (labels.length < 25 || labels.length == 25) { - const menu = new Discord.MessageSelectMenu() + const menu = new Discord.StringSelectMenuBuilder() .setCustomId(`${id}-1`) .setPlaceholder('❌┇Nothing selected') .addOptions(labels.slice(0, 25)); @@ -22,12 +22,12 @@ module.exports = (client) => { } if (labels.length < 50 && labels.length > 25 || labels.length == 50) { - const menu = new Discord.MessageSelectMenu() + const menu = new Discord.StringSelectMenuBuilder() .setCustomId(`${id}-1`) .setPlaceholder('❌┇Nothing selected') .addOptions(labels.slice(0, 25)); - const menu2 = new Discord.MessageSelectMenu() + const menu2 = new Discord.StringSelectMenuBuilder() .setCustomId(`${id}-2`) .setPlaceholder('❌┇Nothing selected') .addOptions(labels.slice(25, 50)); @@ -39,17 +39,17 @@ module.exports = (client) => { } if (labels.length < 75 && labels.length > 50 || labels.length == 75) { - const menu = new Discord.MessageSelectMenu() + const menu = new Discord.StringSelectMenuBuilder() .setCustomId(`${id}-1`) .setPlaceholder('❌┇Nothing selected') .addOptions(labels.slice(0, 25)); - const menu2 = new Discord.MessageSelectMenu() + const menu2 = new Discord.StringSelectMenuBuilder() .setCustomId(`${id}-2`) .setPlaceholder('❌┇Nothing selected') .addOptions(labels.slice(25, 50)); - const menu3 = new Discord.MessageSelectMenu() + const menu3 = new Discord.StringSelectMenuBuilder() .setCustomId(`${id}-3`) .setPlaceholder('❌┇Nothing selected') .addOptions(labels.slice(50, 75)); @@ -62,22 +62,22 @@ module.exports = (client) => { } if (labels.length < 100 && labels.length > 75 || labels.length == 100) { - const menu = new Discord.MessageSelectMenu() + const menu = new Discord.StringSelectMenuBuilder() .setCustomId(`${id}-1`) .setPlaceholder('❌┇Nothing selected') .addOptions(labels.slice(0, 25)); - const menu2 = new Discord.MessageSelectMenu() + const menu2 = new Discord.StringSelectMenuBuilder() .setCustomId(`${id}-2`) .setPlaceholder('❌┇Nothing selected') .addOptions(labels.slice(25, 50)); - const menu3 = new Discord.MessageSelectMenu() + const menu3 = new Discord.StringSelectMenuBuilder() .setCustomId(`${id}-3`) .setPlaceholder('❌┇Nothing selected') .addOptions(labels.slice(50, 75)); - const menu4 = new Discord.MessageSelectMenu() + const menu4 = new Discord.StringSelectMenuBuilder() .setCustomId(`${id}-4`) .setPlaceholder('❌┇Nothing selected') .addOptions(labels.slice(75, 100)); @@ -91,27 +91,27 @@ module.exports = (client) => { } if (labels.length < 125 && labels.length > 100 || labels.length == 125) { - const menu = new Discord.MessageSelectMenu() + const menu = new Discord.StringSelectMenuBuilder() .setCustomId(`${id}-1`) .setPlaceholder('❌┇Nothing selected') .addOptions(labels.slice(0, 25)); - const menu2 = new Discord.MessageSelectMenu() + const menu2 = new Discord.StringSelectMenuBuilder() .setCustomId(`${id}-2`) .setPlaceholder('❌┇Nothing selected') .addOptions(labels.slice(25, 50)); - const menu3 = new Discord.MessageSelectMenu() + const menu3 = new Discord.StringSelectMenuBuilder() .setCustomId(`${id}-3`) .setPlaceholder('❌┇Nothing selected') .addOptions(labels.slice(50, 75)); - const menu4 = new Discord.MessageSelectMenu() + const menu4 = new Discord.StringSelectMenuBuilder() .setCustomId(`${id}-4`) .setPlaceholder('❌┇Nothing selected') .addOptions(labels.slice(75, 100)); - const menu5 = new Discord.MessageSelectMenu() + const menu5 = new Discord.StringSelectMenuBuilder() .setCustomId(`${id}-5`) .setPlaceholder('❌┇Nothing selected') .addOptions(labels.slice(100, 125)); diff --git a/src/handlers/functions/functions.js b/src/handlers/functions/functions.js index 3562063..ccd6201 100644 --- a/src/handlers/functions/functions.js +++ b/src/handlers/functions/functions.js @@ -22,8 +22,7 @@ module.exports = async (client) => { return false } - - if (!interaction.guild.me.permissions.has(flags[i])) { + if (!interaction.guild.members.me.permissions.has(flags[i])) { client.errNoPerms({ perms: perms[i], type: 'editreply' @@ -39,7 +38,7 @@ module.exports = async (client) => { perms: perms }, interaction) { for (let i = 0; i < flags.length; i++) { - if (!interaction.guild.me.permissions.has(flags[i])) { + if (!interaction.guild.members.me.permissions.has(flags[i])) { client.errNoPerms({ perms: perms[i], type: 'editreply' @@ -128,45 +127,45 @@ module.exports = async (client) => { interaction.editReply({ embeds: [await client.generateEmbed(0, 0, lb, title, interaction)], fetchReply: true }).then(async msg => { if (lb.length <= 10) return; - let button1 = new Discord.MessageButton() + let button1 = new Discord.ButtonBuilder() .setCustomId('back_button') .setEmoji('⬅️') - .setStyle('PRIMARY') + .setStyle(Discord.ButtonStyle.Primary) .setDisabled(true); - let button2 = new Discord.MessageButton() + let button2 = new Discord.ButtonBuilder() .setCustomId('forward_button') .setEmoji('➡️') - .setStyle('PRIMARY'); + .setStyle(Discord.ButtonStyle.Primary); - let row = new Discord.MessageActionRow() + let row = new Discord.ActionRowBuilder() .addComponents(button1, button2); msg.edit({ embeds: [await client.generateEmbed(0, 0, lb, title, interaction)], components: [row] }) let currentIndex = 0; - const collector = interaction.channel.createMessageComponentCollector({ componentType: 'BUTTON', time: 60000 }); + const collector = interaction.channel.createMessageComponentCollector({ componentType: Discord.ComponentType.Button, time: 60000 }); collector.on('collect', async (btn) => { if (btn.user.id == interaction.user.id && btn.message.id == msg.id) { btn.customId === "back_button" ? currentIndex -= 10 : currentIndex += 10; - let btn1 = new Discord.MessageButton() + let btn1 = new Discord.ButtonBuilder() .setCustomId('back_button') .setEmoji('⬅️') - .setStyle('PRIMARY') + .setStyle(Discord.ButtonStyle.Primary) .setDisabled(true); - let btn2 = new Discord.MessageButton() + let btn2 = new Discord.ButtonBuilder() .setCustomId('forward_button') .setEmoji('➡️') - .setStyle('PRIMARY') + .setStyle(Discord.ButtonStyle.Primary) .setDisabled(true); if (currentIndex !== 0) btn1.setDisabled(false); if (currentIndex + 10 < lb.length) btn2.setDisabled(false); - let row2 = new Discord.MessageActionRow() + let row2 = new Discord.ActionRowBuilder() .addComponents(btn1, btn2); msg.edit({ embeds: [await client.generateEmbed(currentIndex, currentIndex, lb, title, interaction)], components: [row2] }); @@ -175,19 +174,19 @@ module.exports = async (client) => { }) collector.on('end', async (btn) => { - let btn1Disable = new Discord.MessageButton() + let btn1Disable = new Discord.ButtonBuilder() .setCustomId('back_button') .setEmoji('⬅️') - .setStyle('PRIMARY') + .setStyle(Discord.ButtonStyle.Primary) .setDisabled(true); - let btn2Disable = new Discord.MessageButton() + let btn2Disable = new Discord.ButtonBuilder() .setCustomId('forward_button') .setEmoji('➡️') - .setStyle('PRIMARY') + .setStyle(Discord.ButtonStyle.Primary) .setDisabled(true); - let rowDisable = new Discord.MessageActionRow() + let rowDisable = new Discord.ActionRowBuilder() .addComponents(btn1Disable, btn2Disable); msg.edit({ embeds: [await client.generateEmbed(currentIndex, currentIndex, lb, title, interaction)], components: [rowDisable] }); @@ -217,12 +216,12 @@ module.exports = async (client) => { type: 'editreply' }, interaction); - const row = new Discord.MessageActionRow() + const row = new Discord.ActionRowBuilder() .addComponents( - new Discord.MessageButton() + new Discord.ButtonBuilder() .setLabel("Start activity") .setURL(`https://discord.gg/${invite.code}`) - .setStyle("LINK"), + .setStyle(Discord.ButtonStyle.Link), ); client.embed({ diff --git a/src/handlers/functions/soundboard.js b/src/handlers/functions/soundboard.js index 695dd37..b44f39a 100644 --- a/src/handlers/functions/soundboard.js +++ b/src/handlers/functions/soundboard.js @@ -21,8 +21,8 @@ module.exports = (client) => { connection.subscribe(player); setTimeout(() => { - if (channel.type == "GUILD_STAGE_VOICE") { - interaction.guild.me.voice.setSuppressed(false); + if (channel.type == Discord.ChannelType.GuildStageVoice) { + interaction.guild.members.me.voice.setSuppressed(false); } }, 500) diff --git a/src/handlers/functions/ticket.js b/src/handlers/functions/ticket.js index e73ac1b..f9f4a5d 100644 --- a/src/handlers/functions/ticket.js +++ b/src/handlers/functions/ticket.js @@ -443,7 +443,7 @@ module.exports = async (client) => { transcript.appendChild(messageGroup); } - const fileTrans = new discord.MessageAttachment(Buffer.from(dom.serialize()), `${interaction.channel.id}.html`); + const fileTrans = new discord.AttachmentBuilder(Buffer.from(dom.serialize()), { name: `${interaction.channel.id}.html` }); channel.send({ files: [fileTrans] }); } diff --git a/src/handlers/helppanel/changelogs.js b/src/handlers/helppanel/changelogs.js index 4ee6cae..f885f3d 100644 --- a/src/handlers/helppanel/changelogs.js +++ b/src/handlers/helppanel/changelogs.js @@ -2,15 +2,15 @@ const Discord = require('discord.js'); module.exports = async (client) => { client.on('interactionCreate', async (interaction) => { - if (!interaction.isSelectMenu()) return; + if (!interaction.isStringSelectMenu()) return; if (interaction.customId == "Bot-helppanel") { if (interaction.values == "changelogs-Bothelp") { interaction.deferUpdate(); - const row = new Discord.MessageActionRow() + const row = new Discord.ActionRowBuilder() .addComponents( - new Discord.MessageSelectMenu() + new Discord.StringSelectMenuBuilder() .setCustomId('Bot-helppanel') .setPlaceholder('❌┆Nothing selected') .addOptions([ @@ -46,11 +46,16 @@ module.exports = async (client) => { desc: `_____`, thumbnail: client.user.avatarURL({ size: 1024 }), fields: [ - { - name: "📢┆Alert!", - value: 'After more than 1 year we decided to stop Bot on April 15th, for more information go to [this server](https://discord.gg/techpoint)', - inline: false, - }, + { + name: "📢┆Alert!", + value: 'This is the changelogs of the bot, here you can see the changes that have been made to the bot.', + inline: false, + }, + { + name: "📃┆Changelogs", + value: '10/12/2022 - Updated the bot to the latest version of discord.js (v14)', + inline: false, + } ], components: [row], type: 'edit' diff --git a/src/handlers/helppanel/commands.js b/src/handlers/helppanel/commands.js index a5f7f8b..55d836f 100644 --- a/src/handlers/helppanel/commands.js +++ b/src/handlers/helppanel/commands.js @@ -190,39 +190,39 @@ module.exports = async (client) => { ]; client.on('interactionCreate', async (interaction) => { - if (!interaction.isSelectMenu()) return; + if (!interaction.isStringSelectMenu()) return; if (interaction.customId == "Bot-helppanel") { if (interaction.values == "commands-Bothelp") { interaction.deferUpdate(); let page = 1; - const row = new Discord.MessageActionRow() + const row = new Discord.ActionRowBuilder() .addComponents( - new Discord.MessageButton() + new Discord.ButtonBuilder() .setCustomId('helpPrev') .setEmoji('⬅️') - .setStyle('SECONDARY'), + .setStyle(Discord.ButtonStyle.Secondary), - new Discord.MessageButton() + new Discord.ButtonBuilder() .setCustomId('helpNext') .setEmoji('➡️') - .setStyle('SECONDARY'), + .setStyle(Discord.ButtonStyle.Secondary), - new Discord.MessageButton() + new Discord.ButtonBuilder() .setLabel("Invite") - .setURL("https://discord.com/oauth2/authorize?&client_id=798144456528363550&scope=applications.commands+bot&permissions=8") - .setStyle("LINK"), + .setURL(client.config.discord.botInvite) + .setStyle(Discord.ButtonStyle.Link), - new Discord.MessageButton() + new Discord.ButtonBuilder() .setLabel("Support server") - .setURL("https://discord.gg/56FZySQaY7") - .setStyle("LINK"), + .setURL(client.config.discord.serverInvite) + .setStyle(Discord.ButtonStyle.Link), ); - const row2 = new Discord.MessageActionRow() + const row2 = new Discord.ActionRowBuilder() .addComponents( - new Discord.MessageSelectMenu() + new Discord.StringSelectMenuBuilder() .setCustomId('Bot-helppanel') .setPlaceholder('❌┆Nothing selected') .addOptions([ diff --git a/src/handlers/helppanel/invite.js b/src/handlers/helppanel/invite.js index f80a4b4..bf8f608 100644 --- a/src/handlers/helppanel/invite.js +++ b/src/handlers/helppanel/invite.js @@ -2,27 +2,27 @@ const Discord = require('discord.js'); module.exports = async (client) => { client.on('interactionCreate', async (interaction) => { - if (!interaction.isSelectMenu()) return; + if (!interaction.isStringSelectMenu()) return; if (interaction.customId == "Bot-helppanel") { if (interaction.values == "invite-Bothelp") { interaction.deferUpdate(); - const row2 = new Discord.MessageActionRow() + const row2 = new Discord.ActionRowBuilder() .addComponents( - new Discord.MessageSelectMenu() + new Discord.StringSelectMenuBuilder() .setCustomId('Bot-helppanel') .setPlaceholder('❌┆Nothing selected') .addOptions([ { label: `Commands`, - description: `Show the commands of Bot!`, + description: `Show the commands of ${client.user.username}!`, emoji: "💻", value: "commands-Bothelp", }, { label: `Invite`, - description: `Invite Bot to your server`, + description: `Invite ${client.user.username} to your server`, emoji: "📨", value: "invite-Bothelp", }, @@ -34,30 +34,30 @@ module.exports = async (client) => { }, { label: `Changelogs`, - description: `Show the bot changelogs`, + description: `Show the ${client.user.username} bot changelogs`, emoji: "📃", value: "changelogs-Bothelp", }, ]), ); - let row = new Discord.MessageActionRow() + let row = new Discord.ActionRowBuilder() .addComponents( - new Discord.MessageButton() + new Discord.ButtonBuilder() .setLabel("Invite") .setURL(client.config.discord.botInvite) - .setStyle("LINK"), + .setStyle(Discord.ButtonStyle.Link), - new Discord.MessageButton() + new Discord.ButtonBuilder() .setLabel("Support server") .setURL(client.config.discord.serverInvite) - .setStyle("LINK"), + .setStyle(Discord.ButtonStyle.Link), ); client.embed({ title: `📨・Invite`, - desc: `Make your server even better with Bot!`, - image: "https://cdn.discordapp.com/attachments/843487478881976381/874694194474668052/Bot_banner_invite.jpg", + desc: `Make your server even better with the ${client.user.username} bot!`, + image: "https://cdn.discordapp.com/attachments/843487478881976381/874694194474668052/dbot_banner_invite.jpg", url: client.config.discord.botInvite, components: [row2, row], type: 'edit' diff --git a/src/handlers/helppanel/support.js b/src/handlers/helppanel/support.js index b524a6d..e876101 100644 --- a/src/handlers/helppanel/support.js +++ b/src/handlers/helppanel/support.js @@ -2,27 +2,27 @@ const Discord = require('discord.js'); module.exports = async (client) => { client.on('interactionCreate', async (interaction) => { - if (!interaction.isSelectMenu()) return; + if (!interaction.isStringSelectMenu()) return; if (interaction.customId == "Bot-helppanel") { if (interaction.values == "support-Bothelp") { interaction.deferUpdate(); - const row2 = new Discord.MessageActionRow() + const row2 = new Discord.ActionRowBuilder() .addComponents( - new Discord.MessageSelectMenu() + new Discord.StringSelectMenuBuilder() .setCustomId('Bot-helppanel') .setPlaceholder('❌┆Nothing selected') .addOptions([ { label: `Commands`, - description: `Show the commands of Bot!`, + description: `Show the commands of ${client.user.username}!`, emoji: "💻", value: "commands-Bothelp", }, { label: `Invite`, - description: `Invite Bot to your server`, + description: `Invite ${client.user.username} to your server`, emoji: "📨", value: "invite-Bothelp", }, @@ -34,24 +34,24 @@ module.exports = async (client) => { }, { label: `Changelogs`, - description: `Show the bot changelogs`, + description: `Show the ${client.user.username} changelogs`, emoji: "📃", value: "changelogs-Bothelp", }, ]), ); - let row = new Discord.MessageActionRow() + let row = new Discord.ActionRowBuilder() .addComponents( - new Discord.MessageButton() + new Discord.ButtonBuilder() .setLabel("Support server") .setURL(client.config.discord.serverInvite) - .setStyle("LINK"), + .setStyle(Discord.ButtonStyle.Link), ); client.embed({ title: `❓・Support`, - desc: `Make your server even better with Bot!`, + desc: `Make your server even better with ${client.user.username}!`, image: "https://cdn.discordapp.com/attachments/843487478881976381/874694194474668052/Bot_banner_invite.jpg", url: client.config.discord.serverInvite, components: [row2, row], diff --git a/src/handlers/linkspanel/botInvite.js b/src/handlers/linkspanel/botInvite.js index 49b445a..00ea640 100644 --- a/src/handlers/linkspanel/botInvite.js +++ b/src/handlers/linkspanel/botInvite.js @@ -2,15 +2,15 @@ const Discord = require('discord.js'); module.exports = async (client) => { client.on('interactionCreate', async (interaction) => { - if (!interaction.isSelectMenu()) return; + if (!interaction.isStringSelectMenu()) return; if (interaction.customId == "Bot-linkspanel") { if (interaction.values == "invite-linkspanel") { interaction.deferUpdate(); - const row2 = new Discord.MessageActionRow() + const row2 = new Discord.ActionRowBuilder() .addComponents( - new Discord.MessageSelectMenu() + new Discord.StringSelectMenuBuilder() .setCustomId('Bot-linkspanel') .setPlaceholder('❌┆Nothing selected') .addOptions([ @@ -47,12 +47,12 @@ module.exports = async (client) => { ]), ); - let row = new Discord.MessageActionRow() + let row = new Discord.ActionRowBuilder() .addComponents( - new Discord.MessageButton() + new Discord.ButtonBuilder() .setLabel("Bot Invite") .setURL(client.config.discord.botInvite) - .setStyle("LINK"), + .setStyle(Discord.ButtonStyle.Link), ); client.embed({ diff --git a/src/handlers/linkspanel/botInvite2.js b/src/handlers/linkspanel/botInvite2.js index 51e1a59..e7a3361 100644 --- a/src/handlers/linkspanel/botInvite2.js +++ b/src/handlers/linkspanel/botInvite2.js @@ -2,15 +2,15 @@ const Discord = require('discord.js'); module.exports = async (client) => { client.on('interactionCreate', async (interaction) => { - if (!interaction.isSelectMenu()) return; + if (!interaction.isStringSelectMenu()) return; if (interaction.customId == "Bot-linkspanel") { if (interaction.values == "invite2-linkspanel") { interaction.deferUpdate(); - const row2 = new Discord.MessageActionRow() + const row2 = new Discord.ActionRowBuilder() .addComponents( - new Discord.MessageSelectMenu() + new Discord.StringSelectMenuBuilder() .setCustomId('Bot-linkspanel') .setPlaceholder('❌┆Nothing selected') .addOptions([ @@ -47,12 +47,12 @@ module.exports = async (client) => { ]), ); - let row = new Discord.MessageActionRow() + let row = new Discord.ActionRowBuilder() .addComponents( - new Discord.MessageButton() + new Discord.ButtonBuilder() .setLabel("Bot Invite") .setURL("https://discord.com/oauth2/authorize?&client_id=896842236002713673&scope=applications.commands+bot&permissions=8") - .setStyle("LINK"), + .setStyle(Discord.ButtonStyle.Link), ); client.embed({ diff --git a/src/handlers/linkspanel/communityServer.js b/src/handlers/linkspanel/communityServer.js index 3a7fde4..7ec7407 100644 --- a/src/handlers/linkspanel/communityServer.js +++ b/src/handlers/linkspanel/communityServer.js @@ -2,15 +2,15 @@ const Discord = require('discord.js'); module.exports = async (client) => { client.on('interactionCreate', async (interaction) => { - if (!interaction.isSelectMenu()) return; + if (!interaction.isStringSelectMenu()) return; if (interaction.customId == "Bot-linkspanel") { if (interaction.values == "community-linkspanel") { interaction.deferUpdate(); - const row2 = new Discord.MessageActionRow() + const row2 = new Discord.ActionRowBuilder() .addComponents( - new Discord.MessageSelectMenu() + new Discord.StringSelectMenuBuilder() .setCustomId('Bot-linkspanel') .setPlaceholder('❌┆Nothing selected') .addOptions([ @@ -47,13 +47,13 @@ module.exports = async (client) => { ]), ); - let row = new Discord.MessageActionRow() + let row = new Discord.ActionRowBuilder() .addComponents( - new Discord.MessageButton() + new Discord.ButtonBuilder() .setLabel("Community Server") .setURL("https://discord.gg/jf6ZkpgsXF") - .setStyle("LINK"), + .setStyle(Discord.ButtonStyle.Link), ); client.embed({ diff --git a/src/handlers/linkspanel/supportServer.js b/src/handlers/linkspanel/supportServer.js index f2fc762..4d74691 100644 --- a/src/handlers/linkspanel/supportServer.js +++ b/src/handlers/linkspanel/supportServer.js @@ -2,15 +2,15 @@ const Discord = require('discord.js'); module.exports = async (client) => { client.on('interactionCreate', async (interaction) => { - if (!interaction.isSelectMenu()) return; + if (!interaction.isStringSelectMenu()) return; if (interaction.customId == "Bot-linkspanel") { if (interaction.values == "support-linkspanel") { interaction.deferUpdate(); - const row2 = new Discord.MessageActionRow() + const row2 = new Discord.ActionRowBuilder() .addComponents( - new Discord.MessageSelectMenu() + new Discord.StringSelectMenuBuilder() .setCustomId('Bot-linkspanel') .setPlaceholder('❌┆Nothing selected') .addOptions([ @@ -47,12 +47,12 @@ module.exports = async (client) => { ]), ); - let row = new Discord.MessageActionRow() + let row = new Discord.ActionRowBuilder() .addComponents( - new Discord.MessageButton() + new Discord.ButtonBuilder() .setLabel("Support Server") .setURL(client.config.discord.serverInvite) - .setStyle("LINK"), + .setStyle(Discord.ButtonStyle.Link), ); client.embed({ diff --git a/src/handlers/linkspanel/topGG.js b/src/handlers/linkspanel/topGG.js index a817707..ae1cffc 100644 --- a/src/handlers/linkspanel/topGG.js +++ b/src/handlers/linkspanel/topGG.js @@ -2,15 +2,15 @@ const Discord = require('discord.js'); module.exports = async (client) => { client.on('interactionCreate', async (interaction) => { - if (!interaction.isSelectMenu()) return; + if (!interaction.isStringSelectMenu()) return; if (interaction.customId == "Bot-linkspanel") { if (interaction.values == "top.gg-linkspanel") { interaction.deferUpdate(); - const row2 = new Discord.MessageActionRow() + const row2 = new Discord.ActionRowBuilder() .addComponents( - new Discord.MessageSelectMenu() + new Discord.StringSelectMenuBuilder() .setCustomId('Bot-linkspanel') .setPlaceholder('❌┆Nothing selected') .addOptions([ @@ -47,13 +47,13 @@ module.exports = async (client) => { ]), ); - let row = new Discord.MessageActionRow() + let row = new Discord.ActionRowBuilder() .addComponents( - new Discord.MessageButton() + new Discord.ButtonBuilder() .setLabel("Vote Now") .setURL("https://top.gg/bot/798144456528363550/vote") - .setStyle("LINK"), + .setStyle(Discord.ButtonStyle.Link), ); client.embed({ diff --git a/src/handlers/loaders/commands.js b/src/handlers/loaders/commands.js index 0050518..a99aa32 100644 --- a/src/handlers/loaders/commands.js +++ b/src/handlers/loaders/commands.js @@ -1,6 +1,6 @@ const Discord = require('discord.js'); -const { REST } = require('@discordjs/rest'); -const { Routes } = require('discord-api-types/v9'); +const { REST } = require('discord.js'); +const { Routes } = require('discord.js'); const chalk = require('chalk'); const fs = require('fs'); @@ -31,7 +31,7 @@ module.exports = (client) => { (async () => { try { - const embed = new Discord.MessageEmbed() + const embed = new Discord.EmbedBuilder() .setDescription(`Started refreshing application (/) commands.`) .setColor(client.config.colors.normal) interactionLogs.send({ @@ -44,7 +44,7 @@ module.exports = (client) => { { body: commands }, ) - const embedFinal = new Discord.MessageEmbed() + const embedFinal = new Discord.EmbedBuilder() .setDescription(`Successfully reloaded ${commands.length} application (/) commands.`) .setColor(client.config.colors.normal) interactionLogs.send({ diff --git a/src/handlers/security/antiad.js b/src/handlers/security/antiad.js index f083c9e..5cfeef2 100644 --- a/src/handlers/security/antiad.js +++ b/src/handlers/security/antiad.js @@ -6,7 +6,6 @@ const Schema2 = require("../../database/models/channelList"); module.exports = (client) => { client.on('messageCreate', async (message) => { if (message.channel.type === 'DM') return; - Schema.findOne({ Guild: message.guild.id }, async (err, data) => { if (data) { if (data.AntiInvite == true) { @@ -16,7 +15,7 @@ module.exports = (client) => { if (code) { Schema2.findOne({ Guild: message.guild.id }, async (err, data2) => { if (data2) { - if (data2.Channels.includes(message.channel.id) || message.member.permissions.has(Discord.Permissions.FLAGS.MANAGE_MESSAGES)) { + if (data2.Channels.includes(message.channel.id) || message.member.permissions.has(Discord.PermissionsBitField.Flags.ManageMessages)) { return; } @@ -30,6 +29,7 @@ module.exports = (client) => { }, message.channel) } else { + if (message.member.permissions.has(Discord.PermissionsBitField.Flags.ManageMessages)) return; message.delete(); client.embed({ @@ -48,7 +48,7 @@ module.exports = (client) => { if (content.includes('http://') || content.includes('https://') || content.includes('www.')) { Schema2.findOne({ Guild: message.guild.id }, async (err, data2) => { if (data2) { - if (data2.Channels.includes(message.channel.id) || message.member.permissions.has(Discord.Permissions.FLAGS.MANAGE_MESSAGES)) { + if (data2.Channels.includes(message.channel.id) || message.member.permissions.has(Discord.PermissionsBitField.Flags.ManageMessages)) { return; } @@ -62,6 +62,7 @@ module.exports = (client) => { }, message.channel) } else { + if (message.member.permissions.has(Discord.PermissionsBitField.Flags.ManageMessages)) return; message.delete(); client.embed({ @@ -92,12 +93,12 @@ module.exports = (client) => { if (code) { Schema2.findOne({ Guild: newMessage.guild.id }, async (err, data2) => { if (data2) { - if (data2.Channels.includes(newMessage.channel.id) || newMessage.member.permissions.has(Discord.Permissions.FLAGS.MANAGE_MESSAGES)) { + if (data2.Channels.includes(newMessage.channel.id) || newMessage.member.permissions.has(Discord.PermissionsBitField.Flags.ManageMessages)) { return; } newMessage.delete(); - let error = new Discord.MessageEmbed() + let error = new Discord.EmbedBuilder() .setTitle(`${client.emotes.normal.error}・Moderator`) .setAuthor(client.user.username, client.user.avatarURL()) .setDescription(`Discord links are not allowed in this server!`) @@ -107,8 +108,9 @@ module.exports = (client) => { newMessage.channel.send({ content: `${newMessage.author}`, embeds: [error] }) } else { + if (newMessage.member.permissions.has(Discord.PermissionsBitField.Flags.ManageMessages)) return; newMessage.delete(); - let error = new Discord.MessageEmbed() + let error = new Discord.EmbedBuilder() .setTitle(`${client.emotes.normal.error}・Moderator`) .setAuthor(client.user.username, client.user.avatarURL()) .setDescription(`Discord links are not allowed in this server!`) @@ -126,12 +128,12 @@ module.exports = (client) => { if (content.includes('http://') || content.includes('https://') || content.includes('www.')) { Schema2.findOne({ Guild: newMessage.guild.id }, async (err, data2) => { if (data2) { - if (data2.Channels.includes(newMessage.channel.id) || newMessage.member.permissions.has(Discord.Permissions.FLAGS.MANAGE_MESSAGES)) { + if (data2.Channels.includes(newMessage.channel.id) || newMessage.member.permissions.has(Discord.PermissionsBitField.Flags.ManageMessages)) { return; } newMessage.delete(); - var error = new Discord.MessageEmbed() + var error = new Discord.EmbedBuilder() .setTitle(`${client.emotes.normal.error}・Moderator`) .setAuthor(client.user.username, client.user.avatarURL()) .setDescription(`Links are not allowed in this server!`) @@ -141,8 +143,9 @@ module.exports = (client) => { newMessage.channel.send({ content: `${newMessage.author}`, embeds: [error] }) } else { + if (newMessage.member.permissions.has(Discord.PermissionsBitField.Flags.ManageMessages)) return; newMessage.delete(); - var error = new Discord.MessageEmbed() + var error = new Discord.EmbedBuilder() .setTitle(`${client.emotes.normal.error}・Moderator`) .setAuthor(client.user.username, client.user.avatarURL()) .setDescription(`Links are not allowed in this server!`) diff --git a/src/index.js b/src/index.js index 122981c..97e00db 100644 --- a/src/index.js +++ b/src/index.js @@ -1,9 +1,65 @@ const Discord = require('discord.js'); const chalk = require('chalk'); -require('dotenv').config(); +require('dotenv').config('./.env'); +const axios = require('axios'); +// Check if is up to date +const { version } = require('.././package.json'); +axios.get('https://api.github.com/repos/CorwinDev/Discord-Bot/releases/latest').then(res => { + if (res.data.tag_name !== version) { + console.log(chalk.red.bgYellow(`Your bot is not up to date! Please update to the latest version!`, version + ' -> ' + res.data.tag_name)); + } +}).catch(err => { + console.log(chalk.red.bgYellow(`Failed to check if bot is up to date!`)); +}); + const webhook = require("./config/webhooks.json"); const config = require("./config/bot.js"); +// Check if .env webhook_id and webhook_token are set +if (process.env.WEBHOOK_ID && process.env.WEBHOOK_TOKEN) { + webhook.startLogs.id = process.env.WEBHOOK_ID; + webhook.startLogs.token = process.env.WEBHOOK_TOKEN; + + webhook.shardLogs.id = process.env.WEBHOOK_ID; + webhook.shardLogs.token = process.env.WEBHOOK_TOKEN; + + webhook.errorLogs.id = process.env.WEBHOOK_ID; + webhook.errorLogs.token = process.env.WEBHOOK_TOKEN; + + webhook.dmLogs.id = process.env.WEBHOOK_ID; + webhook.dmLogs.token = process.env.WEBHOOK_TOKEN; + + webhook.voiceLogs.id = process.env.WEBHOOK_ID; + webhook.voiceLogs.token = process.env.WEBHOOK_TOKEN; + + webhook.serverLogs.id = process.env.WEBHOOK_ID; + webhook.serverLogs.token = process.env.WEBHOOK_TOKEN; + + webhook.serverLogs2.id = process.env.WEBHOOK_ID; + webhook.serverLogs2.token = process.env.WEBHOOK_TOKEN; + + webhook.commandLogs.id = process.env.WEBHOOK_ID; + webhook.commandLogs.token = process.env.WEBHOOK_TOKEN; + + webhook.consoleLogs.id = process.env.WEBHOOK_ID; + webhook.consoleLogs.token = process.env.WEBHOOK_TOKEN; + + webhook.warnLogs.id = process.env.WEBHOOK_ID; + webhook.warnLogs.token = process.env.WEBHOOK_TOKEN; + + webhook.voiceErrorLogs.id = process.env.WEBHOOK_ID; + webhook.voiceErrorLogs.token = process.env.WEBHOOK_TOKEN; + + webhook.creditLogs.id = process.env.WEBHOOK_ID; + webhook.creditLogs.token = process.env.WEBHOOK_TOKEN; + + webhook.evalLogs.id = process.env.WEBHOOK_ID; + webhook.evalLogs.token = process.env.WEBHOOK_TOKEN; + + webhook.interactionLogs.id = process.env.WEBHOOK_ID; + webhook.interactionLogs.token = process.env.WEBHOOK_TOKEN; +} + const startLogs = new Discord.WebhookClient({ id: webhook.startLogs.id, @@ -16,13 +72,13 @@ const shardLogs = new Discord.WebhookClient({ }); const manager = new Discord.ShardingManager('./src/bot.js', { - totalShards: 2, + totalShards: 'auto', token: process.env.DISCORD_TOKEN, respawn: true }); if (process.env.TOPGG_TOKEN) { const { AutoPoster } = require('topgg-autoposter'); - const poster = AutoPoster(process.env.TOPGG_TOKEN, manager); + AutoPoster(process.env.TOPGG_TOKEN, manager); } console.clear(); console.log(chalk.blue(chalk.bold(`System`)), (chalk.white(`>>`)), (chalk.green(`Starting up`)), (chalk.white(`...`))) @@ -35,11 +91,21 @@ console.log(chalk.blue(chalk.bold(`System`)), (chalk.white(`>>`)), chalk.red(`Ve console.log(`\u001b[0m`); manager.on('shardCreate', shard => { - let embed = new Discord.MessageEmbed() + let embed = new Discord.EmbedBuilder() .setTitle(`🆙・Launching shard`) .setDescription(`A shard has just been launched`) - .addField("🆔┆ID", `${shard.id + 1}/${manager.totalShards}`, true) - .addField(`📃┆State`, `Starting up...`, true) + .setFields([ + { + name: "🆔┆ID", + value: `${shard.id + 1}/${manager.totalShards}`, + inline: true + }, + { + name: `📃┆State`, + value: `Starting up...`, + inline: true + } + ]) .setColor(config.colors.normal) startLogs.send({ username: 'Bot Logs', @@ -50,10 +116,14 @@ manager.on('shardCreate', shard => { console.log(`\u001b[0m`); shard.on("death", (process) => { - const embed = new Discord.MessageEmbed() + const embed = new Discord.EmbedBuilder() .setTitle(`🚨・Closing shard ${shard.id + 1}/${manager.totalShards} unexpectedly`) - .addField("PID", `\`${process.pid}\``) - .addField("Exit code", `\`${process.exitCode}\``) + .setFields([ + { + name: "🆔┆ID", + value: `${shard.id + 1}/${manager.totalShards}`, + }, + ]) .setColor(config.colors.normal) shardLogs.send({ username: 'Bot Logs', @@ -61,10 +131,18 @@ manager.on('shardCreate', shard => { }); if (process.exitCode === null) { - const embed = new Discord.MessageEmbed() + const embed = new Discord.EmbedBuilder() .setTitle(`🚨・Shard ${shard.id + 1}/${manager.totalShards} exited with NULL error code!`) - .addField("PID", `\`${process.pid}\``) - .addField("Exit code", `\`${process.exitCode}\``) + .setFields([ + { + name: "PID", + value: `\`${process.pid}\``, + }, + { + name: "Exit code", + value: `\`${process.exitCode}\``, + } + ]) .setColor(config.colors.normal) shardLogs.send({ username: 'Bot Logs', @@ -74,7 +152,7 @@ manager.on('shardCreate', shard => { }); shard.on("shardDisconnect", (event) => { - const embed = new Discord.MessageEmbed() + const embed = new Discord.EmbedBuilder() .setTitle(`🚨・Shard ${shard.id + 1}/${manager.totalShards} disconnected`) .setDescription("Dumping socket close event...") .setColor(config.colors.normal) @@ -85,7 +163,7 @@ manager.on('shardCreate', shard => { }); shard.on("shardReconnecting", () => { - const embed = new Discord.MessageEmbed() + const embed = new Discord.EmbedBuilder() .setTitle(`🚨・Reconnecting shard ${shard.id + 1}/${manager.totalShards}`) .setColor(config.colors.normal) shardLogs.send({ diff --git a/src/interactions/Command/activities.js b/src/interactions/Command/activities.js index a31dac1..a4a1ad2 100644 --- a/src/interactions/Command/activities.js +++ b/src/interactions/Command/activities.js @@ -1,5 +1,5 @@ const { CommandInteraction, Client } = require('discord.js'); -const { SlashCommandBuilder } = require('@discordjs/builders'); +const { SlashCommandBuilder } = require('discord.js'); const Discord = require('discord.js'); module.exports = { @@ -10,19 +10,20 @@ module.exports = { option.setName('activity') .setDescription('The activity that you want') .setRequired(true) - .addChoice('Betrayal.io', 'betrayal') - .addChoice('Checkers in the Park', 'checkers') - .addChoice('Chess in the Park', 'chess') - .addChoice('Doodle Crew', 'doodlecrew') - .addChoice('Fishington.io', 'fishington') - .addChoice('Letter League', 'letterleague') - .addChoice('Ocho', 'ocho') - .addChoice('Watch Together', 'watchtogether') - .addChoice('Poker Night', 'poker') - .addChoice('Sketch Heads', 'sketchheads') - .addChoice('Spell Cast', 'spellcast') - .addChoice('Word Snacks', 'wordsnacks') - .addChoice('Watch Together', 'watchtogether') + .addChoices( + { name: 'Betrayal.io', value: 'betrayal' }, + { name: 'Checkers in the Park', value: 'checkers' }, + { name: 'Chess in the Park', value: 'chess' }, + { name: 'Doodle Crew', value: 'doodlecrew' }, + { name: 'Fishington.io', value: 'fishington' }, + { name: 'Letter League', value: 'letterleague' }, + { name: 'Ocho', value: 'ocho' }, + { name: 'Poker Night', value: 'poker' }, + { name: 'Sketch Heads', value: 'sketchheads' }, + { name: 'Spell Cast', value: 'spellcast' }, + { name: 'Word Snacks', value: 'wordsnacks' }, + { name: 'Watch Together', value: 'watchtogether' } + ) ) , diff --git a/src/interactions/Command/afk.js b/src/interactions/Command/afk.js index 08239f1..e268c99 100644 --- a/src/interactions/Command/afk.js +++ b/src/interactions/Command/afk.js @@ -1,5 +1,5 @@ const { CommandInteraction, Client } = require('discord.js'); -const { SlashCommandBuilder } = require('@discordjs/builders'); +const { SlashCommandBuilder } = require('discord.js'); const Discord = require('discord.js'); const Schema = require("../../database/models/music"); diff --git a/src/interactions/Command/announcement.js b/src/interactions/Command/announcement.js index f23f26f..437466a 100644 --- a/src/interactions/Command/announcement.js +++ b/src/interactions/Command/announcement.js @@ -1,6 +1,5 @@ const { CommandInteraction, Client } = require('discord.js'); -const { SlashCommandBuilder } = require('@discordjs/builders'); -const { ChannelType } = require('discord-api-types/v9'); +const { SlashCommandBuilder, ChannelType } = require('discord.js'); const Discord = require('discord.js'); module.exports = { @@ -16,7 +15,7 @@ module.exports = { subcommand .setName('create') .setDescription('Make an announcement') - .addChannelOption(option => option.setName('channel').setDescription('Select a channel').setRequired(true).addChannelType(ChannelType.GuildText).addChannelType(ChannelType.GuildNews)) + .addChannelOption(option => option.setName('channel').setDescription('Select a channel').setRequired(true).addChannelTypes(ChannelType.GuildText).addChannelTypes(ChannelType.GuildNews)) .addStringOption(option => option.setName('message').setDescription('Your announcement message').setRequired(true)), ) .addSubcommand(subcommand => @@ -36,8 +35,8 @@ module.exports = { run: async (client, interaction, args) => { const perms = await client.checkUserPerms({ - flags: [Discord.Permissions.FLAGS.MANAGE_MESSAGES], - perms: ["MANAGE_MESSAGES"] + flags: [Discord.PermissionsBitField.Flags.ManageMessages], + perms: [Discord.PermissionsBitField.Flags.ManageMessages] }, interaction) if (perms == false) return; diff --git a/src/interactions/Command/automod.js b/src/interactions/Command/automod.js index dddf047..5892539 100644 --- a/src/interactions/Command/automod.js +++ b/src/interactions/Command/automod.js @@ -1,6 +1,6 @@ const { CommandInteraction, Client } = require('discord.js'); -const { SlashCommandBuilder } = require('@discordjs/builders'); -const { ChannelType } = require('discord-api-types/v9'); +const { SlashCommandBuilder } = require('discord.js'); +const { ChannelType } = require('discord.js'); const Discord = require('discord.js'); module.exports = { @@ -38,10 +38,12 @@ module.exports = { option.setName('type') .setDescription('What do you want to do with the channel?') .setRequired(true) - .addChoice('Add', 'add') - .addChoice('Remove', 'remove') + .addChoices( + { name: 'Add', value: 'add' }, + { name: 'Remove', value: 'remove' } + ) ) - .addChannelOption(option => option.setName('channel').setDescription('Select a channel').setRequired(true).addChannelType(ChannelType.GuildText)) + .addChannelOption(option => option.setName('channel').setDescription('Select a channel').setRequired(true).addChannelTypes(ChannelType.GuildText)) ) .addSubcommandGroup(group => group @@ -75,8 +77,8 @@ module.exports = { run: async (client, interaction, args) => { const perms = await client.checkUserPerms({ - flags: [Discord.Permissions.FLAGS.MANAGE_MESSAGES], - perms: ["MANAGE_MESSAGES"] + flags: [Discord.PermissionsBitField.Flags.ManageMessages], + perms: [Discord.PermissionsBitField.Flags.ManageMessages] }, interaction) if (perms == false) return; diff --git a/src/interactions/Command/autosetup.js b/src/interactions/Command/autosetup.js index 70bf562..a57d443 100644 --- a/src/interactions/Command/autosetup.js +++ b/src/interactions/Command/autosetup.js @@ -1,5 +1,5 @@ const { CommandInteraction, Client } = require('discord.js'); -const { SlashCommandBuilder } = require('@discordjs/builders'); +const { SlashCommandBuilder } = require('discord.js'); const Discord = require('discord.js'); module.exports = { @@ -19,9 +19,11 @@ module.exports = { option.setName('setup') .setDescription('The setup that you want') .setRequired(true) - .addChoice('Server logs', 'serverLogs') - .addChoice('Level logs', 'levelLogs') - .addChoice('Boost logs', 'boostLogs') + .addChoices( + { name: 'Server logs', value: 'serverLogs' }, + { name: 'Level logs', value: 'levelLogs' }, + { name: 'Boost logs', value: 'boostLogs' } + ) ) ) .addSubcommand(subcommand => @@ -32,11 +34,13 @@ module.exports = { option.setName('setup') .setDescription('The setup that you want') .setRequired(true) - .addChoice('Birthdays', 'birthdays') - .addChoice('Chatbot', 'chatbot') - .addChoice('Reviews', 'reviews') - .addChoice('Suggestions', 'suggestions') - .addChoice('Starboard', 'starboard') + .addChoices( + { name: 'Birthdays', value: 'birthdays' }, + { name: 'Chatbot', value: 'chatbot' }, + { name: 'Reviews', value: 'reviews' }, + { name: 'Suggestions', value: 'suggestions' }, + { name: 'Starboard', value: 'starboard' } + ) ) ) .addSubcommand(subcommand => @@ -47,10 +51,12 @@ module.exports = { option.setName('setup') .setDescription('The setup that you want') .setRequired(true) - .addChoice('Counting', 'counting') - .addChoice('Guess the number', 'gtn') - .addChoice('Guess the word', 'gtw') - .addChoice('Word snake', 'wordsnake') + .addChoices( + { name: 'Counting', value: 'counting' }, + { name: 'Guess the number', value: 'gtn' }, + { name: 'Guess the word', value: 'gtw' }, + { name: 'Word snake', value: 'wordsnake' } + ) ) ) .addSubcommand(subcommand => @@ -61,9 +67,11 @@ module.exports = { option.setName('setup') .setDescription('The setup that you want') .setRequired(true) - .addChoice('Welcome channel', 'welcomechannel') - .addChoice('Welcome role', 'welcomerole') - .addChoice('Leave channnel', 'leavechannel') + .addChoices( + { name: 'Welcome channel', value: 'welcomechannel' }, + { name: 'Welcome role', value: 'welcomerole' }, + { name: 'Leave channnel', value: 'leavechannel' } + ) ) ) .addSubcommand(subcommand => @@ -86,8 +94,8 @@ module.exports = { run: async (client, interaction, args) => { const perms = await client.checkUserPerms({ - flags: [Discord.Permissions.FLAGS.ADMINISTRATOR], - perms: ["ADMINISTRATOR"] + flags: [Discord.PermissionsBitField.Flags.Administrator], + perms: [Discord.PermissionsBitField.Flags.Administrator] }, interaction) if (perms == false) return; diff --git a/src/interactions/Command/birthdays.js b/src/interactions/Command/birthdays.js index 349fe26..d18136a 100644 --- a/src/interactions/Command/birthdays.js +++ b/src/interactions/Command/birthdays.js @@ -1,5 +1,5 @@ const { CommandInteraction, Client } = require('discord.js'); -const { SlashCommandBuilder } = require('@discordjs/builders'); +const { SlashCommandBuilder } = require('discord.js'); const Discord = require('discord.js'); module.exports = { diff --git a/src/interactions/Command/bot.js b/src/interactions/Command/bot.js index 3ac901d..f675a4b 100644 --- a/src/interactions/Command/bot.js +++ b/src/interactions/Command/bot.js @@ -1,5 +1,5 @@ const { CommandInteraction, Client } = require('discord.js'); -const { SlashCommandBuilder } = require('@discordjs/builders'); +const { SlashCommandBuilder } = require('discord.js'); const Discord = require('discord.js'); module.exports = { diff --git a/src/interactions/Command/casino.js b/src/interactions/Command/casino.js index 05099f7..bd83400 100644 --- a/src/interactions/Command/casino.js +++ b/src/interactions/Command/casino.js @@ -1,5 +1,5 @@ const { CommandInteraction, Client } = require('discord.js'); -const { SlashCommandBuilder } = require('@discordjs/builders'); +const { SlashCommandBuilder } = require('discord.js'); const Discord = require('discord.js'); module.exports = { diff --git a/src/interactions/Command/commands.js b/src/interactions/Command/commands.js index fa62926..d368be3 100644 --- a/src/interactions/Command/commands.js +++ b/src/interactions/Command/commands.js @@ -1,5 +1,5 @@ const { CommandInteraction, Client } = require('discord.js'); -const { SlashCommandBuilder } = require('@discordjs/builders'); +const { SlashCommandBuilder } = require('discord.js'); const Discord = require('discord.js'); const Schema = require("../../database/models/music"); @@ -36,8 +36,8 @@ module.exports = { run: async (client, interaction, args) => { const perms = await client.checkUserPerms({ - flags: [Discord.Permissions.FLAGS.MANAGE_MESSAGES], - perms: ["MANAGE_MESSAGES"] + flags: [Discord.PermissionsBitField.Flags.ManageMessages], + perms: [Discord.PermissionsBitField.Flags.ManageMessages] }, interaction) if (perms == false) return; diff --git a/src/interactions/Command/config.js b/src/interactions/Command/config.js index 105f2db..310d5f5 100644 --- a/src/interactions/Command/config.js +++ b/src/interactions/Command/config.js @@ -1,6 +1,6 @@ const { CommandInteraction, Client } = require('discord.js'); -const { SlashCommandBuilder } = require('@discordjs/builders'); -const { ChannelType } = require('discord-api-types/v9'); +const { SlashCommandBuilder } = require('discord.js'); +const { ChannelType } = require('discord.js'); const Discord = require('discord.js'); module.exports = { @@ -29,7 +29,7 @@ module.exports = { .setName('setverify') .setDescription('Setup the verify panel') .addBooleanOption(option => option.setName('enable').setDescription('Select a boolean').setRequired(true)) - .addChannelOption(option => option.setName('channel').setDescription('Select a channel').setRequired(true).addChannelType(ChannelType.GuildText)) + .addChannelOption(option => option.setName('channel').setDescription('Select a channel').setRequired(true).addChannelTypes(ChannelType.GuildText)) .addRoleOption(option => option.setName('role').setDescription('Select a role').setRequired(true)) ) .addSubcommand(subcommand => @@ -64,8 +64,10 @@ module.exports = { option.setName('type') .setDescription('Ticket message type') .setRequired(true) - .addChoice('open', 'open') - .addChoice('closeDM', 'close') + .addChoices( + { name: 'open', value: 'open' }, + { name: 'closeDM', value: 'close' } + ) ) .addStringOption(option => option.setName("message").setDescription("Enter a message for the ticket").setRequired(true)) ) diff --git a/src/interactions/Command/developers.js b/src/interactions/Command/developers.js index a3e2d9f..b1a75b8 100644 --- a/src/interactions/Command/developers.js +++ b/src/interactions/Command/developers.js @@ -1,5 +1,5 @@ const { CommandInteraction, Client } = require('discord.js'); -const { SlashCommandBuilder } = require('@discordjs/builders'); +const { SlashCommandBuilder } = require('discord.js'); const Discord = require('discord.js'); const model = require('../../database/models/badge'); @@ -42,8 +42,10 @@ module.exports = { option.setName('type') .setDescription('The type of credits') .setRequired(true) - .addChoice('Add', 'add') - .addChoice('Remove', 'remove') + .addChoices( + { name: 'Add', value: 'add' }, + { name: 'Remove', value: 'remove' } + ) ) .addUserOption(option => option.setName('user').setDescription('Select a user').setRequired(true)) .addNumberOption(option => option.setName('amount').setDescription('Amount of credits').setRequired(true)) @@ -56,13 +58,15 @@ module.exports = { option.setName('message') .setDescription('Select a message') .setRequired(true) - .addChoice('Information', 'information') - .addChoice('Rules', 'rules') - .addChoice('Applications', 'applications') - .addChoice('Booster perks', 'boosterperks') - .addChoice('Links', 'links') - .addChoice('Rewards', 'rewards') - .addChoice('Our bots', 'ourbots') + .addChoices( + { name: 'Information', value: 'information' }, + { name: 'Rules', value: 'rules' }, + { name: 'Applications', value: 'applications' }, + { name: 'Booster perks', value: 'boosterperks' }, + { name: 'Links', value: 'links' }, + { name: 'Rewards', value: 'rewards' }, + { name: 'Our bots', value: 'ourbots' } + ) ) ) .addSubcommand(subcommand => @@ -78,8 +82,10 @@ module.exports = { option.setName('type') .setDescription('The type of whitelist') .setRequired(true) - .addChoice('Add', 'add') - .addChoice('Remove', 'remove') + .addChoices( + { name: 'Add', value: 'add' }, + { name: 'Remove', value: 'remove' } + ) ) .addStringOption(option => option.setName('guild').setDescription('The ID of a guild').setRequired(true)) ) @@ -95,8 +101,8 @@ module.exports = { model.findOne({ User: interaction.user.id }, async (err, data) => { if (data && data.FLAGS.includes("DEVELOPER")) { client.loadSubcommands(client, interaction, args); - } - else { + } else { + console.log(`[ERROR] >> Only Bot developers are allowed to do this`); client.errNormal({ error: "Only Bot developers are allowed to do this", type: 'reply' diff --git a/src/interactions/Command/economy.js b/src/interactions/Command/economy.js index 6e7f527..f35c6e3 100644 --- a/src/interactions/Command/economy.js +++ b/src/interactions/Command/economy.js @@ -1,5 +1,5 @@ const { CommandInteraction, Client } = require('discord.js'); -const { SlashCommandBuilder } = require('@discordjs/builders'); +const { SlashCommandBuilder } = require('discord.js'); const Discord = require('discord.js'); module.exports = { @@ -149,8 +149,10 @@ module.exports = { option.setName('type') .setDescription('The leaderboard type that you want') .setRequired(true) - .addChoice('Money', 'money') - .addChoice('Bank', 'bank') + .addChoices( + {name: 'Money', value: 'money'}, + {name: 'Bank', value: 'bank'} + ) ) ) , diff --git a/src/interactions/Command/embed.js b/src/interactions/Command/embed.js index 9f55cc5..c8da0a7 100644 --- a/src/interactions/Command/embed.js +++ b/src/interactions/Command/embed.js @@ -1,6 +1,6 @@ const { CommandInteraction, Client } = require("discord.js"); -const { SlashCommandBuilder } = require("@discordjs/builders"); -const { ChannelType } = require("discord-api-types/v9"); +const { SlashCommandBuilder } = require("discord.js"); +const { ChannelType } = require("discord.js"); const Discord = require("discord.js"); module.exports = { @@ -12,7 +12,7 @@ module.exports = { .setName("channel") .setDescription("Channel where the embed should be") .setRequired(true) - .addChannelType(ChannelType.GuildText) + .addChannelTypes(ChannelType.GuildText) ), /** * @param {Client} client @@ -23,16 +23,16 @@ module.exports = { run: async (client, interaction, args) => { const perms = await client.checkPerms( { - flags: [Discord.Permissions.FLAGS.MANAGE_MESSAGES], - perms: ["MANAGE_MESSAGES"], + flags: [Discord.PermissionsBitField.Flags.ManageMessages], + perms: [Discord.PermissionsBitField.Flags.ManageMessages], }, interaction ); if (perms == false) return; - let row = new Discord.MessageActionRow().addComponents( - new Discord.MessageSelectMenu() + let row = new Discord.ActionRowBuilder().addComponents( + new Discord.StringSelectMenuBuilder() .setCustomId("embedSelect") .setPlaceholder("Nothing selected") .addOptions([ @@ -93,15 +93,15 @@ module.exports = { ]) ); - let row2 = new Discord.MessageActionRow().addComponents( - new Discord.MessageButton() + let row2 = new Discord.ActionRowBuilder().addComponents( + new Discord.ButtonBuilder() .setCustomId("send_embed") .setEmoji("✅") .setLabel("Send embed") - .setStyle("SUCCESS") + .setStyle(Discord.ButtonStyle.Success) ); - let embed = new Discord.MessageEmbed().setDescription( + let embed = new Discord.EmbedBuilder().setDescription( `Please select some options` ); diff --git a/src/interactions/Command/family.js b/src/interactions/Command/family.js index b19ed78..3ed6e42 100644 --- a/src/interactions/Command/family.js +++ b/src/interactions/Command/family.js @@ -1,5 +1,5 @@ const { CommandInteraction, Client } = require('discord.js'); -const { SlashCommandBuilder } = require('@discordjs/builders'); +const { SlashCommandBuilder } = require('discord.js'); const Discord = require('discord.js'); const Schema = require("../../database/models/music"); diff --git a/src/interactions/Command/fun.js b/src/interactions/Command/fun.js index 5b178d6..b630d33 100644 --- a/src/interactions/Command/fun.js +++ b/src/interactions/Command/fun.js @@ -1,5 +1,5 @@ const { CommandInteraction, Client } = require('discord.js'); -const { SlashCommandBuilder } = require('@discordjs/builders'); +const { SlashCommandBuilder } = require('discord.js'); const Discord = require('discord.js'); module.exports = { diff --git a/src/interactions/Command/games.js b/src/interactions/Command/games.js index fcd87ca..eafd8bf 100644 --- a/src/interactions/Command/games.js +++ b/src/interactions/Command/games.js @@ -1,5 +1,5 @@ const { CommandInteraction, Client } = require('discord.js'); -const { SlashCommandBuilder } = require('@discordjs/builders'); +const { SlashCommandBuilder } = require('discord.js'); const Discord = require('discord.js'); module.exports = { @@ -41,9 +41,11 @@ module.exports = { option.setName('option') .setDescription('Choose what you want') .setRequired(true) - .addChoice('🪨 Rock', 'rock') - .addChoice('📃 Paper', 'paper') - .addChoice('✂️ Scissors', 'scissors') + .addChoices( + { name: '🪨 Rock', value: 'rock' }, + { name: '📃 Paper', value: 'paper' }, + { name: '✂️ Scissors', value: 'scissors' } + ) ) ) .addSubcommand(subcommand => diff --git a/src/interactions/Command/giveaway.js b/src/interactions/Command/giveaway.js index 9710101..b8e5952 100644 --- a/src/interactions/Command/giveaway.js +++ b/src/interactions/Command/giveaway.js @@ -1,6 +1,6 @@ const { CommandInteraction, Client } = require('discord.js'); -const { SlashCommandBuilder } = require('@discordjs/builders'); -const { ChannelType } = require('discord-api-types/v9'); +const { SlashCommandBuilder } = require('discord.js'); +const { ChannelType } = require('discord.js'); const Discord = require('discord.js'); const ms = require('ms'); @@ -17,7 +17,7 @@ module.exports = { subcommand .setName('start') .setDescription('Start a giveaway') - .addChannelOption(option => option.setName('channel').setDescription('Channel where the giveaway should be').setRequired(true).addChannelType(ChannelType.GuildText)) + .addChannelOption(option => option.setName('channel').setDescription('Channel where the giveaway should be').setRequired(true).addChannelTypes(ChannelType.GuildText)) .addStringOption(option => option.setName('duration').setDescription('Duration of the giveaway').setRequired(true)) .addNumberOption(option => option.setName('winners').setDescription('The number of giveaway winners').setRequired(true)) .addStringOption(option => option.setName('prize').setDescription('The giveaway prize').setRequired(true)), @@ -26,7 +26,7 @@ module.exports = { subcommand .setName('drop') .setDescription('Start a drop giveaway') - .addChannelOption(option => option.setName('channel').setDescription('Channel where the giveaway should be').setRequired(true).addChannelType(ChannelType.GuildText)) + .addChannelOption(option => option.setName('channel').setDescription('Channel where the giveaway should be').setRequired(true).addChannelTypes(ChannelType.GuildText)) .addStringOption(option => option.setName('duration').setDescription('Duration of the giveaway').setRequired(true)) .addNumberOption(option => option.setName('winners').setDescription('The number of giveaway winners').setRequired(true)) .addStringOption(option => option.setName('prize').setDescription('The giveaway prize').setRequired(true)), @@ -76,8 +76,8 @@ module.exports = { run: async (client, interaction, args) => { const perms = await client.checkUserPerms({ - flags: [Discord.Permissions.FLAGS.MANAGE_MESSAGES], - perms: ["MANAGE_MESSAGES"] + flags: [Discord.PermissionsBitField.Flags.ManageMessages], + perms: [Discord.PermissionsBitField.Flags.ManageMessages] }, interaction) if (perms == false) return; diff --git a/src/interactions/Command/guild.js b/src/interactions/Command/guild.js index 34db531..00fd547 100644 --- a/src/interactions/Command/guild.js +++ b/src/interactions/Command/guild.js @@ -1,5 +1,5 @@ const { CommandInteraction, Client } = require('discord.js'); -const { SlashCommandBuilder } = require('@discordjs/builders'); +const { SlashCommandBuilder } = require('discord.js'); const Discord = require('discord.js'); module.exports = { @@ -43,6 +43,7 @@ module.exports = { .setName('stealemoji') .setDescription('Steal an emoji') .addStringOption(option => option.setName('emoji').setDescription('Enter an emoji to steal').setRequired(true)) + .addRoleOption(option => option.setName('role').setDescription('Select a role').setRequired(false)) ) .addSubcommand(subcommand => subcommand diff --git a/src/interactions/Command/help.js b/src/interactions/Command/help.js index dd73ec3..3ea6bf3 100644 --- a/src/interactions/Command/help.js +++ b/src/interactions/Command/help.js @@ -1,5 +1,5 @@ const { CommandInteraction, Client } = require('discord.js'); -const { SlashCommandBuilder } = require('@discordjs/builders'); +const { SlashCommandBuilder } = require('discord.js'); const Discord = require('discord.js'); const moment = require("moment"); require("moment-duration-format"); @@ -16,9 +16,9 @@ module.exports = { */ run: async (client, interaction, args) => { - const row = new Discord.MessageActionRow() + const row = new Discord.ActionRowBuilder() .addComponents( - new Discord.MessageSelectMenu() + new Discord.StringSelectMenuBuilder() .setCustomId('Bot-helppanel') .setPlaceholder('❌┆Nothing selected') .addOptions([ diff --git a/src/interactions/Command/images.js b/src/interactions/Command/images.js index 46f9ee9..3c3c5d1 100644 --- a/src/interactions/Command/images.js +++ b/src/interactions/Command/images.js @@ -1,6 +1,6 @@ const { CommandInteraction, Client } = require('discord.js'); -const { SlashCommandBuilder } = require('@discordjs/builders'); -const { ChannelType } = require('discord-api-types/v9'); +const { SlashCommandBuilder } = require('discord.js'); +const { ChannelType } = require('discord.js'); module.exports = { @@ -256,7 +256,7 @@ module.exports = { ) .addSubcommand((subcommand) => subcommand.setName('image').setDescription('Show a image in an embed') - .addChannelOption(option => option.setName('channel').setDescription('Channel where the embed should be').setRequired(true).addChannelType(ChannelType.GuildText)) + .addChannelOption(option => option.setName('channel').setDescription('Channel where the embed should be').setRequired(true).addChannelTypes(ChannelType.GuildText)) .addStringOption(option => option.setName('image-url').setDescription('Enter a image url').setRequired(true)) ) .addSubcommand((subcommand) => diff --git a/src/interactions/Command/invite.js b/src/interactions/Command/invite.js index 739e98b..c3ef190 100644 --- a/src/interactions/Command/invite.js +++ b/src/interactions/Command/invite.js @@ -1,5 +1,5 @@ const { CommandInteraction, Client } = require('discord.js'); -const { SlashCommandBuilder } = require('@discordjs/builders'); +const { SlashCommandBuilder } = require('discord.js'); const Discord = require('discord.js'); module.exports = { @@ -14,17 +14,17 @@ module.exports = { */ run: async (client, interaction, args) => { - let row = new Discord.MessageActionRow() + let row = new Discord.ActionRowBuilder() .addComponents( - new Discord.MessageButton() + new Discord.ButtonBuilder() .setLabel("Invite") .setURL(client.config.discord.botInvite) - .setStyle("LINK"), + .setStyle(Discord.ButtonStyle.Link), - new Discord.MessageButton() + new Discord.ButtonBuilder() .setLabel("Support server") .setURL(client.config.discord.serverInvite) - .setStyle("LINK"), + .setStyle(Discord.ButtonStyle.Link), ); client.embed({ diff --git a/src/interactions/Command/invites.js b/src/interactions/Command/invites.js index 60513db..97c106c 100644 --- a/src/interactions/Command/invites.js +++ b/src/interactions/Command/invites.js @@ -1,5 +1,5 @@ const { CommandInteraction, Client } = require('discord.js'); -const { SlashCommandBuilder } = require('@discordjs/builders'); +const { SlashCommandBuilder } = require('discord.js'); const Discord = require('discord.js'); module.exports = { diff --git a/src/interactions/Command/levels.js b/src/interactions/Command/levels.js index 11daa5c..92302e4 100644 --- a/src/interactions/Command/levels.js +++ b/src/interactions/Command/levels.js @@ -1,5 +1,5 @@ const { CommandInteraction, Client } = require('discord.js'); -const { SlashCommandBuilder } = require('@discordjs/builders'); +const { SlashCommandBuilder } = require('discord.js'); const Discord = require('discord.js'); module.exports = { diff --git a/src/interactions/Command/message.js b/src/interactions/Command/message.js index 8e4582b..008e89f 100644 --- a/src/interactions/Command/message.js +++ b/src/interactions/Command/message.js @@ -1,5 +1,5 @@ const { CommandInteraction, Client } = require('discord.js'); -const { SlashCommandBuilder } = require('@discordjs/builders'); +const { SlashCommandBuilder } = require('discord.js'); const Discord = require('discord.js'); const model = require('../../database/models/badge'); @@ -11,15 +11,17 @@ module.exports = { option.setName('message') .setDescription('Select a message') .setRequired(true) - .addChoice('Information', 'information') - .addChoice('Rules', 'rules') - .addChoice('Applications', 'applications') - .addChoice('Helpdesk', 'helpdesk') - .addChoice('Network', 'network') - .addChoice('Bot-Info', 'botinfo') - .addChoice('Bot-Badges', 'badges') - .addChoice('Bot-Béta', 'beta') - .addChoice('Bot-Credits', 'credits') + .addChoices( + { name: 'Information', value: 'information' }, + { name: 'Rules', value: 'rules' }, + { name: 'Applications', value: 'applications' }, + { name: 'Helpdesk', value: 'helpdesk' }, + { name: 'Network', value: 'network' }, + { name: 'Bot-Info', value: 'botinfo' }, + { name: 'Bot-Badges', value: 'badges' }, + { name: 'Bot-Béta', value: 'beta' }, + { name: 'Bot-Credits', value: 'credits' } + ) ) , diff --git a/src/interactions/Command/messages.js b/src/interactions/Command/messages.js index 42b6742..8043cfa 100644 --- a/src/interactions/Command/messages.js +++ b/src/interactions/Command/messages.js @@ -1,5 +1,5 @@ const { CommandInteraction, Client } = require('discord.js'); -const { SlashCommandBuilder } = require('@discordjs/builders'); +const { SlashCommandBuilder } = require('discord.js'); const Discord = require('discord.js'); module.exports = { diff --git a/src/interactions/Command/moderation.js b/src/interactions/Command/moderation.js index 2b3b014..674441e 100644 --- a/src/interactions/Command/moderation.js +++ b/src/interactions/Command/moderation.js @@ -1,6 +1,6 @@ const { CommandInteraction, Client } = require('discord.js'); -const { SlashCommandBuilder } = require('@discordjs/builders'); -const { ChannelType } = require('discord-api-types/v9'); +const { SlashCommandBuilder } = require('discord.js'); +const { ChannelType } = require('discord.js'); const Discord = require('discord.js'); module.exports = { @@ -48,7 +48,7 @@ module.exports = { subcommand .setName('lock') .setDescription('Lock a channel') - .addChannelOption(option => option.setName('channel').setDescription('Select a channel').addChannelType(ChannelType.GuildText)) + .addChannelOption(option => option.setName('channel').setDescription('Select a channel').addChannelTypes(ChannelType.GuildText)) ) .addSubcommand(subcommand => subcommand @@ -87,7 +87,7 @@ module.exports = { subcommand .setName('unlock') .setDescription('Unlock a channel') - .addChannelOption(option => option.setName('channel').setDescription('Select a channel').addChannelType(ChannelType.GuildText)) + .addChannelOption(option => option.setName('channel').setDescription('Select a channel').addChannelTypes(ChannelType.GuildText)) ) .addSubcommand(subcommand => subcommand diff --git a/src/interactions/Command/music.js b/src/interactions/Command/music.js index 4251e9a..f3fc5aa 100644 --- a/src/interactions/Command/music.js +++ b/src/interactions/Command/music.js @@ -1,5 +1,5 @@ const { CommandInteraction, Client } = require('discord.js'); -const { SlashCommandBuilder } = require('@discordjs/builders'); +const { SlashCommandBuilder } = require('discord.js'); const Discord = require('discord.js'); module.exports = { @@ -19,10 +19,12 @@ module.exports = { option.setName('level') .setDescription('The level of the bassboost') .setRequired(true) - .addChoice('0', '0') - .addChoice('1', '1') - .addChoice('2', '2') - .addChoice('3', '3') + .addChoices( + { name: '0', value: '0' }, + { name: '1', value: '1' }, + { name: '2', value: '2' }, + { name: '3', value: '3' } + ) ) ) .addSubcommand(subcommand => @@ -120,8 +122,8 @@ module.exports = { run: async (client, interaction, args) => { client.checkBotPerms({ - flags: [Discord.Permissions.FLAGS.CONNECT, Discord.Permissions.FLAGS.SPEAK], - perms: ["CONNECT", "SPEAK"] + flags: [Discord.PermissionsBitField.Flags.Connect, Discord.PermissionsBitField.Flags.Speak], + perms: [Discord.PermissionsBitField.Flags.Connect, Discord.PermissionsBitField.Flags.Speak] }, interaction) client.loadSubcommands(client, interaction, args); diff --git a/src/interactions/Command/notepad.js b/src/interactions/Command/notepad.js index 101b930..7426bf8 100644 --- a/src/interactions/Command/notepad.js +++ b/src/interactions/Command/notepad.js @@ -1,5 +1,5 @@ const { CommandInteraction, Client } = require('discord.js'); -const { SlashCommandBuilder } = require('@discordjs/builders'); +const { SlashCommandBuilder } = require('discord.js'); const Discord = require('discord.js'); module.exports = { diff --git a/src/interactions/Command/profile.js b/src/interactions/Command/profile.js index 934a2d0..55fddb2 100644 --- a/src/interactions/Command/profile.js +++ b/src/interactions/Command/profile.js @@ -1,5 +1,5 @@ const { CommandInteraction, Client } = require('discord.js'); -const { SlashCommandBuilder } = require('@discordjs/builders'); +const { SlashCommandBuilder } = require('discord.js'); const Discord = require('discord.js'); const ms = require('ms'); diff --git a/src/interactions/Command/radio.js b/src/interactions/Command/radio.js index ed1e4ba..02b789c 100644 --- a/src/interactions/Command/radio.js +++ b/src/interactions/Command/radio.js @@ -1,5 +1,5 @@ const { CommandInteraction, Client } = require('discord.js'); -const { SlashCommandBuilder } = require('@discordjs/builders'); +const { SlashCommandBuilder } = require('discord.js'); const Discord = require('discord.js'); const Schema = require("../../database/models/music"); @@ -37,8 +37,8 @@ module.exports = { run: async (client, interaction, args) => { client.checkBotPerms({ - flags: [Discord.Permissions.FLAGS.CONNECT, Discord.Permissions.FLAGS.SPEAK], - perms: ["CONNECT", "SPEAK"] + flags: [Discord.PermissionsBitField.Flags.Connect, Discord.PermissionsBitField.Flags.Speak], + perms: [Discord.PermissionsBitField.Flags.Connect, Discord.PermissionsBitField.Flags.Speak] }, interaction) if (!interaction.member.voice.channel) return client.errNormal({ diff --git a/src/interactions/Command/reactionroles.js b/src/interactions/Command/reactionroles.js index d93109b..7aaff52 100644 --- a/src/interactions/Command/reactionroles.js +++ b/src/interactions/Command/reactionroles.js @@ -1,6 +1,6 @@ const { CommandInteraction, Client } = require('discord.js'); -const { SlashCommandBuilder } = require('@discordjs/builders'); -const { ChannelType } = require('discord-api-types/v9'); +const { SlashCommandBuilder } = require('discord.js'); +const { ChannelType } = require('discord.js'); const Discord = require('discord.js'); module.exports = { @@ -36,14 +36,14 @@ module.exports = { .setName('button') .setDescription('Show all reaction roles with buttons') .addStringOption(option => option.setName('category').setDescription('Category name for your reaction roles group').setRequired(true)) - .addChannelOption(option => option.setName('channel').setDescription('Channel where the reaction roles should come').addChannelType(ChannelType.GuildText)) + .addChannelOption(option => option.setName('channel').setDescription('Channel where the reaction roles should come').addChannelTypes(ChannelType.GuildText)) ) .addSubcommand(subcommand => subcommand .setName('menu') .setDescription('Show all reaction roles in a menu') .addStringOption(option => option.setName('category').setDescription('Category name for your reaction roles group').setRequired(true)) - .addChannelOption(option => option.setName('channel').setDescription('Channel where the reaction roles should come').addChannelType(ChannelType.GuildText)) + .addChannelOption(option => option.setName('channel').setDescription('Channel where the reaction roles should come').addChannelTypes(ChannelType.GuildText)) ) , @@ -55,8 +55,8 @@ module.exports = { run: async (client, interaction, args) => { const perms = await client.checkPerms({ - flags: [Discord.Permissions.FLAGS.MANAGE_ROLES], - perms: ["MANAGE_ROLES"] + flags: [Discord.PermissionsBitField.Flags.ManageRoles], + perms: [Discord.PermissionsBitField.Flags.ManageRoles] }, interaction) if (perms == false) return; diff --git a/src/interactions/Command/report.js b/src/interactions/Command/report.js index cf99222..6c3d5a6 100644 --- a/src/interactions/Command/report.js +++ b/src/interactions/Command/report.js @@ -1,5 +1,5 @@ const { CommandInteraction, Client } = require('discord.js'); -const { SlashCommandBuilder } = require('@discordjs/builders'); +const { SlashCommandBuilder } = require('discord.js'); const Discord = require('discord.js'); const webhookClient = new Discord.WebhookClient({ @@ -15,8 +15,10 @@ module.exports = { option.setName('type') .setDescription('The type of your report') .setRequired(true) - .addChoice('Bug', 'bug') - .addChoice('User', 'user') + .addChoices( + { name: 'Bug', value: 'bug' }, + { name: 'User', value: 'user' } + ) ) .addStringOption(option => option.setName('description') @@ -36,10 +38,12 @@ module.exports = { const desc = interaction.options.getString('description'); if (type == "bug") { - const embed = new Discord.MessageEmbed() + const embed = new Discord.EmbedBuilder() .setTitle(`📣・New bug report!`) - .addField("Report category", "Bug", true) - .addField("Submitted by", `${interaction.user.tag}`, true) + .addFields( + { name: "Report category", value: "Bug", inline: true }, + { name: "Submitted by", value: `${interaction.user.tag}`, inline: true }, + ) .setDescription(`${desc}`) .setColor(client.config.colors.normal) webhookClient.send({ @@ -53,10 +57,12 @@ module.exports = { }, interaction); } else if (type == "user") { - const embed = new Discord.MessageEmbed() + const embed = new Discord.EmbedBuilder() .setTitle(`📣・New user report!`) - .addField("Report category", "User", true) - .addField("Submitted by", `${interaction.user.tag}`, true) + .addFields( + { name: "Report category", value: "User", inline: true }, + { name: "Submitted by", value: `${interaction.user.tag}`, inline: true }, + ) .setDescription(`${desc}`) .setColor(client.config.colors.normal) webhookClient.send({ diff --git a/src/interactions/Command/search.js b/src/interactions/Command/search.js index 3f5103c..cc1d949 100644 --- a/src/interactions/Command/search.js +++ b/src/interactions/Command/search.js @@ -1,5 +1,5 @@ const { CommandInteraction, Client } = require('discord.js'); -const { SlashCommandBuilder } = require('@discordjs/builders'); +const { SlashCommandBuilder } = require('discord.js'); const Discord = require('discord.js'); module.exports = { diff --git a/src/interactions/Command/serverstats.js b/src/interactions/Command/serverstats.js index 3dd4fdd..6e9bbb6 100644 --- a/src/interactions/Command/serverstats.js +++ b/src/interactions/Command/serverstats.js @@ -1,5 +1,5 @@ const { CommandInteraction, Client } = require('discord.js'); -const { SlashCommandBuilder } = require('@discordjs/builders'); +const { SlashCommandBuilder } = require('discord.js'); const Discord = require('discord.js'); module.exports = { @@ -96,8 +96,8 @@ module.exports = { run: async (client, interaction, args) => { const perms = await client.checkPerms({ - flags: [Discord.Permissions.FLAGS.MANAGE_CHANNELS], - perms: ["MANAGE_CHANNELS"] + flags: [Discord.PermissionsBitField.Flags.ManageChannels], + perms: [Discord.PermissionsBitField.Flags.ManageChannels] }, interaction) if (perms == false) return; diff --git a/src/interactions/Command/setup.js b/src/interactions/Command/setup.js index 49a1ce2..32d8c3a 100644 --- a/src/interactions/Command/setup.js +++ b/src/interactions/Command/setup.js @@ -1,6 +1,6 @@ const { CommandInteraction, Client } = require('discord.js'); -const { SlashCommandBuilder } = require('@discordjs/builders'); -const { ChannelType } = require('discord-api-types/v9'); +const { SlashCommandBuilder } = require('discord.js'); +const { ChannelType } = require('discord.js'); const Discord = require('discord.js'); module.exports = { @@ -16,16 +16,16 @@ module.exports = { subcommand .setName('tickets') .setDescription('Setup the tickets') - .addChannelOption(option => option.setName('category').setDescription('Select a category where the tickets should come in').setRequired(true).addChannelType(ChannelType.GuildCategory)) + .addChannelOption(option => option.setName('category').setDescription('Select a category where the tickets should come in').setRequired(true).addChannelTypes(ChannelType.GuildCategory)) .addRoleOption(option => option.setName('role').setDescription('Select the support role').setRequired(true)) - .addChannelOption(option => option.setName('channel').setDescription('The channel for the ticket panel').setRequired(true).addChannelType(ChannelType.GuildText)) - .addChannelOption(option => option.setName('logs').setDescription('The channel for the ticket logs').setRequired(true).addChannelType(ChannelType.GuildText)) + .addChannelOption(option => option.setName('channel').setDescription('The channel for the ticket panel').setRequired(true).addChannelTypes(ChannelType.GuildText)) + .addChannelOption(option => option.setName('logs').setDescription('The channel for the ticket logs').setRequired(true).addChannelTypes(ChannelType.GuildText)) ) .addSubcommand(subcommand => subcommand .setName('customvoice') .setDescription('Setup the custom voice channels') - .addChannelOption(option => option.setName('category').setDescription('Select a category where the channels come in').setRequired(true).addChannelType(ChannelType.GuildCategory)) + .addChannelOption(option => option.setName('category').setDescription('Select a category where the channels come in').setRequired(true).addChannelTypes(ChannelType.GuildCategory)) .addStringOption(option => option.setName('channelname').setDescription('The template for the channel names').setRequired(true)) ) .addSubcommand(subcommand => @@ -36,11 +36,13 @@ module.exports = { option.setName('setup') .setDescription('The setup that you want') .setRequired(true) - .addChoice('Server logs', 'serverLogs') - .addChoice('Level logs', 'levelLogs') - .addChoice('Boost logs', 'boostLogs') + .addChoices( + { name: 'Server logs', value: 'serverLogs' }, + { name: 'Level logs', value: 'levelLogs' }, + { name: 'Boost logs', value: 'boostLogs' } + ) ) - .addChannelOption(option => option.setName('channel').setDescription('The channel for the logs').setRequired(true).addChannelType(ChannelType.GuildText)) + .addChannelOption(option => option.setName('channel').setDescription('The channel for the logs').setRequired(true).addChannelTypes(ChannelType.GuildText)) ) .addSubcommand(subcommand => subcommand @@ -50,13 +52,15 @@ module.exports = { option.setName('setup') .setDescription('The setup that you want') .setRequired(true) - .addChoice('Birthdays', 'birthdays') - .addChoice('Chatbot', 'chatbot') - .addChoice('Reviews', 'reviews') - .addChoice('Suggestions', 'suggestions') - .addChoice('Starboard', 'starboard') + .addChoices( + { name: 'Birthdays', value: 'birthdays' }, + { name: 'Chatbot', value: 'chatbot' }, + { name: 'Reviews', value: 'reviews' }, + { name: 'Suggestions', value: 'suggestions' }, + { name: 'Starboard', value: 'starboard' } + ) ) - .addChannelOption(option => option.setName('channel').setDescription('The channel for the fun').setRequired(true).addChannelType(ChannelType.GuildText)) + .addChannelOption(option => option.setName('channel').setDescription('The channel for the fun').setRequired(true).addChannelTypes(ChannelType.GuildText)) ) .addSubcommand(subcommand => subcommand @@ -66,12 +70,14 @@ module.exports = { option.setName('setup') .setDescription('The setup that you want') .setRequired(true) - .addChoice('Counting', 'counting') - .addChoice('Guess the number', 'gtn') - .addChoice('Guess the word', 'gtw') - .addChoice('Word snake', 'wordsnake') + .addChoices( + { name: 'Counting', value: 'counting' }, + { name: 'Guess the number', value: 'gtn' }, + { name: 'Guess the word', value: 'gtw' }, + { name: 'Word snake', value: 'wordsnake' } + ) ) - .addChannelOption(option => option.setName('channel').setDescription('The channel for the game').setRequired(true).addChannelType(ChannelType.GuildText)) + .addChannelOption(option => option.setName('channel').setDescription('The channel for the game').setRequired(true).addChannelTypes(ChannelType.GuildText)) ) .addSubcommand(subcommand => subcommand @@ -81,10 +87,12 @@ module.exports = { option.setName('setup') .setDescription('The setup that you want') .setRequired(true) - .addChoice('Welcome channel', 'welcomechannel') - .addChoice('Leave channnel', 'leavechannel') + .addChoices( + { name: 'Welcome channel', value: 'welcomechannel' }, + { name: 'Leave channnel', value: 'leavechannel' } + ) ) - .addChannelOption(option => option.setName('channel').setDescription('The channel that you want').setRequired(true).addChannelType(ChannelType.GuildText)) + .addChannelOption(option => option.setName('channel').setDescription('The channel that you want').setRequired(true).addChannelTypes(ChannelType.GuildText)) ) .addSubcommand(subcommand => subcommand @@ -107,22 +115,24 @@ module.exports = { option.setName('setup') .setDescription('The setup that you want') .setRequired(true) - .addChoice('Tickets', 'tickets') - .addChoice('Custom voice', 'customvoice') - .addChoice('Server logs', 'serverlogs') - .addChoice('Level logs', 'levellogs') - .addChoice('Boost logs', 'boostlogs') - .addChoice('Birthdays', 'birthdays') - .addChoice('Chatbot', 'chatbot') - .addChoice('Reviews', 'reviews') - .addChoice('Suggestions', 'suggestions') - .addChoice('Counting', 'counting') - .addChoice('Guess the number', 'gtn') - .addChoice('Guess the word', 'gtw') - .addChoice('Welcome channel', 'welcomechannel') - .addChoice('Leave channel', 'leavechannel') - .addChoice('Welcome role', 'welcomerole') - .addChoice('Word snake', 'wordsnake') + .addChoices( + { name: 'Tickets', value: 'tickets' }, + { name: 'Custom voice', value: 'customvoice' }, + { name: 'Server logs', value: 'serverlogs' }, + { name: 'Level logs', value: 'levellogs' }, + { name: 'Boost logs', value: 'boostlogs' }, + { name: 'Birthdays', value: 'birthdays' }, + { name: 'Chatbot', value: 'chatbot' }, + { name: 'Reviews', value: 'reviews' }, + { name: 'Suggestions', value: 'suggestions' }, + { name: 'Counting', value: 'counting' }, + { name: 'Guess the number', value: 'gtn' }, + { name: 'Guess the word', value: 'gtw' }, + { name: 'Welcome channel', value: 'welcomechannel' }, + { name: 'Leave channel', value: 'leavechannel' }, + { name: 'Welcome role', value: 'welcomerole' }, + { name: 'Word snake', value: 'wordsnake' } + ) ) ) , @@ -135,8 +145,8 @@ module.exports = { run: async (client, interaction, args) => { const perms = await client.checkUserPerms({ - flags: [Discord.Permissions.FLAGS.ADMINISTRATOR], - perms: ["ADMINISTRATOR"] + flags: [Discord.PermissionsBitField.Flags.Administrator], + perms: [Discord.PermissionsBitField.Flags.Administrator] }, interaction) if (perms == false) return; diff --git a/src/interactions/Command/soundboard.js b/src/interactions/Command/soundboard.js index f3a1c54..a18355b 100644 --- a/src/interactions/Command/soundboard.js +++ b/src/interactions/Command/soundboard.js @@ -1,5 +1,5 @@ const { CommandInteraction, Client } = require('discord.js'); -const { SlashCommandBuilder } = require('@discordjs/builders'); +const { SlashCommandBuilder } = require('discord.js'); module.exports = { @@ -9,8 +9,13 @@ module.exports = { .setName('soundboard') .setDescription('Play all the sounds in Bot') + .addSubcommand((subcommand) => + subcommand + .setName('help') + .setDescription('Get information about the soundboard category commands') + ) + // Windows Sounds - .addSubcommandGroup((group) => group .setName('windows') diff --git a/src/interactions/Command/stickymessages.js b/src/interactions/Command/stickymessages.js index f77c969..1fe6c30 100644 --- a/src/interactions/Command/stickymessages.js +++ b/src/interactions/Command/stickymessages.js @@ -1,6 +1,6 @@ const { CommandInteraction, Client } = require('discord.js'); -const { SlashCommandBuilder } = require('@discordjs/builders'); -const { ChannelType } = require('discord-api-types/v9'); +const { SlashCommandBuilder } = require('discord.js'); +const { ChannelType } = require('discord.js'); const Discord = require('discord.js'); module.exports = { @@ -16,7 +16,7 @@ module.exports = { subcommand .setName('stick') .setDescription('Stick an message in a channel') - .addChannelOption(option => option.setName('channel').setDescription('Select a channel').setRequired(true).addChannelType(ChannelType.GuildText)) + .addChannelOption(option => option.setName('channel').setDescription('Select a channel').setRequired(true).addChannelTypes(ChannelType.GuildText)) .addStringOption(option => option.setName('message').setDescription('Your sticky messages').setRequired(true)) ) .addSubcommand(subcommand => @@ -28,7 +28,7 @@ module.exports = { subcommand .setName('unstick') .setDescription('Unstick an message in a channel') - .addChannelOption(option => option.setName('channel').setDescription('Select a channel').setRequired(true).addChannelType(ChannelType.GuildText)) + .addChannelOption(option => option.setName('channel').setDescription('Select a channel').setRequired(true).addChannelTypes(ChannelType.GuildText)) ) , @@ -40,8 +40,8 @@ module.exports = { run: async (client, interaction, args) => { const perms = await client.checkUserPerms({ - flags: [Discord.Permissions.FLAGS.MANAGE_MESSAGES], - perms: ["MANAGE_MESSAGES"] + flags: [Discord.PermissionsBitField.Flags.ManageMessages], + perms: [Discord.PermissionsBitField.Flags.ManageMessages] }, interaction) if (perms == false) return; diff --git a/src/interactions/Command/suggestions.js b/src/interactions/Command/suggestions.js index 997c62d..190ed7e 100644 --- a/src/interactions/Command/suggestions.js +++ b/src/interactions/Command/suggestions.js @@ -1,5 +1,5 @@ const { CommandInteraction, Client } = require('discord.js'); -const { SlashCommandBuilder } = require('@discordjs/builders'); +const { SlashCommandBuilder } = require('discord.js'); const Discord = require('discord.js'); module.exports = { diff --git a/src/interactions/Command/thanks.js b/src/interactions/Command/thanks.js index d2fdbf9..c3eb97a 100644 --- a/src/interactions/Command/thanks.js +++ b/src/interactions/Command/thanks.js @@ -1,5 +1,5 @@ const { CommandInteraction, Client } = require('discord.js'); -const { SlashCommandBuilder } = require('@discordjs/builders'); +const { SlashCommandBuilder } = require('discord.js'); const Discord = require('discord.js'); module.exports = { diff --git a/src/interactions/Command/tickets.js b/src/interactions/Command/tickets.js index d215843..88c206c 100644 --- a/src/interactions/Command/tickets.js +++ b/src/interactions/Command/tickets.js @@ -1,5 +1,5 @@ const { CommandInteraction, Client } = require('discord.js'); -const { SlashCommandBuilder } = require('@discordjs/builders'); +const { SlashCommandBuilder } = require('discord.js'); const Discord = require('discord.js'); const ticketSchema = require("../../database/models/tickets"); diff --git a/src/interactions/Command/tools.js b/src/interactions/Command/tools.js index 8267d16..4978b67 100644 --- a/src/interactions/Command/tools.js +++ b/src/interactions/Command/tools.js @@ -1,5 +1,5 @@ const { CommandInteraction, Client } = require('discord.js'); -const { SlashCommandBuilder } = require('@discordjs/builders'); +const { SlashCommandBuilder } = require('discord.js'); const Discord = require('discord.js'); module.exports = { diff --git a/src/interactions/Command/voice.js b/src/interactions/Command/voice.js index d679df2..ee1032a 100644 --- a/src/interactions/Command/voice.js +++ b/src/interactions/Command/voice.js @@ -1,5 +1,5 @@ const { CommandInteraction, Client } = require('discord.js'); -const { SlashCommandBuilder } = require('@discordjs/builders'); +const { SlashCommandBuilder } = require('discord.js'); const Discord = require('discord.js'); module.exports = { diff --git a/src/interactions/ContextMenu/profile.js b/src/interactions/ContextMenu/profile.js index fe42b86..647d19c 100644 --- a/src/interactions/ContextMenu/profile.js +++ b/src/interactions/ContextMenu/profile.js @@ -1,5 +1,5 @@ const { CommandInteraction, Client } = require('discord.js'); -const { ContextMenuCommandBuilder } = require('@discordjs/builders'); +const { ContextMenuCommandBuilder } = require('discord.js'); const Discord = require('discord.js'); const model = require('../../database/models/badge'); diff --git a/src/interactions/ContextMenu/unwarn.js b/src/interactions/ContextMenu/unwarn.js index ed40004..ad00885 100644 --- a/src/interactions/ContextMenu/unwarn.js +++ b/src/interactions/ContextMenu/unwarn.js @@ -1,5 +1,5 @@ const { CommandInteraction, Client } = require('discord.js'); -const { ContextMenuCommandBuilder } = require('@discordjs/builders'); +const { ContextMenuCommandBuilder } = require('discord.js'); const Discord = require('discord.js'); const Schema = require("../../database/models/warnings"); @@ -17,8 +17,8 @@ module.exports = { run: async (client, interaction, args) => { const perms = await client.checkPerms({ - flags: [Discord.Permissions.FLAGS.MANAGE_MESSAGES], - perms: ["MANAGE_MESSAGES"] + flags: [Discord.PermissionsBitField.Flags.ManageMessages], + perms: [Discord.PermissionsBitField.Flags.ManageMessages] }, interaction) if (perms == false) return; diff --git a/src/interactions/ContextMenu/userinfo.js b/src/interactions/ContextMenu/userinfo.js index 2ae04a6..e148017 100644 --- a/src/interactions/ContextMenu/userinfo.js +++ b/src/interactions/ContextMenu/userinfo.js @@ -1,5 +1,5 @@ const { CommandInteraction, Client } = require('discord.js'); -const { ContextMenuCommandBuilder } = require('@discordjs/builders'); +const { ContextMenuCommandBuilder } = require('discord.js'); const Discord = require('discord.js'); const axios = require("axios"); diff --git a/src/interactions/ContextMenu/warn.js b/src/interactions/ContextMenu/warn.js index 297d3b8..3e9e2b8 100644 --- a/src/interactions/ContextMenu/warn.js +++ b/src/interactions/ContextMenu/warn.js @@ -1,5 +1,5 @@ const { CommandInteraction, Client } = require('discord.js'); -const { ContextMenuCommandBuilder } = require('@discordjs/builders'); +const { ContextMenuCommandBuilder } = require('discord.js'); const Discord = require('discord.js'); const Schema = require("../../database/models/warnings"); @@ -17,8 +17,8 @@ module.exports = { run: async (client, interaction, args) => { const perms = await client.checkPerms({ - flags: [Discord.Permissions.FLAGS.MANAGE_MESSAGES], - perms: ["MANAGE_MESSAGES"] + flags: [Discord.PermissionsBitField.Flags.ManageMessages], + perms: [Discord.PermissionsBitField.Flags.ManageMessages] }, interaction) if (perms == false) return; diff --git a/src/interactions/ContextMenu/warnings.js b/src/interactions/ContextMenu/warnings.js index 32e67b4..6f8e286 100644 --- a/src/interactions/ContextMenu/warnings.js +++ b/src/interactions/ContextMenu/warnings.js @@ -1,5 +1,5 @@ const { CommandInteraction, Client } = require('discord.js'); -const { ContextMenuCommandBuilder } = require('@discordjs/builders'); +const { ContextMenuCommandBuilder } = require('discord.js'); const Discord = require('discord.js'); const Schema = require("../../database/models/warnings"); @@ -17,8 +17,8 @@ module.exports = { run: async (client, interaction, args) => { const perms = await client.checkPerms({ - flags: [Discord.Permissions.FLAGS.MANAGE_MESSAGES], - perms: ["MANAGE_MESSAGES"] + flags: [Discord.PermissionsBitField.Flags.ManageMessages], + perms: [Discord.PermissionsBitField.Flags.ManageMessages] }, interaction) if (perms == false) return;