├── .gitignore ├── LICENSE ├── README.md ├── example.env ├── package-lock.json ├── package.json └── src ├── commands ├── cmdHandler.js ├── normal │ ├── ;-;.js │ ├── help.js │ ├── prefix.js │ └── repolist.js └── slash │ ├── demote.js │ ├── help.js │ ├── loa.js │ ├── poll.js │ ├── prefix.js │ ├── repolist.js │ └── suggest.js ├── config.json ├── examples ├── normal │ ├── button.js │ ├── embed.js │ └── randomResponse.js └── slash │ ├── button.js │ ├── embed.js │ ├── option.js │ └── randomResponse.js └── index.js /.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .env -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2022 AvdanOS 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # Tinan 2 | 3 | The Discord Bot for the AvdanOS Community Discord server, made using discord.js v13.8. 4 | 5 | ## Setup 6 | 7 | 1. Make a contribution fork of this repository. 8 | 9 | 2. Go to the [Discord Developer Portal](https://discord.com/developers/applications) and log in with your account. 10 | 11 | 3. Click on the "New Application" button near your profile picture on the upper right side of your screen and create a new application. Name it anything you want. 12 | 13 | 4. Click on the "Bot" button on the left side of your screen and create a new bot. 14 | 15 | 5. Invite the bot to your server: 16 | 17 | 1. Click on "OAuth2", afterward "URL Generator". Select `bot` and `applications.commands`. 18 | 19 | 2. Select "Administrator" in the list of bot permissions. 20 | 21 | 3. Copy the link at the bottom of the page and paste it into your search bar. Select the server where you want your bot to be in the dropdown list. 22 | 23 | 6. Reset your bot's token and copy it. It will be used later. 24 | 25 | 7. Inside the `src` folder, make a `.env` file, and type `DISCORD_TOKEN=your token` and `PREFIX=your prefix`. 26 | 27 | 8. Get your Discord server ID: 28 | 29 | 1. Enable developer mode by going into Settings (near your profile picture at the bottom) > Advanced > Developer Mode. 30 | 31 | 2. Copy your server ID by right clicking the server icon and clicking "Copy ID". 32 | 33 | 9. Inside the `src/commands` folder, open `cmdHandler.js` and find `const goosStanding`, and replace the number in the parentheses (after `message.guild.emojis.fetch`) with the copied ID. 34 | 35 | 10. In terminal, run `npm install` to install all the necessary modules/ 36 | 37 | 11. Run `cd src` and `node .` to launch the bot. 38 | 39 | ## Adding commands 40 | 41 | In `src/commands`, there are 2 `example.js` files. You can use them as a reference to build new commands. 42 | 43 | ## Contribution 44 | 45 | Remember to put a short and concise list of changes to make the review process easier. **Pull Requests on this repository won't be reviewed often due to the main focus being the Desktop Environment.** 46 | -------------------------------------------------------------------------------- /example.env: -------------------------------------------------------------------------------- 1 | DISCORD_TOKEN='' 2 | -------------------------------------------------------------------------------- /package-lock.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "tinan", 3 | "lockfileVersion": 2, 4 | "requires": true, 5 | "packages": { 6 | "": { 7 | "name": "tinan", 8 | "license": "MIT", 9 | "dependencies": { 10 | "@discordjs/builders": "^0.15.0", 11 | "@octokit/webhooks": "^9.26.0", 12 | "discord.js": "^13.8.0", 13 | "dotenv": "^16.0.1", 14 | "eventsource": "^2.0.2", 15 | "nodemon": "^2.0.18", 16 | "octokit": "^1.8.0" 17 | } 18 | }, 19 | "node_modules/@discordjs/builders": { 20 | "version": "0.15.0", 21 | "resolved": "https://registry.npmjs.org/@discordjs/builders/-/builders-0.15.0.tgz", 22 | "integrity": "sha512-w1UfCPzx2iKycn6qh/f0c+PcDpcTHzHr7TXALXu/a4gKHGamiSg3lP8GhYswweSJk/Q5cbFLHZUsnoY3MVKNAg==", 23 | "dependencies": { 24 | "@sapphire/shapeshift": "^3.1.0", 25 | "@sindresorhus/is": "^4.6.0", 26 | "discord-api-types": "^0.33.3", 27 | "fast-deep-equal": "^3.1.3", 28 | "ts-mixer": "^6.0.1", 29 | "tslib": "^2.4.0" 30 | }, 31 | "engines": { 32 | "node": ">=16.9.0" 33 | } 34 | }, 35 | "node_modules/@discordjs/collection": { 36 | "version": "0.7.0", 37 | "resolved": "https://registry.npmjs.org/@discordjs/collection/-/collection-0.7.0.tgz", 38 | "integrity": "sha512-R5i8Wb8kIcBAFEPLLf7LVBQKBDYUL+ekb23sOgpkpyGT+V4P7V83wTxcsqmX+PbqHt4cEHn053uMWfRqh/Z/nA==", 39 | "engines": { 40 | "node": ">=16.9.0" 41 | } 42 | }, 43 | "node_modules/@octokit/app": { 44 | "version": "12.0.5", 45 | "resolved": "https://registry.npmjs.org/@octokit/app/-/app-12.0.5.tgz", 46 | "integrity": "sha512-lM3pIfx2h+UbvsXHFVs1ApJ9Rmp8LO4ciFSr5q/9MdHmhsH6WtwayieUn875xwB77IoR9r8czxxxASu2WCtdeA==", 47 | "dependencies": { 48 | "@octokit/auth-app": "^3.3.0", 49 | "@octokit/auth-unauthenticated": "^2.0.4", 50 | "@octokit/core": "^3.4.0", 51 | "@octokit/oauth-app": "^3.3.2", 52 | "@octokit/plugin-paginate-rest": "^2.13.3", 53 | "@octokit/types": "^6.27.1", 54 | "@octokit/webhooks": "^9.0.1" 55 | } 56 | }, 57 | "node_modules/@octokit/auth-app": { 58 | "version": "3.6.1", 59 | "resolved": "https://registry.npmjs.org/@octokit/auth-app/-/auth-app-3.6.1.tgz", 60 | "integrity": "sha512-6oa6CFphIYI7NxxHrdVOzhG7hkcKyGyYocg7lNDSJVauVOLtylg8hNJzoUyPAYKKK0yUeoZamE/lMs2tG+S+JA==", 61 | "dependencies": { 62 | "@octokit/auth-oauth-app": "^4.3.0", 63 | "@octokit/auth-oauth-user": "^1.2.3", 64 | "@octokit/request": "^5.6.0", 65 | "@octokit/request-error": "^2.1.0", 66 | "@octokit/types": "^6.0.3", 67 | "@types/lru-cache": "^5.1.0", 68 | "deprecation": "^2.3.1", 69 | "lru-cache": "^6.0.0", 70 | "universal-github-app-jwt": "^1.0.1", 71 | "universal-user-agent": "^6.0.0" 72 | } 73 | }, 74 | "node_modules/@octokit/auth-oauth-app": { 75 | "version": "4.3.1", 76 | "resolved": "https://registry.npmjs.org/@octokit/auth-oauth-app/-/auth-oauth-app-4.3.1.tgz", 77 | "integrity": "sha512-FXkKcGtTXS2987rp11mSuhMOXDw8Iy/ED9aXs83T29VeMEWjv40q4ytC0voUDxkBC/of1QYOPQUAdI2tv/dwNg==", 78 | "dependencies": { 79 | "@octokit/auth-oauth-device": "^3.1.1", 80 | "@octokit/auth-oauth-user": "^1.2.1", 81 | "@octokit/request": "^5.6.3", 82 | "@octokit/types": "^6.0.3", 83 | "@types/btoa-lite": "^1.0.0", 84 | "btoa-lite": "^1.0.0", 85 | "universal-user-agent": "^6.0.0" 86 | } 87 | }, 88 | "node_modules/@octokit/auth-oauth-device": { 89 | "version": "3.1.2", 90 | "resolved": "https://registry.npmjs.org/@octokit/auth-oauth-device/-/auth-oauth-device-3.1.2.tgz", 91 | "integrity": "sha512-w7Po4Ck6N2aAn2VQyKLuojruiyKROTBv4qs6IwE5rbwF7HhBXXp4A/NKmkpoFIZkiXQtM+N8QtkSck4ApYWdGg==", 92 | "dependencies": { 93 | "@octokit/oauth-methods": "^1.1.0", 94 | "@octokit/request": "^5.4.14", 95 | "@octokit/types": "^6.10.0", 96 | "universal-user-agent": "^6.0.0" 97 | } 98 | }, 99 | "node_modules/@octokit/auth-oauth-user": { 100 | "version": "1.3.0", 101 | "resolved": "https://registry.npmjs.org/@octokit/auth-oauth-user/-/auth-oauth-user-1.3.0.tgz", 102 | "integrity": "sha512-3QC/TAdk7onnxfyZ24BnJRfZv8TRzQK7SEFUS9vLng4Vv6Hv6I64ujdk/CUkREec8lhrwU764SZ/d+yrjjqhaQ==", 103 | "dependencies": { 104 | "@octokit/auth-oauth-device": "^3.1.1", 105 | "@octokit/oauth-methods": "^1.1.0", 106 | "@octokit/request": "^5.4.14", 107 | "@octokit/types": "^6.12.2", 108 | "btoa-lite": "^1.0.0", 109 | "universal-user-agent": "^6.0.0" 110 | } 111 | }, 112 | "node_modules/@octokit/auth-token": { 113 | "version": "2.5.0", 114 | "resolved": "https://registry.npmjs.org/@octokit/auth-token/-/auth-token-2.5.0.tgz", 115 | "integrity": "sha512-r5FVUJCOLl19AxiuZD2VRZ/ORjp/4IN98Of6YJoJOkY75CIBuYfmiNHGrDwXr+aLGG55igl9QrxX3hbiXlLb+g==", 116 | "dependencies": { 117 | "@octokit/types": "^6.0.3" 118 | } 119 | }, 120 | "node_modules/@octokit/auth-unauthenticated": { 121 | "version": "2.1.0", 122 | "resolved": "https://registry.npmjs.org/@octokit/auth-unauthenticated/-/auth-unauthenticated-2.1.0.tgz", 123 | "integrity": "sha512-+baofLfSL0CAv3CfGQ9rxiZZQEX8VNJMGuuS4PgrMRBUL52Ho5+hQYb63UJQshw7EXYMPDZxbXznc0y33cbPqw==", 124 | "dependencies": { 125 | "@octokit/request-error": "^2.1.0", 126 | "@octokit/types": "^6.0.3" 127 | } 128 | }, 129 | "node_modules/@octokit/core": { 130 | "version": "3.6.0", 131 | "resolved": "https://registry.npmjs.org/@octokit/core/-/core-3.6.0.tgz", 132 | "integrity": "sha512-7RKRKuA4xTjMhY+eG3jthb3hlZCsOwg3rztWh75Xc+ShDWOfDDATWbeZpAHBNRpm4Tv9WgBMOy1zEJYXG6NJ7Q==", 133 | "dependencies": { 134 | "@octokit/auth-token": "^2.4.4", 135 | "@octokit/graphql": "^4.5.8", 136 | "@octokit/request": "^5.6.3", 137 | "@octokit/request-error": "^2.0.5", 138 | "@octokit/types": "^6.0.3", 139 | "before-after-hook": "^2.2.0", 140 | "universal-user-agent": "^6.0.0" 141 | } 142 | }, 143 | "node_modules/@octokit/endpoint": { 144 | "version": "6.0.12", 145 | "resolved": "https://registry.npmjs.org/@octokit/endpoint/-/endpoint-6.0.12.tgz", 146 | "integrity": "sha512-lF3puPwkQWGfkMClXb4k/eUT/nZKQfxinRWJrdZaJO85Dqwo/G0yOC434Jr2ojwafWJMYqFGFa5ms4jJUgujdA==", 147 | "dependencies": { 148 | "@octokit/types": "^6.0.3", 149 | "is-plain-object": "^5.0.0", 150 | "universal-user-agent": "^6.0.0" 151 | } 152 | }, 153 | "node_modules/@octokit/graphql": { 154 | "version": "4.8.0", 155 | "resolved": "https://registry.npmjs.org/@octokit/graphql/-/graphql-4.8.0.tgz", 156 | "integrity": "sha512-0gv+qLSBLKF0z8TKaSKTsS39scVKF9dbMxJpj3U0vC7wjNWFuIpL/z76Qe2fiuCbDRcJSavkXsVtMS6/dtQQsg==", 157 | "dependencies": { 158 | "@octokit/request": "^5.6.0", 159 | "@octokit/types": "^6.0.3", 160 | "universal-user-agent": "^6.0.0" 161 | } 162 | }, 163 | "node_modules/@octokit/oauth-app": { 164 | "version": "3.6.3", 165 | "resolved": "https://registry.npmjs.org/@octokit/oauth-app/-/oauth-app-3.6.3.tgz", 166 | "integrity": "sha512-OEJvIW/RueTjO3Q9Fz0MCUQpvdGEUNPZrA60b8TNO+/rwPHAA68pB5sFZqKG9eg+nBZtfLXm9HujL8fXJPHm+g==", 167 | "dependencies": { 168 | "@octokit/auth-oauth-app": "^4.0.0", 169 | "@octokit/auth-oauth-user": "^1.3.0", 170 | "@octokit/auth-unauthenticated": "^2.0.0", 171 | "@octokit/core": "^3.3.2", 172 | "@octokit/oauth-authorization-url": "^4.2.1", 173 | "@octokit/oauth-methods": "^1.2.2", 174 | "@types/aws-lambda": "^8.10.83", 175 | "fromentries": "^1.3.1", 176 | "universal-user-agent": "^6.0.0" 177 | }, 178 | "optionalDependencies": { 179 | "aws-lambda": "^1.0.7" 180 | } 181 | }, 182 | "node_modules/@octokit/oauth-authorization-url": { 183 | "version": "4.3.3", 184 | "resolved": "https://registry.npmjs.org/@octokit/oauth-authorization-url/-/oauth-authorization-url-4.3.3.tgz", 185 | "integrity": "sha512-lhP/t0i8EwTmayHG4dqLXgU+uPVys4WD/qUNvC+HfB1S1dyqULm5Yx9uKc1x79aP66U1Cb4OZeW8QU/RA9A4XA==" 186 | }, 187 | "node_modules/@octokit/oauth-methods": { 188 | "version": "1.2.6", 189 | "resolved": "https://registry.npmjs.org/@octokit/oauth-methods/-/oauth-methods-1.2.6.tgz", 190 | "integrity": "sha512-nImHQoOtKnSNn05uk2o76om1tJWiAo4lOu2xMAHYsNr0fwopP+Dv+2MlGvaMMlFjoqVd3fF3X5ZDTKCsqgmUaQ==", 191 | "dependencies": { 192 | "@octokit/oauth-authorization-url": "^4.3.1", 193 | "@octokit/request": "^5.4.14", 194 | "@octokit/request-error": "^2.0.5", 195 | "@octokit/types": "^6.12.2", 196 | "btoa-lite": "^1.0.0" 197 | } 198 | }, 199 | "node_modules/@octokit/openapi-types": { 200 | "version": "12.4.0", 201 | "resolved": "https://registry.npmjs.org/@octokit/openapi-types/-/openapi-types-12.4.0.tgz", 202 | "integrity": "sha512-Npcb7Pv30b33U04jvcD7l75yLU0mxhuX2Xqrn51YyZ5WTkF04bpbxLaZ6GcaTqu03WZQHoO/Gbfp95NGRueDUA==" 203 | }, 204 | "node_modules/@octokit/plugin-paginate-rest": { 205 | "version": "2.19.0", 206 | "resolved": "https://registry.npmjs.org/@octokit/plugin-paginate-rest/-/plugin-paginate-rest-2.19.0.tgz", 207 | "integrity": "sha512-hQ4Qysg2hNmEMuZeJkvyzM4eSZiTifOKqYAMsW8FnxFKowhuwWICSgBQ9Gn9GpUmgKB7qaf1hFvMjYaTAg5jQA==", 208 | "dependencies": { 209 | "@octokit/types": "^6.36.0" 210 | }, 211 | "peerDependencies": { 212 | "@octokit/core": ">=2" 213 | } 214 | }, 215 | "node_modules/@octokit/plugin-rest-endpoint-methods": { 216 | "version": "5.15.0", 217 | "resolved": "https://registry.npmjs.org/@octokit/plugin-rest-endpoint-methods/-/plugin-rest-endpoint-methods-5.15.0.tgz", 218 | "integrity": "sha512-Gsw9+Xm56jVhfbJoy4pt6eOOyf8/3K6CAnx1Sl7U2GhZWcg8MR6YgXWnpfdF69S2ViMXLA7nfvTDAsZpFlkLRw==", 219 | "dependencies": { 220 | "@octokit/types": "^6.36.0", 221 | "deprecation": "^2.3.1" 222 | }, 223 | "peerDependencies": { 224 | "@octokit/core": ">=3" 225 | } 226 | }, 227 | "node_modules/@octokit/plugin-retry": { 228 | "version": "3.0.9", 229 | "resolved": "https://registry.npmjs.org/@octokit/plugin-retry/-/plugin-retry-3.0.9.tgz", 230 | "integrity": "sha512-r+fArdP5+TG6l1Rv/C9hVoty6tldw6cE2pRHNGmFPdyfrc696R6JjrQ3d7HdVqGwuzfyrcaLAKD7K8TX8aehUQ==", 231 | "dependencies": { 232 | "@octokit/types": "^6.0.3", 233 | "bottleneck": "^2.15.3" 234 | } 235 | }, 236 | "node_modules/@octokit/plugin-throttling": { 237 | "version": "3.7.0", 238 | "resolved": "https://registry.npmjs.org/@octokit/plugin-throttling/-/plugin-throttling-3.7.0.tgz", 239 | "integrity": "sha512-qrKT1Yl/KuwGSC6/oHpLBot3ooC9rq0/ryDYBCpkRtoj+R8T47xTMDT6Tk2CxWopFota/8Pi/2SqArqwC0JPow==", 240 | "dependencies": { 241 | "@octokit/types": "^6.0.1", 242 | "bottleneck": "^2.15.3" 243 | }, 244 | "peerDependencies": { 245 | "@octokit/core": "^3.5.0" 246 | } 247 | }, 248 | "node_modules/@octokit/request": { 249 | "version": "5.6.3", 250 | "resolved": "https://registry.npmjs.org/@octokit/request/-/request-5.6.3.tgz", 251 | "integrity": "sha512-bFJl0I1KVc9jYTe9tdGGpAMPy32dLBXXo1dS/YwSCTL/2nd9XeHsY616RE3HPXDVk+a+dBuzyz5YdlXwcDTr2A==", 252 | "dependencies": { 253 | "@octokit/endpoint": "^6.0.1", 254 | "@octokit/request-error": "^2.1.0", 255 | "@octokit/types": "^6.16.1", 256 | "is-plain-object": "^5.0.0", 257 | "node-fetch": "^2.6.7", 258 | "universal-user-agent": "^6.0.0" 259 | } 260 | }, 261 | "node_modules/@octokit/request-error": { 262 | "version": "2.1.0", 263 | "resolved": "https://registry.npmjs.org/@octokit/request-error/-/request-error-2.1.0.tgz", 264 | "integrity": "sha512-1VIvgXxs9WHSjicsRwq8PlR2LR2x6DwsJAaFgzdi0JfJoGSO8mYI/cHJQ+9FbN21aa+DrgNLnwObmyeSC8Rmpg==", 265 | "dependencies": { 266 | "@octokit/types": "^6.0.3", 267 | "deprecation": "^2.0.0", 268 | "once": "^1.4.0" 269 | } 270 | }, 271 | "node_modules/@octokit/types": { 272 | "version": "6.37.0", 273 | "resolved": "https://registry.npmjs.org/@octokit/types/-/types-6.37.0.tgz", 274 | "integrity": "sha512-BXWQhFKRkjX4dVW5L2oYa0hzWOAqsEsujXsQLSdepPoDZfYdubrD1KDGpyNldGXtR8QM/WezDcxcIN1UKJMGPA==", 275 | "dependencies": { 276 | "@octokit/openapi-types": "^12.4.0" 277 | } 278 | }, 279 | "node_modules/@octokit/webhooks": { 280 | "version": "9.26.0", 281 | "resolved": "https://registry.npmjs.org/@octokit/webhooks/-/webhooks-9.26.0.tgz", 282 | "integrity": "sha512-foZlsgrTDwAmD5j2Czn6ji10lbWjGDVsUxTIydjG9KTkAWKJrFapXJgO5SbGxRwfPd3OJdhK3nA2YPqVhxLXqA==", 283 | "dependencies": { 284 | "@octokit/request-error": "^2.0.2", 285 | "@octokit/webhooks-methods": "^2.0.0", 286 | "@octokit/webhooks-types": "5.8.0", 287 | "aggregate-error": "^3.1.0" 288 | } 289 | }, 290 | "node_modules/@octokit/webhooks-methods": { 291 | "version": "2.0.0", 292 | "resolved": "https://registry.npmjs.org/@octokit/webhooks-methods/-/webhooks-methods-2.0.0.tgz", 293 | "integrity": "sha512-35cfQ4YWlnZnmZKmIxlGPUPLtbkF8lr/A/1Sk1eC0ddLMwQN06dOuLc+dI3YLQS+T+MoNt3DIQ0NynwgKPilig==" 294 | }, 295 | "node_modules/@octokit/webhooks-types": { 296 | "version": "5.8.0", 297 | "resolved": "https://registry.npmjs.org/@octokit/webhooks-types/-/webhooks-types-5.8.0.tgz", 298 | "integrity": "sha512-8adktjIb76A7viIdayQSFuBEwOzwhDC+9yxZpKNHjfzrlostHCw0/N7JWpWMObfElwvJMk2fY2l1noENCk9wmw==" 299 | }, 300 | "node_modules/@sapphire/async-queue": { 301 | "version": "1.3.1", 302 | "resolved": "https://registry.npmjs.org/@sapphire/async-queue/-/async-queue-1.3.1.tgz", 303 | "integrity": "sha512-FFTlPOWZX1kDj9xCAsRzH5xEJfawg1lNoYAA+ecOWJMHOfiZYb1uXOI3ne9U4UILSEPwfE68p3T9wUHwIQfR0g==", 304 | "engines": { 305 | "node": ">=v14.0.0", 306 | "npm": ">=7.0.0" 307 | } 308 | }, 309 | "node_modules/@sapphire/shapeshift": { 310 | "version": "3.3.1", 311 | "resolved": "https://registry.npmjs.org/@sapphire/shapeshift/-/shapeshift-3.3.1.tgz", 312 | "integrity": "sha512-PB2e5JHWIMRz9HiN/sIWcNIzXjYvzc3OmeRHYICXreKhetDYf4Zufypr8A48Z/XZLzbMqIka6uoR+2dH58nksg==", 313 | "engines": { 314 | "node": ">=v14.0.0", 315 | "npm": ">=7.0.0" 316 | } 317 | }, 318 | "node_modules/@sindresorhus/is": { 319 | "version": "4.6.0", 320 | "resolved": "https://registry.npmjs.org/@sindresorhus/is/-/is-4.6.0.tgz", 321 | "integrity": "sha512-t09vSN3MdfsyCHoFcTRCH/iUtG7OJ0CsjzB8cjAmKc/va/kIgeDI/TxsigdncE/4be734m0cvIYwNaV4i2XqAw==", 322 | "engines": { 323 | "node": ">=10" 324 | }, 325 | "funding": { 326 | "url": "https://github.com/sindresorhus/is?sponsor=1" 327 | } 328 | }, 329 | "node_modules/@szmarczak/http-timer": { 330 | "version": "1.1.2", 331 | "resolved": "https://registry.npmjs.org/@szmarczak/http-timer/-/http-timer-1.1.2.tgz", 332 | "integrity": "sha512-XIB2XbzHTN6ieIjfIMV9hlVcfPU26s2vafYWQcZHWXHOxiaRZYEDKEwdl129Zyg50+foYV2jCgtrqSA6qNuNSA==", 333 | "dependencies": { 334 | "defer-to-connect": "^1.0.1" 335 | }, 336 | "engines": { 337 | "node": ">=6" 338 | } 339 | }, 340 | "node_modules/@types/aws-lambda": { 341 | "version": "8.10.101", 342 | "resolved": "https://registry.npmjs.org/@types/aws-lambda/-/aws-lambda-8.10.101.tgz", 343 | "integrity": "sha512-84geGyVc0H9P9aGbcg/vkDh5akJq0bEf3tizHNR2d1gcm0wsp9IZ/SW6rPxvgjJFi3OeVxDc8WTKCAjoZbogzg==" 344 | }, 345 | "node_modules/@types/btoa-lite": { 346 | "version": "1.0.0", 347 | "resolved": "https://registry.npmjs.org/@types/btoa-lite/-/btoa-lite-1.0.0.tgz", 348 | "integrity": "sha512-wJsiX1tosQ+J5+bY5LrSahHxr2wT+uME5UDwdN1kg4frt40euqA+wzECkmq4t5QbveHiJepfdThgQrPw6KiSlg==" 349 | }, 350 | "node_modules/@types/jsonwebtoken": { 351 | "version": "8.5.8", 352 | "resolved": "https://registry.npmjs.org/@types/jsonwebtoken/-/jsonwebtoken-8.5.8.tgz", 353 | "integrity": "sha512-zm6xBQpFDIDM6o9r6HSgDeIcLy82TKWctCXEPbJJcXb5AKmi5BNNdLXneixK4lplX3PqIVcwLBCGE/kAGnlD4A==", 354 | "dependencies": { 355 | "@types/node": "*" 356 | } 357 | }, 358 | "node_modules/@types/lru-cache": { 359 | "version": "5.1.1", 360 | "resolved": "https://registry.npmjs.org/@types/lru-cache/-/lru-cache-5.1.1.tgz", 361 | "integrity": "sha512-ssE3Vlrys7sdIzs5LOxCzTVMsU7i9oa/IaW92wF32JFb3CVczqOkru2xspuKczHEbG3nvmPY7IFqVmGGHdNbYw==" 362 | }, 363 | "node_modules/@types/node": { 364 | "version": "18.0.0", 365 | "resolved": "https://registry.npmjs.org/@types/node/-/node-18.0.0.tgz", 366 | "integrity": "sha512-cHlGmko4gWLVI27cGJntjs/Sj8th9aYwplmZFwmmgYQQvL5NUsgVJG7OddLvNfLqYS31KFN0s3qlaD9qCaxACA==" 367 | }, 368 | "node_modules/@types/node-fetch": { 369 | "version": "2.6.2", 370 | "resolved": "https://registry.npmjs.org/@types/node-fetch/-/node-fetch-2.6.2.tgz", 371 | "integrity": "sha512-DHqhlq5jeESLy19TYhLakJ07kNumXWjcDdxXsLUMJZ6ue8VZJj4kLPQVE/2mdHh3xZziNF1xppu5lwmS53HR+A==", 372 | "dependencies": { 373 | "@types/node": "*", 374 | "form-data": "^3.0.0" 375 | } 376 | }, 377 | "node_modules/@types/node-fetch/node_modules/form-data": { 378 | "version": "3.0.1", 379 | "resolved": "https://registry.npmjs.org/form-data/-/form-data-3.0.1.tgz", 380 | "integrity": "sha512-RHkBKtLWUVwd7SqRIvCZMEvAMoGUp0XU+seQiZejj0COz3RI3hWP4sCv3gZWWLjJTd7rGwcsF5eKZGii0r/hbg==", 381 | "dependencies": { 382 | "asynckit": "^0.4.0", 383 | "combined-stream": "^1.0.8", 384 | "mime-types": "^2.1.12" 385 | }, 386 | "engines": { 387 | "node": ">= 6" 388 | } 389 | }, 390 | "node_modules/@types/ws": { 391 | "version": "8.5.3", 392 | "resolved": "https://registry.npmjs.org/@types/ws/-/ws-8.5.3.tgz", 393 | "integrity": "sha512-6YOoWjruKj1uLf3INHH7D3qTXwFfEsg1kf3c0uDdSBJwfa/llkwIjrAGV7j7mVgGNbzTQ3HiHKKDXl6bJPD97w==", 394 | "dependencies": { 395 | "@types/node": "*" 396 | } 397 | }, 398 | "node_modules/abbrev": { 399 | "version": "1.1.1", 400 | "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz", 401 | "integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==" 402 | }, 403 | "node_modules/aggregate-error": { 404 | "version": "3.1.0", 405 | "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-3.1.0.tgz", 406 | "integrity": "sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==", 407 | "dependencies": { 408 | "clean-stack": "^2.0.0", 409 | "indent-string": "^4.0.0" 410 | }, 411 | "engines": { 412 | "node": ">=8" 413 | } 414 | }, 415 | "node_modules/ansi-align": { 416 | "version": "3.0.1", 417 | "resolved": "https://registry.npmjs.org/ansi-align/-/ansi-align-3.0.1.tgz", 418 | "integrity": "sha512-IOfwwBF5iczOjp/WeY4YxyjqAFMQoZufdQWDd19SEExbVLNXqvpzSJ/M7Za4/sCPmQ0+GRquoA7bGcINcxew6w==", 419 | "dependencies": { 420 | "string-width": "^4.1.0" 421 | } 422 | }, 423 | "node_modules/ansi-regex": { 424 | "version": "5.0.1", 425 | "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", 426 | "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", 427 | "engines": { 428 | "node": ">=8" 429 | } 430 | }, 431 | "node_modules/ansi-styles": { 432 | "version": "4.3.0", 433 | "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", 434 | "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", 435 | "dependencies": { 436 | "color-convert": "^2.0.1" 437 | }, 438 | "engines": { 439 | "node": ">=8" 440 | }, 441 | "funding": { 442 | "url": "https://github.com/chalk/ansi-styles?sponsor=1" 443 | } 444 | }, 445 | "node_modules/anymatch": { 446 | "version": "3.1.2", 447 | "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.2.tgz", 448 | "integrity": "sha512-P43ePfOAIupkguHUycrc4qJ9kz8ZiuOUijaETwX7THt0Y/GNK7v0aa8rY816xWjZ7rJdA5XdMcpVFTKMq+RvWg==", 449 | "dependencies": { 450 | "normalize-path": "^3.0.0", 451 | "picomatch": "^2.0.4" 452 | }, 453 | "engines": { 454 | "node": ">= 8" 455 | } 456 | }, 457 | "node_modules/argparse": { 458 | "version": "1.0.10", 459 | "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", 460 | "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", 461 | "optional": true, 462 | "dependencies": { 463 | "sprintf-js": "~1.0.2" 464 | } 465 | }, 466 | "node_modules/asynckit": { 467 | "version": "0.4.0", 468 | "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", 469 | "integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==" 470 | }, 471 | "node_modules/aws-lambda": { 472 | "version": "1.0.7", 473 | "resolved": "https://registry.npmjs.org/aws-lambda/-/aws-lambda-1.0.7.tgz", 474 | "integrity": "sha512-9GNFMRrEMG5y3Jvv+V4azWvc+qNWdWLTjDdhf/zgMlz8haaaLWv0xeAIWxz9PuWUBawsVxy0zZotjCdR3Xq+2w==", 475 | "optional": true, 476 | "dependencies": { 477 | "aws-sdk": "^2.814.0", 478 | "commander": "^3.0.2", 479 | "js-yaml": "^3.14.1", 480 | "watchpack": "^2.0.0-beta.10" 481 | }, 482 | "bin": { 483 | "lambda": "bin/lambda" 484 | } 485 | }, 486 | "node_modules/aws-sdk": { 487 | "version": "2.1161.0", 488 | "resolved": "https://registry.npmjs.org/aws-sdk/-/aws-sdk-2.1161.0.tgz", 489 | "integrity": "sha512-qpOtPovj3xJhdTFBkJgqmSuy5rc7vDu2HtM+S3sLiP8Uhkb3Pn3z7LtTZt5YUnY2lV1DDR9H1aWuRlRDK96k1w==", 490 | "optional": true, 491 | "dependencies": { 492 | "buffer": "4.9.2", 493 | "events": "1.1.1", 494 | "ieee754": "1.1.13", 495 | "jmespath": "0.16.0", 496 | "querystring": "0.2.0", 497 | "sax": "1.2.1", 498 | "url": "0.10.3", 499 | "uuid": "8.0.0", 500 | "xml2js": "0.4.19" 501 | }, 502 | "engines": { 503 | "node": ">= 10.0.0" 504 | } 505 | }, 506 | "node_modules/aws-sdk/node_modules/buffer": { 507 | "version": "4.9.2", 508 | "resolved": "https://registry.npmjs.org/buffer/-/buffer-4.9.2.tgz", 509 | "integrity": "sha512-xq+q3SRMOxGivLhBNaUdC64hDTQwejJ+H0T/NB1XMtTVEwNTrfFF3gAxiyW0Bu/xWEGhjVKgUcMhCrUy2+uCWg==", 510 | "optional": true, 511 | "dependencies": { 512 | "base64-js": "^1.0.2", 513 | "ieee754": "^1.1.4", 514 | "isarray": "^1.0.0" 515 | } 516 | }, 517 | "node_modules/aws-sdk/node_modules/ieee754": { 518 | "version": "1.1.13", 519 | "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.1.13.tgz", 520 | "integrity": "sha512-4vf7I2LYV/HaWerSo3XmlMkp5eZ83i+/CDluXi/IGTs/O1sejBNhTtnxzmRZfvOUqj7lZjqHkeTvpgSFDlWZTg==", 521 | "optional": true 522 | }, 523 | "node_modules/balanced-match": { 524 | "version": "1.0.2", 525 | "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", 526 | "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==" 527 | }, 528 | "node_modules/base64-js": { 529 | "version": "1.5.1", 530 | "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz", 531 | "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==", 532 | "funding": [ 533 | { 534 | "type": "github", 535 | "url": "https://github.com/sponsors/feross" 536 | }, 537 | { 538 | "type": "patreon", 539 | "url": "https://www.patreon.com/feross" 540 | }, 541 | { 542 | "type": "consulting", 543 | "url": "https://feross.org/support" 544 | } 545 | ], 546 | "optional": true 547 | }, 548 | "node_modules/before-after-hook": { 549 | "version": "2.2.2", 550 | "resolved": "https://registry.npmjs.org/before-after-hook/-/before-after-hook-2.2.2.tgz", 551 | "integrity": "sha512-3pZEU3NT5BFUo/AD5ERPWOgQOCZITni6iavr5AUw5AUwQjMlI0kzu5btnyD39AF0gUEsDPwJT+oY1ORBJijPjQ==" 552 | }, 553 | "node_modules/binary-extensions": { 554 | "version": "2.2.0", 555 | "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz", 556 | "integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==", 557 | "engines": { 558 | "node": ">=8" 559 | } 560 | }, 561 | "node_modules/bottleneck": { 562 | "version": "2.19.5", 563 | "resolved": "https://registry.npmjs.org/bottleneck/-/bottleneck-2.19.5.tgz", 564 | "integrity": "sha512-VHiNCbI1lKdl44tGrhNfU3lup0Tj/ZBMJB5/2ZbNXRCPuRCO7ed2mgcK4r17y+KB2EfuYuRaVlwNbAeaWGSpbw==" 565 | }, 566 | "node_modules/boxen": { 567 | "version": "5.1.2", 568 | "resolved": "https://registry.npmjs.org/boxen/-/boxen-5.1.2.tgz", 569 | "integrity": "sha512-9gYgQKXx+1nP8mP7CzFyaUARhg7D3n1dF/FnErWmu9l6JvGpNUN278h0aSb+QjoiKSWG+iZ3uHrcqk0qrY9RQQ==", 570 | "dependencies": { 571 | "ansi-align": "^3.0.0", 572 | "camelcase": "^6.2.0", 573 | "chalk": "^4.1.0", 574 | "cli-boxes": "^2.2.1", 575 | "string-width": "^4.2.2", 576 | "type-fest": "^0.20.2", 577 | "widest-line": "^3.1.0", 578 | "wrap-ansi": "^7.0.0" 579 | }, 580 | "engines": { 581 | "node": ">=10" 582 | }, 583 | "funding": { 584 | "url": "https://github.com/sponsors/sindresorhus" 585 | } 586 | }, 587 | "node_modules/brace-expansion": { 588 | "version": "1.1.11", 589 | "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", 590 | "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", 591 | "dependencies": { 592 | "balanced-match": "^1.0.0", 593 | "concat-map": "0.0.1" 594 | } 595 | }, 596 | "node_modules/braces": { 597 | "version": "3.0.2", 598 | "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", 599 | "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", 600 | "dependencies": { 601 | "fill-range": "^7.0.1" 602 | }, 603 | "engines": { 604 | "node": ">=8" 605 | } 606 | }, 607 | "node_modules/btoa-lite": { 608 | "version": "1.0.0", 609 | "resolved": "https://registry.npmjs.org/btoa-lite/-/btoa-lite-1.0.0.tgz", 610 | "integrity": "sha512-gvW7InbIyF8AicrqWoptdW08pUxuhq8BEgowNajy9RhiE86fmGAGl+bLKo6oB8QP0CkqHLowfN0oJdKC/J6LbA==" 611 | }, 612 | "node_modules/buffer-equal-constant-time": { 613 | "version": "1.0.1", 614 | "resolved": "https://registry.npmjs.org/buffer-equal-constant-time/-/buffer-equal-constant-time-1.0.1.tgz", 615 | "integrity": "sha512-zRpUiDwd/xk6ADqPMATG8vc9VPrkck7T07OIx0gnjmJAnHnTVXNQG3vfvWNuiZIkwu9KrKdA1iJKfsfTVxE6NA==" 616 | }, 617 | "node_modules/cacheable-request": { 618 | "version": "6.1.0", 619 | "resolved": "https://registry.npmjs.org/cacheable-request/-/cacheable-request-6.1.0.tgz", 620 | "integrity": "sha512-Oj3cAGPCqOZX7Rz64Uny2GYAZNliQSqfbePrgAQ1wKAihYmCUnraBtJtKcGR4xz7wF+LoJC+ssFZvv5BgF9Igg==", 621 | "dependencies": { 622 | "clone-response": "^1.0.2", 623 | "get-stream": "^5.1.0", 624 | "http-cache-semantics": "^4.0.0", 625 | "keyv": "^3.0.0", 626 | "lowercase-keys": "^2.0.0", 627 | "normalize-url": "^4.1.0", 628 | "responselike": "^1.0.2" 629 | }, 630 | "engines": { 631 | "node": ">=8" 632 | } 633 | }, 634 | "node_modules/cacheable-request/node_modules/get-stream": { 635 | "version": "5.2.0", 636 | "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-5.2.0.tgz", 637 | "integrity": "sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA==", 638 | "dependencies": { 639 | "pump": "^3.0.0" 640 | }, 641 | "engines": { 642 | "node": ">=8" 643 | }, 644 | "funding": { 645 | "url": "https://github.com/sponsors/sindresorhus" 646 | } 647 | }, 648 | "node_modules/cacheable-request/node_modules/lowercase-keys": { 649 | "version": "2.0.0", 650 | "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-2.0.0.tgz", 651 | "integrity": "sha512-tqNXrS78oMOE73NMxK4EMLQsQowWf8jKooH9g7xPavRT706R6bkQJ6DY2Te7QukaZsulxa30wQ7bk0pm4XiHmA==", 652 | "engines": { 653 | "node": ">=8" 654 | } 655 | }, 656 | "node_modules/camelcase": { 657 | "version": "6.3.0", 658 | "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz", 659 | "integrity": "sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==", 660 | "engines": { 661 | "node": ">=10" 662 | }, 663 | "funding": { 664 | "url": "https://github.com/sponsors/sindresorhus" 665 | } 666 | }, 667 | "node_modules/chalk": { 668 | "version": "4.1.2", 669 | "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", 670 | "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", 671 | "dependencies": { 672 | "ansi-styles": "^4.1.0", 673 | "supports-color": "^7.1.0" 674 | }, 675 | "engines": { 676 | "node": ">=10" 677 | }, 678 | "funding": { 679 | "url": "https://github.com/chalk/chalk?sponsor=1" 680 | } 681 | }, 682 | "node_modules/chalk/node_modules/has-flag": { 683 | "version": "4.0.0", 684 | "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", 685 | "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", 686 | "engines": { 687 | "node": ">=8" 688 | } 689 | }, 690 | "node_modules/chalk/node_modules/supports-color": { 691 | "version": "7.2.0", 692 | "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", 693 | "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", 694 | "dependencies": { 695 | "has-flag": "^4.0.0" 696 | }, 697 | "engines": { 698 | "node": ">=8" 699 | } 700 | }, 701 | "node_modules/chokidar": { 702 | "version": "3.5.3", 703 | "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.3.tgz", 704 | "integrity": "sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==", 705 | "funding": [ 706 | { 707 | "type": "individual", 708 | "url": "https://paulmillr.com/funding/" 709 | } 710 | ], 711 | "dependencies": { 712 | "anymatch": "~3.1.2", 713 | "braces": "~3.0.2", 714 | "glob-parent": "~5.1.2", 715 | "is-binary-path": "~2.1.0", 716 | "is-glob": "~4.0.1", 717 | "normalize-path": "~3.0.0", 718 | "readdirp": "~3.6.0" 719 | }, 720 | "engines": { 721 | "node": ">= 8.10.0" 722 | }, 723 | "optionalDependencies": { 724 | "fsevents": "~2.3.2" 725 | } 726 | }, 727 | "node_modules/ci-info": { 728 | "version": "2.0.0", 729 | "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-2.0.0.tgz", 730 | "integrity": "sha512-5tK7EtrZ0N+OLFMthtqOj4fI2Jeb88C4CAZPu25LDVUgXJ0A3Js4PMGqrn0JU1W0Mh1/Z8wZzYPxqUrXeBboCQ==" 731 | }, 732 | "node_modules/clean-stack": { 733 | "version": "2.2.0", 734 | "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-2.2.0.tgz", 735 | "integrity": "sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==", 736 | "engines": { 737 | "node": ">=6" 738 | } 739 | }, 740 | "node_modules/cli-boxes": { 741 | "version": "2.2.1", 742 | "resolved": "https://registry.npmjs.org/cli-boxes/-/cli-boxes-2.2.1.tgz", 743 | "integrity": "sha512-y4coMcylgSCdVinjiDBuR8PCC2bLjyGTwEmPb9NHR/QaNU6EUOXcTY/s6VjGMD6ENSEaeQYHCY0GNGS5jfMwPw==", 744 | "engines": { 745 | "node": ">=6" 746 | }, 747 | "funding": { 748 | "url": "https://github.com/sponsors/sindresorhus" 749 | } 750 | }, 751 | "node_modules/clone-response": { 752 | "version": "1.0.2", 753 | "resolved": "https://registry.npmjs.org/clone-response/-/clone-response-1.0.2.tgz", 754 | "integrity": "sha512-yjLXh88P599UOyPTFX0POsd7WxnbsVsGohcwzHOLspIhhpalPw1BcqED8NblyZLKcGrL8dTgMlcaZxV2jAD41Q==", 755 | "dependencies": { 756 | "mimic-response": "^1.0.0" 757 | } 758 | }, 759 | "node_modules/color-convert": { 760 | "version": "2.0.1", 761 | "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", 762 | "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", 763 | "dependencies": { 764 | "color-name": "~1.1.4" 765 | }, 766 | "engines": { 767 | "node": ">=7.0.0" 768 | } 769 | }, 770 | "node_modules/color-name": { 771 | "version": "1.1.4", 772 | "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", 773 | "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" 774 | }, 775 | "node_modules/combined-stream": { 776 | "version": "1.0.8", 777 | "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", 778 | "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", 779 | "dependencies": { 780 | "delayed-stream": "~1.0.0" 781 | }, 782 | "engines": { 783 | "node": ">= 0.8" 784 | } 785 | }, 786 | "node_modules/commander": { 787 | "version": "3.0.2", 788 | "resolved": "https://registry.npmjs.org/commander/-/commander-3.0.2.tgz", 789 | "integrity": "sha512-Gar0ASD4BDyKC4hl4DwHqDrmvjoxWKZigVnAbn5H1owvm4CxCPdb0HQDehwNYMJpla5+M2tPmPARzhtYuwpHow==", 790 | "optional": true 791 | }, 792 | "node_modules/concat-map": { 793 | "version": "0.0.1", 794 | "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", 795 | "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==" 796 | }, 797 | "node_modules/configstore": { 798 | "version": "5.0.1", 799 | "resolved": "https://registry.npmjs.org/configstore/-/configstore-5.0.1.tgz", 800 | "integrity": "sha512-aMKprgk5YhBNyH25hj8wGt2+D52Sw1DRRIzqBwLp2Ya9mFmY8KPvvtvmna8SxVR9JMZ4kzMD68N22vlaRpkeFA==", 801 | "dependencies": { 802 | "dot-prop": "^5.2.0", 803 | "graceful-fs": "^4.1.2", 804 | "make-dir": "^3.0.0", 805 | "unique-string": "^2.0.0", 806 | "write-file-atomic": "^3.0.0", 807 | "xdg-basedir": "^4.0.0" 808 | }, 809 | "engines": { 810 | "node": ">=8" 811 | } 812 | }, 813 | "node_modules/crypto-random-string": { 814 | "version": "2.0.0", 815 | "resolved": "https://registry.npmjs.org/crypto-random-string/-/crypto-random-string-2.0.0.tgz", 816 | "integrity": "sha512-v1plID3y9r/lPhviJ1wrXpLeyUIGAZ2SHNYTEapm7/8A9nLPoyvVp3RK/EPFqn5kEznyWgYZNsRtYYIWbuG8KA==", 817 | "engines": { 818 | "node": ">=8" 819 | } 820 | }, 821 | "node_modules/debug": { 822 | "version": "3.2.7", 823 | "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", 824 | "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", 825 | "dependencies": { 826 | "ms": "^2.1.1" 827 | } 828 | }, 829 | "node_modules/decompress-response": { 830 | "version": "3.3.0", 831 | "resolved": "https://registry.npmjs.org/decompress-response/-/decompress-response-3.3.0.tgz", 832 | "integrity": "sha512-BzRPQuY1ip+qDonAOz42gRm/pg9F768C+npV/4JOsxRC2sq+Rlk+Q4ZCAsOhnIaMrgarILY+RMUIvMmmX1qAEA==", 833 | "dependencies": { 834 | "mimic-response": "^1.0.0" 835 | }, 836 | "engines": { 837 | "node": ">=4" 838 | } 839 | }, 840 | "node_modules/deep-extend": { 841 | "version": "0.6.0", 842 | "resolved": "https://registry.npmjs.org/deep-extend/-/deep-extend-0.6.0.tgz", 843 | "integrity": "sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA==", 844 | "engines": { 845 | "node": ">=4.0.0" 846 | } 847 | }, 848 | "node_modules/defer-to-connect": { 849 | "version": "1.1.3", 850 | "resolved": "https://registry.npmjs.org/defer-to-connect/-/defer-to-connect-1.1.3.tgz", 851 | "integrity": "sha512-0ISdNousHvZT2EiFlZeZAHBUvSxmKswVCEf8hW7KWgG4a8MVEu/3Vb6uWYozkjylyCxe0JBIiRB1jV45S70WVQ==" 852 | }, 853 | "node_modules/delayed-stream": { 854 | "version": "1.0.0", 855 | "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", 856 | "integrity": "sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==", 857 | "engines": { 858 | "node": ">=0.4.0" 859 | } 860 | }, 861 | "node_modules/deprecation": { 862 | "version": "2.3.1", 863 | "resolved": "https://registry.npmjs.org/deprecation/-/deprecation-2.3.1.tgz", 864 | "integrity": "sha512-xmHIy4F3scKVwMsQ4WnVaS8bHOx0DmVwRywosKhaILI0ywMDWPtBSku2HNxRvF7jtwDRsoEwYQSfbxj8b7RlJQ==" 865 | }, 866 | "node_modules/discord-api-types": { 867 | "version": "0.33.5", 868 | "resolved": "https://registry.npmjs.org/discord-api-types/-/discord-api-types-0.33.5.tgz", 869 | "integrity": "sha512-dvO5M52v7m7Dy96+XUnzXNsQ/0npsYpU6dL205kAtEDueswoz3aU3bh1UMoK4cQmcGtB1YRyLKqp+DXi05lzFg==" 870 | }, 871 | "node_modules/discord.js": { 872 | "version": "13.8.1", 873 | "resolved": "https://registry.npmjs.org/discord.js/-/discord.js-13.8.1.tgz", 874 | "integrity": "sha512-jOsD+4tEZWWx0RHVyH+FBcqoTrsL+d5Mm5p+ULQOdU0qSaxhLNkWYig+yDHNZoND7nlkXX3qi+BW+gO5erWylg==", 875 | "dependencies": { 876 | "@discordjs/builders": "^0.14.0", 877 | "@discordjs/collection": "^0.7.0", 878 | "@sapphire/async-queue": "^1.3.1", 879 | "@types/node-fetch": "^2.6.1", 880 | "@types/ws": "^8.5.3", 881 | "discord-api-types": "^0.33.3", 882 | "form-data": "^4.0.0", 883 | "node-fetch": "^2.6.1", 884 | "ws": "^8.7.0" 885 | }, 886 | "engines": { 887 | "node": ">=16.6.0", 888 | "npm": ">=7.0.0" 889 | } 890 | }, 891 | "node_modules/discord.js/node_modules/@discordjs/builders": { 892 | "version": "0.14.0", 893 | "resolved": "https://registry.npmjs.org/@discordjs/builders/-/builders-0.14.0.tgz", 894 | "integrity": "sha512-+fqLIqa9wN3R+kvlld8sgG0nt04BAZxdCDP4t2qZ9TJsquLWA+xMtT8Waibb3d4li4AQS+IOfjiHAznv/dhHgQ==", 895 | "dependencies": { 896 | "@sapphire/shapeshift": "^3.1.0", 897 | "@sindresorhus/is": "^4.6.0", 898 | "discord-api-types": "^0.33.3", 899 | "fast-deep-equal": "^3.1.3", 900 | "ts-mixer": "^6.0.1", 901 | "tslib": "^2.4.0" 902 | }, 903 | "engines": { 904 | "node": ">=16.9.0" 905 | } 906 | }, 907 | "node_modules/dot-prop": { 908 | "version": "5.3.0", 909 | "resolved": "https://registry.npmjs.org/dot-prop/-/dot-prop-5.3.0.tgz", 910 | "integrity": "sha512-QM8q3zDe58hqUqjraQOmzZ1LIH9SWQJTlEKCH4kJ2oQvLZk7RbQXvtDM2XEq3fwkV9CCvvH4LA0AV+ogFsBM2Q==", 911 | "dependencies": { 912 | "is-obj": "^2.0.0" 913 | }, 914 | "engines": { 915 | "node": ">=8" 916 | } 917 | }, 918 | "node_modules/dotenv": { 919 | "version": "16.0.1", 920 | "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-16.0.1.tgz", 921 | "integrity": "sha512-1K6hR6wtk2FviQ4kEiSjFiH5rpzEVi8WW0x96aztHVMhEspNpc4DVOUTEHtEva5VThQ8IaBX1Pe4gSzpVVUsKQ==", 922 | "engines": { 923 | "node": ">=12" 924 | } 925 | }, 926 | "node_modules/duplexer3": { 927 | "version": "0.1.4", 928 | "resolved": "https://registry.npmjs.org/duplexer3/-/duplexer3-0.1.4.tgz", 929 | "integrity": "sha512-CEj8FwwNA4cVH2uFCoHUrmojhYh1vmCdOaneKJXwkeY1i9jnlslVo9dx+hQ5Hl9GnH/Bwy/IjxAyOePyPKYnzA==" 930 | }, 931 | "node_modules/ecdsa-sig-formatter": { 932 | "version": "1.0.11", 933 | "resolved": "https://registry.npmjs.org/ecdsa-sig-formatter/-/ecdsa-sig-formatter-1.0.11.tgz", 934 | "integrity": "sha512-nagl3RYrbNv6kQkeJIpt6NJZy8twLB/2vtz6yN9Z4vRKHN4/QZJIEbqohALSgwKdnksuY3k5Addp5lg8sVoVcQ==", 935 | "dependencies": { 936 | "safe-buffer": "^5.0.1" 937 | } 938 | }, 939 | "node_modules/emoji-regex": { 940 | "version": "8.0.0", 941 | "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", 942 | "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==" 943 | }, 944 | "node_modules/end-of-stream": { 945 | "version": "1.4.4", 946 | "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.4.tgz", 947 | "integrity": "sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==", 948 | "dependencies": { 949 | "once": "^1.4.0" 950 | } 951 | }, 952 | "node_modules/escape-goat": { 953 | "version": "2.1.1", 954 | "resolved": "https://registry.npmjs.org/escape-goat/-/escape-goat-2.1.1.tgz", 955 | "integrity": "sha512-8/uIhbG12Csjy2JEW7D9pHbreaVaS/OpN3ycnyvElTdwM5n6GY6W6e2IPemfvGZeUMqZ9A/3GqIZMgKnBhAw/Q==", 956 | "engines": { 957 | "node": ">=8" 958 | } 959 | }, 960 | "node_modules/esprima": { 961 | "version": "4.0.1", 962 | "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", 963 | "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", 964 | "optional": true, 965 | "bin": { 966 | "esparse": "bin/esparse.js", 967 | "esvalidate": "bin/esvalidate.js" 968 | }, 969 | "engines": { 970 | "node": ">=4" 971 | } 972 | }, 973 | "node_modules/events": { 974 | "version": "1.1.1", 975 | "resolved": "https://registry.npmjs.org/events/-/events-1.1.1.tgz", 976 | "integrity": "sha512-kEcvvCBByWXGnZy6JUlgAp2gBIUjfCAV6P6TgT1/aaQKcmuAEC4OZTV1I4EWQLz2gxZw76atuVyvHhTxvi0Flw==", 977 | "optional": true, 978 | "engines": { 979 | "node": ">=0.4.x" 980 | } 981 | }, 982 | "node_modules/eventsource": { 983 | "version": "2.0.2", 984 | "resolved": "https://registry.npmjs.org/eventsource/-/eventsource-2.0.2.tgz", 985 | "integrity": "sha512-IzUmBGPR3+oUG9dUeXynyNmf91/3zUSJg1lCktzKw47OXuhco54U3r9B7O4XX+Rb1Itm9OZ2b0RkTs10bICOxA==", 986 | "engines": { 987 | "node": ">=12.0.0" 988 | } 989 | }, 990 | "node_modules/fast-deep-equal": { 991 | "version": "3.1.3", 992 | "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", 993 | "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==" 994 | }, 995 | "node_modules/fill-range": { 996 | "version": "7.0.1", 997 | "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", 998 | "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", 999 | "dependencies": { 1000 | "to-regex-range": "^5.0.1" 1001 | }, 1002 | "engines": { 1003 | "node": ">=8" 1004 | } 1005 | }, 1006 | "node_modules/form-data": { 1007 | "version": "4.0.0", 1008 | "resolved": "https://registry.npmjs.org/form-data/-/form-data-4.0.0.tgz", 1009 | "integrity": "sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww==", 1010 | "dependencies": { 1011 | "asynckit": "^0.4.0", 1012 | "combined-stream": "^1.0.8", 1013 | "mime-types": "^2.1.12" 1014 | }, 1015 | "engines": { 1016 | "node": ">= 6" 1017 | } 1018 | }, 1019 | "node_modules/fromentries": { 1020 | "version": "1.3.2", 1021 | "resolved": "https://registry.npmjs.org/fromentries/-/fromentries-1.3.2.tgz", 1022 | "integrity": "sha512-cHEpEQHUg0f8XdtZCc2ZAhrHzKzT0MrFUTcvx+hfxYu7rGMDc5SKoXFh+n4YigxsHXRzc6OrCshdR1bWH6HHyg==", 1023 | "funding": [ 1024 | { 1025 | "type": "github", 1026 | "url": "https://github.com/sponsors/feross" 1027 | }, 1028 | { 1029 | "type": "patreon", 1030 | "url": "https://www.patreon.com/feross" 1031 | }, 1032 | { 1033 | "type": "consulting", 1034 | "url": "https://feross.org/support" 1035 | } 1036 | ] 1037 | }, 1038 | "node_modules/fsevents": { 1039 | "version": "2.3.2", 1040 | "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz", 1041 | "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==", 1042 | "hasInstallScript": true, 1043 | "optional": true, 1044 | "os": [ 1045 | "darwin" 1046 | ], 1047 | "engines": { 1048 | "node": "^8.16.0 || ^10.6.0 || >=11.0.0" 1049 | } 1050 | }, 1051 | "node_modules/get-stream": { 1052 | "version": "4.1.0", 1053 | "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-4.1.0.tgz", 1054 | "integrity": "sha512-GMat4EJ5161kIy2HevLlr4luNjBgvmj413KaQA7jt4V8B4RDsfpHk7WQ9GVqfYyyx8OS/L66Kox+rJRNklLK7w==", 1055 | "dependencies": { 1056 | "pump": "^3.0.0" 1057 | }, 1058 | "engines": { 1059 | "node": ">=6" 1060 | } 1061 | }, 1062 | "node_modules/glob-parent": { 1063 | "version": "5.1.2", 1064 | "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", 1065 | "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", 1066 | "dependencies": { 1067 | "is-glob": "^4.0.1" 1068 | }, 1069 | "engines": { 1070 | "node": ">= 6" 1071 | } 1072 | }, 1073 | "node_modules/glob-to-regexp": { 1074 | "version": "0.4.1", 1075 | "resolved": "https://registry.npmjs.org/glob-to-regexp/-/glob-to-regexp-0.4.1.tgz", 1076 | "integrity": "sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw==", 1077 | "optional": true 1078 | }, 1079 | "node_modules/global-dirs": { 1080 | "version": "3.0.0", 1081 | "resolved": "https://registry.npmjs.org/global-dirs/-/global-dirs-3.0.0.tgz", 1082 | "integrity": "sha512-v8ho2DS5RiCjftj1nD9NmnfaOzTdud7RRnVd9kFNOjqZbISlx5DQ+OrTkywgd0dIt7oFCvKetZSHoHcP3sDdiA==", 1083 | "dependencies": { 1084 | "ini": "2.0.0" 1085 | }, 1086 | "engines": { 1087 | "node": ">=10" 1088 | }, 1089 | "funding": { 1090 | "url": "https://github.com/sponsors/sindresorhus" 1091 | } 1092 | }, 1093 | "node_modules/got": { 1094 | "version": "9.6.0", 1095 | "resolved": "https://registry.npmjs.org/got/-/got-9.6.0.tgz", 1096 | "integrity": "sha512-R7eWptXuGYxwijs0eV+v3o6+XH1IqVK8dJOEecQfTmkncw9AV4dcw/Dhxi8MdlqPthxxpZyizMzyg8RTmEsG+Q==", 1097 | "dependencies": { 1098 | "@sindresorhus/is": "^0.14.0", 1099 | "@szmarczak/http-timer": "^1.1.2", 1100 | "cacheable-request": "^6.0.0", 1101 | "decompress-response": "^3.3.0", 1102 | "duplexer3": "^0.1.4", 1103 | "get-stream": "^4.1.0", 1104 | "lowercase-keys": "^1.0.1", 1105 | "mimic-response": "^1.0.1", 1106 | "p-cancelable": "^1.0.0", 1107 | "to-readable-stream": "^1.0.0", 1108 | "url-parse-lax": "^3.0.0" 1109 | }, 1110 | "engines": { 1111 | "node": ">=8.6" 1112 | } 1113 | }, 1114 | "node_modules/got/node_modules/@sindresorhus/is": { 1115 | "version": "0.14.0", 1116 | "resolved": "https://registry.npmjs.org/@sindresorhus/is/-/is-0.14.0.tgz", 1117 | "integrity": "sha512-9NET910DNaIPngYnLLPeg+Ogzqsi9uM4mSboU5y6p8S5DzMTVEsJZrawi+BoDNUVBa2DhJqQYUFvMDfgU062LQ==", 1118 | "engines": { 1119 | "node": ">=6" 1120 | } 1121 | }, 1122 | "node_modules/graceful-fs": { 1123 | "version": "4.2.10", 1124 | "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.10.tgz", 1125 | "integrity": "sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA==" 1126 | }, 1127 | "node_modules/has-flag": { 1128 | "version": "3.0.0", 1129 | "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", 1130 | "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", 1131 | "engines": { 1132 | "node": ">=4" 1133 | } 1134 | }, 1135 | "node_modules/has-yarn": { 1136 | "version": "2.1.0", 1137 | "resolved": "https://registry.npmjs.org/has-yarn/-/has-yarn-2.1.0.tgz", 1138 | "integrity": "sha512-UqBRqi4ju7T+TqGNdqAO0PaSVGsDGJUBQvk9eUWNGRY1CFGDzYhLWoM7JQEemnlvVcv/YEmc2wNW8BC24EnUsw==", 1139 | "engines": { 1140 | "node": ">=8" 1141 | } 1142 | }, 1143 | "node_modules/http-cache-semantics": { 1144 | "version": "4.1.0", 1145 | "resolved": "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-4.1.0.tgz", 1146 | "integrity": "sha512-carPklcUh7ROWRK7Cv27RPtdhYhUsela/ue5/jKzjegVvXDqM2ILE9Q2BGn9JZJh1g87cp56su/FgQSzcWS8cQ==" 1147 | }, 1148 | "node_modules/ignore-by-default": { 1149 | "version": "1.0.1", 1150 | "resolved": "https://registry.npmjs.org/ignore-by-default/-/ignore-by-default-1.0.1.tgz", 1151 | "integrity": "sha512-Ius2VYcGNk7T90CppJqcIkS5ooHUZyIQK+ClZfMfMNFEF9VSE73Fq+906u/CWu92x4gzZMWOwfFYckPObzdEbA==" 1152 | }, 1153 | "node_modules/import-lazy": { 1154 | "version": "2.1.0", 1155 | "resolved": "https://registry.npmjs.org/import-lazy/-/import-lazy-2.1.0.tgz", 1156 | "integrity": "sha512-m7ZEHgtw69qOGw+jwxXkHlrlIPdTGkyh66zXZ1ajZbxkDBNjSY/LGbmjc7h0s2ELsUDTAhFr55TrPSSqJGPG0A==", 1157 | "engines": { 1158 | "node": ">=4" 1159 | } 1160 | }, 1161 | "node_modules/imurmurhash": { 1162 | "version": "0.1.4", 1163 | "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", 1164 | "integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==", 1165 | "engines": { 1166 | "node": ">=0.8.19" 1167 | } 1168 | }, 1169 | "node_modules/indent-string": { 1170 | "version": "4.0.0", 1171 | "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz", 1172 | "integrity": "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==", 1173 | "engines": { 1174 | "node": ">=8" 1175 | } 1176 | }, 1177 | "node_modules/ini": { 1178 | "version": "2.0.0", 1179 | "resolved": "https://registry.npmjs.org/ini/-/ini-2.0.0.tgz", 1180 | "integrity": "sha512-7PnF4oN3CvZF23ADhA5wRaYEQpJ8qygSkbtTXWBeXWXmEVRXK+1ITciHWwHhsjv1TmW0MgacIv6hEi5pX5NQdA==", 1181 | "engines": { 1182 | "node": ">=10" 1183 | } 1184 | }, 1185 | "node_modules/is-binary-path": { 1186 | "version": "2.1.0", 1187 | "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", 1188 | "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", 1189 | "dependencies": { 1190 | "binary-extensions": "^2.0.0" 1191 | }, 1192 | "engines": { 1193 | "node": ">=8" 1194 | } 1195 | }, 1196 | "node_modules/is-ci": { 1197 | "version": "2.0.0", 1198 | "resolved": "https://registry.npmjs.org/is-ci/-/is-ci-2.0.0.tgz", 1199 | "integrity": "sha512-YfJT7rkpQB0updsdHLGWrvhBJfcfzNNawYDNIyQXJz0IViGf75O8EBPKSdvw2rF+LGCsX4FZ8tcr3b19LcZq4w==", 1200 | "dependencies": { 1201 | "ci-info": "^2.0.0" 1202 | }, 1203 | "bin": { 1204 | "is-ci": "bin.js" 1205 | } 1206 | }, 1207 | "node_modules/is-extglob": { 1208 | "version": "2.1.1", 1209 | "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", 1210 | "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", 1211 | "engines": { 1212 | "node": ">=0.10.0" 1213 | } 1214 | }, 1215 | "node_modules/is-fullwidth-code-point": { 1216 | "version": "3.0.0", 1217 | "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", 1218 | "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", 1219 | "engines": { 1220 | "node": ">=8" 1221 | } 1222 | }, 1223 | "node_modules/is-glob": { 1224 | "version": "4.0.3", 1225 | "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", 1226 | "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", 1227 | "dependencies": { 1228 | "is-extglob": "^2.1.1" 1229 | }, 1230 | "engines": { 1231 | "node": ">=0.10.0" 1232 | } 1233 | }, 1234 | "node_modules/is-installed-globally": { 1235 | "version": "0.4.0", 1236 | "resolved": "https://registry.npmjs.org/is-installed-globally/-/is-installed-globally-0.4.0.tgz", 1237 | "integrity": "sha512-iwGqO3J21aaSkC7jWnHP/difazwS7SFeIqxv6wEtLU8Y5KlzFTjyqcSIT0d8s4+dDhKytsk9PJZ2BkS5eZwQRQ==", 1238 | "dependencies": { 1239 | "global-dirs": "^3.0.0", 1240 | "is-path-inside": "^3.0.2" 1241 | }, 1242 | "engines": { 1243 | "node": ">=10" 1244 | }, 1245 | "funding": { 1246 | "url": "https://github.com/sponsors/sindresorhus" 1247 | } 1248 | }, 1249 | "node_modules/is-npm": { 1250 | "version": "5.0.0", 1251 | "resolved": "https://registry.npmjs.org/is-npm/-/is-npm-5.0.0.tgz", 1252 | "integrity": "sha512-WW/rQLOazUq+ST/bCAVBp/2oMERWLsR7OrKyt052dNDk4DHcDE0/7QSXITlmi+VBcV13DfIbysG3tZJm5RfdBA==", 1253 | "engines": { 1254 | "node": ">=10" 1255 | }, 1256 | "funding": { 1257 | "url": "https://github.com/sponsors/sindresorhus" 1258 | } 1259 | }, 1260 | "node_modules/is-number": { 1261 | "version": "7.0.0", 1262 | "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", 1263 | "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", 1264 | "engines": { 1265 | "node": ">=0.12.0" 1266 | } 1267 | }, 1268 | "node_modules/is-obj": { 1269 | "version": "2.0.0", 1270 | "resolved": "https://registry.npmjs.org/is-obj/-/is-obj-2.0.0.tgz", 1271 | "integrity": "sha512-drqDG3cbczxxEJRoOXcOjtdp1J/lyp1mNn0xaznRs8+muBhgQcrnbspox5X5fOw0HnMnbfDzvnEMEtqDEJEo8w==", 1272 | "engines": { 1273 | "node": ">=8" 1274 | } 1275 | }, 1276 | "node_modules/is-path-inside": { 1277 | "version": "3.0.3", 1278 | "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-3.0.3.tgz", 1279 | "integrity": "sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==", 1280 | "engines": { 1281 | "node": ">=8" 1282 | } 1283 | }, 1284 | "node_modules/is-plain-object": { 1285 | "version": "5.0.0", 1286 | "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-5.0.0.tgz", 1287 | "integrity": "sha512-VRSzKkbMm5jMDoKLbltAkFQ5Qr7VDiTFGXxYFXXowVj387GeGNOCsOH6Msy00SGZ3Fp84b1Naa1psqgcCIEP5Q==", 1288 | "engines": { 1289 | "node": ">=0.10.0" 1290 | } 1291 | }, 1292 | "node_modules/is-typedarray": { 1293 | "version": "1.0.0", 1294 | "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz", 1295 | "integrity": "sha512-cyA56iCMHAh5CdzjJIa4aohJyeO1YbwLi3Jc35MmRU6poroFjIGZzUzupGiRPOjgHg9TLu43xbpwXk523fMxKA==" 1296 | }, 1297 | "node_modules/is-yarn-global": { 1298 | "version": "0.3.0", 1299 | "resolved": "https://registry.npmjs.org/is-yarn-global/-/is-yarn-global-0.3.0.tgz", 1300 | "integrity": "sha512-VjSeb/lHmkoyd8ryPVIKvOCn4D1koMqY+vqyjjUfc3xyKtP4dYOxM44sZrnqQSzSds3xyOrUTLTC9LVCVgLngw==" 1301 | }, 1302 | "node_modules/isarray": { 1303 | "version": "1.0.0", 1304 | "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", 1305 | "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==", 1306 | "optional": true 1307 | }, 1308 | "node_modules/jmespath": { 1309 | "version": "0.16.0", 1310 | "resolved": "https://registry.npmjs.org/jmespath/-/jmespath-0.16.0.tgz", 1311 | "integrity": "sha512-9FzQjJ7MATs1tSpnco1K6ayiYE3figslrXA72G2HQ/n76RzvYlofyi5QM+iX4YRs/pu3yzxlVQSST23+dMDknw==", 1312 | "optional": true, 1313 | "engines": { 1314 | "node": ">= 0.6.0" 1315 | } 1316 | }, 1317 | "node_modules/js-yaml": { 1318 | "version": "3.14.1", 1319 | "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", 1320 | "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==", 1321 | "optional": true, 1322 | "dependencies": { 1323 | "argparse": "^1.0.7", 1324 | "esprima": "^4.0.0" 1325 | }, 1326 | "bin": { 1327 | "js-yaml": "bin/js-yaml.js" 1328 | } 1329 | }, 1330 | "node_modules/json-buffer": { 1331 | "version": "3.0.0", 1332 | "resolved": "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.0.tgz", 1333 | "integrity": "sha512-CuUqjv0FUZIdXkHPI8MezCnFCdaTAacej1TZYulLoAg1h/PhwkdXFN4V/gzY4g+fMBCOV2xF+rp7t2XD2ns/NQ==" 1334 | }, 1335 | "node_modules/jsonwebtoken": { 1336 | "version": "8.5.1", 1337 | "resolved": "https://registry.npmjs.org/jsonwebtoken/-/jsonwebtoken-8.5.1.tgz", 1338 | "integrity": "sha512-XjwVfRS6jTMsqYs0EsuJ4LGxXV14zQybNd4L2r0UvbVnSF9Af8x7p5MzbJ90Ioz/9TI41/hTCvznF/loiSzn8w==", 1339 | "dependencies": { 1340 | "jws": "^3.2.2", 1341 | "lodash.includes": "^4.3.0", 1342 | "lodash.isboolean": "^3.0.3", 1343 | "lodash.isinteger": "^4.0.4", 1344 | "lodash.isnumber": "^3.0.3", 1345 | "lodash.isplainobject": "^4.0.6", 1346 | "lodash.isstring": "^4.0.1", 1347 | "lodash.once": "^4.0.0", 1348 | "ms": "^2.1.1", 1349 | "semver": "^5.6.0" 1350 | }, 1351 | "engines": { 1352 | "node": ">=4", 1353 | "npm": ">=1.4.28" 1354 | } 1355 | }, 1356 | "node_modules/jwa": { 1357 | "version": "1.4.1", 1358 | "resolved": "https://registry.npmjs.org/jwa/-/jwa-1.4.1.tgz", 1359 | "integrity": "sha512-qiLX/xhEEFKUAJ6FiBMbes3w9ATzyk5W7Hvzpa/SLYdxNtng+gcurvrI7TbACjIXlsJyr05/S1oUhZrc63evQA==", 1360 | "dependencies": { 1361 | "buffer-equal-constant-time": "1.0.1", 1362 | "ecdsa-sig-formatter": "1.0.11", 1363 | "safe-buffer": "^5.0.1" 1364 | } 1365 | }, 1366 | "node_modules/jws": { 1367 | "version": "3.2.2", 1368 | "resolved": "https://registry.npmjs.org/jws/-/jws-3.2.2.tgz", 1369 | "integrity": "sha512-YHlZCB6lMTllWDtSPHz/ZXTsi8S00usEV6v1tjq8tOUZzw7DpSDWVXjXDre6ed1w/pd495ODpHZYSdkRTsa0HA==", 1370 | "dependencies": { 1371 | "jwa": "^1.4.1", 1372 | "safe-buffer": "^5.0.1" 1373 | } 1374 | }, 1375 | "node_modules/keyv": { 1376 | "version": "3.1.0", 1377 | "resolved": "https://registry.npmjs.org/keyv/-/keyv-3.1.0.tgz", 1378 | "integrity": "sha512-9ykJ/46SN/9KPM/sichzQ7OvXyGDYKGTaDlKMGCAlg2UK8KRy4jb0d8sFc+0Tt0YYnThq8X2RZgCg74RPxgcVA==", 1379 | "dependencies": { 1380 | "json-buffer": "3.0.0" 1381 | } 1382 | }, 1383 | "node_modules/latest-version": { 1384 | "version": "5.1.0", 1385 | "resolved": "https://registry.npmjs.org/latest-version/-/latest-version-5.1.0.tgz", 1386 | "integrity": "sha512-weT+r0kTkRQdCdYCNtkMwWXQTMEswKrFBkm4ckQOMVhhqhIMI1UT2hMj+1iigIhgSZm5gTmrRXBNoGUgaTY1xA==", 1387 | "dependencies": { 1388 | "package-json": "^6.3.0" 1389 | }, 1390 | "engines": { 1391 | "node": ">=8" 1392 | } 1393 | }, 1394 | "node_modules/lodash.includes": { 1395 | "version": "4.3.0", 1396 | "resolved": "https://registry.npmjs.org/lodash.includes/-/lodash.includes-4.3.0.tgz", 1397 | "integrity": "sha512-W3Bx6mdkRTGtlJISOvVD/lbqjTlPPUDTMnlXZFnVwi9NKJ6tiAk6LVdlhZMm17VZisqhKcgzpO5Wz91PCt5b0w==" 1398 | }, 1399 | "node_modules/lodash.isboolean": { 1400 | "version": "3.0.3", 1401 | "resolved": "https://registry.npmjs.org/lodash.isboolean/-/lodash.isboolean-3.0.3.tgz", 1402 | "integrity": "sha512-Bz5mupy2SVbPHURB98VAcw+aHh4vRV5IPNhILUCsOzRmsTmSQ17jIuqopAentWoehktxGd9e/hbIXq980/1QJg==" 1403 | }, 1404 | "node_modules/lodash.isinteger": { 1405 | "version": "4.0.4", 1406 | "resolved": "https://registry.npmjs.org/lodash.isinteger/-/lodash.isinteger-4.0.4.tgz", 1407 | "integrity": "sha512-DBwtEWN2caHQ9/imiNeEA5ys1JoRtRfY3d7V9wkqtbycnAmTvRRmbHKDV4a0EYc678/dia0jrte4tjYwVBaZUA==" 1408 | }, 1409 | "node_modules/lodash.isnumber": { 1410 | "version": "3.0.3", 1411 | "resolved": "https://registry.npmjs.org/lodash.isnumber/-/lodash.isnumber-3.0.3.tgz", 1412 | "integrity": "sha512-QYqzpfwO3/CWf3XP+Z+tkQsfaLL/EnUlXWVkIk5FUPc4sBdTehEqZONuyRt2P67PXAk+NXmTBcc97zw9t1FQrw==" 1413 | }, 1414 | "node_modules/lodash.isplainobject": { 1415 | "version": "4.0.6", 1416 | "resolved": "https://registry.npmjs.org/lodash.isplainobject/-/lodash.isplainobject-4.0.6.tgz", 1417 | "integrity": "sha512-oSXzaWypCMHkPC3NvBEaPHf0KsA5mvPrOPgQWDsbg8n7orZ290M0BmC/jgRZ4vcJ6DTAhjrsSYgdsW/F+MFOBA==" 1418 | }, 1419 | "node_modules/lodash.isstring": { 1420 | "version": "4.0.1", 1421 | "resolved": "https://registry.npmjs.org/lodash.isstring/-/lodash.isstring-4.0.1.tgz", 1422 | "integrity": "sha512-0wJxfxH1wgO3GrbuP+dTTk7op+6L41QCXbGINEmD+ny/G/eCqGzxyCsh7159S+mgDDcoarnBw6PC1PS5+wUGgw==" 1423 | }, 1424 | "node_modules/lodash.once": { 1425 | "version": "4.1.1", 1426 | "resolved": "https://registry.npmjs.org/lodash.once/-/lodash.once-4.1.1.tgz", 1427 | "integrity": "sha512-Sb487aTOCr9drQVL8pIxOzVhafOjZN9UU54hiN8PU3uAiSV7lx1yYNpbNmex2PK6dSJoNTSJUUswT651yww3Mg==" 1428 | }, 1429 | "node_modules/lowercase-keys": { 1430 | "version": "1.0.1", 1431 | "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-1.0.1.tgz", 1432 | "integrity": "sha512-G2Lj61tXDnVFFOi8VZds+SoQjtQC3dgokKdDG2mTm1tx4m50NUHBOZSBwQQHyy0V12A0JTG4icfZQH+xPyh8VA==", 1433 | "engines": { 1434 | "node": ">=0.10.0" 1435 | } 1436 | }, 1437 | "node_modules/lru-cache": { 1438 | "version": "6.0.0", 1439 | "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", 1440 | "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", 1441 | "dependencies": { 1442 | "yallist": "^4.0.0" 1443 | }, 1444 | "engines": { 1445 | "node": ">=10" 1446 | } 1447 | }, 1448 | "node_modules/make-dir": { 1449 | "version": "3.1.0", 1450 | "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", 1451 | "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", 1452 | "dependencies": { 1453 | "semver": "^6.0.0" 1454 | }, 1455 | "engines": { 1456 | "node": ">=8" 1457 | }, 1458 | "funding": { 1459 | "url": "https://github.com/sponsors/sindresorhus" 1460 | } 1461 | }, 1462 | "node_modules/make-dir/node_modules/semver": { 1463 | "version": "6.3.0", 1464 | "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", 1465 | "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", 1466 | "bin": { 1467 | "semver": "bin/semver.js" 1468 | } 1469 | }, 1470 | "node_modules/mime-db": { 1471 | "version": "1.52.0", 1472 | "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", 1473 | "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==", 1474 | "engines": { 1475 | "node": ">= 0.6" 1476 | } 1477 | }, 1478 | "node_modules/mime-types": { 1479 | "version": "2.1.35", 1480 | "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", 1481 | "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", 1482 | "dependencies": { 1483 | "mime-db": "1.52.0" 1484 | }, 1485 | "engines": { 1486 | "node": ">= 0.6" 1487 | } 1488 | }, 1489 | "node_modules/mimic-response": { 1490 | "version": "1.0.1", 1491 | "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-1.0.1.tgz", 1492 | "integrity": "sha512-j5EctnkH7amfV/q5Hgmoal1g2QHFJRraOtmx0JpIqkxhBhI/lJSl1nMpQ45hVarwNETOoWEimndZ4QK0RHxuxQ==", 1493 | "engines": { 1494 | "node": ">=4" 1495 | } 1496 | }, 1497 | "node_modules/minimatch": { 1498 | "version": "3.1.2", 1499 | "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", 1500 | "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", 1501 | "dependencies": { 1502 | "brace-expansion": "^1.1.7" 1503 | }, 1504 | "engines": { 1505 | "node": "*" 1506 | } 1507 | }, 1508 | "node_modules/minimist": { 1509 | "version": "1.2.6", 1510 | "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.6.tgz", 1511 | "integrity": "sha512-Jsjnk4bw3YJqYzbdyBiNsPWHPfO++UGG749Cxs6peCu5Xg4nrena6OVxOYxrQTqww0Jmwt+Ref8rggumkTLz9Q==" 1512 | }, 1513 | "node_modules/ms": { 1514 | "version": "2.1.3", 1515 | "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", 1516 | "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==" 1517 | }, 1518 | "node_modules/node-fetch": { 1519 | "version": "2.6.7", 1520 | "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.7.tgz", 1521 | "integrity": "sha512-ZjMPFEfVx5j+y2yF35Kzx5sF7kDzxuDj6ziH4FFbOp87zKDZNx8yExJIb05OGF4Nlt9IHFIMBkRl41VdvcNdbQ==", 1522 | "dependencies": { 1523 | "whatwg-url": "^5.0.0" 1524 | }, 1525 | "engines": { 1526 | "node": "4.x || >=6.0.0" 1527 | }, 1528 | "peerDependencies": { 1529 | "encoding": "^0.1.0" 1530 | }, 1531 | "peerDependenciesMeta": { 1532 | "encoding": { 1533 | "optional": true 1534 | } 1535 | } 1536 | }, 1537 | "node_modules/node-fetch/node_modules/tr46": { 1538 | "version": "0.0.3", 1539 | "resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz", 1540 | "integrity": "sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==" 1541 | }, 1542 | "node_modules/node-fetch/node_modules/webidl-conversions": { 1543 | "version": "3.0.1", 1544 | "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz", 1545 | "integrity": "sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==" 1546 | }, 1547 | "node_modules/node-fetch/node_modules/whatwg-url": { 1548 | "version": "5.0.0", 1549 | "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz", 1550 | "integrity": "sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==", 1551 | "dependencies": { 1552 | "tr46": "~0.0.3", 1553 | "webidl-conversions": "^3.0.0" 1554 | } 1555 | }, 1556 | "node_modules/nodemon": { 1557 | "version": "2.0.18", 1558 | "resolved": "https://registry.npmjs.org/nodemon/-/nodemon-2.0.18.tgz", 1559 | "integrity": "sha512-uAvrKipi2zAz8E7nkSz4qW4F4zd5fs2wNGsTx+xXlP8KXqd9ucE0vY9wankOsPboeDyuUGN9vsXGV1pLn80l/A==", 1560 | "hasInstallScript": true, 1561 | "dependencies": { 1562 | "chokidar": "^3.5.2", 1563 | "debug": "^3.2.7", 1564 | "ignore-by-default": "^1.0.1", 1565 | "minimatch": "^3.0.4", 1566 | "pstree.remy": "^1.1.8", 1567 | "semver": "^5.7.1", 1568 | "supports-color": "^5.5.0", 1569 | "touch": "^3.1.0", 1570 | "undefsafe": "^2.0.5", 1571 | "update-notifier": "^5.1.0" 1572 | }, 1573 | "bin": { 1574 | "nodemon": "bin/nodemon.js" 1575 | }, 1576 | "engines": { 1577 | "node": ">=8.10.0" 1578 | }, 1579 | "funding": { 1580 | "type": "opencollective", 1581 | "url": "https://opencollective.com/nodemon" 1582 | } 1583 | }, 1584 | "node_modules/nopt": { 1585 | "version": "1.0.10", 1586 | "resolved": "https://registry.npmjs.org/nopt/-/nopt-1.0.10.tgz", 1587 | "integrity": "sha512-NWmpvLSqUrgrAC9HCuxEvb+PSloHpqVu+FqcO4eeF2h5qYRhA7ev6KvelyQAKtegUbC6RypJnlEOhd8vloNKYg==", 1588 | "dependencies": { 1589 | "abbrev": "1" 1590 | }, 1591 | "bin": { 1592 | "nopt": "bin/nopt.js" 1593 | }, 1594 | "engines": { 1595 | "node": "*" 1596 | } 1597 | }, 1598 | "node_modules/normalize-path": { 1599 | "version": "3.0.0", 1600 | "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", 1601 | "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", 1602 | "engines": { 1603 | "node": ">=0.10.0" 1604 | } 1605 | }, 1606 | "node_modules/normalize-url": { 1607 | "version": "4.5.1", 1608 | "resolved": "https://registry.npmjs.org/normalize-url/-/normalize-url-4.5.1.tgz", 1609 | "integrity": "sha512-9UZCFRHQdNrfTpGg8+1INIg93B6zE0aXMVFkw1WFwvO4SlZywU6aLg5Of0Ap/PgcbSw4LNxvMWXMeugwMCX0AA==", 1610 | "engines": { 1611 | "node": ">=8" 1612 | } 1613 | }, 1614 | "node_modules/octokit": { 1615 | "version": "1.8.1", 1616 | "resolved": "https://registry.npmjs.org/octokit/-/octokit-1.8.1.tgz", 1617 | "integrity": "sha512-xBLKFIivbl7wnLwxzLYuDO/JDNYxdyxoSjFrl/QMrY/fwGGQYYklvKUDTUyGMU0aXPrQtJ0IZnG3BXpCkDQzWg==", 1618 | "dependencies": { 1619 | "@octokit/app": "^12.0.4", 1620 | "@octokit/core": "^3.5.1", 1621 | "@octokit/oauth-app": "^3.5.1", 1622 | "@octokit/plugin-paginate-rest": "^2.18.0", 1623 | "@octokit/plugin-rest-endpoint-methods": "^5.14.0", 1624 | "@octokit/plugin-retry": "^3.0.9", 1625 | "@octokit/plugin-throttling": "^3.5.1", 1626 | "@octokit/types": "^6.35.0" 1627 | } 1628 | }, 1629 | "node_modules/once": { 1630 | "version": "1.4.0", 1631 | "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", 1632 | "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", 1633 | "dependencies": { 1634 | "wrappy": "1" 1635 | } 1636 | }, 1637 | "node_modules/p-cancelable": { 1638 | "version": "1.1.0", 1639 | "resolved": "https://registry.npmjs.org/p-cancelable/-/p-cancelable-1.1.0.tgz", 1640 | "integrity": "sha512-s73XxOZ4zpt1edZYZzvhqFa6uvQc1vwUa0K0BdtIZgQMAJj9IbebH+JkgKZc9h+B05PKHLOTl4ajG1BmNrVZlw==", 1641 | "engines": { 1642 | "node": ">=6" 1643 | } 1644 | }, 1645 | "node_modules/package-json": { 1646 | "version": "6.5.0", 1647 | "resolved": "https://registry.npmjs.org/package-json/-/package-json-6.5.0.tgz", 1648 | "integrity": "sha512-k3bdm2n25tkyxcjSKzB5x8kfVxlMdgsbPr0GkZcwHsLpba6cBjqCt1KlcChKEvxHIcTB1FVMuwoijZ26xex5MQ==", 1649 | "dependencies": { 1650 | "got": "^9.6.0", 1651 | "registry-auth-token": "^4.0.0", 1652 | "registry-url": "^5.0.0", 1653 | "semver": "^6.2.0" 1654 | }, 1655 | "engines": { 1656 | "node": ">=8" 1657 | } 1658 | }, 1659 | "node_modules/package-json/node_modules/semver": { 1660 | "version": "6.3.0", 1661 | "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", 1662 | "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", 1663 | "bin": { 1664 | "semver": "bin/semver.js" 1665 | } 1666 | }, 1667 | "node_modules/picomatch": { 1668 | "version": "2.3.1", 1669 | "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", 1670 | "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", 1671 | "engines": { 1672 | "node": ">=8.6" 1673 | }, 1674 | "funding": { 1675 | "url": "https://github.com/sponsors/jonschlinkert" 1676 | } 1677 | }, 1678 | "node_modules/prepend-http": { 1679 | "version": "2.0.0", 1680 | "resolved": "https://registry.npmjs.org/prepend-http/-/prepend-http-2.0.0.tgz", 1681 | "integrity": "sha512-ravE6m9Atw9Z/jjttRUZ+clIXogdghyZAuWJ3qEzjT+jI/dL1ifAqhZeC5VHzQp1MSt1+jxKkFNemj/iO7tVUA==", 1682 | "engines": { 1683 | "node": ">=4" 1684 | } 1685 | }, 1686 | "node_modules/pstree.remy": { 1687 | "version": "1.1.8", 1688 | "resolved": "https://registry.npmjs.org/pstree.remy/-/pstree.remy-1.1.8.tgz", 1689 | "integrity": "sha512-77DZwxQmxKnu3aR542U+X8FypNzbfJ+C5XQDk3uWjWxn6151aIMGthWYRXTqT1E5oJvg+ljaa2OJi+VfvCOQ8w==" 1690 | }, 1691 | "node_modules/pump": { 1692 | "version": "3.0.0", 1693 | "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz", 1694 | "integrity": "sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==", 1695 | "dependencies": { 1696 | "end-of-stream": "^1.1.0", 1697 | "once": "^1.3.1" 1698 | } 1699 | }, 1700 | "node_modules/punycode": { 1701 | "version": "1.3.2", 1702 | "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.3.2.tgz", 1703 | "integrity": "sha512-RofWgt/7fL5wP1Y7fxE7/EmTLzQVnB0ycyibJ0OOHIlJqTNzglYFxVwETOcIoJqJmpDXJ9xImDv+Fq34F/d4Dw==", 1704 | "optional": true 1705 | }, 1706 | "node_modules/pupa": { 1707 | "version": "2.1.1", 1708 | "resolved": "https://registry.npmjs.org/pupa/-/pupa-2.1.1.tgz", 1709 | "integrity": "sha512-l1jNAspIBSFqbT+y+5FosojNpVpF94nlI+wDUpqP9enwOTfHx9f0gh5nB96vl+6yTpsJsypeNrwfzPrKuHB41A==", 1710 | "dependencies": { 1711 | "escape-goat": "^2.0.0" 1712 | }, 1713 | "engines": { 1714 | "node": ">=8" 1715 | } 1716 | }, 1717 | "node_modules/querystring": { 1718 | "version": "0.2.0", 1719 | "resolved": "https://registry.npmjs.org/querystring/-/querystring-0.2.0.tgz", 1720 | "integrity": "sha512-X/xY82scca2tau62i9mDyU9K+I+djTMUsvwf7xnUX5GLvVzgJybOJf4Y6o9Zx3oJK/LSXg5tTZBjwzqVPaPO2g==", 1721 | "deprecated": "The querystring API is considered Legacy. new code should use the URLSearchParams API instead.", 1722 | "optional": true, 1723 | "engines": { 1724 | "node": ">=0.4.x" 1725 | } 1726 | }, 1727 | "node_modules/rc": { 1728 | "version": "1.2.8", 1729 | "resolved": "https://registry.npmjs.org/rc/-/rc-1.2.8.tgz", 1730 | "integrity": "sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw==", 1731 | "dependencies": { 1732 | "deep-extend": "^0.6.0", 1733 | "ini": "~1.3.0", 1734 | "minimist": "^1.2.0", 1735 | "strip-json-comments": "~2.0.1" 1736 | }, 1737 | "bin": { 1738 | "rc": "cli.js" 1739 | } 1740 | }, 1741 | "node_modules/rc/node_modules/ini": { 1742 | "version": "1.3.8", 1743 | "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.8.tgz", 1744 | "integrity": "sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==" 1745 | }, 1746 | "node_modules/readdirp": { 1747 | "version": "3.6.0", 1748 | "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", 1749 | "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", 1750 | "dependencies": { 1751 | "picomatch": "^2.2.1" 1752 | }, 1753 | "engines": { 1754 | "node": ">=8.10.0" 1755 | } 1756 | }, 1757 | "node_modules/registry-auth-token": { 1758 | "version": "4.2.2", 1759 | "resolved": "https://registry.npmjs.org/registry-auth-token/-/registry-auth-token-4.2.2.tgz", 1760 | "integrity": "sha512-PC5ZysNb42zpFME6D/XlIgtNGdTl8bBOCw90xQLVMpzuuubJKYDWFAEuUNc+Cn8Z8724tg2SDhDRrkVEsqfDMg==", 1761 | "dependencies": { 1762 | "rc": "1.2.8" 1763 | }, 1764 | "engines": { 1765 | "node": ">=6.0.0" 1766 | } 1767 | }, 1768 | "node_modules/registry-url": { 1769 | "version": "5.1.0", 1770 | "resolved": "https://registry.npmjs.org/registry-url/-/registry-url-5.1.0.tgz", 1771 | "integrity": "sha512-8acYXXTI0AkQv6RAOjE3vOaIXZkT9wo4LOFbBKYQEEnnMNBpKqdUrI6S4NT0KPIo/WVvJ5tE/X5LF/TQUf0ekw==", 1772 | "dependencies": { 1773 | "rc": "^1.2.8" 1774 | }, 1775 | "engines": { 1776 | "node": ">=8" 1777 | } 1778 | }, 1779 | "node_modules/responselike": { 1780 | "version": "1.0.2", 1781 | "resolved": "https://registry.npmjs.org/responselike/-/responselike-1.0.2.tgz", 1782 | "integrity": "sha512-/Fpe5guzJk1gPqdJLJR5u7eG/gNY4nImjbRDaVWVMRhne55TCmj2i9Q+54PBRfatRC8v/rIiv9BN0pMd9OV5EQ==", 1783 | "dependencies": { 1784 | "lowercase-keys": "^1.0.0" 1785 | } 1786 | }, 1787 | "node_modules/safe-buffer": { 1788 | "version": "5.2.1", 1789 | "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", 1790 | "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", 1791 | "funding": [ 1792 | { 1793 | "type": "github", 1794 | "url": "https://github.com/sponsors/feross" 1795 | }, 1796 | { 1797 | "type": "patreon", 1798 | "url": "https://www.patreon.com/feross" 1799 | }, 1800 | { 1801 | "type": "consulting", 1802 | "url": "https://feross.org/support" 1803 | } 1804 | ] 1805 | }, 1806 | "node_modules/sax": { 1807 | "version": "1.2.1", 1808 | "resolved": "https://registry.npmjs.org/sax/-/sax-1.2.1.tgz", 1809 | "integrity": "sha512-8I2a3LovHTOpm7NV5yOyO8IHqgVsfK4+UuySrXU8YXkSRX7k6hCV9b3HrkKCr3nMpgj+0bmocaJJWpvp1oc7ZA==", 1810 | "optional": true 1811 | }, 1812 | "node_modules/semver": { 1813 | "version": "5.7.1", 1814 | "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", 1815 | "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", 1816 | "bin": { 1817 | "semver": "bin/semver" 1818 | } 1819 | }, 1820 | "node_modules/semver-diff": { 1821 | "version": "3.1.1", 1822 | "resolved": "https://registry.npmjs.org/semver-diff/-/semver-diff-3.1.1.tgz", 1823 | "integrity": "sha512-GX0Ix/CJcHyB8c4ykpHGIAvLyOwOobtM/8d+TQkAd81/bEjgPHrfba41Vpesr7jX/t8Uh+R3EX9eAS5be+jQYg==", 1824 | "dependencies": { 1825 | "semver": "^6.3.0" 1826 | }, 1827 | "engines": { 1828 | "node": ">=8" 1829 | } 1830 | }, 1831 | "node_modules/semver-diff/node_modules/semver": { 1832 | "version": "6.3.0", 1833 | "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", 1834 | "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", 1835 | "bin": { 1836 | "semver": "bin/semver.js" 1837 | } 1838 | }, 1839 | "node_modules/signal-exit": { 1840 | "version": "3.0.7", 1841 | "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", 1842 | "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==" 1843 | }, 1844 | "node_modules/sprintf-js": { 1845 | "version": "1.0.3", 1846 | "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", 1847 | "integrity": "sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==", 1848 | "optional": true 1849 | }, 1850 | "node_modules/string-width": { 1851 | "version": "4.2.3", 1852 | "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", 1853 | "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", 1854 | "dependencies": { 1855 | "emoji-regex": "^8.0.0", 1856 | "is-fullwidth-code-point": "^3.0.0", 1857 | "strip-ansi": "^6.0.1" 1858 | }, 1859 | "engines": { 1860 | "node": ">=8" 1861 | } 1862 | }, 1863 | "node_modules/strip-ansi": { 1864 | "version": "6.0.1", 1865 | "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", 1866 | "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", 1867 | "dependencies": { 1868 | "ansi-regex": "^5.0.1" 1869 | }, 1870 | "engines": { 1871 | "node": ">=8" 1872 | } 1873 | }, 1874 | "node_modules/strip-json-comments": { 1875 | "version": "2.0.1", 1876 | "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz", 1877 | "integrity": "sha512-4gB8na07fecVVkOI6Rs4e7T6NOTki5EmL7TUduTs6bu3EdnSycntVJ4re8kgZA+wx9IueI2Y11bfbgwtzuE0KQ==", 1878 | "engines": { 1879 | "node": ">=0.10.0" 1880 | } 1881 | }, 1882 | "node_modules/supports-color": { 1883 | "version": "5.5.0", 1884 | "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", 1885 | "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", 1886 | "dependencies": { 1887 | "has-flag": "^3.0.0" 1888 | }, 1889 | "engines": { 1890 | "node": ">=4" 1891 | } 1892 | }, 1893 | "node_modules/to-readable-stream": { 1894 | "version": "1.0.0", 1895 | "resolved": "https://registry.npmjs.org/to-readable-stream/-/to-readable-stream-1.0.0.tgz", 1896 | "integrity": "sha512-Iq25XBt6zD5npPhlLVXGFN3/gyR2/qODcKNNyTMd4vbm39HUaOiAM4PMq0eMVC/Tkxz+Zjdsc55g9yyz+Yq00Q==", 1897 | "engines": { 1898 | "node": ">=6" 1899 | } 1900 | }, 1901 | "node_modules/to-regex-range": { 1902 | "version": "5.0.1", 1903 | "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", 1904 | "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", 1905 | "dependencies": { 1906 | "is-number": "^7.0.0" 1907 | }, 1908 | "engines": { 1909 | "node": ">=8.0" 1910 | } 1911 | }, 1912 | "node_modules/touch": { 1913 | "version": "3.1.0", 1914 | "resolved": "https://registry.npmjs.org/touch/-/touch-3.1.0.tgz", 1915 | "integrity": "sha512-WBx8Uy5TLtOSRtIq+M03/sKDrXCLHxwDcquSP2c43Le03/9serjQBIztjRz6FkJez9D/hleyAXTBGLwwZUw9lA==", 1916 | "dependencies": { 1917 | "nopt": "~1.0.10" 1918 | }, 1919 | "bin": { 1920 | "nodetouch": "bin/nodetouch.js" 1921 | } 1922 | }, 1923 | "node_modules/ts-mixer": { 1924 | "version": "6.0.1", 1925 | "resolved": "https://registry.npmjs.org/ts-mixer/-/ts-mixer-6.0.1.tgz", 1926 | "integrity": "sha512-hvE+ZYXuINrx6Ei6D6hz+PTim0Uf++dYbK9FFifLNwQj+RwKquhQpn868yZsCtJYiclZF1u8l6WZxxKi+vv7Rg==" 1927 | }, 1928 | "node_modules/tslib": { 1929 | "version": "2.4.0", 1930 | "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.4.0.tgz", 1931 | "integrity": "sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ==" 1932 | }, 1933 | "node_modules/type-fest": { 1934 | "version": "0.20.2", 1935 | "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", 1936 | "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==", 1937 | "engines": { 1938 | "node": ">=10" 1939 | }, 1940 | "funding": { 1941 | "url": "https://github.com/sponsors/sindresorhus" 1942 | } 1943 | }, 1944 | "node_modules/typedarray-to-buffer": { 1945 | "version": "3.1.5", 1946 | "resolved": "https://registry.npmjs.org/typedarray-to-buffer/-/typedarray-to-buffer-3.1.5.tgz", 1947 | "integrity": "sha512-zdu8XMNEDepKKR+XYOXAVPtWui0ly0NtohUscw+UmaHiAWT8hrV1rr//H6V+0DvJ3OQ19S979M0laLfX8rm82Q==", 1948 | "dependencies": { 1949 | "is-typedarray": "^1.0.0" 1950 | } 1951 | }, 1952 | "node_modules/undefsafe": { 1953 | "version": "2.0.5", 1954 | "resolved": "https://registry.npmjs.org/undefsafe/-/undefsafe-2.0.5.tgz", 1955 | "integrity": "sha512-WxONCrssBM8TSPRqN5EmsjVrsv4A8X12J4ArBiiayv3DyyG3ZlIg6yysuuSYdZsVz3TKcTg2fd//Ujd4CHV1iA==" 1956 | }, 1957 | "node_modules/unique-string": { 1958 | "version": "2.0.0", 1959 | "resolved": "https://registry.npmjs.org/unique-string/-/unique-string-2.0.0.tgz", 1960 | "integrity": "sha512-uNaeirEPvpZWSgzwsPGtU2zVSTrn/8L5q/IexZmH0eH6SA73CmAA5U4GwORTxQAZs95TAXLNqeLoPPNO5gZfWg==", 1961 | "dependencies": { 1962 | "crypto-random-string": "^2.0.0" 1963 | }, 1964 | "engines": { 1965 | "node": ">=8" 1966 | } 1967 | }, 1968 | "node_modules/universal-github-app-jwt": { 1969 | "version": "1.1.0", 1970 | "resolved": "https://registry.npmjs.org/universal-github-app-jwt/-/universal-github-app-jwt-1.1.0.tgz", 1971 | "integrity": "sha512-3b+ocAjjz4JTyqaOT+NNBd5BtTuvJTxWElIoeHSVelUV9J3Jp7avmQTdLKCaoqi/5Ox2o/q+VK19TJ233rVXVQ==", 1972 | "dependencies": { 1973 | "@types/jsonwebtoken": "^8.3.3", 1974 | "jsonwebtoken": "^8.5.1" 1975 | } 1976 | }, 1977 | "node_modules/universal-user-agent": { 1978 | "version": "6.0.0", 1979 | "resolved": "https://registry.npmjs.org/universal-user-agent/-/universal-user-agent-6.0.0.tgz", 1980 | "integrity": "sha512-isyNax3wXoKaulPDZWHQqbmIx1k2tb9fb3GGDBRxCscfYV2Ch7WxPArBsFEG8s/safwXTT7H4QGhaIkTp9447w==" 1981 | }, 1982 | "node_modules/update-notifier": { 1983 | "version": "5.1.0", 1984 | "resolved": "https://registry.npmjs.org/update-notifier/-/update-notifier-5.1.0.tgz", 1985 | "integrity": "sha512-ItnICHbeMh9GqUy31hFPrD1kcuZ3rpxDZbf4KUDavXwS0bW5m7SLbDQpGX3UYr072cbrF5hFUs3r5tUsPwjfHw==", 1986 | "dependencies": { 1987 | "boxen": "^5.0.0", 1988 | "chalk": "^4.1.0", 1989 | "configstore": "^5.0.1", 1990 | "has-yarn": "^2.1.0", 1991 | "import-lazy": "^2.1.0", 1992 | "is-ci": "^2.0.0", 1993 | "is-installed-globally": "^0.4.0", 1994 | "is-npm": "^5.0.0", 1995 | "is-yarn-global": "^0.3.0", 1996 | "latest-version": "^5.1.0", 1997 | "pupa": "^2.1.1", 1998 | "semver": "^7.3.4", 1999 | "semver-diff": "^3.1.1", 2000 | "xdg-basedir": "^4.0.0" 2001 | }, 2002 | "engines": { 2003 | "node": ">=10" 2004 | }, 2005 | "funding": { 2006 | "url": "https://github.com/yeoman/update-notifier?sponsor=1" 2007 | } 2008 | }, 2009 | "node_modules/update-notifier/node_modules/semver": { 2010 | "version": "7.3.7", 2011 | "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.7.tgz", 2012 | "integrity": "sha512-QlYTucUYOews+WeEujDoEGziz4K6c47V/Bd+LjSSYcA94p+DmINdf7ncaUinThfvZyu13lN9OY1XDxt8C0Tw0g==", 2013 | "dependencies": { 2014 | "lru-cache": "^6.0.0" 2015 | }, 2016 | "bin": { 2017 | "semver": "bin/semver.js" 2018 | }, 2019 | "engines": { 2020 | "node": ">=10" 2021 | } 2022 | }, 2023 | "node_modules/url": { 2024 | "version": "0.10.3", 2025 | "resolved": "https://registry.npmjs.org/url/-/url-0.10.3.tgz", 2026 | "integrity": "sha512-hzSUW2q06EqL1gKM/a+obYHLIO6ct2hwPuviqTTOcfFVc61UbfJ2Q32+uGL/HCPxKqrdGB5QUwIe7UqlDgwsOQ==", 2027 | "optional": true, 2028 | "dependencies": { 2029 | "punycode": "1.3.2", 2030 | "querystring": "0.2.0" 2031 | } 2032 | }, 2033 | "node_modules/url-parse-lax": { 2034 | "version": "3.0.0", 2035 | "resolved": "https://registry.npmjs.org/url-parse-lax/-/url-parse-lax-3.0.0.tgz", 2036 | "integrity": "sha512-NjFKA0DidqPa5ciFcSrXnAltTtzz84ogy+NebPvfEgAck0+TNg4UJ4IN+fB7zRZfbgUf0syOo9MDxFkDSMuFaQ==", 2037 | "dependencies": { 2038 | "prepend-http": "^2.0.0" 2039 | }, 2040 | "engines": { 2041 | "node": ">=4" 2042 | } 2043 | }, 2044 | "node_modules/uuid": { 2045 | "version": "8.0.0", 2046 | "resolved": "https://registry.npmjs.org/uuid/-/uuid-8.0.0.tgz", 2047 | "integrity": "sha512-jOXGuXZAWdsTH7eZLtyXMqUb9EcWMGZNbL9YcGBJl4MH4nrxHmZJhEHvyLFrkxo+28uLb/NYRcStH48fnD0Vzw==", 2048 | "optional": true, 2049 | "bin": { 2050 | "uuid": "dist/bin/uuid" 2051 | } 2052 | }, 2053 | "node_modules/watchpack": { 2054 | "version": "2.4.0", 2055 | "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-2.4.0.tgz", 2056 | "integrity": "sha512-Lcvm7MGST/4fup+ifyKi2hjyIAwcdI4HRgtvTpIUxBRhB+RFtUh8XtDOxUfctVCnhVi+QQj49i91OyvzkJl6cg==", 2057 | "optional": true, 2058 | "dependencies": { 2059 | "glob-to-regexp": "^0.4.1", 2060 | "graceful-fs": "^4.1.2" 2061 | }, 2062 | "engines": { 2063 | "node": ">=10.13.0" 2064 | } 2065 | }, 2066 | "node_modules/widest-line": { 2067 | "version": "3.1.0", 2068 | "resolved": "https://registry.npmjs.org/widest-line/-/widest-line-3.1.0.tgz", 2069 | "integrity": "sha512-NsmoXalsWVDMGupxZ5R08ka9flZjjiLvHVAWYOKtiKM8ujtZWr9cRffak+uSE48+Ob8ObalXpwyeUiyDD6QFgg==", 2070 | "dependencies": { 2071 | "string-width": "^4.0.0" 2072 | }, 2073 | "engines": { 2074 | "node": ">=8" 2075 | } 2076 | }, 2077 | "node_modules/wrap-ansi": { 2078 | "version": "7.0.0", 2079 | "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", 2080 | "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", 2081 | "dependencies": { 2082 | "ansi-styles": "^4.0.0", 2083 | "string-width": "^4.1.0", 2084 | "strip-ansi": "^6.0.0" 2085 | }, 2086 | "engines": { 2087 | "node": ">=10" 2088 | }, 2089 | "funding": { 2090 | "url": "https://github.com/chalk/wrap-ansi?sponsor=1" 2091 | } 2092 | }, 2093 | "node_modules/wrappy": { 2094 | "version": "1.0.2", 2095 | "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", 2096 | "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==" 2097 | }, 2098 | "node_modules/write-file-atomic": { 2099 | "version": "3.0.3", 2100 | "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-3.0.3.tgz", 2101 | "integrity": "sha512-AvHcyZ5JnSfq3ioSyjrBkH9yW4m7Ayk8/9My/DD9onKeu/94fwrMocemO2QAJFAlnnDN+ZDS+ZjAR5ua1/PV/Q==", 2102 | "dependencies": { 2103 | "imurmurhash": "^0.1.4", 2104 | "is-typedarray": "^1.0.0", 2105 | "signal-exit": "^3.0.2", 2106 | "typedarray-to-buffer": "^3.1.5" 2107 | } 2108 | }, 2109 | "node_modules/ws": { 2110 | "version": "8.8.0", 2111 | "resolved": "https://registry.npmjs.org/ws/-/ws-8.8.0.tgz", 2112 | "integrity": "sha512-JDAgSYQ1ksuwqfChJusw1LSJ8BizJ2e/vVu5Lxjq3YvNJNlROv1ui4i+c/kUUrPheBvQl4c5UbERhTwKa6QBJQ==", 2113 | "engines": { 2114 | "node": ">=10.0.0" 2115 | }, 2116 | "peerDependencies": { 2117 | "bufferutil": "^4.0.1", 2118 | "utf-8-validate": "^5.0.2" 2119 | }, 2120 | "peerDependenciesMeta": { 2121 | "bufferutil": { 2122 | "optional": true 2123 | }, 2124 | "utf-8-validate": { 2125 | "optional": true 2126 | } 2127 | } 2128 | }, 2129 | "node_modules/xdg-basedir": { 2130 | "version": "4.0.0", 2131 | "resolved": "https://registry.npmjs.org/xdg-basedir/-/xdg-basedir-4.0.0.tgz", 2132 | "integrity": "sha512-PSNhEJDejZYV7h50BohL09Er9VaIefr2LMAf3OEmpCkjOi34eYyQYAXUTjEQtZJTKcF0E2UKTh+osDLsgNim9Q==", 2133 | "engines": { 2134 | "node": ">=8" 2135 | } 2136 | }, 2137 | "node_modules/xml2js": { 2138 | "version": "0.4.19", 2139 | "resolved": "https://registry.npmjs.org/xml2js/-/xml2js-0.4.19.tgz", 2140 | "integrity": "sha512-esZnJZJOiJR9wWKMyuvSE1y6Dq5LCuJanqhxslH2bxM6duahNZ+HMpCLhBQGZkbX6xRf8x1Y2eJlgt2q3qo49Q==", 2141 | "optional": true, 2142 | "dependencies": { 2143 | "sax": ">=0.6.0", 2144 | "xmlbuilder": "~9.0.1" 2145 | } 2146 | }, 2147 | "node_modules/xmlbuilder": { 2148 | "version": "9.0.7", 2149 | "resolved": "https://registry.npmjs.org/xmlbuilder/-/xmlbuilder-9.0.7.tgz", 2150 | "integrity": "sha512-7YXTQc3P2l9+0rjaUbLwMKRhtmwg1M1eDf6nag7urC7pIPYLD9W/jmzQ4ptRSUbodw5S0jfoGTflLemQibSpeQ==", 2151 | "optional": true, 2152 | "engines": { 2153 | "node": ">=4.0" 2154 | } 2155 | }, 2156 | "node_modules/yallist": { 2157 | "version": "4.0.0", 2158 | "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", 2159 | "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" 2160 | } 2161 | }, 2162 | "dependencies": { 2163 | "@discordjs/builders": { 2164 | "version": "0.15.0", 2165 | "resolved": "https://registry.npmjs.org/@discordjs/builders/-/builders-0.15.0.tgz", 2166 | "integrity": "sha512-w1UfCPzx2iKycn6qh/f0c+PcDpcTHzHr7TXALXu/a4gKHGamiSg3lP8GhYswweSJk/Q5cbFLHZUsnoY3MVKNAg==", 2167 | "requires": { 2168 | "@sapphire/shapeshift": "^3.1.0", 2169 | "@sindresorhus/is": "^4.6.0", 2170 | "discord-api-types": "^0.33.3", 2171 | "fast-deep-equal": "^3.1.3", 2172 | "ts-mixer": "^6.0.1", 2173 | "tslib": "^2.4.0" 2174 | } 2175 | }, 2176 | "@discordjs/collection": { 2177 | "version": "0.7.0", 2178 | "resolved": "https://registry.npmjs.org/@discordjs/collection/-/collection-0.7.0.tgz", 2179 | "integrity": "sha512-R5i8Wb8kIcBAFEPLLf7LVBQKBDYUL+ekb23sOgpkpyGT+V4P7V83wTxcsqmX+PbqHt4cEHn053uMWfRqh/Z/nA==" 2180 | }, 2181 | "@octokit/app": { 2182 | "version": "12.0.5", 2183 | "resolved": "https://registry.npmjs.org/@octokit/app/-/app-12.0.5.tgz", 2184 | "integrity": "sha512-lM3pIfx2h+UbvsXHFVs1ApJ9Rmp8LO4ciFSr5q/9MdHmhsH6WtwayieUn875xwB77IoR9r8czxxxASu2WCtdeA==", 2185 | "requires": { 2186 | "@octokit/auth-app": "^3.3.0", 2187 | "@octokit/auth-unauthenticated": "^2.0.4", 2188 | "@octokit/core": "^3.4.0", 2189 | "@octokit/oauth-app": "^3.3.2", 2190 | "@octokit/plugin-paginate-rest": "^2.13.3", 2191 | "@octokit/types": "^6.27.1", 2192 | "@octokit/webhooks": "^9.0.1" 2193 | } 2194 | }, 2195 | "@octokit/auth-app": { 2196 | "version": "3.6.1", 2197 | "resolved": "https://registry.npmjs.org/@octokit/auth-app/-/auth-app-3.6.1.tgz", 2198 | "integrity": "sha512-6oa6CFphIYI7NxxHrdVOzhG7hkcKyGyYocg7lNDSJVauVOLtylg8hNJzoUyPAYKKK0yUeoZamE/lMs2tG+S+JA==", 2199 | "requires": { 2200 | "@octokit/auth-oauth-app": "^4.3.0", 2201 | "@octokit/auth-oauth-user": "^1.2.3", 2202 | "@octokit/request": "^5.6.0", 2203 | "@octokit/request-error": "^2.1.0", 2204 | "@octokit/types": "^6.0.3", 2205 | "@types/lru-cache": "^5.1.0", 2206 | "deprecation": "^2.3.1", 2207 | "lru-cache": "^6.0.0", 2208 | "universal-github-app-jwt": "^1.0.1", 2209 | "universal-user-agent": "^6.0.0" 2210 | } 2211 | }, 2212 | "@octokit/auth-oauth-app": { 2213 | "version": "4.3.1", 2214 | "resolved": "https://registry.npmjs.org/@octokit/auth-oauth-app/-/auth-oauth-app-4.3.1.tgz", 2215 | "integrity": "sha512-FXkKcGtTXS2987rp11mSuhMOXDw8Iy/ED9aXs83T29VeMEWjv40q4ytC0voUDxkBC/of1QYOPQUAdI2tv/dwNg==", 2216 | "requires": { 2217 | "@octokit/auth-oauth-device": "^3.1.1", 2218 | "@octokit/auth-oauth-user": "^1.2.1", 2219 | "@octokit/request": "^5.6.3", 2220 | "@octokit/types": "^6.0.3", 2221 | "@types/btoa-lite": "^1.0.0", 2222 | "btoa-lite": "^1.0.0", 2223 | "universal-user-agent": "^6.0.0" 2224 | } 2225 | }, 2226 | "@octokit/auth-oauth-device": { 2227 | "version": "3.1.2", 2228 | "resolved": "https://registry.npmjs.org/@octokit/auth-oauth-device/-/auth-oauth-device-3.1.2.tgz", 2229 | "integrity": "sha512-w7Po4Ck6N2aAn2VQyKLuojruiyKROTBv4qs6IwE5rbwF7HhBXXp4A/NKmkpoFIZkiXQtM+N8QtkSck4ApYWdGg==", 2230 | "requires": { 2231 | "@octokit/oauth-methods": "^1.1.0", 2232 | "@octokit/request": "^5.4.14", 2233 | "@octokit/types": "^6.10.0", 2234 | "universal-user-agent": "^6.0.0" 2235 | } 2236 | }, 2237 | "@octokit/auth-oauth-user": { 2238 | "version": "1.3.0", 2239 | "resolved": "https://registry.npmjs.org/@octokit/auth-oauth-user/-/auth-oauth-user-1.3.0.tgz", 2240 | "integrity": "sha512-3QC/TAdk7onnxfyZ24BnJRfZv8TRzQK7SEFUS9vLng4Vv6Hv6I64ujdk/CUkREec8lhrwU764SZ/d+yrjjqhaQ==", 2241 | "requires": { 2242 | "@octokit/auth-oauth-device": "^3.1.1", 2243 | "@octokit/oauth-methods": "^1.1.0", 2244 | "@octokit/request": "^5.4.14", 2245 | "@octokit/types": "^6.12.2", 2246 | "btoa-lite": "^1.0.0", 2247 | "universal-user-agent": "^6.0.0" 2248 | } 2249 | }, 2250 | "@octokit/auth-token": { 2251 | "version": "2.5.0", 2252 | "resolved": "https://registry.npmjs.org/@octokit/auth-token/-/auth-token-2.5.0.tgz", 2253 | "integrity": "sha512-r5FVUJCOLl19AxiuZD2VRZ/ORjp/4IN98Of6YJoJOkY75CIBuYfmiNHGrDwXr+aLGG55igl9QrxX3hbiXlLb+g==", 2254 | "requires": { 2255 | "@octokit/types": "^6.0.3" 2256 | } 2257 | }, 2258 | "@octokit/auth-unauthenticated": { 2259 | "version": "2.1.0", 2260 | "resolved": "https://registry.npmjs.org/@octokit/auth-unauthenticated/-/auth-unauthenticated-2.1.0.tgz", 2261 | "integrity": "sha512-+baofLfSL0CAv3CfGQ9rxiZZQEX8VNJMGuuS4PgrMRBUL52Ho5+hQYb63UJQshw7EXYMPDZxbXznc0y33cbPqw==", 2262 | "requires": { 2263 | "@octokit/request-error": "^2.1.0", 2264 | "@octokit/types": "^6.0.3" 2265 | } 2266 | }, 2267 | "@octokit/core": { 2268 | "version": "3.6.0", 2269 | "resolved": "https://registry.npmjs.org/@octokit/core/-/core-3.6.0.tgz", 2270 | "integrity": "sha512-7RKRKuA4xTjMhY+eG3jthb3hlZCsOwg3rztWh75Xc+ShDWOfDDATWbeZpAHBNRpm4Tv9WgBMOy1zEJYXG6NJ7Q==", 2271 | "requires": { 2272 | "@octokit/auth-token": "^2.4.4", 2273 | "@octokit/graphql": "^4.5.8", 2274 | "@octokit/request": "^5.6.3", 2275 | "@octokit/request-error": "^2.0.5", 2276 | "@octokit/types": "^6.0.3", 2277 | "before-after-hook": "^2.2.0", 2278 | "universal-user-agent": "^6.0.0" 2279 | } 2280 | }, 2281 | "@octokit/endpoint": { 2282 | "version": "6.0.12", 2283 | "resolved": "https://registry.npmjs.org/@octokit/endpoint/-/endpoint-6.0.12.tgz", 2284 | "integrity": "sha512-lF3puPwkQWGfkMClXb4k/eUT/nZKQfxinRWJrdZaJO85Dqwo/G0yOC434Jr2ojwafWJMYqFGFa5ms4jJUgujdA==", 2285 | "requires": { 2286 | "@octokit/types": "^6.0.3", 2287 | "is-plain-object": "^5.0.0", 2288 | "universal-user-agent": "^6.0.0" 2289 | } 2290 | }, 2291 | "@octokit/graphql": { 2292 | "version": "4.8.0", 2293 | "resolved": "https://registry.npmjs.org/@octokit/graphql/-/graphql-4.8.0.tgz", 2294 | "integrity": "sha512-0gv+qLSBLKF0z8TKaSKTsS39scVKF9dbMxJpj3U0vC7wjNWFuIpL/z76Qe2fiuCbDRcJSavkXsVtMS6/dtQQsg==", 2295 | "requires": { 2296 | "@octokit/request": "^5.6.0", 2297 | "@octokit/types": "^6.0.3", 2298 | "universal-user-agent": "^6.0.0" 2299 | } 2300 | }, 2301 | "@octokit/oauth-app": { 2302 | "version": "3.6.3", 2303 | "resolved": "https://registry.npmjs.org/@octokit/oauth-app/-/oauth-app-3.6.3.tgz", 2304 | "integrity": "sha512-OEJvIW/RueTjO3Q9Fz0MCUQpvdGEUNPZrA60b8TNO+/rwPHAA68pB5sFZqKG9eg+nBZtfLXm9HujL8fXJPHm+g==", 2305 | "requires": { 2306 | "@octokit/auth-oauth-app": "^4.0.0", 2307 | "@octokit/auth-oauth-user": "^1.3.0", 2308 | "@octokit/auth-unauthenticated": "^2.0.0", 2309 | "@octokit/core": "^3.3.2", 2310 | "@octokit/oauth-authorization-url": "^4.2.1", 2311 | "@octokit/oauth-methods": "^1.2.2", 2312 | "@types/aws-lambda": "^8.10.83", 2313 | "aws-lambda": "^1.0.7", 2314 | "fromentries": "^1.3.1", 2315 | "universal-user-agent": "^6.0.0" 2316 | } 2317 | }, 2318 | "@octokit/oauth-authorization-url": { 2319 | "version": "4.3.3", 2320 | "resolved": "https://registry.npmjs.org/@octokit/oauth-authorization-url/-/oauth-authorization-url-4.3.3.tgz", 2321 | "integrity": "sha512-lhP/t0i8EwTmayHG4dqLXgU+uPVys4WD/qUNvC+HfB1S1dyqULm5Yx9uKc1x79aP66U1Cb4OZeW8QU/RA9A4XA==" 2322 | }, 2323 | "@octokit/oauth-methods": { 2324 | "version": "1.2.6", 2325 | "resolved": "https://registry.npmjs.org/@octokit/oauth-methods/-/oauth-methods-1.2.6.tgz", 2326 | "integrity": "sha512-nImHQoOtKnSNn05uk2o76om1tJWiAo4lOu2xMAHYsNr0fwopP+Dv+2MlGvaMMlFjoqVd3fF3X5ZDTKCsqgmUaQ==", 2327 | "requires": { 2328 | "@octokit/oauth-authorization-url": "^4.3.1", 2329 | "@octokit/request": "^5.4.14", 2330 | "@octokit/request-error": "^2.0.5", 2331 | "@octokit/types": "^6.12.2", 2332 | "btoa-lite": "^1.0.0" 2333 | } 2334 | }, 2335 | "@octokit/openapi-types": { 2336 | "version": "12.4.0", 2337 | "resolved": "https://registry.npmjs.org/@octokit/openapi-types/-/openapi-types-12.4.0.tgz", 2338 | "integrity": "sha512-Npcb7Pv30b33U04jvcD7l75yLU0mxhuX2Xqrn51YyZ5WTkF04bpbxLaZ6GcaTqu03WZQHoO/Gbfp95NGRueDUA==" 2339 | }, 2340 | "@octokit/plugin-paginate-rest": { 2341 | "version": "2.19.0", 2342 | "resolved": "https://registry.npmjs.org/@octokit/plugin-paginate-rest/-/plugin-paginate-rest-2.19.0.tgz", 2343 | "integrity": "sha512-hQ4Qysg2hNmEMuZeJkvyzM4eSZiTifOKqYAMsW8FnxFKowhuwWICSgBQ9Gn9GpUmgKB7qaf1hFvMjYaTAg5jQA==", 2344 | "requires": { 2345 | "@octokit/types": "^6.36.0" 2346 | } 2347 | }, 2348 | "@octokit/plugin-rest-endpoint-methods": { 2349 | "version": "5.15.0", 2350 | "resolved": "https://registry.npmjs.org/@octokit/plugin-rest-endpoint-methods/-/plugin-rest-endpoint-methods-5.15.0.tgz", 2351 | "integrity": "sha512-Gsw9+Xm56jVhfbJoy4pt6eOOyf8/3K6CAnx1Sl7U2GhZWcg8MR6YgXWnpfdF69S2ViMXLA7nfvTDAsZpFlkLRw==", 2352 | "requires": { 2353 | "@octokit/types": "^6.36.0", 2354 | "deprecation": "^2.3.1" 2355 | } 2356 | }, 2357 | "@octokit/plugin-retry": { 2358 | "version": "3.0.9", 2359 | "resolved": "https://registry.npmjs.org/@octokit/plugin-retry/-/plugin-retry-3.0.9.tgz", 2360 | "integrity": "sha512-r+fArdP5+TG6l1Rv/C9hVoty6tldw6cE2pRHNGmFPdyfrc696R6JjrQ3d7HdVqGwuzfyrcaLAKD7K8TX8aehUQ==", 2361 | "requires": { 2362 | "@octokit/types": "^6.0.3", 2363 | "bottleneck": "^2.15.3" 2364 | } 2365 | }, 2366 | "@octokit/plugin-throttling": { 2367 | "version": "3.7.0", 2368 | "resolved": "https://registry.npmjs.org/@octokit/plugin-throttling/-/plugin-throttling-3.7.0.tgz", 2369 | "integrity": "sha512-qrKT1Yl/KuwGSC6/oHpLBot3ooC9rq0/ryDYBCpkRtoj+R8T47xTMDT6Tk2CxWopFota/8Pi/2SqArqwC0JPow==", 2370 | "requires": { 2371 | "@octokit/types": "^6.0.1", 2372 | "bottleneck": "^2.15.3" 2373 | } 2374 | }, 2375 | "@octokit/request": { 2376 | "version": "5.6.3", 2377 | "resolved": "https://registry.npmjs.org/@octokit/request/-/request-5.6.3.tgz", 2378 | "integrity": "sha512-bFJl0I1KVc9jYTe9tdGGpAMPy32dLBXXo1dS/YwSCTL/2nd9XeHsY616RE3HPXDVk+a+dBuzyz5YdlXwcDTr2A==", 2379 | "requires": { 2380 | "@octokit/endpoint": "^6.0.1", 2381 | "@octokit/request-error": "^2.1.0", 2382 | "@octokit/types": "^6.16.1", 2383 | "is-plain-object": "^5.0.0", 2384 | "node-fetch": "^2.6.7", 2385 | "universal-user-agent": "^6.0.0" 2386 | } 2387 | }, 2388 | "@octokit/request-error": { 2389 | "version": "2.1.0", 2390 | "resolved": "https://registry.npmjs.org/@octokit/request-error/-/request-error-2.1.0.tgz", 2391 | "integrity": "sha512-1VIvgXxs9WHSjicsRwq8PlR2LR2x6DwsJAaFgzdi0JfJoGSO8mYI/cHJQ+9FbN21aa+DrgNLnwObmyeSC8Rmpg==", 2392 | "requires": { 2393 | "@octokit/types": "^6.0.3", 2394 | "deprecation": "^2.0.0", 2395 | "once": "^1.4.0" 2396 | } 2397 | }, 2398 | "@octokit/types": { 2399 | "version": "6.37.0", 2400 | "resolved": "https://registry.npmjs.org/@octokit/types/-/types-6.37.0.tgz", 2401 | "integrity": "sha512-BXWQhFKRkjX4dVW5L2oYa0hzWOAqsEsujXsQLSdepPoDZfYdubrD1KDGpyNldGXtR8QM/WezDcxcIN1UKJMGPA==", 2402 | "requires": { 2403 | "@octokit/openapi-types": "^12.4.0" 2404 | } 2405 | }, 2406 | "@octokit/webhooks": { 2407 | "version": "9.26.0", 2408 | "resolved": "https://registry.npmjs.org/@octokit/webhooks/-/webhooks-9.26.0.tgz", 2409 | "integrity": "sha512-foZlsgrTDwAmD5j2Czn6ji10lbWjGDVsUxTIydjG9KTkAWKJrFapXJgO5SbGxRwfPd3OJdhK3nA2YPqVhxLXqA==", 2410 | "requires": { 2411 | "@octokit/request-error": "^2.0.2", 2412 | "@octokit/webhooks-methods": "^2.0.0", 2413 | "@octokit/webhooks-types": "5.8.0", 2414 | "aggregate-error": "^3.1.0" 2415 | } 2416 | }, 2417 | "@octokit/webhooks-methods": { 2418 | "version": "2.0.0", 2419 | "resolved": "https://registry.npmjs.org/@octokit/webhooks-methods/-/webhooks-methods-2.0.0.tgz", 2420 | "integrity": "sha512-35cfQ4YWlnZnmZKmIxlGPUPLtbkF8lr/A/1Sk1eC0ddLMwQN06dOuLc+dI3YLQS+T+MoNt3DIQ0NynwgKPilig==" 2421 | }, 2422 | "@octokit/webhooks-types": { 2423 | "version": "5.8.0", 2424 | "resolved": "https://registry.npmjs.org/@octokit/webhooks-types/-/webhooks-types-5.8.0.tgz", 2425 | "integrity": "sha512-8adktjIb76A7viIdayQSFuBEwOzwhDC+9yxZpKNHjfzrlostHCw0/N7JWpWMObfElwvJMk2fY2l1noENCk9wmw==" 2426 | }, 2427 | "@sapphire/async-queue": { 2428 | "version": "1.3.1", 2429 | "resolved": "https://registry.npmjs.org/@sapphire/async-queue/-/async-queue-1.3.1.tgz", 2430 | "integrity": "sha512-FFTlPOWZX1kDj9xCAsRzH5xEJfawg1lNoYAA+ecOWJMHOfiZYb1uXOI3ne9U4UILSEPwfE68p3T9wUHwIQfR0g==" 2431 | }, 2432 | "@sapphire/shapeshift": { 2433 | "version": "3.3.1", 2434 | "resolved": "https://registry.npmjs.org/@sapphire/shapeshift/-/shapeshift-3.3.1.tgz", 2435 | "integrity": "sha512-PB2e5JHWIMRz9HiN/sIWcNIzXjYvzc3OmeRHYICXreKhetDYf4Zufypr8A48Z/XZLzbMqIka6uoR+2dH58nksg==" 2436 | }, 2437 | "@sindresorhus/is": { 2438 | "version": "4.6.0", 2439 | "resolved": "https://registry.npmjs.org/@sindresorhus/is/-/is-4.6.0.tgz", 2440 | "integrity": "sha512-t09vSN3MdfsyCHoFcTRCH/iUtG7OJ0CsjzB8cjAmKc/va/kIgeDI/TxsigdncE/4be734m0cvIYwNaV4i2XqAw==" 2441 | }, 2442 | "@szmarczak/http-timer": { 2443 | "version": "1.1.2", 2444 | "resolved": "https://registry.npmjs.org/@szmarczak/http-timer/-/http-timer-1.1.2.tgz", 2445 | "integrity": "sha512-XIB2XbzHTN6ieIjfIMV9hlVcfPU26s2vafYWQcZHWXHOxiaRZYEDKEwdl129Zyg50+foYV2jCgtrqSA6qNuNSA==", 2446 | "requires": { 2447 | "defer-to-connect": "^1.0.1" 2448 | } 2449 | }, 2450 | "@types/aws-lambda": { 2451 | "version": "8.10.101", 2452 | "resolved": "https://registry.npmjs.org/@types/aws-lambda/-/aws-lambda-8.10.101.tgz", 2453 | "integrity": "sha512-84geGyVc0H9P9aGbcg/vkDh5akJq0bEf3tizHNR2d1gcm0wsp9IZ/SW6rPxvgjJFi3OeVxDc8WTKCAjoZbogzg==" 2454 | }, 2455 | "@types/btoa-lite": { 2456 | "version": "1.0.0", 2457 | "resolved": "https://registry.npmjs.org/@types/btoa-lite/-/btoa-lite-1.0.0.tgz", 2458 | "integrity": "sha512-wJsiX1tosQ+J5+bY5LrSahHxr2wT+uME5UDwdN1kg4frt40euqA+wzECkmq4t5QbveHiJepfdThgQrPw6KiSlg==" 2459 | }, 2460 | "@types/jsonwebtoken": { 2461 | "version": "8.5.8", 2462 | "resolved": "https://registry.npmjs.org/@types/jsonwebtoken/-/jsonwebtoken-8.5.8.tgz", 2463 | "integrity": "sha512-zm6xBQpFDIDM6o9r6HSgDeIcLy82TKWctCXEPbJJcXb5AKmi5BNNdLXneixK4lplX3PqIVcwLBCGE/kAGnlD4A==", 2464 | "requires": { 2465 | "@types/node": "*" 2466 | } 2467 | }, 2468 | "@types/lru-cache": { 2469 | "version": "5.1.1", 2470 | "resolved": "https://registry.npmjs.org/@types/lru-cache/-/lru-cache-5.1.1.tgz", 2471 | "integrity": "sha512-ssE3Vlrys7sdIzs5LOxCzTVMsU7i9oa/IaW92wF32JFb3CVczqOkru2xspuKczHEbG3nvmPY7IFqVmGGHdNbYw==" 2472 | }, 2473 | "@types/node": { 2474 | "version": "18.0.0", 2475 | "resolved": "https://registry.npmjs.org/@types/node/-/node-18.0.0.tgz", 2476 | "integrity": "sha512-cHlGmko4gWLVI27cGJntjs/Sj8th9aYwplmZFwmmgYQQvL5NUsgVJG7OddLvNfLqYS31KFN0s3qlaD9qCaxACA==" 2477 | }, 2478 | "@types/node-fetch": { 2479 | "version": "2.6.2", 2480 | "resolved": "https://registry.npmjs.org/@types/node-fetch/-/node-fetch-2.6.2.tgz", 2481 | "integrity": "sha512-DHqhlq5jeESLy19TYhLakJ07kNumXWjcDdxXsLUMJZ6ue8VZJj4kLPQVE/2mdHh3xZziNF1xppu5lwmS53HR+A==", 2482 | "requires": { 2483 | "@types/node": "*", 2484 | "form-data": "^3.0.0" 2485 | }, 2486 | "dependencies": { 2487 | "form-data": { 2488 | "version": "3.0.1", 2489 | "resolved": "https://registry.npmjs.org/form-data/-/form-data-3.0.1.tgz", 2490 | "integrity": "sha512-RHkBKtLWUVwd7SqRIvCZMEvAMoGUp0XU+seQiZejj0COz3RI3hWP4sCv3gZWWLjJTd7rGwcsF5eKZGii0r/hbg==", 2491 | "requires": { 2492 | "asynckit": "^0.4.0", 2493 | "combined-stream": "^1.0.8", 2494 | "mime-types": "^2.1.12" 2495 | } 2496 | } 2497 | } 2498 | }, 2499 | "@types/ws": { 2500 | "version": "8.5.3", 2501 | "resolved": "https://registry.npmjs.org/@types/ws/-/ws-8.5.3.tgz", 2502 | "integrity": "sha512-6YOoWjruKj1uLf3INHH7D3qTXwFfEsg1kf3c0uDdSBJwfa/llkwIjrAGV7j7mVgGNbzTQ3HiHKKDXl6bJPD97w==", 2503 | "requires": { 2504 | "@types/node": "*" 2505 | } 2506 | }, 2507 | "abbrev": { 2508 | "version": "1.1.1", 2509 | "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz", 2510 | "integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==" 2511 | }, 2512 | "aggregate-error": { 2513 | "version": "3.1.0", 2514 | "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-3.1.0.tgz", 2515 | "integrity": "sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==", 2516 | "requires": { 2517 | "clean-stack": "^2.0.0", 2518 | "indent-string": "^4.0.0" 2519 | } 2520 | }, 2521 | "ansi-align": { 2522 | "version": "3.0.1", 2523 | "resolved": "https://registry.npmjs.org/ansi-align/-/ansi-align-3.0.1.tgz", 2524 | "integrity": "sha512-IOfwwBF5iczOjp/WeY4YxyjqAFMQoZufdQWDd19SEExbVLNXqvpzSJ/M7Za4/sCPmQ0+GRquoA7bGcINcxew6w==", 2525 | "requires": { 2526 | "string-width": "^4.1.0" 2527 | } 2528 | }, 2529 | "ansi-regex": { 2530 | "version": "5.0.1", 2531 | "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", 2532 | "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==" 2533 | }, 2534 | "ansi-styles": { 2535 | "version": "4.3.0", 2536 | "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", 2537 | "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", 2538 | "requires": { 2539 | "color-convert": "^2.0.1" 2540 | } 2541 | }, 2542 | "anymatch": { 2543 | "version": "3.1.2", 2544 | "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.2.tgz", 2545 | "integrity": "sha512-P43ePfOAIupkguHUycrc4qJ9kz8ZiuOUijaETwX7THt0Y/GNK7v0aa8rY816xWjZ7rJdA5XdMcpVFTKMq+RvWg==", 2546 | "requires": { 2547 | "normalize-path": "^3.0.0", 2548 | "picomatch": "^2.0.4" 2549 | } 2550 | }, 2551 | "argparse": { 2552 | "version": "1.0.10", 2553 | "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", 2554 | "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", 2555 | "optional": true, 2556 | "requires": { 2557 | "sprintf-js": "~1.0.2" 2558 | } 2559 | }, 2560 | "asynckit": { 2561 | "version": "0.4.0", 2562 | "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", 2563 | "integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==" 2564 | }, 2565 | "aws-lambda": { 2566 | "version": "1.0.7", 2567 | "resolved": "https://registry.npmjs.org/aws-lambda/-/aws-lambda-1.0.7.tgz", 2568 | "integrity": "sha512-9GNFMRrEMG5y3Jvv+V4azWvc+qNWdWLTjDdhf/zgMlz8haaaLWv0xeAIWxz9PuWUBawsVxy0zZotjCdR3Xq+2w==", 2569 | "optional": true, 2570 | "requires": { 2571 | "aws-sdk": "^2.814.0", 2572 | "commander": "^3.0.2", 2573 | "js-yaml": "^3.14.1", 2574 | "watchpack": "^2.0.0-beta.10" 2575 | } 2576 | }, 2577 | "aws-sdk": { 2578 | "version": "2.1161.0", 2579 | "resolved": "https://registry.npmjs.org/aws-sdk/-/aws-sdk-2.1161.0.tgz", 2580 | "integrity": "sha512-qpOtPovj3xJhdTFBkJgqmSuy5rc7vDu2HtM+S3sLiP8Uhkb3Pn3z7LtTZt5YUnY2lV1DDR9H1aWuRlRDK96k1w==", 2581 | "optional": true, 2582 | "requires": { 2583 | "buffer": "4.9.2", 2584 | "events": "1.1.1", 2585 | "ieee754": "1.1.13", 2586 | "jmespath": "0.16.0", 2587 | "querystring": "0.2.0", 2588 | "sax": "1.2.1", 2589 | "url": "0.10.3", 2590 | "uuid": "8.0.0", 2591 | "xml2js": "0.4.19" 2592 | }, 2593 | "dependencies": { 2594 | "buffer": { 2595 | "version": "4.9.2", 2596 | "resolved": "https://registry.npmjs.org/buffer/-/buffer-4.9.2.tgz", 2597 | "integrity": "sha512-xq+q3SRMOxGivLhBNaUdC64hDTQwejJ+H0T/NB1XMtTVEwNTrfFF3gAxiyW0Bu/xWEGhjVKgUcMhCrUy2+uCWg==", 2598 | "optional": true, 2599 | "requires": { 2600 | "base64-js": "^1.0.2", 2601 | "ieee754": "^1.1.4", 2602 | "isarray": "^1.0.0" 2603 | } 2604 | }, 2605 | "ieee754": { 2606 | "version": "1.1.13", 2607 | "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.1.13.tgz", 2608 | "integrity": "sha512-4vf7I2LYV/HaWerSo3XmlMkp5eZ83i+/CDluXi/IGTs/O1sejBNhTtnxzmRZfvOUqj7lZjqHkeTvpgSFDlWZTg==", 2609 | "optional": true 2610 | } 2611 | } 2612 | }, 2613 | "balanced-match": { 2614 | "version": "1.0.2", 2615 | "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", 2616 | "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==" 2617 | }, 2618 | "base64-js": { 2619 | "version": "1.5.1", 2620 | "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz", 2621 | "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==", 2622 | "optional": true 2623 | }, 2624 | "before-after-hook": { 2625 | "version": "2.2.2", 2626 | "resolved": "https://registry.npmjs.org/before-after-hook/-/before-after-hook-2.2.2.tgz", 2627 | "integrity": "sha512-3pZEU3NT5BFUo/AD5ERPWOgQOCZITni6iavr5AUw5AUwQjMlI0kzu5btnyD39AF0gUEsDPwJT+oY1ORBJijPjQ==" 2628 | }, 2629 | "binary-extensions": { 2630 | "version": "2.2.0", 2631 | "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz", 2632 | "integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==" 2633 | }, 2634 | "bottleneck": { 2635 | "version": "2.19.5", 2636 | "resolved": "https://registry.npmjs.org/bottleneck/-/bottleneck-2.19.5.tgz", 2637 | "integrity": "sha512-VHiNCbI1lKdl44tGrhNfU3lup0Tj/ZBMJB5/2ZbNXRCPuRCO7ed2mgcK4r17y+KB2EfuYuRaVlwNbAeaWGSpbw==" 2638 | }, 2639 | "boxen": { 2640 | "version": "5.1.2", 2641 | "resolved": "https://registry.npmjs.org/boxen/-/boxen-5.1.2.tgz", 2642 | "integrity": "sha512-9gYgQKXx+1nP8mP7CzFyaUARhg7D3n1dF/FnErWmu9l6JvGpNUN278h0aSb+QjoiKSWG+iZ3uHrcqk0qrY9RQQ==", 2643 | "requires": { 2644 | "ansi-align": "^3.0.0", 2645 | "camelcase": "^6.2.0", 2646 | "chalk": "^4.1.0", 2647 | "cli-boxes": "^2.2.1", 2648 | "string-width": "^4.2.2", 2649 | "type-fest": "^0.20.2", 2650 | "widest-line": "^3.1.0", 2651 | "wrap-ansi": "^7.0.0" 2652 | } 2653 | }, 2654 | "brace-expansion": { 2655 | "version": "1.1.11", 2656 | "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", 2657 | "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", 2658 | "requires": { 2659 | "balanced-match": "^1.0.0", 2660 | "concat-map": "0.0.1" 2661 | } 2662 | }, 2663 | "braces": { 2664 | "version": "3.0.2", 2665 | "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", 2666 | "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", 2667 | "requires": { 2668 | "fill-range": "^7.0.1" 2669 | } 2670 | }, 2671 | "btoa-lite": { 2672 | "version": "1.0.0", 2673 | "resolved": "https://registry.npmjs.org/btoa-lite/-/btoa-lite-1.0.0.tgz", 2674 | "integrity": "sha512-gvW7InbIyF8AicrqWoptdW08pUxuhq8BEgowNajy9RhiE86fmGAGl+bLKo6oB8QP0CkqHLowfN0oJdKC/J6LbA==" 2675 | }, 2676 | "buffer-equal-constant-time": { 2677 | "version": "1.0.1", 2678 | "resolved": "https://registry.npmjs.org/buffer-equal-constant-time/-/buffer-equal-constant-time-1.0.1.tgz", 2679 | "integrity": "sha512-zRpUiDwd/xk6ADqPMATG8vc9VPrkck7T07OIx0gnjmJAnHnTVXNQG3vfvWNuiZIkwu9KrKdA1iJKfsfTVxE6NA==" 2680 | }, 2681 | "cacheable-request": { 2682 | "version": "6.1.0", 2683 | "resolved": "https://registry.npmjs.org/cacheable-request/-/cacheable-request-6.1.0.tgz", 2684 | "integrity": "sha512-Oj3cAGPCqOZX7Rz64Uny2GYAZNliQSqfbePrgAQ1wKAihYmCUnraBtJtKcGR4xz7wF+LoJC+ssFZvv5BgF9Igg==", 2685 | "requires": { 2686 | "clone-response": "^1.0.2", 2687 | "get-stream": "^5.1.0", 2688 | "http-cache-semantics": "^4.0.0", 2689 | "keyv": "^3.0.0", 2690 | "lowercase-keys": "^2.0.0", 2691 | "normalize-url": "^4.1.0", 2692 | "responselike": "^1.0.2" 2693 | }, 2694 | "dependencies": { 2695 | "get-stream": { 2696 | "version": "5.2.0", 2697 | "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-5.2.0.tgz", 2698 | "integrity": "sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA==", 2699 | "requires": { 2700 | "pump": "^3.0.0" 2701 | } 2702 | }, 2703 | "lowercase-keys": { 2704 | "version": "2.0.0", 2705 | "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-2.0.0.tgz", 2706 | "integrity": "sha512-tqNXrS78oMOE73NMxK4EMLQsQowWf8jKooH9g7xPavRT706R6bkQJ6DY2Te7QukaZsulxa30wQ7bk0pm4XiHmA==" 2707 | } 2708 | } 2709 | }, 2710 | "camelcase": { 2711 | "version": "6.3.0", 2712 | "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz", 2713 | "integrity": "sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==" 2714 | }, 2715 | "chalk": { 2716 | "version": "4.1.2", 2717 | "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", 2718 | "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", 2719 | "requires": { 2720 | "ansi-styles": "^4.1.0", 2721 | "supports-color": "^7.1.0" 2722 | }, 2723 | "dependencies": { 2724 | "has-flag": { 2725 | "version": "4.0.0", 2726 | "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", 2727 | "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==" 2728 | }, 2729 | "supports-color": { 2730 | "version": "7.2.0", 2731 | "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", 2732 | "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", 2733 | "requires": { 2734 | "has-flag": "^4.0.0" 2735 | } 2736 | } 2737 | } 2738 | }, 2739 | "chokidar": { 2740 | "version": "3.5.3", 2741 | "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.3.tgz", 2742 | "integrity": "sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==", 2743 | "requires": { 2744 | "anymatch": "~3.1.2", 2745 | "braces": "~3.0.2", 2746 | "fsevents": "~2.3.2", 2747 | "glob-parent": "~5.1.2", 2748 | "is-binary-path": "~2.1.0", 2749 | "is-glob": "~4.0.1", 2750 | "normalize-path": "~3.0.0", 2751 | "readdirp": "~3.6.0" 2752 | } 2753 | }, 2754 | "ci-info": { 2755 | "version": "2.0.0", 2756 | "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-2.0.0.tgz", 2757 | "integrity": "sha512-5tK7EtrZ0N+OLFMthtqOj4fI2Jeb88C4CAZPu25LDVUgXJ0A3Js4PMGqrn0JU1W0Mh1/Z8wZzYPxqUrXeBboCQ==" 2758 | }, 2759 | "clean-stack": { 2760 | "version": "2.2.0", 2761 | "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-2.2.0.tgz", 2762 | "integrity": "sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==" 2763 | }, 2764 | "cli-boxes": { 2765 | "version": "2.2.1", 2766 | "resolved": "https://registry.npmjs.org/cli-boxes/-/cli-boxes-2.2.1.tgz", 2767 | "integrity": "sha512-y4coMcylgSCdVinjiDBuR8PCC2bLjyGTwEmPb9NHR/QaNU6EUOXcTY/s6VjGMD6ENSEaeQYHCY0GNGS5jfMwPw==" 2768 | }, 2769 | "clone-response": { 2770 | "version": "1.0.2", 2771 | "resolved": "https://registry.npmjs.org/clone-response/-/clone-response-1.0.2.tgz", 2772 | "integrity": "sha512-yjLXh88P599UOyPTFX0POsd7WxnbsVsGohcwzHOLspIhhpalPw1BcqED8NblyZLKcGrL8dTgMlcaZxV2jAD41Q==", 2773 | "requires": { 2774 | "mimic-response": "^1.0.0" 2775 | } 2776 | }, 2777 | "color-convert": { 2778 | "version": "2.0.1", 2779 | "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", 2780 | "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", 2781 | "requires": { 2782 | "color-name": "~1.1.4" 2783 | } 2784 | }, 2785 | "color-name": { 2786 | "version": "1.1.4", 2787 | "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", 2788 | "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" 2789 | }, 2790 | "combined-stream": { 2791 | "version": "1.0.8", 2792 | "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", 2793 | "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", 2794 | "requires": { 2795 | "delayed-stream": "~1.0.0" 2796 | } 2797 | }, 2798 | "commander": { 2799 | "version": "3.0.2", 2800 | "resolved": "https://registry.npmjs.org/commander/-/commander-3.0.2.tgz", 2801 | "integrity": "sha512-Gar0ASD4BDyKC4hl4DwHqDrmvjoxWKZigVnAbn5H1owvm4CxCPdb0HQDehwNYMJpla5+M2tPmPARzhtYuwpHow==", 2802 | "optional": true 2803 | }, 2804 | "concat-map": { 2805 | "version": "0.0.1", 2806 | "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", 2807 | "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==" 2808 | }, 2809 | "configstore": { 2810 | "version": "5.0.1", 2811 | "resolved": "https://registry.npmjs.org/configstore/-/configstore-5.0.1.tgz", 2812 | "integrity": "sha512-aMKprgk5YhBNyH25hj8wGt2+D52Sw1DRRIzqBwLp2Ya9mFmY8KPvvtvmna8SxVR9JMZ4kzMD68N22vlaRpkeFA==", 2813 | "requires": { 2814 | "dot-prop": "^5.2.0", 2815 | "graceful-fs": "^4.1.2", 2816 | "make-dir": "^3.0.0", 2817 | "unique-string": "^2.0.0", 2818 | "write-file-atomic": "^3.0.0", 2819 | "xdg-basedir": "^4.0.0" 2820 | } 2821 | }, 2822 | "crypto-random-string": { 2823 | "version": "2.0.0", 2824 | "resolved": "https://registry.npmjs.org/crypto-random-string/-/crypto-random-string-2.0.0.tgz", 2825 | "integrity": "sha512-v1plID3y9r/lPhviJ1wrXpLeyUIGAZ2SHNYTEapm7/8A9nLPoyvVp3RK/EPFqn5kEznyWgYZNsRtYYIWbuG8KA==" 2826 | }, 2827 | "debug": { 2828 | "version": "3.2.7", 2829 | "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", 2830 | "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", 2831 | "requires": { 2832 | "ms": "^2.1.1" 2833 | } 2834 | }, 2835 | "decompress-response": { 2836 | "version": "3.3.0", 2837 | "resolved": "https://registry.npmjs.org/decompress-response/-/decompress-response-3.3.0.tgz", 2838 | "integrity": "sha512-BzRPQuY1ip+qDonAOz42gRm/pg9F768C+npV/4JOsxRC2sq+Rlk+Q4ZCAsOhnIaMrgarILY+RMUIvMmmX1qAEA==", 2839 | "requires": { 2840 | "mimic-response": "^1.0.0" 2841 | } 2842 | }, 2843 | "deep-extend": { 2844 | "version": "0.6.0", 2845 | "resolved": "https://registry.npmjs.org/deep-extend/-/deep-extend-0.6.0.tgz", 2846 | "integrity": "sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA==" 2847 | }, 2848 | "defer-to-connect": { 2849 | "version": "1.1.3", 2850 | "resolved": "https://registry.npmjs.org/defer-to-connect/-/defer-to-connect-1.1.3.tgz", 2851 | "integrity": "sha512-0ISdNousHvZT2EiFlZeZAHBUvSxmKswVCEf8hW7KWgG4a8MVEu/3Vb6uWYozkjylyCxe0JBIiRB1jV45S70WVQ==" 2852 | }, 2853 | "delayed-stream": { 2854 | "version": "1.0.0", 2855 | "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", 2856 | "integrity": "sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==" 2857 | }, 2858 | "deprecation": { 2859 | "version": "2.3.1", 2860 | "resolved": "https://registry.npmjs.org/deprecation/-/deprecation-2.3.1.tgz", 2861 | "integrity": "sha512-xmHIy4F3scKVwMsQ4WnVaS8bHOx0DmVwRywosKhaILI0ywMDWPtBSku2HNxRvF7jtwDRsoEwYQSfbxj8b7RlJQ==" 2862 | }, 2863 | "discord-api-types": { 2864 | "version": "0.33.5", 2865 | "resolved": "https://registry.npmjs.org/discord-api-types/-/discord-api-types-0.33.5.tgz", 2866 | "integrity": "sha512-dvO5M52v7m7Dy96+XUnzXNsQ/0npsYpU6dL205kAtEDueswoz3aU3bh1UMoK4cQmcGtB1YRyLKqp+DXi05lzFg==" 2867 | }, 2868 | "discord.js": { 2869 | "version": "13.8.1", 2870 | "resolved": "https://registry.npmjs.org/discord.js/-/discord.js-13.8.1.tgz", 2871 | "integrity": "sha512-jOsD+4tEZWWx0RHVyH+FBcqoTrsL+d5Mm5p+ULQOdU0qSaxhLNkWYig+yDHNZoND7nlkXX3qi+BW+gO5erWylg==", 2872 | "requires": { 2873 | "@discordjs/builders": "^0.14.0", 2874 | "@discordjs/collection": "^0.7.0", 2875 | "@sapphire/async-queue": "^1.3.1", 2876 | "@types/node-fetch": "^2.6.1", 2877 | "@types/ws": "^8.5.3", 2878 | "discord-api-types": "^0.33.3", 2879 | "form-data": "^4.0.0", 2880 | "node-fetch": "^2.6.1", 2881 | "ws": "^8.7.0" 2882 | }, 2883 | "dependencies": { 2884 | "@discordjs/builders": { 2885 | "version": "0.14.0", 2886 | "resolved": "https://registry.npmjs.org/@discordjs/builders/-/builders-0.14.0.tgz", 2887 | "integrity": "sha512-+fqLIqa9wN3R+kvlld8sgG0nt04BAZxdCDP4t2qZ9TJsquLWA+xMtT8Waibb3d4li4AQS+IOfjiHAznv/dhHgQ==", 2888 | "requires": { 2889 | "@sapphire/shapeshift": "^3.1.0", 2890 | "@sindresorhus/is": "^4.6.0", 2891 | "discord-api-types": "^0.33.3", 2892 | "fast-deep-equal": "^3.1.3", 2893 | "ts-mixer": "^6.0.1", 2894 | "tslib": "^2.4.0" 2895 | } 2896 | } 2897 | } 2898 | }, 2899 | "dot-prop": { 2900 | "version": "5.3.0", 2901 | "resolved": "https://registry.npmjs.org/dot-prop/-/dot-prop-5.3.0.tgz", 2902 | "integrity": "sha512-QM8q3zDe58hqUqjraQOmzZ1LIH9SWQJTlEKCH4kJ2oQvLZk7RbQXvtDM2XEq3fwkV9CCvvH4LA0AV+ogFsBM2Q==", 2903 | "requires": { 2904 | "is-obj": "^2.0.0" 2905 | } 2906 | }, 2907 | "dotenv": { 2908 | "version": "16.0.1", 2909 | "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-16.0.1.tgz", 2910 | "integrity": "sha512-1K6hR6wtk2FviQ4kEiSjFiH5rpzEVi8WW0x96aztHVMhEspNpc4DVOUTEHtEva5VThQ8IaBX1Pe4gSzpVVUsKQ==" 2911 | }, 2912 | "duplexer3": { 2913 | "version": "0.1.4", 2914 | "resolved": "https://registry.npmjs.org/duplexer3/-/duplexer3-0.1.4.tgz", 2915 | "integrity": "sha512-CEj8FwwNA4cVH2uFCoHUrmojhYh1vmCdOaneKJXwkeY1i9jnlslVo9dx+hQ5Hl9GnH/Bwy/IjxAyOePyPKYnzA==" 2916 | }, 2917 | "ecdsa-sig-formatter": { 2918 | "version": "1.0.11", 2919 | "resolved": "https://registry.npmjs.org/ecdsa-sig-formatter/-/ecdsa-sig-formatter-1.0.11.tgz", 2920 | "integrity": "sha512-nagl3RYrbNv6kQkeJIpt6NJZy8twLB/2vtz6yN9Z4vRKHN4/QZJIEbqohALSgwKdnksuY3k5Addp5lg8sVoVcQ==", 2921 | "requires": { 2922 | "safe-buffer": "^5.0.1" 2923 | } 2924 | }, 2925 | "emoji-regex": { 2926 | "version": "8.0.0", 2927 | "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", 2928 | "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==" 2929 | }, 2930 | "end-of-stream": { 2931 | "version": "1.4.4", 2932 | "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.4.tgz", 2933 | "integrity": "sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==", 2934 | "requires": { 2935 | "once": "^1.4.0" 2936 | } 2937 | }, 2938 | "escape-goat": { 2939 | "version": "2.1.1", 2940 | "resolved": "https://registry.npmjs.org/escape-goat/-/escape-goat-2.1.1.tgz", 2941 | "integrity": "sha512-8/uIhbG12Csjy2JEW7D9pHbreaVaS/OpN3ycnyvElTdwM5n6GY6W6e2IPemfvGZeUMqZ9A/3GqIZMgKnBhAw/Q==" 2942 | }, 2943 | "esprima": { 2944 | "version": "4.0.1", 2945 | "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", 2946 | "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", 2947 | "optional": true 2948 | }, 2949 | "events": { 2950 | "version": "1.1.1", 2951 | "resolved": "https://registry.npmjs.org/events/-/events-1.1.1.tgz", 2952 | "integrity": "sha512-kEcvvCBByWXGnZy6JUlgAp2gBIUjfCAV6P6TgT1/aaQKcmuAEC4OZTV1I4EWQLz2gxZw76atuVyvHhTxvi0Flw==", 2953 | "optional": true 2954 | }, 2955 | "eventsource": { 2956 | "version": "2.0.2", 2957 | "resolved": "https://registry.npmjs.org/eventsource/-/eventsource-2.0.2.tgz", 2958 | "integrity": "sha512-IzUmBGPR3+oUG9dUeXynyNmf91/3zUSJg1lCktzKw47OXuhco54U3r9B7O4XX+Rb1Itm9OZ2b0RkTs10bICOxA==" 2959 | }, 2960 | "fast-deep-equal": { 2961 | "version": "3.1.3", 2962 | "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", 2963 | "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==" 2964 | }, 2965 | "fill-range": { 2966 | "version": "7.0.1", 2967 | "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", 2968 | "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", 2969 | "requires": { 2970 | "to-regex-range": "^5.0.1" 2971 | } 2972 | }, 2973 | "form-data": { 2974 | "version": "4.0.0", 2975 | "resolved": "https://registry.npmjs.org/form-data/-/form-data-4.0.0.tgz", 2976 | "integrity": "sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww==", 2977 | "requires": { 2978 | "asynckit": "^0.4.0", 2979 | "combined-stream": "^1.0.8", 2980 | "mime-types": "^2.1.12" 2981 | } 2982 | }, 2983 | "fromentries": { 2984 | "version": "1.3.2", 2985 | "resolved": "https://registry.npmjs.org/fromentries/-/fromentries-1.3.2.tgz", 2986 | "integrity": "sha512-cHEpEQHUg0f8XdtZCc2ZAhrHzKzT0MrFUTcvx+hfxYu7rGMDc5SKoXFh+n4YigxsHXRzc6OrCshdR1bWH6HHyg==" 2987 | }, 2988 | "fsevents": { 2989 | "version": "2.3.2", 2990 | "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz", 2991 | "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==", 2992 | "optional": true 2993 | }, 2994 | "get-stream": { 2995 | "version": "4.1.0", 2996 | "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-4.1.0.tgz", 2997 | "integrity": "sha512-GMat4EJ5161kIy2HevLlr4luNjBgvmj413KaQA7jt4V8B4RDsfpHk7WQ9GVqfYyyx8OS/L66Kox+rJRNklLK7w==", 2998 | "requires": { 2999 | "pump": "^3.0.0" 3000 | } 3001 | }, 3002 | "glob-parent": { 3003 | "version": "5.1.2", 3004 | "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", 3005 | "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", 3006 | "requires": { 3007 | "is-glob": "^4.0.1" 3008 | } 3009 | }, 3010 | "glob-to-regexp": { 3011 | "version": "0.4.1", 3012 | "resolved": "https://registry.npmjs.org/glob-to-regexp/-/glob-to-regexp-0.4.1.tgz", 3013 | "integrity": "sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw==", 3014 | "optional": true 3015 | }, 3016 | "global-dirs": { 3017 | "version": "3.0.0", 3018 | "resolved": "https://registry.npmjs.org/global-dirs/-/global-dirs-3.0.0.tgz", 3019 | "integrity": "sha512-v8ho2DS5RiCjftj1nD9NmnfaOzTdud7RRnVd9kFNOjqZbISlx5DQ+OrTkywgd0dIt7oFCvKetZSHoHcP3sDdiA==", 3020 | "requires": { 3021 | "ini": "2.0.0" 3022 | } 3023 | }, 3024 | "got": { 3025 | "version": "9.6.0", 3026 | "resolved": "https://registry.npmjs.org/got/-/got-9.6.0.tgz", 3027 | "integrity": "sha512-R7eWptXuGYxwijs0eV+v3o6+XH1IqVK8dJOEecQfTmkncw9AV4dcw/Dhxi8MdlqPthxxpZyizMzyg8RTmEsG+Q==", 3028 | "requires": { 3029 | "@sindresorhus/is": "^0.14.0", 3030 | "@szmarczak/http-timer": "^1.1.2", 3031 | "cacheable-request": "^6.0.0", 3032 | "decompress-response": "^3.3.0", 3033 | "duplexer3": "^0.1.4", 3034 | "get-stream": "^4.1.0", 3035 | "lowercase-keys": "^1.0.1", 3036 | "mimic-response": "^1.0.1", 3037 | "p-cancelable": "^1.0.0", 3038 | "to-readable-stream": "^1.0.0", 3039 | "url-parse-lax": "^3.0.0" 3040 | }, 3041 | "dependencies": { 3042 | "@sindresorhus/is": { 3043 | "version": "0.14.0", 3044 | "resolved": "https://registry.npmjs.org/@sindresorhus/is/-/is-0.14.0.tgz", 3045 | "integrity": "sha512-9NET910DNaIPngYnLLPeg+Ogzqsi9uM4mSboU5y6p8S5DzMTVEsJZrawi+BoDNUVBa2DhJqQYUFvMDfgU062LQ==" 3046 | } 3047 | } 3048 | }, 3049 | "graceful-fs": { 3050 | "version": "4.2.10", 3051 | "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.10.tgz", 3052 | "integrity": "sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA==" 3053 | }, 3054 | "has-flag": { 3055 | "version": "3.0.0", 3056 | "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", 3057 | "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==" 3058 | }, 3059 | "has-yarn": { 3060 | "version": "2.1.0", 3061 | "resolved": "https://registry.npmjs.org/has-yarn/-/has-yarn-2.1.0.tgz", 3062 | "integrity": "sha512-UqBRqi4ju7T+TqGNdqAO0PaSVGsDGJUBQvk9eUWNGRY1CFGDzYhLWoM7JQEemnlvVcv/YEmc2wNW8BC24EnUsw==" 3063 | }, 3064 | "http-cache-semantics": { 3065 | "version": "4.1.0", 3066 | "resolved": "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-4.1.0.tgz", 3067 | "integrity": "sha512-carPklcUh7ROWRK7Cv27RPtdhYhUsela/ue5/jKzjegVvXDqM2ILE9Q2BGn9JZJh1g87cp56su/FgQSzcWS8cQ==" 3068 | }, 3069 | "ignore-by-default": { 3070 | "version": "1.0.1", 3071 | "resolved": "https://registry.npmjs.org/ignore-by-default/-/ignore-by-default-1.0.1.tgz", 3072 | "integrity": "sha512-Ius2VYcGNk7T90CppJqcIkS5ooHUZyIQK+ClZfMfMNFEF9VSE73Fq+906u/CWu92x4gzZMWOwfFYckPObzdEbA==" 3073 | }, 3074 | "import-lazy": { 3075 | "version": "2.1.0", 3076 | "resolved": "https://registry.npmjs.org/import-lazy/-/import-lazy-2.1.0.tgz", 3077 | "integrity": "sha512-m7ZEHgtw69qOGw+jwxXkHlrlIPdTGkyh66zXZ1ajZbxkDBNjSY/LGbmjc7h0s2ELsUDTAhFr55TrPSSqJGPG0A==" 3078 | }, 3079 | "imurmurhash": { 3080 | "version": "0.1.4", 3081 | "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", 3082 | "integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==" 3083 | }, 3084 | "indent-string": { 3085 | "version": "4.0.0", 3086 | "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz", 3087 | "integrity": "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==" 3088 | }, 3089 | "ini": { 3090 | "version": "2.0.0", 3091 | "resolved": "https://registry.npmjs.org/ini/-/ini-2.0.0.tgz", 3092 | "integrity": "sha512-7PnF4oN3CvZF23ADhA5wRaYEQpJ8qygSkbtTXWBeXWXmEVRXK+1ITciHWwHhsjv1TmW0MgacIv6hEi5pX5NQdA==" 3093 | }, 3094 | "is-binary-path": { 3095 | "version": "2.1.0", 3096 | "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", 3097 | "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", 3098 | "requires": { 3099 | "binary-extensions": "^2.0.0" 3100 | } 3101 | }, 3102 | "is-ci": { 3103 | "version": "2.0.0", 3104 | "resolved": "https://registry.npmjs.org/is-ci/-/is-ci-2.0.0.tgz", 3105 | "integrity": "sha512-YfJT7rkpQB0updsdHLGWrvhBJfcfzNNawYDNIyQXJz0IViGf75O8EBPKSdvw2rF+LGCsX4FZ8tcr3b19LcZq4w==", 3106 | "requires": { 3107 | "ci-info": "^2.0.0" 3108 | } 3109 | }, 3110 | "is-extglob": { 3111 | "version": "2.1.1", 3112 | "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", 3113 | "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==" 3114 | }, 3115 | "is-fullwidth-code-point": { 3116 | "version": "3.0.0", 3117 | "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", 3118 | "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==" 3119 | }, 3120 | "is-glob": { 3121 | "version": "4.0.3", 3122 | "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", 3123 | "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", 3124 | "requires": { 3125 | "is-extglob": "^2.1.1" 3126 | } 3127 | }, 3128 | "is-installed-globally": { 3129 | "version": "0.4.0", 3130 | "resolved": "https://registry.npmjs.org/is-installed-globally/-/is-installed-globally-0.4.0.tgz", 3131 | "integrity": "sha512-iwGqO3J21aaSkC7jWnHP/difazwS7SFeIqxv6wEtLU8Y5KlzFTjyqcSIT0d8s4+dDhKytsk9PJZ2BkS5eZwQRQ==", 3132 | "requires": { 3133 | "global-dirs": "^3.0.0", 3134 | "is-path-inside": "^3.0.2" 3135 | } 3136 | }, 3137 | "is-npm": { 3138 | "version": "5.0.0", 3139 | "resolved": "https://registry.npmjs.org/is-npm/-/is-npm-5.0.0.tgz", 3140 | "integrity": "sha512-WW/rQLOazUq+ST/bCAVBp/2oMERWLsR7OrKyt052dNDk4DHcDE0/7QSXITlmi+VBcV13DfIbysG3tZJm5RfdBA==" 3141 | }, 3142 | "is-number": { 3143 | "version": "7.0.0", 3144 | "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", 3145 | "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==" 3146 | }, 3147 | "is-obj": { 3148 | "version": "2.0.0", 3149 | "resolved": "https://registry.npmjs.org/is-obj/-/is-obj-2.0.0.tgz", 3150 | "integrity": "sha512-drqDG3cbczxxEJRoOXcOjtdp1J/lyp1mNn0xaznRs8+muBhgQcrnbspox5X5fOw0HnMnbfDzvnEMEtqDEJEo8w==" 3151 | }, 3152 | "is-path-inside": { 3153 | "version": "3.0.3", 3154 | "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-3.0.3.tgz", 3155 | "integrity": "sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==" 3156 | }, 3157 | "is-plain-object": { 3158 | "version": "5.0.0", 3159 | "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-5.0.0.tgz", 3160 | "integrity": "sha512-VRSzKkbMm5jMDoKLbltAkFQ5Qr7VDiTFGXxYFXXowVj387GeGNOCsOH6Msy00SGZ3Fp84b1Naa1psqgcCIEP5Q==" 3161 | }, 3162 | "is-typedarray": { 3163 | "version": "1.0.0", 3164 | "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz", 3165 | "integrity": "sha512-cyA56iCMHAh5CdzjJIa4aohJyeO1YbwLi3Jc35MmRU6poroFjIGZzUzupGiRPOjgHg9TLu43xbpwXk523fMxKA==" 3166 | }, 3167 | "is-yarn-global": { 3168 | "version": "0.3.0", 3169 | "resolved": "https://registry.npmjs.org/is-yarn-global/-/is-yarn-global-0.3.0.tgz", 3170 | "integrity": "sha512-VjSeb/lHmkoyd8ryPVIKvOCn4D1koMqY+vqyjjUfc3xyKtP4dYOxM44sZrnqQSzSds3xyOrUTLTC9LVCVgLngw==" 3171 | }, 3172 | "isarray": { 3173 | "version": "1.0.0", 3174 | "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", 3175 | "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==", 3176 | "optional": true 3177 | }, 3178 | "jmespath": { 3179 | "version": "0.16.0", 3180 | "resolved": "https://registry.npmjs.org/jmespath/-/jmespath-0.16.0.tgz", 3181 | "integrity": "sha512-9FzQjJ7MATs1tSpnco1K6ayiYE3figslrXA72G2HQ/n76RzvYlofyi5QM+iX4YRs/pu3yzxlVQSST23+dMDknw==", 3182 | "optional": true 3183 | }, 3184 | "js-yaml": { 3185 | "version": "3.14.1", 3186 | "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", 3187 | "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==", 3188 | "optional": true, 3189 | "requires": { 3190 | "argparse": "^1.0.7", 3191 | "esprima": "^4.0.0" 3192 | } 3193 | }, 3194 | "json-buffer": { 3195 | "version": "3.0.0", 3196 | "resolved": "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.0.tgz", 3197 | "integrity": "sha512-CuUqjv0FUZIdXkHPI8MezCnFCdaTAacej1TZYulLoAg1h/PhwkdXFN4V/gzY4g+fMBCOV2xF+rp7t2XD2ns/NQ==" 3198 | }, 3199 | "jsonwebtoken": { 3200 | "version": "8.5.1", 3201 | "resolved": "https://registry.npmjs.org/jsonwebtoken/-/jsonwebtoken-8.5.1.tgz", 3202 | "integrity": "sha512-XjwVfRS6jTMsqYs0EsuJ4LGxXV14zQybNd4L2r0UvbVnSF9Af8x7p5MzbJ90Ioz/9TI41/hTCvznF/loiSzn8w==", 3203 | "requires": { 3204 | "jws": "^3.2.2", 3205 | "lodash.includes": "^4.3.0", 3206 | "lodash.isboolean": "^3.0.3", 3207 | "lodash.isinteger": "^4.0.4", 3208 | "lodash.isnumber": "^3.0.3", 3209 | "lodash.isplainobject": "^4.0.6", 3210 | "lodash.isstring": "^4.0.1", 3211 | "lodash.once": "^4.0.0", 3212 | "ms": "^2.1.1", 3213 | "semver": "^5.6.0" 3214 | } 3215 | }, 3216 | "jwa": { 3217 | "version": "1.4.1", 3218 | "resolved": "https://registry.npmjs.org/jwa/-/jwa-1.4.1.tgz", 3219 | "integrity": "sha512-qiLX/xhEEFKUAJ6FiBMbes3w9ATzyk5W7Hvzpa/SLYdxNtng+gcurvrI7TbACjIXlsJyr05/S1oUhZrc63evQA==", 3220 | "requires": { 3221 | "buffer-equal-constant-time": "1.0.1", 3222 | "ecdsa-sig-formatter": "1.0.11", 3223 | "safe-buffer": "^5.0.1" 3224 | } 3225 | }, 3226 | "jws": { 3227 | "version": "3.2.2", 3228 | "resolved": "https://registry.npmjs.org/jws/-/jws-3.2.2.tgz", 3229 | "integrity": "sha512-YHlZCB6lMTllWDtSPHz/ZXTsi8S00usEV6v1tjq8tOUZzw7DpSDWVXjXDre6ed1w/pd495ODpHZYSdkRTsa0HA==", 3230 | "requires": { 3231 | "jwa": "^1.4.1", 3232 | "safe-buffer": "^5.0.1" 3233 | } 3234 | }, 3235 | "keyv": { 3236 | "version": "3.1.0", 3237 | "resolved": "https://registry.npmjs.org/keyv/-/keyv-3.1.0.tgz", 3238 | "integrity": "sha512-9ykJ/46SN/9KPM/sichzQ7OvXyGDYKGTaDlKMGCAlg2UK8KRy4jb0d8sFc+0Tt0YYnThq8X2RZgCg74RPxgcVA==", 3239 | "requires": { 3240 | "json-buffer": "3.0.0" 3241 | } 3242 | }, 3243 | "latest-version": { 3244 | "version": "5.1.0", 3245 | "resolved": "https://registry.npmjs.org/latest-version/-/latest-version-5.1.0.tgz", 3246 | "integrity": "sha512-weT+r0kTkRQdCdYCNtkMwWXQTMEswKrFBkm4ckQOMVhhqhIMI1UT2hMj+1iigIhgSZm5gTmrRXBNoGUgaTY1xA==", 3247 | "requires": { 3248 | "package-json": "^6.3.0" 3249 | } 3250 | }, 3251 | "lodash.includes": { 3252 | "version": "4.3.0", 3253 | "resolved": "https://registry.npmjs.org/lodash.includes/-/lodash.includes-4.3.0.tgz", 3254 | "integrity": "sha512-W3Bx6mdkRTGtlJISOvVD/lbqjTlPPUDTMnlXZFnVwi9NKJ6tiAk6LVdlhZMm17VZisqhKcgzpO5Wz91PCt5b0w==" 3255 | }, 3256 | "lodash.isboolean": { 3257 | "version": "3.0.3", 3258 | "resolved": "https://registry.npmjs.org/lodash.isboolean/-/lodash.isboolean-3.0.3.tgz", 3259 | "integrity": "sha512-Bz5mupy2SVbPHURB98VAcw+aHh4vRV5IPNhILUCsOzRmsTmSQ17jIuqopAentWoehktxGd9e/hbIXq980/1QJg==" 3260 | }, 3261 | "lodash.isinteger": { 3262 | "version": "4.0.4", 3263 | "resolved": "https://registry.npmjs.org/lodash.isinteger/-/lodash.isinteger-4.0.4.tgz", 3264 | "integrity": "sha512-DBwtEWN2caHQ9/imiNeEA5ys1JoRtRfY3d7V9wkqtbycnAmTvRRmbHKDV4a0EYc678/dia0jrte4tjYwVBaZUA==" 3265 | }, 3266 | "lodash.isnumber": { 3267 | "version": "3.0.3", 3268 | "resolved": "https://registry.npmjs.org/lodash.isnumber/-/lodash.isnumber-3.0.3.tgz", 3269 | "integrity": "sha512-QYqzpfwO3/CWf3XP+Z+tkQsfaLL/EnUlXWVkIk5FUPc4sBdTehEqZONuyRt2P67PXAk+NXmTBcc97zw9t1FQrw==" 3270 | }, 3271 | "lodash.isplainobject": { 3272 | "version": "4.0.6", 3273 | "resolved": "https://registry.npmjs.org/lodash.isplainobject/-/lodash.isplainobject-4.0.6.tgz", 3274 | "integrity": "sha512-oSXzaWypCMHkPC3NvBEaPHf0KsA5mvPrOPgQWDsbg8n7orZ290M0BmC/jgRZ4vcJ6DTAhjrsSYgdsW/F+MFOBA==" 3275 | }, 3276 | "lodash.isstring": { 3277 | "version": "4.0.1", 3278 | "resolved": "https://registry.npmjs.org/lodash.isstring/-/lodash.isstring-4.0.1.tgz", 3279 | "integrity": "sha512-0wJxfxH1wgO3GrbuP+dTTk7op+6L41QCXbGINEmD+ny/G/eCqGzxyCsh7159S+mgDDcoarnBw6PC1PS5+wUGgw==" 3280 | }, 3281 | "lodash.once": { 3282 | "version": "4.1.1", 3283 | "resolved": "https://registry.npmjs.org/lodash.once/-/lodash.once-4.1.1.tgz", 3284 | "integrity": "sha512-Sb487aTOCr9drQVL8pIxOzVhafOjZN9UU54hiN8PU3uAiSV7lx1yYNpbNmex2PK6dSJoNTSJUUswT651yww3Mg==" 3285 | }, 3286 | "lowercase-keys": { 3287 | "version": "1.0.1", 3288 | "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-1.0.1.tgz", 3289 | "integrity": "sha512-G2Lj61tXDnVFFOi8VZds+SoQjtQC3dgokKdDG2mTm1tx4m50NUHBOZSBwQQHyy0V12A0JTG4icfZQH+xPyh8VA==" 3290 | }, 3291 | "lru-cache": { 3292 | "version": "6.0.0", 3293 | "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", 3294 | "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", 3295 | "requires": { 3296 | "yallist": "^4.0.0" 3297 | } 3298 | }, 3299 | "make-dir": { 3300 | "version": "3.1.0", 3301 | "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", 3302 | "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", 3303 | "requires": { 3304 | "semver": "^6.0.0" 3305 | }, 3306 | "dependencies": { 3307 | "semver": { 3308 | "version": "6.3.0", 3309 | "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", 3310 | "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==" 3311 | } 3312 | } 3313 | }, 3314 | "mime-db": { 3315 | "version": "1.52.0", 3316 | "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", 3317 | "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==" 3318 | }, 3319 | "mime-types": { 3320 | "version": "2.1.35", 3321 | "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", 3322 | "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", 3323 | "requires": { 3324 | "mime-db": "1.52.0" 3325 | } 3326 | }, 3327 | "mimic-response": { 3328 | "version": "1.0.1", 3329 | "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-1.0.1.tgz", 3330 | "integrity": "sha512-j5EctnkH7amfV/q5Hgmoal1g2QHFJRraOtmx0JpIqkxhBhI/lJSl1nMpQ45hVarwNETOoWEimndZ4QK0RHxuxQ==" 3331 | }, 3332 | "minimatch": { 3333 | "version": "3.1.2", 3334 | "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", 3335 | "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", 3336 | "requires": { 3337 | "brace-expansion": "^1.1.7" 3338 | } 3339 | }, 3340 | "minimist": { 3341 | "version": "1.2.6", 3342 | "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.6.tgz", 3343 | "integrity": "sha512-Jsjnk4bw3YJqYzbdyBiNsPWHPfO++UGG749Cxs6peCu5Xg4nrena6OVxOYxrQTqww0Jmwt+Ref8rggumkTLz9Q==" 3344 | }, 3345 | "ms": { 3346 | "version": "2.1.3", 3347 | "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", 3348 | "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==" 3349 | }, 3350 | "node-fetch": { 3351 | "version": "2.6.7", 3352 | "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.7.tgz", 3353 | "integrity": "sha512-ZjMPFEfVx5j+y2yF35Kzx5sF7kDzxuDj6ziH4FFbOp87zKDZNx8yExJIb05OGF4Nlt9IHFIMBkRl41VdvcNdbQ==", 3354 | "requires": { 3355 | "whatwg-url": "^5.0.0" 3356 | }, 3357 | "dependencies": { 3358 | "tr46": { 3359 | "version": "0.0.3", 3360 | "resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz", 3361 | "integrity": "sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==" 3362 | }, 3363 | "webidl-conversions": { 3364 | "version": "3.0.1", 3365 | "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz", 3366 | "integrity": "sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==" 3367 | }, 3368 | "whatwg-url": { 3369 | "version": "5.0.0", 3370 | "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz", 3371 | "integrity": "sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==", 3372 | "requires": { 3373 | "tr46": "~0.0.3", 3374 | "webidl-conversions": "^3.0.0" 3375 | } 3376 | } 3377 | } 3378 | }, 3379 | "nodemon": { 3380 | "version": "2.0.18", 3381 | "resolved": "https://registry.npmjs.org/nodemon/-/nodemon-2.0.18.tgz", 3382 | "integrity": "sha512-uAvrKipi2zAz8E7nkSz4qW4F4zd5fs2wNGsTx+xXlP8KXqd9ucE0vY9wankOsPboeDyuUGN9vsXGV1pLn80l/A==", 3383 | "requires": { 3384 | "chokidar": "^3.5.2", 3385 | "debug": "^3.2.7", 3386 | "ignore-by-default": "^1.0.1", 3387 | "minimatch": "^3.0.4", 3388 | "pstree.remy": "^1.1.8", 3389 | "semver": "^5.7.1", 3390 | "supports-color": "^5.5.0", 3391 | "touch": "^3.1.0", 3392 | "undefsafe": "^2.0.5", 3393 | "update-notifier": "^5.1.0" 3394 | } 3395 | }, 3396 | "nopt": { 3397 | "version": "1.0.10", 3398 | "resolved": "https://registry.npmjs.org/nopt/-/nopt-1.0.10.tgz", 3399 | "integrity": "sha512-NWmpvLSqUrgrAC9HCuxEvb+PSloHpqVu+FqcO4eeF2h5qYRhA7ev6KvelyQAKtegUbC6RypJnlEOhd8vloNKYg==", 3400 | "requires": { 3401 | "abbrev": "1" 3402 | } 3403 | }, 3404 | "normalize-path": { 3405 | "version": "3.0.0", 3406 | "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", 3407 | "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==" 3408 | }, 3409 | "normalize-url": { 3410 | "version": "4.5.1", 3411 | "resolved": "https://registry.npmjs.org/normalize-url/-/normalize-url-4.5.1.tgz", 3412 | "integrity": "sha512-9UZCFRHQdNrfTpGg8+1INIg93B6zE0aXMVFkw1WFwvO4SlZywU6aLg5Of0Ap/PgcbSw4LNxvMWXMeugwMCX0AA==" 3413 | }, 3414 | "octokit": { 3415 | "version": "1.8.1", 3416 | "resolved": "https://registry.npmjs.org/octokit/-/octokit-1.8.1.tgz", 3417 | "integrity": "sha512-xBLKFIivbl7wnLwxzLYuDO/JDNYxdyxoSjFrl/QMrY/fwGGQYYklvKUDTUyGMU0aXPrQtJ0IZnG3BXpCkDQzWg==", 3418 | "requires": { 3419 | "@octokit/app": "^12.0.4", 3420 | "@octokit/core": "^3.5.1", 3421 | "@octokit/oauth-app": "^3.5.1", 3422 | "@octokit/plugin-paginate-rest": "^2.18.0", 3423 | "@octokit/plugin-rest-endpoint-methods": "^5.14.0", 3424 | "@octokit/plugin-retry": "^3.0.9", 3425 | "@octokit/plugin-throttling": "^3.5.1", 3426 | "@octokit/types": "^6.35.0" 3427 | } 3428 | }, 3429 | "once": { 3430 | "version": "1.4.0", 3431 | "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", 3432 | "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", 3433 | "requires": { 3434 | "wrappy": "1" 3435 | } 3436 | }, 3437 | "p-cancelable": { 3438 | "version": "1.1.0", 3439 | "resolved": "https://registry.npmjs.org/p-cancelable/-/p-cancelable-1.1.0.tgz", 3440 | "integrity": "sha512-s73XxOZ4zpt1edZYZzvhqFa6uvQc1vwUa0K0BdtIZgQMAJj9IbebH+JkgKZc9h+B05PKHLOTl4ajG1BmNrVZlw==" 3441 | }, 3442 | "package-json": { 3443 | "version": "6.5.0", 3444 | "resolved": "https://registry.npmjs.org/package-json/-/package-json-6.5.0.tgz", 3445 | "integrity": "sha512-k3bdm2n25tkyxcjSKzB5x8kfVxlMdgsbPr0GkZcwHsLpba6cBjqCt1KlcChKEvxHIcTB1FVMuwoijZ26xex5MQ==", 3446 | "requires": { 3447 | "got": "^9.6.0", 3448 | "registry-auth-token": "^4.0.0", 3449 | "registry-url": "^5.0.0", 3450 | "semver": "^6.2.0" 3451 | }, 3452 | "dependencies": { 3453 | "semver": { 3454 | "version": "6.3.0", 3455 | "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", 3456 | "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==" 3457 | } 3458 | } 3459 | }, 3460 | "picomatch": { 3461 | "version": "2.3.1", 3462 | "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", 3463 | "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==" 3464 | }, 3465 | "prepend-http": { 3466 | "version": "2.0.0", 3467 | "resolved": "https://registry.npmjs.org/prepend-http/-/prepend-http-2.0.0.tgz", 3468 | "integrity": "sha512-ravE6m9Atw9Z/jjttRUZ+clIXogdghyZAuWJ3qEzjT+jI/dL1ifAqhZeC5VHzQp1MSt1+jxKkFNemj/iO7tVUA==" 3469 | }, 3470 | "pstree.remy": { 3471 | "version": "1.1.8", 3472 | "resolved": "https://registry.npmjs.org/pstree.remy/-/pstree.remy-1.1.8.tgz", 3473 | "integrity": "sha512-77DZwxQmxKnu3aR542U+X8FypNzbfJ+C5XQDk3uWjWxn6151aIMGthWYRXTqT1E5oJvg+ljaa2OJi+VfvCOQ8w==" 3474 | }, 3475 | "pump": { 3476 | "version": "3.0.0", 3477 | "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz", 3478 | "integrity": "sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==", 3479 | "requires": { 3480 | "end-of-stream": "^1.1.0", 3481 | "once": "^1.3.1" 3482 | } 3483 | }, 3484 | "punycode": { 3485 | "version": "1.3.2", 3486 | "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.3.2.tgz", 3487 | "integrity": "sha512-RofWgt/7fL5wP1Y7fxE7/EmTLzQVnB0ycyibJ0OOHIlJqTNzglYFxVwETOcIoJqJmpDXJ9xImDv+Fq34F/d4Dw==", 3488 | "optional": true 3489 | }, 3490 | "pupa": { 3491 | "version": "2.1.1", 3492 | "resolved": "https://registry.npmjs.org/pupa/-/pupa-2.1.1.tgz", 3493 | "integrity": "sha512-l1jNAspIBSFqbT+y+5FosojNpVpF94nlI+wDUpqP9enwOTfHx9f0gh5nB96vl+6yTpsJsypeNrwfzPrKuHB41A==", 3494 | "requires": { 3495 | "escape-goat": "^2.0.0" 3496 | } 3497 | }, 3498 | "querystring": { 3499 | "version": "0.2.0", 3500 | "resolved": "https://registry.npmjs.org/querystring/-/querystring-0.2.0.tgz", 3501 | "integrity": "sha512-X/xY82scca2tau62i9mDyU9K+I+djTMUsvwf7xnUX5GLvVzgJybOJf4Y6o9Zx3oJK/LSXg5tTZBjwzqVPaPO2g==", 3502 | "optional": true 3503 | }, 3504 | "rc": { 3505 | "version": "1.2.8", 3506 | "resolved": "https://registry.npmjs.org/rc/-/rc-1.2.8.tgz", 3507 | "integrity": "sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw==", 3508 | "requires": { 3509 | "deep-extend": "^0.6.0", 3510 | "ini": "~1.3.0", 3511 | "minimist": "^1.2.0", 3512 | "strip-json-comments": "~2.0.1" 3513 | }, 3514 | "dependencies": { 3515 | "ini": { 3516 | "version": "1.3.8", 3517 | "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.8.tgz", 3518 | "integrity": "sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==" 3519 | } 3520 | } 3521 | }, 3522 | "readdirp": { 3523 | "version": "3.6.0", 3524 | "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", 3525 | "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", 3526 | "requires": { 3527 | "picomatch": "^2.2.1" 3528 | } 3529 | }, 3530 | "registry-auth-token": { 3531 | "version": "4.2.2", 3532 | "resolved": "https://registry.npmjs.org/registry-auth-token/-/registry-auth-token-4.2.2.tgz", 3533 | "integrity": "sha512-PC5ZysNb42zpFME6D/XlIgtNGdTl8bBOCw90xQLVMpzuuubJKYDWFAEuUNc+Cn8Z8724tg2SDhDRrkVEsqfDMg==", 3534 | "requires": { 3535 | "rc": "1.2.8" 3536 | } 3537 | }, 3538 | "registry-url": { 3539 | "version": "5.1.0", 3540 | "resolved": "https://registry.npmjs.org/registry-url/-/registry-url-5.1.0.tgz", 3541 | "integrity": "sha512-8acYXXTI0AkQv6RAOjE3vOaIXZkT9wo4LOFbBKYQEEnnMNBpKqdUrI6S4NT0KPIo/WVvJ5tE/X5LF/TQUf0ekw==", 3542 | "requires": { 3543 | "rc": "^1.2.8" 3544 | } 3545 | }, 3546 | "responselike": { 3547 | "version": "1.0.2", 3548 | "resolved": "https://registry.npmjs.org/responselike/-/responselike-1.0.2.tgz", 3549 | "integrity": "sha512-/Fpe5guzJk1gPqdJLJR5u7eG/gNY4nImjbRDaVWVMRhne55TCmj2i9Q+54PBRfatRC8v/rIiv9BN0pMd9OV5EQ==", 3550 | "requires": { 3551 | "lowercase-keys": "^1.0.0" 3552 | } 3553 | }, 3554 | "safe-buffer": { 3555 | "version": "5.2.1", 3556 | "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", 3557 | "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==" 3558 | }, 3559 | "sax": { 3560 | "version": "1.2.1", 3561 | "resolved": "https://registry.npmjs.org/sax/-/sax-1.2.1.tgz", 3562 | "integrity": "sha512-8I2a3LovHTOpm7NV5yOyO8IHqgVsfK4+UuySrXU8YXkSRX7k6hCV9b3HrkKCr3nMpgj+0bmocaJJWpvp1oc7ZA==", 3563 | "optional": true 3564 | }, 3565 | "semver": { 3566 | "version": "5.7.1", 3567 | "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", 3568 | "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==" 3569 | }, 3570 | "semver-diff": { 3571 | "version": "3.1.1", 3572 | "resolved": "https://registry.npmjs.org/semver-diff/-/semver-diff-3.1.1.tgz", 3573 | "integrity": "sha512-GX0Ix/CJcHyB8c4ykpHGIAvLyOwOobtM/8d+TQkAd81/bEjgPHrfba41Vpesr7jX/t8Uh+R3EX9eAS5be+jQYg==", 3574 | "requires": { 3575 | "semver": "^6.3.0" 3576 | }, 3577 | "dependencies": { 3578 | "semver": { 3579 | "version": "6.3.0", 3580 | "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", 3581 | "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==" 3582 | } 3583 | } 3584 | }, 3585 | "signal-exit": { 3586 | "version": "3.0.7", 3587 | "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", 3588 | "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==" 3589 | }, 3590 | "sprintf-js": { 3591 | "version": "1.0.3", 3592 | "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", 3593 | "integrity": "sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==", 3594 | "optional": true 3595 | }, 3596 | "string-width": { 3597 | "version": "4.2.3", 3598 | "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", 3599 | "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", 3600 | "requires": { 3601 | "emoji-regex": "^8.0.0", 3602 | "is-fullwidth-code-point": "^3.0.0", 3603 | "strip-ansi": "^6.0.1" 3604 | } 3605 | }, 3606 | "strip-ansi": { 3607 | "version": "6.0.1", 3608 | "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", 3609 | "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", 3610 | "requires": { 3611 | "ansi-regex": "^5.0.1" 3612 | } 3613 | }, 3614 | "strip-json-comments": { 3615 | "version": "2.0.1", 3616 | "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz", 3617 | "integrity": "sha512-4gB8na07fecVVkOI6Rs4e7T6NOTki5EmL7TUduTs6bu3EdnSycntVJ4re8kgZA+wx9IueI2Y11bfbgwtzuE0KQ==" 3618 | }, 3619 | "supports-color": { 3620 | "version": "5.5.0", 3621 | "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", 3622 | "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", 3623 | "requires": { 3624 | "has-flag": "^3.0.0" 3625 | } 3626 | }, 3627 | "to-readable-stream": { 3628 | "version": "1.0.0", 3629 | "resolved": "https://registry.npmjs.org/to-readable-stream/-/to-readable-stream-1.0.0.tgz", 3630 | "integrity": "sha512-Iq25XBt6zD5npPhlLVXGFN3/gyR2/qODcKNNyTMd4vbm39HUaOiAM4PMq0eMVC/Tkxz+Zjdsc55g9yyz+Yq00Q==" 3631 | }, 3632 | "to-regex-range": { 3633 | "version": "5.0.1", 3634 | "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", 3635 | "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", 3636 | "requires": { 3637 | "is-number": "^7.0.0" 3638 | } 3639 | }, 3640 | "touch": { 3641 | "version": "3.1.0", 3642 | "resolved": "https://registry.npmjs.org/touch/-/touch-3.1.0.tgz", 3643 | "integrity": "sha512-WBx8Uy5TLtOSRtIq+M03/sKDrXCLHxwDcquSP2c43Le03/9serjQBIztjRz6FkJez9D/hleyAXTBGLwwZUw9lA==", 3644 | "requires": { 3645 | "nopt": "~1.0.10" 3646 | } 3647 | }, 3648 | "ts-mixer": { 3649 | "version": "6.0.1", 3650 | "resolved": "https://registry.npmjs.org/ts-mixer/-/ts-mixer-6.0.1.tgz", 3651 | "integrity": "sha512-hvE+ZYXuINrx6Ei6D6hz+PTim0Uf++dYbK9FFifLNwQj+RwKquhQpn868yZsCtJYiclZF1u8l6WZxxKi+vv7Rg==" 3652 | }, 3653 | "tslib": { 3654 | "version": "2.4.0", 3655 | "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.4.0.tgz", 3656 | "integrity": "sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ==" 3657 | }, 3658 | "type-fest": { 3659 | "version": "0.20.2", 3660 | "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", 3661 | "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==" 3662 | }, 3663 | "typedarray-to-buffer": { 3664 | "version": "3.1.5", 3665 | "resolved": "https://registry.npmjs.org/typedarray-to-buffer/-/typedarray-to-buffer-3.1.5.tgz", 3666 | "integrity": "sha512-zdu8XMNEDepKKR+XYOXAVPtWui0ly0NtohUscw+UmaHiAWT8hrV1rr//H6V+0DvJ3OQ19S979M0laLfX8rm82Q==", 3667 | "requires": { 3668 | "is-typedarray": "^1.0.0" 3669 | } 3670 | }, 3671 | "undefsafe": { 3672 | "version": "2.0.5", 3673 | "resolved": "https://registry.npmjs.org/undefsafe/-/undefsafe-2.0.5.tgz", 3674 | "integrity": "sha512-WxONCrssBM8TSPRqN5EmsjVrsv4A8X12J4ArBiiayv3DyyG3ZlIg6yysuuSYdZsVz3TKcTg2fd//Ujd4CHV1iA==" 3675 | }, 3676 | "unique-string": { 3677 | "version": "2.0.0", 3678 | "resolved": "https://registry.npmjs.org/unique-string/-/unique-string-2.0.0.tgz", 3679 | "integrity": "sha512-uNaeirEPvpZWSgzwsPGtU2zVSTrn/8L5q/IexZmH0eH6SA73CmAA5U4GwORTxQAZs95TAXLNqeLoPPNO5gZfWg==", 3680 | "requires": { 3681 | "crypto-random-string": "^2.0.0" 3682 | } 3683 | }, 3684 | "universal-github-app-jwt": { 3685 | "version": "1.1.0", 3686 | "resolved": "https://registry.npmjs.org/universal-github-app-jwt/-/universal-github-app-jwt-1.1.0.tgz", 3687 | "integrity": "sha512-3b+ocAjjz4JTyqaOT+NNBd5BtTuvJTxWElIoeHSVelUV9J3Jp7avmQTdLKCaoqi/5Ox2o/q+VK19TJ233rVXVQ==", 3688 | "requires": { 3689 | "@types/jsonwebtoken": "^8.3.3", 3690 | "jsonwebtoken": "^8.5.1" 3691 | } 3692 | }, 3693 | "universal-user-agent": { 3694 | "version": "6.0.0", 3695 | "resolved": "https://registry.npmjs.org/universal-user-agent/-/universal-user-agent-6.0.0.tgz", 3696 | "integrity": "sha512-isyNax3wXoKaulPDZWHQqbmIx1k2tb9fb3GGDBRxCscfYV2Ch7WxPArBsFEG8s/safwXTT7H4QGhaIkTp9447w==" 3697 | }, 3698 | "update-notifier": { 3699 | "version": "5.1.0", 3700 | "resolved": "https://registry.npmjs.org/update-notifier/-/update-notifier-5.1.0.tgz", 3701 | "integrity": "sha512-ItnICHbeMh9GqUy31hFPrD1kcuZ3rpxDZbf4KUDavXwS0bW5m7SLbDQpGX3UYr072cbrF5hFUs3r5tUsPwjfHw==", 3702 | "requires": { 3703 | "boxen": "^5.0.0", 3704 | "chalk": "^4.1.0", 3705 | "configstore": "^5.0.1", 3706 | "has-yarn": "^2.1.0", 3707 | "import-lazy": "^2.1.0", 3708 | "is-ci": "^2.0.0", 3709 | "is-installed-globally": "^0.4.0", 3710 | "is-npm": "^5.0.0", 3711 | "is-yarn-global": "^0.3.0", 3712 | "latest-version": "^5.1.0", 3713 | "pupa": "^2.1.1", 3714 | "semver": "^7.3.4", 3715 | "semver-diff": "^3.1.1", 3716 | "xdg-basedir": "^4.0.0" 3717 | }, 3718 | "dependencies": { 3719 | "semver": { 3720 | "version": "7.3.7", 3721 | "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.7.tgz", 3722 | "integrity": "sha512-QlYTucUYOews+WeEujDoEGziz4K6c47V/Bd+LjSSYcA94p+DmINdf7ncaUinThfvZyu13lN9OY1XDxt8C0Tw0g==", 3723 | "requires": { 3724 | "lru-cache": "^6.0.0" 3725 | } 3726 | } 3727 | } 3728 | }, 3729 | "url": { 3730 | "version": "0.10.3", 3731 | "resolved": "https://registry.npmjs.org/url/-/url-0.10.3.tgz", 3732 | "integrity": "sha512-hzSUW2q06EqL1gKM/a+obYHLIO6ct2hwPuviqTTOcfFVc61UbfJ2Q32+uGL/HCPxKqrdGB5QUwIe7UqlDgwsOQ==", 3733 | "optional": true, 3734 | "requires": { 3735 | "punycode": "1.3.2", 3736 | "querystring": "0.2.0" 3737 | } 3738 | }, 3739 | "url-parse-lax": { 3740 | "version": "3.0.0", 3741 | "resolved": "https://registry.npmjs.org/url-parse-lax/-/url-parse-lax-3.0.0.tgz", 3742 | "integrity": "sha512-NjFKA0DidqPa5ciFcSrXnAltTtzz84ogy+NebPvfEgAck0+TNg4UJ4IN+fB7zRZfbgUf0syOo9MDxFkDSMuFaQ==", 3743 | "requires": { 3744 | "prepend-http": "^2.0.0" 3745 | } 3746 | }, 3747 | "uuid": { 3748 | "version": "8.0.0", 3749 | "resolved": "https://registry.npmjs.org/uuid/-/uuid-8.0.0.tgz", 3750 | "integrity": "sha512-jOXGuXZAWdsTH7eZLtyXMqUb9EcWMGZNbL9YcGBJl4MH4nrxHmZJhEHvyLFrkxo+28uLb/NYRcStH48fnD0Vzw==", 3751 | "optional": true 3752 | }, 3753 | "watchpack": { 3754 | "version": "2.4.0", 3755 | "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-2.4.0.tgz", 3756 | "integrity": "sha512-Lcvm7MGST/4fup+ifyKi2hjyIAwcdI4HRgtvTpIUxBRhB+RFtUh8XtDOxUfctVCnhVi+QQj49i91OyvzkJl6cg==", 3757 | "optional": true, 3758 | "requires": { 3759 | "glob-to-regexp": "^0.4.1", 3760 | "graceful-fs": "^4.1.2" 3761 | } 3762 | }, 3763 | "widest-line": { 3764 | "version": "3.1.0", 3765 | "resolved": "https://registry.npmjs.org/widest-line/-/widest-line-3.1.0.tgz", 3766 | "integrity": "sha512-NsmoXalsWVDMGupxZ5R08ka9flZjjiLvHVAWYOKtiKM8ujtZWr9cRffak+uSE48+Ob8ObalXpwyeUiyDD6QFgg==", 3767 | "requires": { 3768 | "string-width": "^4.0.0" 3769 | } 3770 | }, 3771 | "wrap-ansi": { 3772 | "version": "7.0.0", 3773 | "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", 3774 | "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", 3775 | "requires": { 3776 | "ansi-styles": "^4.0.0", 3777 | "string-width": "^4.1.0", 3778 | "strip-ansi": "^6.0.0" 3779 | } 3780 | }, 3781 | "wrappy": { 3782 | "version": "1.0.2", 3783 | "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", 3784 | "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==" 3785 | }, 3786 | "write-file-atomic": { 3787 | "version": "3.0.3", 3788 | "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-3.0.3.tgz", 3789 | "integrity": "sha512-AvHcyZ5JnSfq3ioSyjrBkH9yW4m7Ayk8/9My/DD9onKeu/94fwrMocemO2QAJFAlnnDN+ZDS+ZjAR5ua1/PV/Q==", 3790 | "requires": { 3791 | "imurmurhash": "^0.1.4", 3792 | "is-typedarray": "^1.0.0", 3793 | "signal-exit": "^3.0.2", 3794 | "typedarray-to-buffer": "^3.1.5" 3795 | } 3796 | }, 3797 | "ws": { 3798 | "version": "8.8.0", 3799 | "resolved": "https://registry.npmjs.org/ws/-/ws-8.8.0.tgz", 3800 | "integrity": "sha512-JDAgSYQ1ksuwqfChJusw1LSJ8BizJ2e/vVu5Lxjq3YvNJNlROv1ui4i+c/kUUrPheBvQl4c5UbERhTwKa6QBJQ==", 3801 | "requires": {} 3802 | }, 3803 | "xdg-basedir": { 3804 | "version": "4.0.0", 3805 | "resolved": "https://registry.npmjs.org/xdg-basedir/-/xdg-basedir-4.0.0.tgz", 3806 | "integrity": "sha512-PSNhEJDejZYV7h50BohL09Er9VaIefr2LMAf3OEmpCkjOi34eYyQYAXUTjEQtZJTKcF0E2UKTh+osDLsgNim9Q==" 3807 | }, 3808 | "xml2js": { 3809 | "version": "0.4.19", 3810 | "resolved": "https://registry.npmjs.org/xml2js/-/xml2js-0.4.19.tgz", 3811 | "integrity": "sha512-esZnJZJOiJR9wWKMyuvSE1y6Dq5LCuJanqhxslH2bxM6duahNZ+HMpCLhBQGZkbX6xRf8x1Y2eJlgt2q3qo49Q==", 3812 | "optional": true, 3813 | "requires": { 3814 | "sax": ">=0.6.0", 3815 | "xmlbuilder": "~9.0.1" 3816 | } 3817 | }, 3818 | "xmlbuilder": { 3819 | "version": "9.0.7", 3820 | "resolved": "https://registry.npmjs.org/xmlbuilder/-/xmlbuilder-9.0.7.tgz", 3821 | "integrity": "sha512-7YXTQc3P2l9+0rjaUbLwMKRhtmwg1M1eDf6nag7urC7pIPYLD9W/jmzQ4ptRSUbodw5S0jfoGTflLemQibSpeQ==", 3822 | "optional": true 3823 | }, 3824 | "yallist": { 3825 | "version": "4.0.0", 3826 | "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", 3827 | "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" 3828 | } 3829 | } 3830 | } 3831 | -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "tinan", 3 | "scripts": { 4 | "dev": "nodemon src/index.js" 5 | }, 6 | "repository": { 7 | "type": "git", 8 | "url": "https://github.com/Avdan-OS/Tinan.git" 9 | }, 10 | "license": "MIT", 11 | "bugs": { 12 | "url": "https://github.com/Avdan-OS/Tinan/issues" 13 | }, 14 | "dependencies": { 15 | "@discordjs/builders": "^0.15.0", 16 | "@octokit/webhooks": "^9.26.0", 17 | "discord.js": "^13.8.0", 18 | "dotenv": "^16.0.1", 19 | "eventsource": "^2.0.2", 20 | "nodemon": "^2.0.18", 21 | "octokit": "^1.8.0" 22 | } 23 | } 24 | -------------------------------------------------------------------------------- /src/commands/cmdHandler.js: -------------------------------------------------------------------------------- 1 | const { MessageEmbed, Collection} = require('discord.js'); 2 | 3 | require('dotenv').config(); 4 | const config = require('../config.json'); 5 | const fs = require("fs"); 6 | const path = require("path"); 7 | 8 | const commandPath = './commands'; 9 | 10 | module.exports = async (client) => { 11 | const commands = new Collection(); 12 | global.pollsList = {}; 13 | 14 | global.multiReact = async (msg, ...reactions) => { 15 | for (let i of reactions) { 16 | if (typeof i !== 'object') { 17 | for (let reaction of i) { 18 | if (reaction !== " ") { 19 | try { 20 | await msg.react(reaction); 21 | } catch(A) {} 22 | } 23 | } 24 | } else { 25 | await msg.react(i); 26 | } 27 | } 28 | } 29 | 30 | 31 | fs.readdirSync(path.join(process.cwd(), commandPath, "/normal")).filter(file => file.endsWith(".js")).forEach(file => { 32 | let pull = require(path.join(process.cwd(), commandPath, "/normal", file)); 33 | const name = file.split('/').pop().split('.')[0]; 34 | commands.set(name, pull); 35 | }); 36 | 37 | 38 | 39 | client.on('messageCreate', async (message) => { 40 | const goosStanding = await message.guild.emojis.fetch("993799647015481397").catch(() => { return ":duck:" }); 41 | 42 | const extCommands = [ 43 | [["download avdan os", "avdan os iso"], { 44 | embeds: [ 45 | new MessageEmbed() 46 | .setDescription("We have not finished developing AvdanOS, so there is not a download yet.\nWe are currently working on the **window manager**.\nSubscribe to [our Youtube channel](https://www.youtube.com/channel/UCHLCBj83J7bR82HwjhCJusA) for updates on our development.") 47 | .setColor("BLUE") 48 | ] 49 | } 50 | ], 51 | [ 52 | ["how do i become developer", "how do i become a developer"], { 53 | embeds: [ 54 | new MessageEmbed() 55 | .setDescription("To join the team please go to #join-the-team, you must meet the requirements specified there.") 56 | .setColor("BLUE") 57 | ] 58 | } 59 | ] 60 | ] 61 | 62 | if ( 63 | message.content.startsWith('this has been') && 64 | message.content.endsWith('in 100 seconds') && 65 | message.content != 'this has been in 100 seconds' 66 | ) { 67 | message.channel.send('hit the like button and subscribe if you want to see more short videos like this thanks for watching and I will see you in the next one') 68 | } 69 | 70 | if (!message.author.bot) { 71 | if (!message.content.toLowerCase().startsWith(process.env.PREFIX)) { 72 | 73 | // Loop through the possible events, make them lowercase and check if the message contains it (if it does, execute the event) 74 | for (const [key, value] of extCommands) { 75 | for (const i of key) { 76 | if (message.content.toLowerCase().includes(i)) { 77 | if (typeof value === 'function') value(); 78 | else if (typeof value === 'object' || typeof value === 'string') { 79 | if (value.embeds) { 80 | for (const embed of value.embeds) { 81 | message.reply({embeds: [embed]}) 82 | } 83 | } 84 | } 85 | } 86 | } 87 | } 88 | } else { 89 | const args = message.content.slice(process.env.PREFIX.length).trim().split(/ +/); 90 | const commandName = args.shift().toLowerCase(); 91 | const command = commands.get(commandName); 92 | if (!command) return; 93 | try { 94 | command.callback(message, args); 95 | } catch (error) { 96 | console.error(error); 97 | 98 | const embed = new MessageEmbed() 99 | .setTitle('An error occurred while executing that command.') 100 | .setColor('RED'); 101 | 102 | message.channel.send({embeds: [embed]}); 103 | } 104 | } 105 | } else return; 106 | }); 107 | 108 | const slashCommands = []; 109 | 110 | fs.readdirSync(path.join(process.cwd(), commandPath, "/slash")).filter(file => file.endsWith(".js")).forEach(file => { 111 | let pull = require(path.join(process.cwd(), commandPath, "/slash", file)); 112 | slashCommands[pull.name.toLowerCase()] = pull; 113 | slashCommands.push(pull); 114 | }); 115 | 116 | for (const guildID of client.guilds.cache.keys()) { 117 | const guild = client.guilds.cache.get(guildID); 118 | await guild.commands.set(slashCommands); 119 | client.on('interactionCreate', (interaction) => { 120 | if (interaction.isCommand() && interaction.guildId === guildID) { 121 | try { 122 | slashCommands[interaction.commandName].callback(interaction); 123 | } catch (error) { 124 | console.error(error); 125 | const embed = new MessageEmbed() 126 | .setTitle('An error occurred while executing that command.') 127 | .setColor('RED') 128 | interaction.reply({embeds: [embed], ephemeral: true}); 129 | } 130 | } 131 | }); 132 | } 133 | }; 134 | -------------------------------------------------------------------------------- /src/commands/normal/;-;.js: -------------------------------------------------------------------------------- 1 | const { MessageEmbed } = require('discord.js'); 2 | 3 | module.exports = { 4 | callback: (message) => { 5 | message.reply(";-;"); 6 | } 7 | }; 8 | -------------------------------------------------------------------------------- /src/commands/normal/help.js: -------------------------------------------------------------------------------- 1 | const { MessageEmbed } = require('discord.js'); 2 | 3 | module.exports = { 4 | callback: (message) => { 5 | const embed = new MessageEmbed() 6 | .setTitle('Help') 7 | .setDescription('There may be bugs, if you find them report on GitHub') 8 | .addFields( 9 | { name: 'Prefix', value: process.env.PREFIX }, 10 | { name: 'Commands', value: 'repolist, prefix, poll' } 11 | ) 12 | .setColor('BLUE') 13 | 14 | message.channel.send({ embeds: [embed] }); 15 | } 16 | }; 17 | -------------------------------------------------------------------------------- /src/commands/normal/prefix.js: -------------------------------------------------------------------------------- 1 | const { MessageEmbed, Permissions } = require('discord.js'); 2 | 3 | module.exports = { 4 | callback: (message, args) => { 5 | const embed = new MessageEmbed() 6 | .setTitle(`The current server prefix is ${process.env.PREFIX}`) 7 | .setColor('BLUE') 8 | 9 | if (args[0]) { 10 | if (message.member.permissions.has(Permissions.FLAGS.MANAGE_GUILD)) { 11 | oldPrefix = process.env.PREFIX; 12 | process.env.PREFIX = args[0]; 13 | embed.setTitle(`Prefix changed from ${oldPrefix} to ${process.env.PREFIX}`) 14 | embed.setColor('GREEN') 15 | temp = false; 16 | } else { 17 | embed.setTitle(`Error`) 18 | embed.setDescription(`You don't have sufficient permissions to execute that command`) 19 | embed.setColor('RED') 20 | } 21 | } 22 | message.channel.send({ embeds: [embed] }); 23 | } 24 | }; 25 | -------------------------------------------------------------------------------- /src/commands/normal/repolist.js: -------------------------------------------------------------------------------- 1 | const { MessageEmbed } = require('discord.js'); 2 | const { Octokit } = require('octokit'); 3 | require('dotenv').config(); 4 | 5 | module.exports = { 6 | callback: async (message) => { 7 | const octokit = new Octokit({ auth: process.env.GITHUB_API_KEY }); 8 | 9 | await octokit.request('GET /orgs/{org}/repos', { 10 | org: 'Avdan-OS' 11 | }) 12 | .then((data) => { 13 | let embed = new MessageEmbed() 14 | .setTitle('Repository list') 15 | .setColor('BLUE') 16 | .setFooter({ text: 'Click on an arrow to open the corresponding repository' }) 17 | 18 | data.data.forEach(dataChildren => { 19 | dataChildren.description = dataChildren.description || "N/A" 20 | embed.addFields( 21 | { name: `${dataChildren.name}`, value: `[>](https://github.com/Avdan-OS/${dataChildren.name}) ${dataChildren.description}`, inline: true } 22 | ) 23 | }) 24 | message.channel.send({ embeds: [embed] }); 25 | }); 26 | } 27 | }; -------------------------------------------------------------------------------- /src/commands/slash/demote.js: -------------------------------------------------------------------------------- 1 | const { MessageEmbed, Constants } = require('discord.js'); 2 | 3 | module.exports = { 4 | name: 'demote', 5 | description: 'Demotes a user. (manager only)', 6 | options: [ 7 | { 8 | type: Constants.ApplicationCommandOptionTypes.USER, 9 | name: 'user', 10 | description: 'User that will be demoted', 11 | required: true 12 | }, 13 | { 14 | type: Constants.ApplicationCommandOptionTypes.STRING, 15 | name: 'reason', 16 | description: 'Why you are demoting this user' 17 | } 18 | ], 19 | callback: async (interaction) => { 20 | if (interaction.member.roles.cache.some(role => ['993524668503949322', '986269171111297036'].includes(role.id))) { //check if member has manager role 21 | const member = interaction.options.getMember('user') 22 | const reason = interaction.options.getString('reason') 23 | const rolesToRemove = [ 24 | //main server 25 | '993537552625705000', //senior dev 26 | '993598471456178248', //design lead 27 | '993471541176184842', //designer 28 | '993514545165389834', //team avdan OS 29 | '993562782756782181', //senior designer 30 | '996010452561698897', //translator 31 | '993524490493493308', //tester 32 | '993471258371047455', //dev 33 | '993579333119656098', //dev lead 34 | '993529249128525878', //contributor 35 | 36 | //test server 37 | '986269779469926450', //dev lead 38 | '990841843497443349', //senior dev 39 | '986269396890697738', //dev 40 | '987642117813841960', //contributor 41 | '997778183267037234', //senior designer 42 | '986269279701831740', //designer 43 | '991332275205713950', //AvdanOS team 44 | ] 45 | removedRoles = [] // roles that was removed 46 | //this array contains only mentions (<@&ID>) 47 | 48 | if (member.user.bot) { 49 | const embed = new MessageEmbed() 50 | .setTitle('No one can demote a bot') 51 | .setColor('RED') 52 | 53 | return interaction.reply({ embeds: [embed], ephemeral: true }); 54 | } 55 | 56 | if (member.roles.cache.some(role => ['993524668503949322', '986269171111297036'].includes(role.id))) { 57 | const embed = new MessageEmbed() 58 | .setTitle('No one can demote a manager') 59 | .setColor('RED') 60 | 61 | return interaction.reply({ embeds: [embed], ephemeral: true }); 62 | } 63 | 64 | rolesToRemove.forEach((id)=>{ 65 | if (member.roles.cache.some(role => role.id == id)) { 66 | role = interaction.guild.roles.cache.get(id); 67 | member.roles.remove(role); 68 | removedRoles.push(`<@&${id}>`) 69 | } 70 | }) 71 | 72 | const embed = new MessageEmbed() 73 | 74 | if (removedRoles.length > 0) { 75 | embed 76 | .setTitle(`${member.user.username}#${member.user.discriminator} was demoted`) 77 | .setDescription('Removed roles:\n\n'+removedRoles.join('\n')) 78 | .setColor('BLUE') 79 | try { 80 | const demotedNotify = new MessageEmbed() 81 | .setTitle(`You were demoted by ${interaction.user.username}#${interaction.user.discriminator}`) 82 | .setDescription(reason ? ('Reason: ' + reason) : 'No reason was provided') 83 | .setColor('RED') 84 | 85 | await member.send({ embeds: [demotedNotify] }) 86 | } catch (err) { 87 | embed.setFooter({ text: 'P. S. Bot failed to send DM' }) 88 | } 89 | } else { 90 | embed 91 | .setTitle(`${member.user.username}#${member.user.discriminator} can't be demoted`) 92 | .setDescription('This user has no team manager roles') 93 | .setColor('RED') 94 | } 95 | 96 | interaction.reply({ embeds: [embed], ephemeral: removedRoles.length == 0 }); 97 | } else { 98 | const embed = new MessageEmbed() 99 | .setTitle('You are not allowed to use this command') 100 | .setColor('RED') 101 | 102 | interaction.reply({ embeds: [embed], ephemeral: true }); 103 | } 104 | 105 | } 106 | }; 107 | -------------------------------------------------------------------------------- /src/commands/slash/help.js: -------------------------------------------------------------------------------- 1 | const { MessageEmbed } = require('discord.js'); 2 | 3 | module.exports = { 4 | name: 'help', 5 | description: 'Get help and information about the bot.', 6 | callback: (interaction) => { 7 | const embed = new MessageEmbed() 8 | .setTitle('Help') 9 | .setDescription('There may be bugs, if you find them: ping <@725985503177867295>.') 10 | .addFields( 11 | { name: 'Prefix', value: process.env.PREFIX }, 12 | { name: 'Commands', value: 'LOA Apply, LOA Return, Poll Create, Poll End, Prefix, repolist' } 13 | ) 14 | .setColor('BLUE') 15 | 16 | interaction.reply({ embeds: [embed] , ephemeral: true }); 17 | } 18 | }; 19 | -------------------------------------------------------------------------------- /src/commands/slash/loa.js: -------------------------------------------------------------------------------- 1 | const config = require('../../config.json'); 2 | const { MessageEmbed, MessageActionRow, MessageButton, Constants, Permissions } = require('discord.js'); 3 | 4 | module.exports = { 5 | name: 'loa', 6 | description: 'Apply or Return LOA', 7 | options: [ 8 | { 9 | type: 'SUB_COMMAND', 10 | name: 'apply', 11 | description: 'Apply for LOA', 12 | options: [ 13 | { 14 | name: 'reason', 15 | description: 'The reason for your leave', 16 | type: 'STRING', 17 | required: true, 18 | }, 19 | { 20 | name: 'return', 21 | description: 'Time of return from leave', 22 | type: 'STRING', 23 | required: true, 24 | }, 25 | ], 26 | }, 27 | { 28 | type: 'SUB_COMMAND', 29 | name: 'return', 30 | description: 'Return from LOA', 31 | }, 32 | ], 33 | callback: async (interaction) => { 34 | const options = interaction.options; 35 | if (options._subcommand === 'apply') { 36 | if (!interaction.member.roles.cache.find((r) => r.name === "Developer")) { 37 | return interaction.reply({ content: 'You need the Developer role to apply for LOA', ephemeral: true }); 38 | } 39 | 40 | if (interaction.member.roles.cache.find((r) => r.name === "[LOA]")) { 41 | return interaction.reply({ content: 'You are already set to LOA', ephemeral: true }); 42 | } 43 | 44 | const dev = interaction.member; 45 | const loaRole = interaction.guild.roles.cache.find((r) => r.name === "[LOA]"); 46 | const loaChannel = interaction.guild.channels.cache.find((c) => c.id === config.loaReports); 47 | 48 | const embed = new MessageEmbed({ 49 | title: `LOA pending`, 50 | color: '#0099ff', 51 | fields: [ 52 | { 53 | name: 'Reason', 54 | value: options.getString('reason'), 55 | inline: true, 56 | }, 57 | { 58 | name: 'Return', 59 | value: options.getString('return'), 60 | inline: true, 61 | }, 62 | ], 63 | }).setAuthor({ 64 | name: interaction.member.user.tag, 65 | iconURL: interaction.member.displayAvatarURL() 66 | }); 67 | const buttons = new MessageActionRow().addComponents( 68 | new MessageButton() 69 | .setCustomId('accept') 70 | .setLabel('Accept') 71 | .setStyle('PRIMARY'), 72 | new MessageButton() 73 | .setCustomId('deny') 74 | .setLabel('Deny') 75 | .setStyle('SECONDARY'), 76 | ) 77 | const filter = (ButtonInteraction) => { return ButtonInteraction.member.permissions.has(Permissions.FLAGS.ADMINISTRATOR); } 78 | loaChannel.send({ embeds: [embed], components: [buttons] }).then( message => { 79 | interaction.reply({ content: 'LOA asked successfully.', ephemeral: true }); 80 | const collector = message.channel.createMessageComponentCollector({ filter, max: 1 }); 81 | collector.on('end', (collection) => { 82 | if (collection.first().customId == 'accept') { 83 | dev.setNickname(`[LOA] ${dev.displayName}`); 84 | dev.roles.add(loaRole); 85 | embed.setTitle(`LOA granted by \`${collection.first().member.user.tag}\``) 86 | embed.setColor("GREEN") 87 | message.edit({ embeds: [embed], components: [] }); 88 | } else { 89 | embed.setTitle(`LOA denied by \`${collection.first().member.user.tag}\``) 90 | embed.setColor("RED") 91 | message.edit({ embeds: [embed], components: [] }); 92 | } 93 | }) 94 | }); 95 | } else if (options._subcommand === 'return') { 96 | if (!interaction.member.roles.cache.find((r) => r.name === "Developer")) { 97 | return interaction.reply({ content: 'You need the Developer role to return from LOA', ephemeral: true }); 98 | } 99 | 100 | if (!interaction.member.roles.cache.find((r) => r.name === "[LOA]")) { 101 | return interaction.reply({ content: 'You are not set to LOA', ephemeral: true }); 102 | } 103 | 104 | const dev = interaction.member; 105 | const loaRole = interaction.guild.roles.cache.find((r) => r.name === "[LOA]"); 106 | const loaChannel = interaction.guild.channels.cache.find((c) => c.id === config.loaReports); 107 | 108 | const embed = new MessageEmbed({ 109 | title: `Returned from their LOA`, 110 | color: '#0099ff', 111 | }).setAuthor({ 112 | name: interaction.member.user.tag, 113 | iconURL: interaction.member.displayAvatarURL() 114 | }); 115 | 116 | if (dev.displayName.slice(0, 6) !== '[LOA] ') { 117 | await dev.roles.remove(loaRole); 118 | await loaChannel.send({ embeds: [embed] }); 119 | 120 | return interaction.reply({ content: 'Returned from LOA\nℹ It seems that your nickname was altered during your LOA, no actions will be executed on your nickname', ephemeral: true }); 121 | } 122 | 123 | try { 124 | await dev.setNickname(dev.displayName.slice(6)); 125 | await dev.roles.remove(loaRole); 126 | await loaChannel.send({ embeds: [embed] }); 127 | 128 | interaction.reply({ content: 'Returned from LOA', ephemeral: true }); 129 | } catch (err) { 130 | console.log(err); 131 | interaction.reply({ content: 'Something went wrong', ephemeral: true }); 132 | } 133 | } 134 | }, 135 | }; 136 | -------------------------------------------------------------------------------- /src/commands/slash/poll.js: -------------------------------------------------------------------------------- 1 | const { MessageEmbed, MessageActionRow, MessageButton, Constants, Permissions } = require('discord.js'); 2 | 3 | module.exports = { 4 | name: 'poll', 5 | description: 'Poll util management', 6 | options: [ 7 | { 8 | type: 'SUB_COMMAND', 9 | name: 'create', 10 | description: 'Create a poll', 11 | options: [ 12 | { 13 | name: 'title', 14 | description: 'Title of the poll', 15 | required: true, 16 | type: Constants.ApplicationCommandOptionTypes.STRING 17 | }, 18 | { 19 | name: 'time', 20 | description: 'Duration of the poll (in seconds)', 21 | required: true, 22 | type: Constants.ApplicationCommandOptionTypes.INTEGER 23 | }, 24 | { 25 | name: '1', 26 | description: 'Choice 1', 27 | required: false, 28 | type: Constants.ApplicationCommandOptionTypes.STRING 29 | }, 30 | { 31 | name: '2', 32 | description: 'Choice 2', 33 | required: false, 34 | type: Constants.ApplicationCommandOptionTypes.STRING 35 | }, 36 | { 37 | name: '3', 38 | description: 'Choice 3', 39 | required: false, 40 | type: Constants.ApplicationCommandOptionTypes.STRING 41 | }, 42 | { 43 | name: '4', 44 | description: 'Choice 4', 45 | required: false, 46 | type: Constants.ApplicationCommandOptionTypes.STRING 47 | }, 48 | { 49 | name: '5', 50 | description: 'Choice 5', 51 | required: false, 52 | type: Constants.ApplicationCommandOptionTypes.STRING 53 | }, 54 | { 55 | name: '6', 56 | description: 'Choice 6', 57 | required: false, 58 | type: Constants.ApplicationCommandOptionTypes.STRING 59 | }, 60 | { 61 | name: '7', 62 | description: 'Choice 7', 63 | required: false, 64 | type: Constants.ApplicationCommandOptionTypes.STRING 65 | }, 66 | { 67 | name: '8', 68 | description: 'Choice 8', 69 | required: false, 70 | type: Constants.ApplicationCommandOptionTypes.STRING 71 | }, 72 | { 73 | name: '9', 74 | description: 'Choice 9', 75 | required: false, 76 | type: Constants.ApplicationCommandOptionTypes.STRING 77 | }, 78 | { 79 | name: '10', 80 | description: 'Choice 10', 81 | required: false, 82 | type: Constants.ApplicationCommandOptionTypes.STRING 83 | }, 84 | { 85 | name: 'mention', 86 | description: 'Mention everyone (default: False)', 87 | required: false, 88 | type: Constants.ApplicationCommandOptionTypes.BOOLEAN 89 | } 90 | ] 91 | }, 92 | { 93 | type: 'SUB_COMMAND', 94 | name: 'end', 95 | description: 'End a poll', 96 | options: [ 97 | { 98 | name: 'id', 99 | description: 'ID of the poll', 100 | required: true, 101 | type: Constants.ApplicationCommandOptionTypes.INTEGER 102 | }, 103 | { 104 | name: 'reason', 105 | description: 'Reason for ending the poll', 106 | required: false, 107 | type: Constants.ApplicationCommandOptionTypes.STRING 108 | }, 109 | ], 110 | }, 111 | ], 112 | 113 | callback: (interaction) => { 114 | const pollId = Math.floor(Math.random() * 89999) + 10000; 115 | const timestamp = parseInt(Date.now().toString().substring(0,10)) + interaction.options.getInteger('time') + 1 116 | let embed = new MessageEmbed({ 117 | title: `Poll: ${interaction.options.getString('title')}`, 118 | description: `Poll ends `, 119 | color: 'BLUE', 120 | }); 121 | if ( interaction.member.permissions.has(Permissions.FLAGS.MANAGE_EVENTS)) { 122 | if ( interaction.options._subcommand == "create" ) { 123 | embed.addFields([ 124 | { 125 | name: 'Total votes', 126 | value: "0", 127 | inline: true, 128 | } 129 | ]) 130 | embed.setAuthor({ 131 | name: interaction.member.displayName, 132 | iconURL: interaction.member.displayAvatarURL() 133 | }) 134 | embed.setFooter({ text: "Poll id: "+pollId.toString() }) 135 | const getButton = (buttonID) => interaction.options.getString(buttonID); 136 | const row1 = new MessageActionRow(); 137 | const row2 = new MessageActionRow(); 138 | 139 | 140 | for (let i = 1; i < 6; i++) { 141 | if (getButton(i.toString())) { 142 | row1.addComponents( 143 | new MessageButton() 144 | .setCustomId('poll_' + pollId.toString() + '_' + i.toString()) 145 | .setLabel(getButton(i.toString())) 146 | .setStyle('SECONDARY') 147 | ) 148 | } 149 | } 150 | 151 | for (let i = 6; i < 11; i++) { 152 | if (getButton(i.toString())) { 153 | row2.addComponents( 154 | new MessageButton() 155 | .setCustomId('poll_' + pollId.toString() + '_' + i.toString()) 156 | .setLabel(getButton(i.toString())) 157 | .setStyle('SECONDARY') 158 | ) 159 | } 160 | } 161 | const rows = []; 162 | if (row1.components.length) rows.push(row1); 163 | if (row2.components.length) rows.push(row2); 164 | pollsList[pollId] = {}; 165 | global.getLabel = function (pollID, buttonID) { if (pollID == pollId) return interaction.options.getString(buttonID) }; 166 | let mention = ' '; 167 | if (interaction.options.getBoolean('mention')) mention = '@everyone'; 168 | interaction.channel.send({ content: mention, embeds: [embed], components: rows }).then(message => { 169 | interaction.reply({ content: 'The poll has been created', ephemeral: true }) 170 | const collector = interaction.channel.createMessageComponentCollector({ time: interaction.options.getInteger('time') * 1000 }); 171 | collector.client.on('interactionCreate', (interact) => { 172 | if (interact.isCommand()) if (interact.commandName == "poll") if (interact.options._subcommand == "end") if (interact.options.getInteger("id") == pollId) collector.stop() 173 | }) 174 | collector.on('collect', () => { 175 | embed.fields[0].value = Object.values(pollsList[pollId]).length.toString() 176 | message.edit({ embeds: [embed] }) 177 | }); 178 | collector.on('end', () => { 179 | if (pollsList[pollId]) { 180 | let winners = []; 181 | let maxLength = 1; 182 | for (let i = 1; i < 11; i++) { 183 | const currentLenght = Object.values(pollsList[pollId]).filter(x => x == 'poll_' + pollId.toString() + '_' + i.toString()).length; 184 | if (currentLenght >= maxLength) { 185 | if (currentLenght > maxLength) { 186 | maxLength = currentLenght; 187 | winners.pop(); 188 | } 189 | winners.push(interaction.options.getString(i.toString())); 190 | } 191 | } 192 | const totalVotes = embed.fields[0].value 193 | //embed.setTitle(`Poll ended: ${interaction.options.getString('subject')}`) 194 | embed.setDescription(`Poll ended `) 195 | embed.setFields([]) 196 | if (winners.length == 1) embed.addFields([{ name: "Winner", value: `**${winners}** with **${maxLength}** votes`, inline: true }]) 197 | else if (winners.length > 1) embed.addFields([{ name: "Winners", value: `**${winners}** with **${maxLength}** votes each`, inline: true }]) 198 | else embed.setDescription(`There was no winner (no votes have been performed)`) 199 | embed.addFields([{ name: "Total votes", value: totalVotes, inline: true }]) 200 | //embed.setFooter({ text: "" }) 201 | message.edit({ embeds: [embed], components: [] }); 202 | delete pollsList[pollId]; 203 | } 204 | }); 205 | }); 206 | } else { 207 | embed.setTitle(`Poll \`${interaction.options.getInteger("id").toString()}\` was terminated by \`${interaction.member.user.tag}\``) 208 | if (interaction.options.getString("reason")) embed.addFields([{ name: "Reason", value: interaction.options.getString("reason"), inline: true }]).setDescription("") 209 | else embed.setDescription("No reason specified") 210 | interaction.reply({ embeds: [embed] }) 211 | } 212 | } else { 213 | embed.setTitle(`Error`) 214 | embed.setDescription(`You don't have sufficient permissions to execute that command`) 215 | embed.setColor('RED') 216 | interaction.reply({ embeds: [embed], ephemeral: true }); 217 | } 218 | interaction.client.on('interactionCreate', (interact) => { 219 | if (interact.isButton()) { 220 | if (interact.customId.substring(0,4) == 'poll') { 221 | const pollId = interact.customId.substring(5, 10); 222 | let embed = new MessageEmbed() 223 | if (global.pollsList[pollId][interact.user.id]) embed.setTitle('You have already voted for this poll').setColor('RED'); 224 | else { 225 | global.pollsList[pollId][interact.user.id] = interact.customId; 226 | embed.setTitle(`You successfully voted for **${getLabel(pollId, interact.customId.substring(11,13))}**`).setColor('GREEN'); 227 | } 228 | return interact.reply({embeds: [embed], ephemeral: true }); 229 | } else return; 230 | } else return; 231 | }); 232 | } 233 | }; 234 | -------------------------------------------------------------------------------- /src/commands/slash/prefix.js: -------------------------------------------------------------------------------- 1 | const { MessageEmbed, Constants, Permissions } = require('discord.js'); 2 | 3 | module.exports = { 4 | name: 'prefix', 5 | description: 'View or set the bot prefix.', 6 | options: [ 7 | { 8 | name: 'prefix', 9 | description: 'Changes the bot prefix', 10 | required: false, 11 | type: Constants.ApplicationCommandOptionTypes.STRING 12 | } 13 | ], 14 | callback: (interaction) => { 15 | let temp = true; 16 | const embed = new MessageEmbed() 17 | .setTitle(`The current server prefix is ${process.env.PREFIX}`) 18 | .setColor('BLUE') 19 | if (interaction.options.getString('prefix')) { 20 | if (interaction.member.permissions.has(Permissions.FLAGS.MANAGE_GUILD)) { 21 | oldPrefix = process.env.PREFIX; 22 | process.env.PREFIX = interaction.options.getString('prefix'); 23 | embed.setTitle(`Prefix changed from ${oldPrefix} to ${process.env.PREFIX}`) 24 | embed.setColor('GREEN') 25 | temp = false; 26 | } else { 27 | embed.setTitle(`Error`) 28 | embed.setDescription(`You don't have sufficient permissions to execute that command`) 29 | embed.setColor('RED') 30 | } 31 | } 32 | interaction.reply({ embeds: [embed] , ephemeral: temp }); 33 | } 34 | }; 35 | -------------------------------------------------------------------------------- /src/commands/slash/repolist.js: -------------------------------------------------------------------------------- 1 | const { MessageEmbed } = require('discord.js'); 2 | const { Octokit } = require('octokit'); 3 | require('dotenv').config(); 4 | 5 | module.exports = { 6 | name: 'repolist', 7 | description: 'This is a test command that lists repositories in the Avdan-OS organisation.', 8 | callback: async (interaction) => { 9 | const octokit = new Octokit({ auth: process.env.GITHUB_API_KEY }); 10 | 11 | await octokit.request('GET /orgs/{org}/repos', { 12 | org: 'Avdan-OS' 13 | }) 14 | .then((data) => { 15 | let embed = new MessageEmbed() 16 | .setTitle('Repository list') 17 | .setColor('BLUE') 18 | .setFooter({ text: 'Click on an arrow to open the corresponding repository' }) 19 | 20 | data.data.forEach(dataChildren => { 21 | dataChildren.description = dataChildren.description || "N/A" 22 | embed.addFields( 23 | { name: `${dataChildren.name}`, value: `[>](https://github.com/Avdan-OS/${dataChildren.name}) ${dataChildren.description}`, inline: true } 24 | ) 25 | }) 26 | interaction.reply({ embeds: [embed], ephemeral: true }); 27 | }); 28 | } 29 | }; -------------------------------------------------------------------------------- /src/commands/slash/suggest.js: -------------------------------------------------------------------------------- 1 | const { MessageEmbed, Constants } = require('discord.js'); 2 | 3 | module.exports = { 4 | name: 'suggest', 5 | description: 'Sends your idea', 6 | options: [{ 7 | name: 'title', 8 | description: 'Title of your suggestion', 9 | required: true, 10 | type: Constants.ApplicationCommandOptionTypes.STRING 11 | }, { 12 | name: 'description', 13 | description: 'Description of your suggestion', 14 | required: true, 15 | type: Constants.ApplicationCommandOptionTypes.STRING 16 | }], 17 | callback: async (interaction) => { 18 | title = interaction.options.getString('title') 19 | text = interaction.options.getString('description') 20 | 21 | ideaEmbed = new MessageEmbed() 22 | .setAuthor({name: interaction.user.username, iconURL: interaction.user.avatarURL()}) 23 | .setTitle(title) 24 | .setDescription(text) 25 | .setColor('BLUE') 26 | 27 | channel = interaction.guild.channels.cache.find(cnl => cnl.id == '993466949889703996') 28 | msg = await channel.send({embeds: [ideaEmbed]}) 29 | 30 | msg.startThread({ 31 | name: title, 32 | }); 33 | 34 | embed = new MessageEmbed() 35 | .setTitle('Your suggestion was sent') 36 | .setColor('BLUE') 37 | 38 | interaction.reply({embeds: [embed], ephemeral: true}) 39 | } 40 | } 41 | -------------------------------------------------------------------------------- /src/config.json: -------------------------------------------------------------------------------- 1 | { 2 | "prefix": "t!", 3 | "logsChannel": "979473328622403674", 4 | "moderationChannel": "988414226299228201", 5 | "loaReports": "989611315893010502" 6 | } 7 | -------------------------------------------------------------------------------- /src/examples/normal/button.js: -------------------------------------------------------------------------------- 1 | const { MessageEmbed, MessageActionRow, MessageButton } = require('discord.js'); 2 | 3 | /** 4 | * @file This command is an example that includes creating and responding to buttons. Normal command edition. 5 | * @author Serge 6 | */ 7 | 8 | module.exports = { 9 | callback: (message) => { 10 | let embed = new MessageEmbed() 11 | .setTitle('example') 12 | .setDescription('this is an example of buttons') 13 | .setColor('BLUE') 14 | 15 | const buttons = new MessageActionRow().addComponents( 16 | new MessageButton() 17 | .setCustomId('primary') 18 | .setLabel('example of a primary button') 19 | .setStyle('PRIMARY'), 20 | new MessageButton() 21 | .setCustomId('secondary') 22 | .setLabel('example of a secondary button') 23 | .setStyle('SECONDARY') 24 | ) 25 | 26 | message.channel.send({ embeds: [embed], components: [buttons] }); 27 | 28 | const filter = (ButtonInteraction) => { 29 | return message.author.id != ButtonInteraction.user.id || message.author.id == ButtonInteraction.user.id; 30 | } 31 | const collector = message.channel.createMessageComponentCollector({ filter, max: 1, time: 30000 }); 32 | 33 | collector.on('end', (collection) => { 34 | if (collection.first().customId == 'primary') { 35 | embed.setTitle('you clicked a primary button') 36 | embed.setDescription('you clicked a primary button') 37 | 38 | message.channel.send({ embeds: [embed] }); 39 | } else { 40 | embed.setTitle('you clicked a secondary button') 41 | embed.setDescription('you clicked a secondary button') 42 | 43 | message.channel.send({ embeds: [embed] }); 44 | } 45 | }) 46 | } 47 | }; 48 | -------------------------------------------------------------------------------- /src/examples/normal/embed.js: -------------------------------------------------------------------------------- 1 | const { MessageEmbed } = require('discord.js'); 2 | 3 | /** 4 | * @file This is an example of embeds. Normal command edition. 5 | * @author Serge 6 | */ 7 | 8 | module.exports = { 9 | callback: (message) => { 10 | const embed = new MessageEmbed() 11 | .setTitle('example') 12 | .setDescription('this is an example') 13 | .addFields( 14 | { name: 'field example 1', value: 'field example 1' }, 15 | { name: 'field example 2', value: 'field example 2' } 16 | ) 17 | .setFooter({ text: 'footer example' }) 18 | .setColor('BLUE') 19 | 20 | message.channel.send({ embeds: [embed] }); 21 | } 22 | }; 23 | -------------------------------------------------------------------------------- /src/examples/normal/randomResponse.js: -------------------------------------------------------------------------------- 1 | const { MessageEmbed } = require('discord.js'); 2 | 3 | /** 4 | * @file This is an example of random responses. Normal command edition. 5 | * @author Serge 6 | */ 7 | 8 | module.exports = { 9 | callback: (message) => { 10 | const messages = [ 11 | 'example', 12 | 'wow, this is another message?', 13 | 'hello world' 14 | ]; 15 | const title = messages[Math.floor(Math.random() * messages.length)]; 16 | const embed = new MessageEmbed() 17 | .setTitle(title) 18 | .setColor('BLUE') 19 | 20 | message.channel.send({ embeds: [embed] }); 21 | } 22 | }; 23 | -------------------------------------------------------------------------------- /src/examples/slash/button.js: -------------------------------------------------------------------------------- 1 | const { MessageEmbed, MessageActionRow, MessageButton } = require('discord.js'); 2 | 3 | /** 4 | * @file This command is an example that includes creating and responding to buttons. Slash command edition. 5 | * @author Serge 6 | */ 7 | 8 | module.exports = { 9 | name: 'button', 10 | description: 'this is an example for buttons', 11 | callback: (interaction) => { 12 | let embed = new MessageEmbed() 13 | .setTitle('example') 14 | .setDescription('this is an example for buttons') 15 | .setColor('BLUE') 16 | 17 | const buttons = new MessageActionRow().addComponents( 18 | new MessageButton() 19 | .setCustomId('primary') 20 | .setLabel('example of a primary button') 21 | .setStyle('PRIMARY'), 22 | new MessageButton() 23 | .setCustomId('secondary') 24 | .setLabel('example of a secondary button') 25 | .setStyle('SECONDARY'), 26 | ) 27 | 28 | interaction.reply({ embeds: [embed], components: [buttons], ephemeral: true }); 29 | 30 | const filter = (ButtonInteraction) => { 31 | return interaction.user.id != ButtonInteraction.user.id || interaction.user.id == ButtonInteraction.user.id; 32 | } 33 | const collector = interaction.channel.createMessageComponentCollector({ filter, max: 1, time: 30000 }); 34 | 35 | collector.on('end', (collection) => { 36 | if (collection.first().customId == 'primary') { 37 | embed.setTitle('you clicked a primary button') 38 | embed.setDescription('you clicked a primary button') 39 | 40 | interaction.channel.send({ embeds: [embed] }); 41 | } else { 42 | embed.setTitle('you clicked a secondary button') 43 | embed.setDescription('you clicked a secondary button') 44 | 45 | interaction.channel.send({ embeds: [embed] }); 46 | } 47 | }) 48 | } 49 | }; 50 | -------------------------------------------------------------------------------- /src/examples/slash/embed.js: -------------------------------------------------------------------------------- 1 | const { MessageEmbed } = require('discord.js'); 2 | 3 | /** 4 | * @file This is an example of embeds. Slash command edition. 5 | * @author Serge 6 | */ 7 | 8 | module.exports = { 9 | name: 'embed', 10 | description: 'this is an embed example', 11 | callback: (interaction) => { 12 | const embed = new MessageEmbed() 13 | .setTitle('example') 14 | .setDescription('this is an example of an embed') 15 | .addFields( 16 | { name: 'field example 1', value: 'field example 1' }, 17 | { name: 'field example 2', value: 'field example 2' } 18 | ) 19 | .setFooter({ text: 'footer example' }) 20 | .setColor('BLUE') 21 | 22 | interaction.reply({ embeds: [embed], ephemeral: true }); 23 | } 24 | }; 25 | -------------------------------------------------------------------------------- /src/examples/slash/option.js: -------------------------------------------------------------------------------- 1 | const { MessageEmbed, Constants } = require('discord.js'); 2 | 3 | /** 4 | * @file This is an example of options. 5 | * @author Serge 6 | */ 7 | 8 | module.exports = { 9 | name: 'option', 10 | description: 'this is an option example', 11 | options: [ 12 | { 13 | name: 'option', 14 | description: 'option', 15 | type: Constants.ApplicationCommandOptionTypes.STRING, 16 | required: true, // or false 17 | choices: [ 18 | { 19 | name: 'yes', 20 | value: 'yes' 21 | }, 22 | { 23 | name: 'no', 24 | value: 'no' 25 | } 26 | ] 27 | } 28 | ], 29 | callback: (interaction) => { 30 | const option = interaction.options.getString('option'); 31 | let embed = new MessageEmbed() 32 | 33 | if (option == 'yes') { 34 | embed.setTitle('you like option') 35 | embed.setColor('GREEN') 36 | } else { 37 | embed.setTitle('you hate option :<') 38 | embed.setColor('RED') 39 | } 40 | interaction.reply({ embeds: [embed], ephemeral: true }); 41 | } 42 | }; 43 | -------------------------------------------------------------------------------- /src/examples/slash/randomResponse.js: -------------------------------------------------------------------------------- 1 | const { MessageEmbed } = require('discord.js'); 2 | 3 | /** 4 | * @file This is an example of random responses. Slash command edition. 5 | * @author Serge 6 | */ 7 | 8 | module.exports = { 9 | name: 'randomresponse', 10 | description: 'this is a random response example', 11 | callback: (interaction) => { 12 | const messages = [ 13 | 'example', 14 | 'wow, this is another message?', 15 | 'hello world' 16 | ]; 17 | const title = messages[Math.floor(Math.random() * messages.length)]; 18 | const embed = new MessageEmbed() 19 | .setTitle(`${title}`) 20 | .setColor('BLUE') 21 | 22 | interaction.reply({ embeds: [embed], ephemeral: true }); 23 | } 24 | }; 25 | -------------------------------------------------------------------------------- /src/index.js: -------------------------------------------------------------------------------- 1 | const { Client, Intents } = require('discord.js'); 2 | require('dotenv').config(); 3 | const commands = require('./commands/cmdHandler'); 4 | const client = new Client({ 5 | intents: [ 6 | Intents.FLAGS.GUILDS, 7 | Intents.FLAGS.GUILD_MESSAGES, 8 | ] 9 | }); 10 | module.exports = client; 11 | 12 | client.on('ready', () => { 13 | commands(client); 14 | 15 | client.user.setPresence({ activities: [{ name: 'discord.gg/avdanos', type: 'WATCHING' }] }); 16 | console.log('Start completed.'); 17 | }); 18 | client.login(process.env.DISCORD_TOKEN); 19 | 20 | 21 | --------------------------------------------------------------------------------