├── .env.example ├── .gitignore ├── README.md ├── index.ts ├── package.json ├── tsconfig.json ├── utils.ts └── yarn.lock /.env.example: -------------------------------------------------------------------------------- 1 | BOT_TOKEN= 2 | GITHUB_ACCESS_TOKEN= 3 | GUILD_ID= 4 | GITHUB_USERNAME= 5 | GITHUB_REPOSITORY= -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | node_modules/ 2 | .env 3 | 4 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # Discord github issues bot 2 | 3 | ## Create github issues on the go 4 | 5 | ![Apr-27-2022 04-56-27](https://user-images.githubusercontent.com/32592458/165409043-8d7fff7a-79b7-403b-b2c8-cf4cdc8ce65b.gif) 6 | 7 | ## Prerequisites 8 | 9 | 1. Create an account on discord developer portal and add an application 10 | 2. Create a bot 11 | 3. Invite the bot to your server 12 | 13 | ## Installation steps 14 | 15 | 1. Create a new file `.env` in the project root directory and copy the contents from `.env.example`. 16 | 2. Update the `.env` file with relevant configurations. 17 | - BOT_TOKEN: discord bot token that is present in the discord developers section https://www.writebots.com/discord-bot-token/ 18 | - GITHUB_ACCESS_TOKEN: Token used to authenticate with github https://docs.github.com/en/authentication/keeping-your-account-and-data-secure/creating-a-personal-access-token 19 | - GUILD_ID: Right click on the server name. At the last their should be an option for copy ID 20 | Screenshot 2022-05-26 at 9 13 36 AM 21 | 22 | - GITHUB_USERNAME: The repository organization or username. Ex. In this https://github.com/mdshamoon/glific-frontend. the username is `mdshamoon` 23 | - GITHUB_REPOSITORY: the name of the repository. Ex. In this https://github.com/mdshamoon/glific-frontend repo name is `glific-frontend` 24 | 3. Run `yarn install` 25 | 26 | ## Hosting steps 27 | 28 | Host it on a server of your choice by running `yarn start`. I have hosted it on heroku with a free tier but it sleeps after inactivity of 30 minutes. 29 | -------------------------------------------------------------------------------- /index.ts: -------------------------------------------------------------------------------- 1 | import DiscordJS from "discord.js"; 2 | import dotenv from "dotenv"; 3 | import { Octokit } from "@octokit/rest"; 4 | import { getModal } from "./utils"; 5 | import express from "express"; 6 | dotenv.config(); 7 | 8 | const app = express(); 9 | const PORT = process.env.PORT || 3000; 10 | 11 | app.use(express.json()); 12 | 13 | app.get("/", (req, res) => { 14 | res.send("Github issues bot!"); 15 | }); 16 | 17 | app.listen(PORT, () => { 18 | console.log(`Server is listening on port ${PORT}`); 19 | }); 20 | 21 | const client = new DiscordJS.Client({ 22 | intents: ["Guilds", "GuildMessages"], 23 | }); 24 | 25 | client.on("ready", () => { 26 | console.log("issue bot ready"); 27 | const guildId = process.env.GUILD_ID || ""; 28 | 29 | const guild = client.guilds.cache.get(guildId); 30 | 31 | let commands; 32 | 33 | if (guild) { 34 | commands = guild.commands; 35 | } else { 36 | commands = client.application?.commands; 37 | } 38 | 39 | commands?.create({ 40 | name: "Open github issue", 41 | type: 3, 42 | }); 43 | }); 44 | 45 | client.on("interactionCreate", async (interaction) => { 46 | if (interaction.isMessageContextMenuCommand()) { 47 | const { commandName, targetMessage } = interaction; 48 | if (commandName === "Open github issue") { 49 | const modal = getModal(targetMessage.content); 50 | interaction.showModal(modal); 51 | } 52 | } else if (interaction.isModalSubmit()) { 53 | const { fields } = interaction; 54 | const issueTitle = fields.getField("issueTitle").value; 55 | const issueDescription = fields.getField("issueDescription").value; 56 | const octokit = new Octokit({ 57 | auth: process.env.GITHUB_ACCESS_TOKEN, 58 | baseUrl: "https://api.github.com", 59 | }); 60 | 61 | octokit.rest.issues 62 | .create({ 63 | owner: process.env.GITHUB_USERNAME || "", 64 | repo: process.env.GITHUB_REPOSITORY || "", 65 | title: issueTitle, 66 | body: issueDescription, 67 | }) 68 | .then((res) => { 69 | interaction.reply(`Issue created: ${res.data.html_url}`); 70 | }); 71 | } 72 | }); 73 | 74 | client.login(process.env.BOT_TOKEN); 75 | -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "github-issues-bot", 3 | "version": "1.0.0", 4 | "main": "index.js", 5 | "author": "Mohd Shamoon", 6 | "license": "MIT", 7 | "dependencies": { 8 | "@octokit/rest": "^18.12.0", 9 | "@types/express": "^4.17.13", 10 | "discord.js": "14.0.0-dev.1650931749-df64d3e", 11 | "dotenv": "^16.0.0", 12 | "express": "^4.18.0", 13 | "ts-node": "^10.7.0", 14 | "typescript": "^4.6.3" 15 | }, 16 | "scripts": { 17 | "start": "ts-node index.ts" 18 | }, 19 | "engines": { 20 | "node": "16.13.0" 21 | } 22 | } 23 | -------------------------------------------------------------------------------- /tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "compilerOptions": { 3 | /* Visit https://aka.ms/tsconfig.json to read more about this file */ 4 | 5 | /* Projects */ 6 | // "incremental": true, /* Enable incremental compilation */ 7 | // "composite": true, /* Enable constraints that allow a TypeScript project to be used with project references. */ 8 | // "tsBuildInfoFile": "./", /* Specify the folder for .tsbuildinfo incremental compilation files. */ 9 | // "disableSourceOfProjectReferenceRedirect": true, /* Disable preferring source files instead of declaration files when referencing composite projects */ 10 | // "disableSolutionSearching": true, /* Opt a project out of multi-project reference checking when editing. */ 11 | // "disableReferencedProjectLoad": true, /* Reduce the number of projects loaded automatically by TypeScript. */ 12 | 13 | /* Language and Environment */ 14 | "target": "es2016", /* Set the JavaScript language version for emitted JavaScript and include compatible library declarations. */ 15 | // "lib": [], /* Specify a set of bundled library declaration files that describe the target runtime environment. */ 16 | // "jsx": "preserve", /* Specify what JSX code is generated. */ 17 | // "experimentalDecorators": true, /* Enable experimental support for TC39 stage 2 draft decorators. */ 18 | // "emitDecoratorMetadata": true, /* Emit design-type metadata for decorated declarations in source files. */ 19 | // "jsxFactory": "", /* Specify the JSX factory function used when targeting React JSX emit, e.g. 'React.createElement' or 'h' */ 20 | // "jsxFragmentFactory": "", /* Specify the JSX Fragment reference used for fragments when targeting React JSX emit e.g. 'React.Fragment' or 'Fragment'. */ 21 | // "jsxImportSource": "", /* Specify module specifier used to import the JSX factory functions when using `jsx: react-jsx*`.` */ 22 | // "reactNamespace": "", /* Specify the object invoked for `createElement`. This only applies when targeting `react` JSX emit. */ 23 | // "noLib": true, /* Disable including any library files, including the default lib.d.ts. */ 24 | // "useDefineForClassFields": true, /* Emit ECMAScript-standard-compliant class fields. */ 25 | 26 | /* Modules */ 27 | "module": "commonjs", /* Specify what module code is generated. */ 28 | // "rootDir": "./", /* Specify the root folder within your source files. */ 29 | // "moduleResolution": "node", /* Specify how TypeScript looks up a file from a given module specifier. */ 30 | // "baseUrl": "./", /* Specify the base directory to resolve non-relative module names. */ 31 | // "paths": {}, /* Specify a set of entries that re-map imports to additional lookup locations. */ 32 | // "rootDirs": [], /* Allow multiple folders to be treated as one when resolving modules. */ 33 | // "typeRoots": [], /* Specify multiple folders that act like `./node_modules/@types`. */ 34 | // "types": [], /* Specify type package names to be included without being referenced in a source file. */ 35 | // "allowUmdGlobalAccess": true, /* Allow accessing UMD globals from modules. */ 36 | // "resolveJsonModule": true, /* Enable importing .json files */ 37 | // "noResolve": true, /* Disallow `import`s, `require`s or ``s from expanding the number of files TypeScript should add to a project. */ 38 | 39 | /* JavaScript Support */ 40 | // "allowJs": true, /* Allow JavaScript files to be a part of your program. Use the `checkJS` option to get errors from these files. */ 41 | // "checkJs": true, /* Enable error reporting in type-checked JavaScript files. */ 42 | // "maxNodeModuleJsDepth": 1, /* Specify the maximum folder depth used for checking JavaScript files from `node_modules`. Only applicable with `allowJs`. */ 43 | 44 | /* Emit */ 45 | // "declaration": true, /* Generate .d.ts files from TypeScript and JavaScript files in your project. */ 46 | // "declarationMap": true, /* Create sourcemaps for d.ts files. */ 47 | // "emitDeclarationOnly": true, /* Only output d.ts files and not JavaScript files. */ 48 | // "sourceMap": true, /* Create source map files for emitted JavaScript files. */ 49 | // "outFile": "./", /* Specify a file that bundles all outputs into one JavaScript file. If `declaration` is true, also designates a file that bundles all .d.ts output. */ 50 | // "outDir": "./", /* Specify an output folder for all emitted files. */ 51 | // "removeComments": true, /* Disable emitting comments. */ 52 | // "noEmit": true, /* Disable emitting files from a compilation. */ 53 | // "importHelpers": true, /* Allow importing helper functions from tslib once per project, instead of including them per-file. */ 54 | // "importsNotUsedAsValues": "remove", /* Specify emit/checking behavior for imports that are only used for types */ 55 | // "downlevelIteration": true, /* Emit more compliant, but verbose and less performant JavaScript for iteration. */ 56 | // "sourceRoot": "", /* Specify the root path for debuggers to find the reference source code. */ 57 | // "mapRoot": "", /* Specify the location where debugger should locate map files instead of generated locations. */ 58 | // "inlineSourceMap": true, /* Include sourcemap files inside the emitted JavaScript. */ 59 | // "inlineSources": true, /* Include source code in the sourcemaps inside the emitted JavaScript. */ 60 | // "emitBOM": true, /* Emit a UTF-8 Byte Order Mark (BOM) in the beginning of output files. */ 61 | // "newLine": "crlf", /* Set the newline character for emitting files. */ 62 | // "stripInternal": true, /* Disable emitting declarations that have `@internal` in their JSDoc comments. */ 63 | // "noEmitHelpers": true, /* Disable generating custom helper functions like `__extends` in compiled output. */ 64 | // "noEmitOnError": true, /* Disable emitting files if any type checking errors are reported. */ 65 | // "preserveConstEnums": true, /* Disable erasing `const enum` declarations in generated code. */ 66 | // "declarationDir": "./", /* Specify the output directory for generated declaration files. */ 67 | // "preserveValueImports": true, /* Preserve unused imported values in the JavaScript output that would otherwise be removed. */ 68 | 69 | /* Interop Constraints */ 70 | // "isolatedModules": true, /* Ensure that each file can be safely transpiled without relying on other imports. */ 71 | // "allowSyntheticDefaultImports": true, /* Allow 'import x from y' when a module doesn't have a default export. */ 72 | "esModuleInterop": true, /* Emit additional JavaScript to ease support for importing CommonJS modules. This enables `allowSyntheticDefaultImports` for type compatibility. */ 73 | // "preserveSymlinks": true, /* Disable resolving symlinks to their realpath. This correlates to the same flag in node. */ 74 | "forceConsistentCasingInFileNames": true, /* Ensure that casing is correct in imports. */ 75 | 76 | /* Type Checking */ 77 | "strict": true, /* Enable all strict type-checking options. */ 78 | // "noImplicitAny": true, /* Enable error reporting for expressions and declarations with an implied `any` type.. */ 79 | // "strictNullChecks": true, /* When type checking, take into account `null` and `undefined`. */ 80 | // "strictFunctionTypes": true, /* When assigning functions, check to ensure parameters and the return values are subtype-compatible. */ 81 | // "strictBindCallApply": true, /* Check that the arguments for `bind`, `call`, and `apply` methods match the original function. */ 82 | // "strictPropertyInitialization": true, /* Check for class properties that are declared but not set in the constructor. */ 83 | // "noImplicitThis": true, /* Enable error reporting when `this` is given the type `any`. */ 84 | // "useUnknownInCatchVariables": true, /* Type catch clause variables as 'unknown' instead of 'any'. */ 85 | // "alwaysStrict": true, /* Ensure 'use strict' is always emitted. */ 86 | // "noUnusedLocals": true, /* Enable error reporting when a local variables aren't read. */ 87 | // "noUnusedParameters": true, /* Raise an error when a function parameter isn't read */ 88 | // "exactOptionalPropertyTypes": true, /* Interpret optional property types as written, rather than adding 'undefined'. */ 89 | // "noImplicitReturns": true, /* Enable error reporting for codepaths that do not explicitly return in a function. */ 90 | // "noFallthroughCasesInSwitch": true, /* Enable error reporting for fallthrough cases in switch statements. */ 91 | // "noUncheckedIndexedAccess": true, /* Include 'undefined' in index signature results */ 92 | // "noImplicitOverride": true, /* Ensure overriding members in derived classes are marked with an override modifier. */ 93 | // "noPropertyAccessFromIndexSignature": true, /* Enforces using indexed accessors for keys declared using an indexed type */ 94 | // "allowUnusedLabels": true, /* Disable error reporting for unused labels. */ 95 | // "allowUnreachableCode": true, /* Disable error reporting for unreachable code. */ 96 | 97 | /* Completeness */ 98 | // "skipDefaultLibCheck": true, /* Skip type checking .d.ts files that are included with TypeScript. */ 99 | "skipLibCheck": true /* Skip type checking all .d.ts files. */ 100 | } 101 | } 102 | -------------------------------------------------------------------------------- /utils.ts: -------------------------------------------------------------------------------- 1 | import { 2 | ActionRowBuilder, 3 | ModalBuilder, 4 | TextInputBuilder, 5 | TextInputStyle, 6 | } from "discord.js"; 7 | 8 | export const getModal = (description: string) => { 9 | const modal = new ModalBuilder() 10 | .setTitle("Create github issue") 11 | .setCustomId("AwesomeForm"); 12 | 13 | const issueTitle = new TextInputBuilder() 14 | .setStyle(TextInputStyle.Short) 15 | .setCustomId("issueTitle") 16 | .setLabel("Issue title"); 17 | 18 | const issueDescription = new TextInputBuilder() 19 | .setStyle(TextInputStyle.Paragraph) 20 | .setCustomId("issueDescription") 21 | .setLabel("Issue description") 22 | .setValue(description); 23 | 24 | const rows = [issueTitle, issueDescription].map((component) => 25 | new ActionRowBuilder().addComponents([component]) 26 | ); 27 | 28 | // Add action rows to form 29 | modal.addComponents(rows); 30 | 31 | return modal; 32 | }; 33 | -------------------------------------------------------------------------------- /yarn.lock: -------------------------------------------------------------------------------- 1 | # THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY. 2 | # yarn lockfile v1 3 | 4 | 5 | "@cspotcode/source-map-consumer@0.8.0": 6 | version "0.8.0" 7 | resolved "https://registry.yarnpkg.com/@cspotcode/source-map-consumer/-/source-map-consumer-0.8.0.tgz#33bf4b7b39c178821606f669bbc447a6a629786b" 8 | integrity sha512-41qniHzTU8yAGbCp04ohlmSrZf8bkf/iJsl3V0dRGsQN/5GFfx+LbCSsCpp2gqrqjTVg/K6O8ycoV35JIwAzAg== 9 | 10 | "@cspotcode/source-map-support@0.7.0": 11 | version "0.7.0" 12 | resolved "https://registry.yarnpkg.com/@cspotcode/source-map-support/-/source-map-support-0.7.0.tgz#4789840aa859e46d2f3173727ab707c66bf344f5" 13 | integrity sha512-X4xqRHqN8ACt2aHVe51OxeA2HjbcL4MqFqXkrmQszJ1NOUuUu5u6Vqx/0lZSVNku7velL5FC/s5uEAj1lsBMhA== 14 | dependencies: 15 | "@cspotcode/source-map-consumer" "0.8.0" 16 | 17 | "@discordjs/builders@^0.14.0-dev": 18 | version "0.14.0-dev.1650931748-df64d3e" 19 | resolved "https://registry.yarnpkg.com/@discordjs/builders/-/builders-0.14.0-dev.1650931748-df64d3e.tgz#392f5d1593d9c998bb14a4f07c688c564de08532" 20 | integrity sha512-/RbVCpsP59tQHXWZuyvelZt76N3Ges3l2P81s1R9VymCfgpg0ZdPPuYSErh3zNm3fBqwr0LH5En+C1G7Wr88Yg== 21 | dependencies: 22 | "@sapphire/shapeshift" "^2.0.0" 23 | "@sindresorhus/is" "^4.6.0" 24 | discord-api-types "^0.31.1" 25 | fast-deep-equal "^3.1.3" 26 | ts-mixer "^6.0.1" 27 | tslib "^2.3.1" 28 | 29 | "@discordjs/collection@^0.7.0-dev": 30 | version "0.7.0-dev.1650931751-df64d3e" 31 | resolved "https://registry.yarnpkg.com/@discordjs/collection/-/collection-0.7.0-dev.1650931751-df64d3e.tgz#23e41e61bb4b10b70789ed4b14aa4aab4d28f9ac" 32 | integrity sha512-8oPvjx69kAUz5r+I1uzLZrsgSPIC4ybbK4eBAgx2ShNLliFk9hbg0vNkFfJoKKAoS6Mzfxo/47B0+rKdEBXW6w== 33 | 34 | "@discordjs/rest@^0.5.0-dev": 35 | version "0.5.0-dev.1650931739-df64d3e" 36 | resolved "https://registry.yarnpkg.com/@discordjs/rest/-/rest-0.5.0-dev.1650931739-df64d3e.tgz#9e68b27c57607a7fba590bf8c5cee0f95ff9a78d" 37 | integrity sha512-CMQnBCZ7S7SENTVF9EQtGkBCUxp46Yj8Wpd/MCt+RThhkLcxR16Mle7kPGD/g8pJZeXdtWbbGXTiwue5g86Y/Q== 38 | dependencies: 39 | "@discordjs/collection" "^0.7.0-dev" 40 | "@sapphire/async-queue" "^1.3.1" 41 | "@sapphire/snowflake" "^3.2.1" 42 | "@types/node-fetch" "^2.6.1" 43 | discord-api-types "^0.29.0" 44 | form-data "^4.0.0" 45 | node-fetch "^2.6.7" 46 | tslib "^2.3.1" 47 | 48 | "@octokit/auth-token@^2.4.4": 49 | version "2.5.0" 50 | resolved "https://registry.yarnpkg.com/@octokit/auth-token/-/auth-token-2.5.0.tgz#27c37ea26c205f28443402477ffd261311f21e36" 51 | integrity sha512-r5FVUJCOLl19AxiuZD2VRZ/ORjp/4IN98Of6YJoJOkY75CIBuYfmiNHGrDwXr+aLGG55igl9QrxX3hbiXlLb+g== 52 | dependencies: 53 | "@octokit/types" "^6.0.3" 54 | 55 | "@octokit/core@^3.5.1": 56 | version "3.6.0" 57 | resolved "https://registry.yarnpkg.com/@octokit/core/-/core-3.6.0.tgz#3376cb9f3008d9b3d110370d90e0a1fcd5fe6085" 58 | integrity sha512-7RKRKuA4xTjMhY+eG3jthb3hlZCsOwg3rztWh75Xc+ShDWOfDDATWbeZpAHBNRpm4Tv9WgBMOy1zEJYXG6NJ7Q== 59 | dependencies: 60 | "@octokit/auth-token" "^2.4.4" 61 | "@octokit/graphql" "^4.5.8" 62 | "@octokit/request" "^5.6.3" 63 | "@octokit/request-error" "^2.0.5" 64 | "@octokit/types" "^6.0.3" 65 | before-after-hook "^2.2.0" 66 | universal-user-agent "^6.0.0" 67 | 68 | "@octokit/endpoint@^6.0.1": 69 | version "6.0.12" 70 | resolved "https://registry.yarnpkg.com/@octokit/endpoint/-/endpoint-6.0.12.tgz#3b4d47a4b0e79b1027fb8d75d4221928b2d05658" 71 | integrity sha512-lF3puPwkQWGfkMClXb4k/eUT/nZKQfxinRWJrdZaJO85Dqwo/G0yOC434Jr2ojwafWJMYqFGFa5ms4jJUgujdA== 72 | dependencies: 73 | "@octokit/types" "^6.0.3" 74 | is-plain-object "^5.0.0" 75 | universal-user-agent "^6.0.0" 76 | 77 | "@octokit/graphql@^4.5.8": 78 | version "4.8.0" 79 | resolved "https://registry.yarnpkg.com/@octokit/graphql/-/graphql-4.8.0.tgz#664d9b11c0e12112cbf78e10f49a05959aa22cc3" 80 | integrity sha512-0gv+qLSBLKF0z8TKaSKTsS39scVKF9dbMxJpj3U0vC7wjNWFuIpL/z76Qe2fiuCbDRcJSavkXsVtMS6/dtQQsg== 81 | dependencies: 82 | "@octokit/request" "^5.6.0" 83 | "@octokit/types" "^6.0.3" 84 | universal-user-agent "^6.0.0" 85 | 86 | "@octokit/openapi-types@^11.2.0": 87 | version "11.2.0" 88 | resolved "https://registry.yarnpkg.com/@octokit/openapi-types/-/openapi-types-11.2.0.tgz#b38d7fc3736d52a1e96b230c1ccd4a58a2f400a6" 89 | integrity sha512-PBsVO+15KSlGmiI8QAzaqvsNlZlrDlyAJYcrXBCvVUxCp7VnXjkwPoFHgjEJXx3WF9BAwkA6nfCUA7i9sODzKA== 90 | 91 | "@octokit/plugin-paginate-rest@^2.16.8": 92 | version "2.17.0" 93 | resolved "https://registry.yarnpkg.com/@octokit/plugin-paginate-rest/-/plugin-paginate-rest-2.17.0.tgz#32e9c7cab2a374421d3d0de239102287d791bce7" 94 | integrity sha512-tzMbrbnam2Mt4AhuyCHvpRkS0oZ5MvwwcQPYGtMv4tUa5kkzG58SVB0fcsLulOZQeRnOgdkZWkRUiyBlh0Bkyw== 95 | dependencies: 96 | "@octokit/types" "^6.34.0" 97 | 98 | "@octokit/plugin-request-log@^1.0.4": 99 | version "1.0.4" 100 | resolved "https://registry.yarnpkg.com/@octokit/plugin-request-log/-/plugin-request-log-1.0.4.tgz#5e50ed7083a613816b1e4a28aeec5fb7f1462e85" 101 | integrity sha512-mLUsMkgP7K/cnFEw07kWqXGF5LKrOkD+lhCrKvPHXWDywAwuDUeDwWBpc69XK3pNX0uKiVt8g5z96PJ6z9xCFA== 102 | 103 | "@octokit/plugin-rest-endpoint-methods@^5.12.0": 104 | version "5.13.0" 105 | resolved "https://registry.yarnpkg.com/@octokit/plugin-rest-endpoint-methods/-/plugin-rest-endpoint-methods-5.13.0.tgz#8c46109021a3412233f6f50d28786f8e552427ba" 106 | integrity sha512-uJjMTkN1KaOIgNtUPMtIXDOjx6dGYysdIFhgA52x4xSadQCz3b/zJexvITDVpANnfKPW/+E0xkOvLntqMYpviA== 107 | dependencies: 108 | "@octokit/types" "^6.34.0" 109 | deprecation "^2.3.1" 110 | 111 | "@octokit/request-error@^2.0.5", "@octokit/request-error@^2.1.0": 112 | version "2.1.0" 113 | resolved "https://registry.yarnpkg.com/@octokit/request-error/-/request-error-2.1.0.tgz#9e150357831bfc788d13a4fd4b1913d60c74d677" 114 | integrity sha512-1VIvgXxs9WHSjicsRwq8PlR2LR2x6DwsJAaFgzdi0JfJoGSO8mYI/cHJQ+9FbN21aa+DrgNLnwObmyeSC8Rmpg== 115 | dependencies: 116 | "@octokit/types" "^6.0.3" 117 | deprecation "^2.0.0" 118 | once "^1.4.0" 119 | 120 | "@octokit/request@^5.6.0", "@octokit/request@^5.6.3": 121 | version "5.6.3" 122 | resolved "https://registry.yarnpkg.com/@octokit/request/-/request-5.6.3.tgz#19a022515a5bba965ac06c9d1334514eb50c48b0" 123 | integrity sha512-bFJl0I1KVc9jYTe9tdGGpAMPy32dLBXXo1dS/YwSCTL/2nd9XeHsY616RE3HPXDVk+a+dBuzyz5YdlXwcDTr2A== 124 | dependencies: 125 | "@octokit/endpoint" "^6.0.1" 126 | "@octokit/request-error" "^2.1.0" 127 | "@octokit/types" "^6.16.1" 128 | is-plain-object "^5.0.0" 129 | node-fetch "^2.6.7" 130 | universal-user-agent "^6.0.0" 131 | 132 | "@octokit/rest@^18.12.0": 133 | version "18.12.0" 134 | resolved "https://registry.yarnpkg.com/@octokit/rest/-/rest-18.12.0.tgz#f06bc4952fc87130308d810ca9d00e79f6988881" 135 | integrity sha512-gDPiOHlyGavxr72y0guQEhLsemgVjwRePayJ+FcKc2SJqKUbxbkvf5kAZEWA/MKvsfYlQAMVzNJE3ezQcxMJ2Q== 136 | dependencies: 137 | "@octokit/core" "^3.5.1" 138 | "@octokit/plugin-paginate-rest" "^2.16.8" 139 | "@octokit/plugin-request-log" "^1.0.4" 140 | "@octokit/plugin-rest-endpoint-methods" "^5.12.0" 141 | 142 | "@octokit/types@^6.0.3", "@octokit/types@^6.16.1", "@octokit/types@^6.34.0": 143 | version "6.34.0" 144 | resolved "https://registry.yarnpkg.com/@octokit/types/-/types-6.34.0.tgz#c6021333334d1ecfb5d370a8798162ddf1ae8218" 145 | integrity sha512-s1zLBjWhdEI2zwaoSgyOFoKSl109CUcVBCc7biPJ3aAf6LGLU6szDvi31JPU7bxfla2lqfhjbbg/5DdFNxOwHw== 146 | dependencies: 147 | "@octokit/openapi-types" "^11.2.0" 148 | 149 | "@sapphire/async-queue@^1.3.1": 150 | version "1.3.1" 151 | resolved "https://registry.yarnpkg.com/@sapphire/async-queue/-/async-queue-1.3.1.tgz#9d861e626dbffae02d808e13f823d4510e450a78" 152 | integrity sha512-FFTlPOWZX1kDj9xCAsRzH5xEJfawg1lNoYAA+ecOWJMHOfiZYb1uXOI3ne9U4UILSEPwfE68p3T9wUHwIQfR0g== 153 | 154 | "@sapphire/shapeshift@^2.0.0": 155 | version "2.1.0" 156 | resolved "https://registry.yarnpkg.com/@sapphire/shapeshift/-/shapeshift-2.1.0.tgz#cef43aa992f12be578166ce1fc27c9a2a945d4b8" 157 | integrity sha512-Z1ISLP9pNI3jpKJxx82xtDpEsfomhJ3iPqcKdYLjAHmQP2X5yqQF6phA0Wd+MmdXp081wepOiT59XEN0xdTVvQ== 158 | 159 | "@sapphire/snowflake@^3.2.1": 160 | version "3.2.2" 161 | resolved "https://registry.yarnpkg.com/@sapphire/snowflake/-/snowflake-3.2.2.tgz#faacdc1b5f7c43145a71eddba917de2b707ef780" 162 | integrity sha512-ula2O0kpSZtX9rKXNeQMrHwNd7E4jPDJYUXmEGTFdMRfyfMw+FPyh04oKMjAiDuOi64bYgVkOV3MjK+loImFhQ== 163 | 164 | "@sindresorhus/is@^4.6.0": 165 | version "4.6.0" 166 | resolved "https://registry.yarnpkg.com/@sindresorhus/is/-/is-4.6.0.tgz#3c7c9c46e678feefe7a2e5bb609d3dbd665ffb3f" 167 | integrity sha512-t09vSN3MdfsyCHoFcTRCH/iUtG7OJ0CsjzB8cjAmKc/va/kIgeDI/TxsigdncE/4be734m0cvIYwNaV4i2XqAw== 168 | 169 | "@tsconfig/node10@^1.0.7": 170 | version "1.0.8" 171 | resolved "https://registry.yarnpkg.com/@tsconfig/node10/-/node10-1.0.8.tgz#c1e4e80d6f964fbecb3359c43bd48b40f7cadad9" 172 | integrity sha512-6XFfSQmMgq0CFLY1MslA/CPUfhIL919M1rMsa5lP2P097N2Wd1sSX0tx1u4olM16fLNhtHZpRhedZJphNJqmZg== 173 | 174 | "@tsconfig/node12@^1.0.7": 175 | version "1.0.9" 176 | resolved "https://registry.yarnpkg.com/@tsconfig/node12/-/node12-1.0.9.tgz#62c1f6dee2ebd9aead80dc3afa56810e58e1a04c" 177 | integrity sha512-/yBMcem+fbvhSREH+s14YJi18sp7J9jpuhYByADT2rypfajMZZN4WQ6zBGgBKp53NKmqI36wFYDb3yaMPurITw== 178 | 179 | "@tsconfig/node14@^1.0.0": 180 | version "1.0.1" 181 | resolved "https://registry.yarnpkg.com/@tsconfig/node14/-/node14-1.0.1.tgz#95f2d167ffb9b8d2068b0b235302fafd4df711f2" 182 | integrity sha512-509r2+yARFfHHE7T6Puu2jjkoycftovhXRqW328PDXTVGKihlb1P8Z9mMZH04ebyajfRY7dedfGynlrFHJUQCg== 183 | 184 | "@tsconfig/node16@^1.0.2": 185 | version "1.0.2" 186 | resolved "https://registry.yarnpkg.com/@tsconfig/node16/-/node16-1.0.2.tgz#423c77877d0569db20e1fc80885ac4118314010e" 187 | integrity sha512-eZxlbI8GZscaGS7kkc/trHTT5xgrjH3/1n2JDwusC9iahPKWMRvRjJSAN5mCXviuTGQ/lHnhvv8Q1YTpnfz9gA== 188 | 189 | "@types/body-parser@*": 190 | version "1.19.2" 191 | resolved "https://registry.yarnpkg.com/@types/body-parser/-/body-parser-1.19.2.tgz#aea2059e28b7658639081347ac4fab3de166e6f0" 192 | integrity sha512-ALYone6pm6QmwZoAgeyNksccT9Q4AWZQ6PvfwR37GT6r6FWUPguq6sUmNGSMV2Wr761oQoBxwGGa6DR5o1DC9g== 193 | dependencies: 194 | "@types/connect" "*" 195 | "@types/node" "*" 196 | 197 | "@types/connect@*": 198 | version "3.4.35" 199 | resolved "https://registry.yarnpkg.com/@types/connect/-/connect-3.4.35.tgz#5fcf6ae445e4021d1fc2219a4873cc73a3bb2ad1" 200 | integrity sha512-cdeYyv4KWoEgpBISTxWvqYsVy444DOqehiF3fM3ne10AmJ62RSyNkUnxMJXHQWRQQX2eR94m5y1IZyDwBjV9FQ== 201 | dependencies: 202 | "@types/node" "*" 203 | 204 | "@types/express-serve-static-core@^4.17.18": 205 | version "4.17.28" 206 | resolved "https://registry.yarnpkg.com/@types/express-serve-static-core/-/express-serve-static-core-4.17.28.tgz#c47def9f34ec81dc6328d0b1b5303d1ec98d86b8" 207 | integrity sha512-P1BJAEAW3E2DJUlkgq4tOL3RyMunoWXqbSCygWo5ZIWTjUgN1YnaXWW4VWl/oc8vs/XoYibEGBKP0uZyF4AHig== 208 | dependencies: 209 | "@types/node" "*" 210 | "@types/qs" "*" 211 | "@types/range-parser" "*" 212 | 213 | "@types/express@^4.17.13": 214 | version "4.17.13" 215 | resolved "https://registry.yarnpkg.com/@types/express/-/express-4.17.13.tgz#a76e2995728999bab51a33fabce1d705a3709034" 216 | integrity sha512-6bSZTPaTIACxn48l50SR+axgrqm6qXFIxrdAKaG6PaJk3+zuUr35hBlgT7vOmJcum+OEaIBLtHV/qloEAFITeA== 217 | dependencies: 218 | "@types/body-parser" "*" 219 | "@types/express-serve-static-core" "^4.17.18" 220 | "@types/qs" "*" 221 | "@types/serve-static" "*" 222 | 223 | "@types/mime@^1": 224 | version "1.3.2" 225 | resolved "https://registry.yarnpkg.com/@types/mime/-/mime-1.3.2.tgz#93e25bf9ee75fe0fd80b594bc4feb0e862111b5a" 226 | integrity sha512-YATxVxgRqNH6nHEIsvg6k2Boc1JHI9ZbH5iWFFv/MTkchz3b1ieGDa5T0a9RznNdI0KhVbdbWSN+KWWrQZRxTw== 227 | 228 | "@types/node-fetch@^2.6.1": 229 | version "2.6.1" 230 | resolved "https://registry.yarnpkg.com/@types/node-fetch/-/node-fetch-2.6.1.tgz#8f127c50481db65886800ef496f20bbf15518975" 231 | integrity sha512-oMqjURCaxoSIsHSr1E47QHzbmzNR5rK8McHuNb11BOM9cHcIK3Avy0s/b2JlXHoQGTYS3NsvWzV1M0iK7l0wbA== 232 | dependencies: 233 | "@types/node" "*" 234 | form-data "^3.0.0" 235 | 236 | "@types/node@*": 237 | version "17.0.27" 238 | resolved "https://registry.yarnpkg.com/@types/node/-/node-17.0.27.tgz#f4df3981ae8268c066e8f49995639f855469081e" 239 | integrity sha512-4/Ke7bbWOasuT3kceBZFGakP1dYN2XFd8v2l9bqF2LNWrmeU07JLpp56aEeG6+Q3olqO5TvXpW0yaiYnZJ5CXg== 240 | 241 | "@types/qs@*": 242 | version "6.9.7" 243 | resolved "https://registry.yarnpkg.com/@types/qs/-/qs-6.9.7.tgz#63bb7d067db107cc1e457c303bc25d511febf6cb" 244 | integrity sha512-FGa1F62FT09qcrueBA6qYTrJPVDzah9a+493+o2PCXsesWHIn27G98TsSMs3WPNbZIEj4+VJf6saSFpvD+3Zsw== 245 | 246 | "@types/range-parser@*": 247 | version "1.2.4" 248 | resolved "https://registry.yarnpkg.com/@types/range-parser/-/range-parser-1.2.4.tgz#cd667bcfdd025213aafb7ca5915a932590acdcdc" 249 | integrity sha512-EEhsLsD6UsDM1yFhAvy0Cjr6VwmpMWqFBCb9w07wVugF7w9nfajxLuVmngTIpgS6svCnm6Vaw+MZhoDCKnOfsw== 250 | 251 | "@types/serve-static@*": 252 | version "1.13.10" 253 | resolved "https://registry.yarnpkg.com/@types/serve-static/-/serve-static-1.13.10.tgz#f5e0ce8797d2d7cc5ebeda48a52c96c4fa47a8d9" 254 | integrity sha512-nCkHGI4w7ZgAdNkrEu0bv+4xNV/XDqW+DydknebMOQwkpDGx8G+HTlj7R7ABI8i8nKxVw0wtKPi1D+lPOkh4YQ== 255 | dependencies: 256 | "@types/mime" "^1" 257 | "@types/node" "*" 258 | 259 | "@types/ws@^8.5.3": 260 | version "8.5.3" 261 | resolved "https://registry.yarnpkg.com/@types/ws/-/ws-8.5.3.tgz#7d25a1ffbecd3c4f2d35068d0b283c037003274d" 262 | integrity sha512-6YOoWjruKj1uLf3INHH7D3qTXwFfEsg1kf3c0uDdSBJwfa/llkwIjrAGV7j7mVgGNbzTQ3HiHKKDXl6bJPD97w== 263 | dependencies: 264 | "@types/node" "*" 265 | 266 | accepts@~1.3.8: 267 | version "1.3.8" 268 | resolved "https://registry.yarnpkg.com/accepts/-/accepts-1.3.8.tgz#0bf0be125b67014adcb0b0921e62db7bffe16b2e" 269 | integrity sha512-PYAthTa2m2VKxuvSD3DPC/Gy+U+sOA1LAuT8mkmRuvw+NACSaeXEQ+NHcVF7rONl6qcaxV3Uuemwawk+7+SJLw== 270 | dependencies: 271 | mime-types "~2.1.34" 272 | negotiator "0.6.3" 273 | 274 | acorn-walk@^8.1.1: 275 | version "8.2.0" 276 | resolved "https://registry.yarnpkg.com/acorn-walk/-/acorn-walk-8.2.0.tgz#741210f2e2426454508853a2f44d0ab83b7f69c1" 277 | integrity sha512-k+iyHEuPgSw6SbuDpGQM+06HQUa04DZ3o+F6CSzXMvvI5KMvnaEqXe+YVe555R9nn6GPt404fos4wcgpw12SDA== 278 | 279 | acorn@^8.4.1: 280 | version "8.7.1" 281 | resolved "https://registry.yarnpkg.com/acorn/-/acorn-8.7.1.tgz#0197122c843d1bf6d0a5e83220a788f278f63c30" 282 | integrity sha512-Xx54uLJQZ19lKygFXOWsscKUbsBZW0CPykPhVQdhIeIwrbPmJzqeASDInc8nKBnp/JT6igTs82qPXz069H8I/A== 283 | 284 | arg@^4.1.0: 285 | version "4.1.3" 286 | resolved "https://registry.yarnpkg.com/arg/-/arg-4.1.3.tgz#269fc7ad5b8e42cb63c896d5666017261c144089" 287 | integrity sha512-58S9QDqG0Xx27YwPSt9fJxivjYl432YCwfDMfZ+71RAqUrZef7LrKQZ3LHLOwCS4FLNBplP533Zx895SeOCHvA== 288 | 289 | array-flatten@1.1.1: 290 | version "1.1.1" 291 | resolved "https://registry.yarnpkg.com/array-flatten/-/array-flatten-1.1.1.tgz#9a5f699051b1e7073328f2a008968b64ea2955d2" 292 | integrity sha1-ml9pkFGx5wczKPKgCJaLZOopVdI= 293 | 294 | asynckit@^0.4.0: 295 | version "0.4.0" 296 | resolved "https://registry.yarnpkg.com/asynckit/-/asynckit-0.4.0.tgz#c79ed97f7f34cb8f2ba1bc9790bcc366474b4b79" 297 | integrity sha1-x57Zf380y48robyXkLzDZkdLS3k= 298 | 299 | before-after-hook@^2.2.0: 300 | version "2.2.2" 301 | resolved "https://registry.yarnpkg.com/before-after-hook/-/before-after-hook-2.2.2.tgz#a6e8ca41028d90ee2c24222f201c90956091613e" 302 | integrity sha512-3pZEU3NT5BFUo/AD5ERPWOgQOCZITni6iavr5AUw5AUwQjMlI0kzu5btnyD39AF0gUEsDPwJT+oY1ORBJijPjQ== 303 | 304 | body-parser@1.20.0: 305 | version "1.20.0" 306 | resolved "https://registry.yarnpkg.com/body-parser/-/body-parser-1.20.0.tgz#3de69bd89011c11573d7bfee6a64f11b6bd27cc5" 307 | integrity sha512-DfJ+q6EPcGKZD1QWUjSpqp+Q7bDQTsQIF4zfUAtZ6qk+H/3/QRhg9CEp39ss+/T2vw0+HaidC0ecJj/DRLIaKg== 308 | dependencies: 309 | bytes "3.1.2" 310 | content-type "~1.0.4" 311 | debug "2.6.9" 312 | depd "2.0.0" 313 | destroy "1.2.0" 314 | http-errors "2.0.0" 315 | iconv-lite "0.4.24" 316 | on-finished "2.4.1" 317 | qs "6.10.3" 318 | raw-body "2.5.1" 319 | type-is "~1.6.18" 320 | unpipe "1.0.0" 321 | 322 | bytes@3.1.2: 323 | version "3.1.2" 324 | resolved "https://registry.yarnpkg.com/bytes/-/bytes-3.1.2.tgz#8b0beeb98605adf1b128fa4386403c009e0221a5" 325 | integrity sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg== 326 | 327 | call-bind@^1.0.0: 328 | version "1.0.2" 329 | resolved "https://registry.yarnpkg.com/call-bind/-/call-bind-1.0.2.tgz#b1d4e89e688119c3c9a903ad30abb2f6a919be3c" 330 | integrity sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA== 331 | dependencies: 332 | function-bind "^1.1.1" 333 | get-intrinsic "^1.0.2" 334 | 335 | combined-stream@^1.0.8: 336 | version "1.0.8" 337 | resolved "https://registry.yarnpkg.com/combined-stream/-/combined-stream-1.0.8.tgz#c3d45a8b34fd730631a110a8a2520682b31d5a7f" 338 | integrity sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg== 339 | dependencies: 340 | delayed-stream "~1.0.0" 341 | 342 | content-disposition@0.5.4: 343 | version "0.5.4" 344 | resolved "https://registry.yarnpkg.com/content-disposition/-/content-disposition-0.5.4.tgz#8b82b4efac82512a02bb0b1dcec9d2c5e8eb5bfe" 345 | integrity sha512-FveZTNuGw04cxlAiWbzi6zTAL/lhehaWbTtgluJh4/E95DqMwTmha3KZN1aAWA8cFIhHzMZUvLevkw5Rqk+tSQ== 346 | dependencies: 347 | safe-buffer "5.2.1" 348 | 349 | content-type@~1.0.4: 350 | version "1.0.4" 351 | resolved "https://registry.yarnpkg.com/content-type/-/content-type-1.0.4.tgz#e138cc75e040c727b1966fe5e5f8c9aee256fe3b" 352 | integrity sha512-hIP3EEPs8tB9AT1L+NUqtwOAps4mk2Zob89MWXMHjHWg9milF/j4osnnQLXBCBFBk/tvIG/tUc9mOUJiPBhPXA== 353 | 354 | cookie-signature@1.0.6: 355 | version "1.0.6" 356 | resolved "https://registry.yarnpkg.com/cookie-signature/-/cookie-signature-1.0.6.tgz#e303a882b342cc3ee8ca513a79999734dab3ae2c" 357 | integrity sha1-4wOogrNCzD7oylE6eZmXNNqzriw= 358 | 359 | cookie@0.5.0: 360 | version "0.5.0" 361 | resolved "https://registry.yarnpkg.com/cookie/-/cookie-0.5.0.tgz#d1f5d71adec6558c58f389987c366aa47e994f8b" 362 | integrity sha512-YZ3GUyn/o8gfKJlnlX7g7xq4gyO6OSuhGPKaaGssGB2qgDUS0gPgtTvoyZLTt9Ab6dC4hfc9dV5arkvc/OCmrw== 363 | 364 | create-require@^1.1.0: 365 | version "1.1.1" 366 | resolved "https://registry.yarnpkg.com/create-require/-/create-require-1.1.1.tgz#c1d7e8f1e5f6cfc9ff65f9cd352d37348756c333" 367 | integrity sha512-dcKFX3jn0MpIaXjisoRvexIJVEKzaq7z2rZKxf+MSr9TkdmHmsU4m2lcLojrj/FHl8mk5VxMmYA+ftRkP/3oKQ== 368 | 369 | debug@2.6.9: 370 | version "2.6.9" 371 | resolved "https://registry.yarnpkg.com/debug/-/debug-2.6.9.tgz#5d128515df134ff327e90a4c93f4e077a536341f" 372 | integrity sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA== 373 | dependencies: 374 | ms "2.0.0" 375 | 376 | delayed-stream@~1.0.0: 377 | version "1.0.0" 378 | resolved "https://registry.yarnpkg.com/delayed-stream/-/delayed-stream-1.0.0.tgz#df3ae199acadfb7d440aaae0b29e2272b24ec619" 379 | integrity sha1-3zrhmayt+31ECqrgsp4icrJOxhk= 380 | 381 | depd@2.0.0: 382 | version "2.0.0" 383 | resolved "https://registry.yarnpkg.com/depd/-/depd-2.0.0.tgz#b696163cc757560d09cf22cc8fad1571b79e76df" 384 | integrity sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw== 385 | 386 | deprecation@^2.0.0, deprecation@^2.3.1: 387 | version "2.3.1" 388 | resolved "https://registry.yarnpkg.com/deprecation/-/deprecation-2.3.1.tgz#6368cbdb40abf3373b525ac87e4a260c3a700919" 389 | integrity sha512-xmHIy4F3scKVwMsQ4WnVaS8bHOx0DmVwRywosKhaILI0ywMDWPtBSku2HNxRvF7jtwDRsoEwYQSfbxj8b7RlJQ== 390 | 391 | destroy@1.2.0: 392 | version "1.2.0" 393 | resolved "https://registry.yarnpkg.com/destroy/-/destroy-1.2.0.tgz#4803735509ad8be552934c67df614f94e66fa015" 394 | integrity sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg== 395 | 396 | diff@^4.0.1: 397 | version "4.0.2" 398 | resolved "https://registry.yarnpkg.com/diff/-/diff-4.0.2.tgz#60f3aecb89d5fae520c11aa19efc2bb982aade7d" 399 | integrity sha512-58lmxKSA4BNyLz+HHMUzlOEpg09FV+ev6ZMe3vJihgdxzgcwZ8VoEEPmALCZG9LmqfVoNMMKpttIYTVG6uDY7A== 400 | 401 | discord-api-types@^0.29.0: 402 | version "0.29.0" 403 | resolved "https://registry.yarnpkg.com/discord-api-types/-/discord-api-types-0.29.0.tgz#8346352b623ddd8d8eed386b6eb758e2d82d6005" 404 | integrity sha512-Ekq1ICNpOTVajXKZguNFrsDeTmam+ZeA38txsNLZnANdXUjU6QBPIZLUQTC6MzigFGb0Tt8vk4xLnXmzv0shNg== 405 | 406 | discord-api-types@^0.31.1: 407 | version "0.31.2" 408 | resolved "https://registry.yarnpkg.com/discord-api-types/-/discord-api-types-0.31.2.tgz#8d131e25340bd695815af3bb77128a6993c1b516" 409 | integrity sha512-gpzXTvFVg7AjKVVJFH0oJGC0q0tO34iJGSHZNz9u3aqLxlD6LfxEs9wWVVikJqn9gra940oUTaPFizCkRDcEiA== 410 | 411 | discord.js@14.0.0-dev.1650931749-df64d3e: 412 | version "14.0.0-dev.1650931749-df64d3e" 413 | resolved "https://registry.yarnpkg.com/discord.js/-/discord.js-14.0.0-dev.1650931749-df64d3e.tgz#385cead8f1eb699e8ae71c899c7501730fcb799a" 414 | integrity sha512-DTPgPOQULylZHJr8VJJSUo2UqV8fhnHuZ2UtlAw3H0yvqmCGlh/avgUbqGeK3QlJTDWxw44ZcD5saZyTCG+jPw== 415 | dependencies: 416 | "@discordjs/builders" "^0.14.0-dev" 417 | "@discordjs/collection" "^0.7.0-dev" 418 | "@discordjs/rest" "^0.5.0-dev" 419 | "@sapphire/snowflake" "^3.2.1" 420 | "@types/ws" "^8.5.3" 421 | discord-api-types "^0.31.1" 422 | fast-deep-equal "^3.1.3" 423 | lodash.snakecase "^4.1.1" 424 | tslib "^2.3.1" 425 | undici "^4.16.0" 426 | ws "^8.5.0" 427 | 428 | dotenv@^16.0.0: 429 | version "16.0.0" 430 | resolved "https://registry.yarnpkg.com/dotenv/-/dotenv-16.0.0.tgz#c619001253be89ebb638d027b609c75c26e47411" 431 | integrity sha512-qD9WU0MPM4SWLPJy/r2Be+2WgQj8plChsyrCNQzW/0WjvcJQiKQJ9mH3ZgB3fxbUUxgc/11ZJ0Fi5KiimWGz2Q== 432 | 433 | ee-first@1.1.1: 434 | version "1.1.1" 435 | resolved "https://registry.yarnpkg.com/ee-first/-/ee-first-1.1.1.tgz#590c61156b0ae2f4f0255732a158b266bc56b21d" 436 | integrity sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0= 437 | 438 | encodeurl@~1.0.2: 439 | version "1.0.2" 440 | resolved "https://registry.yarnpkg.com/encodeurl/-/encodeurl-1.0.2.tgz#ad3ff4c86ec2d029322f5a02c3a9a606c95b3f59" 441 | integrity sha1-rT/0yG7C0CkyL1oCw6mmBslbP1k= 442 | 443 | escape-html@~1.0.3: 444 | version "1.0.3" 445 | resolved "https://registry.yarnpkg.com/escape-html/-/escape-html-1.0.3.tgz#0258eae4d3d0c0974de1c169188ef0051d1d1988" 446 | integrity sha1-Aljq5NPQwJdN4cFpGI7wBR0dGYg= 447 | 448 | etag@~1.8.1: 449 | version "1.8.1" 450 | resolved "https://registry.yarnpkg.com/etag/-/etag-1.8.1.tgz#41ae2eeb65efa62268aebfea83ac7d79299b0887" 451 | integrity sha1-Qa4u62XvpiJorr/qg6x9eSmbCIc= 452 | 453 | express@^4.18.0: 454 | version "4.18.0" 455 | resolved "https://registry.yarnpkg.com/express/-/express-4.18.0.tgz#7a426773325d0dd5406395220614c0db10b6e8e2" 456 | integrity sha512-EJEXxiTQJS3lIPrU1AE2vRuT7X7E+0KBbpm5GSoK524yl0K8X+er8zS2P14E64eqsVNoWbMCT7MpmQ+ErAhgRg== 457 | dependencies: 458 | accepts "~1.3.8" 459 | array-flatten "1.1.1" 460 | body-parser "1.20.0" 461 | content-disposition "0.5.4" 462 | content-type "~1.0.4" 463 | cookie "0.5.0" 464 | cookie-signature "1.0.6" 465 | debug "2.6.9" 466 | depd "2.0.0" 467 | encodeurl "~1.0.2" 468 | escape-html "~1.0.3" 469 | etag "~1.8.1" 470 | finalhandler "1.2.0" 471 | fresh "0.5.2" 472 | http-errors "2.0.0" 473 | merge-descriptors "1.0.1" 474 | methods "~1.1.2" 475 | on-finished "2.4.1" 476 | parseurl "~1.3.3" 477 | path-to-regexp "0.1.7" 478 | proxy-addr "~2.0.7" 479 | qs "6.10.3" 480 | range-parser "~1.2.1" 481 | safe-buffer "5.2.1" 482 | send "0.18.0" 483 | serve-static "1.15.0" 484 | setprototypeof "1.2.0" 485 | statuses "2.0.1" 486 | type-is "~1.6.18" 487 | utils-merge "1.0.1" 488 | vary "~1.1.2" 489 | 490 | fast-deep-equal@^3.1.3: 491 | version "3.1.3" 492 | resolved "https://registry.yarnpkg.com/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz#3a7d56b559d6cbc3eb512325244e619a65c6c525" 493 | integrity sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q== 494 | 495 | finalhandler@1.2.0: 496 | version "1.2.0" 497 | resolved "https://registry.yarnpkg.com/finalhandler/-/finalhandler-1.2.0.tgz#7d23fe5731b207b4640e4fcd00aec1f9207a7b32" 498 | integrity sha512-5uXcUVftlQMFnWC9qu/svkWv3GTd2PfUhK/3PLkYNAe7FbqJMt3515HaxE6eRL74GdsriiwujiawdaB1BpEISg== 499 | dependencies: 500 | debug "2.6.9" 501 | encodeurl "~1.0.2" 502 | escape-html "~1.0.3" 503 | on-finished "2.4.1" 504 | parseurl "~1.3.3" 505 | statuses "2.0.1" 506 | unpipe "~1.0.0" 507 | 508 | form-data@^3.0.0: 509 | version "3.0.1" 510 | resolved "https://registry.yarnpkg.com/form-data/-/form-data-3.0.1.tgz#ebd53791b78356a99af9a300d4282c4d5eb9755f" 511 | integrity sha512-RHkBKtLWUVwd7SqRIvCZMEvAMoGUp0XU+seQiZejj0COz3RI3hWP4sCv3gZWWLjJTd7rGwcsF5eKZGii0r/hbg== 512 | dependencies: 513 | asynckit "^0.4.0" 514 | combined-stream "^1.0.8" 515 | mime-types "^2.1.12" 516 | 517 | form-data@^4.0.0: 518 | version "4.0.0" 519 | resolved "https://registry.yarnpkg.com/form-data/-/form-data-4.0.0.tgz#93919daeaf361ee529584b9b31664dc12c9fa452" 520 | integrity sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww== 521 | dependencies: 522 | asynckit "^0.4.0" 523 | combined-stream "^1.0.8" 524 | mime-types "^2.1.12" 525 | 526 | forwarded@0.2.0: 527 | version "0.2.0" 528 | resolved "https://registry.yarnpkg.com/forwarded/-/forwarded-0.2.0.tgz#2269936428aad4c15c7ebe9779a84bf0b2a81811" 529 | integrity sha512-buRG0fpBtRHSTCOASe6hD258tEubFoRLb4ZNA6NxMVHNw2gOcwHo9wyablzMzOA5z9xA9L1KNjk/Nt6MT9aYow== 530 | 531 | fresh@0.5.2: 532 | version "0.5.2" 533 | resolved "https://registry.yarnpkg.com/fresh/-/fresh-0.5.2.tgz#3d8cadd90d976569fa835ab1f8e4b23a105605a7" 534 | integrity sha1-PYyt2Q2XZWn6g1qx+OSyOhBWBac= 535 | 536 | function-bind@^1.1.1: 537 | version "1.1.1" 538 | resolved "https://registry.yarnpkg.com/function-bind/-/function-bind-1.1.1.tgz#a56899d3ea3c9bab874bb9773b7c5ede92f4895d" 539 | integrity sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A== 540 | 541 | get-intrinsic@^1.0.2: 542 | version "1.1.1" 543 | resolved "https://registry.yarnpkg.com/get-intrinsic/-/get-intrinsic-1.1.1.tgz#15f59f376f855c446963948f0d24cd3637b4abc6" 544 | integrity sha512-kWZrnVM42QCiEA2Ig1bG8zjoIMOgxWwYCEeNdwY6Tv/cOSeGpcoX4pXHfKUxNKVoArnrEr2e9srnAxxGIraS9Q== 545 | dependencies: 546 | function-bind "^1.1.1" 547 | has "^1.0.3" 548 | has-symbols "^1.0.1" 549 | 550 | has-symbols@^1.0.1: 551 | version "1.0.3" 552 | resolved "https://registry.yarnpkg.com/has-symbols/-/has-symbols-1.0.3.tgz#bb7b2c4349251dce87b125f7bdf874aa7c8b39f8" 553 | integrity sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A== 554 | 555 | has@^1.0.3: 556 | version "1.0.3" 557 | resolved "https://registry.yarnpkg.com/has/-/has-1.0.3.tgz#722d7cbfc1f6aa8241f16dd814e011e1f41e8796" 558 | integrity sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw== 559 | dependencies: 560 | function-bind "^1.1.1" 561 | 562 | http-errors@2.0.0: 563 | version "2.0.0" 564 | resolved "https://registry.yarnpkg.com/http-errors/-/http-errors-2.0.0.tgz#b7774a1486ef73cf7667ac9ae0858c012c57b9d3" 565 | integrity sha512-FtwrG/euBzaEjYeRqOgly7G0qviiXoJWnvEH2Z1plBdXgbyjv34pHTSb9zoeHMyDy33+DWy5Wt9Wo+TURtOYSQ== 566 | dependencies: 567 | depd "2.0.0" 568 | inherits "2.0.4" 569 | setprototypeof "1.2.0" 570 | statuses "2.0.1" 571 | toidentifier "1.0.1" 572 | 573 | iconv-lite@0.4.24: 574 | version "0.4.24" 575 | resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.4.24.tgz#2022b4b25fbddc21d2f524974a474aafe733908b" 576 | integrity sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA== 577 | dependencies: 578 | safer-buffer ">= 2.1.2 < 3" 579 | 580 | inherits@2.0.4: 581 | version "2.0.4" 582 | resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.4.tgz#0fa2c64f932917c3433a0ded55363aae37416b7c" 583 | integrity sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ== 584 | 585 | ipaddr.js@1.9.1: 586 | version "1.9.1" 587 | resolved "https://registry.yarnpkg.com/ipaddr.js/-/ipaddr.js-1.9.1.tgz#bff38543eeb8984825079ff3a2a8e6cbd46781b3" 588 | integrity sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g== 589 | 590 | is-plain-object@^5.0.0: 591 | version "5.0.0" 592 | resolved "https://registry.yarnpkg.com/is-plain-object/-/is-plain-object-5.0.0.tgz#4427f50ab3429e9025ea7d52e9043a9ef4159344" 593 | integrity sha512-VRSzKkbMm5jMDoKLbltAkFQ5Qr7VDiTFGXxYFXXowVj387GeGNOCsOH6Msy00SGZ3Fp84b1Naa1psqgcCIEP5Q== 594 | 595 | lodash.snakecase@^4.1.1: 596 | version "4.1.1" 597 | resolved "https://registry.yarnpkg.com/lodash.snakecase/-/lodash.snakecase-4.1.1.tgz#39d714a35357147837aefd64b5dcbb16becd8f8d" 598 | integrity sha1-OdcUo1NXFHg3rv1ktdy7Fr7Nj40= 599 | 600 | make-error@^1.1.1: 601 | version "1.3.6" 602 | resolved "https://registry.yarnpkg.com/make-error/-/make-error-1.3.6.tgz#2eb2e37ea9b67c4891f684a1394799af484cf7a2" 603 | integrity sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw== 604 | 605 | media-typer@0.3.0: 606 | version "0.3.0" 607 | resolved "https://registry.yarnpkg.com/media-typer/-/media-typer-0.3.0.tgz#8710d7af0aa626f8fffa1ce00168545263255748" 608 | integrity sha1-hxDXrwqmJvj/+hzgAWhUUmMlV0g= 609 | 610 | merge-descriptors@1.0.1: 611 | version "1.0.1" 612 | resolved "https://registry.yarnpkg.com/merge-descriptors/-/merge-descriptors-1.0.1.tgz#b00aaa556dd8b44568150ec9d1b953f3f90cbb61" 613 | integrity sha1-sAqqVW3YtEVoFQ7J0blT8/kMu2E= 614 | 615 | methods@~1.1.2: 616 | version "1.1.2" 617 | resolved "https://registry.yarnpkg.com/methods/-/methods-1.1.2.tgz#5529a4d67654134edcc5266656835b0f851afcee" 618 | integrity sha1-VSmk1nZUE07cxSZmVoNbD4Ua/O4= 619 | 620 | mime-db@1.52.0: 621 | version "1.52.0" 622 | resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.52.0.tgz#bbabcdc02859f4987301c856e3387ce5ec43bf70" 623 | integrity sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg== 624 | 625 | mime-types@^2.1.12, mime-types@~2.1.24, mime-types@~2.1.34: 626 | version "2.1.35" 627 | resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.35.tgz#381a871b62a734450660ae3deee44813f70d959a" 628 | integrity sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw== 629 | dependencies: 630 | mime-db "1.52.0" 631 | 632 | mime@1.6.0: 633 | version "1.6.0" 634 | resolved "https://registry.yarnpkg.com/mime/-/mime-1.6.0.tgz#32cd9e5c64553bd58d19a568af452acff04981b1" 635 | integrity sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg== 636 | 637 | ms@2.0.0: 638 | version "2.0.0" 639 | resolved "https://registry.yarnpkg.com/ms/-/ms-2.0.0.tgz#5608aeadfc00be6c2901df5f9861788de0d597c8" 640 | integrity sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g= 641 | 642 | ms@2.1.3: 643 | version "2.1.3" 644 | resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.3.tgz#574c8138ce1d2b5861f0b44579dbadd60c6615b2" 645 | integrity sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA== 646 | 647 | negotiator@0.6.3: 648 | version "0.6.3" 649 | resolved "https://registry.yarnpkg.com/negotiator/-/negotiator-0.6.3.tgz#58e323a72fedc0d6f9cd4d31fe49f51479590ccd" 650 | integrity sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg== 651 | 652 | node-fetch@^2.6.7: 653 | version "2.6.7" 654 | resolved "https://registry.yarnpkg.com/node-fetch/-/node-fetch-2.6.7.tgz#24de9fba827e3b4ae44dc8b20256a379160052ad" 655 | integrity sha512-ZjMPFEfVx5j+y2yF35Kzx5sF7kDzxuDj6ziH4FFbOp87zKDZNx8yExJIb05OGF4Nlt9IHFIMBkRl41VdvcNdbQ== 656 | dependencies: 657 | whatwg-url "^5.0.0" 658 | 659 | object-inspect@^1.9.0: 660 | version "1.12.0" 661 | resolved "https://registry.yarnpkg.com/object-inspect/-/object-inspect-1.12.0.tgz#6e2c120e868fd1fd18cb4f18c31741d0d6e776f0" 662 | integrity sha512-Ho2z80bVIvJloH+YzRmpZVQe87+qASmBUKZDWgx9cu+KDrX2ZDH/3tMy+gXbZETVGs2M8YdxObOh7XAtim9Y0g== 663 | 664 | on-finished@2.4.1: 665 | version "2.4.1" 666 | resolved "https://registry.yarnpkg.com/on-finished/-/on-finished-2.4.1.tgz#58c8c44116e54845ad57f14ab10b03533184ac3f" 667 | integrity sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg== 668 | dependencies: 669 | ee-first "1.1.1" 670 | 671 | once@^1.4.0: 672 | version "1.4.0" 673 | resolved "https://registry.yarnpkg.com/once/-/once-1.4.0.tgz#583b1aa775961d4b113ac17d9c50baef9dd76bd1" 674 | integrity sha1-WDsap3WWHUsROsF9nFC6753Xa9E= 675 | dependencies: 676 | wrappy "1" 677 | 678 | parseurl@~1.3.3: 679 | version "1.3.3" 680 | resolved "https://registry.yarnpkg.com/parseurl/-/parseurl-1.3.3.tgz#9da19e7bee8d12dff0513ed5b76957793bc2e8d4" 681 | integrity sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ== 682 | 683 | path-to-regexp@0.1.7: 684 | version "0.1.7" 685 | resolved "https://registry.yarnpkg.com/path-to-regexp/-/path-to-regexp-0.1.7.tgz#df604178005f522f15eb4490e7247a1bfaa67f8c" 686 | integrity sha1-32BBeABfUi8V60SQ5yR6G/qmf4w= 687 | 688 | proxy-addr@~2.0.7: 689 | version "2.0.7" 690 | resolved "https://registry.yarnpkg.com/proxy-addr/-/proxy-addr-2.0.7.tgz#f19fe69ceab311eeb94b42e70e8c2070f9ba1025" 691 | integrity sha512-llQsMLSUDUPT44jdrU/O37qlnifitDP+ZwrmmZcoSKyLKvtZxpyV0n2/bD/N4tBAAZ/gJEdZU7KMraoK1+XYAg== 692 | dependencies: 693 | forwarded "0.2.0" 694 | ipaddr.js "1.9.1" 695 | 696 | qs@6.10.3: 697 | version "6.10.3" 698 | resolved "https://registry.yarnpkg.com/qs/-/qs-6.10.3.tgz#d6cde1b2ffca87b5aa57889816c5f81535e22e8e" 699 | integrity sha512-wr7M2E0OFRfIfJZjKGieI8lBKb7fRCH4Fv5KNPEs7gJ8jadvotdsS08PzOKR7opXhZ/Xkjtt3WF9g38drmyRqQ== 700 | dependencies: 701 | side-channel "^1.0.4" 702 | 703 | range-parser@~1.2.1: 704 | version "1.2.1" 705 | resolved "https://registry.yarnpkg.com/range-parser/-/range-parser-1.2.1.tgz#3cf37023d199e1c24d1a55b84800c2f3e6468031" 706 | integrity sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg== 707 | 708 | raw-body@2.5.1: 709 | version "2.5.1" 710 | resolved "https://registry.yarnpkg.com/raw-body/-/raw-body-2.5.1.tgz#fe1b1628b181b700215e5fd42389f98b71392857" 711 | integrity sha512-qqJBtEyVgS0ZmPGdCFPWJ3FreoqvG4MVQln/kCgF7Olq95IbOp0/BWyMwbdtn4VTvkM8Y7khCQ2Xgk/tcrCXig== 712 | dependencies: 713 | bytes "3.1.2" 714 | http-errors "2.0.0" 715 | iconv-lite "0.4.24" 716 | unpipe "1.0.0" 717 | 718 | safe-buffer@5.2.1: 719 | version "5.2.1" 720 | resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.2.1.tgz#1eaf9fa9bdb1fdd4ec75f58f9cdb4e6b7827eec6" 721 | integrity sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ== 722 | 723 | "safer-buffer@>= 2.1.2 < 3": 724 | version "2.1.2" 725 | resolved "https://registry.yarnpkg.com/safer-buffer/-/safer-buffer-2.1.2.tgz#44fa161b0187b9549dd84bb91802f9bd8385cd6a" 726 | integrity sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg== 727 | 728 | send@0.18.0: 729 | version "0.18.0" 730 | resolved "https://registry.yarnpkg.com/send/-/send-0.18.0.tgz#670167cc654b05f5aa4a767f9113bb371bc706be" 731 | integrity sha512-qqWzuOjSFOuqPjFe4NOsMLafToQQwBSOEpS+FwEt3A2V3vKubTquT3vmLTQpFgMXp8AlFWFuP1qKaJZOtPpVXg== 732 | dependencies: 733 | debug "2.6.9" 734 | depd "2.0.0" 735 | destroy "1.2.0" 736 | encodeurl "~1.0.2" 737 | escape-html "~1.0.3" 738 | etag "~1.8.1" 739 | fresh "0.5.2" 740 | http-errors "2.0.0" 741 | mime "1.6.0" 742 | ms "2.1.3" 743 | on-finished "2.4.1" 744 | range-parser "~1.2.1" 745 | statuses "2.0.1" 746 | 747 | serve-static@1.15.0: 748 | version "1.15.0" 749 | resolved "https://registry.yarnpkg.com/serve-static/-/serve-static-1.15.0.tgz#faaef08cffe0a1a62f60cad0c4e513cff0ac9540" 750 | integrity sha512-XGuRDNjXUijsUL0vl6nSD7cwURuzEgglbOaFuZM9g3kwDXOWVTck0jLzjPzGD+TazWbboZYu52/9/XPdUgne9g== 751 | dependencies: 752 | encodeurl "~1.0.2" 753 | escape-html "~1.0.3" 754 | parseurl "~1.3.3" 755 | send "0.18.0" 756 | 757 | setprototypeof@1.2.0: 758 | version "1.2.0" 759 | resolved "https://registry.yarnpkg.com/setprototypeof/-/setprototypeof-1.2.0.tgz#66c9a24a73f9fc28cbe66b09fed3d33dcaf1b424" 760 | integrity sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw== 761 | 762 | side-channel@^1.0.4: 763 | version "1.0.4" 764 | resolved "https://registry.yarnpkg.com/side-channel/-/side-channel-1.0.4.tgz#efce5c8fdc104ee751b25c58d4290011fa5ea2cf" 765 | integrity sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw== 766 | dependencies: 767 | call-bind "^1.0.0" 768 | get-intrinsic "^1.0.2" 769 | object-inspect "^1.9.0" 770 | 771 | statuses@2.0.1: 772 | version "2.0.1" 773 | resolved "https://registry.yarnpkg.com/statuses/-/statuses-2.0.1.tgz#55cb000ccf1d48728bd23c685a063998cf1a1b63" 774 | integrity sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ== 775 | 776 | toidentifier@1.0.1: 777 | version "1.0.1" 778 | resolved "https://registry.yarnpkg.com/toidentifier/-/toidentifier-1.0.1.tgz#3be34321a88a820ed1bd80dfaa33e479fbb8dd35" 779 | integrity sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA== 780 | 781 | tr46@~0.0.3: 782 | version "0.0.3" 783 | resolved "https://registry.yarnpkg.com/tr46/-/tr46-0.0.3.tgz#8184fd347dac9cdc185992f3a6622e14b9d9ab6a" 784 | integrity sha1-gYT9NH2snNwYWZLzpmIuFLnZq2o= 785 | 786 | ts-mixer@^6.0.1: 787 | version "6.0.1" 788 | resolved "https://registry.yarnpkg.com/ts-mixer/-/ts-mixer-6.0.1.tgz#7c2627fb98047eb5f3c7f2fee39d1521d18fe87a" 789 | integrity sha512-hvE+ZYXuINrx6Ei6D6hz+PTim0Uf++dYbK9FFifLNwQj+RwKquhQpn868yZsCtJYiclZF1u8l6WZxxKi+vv7Rg== 790 | 791 | ts-node@^10.7.0: 792 | version "10.7.0" 793 | resolved "https://registry.yarnpkg.com/ts-node/-/ts-node-10.7.0.tgz#35d503d0fab3e2baa672a0e94f4b40653c2463f5" 794 | integrity sha512-TbIGS4xgJoX2i3do417KSaep1uRAW/Lu+WAL2doDHC0D6ummjirVOXU5/7aiZotbQ5p1Zp9tP7U6cYhA0O7M8A== 795 | dependencies: 796 | "@cspotcode/source-map-support" "0.7.0" 797 | "@tsconfig/node10" "^1.0.7" 798 | "@tsconfig/node12" "^1.0.7" 799 | "@tsconfig/node14" "^1.0.0" 800 | "@tsconfig/node16" "^1.0.2" 801 | acorn "^8.4.1" 802 | acorn-walk "^8.1.1" 803 | arg "^4.1.0" 804 | create-require "^1.1.0" 805 | diff "^4.0.1" 806 | make-error "^1.1.1" 807 | v8-compile-cache-lib "^3.0.0" 808 | yn "3.1.1" 809 | 810 | tslib@^2.3.1: 811 | version "2.4.0" 812 | resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.4.0.tgz#7cecaa7f073ce680a05847aa77be941098f36dc3" 813 | integrity sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ== 814 | 815 | type-is@~1.6.18: 816 | version "1.6.18" 817 | resolved "https://registry.yarnpkg.com/type-is/-/type-is-1.6.18.tgz#4e552cd05df09467dcbc4ef739de89f2cf37c131" 818 | integrity sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g== 819 | dependencies: 820 | media-typer "0.3.0" 821 | mime-types "~2.1.24" 822 | 823 | typescript@^4.6.3: 824 | version "4.6.3" 825 | resolved "https://registry.yarnpkg.com/typescript/-/typescript-4.6.3.tgz#eefeafa6afdd31d725584c67a0eaba80f6fc6c6c" 826 | integrity sha512-yNIatDa5iaofVozS/uQJEl3JRWLKKGJKh6Yaiv0GLGSuhpFJe7P3SbHZ8/yjAHRQwKRoA6YZqlfjXWmVzoVSMw== 827 | 828 | undici@^4.16.0: 829 | version "4.16.0" 830 | resolved "https://registry.yarnpkg.com/undici/-/undici-4.16.0.tgz#469bb87b3b918818d3d7843d91a1d08da357d5ff" 831 | integrity sha512-tkZSECUYi+/T1i4u+4+lwZmQgLXd4BLGlrc7KZPcLIW7Jpq99+Xpc30ONv7nS6F5UNOxp/HBZSSL9MafUrvJbw== 832 | 833 | universal-user-agent@^6.0.0: 834 | version "6.0.0" 835 | resolved "https://registry.yarnpkg.com/universal-user-agent/-/universal-user-agent-6.0.0.tgz#3381f8503b251c0d9cd21bc1de939ec9df5480ee" 836 | integrity sha512-isyNax3wXoKaulPDZWHQqbmIx1k2tb9fb3GGDBRxCscfYV2Ch7WxPArBsFEG8s/safwXTT7H4QGhaIkTp9447w== 837 | 838 | unpipe@1.0.0, unpipe@~1.0.0: 839 | version "1.0.0" 840 | resolved "https://registry.yarnpkg.com/unpipe/-/unpipe-1.0.0.tgz#b2bf4ee8514aae6165b4817829d21b2ef49904ec" 841 | integrity sha1-sr9O6FFKrmFltIF4KdIbLvSZBOw= 842 | 843 | utils-merge@1.0.1: 844 | version "1.0.1" 845 | resolved "https://registry.yarnpkg.com/utils-merge/-/utils-merge-1.0.1.tgz#9f95710f50a267947b2ccc124741c1028427e713" 846 | integrity sha1-n5VxD1CiZ5R7LMwSR0HBAoQn5xM= 847 | 848 | v8-compile-cache-lib@^3.0.0: 849 | version "3.0.1" 850 | resolved "https://registry.yarnpkg.com/v8-compile-cache-lib/-/v8-compile-cache-lib-3.0.1.tgz#6336e8d71965cb3d35a1bbb7868445a7c05264bf" 851 | integrity sha512-wa7YjyUGfNZngI/vtK0UHAN+lgDCxBPCylVXGp0zu59Fz5aiGtNXaq3DhIov063MorB+VfufLh3JlF2KdTK3xg== 852 | 853 | vary@~1.1.2: 854 | version "1.1.2" 855 | resolved "https://registry.yarnpkg.com/vary/-/vary-1.1.2.tgz#2299f02c6ded30d4a5961b0b9f74524a18f634fc" 856 | integrity sha1-IpnwLG3tMNSllhsLn3RSShj2NPw= 857 | 858 | webidl-conversions@^3.0.0: 859 | version "3.0.1" 860 | resolved "https://registry.yarnpkg.com/webidl-conversions/-/webidl-conversions-3.0.1.tgz#24534275e2a7bc6be7bc86611cc16ae0a5654871" 861 | integrity sha1-JFNCdeKnvGvnvIZhHMFq4KVlSHE= 862 | 863 | whatwg-url@^5.0.0: 864 | version "5.0.0" 865 | resolved "https://registry.yarnpkg.com/whatwg-url/-/whatwg-url-5.0.0.tgz#966454e8765462e37644d3626f6742ce8b70965d" 866 | integrity sha1-lmRU6HZUYuN2RNNib2dCzotwll0= 867 | dependencies: 868 | tr46 "~0.0.3" 869 | webidl-conversions "^3.0.0" 870 | 871 | wrappy@1: 872 | version "1.0.2" 873 | resolved "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f" 874 | integrity sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8= 875 | 876 | ws@^8.5.0: 877 | version "8.5.0" 878 | resolved "https://registry.yarnpkg.com/ws/-/ws-8.5.0.tgz#bfb4be96600757fe5382de12c670dab984a1ed4f" 879 | integrity sha512-BWX0SWVgLPzYwF8lTzEy1egjhS4S4OEAHfsO8o65WOVsrnSRGaSiUaa9e0ggGlkMTtBlmOpEXiie9RUcBO86qg== 880 | 881 | yn@3.1.1: 882 | version "3.1.1" 883 | resolved "https://registry.yarnpkg.com/yn/-/yn-3.1.1.tgz#1e87401a09d767c1d5eab26a6e4c185182d2eb50" 884 | integrity sha512-Ux4ygGWsu2c7isFWe8Yu1YluJmqVhxqK2cLXNQA5AcC3QfbGNpM7fu0Y8b/z16pXLnFxZYvWhd3fhBY9DLmC6Q== 885 | --------------------------------------------------------------------------------