├── accounts.js ├── image ├── env.png ├── fork.png ├── push.png ├── action.png ├── group.jpg ├── local.png ├── accounts.jpg ├── families.jpg └── wxpusher.jpg ├── src ├── push │ ├── pushPlus.js │ ├── serverChan.js │ ├── showDoc.js │ ├── wecomBot.js │ ├── telegramBot.js │ ├── bark.js │ ├── wxPusher.js │ └── index.js ├── logger.js ├── utils.js └── app.js ├── doc └── xuanwu │ ├── xw-01.png │ ├── xw-02.png │ ├── xw-03.png │ ├── xw-04.png │ ├── xw-05.png │ ├── xw-06.png │ ├── xw-07.png │ ├── xw-08.png │ ├── xw-09.png │ ├── xw-10.png │ ├── xw-11.png │ ├── xw-12.png │ ├── xw-13.png │ ├── xw-14.png │ └── README.md ├── .eslintrc.js ├── .gitignore ├── .env ├── package.json ├── LICENSE ├── .github └── workflows │ └── run.yml ├── README.md └── yarn.lock /accounts.js: -------------------------------------------------------------------------------- 1 | module.exports = JSON.parse(process.env.TY_ACCOUNTS || "[]"); 2 | -------------------------------------------------------------------------------- /image/env.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wes-lin/Cloud189Checkin/HEAD/image/env.png -------------------------------------------------------------------------------- /image/fork.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wes-lin/Cloud189Checkin/HEAD/image/fork.png -------------------------------------------------------------------------------- /image/push.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wes-lin/Cloud189Checkin/HEAD/image/push.png -------------------------------------------------------------------------------- /image/action.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wes-lin/Cloud189Checkin/HEAD/image/action.png -------------------------------------------------------------------------------- /image/group.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wes-lin/Cloud189Checkin/HEAD/image/group.jpg -------------------------------------------------------------------------------- /image/local.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wes-lin/Cloud189Checkin/HEAD/image/local.png -------------------------------------------------------------------------------- /src/push/pushPlus.js: -------------------------------------------------------------------------------- 1 | module.exports = { 2 | token: process.env.PUSH_PLUS_TOKEN || "" 3 | }; -------------------------------------------------------------------------------- /image/accounts.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wes-lin/Cloud189Checkin/HEAD/image/accounts.jpg -------------------------------------------------------------------------------- /image/families.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wes-lin/Cloud189Checkin/HEAD/image/families.jpg -------------------------------------------------------------------------------- /image/wxpusher.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wes-lin/Cloud189Checkin/HEAD/image/wxpusher.jpg -------------------------------------------------------------------------------- /src/push/serverChan.js: -------------------------------------------------------------------------------- 1 | module.exports = { 2 | sendKey: process.env.SENDKEY || '', 3 | }; 4 | -------------------------------------------------------------------------------- /doc/xuanwu/xw-01.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wes-lin/Cloud189Checkin/HEAD/doc/xuanwu/xw-01.png -------------------------------------------------------------------------------- /doc/xuanwu/xw-02.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wes-lin/Cloud189Checkin/HEAD/doc/xuanwu/xw-02.png -------------------------------------------------------------------------------- /doc/xuanwu/xw-03.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wes-lin/Cloud189Checkin/HEAD/doc/xuanwu/xw-03.png -------------------------------------------------------------------------------- /doc/xuanwu/xw-04.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wes-lin/Cloud189Checkin/HEAD/doc/xuanwu/xw-04.png -------------------------------------------------------------------------------- /doc/xuanwu/xw-05.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wes-lin/Cloud189Checkin/HEAD/doc/xuanwu/xw-05.png -------------------------------------------------------------------------------- /doc/xuanwu/xw-06.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wes-lin/Cloud189Checkin/HEAD/doc/xuanwu/xw-06.png -------------------------------------------------------------------------------- /doc/xuanwu/xw-07.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wes-lin/Cloud189Checkin/HEAD/doc/xuanwu/xw-07.png -------------------------------------------------------------------------------- /doc/xuanwu/xw-08.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wes-lin/Cloud189Checkin/HEAD/doc/xuanwu/xw-08.png -------------------------------------------------------------------------------- /doc/xuanwu/xw-09.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wes-lin/Cloud189Checkin/HEAD/doc/xuanwu/xw-09.png -------------------------------------------------------------------------------- /doc/xuanwu/xw-10.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wes-lin/Cloud189Checkin/HEAD/doc/xuanwu/xw-10.png -------------------------------------------------------------------------------- /doc/xuanwu/xw-11.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wes-lin/Cloud189Checkin/HEAD/doc/xuanwu/xw-11.png -------------------------------------------------------------------------------- /doc/xuanwu/xw-12.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wes-lin/Cloud189Checkin/HEAD/doc/xuanwu/xw-12.png -------------------------------------------------------------------------------- /doc/xuanwu/xw-13.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wes-lin/Cloud189Checkin/HEAD/doc/xuanwu/xw-13.png -------------------------------------------------------------------------------- /doc/xuanwu/xw-14.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wes-lin/Cloud189Checkin/HEAD/doc/xuanwu/xw-14.png -------------------------------------------------------------------------------- /src/push/showDoc.js: -------------------------------------------------------------------------------- 1 | module.exports = { 2 | sendKey: process.env.SHOWDOC_KEY || '', 3 | }; 4 | -------------------------------------------------------------------------------- /src/push/wecomBot.js: -------------------------------------------------------------------------------- 1 | module.exports = { 2 | key: process.env.WECOM_BOT_KEY || '', 3 | telphone: process.env.WECOM_BOT_TELPHONE || '', 4 | }; 5 | -------------------------------------------------------------------------------- /src/push/telegramBot.js: -------------------------------------------------------------------------------- 1 | module.exports = { 2 | botToken: process.env.TELEGRAM_BOT_TOKEN || '', 3 | chatId: process.env.TELEGRAM_CHAT_ID || '', 4 | }; 5 | -------------------------------------------------------------------------------- /src/push/bark.js: -------------------------------------------------------------------------------- 1 | module.exports = { 2 | sendKey: process.env.BARK_KEY || '', 3 | apiServer: process.env.BARK_SERVER || 'https://api.day.app', 4 | }; 5 | -------------------------------------------------------------------------------- /src/push/wxPusher.js: -------------------------------------------------------------------------------- 1 | module.exports = { 2 | appToken: 3 | process.env.WX_PUSHER_APP_TOKEN || "AT_OzwCik0QP4p4AQlKdO4jbgjWApTiWsJr", 4 | uid: process.env.WX_PUSHER_UID || "", 5 | }; 6 | -------------------------------------------------------------------------------- /.eslintrc.js: -------------------------------------------------------------------------------- 1 | module.exports = { 2 | env: { 3 | node: true, 4 | }, 5 | extends: 'airbnb-base', 6 | overrides: [ 7 | ], 8 | parserOptions: { 9 | ecmaVersion: 'latest', 10 | }, 11 | rules: { 12 | 13 | }, 14 | }; 15 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | .DS_Store 2 | node_modules/ 3 | dist/ 4 | npm-debug.log* 5 | yarn-debug.log* 6 | yarn-error.log* 7 | package-lock.json 8 | tests/**/coverage/ 9 | 10 | # Editor directories and files 11 | .idea 12 | .vscode 13 | *.suo 14 | *.ntvs* 15 | *.njsproj 16 | *.sln 17 | 18 | cheese.log 19 | 20 | .token 21 | 22 | .logs -------------------------------------------------------------------------------- /.env: -------------------------------------------------------------------------------- 1 | TY_ACCOUNTS=[{"userName":"userName","password":"password"}] 2 | TY_FAMILIES= 3 | EXEC_THRESHOLD= 4 | # Server 5 | SENDKEY= 6 | #Telegram 7 | TELEGRAM_BOT_TOKEN= 8 | TELEGRAM_CHAT_ID= 9 | #WecomBot 10 | WECOM_BOT_KEY= 11 | WECOM_BOT_TELPHONE= 12 | #WxPusher 13 | WX_PUSHER_APP_TOKEN= 14 | WX_PUSHER_UID= 15 | #pushplus 16 | PUSH_PLUS_TOKEN= 17 | #ShowDoc 18 | SHOWDOC_KEY= 19 | #Bark 20 | BARK_KEY= 21 | BARK_SERVER= -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "cloud", 3 | "version": "1.0.0", 4 | "description": "", 5 | "main": "index.js", 6 | "scripts": { 7 | "start": "node --unhandled-rejections=strict ./src/app.js", 8 | "test": "echo \"Error: no test specified\" && exit 1" 9 | }, 10 | "author": "", 11 | "license": "ISC", 12 | "dependencies": { 13 | "cloud189-sdk": "^1.0.7", 14 | "dotenv": "^16.4.5", 15 | "log4js": "^6.9.1", 16 | "superagent": "^7.1.3" 17 | }, 18 | "devDependencies": { 19 | "eslint": "^8.40.0", 20 | "eslint-config-airbnb-base": "^15.0.0", 21 | "eslint-plugin-import": "^2.27.5" 22 | } 23 | } 24 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2022 WesLin 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 | -------------------------------------------------------------------------------- /src/logger.js: -------------------------------------------------------------------------------- 1 | const log4js = require("log4js"); 2 | const fs = require("fs"); 3 | 4 | log4js.configure({ 5 | appenders: { 6 | vcr: { 7 | type: "recording", 8 | }, 9 | out: { 10 | type: "console", 11 | layout: { 12 | type: "pattern", 13 | pattern: "[%d] [%p] %X{user}: %m", 14 | }, 15 | }, 16 | file: { 17 | type: "multiFile", 18 | base: ".logs/", 19 | property: "categoryName", 20 | extension: ".log", 21 | maxLogSize: 10485760, 22 | backups: 3, 23 | compress: true, 24 | layout: { 25 | type: "pattern", 26 | pattern: "[账号:%X{user}] %m", 27 | }, 28 | }, 29 | }, 30 | categories: { 31 | default: { appenders: ["out", "file"], level: "info" }, 32 | push: { appenders: ["out", "vcr"], level: "info" }, 33 | }, 34 | }); 35 | 36 | const cleanLogs = () => { 37 | if (!fs.existsSync(".logs")) { 38 | return; 39 | } 40 | const logs = fs.readdirSync(".logs"); 41 | logs.forEach(log => { 42 | if(log.endsWith(".log")) { 43 | fs.unlinkSync(`.logs/${log}`); 44 | } 45 | }) 46 | }; 47 | 48 | const catLogs = () => { 49 | if (!fs.existsSync(".logs")) { 50 | return ""; 51 | } 52 | const logs = fs.readdirSync(".logs"); 53 | const content = logs 54 | .map((file) => fs.readFileSync(`.logs/${file}`, { encoding: "utf-8" })) 55 | .join("\r"); 56 | return content; 57 | }; 58 | 59 | module.exports = { log4js, cleanLogs, catLogs }; 60 | -------------------------------------------------------------------------------- /src/utils.js: -------------------------------------------------------------------------------- 1 | const superagent = require("superagent"); 2 | 3 | const mask = (s, start, end) => s.split("").fill("*", start, end).join(""); 4 | 5 | const delay = (ms) => new Promise((resolve) => setTimeout(resolve, ms)); 6 | 7 | const formatDateISO = (date) => { 8 | const isoString = date.toISOString(); 9 | const formattedDate = isoString.split("T")[0]; 10 | return formattedDate; 11 | }; 12 | 13 | const ipAddrHosts = [ 14 | { 15 | url: "https://ipinfo.io/json", 16 | get: (res) => res["ip"], 17 | }, 18 | { 19 | url: "https://ifconfig.me/all.json", 20 | get: (res) => res["ip_addr"], 21 | }, 22 | ]; 23 | 24 | const getIpAddr = async () => { 25 | if (!process.env.IP_ADDRESS) { 26 | try { 27 | const requests = ipAddrHosts.map((host) => 28 | superagent 29 | .get(host.url) 30 | .then((res) => host.get(res.body)) 31 | .catch((error) => { 32 | throw new Error( 33 | `Failed to fetch IP from ${host.url} : ${error.message}` 34 | ); 35 | }) 36 | ); 37 | const ipAddr = await Promise.any(requests); 38 | if (ipAddr) { 39 | process.env.IP_ADDRESS = ipAddr; 40 | } 41 | } catch (e) {} 42 | } 43 | return process.env.IP_ADDRESS; 44 | }; 45 | 46 | function groupByNum(array, groupNum) { 47 | const result = []; 48 | for (let i = 0; i < array.length; i += groupNum) { 49 | result.push(array.slice(i, i + groupNum)); 50 | } 51 | return result; 52 | } 53 | 54 | module.exports = { 55 | mask, 56 | delay, 57 | formatDateISO, 58 | getIpAddr, 59 | groupByNum 60 | }; 61 | -------------------------------------------------------------------------------- /.github/workflows/run.yml: -------------------------------------------------------------------------------- 1 | name: Cloud check in action 2 | on: 3 | push: 4 | branches: 5 | - main 6 | watch: 7 | types: started 8 | workflow_dispatch: 9 | schedule: 10 | - cron: 35 2 * * * 11 | jobs: 12 | build-and-deploy: 13 | runs-on: ubuntu-latest 14 | environment: user 15 | steps: 16 | - name: 🔀 random delay 0-300 seconds 17 | run: sleep $((RANDOM % 301)) 18 | 19 | - name: 🔌 Check out code 20 | uses: actions/checkout@main 21 | 22 | - name: 🔨 Setup Node.js environment 23 | uses: actions/setup-node@main 24 | with: 25 | node-version: 18 26 | cache: npm 27 | 28 | - name: 👾 Check if Debug is true 29 | if: vars.debug == '1' 30 | run: | 31 | echo "CLOUD189_VERBOSE=1" >> $GITHUB_ENV 32 | 33 | - name: 📹 Restore cached Cookie 34 | id: cache-cookie-restore 35 | uses: actions/cache/restore@v4 36 | with: 37 | path: .token 38 | key: ${{ runner.os }}-cache-token 39 | restore-keys: ${{ runner.os }}-cache-token- 40 | 41 | - name: 🔧 Init secrets 42 | uses: shine1594/secrets-to-env-action@master 43 | with: 44 | secrets: ${{ toJSON(secrets) }} 45 | secrets_env: production 46 | prefix_prod: "" 47 | file_name_prod: .env 48 | 49 | - name: 📡 Init dependencies 50 | run: npm install 51 | 52 | - name: 🚀 Run 53 | uses: nick-fields/retry@master 54 | with: 55 | timeout_minutes: 30 56 | max_attempts: 3 57 | command: npm start 58 | 59 | - name: 📹 Save cached Cookie 60 | uses: actions/cache/save@v4 61 | with: 62 | path: .token 63 | key: ${{ runner.os }}-cache-token-${{ hashFiles('.token/*.json') }} 64 | 65 | - name: 🚗 Keep Running 66 | if: github.event_name == 'schedule' 67 | run: | 68 | git config --local user.email "${{ github.actor_id }}+${{ github.actor }}@users.noreply.github.com" 69 | git config --local user.name "${{ github.actor }}" 70 | git remote set-url origin https://${{ github.actor }}:${{ github.token }}@github.com/${{ github.repository }} 71 | git pull --rebase --autostash 72 | git commit --allow-empty -m "Keep Running..." 73 | git push 74 | 75 | - name: 🎉 Delete old workflow run 76 | uses: Mattraks/delete-workflow-runs@main 77 | with: 78 | token: ${{ github.token }} 79 | repository: ${{ github.repository }} 80 | retain_days: 0 81 | keep_minimum_runs: 50 82 | -------------------------------------------------------------------------------- /doc/xuanwu/README.md: -------------------------------------------------------------------------------- 1 | ## 玄武:[GitCourser/XuanWu](https://github.com/GitCourser/XuanWu) 2 | 3 | ### 和本地步骤一样,先看本地步骤: 4 | 5 | 1. 环境(node 18+) 6 | 2. 下载(克隆)项目 7 | 3. 安装依赖 8 | 4. 运行 9 | 10 | ### 教程开始 11 | 12 | 1. docker版自带 nodejs 可跳过安装环境,linux 和 windows 需自己下载安装 13 | 14 | 2. 下载项目 15 | - 从 `code` -> `download zip` 下载并解压 16 | - ![](https://cdn.jsdelivr.net/gh/wes-lin/Cloud189Checkin/doc/xuanwu/xw-01.png) 17 | - 看其中有3层 `Cloud189Checkin-main\src\push`,所以在 `文件管理` 建3层目录,主目录随便取比如 189,或者用默认的 Cloud189Checkin-main 18 | - ![](https://cdn.jsdelivr.net/gh/wes-lin/Cloud189Checkin/doc/xuanwu/xw-02.png) 19 | - 玄武可以批量上传文件,但不能传文件夹,所以3层目录要拖3次文件进来,看上面的路径,拖进来的文件就是传这个路径 20 | - ![](https://cdn.jsdelivr.net/gh/wes-lin/Cloud189Checkin/doc/xuanwu/xw-03.png) 21 | - 全部拖完以后就是这样,要是你nas或服务器有方便的文件管理功能也可以直接上传到docker挂载路径,就是xuanwu目录中 22 | - ![](https://cdn.jsdelivr.net/gh/wes-lin/Cloud189Checkin/doc/xuanwu/xw-04.png) 23 | - 修改 `.env` 配置文件,设置电信账号,并发数,消息接口之类的 24 | - ![](https://cdn.jsdelivr.net/gh/wes-lin/Cloud189Checkin/doc/xuanwu/xw-05.png) 25 | 26 | 3. 安装依赖 27 | - 这个我们用 `任务管理` 中 `自定义执行` 功能,本地说明让你cd进目录再用npm install,这里cd进的就是工作目录,填你刚才建的目录 189,命令照填,然后执行等待完成 28 | - ![](https://cdn.jsdelivr.net/gh/wes-lin/Cloud189Checkin/doc/xuanwu/xw-06.png) 29 | - 这个就是依赖安装完成了 30 | - ![](https://cdn.jsdelivr.net/gh/wes-lin/Cloud189Checkin/doc/xuanwu/xw-07.png) 31 | - 安装完成去 `文件管理` 里看会多 `node_modules` 这个目录 32 | - ![](https://cdn.jsdelivr.net/gh/wes-lin/Cloud189Checkin/doc/xuanwu/xw-08.png) 33 | 34 | 4. 运行 35 | - `任务管理` 中 `新建任务`,主要是命令和工作目录不能错,参考下图 36 | - ![](https://cdn.jsdelivr.net/gh/wes-lin/Cloud189Checkin/doc/xuanwu/xw-09.png) 37 | - 建好后这里可以测试运行 38 | - ![](https://cdn.jsdelivr.net/gh/wes-lin/Cloud189Checkin/doc/xuanwu/xw-10.png) 39 | - 运行结果,日志会等程序全部运行完出会显示出来,所以测试时可以先只用一个号 40 | - ![](https://cdn.jsdelivr.net/gh/wes-lin/Cloud189Checkin/doc/xw-11.png) 41 | 42 | 5. 分组运行 43 | - 想开多组的,用你nas或服务器的文件管理,或者直接在 `自定义执行` 用复制目录命令 `cr -r`,把原来的 189 目录复制一份,因为原目录中已经安装好了依赖,直接复制比你再从头来的方便 44 | - ![](https://cdn.jsdelivr.net/gh/wes-lin/Cloud189Checkin/doc/xuanwu/xw-12.png) 45 | - 复制完后去文件里看,多了一个 189-2,修改配置文件 46 | - ![](https://cdn.jsdelivr.net/gh/wes-lin/Cloud189Checkin/doc/xuanwu/xw-13.png) 47 | - 后面新建任务时就只有工作目录变成新的,其他不变 48 | - ![](https://cdn.jsdelivr.net/gh/wes-lin/Cloud189Checkin/doc/xuanwu/xw-14.png) 49 | 50 | 51 | ## 青龙:[whyour/qinglong](https://github.com/whyour/qinglong) 52 | 53 | 1. 命令方法 54 | - 青龙的用法大致和玄武一样,但青龙没有工作目录,所以每次执行的命令都要先进入项目目录,并用 `sh -c` 调用,命令为: 55 | `sh -c "cd /ql/data/scripts/{目录} && npm ..."` 56 | 57 | - 用上面的例子安装依赖命令就是: 58 | `sh -c "cd /ql/data/scripts/189 && npm install"` 59 | 60 | - 然后执行时将命令改为: 61 | `sh -c "cd /ql/data/scripts/189 && npm start"` 62 | 63 | 2. [建脚本方法](https://www.yuque.com/w992/it/cloud189checkin) -------------------------------------------------------------------------------- /src/app.js: -------------------------------------------------------------------------------- 1 | require("dotenv").config(); 2 | const { 3 | CloudClient, 4 | FileTokenStore, 5 | logger: sdkLogger, 6 | } = require("cloud189-sdk"); 7 | const recording = require("log4js/lib/appenders/recording"); 8 | const accounts = require("../accounts"); 9 | const { mask, delay } = require("./utils"); 10 | const push = require("./push"); 11 | const { log4js, cleanLogs, catLogs } = require("./logger"); 12 | const execThreshold = process.env.EXEC_THRESHOLD || 1; 13 | const tokenDir = ".token"; 14 | 15 | sdkLogger.configure({ 16 | isDebugEnabled: process.env.CLOUD189_VERBOSE === "1", 17 | }); 18 | 19 | // 个人任务签到 20 | const doUserTask = async (cloudClient, logger) => { 21 | const tasks = Array.from({ length: execThreshold }, () => 22 | cloudClient.userSign() 23 | ); 24 | const result = (await Promise.allSettled(tasks)).filter( 25 | ({ status, value }) => 26 | status === "fulfilled" && !value.isSign && value.netdiskBonus 27 | ); 28 | logger.info( 29 | `个人签到任务: 成功数/总请求数 ${result.length}/${tasks.length} 获得 ${ 30 | result.map(({ value }) => value.netdiskBonus)?.join(",") || "0" 31 | }M 空间` 32 | ); 33 | }; 34 | 35 | const run = async (userName, password, userSizeInfoMap, logger) => { 36 | if (userName && password) { 37 | const before = Date.now(); 38 | try { 39 | logger.log("开始执行"); 40 | const cloudClient = new CloudClient({ 41 | username: userName, 42 | password, 43 | token: new FileTokenStore(`${tokenDir}/${userName}.json`), 44 | }); 45 | const beforeUserSizeInfo = await cloudClient.getUserSizeInfo(); 46 | userSizeInfoMap.set(userName, { 47 | cloudClient, 48 | userSizeInfo: beforeUserSizeInfo, 49 | logger, 50 | }); 51 | await Promise.all([doUserTask(cloudClient, logger)]); 52 | } catch (e) { 53 | if (e.response) { 54 | logger.log(`请求失败: ${e.response.statusCode}, ${e.response.body}`); 55 | } else { 56 | logger.error(e); 57 | } 58 | if (e.code === "ECONNRESET" || e.code === "ETIMEDOUT") { 59 | logger.error("请求超时"); 60 | throw e; 61 | } 62 | } finally { 63 | logger.log( 64 | `执行完毕, 耗时 ${((Date.now() - before) / 1000).toFixed(2)} 秒` 65 | ); 66 | } 67 | } 68 | }; 69 | 70 | // 开始执行程序 71 | async function main() { 72 | // 用于统计实际容量变化 73 | const userSizeInfoMap = new Map(); 74 | for (let index = 0; index < accounts.length; index++) { 75 | const account = accounts[index]; 76 | const { userName, password } = account; 77 | const userNameInfo = mask(userName, 3, 7); 78 | const logger = log4js.getLogger(userName); 79 | logger.addContext("user", userNameInfo); 80 | await run(userName, password, userSizeInfoMap, logger); 81 | } 82 | 83 | //数据汇总 84 | for (const [ 85 | userName, 86 | { cloudClient, userSizeInfo, logger }, 87 | ] of userSizeInfoMap) { 88 | const afterUserSizeInfo = await cloudClient.getUserSizeInfo(); 89 | logger.log( 90 | `个人容量:⬆️ ${( 91 | (afterUserSizeInfo.cloudCapacityInfo.totalSize - 92 | userSizeInfo.cloudCapacityInfo.totalSize) / 93 | 1024 / 94 | 1024 95 | ).toFixed(2)}M/${( 96 | afterUserSizeInfo.cloudCapacityInfo.totalSize / 97 | 1024 / 98 | 1024 / 99 | 1024 100 | ).toFixed(2)}G`, 101 | `家庭容量:⬆️ ${( 102 | (afterUserSizeInfo.familyCapacityInfo.totalSize - 103 | userSizeInfo.familyCapacityInfo.totalSize) / 104 | 1024 / 105 | 1024 106 | ).toFixed(2)}M/${( 107 | afterUserSizeInfo.familyCapacityInfo.totalSize / 108 | 1024 / 109 | 1024 / 110 | 1024 111 | ).toFixed(2)}G` 112 | ); 113 | } 114 | } 115 | 116 | (async () => { 117 | try { 118 | await main(); 119 | //等待日志文件写入 120 | await delay(1000); 121 | } finally { 122 | const logs = catLogs(); 123 | const events = recording.replay(); 124 | const content = events.map((e) => `${e.data.join("")}`).join(" \n"); 125 | push("天翼云盘自动签到任务", logs + content); 126 | recording.erase(); 127 | cleanLogs(); 128 | } 129 | })(); 130 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # Cloud189Checkin 2 | 3 | 天翼网盘自动签到(随机容量),~~家庭空间签到(随机容量)~~。 4 | 5 | # 重要说明!!! 6 | 7 | 请勿直接修改 .env,然后提交到 github,源码仓库是公开的,别人可以直接看到你的账号密码。因为错误使用本仓库导致账号密码泄漏,并且在使用这个脚本出现账户异常情况,本人概不负责!!! 8 | 如果遇到设备ID不存在,需要二次设备校验,请先参考[这个](https://github.com/wes-lin/Cloud189Checkin/issues/165)关闭自己的设备锁。 9 | 10 | 11 | # **目录** 12 | 13 | - [GitHub Action 运行](#GitHubAction运行) 14 | - [本地运行](#本地运行) 15 | - [设置推送](#设置推送) 16 | - [玄武-青龙面板](#玄武-青龙面板) 17 | - [其他环境集成](#其他环境集成) 18 | - [交流群](#交流群) 19 | - [更新内容](#更新内容) 20 | 21 | ## GitHub Action 运行 22 | 23 | ### Fork 此仓库 24 | 25 | ![](https://cdn.jsdelivr.net/gh/wes-lin/Cloud189Checkin/image/fork.png) 26 | 27 | ### 设置工作流权限 28 | 29 | 将 Settings -> Actions -> Workflow permissions 改成 Read and write permissions 30 | ![](https://github.com/user-attachments/assets/28d27a78-73f2-489e-aa7e-cac87c0fc509) 31 | 32 | ### 设置账号密码 33 | 34 | 新版本的 git Action 需要创建 environment 来配合使用,创建一个名为 user 的环境 35 | ![](https://cdn.jsdelivr.net/gh/wes-lin/Cloud189Checkin/image/env.png) 36 | 创建好后编辑 user 环境,添加变量 TY_ACCOUNTS userName 和 password 为你的天翼账号和密码,可以添加多个账号如[{"userName":"账号 1","password":"账号 1 的密码"},{"userName":"账号 2","password":"账号 2 的密码"}] 37 | ![](https://cdn.jsdelivr.net/gh/wes-lin/Cloud189Checkin/image/accounts.jpg) 38 | 39 | 如果你遇到你账号密码中有特殊字符如#$等无法解析的[SyntaxError](https://github.com/wes-lin/Cloud189Checkin/issues/76),请在你的配置中将TY_ACCOUNTS用单引号包起来 40 | 例如'[{"userName":"1234567890","password":"123334#$#$"}]' 41 | 42 | ### 设置签到并发值 43 | 44 | 目前发现电信的签到, 在同时发送请求时, 能同时获取到奖励,这 bug 在个人和~~家庭~~的签到任务同样有生效. 但是这是具有一定风险性, 并且获取到奖励是不固定的,请谨慎使用.如果因为使用该脚本出现账号异常,本人概不负责. 设置环境变量 EXEC_THRESHOLD 默认是不开启, 默认签到执行一次,如设置建议并发数为 5. 45 | 46 | - `EXEC_THRESHOLD` 同时签到的最大进程数 47 | 48 | ## 设置推送 49 | 50 | ### Server 酱 51 | 52 | 为了考虑到不同客户端兼容性,采用了 Server 酱,只需多配置下 SENDKEY 53 | ![](https://cdn.jsdelivr.net/gh/wes-lin/Cloud189Checkin/image/push.png)就行,Server 酱的配置和 sendkey 的获取可参看[Server 酱官网](https://sct.ftqq.com/) 54 | 55 | ### TelegramBot 推送 56 | 57 | - `TELEGRAM_BOT_TOKEN` _Telegram Bot Token_ 58 | - `TELEGRAM_CHAT_ID` _Telegram 接收推送消息的会话 ID_ 59 | 60 | ### 微信群机器人推送 61 | 62 | - `WECOM_BOT_KEY ` _微信群机器人 webhook_ 63 | - `WECOM_BOT_TELPHONE ` _接收推送手机号_ 64 | [群机器人配置说明](https://developer.work.weixin.qq.com/document/path/91770) 65 | 66 | ### WxPusher 推送 67 | 68 | - `WX_PUSHER_APP_TOKEN ` _WxPuser 推送 AppToken_ 69 | - `WX_PUSHER_UID ` _接收推送 UID_ 70 | 默认使用是我的 WxPusher,你也可以改成你自己 wxPusher 开发者账户,修改 WX_PUSHER_APP_TOKEN. 如果想直接使用我的 wxPush 应用,请扫描底下二维码进行关联. 71 | https://wxpusher.zjiecode.com/api/qrcode/4Ix7noqD3L7DMBoSlvig3t4hqjFWzPkdHqAYsg8IzkPreW7d8uGUHi9LJO4EcyJg.jpg 72 | 然后拿到 UID 后,把 WX_PUSHER_UID 配成你拿到的 UID. 73 | ![](https://cdn.jsdelivr.net/gh/wes-lin/Cloud189Checkin/image/wxpusher.jpg) 74 | 75 | ### PushPlus 推送 76 | 77 | - `PUSH_PLUS_TOKEN ` _pushPlus 推送 token_ 78 | - 注册和获取 token:https://www.pushplus.plus/uc.html 79 | - 拿到 token 后,把 PUSH_PLUS_TOKEN 配成你拿到的 token. 80 | - 免费用户每天有 200 条推送额度 81 | 82 | ### ShowDoc 推送 83 | 84 | - `SHOWDOC_KEY ` _ShowDoc 推送 key_ 85 | - ShowDoc 官网:https://push.showdoc.com.cn 86 | - 打开官网,关注公众号,拿到 key 后,把 SHOWDOC_KEY 配成你拿到的 key 87 | - 使用简单、开箱可用、长期维护、持续免费、编程可玩、不限制消息数量、不限制请求数 88 | 89 | ### Bark 推送 (仅支持 iPhone、iPad、M 芯片 Mac) 90 | 91 | - `BARK_KEY ` _Bark 推送 key_ 92 | - Bark 官网:https://bark.day.app/ 93 | - 安装 Bark app,开启通知权限,拿到 key 后,把 BARK_KEY 配成你拿到的 key 94 | - `可选` 支持自定义 server, 配置成 BARK_SERVER ,默认为官方通道 https://api.day.app 95 | - 免费、开源、轻量;使用苹果 APNS 服务,及时、稳定、可靠;不会消耗设备的电量,基于系统推送服务与推送扩展,app 本体并不需要运行;隐私安全,可以通过一些方式确保包含作者本人在内的所有人都无法窃取你的隐私 96 | 97 | ### 执行任务 98 | 99 | 1. 点击**Action**,再点击**I understand my workflows, go ahead and enable them** 100 | 2. 给自己仓库点个 start 或者修改任意文件后提交一次或者手动点击运行 101 | ![](http://tu.yaohuo.me/imgs/2020/06/34ca160c972b9927.png) 102 | 3. 每天早上 10:35 点执行任务 103 | 104 | ### 查看运行结果 105 | 106 | Actions > Cloud check in action > build 107 | ![](https://cdn.jsdelivr.net/gh/wes-lin/Cloud189Checkin/image/action.png) 108 | 109 | ## 本地运行 110 | 111 | ### 环境配置 112 | 113 | ``` 114 | 115 | Node.js 18+ 116 | 117 | ``` 118 | 119 | ### 克隆项目 120 | 121 | ```bash 122 | git clone https://github.com/wes-lin/Cloud189Checkin.git 123 | ``` 124 | 125 | ```bash 126 | cd Cloud189Checkin 127 | ``` 128 | 129 | ### 安装依赖 130 | 131 | ```bash 132 | npm install 133 | ``` 134 | 135 | ### 运行 136 | 137 | 修改源码中.env 中环境变量 138 | 139 | 执行命令 140 | 141 | ```bash 142 | npm start 143 | ``` 144 | 145 | ## 玄武-青龙面板 146 | 147 | ### [教程](doc/xuanwu) 148 | 149 | ## 其他环境集成 150 | 151 | 我已经把天翼网盘的相关 API 集成到 [SDK](https://github.com/wes-lin/cloud189-sdk) 了,有编程能力的同学可以自行拓展,集成到自己的代码环境。 152 | 153 | ## 交流群 154 | 155 | ![](https://cdn.jsdelivr.net/gh/wes-lin/Cloud189Checkin/image/group.jpg) 156 | 157 | ## [更新内容](https://github.com/wes-lin/Cloud189Checkin/wiki/更新内容) 158 | -------------------------------------------------------------------------------- /src/push/index.js: -------------------------------------------------------------------------------- 1 | const { log4js } = require("../logger"); 2 | const superagent = require("superagent"); 3 | const serverChan = require("./serverChan"); 4 | const telegramBot = require("./telegramBot"); 5 | const wecomBot = require("./wecomBot"); 6 | const wxpush = require("./wxPusher"); 7 | const pushPlus = require("./pushPlus"); 8 | const bark = require("./bark"); 9 | const showDoc = require("./showDoc"); 10 | 11 | const logger = log4js.getLogger("push"); 12 | logger.addContext("user", "push"); 13 | 14 | const pushServerChan = (title, desp) => { 15 | if (!serverChan.sendKey) { 16 | return; 17 | } 18 | const data = { 19 | title, 20 | desp: desp.replaceAll("\n","\n\n"), 21 | }; 22 | superagent 23 | .post(`https://sctapi.ftqq.com/${serverChan.sendKey}.send`) 24 | .type("form") 25 | .send(data) 26 | .then((res) => { 27 | logger.info("ServerChan推送成功"); 28 | }) 29 | .catch((err) => { 30 | if (err.response?.text) { 31 | const { info } = JSON.parse(err.response.text); 32 | logger.error(`ServerChan推送失败:${info}`); 33 | } else { 34 | logger.error(`ServerChan推送失败:${JSON.stringify(err)}`); 35 | } 36 | }); 37 | }; 38 | 39 | const pushTelegramBot = (title, desp) => { 40 | if (!(telegramBot.botToken && telegramBot.chatId)) { 41 | return; 42 | } 43 | const data = { 44 | chat_id: telegramBot.chatId, 45 | text: `${title}\n\n${desp}`, 46 | }; 47 | superagent 48 | .post(`https://api.telegram.org/bot${telegramBot.botToken}/sendMessage`) 49 | .type("form") 50 | .send(data) 51 | .then((res) => { 52 | if (res.body?.ok) { 53 | logger.info("TelegramBot推送成功"); 54 | } else { 55 | logger.error(`TelegramBot推送失败:${JSON.stringify(res.body)}`); 56 | } 57 | }) 58 | .catch((err) => { 59 | logger.error(`TelegramBot推送失败:${JSON.stringify(err)}`); 60 | }); 61 | }; 62 | 63 | const pushWecomBot = (title, desp) => { 64 | if (!(wecomBot.key && wecomBot.telphone)) { 65 | return; 66 | } 67 | const data = { 68 | msgtype: "text", 69 | text: { 70 | content: `${title}\n\n${desp}`, 71 | mentioned_mobile_list: [wecomBot.telphone], 72 | }, 73 | }; 74 | superagent 75 | .post( 76 | `https://qyapi.weixin.qq.com/cgi-bin/webhook/send?key=${wecomBot.key}` 77 | ) 78 | .send(data) 79 | .then((res) => { 80 | if (res.body?.errcode) { 81 | logger.error(`wecomBot推送失败:${JSON.stringify(res.body)}`); 82 | } else { 83 | logger.info("wecomBot推送成功"); 84 | } 85 | }) 86 | .catch((err) => { 87 | logger.error(`wecomBot推送失败:${JSON.stringify(err)}`); 88 | }); 89 | }; 90 | 91 | const pushWxPusher = (title, desp) => { 92 | if (!(wxpush.appToken && wxpush.uid)) { 93 | return; 94 | } 95 | const data = { 96 | appToken: wxpush.appToken, 97 | contentType: 1, 98 | summary: title, 99 | content: desp, 100 | uids: [wxpush.uid], 101 | }; 102 | superagent 103 | .post("https://wxpusher.zjiecode.com/api/send/message") 104 | .send(data) 105 | .then((res) => { 106 | if (res.body?.code === 1000) { 107 | logger.info("wxPusher推送成功"); 108 | } else { 109 | logger.error(`wxPusher推送失败:${JSON.stringify(res.body)}`); 110 | } 111 | }) 112 | .catch((err) => { 113 | logger.error(`wxPusher推送失败:${JSON.stringify(err)}`); 114 | }); 115 | }; 116 | 117 | const pushPlusPusher = (title, desp) => { 118 | // 如果没有配置 pushPlus 的 token,则不执行推送 119 | if (!pushPlus.token) { 120 | return; 121 | } 122 | // 请求体 123 | const data = { 124 | token: pushPlus.token, 125 | title: title, 126 | content: desp, 127 | }; 128 | // 发送请求 129 | superagent 130 | .post("http://www.pushplus.plus/send/") 131 | .send(data) 132 | .then((res) => { 133 | if (res.body?.code === 200) { 134 | logger.info("pushPlus 推送成功"); 135 | } else { 136 | logger.error(`pushPlus 推送失败:${JSON.stringify(res.body)}`); 137 | } 138 | }) 139 | .catch((err) => { 140 | logger.error(`pushPlus 推送失败:${JSON.stringify(err)}`); 141 | }); 142 | }; 143 | 144 | const pushBark = (title, desp) => { 145 | if (!bark.apiServer || !bark.sendKey) { 146 | return; 147 | } 148 | const encodedUrl = `${bark.apiServer}/${bark.sendKey}/${encodeURIComponent(title)}/${encodeURIComponent(desp)}`; 149 | superagent 150 | .get(encodedUrl) 151 | .then((response) => { 152 | // 请求成功 153 | logger.info("Bark推送成功"); 154 | }) 155 | .catch((error) => { 156 | // 请求失败 157 | logger.error(`Bark推送失败: ${JSON.stringify(error)}`); 158 | }); 159 | }; 160 | 161 | const pushShowDoc = (title, desp) => { 162 | if (!showDoc.sendKey) { 163 | return; 164 | } 165 | const encodedUrl = encodeURI(`https://push.showdoc.com.cn/server/api/push/${showDoc.sendKey}`); 166 | const data = { 167 | title: title, 168 | content: desp, 169 | }; 170 | superagent 171 | .get(encodedUrl) 172 | .send(data) 173 | .then((response) => { 174 | // 请求成功 175 | logger.info("ShowDoc推送成功"); 176 | }) 177 | .catch((error) => { 178 | // 请求失败 179 | logger.error(`ShowDoc推送失败: ${JSON.stringify(error)}`); 180 | }); 181 | }; 182 | 183 | const push = (title, desp) => { 184 | pushServerChan(title, desp); 185 | pushTelegramBot(title, desp); 186 | pushWecomBot(title, desp); 187 | pushWxPusher(title, desp); 188 | pushPlusPusher(title, desp); 189 | pushBark(title, desp); 190 | pushShowDoc(title, desp); 191 | }; 192 | 193 | module.exports = push; 194 | -------------------------------------------------------------------------------- /yarn.lock: -------------------------------------------------------------------------------- 1 | # THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY. 2 | # yarn lockfile v1 3 | 4 | 5 | "@aashutoshrathi/word-wrap@^1.2.3": 6 | version "1.2.6" 7 | resolved "https://registry.npmjs.org/@aashutoshrathi/word-wrap/-/word-wrap-1.2.6.tgz" 8 | integrity sha512-1Yjs2SvM8TflER/OD3cOjhWWOZb58A2t7wpE2S9XfBYTiIl+XFhQG2bjy4Pu1I+EAlCNUzRDYDdFwFYUKvXcIA== 9 | 10 | "@eslint-community/eslint-utils@^4.2.0": 11 | version "4.4.0" 12 | resolved "https://registry.npmjs.org/@eslint-community/eslint-utils/-/eslint-utils-4.4.0.tgz" 13 | integrity sha512-1/sA4dwrzBAyeUoQ6oxahHKmrZvsnLCg4RfxW3ZFGGmQkSNQPFNLV9CUEFQP1x9EYXHTo5p6xdhZM1Ne9p/AfA== 14 | dependencies: 15 | eslint-visitor-keys "^3.3.0" 16 | 17 | "@eslint-community/regexpp@^4.6.1": 18 | version "4.6.2" 19 | resolved "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.6.2.tgz" 20 | integrity sha512-pPTNuaAG3QMH+buKyBIGJs3g/S5y0caxw0ygM3YyE6yJFySwiGGSzA+mM3KJ8QQvzeLh3blwgSonkFjgQdxzMw== 21 | 22 | "@eslint/eslintrc@^2.1.1": 23 | version "2.1.1" 24 | resolved "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-2.1.1.tgz" 25 | integrity sha512-9t7ZA7NGGK8ckelF0PQCfcxIUzs1Md5rrO6U/c+FIQNanea5UZC0wqKXH4vHBccmu4ZJgZ2idtPeW7+Q2npOEA== 26 | dependencies: 27 | ajv "^6.12.4" 28 | debug "^4.3.2" 29 | espree "^9.6.0" 30 | globals "^13.19.0" 31 | ignore "^5.2.0" 32 | import-fresh "^3.2.1" 33 | js-yaml "^4.1.0" 34 | minimatch "^3.1.2" 35 | strip-json-comments "^3.1.1" 36 | 37 | "@eslint/js@^8.46.0": 38 | version "8.46.0" 39 | resolved "https://registry.npmjs.org/@eslint/js/-/js-8.46.0.tgz" 40 | integrity sha512-a8TLtmPi8xzPkCbp/OGFUo5yhRkHM2Ko9kOWP4znJr0WAhWyThaw3PnwX4vOTWOAMsV2uRt32PPDcEz63esSaA== 41 | 42 | "@humanwhocodes/config-array@^0.11.10": 43 | version "0.11.10" 44 | resolved "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.11.10.tgz" 45 | integrity sha512-KVVjQmNUepDVGXNuoRRdmmEjruj0KfiGSbS8LVc12LMsWDQzRXJ0qdhN8L8uUigKpfEHRhlaQFY0ib1tnUbNeQ== 46 | dependencies: 47 | "@humanwhocodes/object-schema" "^1.2.1" 48 | debug "^4.1.1" 49 | minimatch "^3.0.5" 50 | 51 | "@humanwhocodes/module-importer@^1.0.1": 52 | version "1.0.1" 53 | resolved "https://registry.npmjs.org/@humanwhocodes/module-importer/-/module-importer-1.0.1.tgz" 54 | integrity sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA== 55 | 56 | "@humanwhocodes/object-schema@^1.2.1": 57 | version "1.2.1" 58 | resolved "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-1.2.1.tgz" 59 | integrity sha512-ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA== 60 | 61 | "@netdrive-sdk/log@1.0.0": 62 | version "1.0.0" 63 | resolved "https://registry.npmmirror.com/@netdrive-sdk/log/-/log-1.0.0.tgz" 64 | integrity sha512-0Bk/nvAvKcvRoGyCYc5wQWXPrcqAd09UZsl1J/3WVmVHTRdjsCsP1GricJAR0srsaAhHk/7lBUkGgfQphFEG3g== 65 | 66 | "@nodelib/fs.scandir@2.1.5": 67 | version "2.1.5" 68 | resolved "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz" 69 | integrity sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g== 70 | dependencies: 71 | "@nodelib/fs.stat" "2.0.5" 72 | run-parallel "^1.1.9" 73 | 74 | "@nodelib/fs.stat@2.0.5": 75 | version "2.0.5" 76 | resolved "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz" 77 | integrity sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A== 78 | 79 | "@nodelib/fs.walk@^1.2.8": 80 | version "1.2.8" 81 | resolved "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz" 82 | integrity sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg== 83 | dependencies: 84 | "@nodelib/fs.scandir" "2.1.5" 85 | fastq "^1.6.0" 86 | 87 | "@sindresorhus/is@^4.0.0": 88 | version "4.6.0" 89 | resolved "https://registry.npmjs.org/@sindresorhus/is/-/is-4.6.0.tgz" 90 | integrity sha512-t09vSN3MdfsyCHoFcTRCH/iUtG7OJ0CsjzB8cjAmKc/va/kIgeDI/TxsigdncE/4be734m0cvIYwNaV4i2XqAw== 91 | 92 | "@szmarczak/http-timer@^4.0.5": 93 | version "4.0.6" 94 | resolved "https://registry.npmjs.org/@szmarczak/http-timer/-/http-timer-4.0.6.tgz" 95 | integrity sha512-4BAffykYOgO+5nzBWYwE3W90sBgLJoUPRWWcL8wlyiM8IB8ipJz3UMJ9KXQd1RKQXpKp8Tutn80HZtWsu2u76w== 96 | dependencies: 97 | defer-to-connect "^2.0.0" 98 | 99 | "@types/cacheable-request@^6.0.1": 100 | version "6.0.3" 101 | resolved "https://registry.npmjs.org/@types/cacheable-request/-/cacheable-request-6.0.3.tgz" 102 | integrity sha512-IQ3EbTzGxIigb1I3qPZc1rWJnH0BmSKv5QYTalEwweFvyBDLSAe24zP0le/hyi7ecGfZVlIVAg4BZqb8WBwKqw== 103 | dependencies: 104 | "@types/http-cache-semantics" "*" 105 | "@types/keyv" "^3.1.4" 106 | "@types/node" "*" 107 | "@types/responselike" "^1.0.0" 108 | 109 | "@types/http-cache-semantics@*": 110 | version "4.0.4" 111 | resolved "https://registry.npmjs.org/@types/http-cache-semantics/-/http-cache-semantics-4.0.4.tgz" 112 | integrity sha512-1m0bIFVc7eJWyve9S0RnuRgcQqF/Xd5QsUZAZeQFr1Q3/p9JWoQQEqmVy+DPTNpGXwhgIetAoYF8JSc33q29QA== 113 | 114 | "@types/json5@^0.0.29": 115 | version "0.0.29" 116 | resolved "https://registry.npmjs.org/@types/json5/-/json5-0.0.29.tgz" 117 | integrity sha512-dRLjCWHYg4oaA77cxO64oO+7JwCwnIzkZPdrrC71jQmQtlhM556pwKo5bUzqvZndkVbeFLIIi+9TC40JNF5hNQ== 118 | 119 | "@types/keyv@^3.1.4": 120 | version "3.1.4" 121 | resolved "https://registry.npmjs.org/@types/keyv/-/keyv-3.1.4.tgz" 122 | integrity sha512-BQ5aZNSCpj7D6K2ksrRCTmKRLEpnPvWDiLPfoGyhZ++8YtiK9d/3DBKPJgry359X/P1PfruyYwvnvwFjuEiEIg== 123 | dependencies: 124 | "@types/node" "*" 125 | 126 | "@types/node@*": 127 | version "20.14.1" 128 | resolved "https://registry.npmjs.org/@types/node/-/node-20.14.1.tgz" 129 | integrity sha512-T2MzSGEu+ysB/FkWfqmhV3PLyQlowdptmmgD20C6QxsS8Fmv5SjpZ1ayXaEC0S21/h5UJ9iA6W/5vSNU5l00OA== 130 | dependencies: 131 | undici-types "~5.26.4" 132 | 133 | "@types/responselike@^1.0.0": 134 | version "1.0.3" 135 | resolved "https://registry.npmjs.org/@types/responselike/-/responselike-1.0.3.tgz" 136 | integrity sha512-H/+L+UkTV33uf49PH5pCAUBVPNj2nDBXTN+qS1dOwyyg24l3CcicicCA7ca+HMvJBZcFgl5r8e+RR6elsb4Lyw== 137 | dependencies: 138 | "@types/node" "*" 139 | 140 | acorn-jsx@^5.3.2: 141 | version "5.3.2" 142 | resolved "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz" 143 | integrity sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ== 144 | 145 | "acorn@^6.0.0 || ^7.0.0 || ^8.0.0", acorn@^8.9.0: 146 | version "8.10.0" 147 | resolved "https://registry.npmjs.org/acorn/-/acorn-8.10.0.tgz" 148 | integrity sha512-F0SAmZ8iUtS//m8DmCTA0jlh6TDKkHQyK6xc6V4KDTyZKA9dnvX9/3sRTVQrWm79glUAZbnmmNcdYwUIHWVybw== 149 | 150 | ajv@^6.12.4: 151 | version "6.12.6" 152 | resolved "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz" 153 | integrity sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g== 154 | dependencies: 155 | fast-deep-equal "^3.1.1" 156 | fast-json-stable-stringify "^2.0.0" 157 | json-schema-traverse "^0.4.1" 158 | uri-js "^4.2.2" 159 | 160 | ansi-regex@^5.0.1: 161 | version "5.0.1" 162 | resolved "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz" 163 | integrity sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ== 164 | 165 | ansi-styles@^4.1.0: 166 | version "4.3.0" 167 | resolved "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz" 168 | integrity sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg== 169 | dependencies: 170 | color-convert "^2.0.1" 171 | 172 | argparse@^2.0.1: 173 | version "2.0.1" 174 | resolved "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz" 175 | integrity sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q== 176 | 177 | array-buffer-byte-length@^1.0.0: 178 | version "1.0.0" 179 | resolved "https://registry.npmjs.org/array-buffer-byte-length/-/array-buffer-byte-length-1.0.0.tgz" 180 | integrity sha512-LPuwb2P+NrQw3XhxGc36+XSvuBPopovXYTR9Ew++Du9Yb/bx5AzBfrIsBoj0EZUifjQU+sHL21sseZ3jerWO/A== 181 | dependencies: 182 | call-bind "^1.0.2" 183 | is-array-buffer "^3.0.1" 184 | 185 | array-includes@^3.1.6: 186 | version "3.1.6" 187 | resolved "https://registry.npmjs.org/array-includes/-/array-includes-3.1.6.tgz" 188 | integrity sha512-sgTbLvL6cNnw24FnbaDyjmvddQ2ML8arZsgaJhoABMoplz/4QRhtrYS+alr1BUM1Bwp6dhx8vVCBSLG+StwOFw== 189 | dependencies: 190 | call-bind "^1.0.2" 191 | define-properties "^1.1.4" 192 | es-abstract "^1.20.4" 193 | get-intrinsic "^1.1.3" 194 | is-string "^1.0.7" 195 | 196 | array.prototype.findlastindex@^1.2.2: 197 | version "1.2.2" 198 | resolved "https://registry.npmjs.org/array.prototype.findlastindex/-/array.prototype.findlastindex-1.2.2.tgz" 199 | integrity sha512-tb5thFFlUcp7NdNF6/MpDk/1r/4awWG1FIz3YqDf+/zJSTezBb+/5WViH41obXULHVpDzoiCLpJ/ZO9YbJMsdw== 200 | dependencies: 201 | call-bind "^1.0.2" 202 | define-properties "^1.1.4" 203 | es-abstract "^1.20.4" 204 | es-shim-unscopables "^1.0.0" 205 | get-intrinsic "^1.1.3" 206 | 207 | array.prototype.flat@^1.3.1: 208 | version "1.3.1" 209 | resolved "https://registry.npmjs.org/array.prototype.flat/-/array.prototype.flat-1.3.1.tgz" 210 | integrity sha512-roTU0KWIOmJ4DRLmwKd19Otg0/mT3qPNt0Qb3GWW8iObuZXxrjB/pzn0R3hqpRSWg4HCwqx+0vwOnWnvlOyeIA== 211 | dependencies: 212 | call-bind "^1.0.2" 213 | define-properties "^1.1.4" 214 | es-abstract "^1.20.4" 215 | es-shim-unscopables "^1.0.0" 216 | 217 | array.prototype.flatmap@^1.3.1: 218 | version "1.3.1" 219 | resolved "https://registry.npmjs.org/array.prototype.flatmap/-/array.prototype.flatmap-1.3.1.tgz" 220 | integrity sha512-8UGn9O1FDVvMNB0UlLv4voxRMze7+FpHyF5mSMRjWHUMlpoDViniy05870VlxhfgTnLbpuwTzvD76MTtWxB/mQ== 221 | dependencies: 222 | call-bind "^1.0.2" 223 | define-properties "^1.1.4" 224 | es-abstract "^1.20.4" 225 | es-shim-unscopables "^1.0.0" 226 | 227 | arraybuffer.prototype.slice@^1.0.1: 228 | version "1.0.1" 229 | resolved "https://registry.npmjs.org/arraybuffer.prototype.slice/-/arraybuffer.prototype.slice-1.0.1.tgz" 230 | integrity sha512-09x0ZWFEjj4WD8PDbykUwo3t9arLn8NIzmmYEJFpYekOAQjpkGSyrQhNoRTcwwcFRu+ycWF78QZ63oWTqSjBcw== 231 | dependencies: 232 | array-buffer-byte-length "^1.0.0" 233 | call-bind "^1.0.2" 234 | define-properties "^1.2.0" 235 | get-intrinsic "^1.2.1" 236 | is-array-buffer "^3.0.2" 237 | is-shared-array-buffer "^1.0.2" 238 | 239 | asap@^2.0.0: 240 | version "2.0.6" 241 | resolved "https://registry.npmjs.org/asap/-/asap-2.0.6.tgz" 242 | integrity sha1-5QNHYR1+aQlDIIu9r+vLwvuGbUY= 243 | 244 | asynckit@^0.4.0: 245 | version "0.4.0" 246 | resolved "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz" 247 | integrity sha1-x57Zf380y48robyXkLzDZkdLS3k= 248 | 249 | available-typed-arrays@^1.0.5: 250 | version "1.0.5" 251 | resolved "https://registry.npmjs.org/available-typed-arrays/-/available-typed-arrays-1.0.5.tgz" 252 | integrity sha512-DMD0KiN46eipeziST1LPP/STfDU0sufISXmjSgvVsoU2tqxctQeASejWcfNtxYKqETM1UxQ8sp2OrSBWpHY6sw== 253 | 254 | balanced-match@^1.0.0: 255 | version "1.0.2" 256 | resolved "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz" 257 | integrity sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw== 258 | 259 | brace-expansion@^1.1.7: 260 | version "1.1.11" 261 | resolved "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz" 262 | integrity sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA== 263 | dependencies: 264 | balanced-match "^1.0.0" 265 | concat-map "0.0.1" 266 | 267 | cacheable-lookup@^5.0.3: 268 | version "5.0.4" 269 | resolved "https://registry.npmjs.org/cacheable-lookup/-/cacheable-lookup-5.0.4.tgz" 270 | integrity sha512-2/kNscPhpcxrOigMZzbiWF7dz8ilhb/nIHU3EyZiXWXpeq/au8qJ8VhdftMkty3n7Gj6HIGalQG8oiBNB3AJgA== 271 | 272 | cacheable-request@^7.0.1: 273 | version "7.0.4" 274 | resolved "https://registry.npmjs.org/cacheable-request/-/cacheable-request-7.0.4.tgz" 275 | integrity sha512-v+p6ongsrp0yTGbJXjgxPow2+DL93DASP4kXCDKb8/bwRtt9OEF3whggkkDkGNzgcWy2XaF4a8nZglC7uElscg== 276 | dependencies: 277 | clone-response "^1.0.2" 278 | get-stream "^5.1.0" 279 | http-cache-semantics "^4.0.0" 280 | keyv "^4.0.0" 281 | lowercase-keys "^2.0.0" 282 | normalize-url "^6.0.1" 283 | responselike "^2.0.0" 284 | 285 | call-bind@^1.0.0, call-bind@^1.0.2: 286 | version "1.0.2" 287 | resolved "https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz" 288 | integrity sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA== 289 | dependencies: 290 | function-bind "^1.1.1" 291 | get-intrinsic "^1.0.2" 292 | 293 | callsites@^3.0.0: 294 | version "3.1.0" 295 | resolved "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz" 296 | integrity sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ== 297 | 298 | chalk@^4.0.0: 299 | version "4.1.2" 300 | resolved "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz" 301 | integrity sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA== 302 | dependencies: 303 | ansi-styles "^4.1.0" 304 | supports-color "^7.1.0" 305 | 306 | clone-response@^1.0.2: 307 | version "1.0.3" 308 | resolved "https://registry.npmjs.org/clone-response/-/clone-response-1.0.3.tgz" 309 | integrity sha512-ROoL94jJH2dUVML2Y/5PEDNaSHgeOdSDicUyS7izcF63G6sTc/FTjLub4b8Il9S8S0beOfYt0TaA5qvFK+w0wA== 310 | dependencies: 311 | mimic-response "^1.0.0" 312 | 313 | cloud189-sdk@^1.0.7: 314 | version "1.0.7" 315 | resolved "https://registry.npmjs.org/cloud189-sdk/-/cloud189-sdk-1.0.7.tgz" 316 | integrity sha512-2r36bLEIpKe/SGPLYUqROSqCpU8BJ/1Pg9yZr/+oQstSV1DocDeceI+3U+KtKX0mZXDDtdmCSpOIse0/YMfIsQ== 317 | dependencies: 318 | "@netdrive-sdk/log" "1.0.0" 319 | got "11.8.2" 320 | 321 | color-convert@^2.0.1: 322 | version "2.0.1" 323 | resolved "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz" 324 | integrity sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ== 325 | dependencies: 326 | color-name "~1.1.4" 327 | 328 | color-name@~1.1.4: 329 | version "1.1.4" 330 | resolved "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz" 331 | integrity sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA== 332 | 333 | combined-stream@^1.0.8: 334 | version "1.0.8" 335 | resolved "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz" 336 | integrity sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg== 337 | dependencies: 338 | delayed-stream "~1.0.0" 339 | 340 | component-emitter@^1.3.0: 341 | version "1.3.0" 342 | resolved "https://registry.npmjs.org/component-emitter/-/component-emitter-1.3.0.tgz" 343 | integrity sha512-Rd3se6QB+sO1TwqZjscQrurpEPIfO0/yYnSin6Q/rD3mOutHvUrCAhJub3r90uNb+SESBuE0QYoB90YdfatsRg== 344 | 345 | concat-map@0.0.1: 346 | version "0.0.1" 347 | resolved "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz" 348 | integrity sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg== 349 | 350 | confusing-browser-globals@^1.0.10: 351 | version "1.0.11" 352 | resolved "https://registry.npmjs.org/confusing-browser-globals/-/confusing-browser-globals-1.0.11.tgz" 353 | integrity sha512-JsPKdmh8ZkmnHxDk55FZ1TqVLvEQTvoByJZRN9jzI0UjxK/QgAmsphz7PGtqgPieQZ/CQcHWXCR7ATDNhGe+YA== 354 | 355 | cookiejar@^2.1.3: 356 | version "2.1.3" 357 | resolved "https://registry.npmjs.org/cookiejar/-/cookiejar-2.1.3.tgz" 358 | integrity sha512-JxbCBUdrfr6AQjOXrxoTvAMJO4HBTUIlBzslcJPAz+/KT8yk53fXun51u+RenNYvad/+Vc2DIz5o9UxlCDymFQ== 359 | 360 | cross-spawn@^7.0.2: 361 | version "7.0.3" 362 | resolved "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz" 363 | integrity sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w== 364 | dependencies: 365 | path-key "^3.1.0" 366 | shebang-command "^2.0.0" 367 | which "^2.0.1" 368 | 369 | date-format@^4.0.14: 370 | version "4.0.14" 371 | resolved "https://registry.npmjs.org/date-format/-/date-format-4.0.14.tgz" 372 | integrity sha512-39BOQLs9ZjKh0/patS9nrT8wc3ioX3/eA/zgbKNopnF2wCqJEoxywwwElATYvRsXdnOxA/OQeQoFZ3rFjVajhg== 373 | 374 | debug@^3.2.7: 375 | version "3.2.7" 376 | resolved "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz" 377 | integrity sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ== 378 | dependencies: 379 | ms "^2.1.1" 380 | 381 | debug@^4.1.1, debug@^4.3.2, debug@^4.3.4: 382 | version "4.3.4" 383 | resolved "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz" 384 | integrity sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ== 385 | dependencies: 386 | ms "2.1.2" 387 | 388 | decompress-response@^6.0.0: 389 | version "6.0.0" 390 | resolved "https://registry.npmjs.org/decompress-response/-/decompress-response-6.0.0.tgz" 391 | integrity sha512-aW35yZM6Bb/4oJlZncMH2LCoZtJXTRxES17vE3hoRiowU2kWHaJKFkSBDnDR+cm9J+9QhXmREyIfv0pji9ejCQ== 392 | dependencies: 393 | mimic-response "^3.1.0" 394 | 395 | deep-is@^0.1.3: 396 | version "0.1.4" 397 | resolved "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz" 398 | integrity sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ== 399 | 400 | defer-to-connect@^2.0.0: 401 | version "2.0.1" 402 | resolved "https://registry.npmjs.org/defer-to-connect/-/defer-to-connect-2.0.1.tgz" 403 | integrity sha512-4tvttepXG1VaYGrRibk5EwJd1t4udunSOVMdLSAL6mId1ix438oPwPZMALY41FCijukO1L0twNcGsdzS7dHgDg== 404 | 405 | define-properties@^1.1.3, define-properties@^1.1.4, define-properties@^1.2.0: 406 | version "1.2.0" 407 | resolved "https://registry.npmjs.org/define-properties/-/define-properties-1.2.0.tgz" 408 | integrity sha512-xvqAVKGfT1+UAvPwKTVw/njhdQ8ZhXK4lI0bCIuCMrp2up9nPnaDftrLtmpTazqd1o+UY4zgzU+avtMbDP+ldA== 409 | dependencies: 410 | has-property-descriptors "^1.0.0" 411 | object-keys "^1.1.1" 412 | 413 | delayed-stream@~1.0.0: 414 | version "1.0.0" 415 | resolved "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz" 416 | integrity sha1-3zrhmayt+31ECqrgsp4icrJOxhk= 417 | 418 | dezalgo@1.0.3: 419 | version "1.0.3" 420 | resolved "https://registry.npmjs.org/dezalgo/-/dezalgo-1.0.3.tgz" 421 | integrity sha1-f3Qt4Gb8dIvI24IFad3c5Jvw1FY= 422 | dependencies: 423 | asap "^2.0.0" 424 | wrappy "1" 425 | 426 | doctrine@^2.1.0: 427 | version "2.1.0" 428 | resolved "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz" 429 | integrity sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw== 430 | dependencies: 431 | esutils "^2.0.2" 432 | 433 | doctrine@^3.0.0: 434 | version "3.0.0" 435 | resolved "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz" 436 | integrity sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w== 437 | dependencies: 438 | esutils "^2.0.2" 439 | 440 | dotenv@^16.4.5: 441 | version "16.4.7" 442 | resolved "https://registry.npmjs.org/dotenv/-/dotenv-16.4.7.tgz" 443 | integrity sha512-47qPchRCykZC03FhkYAhrvwU4xDBFIj1QPqaarj6mdM/hgUzfPHcpkHJOn3mJAufFeeAxAzeGsr5X0M4k6fLZQ== 444 | 445 | end-of-stream@^1.1.0: 446 | version "1.4.4" 447 | resolved "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.4.tgz" 448 | integrity sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q== 449 | dependencies: 450 | once "^1.4.0" 451 | 452 | es-abstract@^1.19.0, es-abstract@^1.20.4, es-abstract@^1.21.2: 453 | version "1.22.1" 454 | resolved "https://registry.npmjs.org/es-abstract/-/es-abstract-1.22.1.tgz" 455 | integrity sha512-ioRRcXMO6OFyRpyzV3kE1IIBd4WG5/kltnzdxSCqoP8CMGs/Li+M1uF5o7lOkZVFjDs+NLesthnF66Pg/0q0Lw== 456 | dependencies: 457 | array-buffer-byte-length "^1.0.0" 458 | arraybuffer.prototype.slice "^1.0.1" 459 | available-typed-arrays "^1.0.5" 460 | call-bind "^1.0.2" 461 | es-set-tostringtag "^2.0.1" 462 | es-to-primitive "^1.2.1" 463 | function.prototype.name "^1.1.5" 464 | get-intrinsic "^1.2.1" 465 | get-symbol-description "^1.0.0" 466 | globalthis "^1.0.3" 467 | gopd "^1.0.1" 468 | has "^1.0.3" 469 | has-property-descriptors "^1.0.0" 470 | has-proto "^1.0.1" 471 | has-symbols "^1.0.3" 472 | internal-slot "^1.0.5" 473 | is-array-buffer "^3.0.2" 474 | is-callable "^1.2.7" 475 | is-negative-zero "^2.0.2" 476 | is-regex "^1.1.4" 477 | is-shared-array-buffer "^1.0.2" 478 | is-string "^1.0.7" 479 | is-typed-array "^1.1.10" 480 | is-weakref "^1.0.2" 481 | object-inspect "^1.12.3" 482 | object-keys "^1.1.1" 483 | object.assign "^4.1.4" 484 | regexp.prototype.flags "^1.5.0" 485 | safe-array-concat "^1.0.0" 486 | safe-regex-test "^1.0.0" 487 | string.prototype.trim "^1.2.7" 488 | string.prototype.trimend "^1.0.6" 489 | string.prototype.trimstart "^1.0.6" 490 | typed-array-buffer "^1.0.0" 491 | typed-array-byte-length "^1.0.0" 492 | typed-array-byte-offset "^1.0.0" 493 | typed-array-length "^1.0.4" 494 | unbox-primitive "^1.0.2" 495 | which-typed-array "^1.1.10" 496 | 497 | es-set-tostringtag@^2.0.1: 498 | version "2.0.1" 499 | resolved "https://registry.npmjs.org/es-set-tostringtag/-/es-set-tostringtag-2.0.1.tgz" 500 | integrity sha512-g3OMbtlwY3QewlqAiMLI47KywjWZoEytKr8pf6iTC8uJq5bIAH52Z9pnQ8pVL6whrCto53JZDuUIsifGeLorTg== 501 | dependencies: 502 | get-intrinsic "^1.1.3" 503 | has "^1.0.3" 504 | has-tostringtag "^1.0.0" 505 | 506 | es-shim-unscopables@^1.0.0: 507 | version "1.0.0" 508 | resolved "https://registry.npmjs.org/es-shim-unscopables/-/es-shim-unscopables-1.0.0.tgz" 509 | integrity sha512-Jm6GPcCdC30eMLbZ2x8z2WuRwAws3zTBBKuusffYVUrNj/GVSUAZ+xKMaUpfNDR5IbyNA5LJbaecoUVbmUcB1w== 510 | dependencies: 511 | has "^1.0.3" 512 | 513 | es-to-primitive@^1.2.1: 514 | version "1.2.1" 515 | resolved "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.1.tgz" 516 | integrity sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA== 517 | dependencies: 518 | is-callable "^1.1.4" 519 | is-date-object "^1.0.1" 520 | is-symbol "^1.0.2" 521 | 522 | escape-string-regexp@^4.0.0: 523 | version "4.0.0" 524 | resolved "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz" 525 | integrity sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA== 526 | 527 | eslint-config-airbnb-base@^15.0.0: 528 | version "15.0.0" 529 | resolved "https://registry.npmjs.org/eslint-config-airbnb-base/-/eslint-config-airbnb-base-15.0.0.tgz" 530 | integrity sha512-xaX3z4ZZIcFLvh2oUNvcX5oEofXda7giYmuplVxoOg5A7EXJMrUyqRgR+mhDhPK8LZ4PttFOBvCYDbX3sUoUig== 531 | dependencies: 532 | confusing-browser-globals "^1.0.10" 533 | object.assign "^4.1.2" 534 | object.entries "^1.1.5" 535 | semver "^6.3.0" 536 | 537 | eslint-import-resolver-node@^0.3.7: 538 | version "0.3.9" 539 | resolved "https://registry.npmjs.org/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.9.tgz" 540 | integrity sha512-WFj2isz22JahUv+B788TlO3N6zL3nNJGU8CcZbPZvVEkBPaJdCV4vy5wyghty5ROFbCRnm132v8BScu5/1BQ8g== 541 | dependencies: 542 | debug "^3.2.7" 543 | is-core-module "^2.13.0" 544 | resolve "^1.22.4" 545 | 546 | eslint-module-utils@^2.8.0: 547 | version "2.8.0" 548 | resolved "https://registry.npmjs.org/eslint-module-utils/-/eslint-module-utils-2.8.0.tgz" 549 | integrity sha512-aWajIYfsqCKRDgUfjEXNN/JlrzauMuSEy5sbd7WXbtW3EH6A6MpwEh42c7qD+MqQo9QMJ6fWLAeIJynx0g6OAw== 550 | dependencies: 551 | debug "^3.2.7" 552 | 553 | eslint-plugin-import@^2.25.2, eslint-plugin-import@^2.27.5: 554 | version "2.28.0" 555 | resolved "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.28.0.tgz" 556 | integrity sha512-B8s/n+ZluN7sxj9eUf7/pRFERX0r5bnFA2dCaLHy2ZeaQEAz0k+ZZkFWRFHJAqxfxQDx6KLv9LeIki7cFdwW+Q== 557 | dependencies: 558 | array-includes "^3.1.6" 559 | array.prototype.findlastindex "^1.2.2" 560 | array.prototype.flat "^1.3.1" 561 | array.prototype.flatmap "^1.3.1" 562 | debug "^3.2.7" 563 | doctrine "^2.1.0" 564 | eslint-import-resolver-node "^0.3.7" 565 | eslint-module-utils "^2.8.0" 566 | has "^1.0.3" 567 | is-core-module "^2.12.1" 568 | is-glob "^4.0.3" 569 | minimatch "^3.1.2" 570 | object.fromentries "^2.0.6" 571 | object.groupby "^1.0.0" 572 | object.values "^1.1.6" 573 | resolve "^1.22.3" 574 | semver "^6.3.1" 575 | tsconfig-paths "^3.14.2" 576 | 577 | eslint-scope@^7.2.2: 578 | version "7.2.2" 579 | resolved "https://registry.npmjs.org/eslint-scope/-/eslint-scope-7.2.2.tgz" 580 | integrity sha512-dOt21O7lTMhDM+X9mB4GX+DZrZtCUJPL/wlcTqxyrx5IvO0IYtILdtrQGQp+8n5S0gwSVmOf9NQrjMOgfQZlIg== 581 | dependencies: 582 | esrecurse "^4.3.0" 583 | estraverse "^5.2.0" 584 | 585 | eslint-visitor-keys@^3.3.0, eslint-visitor-keys@^3.4.1, eslint-visitor-keys@^3.4.2: 586 | version "3.4.2" 587 | resolved "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.2.tgz" 588 | integrity sha512-8drBzUEyZ2llkpCA67iYrgEssKDUu68V8ChqqOfFupIaG/LCVPUT+CoGJpT77zJprs4T/W7p07LP7zAIMuweVw== 589 | 590 | "eslint@^2 || ^3 || ^4 || ^5 || ^6 || ^7.2.0 || ^8", "eslint@^6.0.0 || ^7.0.0 || >=8.0.0", "eslint@^7.32.0 || ^8.2.0", eslint@^8.40.0: 591 | version "8.46.0" 592 | resolved "https://registry.npmjs.org/eslint/-/eslint-8.46.0.tgz" 593 | integrity sha512-cIO74PvbW0qU8e0mIvk5IV3ToWdCq5FYG6gWPHHkx6gNdjlbAYvtfHmlCMXxjcoVaIdwy/IAt3+mDkZkfvb2Dg== 594 | dependencies: 595 | "@eslint-community/eslint-utils" "^4.2.0" 596 | "@eslint-community/regexpp" "^4.6.1" 597 | "@eslint/eslintrc" "^2.1.1" 598 | "@eslint/js" "^8.46.0" 599 | "@humanwhocodes/config-array" "^0.11.10" 600 | "@humanwhocodes/module-importer" "^1.0.1" 601 | "@nodelib/fs.walk" "^1.2.8" 602 | ajv "^6.12.4" 603 | chalk "^4.0.0" 604 | cross-spawn "^7.0.2" 605 | debug "^4.3.2" 606 | doctrine "^3.0.0" 607 | escape-string-regexp "^4.0.0" 608 | eslint-scope "^7.2.2" 609 | eslint-visitor-keys "^3.4.2" 610 | espree "^9.6.1" 611 | esquery "^1.4.2" 612 | esutils "^2.0.2" 613 | fast-deep-equal "^3.1.3" 614 | file-entry-cache "^6.0.1" 615 | find-up "^5.0.0" 616 | glob-parent "^6.0.2" 617 | globals "^13.19.0" 618 | graphemer "^1.4.0" 619 | ignore "^5.2.0" 620 | imurmurhash "^0.1.4" 621 | is-glob "^4.0.0" 622 | is-path-inside "^3.0.3" 623 | js-yaml "^4.1.0" 624 | json-stable-stringify-without-jsonify "^1.0.1" 625 | levn "^0.4.1" 626 | lodash.merge "^4.6.2" 627 | minimatch "^3.1.2" 628 | natural-compare "^1.4.0" 629 | optionator "^0.9.3" 630 | strip-ansi "^6.0.1" 631 | text-table "^0.2.0" 632 | 633 | espree@^9.6.0, espree@^9.6.1: 634 | version "9.6.1" 635 | resolved "https://registry.npmjs.org/espree/-/espree-9.6.1.tgz" 636 | integrity sha512-oruZaFkjorTpF32kDSI5/75ViwGeZginGGy2NoOSg3Q9bnwlnmDm4HLnkl0RE3n+njDXR037aY1+x58Z/zFdwQ== 637 | dependencies: 638 | acorn "^8.9.0" 639 | acorn-jsx "^5.3.2" 640 | eslint-visitor-keys "^3.4.1" 641 | 642 | esquery@^1.4.2: 643 | version "1.5.0" 644 | resolved "https://registry.npmjs.org/esquery/-/esquery-1.5.0.tgz" 645 | integrity sha512-YQLXUplAwJgCydQ78IMJywZCceoqk1oH01OERdSAJc/7U2AylwjhSCLDEtqwg811idIS/9fIU5GjG73IgjKMVg== 646 | dependencies: 647 | estraverse "^5.1.0" 648 | 649 | esrecurse@^4.3.0: 650 | version "4.3.0" 651 | resolved "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz" 652 | integrity sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag== 653 | dependencies: 654 | estraverse "^5.2.0" 655 | 656 | estraverse@^5.1.0, estraverse@^5.2.0: 657 | version "5.3.0" 658 | resolved "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz" 659 | integrity sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA== 660 | 661 | esutils@^2.0.2: 662 | version "2.0.3" 663 | resolved "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz" 664 | integrity sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g== 665 | 666 | fast-deep-equal@^3.1.1, fast-deep-equal@^3.1.3: 667 | version "3.1.3" 668 | resolved "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz" 669 | integrity sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q== 670 | 671 | fast-json-stable-stringify@^2.0.0: 672 | version "2.1.0" 673 | resolved "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz" 674 | integrity sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw== 675 | 676 | fast-levenshtein@^2.0.6: 677 | version "2.0.6" 678 | resolved "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz" 679 | integrity sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw== 680 | 681 | fast-safe-stringify@^2.1.1: 682 | version "2.1.1" 683 | resolved "https://registry.npmjs.org/fast-safe-stringify/-/fast-safe-stringify-2.1.1.tgz" 684 | integrity sha512-W+KJc2dmILlPplD/H4K9l9LcAHAfPtP6BY84uVLXQ6Evcz9Lcg33Y2z1IVblT6xdY54PXYVHEv+0Wpq8Io6zkA== 685 | 686 | fastq@^1.6.0: 687 | version "1.15.0" 688 | resolved "https://registry.npmjs.org/fastq/-/fastq-1.15.0.tgz" 689 | integrity sha512-wBrocU2LCXXa+lWBt8RoIRD89Fi8OdABODa/kEnyeyjS5aZO5/GNvI5sEINADqP/h8M29UHTHUb53sUu5Ihqdw== 690 | dependencies: 691 | reusify "^1.0.4" 692 | 693 | file-entry-cache@^6.0.1: 694 | version "6.0.1" 695 | resolved "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-6.0.1.tgz" 696 | integrity sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg== 697 | dependencies: 698 | flat-cache "^3.0.4" 699 | 700 | find-up@^5.0.0: 701 | version "5.0.0" 702 | resolved "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz" 703 | integrity sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng== 704 | dependencies: 705 | locate-path "^6.0.0" 706 | path-exists "^4.0.0" 707 | 708 | flat-cache@^3.0.4: 709 | version "3.0.4" 710 | resolved "https://registry.npmjs.org/flat-cache/-/flat-cache-3.0.4.tgz" 711 | integrity sha512-dm9s5Pw7Jc0GvMYbshN6zchCA9RgQlzzEZX3vylR9IqFfS8XciblUXOKfW6SiuJ0e13eDYZoZV5wdrev7P3Nwg== 712 | dependencies: 713 | flatted "^3.1.0" 714 | rimraf "^3.0.2" 715 | 716 | flatted@^3.1.0, flatted@^3.2.7: 717 | version "3.2.7" 718 | resolved "https://registry.npmjs.org/flatted/-/flatted-3.2.7.tgz" 719 | integrity sha512-5nqDSxl8nn5BSNxyR3n4I6eDmbolI6WT+QqR547RwxQapgjQBmtktdP+HTBb/a/zLsbzERTONyUB5pefh5TtjQ== 720 | 721 | for-each@^0.3.3: 722 | version "0.3.3" 723 | resolved "https://registry.npmjs.org/for-each/-/for-each-0.3.3.tgz" 724 | integrity sha512-jqYfLp7mo9vIyQf8ykW2v7A+2N4QjeCeI5+Dz9XraiO1ign81wjiH7Fb9vSOWvQfNtmSa4H2RoQTrrXivdUZmw== 725 | dependencies: 726 | is-callable "^1.1.3" 727 | 728 | form-data@^4.0.0: 729 | version "4.0.0" 730 | resolved "https://registry.npmjs.org/form-data/-/form-data-4.0.0.tgz" 731 | integrity sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww== 732 | dependencies: 733 | asynckit "^0.4.0" 734 | combined-stream "^1.0.8" 735 | mime-types "^2.1.12" 736 | 737 | formidable@^2.0.1: 738 | version "2.0.1" 739 | resolved "https://registry.npmjs.org/formidable/-/formidable-2.0.1.tgz" 740 | integrity sha512-rjTMNbp2BpfQShhFbR3Ruk3qk2y9jKpvMW78nJgx8QKtxjDVrwbZG+wvDOmVbifHyOUOQJXxqEy6r0faRrPzTQ== 741 | dependencies: 742 | dezalgo "1.0.3" 743 | hexoid "1.0.0" 744 | once "1.4.0" 745 | qs "6.9.3" 746 | 747 | fs-extra@^8.1.0: 748 | version "8.1.0" 749 | resolved "https://registry.npmjs.org/fs-extra/-/fs-extra-8.1.0.tgz" 750 | integrity sha512-yhlQgA6mnOJUKOsRUFsgJdQCvkKhcz8tlZG5HBQfReYZy46OwLcY+Zia0mtdHsOo9y/hP+CxMN0TU9QxoOtG4g== 751 | dependencies: 752 | graceful-fs "^4.2.0" 753 | jsonfile "^4.0.0" 754 | universalify "^0.1.0" 755 | 756 | fs.realpath@^1.0.0: 757 | version "1.0.0" 758 | resolved "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz" 759 | integrity sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw== 760 | 761 | function-bind@^1.1.1: 762 | version "1.1.1" 763 | resolved "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz" 764 | integrity sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A== 765 | 766 | function.prototype.name@^1.1.5: 767 | version "1.1.5" 768 | resolved "https://registry.npmjs.org/function.prototype.name/-/function.prototype.name-1.1.5.tgz" 769 | integrity sha512-uN7m/BzVKQnCUF/iW8jYea67v++2u7m5UgENbHRtdDVclOUP+FMPlCNdmk0h/ysGyo2tavMJEDqJAkJdRa1vMA== 770 | dependencies: 771 | call-bind "^1.0.2" 772 | define-properties "^1.1.3" 773 | es-abstract "^1.19.0" 774 | functions-have-names "^1.2.2" 775 | 776 | functions-have-names@^1.2.2, functions-have-names@^1.2.3: 777 | version "1.2.3" 778 | resolved "https://registry.npmjs.org/functions-have-names/-/functions-have-names-1.2.3.tgz" 779 | integrity sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ== 780 | 781 | get-intrinsic@^1.0.2: 782 | version "1.1.1" 783 | resolved "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.1.1.tgz" 784 | integrity sha512-kWZrnVM42QCiEA2Ig1bG8zjoIMOgxWwYCEeNdwY6Tv/cOSeGpcoX4pXHfKUxNKVoArnrEr2e9srnAxxGIraS9Q== 785 | dependencies: 786 | function-bind "^1.1.1" 787 | has "^1.0.3" 788 | has-symbols "^1.0.1" 789 | 790 | get-intrinsic@^1.1.1, get-intrinsic@^1.1.3, get-intrinsic@^1.2.0, get-intrinsic@^1.2.1: 791 | version "1.2.1" 792 | resolved "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.2.1.tgz" 793 | integrity sha512-2DcsyfABl+gVHEfCOaTrWgyt+tb6MSEGmKq+kI5HwLbIYgjgmMcV8KQ41uaKz1xxUcn9tJtgFbQUEVcEbd0FYw== 794 | dependencies: 795 | function-bind "^1.1.1" 796 | has "^1.0.3" 797 | has-proto "^1.0.1" 798 | has-symbols "^1.0.3" 799 | 800 | get-stream@^5.1.0: 801 | version "5.2.0" 802 | resolved "https://registry.npmjs.org/get-stream/-/get-stream-5.2.0.tgz" 803 | integrity sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA== 804 | dependencies: 805 | pump "^3.0.0" 806 | 807 | get-symbol-description@^1.0.0: 808 | version "1.0.0" 809 | resolved "https://registry.npmjs.org/get-symbol-description/-/get-symbol-description-1.0.0.tgz" 810 | integrity sha512-2EmdH1YvIQiZpltCNgkuiUnyukzxM/R6NDJX31Ke3BG1Nq5b0S2PhX59UKi9vZpPDQVdqn+1IcaAwnzTT5vCjw== 811 | dependencies: 812 | call-bind "^1.0.2" 813 | get-intrinsic "^1.1.1" 814 | 815 | glob-parent@^6.0.2: 816 | version "6.0.2" 817 | resolved "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz" 818 | integrity sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A== 819 | dependencies: 820 | is-glob "^4.0.3" 821 | 822 | glob@^7.1.3: 823 | version "7.2.3" 824 | resolved "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz" 825 | integrity sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q== 826 | dependencies: 827 | fs.realpath "^1.0.0" 828 | inflight "^1.0.4" 829 | inherits "2" 830 | minimatch "^3.1.1" 831 | once "^1.3.0" 832 | path-is-absolute "^1.0.0" 833 | 834 | globals@^13.19.0: 835 | version "13.20.0" 836 | resolved "https://registry.npmjs.org/globals/-/globals-13.20.0.tgz" 837 | integrity sha512-Qg5QtVkCy/kv3FUSlu4ukeZDVf9ee0iXLAUYX13gbR17bnejFTzr4iS9bY7kwCf1NztRNm1t91fjOiyx4CSwPQ== 838 | dependencies: 839 | type-fest "^0.20.2" 840 | 841 | globalthis@^1.0.3: 842 | version "1.0.3" 843 | resolved "https://registry.npmjs.org/globalthis/-/globalthis-1.0.3.tgz" 844 | integrity sha512-sFdI5LyBiNTHjRd7cGPWapiHWMOXKyuBNX/cWJ3NfzrZQVa8GI/8cofCl74AOVqq9W5kNmguTIzJ/1s2gyI9wA== 845 | dependencies: 846 | define-properties "^1.1.3" 847 | 848 | gopd@^1.0.1: 849 | version "1.0.1" 850 | resolved "https://registry.npmjs.org/gopd/-/gopd-1.0.1.tgz" 851 | integrity sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA== 852 | dependencies: 853 | get-intrinsic "^1.1.3" 854 | 855 | got@11.8.2: 856 | version "11.8.2" 857 | resolved "https://registry.npmjs.org/got/-/got-11.8.2.tgz" 858 | integrity sha512-D0QywKgIe30ODs+fm8wMZiAcZjypcCodPNuMz5H9Mny7RJ+IjJ10BdmGW7OM7fHXP+O7r6ZwapQ/YQmMSvB0UQ== 859 | dependencies: 860 | "@sindresorhus/is" "^4.0.0" 861 | "@szmarczak/http-timer" "^4.0.5" 862 | "@types/cacheable-request" "^6.0.1" 863 | "@types/responselike" "^1.0.0" 864 | cacheable-lookup "^5.0.3" 865 | cacheable-request "^7.0.1" 866 | decompress-response "^6.0.0" 867 | http2-wrapper "^1.0.0-beta.5.2" 868 | lowercase-keys "^2.0.0" 869 | p-cancelable "^2.0.0" 870 | responselike "^2.0.0" 871 | 872 | graceful-fs@^4.1.6, graceful-fs@^4.2.0: 873 | version "4.2.11" 874 | resolved "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz" 875 | integrity sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ== 876 | 877 | graphemer@^1.4.0: 878 | version "1.4.0" 879 | resolved "https://registry.npmjs.org/graphemer/-/graphemer-1.4.0.tgz" 880 | integrity sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag== 881 | 882 | has-bigints@^1.0.1, has-bigints@^1.0.2: 883 | version "1.0.2" 884 | resolved "https://registry.npmjs.org/has-bigints/-/has-bigints-1.0.2.tgz" 885 | integrity sha512-tSvCKtBr9lkF0Ex0aQiP9N+OpV4zi2r/Nee5VkRDbaqv35RLYMzbwQfFSZZH0kR+Rd6302UJZ2p/bJCEoR3VoQ== 886 | 887 | has-flag@^4.0.0: 888 | version "4.0.0" 889 | resolved "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz" 890 | integrity sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ== 891 | 892 | has-property-descriptors@^1.0.0: 893 | version "1.0.0" 894 | resolved "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.0.tgz" 895 | integrity sha512-62DVLZGoiEBDHQyqG4w9xCuZ7eJEwNmJRWw2VY84Oedb7WFcA27fiEVe8oUQx9hAUJ4ekurquucTGwsyO1XGdQ== 896 | dependencies: 897 | get-intrinsic "^1.1.1" 898 | 899 | has-proto@^1.0.1: 900 | version "1.0.1" 901 | resolved "https://registry.npmjs.org/has-proto/-/has-proto-1.0.1.tgz" 902 | integrity sha512-7qE+iP+O+bgF9clE5+UoBFzE65mlBiVj3tKCrlNQ0Ogwm0BjpT/gK4SlLYDMybDh5I3TCTKnPPa0oMG7JDYrhg== 903 | 904 | has-symbols@^1.0.1, has-symbols@^1.0.2, has-symbols@^1.0.3: 905 | version "1.0.3" 906 | resolved "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.3.tgz" 907 | integrity sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A== 908 | 909 | has-tostringtag@^1.0.0: 910 | version "1.0.0" 911 | resolved "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.0.tgz" 912 | integrity sha512-kFjcSNhnlGV1kyoGk7OXKSawH5JOb/LzUc5w9B02hOTO0dfFRjbHQKvg1d6cf3HbeUmtU9VbbV3qzZ2Teh97WQ== 913 | dependencies: 914 | has-symbols "^1.0.2" 915 | 916 | has@^1.0.3: 917 | version "1.0.3" 918 | resolved "https://registry.npmjs.org/has/-/has-1.0.3.tgz" 919 | integrity sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw== 920 | dependencies: 921 | function-bind "^1.1.1" 922 | 923 | hexoid@1.0.0: 924 | version "1.0.0" 925 | resolved "https://registry.npmjs.org/hexoid/-/hexoid-1.0.0.tgz" 926 | integrity sha512-QFLV0taWQOZtvIRIAdBChesmogZrtuXvVWsFHZTk2SU+anspqZ2vMnoLg7IE1+Uk16N19APic1BuF8bC8c2m5g== 927 | 928 | http-cache-semantics@^4.0.0: 929 | version "4.1.1" 930 | resolved "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-4.1.1.tgz" 931 | integrity sha512-er295DKPVsV82j5kw1Gjt+ADA/XYHsajl82cGNQG2eyoPkvgUhX+nDIyelzhIWbbsXP39EHcI6l5tYs2FYqYXQ== 932 | 933 | http2-wrapper@^1.0.0-beta.5.2: 934 | version "1.0.3" 935 | resolved "https://registry.npmjs.org/http2-wrapper/-/http2-wrapper-1.0.3.tgz" 936 | integrity sha512-V+23sDMr12Wnz7iTcDeJr3O6AIxlnvT/bmaAAAP/Xda35C90p9599p0F1eHR/N1KILWSoWVAiOMFjBBXaXSMxg== 937 | dependencies: 938 | quick-lru "^5.1.1" 939 | resolve-alpn "^1.0.0" 940 | 941 | ignore@^5.2.0: 942 | version "5.2.4" 943 | resolved "https://registry.npmjs.org/ignore/-/ignore-5.2.4.tgz" 944 | integrity sha512-MAb38BcSbH0eHNBxn7ql2NH/kX33OkB3lZ1BNdh7ENeRChHTYsTvWrMubiIAMNS2llXEEgZ1MUOBtXChP3kaFQ== 945 | 946 | import-fresh@^3.2.1: 947 | version "3.3.0" 948 | resolved "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz" 949 | integrity sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw== 950 | dependencies: 951 | parent-module "^1.0.0" 952 | resolve-from "^4.0.0" 953 | 954 | imurmurhash@^0.1.4: 955 | version "0.1.4" 956 | resolved "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz" 957 | integrity sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA== 958 | 959 | inflight@^1.0.4: 960 | version "1.0.6" 961 | resolved "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz" 962 | integrity sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA== 963 | dependencies: 964 | once "^1.3.0" 965 | wrappy "1" 966 | 967 | inherits@^2.0.3, inherits@2: 968 | version "2.0.4" 969 | resolved "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz" 970 | integrity sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ== 971 | 972 | internal-slot@^1.0.5: 973 | version "1.0.5" 974 | resolved "https://registry.npmjs.org/internal-slot/-/internal-slot-1.0.5.tgz" 975 | integrity sha512-Y+R5hJrzs52QCG2laLn4udYVnxsfny9CpOhNhUvk/SSSVyF6T27FzRbF0sroPidSu3X8oEAkOn2K804mjpt6UQ== 976 | dependencies: 977 | get-intrinsic "^1.2.0" 978 | has "^1.0.3" 979 | side-channel "^1.0.4" 980 | 981 | is-array-buffer@^3.0.1, is-array-buffer@^3.0.2: 982 | version "3.0.2" 983 | resolved "https://registry.npmjs.org/is-array-buffer/-/is-array-buffer-3.0.2.tgz" 984 | integrity sha512-y+FyyR/w8vfIRq4eQcM1EYgSTnmHXPqaF+IgzgraytCFq5Xh8lllDVmAZolPJiZttZLeFSINPYMaEJ7/vWUa1w== 985 | dependencies: 986 | call-bind "^1.0.2" 987 | get-intrinsic "^1.2.0" 988 | is-typed-array "^1.1.10" 989 | 990 | is-bigint@^1.0.1: 991 | version "1.0.4" 992 | resolved "https://registry.npmjs.org/is-bigint/-/is-bigint-1.0.4.tgz" 993 | integrity sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg== 994 | dependencies: 995 | has-bigints "^1.0.1" 996 | 997 | is-boolean-object@^1.1.0: 998 | version "1.1.2" 999 | resolved "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.1.2.tgz" 1000 | integrity sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA== 1001 | dependencies: 1002 | call-bind "^1.0.2" 1003 | has-tostringtag "^1.0.0" 1004 | 1005 | is-callable@^1.1.3, is-callable@^1.1.4, is-callable@^1.2.7: 1006 | version "1.2.7" 1007 | resolved "https://registry.npmjs.org/is-callable/-/is-callable-1.2.7.tgz" 1008 | integrity sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA== 1009 | 1010 | is-core-module@^2.12.1, is-core-module@^2.13.0: 1011 | version "2.13.0" 1012 | resolved "https://registry.npmjs.org/is-core-module/-/is-core-module-2.13.0.tgz" 1013 | integrity sha512-Z7dk6Qo8pOCp3l4tsX2C5ZVas4V+UxwQodwZhLopL91TX8UyyHEXafPcyoeeWuLrwzHcr3igO78wNLwHJHsMCQ== 1014 | dependencies: 1015 | has "^1.0.3" 1016 | 1017 | is-date-object@^1.0.1: 1018 | version "1.0.5" 1019 | resolved "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.5.tgz" 1020 | integrity sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ== 1021 | dependencies: 1022 | has-tostringtag "^1.0.0" 1023 | 1024 | is-extglob@^2.1.1: 1025 | version "2.1.1" 1026 | resolved "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz" 1027 | integrity sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ== 1028 | 1029 | is-glob@^4.0.0, is-glob@^4.0.3: 1030 | version "4.0.3" 1031 | resolved "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz" 1032 | integrity sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg== 1033 | dependencies: 1034 | is-extglob "^2.1.1" 1035 | 1036 | is-negative-zero@^2.0.2: 1037 | version "2.0.2" 1038 | resolved "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.2.tgz" 1039 | integrity sha512-dqJvarLawXsFbNDeJW7zAz8ItJ9cd28YufuuFzh0G8pNHjJMnY08Dv7sYX2uF5UpQOwieAeOExEYAWWfu7ZZUA== 1040 | 1041 | is-number-object@^1.0.4: 1042 | version "1.0.7" 1043 | resolved "https://registry.npmjs.org/is-number-object/-/is-number-object-1.0.7.tgz" 1044 | integrity sha512-k1U0IRzLMo7ZlYIfzRu23Oh6MiIFasgpb9X76eqfFZAqwH44UI4KTBvBYIZ1dSL9ZzChTB9ShHfLkR4pdW5krQ== 1045 | dependencies: 1046 | has-tostringtag "^1.0.0" 1047 | 1048 | is-path-inside@^3.0.3: 1049 | version "3.0.3" 1050 | resolved "https://registry.npmjs.org/is-path-inside/-/is-path-inside-3.0.3.tgz" 1051 | integrity sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ== 1052 | 1053 | is-regex@^1.1.4: 1054 | version "1.1.4" 1055 | resolved "https://registry.npmjs.org/is-regex/-/is-regex-1.1.4.tgz" 1056 | integrity sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg== 1057 | dependencies: 1058 | call-bind "^1.0.2" 1059 | has-tostringtag "^1.0.0" 1060 | 1061 | is-shared-array-buffer@^1.0.2: 1062 | version "1.0.2" 1063 | resolved "https://registry.npmjs.org/is-shared-array-buffer/-/is-shared-array-buffer-1.0.2.tgz" 1064 | integrity sha512-sqN2UDu1/0y6uvXyStCOzyhAjCSlHceFoMKJW8W9EU9cvic/QdsZ0kEU93HEy3IUEFZIiH/3w+AH/UQbPHNdhA== 1065 | dependencies: 1066 | call-bind "^1.0.2" 1067 | 1068 | is-string@^1.0.5, is-string@^1.0.7: 1069 | version "1.0.7" 1070 | resolved "https://registry.npmjs.org/is-string/-/is-string-1.0.7.tgz" 1071 | integrity sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg== 1072 | dependencies: 1073 | has-tostringtag "^1.0.0" 1074 | 1075 | is-symbol@^1.0.2, is-symbol@^1.0.3: 1076 | version "1.0.4" 1077 | resolved "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.4.tgz" 1078 | integrity sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg== 1079 | dependencies: 1080 | has-symbols "^1.0.2" 1081 | 1082 | is-typed-array@^1.1.10, is-typed-array@^1.1.9: 1083 | version "1.1.12" 1084 | resolved "https://registry.npmjs.org/is-typed-array/-/is-typed-array-1.1.12.tgz" 1085 | integrity sha512-Z14TF2JNG8Lss5/HMqt0//T9JeHXttXy5pH/DBU4vi98ozO2btxzq9MwYDZYnKwU8nRsz/+GVFVRDq3DkVuSPg== 1086 | dependencies: 1087 | which-typed-array "^1.1.11" 1088 | 1089 | is-weakref@^1.0.2: 1090 | version "1.0.2" 1091 | resolved "https://registry.npmjs.org/is-weakref/-/is-weakref-1.0.2.tgz" 1092 | integrity sha512-qctsuLZmIQ0+vSSMfoVvyFe2+GSEvnmZ2ezTup1SBse9+twCCeial6EEi3Nc2KFcf6+qz2FBPnjXsk8xhKSaPQ== 1093 | dependencies: 1094 | call-bind "^1.0.2" 1095 | 1096 | isarray@^2.0.5: 1097 | version "2.0.5" 1098 | resolved "https://registry.npmjs.org/isarray/-/isarray-2.0.5.tgz" 1099 | integrity sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw== 1100 | 1101 | isexe@^2.0.0: 1102 | version "2.0.0" 1103 | resolved "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz" 1104 | integrity sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw== 1105 | 1106 | js-yaml@^4.1.0: 1107 | version "4.1.0" 1108 | resolved "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz" 1109 | integrity sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA== 1110 | dependencies: 1111 | argparse "^2.0.1" 1112 | 1113 | json-buffer@3.0.1: 1114 | version "3.0.1" 1115 | resolved "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.1.tgz" 1116 | integrity sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ== 1117 | 1118 | json-schema-traverse@^0.4.1: 1119 | version "0.4.1" 1120 | resolved "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz" 1121 | integrity sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg== 1122 | 1123 | json-stable-stringify-without-jsonify@^1.0.1: 1124 | version "1.0.1" 1125 | resolved "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz" 1126 | integrity sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw== 1127 | 1128 | json5@^1.0.2: 1129 | version "1.0.2" 1130 | resolved "https://registry.npmjs.org/json5/-/json5-1.0.2.tgz" 1131 | integrity sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA== 1132 | dependencies: 1133 | minimist "^1.2.0" 1134 | 1135 | jsonfile@^4.0.0: 1136 | version "4.0.0" 1137 | resolved "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz" 1138 | integrity sha512-m6F1R3z8jjlf2imQHS2Qez5sjKWQzbuuhuJ/FKYFRZvPE3PuHcSMVZzfsLhGVOkfd20obL5SWEBew5ShlquNxg== 1139 | optionalDependencies: 1140 | graceful-fs "^4.1.6" 1141 | 1142 | keyv@^4.0.0: 1143 | version "4.5.4" 1144 | resolved "https://registry.npmjs.org/keyv/-/keyv-4.5.4.tgz" 1145 | integrity sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw== 1146 | dependencies: 1147 | json-buffer "3.0.1" 1148 | 1149 | levn@^0.4.1: 1150 | version "0.4.1" 1151 | resolved "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz" 1152 | integrity sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ== 1153 | dependencies: 1154 | prelude-ls "^1.2.1" 1155 | type-check "~0.4.0" 1156 | 1157 | locate-path@^6.0.0: 1158 | version "6.0.0" 1159 | resolved "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz" 1160 | integrity sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw== 1161 | dependencies: 1162 | p-locate "^5.0.0" 1163 | 1164 | lodash.merge@^4.6.2: 1165 | version "4.6.2" 1166 | resolved "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz" 1167 | integrity sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ== 1168 | 1169 | log4js@^6.9.1: 1170 | version "6.9.1" 1171 | resolved "https://registry.npmjs.org/log4js/-/log4js-6.9.1.tgz" 1172 | integrity sha512-1somDdy9sChrr9/f4UlzhdaGfDR2c/SaD2a4T7qEkG4jTS57/B3qmnjLYePwQ8cqWnUHZI0iAKxMBpCZICiZ2g== 1173 | dependencies: 1174 | date-format "^4.0.14" 1175 | debug "^4.3.4" 1176 | flatted "^3.2.7" 1177 | rfdc "^1.3.0" 1178 | streamroller "^3.1.5" 1179 | 1180 | lowercase-keys@^2.0.0: 1181 | version "2.0.0" 1182 | resolved "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-2.0.0.tgz" 1183 | integrity sha512-tqNXrS78oMOE73NMxK4EMLQsQowWf8jKooH9g7xPavRT706R6bkQJ6DY2Te7QukaZsulxa30wQ7bk0pm4XiHmA== 1184 | 1185 | lru-cache@^6.0.0: 1186 | version "6.0.0" 1187 | resolved "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz" 1188 | integrity sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA== 1189 | dependencies: 1190 | yallist "^4.0.0" 1191 | 1192 | methods@^1.1.2: 1193 | version "1.1.2" 1194 | resolved "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz" 1195 | integrity sha1-VSmk1nZUE07cxSZmVoNbD4Ua/O4= 1196 | 1197 | mime-db@1.52.0: 1198 | version "1.52.0" 1199 | resolved "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz" 1200 | integrity sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg== 1201 | 1202 | mime-types@^2.1.12: 1203 | version "2.1.35" 1204 | resolved "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz" 1205 | integrity sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw== 1206 | dependencies: 1207 | mime-db "1.52.0" 1208 | 1209 | mime@^2.5.0: 1210 | version "2.6.0" 1211 | resolved "https://registry.npmjs.org/mime/-/mime-2.6.0.tgz" 1212 | integrity sha512-USPkMeET31rOMiarsBNIHZKLGgvKc/LrjofAnBlOttf5ajRvqiRA8QsenbcooctK6d6Ts6aqZXBA+XbkKthiQg== 1213 | 1214 | mimic-response@^1.0.0: 1215 | version "1.0.1" 1216 | resolved "https://registry.npmjs.org/mimic-response/-/mimic-response-1.0.1.tgz" 1217 | integrity sha512-j5EctnkH7amfV/q5Hgmoal1g2QHFJRraOtmx0JpIqkxhBhI/lJSl1nMpQ45hVarwNETOoWEimndZ4QK0RHxuxQ== 1218 | 1219 | mimic-response@^3.1.0: 1220 | version "3.1.0" 1221 | resolved "https://registry.npmjs.org/mimic-response/-/mimic-response-3.1.0.tgz" 1222 | integrity sha512-z0yWI+4FDrrweS8Zmt4Ej5HdJmky15+L2e6Wgn3+iK5fWzb6T3fhNFq2+MeTRb064c6Wr4N/wv0DzQTjNzHNGQ== 1223 | 1224 | minimatch@^3.0.5, minimatch@^3.1.1, minimatch@^3.1.2: 1225 | version "3.1.2" 1226 | resolved "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz" 1227 | integrity sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw== 1228 | dependencies: 1229 | brace-expansion "^1.1.7" 1230 | 1231 | minimist@^1.2.0, minimist@^1.2.6: 1232 | version "1.2.8" 1233 | resolved "https://registry.npmjs.org/minimist/-/minimist-1.2.8.tgz" 1234 | integrity sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA== 1235 | 1236 | ms@^2.1.1: 1237 | version "2.1.3" 1238 | resolved "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz" 1239 | integrity sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA== 1240 | 1241 | ms@2.1.2: 1242 | version "2.1.2" 1243 | resolved "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz" 1244 | integrity sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w== 1245 | 1246 | natural-compare@^1.4.0: 1247 | version "1.4.0" 1248 | resolved "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz" 1249 | integrity sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw== 1250 | 1251 | normalize-url@^6.0.1: 1252 | version "6.1.0" 1253 | resolved "https://registry.npmjs.org/normalize-url/-/normalize-url-6.1.0.tgz" 1254 | integrity sha512-DlL+XwOy3NxAQ8xuC0okPgK46iuVNAK01YN7RueYBqqFeGsBjV9XmCAzAdgt+667bCl5kPh9EqKKDwnaPG1I7A== 1255 | 1256 | object-inspect@^1.12.3: 1257 | version "1.12.3" 1258 | resolved "https://registry.npmjs.org/object-inspect/-/object-inspect-1.12.3.tgz" 1259 | integrity sha512-geUvdk7c+eizMNUDkRpW1wJwgfOiOeHbxBR/hLXK1aT6zmVSO0jsQcs7fj6MGw89jC/cjGfLcNOrtMYtGqm81g== 1260 | 1261 | object-inspect@^1.9.0: 1262 | version "1.12.0" 1263 | resolved "https://registry.npmjs.org/object-inspect/-/object-inspect-1.12.0.tgz" 1264 | integrity sha512-Ho2z80bVIvJloH+YzRmpZVQe87+qASmBUKZDWgx9cu+KDrX2ZDH/3tMy+gXbZETVGs2M8YdxObOh7XAtim9Y0g== 1265 | 1266 | object-keys@^1.1.1: 1267 | version "1.1.1" 1268 | resolved "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz" 1269 | integrity sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA== 1270 | 1271 | object.assign@^4.1.2, object.assign@^4.1.4: 1272 | version "4.1.4" 1273 | resolved "https://registry.npmjs.org/object.assign/-/object.assign-4.1.4.tgz" 1274 | integrity sha512-1mxKf0e58bvyjSCtKYY4sRe9itRk3PJpquJOjeIkz885CczcI4IvJJDLPS72oowuSh+pBxUFROpX+TU++hxhZQ== 1275 | dependencies: 1276 | call-bind "^1.0.2" 1277 | define-properties "^1.1.4" 1278 | has-symbols "^1.0.3" 1279 | object-keys "^1.1.1" 1280 | 1281 | object.entries@^1.1.5: 1282 | version "1.1.6" 1283 | resolved "https://registry.npmjs.org/object.entries/-/object.entries-1.1.6.tgz" 1284 | integrity sha512-leTPzo4Zvg3pmbQ3rDK69Rl8GQvIqMWubrkxONG9/ojtFE2rD9fjMKfSI5BxW3osRH1m6VdzmqK8oAY9aT4x5w== 1285 | dependencies: 1286 | call-bind "^1.0.2" 1287 | define-properties "^1.1.4" 1288 | es-abstract "^1.20.4" 1289 | 1290 | object.fromentries@^2.0.6: 1291 | version "2.0.6" 1292 | resolved "https://registry.npmjs.org/object.fromentries/-/object.fromentries-2.0.6.tgz" 1293 | integrity sha512-VciD13dswC4j1Xt5394WR4MzmAQmlgN72phd/riNp9vtD7tp4QQWJ0R4wvclXcafgcYK8veHRed2W6XeGBvcfg== 1294 | dependencies: 1295 | call-bind "^1.0.2" 1296 | define-properties "^1.1.4" 1297 | es-abstract "^1.20.4" 1298 | 1299 | object.groupby@^1.0.0: 1300 | version "1.0.0" 1301 | resolved "https://registry.npmjs.org/object.groupby/-/object.groupby-1.0.0.tgz" 1302 | integrity sha512-70MWG6NfRH9GnbZOikuhPPYzpUpof9iW2J9E4dW7FXTqPNb6rllE6u39SKwwiNh8lCwX3DDb5OgcKGiEBrTTyw== 1303 | dependencies: 1304 | call-bind "^1.0.2" 1305 | define-properties "^1.2.0" 1306 | es-abstract "^1.21.2" 1307 | get-intrinsic "^1.2.1" 1308 | 1309 | object.values@^1.1.6: 1310 | version "1.1.6" 1311 | resolved "https://registry.npmjs.org/object.values/-/object.values-1.1.6.tgz" 1312 | integrity sha512-FVVTkD1vENCsAcwNs9k6jea2uHC/X0+JcjG8YA60FN5CMaJmG95wT9jek/xX9nornqGRrBkKtzuAu2wuHpKqvw== 1313 | dependencies: 1314 | call-bind "^1.0.2" 1315 | define-properties "^1.1.4" 1316 | es-abstract "^1.20.4" 1317 | 1318 | once@^1.3.0, once@^1.3.1, once@^1.4.0, once@1.4.0: 1319 | version "1.4.0" 1320 | resolved "https://registry.npmjs.org/once/-/once-1.4.0.tgz" 1321 | integrity sha1-WDsap3WWHUsROsF9nFC6753Xa9E= 1322 | dependencies: 1323 | wrappy "1" 1324 | 1325 | optionator@^0.9.3: 1326 | version "0.9.3" 1327 | resolved "https://registry.npmjs.org/optionator/-/optionator-0.9.3.tgz" 1328 | integrity sha512-JjCoypp+jKn1ttEFExxhetCKeJt9zhAgAve5FXHixTvFDW/5aEktX9bufBKLRRMdU7bNtpLfcGu94B3cdEJgjg== 1329 | dependencies: 1330 | "@aashutoshrathi/word-wrap" "^1.2.3" 1331 | deep-is "^0.1.3" 1332 | fast-levenshtein "^2.0.6" 1333 | levn "^0.4.1" 1334 | prelude-ls "^1.2.1" 1335 | type-check "^0.4.0" 1336 | 1337 | p-cancelable@^2.0.0: 1338 | version "2.1.1" 1339 | resolved "https://registry.npmjs.org/p-cancelable/-/p-cancelable-2.1.1.tgz" 1340 | integrity sha512-BZOr3nRQHOntUjTrH8+Lh54smKHoHyur8We1V8DSMVrl5A2malOOwuJRnKRDjSnkoeBh4at6BwEnb5I7Jl31wg== 1341 | 1342 | p-limit@^3.0.2: 1343 | version "3.1.0" 1344 | resolved "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz" 1345 | integrity sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ== 1346 | dependencies: 1347 | yocto-queue "^0.1.0" 1348 | 1349 | p-locate@^5.0.0: 1350 | version "5.0.0" 1351 | resolved "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz" 1352 | integrity sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw== 1353 | dependencies: 1354 | p-limit "^3.0.2" 1355 | 1356 | parent-module@^1.0.0: 1357 | version "1.0.1" 1358 | resolved "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz" 1359 | integrity sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g== 1360 | dependencies: 1361 | callsites "^3.0.0" 1362 | 1363 | path-exists@^4.0.0: 1364 | version "4.0.0" 1365 | resolved "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz" 1366 | integrity sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w== 1367 | 1368 | path-is-absolute@^1.0.0: 1369 | version "1.0.1" 1370 | resolved "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz" 1371 | integrity sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg== 1372 | 1373 | path-key@^3.1.0: 1374 | version "3.1.1" 1375 | resolved "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz" 1376 | integrity sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q== 1377 | 1378 | path-parse@^1.0.7: 1379 | version "1.0.7" 1380 | resolved "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz" 1381 | integrity sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw== 1382 | 1383 | prelude-ls@^1.2.1: 1384 | version "1.2.1" 1385 | resolved "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz" 1386 | integrity sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g== 1387 | 1388 | pump@^3.0.0: 1389 | version "3.0.0" 1390 | resolved "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz" 1391 | integrity sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww== 1392 | dependencies: 1393 | end-of-stream "^1.1.0" 1394 | once "^1.3.1" 1395 | 1396 | punycode@^2.1.0: 1397 | version "2.1.1" 1398 | resolved "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz" 1399 | integrity sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A== 1400 | 1401 | qs@^6.10.3: 1402 | version "6.10.3" 1403 | resolved "https://registry.npmjs.org/qs/-/qs-6.10.3.tgz" 1404 | integrity sha512-wr7M2E0OFRfIfJZjKGieI8lBKb7fRCH4Fv5KNPEs7gJ8jadvotdsS08PzOKR7opXhZ/Xkjtt3WF9g38drmyRqQ== 1405 | dependencies: 1406 | side-channel "^1.0.4" 1407 | 1408 | qs@6.9.3: 1409 | version "6.9.3" 1410 | resolved "https://registry.npmjs.org/qs/-/qs-6.9.3.tgz" 1411 | integrity sha512-EbZYNarm6138UKKq46tdx08Yo/q9ZhFoAXAI1meAFd2GtbRDhbZY2WQSICskT0c5q99aFzLG1D4nvTk9tqfXIw== 1412 | 1413 | queue-microtask@^1.2.2: 1414 | version "1.2.3" 1415 | resolved "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz" 1416 | integrity sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A== 1417 | 1418 | quick-lru@^5.1.1: 1419 | version "5.1.1" 1420 | resolved "https://registry.npmjs.org/quick-lru/-/quick-lru-5.1.1.tgz" 1421 | integrity sha512-WuyALRjWPDGtt/wzJiadO5AXY+8hZ80hVpe6MyivgraREW751X3SbhRvG3eLKOYN+8VEvqLcf3wdnt44Z4S4SA== 1422 | 1423 | readable-stream@^3.6.0: 1424 | version "3.6.0" 1425 | resolved "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz" 1426 | integrity sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA== 1427 | dependencies: 1428 | inherits "^2.0.3" 1429 | string_decoder "^1.1.1" 1430 | util-deprecate "^1.0.1" 1431 | 1432 | regexp.prototype.flags@^1.5.0: 1433 | version "1.5.0" 1434 | resolved "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.5.0.tgz" 1435 | integrity sha512-0SutC3pNudRKgquxGoRGIz946MZVHqbNfPjBdxeOhBrdgDKlRoXmYLQN9xRbrR09ZXWeGAdPuif7egofn6v5LA== 1436 | dependencies: 1437 | call-bind "^1.0.2" 1438 | define-properties "^1.2.0" 1439 | functions-have-names "^1.2.3" 1440 | 1441 | resolve-alpn@^1.0.0: 1442 | version "1.2.1" 1443 | resolved "https://registry.npmjs.org/resolve-alpn/-/resolve-alpn-1.2.1.tgz" 1444 | integrity sha512-0a1F4l73/ZFZOakJnQ3FvkJ2+gSTQWz/r2KE5OdDY0TxPm5h4GkqkWWfM47T7HsbnOtcJVEF4epCVy6u7Q3K+g== 1445 | 1446 | resolve-from@^4.0.0: 1447 | version "4.0.0" 1448 | resolved "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz" 1449 | integrity sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g== 1450 | 1451 | resolve@^1.22.3, resolve@^1.22.4: 1452 | version "1.22.4" 1453 | resolved "https://registry.npmjs.org/resolve/-/resolve-1.22.4.tgz" 1454 | integrity sha512-PXNdCiPqDqeUou+w1C2eTQbNfxKSuMxqTCuvlmmMsk1NWHL5fRrhY6Pl0qEYYc6+QqGClco1Qj8XnjPego4wfg== 1455 | dependencies: 1456 | is-core-module "^2.13.0" 1457 | path-parse "^1.0.7" 1458 | supports-preserve-symlinks-flag "^1.0.0" 1459 | 1460 | responselike@^2.0.0: 1461 | version "2.0.1" 1462 | resolved "https://registry.npmjs.org/responselike/-/responselike-2.0.1.tgz" 1463 | integrity sha512-4gl03wn3hj1HP3yzgdI7d3lCkF95F21Pz4BPGvKHinyQzALR5CapwC8yIi0Rh58DEMQ/SguC03wFj2k0M/mHhw== 1464 | dependencies: 1465 | lowercase-keys "^2.0.0" 1466 | 1467 | reusify@^1.0.4: 1468 | version "1.0.4" 1469 | resolved "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz" 1470 | integrity sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw== 1471 | 1472 | rfdc@^1.3.0: 1473 | version "1.3.0" 1474 | resolved "https://registry.npmjs.org/rfdc/-/rfdc-1.3.0.tgz" 1475 | integrity sha512-V2hovdzFbOi77/WajaSMXk2OLm+xNIeQdMMuB7icj7bk6zi2F8GGAxigcnDFpJHbNyNcgyJDiP+8nOrY5cZGrA== 1476 | 1477 | rimraf@^3.0.2: 1478 | version "3.0.2" 1479 | resolved "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz" 1480 | integrity sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA== 1481 | dependencies: 1482 | glob "^7.1.3" 1483 | 1484 | run-parallel@^1.1.9: 1485 | version "1.2.0" 1486 | resolved "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz" 1487 | integrity sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA== 1488 | dependencies: 1489 | queue-microtask "^1.2.2" 1490 | 1491 | safe-array-concat@^1.0.0: 1492 | version "1.0.0" 1493 | resolved "https://registry.npmjs.org/safe-array-concat/-/safe-array-concat-1.0.0.tgz" 1494 | integrity sha512-9dVEFruWIsnie89yym+xWTAYASdpw3CJV7Li/6zBewGf9z2i1j31rP6jnY0pHEO4QZh6N0K11bFjWmdR8UGdPQ== 1495 | dependencies: 1496 | call-bind "^1.0.2" 1497 | get-intrinsic "^1.2.0" 1498 | has-symbols "^1.0.3" 1499 | isarray "^2.0.5" 1500 | 1501 | safe-buffer@~5.2.0: 1502 | version "5.2.1" 1503 | resolved "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz" 1504 | integrity sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ== 1505 | 1506 | safe-regex-test@^1.0.0: 1507 | version "1.0.0" 1508 | resolved "https://registry.npmjs.org/safe-regex-test/-/safe-regex-test-1.0.0.tgz" 1509 | integrity sha512-JBUUzyOgEwXQY1NuPtvcj/qcBDbDmEvWufhlnXZIm75DEHp+afM1r1ujJpJsV/gSM4t59tpDyPi1sd6ZaPFfsA== 1510 | dependencies: 1511 | call-bind "^1.0.2" 1512 | get-intrinsic "^1.1.3" 1513 | is-regex "^1.1.4" 1514 | 1515 | semver@^6.3.0, semver@^6.3.1: 1516 | version "6.3.1" 1517 | resolved "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz" 1518 | integrity sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA== 1519 | 1520 | semver@^7.3.7: 1521 | version "7.3.7" 1522 | resolved "https://registry.npmjs.org/semver/-/semver-7.3.7.tgz" 1523 | integrity sha512-QlYTucUYOews+WeEujDoEGziz4K6c47V/Bd+LjSSYcA94p+DmINdf7ncaUinThfvZyu13lN9OY1XDxt8C0Tw0g== 1524 | dependencies: 1525 | lru-cache "^6.0.0" 1526 | 1527 | shebang-command@^2.0.0: 1528 | version "2.0.0" 1529 | resolved "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz" 1530 | integrity sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA== 1531 | dependencies: 1532 | shebang-regex "^3.0.0" 1533 | 1534 | shebang-regex@^3.0.0: 1535 | version "3.0.0" 1536 | resolved "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz" 1537 | integrity sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A== 1538 | 1539 | side-channel@^1.0.4: 1540 | version "1.0.4" 1541 | resolved "https://registry.npmjs.org/side-channel/-/side-channel-1.0.4.tgz" 1542 | integrity sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw== 1543 | dependencies: 1544 | call-bind "^1.0.0" 1545 | get-intrinsic "^1.0.2" 1546 | object-inspect "^1.9.0" 1547 | 1548 | streamroller@^3.1.5: 1549 | version "3.1.5" 1550 | resolved "https://registry.npmjs.org/streamroller/-/streamroller-3.1.5.tgz" 1551 | integrity sha512-KFxaM7XT+irxvdqSP1LGLgNWbYN7ay5owZ3r/8t77p+EtSUAfUgtl7be3xtqtOmGUl9K9YPO2ca8133RlTjvKw== 1552 | dependencies: 1553 | date-format "^4.0.14" 1554 | debug "^4.3.4" 1555 | fs-extra "^8.1.0" 1556 | 1557 | string_decoder@^1.1.1: 1558 | version "1.3.0" 1559 | resolved "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz" 1560 | integrity sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA== 1561 | dependencies: 1562 | safe-buffer "~5.2.0" 1563 | 1564 | string.prototype.trim@^1.2.7: 1565 | version "1.2.7" 1566 | resolved "https://registry.npmjs.org/string.prototype.trim/-/string.prototype.trim-1.2.7.tgz" 1567 | integrity sha512-p6TmeT1T3411M8Cgg9wBTMRtY2q9+PNy9EV1i2lIXUN/btt763oIfxwN3RR8VU6wHX8j/1CFy0L+YuThm6bgOg== 1568 | dependencies: 1569 | call-bind "^1.0.2" 1570 | define-properties "^1.1.4" 1571 | es-abstract "^1.20.4" 1572 | 1573 | string.prototype.trimend@^1.0.6: 1574 | version "1.0.6" 1575 | resolved "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.6.tgz" 1576 | integrity sha512-JySq+4mrPf9EsDBEDYMOb/lM7XQLulwg5R/m1r0PXEFqrV0qHvl58sdTilSXtKOflCsK2E8jxf+GKC0T07RWwQ== 1577 | dependencies: 1578 | call-bind "^1.0.2" 1579 | define-properties "^1.1.4" 1580 | es-abstract "^1.20.4" 1581 | 1582 | string.prototype.trimstart@^1.0.6: 1583 | version "1.0.6" 1584 | resolved "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.6.tgz" 1585 | integrity sha512-omqjMDaY92pbn5HOX7f9IccLA+U1tA9GvtU4JrodiXFfYB7jPzzHpRzpglLAjtUV6bB557zwClJezTqnAiYnQA== 1586 | dependencies: 1587 | call-bind "^1.0.2" 1588 | define-properties "^1.1.4" 1589 | es-abstract "^1.20.4" 1590 | 1591 | strip-ansi@^6.0.1: 1592 | version "6.0.1" 1593 | resolved "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz" 1594 | integrity sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A== 1595 | dependencies: 1596 | ansi-regex "^5.0.1" 1597 | 1598 | strip-bom@^3.0.0: 1599 | version "3.0.0" 1600 | resolved "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz" 1601 | integrity sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA== 1602 | 1603 | strip-json-comments@^3.1.1: 1604 | version "3.1.1" 1605 | resolved "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz" 1606 | integrity sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig== 1607 | 1608 | superagent@^7.1.3: 1609 | version "7.1.3" 1610 | resolved "https://registry.npmjs.org/superagent/-/superagent-7.1.3.tgz" 1611 | integrity sha512-WA6et4nAvgBCS73lJvv1D0ssI5uk5Gh+TGN/kNe+B608EtcVs/yzfl+OLXTzDs7tOBDIpvgh/WUs1K2OK1zTeQ== 1612 | dependencies: 1613 | component-emitter "^1.3.0" 1614 | cookiejar "^2.1.3" 1615 | debug "^4.3.4" 1616 | fast-safe-stringify "^2.1.1" 1617 | form-data "^4.0.0" 1618 | formidable "^2.0.1" 1619 | methods "^1.1.2" 1620 | mime "^2.5.0" 1621 | qs "^6.10.3" 1622 | readable-stream "^3.6.0" 1623 | semver "^7.3.7" 1624 | 1625 | supports-color@^7.1.0: 1626 | version "7.2.0" 1627 | resolved "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz" 1628 | integrity sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw== 1629 | dependencies: 1630 | has-flag "^4.0.0" 1631 | 1632 | supports-preserve-symlinks-flag@^1.0.0: 1633 | version "1.0.0" 1634 | resolved "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz" 1635 | integrity sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w== 1636 | 1637 | text-table@^0.2.0: 1638 | version "0.2.0" 1639 | resolved "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz" 1640 | integrity sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw== 1641 | 1642 | tsconfig-paths@^3.14.2: 1643 | version "3.14.2" 1644 | resolved "https://registry.npmjs.org/tsconfig-paths/-/tsconfig-paths-3.14.2.tgz" 1645 | integrity sha512-o/9iXgCYc5L/JxCHPe3Hvh8Q/2xm5Z+p18PESBU6Ff33695QnCHBEjcytY2q19ua7Mbl/DavtBOLq+oG0RCL+g== 1646 | dependencies: 1647 | "@types/json5" "^0.0.29" 1648 | json5 "^1.0.2" 1649 | minimist "^1.2.6" 1650 | strip-bom "^3.0.0" 1651 | 1652 | type-check@^0.4.0, type-check@~0.4.0: 1653 | version "0.4.0" 1654 | resolved "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz" 1655 | integrity sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew== 1656 | dependencies: 1657 | prelude-ls "^1.2.1" 1658 | 1659 | type-fest@^0.20.2: 1660 | version "0.20.2" 1661 | resolved "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz" 1662 | integrity sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ== 1663 | 1664 | typed-array-buffer@^1.0.0: 1665 | version "1.0.0" 1666 | resolved "https://registry.npmjs.org/typed-array-buffer/-/typed-array-buffer-1.0.0.tgz" 1667 | integrity sha512-Y8KTSIglk9OZEr8zywiIHG/kmQ7KWyjseXs1CbSo8vC42w7hg2HgYTxSWwP0+is7bWDc1H+Fo026CpHFwm8tkw== 1668 | dependencies: 1669 | call-bind "^1.0.2" 1670 | get-intrinsic "^1.2.1" 1671 | is-typed-array "^1.1.10" 1672 | 1673 | typed-array-byte-length@^1.0.0: 1674 | version "1.0.0" 1675 | resolved "https://registry.npmjs.org/typed-array-byte-length/-/typed-array-byte-length-1.0.0.tgz" 1676 | integrity sha512-Or/+kvLxNpeQ9DtSydonMxCx+9ZXOswtwJn17SNLvhptaXYDJvkFFP5zbfU/uLmvnBJlI4yrnXRxpdWH/M5tNA== 1677 | dependencies: 1678 | call-bind "^1.0.2" 1679 | for-each "^0.3.3" 1680 | has-proto "^1.0.1" 1681 | is-typed-array "^1.1.10" 1682 | 1683 | typed-array-byte-offset@^1.0.0: 1684 | version "1.0.0" 1685 | resolved "https://registry.npmjs.org/typed-array-byte-offset/-/typed-array-byte-offset-1.0.0.tgz" 1686 | integrity sha512-RD97prjEt9EL8YgAgpOkf3O4IF9lhJFr9g0htQkm0rchFp/Vx7LW5Q8fSXXub7BXAODyUQohRMyOc3faCPd0hg== 1687 | dependencies: 1688 | available-typed-arrays "^1.0.5" 1689 | call-bind "^1.0.2" 1690 | for-each "^0.3.3" 1691 | has-proto "^1.0.1" 1692 | is-typed-array "^1.1.10" 1693 | 1694 | typed-array-length@^1.0.4: 1695 | version "1.0.4" 1696 | resolved "https://registry.npmjs.org/typed-array-length/-/typed-array-length-1.0.4.tgz" 1697 | integrity sha512-KjZypGq+I/H7HI5HlOoGHkWUUGq+Q0TPhQurLbyrVrvnKTBgzLhIJ7j6J/XTQOi0d1RjyZ0wdas8bKs2p0x3Ng== 1698 | dependencies: 1699 | call-bind "^1.0.2" 1700 | for-each "^0.3.3" 1701 | is-typed-array "^1.1.9" 1702 | 1703 | unbox-primitive@^1.0.2: 1704 | version "1.0.2" 1705 | resolved "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.0.2.tgz" 1706 | integrity sha512-61pPlCD9h51VoreyJ0BReideM3MDKMKnh6+V9L08331ipq6Q8OFXZYiqP6n/tbHx4s5I9uRhcye6BrbkizkBDw== 1707 | dependencies: 1708 | call-bind "^1.0.2" 1709 | has-bigints "^1.0.2" 1710 | has-symbols "^1.0.3" 1711 | which-boxed-primitive "^1.0.2" 1712 | 1713 | undici-types@~5.26.4: 1714 | version "5.26.5" 1715 | resolved "https://registry.npmjs.org/undici-types/-/undici-types-5.26.5.tgz" 1716 | integrity sha512-JlCMO+ehdEIKqlFxk6IfVoAUVmgz7cU7zD/h9XZ0qzeosSHmUJVOzSQvvYSYWXkFXC+IfLKSIffhv0sVZup6pA== 1717 | 1718 | universalify@^0.1.0: 1719 | version "0.1.2" 1720 | resolved "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz" 1721 | integrity sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg== 1722 | 1723 | uri-js@^4.2.2: 1724 | version "4.4.1" 1725 | resolved "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz" 1726 | integrity sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg== 1727 | dependencies: 1728 | punycode "^2.1.0" 1729 | 1730 | util-deprecate@^1.0.1: 1731 | version "1.0.2" 1732 | resolved "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz" 1733 | integrity sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8= 1734 | 1735 | which-boxed-primitive@^1.0.2: 1736 | version "1.0.2" 1737 | resolved "https://registry.npmjs.org/which-boxed-primitive/-/which-boxed-primitive-1.0.2.tgz" 1738 | integrity sha512-bwZdv0AKLpplFY2KZRX6TvyuN7ojjr7lwkg6ml0roIy9YeuSr7JS372qlNW18UQYzgYK9ziGcerWqZOmEn9VNg== 1739 | dependencies: 1740 | is-bigint "^1.0.1" 1741 | is-boolean-object "^1.1.0" 1742 | is-number-object "^1.0.4" 1743 | is-string "^1.0.5" 1744 | is-symbol "^1.0.3" 1745 | 1746 | which-typed-array@^1.1.10, which-typed-array@^1.1.11: 1747 | version "1.1.11" 1748 | resolved "https://registry.npmjs.org/which-typed-array/-/which-typed-array-1.1.11.tgz" 1749 | integrity sha512-qe9UWWpkeG5yzZ0tNYxDmd7vo58HDBc39mZ0xWWpolAGADdFOzkfamWLDxkOWcvHQKVmdTyQdLD4NOfjLWTKew== 1750 | dependencies: 1751 | available-typed-arrays "^1.0.5" 1752 | call-bind "^1.0.2" 1753 | for-each "^0.3.3" 1754 | gopd "^1.0.1" 1755 | has-tostringtag "^1.0.0" 1756 | 1757 | which@^2.0.1: 1758 | version "2.0.2" 1759 | resolved "https://registry.npmjs.org/which/-/which-2.0.2.tgz" 1760 | integrity sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA== 1761 | dependencies: 1762 | isexe "^2.0.0" 1763 | 1764 | wrappy@1: 1765 | version "1.0.2" 1766 | resolved "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz" 1767 | integrity sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8= 1768 | 1769 | yallist@^4.0.0: 1770 | version "4.0.0" 1771 | resolved "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz" 1772 | integrity sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A== 1773 | 1774 | yocto-queue@^0.1.0: 1775 | version "0.1.0" 1776 | resolved "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz" 1777 | integrity sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q== 1778 | --------------------------------------------------------------------------------