├── .eslintignore ├── .eslintrc.js ├── .gitignore ├── .mocharc.json ├── .prettierrc.js ├── LICENSE ├── README.md ├── bin ├── dev ├── dev.cmd ├── run └── run.cmd ├── docs ├── images │ ├── animation.gif │ ├── fin.webp │ ├── platform.openai.com_playground_mode=chat(Desktop@1280x800) (6).png │ ├── playground-01.png │ ├── prompt-step-01.png │ ├── prompt-step-02-01.png │ ├── prompt-step-02-02.png │ ├── prompt-step-03-01.png │ ├── prompt-step-03-02.png │ ├── prompt-step-04-01.png │ ├── prompt-step-05-01.png │ ├── prompt-step-05-02.png │ ├── prompt-step-06-01.png │ ├── prompt-step-07-01.png │ └── prompt-step-07-02.png └── index.md ├── package.json ├── pnpm-lock.yaml ├── prompt-template └── default.md ├── src ├── index.ts ├── open-ai │ └── index.ts ├── prompt │ ├── index.ts │ └── template.ts ├── translator │ └── index.ts ├── types │ ├── CommandLine.ts │ ├── PromptTemplate.ts │ └── index.ts └── ui │ └── index.ts └── tsconfig.json /.eslintignore: -------------------------------------------------------------------------------- 1 | /dist 2 | -------------------------------------------------------------------------------- /.eslintrc.js: -------------------------------------------------------------------------------- 1 | module.exports = { 2 | root: true, 3 | parser: '@typescript-eslint/parser', 4 | extends: ['plugin:@typescript-eslint/recommended', 'plugin:prettier/recommended'], 5 | rules: { 6 | '@typescript-eslint/consistent-type-imports': 'warn', 7 | '@typescript-eslint/no-empty-function': 'off', 8 | '@typescript-eslint/no-empty-interface': 'off', 9 | }, 10 | }; 11 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | *-debug.log 2 | *-error.log 3 | /.nyc_output 4 | /dist 5 | /lib 6 | /package-lock.json 7 | /tmp 8 | /yarn.lock 9 | node_modules 10 | oclif.manifest.json 11 | .env 12 | -------------------------------------------------------------------------------- /.mocharc.json: -------------------------------------------------------------------------------- 1 | { 2 | "require": [ 3 | "test/helpers/init.js", 4 | "ts-node/register" 5 | ], 6 | "watch-extensions": [ 7 | "ts" 8 | ], 9 | "recursive": true, 10 | "reporter": "spec", 11 | "timeout": 60000 12 | } 13 | -------------------------------------------------------------------------------- /.prettierrc.js: -------------------------------------------------------------------------------- 1 | module.exports = { 2 | endOfLine: 'lf', 3 | useTabs: false, 4 | printWidth: 120, 5 | tabWidth: 2, 6 | singleQuote: true, 7 | bracketSpacing: true, 8 | trailingComma: 'es5', 9 | semi: true, 10 | plugins: [require('@trivago/prettier-plugin-sort-imports')], 11 | importOrder: [ 12 | '', 13 | '^@/(.*)(? use ts-node and dev plugins 11 | process.env.NODE_ENV = 'development'; 12 | 13 | require('ts-node').register({ project }); 14 | 15 | // In dev mode, always show stack traces 16 | oclif.settings.debug = true; 17 | 18 | // Start the CLI 19 | oclif.run().then(oclif.flush).catch(oclif.Errors.handle); 20 | -------------------------------------------------------------------------------- /bin/dev.cmd: -------------------------------------------------------------------------------- 1 | @echo off 2 | 3 | node "%~dp0\dev" %* -------------------------------------------------------------------------------- /bin/run: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env node 2 | 3 | require('dotenv/config'); 4 | 5 | const oclif = require('@oclif/core'); 6 | 7 | oclif.run().then(require('@oclif/core/flush')).catch(require('@oclif/core/handle')); 8 | -------------------------------------------------------------------------------- /bin/run.cmd: -------------------------------------------------------------------------------- 1 | @echo off 2 | 3 | node "%~dp0\run" %* 4 | -------------------------------------------------------------------------------- /docs/images/animation.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MagicCube/cli-gpt/89734e6f40ef69dbe5b7ec25b68755f783d24e8b/docs/images/animation.gif -------------------------------------------------------------------------------- /docs/images/fin.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MagicCube/cli-gpt/89734e6f40ef69dbe5b7ec25b68755f783d24e8b/docs/images/fin.webp -------------------------------------------------------------------------------- /docs/images/platform.openai.com_playground_mode=chat(Desktop@1280x800) (6).png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MagicCube/cli-gpt/89734e6f40ef69dbe5b7ec25b68755f783d24e8b/docs/images/platform.openai.com_playground_mode=chat(Desktop@1280x800) (6).png -------------------------------------------------------------------------------- /docs/images/playground-01.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MagicCube/cli-gpt/89734e6f40ef69dbe5b7ec25b68755f783d24e8b/docs/images/playground-01.png -------------------------------------------------------------------------------- /docs/images/prompt-step-01.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MagicCube/cli-gpt/89734e6f40ef69dbe5b7ec25b68755f783d24e8b/docs/images/prompt-step-01.png -------------------------------------------------------------------------------- /docs/images/prompt-step-02-01.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MagicCube/cli-gpt/89734e6f40ef69dbe5b7ec25b68755f783d24e8b/docs/images/prompt-step-02-01.png -------------------------------------------------------------------------------- /docs/images/prompt-step-02-02.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MagicCube/cli-gpt/89734e6f40ef69dbe5b7ec25b68755f783d24e8b/docs/images/prompt-step-02-02.png -------------------------------------------------------------------------------- /docs/images/prompt-step-03-01.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MagicCube/cli-gpt/89734e6f40ef69dbe5b7ec25b68755f783d24e8b/docs/images/prompt-step-03-01.png -------------------------------------------------------------------------------- /docs/images/prompt-step-03-02.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MagicCube/cli-gpt/89734e6f40ef69dbe5b7ec25b68755f783d24e8b/docs/images/prompt-step-03-02.png -------------------------------------------------------------------------------- /docs/images/prompt-step-04-01.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MagicCube/cli-gpt/89734e6f40ef69dbe5b7ec25b68755f783d24e8b/docs/images/prompt-step-04-01.png -------------------------------------------------------------------------------- /docs/images/prompt-step-05-01.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MagicCube/cli-gpt/89734e6f40ef69dbe5b7ec25b68755f783d24e8b/docs/images/prompt-step-05-01.png -------------------------------------------------------------------------------- /docs/images/prompt-step-05-02.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MagicCube/cli-gpt/89734e6f40ef69dbe5b7ec25b68755f783d24e8b/docs/images/prompt-step-05-02.png -------------------------------------------------------------------------------- /docs/images/prompt-step-06-01.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MagicCube/cli-gpt/89734e6f40ef69dbe5b7ec25b68755f783d24e8b/docs/images/prompt-step-06-01.png -------------------------------------------------------------------------------- /docs/images/prompt-step-07-01.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MagicCube/cli-gpt/89734e6f40ef69dbe5b7ec25b68755f783d24e8b/docs/images/prompt-step-07-01.png -------------------------------------------------------------------------------- /docs/images/prompt-step-07-02.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MagicCube/cli-gpt/89734e6f40ef69dbe5b7ec25b68755f783d24e8b/docs/images/prompt-step-07-02.png -------------------------------------------------------------------------------- /docs/index.md: -------------------------------------------------------------------------------- 1 | # 用 ChatGPT 快速实现自然语言命令行 2 | 3 | > 阅读本文,几乎不需要任何算法基础,也无需高深的编程技能。 4 | 5 | ## 前言 6 | 7 | 2022 年 11月 ChatGPT 像一股风暴席卷全球。时隔数月,OpenAI 终于在 3 月 1 日正式推出了 ChatGPT 的开放 API。这意味着,我们通过简单的 API 调用,就可以与 ChatGPT 进行对话。可以预见的是像自来水一样使用 AI 的时代已经到来,我们可以随时随地使用它,而不需要关心算法实现细节。 8 | 9 | 值得注意的是在此之前,有大量的第三方平台号称调用的是 ChatGPT 的 API,实际多数为基于 GPT-3 的“自动补齐” API,其能力远不可与 ChatGPT 相媲美,而这一次提供的则是官方的基于聊天(Chat)消息的 API。 10 | 11 | 本文将通过一个简单的命令行翻译程序,来展示如何使用 ChatGPT API。 12 | 13 | 你以为 API 调用工程就是本文的全部内容吗?不,**更重要的是教会大家如何通过“Prompt Engineering”(即所谓“提示工程”学)将聊天型 AIGC 转换为特定领域的生产力**。 14 | 15 | 废话不多说,先上 DEMO 为敬: 16 | 17 | ![](images/animation.gif) 18 | 19 | 20 | ## 1. 准备工作 21 | 22 | 1. 首先,你必须确保你所在的网络环境可以正常访问 [OpenAI Platform](https://platform.openai.com),并且已经注册了 OpenAI 账号。 23 | 24 | 2. 在 https://platform.openai.com/account/api-keys 页面中,点击“Create new secret key”,并将它复制到剪贴板,稍后我们会使用到。 25 | 26 | 3. 请注意保管好你的秘钥,因为只有在创建时才会有唯一的机会看见完整的秘钥。 27 | 28 | 29 | ## 2. ChatGPT API 30 | 31 | 接下来让我们认识一下 ChatGPT API。通过阅读[官方说明](https://platform.openai.com/docs/guides/chat),我们可以得知几点: 32 | 33 | * 利用 API 我们可以做各种有意思的事情,包括但不限于聊天机器人、翻译、问答、故事生成、代码生成等等,通过 Prompt Engineering,它还可以被用于文本情感和分类器等场景。 34 | 35 | * 模型采用的是 gpt-3.5-turbo,它具有快速、便宜、灵活等特点,同时也是目前最接近线上 ChatGPT 体验的模型,据官方称其成本只有此前 text-davinci-003 模型的 1/10。 36 | 37 | * 我们使用到的 API 是 createChatCompletion,它的作用是根据一组聊天消息组成的提示,生成一条对应的回答。详细的 API 解释请参考[官方文档](https://platform.openai.com/docs/api-reference/completions/create)。 38 | 39 | * API 的调用方式是 POST,返回的是 JSON 格式的数据。你也可以通过 Event Stream 的方式实时逐步获取答案,这会带来更加接近 ChatGPT 的“打字出答案”体验。本例中,采用的是 Node.js 的[官方 SDK 封装](https://www.npmjs.com/package/openai),它封装了几乎所有 OpenAI 开放的服务方法,使用的 HTTP 客户端底层库是大家熟悉的 axios。 40 | 41 | * API 的调用次数是有限制的,并且是按照提示 + 回答中的总 token 数计算,超过后将会收费。有关 token 的说明请参考[这篇文档](https://platform.openai.com/docs/guides/chat/managing-tokens),具体收费标准请参考[官方费用说明](https://openai.com/pricing/)。 42 | 43 | 44 | 虽然 API 才上线几天时间,国内外已经有大量的开源项目基于它开发了各种有趣的应用,这里隆重推荐: 45 | * [ChatGPT 黑客马拉松项目列表](https://lablab.ai/tech/chatgpt) 46 | 47 | 48 | ## 3. Prompt Engineering 49 | 50 | 接下来,我们将进入本文的重点——Prompt Engineering。ChatGPT 是一个通用型聊天机器,它可以回答任何问题,但是它的回答并不是总是符合我们的预期。因此,我们需要通过 Prompt Engineering 来提示 AI 如何进行输出。 51 | 52 | 在 ChatGPT 中,提示是由一组聊天消息组成的,每个消息都是由一个特定角色说的话,这些角色包括: 53 | 54 | * user:用户角色,即我们自己。 55 | 56 | * assistant:助手角色,即 ChatGPT。 57 | 58 | * system: 系统角色,即 ChatGPT 的上下文,在这里我们可以描述它在当前会话中扮演的角色,并可以通过逻辑规则限定它的输出(包括格式等),这听起来是不是越来越像阿西莫夫机器人三定论?有异曲同工之妙。 59 | 60 | * 除此之外,你还可以通过 user 和 assistant 的多组对话示例,来描述系统的行为,类似教学案例。 61 | 62 | 为了更好的解释三者的关系以及如何进行 Prompt,我们将引入一个十分好用的官方工具——[Playground](https://platform.openai.com/playground?mode=chat)。 63 | 64 | ![](images/playground-01.png) 65 | 66 | 如上图所示,Playground 由三个部分组成: 67 | 68 | * 最左侧是最近 30 天每一次执行的 API 调用记录,我们可以通过点击其中的一条记录来查看对应的记录。如果你没有看见这个侧边栏,请点击最下方“Submit”按钮右侧的“History”按钮。点击侧边栏顶部的“...”,你会看到一个下拉菜单,可以将历史记录导出为 JSON 或 CSV 格式的文件进行下载。 69 | 70 | * 在历史记录侧边栏右侧的是 SYSTEM,在这里我们将填写系统扮演的角色、行为和限定规则等。 71 | 72 | * 在 SYSTEM 右边是会话列表,这里我们将添加一轮或多轮对话,机器回复的消息也会被现实在这个列表的尾部。你可以点击左侧的“+”号添加消息,也可以点击右侧的“-”号删除消息,点击消息的内容会进入编辑模式,而点击消息行头的角色名称将会切换为相反的角色(如点击“USER”会切换为“ASSISTANT”)。 73 | 74 | * 最右侧是模型参数,请保持 Mode 为 Chat,Engine 为 gpt-3.5-turbo,其他参数请保持默认,我们会在后文介绍。 75 | 76 | > 截止至本文发稿前,Playground 还处于 Beta 阶段,包括右上角的 View Code、Save 和 Share 等功能还未上线,但是它已足够满足我们的需求了。 77 | 78 | 在下文中为了更好的表示我们录入的提示和输出,我们将使用如下的记号文本: 79 | 80 | ```md 81 | # SYSTEM 82 | 在这里添加系统的行为和限定规则。 83 | 支持多行文本 84 | 85 | # USER 86 | 在这里添加用户的输入。 87 | 88 | # ASSISTANT 89 | 在这里添加机器的输出。 90 | ``` 91 | 92 | 回到本文示例,我们将实现一个简单的命令行翻译程序,它可以将人类的自然语言描述的指令翻译成对应的命令行。 93 | 94 | Prompt Engineering 很像是用自然语言编程,我们需要用到逻辑条件甚至是循环(通过停止条件 + 类似 GOTO 语句组合实现)。 95 | 96 | 97 | ### STEP 1:从零开始 98 | 99 | 让我们先从最基本的开始,首先我们需要为 ChatGPT 制定扮演的角色。 100 | 101 | ```md 102 | # SYSTEM 103 | 你是一个命令行翻译程序,你可以将人类自然语言描述的指令翻译成对应的命令行语句。 104 | 105 | # USER 106 | 列出所有 TS 文件 107 | ``` 108 | 109 | ![](images/prompt-step-01.png) 110 | 111 | 这时,我们可以看到 ChatGPT 已经给出了一个结果,但是存在一些问题: 112 | 113 | 1. 回答中有多余的介绍性语句,这是因为我们没有对 ChatGPT 的输出进行限定。 114 | 115 | 2. 每一次执行都会返回不同的结果,这是因为 ChatGPT 的 Temperature 参数默认是 0.7。如果你希望 ChatGPT 的回答更加自然或富有创造性,可以将其设置为 1;反之在命令行翻译器这个场景里,我们希望它具有更加理性、稳定的输出,因此我们将其设置为 0。 116 | 117 | 118 | ### STEP 2:添加第一个限定条件 119 | 120 | 根据第一步的经验,我们重新设计了 Prompt: 121 | 122 | ```md 123 | # SYSTEM 124 | 你是一个命令行翻译程序,你可以将人类自然语言描述的指令翻译成对应的命令行语句。 125 | 126 | 1. 你只需要将翻译好的指令直接输出,而不需要对其进行任何的解释。 127 | 128 | # USER 129 | 显示所有 MD 文件 130 | ``` 131 | 132 | ![](images/prompt-step-02-01.png) 133 | 134 | 这时,我们会发现,无论我们尝试 Submit 多少次,ChatGPT 都会返回相同的结果,并且不再会有注解说明。 135 | > 注意,Submit 前需要手工删除此前 ASSISTANT 输出的内容,否则 ChatGPT 会将其作为输入的一部分。 136 | 137 | 但是如果我们问机器一些与命令无关的问题时,他会出现下面的情况: 138 | ![](images/prompt-step-02-02.png) 139 | 140 | 因此,接下来我们需要告诉机器,如果用户输入的内容不是命令,需要如何回答,这相当于编程语言中的 `throw` 语句。 141 | 142 | 143 | ### STEP 3:抛出异常 144 | 145 | 这里我们使用“如果 / 或者 / 那么”等逻辑单元进行描述,我们修改一下 Prompt: 146 | 147 | ```md 148 | # SYSTEM 149 | 你是一个命令行翻译程序,你可以将人类自然语言描述的指令翻译成对应的命令行语句。 150 | 151 | 1. 你只需要将翻译好的指令直接输出,而不需要对其进行任何的解释。 152 | 153 | 2. 如果你不明白我说的话,或不确定如何将我所说的指令转换为计算机命令行,请直接输出 7 个字母,“UNKNOWN” ,无需其他解释。 154 | 155 | # USER 156 | 你的外婆是谁? 157 | ``` 158 | 159 | ![](images/prompt-step-03-01.png) 160 | 161 | 这样在当我们问起与命令无关的问题时,ChatGPT 就会直接输出 `UNKNOWN` 了。 162 | 163 | 现在让我们再来试一个复杂的命令: 164 | 165 | ![](images/prompt-step-03-02.png) 166 | 167 | 这里我们假设需要命令行翻译器永远只输出一个单行的命令,在下一步中我们将添加更多的限定。 168 | 169 | 170 | ### STEP 4:限定输出格式 171 | 172 | 在这一步中,我们继续添加规则,以进一步“限定”输出的格式,修改后的 Prompt 如下: 173 | 174 | ```md 175 | # SYSTEM 176 | 你是一个命令行翻译程序,你可以将人类自然语言描述的指令翻译成对应的命令行语句。 177 | 178 | 1. 你只需要将翻译好的指令直接输出,而不需要对其进行任何的解释。在输出的最前面加上“>”符号。 179 | 180 | 2. 如果你不明白我说的话,或不确定如何将我所说的指令转换为计算机命令行,请直接输出 7 个字母,“UNKNOWN” ,无需其他解释和“>”符号。 181 | 182 | 3. 如果翻译后的结果不止一行命令,则请务必将它们通过 & 或 && 合并为单行命令。 183 | ``` 184 | 185 | ![](images/prompt-step-04-01.png) 186 | 187 | 188 | ### STEP 5:危险提示 189 | 190 | 众所周知,一些命令对系统来说是十分危险的,比如著名的 `rm -rf /`,因此我们需要在命令行翻译器中添加一个“危险提示”功能,当用户输入的命令包含危险关键字时,需要提示用户是否继续执行。 191 | 192 | ```md 193 | # SYSTEM 194 | 你是一个命令行翻译程序,你可以将人类自然语言描述的指令翻译成对应的命令行语句。 195 | 196 | 1. 你只需要将翻译好的指令直接输出,而不需要对其进行任何的解释。在输出的最前面加上“>”符号。 197 | 198 | 2. 如果你不明白我说的话,或不确定如何将我所说的指令转换为计算机命令行,请直接输出 7 个字母,“UNKNOWN” ,无需其他解释和“>”符号。 199 | 200 | 3. 如果翻译后的结果不止一行命令,则请务必将它们通过 & 或 && 合并为单行命令。 201 | 202 | 4. 如果该命令会存在可能的风险或危害,请在输出的末尾另一行,并添加 “DANGEROUS”,无需其他的警告或提示。 203 | ``` 204 | 205 | ![](images/prompt-step-05-02.png) 206 | 207 | 这里我们会发现,无论如何修改 SYSTEM 的提示,ASSISTANT 的输出总是不尽人意,似乎它总是不能完全立理解我们的意图,要不就是一堆注意事项,要不就是不知道 DANGEROUS 应该放在哪里。这时,我们必须用到一个新技能这就是“榜样”。 208 | 209 | 210 | ### STEP 6: 榜样的作用 211 | 212 | 前文说过,ChatGPT 会将整个聊天记录作为输入,因此我们可以通过提供一些“榜样”来让 ChatGPT 更好地理解我们的意图。这意味着我们可以在界面上将 ASSISTANT 原先错误的回答修改为正确的,也就是给出了正确回答的“好榜样”。 213 | 214 | ![](images/prompt-step-06-01.png) 215 | 216 | ![](images/prompt-step-06-02.png) 217 | 218 | 如上图所示,经过修改后,ChatGPT 就能够正确理解我们的意图,输出正确格式的结果。 219 | 220 | 221 | ### STEP 7:翻译为英文 222 | 223 | 因为 ChatGPT 的训练数据以英文为主,如果你想达到最佳的效果,那么你需要将你的 Prompt 翻译为英文。这里我们当然可以使用 ChatGPT 充当翻译,翻译后的 Prompt 如下: 224 | 225 | ![](images/prompt-step-07-01.png) 226 | 227 | ```md 228 | # SYSTEM 229 | You are a command line translation program. You can translate natural language instructions from human language into corresponding command line statements. 230 | 231 | 1. Simply output the translated instruction without any explanation. Add the ">" symbol at the beginning of the output. 232 | 233 | 2. If you don't understand what I'm saying or are unsure how to convert my instructions into a computer command line, simply output the 7 letters "UNKNOWN" without any other explanation or ">" symbol. 234 | 235 | 3. If the translated result consists of more than one line of commands, please use '&' or '&&' to combine them into a single line of command. 236 | 237 | 4. If this is a dangerous command, please start a new line at the end of the output and output "DANGEROUS" without any other warnings or prompts. 238 | 239 | # USER 240 | 今天天气如何 241 | 242 | # ASSISTANT 243 | UNKNOWN 244 | 245 | # USER 246 | 从 Github 上克隆 React 库,并且在本地创建新的分支,取名为“feat-gpt” 247 | 248 | # ASSISTANT 249 | >git clone https://github.com/facebook/react.git && cd react && git checkout -b feat-gpt 250 | 251 | # USER 252 | 删除所有的文件或文件夹 253 | 254 | # ASSISTANT 255 | >rm -rf * 256 | DANGERS 257 | ``` 258 | 259 | ![](images/prompt-step-07-02.png) 260 | 261 | 现在 ChatGPT 最终通过了所有测试,我们可以进入到编码阶段了。 262 | 263 | 264 | ## 4. 实现一个简单的命令行客户端 265 | 266 | 相信这会儿你肯定已经摩拳擦掌了,那么让我们开始动手吧! 267 | 268 | 我们将使用到的技术栈是 Node.js + TypeScript + OpenAI SDK,尽管如此 Python 的程序员也可以参考本文自行基于[官方 SDK](https://github.com/openai/openai-python) 实现。 269 | 270 | 我们可以将整个项目的架构分为 4 个小模块,他们分别是: 271 | 272 | ### 4.1 API 的二次封装 273 | 274 | 将 OpenAI SDK 封装成一个更加易用的 API,输入为多个 Messages,输出则直接是纯文本结果(包含 UNKNOWN 及 DANGEROUS 也在结果内)。 275 | > 详见 https://github.com/MagicCube/cli-gpt/blob/main/src/open-ai/index.ts 276 | 277 | 278 | ### 4.2 Prompt 的生成器 279 | 280 | 在上文中,我们自创了一种 Prompt 的表达格式,用“:”加角色名称表示消息的发送者,并且支持多行文本,这非常适合描述多角色 Prompt。因此,我们首先需要一个 Prompt 模板加载器,它可以将模板文件加载为 Prompt 模板,然后再将本次用户从命令行真正输入的内容转换为最后一条 message,这就是 Prompt 生成器的作用。同时模板中可能还包含这一些可替换的变量,例如命令行可能根据操作系统的不同而有差异性,因此在模板中我们可以用 `${OS}` 表示制定的操作系统。 281 | > 详见 https://github.com/MagicCube/cli-gpt/blob/main/src/prompt/index.ts 和 https://github.com/MagicCube/cli-gpt/blob/main/src/prompt/template.ts 282 | > 模板详见 https://github.com/MagicCube/cli-gpt/blob/main/prompt-template/default.md 283 | 284 | 285 | ### 4.3 翻译器 286 | 287 | 翻译器是 Facade 层,它将上述两个模块的 API 组合起来,将用户的输入通过生成器转化为最终的 Prompt Messages,并且将其通过 API 客户端发送给 OpenAI,最后将结果返回。 288 | > 详见 https://github.com/MagicCube/cli-gpt/blob/main/src/translator/index.ts 289 | 290 | 291 | ### 4.4 CLI 展现层 292 | 293 | 本例中文通过 [oclif](https://github.com/oclif/oclif) 库来实现 CLI 界面,它提供了一个非常方便的 CLI 框架,我们只需要专注于 Command 业务逻辑的实现。oclif 还可以帮我们自动发布为全局命令,这样我们就可以在任何地方使用我们的命令行工具了。 294 | > 详见 https://github.com/MagicCube/cli-gpt/blob/main/src/ui/index.ts 295 | 296 | 此外,我们不希望将 OpenAI 的 Secret Key 提交到 Github 上。为此,你需要在项目的根目录下新建一个 `.env` 文件,内容如下: 297 | 298 | ```bash 299 | OPENAI_API_KEY="sk-your-secret-key" 300 | ``` 301 | 302 | 受限于篇幅,这里不再展开介绍每个模块的实现细节,代码都非常好理解,你可以通过点击对应的代码链接查看源码,也可以在 Github Issues 或文章下方留言。 303 | 304 | 305 | ## 5. 总结 306 | 307 | 通过本文,你可能会对 Prompt Engineering 有更深的理解,也许你会想到一些更有趣的 Prompt 应用场景,并且会发现即便不会写代码,你也可以通过 Prompt 来训练 ChatGPT,从而实现你的想法。 308 | 309 | 这里介绍一个非常有趣的 Prompt 仓库 [Awesome Prompt](https://github.com/f/awesome-chatgpt-prompts),里面收集了很多有趣的 Prompt,相信你一定可以在这里找寻到更多灵感。 310 | 311 | 另外,一个容易被混淆的概念是“Training”和“Prompt”。 312 | 313 | ## 后记 314 | 315 | 让笔者真正惊讶的是在撰写本文(Markdown)及编写代码示例时,使用的是 VSCode + Github Copilot,无论是中文博文还是源代码,Copilot 都贡献了至少 50% 的文本量。 316 | 317 | “人机协同”的时代真的已经到来了吗? 318 | 319 | ![](images/fin.webp) 320 | 321 | > “真的已经到”之后的文字为 Copilot 生成,但是笔者仍然保留了最后一句话的权利。 322 | 323 | > P.S. 好吧,连上面这句话都是 Copilot 生成的…… 324 | -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "magiccube-cli-gpt", 3 | "version": "0.2.0", 4 | "description": "Translate human language to command line using ChatGPT.", 5 | "author": "Henry Li ", 6 | "bin": { 7 | "cgpt": "./bin/run" 8 | }, 9 | "homepage": "https://github.com/MagicCube/cli-gpt", 10 | "license": "MIT", 11 | "main": "dist/index.js", 12 | "repository": "https://github.com/MagicCube/MagicCube/cli-gpt", 13 | "files": [ 14 | "/bin", 15 | "/dist", 16 | "/prompt-template", 17 | "/npm-shrinkwrap.json", 18 | "/oclif.manifest.json" 19 | ], 20 | "dependencies": { 21 | "@oclif/core": "^2", 22 | "@oclif/plugin-help": "^5", 23 | "dotenv": "^16.0.3", 24 | "openai": "^3.2.1" 25 | }, 26 | "devDependencies": { 27 | "@trivago/prettier-plugin-sort-imports": "^4.1.1", 28 | "@types/node": "^16.18.14", 29 | "@typescript-eslint/eslint-plugin": "^5.54.1", 30 | "@typescript-eslint/parser": "^5.54.1", 31 | "@vue/compiler-sfc": "^3.2.47", 32 | "eslint": "^7.32.0", 33 | "eslint-config-prettier": "^8.7.0", 34 | "eslint-plugin-prettier": "^4.2.1", 35 | "oclif": "^3", 36 | "prettier": "^2.8.4", 37 | "shx": "^0.3.3", 38 | "ts-node": "^10.9.1", 39 | "tslib": "^2.5.0", 40 | "typescript": "^4.9.5" 41 | }, 42 | "oclif": { 43 | "bin": "cgpt", 44 | "dirname": "cgpt", 45 | "commands": "./dist/ui", 46 | "default": ".", 47 | "plugins": [ 48 | "@oclif/plugin-help" 49 | ] 50 | }, 51 | "scripts": { 52 | "build": "shx rm -rf dist && tsc -b", 53 | "lint": "eslint . --ext .ts --config .eslintrc", 54 | "dev": "./bin/dev", 55 | "postpack": "shx rm -f oclif.manifest.json", 56 | "prepack": "yarn build && oclif manifest && oclif readme", 57 | "version": "oclif readme && git add README.md" 58 | }, 59 | "engines": { 60 | "node": ">=12.0.0" 61 | }, 62 | "bugs": "https://github.com/MagicCube/cli-gpt/issues", 63 | "keywords": [ 64 | "chatgpt", 65 | "command line", 66 | "gpt", 67 | "openai" 68 | ], 69 | "types": "dist/index.d.ts" 70 | } 71 | -------------------------------------------------------------------------------- /pnpm-lock.yaml: -------------------------------------------------------------------------------- 1 | lockfileVersion: 5.4 2 | 3 | specifiers: 4 | '@oclif/core': ^2 5 | '@oclif/plugin-help': ^5 6 | '@trivago/prettier-plugin-sort-imports': ^4.1.1 7 | '@types/node': ^16.18.14 8 | '@typescript-eslint/eslint-plugin': ^5.54.1 9 | '@typescript-eslint/parser': ^5.54.1 10 | '@vue/compiler-sfc': ^3.2.47 11 | dotenv: ^16.0.3 12 | eslint: ^7.32.0 13 | eslint-config-prettier: ^8.7.0 14 | eslint-plugin-prettier: ^4.2.1 15 | oclif: ^3 16 | openai: ^3.2.1 17 | prettier: ^2.8.4 18 | shx: ^0.3.3 19 | ts-node: ^10.9.1 20 | tslib: ^2.5.0 21 | typescript: ^4.9.5 22 | 23 | dependencies: 24 | '@oclif/core': 2.5.0 25 | '@oclif/plugin-help': 5.2.7 26 | dotenv: 16.0.3 27 | openai: 3.2.1 28 | 29 | devDependencies: 30 | '@trivago/prettier-plugin-sort-imports': 4.1.1_ht5m4fjxbv43inzcw5hdarafmm 31 | '@types/node': 16.18.14 32 | '@typescript-eslint/eslint-plugin': 5.54.1_2raik7ghbnj434s5izctn4kvma 33 | '@typescript-eslint/parser': 5.54.1_jofidmxrjzhj7l6vknpw5ecvfe 34 | '@vue/compiler-sfc': 3.2.47 35 | eslint: 7.32.0 36 | eslint-config-prettier: 8.7.0_eslint@7.32.0 37 | eslint-plugin-prettier: 4.2.1_uiswlpulcu4wppk3zxswnxg2xq 38 | oclif: 3.7.0 39 | prettier: 2.8.4 40 | shx: 0.3.4 41 | ts-node: 10.9.1_zix2iy4c4a7fivhrc3ey4gy2pu 42 | tslib: 2.5.0 43 | typescript: 4.9.5 44 | 45 | packages: 46 | 47 | /@babel/code-frame/7.12.11: 48 | resolution: {integrity: sha512-Zt1yodBx1UcyiePMSkWnU4hPqhwq7hGi2nFL1LeA3EUl+q2LQx16MISgJ0+z7dnmgvP9QtIleuETGOiOH1RcIw==} 49 | dependencies: 50 | '@babel/highlight': 7.18.6 51 | dev: true 52 | 53 | /@babel/code-frame/7.18.6: 54 | resolution: {integrity: sha512-TDCmlK5eOvH+eH7cdAFlNXeVJqWIQ7gW9tY1GJIpUtFb6CmjVyq2VM3u71bOyR8CRihcCgMUYoDNyLXao3+70Q==} 55 | engines: {node: '>=6.9.0'} 56 | dependencies: 57 | '@babel/highlight': 7.18.6 58 | dev: true 59 | 60 | /@babel/generator/7.17.7: 61 | resolution: {integrity: sha512-oLcVCTeIFadUoArDTwpluncplrYBmTCCZZgXCbgNGvOBBiSDDK3eWO4b/+eOTli5tKv1lg+a5/NAXg+nTcei1w==} 62 | engines: {node: '>=6.9.0'} 63 | dependencies: 64 | '@babel/types': 7.17.0 65 | jsesc: 2.5.2 66 | source-map: 0.5.7 67 | dev: true 68 | 69 | /@babel/helper-environment-visitor/7.18.9: 70 | resolution: {integrity: sha512-3r/aACDJ3fhQ/EVgFy0hpj8oHyHpQc+LPtJoY9SzTThAsStm4Ptegq92vqKoE3vD706ZVFWITnMnxucw+S9Ipg==} 71 | engines: {node: '>=6.9.0'} 72 | dev: true 73 | 74 | /@babel/helper-function-name/7.21.0: 75 | resolution: {integrity: sha512-HfK1aMRanKHpxemaY2gqBmL04iAPOPRj7DxtNbiDOrJK+gdwkiNRVpCpUJYbUT+aZyemKN8brqTOxzCaG6ExRg==} 76 | engines: {node: '>=6.9.0'} 77 | dependencies: 78 | '@babel/template': 7.20.7 79 | '@babel/types': 7.21.2 80 | dev: true 81 | 82 | /@babel/helper-hoist-variables/7.18.6: 83 | resolution: {integrity: sha512-UlJQPkFqFULIcyW5sbzgbkxn2FKRgwWiRexcuaR8RNJRy8+LLveqPjwZV/bwrLZCN0eUHD/x8D0heK1ozuoo6Q==} 84 | engines: {node: '>=6.9.0'} 85 | dependencies: 86 | '@babel/types': 7.21.2 87 | dev: true 88 | 89 | /@babel/helper-split-export-declaration/7.18.6: 90 | resolution: {integrity: sha512-bde1etTx6ZyTmobl9LLMMQsaizFVZrquTEHOqKeQESMKo4PlObf+8+JA25ZsIpZhT/WEd39+vOdLXAFG/nELpA==} 91 | engines: {node: '>=6.9.0'} 92 | dependencies: 93 | '@babel/types': 7.21.2 94 | dev: true 95 | 96 | /@babel/helper-string-parser/7.19.4: 97 | resolution: {integrity: sha512-nHtDoQcuqFmwYNYPz3Rah5ph2p8PFeFCsZk9A/48dPc/rGocJ5J3hAAZ7pb76VWX3fZKu+uEr/FhH5jLx7umrw==} 98 | engines: {node: '>=6.9.0'} 99 | dev: true 100 | 101 | /@babel/helper-validator-identifier/7.19.1: 102 | resolution: {integrity: sha512-awrNfaMtnHUr653GgGEs++LlAvW6w+DcPrOliSMXWCKo597CwL5Acf/wWdNkf/tfEQE3mjkeD1YOVZOUV/od1w==} 103 | engines: {node: '>=6.9.0'} 104 | dev: true 105 | 106 | /@babel/highlight/7.18.6: 107 | resolution: {integrity: sha512-u7stbOuYjaPezCuLj29hNW1v64M2Md2qupEKP1fHc7WdOA3DgLh37suiSrZYY7haUB7iBeQZ9P1uiRF359do3g==} 108 | engines: {node: '>=6.9.0'} 109 | dependencies: 110 | '@babel/helper-validator-identifier': 7.19.1 111 | chalk: 2.4.2 112 | js-tokens: 4.0.0 113 | dev: true 114 | 115 | /@babel/parser/7.21.2: 116 | resolution: {integrity: sha512-URpaIJQwEkEC2T9Kn+Ai6Xe/02iNaVCuT/PtoRz3GPVJVDpPd7mLo+VddTbhCRU9TXqW5mSrQfXZyi8kDKOVpQ==} 117 | engines: {node: '>=6.0.0'} 118 | hasBin: true 119 | dependencies: 120 | '@babel/types': 7.21.2 121 | dev: true 122 | 123 | /@babel/template/7.20.7: 124 | resolution: {integrity: sha512-8SegXApWe6VoNw0r9JHpSteLKTpTiLZ4rMlGIm9JQ18KiCtyQiAMEazujAHrUS5flrcqYZa75ukev3P6QmUwUw==} 125 | engines: {node: '>=6.9.0'} 126 | dependencies: 127 | '@babel/code-frame': 7.18.6 128 | '@babel/parser': 7.21.2 129 | '@babel/types': 7.21.2 130 | dev: true 131 | 132 | /@babel/traverse/7.17.3: 133 | resolution: {integrity: sha512-5irClVky7TxRWIRtxlh2WPUUOLhcPN06AGgaQSB8AEwuyEBgJVuJ5imdHm5zxk8w0QS5T+tDfnDxAlhWjpb7cw==} 134 | engines: {node: '>=6.9.0'} 135 | dependencies: 136 | '@babel/code-frame': 7.18.6 137 | '@babel/generator': 7.17.7 138 | '@babel/helper-environment-visitor': 7.18.9 139 | '@babel/helper-function-name': 7.21.0 140 | '@babel/helper-hoist-variables': 7.18.6 141 | '@babel/helper-split-export-declaration': 7.18.6 142 | '@babel/parser': 7.21.2 143 | '@babel/types': 7.17.0 144 | debug: 4.3.4 145 | globals: 11.12.0 146 | transitivePeerDependencies: 147 | - supports-color 148 | dev: true 149 | 150 | /@babel/types/7.17.0: 151 | resolution: {integrity: sha512-TmKSNO4D5rzhL5bjWFcVHHLETzfQ/AmbKpKPOSjlP0WoHZ6L911fgoOKY4Alp/emzG4cHJdyN49zpgkbXFEHHw==} 152 | engines: {node: '>=6.9.0'} 153 | dependencies: 154 | '@babel/helper-validator-identifier': 7.19.1 155 | to-fast-properties: 2.0.0 156 | dev: true 157 | 158 | /@babel/types/7.21.2: 159 | resolution: {integrity: sha512-3wRZSs7jiFaB8AjxiiD+VqN5DTG2iRvJGQ+qYFrs/654lg6kGTQWIOFjlBo5RaXuAZjBmP3+OQH4dmhqiiyYxw==} 160 | engines: {node: '>=6.9.0'} 161 | dependencies: 162 | '@babel/helper-string-parser': 7.19.4 163 | '@babel/helper-validator-identifier': 7.19.1 164 | to-fast-properties: 2.0.0 165 | dev: true 166 | 167 | /@cspotcode/source-map-support/0.8.1: 168 | resolution: {integrity: sha512-IchNf6dN4tHoMFIn/7OE8LWZ19Y6q/67Bmf6vnGREv8RSbBVb9LPJxEcnwrcwX6ixSvaiGoomAUvu4YSxXrVgw==} 169 | engines: {node: '>=12'} 170 | dependencies: 171 | '@jridgewell/trace-mapping': 0.3.9 172 | dev: true 173 | 174 | /@eslint/eslintrc/0.4.3: 175 | resolution: {integrity: sha512-J6KFFz5QCYUJq3pf0mjEcCJVERbzv71PUIDczuh9JkwGEzced6CO5ADLHB1rbf/+oPBtoPfMYNOpGDzCANlbXw==} 176 | engines: {node: ^10.12.0 || >=12.0.0} 177 | dependencies: 178 | ajv: 6.12.6 179 | debug: 4.3.4 180 | espree: 7.3.1 181 | globals: 13.20.0 182 | ignore: 4.0.6 183 | import-fresh: 3.3.0 184 | js-yaml: 3.14.1 185 | minimatch: 3.1.2 186 | strip-json-comments: 3.1.1 187 | transitivePeerDependencies: 188 | - supports-color 189 | dev: true 190 | 191 | /@gar/promisify/1.1.3: 192 | resolution: {integrity: sha512-k2Ty1JcVojjJFwrg/ThKi2ujJ7XNLYaFGNB/bWT9wGR+oSMJHMa5w+CUq6p/pVrKeNNgA7pCqEcjSnHVoqJQFw==} 193 | dev: true 194 | 195 | /@humanwhocodes/config-array/0.5.0: 196 | resolution: {integrity: sha512-FagtKFz74XrTl7y6HCzQpwDfXP0yhxe9lHLD1UZxjvZIcbyRz8zTFF/yYNfSfzU414eDwZ1SrO0Qvtyf+wFMQg==} 197 | engines: {node: '>=10.10.0'} 198 | dependencies: 199 | '@humanwhocodes/object-schema': 1.2.1 200 | debug: 4.3.4 201 | minimatch: 3.1.2 202 | transitivePeerDependencies: 203 | - supports-color 204 | dev: true 205 | 206 | /@humanwhocodes/object-schema/1.2.1: 207 | resolution: {integrity: sha512-ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA==} 208 | dev: true 209 | 210 | /@isaacs/string-locale-compare/1.1.0: 211 | resolution: {integrity: sha512-SQ7Kzhh9+D+ZW9MA0zkYv3VXhIDNx+LzM6EJ+/65I3QY+enU6Itte7E5XX7EWrqLW2FN4n06GWzBnPoC3th2aQ==} 212 | dev: true 213 | 214 | /@jridgewell/resolve-uri/3.1.0: 215 | resolution: {integrity: sha512-F2msla3tad+Mfht5cJq7LSXcdudKTWCVYUgw6pLFOOHSTtZlj6SWNYAp+AhuqLmWdBO2X5hPrLcu8cVP8fy28w==} 216 | engines: {node: '>=6.0.0'} 217 | dev: true 218 | 219 | /@jridgewell/sourcemap-codec/1.4.14: 220 | resolution: {integrity: sha512-XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw==} 221 | dev: true 222 | 223 | /@jridgewell/trace-mapping/0.3.9: 224 | resolution: {integrity: sha512-3Belt6tdc8bPgAtbcmdtNJlirVoTmEb5e2gC94PnkwEW9jI6CAHUeoG85tjWP5WquqfavoMtMwiG4P926ZKKuQ==} 225 | dependencies: 226 | '@jridgewell/resolve-uri': 3.1.0 227 | '@jridgewell/sourcemap-codec': 1.4.14 228 | dev: true 229 | 230 | /@nodelib/fs.scandir/2.1.5: 231 | resolution: {integrity: sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==} 232 | engines: {node: '>= 8'} 233 | dependencies: 234 | '@nodelib/fs.stat': 2.0.5 235 | run-parallel: 1.2.0 236 | 237 | /@nodelib/fs.stat/2.0.5: 238 | resolution: {integrity: sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==} 239 | engines: {node: '>= 8'} 240 | 241 | /@nodelib/fs.walk/1.2.8: 242 | resolution: {integrity: sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==} 243 | engines: {node: '>= 8'} 244 | dependencies: 245 | '@nodelib/fs.scandir': 2.1.5 246 | fastq: 1.15.0 247 | 248 | /@npmcli/arborist/4.3.1: 249 | resolution: {integrity: sha512-yMRgZVDpwWjplorzt9SFSaakWx6QIK248Nw4ZFgkrAy/GvJaFRaSZzE6nD7JBK5r8g/+PTxFq5Wj/sfciE7x+A==} 250 | engines: {node: ^12.13.0 || ^14.15.0 || >=16} 251 | hasBin: true 252 | dependencies: 253 | '@isaacs/string-locale-compare': 1.1.0 254 | '@npmcli/installed-package-contents': 1.0.7 255 | '@npmcli/map-workspaces': 2.0.4 256 | '@npmcli/metavuln-calculator': 2.0.0 257 | '@npmcli/move-file': 1.1.2 258 | '@npmcli/name-from-folder': 1.0.1 259 | '@npmcli/node-gyp': 1.0.3 260 | '@npmcli/package-json': 1.0.1 261 | '@npmcli/run-script': 2.0.0 262 | bin-links: 3.0.3 263 | cacache: 15.3.0 264 | common-ancestor-path: 1.0.1 265 | json-parse-even-better-errors: 2.3.1 266 | json-stringify-nice: 1.1.4 267 | mkdirp: 1.0.4 268 | mkdirp-infer-owner: 2.0.0 269 | npm-install-checks: 4.0.0 270 | npm-package-arg: 8.1.5 271 | npm-pick-manifest: 6.1.1 272 | npm-registry-fetch: 12.0.2 273 | pacote: 12.0.3 274 | parse-conflict-json: 2.0.2 275 | proc-log: 1.0.0 276 | promise-all-reject-late: 1.0.1 277 | promise-call-limit: 1.0.1 278 | read-package-json-fast: 2.0.3 279 | readdir-scoped-modules: 1.1.0 280 | rimraf: 3.0.2 281 | semver: 7.3.8 282 | ssri: 8.0.1 283 | treeverse: 1.0.4 284 | walk-up-path: 1.0.0 285 | transitivePeerDependencies: 286 | - bluebird 287 | - supports-color 288 | dev: true 289 | 290 | /@npmcli/fs/1.1.1: 291 | resolution: {integrity: sha512-8KG5RD0GVP4ydEzRn/I4BNDuxDtqVbOdm8675T49OIG/NGhaK0pjPX7ZcDlvKYbA+ulvVK3ztfcF4uBdOxuJbQ==} 292 | dependencies: 293 | '@gar/promisify': 1.1.3 294 | semver: 7.3.8 295 | dev: true 296 | 297 | /@npmcli/fs/2.1.2: 298 | resolution: {integrity: sha512-yOJKRvohFOaLqipNtwYB9WugyZKhC/DZC4VYPmpaCzDBrA8YpK3qHZ8/HGscMnE4GqbkLNuVcCnxkeQEdGt6LQ==} 299 | engines: {node: ^12.13.0 || ^14.15.0 || >=16.0.0} 300 | dependencies: 301 | '@gar/promisify': 1.1.3 302 | semver: 7.3.8 303 | dev: true 304 | 305 | /@npmcli/git/2.1.0: 306 | resolution: {integrity: sha512-/hBFX/QG1b+N7PZBFs0bi+evgRZcK9nWBxQKZkGoXUT5hJSwl5c4d7y8/hm+NQZRPhQ67RzFaj5UM9YeyKoryw==} 307 | dependencies: 308 | '@npmcli/promise-spawn': 1.3.2 309 | lru-cache: 6.0.0 310 | mkdirp: 1.0.4 311 | npm-pick-manifest: 6.1.1 312 | promise-inflight: 1.0.1 313 | promise-retry: 2.0.1 314 | semver: 7.3.8 315 | which: 2.0.2 316 | transitivePeerDependencies: 317 | - bluebird 318 | dev: true 319 | 320 | /@npmcli/installed-package-contents/1.0.7: 321 | resolution: {integrity: sha512-9rufe0wnJusCQoLpV9ZPKIVP55itrM5BxOXs10DmdbRfgWtHy1LDyskbwRnBghuB0PrF7pNPOqREVtpz4HqzKw==} 322 | engines: {node: '>= 10'} 323 | hasBin: true 324 | dependencies: 325 | npm-bundled: 1.1.2 326 | npm-normalize-package-bin: 1.0.1 327 | dev: true 328 | 329 | /@npmcli/map-workspaces/2.0.4: 330 | resolution: {integrity: sha512-bMo0aAfwhVwqoVM5UzX1DJnlvVvzDCHae821jv48L1EsrYwfOZChlqWYXEtto/+BkBXetPbEWgau++/brh4oVg==} 331 | engines: {node: ^12.13.0 || ^14.15.0 || >=16.0.0} 332 | dependencies: 333 | '@npmcli/name-from-folder': 1.0.1 334 | glob: 8.1.0 335 | minimatch: 5.1.6 336 | read-package-json-fast: 2.0.3 337 | dev: true 338 | 339 | /@npmcli/metavuln-calculator/2.0.0: 340 | resolution: {integrity: sha512-VVW+JhWCKRwCTE+0xvD6p3uV4WpqocNYYtzyvenqL/u1Q3Xx6fGTJ+6UoIoii07fbuEO9U3IIyuGY0CYHDv1sg==} 341 | engines: {node: ^12.13.0 || ^14.15.0 || >=16} 342 | dependencies: 343 | cacache: 15.3.0 344 | json-parse-even-better-errors: 2.3.1 345 | pacote: 12.0.3 346 | semver: 7.3.8 347 | transitivePeerDependencies: 348 | - bluebird 349 | - supports-color 350 | dev: true 351 | 352 | /@npmcli/move-file/1.1.2: 353 | resolution: {integrity: sha512-1SUf/Cg2GzGDyaf15aR9St9TWlb+XvbZXWpDx8YKs7MLzMH/BCeopv+y9vzrzgkfykCGuWOlSu3mZhj2+FQcrg==} 354 | engines: {node: '>=10'} 355 | deprecated: This functionality has been moved to @npmcli/fs 356 | dependencies: 357 | mkdirp: 1.0.4 358 | rimraf: 3.0.2 359 | dev: true 360 | 361 | /@npmcli/move-file/2.0.1: 362 | resolution: {integrity: sha512-mJd2Z5TjYWq/ttPLLGqArdtnC74J6bOzg4rMDnN+p1xTacZ2yPRCk2y0oSWQtygLR9YVQXgOcONrwtnk3JupxQ==} 363 | engines: {node: ^12.13.0 || ^14.15.0 || >=16.0.0} 364 | deprecated: This functionality has been moved to @npmcli/fs 365 | dependencies: 366 | mkdirp: 1.0.4 367 | rimraf: 3.0.2 368 | dev: true 369 | 370 | /@npmcli/name-from-folder/1.0.1: 371 | resolution: {integrity: sha512-qq3oEfcLFwNfEYOQ8HLimRGKlD8WSeGEdtUa7hmzpR8Sa7haL1KVQrvgO6wqMjhWFFVjgtrh1gIxDz+P8sjUaA==} 372 | dev: true 373 | 374 | /@npmcli/node-gyp/1.0.3: 375 | resolution: {integrity: sha512-fnkhw+fmX65kiLqk6E3BFLXNC26rUhK90zVwe2yncPliVT/Qos3xjhTLE59Df8KnPlcwIERXKVlU1bXoUQ+liA==} 376 | dev: true 377 | 378 | /@npmcli/package-json/1.0.1: 379 | resolution: {integrity: sha512-y6jnu76E9C23osz8gEMBayZmaZ69vFOIk8vR1FJL/wbEJ54+9aVG9rLTjQKSXfgYZEr50nw1txBBFfBZZe+bYg==} 380 | dependencies: 381 | json-parse-even-better-errors: 2.3.1 382 | dev: true 383 | 384 | /@npmcli/promise-spawn/1.3.2: 385 | resolution: {integrity: sha512-QyAGYo/Fbj4MXeGdJcFzZ+FkDkomfRBrPM+9QYJSg+PxgAUL+LU3FneQk37rKR2/zjqkCV1BLHccX98wRXG3Sg==} 386 | dependencies: 387 | infer-owner: 1.0.4 388 | dev: true 389 | 390 | /@npmcli/run-script/2.0.0: 391 | resolution: {integrity: sha512-fSan/Pu11xS/TdaTpTB0MRn9guwGU8dye+x56mEVgBEd/QsybBbYcAL0phPXi8SGWFEChkQd6M9qL4y6VOpFig==} 392 | dependencies: 393 | '@npmcli/node-gyp': 1.0.3 394 | '@npmcli/promise-spawn': 1.3.2 395 | node-gyp: 8.4.1 396 | read-package-json-fast: 2.0.3 397 | transitivePeerDependencies: 398 | - bluebird 399 | - supports-color 400 | dev: true 401 | 402 | /@oclif/color/1.0.4: 403 | resolution: {integrity: sha512-HEcVnSzpQkjskqWJyVN3tGgR0H0F8GrBmDjgQ1N0ZwwktYa4y9kfV07P/5vt5BjPXNyslXHc4KAO8Bt7gmErCA==} 404 | engines: {node: '>=12.0.0'} 405 | dependencies: 406 | ansi-styles: 4.3.0 407 | chalk: 4.1.2 408 | strip-ansi: 6.0.1 409 | supports-color: 8.1.1 410 | tslib: 2.5.0 411 | dev: true 412 | 413 | /@oclif/core/2.5.0: 414 | resolution: {integrity: sha512-gHDqrJ3orSm9eV+EacNnw1hlbBie3BAUAenWLWKa7TfJHyfseVhLGV8skkb8uA9MTRAAESJNxWAADh0gIbtZKg==} 415 | engines: {node: '>=14.0.0'} 416 | dependencies: 417 | '@types/cli-progress': 3.11.0 418 | ansi-escapes: 4.3.2 419 | ansi-styles: 4.3.0 420 | cardinal: 2.1.1 421 | chalk: 4.1.2 422 | clean-stack: 3.0.1 423 | cli-progress: 3.12.0 424 | debug: 4.3.4_supports-color@8.1.1 425 | ejs: 3.1.8 426 | fs-extra: 9.1.0 427 | get-package-type: 0.1.0 428 | globby: 11.1.0 429 | hyperlinker: 1.0.0 430 | indent-string: 4.0.0 431 | is-wsl: 2.2.0 432 | js-yaml: 3.14.1 433 | natural-orderby: 2.0.3 434 | object-treeify: 1.1.33 435 | password-prompt: 1.1.2 436 | semver: 7.3.8 437 | string-width: 4.2.3 438 | strip-ansi: 6.0.1 439 | supports-color: 8.1.1 440 | supports-hyperlinks: 2.3.0 441 | tslib: 2.5.0 442 | widest-line: 3.1.0 443 | wordwrap: 1.0.0 444 | wrap-ansi: 7.0.0 445 | 446 | /@oclif/plugin-help/5.2.7: 447 | resolution: {integrity: sha512-p6DJk0QMfzGvXGqrSZTQPitUGi68oGzr48tRKdrVxDDPMAELxHeXXFbkNRNdvjldPpTk44m0PbxV5tWhwurRwg==} 448 | engines: {node: '>=12.0.0'} 449 | dependencies: 450 | '@oclif/core': 2.5.0 451 | 452 | /@oclif/plugin-not-found/2.3.21: 453 | resolution: {integrity: sha512-6N0gTWQhl5nuE5bXipv5+8vH5cHyGgEd3MKJHQYxFnHIFwwb9jJnFl0BZ0fo7Jrjd9HZYCLT7rjnouS7p1Dl1w==} 454 | engines: {node: '>=12.0.0'} 455 | dependencies: 456 | '@oclif/color': 1.0.4 457 | '@oclif/core': 2.5.0 458 | fast-levenshtein: 3.0.0 459 | lodash: 4.17.21 460 | dev: true 461 | 462 | /@oclif/plugin-warn-if-update-available/2.0.30: 463 | resolution: {integrity: sha512-CjLuqT1Jcuv2GG6s0nYukSo66U7N0UUGAzVB4LeGiGQHOJkeLxTBErfsPAjBNOTGss/cC3VAkCHBlHKovB5S6A==} 464 | engines: {node: '>=12.0.0'} 465 | dependencies: 466 | '@oclif/core': 2.5.0 467 | chalk: 4.1.2 468 | debug: 4.3.4 469 | fs-extra: 9.1.0 470 | http-call: 5.3.0 471 | lodash: 4.17.21 472 | semver: 7.3.8 473 | transitivePeerDependencies: 474 | - supports-color 475 | dev: true 476 | 477 | /@octokit/auth-token/2.5.0: 478 | resolution: {integrity: sha512-r5FVUJCOLl19AxiuZD2VRZ/ORjp/4IN98Of6YJoJOkY75CIBuYfmiNHGrDwXr+aLGG55igl9QrxX3hbiXlLb+g==} 479 | dependencies: 480 | '@octokit/types': 6.41.0 481 | dev: true 482 | 483 | /@octokit/core/3.6.0: 484 | resolution: {integrity: sha512-7RKRKuA4xTjMhY+eG3jthb3hlZCsOwg3rztWh75Xc+ShDWOfDDATWbeZpAHBNRpm4Tv9WgBMOy1zEJYXG6NJ7Q==} 485 | dependencies: 486 | '@octokit/auth-token': 2.5.0 487 | '@octokit/graphql': 4.8.0 488 | '@octokit/request': 5.6.3 489 | '@octokit/request-error': 2.1.0 490 | '@octokit/types': 6.41.0 491 | before-after-hook: 2.2.3 492 | universal-user-agent: 6.0.0 493 | transitivePeerDependencies: 494 | - encoding 495 | dev: true 496 | 497 | /@octokit/endpoint/6.0.12: 498 | resolution: {integrity: sha512-lF3puPwkQWGfkMClXb4k/eUT/nZKQfxinRWJrdZaJO85Dqwo/G0yOC434Jr2ojwafWJMYqFGFa5ms4jJUgujdA==} 499 | dependencies: 500 | '@octokit/types': 6.41.0 501 | is-plain-object: 5.0.0 502 | universal-user-agent: 6.0.0 503 | dev: true 504 | 505 | /@octokit/graphql/4.8.0: 506 | resolution: {integrity: sha512-0gv+qLSBLKF0z8TKaSKTsS39scVKF9dbMxJpj3U0vC7wjNWFuIpL/z76Qe2fiuCbDRcJSavkXsVtMS6/dtQQsg==} 507 | dependencies: 508 | '@octokit/request': 5.6.3 509 | '@octokit/types': 6.41.0 510 | universal-user-agent: 6.0.0 511 | transitivePeerDependencies: 512 | - encoding 513 | dev: true 514 | 515 | /@octokit/openapi-types/12.11.0: 516 | resolution: {integrity: sha512-VsXyi8peyRq9PqIz/tpqiL2w3w80OgVMwBHltTml3LmVvXiphgeqmY9mvBw9Wu7e0QWk/fqD37ux8yP5uVekyQ==} 517 | dev: true 518 | 519 | /@octokit/plugin-paginate-rest/2.21.3_@octokit+core@3.6.0: 520 | resolution: {integrity: sha512-aCZTEf0y2h3OLbrgKkrfFdjRL6eSOo8komneVQJnYecAxIej7Bafor2xhuDJOIFau4pk0i/P28/XgtbyPF0ZHw==} 521 | peerDependencies: 522 | '@octokit/core': '>=2' 523 | dependencies: 524 | '@octokit/core': 3.6.0 525 | '@octokit/types': 6.41.0 526 | dev: true 527 | 528 | /@octokit/plugin-request-log/1.0.4_@octokit+core@3.6.0: 529 | resolution: {integrity: sha512-mLUsMkgP7K/cnFEw07kWqXGF5LKrOkD+lhCrKvPHXWDywAwuDUeDwWBpc69XK3pNX0uKiVt8g5z96PJ6z9xCFA==} 530 | peerDependencies: 531 | '@octokit/core': '>=3' 532 | dependencies: 533 | '@octokit/core': 3.6.0 534 | dev: true 535 | 536 | /@octokit/plugin-rest-endpoint-methods/5.16.2_@octokit+core@3.6.0: 537 | resolution: {integrity: sha512-8QFz29Fg5jDuTPXVtey05BLm7OB+M8fnvE64RNegzX7U+5NUXcOcnpTIK0YfSHBg8gYd0oxIq3IZTe9SfPZiRw==} 538 | peerDependencies: 539 | '@octokit/core': '>=3' 540 | dependencies: 541 | '@octokit/core': 3.6.0 542 | '@octokit/types': 6.41.0 543 | deprecation: 2.3.1 544 | dev: true 545 | 546 | /@octokit/request-error/2.1.0: 547 | resolution: {integrity: sha512-1VIvgXxs9WHSjicsRwq8PlR2LR2x6DwsJAaFgzdi0JfJoGSO8mYI/cHJQ+9FbN21aa+DrgNLnwObmyeSC8Rmpg==} 548 | dependencies: 549 | '@octokit/types': 6.41.0 550 | deprecation: 2.3.1 551 | once: 1.4.0 552 | dev: true 553 | 554 | /@octokit/request/5.6.3: 555 | resolution: {integrity: sha512-bFJl0I1KVc9jYTe9tdGGpAMPy32dLBXXo1dS/YwSCTL/2nd9XeHsY616RE3HPXDVk+a+dBuzyz5YdlXwcDTr2A==} 556 | dependencies: 557 | '@octokit/endpoint': 6.0.12 558 | '@octokit/request-error': 2.1.0 559 | '@octokit/types': 6.41.0 560 | is-plain-object: 5.0.0 561 | node-fetch: 2.6.9 562 | universal-user-agent: 6.0.0 563 | transitivePeerDependencies: 564 | - encoding 565 | dev: true 566 | 567 | /@octokit/rest/18.12.0: 568 | resolution: {integrity: sha512-gDPiOHlyGavxr72y0guQEhLsemgVjwRePayJ+FcKc2SJqKUbxbkvf5kAZEWA/MKvsfYlQAMVzNJE3ezQcxMJ2Q==} 569 | dependencies: 570 | '@octokit/core': 3.6.0 571 | '@octokit/plugin-paginate-rest': 2.21.3_@octokit+core@3.6.0 572 | '@octokit/plugin-request-log': 1.0.4_@octokit+core@3.6.0 573 | '@octokit/plugin-rest-endpoint-methods': 5.16.2_@octokit+core@3.6.0 574 | transitivePeerDependencies: 575 | - encoding 576 | dev: true 577 | 578 | /@octokit/types/6.41.0: 579 | resolution: {integrity: sha512-eJ2jbzjdijiL3B4PrSQaSjuF2sPEQPVCPzBvTHJD9Nz+9dw2SGH4K4xeQJ77YfTq5bRQ+bD8wT11JbeDPmxmGg==} 580 | dependencies: 581 | '@octokit/openapi-types': 12.11.0 582 | dev: true 583 | 584 | /@sindresorhus/is/4.6.0: 585 | resolution: {integrity: sha512-t09vSN3MdfsyCHoFcTRCH/iUtG7OJ0CsjzB8cjAmKc/va/kIgeDI/TxsigdncE/4be734m0cvIYwNaV4i2XqAw==} 586 | engines: {node: '>=10'} 587 | dev: true 588 | 589 | /@szmarczak/http-timer/4.0.6: 590 | resolution: {integrity: sha512-4BAffykYOgO+5nzBWYwE3W90sBgLJoUPRWWcL8wlyiM8IB8ipJz3UMJ9KXQd1RKQXpKp8Tutn80HZtWsu2u76w==} 591 | engines: {node: '>=10'} 592 | dependencies: 593 | defer-to-connect: 2.0.1 594 | dev: true 595 | 596 | /@tootallnate/once/1.1.2: 597 | resolution: {integrity: sha512-RbzJvlNzmRq5c3O09UipeuXno4tA1FE6ikOjxZK0tuxVv3412l64l5t1W5pj4+rJq9vpkm/kwiR07aZXnsKPxw==} 598 | engines: {node: '>= 6'} 599 | dev: true 600 | 601 | /@tootallnate/once/2.0.0: 602 | resolution: {integrity: sha512-XCuKFP5PS55gnMVu3dty8KPatLqUoy/ZYzDzAGCQ8JNFCkLXzmI7vNHCR+XpbZaMWQK/vQubr7PkYq8g470J/A==} 603 | engines: {node: '>= 10'} 604 | dev: true 605 | 606 | /@trivago/prettier-plugin-sort-imports/4.1.1_ht5m4fjxbv43inzcw5hdarafmm: 607 | resolution: {integrity: sha512-dQ2r2uzNr1x6pJsuh/8x0IRA3CBUB+pWEW3J/7N98axqt7SQSm+2fy0FLNXvXGg77xEDC7KHxJlHfLYyi7PDcw==} 608 | peerDependencies: 609 | '@vue/compiler-sfc': 3.x 610 | prettier: 2.x 611 | peerDependenciesMeta: 612 | '@vue/compiler-sfc': 613 | optional: true 614 | dependencies: 615 | '@babel/generator': 7.17.7 616 | '@babel/parser': 7.21.2 617 | '@babel/traverse': 7.17.3 618 | '@babel/types': 7.17.0 619 | '@vue/compiler-sfc': 3.2.47 620 | javascript-natural-sort: 0.7.1 621 | lodash: 4.17.21 622 | prettier: 2.8.4 623 | transitivePeerDependencies: 624 | - supports-color 625 | dev: true 626 | 627 | /@tsconfig/node10/1.0.9: 628 | resolution: {integrity: sha512-jNsYVVxU8v5g43Erja32laIDHXeoNvFEpX33OK4d6hljo3jDhCBDhx5dhCCTMWUojscpAagGiRkBKxpdl9fxqA==} 629 | dev: true 630 | 631 | /@tsconfig/node12/1.0.11: 632 | resolution: {integrity: sha512-cqefuRsh12pWyGsIoBKJA9luFu3mRxCA+ORZvA4ktLSzIuCUtWVxGIuXigEwO5/ywWFMZ2QEGKWvkZG1zDMTag==} 633 | dev: true 634 | 635 | /@tsconfig/node14/1.0.3: 636 | resolution: {integrity: sha512-ysT8mhdixWK6Hw3i1V2AeRqZ5WfXg1G43mqoYlM2nc6388Fq5jcXyr5mRsqViLx/GJYdoL0bfXD8nmF+Zn/Iow==} 637 | dev: true 638 | 639 | /@tsconfig/node16/1.0.3: 640 | resolution: {integrity: sha512-yOlFc+7UtL/89t2ZhjPvvB/DeAr3r+Dq58IgzsFkOAvVC6NMJXmCGjbptdXdR9qsX7pKcTL+s87FtYREi2dEEQ==} 641 | dev: true 642 | 643 | /@types/cacheable-request/6.0.3: 644 | resolution: {integrity: sha512-IQ3EbTzGxIigb1I3qPZc1rWJnH0BmSKv5QYTalEwweFvyBDLSAe24zP0le/hyi7ecGfZVlIVAg4BZqb8WBwKqw==} 645 | dependencies: 646 | '@types/http-cache-semantics': 4.0.1 647 | '@types/keyv': 3.1.4 648 | '@types/node': 16.18.14 649 | '@types/responselike': 1.0.0 650 | dev: true 651 | 652 | /@types/cli-progress/3.11.0: 653 | resolution: {integrity: sha512-XhXhBv1R/q2ahF3BM7qT5HLzJNlIL0wbcGyZVjqOTqAybAnsLisd7gy1UCyIqpL+5Iv6XhlSyzjLCnI2sIdbCg==} 654 | dependencies: 655 | '@types/node': 16.18.14 656 | 657 | /@types/expect/1.20.4: 658 | resolution: {integrity: sha512-Q5Vn3yjTDyCMV50TB6VRIbQNxSE4OmZR86VSbGaNpfUolm0iePBB4KdEEHmxoY5sT2+2DIvXW0rvMDP2nHZ4Mg==} 659 | dev: true 660 | 661 | /@types/http-cache-semantics/4.0.1: 662 | resolution: {integrity: sha512-SZs7ekbP8CN0txVG2xVRH6EgKmEm31BOxA07vkFaETzZz1xh+cbt8BcI0slpymvwhx5dlFnQG2rTlPVQn+iRPQ==} 663 | dev: true 664 | 665 | /@types/json-schema/7.0.11: 666 | resolution: {integrity: sha512-wOuvG1SN4Us4rez+tylwwwCV1psiNVOkJeM3AUWUNWg/jDQY2+HE/444y5gc+jBmRqASOm2Oeh5c1axHobwRKQ==} 667 | dev: true 668 | 669 | /@types/keyv/3.1.4: 670 | resolution: {integrity: sha512-BQ5aZNSCpj7D6K2ksrRCTmKRLEpnPvWDiLPfoGyhZ++8YtiK9d/3DBKPJgry359X/P1PfruyYwvnvwFjuEiEIg==} 671 | dependencies: 672 | '@types/node': 16.18.14 673 | dev: true 674 | 675 | /@types/minimatch/3.0.5: 676 | resolution: {integrity: sha512-Klz949h02Gz2uZCMGwDUSDS1YBlTdDDgbWHi+81l29tQALUtvz4rAYi5uoVhE5Lagoq6DeqAUlbrHvW/mXDgdQ==} 677 | dev: true 678 | 679 | /@types/node/15.14.9: 680 | resolution: {integrity: sha512-qjd88DrCxupx/kJD5yQgZdcYKZKSIGBVDIBE1/LTGcNm3d2Np/jxojkdePDdfnBHJc5W7vSMpbJ1aB7p/Py69A==} 681 | dev: true 682 | 683 | /@types/node/16.18.14: 684 | resolution: {integrity: sha512-wvzClDGQXOCVNU4APPopC2KtMYukaF1MN/W3xAmslx22Z4/IF1/izDMekuyoUlwfnDHYCIZGaj7jMwnJKBTxKw==} 685 | 686 | /@types/normalize-package-data/2.4.1: 687 | resolution: {integrity: sha512-Gj7cI7z+98M282Tqmp2K5EIsoouUEzbBJhQQzDE3jSIRk6r9gsz0oUokqIUR4u1R3dMHo0pDHM7sNOHyhulypw==} 688 | dev: true 689 | 690 | /@types/responselike/1.0.0: 691 | resolution: {integrity: sha512-85Y2BjiufFzaMIlvJDvTTB8Fxl2xfLo4HgmHzVBz08w4wDePCTjYw66PdrolO0kzli3yam/YCgRufyo1DdQVTA==} 692 | dependencies: 693 | '@types/node': 16.18.14 694 | dev: true 695 | 696 | /@types/semver/7.3.13: 697 | resolution: {integrity: sha512-21cFJr9z3g5dW8B0CVI9g2O9beqaThGQ6ZFBqHfwhzLDKUxaqTIy3vnfah/UPkfOiF2pLq+tGz+W8RyCskuslw==} 698 | dev: true 699 | 700 | /@types/vinyl/2.0.7: 701 | resolution: {integrity: sha512-4UqPv+2567NhMQuMLdKAyK4yzrfCqwaTt6bLhHEs8PFcxbHILsrxaY63n4wgE/BRLDWDQeI+WcTmkXKExh9hQg==} 702 | dependencies: 703 | '@types/expect': 1.20.4 704 | '@types/node': 16.18.14 705 | dev: true 706 | 707 | /@typescript-eslint/eslint-plugin/5.54.1_2raik7ghbnj434s5izctn4kvma: 708 | resolution: {integrity: sha512-a2RQAkosH3d3ZIV08s3DcL/mcGc2M/UC528VkPULFxR9VnVPT8pBu0IyBAJJmVsCmhVfwQX1v6q+QGnmSe1bew==} 709 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} 710 | peerDependencies: 711 | '@typescript-eslint/parser': ^5.0.0 712 | eslint: ^6.0.0 || ^7.0.0 || ^8.0.0 713 | typescript: '*' 714 | peerDependenciesMeta: 715 | typescript: 716 | optional: true 717 | dependencies: 718 | '@typescript-eslint/parser': 5.54.1_jofidmxrjzhj7l6vknpw5ecvfe 719 | '@typescript-eslint/scope-manager': 5.54.1 720 | '@typescript-eslint/type-utils': 5.54.1_jofidmxrjzhj7l6vknpw5ecvfe 721 | '@typescript-eslint/utils': 5.54.1_jofidmxrjzhj7l6vknpw5ecvfe 722 | debug: 4.3.4 723 | eslint: 7.32.0 724 | grapheme-splitter: 1.0.4 725 | ignore: 5.2.4 726 | natural-compare-lite: 1.4.0 727 | regexpp: 3.2.0 728 | semver: 7.3.8 729 | tsutils: 3.21.0_typescript@4.9.5 730 | typescript: 4.9.5 731 | transitivePeerDependencies: 732 | - supports-color 733 | dev: true 734 | 735 | /@typescript-eslint/parser/5.54.1_jofidmxrjzhj7l6vknpw5ecvfe: 736 | resolution: {integrity: sha512-8zaIXJp/nG9Ff9vQNh7TI+C3nA6q6iIsGJ4B4L6MhZ7mHnTMR4YP5vp2xydmFXIy8rpyIVbNAG44871LMt6ujg==} 737 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} 738 | peerDependencies: 739 | eslint: ^6.0.0 || ^7.0.0 || ^8.0.0 740 | typescript: '*' 741 | peerDependenciesMeta: 742 | typescript: 743 | optional: true 744 | dependencies: 745 | '@typescript-eslint/scope-manager': 5.54.1 746 | '@typescript-eslint/types': 5.54.1 747 | '@typescript-eslint/typescript-estree': 5.54.1_typescript@4.9.5 748 | debug: 4.3.4 749 | eslint: 7.32.0 750 | typescript: 4.9.5 751 | transitivePeerDependencies: 752 | - supports-color 753 | dev: true 754 | 755 | /@typescript-eslint/scope-manager/5.54.1: 756 | resolution: {integrity: sha512-zWKuGliXxvuxyM71UA/EcPxaviw39dB2504LqAmFDjmkpO8qNLHcmzlh6pbHs1h/7YQ9bnsO8CCcYCSA8sykUg==} 757 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} 758 | dependencies: 759 | '@typescript-eslint/types': 5.54.1 760 | '@typescript-eslint/visitor-keys': 5.54.1 761 | dev: true 762 | 763 | /@typescript-eslint/type-utils/5.54.1_jofidmxrjzhj7l6vknpw5ecvfe: 764 | resolution: {integrity: sha512-WREHsTz0GqVYLIbzIZYbmUUr95DKEKIXZNH57W3s+4bVnuF1TKe2jH8ZNH8rO1CeMY3U4j4UQeqPNkHMiGem3g==} 765 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} 766 | peerDependencies: 767 | eslint: '*' 768 | typescript: '*' 769 | peerDependenciesMeta: 770 | typescript: 771 | optional: true 772 | dependencies: 773 | '@typescript-eslint/typescript-estree': 5.54.1_typescript@4.9.5 774 | '@typescript-eslint/utils': 5.54.1_jofidmxrjzhj7l6vknpw5ecvfe 775 | debug: 4.3.4 776 | eslint: 7.32.0 777 | tsutils: 3.21.0_typescript@4.9.5 778 | typescript: 4.9.5 779 | transitivePeerDependencies: 780 | - supports-color 781 | dev: true 782 | 783 | /@typescript-eslint/types/5.54.1: 784 | resolution: {integrity: sha512-G9+1vVazrfAfbtmCapJX8jRo2E4MDXxgm/IMOF4oGh3kq7XuK3JRkOg6y2Qu1VsTRmWETyTkWt1wxy7X7/yLkw==} 785 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} 786 | dev: true 787 | 788 | /@typescript-eslint/typescript-estree/5.54.1_typescript@4.9.5: 789 | resolution: {integrity: sha512-bjK5t+S6ffHnVwA0qRPTZrxKSaFYocwFIkZx5k7pvWfsB1I57pO/0M0Skatzzw1sCkjJ83AfGTL0oFIFiDX3bg==} 790 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} 791 | peerDependencies: 792 | typescript: '*' 793 | peerDependenciesMeta: 794 | typescript: 795 | optional: true 796 | dependencies: 797 | '@typescript-eslint/types': 5.54.1 798 | '@typescript-eslint/visitor-keys': 5.54.1 799 | debug: 4.3.4 800 | globby: 11.1.0 801 | is-glob: 4.0.3 802 | semver: 7.3.8 803 | tsutils: 3.21.0_typescript@4.9.5 804 | typescript: 4.9.5 805 | transitivePeerDependencies: 806 | - supports-color 807 | dev: true 808 | 809 | /@typescript-eslint/utils/5.54.1_jofidmxrjzhj7l6vknpw5ecvfe: 810 | resolution: {integrity: sha512-IY5dyQM8XD1zfDe5X8jegX6r2EVU5o/WJnLu/znLPWCBF7KNGC+adacXnt5jEYS9JixDcoccI6CvE4RCjHMzCQ==} 811 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} 812 | peerDependencies: 813 | eslint: ^6.0.0 || ^7.0.0 || ^8.0.0 814 | dependencies: 815 | '@types/json-schema': 7.0.11 816 | '@types/semver': 7.3.13 817 | '@typescript-eslint/scope-manager': 5.54.1 818 | '@typescript-eslint/types': 5.54.1 819 | '@typescript-eslint/typescript-estree': 5.54.1_typescript@4.9.5 820 | eslint: 7.32.0 821 | eslint-scope: 5.1.1 822 | eslint-utils: 3.0.0_eslint@7.32.0 823 | semver: 7.3.8 824 | transitivePeerDependencies: 825 | - supports-color 826 | - typescript 827 | dev: true 828 | 829 | /@typescript-eslint/visitor-keys/5.54.1: 830 | resolution: {integrity: sha512-q8iSoHTgwCfgcRJ2l2x+xCbu8nBlRAlsQ33k24Adj8eoVBE0f8dUeI+bAa8F84Mv05UGbAx57g2zrRsYIooqQg==} 831 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} 832 | dependencies: 833 | '@typescript-eslint/types': 5.54.1 834 | eslint-visitor-keys: 3.3.0 835 | dev: true 836 | 837 | /@vue/compiler-core/3.2.47: 838 | resolution: {integrity: sha512-p4D7FDnQb7+YJmO2iPEv0SQNeNzcbHdGByJDsT4lynf63AFkOTFN07HsiRSvjGo0QrxR/o3d0hUyNCUnBU2Tig==} 839 | dependencies: 840 | '@babel/parser': 7.21.2 841 | '@vue/shared': 3.2.47 842 | estree-walker: 2.0.2 843 | source-map: 0.6.1 844 | dev: true 845 | 846 | /@vue/compiler-dom/3.2.47: 847 | resolution: {integrity: sha512-dBBnEHEPoftUiS03a4ggEig74J2YBZ2UIeyfpcRM2tavgMWo4bsEfgCGsu+uJIL/vax9S+JztH8NmQerUo7shQ==} 848 | dependencies: 849 | '@vue/compiler-core': 3.2.47 850 | '@vue/shared': 3.2.47 851 | dev: true 852 | 853 | /@vue/compiler-sfc/3.2.47: 854 | resolution: {integrity: sha512-rog05W+2IFfxjMcFw10tM9+f7i/+FFpZJJ5XHX72NP9eC2uRD+42M3pYcQqDXVYoj74kHMSEdQ/WmCjt8JFksQ==} 855 | dependencies: 856 | '@babel/parser': 7.21.2 857 | '@vue/compiler-core': 3.2.47 858 | '@vue/compiler-dom': 3.2.47 859 | '@vue/compiler-ssr': 3.2.47 860 | '@vue/reactivity-transform': 3.2.47 861 | '@vue/shared': 3.2.47 862 | estree-walker: 2.0.2 863 | magic-string: 0.25.9 864 | postcss: 8.4.21 865 | source-map: 0.6.1 866 | dev: true 867 | 868 | /@vue/compiler-ssr/3.2.47: 869 | resolution: {integrity: sha512-wVXC+gszhulcMD8wpxMsqSOpvDZ6xKXSVWkf50Guf/S+28hTAXPDYRTbLQ3EDkOP5Xz/+SY37YiwDquKbJOgZw==} 870 | dependencies: 871 | '@vue/compiler-dom': 3.2.47 872 | '@vue/shared': 3.2.47 873 | dev: true 874 | 875 | /@vue/reactivity-transform/3.2.47: 876 | resolution: {integrity: sha512-m8lGXw8rdnPVVIdIFhf0LeQ/ixyHkH5plYuS83yop5n7ggVJU+z5v0zecwEnX7fa7HNLBhh2qngJJkxpwEEmYA==} 877 | dependencies: 878 | '@babel/parser': 7.21.2 879 | '@vue/compiler-core': 3.2.47 880 | '@vue/shared': 3.2.47 881 | estree-walker: 2.0.2 882 | magic-string: 0.25.9 883 | dev: true 884 | 885 | /@vue/shared/3.2.47: 886 | resolution: {integrity: sha512-BHGyyGN3Q97EZx0taMQ+OLNuZcW3d37ZEVmEAyeoA9ERdGvm9Irc/0Fua8SNyOtV1w6BS4q25wbMzJujO9HIfQ==} 887 | dev: true 888 | 889 | /abbrev/1.1.1: 890 | resolution: {integrity: sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==} 891 | dev: true 892 | 893 | /acorn-jsx/5.3.2_acorn@7.4.1: 894 | resolution: {integrity: sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==} 895 | peerDependencies: 896 | acorn: ^6.0.0 || ^7.0.0 || ^8.0.0 897 | dependencies: 898 | acorn: 7.4.1 899 | dev: true 900 | 901 | /acorn-walk/8.2.0: 902 | resolution: {integrity: sha512-k+iyHEuPgSw6SbuDpGQM+06HQUa04DZ3o+F6CSzXMvvI5KMvnaEqXe+YVe555R9nn6GPt404fos4wcgpw12SDA==} 903 | engines: {node: '>=0.4.0'} 904 | dev: true 905 | 906 | /acorn/7.4.1: 907 | resolution: {integrity: sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==} 908 | engines: {node: '>=0.4.0'} 909 | hasBin: true 910 | dev: true 911 | 912 | /acorn/8.8.2: 913 | resolution: {integrity: sha512-xjIYgE8HBrkpd/sJqOGNspf8uHG+NOHGOw6a/Urj8taM2EXfdNAH2oFcPeIFfsv3+kz/mJrS5VuMqbNLjCa2vw==} 914 | engines: {node: '>=0.4.0'} 915 | hasBin: true 916 | dev: true 917 | 918 | /agent-base/6.0.2: 919 | resolution: {integrity: sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==} 920 | engines: {node: '>= 6.0.0'} 921 | dependencies: 922 | debug: 4.3.4 923 | transitivePeerDependencies: 924 | - supports-color 925 | dev: true 926 | 927 | /agentkeepalive/4.3.0: 928 | resolution: {integrity: sha512-7Epl1Blf4Sy37j4v9f9FjICCh4+KAQOyXgHEwlyBiAQLbhKdq/i2QQU3amQalS/wPhdPzDXPL5DMR5bkn+YeWg==} 929 | engines: {node: '>= 8.0.0'} 930 | dependencies: 931 | debug: 4.3.4 932 | depd: 2.0.0 933 | humanize-ms: 1.2.1 934 | transitivePeerDependencies: 935 | - supports-color 936 | dev: true 937 | 938 | /aggregate-error/3.1.0: 939 | resolution: {integrity: sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==} 940 | engines: {node: '>=8'} 941 | dependencies: 942 | clean-stack: 2.2.0 943 | indent-string: 4.0.0 944 | dev: true 945 | 946 | /ajv/6.12.6: 947 | resolution: {integrity: sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==} 948 | dependencies: 949 | fast-deep-equal: 3.1.3 950 | fast-json-stable-stringify: 2.1.0 951 | json-schema-traverse: 0.4.1 952 | uri-js: 4.4.1 953 | dev: true 954 | 955 | /ajv/8.12.0: 956 | resolution: {integrity: sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA==} 957 | dependencies: 958 | fast-deep-equal: 3.1.3 959 | json-schema-traverse: 1.0.0 960 | require-from-string: 2.0.2 961 | uri-js: 4.4.1 962 | dev: true 963 | 964 | /ansi-colors/4.1.3: 965 | resolution: {integrity: sha512-/6w/C21Pm1A7aZitlI5Ni/2J6FFQN8i1Cvz3kHABAAbw93v/NlvKdVOqz7CCWz/3iv/JplRSEEZ83XION15ovw==} 966 | engines: {node: '>=6'} 967 | dev: true 968 | 969 | /ansi-escapes/3.2.0: 970 | resolution: {integrity: sha512-cBhpre4ma+U0T1oM5fXg7Dy1Jw7zzwv7lt/GoCpr+hDQJoYnKVPLL4dCvSEFMmQurOQvSrwT7SL/DAlhBI97RQ==} 971 | engines: {node: '>=4'} 972 | 973 | /ansi-escapes/4.3.2: 974 | resolution: {integrity: sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ==} 975 | engines: {node: '>=8'} 976 | dependencies: 977 | type-fest: 0.21.3 978 | 979 | /ansi-regex/2.1.1: 980 | resolution: {integrity: sha512-TIGnTpdo+E3+pCyAluZvtED5p5wCqLdezCyhPZzKPcxvFplEt4i+W7OONCKgeZFT3+y5NZZfOOS/Bdcanm1MYA==} 981 | engines: {node: '>=0.10.0'} 982 | dev: true 983 | 984 | /ansi-regex/3.0.1: 985 | resolution: {integrity: sha512-+O9Jct8wf++lXxxFc4hc8LsjaSq0HFzzL7cVsw8pRDIPdjKD2mT4ytDZlLuSBZ4cLKZFXIrMGO7DbQCtMJJMKw==} 986 | engines: {node: '>=4'} 987 | dev: true 988 | 989 | /ansi-regex/5.0.1: 990 | resolution: {integrity: sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==} 991 | engines: {node: '>=8'} 992 | 993 | /ansi-styles/2.2.1: 994 | resolution: {integrity: sha512-kmCevFghRiWM7HB5zTPULl4r9bVFSWjz62MhqizDGUrq2NWuNMQyuv4tHHoKJHs69M/MF64lEcHdYIocrdWQYA==} 995 | engines: {node: '>=0.10.0'} 996 | dev: true 997 | 998 | /ansi-styles/3.2.1: 999 | resolution: {integrity: sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==} 1000 | engines: {node: '>=4'} 1001 | dependencies: 1002 | color-convert: 1.9.3 1003 | dev: true 1004 | 1005 | /ansi-styles/4.3.0: 1006 | resolution: {integrity: sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==} 1007 | engines: {node: '>=8'} 1008 | dependencies: 1009 | color-convert: 2.0.1 1010 | 1011 | /ansicolors/0.3.2: 1012 | resolution: {integrity: sha512-QXu7BPrP29VllRxH8GwB7x5iX5qWKAAMLqKQGWTeLWVlNHNOpVMJ91dsxQAIWXpjuW5wqvxu3Jd/nRjrJ+0pqg==} 1013 | 1014 | /aproba/2.0.0: 1015 | resolution: {integrity: sha512-lYe4Gx7QT+MKGbDsA+Z+he/Wtef0BiwDOlK/XkBrdfsh9J/jPPXbX0tE9x9cl27Tmu5gg3QUbUrQYa/y+KOHPQ==} 1016 | dev: true 1017 | 1018 | /are-we-there-yet/2.0.0: 1019 | resolution: {integrity: sha512-Ci/qENmwHnsYo9xKIcUJN5LeDKdJ6R1Z1j9V/J5wyq8nh/mYPEpIKJbBZXtZjG04HiK7zV/p6Vs9952MrMeUIw==} 1020 | engines: {node: '>=10'} 1021 | dependencies: 1022 | delegates: 1.0.0 1023 | readable-stream: 3.6.1 1024 | dev: true 1025 | 1026 | /are-we-there-yet/3.0.1: 1027 | resolution: {integrity: sha512-QZW4EDmGwlYur0Yyf/b2uGucHQMa8aFUP7eu9ddR73vvhFyt4V0Vl3QHPcTNJ8l6qYOBdxgXdnBXQrHilfRQBg==} 1028 | engines: {node: ^12.13.0 || ^14.15.0 || >=16.0.0} 1029 | dependencies: 1030 | delegates: 1.0.0 1031 | readable-stream: 3.6.1 1032 | dev: true 1033 | 1034 | /arg/4.1.3: 1035 | resolution: {integrity: sha512-58S9QDqG0Xx27YwPSt9fJxivjYl432YCwfDMfZ+71RAqUrZef7LrKQZ3LHLOwCS4FLNBplP533Zx895SeOCHvA==} 1036 | dev: true 1037 | 1038 | /argparse/1.0.10: 1039 | resolution: {integrity: sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==} 1040 | dependencies: 1041 | sprintf-js: 1.0.3 1042 | 1043 | /array-differ/3.0.0: 1044 | resolution: {integrity: sha512-THtfYS6KtME/yIAhKjZ2ul7XI96lQGHRputJQHO80LAWQnuGP4iCIN8vdMRboGbIEYBwU33q8Tch1os2+X0kMg==} 1045 | engines: {node: '>=8'} 1046 | dev: true 1047 | 1048 | /array-union/2.1.0: 1049 | resolution: {integrity: sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==} 1050 | engines: {node: '>=8'} 1051 | 1052 | /arrify/2.0.1: 1053 | resolution: {integrity: sha512-3duEwti880xqi4eAMN8AyR4a0ByT90zoYdLlevfrvU43vb0YZwZVfxOgxWrLXXXpyugL0hNZc9G6BiB5B3nUug==} 1054 | engines: {node: '>=8'} 1055 | dev: true 1056 | 1057 | /asap/2.0.6: 1058 | resolution: {integrity: sha512-BSHWgDSAiKs50o2Re8ppvp3seVHXSRM44cdSsT9FfNEUUZLOGWVCsiWaRPWM1Znn+mqZ1OfVZ3z3DWEzSp7hRA==} 1059 | dev: true 1060 | 1061 | /astral-regex/2.0.0: 1062 | resolution: {integrity: sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ==} 1063 | engines: {node: '>=8'} 1064 | dev: true 1065 | 1066 | /async/3.2.4: 1067 | resolution: {integrity: sha512-iAB+JbDEGXhyIUavoDl9WP/Jj106Kz9DEn1DPgYw5ruDn0e3Wgi3sKFm55sASdGBNOQB8F59d9qQ7deqrHA8wQ==} 1068 | 1069 | /asynckit/0.4.0: 1070 | resolution: {integrity: sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==} 1071 | dev: false 1072 | 1073 | /at-least-node/1.0.0: 1074 | resolution: {integrity: sha512-+q/t7Ekv1EDY2l6Gda6LLiX14rU9TV20Wa3ofeQmwPFZbOMo9DXrLbOjFaaclkXKWidIaopwAObQDqwWtGUjqg==} 1075 | engines: {node: '>= 4.0.0'} 1076 | 1077 | /available-typed-arrays/1.0.5: 1078 | resolution: {integrity: sha512-DMD0KiN46eipeziST1LPP/STfDU0sufISXmjSgvVsoU2tqxctQeASejWcfNtxYKqETM1UxQ8sp2OrSBWpHY6sw==} 1079 | engines: {node: '>= 0.4'} 1080 | dev: true 1081 | 1082 | /aws-sdk/2.1329.0: 1083 | resolution: {integrity: sha512-F5M9x/T+PanPiYGiL95atFE6QiwzJWwgPahaEgUdq+qvVAgruiNy5t6nw2B5tBB/yWDPPavHFip3UsXeO0qU3Q==} 1084 | engines: {node: '>= 10.0.0'} 1085 | dependencies: 1086 | buffer: 4.9.2 1087 | events: 1.1.1 1088 | ieee754: 1.1.13 1089 | jmespath: 0.16.0 1090 | querystring: 0.2.0 1091 | sax: 1.2.1 1092 | url: 0.10.3 1093 | util: 0.12.5 1094 | uuid: 8.0.0 1095 | xml2js: 0.4.19 1096 | dev: true 1097 | 1098 | /axios/0.26.1: 1099 | resolution: {integrity: sha512-fPwcX4EvnSHuInCMItEhAGnaSEXRBjtzh9fOtsE6E1G6p7vl7edEeZe11QHf18+6+9gR5PbKV/sGKNaD8YaMeA==} 1100 | dependencies: 1101 | follow-redirects: 1.15.2 1102 | transitivePeerDependencies: 1103 | - debug 1104 | dev: false 1105 | 1106 | /balanced-match/1.0.2: 1107 | resolution: {integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==} 1108 | 1109 | /base64-js/1.5.1: 1110 | resolution: {integrity: sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==} 1111 | dev: true 1112 | 1113 | /before-after-hook/2.2.3: 1114 | resolution: {integrity: sha512-NzUnlZexiaH/46WDhANlyR2bXRopNg4F/zuSA3OpZnllCUgRaOF2znDioDWrmbNVsuZk6l9pMquQB38cfBZwkQ==} 1115 | dev: true 1116 | 1117 | /bin-links/3.0.3: 1118 | resolution: {integrity: sha512-zKdnMPWEdh4F5INR07/eBrodC7QrF5JKvqskjz/ZZRXg5YSAZIbn8zGhbhUrElzHBZ2fvEQdOU59RHcTG3GiwA==} 1119 | engines: {node: ^12.13.0 || ^14.15.0 || >=16.0.0} 1120 | dependencies: 1121 | cmd-shim: 5.0.0 1122 | mkdirp-infer-owner: 2.0.0 1123 | npm-normalize-package-bin: 2.0.0 1124 | read-cmd-shim: 3.0.1 1125 | rimraf: 3.0.2 1126 | write-file-atomic: 4.0.2 1127 | dev: true 1128 | 1129 | /binaryextensions/4.18.0: 1130 | resolution: {integrity: sha512-PQu3Kyv9dM4FnwB7XGj1+HucW+ShvJzJqjuw1JkKVs1mWdwOKVcRjOi+pV9X52A0tNvrPCsPkbFFQb+wE1EAXw==} 1131 | engines: {node: '>=0.8'} 1132 | dev: true 1133 | 1134 | /bl/4.1.0: 1135 | resolution: {integrity: sha512-1W07cM9gS6DcLperZfFSj+bWLtaPGSOHWhPiGzXmvVJbRLdG82sH/Kn8EtW1VqWVA54AKf2h5k5BbnIbwF3h6w==} 1136 | dependencies: 1137 | buffer: 5.7.1 1138 | inherits: 2.0.4 1139 | readable-stream: 3.6.1 1140 | dev: true 1141 | 1142 | /brace-expansion/1.1.11: 1143 | resolution: {integrity: sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==} 1144 | dependencies: 1145 | balanced-match: 1.0.2 1146 | concat-map: 0.0.1 1147 | 1148 | /brace-expansion/2.0.1: 1149 | resolution: {integrity: sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==} 1150 | dependencies: 1151 | balanced-match: 1.0.2 1152 | 1153 | /braces/3.0.2: 1154 | resolution: {integrity: sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==} 1155 | engines: {node: '>=8'} 1156 | dependencies: 1157 | fill-range: 7.0.1 1158 | 1159 | /buffer/4.9.2: 1160 | resolution: {integrity: sha512-xq+q3SRMOxGivLhBNaUdC64hDTQwejJ+H0T/NB1XMtTVEwNTrfFF3gAxiyW0Bu/xWEGhjVKgUcMhCrUy2+uCWg==} 1161 | dependencies: 1162 | base64-js: 1.5.1 1163 | ieee754: 1.1.13 1164 | isarray: 1.0.0 1165 | dev: true 1166 | 1167 | /buffer/5.7.1: 1168 | resolution: {integrity: sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==} 1169 | dependencies: 1170 | base64-js: 1.5.1 1171 | ieee754: 1.2.1 1172 | dev: true 1173 | 1174 | /builtins/1.0.3: 1175 | resolution: {integrity: sha512-uYBjakWipfaO/bXI7E8rq6kpwHRZK5cNYrUv2OzZSI/FvmdMyXJ2tG9dKcjEC5YHmHpUAwsargWIZNWdxb/bnQ==} 1176 | dev: true 1177 | 1178 | /cacache/15.3.0: 1179 | resolution: {integrity: sha512-VVdYzXEn+cnbXpFgWs5hTT7OScegHVmLhJIR8Ufqk3iFD6A6j5iSX1KuBTfNEv4tdJWE2PzA6IVFtcLC7fN9wQ==} 1180 | engines: {node: '>= 10'} 1181 | dependencies: 1182 | '@npmcli/fs': 1.1.1 1183 | '@npmcli/move-file': 1.1.2 1184 | chownr: 2.0.0 1185 | fs-minipass: 2.1.0 1186 | glob: 7.2.3 1187 | infer-owner: 1.0.4 1188 | lru-cache: 6.0.0 1189 | minipass: 3.3.6 1190 | minipass-collect: 1.0.2 1191 | minipass-flush: 1.0.5 1192 | minipass-pipeline: 1.2.4 1193 | mkdirp: 1.0.4 1194 | p-map: 4.0.0 1195 | promise-inflight: 1.0.1 1196 | rimraf: 3.0.2 1197 | ssri: 8.0.1 1198 | tar: 6.1.13 1199 | unique-filename: 1.1.1 1200 | transitivePeerDependencies: 1201 | - bluebird 1202 | dev: true 1203 | 1204 | /cacache/16.1.3: 1205 | resolution: {integrity: sha512-/+Emcj9DAXxX4cwlLmRI9c166RuL3w30zp4R7Joiv2cQTtTtA+jeuCAjH3ZlGnYS3tKENSrKhAzVVP9GVyzeYQ==} 1206 | engines: {node: ^12.13.0 || ^14.15.0 || >=16.0.0} 1207 | dependencies: 1208 | '@npmcli/fs': 2.1.2 1209 | '@npmcli/move-file': 2.0.1 1210 | chownr: 2.0.0 1211 | fs-minipass: 2.1.0 1212 | glob: 8.1.0 1213 | infer-owner: 1.0.4 1214 | lru-cache: 7.18.3 1215 | minipass: 3.3.6 1216 | minipass-collect: 1.0.2 1217 | minipass-flush: 1.0.5 1218 | minipass-pipeline: 1.2.4 1219 | mkdirp: 1.0.4 1220 | p-map: 4.0.0 1221 | promise-inflight: 1.0.1 1222 | rimraf: 3.0.2 1223 | ssri: 9.0.1 1224 | tar: 6.1.13 1225 | unique-filename: 2.0.1 1226 | transitivePeerDependencies: 1227 | - bluebird 1228 | dev: true 1229 | 1230 | /cacheable-lookup/5.0.4: 1231 | resolution: {integrity: sha512-2/kNscPhpcxrOigMZzbiWF7dz8ilhb/nIHU3EyZiXWXpeq/au8qJ8VhdftMkty3n7Gj6HIGalQG8oiBNB3AJgA==} 1232 | engines: {node: '>=10.6.0'} 1233 | dev: true 1234 | 1235 | /cacheable-request/7.0.2: 1236 | resolution: {integrity: sha512-pouW8/FmiPQbuGpkXQ9BAPv/Mo5xDGANgSNXzTzJ8DrKGuXOssM4wIQRjfanNRh3Yu5cfYPvcorqbhg2KIJtew==} 1237 | engines: {node: '>=8'} 1238 | dependencies: 1239 | clone-response: 1.0.3 1240 | get-stream: 5.2.0 1241 | http-cache-semantics: 4.1.1 1242 | keyv: 4.5.2 1243 | lowercase-keys: 2.0.0 1244 | normalize-url: 6.1.0 1245 | responselike: 2.0.1 1246 | dev: true 1247 | 1248 | /call-bind/1.0.2: 1249 | resolution: {integrity: sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==} 1250 | dependencies: 1251 | function-bind: 1.1.1 1252 | get-intrinsic: 1.2.0 1253 | dev: true 1254 | 1255 | /callsites/3.1.0: 1256 | resolution: {integrity: sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==} 1257 | engines: {node: '>=6'} 1258 | dev: true 1259 | 1260 | /cardinal/2.1.1: 1261 | resolution: {integrity: sha512-JSr5eOgoEymtYHBjNWyjrMqet9Am2miJhlfKNdqLp6zoeAh0KN5dRAcxlecj5mAJrmQomgiOBj35xHLrFjqBpw==} 1262 | hasBin: true 1263 | dependencies: 1264 | ansicolors: 0.3.2 1265 | redeyed: 2.1.1 1266 | 1267 | /chalk/1.1.3: 1268 | resolution: {integrity: sha512-U3lRVLMSlsCfjqYPbLyVv11M9CPW4I728d6TCKMAOJueEeB9/8o+eSsMnxPJD+Q+K909sdESg7C+tIkoH6on1A==} 1269 | engines: {node: '>=0.10.0'} 1270 | dependencies: 1271 | ansi-styles: 2.2.1 1272 | escape-string-regexp: 1.0.5 1273 | has-ansi: 2.0.0 1274 | strip-ansi: 3.0.1 1275 | supports-color: 2.0.0 1276 | dev: true 1277 | 1278 | /chalk/2.4.2: 1279 | resolution: {integrity: sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==} 1280 | engines: {node: '>=4'} 1281 | dependencies: 1282 | ansi-styles: 3.2.1 1283 | escape-string-regexp: 1.0.5 1284 | supports-color: 5.5.0 1285 | dev: true 1286 | 1287 | /chalk/4.1.2: 1288 | resolution: {integrity: sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==} 1289 | engines: {node: '>=10'} 1290 | dependencies: 1291 | ansi-styles: 4.3.0 1292 | supports-color: 7.2.0 1293 | 1294 | /chardet/0.7.0: 1295 | resolution: {integrity: sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA==} 1296 | dev: true 1297 | 1298 | /chownr/2.0.0: 1299 | resolution: {integrity: sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ==} 1300 | engines: {node: '>=10'} 1301 | dev: true 1302 | 1303 | /clean-stack/2.2.0: 1304 | resolution: {integrity: sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==} 1305 | engines: {node: '>=6'} 1306 | dev: true 1307 | 1308 | /clean-stack/3.0.1: 1309 | resolution: {integrity: sha512-lR9wNiMRcVQjSB3a7xXGLuz4cr4wJuuXlaAEbRutGowQTmlp7R72/DOgN21e8jdwblMWl9UOJMJXarX94pzKdg==} 1310 | engines: {node: '>=10'} 1311 | dependencies: 1312 | escape-string-regexp: 4.0.0 1313 | 1314 | /cli-boxes/1.0.0: 1315 | resolution: {integrity: sha512-3Fo5wu8Ytle8q9iCzS4D2MWVL2X7JVWRiS1BnXbTFDhS9c/REkM9vd1AmabsoZoY5/dGi5TT9iKL8Kb6DeBRQg==} 1316 | engines: {node: '>=0.10.0'} 1317 | dev: true 1318 | 1319 | /cli-cursor/3.1.0: 1320 | resolution: {integrity: sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw==} 1321 | engines: {node: '>=8'} 1322 | dependencies: 1323 | restore-cursor: 3.1.0 1324 | dev: true 1325 | 1326 | /cli-progress/3.12.0: 1327 | resolution: {integrity: sha512-tRkV3HJ1ASwm19THiiLIXLO7Im7wlTuKnvkYaTkyoAPefqjNg7W7DHKUlGRxy9vxDvbyCYQkQozvptuMkGCg8A==} 1328 | engines: {node: '>=4'} 1329 | dependencies: 1330 | string-width: 4.2.3 1331 | 1332 | /cli-spinners/2.7.0: 1333 | resolution: {integrity: sha512-qu3pN8Y3qHNgE2AFweciB1IfMnmZ/fsNTEE+NOFjmGB2F/7rLhnhzppvpCnN4FovtP26k8lHyy9ptEbNwWFLzw==} 1334 | engines: {node: '>=6'} 1335 | dev: true 1336 | 1337 | /cli-table/0.3.11: 1338 | resolution: {integrity: sha512-IqLQi4lO0nIB4tcdTpN4LCB9FI3uqrJZK7RC515EnhZ6qBaglkIgICb1wjeAqpdoOabm1+SuQtkXIPdYC93jhQ==} 1339 | engines: {node: '>= 0.2.0'} 1340 | dependencies: 1341 | colors: 1.0.3 1342 | dev: true 1343 | 1344 | /cli-width/3.0.0: 1345 | resolution: {integrity: sha512-FxqpkPPwu1HjuN93Omfm4h8uIanXofW0RxVEW3k5RKx+mJJYSthzNhp32Kzxxy3YAEZ/Dc/EWN1vZRY0+kOhbw==} 1346 | engines: {node: '>= 10'} 1347 | dev: true 1348 | 1349 | /cliui/8.0.1: 1350 | resolution: {integrity: sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==} 1351 | engines: {node: '>=12'} 1352 | dependencies: 1353 | string-width: 4.2.3 1354 | strip-ansi: 6.0.1 1355 | wrap-ansi: 7.0.0 1356 | dev: true 1357 | 1358 | /clone-buffer/1.0.0: 1359 | resolution: {integrity: sha512-KLLTJWrvwIP+OPfMn0x2PheDEP20RPUcGXj/ERegTgdmPEZylALQldygiqrPPu8P45uNuPs7ckmReLY6v/iA5g==} 1360 | engines: {node: '>= 0.10'} 1361 | dev: true 1362 | 1363 | /clone-response/1.0.3: 1364 | resolution: {integrity: sha512-ROoL94jJH2dUVML2Y/5PEDNaSHgeOdSDicUyS7izcF63G6sTc/FTjLub4b8Il9S8S0beOfYt0TaA5qvFK+w0wA==} 1365 | dependencies: 1366 | mimic-response: 1.0.1 1367 | dev: true 1368 | 1369 | /clone-stats/1.0.0: 1370 | resolution: {integrity: sha512-au6ydSpg6nsrigcZ4m8Bc9hxjeW+GJ8xh5G3BJCMt4WXe1H10UNaVOamqQTmrx1kjVuxAHIQSNU6hY4Nsn9/ag==} 1371 | dev: true 1372 | 1373 | /clone/1.0.4: 1374 | resolution: {integrity: sha512-JQHZ2QMW6l3aH/j6xCqQThY/9OH4D/9ls34cgkUBiEeocRTU04tHfKPBsUK1PqZCUQM7GiA0IIXJSuXHI64Kbg==} 1375 | engines: {node: '>=0.8'} 1376 | dev: true 1377 | 1378 | /clone/2.1.2: 1379 | resolution: {integrity: sha512-3Pe/CF1Nn94hyhIYpjtiLhdCoEoz0DqQ+988E9gmeEdQZlojxnOb74wctFyuwWQHzqyf9X7C7MG8juUpqBJT8w==} 1380 | engines: {node: '>=0.8'} 1381 | dev: true 1382 | 1383 | /cloneable-readable/1.1.3: 1384 | resolution: {integrity: sha512-2EF8zTQOxYq70Y4XKtorQupqF0m49MBz2/yf5Bj+MHjvpG3Hy7sImifnqD6UA+TKYxeSV+u6qqQPawN5UvnpKQ==} 1385 | dependencies: 1386 | inherits: 2.0.4 1387 | process-nextick-args: 2.0.1 1388 | readable-stream: 2.3.8 1389 | dev: true 1390 | 1391 | /cmd-shim/5.0.0: 1392 | resolution: {integrity: sha512-qkCtZ59BidfEwHltnJwkyVZn+XQojdAySM1D1gSeh11Z4pW1Kpolkyo53L5noc0nrxmIvyFwTmJRo4xs7FFLPw==} 1393 | engines: {node: ^12.13.0 || ^14.15.0 || >=16.0.0} 1394 | dependencies: 1395 | mkdirp-infer-owner: 2.0.0 1396 | dev: true 1397 | 1398 | /code-point-at/1.1.0: 1399 | resolution: {integrity: sha512-RpAVKQA5T63xEj6/giIbUEtZwJ4UFIc3ZtvEkiaUERylqe8xb5IvqcgOurZLahv93CLKfxcw5YI+DZcUBRyLXA==} 1400 | engines: {node: '>=0.10.0'} 1401 | dev: true 1402 | 1403 | /color-convert/1.9.3: 1404 | resolution: {integrity: sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==} 1405 | dependencies: 1406 | color-name: 1.1.3 1407 | dev: true 1408 | 1409 | /color-convert/2.0.1: 1410 | resolution: {integrity: sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==} 1411 | engines: {node: '>=7.0.0'} 1412 | dependencies: 1413 | color-name: 1.1.4 1414 | 1415 | /color-name/1.1.3: 1416 | resolution: {integrity: sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==} 1417 | dev: true 1418 | 1419 | /color-name/1.1.4: 1420 | resolution: {integrity: sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==} 1421 | 1422 | /color-support/1.1.3: 1423 | resolution: {integrity: sha512-qiBjkpbMLO/HL68y+lh4q0/O1MZFj2RX6X/KmMa3+gJD3z+WwI1ZzDHysvqHGS3mP6mznPckpXmw1nI9cJjyRg==} 1424 | hasBin: true 1425 | dev: true 1426 | 1427 | /colors/1.0.3: 1428 | resolution: {integrity: sha512-pFGrxThWcWQ2MsAz6RtgeWe4NK2kUE1WfsrvvlctdII745EW9I0yflqhe7++M5LEc7bV2c/9/5zc8sFcpL0Drw==} 1429 | engines: {node: '>=0.1.90'} 1430 | dev: true 1431 | 1432 | /combined-stream/1.0.8: 1433 | resolution: {integrity: sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==} 1434 | engines: {node: '>= 0.8'} 1435 | dependencies: 1436 | delayed-stream: 1.0.0 1437 | dev: false 1438 | 1439 | /commander/7.1.0: 1440 | resolution: {integrity: sha512-pRxBna3MJe6HKnBGsDyMv8ETbptw3axEdYHoqNh7gu5oDcew8fs0xnivZGm06Ogk8zGAJ9VX+OPEr2GXEQK4dg==} 1441 | engines: {node: '>= 10'} 1442 | dev: true 1443 | 1444 | /common-ancestor-path/1.0.1: 1445 | resolution: {integrity: sha512-L3sHRo1pXXEqX8VU28kfgUY+YGsk09hPqZiZmLacNib6XNTCM8ubYeT7ryXQw8asB1sKgcU5lkB7ONug08aB8w==} 1446 | dev: true 1447 | 1448 | /commondir/1.0.1: 1449 | resolution: {integrity: sha512-W9pAhw0ja1Edb5GVdIF1mjZw/ASI0AlShXM83UUGe2DVr5TdAPEA1OA8m/g8zWp9x6On7gqufY+FatDbC3MDQg==} 1450 | dev: true 1451 | 1452 | /concat-map/0.0.1: 1453 | resolution: {integrity: sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==} 1454 | 1455 | /concurrently/7.6.0: 1456 | resolution: {integrity: sha512-BKtRgvcJGeZ4XttiDiNcFiRlxoAeZOseqUvyYRUp/Vtd+9p1ULmeoSqGsDA+2ivdeDFpqrJvGvmI+StKfKl5hw==} 1457 | engines: {node: ^12.20.0 || ^14.13.0 || >=16.0.0} 1458 | hasBin: true 1459 | dependencies: 1460 | chalk: 4.1.2 1461 | date-fns: 2.29.3 1462 | lodash: 4.17.21 1463 | rxjs: 7.8.0 1464 | shell-quote: 1.8.0 1465 | spawn-command: 0.0.2-1 1466 | supports-color: 8.1.1 1467 | tree-kill: 1.2.2 1468 | yargs: 17.7.1 1469 | dev: true 1470 | 1471 | /console-control-strings/1.1.0: 1472 | resolution: {integrity: sha512-ty/fTekppD2fIwRvnZAVdeOiGd1c7YXEixbgJTNzqcxJWKQnjJ/V1bNEEE6hygpM3WjwHFUVK6HTjWSzV4a8sQ==} 1473 | dev: true 1474 | 1475 | /content-type/1.0.5: 1476 | resolution: {integrity: sha512-nTjqfcBFEipKdXCv4YDQWCfmcLZKm81ldF0pAopTvyrFGVbcR6P/VAAd5G7N+0tTr8QqiU0tFadD6FK4NtJwOA==} 1477 | engines: {node: '>= 0.6'} 1478 | dev: true 1479 | 1480 | /core-util-is/1.0.3: 1481 | resolution: {integrity: sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==} 1482 | dev: true 1483 | 1484 | /create-require/1.1.1: 1485 | resolution: {integrity: sha512-dcKFX3jn0MpIaXjisoRvexIJVEKzaq7z2rZKxf+MSr9TkdmHmsU4m2lcLojrj/FHl8mk5VxMmYA+ftRkP/3oKQ==} 1486 | dev: true 1487 | 1488 | /cross-spawn/6.0.5: 1489 | resolution: {integrity: sha512-eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ==} 1490 | engines: {node: '>=4.8'} 1491 | dependencies: 1492 | nice-try: 1.0.5 1493 | path-key: 2.0.1 1494 | semver: 5.7.1 1495 | shebang-command: 1.2.0 1496 | which: 1.3.1 1497 | 1498 | /cross-spawn/7.0.3: 1499 | resolution: {integrity: sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==} 1500 | engines: {node: '>= 8'} 1501 | dependencies: 1502 | path-key: 3.1.1 1503 | shebang-command: 2.0.0 1504 | which: 2.0.2 1505 | dev: true 1506 | 1507 | /dargs/7.0.0: 1508 | resolution: {integrity: sha512-2iy1EkLdlBzQGvbweYRFxmFath8+K7+AKB0TlhHWkNuH+TmovaMH/Wp7V7R4u7f4SnX3OgLsU9t1NI9ioDnUpg==} 1509 | engines: {node: '>=8'} 1510 | dev: true 1511 | 1512 | /date-fns/2.29.3: 1513 | resolution: {integrity: sha512-dDCnyH2WnnKusqvZZ6+jA1O51Ibt8ZMRNkDZdyAyK4YfbDwa/cEmuztzG5pk6hqlp9aSBPYcjOlktquahGwGeA==} 1514 | engines: {node: '>=0.11'} 1515 | dev: true 1516 | 1517 | /dateformat/4.6.3: 1518 | resolution: {integrity: sha512-2P0p0pFGzHS5EMnhdxQi7aJN+iMheud0UhG4dlE1DLAlvL8JHjJJTX/CSm4JXwV0Ka5nGk3zC5mcb5bUQUxxMA==} 1519 | dev: true 1520 | 1521 | /debug/4.3.4: 1522 | resolution: {integrity: sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==} 1523 | engines: {node: '>=6.0'} 1524 | peerDependencies: 1525 | supports-color: '*' 1526 | peerDependenciesMeta: 1527 | supports-color: 1528 | optional: true 1529 | dependencies: 1530 | ms: 2.1.2 1531 | dev: true 1532 | 1533 | /debug/4.3.4_supports-color@8.1.1: 1534 | resolution: {integrity: sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==} 1535 | engines: {node: '>=6.0'} 1536 | peerDependencies: 1537 | supports-color: '*' 1538 | peerDependenciesMeta: 1539 | supports-color: 1540 | optional: true 1541 | dependencies: 1542 | ms: 2.1.2 1543 | supports-color: 8.1.1 1544 | 1545 | /debuglog/1.0.1: 1546 | resolution: {integrity: sha512-syBZ+rnAK3EgMsH2aYEOLUW7mZSY9Gb+0wUMCFsZvcmiz+HigA0LOcq/HoQqVuGG+EKykunc7QG2bzrponfaSw==} 1547 | dev: true 1548 | 1549 | /decompress-response/6.0.0: 1550 | resolution: {integrity: sha512-aW35yZM6Bb/4oJlZncMH2LCoZtJXTRxES17vE3hoRiowU2kWHaJKFkSBDnDR+cm9J+9QhXmREyIfv0pji9ejCQ==} 1551 | engines: {node: '>=10'} 1552 | dependencies: 1553 | mimic-response: 3.1.0 1554 | dev: true 1555 | 1556 | /deep-extend/0.6.0: 1557 | resolution: {integrity: sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA==} 1558 | engines: {node: '>=4.0.0'} 1559 | dev: true 1560 | 1561 | /deep-is/0.1.4: 1562 | resolution: {integrity: sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==} 1563 | dev: true 1564 | 1565 | /defaults/1.0.4: 1566 | resolution: {integrity: sha512-eFuaLoy/Rxalv2kr+lqMlUnrDWV+3j4pljOIJgLIhI058IQfWJ7vXhyEIHu+HtC738klGALYxOKDO0bQP3tg8A==} 1567 | dependencies: 1568 | clone: 1.0.4 1569 | dev: true 1570 | 1571 | /defer-to-connect/2.0.1: 1572 | resolution: {integrity: sha512-4tvttepXG1VaYGrRibk5EwJd1t4udunSOVMdLSAL6mId1ix438oPwPZMALY41FCijukO1L0twNcGsdzS7dHgDg==} 1573 | engines: {node: '>=10'} 1574 | dev: true 1575 | 1576 | /delayed-stream/1.0.0: 1577 | resolution: {integrity: sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==} 1578 | engines: {node: '>=0.4.0'} 1579 | dev: false 1580 | 1581 | /delegates/1.0.0: 1582 | resolution: {integrity: sha512-bd2L678uiWATM6m5Z1VzNCErI3jiGzt6HGY8OVICs40JQq/HALfbyNJmp0UDakEY4pMMaN0Ly5om/B1VI/+xfQ==} 1583 | dev: true 1584 | 1585 | /depd/2.0.0: 1586 | resolution: {integrity: sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==} 1587 | engines: {node: '>= 0.8'} 1588 | dev: true 1589 | 1590 | /deprecation/2.3.1: 1591 | resolution: {integrity: sha512-xmHIy4F3scKVwMsQ4WnVaS8bHOx0DmVwRywosKhaILI0ywMDWPtBSku2HNxRvF7jtwDRsoEwYQSfbxj8b7RlJQ==} 1592 | dev: true 1593 | 1594 | /dezalgo/1.0.4: 1595 | resolution: {integrity: sha512-rXSP0bf+5n0Qonsb+SVVfNfIsimO4HEtmnIpPHY8Q1UCzKlQrDMfdobr8nJOOsRgWCyMRqeSBQzmWUMq7zvVig==} 1596 | dependencies: 1597 | asap: 2.0.6 1598 | wrappy: 1.0.2 1599 | dev: true 1600 | 1601 | /diff/4.0.2: 1602 | resolution: {integrity: sha512-58lmxKSA4BNyLz+HHMUzlOEpg09FV+ev6ZMe3vJihgdxzgcwZ8VoEEPmALCZG9LmqfVoNMMKpttIYTVG6uDY7A==} 1603 | engines: {node: '>=0.3.1'} 1604 | dev: true 1605 | 1606 | /diff/5.1.0: 1607 | resolution: {integrity: sha512-D+mk+qE8VC/PAUrlAU34N+VfXev0ghe5ywmpqrawphmVZc1bEfn56uo9qpyGp1p4xpzOHkSW4ztBd6L7Xx4ACw==} 1608 | engines: {node: '>=0.3.1'} 1609 | dev: true 1610 | 1611 | /dir-glob/3.0.1: 1612 | resolution: {integrity: sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==} 1613 | engines: {node: '>=8'} 1614 | dependencies: 1615 | path-type: 4.0.0 1616 | 1617 | /doctrine/3.0.0: 1618 | resolution: {integrity: sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==} 1619 | engines: {node: '>=6.0.0'} 1620 | dependencies: 1621 | esutils: 2.0.3 1622 | dev: true 1623 | 1624 | /dotenv/16.0.3: 1625 | resolution: {integrity: sha512-7GO6HghkA5fYG9TYnNxi14/7K9f5occMlp3zXAuSxn7CKCxt9xbNWG7yF8hTCSUchlfWSe3uLmlPfigevRItzQ==} 1626 | engines: {node: '>=12'} 1627 | dev: false 1628 | 1629 | /ejs/3.1.8: 1630 | resolution: {integrity: sha512-/sXZeMlhS0ArkfX2Aw780gJzXSMPnKjtspYZv+f3NiKLlubezAHDU5+9xz6gd3/NhG3txQCo6xlglmTS+oTGEQ==} 1631 | engines: {node: '>=0.10.0'} 1632 | hasBin: true 1633 | dependencies: 1634 | jake: 10.8.5 1635 | 1636 | /emoji-regex/8.0.0: 1637 | resolution: {integrity: sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==} 1638 | 1639 | /encoding/0.1.13: 1640 | resolution: {integrity: sha512-ETBauow1T35Y/WZMkio9jiM0Z5xjHHmJ4XmjZOq1l/dXz3lr2sRn87nJy20RupqSh1F2m3HHPSp8ShIPQJrJ3A==} 1641 | requiresBuild: true 1642 | dependencies: 1643 | iconv-lite: 0.6.3 1644 | dev: true 1645 | optional: true 1646 | 1647 | /end-of-stream/1.4.4: 1648 | resolution: {integrity: sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==} 1649 | dependencies: 1650 | once: 1.4.0 1651 | dev: true 1652 | 1653 | /enquirer/2.3.6: 1654 | resolution: {integrity: sha512-yjNnPr315/FjS4zIsUxYguYUPP2e1NK4d7E7ZOLiyYCcbFBiTMyID+2wvm2w6+pZ/odMA7cRkjhsPbltwBOrLg==} 1655 | engines: {node: '>=8.6'} 1656 | dependencies: 1657 | ansi-colors: 4.1.3 1658 | dev: true 1659 | 1660 | /env-paths/2.2.1: 1661 | resolution: {integrity: sha512-+h1lkLKhZMTYjog1VEpJNG7NZJWcuc2DDk/qsqSTRRCOXiLjeQ1d1/udrUGhqMxUgAlwKNZ0cf2uqan5GLuS2A==} 1662 | engines: {node: '>=6'} 1663 | dev: true 1664 | 1665 | /err-code/2.0.3: 1666 | resolution: {integrity: sha512-2bmlRpNKBxT/CRmPOlyISQpNj+qSeYvcym/uT0Jx2bMOlKLtSy1ZmLuVxSEKKyor/N5yhvp/ZiG1oE3DEYMSFA==} 1667 | dev: true 1668 | 1669 | /error-ex/1.3.2: 1670 | resolution: {integrity: sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==} 1671 | dependencies: 1672 | is-arrayish: 0.2.1 1673 | dev: true 1674 | 1675 | /error/10.4.0: 1676 | resolution: {integrity: sha512-YxIFEJuhgcICugOUvRx5th0UM+ActZ9sjY0QJmeVwsQdvosZ7kYzc9QqS0Da3R5iUmgU5meGIxh0xBeZpMVeLw==} 1677 | dev: true 1678 | 1679 | /escalade/3.1.1: 1680 | resolution: {integrity: sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==} 1681 | engines: {node: '>=6'} 1682 | dev: true 1683 | 1684 | /escape-string-regexp/1.0.5: 1685 | resolution: {integrity: sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==} 1686 | engines: {node: '>=0.8.0'} 1687 | dev: true 1688 | 1689 | /escape-string-regexp/4.0.0: 1690 | resolution: {integrity: sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==} 1691 | engines: {node: '>=10'} 1692 | 1693 | /eslint-config-prettier/8.7.0_eslint@7.32.0: 1694 | resolution: {integrity: sha512-HHVXLSlVUhMSmyW4ZzEuvjpwqamgmlfkutD53cYXLikh4pt/modINRcCIApJ84czDxM4GZInwUrromsDdTImTA==} 1695 | hasBin: true 1696 | peerDependencies: 1697 | eslint: '>=7.0.0' 1698 | dependencies: 1699 | eslint: 7.32.0 1700 | dev: true 1701 | 1702 | /eslint-plugin-prettier/4.2.1_uiswlpulcu4wppk3zxswnxg2xq: 1703 | resolution: {integrity: sha512-f/0rXLXUt0oFYs8ra4w49wYZBG5GKZpAYsJSm6rnYL5uVDjd+zowwMwVZHnAjf4edNrKpCDYfXDgmRE/Ak7QyQ==} 1704 | engines: {node: '>=12.0.0'} 1705 | peerDependencies: 1706 | eslint: '>=7.28.0' 1707 | eslint-config-prettier: '*' 1708 | prettier: '>=2.0.0' 1709 | peerDependenciesMeta: 1710 | eslint-config-prettier: 1711 | optional: true 1712 | dependencies: 1713 | eslint: 7.32.0 1714 | eslint-config-prettier: 8.7.0_eslint@7.32.0 1715 | prettier: 2.8.4 1716 | prettier-linter-helpers: 1.0.0 1717 | dev: true 1718 | 1719 | /eslint-scope/5.1.1: 1720 | resolution: {integrity: sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==} 1721 | engines: {node: '>=8.0.0'} 1722 | dependencies: 1723 | esrecurse: 4.3.0 1724 | estraverse: 4.3.0 1725 | dev: true 1726 | 1727 | /eslint-utils/2.1.0: 1728 | resolution: {integrity: sha512-w94dQYoauyvlDc43XnGB8lU3Zt713vNChgt4EWwhXAP2XkBvndfxF0AgIqKOOasjPIPzj9JqgwkwbCYD0/V3Zg==} 1729 | engines: {node: '>=6'} 1730 | dependencies: 1731 | eslint-visitor-keys: 1.3.0 1732 | dev: true 1733 | 1734 | /eslint-utils/3.0.0_eslint@7.32.0: 1735 | resolution: {integrity: sha512-uuQC43IGctw68pJA1RgbQS8/NP7rch6Cwd4j3ZBtgo4/8Flj4eGE7ZYSZRN3iq5pVUv6GPdW5Z1RFleo84uLDA==} 1736 | engines: {node: ^10.0.0 || ^12.0.0 || >= 14.0.0} 1737 | peerDependencies: 1738 | eslint: '>=5' 1739 | dependencies: 1740 | eslint: 7.32.0 1741 | eslint-visitor-keys: 2.1.0 1742 | dev: true 1743 | 1744 | /eslint-visitor-keys/1.3.0: 1745 | resolution: {integrity: sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ==} 1746 | engines: {node: '>=4'} 1747 | dev: true 1748 | 1749 | /eslint-visitor-keys/2.1.0: 1750 | resolution: {integrity: sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw==} 1751 | engines: {node: '>=10'} 1752 | dev: true 1753 | 1754 | /eslint-visitor-keys/3.3.0: 1755 | resolution: {integrity: sha512-mQ+suqKJVyeuwGYHAdjMFqjCyfl8+Ldnxuyp3ldiMBFKkvytrXUZWaiPCEav8qDHKty44bD+qV1IP4T+w+xXRA==} 1756 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} 1757 | dev: true 1758 | 1759 | /eslint/7.32.0: 1760 | resolution: {integrity: sha512-VHZ8gX+EDfz+97jGcgyGCyRia/dPOd6Xh9yPv8Bl1+SoaIwD+a/vlrOmGRUyOYu7MwUhc7CxqeaDZU13S4+EpA==} 1761 | engines: {node: ^10.12.0 || >=12.0.0} 1762 | hasBin: true 1763 | dependencies: 1764 | '@babel/code-frame': 7.12.11 1765 | '@eslint/eslintrc': 0.4.3 1766 | '@humanwhocodes/config-array': 0.5.0 1767 | ajv: 6.12.6 1768 | chalk: 4.1.2 1769 | cross-spawn: 7.0.3 1770 | debug: 4.3.4 1771 | doctrine: 3.0.0 1772 | enquirer: 2.3.6 1773 | escape-string-regexp: 4.0.0 1774 | eslint-scope: 5.1.1 1775 | eslint-utils: 2.1.0 1776 | eslint-visitor-keys: 2.1.0 1777 | espree: 7.3.1 1778 | esquery: 1.5.0 1779 | esutils: 2.0.3 1780 | fast-deep-equal: 3.1.3 1781 | file-entry-cache: 6.0.1 1782 | functional-red-black-tree: 1.0.1 1783 | glob-parent: 5.1.2 1784 | globals: 13.20.0 1785 | ignore: 4.0.6 1786 | import-fresh: 3.3.0 1787 | imurmurhash: 0.1.4 1788 | is-glob: 4.0.3 1789 | js-yaml: 3.14.1 1790 | json-stable-stringify-without-jsonify: 1.0.1 1791 | levn: 0.4.1 1792 | lodash.merge: 4.6.2 1793 | minimatch: 3.1.2 1794 | natural-compare: 1.4.0 1795 | optionator: 0.9.1 1796 | progress: 2.0.3 1797 | regexpp: 3.2.0 1798 | semver: 7.3.8 1799 | strip-ansi: 6.0.1 1800 | strip-json-comments: 3.1.1 1801 | table: 6.8.1 1802 | text-table: 0.2.0 1803 | v8-compile-cache: 2.3.0 1804 | transitivePeerDependencies: 1805 | - supports-color 1806 | dev: true 1807 | 1808 | /espree/7.3.1: 1809 | resolution: {integrity: sha512-v3JCNCE64umkFpmkFGqzVKsOT0tN1Zr+ueqLZfpV1Ob8e+CEgPWa+OxCoGH3tnhimMKIaBm4m/vaRpJ/krRz2g==} 1810 | engines: {node: ^10.12.0 || >=12.0.0} 1811 | dependencies: 1812 | acorn: 7.4.1 1813 | acorn-jsx: 5.3.2_acorn@7.4.1 1814 | eslint-visitor-keys: 1.3.0 1815 | dev: true 1816 | 1817 | /esprima/4.0.1: 1818 | resolution: {integrity: sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==} 1819 | engines: {node: '>=4'} 1820 | hasBin: true 1821 | 1822 | /esquery/1.5.0: 1823 | resolution: {integrity: sha512-YQLXUplAwJgCydQ78IMJywZCceoqk1oH01OERdSAJc/7U2AylwjhSCLDEtqwg811idIS/9fIU5GjG73IgjKMVg==} 1824 | engines: {node: '>=0.10'} 1825 | dependencies: 1826 | estraverse: 5.3.0 1827 | dev: true 1828 | 1829 | /esrecurse/4.3.0: 1830 | resolution: {integrity: sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==} 1831 | engines: {node: '>=4.0'} 1832 | dependencies: 1833 | estraverse: 5.3.0 1834 | dev: true 1835 | 1836 | /estraverse/4.3.0: 1837 | resolution: {integrity: sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==} 1838 | engines: {node: '>=4.0'} 1839 | dev: true 1840 | 1841 | /estraverse/5.3.0: 1842 | resolution: {integrity: sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==} 1843 | engines: {node: '>=4.0'} 1844 | dev: true 1845 | 1846 | /estree-walker/2.0.2: 1847 | resolution: {integrity: sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==} 1848 | dev: true 1849 | 1850 | /esutils/2.0.3: 1851 | resolution: {integrity: sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==} 1852 | engines: {node: '>=0.10.0'} 1853 | dev: true 1854 | 1855 | /eventemitter3/4.0.7: 1856 | resolution: {integrity: sha512-8guHBZCwKnFhYdHr2ysuRWErTwhoN2X8XELRlrRwpmfeY2jjuUN4taQMsULKUVo1K4DvZl+0pgfyoysHxvmvEw==} 1857 | dev: true 1858 | 1859 | /events/1.1.1: 1860 | resolution: {integrity: sha512-kEcvvCBByWXGnZy6JUlgAp2gBIUjfCAV6P6TgT1/aaQKcmuAEC4OZTV1I4EWQLz2gxZw76atuVyvHhTxvi0Flw==} 1861 | engines: {node: '>=0.4.x'} 1862 | dev: true 1863 | 1864 | /execa/5.1.1: 1865 | resolution: {integrity: sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==} 1866 | engines: {node: '>=10'} 1867 | dependencies: 1868 | cross-spawn: 7.0.3 1869 | get-stream: 6.0.1 1870 | human-signals: 2.1.0 1871 | is-stream: 2.0.1 1872 | merge-stream: 2.0.0 1873 | npm-run-path: 4.0.1 1874 | onetime: 5.1.2 1875 | signal-exit: 3.0.7 1876 | strip-final-newline: 2.0.0 1877 | dev: true 1878 | 1879 | /external-editor/3.1.0: 1880 | resolution: {integrity: sha512-hMQ4CX1p1izmuLYyZqLMO/qGNw10wSv9QDCPfzXfyFrOaCSSoRfqE1Kf1s5an66J5JZC62NewG+mK49jOCtQew==} 1881 | engines: {node: '>=4'} 1882 | dependencies: 1883 | chardet: 0.7.0 1884 | iconv-lite: 0.4.24 1885 | tmp: 0.0.33 1886 | dev: true 1887 | 1888 | /fast-deep-equal/3.1.3: 1889 | resolution: {integrity: sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==} 1890 | dev: true 1891 | 1892 | /fast-diff/1.2.0: 1893 | resolution: {integrity: sha512-xJuoT5+L99XlZ8twedaRf6Ax2TgQVxvgZOYoPKqZufmJib0tL2tegPBOZb1pVNgIhlqDlA0eO0c3wBvQcmzx4w==} 1894 | dev: true 1895 | 1896 | /fast-glob/3.2.12: 1897 | resolution: {integrity: sha512-DVj4CQIYYow0BlaelwK1pHl5n5cRSJfM60UA0zK891sVInoPri2Ekj7+e1CT3/3qxXenpI+nBBmQAcJPJgaj4w==} 1898 | engines: {node: '>=8.6.0'} 1899 | dependencies: 1900 | '@nodelib/fs.stat': 2.0.5 1901 | '@nodelib/fs.walk': 1.2.8 1902 | glob-parent: 5.1.2 1903 | merge2: 1.4.1 1904 | micromatch: 4.0.5 1905 | 1906 | /fast-json-stable-stringify/2.1.0: 1907 | resolution: {integrity: sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==} 1908 | dev: true 1909 | 1910 | /fast-levenshtein/2.0.6: 1911 | resolution: {integrity: sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==} 1912 | dev: true 1913 | 1914 | /fast-levenshtein/3.0.0: 1915 | resolution: {integrity: sha512-hKKNajm46uNmTlhHSyZkmToAc56uZJwYq7yrciZjqOxnlfQwERDQJmHPUp7m1m9wx8vgOe8IaCKZ5Kv2k1DdCQ==} 1916 | dependencies: 1917 | fastest-levenshtein: 1.0.16 1918 | dev: true 1919 | 1920 | /fastest-levenshtein/1.0.16: 1921 | resolution: {integrity: sha512-eRnCtTTtGZFpQCwhJiUOuxPQWRXVKYDn0b2PeHfXL6/Zi53SLAzAHfVhVWK2AryC/WH05kGfxhFIPvTF0SXQzg==} 1922 | engines: {node: '>= 4.9.1'} 1923 | dev: true 1924 | 1925 | /fastq/1.15.0: 1926 | resolution: {integrity: sha512-wBrocU2LCXXa+lWBt8RoIRD89Fi8OdABODa/kEnyeyjS5aZO5/GNvI5sEINADqP/h8M29UHTHUb53sUu5Ihqdw==} 1927 | dependencies: 1928 | reusify: 1.0.4 1929 | 1930 | /figures/3.2.0: 1931 | resolution: {integrity: sha512-yaduQFRKLXYOGgEn6AZau90j3ggSOyiqXU0F9JZfeXYhNa+Jk4X+s45A2zg5jns87GAFa34BBm2kXw4XpNcbdg==} 1932 | engines: {node: '>=8'} 1933 | dependencies: 1934 | escape-string-regexp: 1.0.5 1935 | dev: true 1936 | 1937 | /file-entry-cache/6.0.1: 1938 | resolution: {integrity: sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==} 1939 | engines: {node: ^10.12.0 || >=12.0.0} 1940 | dependencies: 1941 | flat-cache: 3.0.4 1942 | dev: true 1943 | 1944 | /filelist/1.0.4: 1945 | resolution: {integrity: sha512-w1cEuf3S+DrLCQL7ET6kz+gmlJdbq9J7yXCSjK/OZCPA+qEN1WyF4ZAf0YYJa4/shHJra2t/d/r8SV4Ji+x+8Q==} 1946 | dependencies: 1947 | minimatch: 5.1.6 1948 | 1949 | /fill-range/7.0.1: 1950 | resolution: {integrity: sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==} 1951 | engines: {node: '>=8'} 1952 | dependencies: 1953 | to-regex-range: 5.0.1 1954 | 1955 | /find-up/4.1.0: 1956 | resolution: {integrity: sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==} 1957 | engines: {node: '>=8'} 1958 | dependencies: 1959 | locate-path: 5.0.0 1960 | path-exists: 4.0.0 1961 | dev: true 1962 | 1963 | /find-up/5.0.0: 1964 | resolution: {integrity: sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==} 1965 | engines: {node: '>=10'} 1966 | dependencies: 1967 | locate-path: 6.0.0 1968 | path-exists: 4.0.0 1969 | dev: true 1970 | 1971 | /find-yarn-workspace-root/2.0.0: 1972 | resolution: {integrity: sha512-1IMnbjt4KzsQfnhnzNd8wUEgXZ44IzZaZmnLYx7D5FZlaHt2gW20Cri8Q+E/t5tIj4+epTBub+2Zxu/vNILzqQ==} 1973 | dependencies: 1974 | micromatch: 4.0.5 1975 | dev: true 1976 | 1977 | /find-yarn-workspace-root2/1.2.16: 1978 | resolution: {integrity: sha512-hr6hb1w8ePMpPVUK39S4RlwJzi+xPLuVuG8XlwXU3KD5Yn3qgBWVfy3AzNlDhWvE1EORCE65/Qm26rFQt3VLVA==} 1979 | dependencies: 1980 | micromatch: 4.0.5 1981 | pkg-dir: 4.2.0 1982 | dev: true 1983 | 1984 | /first-chunk-stream/2.0.0: 1985 | resolution: {integrity: sha512-X8Z+b/0L4lToKYq+lwnKqi9X/Zek0NibLpsJgVsSxpoYq7JtiCtRb5HqKVEjEw/qAb/4AKKRLOwwKHlWNpm2Eg==} 1986 | engines: {node: '>=0.10.0'} 1987 | dependencies: 1988 | readable-stream: 2.3.8 1989 | dev: true 1990 | 1991 | /flat-cache/3.0.4: 1992 | resolution: {integrity: sha512-dm9s5Pw7Jc0GvMYbshN6zchCA9RgQlzzEZX3vylR9IqFfS8XciblUXOKfW6SiuJ0e13eDYZoZV5wdrev7P3Nwg==} 1993 | engines: {node: ^10.12.0 || >=12.0.0} 1994 | dependencies: 1995 | flatted: 3.2.7 1996 | rimraf: 3.0.2 1997 | dev: true 1998 | 1999 | /flatted/3.2.7: 2000 | resolution: {integrity: sha512-5nqDSxl8nn5BSNxyR3n4I6eDmbolI6WT+QqR547RwxQapgjQBmtktdP+HTBb/a/zLsbzERTONyUB5pefh5TtjQ==} 2001 | dev: true 2002 | 2003 | /follow-redirects/1.15.2: 2004 | resolution: {integrity: sha512-VQLG33o04KaQ8uYi2tVNbdrWp1QWxNNea+nmIB4EVM28v0hmP17z7aG1+wAkNzVq4KeXTq3221ye5qTJP91JwA==} 2005 | engines: {node: '>=4.0'} 2006 | peerDependencies: 2007 | debug: '*' 2008 | peerDependenciesMeta: 2009 | debug: 2010 | optional: true 2011 | dev: false 2012 | 2013 | /for-each/0.3.3: 2014 | resolution: {integrity: sha512-jqYfLp7mo9vIyQf8ykW2v7A+2N4QjeCeI5+Dz9XraiO1ign81wjiH7Fb9vSOWvQfNtmSa4H2RoQTrrXivdUZmw==} 2015 | dependencies: 2016 | is-callable: 1.2.7 2017 | dev: true 2018 | 2019 | /form-data/4.0.0: 2020 | resolution: {integrity: sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww==} 2021 | engines: {node: '>= 6'} 2022 | dependencies: 2023 | asynckit: 0.4.0 2024 | combined-stream: 1.0.8 2025 | mime-types: 2.1.35 2026 | dev: false 2027 | 2028 | /fs-extra/8.1.0: 2029 | resolution: {integrity: sha512-yhlQgA6mnOJUKOsRUFsgJdQCvkKhcz8tlZG5HBQfReYZy46OwLcY+Zia0mtdHsOo9y/hP+CxMN0TU9QxoOtG4g==} 2030 | engines: {node: '>=6 <7 || >=8'} 2031 | dependencies: 2032 | graceful-fs: 4.2.10 2033 | jsonfile: 4.0.0 2034 | universalify: 0.1.2 2035 | dev: true 2036 | 2037 | /fs-extra/9.1.0: 2038 | resolution: {integrity: sha512-hcg3ZmepS30/7BSFqRvoo3DOMQu7IjqxO5nCDt+zM9XWjb33Wg7ziNT+Qvqbuc3+gWpzO02JubVyk2G4Zvo1OQ==} 2039 | engines: {node: '>=10'} 2040 | dependencies: 2041 | at-least-node: 1.0.0 2042 | graceful-fs: 4.2.10 2043 | jsonfile: 6.1.0 2044 | universalify: 2.0.0 2045 | 2046 | /fs-minipass/2.1.0: 2047 | resolution: {integrity: sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg==} 2048 | engines: {node: '>= 8'} 2049 | dependencies: 2050 | minipass: 3.3.6 2051 | dev: true 2052 | 2053 | /fs.realpath/1.0.0: 2054 | resolution: {integrity: sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==} 2055 | dev: true 2056 | 2057 | /function-bind/1.1.1: 2058 | resolution: {integrity: sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==} 2059 | dev: true 2060 | 2061 | /functional-red-black-tree/1.0.1: 2062 | resolution: {integrity: sha512-dsKNQNdj6xA3T+QlADDA7mOSlX0qiMINjn0cgr+eGHGsbSHzTabcIogz2+p/iqP1Xs6EP/sS2SbqH+brGTbq0g==} 2063 | dev: true 2064 | 2065 | /gauge/3.0.2: 2066 | resolution: {integrity: sha512-+5J6MS/5XksCuXq++uFRsnUd7Ovu1XenbeuIuNRJxYWjgQbPuFhT14lAvsWfqfAmnwluf1OwMjz39HjfLPci0Q==} 2067 | engines: {node: '>=10'} 2068 | dependencies: 2069 | aproba: 2.0.0 2070 | color-support: 1.1.3 2071 | console-control-strings: 1.1.0 2072 | has-unicode: 2.0.1 2073 | object-assign: 4.1.1 2074 | signal-exit: 3.0.7 2075 | string-width: 4.2.3 2076 | strip-ansi: 6.0.1 2077 | wide-align: 1.1.5 2078 | dev: true 2079 | 2080 | /gauge/4.0.4: 2081 | resolution: {integrity: sha512-f9m+BEN5jkg6a0fZjleidjN51VE1X+mPFQ2DJ0uv1V39oCLCbsGe6yjbBnp7eK7z/+GAon99a3nHuqbuuthyPg==} 2082 | engines: {node: ^12.13.0 || ^14.15.0 || >=16.0.0} 2083 | dependencies: 2084 | aproba: 2.0.0 2085 | color-support: 1.1.3 2086 | console-control-strings: 1.1.0 2087 | has-unicode: 2.0.1 2088 | signal-exit: 3.0.7 2089 | string-width: 4.2.3 2090 | strip-ansi: 6.0.1 2091 | wide-align: 1.1.5 2092 | dev: true 2093 | 2094 | /get-caller-file/2.0.5: 2095 | resolution: {integrity: sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==} 2096 | engines: {node: 6.* || 8.* || >= 10.*} 2097 | dev: true 2098 | 2099 | /get-intrinsic/1.2.0: 2100 | resolution: {integrity: sha512-L049y6nFOuom5wGyRc3/gdTLO94dySVKRACj1RmJZBQXlbTMhtNIgkWkUHq+jYmZvKf14EW1EoJnnjbmoHij0Q==} 2101 | dependencies: 2102 | function-bind: 1.1.1 2103 | has: 1.0.3 2104 | has-symbols: 1.0.3 2105 | dev: true 2106 | 2107 | /get-package-type/0.1.0: 2108 | resolution: {integrity: sha512-pjzuKtY64GYfWizNAJ0fr9VqttZkNiK2iS430LtIHzjBEr6bX8Am2zm4sW4Ro5wjWW5cAlRL1qAMTcXbjNAO2Q==} 2109 | engines: {node: '>=8.0.0'} 2110 | 2111 | /get-stdin/4.0.1: 2112 | resolution: {integrity: sha512-F5aQMywwJ2n85s4hJPTT9RPxGmubonuB10MNYo17/xph174n2MIR33HRguhzVag10O/npM7SPk73LMZNP+FaWw==} 2113 | engines: {node: '>=0.10.0'} 2114 | dev: true 2115 | 2116 | /get-stream/5.2.0: 2117 | resolution: {integrity: sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA==} 2118 | engines: {node: '>=8'} 2119 | dependencies: 2120 | pump: 3.0.0 2121 | dev: true 2122 | 2123 | /get-stream/6.0.1: 2124 | resolution: {integrity: sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==} 2125 | engines: {node: '>=10'} 2126 | dev: true 2127 | 2128 | /github-slugger/1.5.0: 2129 | resolution: {integrity: sha512-wIh+gKBI9Nshz2o46B0B3f5k/W+WI9ZAv6y5Dn5WJ5SK1t0TnDimB4WE5rmTD05ZAIn8HALCZVmCsvj0w0v0lw==} 2130 | dev: true 2131 | 2132 | /github-username/6.0.0: 2133 | resolution: {integrity: sha512-7TTrRjxblSI5l6adk9zd+cV5d6i1OrJSo3Vr9xdGqFLBQo0mz5P9eIfKCDJ7eekVGGFLbce0qbPSnktXV2BjDQ==} 2134 | engines: {node: '>=10'} 2135 | dependencies: 2136 | '@octokit/rest': 18.12.0 2137 | transitivePeerDependencies: 2138 | - encoding 2139 | dev: true 2140 | 2141 | /glob-parent/5.1.2: 2142 | resolution: {integrity: sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==} 2143 | engines: {node: '>= 6'} 2144 | dependencies: 2145 | is-glob: 4.0.3 2146 | 2147 | /glob/7.2.3: 2148 | resolution: {integrity: sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==} 2149 | dependencies: 2150 | fs.realpath: 1.0.0 2151 | inflight: 1.0.6 2152 | inherits: 2.0.4 2153 | minimatch: 3.1.2 2154 | once: 1.4.0 2155 | path-is-absolute: 1.0.1 2156 | dev: true 2157 | 2158 | /glob/8.1.0: 2159 | resolution: {integrity: sha512-r8hpEjiQEYlF2QU0df3dS+nxxSIreXQS1qRhMJM0Q5NDdR386C7jb7Hwwod8Fgiuex+k0GFjgft18yvxm5XoCQ==} 2160 | engines: {node: '>=12'} 2161 | dependencies: 2162 | fs.realpath: 1.0.0 2163 | inflight: 1.0.6 2164 | inherits: 2.0.4 2165 | minimatch: 5.1.6 2166 | once: 1.4.0 2167 | dev: true 2168 | 2169 | /globals/11.12.0: 2170 | resolution: {integrity: sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==} 2171 | engines: {node: '>=4'} 2172 | dev: true 2173 | 2174 | /globals/13.20.0: 2175 | resolution: {integrity: sha512-Qg5QtVkCy/kv3FUSlu4ukeZDVf9ee0iXLAUYX13gbR17bnejFTzr4iS9bY7kwCf1NztRNm1t91fjOiyx4CSwPQ==} 2176 | engines: {node: '>=8'} 2177 | dependencies: 2178 | type-fest: 0.20.2 2179 | dev: true 2180 | 2181 | /globby/11.1.0: 2182 | resolution: {integrity: sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==} 2183 | engines: {node: '>=10'} 2184 | dependencies: 2185 | array-union: 2.1.0 2186 | dir-glob: 3.0.1 2187 | fast-glob: 3.2.12 2188 | ignore: 5.2.4 2189 | merge2: 1.4.1 2190 | slash: 3.0.0 2191 | 2192 | /gopd/1.0.1: 2193 | resolution: {integrity: sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA==} 2194 | dependencies: 2195 | get-intrinsic: 1.2.0 2196 | dev: true 2197 | 2198 | /got/11.8.6: 2199 | resolution: {integrity: sha512-6tfZ91bOr7bOXnK7PRDCGBLa1H4U080YHNaAQ2KsMGlLEzRbk44nsZF2E1IeRc3vtJHPVbKCYgdFbaGO2ljd8g==} 2200 | engines: {node: '>=10.19.0'} 2201 | dependencies: 2202 | '@sindresorhus/is': 4.6.0 2203 | '@szmarczak/http-timer': 4.0.6 2204 | '@types/cacheable-request': 6.0.3 2205 | '@types/responselike': 1.0.0 2206 | cacheable-lookup: 5.0.4 2207 | cacheable-request: 7.0.2 2208 | decompress-response: 6.0.0 2209 | http2-wrapper: 1.0.3 2210 | lowercase-keys: 2.0.0 2211 | p-cancelable: 2.1.1 2212 | responselike: 2.0.1 2213 | dev: true 2214 | 2215 | /graceful-fs/4.2.10: 2216 | resolution: {integrity: sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA==} 2217 | 2218 | /grapheme-splitter/1.0.4: 2219 | resolution: {integrity: sha512-bzh50DW9kTPM00T8y4o8vQg89Di9oLJVLW/KaOGIXJWP/iqCN6WKYkbNOF04vFLJhwcpYUh9ydh/+5vpOqV4YQ==} 2220 | dev: true 2221 | 2222 | /grouped-queue/2.0.0: 2223 | resolution: {integrity: sha512-/PiFUa7WIsl48dUeCvhIHnwNmAAzlI/eHoJl0vu3nsFA366JleY7Ff8EVTplZu5kO0MIdZjKTTnzItL61ahbnw==} 2224 | engines: {node: '>=8.0.0'} 2225 | dev: true 2226 | 2227 | /has-ansi/2.0.0: 2228 | resolution: {integrity: sha512-C8vBJ8DwUCx19vhm7urhTuUsr4/IyP6l4VzNQDv+ryHQObW3TTTp9yB68WpYgRe2bbaGuZ/se74IqFeVnMnLZg==} 2229 | engines: {node: '>=0.10.0'} 2230 | dependencies: 2231 | ansi-regex: 2.1.1 2232 | dev: true 2233 | 2234 | /has-flag/3.0.0: 2235 | resolution: {integrity: sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==} 2236 | engines: {node: '>=4'} 2237 | dev: true 2238 | 2239 | /has-flag/4.0.0: 2240 | resolution: {integrity: sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==} 2241 | engines: {node: '>=8'} 2242 | 2243 | /has-symbols/1.0.3: 2244 | resolution: {integrity: sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==} 2245 | engines: {node: '>= 0.4'} 2246 | dev: true 2247 | 2248 | /has-tostringtag/1.0.0: 2249 | resolution: {integrity: sha512-kFjcSNhnlGV1kyoGk7OXKSawH5JOb/LzUc5w9B02hOTO0dfFRjbHQKvg1d6cf3HbeUmtU9VbbV3qzZ2Teh97WQ==} 2250 | engines: {node: '>= 0.4'} 2251 | dependencies: 2252 | has-symbols: 1.0.3 2253 | dev: true 2254 | 2255 | /has-unicode/2.0.1: 2256 | resolution: {integrity: sha512-8Rf9Y83NBReMnx0gFzA8JImQACstCYWUplepDa9xprwwtmgEZUF0h/i5xSA625zB/I37EtrswSST6OXxwaaIJQ==} 2257 | dev: true 2258 | 2259 | /has/1.0.3: 2260 | resolution: {integrity: sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==} 2261 | engines: {node: '>= 0.4.0'} 2262 | dependencies: 2263 | function-bind: 1.1.1 2264 | dev: true 2265 | 2266 | /hosted-git-info/2.8.9: 2267 | resolution: {integrity: sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==} 2268 | dev: true 2269 | 2270 | /hosted-git-info/4.1.0: 2271 | resolution: {integrity: sha512-kyCuEOWjJqZuDbRHzL8V93NzQhwIB71oFWSyzVo+KPZI+pnQPPxucdkrOZvkLRnrf5URsQM+IJ09Dw29cRALIA==} 2272 | engines: {node: '>=10'} 2273 | dependencies: 2274 | lru-cache: 6.0.0 2275 | dev: true 2276 | 2277 | /http-cache-semantics/4.1.1: 2278 | resolution: {integrity: sha512-er295DKPVsV82j5kw1Gjt+ADA/XYHsajl82cGNQG2eyoPkvgUhX+nDIyelzhIWbbsXP39EHcI6l5tYs2FYqYXQ==} 2279 | dev: true 2280 | 2281 | /http-call/5.3.0: 2282 | resolution: {integrity: sha512-ahwimsC23ICE4kPl9xTBjKB4inbRaeLyZeRunC/1Jy/Z6X8tv22MEAjK+KBOMSVLaqXPTTmd8638waVIKLGx2w==} 2283 | engines: {node: '>=8.0.0'} 2284 | dependencies: 2285 | content-type: 1.0.5 2286 | debug: 4.3.4 2287 | is-retry-allowed: 1.2.0 2288 | is-stream: 2.0.1 2289 | parse-json: 4.0.0 2290 | tunnel-agent: 0.6.0 2291 | transitivePeerDependencies: 2292 | - supports-color 2293 | dev: true 2294 | 2295 | /http-proxy-agent/4.0.1: 2296 | resolution: {integrity: sha512-k0zdNgqWTGA6aeIRVpvfVob4fL52dTfaehylg0Y4UvSySvOq/Y+BOyPrgpUrA7HylqvU8vIZGsRuXmspskV0Tg==} 2297 | engines: {node: '>= 6'} 2298 | dependencies: 2299 | '@tootallnate/once': 1.1.2 2300 | agent-base: 6.0.2 2301 | debug: 4.3.4 2302 | transitivePeerDependencies: 2303 | - supports-color 2304 | dev: true 2305 | 2306 | /http-proxy-agent/5.0.0: 2307 | resolution: {integrity: sha512-n2hY8YdoRE1i7r6M0w9DIw5GgZN0G25P8zLCRQ8rjXtTU3vsNFBI/vWK/UIeE6g5MUUz6avwAPXmL6Fy9D/90w==} 2308 | engines: {node: '>= 6'} 2309 | dependencies: 2310 | '@tootallnate/once': 2.0.0 2311 | agent-base: 6.0.2 2312 | debug: 4.3.4 2313 | transitivePeerDependencies: 2314 | - supports-color 2315 | dev: true 2316 | 2317 | /http2-wrapper/1.0.3: 2318 | resolution: {integrity: sha512-V+23sDMr12Wnz7iTcDeJr3O6AIxlnvT/bmaAAAP/Xda35C90p9599p0F1eHR/N1KILWSoWVAiOMFjBBXaXSMxg==} 2319 | engines: {node: '>=10.19.0'} 2320 | dependencies: 2321 | quick-lru: 5.1.1 2322 | resolve-alpn: 1.2.1 2323 | dev: true 2324 | 2325 | /https-proxy-agent/5.0.1: 2326 | resolution: {integrity: sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA==} 2327 | engines: {node: '>= 6'} 2328 | dependencies: 2329 | agent-base: 6.0.2 2330 | debug: 4.3.4 2331 | transitivePeerDependencies: 2332 | - supports-color 2333 | dev: true 2334 | 2335 | /human-signals/2.1.0: 2336 | resolution: {integrity: sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw==} 2337 | engines: {node: '>=10.17.0'} 2338 | dev: true 2339 | 2340 | /humanize-ms/1.2.1: 2341 | resolution: {integrity: sha512-Fl70vYtsAFb/C06PTS9dZBo7ihau+Tu/DNCk/OyHhea07S+aeMWpFFkUaXRa8fI+ScZbEI8dfSxwY7gxZ9SAVQ==} 2342 | dependencies: 2343 | ms: 2.1.3 2344 | dev: true 2345 | 2346 | /hyperlinker/1.0.0: 2347 | resolution: {integrity: sha512-Ty8UblRWFEcfSuIaajM34LdPXIhbs1ajEX/BBPv24J+enSVaEVY63xQ6lTO9VRYS5LAoghIG0IDJ+p+IPzKUQQ==} 2348 | engines: {node: '>=4'} 2349 | 2350 | /iconv-lite/0.4.24: 2351 | resolution: {integrity: sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==} 2352 | engines: {node: '>=0.10.0'} 2353 | dependencies: 2354 | safer-buffer: 2.1.2 2355 | dev: true 2356 | 2357 | /iconv-lite/0.6.3: 2358 | resolution: {integrity: sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==} 2359 | engines: {node: '>=0.10.0'} 2360 | dependencies: 2361 | safer-buffer: 2.1.2 2362 | dev: true 2363 | optional: true 2364 | 2365 | /ieee754/1.1.13: 2366 | resolution: {integrity: sha512-4vf7I2LYV/HaWerSo3XmlMkp5eZ83i+/CDluXi/IGTs/O1sejBNhTtnxzmRZfvOUqj7lZjqHkeTvpgSFDlWZTg==} 2367 | dev: true 2368 | 2369 | /ieee754/1.2.1: 2370 | resolution: {integrity: sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==} 2371 | dev: true 2372 | 2373 | /ignore-walk/4.0.1: 2374 | resolution: {integrity: sha512-rzDQLaW4jQbh2YrOFlJdCtX8qgJTehFRYiUB2r1osqTeDzV/3+Jh8fz1oAPzUThf3iku8Ds4IDqawI5d8mUiQw==} 2375 | engines: {node: '>=10'} 2376 | dependencies: 2377 | minimatch: 3.1.2 2378 | dev: true 2379 | 2380 | /ignore/4.0.6: 2381 | resolution: {integrity: sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg==} 2382 | engines: {node: '>= 4'} 2383 | dev: true 2384 | 2385 | /ignore/5.2.4: 2386 | resolution: {integrity: sha512-MAb38BcSbH0eHNBxn7ql2NH/kX33OkB3lZ1BNdh7ENeRChHTYsTvWrMubiIAMNS2llXEEgZ1MUOBtXChP3kaFQ==} 2387 | engines: {node: '>= 4'} 2388 | 2389 | /import-fresh/3.3.0: 2390 | resolution: {integrity: sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==} 2391 | engines: {node: '>=6'} 2392 | dependencies: 2393 | parent-module: 1.0.1 2394 | resolve-from: 4.0.0 2395 | dev: true 2396 | 2397 | /imurmurhash/0.1.4: 2398 | resolution: {integrity: sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==} 2399 | engines: {node: '>=0.8.19'} 2400 | dev: true 2401 | 2402 | /indent-string/4.0.0: 2403 | resolution: {integrity: sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==} 2404 | engines: {node: '>=8'} 2405 | 2406 | /infer-owner/1.0.4: 2407 | resolution: {integrity: sha512-IClj+Xz94+d7irH5qRyfJonOdfTzuDaifE6ZPWfx0N0+/ATZCbuTPq2prFl526urkQd90WyUKIh1DfBQ2hMz9A==} 2408 | dev: true 2409 | 2410 | /inflight/1.0.6: 2411 | resolution: {integrity: sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==} 2412 | dependencies: 2413 | once: 1.4.0 2414 | wrappy: 1.0.2 2415 | dev: true 2416 | 2417 | /inherits/2.0.4: 2418 | resolution: {integrity: sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==} 2419 | dev: true 2420 | 2421 | /inquirer/8.2.5: 2422 | resolution: {integrity: sha512-QAgPDQMEgrDssk1XiwwHoOGYF9BAbUcc1+j+FhEvaOt8/cKRqyLn0U5qA6F74fGhTMGxf92pOvPBeh29jQJDTQ==} 2423 | engines: {node: '>=12.0.0'} 2424 | dependencies: 2425 | ansi-escapes: 4.3.2 2426 | chalk: 4.1.2 2427 | cli-cursor: 3.1.0 2428 | cli-width: 3.0.0 2429 | external-editor: 3.1.0 2430 | figures: 3.2.0 2431 | lodash: 4.17.21 2432 | mute-stream: 0.0.8 2433 | ora: 5.4.1 2434 | run-async: 2.4.1 2435 | rxjs: 7.8.0 2436 | string-width: 4.2.3 2437 | strip-ansi: 6.0.1 2438 | through: 2.3.8 2439 | wrap-ansi: 7.0.0 2440 | dev: true 2441 | 2442 | /interpret/1.4.0: 2443 | resolution: {integrity: sha512-agE4QfB2Lkp9uICn7BAqoscw4SZP9kTE2hxiFI3jBPmXJfdqiahTbUuKGsMoN2GtqL9AxhYioAcVvgsb1HvRbA==} 2444 | engines: {node: '>= 0.10'} 2445 | dev: true 2446 | 2447 | /ip/2.0.0: 2448 | resolution: {integrity: sha512-WKa+XuLG1A1R0UWhl2+1XQSi+fZWMsYKffMZTTYsiZaUD8k2yDAj5atimTUD2TZkyCkNEeYE5NhFZmupOGtjYQ==} 2449 | dev: true 2450 | 2451 | /is-arguments/1.1.1: 2452 | resolution: {integrity: sha512-8Q7EARjzEnKpt/PCD7e1cgUS0a6X8u5tdSiMqXhojOdoV9TsMsiO+9VLC5vAmO8N7/GmXn7yjR8qnA6bVAEzfA==} 2453 | engines: {node: '>= 0.4'} 2454 | dependencies: 2455 | call-bind: 1.0.2 2456 | has-tostringtag: 1.0.0 2457 | dev: true 2458 | 2459 | /is-arrayish/0.2.1: 2460 | resolution: {integrity: sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==} 2461 | dev: true 2462 | 2463 | /is-callable/1.2.7: 2464 | resolution: {integrity: sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==} 2465 | engines: {node: '>= 0.4'} 2466 | dev: true 2467 | 2468 | /is-core-module/2.11.0: 2469 | resolution: {integrity: sha512-RRjxlvLDkD1YJwDbroBHMb+cukurkDWNyHx7D3oNB5x9rb5ogcksMC5wHCadcXoo67gVr/+3GFySh3134zi6rw==} 2470 | dependencies: 2471 | has: 1.0.3 2472 | dev: true 2473 | 2474 | /is-docker/2.2.1: 2475 | resolution: {integrity: sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ==} 2476 | engines: {node: '>=8'} 2477 | hasBin: true 2478 | 2479 | /is-extglob/2.1.1: 2480 | resolution: {integrity: sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==} 2481 | engines: {node: '>=0.10.0'} 2482 | 2483 | /is-fullwidth-code-point/1.0.0: 2484 | resolution: {integrity: sha512-1pqUqRjkhPJ9miNq9SwMfdvi6lBJcd6eFxvfaivQhaH3SgisfiuudvFntdKOmxuee/77l+FPjKrQjWvmPjWrRw==} 2485 | engines: {node: '>=0.10.0'} 2486 | dependencies: 2487 | number-is-nan: 1.0.1 2488 | dev: true 2489 | 2490 | /is-fullwidth-code-point/2.0.0: 2491 | resolution: {integrity: sha512-VHskAKYM8RfSFXwee5t5cbN5PZeq1Wrh6qd5bkyiXIf6UQcN6w/A0eXM9r6t8d+GYOh+o6ZhiEnb88LN/Y8m2w==} 2492 | engines: {node: '>=4'} 2493 | dev: true 2494 | 2495 | /is-fullwidth-code-point/3.0.0: 2496 | resolution: {integrity: sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==} 2497 | engines: {node: '>=8'} 2498 | 2499 | /is-generator-function/1.0.10: 2500 | resolution: {integrity: sha512-jsEjy9l3yiXEQ+PsXdmBwEPcOxaXWLspKdplFUVI9vq1iZgIekeC0L167qeu86czQaxed3q/Uzuw0swL0irL8A==} 2501 | engines: {node: '>= 0.4'} 2502 | dependencies: 2503 | has-tostringtag: 1.0.0 2504 | dev: true 2505 | 2506 | /is-glob/4.0.3: 2507 | resolution: {integrity: sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==} 2508 | engines: {node: '>=0.10.0'} 2509 | dependencies: 2510 | is-extglob: 2.1.1 2511 | 2512 | /is-interactive/1.0.0: 2513 | resolution: {integrity: sha512-2HvIEKRoqS62guEC+qBjpvRubdX910WCMuJTZ+I9yvqKU2/12eSL549HMwtabb4oupdj2sMP50k+XJfB/8JE6w==} 2514 | engines: {node: '>=8'} 2515 | dev: true 2516 | 2517 | /is-lambda/1.0.1: 2518 | resolution: {integrity: sha512-z7CMFGNrENq5iFB9Bqo64Xk6Y9sg+epq1myIcdHaGnbMTYOxvzsEtdYqQUylB7LxfkvgrrjP32T6Ywciio9UIQ==} 2519 | dev: true 2520 | 2521 | /is-number/7.0.0: 2522 | resolution: {integrity: sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==} 2523 | engines: {node: '>=0.12.0'} 2524 | 2525 | /is-plain-obj/2.1.0: 2526 | resolution: {integrity: sha512-YWnfyRwxL/+SsrWYfOpUtz5b3YD+nyfkHvjbcanzk8zgyO4ASD67uVMRt8k5bM4lLMDnXfriRhOpemw+NfT1eA==} 2527 | engines: {node: '>=8'} 2528 | dev: true 2529 | 2530 | /is-plain-object/5.0.0: 2531 | resolution: {integrity: sha512-VRSzKkbMm5jMDoKLbltAkFQ5Qr7VDiTFGXxYFXXowVj387GeGNOCsOH6Msy00SGZ3Fp84b1Naa1psqgcCIEP5Q==} 2532 | engines: {node: '>=0.10.0'} 2533 | dev: true 2534 | 2535 | /is-retry-allowed/1.2.0: 2536 | resolution: {integrity: sha512-RUbUeKwvm3XG2VYamhJL1xFktgjvPzL0Hq8C+6yrWIswDy3BIXGqCxhxkc30N9jqK311gVU137K8Ei55/zVJRg==} 2537 | engines: {node: '>=0.10.0'} 2538 | dev: true 2539 | 2540 | /is-scoped/2.1.0: 2541 | resolution: {integrity: sha512-Cv4OpPTHAK9kHYzkzCrof3VJh7H/PrG2MBUMvvJebaaUMbqhm0YAtXnvh0I3Hnj2tMZWwrRROWLSgfJrKqWmlQ==} 2542 | engines: {node: '>=8'} 2543 | dependencies: 2544 | scoped-regex: 2.1.0 2545 | dev: true 2546 | 2547 | /is-stream/2.0.1: 2548 | resolution: {integrity: sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==} 2549 | engines: {node: '>=8'} 2550 | dev: true 2551 | 2552 | /is-typed-array/1.1.10: 2553 | resolution: {integrity: sha512-PJqgEHiWZvMpaFZ3uTc8kHPM4+4ADTlDniuQL7cU/UDA0Ql7F70yGfHph3cLNe+c9toaigv+DFzTJKhc2CtO6A==} 2554 | engines: {node: '>= 0.4'} 2555 | dependencies: 2556 | available-typed-arrays: 1.0.5 2557 | call-bind: 1.0.2 2558 | for-each: 0.3.3 2559 | gopd: 1.0.1 2560 | has-tostringtag: 1.0.0 2561 | dev: true 2562 | 2563 | /is-unicode-supported/0.1.0: 2564 | resolution: {integrity: sha512-knxG2q4UC3u8stRGyAVJCOdxFmv5DZiRcdlIaAQXAbSfJya+OhopNotLQrstBhququ4ZpuKbDc/8S6mgXgPFPw==} 2565 | engines: {node: '>=10'} 2566 | dev: true 2567 | 2568 | /is-utf8/0.2.1: 2569 | resolution: {integrity: sha512-rMYPYvCzsXywIsldgLaSoPlw5PfoB/ssr7hY4pLfcodrA5M/eArza1a9VmTiNIBNMjOGr1Ow9mTyU2o69U6U9Q==} 2570 | dev: true 2571 | 2572 | /is-wsl/2.2.0: 2573 | resolution: {integrity: sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww==} 2574 | engines: {node: '>=8'} 2575 | dependencies: 2576 | is-docker: 2.2.1 2577 | 2578 | /isarray/1.0.0: 2579 | resolution: {integrity: sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==} 2580 | dev: true 2581 | 2582 | /isbinaryfile/4.0.10: 2583 | resolution: {integrity: sha512-iHrqe5shvBUcFbmZq9zOQHBoeOhZJu6RQGrDpBgenUm/Am+F3JM2MgQj+rK3Z601fzrL5gLZWtAPH2OBaSVcyw==} 2584 | engines: {node: '>= 8.0.0'} 2585 | dev: true 2586 | 2587 | /isbinaryfile/5.0.0: 2588 | resolution: {integrity: sha512-UDdnyGvMajJUWCkib7Cei/dvyJrrvo4FIrsvSFWdPpXSUorzXrDJ0S+X5Q4ZlasfPjca4yqCNNsjbCeiy8FFeg==} 2589 | engines: {node: '>= 14.0.0'} 2590 | dev: true 2591 | 2592 | /isexe/2.0.0: 2593 | resolution: {integrity: sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==} 2594 | 2595 | /jake/10.8.5: 2596 | resolution: {integrity: sha512-sVpxYeuAhWt0OTWITwT98oyV0GsXyMlXCF+3L1SuafBVUIr/uILGRB+NqwkzhgXKvoJpDIpQvqkUALgdmQsQxw==} 2597 | engines: {node: '>=10'} 2598 | hasBin: true 2599 | dependencies: 2600 | async: 3.2.4 2601 | chalk: 4.1.2 2602 | filelist: 1.0.4 2603 | minimatch: 3.1.2 2604 | 2605 | /javascript-natural-sort/0.7.1: 2606 | resolution: {integrity: sha512-nO6jcEfZWQXDhOiBtG2KvKyEptz7RVbpGP4vTD2hLBdmNQSsCiicO2Ioinv6UI4y9ukqnBpy+XZ9H6uLNgJTlw==} 2607 | dev: true 2608 | 2609 | /jmespath/0.16.0: 2610 | resolution: {integrity: sha512-9FzQjJ7MATs1tSpnco1K6ayiYE3figslrXA72G2HQ/n76RzvYlofyi5QM+iX4YRs/pu3yzxlVQSST23+dMDknw==} 2611 | engines: {node: '>= 0.6.0'} 2612 | dev: true 2613 | 2614 | /js-tokens/4.0.0: 2615 | resolution: {integrity: sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==} 2616 | dev: true 2617 | 2618 | /js-yaml/3.14.1: 2619 | resolution: {integrity: sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==} 2620 | hasBin: true 2621 | dependencies: 2622 | argparse: 1.0.10 2623 | esprima: 4.0.1 2624 | 2625 | /jsesc/2.5.2: 2626 | resolution: {integrity: sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==} 2627 | engines: {node: '>=4'} 2628 | hasBin: true 2629 | dev: true 2630 | 2631 | /json-buffer/3.0.1: 2632 | resolution: {integrity: sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==} 2633 | dev: true 2634 | 2635 | /json-parse-better-errors/1.0.2: 2636 | resolution: {integrity: sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw==} 2637 | dev: true 2638 | 2639 | /json-parse-even-better-errors/2.3.1: 2640 | resolution: {integrity: sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==} 2641 | dev: true 2642 | 2643 | /json-schema-traverse/0.4.1: 2644 | resolution: {integrity: sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==} 2645 | dev: true 2646 | 2647 | /json-schema-traverse/1.0.0: 2648 | resolution: {integrity: sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==} 2649 | dev: true 2650 | 2651 | /json-stable-stringify-without-jsonify/1.0.1: 2652 | resolution: {integrity: sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==} 2653 | dev: true 2654 | 2655 | /json-stringify-nice/1.1.4: 2656 | resolution: {integrity: sha512-5Z5RFW63yxReJ7vANgW6eZFGWaQvnPE3WNmZoOJrSkGju2etKA2L5rrOa1sm877TVTFt57A80BH1bArcmlLfPw==} 2657 | dev: true 2658 | 2659 | /jsonfile/4.0.0: 2660 | resolution: {integrity: sha512-m6F1R3z8jjlf2imQHS2Qez5sjKWQzbuuhuJ/FKYFRZvPE3PuHcSMVZzfsLhGVOkfd20obL5SWEBew5ShlquNxg==} 2661 | optionalDependencies: 2662 | graceful-fs: 4.2.10 2663 | dev: true 2664 | 2665 | /jsonfile/6.1.0: 2666 | resolution: {integrity: sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==} 2667 | dependencies: 2668 | universalify: 2.0.0 2669 | optionalDependencies: 2670 | graceful-fs: 4.2.10 2671 | 2672 | /jsonparse/1.3.1: 2673 | resolution: {integrity: sha512-POQXvpdL69+CluYsillJ7SUhKvytYjW9vG/GKpnf+xP8UWgYEM/RaMzHHofbALDiKbbP1W8UEYmgGl39WkPZsg==} 2674 | engines: {'0': node >= 0.2.0} 2675 | dev: true 2676 | 2677 | /just-diff-apply/5.5.0: 2678 | resolution: {integrity: sha512-OYTthRfSh55WOItVqwpefPtNt2VdKsq5AnAK6apdtR6yCH8pr0CmSr710J0Mf+WdQy7K/OzMy7K2MgAfdQURDw==} 2679 | dev: true 2680 | 2681 | /just-diff/5.2.0: 2682 | resolution: {integrity: sha512-6ufhP9SHjb7jibNFrNxyFZ6od3g+An6Ai9mhGRvcYe8UJlH0prseN64M+6ZBBUoKYHZsitDP42gAJ8+eVWr3lw==} 2683 | dev: true 2684 | 2685 | /keyv/4.5.2: 2686 | resolution: {integrity: sha512-5MHbFaKn8cNSmVW7BYnijeAVlE4cYA/SVkifVgrh7yotnfhKmjuXpDKjrABLnT0SfHWV21P8ow07OGfRrNDg8g==} 2687 | dependencies: 2688 | json-buffer: 3.0.1 2689 | dev: true 2690 | 2691 | /levn/0.4.1: 2692 | resolution: {integrity: sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==} 2693 | engines: {node: '>= 0.8.0'} 2694 | dependencies: 2695 | prelude-ls: 1.2.1 2696 | type-check: 0.4.0 2697 | dev: true 2698 | 2699 | /lines-and-columns/1.2.4: 2700 | resolution: {integrity: sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==} 2701 | dev: true 2702 | 2703 | /load-yaml-file/0.2.0: 2704 | resolution: {integrity: sha512-OfCBkGEw4nN6JLtgRidPX6QxjBQGQf72q3si2uvqyFEMbycSFFHwAZeXx6cJgFM9wmLrf9zBwCP3Ivqa+LLZPw==} 2705 | engines: {node: '>=6'} 2706 | dependencies: 2707 | graceful-fs: 4.2.10 2708 | js-yaml: 3.14.1 2709 | pify: 4.0.1 2710 | strip-bom: 3.0.0 2711 | dev: true 2712 | 2713 | /locate-path/5.0.0: 2714 | resolution: {integrity: sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==} 2715 | engines: {node: '>=8'} 2716 | dependencies: 2717 | p-locate: 4.1.0 2718 | dev: true 2719 | 2720 | /locate-path/6.0.0: 2721 | resolution: {integrity: sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==} 2722 | engines: {node: '>=10'} 2723 | dependencies: 2724 | p-locate: 5.0.0 2725 | dev: true 2726 | 2727 | /lodash.merge/4.6.2: 2728 | resolution: {integrity: sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==} 2729 | dev: true 2730 | 2731 | /lodash.truncate/4.4.2: 2732 | resolution: {integrity: sha512-jttmRe7bRse52OsWIMDLaXxWqRAmtIUccAQ3garviCqJjafXOfNMO0yMfNpdD6zbGaTU0P5Nz7e7gAT6cKmJRw==} 2733 | dev: true 2734 | 2735 | /lodash/4.17.21: 2736 | resolution: {integrity: sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==} 2737 | dev: true 2738 | 2739 | /log-symbols/4.1.0: 2740 | resolution: {integrity: sha512-8XPvpAA8uyhfteu8pIvQxpJZ7SYYdpUivZpGy6sFsBuKRY/7rQGavedeB8aK+Zkyq6upMFVL/9AW6vOYzfRyLg==} 2741 | engines: {node: '>=10'} 2742 | dependencies: 2743 | chalk: 4.1.2 2744 | is-unicode-supported: 0.1.0 2745 | dev: true 2746 | 2747 | /lowercase-keys/2.0.0: 2748 | resolution: {integrity: sha512-tqNXrS78oMOE73NMxK4EMLQsQowWf8jKooH9g7xPavRT706R6bkQJ6DY2Te7QukaZsulxa30wQ7bk0pm4XiHmA==} 2749 | engines: {node: '>=8'} 2750 | dev: true 2751 | 2752 | /lru-cache/6.0.0: 2753 | resolution: {integrity: sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==} 2754 | engines: {node: '>=10'} 2755 | dependencies: 2756 | yallist: 4.0.0 2757 | 2758 | /lru-cache/7.18.3: 2759 | resolution: {integrity: sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA==} 2760 | engines: {node: '>=12'} 2761 | dev: true 2762 | 2763 | /magic-string/0.25.9: 2764 | resolution: {integrity: sha512-RmF0AsMzgt25qzqqLc1+MbHmhdx0ojF2Fvs4XnOqz2ZOBXzzkEwc/dJQZCYHAn7v1jbVOjAZfK8msRn4BxO4VQ==} 2765 | dependencies: 2766 | sourcemap-codec: 1.4.8 2767 | dev: true 2768 | 2769 | /make-error/1.3.6: 2770 | resolution: {integrity: sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw==} 2771 | dev: true 2772 | 2773 | /make-fetch-happen/10.2.1: 2774 | resolution: {integrity: sha512-NgOPbRiaQM10DYXvN3/hhGVI2M5MtITFryzBGxHM5p4wnFxsVCbxkrBrDsk+EZ5OB4jEOT7AjDxtdF+KVEFT7w==} 2775 | engines: {node: ^12.13.0 || ^14.15.0 || >=16.0.0} 2776 | dependencies: 2777 | agentkeepalive: 4.3.0 2778 | cacache: 16.1.3 2779 | http-cache-semantics: 4.1.1 2780 | http-proxy-agent: 5.0.0 2781 | https-proxy-agent: 5.0.1 2782 | is-lambda: 1.0.1 2783 | lru-cache: 7.18.3 2784 | minipass: 3.3.6 2785 | minipass-collect: 1.0.2 2786 | minipass-fetch: 2.1.2 2787 | minipass-flush: 1.0.5 2788 | minipass-pipeline: 1.2.4 2789 | negotiator: 0.6.3 2790 | promise-retry: 2.0.1 2791 | socks-proxy-agent: 7.0.0 2792 | ssri: 9.0.1 2793 | transitivePeerDependencies: 2794 | - bluebird 2795 | - supports-color 2796 | dev: true 2797 | 2798 | /make-fetch-happen/9.1.0: 2799 | resolution: {integrity: sha512-+zopwDy7DNknmwPQplem5lAZX/eCOzSvSNNcSKm5eVwTkOBzoktEfXsa9L23J/GIRhxRsaxzkPEhrJEpE2F4Gg==} 2800 | engines: {node: '>= 10'} 2801 | dependencies: 2802 | agentkeepalive: 4.3.0 2803 | cacache: 15.3.0 2804 | http-cache-semantics: 4.1.1 2805 | http-proxy-agent: 4.0.1 2806 | https-proxy-agent: 5.0.1 2807 | is-lambda: 1.0.1 2808 | lru-cache: 6.0.0 2809 | minipass: 3.3.6 2810 | minipass-collect: 1.0.2 2811 | minipass-fetch: 1.4.1 2812 | minipass-flush: 1.0.5 2813 | minipass-pipeline: 1.2.4 2814 | negotiator: 0.6.3 2815 | promise-retry: 2.0.1 2816 | socks-proxy-agent: 6.2.1 2817 | ssri: 8.0.1 2818 | transitivePeerDependencies: 2819 | - bluebird 2820 | - supports-color 2821 | dev: true 2822 | 2823 | /mem-fs-editor/9.7.0: 2824 | resolution: {integrity: sha512-ReB3YD24GNykmu4WeUL/FDIQtkoyGB6zfJv60yfCo3QjKeimNcTqv2FT83bP0ccs6uu+sm5zyoBlspAzigmsdg==} 2825 | engines: {node: '>=12.10.0'} 2826 | peerDependencies: 2827 | mem-fs: ^2.1.0 2828 | peerDependenciesMeta: 2829 | mem-fs: 2830 | optional: true 2831 | dependencies: 2832 | binaryextensions: 4.18.0 2833 | commondir: 1.0.1 2834 | deep-extend: 0.6.0 2835 | ejs: 3.1.8 2836 | globby: 11.1.0 2837 | isbinaryfile: 5.0.0 2838 | minimatch: 7.4.2 2839 | multimatch: 5.0.0 2840 | normalize-path: 3.0.0 2841 | textextensions: 5.15.0 2842 | dev: true 2843 | 2844 | /mem-fs-editor/9.7.0_mem-fs@2.3.0: 2845 | resolution: {integrity: sha512-ReB3YD24GNykmu4WeUL/FDIQtkoyGB6zfJv60yfCo3QjKeimNcTqv2FT83bP0ccs6uu+sm5zyoBlspAzigmsdg==} 2846 | engines: {node: '>=12.10.0'} 2847 | peerDependencies: 2848 | mem-fs: ^2.1.0 2849 | peerDependenciesMeta: 2850 | mem-fs: 2851 | optional: true 2852 | dependencies: 2853 | binaryextensions: 4.18.0 2854 | commondir: 1.0.1 2855 | deep-extend: 0.6.0 2856 | ejs: 3.1.8 2857 | globby: 11.1.0 2858 | isbinaryfile: 5.0.0 2859 | mem-fs: 2.3.0 2860 | minimatch: 7.4.2 2861 | multimatch: 5.0.0 2862 | normalize-path: 3.0.0 2863 | textextensions: 5.15.0 2864 | dev: true 2865 | 2866 | /mem-fs/2.3.0: 2867 | resolution: {integrity: sha512-GftCCBs6EN8sz3BoWO1bCj8t7YBtT713d8bUgbhg9Iel5kFSqnSvCK06TYIDJAtJ51cSiWkM/YemlT0dfoFycw==} 2868 | engines: {node: '>=12'} 2869 | dependencies: 2870 | '@types/node': 15.14.9 2871 | '@types/vinyl': 2.0.7 2872 | vinyl: 2.2.1 2873 | vinyl-file: 3.0.0 2874 | dev: true 2875 | 2876 | /merge-stream/2.0.0: 2877 | resolution: {integrity: sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==} 2878 | dev: true 2879 | 2880 | /merge2/1.4.1: 2881 | resolution: {integrity: sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==} 2882 | engines: {node: '>= 8'} 2883 | 2884 | /micromatch/4.0.5: 2885 | resolution: {integrity: sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==} 2886 | engines: {node: '>=8.6'} 2887 | dependencies: 2888 | braces: 3.0.2 2889 | picomatch: 2.3.1 2890 | 2891 | /mime-db/1.52.0: 2892 | resolution: {integrity: sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==} 2893 | engines: {node: '>= 0.6'} 2894 | dev: false 2895 | 2896 | /mime-types/2.1.35: 2897 | resolution: {integrity: sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==} 2898 | engines: {node: '>= 0.6'} 2899 | dependencies: 2900 | mime-db: 1.52.0 2901 | dev: false 2902 | 2903 | /mimic-fn/2.1.0: 2904 | resolution: {integrity: sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==} 2905 | engines: {node: '>=6'} 2906 | dev: true 2907 | 2908 | /mimic-response/1.0.1: 2909 | resolution: {integrity: sha512-j5EctnkH7amfV/q5Hgmoal1g2QHFJRraOtmx0JpIqkxhBhI/lJSl1nMpQ45hVarwNETOoWEimndZ4QK0RHxuxQ==} 2910 | engines: {node: '>=4'} 2911 | dev: true 2912 | 2913 | /mimic-response/3.1.0: 2914 | resolution: {integrity: sha512-z0yWI+4FDrrweS8Zmt4Ej5HdJmky15+L2e6Wgn3+iK5fWzb6T3fhNFq2+MeTRb064c6Wr4N/wv0DzQTjNzHNGQ==} 2915 | engines: {node: '>=10'} 2916 | dev: true 2917 | 2918 | /minimatch/3.1.2: 2919 | resolution: {integrity: sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==} 2920 | dependencies: 2921 | brace-expansion: 1.1.11 2922 | 2923 | /minimatch/5.1.6: 2924 | resolution: {integrity: sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g==} 2925 | engines: {node: '>=10'} 2926 | dependencies: 2927 | brace-expansion: 2.0.1 2928 | 2929 | /minimatch/7.4.2: 2930 | resolution: {integrity: sha512-xy4q7wou3vUoC9k1xGTXc+awNdGaGVHtFUaey8tiX4H1QRc04DZ/rmDFwNm2EBsuYEhAZ6SgMmYf3InGY6OauA==} 2931 | engines: {node: '>=10'} 2932 | dependencies: 2933 | brace-expansion: 2.0.1 2934 | dev: true 2935 | 2936 | /minimist/1.2.8: 2937 | resolution: {integrity: sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==} 2938 | dev: true 2939 | 2940 | /minipass-collect/1.0.2: 2941 | resolution: {integrity: sha512-6T6lH0H8OG9kITm/Jm6tdooIbogG9e0tLgpY6mphXSm/A9u8Nq1ryBG+Qspiub9LjWlBPsPS3tWQ/Botq4FdxA==} 2942 | engines: {node: '>= 8'} 2943 | dependencies: 2944 | minipass: 3.3.6 2945 | dev: true 2946 | 2947 | /minipass-fetch/1.4.1: 2948 | resolution: {integrity: sha512-CGH1eblLq26Y15+Azk7ey4xh0J/XfJfrCox5LDJiKqI2Q2iwOLOKrlmIaODiSQS8d18jalF6y2K2ePUm0CmShw==} 2949 | engines: {node: '>=8'} 2950 | dependencies: 2951 | minipass: 3.3.6 2952 | minipass-sized: 1.0.3 2953 | minizlib: 2.1.2 2954 | optionalDependencies: 2955 | encoding: 0.1.13 2956 | dev: true 2957 | 2958 | /minipass-fetch/2.1.2: 2959 | resolution: {integrity: sha512-LT49Zi2/WMROHYoqGgdlQIZh8mLPZmOrN2NdJjMXxYe4nkN6FUyuPuOAOedNJDrx0IRGg9+4guZewtp8hE6TxA==} 2960 | engines: {node: ^12.13.0 || ^14.15.0 || >=16.0.0} 2961 | dependencies: 2962 | minipass: 3.3.6 2963 | minipass-sized: 1.0.3 2964 | minizlib: 2.1.2 2965 | optionalDependencies: 2966 | encoding: 0.1.13 2967 | dev: true 2968 | 2969 | /minipass-flush/1.0.5: 2970 | resolution: {integrity: sha512-JmQSYYpPUqX5Jyn1mXaRwOda1uQ8HP5KAT/oDSLCzt1BYRhQU0/hDtsB1ufZfEEzMZ9aAVmsBw8+FWsIXlClWw==} 2971 | engines: {node: '>= 8'} 2972 | dependencies: 2973 | minipass: 3.3.6 2974 | dev: true 2975 | 2976 | /minipass-json-stream/1.0.1: 2977 | resolution: {integrity: sha512-ODqY18UZt/I8k+b7rl2AENgbWE8IDYam+undIJONvigAz8KR5GWblsFTEfQs0WODsjbSXWlm+JHEv8Gr6Tfdbg==} 2978 | dependencies: 2979 | jsonparse: 1.3.1 2980 | minipass: 3.3.6 2981 | dev: true 2982 | 2983 | /minipass-pipeline/1.2.4: 2984 | resolution: {integrity: sha512-xuIq7cIOt09RPRJ19gdi4b+RiNvDFYe5JH+ggNvBqGqpQXcru3PcRmOZuHBKWK1Txf9+cQ+HMVN4d6z46LZP7A==} 2985 | engines: {node: '>=8'} 2986 | dependencies: 2987 | minipass: 3.3.6 2988 | dev: true 2989 | 2990 | /minipass-sized/1.0.3: 2991 | resolution: {integrity: sha512-MbkQQ2CTiBMlA2Dm/5cY+9SWFEN8pzzOXi6rlM5Xxq0Yqbda5ZQy9sU75a673FE9ZK0Zsbr6Y5iP6u9nktfg2g==} 2992 | engines: {node: '>=8'} 2993 | dependencies: 2994 | minipass: 3.3.6 2995 | dev: true 2996 | 2997 | /minipass/3.3.6: 2998 | resolution: {integrity: sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==} 2999 | engines: {node: '>=8'} 3000 | dependencies: 3001 | yallist: 4.0.0 3002 | dev: true 3003 | 3004 | /minipass/4.2.4: 3005 | resolution: {integrity: sha512-lwycX3cBMTvcejsHITUgYj6Gy6A7Nh4Q6h9NP4sTHY1ccJlC7yKzDmiShEHsJ16Jf1nKGDEaiHxiltsJEvk0nQ==} 3006 | engines: {node: '>=8'} 3007 | dev: true 3008 | 3009 | /minizlib/2.1.2: 3010 | resolution: {integrity: sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg==} 3011 | engines: {node: '>= 8'} 3012 | dependencies: 3013 | minipass: 3.3.6 3014 | yallist: 4.0.0 3015 | dev: true 3016 | 3017 | /mkdirp-infer-owner/2.0.0: 3018 | resolution: {integrity: sha512-sdqtiFt3lkOaYvTXSRIUjkIdPTcxgv5+fgqYE/5qgwdw12cOrAuzzgzvVExIkH/ul1oeHN3bCLOWSG3XOqbKKw==} 3019 | engines: {node: '>=10'} 3020 | dependencies: 3021 | chownr: 2.0.0 3022 | infer-owner: 1.0.4 3023 | mkdirp: 1.0.4 3024 | dev: true 3025 | 3026 | /mkdirp/1.0.4: 3027 | resolution: {integrity: sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==} 3028 | engines: {node: '>=10'} 3029 | hasBin: true 3030 | dev: true 3031 | 3032 | /ms/2.1.2: 3033 | resolution: {integrity: sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==} 3034 | 3035 | /ms/2.1.3: 3036 | resolution: {integrity: sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==} 3037 | dev: true 3038 | 3039 | /multimatch/5.0.0: 3040 | resolution: {integrity: sha512-ypMKuglUrZUD99Tk2bUQ+xNQj43lPEfAeX2o9cTteAmShXy2VHDJpuwu1o0xqoKCt9jLVAvwyFKdLTPXKAfJyA==} 3041 | engines: {node: '>=10'} 3042 | dependencies: 3043 | '@types/minimatch': 3.0.5 3044 | array-differ: 3.0.0 3045 | array-union: 2.1.0 3046 | arrify: 2.0.1 3047 | minimatch: 3.1.2 3048 | dev: true 3049 | 3050 | /mute-stream/0.0.8: 3051 | resolution: {integrity: sha512-nnbWWOkoWyUsTjKrhgD0dcz22mdkSnpYqbEjIm2nhwhuxlSkpywJmBo8h0ZqJdkp73mb90SssHkN4rsRaBAfAA==} 3052 | dev: true 3053 | 3054 | /nanoid/3.3.4: 3055 | resolution: {integrity: sha512-MqBkQh/OHTS2egovRtLk45wEyNXwF+cokD+1YPf9u5VfJiRdAiRwB2froX5Co9Rh20xs4siNPm8naNotSD6RBw==} 3056 | engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1} 3057 | hasBin: true 3058 | dev: true 3059 | 3060 | /natural-compare-lite/1.4.0: 3061 | resolution: {integrity: sha512-Tj+HTDSJJKaZnfiuw+iaF9skdPpTo2GtEly5JHnWV/hfv2Qj/9RKsGISQtLh2ox3l5EAGw487hnBee0sIJ6v2g==} 3062 | dev: true 3063 | 3064 | /natural-compare/1.4.0: 3065 | resolution: {integrity: sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==} 3066 | dev: true 3067 | 3068 | /natural-orderby/2.0.3: 3069 | resolution: {integrity: sha512-p7KTHxU0CUrcOXe62Zfrb5Z13nLvPhSWR/so3kFulUQU0sgUll2Z0LwpsLN351eOOD+hRGu/F1g+6xDfPeD++Q==} 3070 | 3071 | /negotiator/0.6.3: 3072 | resolution: {integrity: sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==} 3073 | engines: {node: '>= 0.6'} 3074 | dev: true 3075 | 3076 | /nice-try/1.0.5: 3077 | resolution: {integrity: sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ==} 3078 | 3079 | /node-fetch/2.6.9: 3080 | resolution: {integrity: sha512-DJm/CJkZkRjKKj4Zi4BsKVZh3ValV5IR5s7LVZnW+6YMh0W1BfNA8XSs6DLMGYlId5F3KnA70uu2qepcR08Qqg==} 3081 | engines: {node: 4.x || >=6.0.0} 3082 | peerDependencies: 3083 | encoding: ^0.1.0 3084 | peerDependenciesMeta: 3085 | encoding: 3086 | optional: true 3087 | dependencies: 3088 | whatwg-url: 5.0.0 3089 | dev: true 3090 | 3091 | /node-gyp/8.4.1: 3092 | resolution: {integrity: sha512-olTJRgUtAb/hOXG0E93wZDs5YiJlgbXxTwQAFHyNlRsXQnYzUaF2aGgujZbw+hR8aF4ZG/rST57bWMWD16jr9w==} 3093 | engines: {node: '>= 10.12.0'} 3094 | hasBin: true 3095 | dependencies: 3096 | env-paths: 2.2.1 3097 | glob: 7.2.3 3098 | graceful-fs: 4.2.10 3099 | make-fetch-happen: 9.1.0 3100 | nopt: 5.0.0 3101 | npmlog: 6.0.2 3102 | rimraf: 3.0.2 3103 | semver: 7.3.8 3104 | tar: 6.1.13 3105 | which: 2.0.2 3106 | transitivePeerDependencies: 3107 | - bluebird 3108 | - supports-color 3109 | dev: true 3110 | 3111 | /nopt/5.0.0: 3112 | resolution: {integrity: sha512-Tbj67rffqceeLpcRXrT7vKAN8CwfPeIBgM7E6iBkmKLV7bEMwpGgYLGv0jACUsECaa/vuxP0IjEont6umdMgtQ==} 3113 | engines: {node: '>=6'} 3114 | hasBin: true 3115 | dependencies: 3116 | abbrev: 1.1.1 3117 | dev: true 3118 | 3119 | /normalize-package-data/2.5.0: 3120 | resolution: {integrity: sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==} 3121 | dependencies: 3122 | hosted-git-info: 2.8.9 3123 | resolve: 1.22.1 3124 | semver: 5.7.1 3125 | validate-npm-package-license: 3.0.4 3126 | dev: true 3127 | 3128 | /normalize-package-data/3.0.3: 3129 | resolution: {integrity: sha512-p2W1sgqij3zMMyRC067Dg16bfzVH+w7hyegmpIvZ4JNjqtGOVAIvLmjBx3yP7YTe9vKJgkoNOPjwQGogDoMXFA==} 3130 | engines: {node: '>=10'} 3131 | dependencies: 3132 | hosted-git-info: 4.1.0 3133 | is-core-module: 2.11.0 3134 | semver: 7.3.8 3135 | validate-npm-package-license: 3.0.4 3136 | dev: true 3137 | 3138 | /normalize-path/3.0.0: 3139 | resolution: {integrity: sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==} 3140 | engines: {node: '>=0.10.0'} 3141 | dev: true 3142 | 3143 | /normalize-url/6.1.0: 3144 | resolution: {integrity: sha512-DlL+XwOy3NxAQ8xuC0okPgK46iuVNAK01YN7RueYBqqFeGsBjV9XmCAzAdgt+667bCl5kPh9EqKKDwnaPG1I7A==} 3145 | engines: {node: '>=10'} 3146 | dev: true 3147 | 3148 | /npm-bundled/1.1.2: 3149 | resolution: {integrity: sha512-x5DHup0SuyQcmL3s7Rx/YQ8sbw/Hzg0rj48eN0dV7hf5cmQq5PXIeioroH3raV1QC1yh3uTYuMThvEQF3iKgGQ==} 3150 | dependencies: 3151 | npm-normalize-package-bin: 1.0.1 3152 | dev: true 3153 | 3154 | /npm-install-checks/4.0.0: 3155 | resolution: {integrity: sha512-09OmyDkNLYwqKPOnbI8exiOZU2GVVmQp7tgez2BPi5OZC8M82elDAps7sxC4l//uSUtotWqoEIDwjRvWH4qz8w==} 3156 | engines: {node: '>=10'} 3157 | dependencies: 3158 | semver: 7.3.8 3159 | dev: true 3160 | 3161 | /npm-normalize-package-bin/1.0.1: 3162 | resolution: {integrity: sha512-EPfafl6JL5/rU+ot6P3gRSCpPDW5VmIzX959Ob1+ySFUuuYHWHekXpwdUZcKP5C+DS4GEtdJluwBjnsNDl+fSA==} 3163 | dev: true 3164 | 3165 | /npm-normalize-package-bin/2.0.0: 3166 | resolution: {integrity: sha512-awzfKUO7v0FscrSpRoogyNm0sajikhBWpU0QMrW09AMi9n1PoKU6WaIqUzuJSQnpciZZmJ/jMZ2Egfmb/9LiWQ==} 3167 | engines: {node: ^12.13.0 || ^14.15.0 || >=16.0.0} 3168 | dev: true 3169 | 3170 | /npm-package-arg/8.1.5: 3171 | resolution: {integrity: sha512-LhgZrg0n0VgvzVdSm1oiZworPbTxYHUJCgtsJW8mGvlDpxTM1vSJc3m5QZeUkhAHIzbz3VCHd/R4osi1L1Tg/Q==} 3172 | engines: {node: '>=10'} 3173 | dependencies: 3174 | hosted-git-info: 4.1.0 3175 | semver: 7.3.8 3176 | validate-npm-package-name: 3.0.0 3177 | dev: true 3178 | 3179 | /npm-packlist/3.0.0: 3180 | resolution: {integrity: sha512-L/cbzmutAwII5glUcf2DBRNY/d0TFd4e/FnaZigJV6JD85RHZXJFGwCndjMWiiViiWSsWt3tiOLpI3ByTnIdFQ==} 3181 | engines: {node: '>=10'} 3182 | hasBin: true 3183 | dependencies: 3184 | glob: 7.2.3 3185 | ignore-walk: 4.0.1 3186 | npm-bundled: 1.1.2 3187 | npm-normalize-package-bin: 1.0.1 3188 | dev: true 3189 | 3190 | /npm-pick-manifest/6.1.1: 3191 | resolution: {integrity: sha512-dBsdBtORT84S8V8UTad1WlUyKIY9iMsAmqxHbLdeEeBNMLQDlDWWra3wYUx9EBEIiG/YwAy0XyNHDd2goAsfuA==} 3192 | dependencies: 3193 | npm-install-checks: 4.0.0 3194 | npm-normalize-package-bin: 1.0.1 3195 | npm-package-arg: 8.1.5 3196 | semver: 7.3.8 3197 | dev: true 3198 | 3199 | /npm-registry-fetch/12.0.2: 3200 | resolution: {integrity: sha512-Df5QT3RaJnXYuOwtXBXS9BWs+tHH2olvkCLh6jcR/b/u3DvPMlp3J0TvvYwplPKxHMOwfg287PYih9QqaVFoKA==} 3201 | engines: {node: ^12.13.0 || ^14.15.0 || >=16} 3202 | dependencies: 3203 | make-fetch-happen: 10.2.1 3204 | minipass: 3.3.6 3205 | minipass-fetch: 1.4.1 3206 | minipass-json-stream: 1.0.1 3207 | minizlib: 2.1.2 3208 | npm-package-arg: 8.1.5 3209 | transitivePeerDependencies: 3210 | - bluebird 3211 | - supports-color 3212 | dev: true 3213 | 3214 | /npm-run-path/4.0.1: 3215 | resolution: {integrity: sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==} 3216 | engines: {node: '>=8'} 3217 | dependencies: 3218 | path-key: 3.1.1 3219 | dev: true 3220 | 3221 | /npmlog/5.0.1: 3222 | resolution: {integrity: sha512-AqZtDUWOMKs1G/8lwylVjrdYgqA4d9nu8hc+0gzRxlDb1I10+FHBGMXs6aiQHFdCUUlqH99MUMuLfzWDNDtfxw==} 3223 | dependencies: 3224 | are-we-there-yet: 2.0.0 3225 | console-control-strings: 1.1.0 3226 | gauge: 3.0.2 3227 | set-blocking: 2.0.0 3228 | dev: true 3229 | 3230 | /npmlog/6.0.2: 3231 | resolution: {integrity: sha512-/vBvz5Jfr9dT/aFWd0FIRf+T/Q2WBsLENygUaFUqstqsycmZAP/t5BvFJTK0viFmSUxiUKTUplWy5vt+rvKIxg==} 3232 | engines: {node: ^12.13.0 || ^14.15.0 || >=16.0.0} 3233 | dependencies: 3234 | are-we-there-yet: 3.0.1 3235 | console-control-strings: 1.1.0 3236 | gauge: 4.0.4 3237 | set-blocking: 2.0.0 3238 | dev: true 3239 | 3240 | /number-is-nan/1.0.1: 3241 | resolution: {integrity: sha512-4jbtZXNAsfZbAHiiqjLPBiCl16dES1zI4Hpzzxw61Tk+loF+sBDBKx1ICKKKwIqQ7M0mFn1TmkN7euSncWgHiQ==} 3242 | engines: {node: '>=0.10.0'} 3243 | dev: true 3244 | 3245 | /object-assign/4.1.1: 3246 | resolution: {integrity: sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==} 3247 | engines: {node: '>=0.10.0'} 3248 | dev: true 3249 | 3250 | /object-treeify/1.1.33: 3251 | resolution: {integrity: sha512-EFVjAYfzWqWsBMRHPMAXLCDIJnpMhdWAqR7xG6M6a2cs6PMFpl/+Z20w9zDW4vkxOFfddegBKq9Rehd0bxWE7A==} 3252 | engines: {node: '>= 10'} 3253 | 3254 | /oclif/3.7.0: 3255 | resolution: {integrity: sha512-LtLc7/3lOQ0d6/JKGj8QriIK/MiIcjZXVX3WoynbXUswG/X8oIsSr1+F6Q69VVbXnjbYlbfiP+uYASr36Mrjzg==} 3256 | engines: {node: '>=12.0.0'} 3257 | hasBin: true 3258 | dependencies: 3259 | '@oclif/core': 2.5.0 3260 | '@oclif/plugin-help': 5.2.7 3261 | '@oclif/plugin-not-found': 2.3.21 3262 | '@oclif/plugin-warn-if-update-available': 2.0.30 3263 | aws-sdk: 2.1329.0 3264 | concurrently: 7.6.0 3265 | debug: 4.3.4 3266 | find-yarn-workspace-root: 2.0.0 3267 | fs-extra: 8.1.0 3268 | github-slugger: 1.5.0 3269 | got: 11.8.6 3270 | lodash: 4.17.21 3271 | normalize-package-data: 3.0.3 3272 | semver: 7.3.8 3273 | shelljs: 0.8.5 3274 | tslib: 2.5.0 3275 | yeoman-environment: 3.15.1 3276 | yeoman-generator: 5.8.0_yeoman-environment@3.15.1 3277 | yosay: 2.0.2 3278 | transitivePeerDependencies: 3279 | - bluebird 3280 | - encoding 3281 | - mem-fs 3282 | - supports-color 3283 | dev: true 3284 | 3285 | /once/1.4.0: 3286 | resolution: {integrity: sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==} 3287 | dependencies: 3288 | wrappy: 1.0.2 3289 | dev: true 3290 | 3291 | /onetime/5.1.2: 3292 | resolution: {integrity: sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==} 3293 | engines: {node: '>=6'} 3294 | dependencies: 3295 | mimic-fn: 2.1.0 3296 | dev: true 3297 | 3298 | /openai/3.2.1: 3299 | resolution: {integrity: sha512-762C9BNlJPbjjlWZi4WYK9iM2tAVAv0uUp1UmI34vb0CN5T2mjB/qM6RYBmNKMh/dN9fC+bxqPwWJZUTWW052A==} 3300 | dependencies: 3301 | axios: 0.26.1 3302 | form-data: 4.0.0 3303 | transitivePeerDependencies: 3304 | - debug 3305 | dev: false 3306 | 3307 | /optionator/0.9.1: 3308 | resolution: {integrity: sha512-74RlY5FCnhq4jRxVUPKDaRwrVNXMqsGsiW6AJw4XK8hmtm10wC0ypZBLw5IIp85NZMr91+qd1RvvENwg7jjRFw==} 3309 | engines: {node: '>= 0.8.0'} 3310 | dependencies: 3311 | deep-is: 0.1.4 3312 | fast-levenshtein: 2.0.6 3313 | levn: 0.4.1 3314 | prelude-ls: 1.2.1 3315 | type-check: 0.4.0 3316 | word-wrap: 1.2.3 3317 | dev: true 3318 | 3319 | /ora/5.4.1: 3320 | resolution: {integrity: sha512-5b6Y85tPxZZ7QytO+BQzysW31HJku27cRIlkbAXaNx+BdcVi+LlRFmVXzeF6a7JCwJpyw5c4b+YSVImQIrBpuQ==} 3321 | engines: {node: '>=10'} 3322 | dependencies: 3323 | bl: 4.1.0 3324 | chalk: 4.1.2 3325 | cli-cursor: 3.1.0 3326 | cli-spinners: 2.7.0 3327 | is-interactive: 1.0.0 3328 | is-unicode-supported: 0.1.0 3329 | log-symbols: 4.1.0 3330 | strip-ansi: 6.0.1 3331 | wcwidth: 1.0.1 3332 | dev: true 3333 | 3334 | /os-tmpdir/1.0.2: 3335 | resolution: {integrity: sha512-D2FR03Vir7FIu45XBY20mTb+/ZSWB00sjU9jdQXt83gDrI4Ztz5Fs7/yy74g2N5SVQY4xY1qDr4rNddwYRVX0g==} 3336 | engines: {node: '>=0.10.0'} 3337 | dev: true 3338 | 3339 | /p-cancelable/2.1.1: 3340 | resolution: {integrity: sha512-BZOr3nRQHOntUjTrH8+Lh54smKHoHyur8We1V8DSMVrl5A2malOOwuJRnKRDjSnkoeBh4at6BwEnb5I7Jl31wg==} 3341 | engines: {node: '>=8'} 3342 | dev: true 3343 | 3344 | /p-finally/1.0.0: 3345 | resolution: {integrity: sha512-LICb2p9CB7FS+0eR1oqWnHhp0FljGLZCWBE9aix0Uye9W8LTQPwMTYVGWQWIw9RdQiDg4+epXQODwIYJtSJaow==} 3346 | engines: {node: '>=4'} 3347 | dev: true 3348 | 3349 | /p-limit/2.3.0: 3350 | resolution: {integrity: sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==} 3351 | engines: {node: '>=6'} 3352 | dependencies: 3353 | p-try: 2.2.0 3354 | dev: true 3355 | 3356 | /p-limit/3.1.0: 3357 | resolution: {integrity: sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==} 3358 | engines: {node: '>=10'} 3359 | dependencies: 3360 | yocto-queue: 0.1.0 3361 | dev: true 3362 | 3363 | /p-locate/4.1.0: 3364 | resolution: {integrity: sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==} 3365 | engines: {node: '>=8'} 3366 | dependencies: 3367 | p-limit: 2.3.0 3368 | dev: true 3369 | 3370 | /p-locate/5.0.0: 3371 | resolution: {integrity: sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==} 3372 | engines: {node: '>=10'} 3373 | dependencies: 3374 | p-limit: 3.1.0 3375 | dev: true 3376 | 3377 | /p-map/4.0.0: 3378 | resolution: {integrity: sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ==} 3379 | engines: {node: '>=10'} 3380 | dependencies: 3381 | aggregate-error: 3.1.0 3382 | dev: true 3383 | 3384 | /p-queue/6.6.2: 3385 | resolution: {integrity: sha512-RwFpb72c/BhQLEXIZ5K2e+AhgNVmIejGlTgiB9MzZ0e93GRvqZ7uSi0dvRF7/XIXDeNkra2fNHBxTyPDGySpjQ==} 3386 | engines: {node: '>=8'} 3387 | dependencies: 3388 | eventemitter3: 4.0.7 3389 | p-timeout: 3.2.0 3390 | dev: true 3391 | 3392 | /p-timeout/3.2.0: 3393 | resolution: {integrity: sha512-rhIwUycgwwKcP9yTOOFK/AKsAopjjCakVqLHePO3CC6Mir1Z99xT+R63jZxAT5lFZLa2inS5h+ZS2GvR99/FBg==} 3394 | engines: {node: '>=8'} 3395 | dependencies: 3396 | p-finally: 1.0.0 3397 | dev: true 3398 | 3399 | /p-transform/1.3.0: 3400 | resolution: {integrity: sha512-UJKdSzgd3KOnXXAtqN5+/eeHcvTn1hBkesEmElVgvO/NAYcxAvmjzIGmnNd3Tb/gRAvMBdNRFD4qAWdHxY6QXg==} 3401 | engines: {node: '>=12.10.0'} 3402 | dependencies: 3403 | debug: 4.3.4 3404 | p-queue: 6.6.2 3405 | transitivePeerDependencies: 3406 | - supports-color 3407 | dev: true 3408 | 3409 | /p-try/2.2.0: 3410 | resolution: {integrity: sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==} 3411 | engines: {node: '>=6'} 3412 | dev: true 3413 | 3414 | /pacote/12.0.3: 3415 | resolution: {integrity: sha512-CdYEl03JDrRO3x18uHjBYA9TyoW8gy+ThVcypcDkxPtKlw76e4ejhYB6i9lJ+/cebbjpqPW/CijjqxwDTts8Ow==} 3416 | engines: {node: ^12.13.0 || ^14.15.0 || >=16} 3417 | hasBin: true 3418 | dependencies: 3419 | '@npmcli/git': 2.1.0 3420 | '@npmcli/installed-package-contents': 1.0.7 3421 | '@npmcli/promise-spawn': 1.3.2 3422 | '@npmcli/run-script': 2.0.0 3423 | cacache: 15.3.0 3424 | chownr: 2.0.0 3425 | fs-minipass: 2.1.0 3426 | infer-owner: 1.0.4 3427 | minipass: 3.3.6 3428 | mkdirp: 1.0.4 3429 | npm-package-arg: 8.1.5 3430 | npm-packlist: 3.0.0 3431 | npm-pick-manifest: 6.1.1 3432 | npm-registry-fetch: 12.0.2 3433 | promise-retry: 2.0.1 3434 | read-package-json-fast: 2.0.3 3435 | rimraf: 3.0.2 3436 | ssri: 8.0.1 3437 | tar: 6.1.13 3438 | transitivePeerDependencies: 3439 | - bluebird 3440 | - supports-color 3441 | dev: true 3442 | 3443 | /pad-component/0.0.1: 3444 | resolution: {integrity: sha512-8EKVBxCRSvLnsX1p2LlSFSH3c2/wuhY9/BXXWu8boL78FbVKqn2L5SpURt1x5iw6Gq8PTqJ7MdPoe5nCtX3I+g==} 3445 | dev: true 3446 | 3447 | /parent-module/1.0.1: 3448 | resolution: {integrity: sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==} 3449 | engines: {node: '>=6'} 3450 | dependencies: 3451 | callsites: 3.1.0 3452 | dev: true 3453 | 3454 | /parse-conflict-json/2.0.2: 3455 | resolution: {integrity: sha512-jDbRGb00TAPFsKWCpZZOT93SxVP9nONOSgES3AevqRq/CHvavEBvKAjxX9p5Y5F0RZLxH9Ufd9+RwtCsa+lFDA==} 3456 | engines: {node: ^12.13.0 || ^14.15.0 || >=16.0.0} 3457 | dependencies: 3458 | json-parse-even-better-errors: 2.3.1 3459 | just-diff: 5.2.0 3460 | just-diff-apply: 5.5.0 3461 | dev: true 3462 | 3463 | /parse-json/4.0.0: 3464 | resolution: {integrity: sha512-aOIos8bujGN93/8Ox/jPLh7RwVnPEysynVFE+fQZyg6jKELEHwzgKdLRFHUgXJL6kylijVSBC4BvN9OmsB48Rw==} 3465 | engines: {node: '>=4'} 3466 | dependencies: 3467 | error-ex: 1.3.2 3468 | json-parse-better-errors: 1.0.2 3469 | dev: true 3470 | 3471 | /parse-json/5.2.0: 3472 | resolution: {integrity: sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==} 3473 | engines: {node: '>=8'} 3474 | dependencies: 3475 | '@babel/code-frame': 7.18.6 3476 | error-ex: 1.3.2 3477 | json-parse-even-better-errors: 2.3.1 3478 | lines-and-columns: 1.2.4 3479 | dev: true 3480 | 3481 | /password-prompt/1.1.2: 3482 | resolution: {integrity: sha512-bpuBhROdrhuN3E7G/koAju0WjVw9/uQOG5Co5mokNj0MiOSBVZS1JTwM4zl55hu0WFmIEFvO9cU9sJQiBIYeIA==} 3483 | dependencies: 3484 | ansi-escapes: 3.2.0 3485 | cross-spawn: 6.0.5 3486 | 3487 | /path-exists/4.0.0: 3488 | resolution: {integrity: sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==} 3489 | engines: {node: '>=8'} 3490 | dev: true 3491 | 3492 | /path-is-absolute/1.0.1: 3493 | resolution: {integrity: sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==} 3494 | engines: {node: '>=0.10.0'} 3495 | dev: true 3496 | 3497 | /path-key/2.0.1: 3498 | resolution: {integrity: sha512-fEHGKCSmUSDPv4uoj8AlD+joPlq3peND+HRYyxFz4KPw4z926S/b8rIuFs2FYJg3BwsxJf6A9/3eIdLaYC+9Dw==} 3499 | engines: {node: '>=4'} 3500 | 3501 | /path-key/3.1.1: 3502 | resolution: {integrity: sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==} 3503 | engines: {node: '>=8'} 3504 | dev: true 3505 | 3506 | /path-parse/1.0.7: 3507 | resolution: {integrity: sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==} 3508 | dev: true 3509 | 3510 | /path-type/4.0.0: 3511 | resolution: {integrity: sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==} 3512 | engines: {node: '>=8'} 3513 | 3514 | /picocolors/1.0.0: 3515 | resolution: {integrity: sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==} 3516 | dev: true 3517 | 3518 | /picomatch/2.3.1: 3519 | resolution: {integrity: sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==} 3520 | engines: {node: '>=8.6'} 3521 | 3522 | /pify/2.3.0: 3523 | resolution: {integrity: sha512-udgsAY+fTnvv7kI7aaxbqwWNb0AHiB0qBO89PZKPkoTmGOgdbrHDKD+0B2X4uTfJ/FT1R09r9gTsjUjNJotuog==} 3524 | engines: {node: '>=0.10.0'} 3525 | dev: true 3526 | 3527 | /pify/4.0.1: 3528 | resolution: {integrity: sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==} 3529 | engines: {node: '>=6'} 3530 | dev: true 3531 | 3532 | /pkg-dir/4.2.0: 3533 | resolution: {integrity: sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==} 3534 | engines: {node: '>=8'} 3535 | dependencies: 3536 | find-up: 4.1.0 3537 | dev: true 3538 | 3539 | /postcss/8.4.21: 3540 | resolution: {integrity: sha512-tP7u/Sn/dVxK2NnruI4H9BG+x+Wxz6oeZ1cJ8P6G/PZY0IKk4k/63TDsQf2kQq3+qoJeLm2kIBUNlZe3zgb4Zg==} 3541 | engines: {node: ^10 || ^12 || >=14} 3542 | dependencies: 3543 | nanoid: 3.3.4 3544 | picocolors: 1.0.0 3545 | source-map-js: 1.0.2 3546 | dev: true 3547 | 3548 | /preferred-pm/3.0.3: 3549 | resolution: {integrity: sha512-+wZgbxNES/KlJs9q40F/1sfOd/j7f1O9JaHcW5Dsn3aUUOZg3L2bjpVUcKV2jvtElYfoTuQiNeMfQJ4kwUAhCQ==} 3550 | engines: {node: '>=10'} 3551 | dependencies: 3552 | find-up: 5.0.0 3553 | find-yarn-workspace-root2: 1.2.16 3554 | path-exists: 4.0.0 3555 | which-pm: 2.0.0 3556 | dev: true 3557 | 3558 | /prelude-ls/1.2.1: 3559 | resolution: {integrity: sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==} 3560 | engines: {node: '>= 0.8.0'} 3561 | dev: true 3562 | 3563 | /prettier-linter-helpers/1.0.0: 3564 | resolution: {integrity: sha512-GbK2cP9nraSSUF9N2XwUwqfzlAFlMNYYl+ShE/V+H8a9uNl/oUqB1w2EL54Jh0OlyRSd8RfWYJ3coVS4TROP2w==} 3565 | engines: {node: '>=6.0.0'} 3566 | dependencies: 3567 | fast-diff: 1.2.0 3568 | dev: true 3569 | 3570 | /prettier/2.8.4: 3571 | resolution: {integrity: sha512-vIS4Rlc2FNh0BySk3Wkd6xmwxB0FpOndW5fisM5H8hsZSxU2VWVB5CWIkIjWvrHjIhxk2g3bfMKM87zNTrZddw==} 3572 | engines: {node: '>=10.13.0'} 3573 | hasBin: true 3574 | dev: true 3575 | 3576 | /pretty-bytes/5.6.0: 3577 | resolution: {integrity: sha512-FFw039TmrBqFK8ma/7OL3sDz/VytdtJr044/QUJtH0wK9lb9jLq9tJyIxUwtQJHwar2BqtiA4iCWSwo9JLkzFg==} 3578 | engines: {node: '>=6'} 3579 | dev: true 3580 | 3581 | /proc-log/1.0.0: 3582 | resolution: {integrity: sha512-aCk8AO51s+4JyuYGg3Q/a6gnrlDO09NpVWePtjp7xwphcoQ04x5WAfCyugcsbLooWcMJ87CLkD4+604IckEdhg==} 3583 | dev: true 3584 | 3585 | /process-nextick-args/2.0.1: 3586 | resolution: {integrity: sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==} 3587 | dev: true 3588 | 3589 | /progress/2.0.3: 3590 | resolution: {integrity: sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA==} 3591 | engines: {node: '>=0.4.0'} 3592 | dev: true 3593 | 3594 | /promise-all-reject-late/1.0.1: 3595 | resolution: {integrity: sha512-vuf0Lf0lOxyQREH7GDIOUMLS7kz+gs8i6B+Yi8dC68a2sychGrHTJYghMBD6k7eUcH0H5P73EckCA48xijWqXw==} 3596 | dev: true 3597 | 3598 | /promise-call-limit/1.0.1: 3599 | resolution: {integrity: sha512-3+hgaa19jzCGLuSCbieeRsu5C2joKfYn8pY6JAuXFRVfF4IO+L7UPpFWNTeWT9pM7uhskvbPPd/oEOktCn317Q==} 3600 | dev: true 3601 | 3602 | /promise-inflight/1.0.1: 3603 | resolution: {integrity: sha512-6zWPyEOFaQBJYcGMHBKTKJ3u6TBsnMFOIZSa6ce1e/ZrrsOlnHRHbabMjLiBYKp+n44X9eUI6VUPaukCXHuG4g==} 3604 | peerDependencies: 3605 | bluebird: '*' 3606 | peerDependenciesMeta: 3607 | bluebird: 3608 | optional: true 3609 | dev: true 3610 | 3611 | /promise-retry/2.0.1: 3612 | resolution: {integrity: sha512-y+WKFlBR8BGXnsNlIHFGPZmyDf3DFMoLhaflAnyZgV6rG6xu+JwesTo2Q9R6XwYmtmwAFCkAk3e35jEdoeh/3g==} 3613 | engines: {node: '>=10'} 3614 | dependencies: 3615 | err-code: 2.0.3 3616 | retry: 0.12.0 3617 | dev: true 3618 | 3619 | /pump/3.0.0: 3620 | resolution: {integrity: sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==} 3621 | dependencies: 3622 | end-of-stream: 1.4.4 3623 | once: 1.4.0 3624 | dev: true 3625 | 3626 | /punycode/1.3.2: 3627 | resolution: {integrity: sha512-RofWgt/7fL5wP1Y7fxE7/EmTLzQVnB0ycyibJ0OOHIlJqTNzglYFxVwETOcIoJqJmpDXJ9xImDv+Fq34F/d4Dw==} 3628 | dev: true 3629 | 3630 | /punycode/2.3.0: 3631 | resolution: {integrity: sha512-rRV+zQD8tVFys26lAGR9WUuS4iUAngJScM+ZRSKtvl5tKeZ2t5bvdNFdNHBW9FWR4guGHlgmsZ1G7BSm2wTbuA==} 3632 | engines: {node: '>=6'} 3633 | dev: true 3634 | 3635 | /querystring/0.2.0: 3636 | resolution: {integrity: sha512-X/xY82scca2tau62i9mDyU9K+I+djTMUsvwf7xnUX5GLvVzgJybOJf4Y6o9Zx3oJK/LSXg5tTZBjwzqVPaPO2g==} 3637 | engines: {node: '>=0.4.x'} 3638 | deprecated: The querystring API is considered Legacy. new code should use the URLSearchParams API instead. 3639 | dev: true 3640 | 3641 | /queue-microtask/1.2.3: 3642 | resolution: {integrity: sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==} 3643 | 3644 | /quick-lru/5.1.1: 3645 | resolution: {integrity: sha512-WuyALRjWPDGtt/wzJiadO5AXY+8hZ80hVpe6MyivgraREW751X3SbhRvG3eLKOYN+8VEvqLcf3wdnt44Z4S4SA==} 3646 | engines: {node: '>=10'} 3647 | dev: true 3648 | 3649 | /read-cmd-shim/3.0.1: 3650 | resolution: {integrity: sha512-kEmDUoYf/CDy8yZbLTmhB1X9kkjf9Q80PCNsDMb7ufrGd6zZSQA1+UyjrO+pZm5K/S4OXCWJeiIt1JA8kAsa6g==} 3651 | engines: {node: ^12.13.0 || ^14.15.0 || >=16.0.0} 3652 | dev: true 3653 | 3654 | /read-package-json-fast/2.0.3: 3655 | resolution: {integrity: sha512-W/BKtbL+dUjTuRL2vziuYhp76s5HZ9qQhd/dKfWIZveD0O40453QNyZhC0e63lqZrAQ4jiOapVoeJ7JrszenQQ==} 3656 | engines: {node: '>=10'} 3657 | dependencies: 3658 | json-parse-even-better-errors: 2.3.1 3659 | npm-normalize-package-bin: 1.0.1 3660 | dev: true 3661 | 3662 | /read-pkg-up/7.0.1: 3663 | resolution: {integrity: sha512-zK0TB7Xd6JpCLmlLmufqykGE+/TlOePD6qKClNW7hHDKFh/J7/7gCWGR7joEQEW1bKq3a3yUZSObOoWLFQ4ohg==} 3664 | engines: {node: '>=8'} 3665 | dependencies: 3666 | find-up: 4.1.0 3667 | read-pkg: 5.2.0 3668 | type-fest: 0.8.1 3669 | dev: true 3670 | 3671 | /read-pkg/5.2.0: 3672 | resolution: {integrity: sha512-Ug69mNOpfvKDAc2Q8DRpMjjzdtrnv9HcSMX+4VsZxD1aZ6ZzrIE7rlzXBtWTyhULSMKg076AW6WR5iZpD0JiOg==} 3673 | engines: {node: '>=8'} 3674 | dependencies: 3675 | '@types/normalize-package-data': 2.4.1 3676 | normalize-package-data: 2.5.0 3677 | parse-json: 5.2.0 3678 | type-fest: 0.6.0 3679 | dev: true 3680 | 3681 | /readable-stream/2.3.8: 3682 | resolution: {integrity: sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==} 3683 | dependencies: 3684 | core-util-is: 1.0.3 3685 | inherits: 2.0.4 3686 | isarray: 1.0.0 3687 | process-nextick-args: 2.0.1 3688 | safe-buffer: 5.1.2 3689 | string_decoder: 1.1.1 3690 | util-deprecate: 1.0.2 3691 | dev: true 3692 | 3693 | /readable-stream/3.6.1: 3694 | resolution: {integrity: sha512-+rQmrWMYGA90yenhTYsLWAsLsqVC8osOw6PKE1HDYiO0gdPeKe/xDHNzIAIn4C91YQ6oenEhfYqqc1883qHbjQ==} 3695 | engines: {node: '>= 6'} 3696 | dependencies: 3697 | inherits: 2.0.4 3698 | string_decoder: 1.3.0 3699 | util-deprecate: 1.0.2 3700 | dev: true 3701 | 3702 | /readdir-scoped-modules/1.1.0: 3703 | resolution: {integrity: sha512-asaikDeqAQg7JifRsZn1NJZXo9E+VwlyCfbkZhwyISinqk5zNS6266HS5kah6P0SaQKGF6SkNnZVHUzHFYxYDw==} 3704 | deprecated: This functionality has been moved to @npmcli/fs 3705 | dependencies: 3706 | debuglog: 1.0.1 3707 | dezalgo: 1.0.4 3708 | graceful-fs: 4.2.10 3709 | once: 1.4.0 3710 | dev: true 3711 | 3712 | /rechoir/0.6.2: 3713 | resolution: {integrity: sha512-HFM8rkZ+i3zrV+4LQjwQ0W+ez98pApMGM3HUrN04j3CqzPOzl9nmP15Y8YXNm8QHGv/eacOVEjqhmWpkRV0NAw==} 3714 | engines: {node: '>= 0.10'} 3715 | dependencies: 3716 | resolve: 1.22.1 3717 | dev: true 3718 | 3719 | /redeyed/2.1.1: 3720 | resolution: {integrity: sha512-FNpGGo1DycYAdnrKFxCMmKYgo/mILAqtRYbkdQD8Ep/Hk2PQ5+aEAEx+IU713RTDmuBaH0c8P5ZozurNu5ObRQ==} 3721 | dependencies: 3722 | esprima: 4.0.1 3723 | 3724 | /regexpp/3.2.0: 3725 | resolution: {integrity: sha512-pq2bWo9mVD43nbts2wGv17XLiNLya+GklZ8kaDLV2Z08gDCsGpnKn9BFMepvWuHCbyVvY7J5o5+BVvoQbmlJLg==} 3726 | engines: {node: '>=8'} 3727 | dev: true 3728 | 3729 | /remove-trailing-separator/1.1.0: 3730 | resolution: {integrity: sha512-/hS+Y0u3aOfIETiaiirUFwDBDzmXPvO+jAfKTitUngIPzdKc6Z0LoFjM/CK5PL4C+eKwHohlHAb6H0VFfmmUsw==} 3731 | dev: true 3732 | 3733 | /replace-ext/1.0.1: 3734 | resolution: {integrity: sha512-yD5BHCe7quCgBph4rMQ+0KkIRKwWCrHDOX1p1Gp6HwjPM5kVoCdKGNhN7ydqqsX6lJEnQDKZ/tFMiEdQ1dvPEw==} 3735 | engines: {node: '>= 0.10'} 3736 | dev: true 3737 | 3738 | /require-directory/2.1.1: 3739 | resolution: {integrity: sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==} 3740 | engines: {node: '>=0.10.0'} 3741 | dev: true 3742 | 3743 | /require-from-string/2.0.2: 3744 | resolution: {integrity: sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==} 3745 | engines: {node: '>=0.10.0'} 3746 | dev: true 3747 | 3748 | /resolve-alpn/1.2.1: 3749 | resolution: {integrity: sha512-0a1F4l73/ZFZOakJnQ3FvkJ2+gSTQWz/r2KE5OdDY0TxPm5h4GkqkWWfM47T7HsbnOtcJVEF4epCVy6u7Q3K+g==} 3750 | dev: true 3751 | 3752 | /resolve-from/4.0.0: 3753 | resolution: {integrity: sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==} 3754 | engines: {node: '>=4'} 3755 | dev: true 3756 | 3757 | /resolve/1.22.1: 3758 | resolution: {integrity: sha512-nBpuuYuY5jFsli/JIs1oldw6fOQCBioohqWZg/2hiaOybXOft4lonv85uDOKXdf8rhyK159cxU5cDcK/NKk8zw==} 3759 | hasBin: true 3760 | dependencies: 3761 | is-core-module: 2.11.0 3762 | path-parse: 1.0.7 3763 | supports-preserve-symlinks-flag: 1.0.0 3764 | dev: true 3765 | 3766 | /responselike/2.0.1: 3767 | resolution: {integrity: sha512-4gl03wn3hj1HP3yzgdI7d3lCkF95F21Pz4BPGvKHinyQzALR5CapwC8yIi0Rh58DEMQ/SguC03wFj2k0M/mHhw==} 3768 | dependencies: 3769 | lowercase-keys: 2.0.0 3770 | dev: true 3771 | 3772 | /restore-cursor/3.1.0: 3773 | resolution: {integrity: sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA==} 3774 | engines: {node: '>=8'} 3775 | dependencies: 3776 | onetime: 5.1.2 3777 | signal-exit: 3.0.7 3778 | dev: true 3779 | 3780 | /retry/0.12.0: 3781 | resolution: {integrity: sha512-9LkiTwjUh6rT555DtE9rTX+BKByPfrMzEAtnlEtdEwr3Nkffwiihqe2bWADg+OQRjt9gl6ICdmB/ZFDCGAtSow==} 3782 | engines: {node: '>= 4'} 3783 | dev: true 3784 | 3785 | /reusify/1.0.4: 3786 | resolution: {integrity: sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==} 3787 | engines: {iojs: '>=1.0.0', node: '>=0.10.0'} 3788 | 3789 | /rimraf/3.0.2: 3790 | resolution: {integrity: sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==} 3791 | hasBin: true 3792 | dependencies: 3793 | glob: 7.2.3 3794 | dev: true 3795 | 3796 | /run-async/2.4.1: 3797 | resolution: {integrity: sha512-tvVnVv01b8c1RrA6Ep7JkStj85Guv/YrMcwqYQnwjsAS2cTmmPGBBjAjpCW7RrSodNSoE2/qg9O4bceNvUuDgQ==} 3798 | engines: {node: '>=0.12.0'} 3799 | dev: true 3800 | 3801 | /run-parallel/1.2.0: 3802 | resolution: {integrity: sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==} 3803 | dependencies: 3804 | queue-microtask: 1.2.3 3805 | 3806 | /rxjs/7.8.0: 3807 | resolution: {integrity: sha512-F2+gxDshqmIub1KdvZkaEfGDwLNpPvk9Fs6LD/MyQxNgMds/WH9OdDDXOmxUZpME+iSK3rQCctkL0DYyytUqMg==} 3808 | dependencies: 3809 | tslib: 2.5.0 3810 | dev: true 3811 | 3812 | /safe-buffer/5.1.2: 3813 | resolution: {integrity: sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==} 3814 | dev: true 3815 | 3816 | /safe-buffer/5.2.1: 3817 | resolution: {integrity: sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==} 3818 | dev: true 3819 | 3820 | /safer-buffer/2.1.2: 3821 | resolution: {integrity: sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==} 3822 | dev: true 3823 | 3824 | /sax/1.2.1: 3825 | resolution: {integrity: sha512-8I2a3LovHTOpm7NV5yOyO8IHqgVsfK4+UuySrXU8YXkSRX7k6hCV9b3HrkKCr3nMpgj+0bmocaJJWpvp1oc7ZA==} 3826 | dev: true 3827 | 3828 | /scoped-regex/2.1.0: 3829 | resolution: {integrity: sha512-g3WxHrqSWCZHGHlSrF51VXFdjImhwvH8ZO/pryFH56Qi0cDsZfylQa/t0jCzVQFNbNvM00HfHjkDPEuarKDSWQ==} 3830 | engines: {node: '>=8'} 3831 | dev: true 3832 | 3833 | /semver/5.7.1: 3834 | resolution: {integrity: sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==} 3835 | hasBin: true 3836 | 3837 | /semver/7.3.8: 3838 | resolution: {integrity: sha512-NB1ctGL5rlHrPJtFDVIVzTyQylMLu9N9VICA6HSFJo8MCGVTMW6gfpicwKmmK/dAjTOrqu5l63JJOpDSrAis3A==} 3839 | engines: {node: '>=10'} 3840 | hasBin: true 3841 | dependencies: 3842 | lru-cache: 6.0.0 3843 | 3844 | /set-blocking/2.0.0: 3845 | resolution: {integrity: sha512-KiKBS8AnWGEyLzofFfmvKwpdPzqiy16LvQfK3yv/fVH7Bj13/wl3JSR1J+rfgRE9q7xUJK4qvgS8raSOeLUehw==} 3846 | dev: true 3847 | 3848 | /shebang-command/1.2.0: 3849 | resolution: {integrity: sha512-EV3L1+UQWGor21OmnvojK36mhg+TyIKDh3iFBKBohr5xeXIhNBcx8oWdgkTEEQ+BEFFYdLRuqMfd5L84N1V5Vg==} 3850 | engines: {node: '>=0.10.0'} 3851 | dependencies: 3852 | shebang-regex: 1.0.0 3853 | 3854 | /shebang-command/2.0.0: 3855 | resolution: {integrity: sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==} 3856 | engines: {node: '>=8'} 3857 | dependencies: 3858 | shebang-regex: 3.0.0 3859 | dev: true 3860 | 3861 | /shebang-regex/1.0.0: 3862 | resolution: {integrity: sha512-wpoSFAxys6b2a2wHZ1XpDSgD7N9iVjg29Ph9uV/uaP9Ex/KXlkTZTeddxDPSYQpgvzKLGJke2UU0AzoGCjNIvQ==} 3863 | engines: {node: '>=0.10.0'} 3864 | 3865 | /shebang-regex/3.0.0: 3866 | resolution: {integrity: sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==} 3867 | engines: {node: '>=8'} 3868 | dev: true 3869 | 3870 | /shell-quote/1.8.0: 3871 | resolution: {integrity: sha512-QHsz8GgQIGKlRi24yFc6a6lN69Idnx634w49ay6+jA5yFh7a1UY+4Rp6HPx/L/1zcEDPEij8cIsiqR6bQsE5VQ==} 3872 | dev: true 3873 | 3874 | /shelljs/0.8.5: 3875 | resolution: {integrity: sha512-TiwcRcrkhHvbrZbnRcFYMLl30Dfov3HKqzp5tO5b4pt6G/SezKcYhmDg15zXVBswHmctSAQKznqNW2LO5tTDow==} 3876 | engines: {node: '>=4'} 3877 | hasBin: true 3878 | dependencies: 3879 | glob: 7.2.3 3880 | interpret: 1.4.0 3881 | rechoir: 0.6.2 3882 | dev: true 3883 | 3884 | /shx/0.3.4: 3885 | resolution: {integrity: sha512-N6A9MLVqjxZYcVn8hLmtneQWIJtp8IKzMP4eMnx+nqkvXoqinUPCbUFLp2UcWTEIUONhlk0ewxr/jaVGlc+J+g==} 3886 | engines: {node: '>=6'} 3887 | hasBin: true 3888 | dependencies: 3889 | minimist: 1.2.8 3890 | shelljs: 0.8.5 3891 | dev: true 3892 | 3893 | /signal-exit/3.0.7: 3894 | resolution: {integrity: sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==} 3895 | dev: true 3896 | 3897 | /slash/3.0.0: 3898 | resolution: {integrity: sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==} 3899 | engines: {node: '>=8'} 3900 | 3901 | /slice-ansi/4.0.0: 3902 | resolution: {integrity: sha512-qMCMfhY040cVHT43K9BFygqYbUPFZKHOg7K73mtTWJRb8pyP3fzf4Ixd5SzdEJQ6MRUg/WBnOLxghZtKKurENQ==} 3903 | engines: {node: '>=10'} 3904 | dependencies: 3905 | ansi-styles: 4.3.0 3906 | astral-regex: 2.0.0 3907 | is-fullwidth-code-point: 3.0.0 3908 | dev: true 3909 | 3910 | /smart-buffer/4.2.0: 3911 | resolution: {integrity: sha512-94hK0Hh8rPqQl2xXc3HsaBoOXKV20MToPkcXvwbISWLEs+64sBq5kFgn2kJDHb1Pry9yrP0dxrCI9RRci7RXKg==} 3912 | engines: {node: '>= 6.0.0', npm: '>= 3.0.0'} 3913 | dev: true 3914 | 3915 | /socks-proxy-agent/6.2.1: 3916 | resolution: {integrity: sha512-a6KW9G+6B3nWZ1yB8G7pJwL3ggLy1uTzKAgCb7ttblwqdz9fMGJUuTy3uFzEP48FAs9FLILlmzDlE2JJhVQaXQ==} 3917 | engines: {node: '>= 10'} 3918 | dependencies: 3919 | agent-base: 6.0.2 3920 | debug: 4.3.4 3921 | socks: 2.7.1 3922 | transitivePeerDependencies: 3923 | - supports-color 3924 | dev: true 3925 | 3926 | /socks-proxy-agent/7.0.0: 3927 | resolution: {integrity: sha512-Fgl0YPZ902wEsAyiQ+idGd1A7rSFx/ayC1CQVMw5P+EQx2V0SgpGtf6OKFhVjPflPUl9YMmEOnmfjCdMUsygww==} 3928 | engines: {node: '>= 10'} 3929 | dependencies: 3930 | agent-base: 6.0.2 3931 | debug: 4.3.4 3932 | socks: 2.7.1 3933 | transitivePeerDependencies: 3934 | - supports-color 3935 | dev: true 3936 | 3937 | /socks/2.7.1: 3938 | resolution: {integrity: sha512-7maUZy1N7uo6+WVEX6psASxtNlKaNVMlGQKkG/63nEDdLOWNbiUMoLK7X4uYoLhQstau72mLgfEWcXcwsaHbYQ==} 3939 | engines: {node: '>= 10.13.0', npm: '>= 3.0.0'} 3940 | dependencies: 3941 | ip: 2.0.0 3942 | smart-buffer: 4.2.0 3943 | dev: true 3944 | 3945 | /sort-keys/4.2.0: 3946 | resolution: {integrity: sha512-aUYIEU/UviqPgc8mHR6IW1EGxkAXpeRETYcrzg8cLAvUPZcpAlleSXHV2mY7G12GphSH6Gzv+4MMVSSkbdteHg==} 3947 | engines: {node: '>=8'} 3948 | dependencies: 3949 | is-plain-obj: 2.1.0 3950 | dev: true 3951 | 3952 | /source-map-js/1.0.2: 3953 | resolution: {integrity: sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==} 3954 | engines: {node: '>=0.10.0'} 3955 | dev: true 3956 | 3957 | /source-map/0.5.7: 3958 | resolution: {integrity: sha512-LbrmJOMUSdEVxIKvdcJzQC+nQhe8FUZQTXQy6+I75skNgn3OoQ0DZA8YnFa7gp8tqtL3KPf1kmo0R5DoApeSGQ==} 3959 | engines: {node: '>=0.10.0'} 3960 | dev: true 3961 | 3962 | /source-map/0.6.1: 3963 | resolution: {integrity: sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==} 3964 | engines: {node: '>=0.10.0'} 3965 | dev: true 3966 | 3967 | /sourcemap-codec/1.4.8: 3968 | resolution: {integrity: sha512-9NykojV5Uih4lgo5So5dtw+f0JgJX30KCNI8gwhz2J9A15wD0Ml6tjHKwf6fTSa6fAdVBdZeNOs9eJ71qCk8vA==} 3969 | deprecated: Please use @jridgewell/sourcemap-codec instead 3970 | dev: true 3971 | 3972 | /spawn-command/0.0.2-1: 3973 | resolution: {integrity: sha512-n98l9E2RMSJ9ON1AKisHzz7V42VDiBQGY6PB1BwRglz99wpVsSuGzQ+jOi6lFXBGVTCrRpltvjm+/XA+tpeJrg==} 3974 | dev: true 3975 | 3976 | /spdx-correct/3.2.0: 3977 | resolution: {integrity: sha512-kN9dJbvnySHULIluDHy32WHRUu3Og7B9sbY7tsFLctQkIqnMh3hErYgdMjTYuqmcXX+lK5T1lnUt3G7zNswmZA==} 3978 | dependencies: 3979 | spdx-expression-parse: 3.0.1 3980 | spdx-license-ids: 3.0.12 3981 | dev: true 3982 | 3983 | /spdx-exceptions/2.3.0: 3984 | resolution: {integrity: sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A==} 3985 | dev: true 3986 | 3987 | /spdx-expression-parse/3.0.1: 3988 | resolution: {integrity: sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==} 3989 | dependencies: 3990 | spdx-exceptions: 2.3.0 3991 | spdx-license-ids: 3.0.12 3992 | dev: true 3993 | 3994 | /spdx-license-ids/3.0.12: 3995 | resolution: {integrity: sha512-rr+VVSXtRhO4OHbXUiAF7xW3Bo9DuuF6C5jH+q/x15j2jniycgKbxU09Hr0WqlSLUs4i4ltHGXqTe7VHclYWyA==} 3996 | dev: true 3997 | 3998 | /sprintf-js/1.0.3: 3999 | resolution: {integrity: sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==} 4000 | 4001 | /ssri/8.0.1: 4002 | resolution: {integrity: sha512-97qShzy1AiyxvPNIkLWoGua7xoQzzPjQ0HAH4B0rWKo7SZ6USuPcrUiAFrws0UH8RrbWmgq3LMTObhPIHbbBeQ==} 4003 | engines: {node: '>= 8'} 4004 | dependencies: 4005 | minipass: 3.3.6 4006 | dev: true 4007 | 4008 | /ssri/9.0.1: 4009 | resolution: {integrity: sha512-o57Wcn66jMQvfHG1FlYbWeZWW/dHZhJXjpIcTfXldXEk5nz5lStPo3mK0OJQfGR3RbZUlbISexbljkJzuEj/8Q==} 4010 | engines: {node: ^12.13.0 || ^14.15.0 || >=16.0.0} 4011 | dependencies: 4012 | minipass: 3.3.6 4013 | dev: true 4014 | 4015 | /string-width/1.0.2: 4016 | resolution: {integrity: sha512-0XsVpQLnVCXHJfyEs8tC0zpTVIr5PKKsQtkT29IwupnPTjtPmQ3xT/4yCREF9hYkV/3M3kzcUTSAZT6a6h81tw==} 4017 | engines: {node: '>=0.10.0'} 4018 | dependencies: 4019 | code-point-at: 1.1.0 4020 | is-fullwidth-code-point: 1.0.0 4021 | strip-ansi: 3.0.1 4022 | dev: true 4023 | 4024 | /string-width/2.1.1: 4025 | resolution: {integrity: sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==} 4026 | engines: {node: '>=4'} 4027 | dependencies: 4028 | is-fullwidth-code-point: 2.0.0 4029 | strip-ansi: 4.0.0 4030 | dev: true 4031 | 4032 | /string-width/4.2.3: 4033 | resolution: {integrity: sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==} 4034 | engines: {node: '>=8'} 4035 | dependencies: 4036 | emoji-regex: 8.0.0 4037 | is-fullwidth-code-point: 3.0.0 4038 | strip-ansi: 6.0.1 4039 | 4040 | /string_decoder/1.1.1: 4041 | resolution: {integrity: sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==} 4042 | dependencies: 4043 | safe-buffer: 5.1.2 4044 | dev: true 4045 | 4046 | /string_decoder/1.3.0: 4047 | resolution: {integrity: sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==} 4048 | dependencies: 4049 | safe-buffer: 5.2.1 4050 | dev: true 4051 | 4052 | /strip-ansi/3.0.1: 4053 | resolution: {integrity: sha512-VhumSSbBqDTP8p2ZLKj40UjBCV4+v8bUSEpUb4KjRgWk9pbqGF4REFj6KEagidb2f/M6AzC0EmFyDNGaw9OCzg==} 4054 | engines: {node: '>=0.10.0'} 4055 | dependencies: 4056 | ansi-regex: 2.1.1 4057 | dev: true 4058 | 4059 | /strip-ansi/4.0.0: 4060 | resolution: {integrity: sha512-4XaJ2zQdCzROZDivEVIDPkcQn8LMFSa8kj8Gxb/Lnwzv9A8VctNZ+lfivC/sV3ivW8ElJTERXZoPBRrZKkNKow==} 4061 | engines: {node: '>=4'} 4062 | dependencies: 4063 | ansi-regex: 3.0.1 4064 | dev: true 4065 | 4066 | /strip-ansi/6.0.1: 4067 | resolution: {integrity: sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==} 4068 | engines: {node: '>=8'} 4069 | dependencies: 4070 | ansi-regex: 5.0.1 4071 | 4072 | /strip-bom-buf/1.0.0: 4073 | resolution: {integrity: sha512-1sUIL1jck0T1mhOLP2c696BIznzT525Lkub+n4jjMHjhjhoAQA6Ye659DxdlZBr0aLDMQoTxKIpnlqxgtwjsuQ==} 4074 | engines: {node: '>=4'} 4075 | dependencies: 4076 | is-utf8: 0.2.1 4077 | dev: true 4078 | 4079 | /strip-bom-stream/2.0.0: 4080 | resolution: {integrity: sha512-yH0+mD8oahBZWnY43vxs4pSinn8SMKAdml/EOGBewoe1Y0Eitd0h2Mg3ZRiXruUW6L4P+lvZiEgbh0NgUGia1w==} 4081 | engines: {node: '>=0.10.0'} 4082 | dependencies: 4083 | first-chunk-stream: 2.0.0 4084 | strip-bom: 2.0.0 4085 | dev: true 4086 | 4087 | /strip-bom/2.0.0: 4088 | resolution: {integrity: sha512-kwrX1y7czp1E69n2ajbG65mIo9dqvJ+8aBQXOGVxqwvNbsXdFM6Lq37dLAY3mknUwru8CfcCbfOLL/gMo+fi3g==} 4089 | engines: {node: '>=0.10.0'} 4090 | dependencies: 4091 | is-utf8: 0.2.1 4092 | dev: true 4093 | 4094 | /strip-bom/3.0.0: 4095 | resolution: {integrity: sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA==} 4096 | engines: {node: '>=4'} 4097 | dev: true 4098 | 4099 | /strip-final-newline/2.0.0: 4100 | resolution: {integrity: sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==} 4101 | engines: {node: '>=6'} 4102 | dev: true 4103 | 4104 | /strip-json-comments/3.1.1: 4105 | resolution: {integrity: sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==} 4106 | engines: {node: '>=8'} 4107 | dev: true 4108 | 4109 | /supports-color/2.0.0: 4110 | resolution: {integrity: sha512-KKNVtd6pCYgPIKU4cp2733HWYCpplQhddZLBUryaAHou723x+FRzQ5Df824Fj+IyyuiQTRoub4SnIFfIcrp70g==} 4111 | engines: {node: '>=0.8.0'} 4112 | dev: true 4113 | 4114 | /supports-color/5.5.0: 4115 | resolution: {integrity: sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==} 4116 | engines: {node: '>=4'} 4117 | dependencies: 4118 | has-flag: 3.0.0 4119 | dev: true 4120 | 4121 | /supports-color/7.2.0: 4122 | resolution: {integrity: sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==} 4123 | engines: {node: '>=8'} 4124 | dependencies: 4125 | has-flag: 4.0.0 4126 | 4127 | /supports-color/8.1.1: 4128 | resolution: {integrity: sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==} 4129 | engines: {node: '>=10'} 4130 | dependencies: 4131 | has-flag: 4.0.0 4132 | 4133 | /supports-hyperlinks/2.3.0: 4134 | resolution: {integrity: sha512-RpsAZlpWcDwOPQA22aCH4J0t7L8JmAvsCxfOSEwm7cQs3LshN36QaTkwd70DnBOXDWGssw2eUoc8CaRWT0XunA==} 4135 | engines: {node: '>=8'} 4136 | dependencies: 4137 | has-flag: 4.0.0 4138 | supports-color: 7.2.0 4139 | 4140 | /supports-preserve-symlinks-flag/1.0.0: 4141 | resolution: {integrity: sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==} 4142 | engines: {node: '>= 0.4'} 4143 | dev: true 4144 | 4145 | /table/6.8.1: 4146 | resolution: {integrity: sha512-Y4X9zqrCftUhMeH2EptSSERdVKt/nEdijTOacGD/97EKjhQ/Qs8RTlEGABSJNNN8lac9kheH+af7yAkEWlgneA==} 4147 | engines: {node: '>=10.0.0'} 4148 | dependencies: 4149 | ajv: 8.12.0 4150 | lodash.truncate: 4.4.2 4151 | slice-ansi: 4.0.0 4152 | string-width: 4.2.3 4153 | strip-ansi: 6.0.1 4154 | dev: true 4155 | 4156 | /taketalk/1.0.0: 4157 | resolution: {integrity: sha512-kS7E53It6HA8S1FVFBWP7HDwgTiJtkmYk7TsowGlizzVrivR1Mf9mgjXHY1k7rOfozRVMZSfwjB3bevO4QEqpg==} 4158 | dependencies: 4159 | get-stdin: 4.0.1 4160 | minimist: 1.2.8 4161 | dev: true 4162 | 4163 | /tar/6.1.13: 4164 | resolution: {integrity: sha512-jdIBIN6LTIe2jqzay/2vtYLlBHa3JF42ot3h1dW8Q0PaAG4v8rm0cvpVePtau5C6OKXGGcgO9q2AMNSWxiLqKw==} 4165 | engines: {node: '>=10'} 4166 | dependencies: 4167 | chownr: 2.0.0 4168 | fs-minipass: 2.1.0 4169 | minipass: 4.2.4 4170 | minizlib: 2.1.2 4171 | mkdirp: 1.0.4 4172 | yallist: 4.0.0 4173 | dev: true 4174 | 4175 | /text-table/0.2.0: 4176 | resolution: {integrity: sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==} 4177 | dev: true 4178 | 4179 | /textextensions/5.15.0: 4180 | resolution: {integrity: sha512-MeqZRHLuaGamUXGuVn2ivtU3LA3mLCCIO5kUGoohTCoGmCBg/+8yPhWVX9WSl9telvVd8erftjFk9Fwb2dD6rw==} 4181 | engines: {node: '>=0.8'} 4182 | dev: true 4183 | 4184 | /through/2.3.8: 4185 | resolution: {integrity: sha512-w89qg7PI8wAdvX60bMDP+bFoD5Dvhm9oLheFp5O4a2QF0cSBGsBX4qZmadPMvVqlLJBBci+WqGGOAPvcDeNSVg==} 4186 | dev: true 4187 | 4188 | /tmp/0.0.33: 4189 | resolution: {integrity: sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==} 4190 | engines: {node: '>=0.6.0'} 4191 | dependencies: 4192 | os-tmpdir: 1.0.2 4193 | dev: true 4194 | 4195 | /to-fast-properties/2.0.0: 4196 | resolution: {integrity: sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==} 4197 | engines: {node: '>=4'} 4198 | dev: true 4199 | 4200 | /to-regex-range/5.0.1: 4201 | resolution: {integrity: sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==} 4202 | engines: {node: '>=8.0'} 4203 | dependencies: 4204 | is-number: 7.0.0 4205 | 4206 | /tr46/0.0.3: 4207 | resolution: {integrity: sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==} 4208 | dev: true 4209 | 4210 | /tree-kill/1.2.2: 4211 | resolution: {integrity: sha512-L0Orpi8qGpRG//Nd+H90vFB+3iHnue1zSSGmNOOCh1GLJ7rUKVwV2HvijphGQS2UmhUZewS9VgvxYIdgr+fG1A==} 4212 | hasBin: true 4213 | dev: true 4214 | 4215 | /treeverse/1.0.4: 4216 | resolution: {integrity: sha512-whw60l7r+8ZU8Tu/Uc2yxtc4ZTZbR/PF3u1IPNKGQ6p8EICLb3Z2lAgoqw9bqYd8IkgnsaOcLzYHFckjqNsf0g==} 4217 | dev: true 4218 | 4219 | /ts-node/10.9.1_zix2iy4c4a7fivhrc3ey4gy2pu: 4220 | resolution: {integrity: sha512-NtVysVPkxxrwFGUUxGYhfux8k78pQB3JqYBXlLRZgdGUqTO5wU/UyHop5p70iEbGhB7q5KmiZiU0Y3KlJrScEw==} 4221 | hasBin: true 4222 | peerDependencies: 4223 | '@swc/core': '>=1.2.50' 4224 | '@swc/wasm': '>=1.2.50' 4225 | '@types/node': '*' 4226 | typescript: '>=2.7' 4227 | peerDependenciesMeta: 4228 | '@swc/core': 4229 | optional: true 4230 | '@swc/wasm': 4231 | optional: true 4232 | dependencies: 4233 | '@cspotcode/source-map-support': 0.8.1 4234 | '@tsconfig/node10': 1.0.9 4235 | '@tsconfig/node12': 1.0.11 4236 | '@tsconfig/node14': 1.0.3 4237 | '@tsconfig/node16': 1.0.3 4238 | '@types/node': 16.18.14 4239 | acorn: 8.8.2 4240 | acorn-walk: 8.2.0 4241 | arg: 4.1.3 4242 | create-require: 1.1.1 4243 | diff: 4.0.2 4244 | make-error: 1.3.6 4245 | typescript: 4.9.5 4246 | v8-compile-cache-lib: 3.0.1 4247 | yn: 3.1.1 4248 | dev: true 4249 | 4250 | /tslib/1.14.1: 4251 | resolution: {integrity: sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==} 4252 | dev: true 4253 | 4254 | /tslib/2.5.0: 4255 | resolution: {integrity: sha512-336iVw3rtn2BUK7ORdIAHTyxHGRIHVReokCR3XjbckJMK7ms8FysBfhLR8IXnAgy7T0PTPNBWKiH514FOW/WSg==} 4256 | 4257 | /tsutils/3.21.0_typescript@4.9.5: 4258 | resolution: {integrity: sha512-mHKK3iUXL+3UF6xL5k0PEhKRUBKPBCv/+RkEOpjRWxxx27KKRBmmA60A9pgOUvMi8GKhRMPEmjBRPzs2W7O1OA==} 4259 | engines: {node: '>= 6'} 4260 | peerDependencies: 4261 | typescript: '>=2.8.0 || >= 3.2.0-dev || >= 3.3.0-dev || >= 3.4.0-dev || >= 3.5.0-dev || >= 3.6.0-dev || >= 3.6.0-beta || >= 3.7.0-dev || >= 3.7.0-beta' 4262 | dependencies: 4263 | tslib: 1.14.1 4264 | typescript: 4.9.5 4265 | dev: true 4266 | 4267 | /tunnel-agent/0.6.0: 4268 | resolution: {integrity: sha512-McnNiV1l8RYeY8tBgEpuodCC1mLUdbSN+CYBL7kJsJNInOP8UjDDEwdk6Mw60vdLLrr5NHKZhMAOSrR2NZuQ+w==} 4269 | dependencies: 4270 | safe-buffer: 5.2.1 4271 | dev: true 4272 | 4273 | /type-check/0.4.0: 4274 | resolution: {integrity: sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==} 4275 | engines: {node: '>= 0.8.0'} 4276 | dependencies: 4277 | prelude-ls: 1.2.1 4278 | dev: true 4279 | 4280 | /type-fest/0.20.2: 4281 | resolution: {integrity: sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==} 4282 | engines: {node: '>=10'} 4283 | dev: true 4284 | 4285 | /type-fest/0.21.3: 4286 | resolution: {integrity: sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w==} 4287 | engines: {node: '>=10'} 4288 | 4289 | /type-fest/0.6.0: 4290 | resolution: {integrity: sha512-q+MB8nYR1KDLrgr4G5yemftpMC7/QLqVndBmEEdqzmNj5dcFOO4Oo8qlwZE3ULT3+Zim1F8Kq4cBnikNhlCMlg==} 4291 | engines: {node: '>=8'} 4292 | dev: true 4293 | 4294 | /type-fest/0.8.1: 4295 | resolution: {integrity: sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==} 4296 | engines: {node: '>=8'} 4297 | dev: true 4298 | 4299 | /typescript/4.9.5: 4300 | resolution: {integrity: sha512-1FXk9E2Hm+QzZQ7z+McJiHL4NW1F2EzMu9Nq9i3zAaGqibafqYwCVU6WyWAuyQRRzOlxou8xZSyXLEN8oKj24g==} 4301 | engines: {node: '>=4.2.0'} 4302 | hasBin: true 4303 | dev: true 4304 | 4305 | /unique-filename/1.1.1: 4306 | resolution: {integrity: sha512-Vmp0jIp2ln35UTXuryvjzkjGdRyf9b2lTXuSYUiPmzRcl3FDtYqAwOnTJkAngD9SWhnoJzDbTKwaOrZ+STtxNQ==} 4307 | dependencies: 4308 | unique-slug: 2.0.2 4309 | dev: true 4310 | 4311 | /unique-filename/2.0.1: 4312 | resolution: {integrity: sha512-ODWHtkkdx3IAR+veKxFV+VBkUMcN+FaqzUUd7IZzt+0zhDZFPFxhlqwPF3YQvMHx1TD0tdgYl+kuPnJ8E6ql7A==} 4313 | engines: {node: ^12.13.0 || ^14.15.0 || >=16.0.0} 4314 | dependencies: 4315 | unique-slug: 3.0.0 4316 | dev: true 4317 | 4318 | /unique-slug/2.0.2: 4319 | resolution: {integrity: sha512-zoWr9ObaxALD3DOPfjPSqxt4fnZiWblxHIgeWqW8x7UqDzEtHEQLzji2cuJYQFCU6KmoJikOYAZlrTHHebjx2w==} 4320 | dependencies: 4321 | imurmurhash: 0.1.4 4322 | dev: true 4323 | 4324 | /unique-slug/3.0.0: 4325 | resolution: {integrity: sha512-8EyMynh679x/0gqE9fT9oilG+qEt+ibFyqjuVTsZn1+CMxH+XLlpvr2UZx4nVcCwTpx81nICr2JQFkM+HPLq4w==} 4326 | engines: {node: ^12.13.0 || ^14.15.0 || >=16.0.0} 4327 | dependencies: 4328 | imurmurhash: 0.1.4 4329 | dev: true 4330 | 4331 | /universal-user-agent/6.0.0: 4332 | resolution: {integrity: sha512-isyNax3wXoKaulPDZWHQqbmIx1k2tb9fb3GGDBRxCscfYV2Ch7WxPArBsFEG8s/safwXTT7H4QGhaIkTp9447w==} 4333 | dev: true 4334 | 4335 | /universalify/0.1.2: 4336 | resolution: {integrity: sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==} 4337 | engines: {node: '>= 4.0.0'} 4338 | dev: true 4339 | 4340 | /universalify/2.0.0: 4341 | resolution: {integrity: sha512-hAZsKq7Yy11Zu1DE0OzWjw7nnLZmJZYTDZZyEFHZdUhV8FkH5MCfoU1XMaxXovpyW5nq5scPqq0ZDP9Zyl04oQ==} 4342 | engines: {node: '>= 10.0.0'} 4343 | 4344 | /untildify/4.0.0: 4345 | resolution: {integrity: sha512-KK8xQ1mkzZeg9inewmFVDNkg3l5LUhoq9kN6iWYB/CC9YMG8HA+c1Q8HwDe6dEX7kErrEVNVBO3fWsVq5iDgtw==} 4346 | engines: {node: '>=8'} 4347 | dev: true 4348 | 4349 | /uri-js/4.4.1: 4350 | resolution: {integrity: sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==} 4351 | dependencies: 4352 | punycode: 2.3.0 4353 | dev: true 4354 | 4355 | /url/0.10.3: 4356 | resolution: {integrity: sha512-hzSUW2q06EqL1gKM/a+obYHLIO6ct2hwPuviqTTOcfFVc61UbfJ2Q32+uGL/HCPxKqrdGB5QUwIe7UqlDgwsOQ==} 4357 | dependencies: 4358 | punycode: 1.3.2 4359 | querystring: 0.2.0 4360 | dev: true 4361 | 4362 | /util-deprecate/1.0.2: 4363 | resolution: {integrity: sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==} 4364 | dev: true 4365 | 4366 | /util/0.12.5: 4367 | resolution: {integrity: sha512-kZf/K6hEIrWHI6XqOFUiiMa+79wE/D8Q+NCNAWclkyg3b4d2k7s0QGepNjiABc+aR3N1PAyHL7p6UcLY6LmrnA==} 4368 | dependencies: 4369 | inherits: 2.0.4 4370 | is-arguments: 1.1.1 4371 | is-generator-function: 1.0.10 4372 | is-typed-array: 1.1.10 4373 | which-typed-array: 1.1.9 4374 | dev: true 4375 | 4376 | /uuid/8.0.0: 4377 | resolution: {integrity: sha512-jOXGuXZAWdsTH7eZLtyXMqUb9EcWMGZNbL9YcGBJl4MH4nrxHmZJhEHvyLFrkxo+28uLb/NYRcStH48fnD0Vzw==} 4378 | hasBin: true 4379 | dev: true 4380 | 4381 | /v8-compile-cache-lib/3.0.1: 4382 | resolution: {integrity: sha512-wa7YjyUGfNZngI/vtK0UHAN+lgDCxBPCylVXGp0zu59Fz5aiGtNXaq3DhIov063MorB+VfufLh3JlF2KdTK3xg==} 4383 | dev: true 4384 | 4385 | /v8-compile-cache/2.3.0: 4386 | resolution: {integrity: sha512-l8lCEmLcLYZh4nbunNZvQCJc5pv7+RCwa8q/LdUx8u7lsWvPDKmpodJAJNwkAhJC//dFY48KuIEmjtd4RViDrA==} 4387 | dev: true 4388 | 4389 | /validate-npm-package-license/3.0.4: 4390 | resolution: {integrity: sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==} 4391 | dependencies: 4392 | spdx-correct: 3.2.0 4393 | spdx-expression-parse: 3.0.1 4394 | dev: true 4395 | 4396 | /validate-npm-package-name/3.0.0: 4397 | resolution: {integrity: sha512-M6w37eVCMMouJ9V/sdPGnC5H4uDr73/+xdq0FBLO3TFFX1+7wiUY6Es328NN+y43tmY+doUdN9g9J21vqB7iLw==} 4398 | dependencies: 4399 | builtins: 1.0.3 4400 | dev: true 4401 | 4402 | /vinyl-file/3.0.0: 4403 | resolution: {integrity: sha512-BoJDj+ca3D9xOuPEM6RWVtWQtvEPQiQYn82LvdxhLWplfQsBzBqtgK0yhCP0s1BNTi6dH9BO+dzybvyQIacifg==} 4404 | engines: {node: '>=4'} 4405 | dependencies: 4406 | graceful-fs: 4.2.10 4407 | pify: 2.3.0 4408 | strip-bom-buf: 1.0.0 4409 | strip-bom-stream: 2.0.0 4410 | vinyl: 2.2.1 4411 | dev: true 4412 | 4413 | /vinyl/2.2.1: 4414 | resolution: {integrity: sha512-LII3bXRFBZLlezoG5FfZVcXflZgWP/4dCwKtxd5ky9+LOtM4CS3bIRQsmR1KMnMW07jpE8fqR2lcxPZ+8sJIcw==} 4415 | engines: {node: '>= 0.10'} 4416 | dependencies: 4417 | clone: 2.1.2 4418 | clone-buffer: 1.0.0 4419 | clone-stats: 1.0.0 4420 | cloneable-readable: 1.1.3 4421 | remove-trailing-separator: 1.1.0 4422 | replace-ext: 1.0.1 4423 | dev: true 4424 | 4425 | /walk-up-path/1.0.0: 4426 | resolution: {integrity: sha512-hwj/qMDUEjCU5h0xr90KGCf0tg0/LgJbmOWgrWKYlcJZM7XvquvUJZ0G/HMGr7F7OQMOUuPHWP9JpriinkAlkg==} 4427 | dev: true 4428 | 4429 | /wcwidth/1.0.1: 4430 | resolution: {integrity: sha512-XHPEwS0q6TaxcvG85+8EYkbiCux2XtWG2mkc47Ng2A77BQu9+DqIOJldST4HgPkuea7dvKSj5VgX3P1d4rW8Tg==} 4431 | dependencies: 4432 | defaults: 1.0.4 4433 | dev: true 4434 | 4435 | /webidl-conversions/3.0.1: 4436 | resolution: {integrity: sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==} 4437 | dev: true 4438 | 4439 | /whatwg-url/5.0.0: 4440 | resolution: {integrity: sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==} 4441 | dependencies: 4442 | tr46: 0.0.3 4443 | webidl-conversions: 3.0.1 4444 | dev: true 4445 | 4446 | /which-pm/2.0.0: 4447 | resolution: {integrity: sha512-Lhs9Pmyph0p5n5Z3mVnN0yWcbQYUAD7rbQUiMsQxOJ3T57k7RFe35SUwWMf7dsbDZks1uOmw4AecB/JMDj3v/w==} 4448 | engines: {node: '>=8.15'} 4449 | dependencies: 4450 | load-yaml-file: 0.2.0 4451 | path-exists: 4.0.0 4452 | dev: true 4453 | 4454 | /which-typed-array/1.1.9: 4455 | resolution: {integrity: sha512-w9c4xkx6mPidwp7180ckYWfMmvxpjlZuIudNtDf4N/tTAUB8VJbX25qZoAsrtGuYNnGw3pa0AXgbGKRB8/EceA==} 4456 | engines: {node: '>= 0.4'} 4457 | dependencies: 4458 | available-typed-arrays: 1.0.5 4459 | call-bind: 1.0.2 4460 | for-each: 0.3.3 4461 | gopd: 1.0.1 4462 | has-tostringtag: 1.0.0 4463 | is-typed-array: 1.1.10 4464 | dev: true 4465 | 4466 | /which/1.3.1: 4467 | resolution: {integrity: sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==} 4468 | hasBin: true 4469 | dependencies: 4470 | isexe: 2.0.0 4471 | 4472 | /which/2.0.2: 4473 | resolution: {integrity: sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==} 4474 | engines: {node: '>= 8'} 4475 | hasBin: true 4476 | dependencies: 4477 | isexe: 2.0.0 4478 | dev: true 4479 | 4480 | /wide-align/1.1.5: 4481 | resolution: {integrity: sha512-eDMORYaPNZ4sQIuuYPDHdQvf4gyCF9rEEV/yPxGfwPkRodwEgiMUUXTx/dex+Me0wxx53S+NgUHaP7y3MGlDmg==} 4482 | dependencies: 4483 | string-width: 4.2.3 4484 | dev: true 4485 | 4486 | /widest-line/3.1.0: 4487 | resolution: {integrity: sha512-NsmoXalsWVDMGupxZ5R08ka9flZjjiLvHVAWYOKtiKM8ujtZWr9cRffak+uSE48+Ob8ObalXpwyeUiyDD6QFgg==} 4488 | engines: {node: '>=8'} 4489 | dependencies: 4490 | string-width: 4.2.3 4491 | 4492 | /word-wrap/1.2.3: 4493 | resolution: {integrity: sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==} 4494 | engines: {node: '>=0.10.0'} 4495 | dev: true 4496 | 4497 | /wordwrap/1.0.0: 4498 | resolution: {integrity: sha512-gvVzJFlPycKc5dZN4yPkP8w7Dc37BtP1yczEneOb4uq34pXZcvrtRTmWV8W+Ume+XCxKgbjM+nevkyFPMybd4Q==} 4499 | 4500 | /wrap-ansi/2.1.0: 4501 | resolution: {integrity: sha512-vAaEaDM946gbNpH5pLVNR+vX2ht6n0Bt3GXwVB1AuAqZosOvHNF3P7wDnh8KLkSqgUh0uh77le7Owgoz+Z9XBw==} 4502 | engines: {node: '>=0.10.0'} 4503 | dependencies: 4504 | string-width: 1.0.2 4505 | strip-ansi: 3.0.1 4506 | dev: true 4507 | 4508 | /wrap-ansi/7.0.0: 4509 | resolution: {integrity: sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==} 4510 | engines: {node: '>=10'} 4511 | dependencies: 4512 | ansi-styles: 4.3.0 4513 | string-width: 4.2.3 4514 | strip-ansi: 6.0.1 4515 | 4516 | /wrappy/1.0.2: 4517 | resolution: {integrity: sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==} 4518 | dev: true 4519 | 4520 | /write-file-atomic/4.0.2: 4521 | resolution: {integrity: sha512-7KxauUdBmSdWnmpaGFg+ppNjKF8uNLry8LyzjauQDOVONfFLNKrKvQOxZ/VuTIcS/gge/YNahf5RIIQWTSarlg==} 4522 | engines: {node: ^12.13.0 || ^14.15.0 || >=16.0.0} 4523 | dependencies: 4524 | imurmurhash: 0.1.4 4525 | signal-exit: 3.0.7 4526 | dev: true 4527 | 4528 | /xml2js/0.4.19: 4529 | resolution: {integrity: sha512-esZnJZJOiJR9wWKMyuvSE1y6Dq5LCuJanqhxslH2bxM6duahNZ+HMpCLhBQGZkbX6xRf8x1Y2eJlgt2q3qo49Q==} 4530 | dependencies: 4531 | sax: 1.2.1 4532 | xmlbuilder: 9.0.7 4533 | dev: true 4534 | 4535 | /xmlbuilder/9.0.7: 4536 | resolution: {integrity: sha512-7YXTQc3P2l9+0rjaUbLwMKRhtmwg1M1eDf6nag7urC7pIPYLD9W/jmzQ4ptRSUbodw5S0jfoGTflLemQibSpeQ==} 4537 | engines: {node: '>=4.0'} 4538 | dev: true 4539 | 4540 | /y18n/5.0.8: 4541 | resolution: {integrity: sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==} 4542 | engines: {node: '>=10'} 4543 | dev: true 4544 | 4545 | /yallist/4.0.0: 4546 | resolution: {integrity: sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==} 4547 | 4548 | /yargs-parser/21.1.1: 4549 | resolution: {integrity: sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==} 4550 | engines: {node: '>=12'} 4551 | dev: true 4552 | 4553 | /yargs/17.7.1: 4554 | resolution: {integrity: sha512-cwiTb08Xuv5fqF4AovYacTFNxk62th7LKJ6BL9IGUpTJrWoU7/7WdQGTP2SjKf1dUNBGzDd28p/Yfs/GI6JrLw==} 4555 | engines: {node: '>=12'} 4556 | dependencies: 4557 | cliui: 8.0.1 4558 | escalade: 3.1.1 4559 | get-caller-file: 2.0.5 4560 | require-directory: 2.1.1 4561 | string-width: 4.2.3 4562 | y18n: 5.0.8 4563 | yargs-parser: 21.1.1 4564 | dev: true 4565 | 4566 | /yeoman-environment/3.15.1: 4567 | resolution: {integrity: sha512-P4DTQxqCxNTBD7gph+P+dIckBdx0xyHmvOYgO3vsc9/Sl67KJ6QInz5Qv6tlXET3CFFJ/YxPIdl9rKb0XwTRLg==} 4568 | engines: {node: '>=12.10.0'} 4569 | hasBin: true 4570 | dependencies: 4571 | '@npmcli/arborist': 4.3.1 4572 | are-we-there-yet: 2.0.0 4573 | arrify: 2.0.1 4574 | binaryextensions: 4.18.0 4575 | chalk: 4.1.2 4576 | cli-table: 0.3.11 4577 | commander: 7.1.0 4578 | dateformat: 4.6.3 4579 | debug: 4.3.4 4580 | diff: 5.1.0 4581 | error: 10.4.0 4582 | escape-string-regexp: 4.0.0 4583 | execa: 5.1.1 4584 | find-up: 5.0.0 4585 | globby: 11.1.0 4586 | grouped-queue: 2.0.0 4587 | inquirer: 8.2.5 4588 | is-scoped: 2.1.0 4589 | isbinaryfile: 4.0.10 4590 | lodash: 4.17.21 4591 | log-symbols: 4.1.0 4592 | mem-fs: 2.3.0 4593 | mem-fs-editor: 9.7.0_mem-fs@2.3.0 4594 | minimatch: 3.1.2 4595 | npmlog: 5.0.1 4596 | p-queue: 6.6.2 4597 | p-transform: 1.3.0 4598 | pacote: 12.0.3 4599 | preferred-pm: 3.0.3 4600 | pretty-bytes: 5.6.0 4601 | semver: 7.3.8 4602 | slash: 3.0.0 4603 | strip-ansi: 6.0.1 4604 | text-table: 0.2.0 4605 | textextensions: 5.15.0 4606 | untildify: 4.0.0 4607 | transitivePeerDependencies: 4608 | - bluebird 4609 | - supports-color 4610 | dev: true 4611 | 4612 | /yeoman-generator/5.8.0_yeoman-environment@3.15.1: 4613 | resolution: {integrity: sha512-dsrwFn9/c2/MOe80sa2nKfbZd/GaPTgmmehdgkFifs1VN/I7qPsW2xcBfvSkHNGK+PZly7uHyH8kaVYSFNUDhQ==} 4614 | engines: {node: '>=12.10.0'} 4615 | peerDependencies: 4616 | yeoman-environment: ^3.2.0 4617 | peerDependenciesMeta: 4618 | yeoman-environment: 4619 | optional: true 4620 | dependencies: 4621 | chalk: 4.1.2 4622 | dargs: 7.0.0 4623 | debug: 4.3.4 4624 | execa: 5.1.1 4625 | github-username: 6.0.0 4626 | lodash: 4.17.21 4627 | mem-fs-editor: 9.7.0 4628 | minimist: 1.2.8 4629 | read-pkg-up: 7.0.1 4630 | run-async: 2.4.1 4631 | semver: 7.3.8 4632 | shelljs: 0.8.5 4633 | sort-keys: 4.2.0 4634 | text-table: 0.2.0 4635 | yeoman-environment: 3.15.1 4636 | transitivePeerDependencies: 4637 | - encoding 4638 | - mem-fs 4639 | - supports-color 4640 | dev: true 4641 | 4642 | /yn/3.1.1: 4643 | resolution: {integrity: sha512-Ux4ygGWsu2c7isFWe8Yu1YluJmqVhxqK2cLXNQA5AcC3QfbGNpM7fu0Y8b/z16pXLnFxZYvWhd3fhBY9DLmC6Q==} 4644 | engines: {node: '>=6'} 4645 | dev: true 4646 | 4647 | /yocto-queue/0.1.0: 4648 | resolution: {integrity: sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==} 4649 | engines: {node: '>=10'} 4650 | dev: true 4651 | 4652 | /yosay/2.0.2: 4653 | resolution: {integrity: sha512-avX6nz2esp7IMXGag4gu6OyQBsMh/SEn+ZybGu3yKPlOTE6z9qJrzG/0X5vCq/e0rPFy0CUYCze0G5hL310ibA==} 4654 | engines: {node: '>=4'} 4655 | hasBin: true 4656 | dependencies: 4657 | ansi-regex: 2.1.1 4658 | ansi-styles: 3.2.1 4659 | chalk: 1.1.3 4660 | cli-boxes: 1.0.0 4661 | pad-component: 0.0.1 4662 | string-width: 2.1.1 4663 | strip-ansi: 3.0.1 4664 | taketalk: 1.0.0 4665 | wrap-ansi: 2.1.0 4666 | dev: true 4667 | -------------------------------------------------------------------------------- /prompt-template/default.md: -------------------------------------------------------------------------------- 1 | # SYSTEM 2 | You are a command line translation program for '${OS}' os. You can translate natural language instructions from human language into corresponding command line statements. 3 | 4 | 1. Simply output the translated instruction without any explanation. Add the ">" symbol at the beginning of the output. 5 | 6 | 2. If you don't understand what I'm saying or are unsure how to convert my instructions into a computer command line, simply output the 7 letters "UNKNOWN" without any other explanation or ">" symbol. 7 | 8 | 3. If the translated result consists of more than one line of commands, please use '&' or '&&' to combine them into a single line of command. 9 | 10 | 4. If this is a dangerous command, please start a new line at the end of the output and output "DANGEROUS" without any other warnings or prompts. 11 | 12 | # USER 13 | how's the weather like today? 14 | 15 | # ASSISTANT 16 | UNKNOWN 17 | 18 | # USER 19 | clone the React library from Github and create a new branch locally named "feat-gpt" 20 | 21 | # ASSISTANT 22 | >git clone https://github.com/facebook/react.git && cd react && git checkout -b feat-gpt 23 | 24 | # USER 25 | delete all files or folders 26 | 27 | # ASSISTANT 28 | >rm -rf * 29 | DANGERS 30 | -------------------------------------------------------------------------------- /src/index.ts: -------------------------------------------------------------------------------- 1 | export { run } from '@oclif/core'; 2 | -------------------------------------------------------------------------------- /src/open-ai/index.ts: -------------------------------------------------------------------------------- 1 | import type { ChatCompletionRequestMessage } from 'openai'; 2 | import { Configuration, OpenAIApi } from 'openai'; 3 | 4 | const apiClient = new OpenAIApi(new Configuration({ apiKey: process.env.OPENAI_API_KEY })); 5 | 6 | export async function createChatCompletion(messages: ChatCompletionRequestMessage[]): Promise { 7 | const response = await apiClient.createChatCompletion({ 8 | model: 'gpt-3.5-turbo', 9 | temperature: 0, 10 | messages, 11 | }); 12 | if (response.data.choices.length) { 13 | const firstMessage = response.data.choices[0].message; 14 | if (firstMessage) { 15 | return firstMessage.content; 16 | } 17 | } 18 | throw new Error('Failed to get response from OpenAI service.'); 19 | } 20 | -------------------------------------------------------------------------------- /src/prompt/index.ts: -------------------------------------------------------------------------------- 1 | import * as path from 'node:path'; 2 | import type { ChatCompletionRequestMessage } from 'openai'; 3 | 4 | import type { PromptTemplate } from '../types'; 5 | 6 | import { loadPromptTemplate } from './template'; 7 | 8 | let template: PromptTemplate | undefined; 9 | 10 | export async function generatePromptMessages(input: string): Promise { 11 | if (!template) { 12 | template = await loadPromptTemplate(path.resolve(__dirname, '../../prompt-template/default.md')); 13 | } 14 | return [ 15 | ...template.messages, 16 | { 17 | role: 'user', 18 | content: input, 19 | }, 20 | ]; 21 | } 22 | -------------------------------------------------------------------------------- /src/prompt/template.ts: -------------------------------------------------------------------------------- 1 | import * as fs from 'node:fs/promises'; 2 | import * as os from 'node:os'; 3 | import * as readline from 'node:readline'; 4 | import * as stream from 'node:stream'; 5 | import type { ChatCompletionRequestMessage } from 'openai'; 6 | 7 | import type { PromptTemplate } from '../types'; 8 | 9 | export async function loadPromptTemplate(path: string) { 10 | return new Promise(async (resolve) => { 11 | const messages: ChatCompletionRequestMessage[] = []; 12 | const saveCurrentMessage = () => { 13 | if (currentMessage) { 14 | currentMessage.content = currentMessage.content.trim(); 15 | currentMessage.content = currentMessage.content.replace('${OS}', os.platform()); 16 | messages.push(currentMessage); 17 | currentMessage = null; 18 | } 19 | }; 20 | 21 | const buffer = await fs.readFile(path); 22 | const bufferStream = new stream.PassThrough({ encoding: 'utf-8' }); 23 | bufferStream.end(buffer); 24 | 25 | const rl = readline.createInterface({ input: bufferStream }); 26 | let currentMessage: ChatCompletionRequestMessage | null = null; 27 | rl.on('line', (line) => { 28 | if (line.startsWith('# ')) { 29 | saveCurrentMessage(); 30 | currentMessage = { 31 | role: line.substring(2).trim().toLowerCase() as 'user' | 'assistant' | 'system', 32 | content: '', 33 | }; 34 | } else if (currentMessage) { 35 | const text = line.trim(); 36 | if (text !== '') { 37 | currentMessage.content += line + '\n'; 38 | } 39 | } 40 | }); 41 | rl.on('close', () => { 42 | saveCurrentMessage(); 43 | resolve({ messages }); 44 | }); 45 | }); 46 | } 47 | -------------------------------------------------------------------------------- /src/translator/index.ts: -------------------------------------------------------------------------------- 1 | import { createChatCompletion } from '../open-ai'; 2 | import { generatePromptMessages } from '../prompt'; 3 | import type { CommandLine } from '../types'; 4 | 5 | export async function translate(input: string): Promise { 6 | const inputMessages = await generatePromptMessages(input); 7 | const outputMessage = await createChatCompletion(inputMessages); 8 | 9 | let content = outputMessage; 10 | let isDangerous = false; 11 | if (outputMessage.endsWith('\nDANGEROUS')) { 12 | isDangerous = true; 13 | content = outputMessage.slice(0, -10); 14 | } 15 | if (content.startsWith('>')) { 16 | return { content: content.slice(1), isDangerous }; 17 | } 18 | throw new Error('Failed to translate the command.'); 19 | } 20 | -------------------------------------------------------------------------------- /src/types/CommandLine.ts: -------------------------------------------------------------------------------- 1 | export interface CommandLine { 2 | content: string; 3 | isDangerous?: boolean; 4 | } 5 | -------------------------------------------------------------------------------- /src/types/PromptTemplate.ts: -------------------------------------------------------------------------------- 1 | import type { ChatCompletionRequestMessage } from 'openai'; 2 | 3 | export interface PromptTemplate { 4 | messages: ChatCompletionRequestMessage[]; 5 | } 6 | -------------------------------------------------------------------------------- /src/types/index.ts: -------------------------------------------------------------------------------- 1 | export * from './CommandLine'; 2 | export * from './PromptTemplate'; 3 | -------------------------------------------------------------------------------- /src/ui/index.ts: -------------------------------------------------------------------------------- 1 | import { Command, ux } from '@oclif/core'; 2 | 3 | import { generatePromptMessages } from '../prompt'; 4 | import { translate } from '../translator'; 5 | import type { CommandLine } from '../types'; 6 | 7 | export default class DefaultCommand extends Command { 8 | static strict = false; 9 | 10 | async run(): Promise { 11 | const userInput = this.argv.join(' '); 12 | generatePromptMessages(userInput); 13 | let command: CommandLine; 14 | try { 15 | ux.action.start('Translating your words into command line...'); 16 | command = await translate(userInput); 17 | ux.action.stop(); 18 | this.log(`\x1b[36m\n${command.content}\n\x1b[0m`); 19 | if (command.isDangerous) { 20 | ux.log('\x1b[41m CAUTION \x1b[0m\x1b[31m This command is dangerous!\x1b[0m'); 21 | } 22 | } catch (e) { 23 | ux.action.stop('Error'); 24 | ux.error(e instanceof Error ? e.message : 'Unknown error', { exit: 500 }); 25 | } 26 | } 27 | } 28 | -------------------------------------------------------------------------------- /tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "compilerOptions": { 3 | "declaration": true, 4 | "importHelpers": true, 5 | "module": "commonjs", 6 | "outDir": "dist", 7 | "rootDir": "src", 8 | "strict": true, 9 | "target": "es2019" 10 | }, 11 | "include": [ 12 | "src/**/*" 13 | ] 14 | } 15 | --------------------------------------------------------------------------------