diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 2d3f1766..5ebb850f 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -14,4 +14,4 @@ jobs: - name: Install packages run: sudo gem install mdl - name: Lint markdown files - run: mdl *.md -r ~MD029,~MD036 + run: mdl *.md -r ~MD029,~MD036,~MD024 diff --git a/.github/workflows/textlint.yml b/.github/workflows/textlint.yml new file mode 100644 index 000000000..96ff63ec --- /dev/null +++ b/.github/workflows/textlint.yml @@ -0,0 +1,27 @@ +name: Textlint + +on: + schedule: + - cron: '0 */6 * * *' + workflow_dispatch: + +jobs: + lint-fix: + runs-on: ubuntu-latest + if: github.repository_owner == 'Anduin2017' + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-node@v2 + with: + node-version: '16' + cache: 'npm' + - run: npm install + - run: ./node_modules/.bin/textlint . --fix + - uses: stefanzweifel/git-auto-commit-action@v4 + with: + commit_message: '[ci skip] Automatic textlint fixes' + branch: 'master' + file_pattern: ':/*.md' + commit_user_name: github-actions[bot] + commit_user_email: github-actions[bot]@users.noreply.github.com + commit_author: github-actions[bot] diff --git a/.gitignore b/.gitignore new file mode 100644 index 000000000..24c03598 --- /dev/null +++ b/.gitignore @@ -0,0 +1,3 @@ +# Dependency directories +node_modules/ +.history \ No newline at end of file diff --git a/.textlintrc b/.textlintrc new file mode 100644 index 000000000..371c7990 --- /dev/null +++ b/.textlintrc @@ -0,0 +1,8 @@ +{ + "filters": {}, + "rules": { + "ja-space-between-half-and-full-width": { + "space": "always" + } + } +} \ No newline at end of file diff --git a/CNAME b/CNAME new file mode 100644 index 000000000..f5b093cf --- /dev/null +++ b/CNAME @@ -0,0 +1 @@ +cook.aiurs.co \ No newline at end of file diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md new file mode 100644 index 000000000..500e3fc2 --- /dev/null +++ b/CONTRIBUTING.md @@ -0,0 +1,7 @@ +# 如何贡献 + +直接修改\添加做菜指南并提交 Pull request 即可。 + +在写新菜谱时,请复制并修改已有的模板: [示例菜](./dishes/template/示例菜/示例菜.md)。 + +记得在提交 Pull Request 前同样更新一下 Readme.md 里的引用。 diff --git a/README.md b/README.md index 526c1b4c..51abc19c 100644 --- a/README.md +++ b/README.md @@ -10,99 +10,90 @@ 同样,我希望它是一个由社区驱动和维护的开源项目,使更多人能够一起做一个有趣的仓库。所以非常欢迎大家贡献它~ -## 厨房准备 +## 如何贡献 -在阅读和参考菜谱之前,假想你已经在厨房中准备好了下列物品。这些物品不会在原材料和工具部分提及。 +直接修改\添加做菜指南并提交 Pull request 即可。 -```text -煤气灶, 饮用水, 锅, 食用油, 碗与盘子, 筷子, 炒勺, 洗涤剂, 抹布, 钢丝球 -``` +在写新菜谱时,请复制并修改已有的模板: [示例菜](./dishes/template/示例菜/示例菜.md)。 -下列材料可能会被高频使用。建议提前为厨房采购好,并永远保障有新鲜的可以取用。 - -```text -葱,姜,蒜,辣椒 -酱油,醋,料酒,蚝油,生抽,豆瓣酱 -白糖,盐,鸡精,胡椒粉 -``` - -如果你预计将被隔离很久,建议同样采购好下列内容: - -```text -冰箱、微波炉、保鲜膜 -鸡蛋、青椒、胡萝卜、黄瓜、西红柿、木耳、里脊肉、方便面、茄子、米、淀粉 -``` - -其它针对每道菜的原材料,请具体参考菜品本身的`所需原材料`章节。 +记得在提交 Pull Request 前同样更新一下 Readme.md 里的引用。 ## 做菜之前 -[如何选择吃什么?](./如何选择现在吃什么.md) +* [采购原料,准备厨房](./tips/厨房准备.md) +* [学习炒与煎炸](./tips/learn/炒与煎.md) +* [学习煮](./tips/learn/煮.md) +* [学习蒸](./tips/learn/蒸.md) +* [学习使用压力锅](./tips/learn/高压力锅.md) +* [学习焯水](./tips/learn/焯水.md) +* [了解食品安全常识](./tips/learn/食品安全.md) +* [如何选择吃什么?](./tips/如何选择现在吃什么.md) ## 菜谱 -### 早餐 - -* [太阳蛋](./太阳蛋.md) -* [牛奶燕麦](./牛奶燕麦.md) - ### 家常菜 -* [西红柿炒鸡蛋](./西红柿鸡蛋.md) -* [地三鲜](./地三鲜.md) +* [西红柿炒鸡蛋](./dishes/home-cooking/西红柿炒鸡蛋.md) +* [地三鲜](./dishes/home-cooking/地三鲜.md) * 水煮肉片 (等待大佬编写中……) -* [回锅肉](./回锅肉.md) +* [回锅肉](./dishes/home-cooking/回锅肉.md) * 糖醋里脊 (等待大佬编写中……) -* [葱煎豆腐](./葱煎豆腐.md) -* [鱼香肉丝](./鱼香肉丝.md) -* [茄子炖土豆](茄子炖土豆.md) -* [麻辣香锅](麻辣香锅.md) -* [糖醋鲤鱼](./糖醋鲤鱼.md) -* [辣椒炒肉](./辣椒炒肉.md) -* [凉拌黄瓜](./凉拌黄瓜.md) +* [葱煎豆腐](./dishes/home-cooking/葱煎豆腐.md) +* [鱼香肉丝](./dishes/home-cooking/鱼香肉丝.md) +* [茄子炖土豆](./dishes/home-cooking/茄子炖土豆.md) +* [麻辣香锅](./dishes/home-cooking/麻辣香锅.md) +* [糖醋鲤鱼](./dishes/home-cooking/糖醋鲤鱼/糖醋鲤鱼.md) +* [辣椒炒肉](./dishes/home-cooking/辣椒炒肉.md) +* [凉拌黄瓜](./dishes/home-cooking/凉拌黄瓜.md) +* [香干肉丝](./dishes/home-cooking/香干肉丝.md) +* [清蒸生蚝](./dishes/home-cooking/清蒸生蚝.md) +* [尖椒炒牛肉](./dishes/home-cooking/尖椒炒牛肉.md) +* [小炒肉](./dishes/home-cooking/小炒肉.md) +* [速冻水饺](./dishes/home-cooking/速冻水饺.md) + +### 早餐 + +* [太阳蛋](./dishes/breakfast/太阳蛋.md) +* [牛奶燕麦](./dishes/breakfast/牛奶燕麦.md) +* [果酱土司](./dishes/breakfast/吐司果酱.md) +* [溏心蛋](./dishes/breakfast/溏心蛋.md) ### 主食 -* [米饭](./米饭.md) -* [蛋炒饭](./蛋炒饭.md) -* [烙饼](./烙饼.md) -* [炒方便面](./炒方便面.md) -* [老干妈拌面](./老干妈拌面.md) -* [醪糟小汤圆](./醪糟小汤圆.md) -* [凉皮](./凉皮.md) -* [炒河粉](./炒河粉.md) +* [米饭](./dishes/staple/米饭.md) +* [蛋炒饭](./dishes/staple/蛋炒饭.md) +* [日式咖喱饭](./dishes/staple/日式咖喱饭/日式咖喱饭.md) +* [烙饼](./dishes/staple/烙饼/烙饼.md) +* [炒方便面](./dishes/staple/炒方便面.md) +* [老干妈拌面](./dishes/staple/老干妈拌面.md) +* [醪糟小汤圆](./dishes/staple/醪糟小汤圆.md) +* [凉皮](./dishes/staple/凉皮.md) +* [炒河粉](./dishes/staple/炒河粉.md) +* [炸酱面](./dishes/staple/炸酱面.md) * 饺子(等待大佬编写中……) ### 红烧菜系 -在制作红烧菜系前,强烈建议提前学习一些技巧。[烧菜须知](./小技巧.md) - -* [红烧鱼头](./红烧鱼头.md) -* [红烧茄子](./红烧茄子.md) +* [红烧鱼头](./dishes/braised/红烧鱼头.md) +* [红烧茄子](./dishes/braised/红烧茄子.md) ### 汤与粥 -* [米粥](./米粥.md) -* [西红柿鸡蛋汤](西红柿鸡蛋汤.md) +* [米粥](./dishes/porridge/米粥.md) +* [皮蛋瘦肉粥](./dishes/porridge/皮蛋瘦肉粥.md) +* [西红柿鸡蛋汤](./dishes/porridge/西红柿鸡蛋汤.md) ### 饮料 -* [酸梅汁](酸梅汁.md) +* [酸梅汁](./dishes/drink/酸梅汁.md) -### 其他 +### 酱料和其它材料 -* [油泼辣子](油泼辣子.md) +* [油泼辣子](./dishes/condiment/油泼辣子.md) +* [蒜香酱油](./dishes/condiment/蒜香酱油.md) +* [糖醋汁](./dishes/condiment/糖醋汁.md) +* [油酥](./dishes/condiment/油酥.md) -## 如何贡献 +## 进阶 -直接修改这部分做菜指南并提交 Pull request 即可。 - -补充菜谱时,针对一道菜,必须给出其`必需原材料`,`原材料用量计算公式`。 - -必须清晰准确的描述过程。在描述过程时不得加入上文或原材料中未提及的食材。凡是需要等待的步骤必须给出`等待时间计算公式`或`结束一个步骤的判断标准`。 - -使用 markdown 描述这道菜的`必需原材料`、`计算公式`、`操作步骤`、`附加内容`。如果有参考资料,请一并给出。 - -不允许使用不精准描述的词汇,例如:`适量`、`少量`、`中量`、`适当`。 - -不完整或不符合上述规范的菜谱将不会被允许合并到代码库中。 +* [辅料使用技巧](./tips/advanced/辅料技巧.md) diff --git a/dishes/braised/红烧茄子.md b/dishes/braised/红烧茄子.md new file mode 100644 index 000000000..58b92ea2 --- /dev/null +++ b/dishes/braised/红烧茄子.md @@ -0,0 +1,52 @@ +# 红烧茄子 + +## 原料与工具 + +- 大蒜 +- 大葱 +- 青辣椒 +- 洋葱 +- 西红柿 +- 青茄子 +- 盐 +- 酱油 +- 鸡蛋 +- 面粉 +- 淀粉 + +## 计算 + +人数大于等于 2 人时最佳 + +- 青茄子的数量 = 人数 * 0.7(个) +- 青辣椒 = 人数 * 0.5(个) +- 洋葱 = 人数 * 0.3(个) +- 西红柿 = 1 个 +- 大葱 = 半颗 +- 大蒜 = 3 瓣 +- 鸡蛋 = 1 个 +- 面粉 = 青茄子数量 * 150(克) +- 淀粉 = 面粉 / 4(克) +- 酱油 = (茄子数量 * 7)g (向上取整) + +## 操作 + +1. 青茄子、青辣椒、西红柿、洋葱、大葱洗净。 +2. 大葱切 5 毫米宽的葱花,大蒜扒皮并拍碎,西红柿切 6 立方厘米左右的块,青辣椒、洋葱切 5g 左右的块。 +3. 茄子切菱形块(先切 2 公分左右厚的片,然后再把片切成 2 公分左右的条,最后斜刀切块儿...)。 +4. 将面粉倒入盆中,依次加入少量水,搅拌均匀,呈粘稠糊状。 +5. 加入淀粉,加入 30 克水,搅拌均匀。 +6. 将鸡蛋打到盆中,加入(面粉 / 20)克的盐,搅拌均匀。 +7. 将茄块倒入面糊中,搅拌使茄块的每一面都能沾上面糊。 +8. 开大火,热锅,加入 500 毫升的油,当能看到锅里的油冒出一丝烟时,调至小火,将茄块用筷子夹入到油锅,待所有的茄块下锅之后,调至中火,直到茄块变金黄色时捞出,将油倒出。 +9. 加入(人数 * 5)g 左右的油,放入大蒜、葱花,翻炒 15 秒,放入青辣椒块翻炒 30 秒,放入西红柿翻炒 30 秒。 +10. 放入炸好的茄块,加水面高度为锅内食材的 0.8 倍。 +11. 放入酱油和(人数 * 3)g 左右的盐。 +12. 等待,直到汤汁呈粘稠状(水位大概为剩余食材高度的 0.2-0.3 倍),开盖,盛出菜,关火。 + +## 附加内容 + +在操作的第 4-6 步骤中要注意: +一定要顺序执行,否则会有灾难性错误...... + +如果您遵循本指南的制作流程而发现有问题或可以改进的流程,请提出 Issue 或 Pull request 。 diff --git a/红烧鱼头.md b/dishes/braised/红烧鱼头.md similarity index 71% rename from 红烧鱼头.md rename to dishes/braised/红烧鱼头.md index 6b702846..6e6b61a5 100644 --- a/红烧鱼头.md +++ b/dishes/braised/红烧鱼头.md @@ -6,7 +6,7 @@ ## 必备原料与工具 -* 注:如果有可能,尽量另准备一把菜刀,超市或市场上均有廉价且刀片更厚的菜刀,刀片厚度在5-7mm为最佳。 +* 注:如果有可能,尽量另准备一把菜刀,超市或市场上均有廉价且刀片更厚的菜刀,刀片厚度在 5-7mm 为最佳。 * 大葱、姜、大蒜、香菜、美人椒 * 油、盐、鸡精、生抽、老抽、陈醋、黑胡椒粉、料酒 * 八角、干辣椒 @@ -15,14 +15,14 @@ ## 计算 -注意,这道菜仅有足够2人食用的版本。 +注意,这道菜仅有足够 2 人食用的版本。 * 鱼头一个 -* 大葱200g -* 姜80g -* 蒜瓣3-4个 -* 美人椒1/4个 -* 香菜4棵 +* 大葱 200g +* 姜 80g +* 蒜瓣 3-4 个 +* 美人椒 1/4 个 +* 香菜 4 棵 * 八角两个,干辣椒五个 ## 操作 @@ -31,11 +31,11 @@ * 葱、姜、蒜、香菜、美人椒分别清洗干净。 * 干辣椒与八角稍微冲洗即可。 -* 大葱切两半。后半段大葱(葱白处)切段,每段长度约4cm。前半段(葱叶处)先切段,再将每段劈为四瓣。 -* 姜切片,每片厚度约3mm。 +* 大葱切两半。后半段大葱(葱白处)切段,每段长度约 4cm。前半段(葱叶处)先切段,再将每段劈为四瓣。 +* 姜切片,每片厚度约 3mm。 * 大蒜拍碎。 -* 拿出两棵香菜去根,切为1.5cm左右香菜碎。 -* 将美人椒切为厚度为3mm左右的辣椒圈。 +* 拿出两棵香菜去根,切为 1.5cm 左右香菜碎。 +* 将美人椒切为厚度为 3mm 左右的辣椒圈。 * 干辣椒切四段。 ## 腌制鱼头 @@ -46,22 +46,22 @@ * 将鱼头下巴与鱼身连接的地方剁开,鱼身剁块,鱼头剁成四/六瓣。 * 注:鱼的处理很难用文字完全表述,如果你有任何疑问的地方,可以搜索鱼头处理相关视频。 * 将剁好的鱼头进行清洗,最好洗掉鱼块上滞留的血水。 -* 将清洗好的鱼块放入盆中,加入5g盐、10g生抽、10g料酒。放入葱(前半段切碎的那个)、1/3姜片。将其拌匀,静置1-2小时(这取决于你的饥饿程度...)。 +* 将清洗好的鱼块放入盆中,加入 5g 盐、10g 生抽、10g 料酒。放入葱(前半段切碎的那个)、1/3 姜片。将其拌匀,静置 1-2 小时(这取决于你的饥饿程度...)。 ### 最终步骤 -* 加入30ml油,等待锅热... +* 加入 30ml 油,等待锅热... * 油热,将锅关至小火,如果你不明白为何要这样做,请查看[烧菜须知](./烧菜须知.md)中的翻炒辅料。 * 放入姜片,慢慢翻炒,以姜片中的大部分汁水被炒出,以金黄色为准。 * 放入葱段,翻炒至葱段略显发白。 -* 放入蒜碎、八角、干辣椒,翻炒5秒。 -* 将腌制好的鱼头倒入锅中,翻炒2-3分钟。 -* 倒入500ml清水,加入2g盐、3g鸡精、5g生抽、3g老抽、5g料酒、2g黑胡椒粉、3g陈醋. +* 放入蒜碎、八角、干辣椒,翻炒 5 秒。 +* 将腌制好的鱼头倒入锅中,翻炒 2-3 分钟。 +* 倒入 500ml 清水,加入 2g 盐、3g 鸡精、5g 生抽、3g 老抽、5g 料酒、2g 黑胡椒粉、3g 陈醋. * 将两棵香菜放入锅中,盖上锅盖。 * 调至大火,将水烧开。 * 调至中火,慢焖入味。 * 当汤汁减少一半左右时,打开锅盖。 -* 调至大火收汁,汤汁剩余1/3时,关火盛至小盆中。 +* 调至大火收汁,汤汁剩余 1/3 时,关火盛至小盆中。 * 注:将锅中的汤汁均匀淋到鱼头上,盛盘时可以将锅中煮的香菜放入小盆底部,这样能让你的成品菜好看又好吃。 * 将香菜放至已经盛出的鱼头上,把切好的美人椒圈放在香菜之上。 * 恭喜你色香味俱全的红烧鱼头出炉! diff --git a/dishes/breakfast/吐司果酱.md b/dishes/breakfast/吐司果酱.md new file mode 100644 index 000000000..ec9bc652 --- /dev/null +++ b/dishes/breakfast/吐司果酱.md @@ -0,0 +1,30 @@ +# 吐司+果酱 + +饱腹感的懒人快速营养早餐,2min 搞定 + +## 必备原料和工具 + +* 新鲜吐司 +* 果酱 +* 面包机 + +## 计算 + +* 吐司两片 +* 果酱足够涂满一面土司的量 + +## 操作 + +* 将吐司放入面包机 +* 设置好档位,时间到了会自动弹出 +* 两分钟后吐司加热完成弹出 +* 先取出一片吐司,涂满果酱再盖上另一片吐司即可 +* 用餐巾纸包一下可以边走边吃也可以吃完再出门 + +两分钟快速搞定,操作很简单,味道十分美味,十分适合程序员.耗时短,不会产生额外垃圾,也不需要清洗工具什么的. + +## 附加内容 + +面包机一般不会超过一百块,吐司去楼下超市或美团买菜送上门,一般一包十块钱八片,保质期比较短,很干净卫生.这里果酱推介一下山姆超市的草莓果酱,很甜,它们家的蓝莓酱倒是一般般,反正我是感觉没啥味.干净又卫生哦,兄弟们. + +如果您遵循本指南的制作流程而发现有问题或可以改进的流程,请提出 Issue 或 Pull request。 diff --git a/太阳蛋.md b/dishes/breakfast/太阳蛋.md similarity index 100% rename from 太阳蛋.md rename to dishes/breakfast/太阳蛋.md diff --git a/dishes/breakfast/溏心蛋.md b/dishes/breakfast/溏心蛋.md new file mode 100644 index 000000000..63379d72 --- /dev/null +++ b/dishes/breakfast/溏心蛋.md @@ -0,0 +1,33 @@ +# 溏心蛋的做法 + +喜欢健身的小伙伴可以在每颗鸡蛋中获得 6 克蛋白质。大约 15 分钟可以完成制作。 + +## 必备原料和工具 + +- 鸡蛋 +- 电锅 +- 水 +- 秒表(可选) + +## 计算 + +- 鸡蛋 1 颗或更多(只要您的电锅装得下,不管有几颗鸡蛋都可以) +- 淹过鸡蛋约 2 公分的冷水 + +## 操作 + +- 将鸡蛋放入电锅中。鸡蛋不可互相堆叠,应皆在底部,并留有空间可以晃动 +- 倒入淹过鸡蛋约 2 公分的冷水 +- 开盖,使用最大功率加热至水滚起(大约 85 - 95 度,稍微滚动,不需完全沸腾) +- 关火,盖上盖子,让鸡蛋静置。 + - 想要中央有少许流动的蛋黄,需静置 6 分钟 + - 若想要完全煮熟的易碎蛋黄,需静置 10 分钟 +- 沥干水分,用冷水冲洗鸡蛋约 1 分钟,即可去壳食用。 + +## 附加内容 + +- 如果觉得鸡蛋不够熟的小伙伴可以依照自己的喜好添加更多的水。 + +**警告** 溏心蛋有沙门氏菌感染的风险。不建议静置 5 分钟以内。 + +如果您遵循本指南的制作流程而发现有问题或可以改进的流程,请提出 Issue 或 Pull request 。 diff --git a/牛奶燕麦.md b/dishes/breakfast/牛奶燕麦.md similarity index 69% rename from 牛奶燕麦.md rename to dishes/breakfast/牛奶燕麦.md index add34766..a9ea9f8e 100644 --- a/牛奶燕麦.md +++ b/dishes/breakfast/牛奶燕麦.md @@ -1,6 +1,6 @@ # 牛奶燕麦 -高蛋白,粗谷物纤维,饱腹感的懒人快速营养早餐,3min搞定 +高蛋白,粗谷物纤维,饱腹感的懒人快速营养早餐,3min 搞定 ## 必备原料和工具 @@ -11,7 +11,7 @@ ## 计算 * 🥛 牛奶 280ml/per -* 🍳 鸡蛋 1个/per +* 🍳 鸡蛋 1 个/per * 🍚 燕麦 40g/per 使用上述条件,计算出计划使用的原材料比例。 @@ -19,13 +19,13 @@ ## 操作 * 将牛奶倒入早餐杯(冷的即可) -* 准备好200ml水,如果是直饮水直接加入燕麦,否则请烧开后加入燕麦 -* 水沸后2min,燕麦煮好 +* 准备好 200ml 水,如果是直饮水直接加入燕麦,否则请烧开后加入燕麦 +* 水沸后 2min,燕麦煮好 * 煮好的燕麦捞出倒入牛奶中(尽量不要将煮燕麦的水也倒入牛奶,影响口感) -* 热锅,锅内放少许底油,油热后煎鸡蛋,每面煎20s,适当调底味(黑胡椒,盐) +* 热锅,锅内放少许底油,油热后煎鸡蛋,每面煎 20s,考虑调底味(3g 椒盐,可选) * 关火,装盘 -烹饪基本3min搞定,做完菜品都是常温,极易入口,我每次2分钟吃完。 +烹饪基本 3min 搞定,做完菜品都是常温,极易入口,我每次 2 分钟吃完。 > 🥑 水果蔬菜,苏打饼干搭配食用更佳 diff --git a/油泼辣子.md b/dishes/condiment/油泼辣子.md similarity index 100% rename from 油泼辣子.md rename to dishes/condiment/油泼辣子.md diff --git a/dishes/condiment/油酥.md b/dishes/condiment/油酥.md new file mode 100644 index 000000000..f26a69c2 --- /dev/null +++ b/dishes/condiment/油酥.md @@ -0,0 +1,21 @@ +# 油酥 + +油酥是由面粉与热油混合调制的,通常在烙饼时涂点油酥,可以使得饼子层层分明,外酥里软,口感更佳。 + +## 准备 + +* 面粉 +* 油 +* 盐 + +## 计算 + +* 油 = 要烙饼的张数 * 10ml +* 盐 = (油 / 20ml)g +* 面粉 = (要烙饼的张数 / 0.13)g + +## 操作 + +* 面粉盛小碗里,加入盐 +* 加入 200 度左右的热油 +* 用筷子将其搅拌成无固状物体的糊状。 diff --git a/dishes/condiment/糖醋汁.md b/dishes/condiment/糖醋汁.md new file mode 100644 index 000000000..851c99cf --- /dev/null +++ b/dishes/condiment/糖醋汁.md @@ -0,0 +1,25 @@ +# 糖醋汁 + +糖醋汁通常情况下由清水、白糖、白醋、淀粉制成,有些人喜欢放一些番茄酱来增添不一样的酸甜味,可用于糖醋鱼、糖醋里脊等菜品的制作。 + +## 准备 + +* 番茄酱 +* 白糖 +* 白醋 +* 淀粉 + +## 计算 + +* 清水(50ml) +* 番茄酱(40ml) +* 白醋(30ml) +* 白糖(20ml) +* 淀粉(10g) + +## 操作 + +* 将酱汁搅拌均匀 +* 锅中加入 10ml 油 +* 油温烧至五成热,约 150 度时,倒入酱汁 +* 小火熬制直至浓稠 diff --git a/dishes/condiment/蒜香酱油.md b/dishes/condiment/蒜香酱油.md new file mode 100644 index 000000000..60571aa6 --- /dev/null +++ b/dishes/condiment/蒜香酱油.md @@ -0,0 +1,16 @@ +# 蒜香豉油 + +## 原材料 + +- 蒜头 2 瓣 +- 白芝麻 5 克 +- 花生油 15 毫升 +- 酱油 30 毫升 +- 蘸料碟 1 个 + +## 制作步骤 + +- 拍碎蒜头 +- 往蘸料碟中加入酱油 +- 起锅,加入花生油,等到油温滚烫后加入拍好的蒜头,炸半分钟 +- 半分钟后,关火,把热油倒入蘸料碟,用筷子搅拌即可 diff --git a/酸梅汁.md b/dishes/drink/酸梅汁.md similarity index 53% rename from 酸梅汁.md rename to dishes/drink/酸梅汁.md index 7a7c1085..7681c5a9 100644 --- a/酸梅汁.md +++ b/dishes/drink/酸梅汁.md @@ -8,24 +8,24 @@ ## 计算 -- 饮用水1177克 -- 酸梅晶固体饮料120克 -- 方糖9克 -- 北京二锅头酒48克 +- 饮用水 1177 克 +- 酸梅晶固体饮料 120 克 +- 方糖 9 克 +- 北京二锅头酒 48 克 上述所有用量可以等比例增加或减小。 ## 操作 -1. 取饮用水1177克。 -2. 放入酸梅晶固体饮料60克,使用汤匙顺时针搅拌50圈。 -3. 再放入剩下60克酸梅晶固体饮料,再次使用汤匙顺时针搅拌50圈。 -4. 放入9克的方糖,使用汤匙顺时针搅拌100圈。 -5. 放入北京二锅头酒48克,用汤匙顺时针搅拌30圈。 +1. 取饮用水 1177 克。 +2. 放入酸梅晶固体饮料 60 克,使用汤匙顺时针搅拌 50 圈。 +3. 再放入剩下 60 克酸梅晶固体饮料,再次使用汤匙顺时针搅拌 50 圈。 +4. 放入 9 克的方糖,使用汤匙顺时针搅拌 100 圈。 +5. 放入北京二锅头酒 48 克,用汤匙顺时针搅拌 30 圈。 ## 附加内容 -如果没有准备方糖或北京二锅头,可以省略操作中的第4步或第5步。 +如果没有准备方糖或北京二锅头,可以省略操作中的第 4 步或第 5 步。 放入冰箱冷藏后再饮用效果更佳。 diff --git a/凉拌黄瓜.md b/dishes/home-cooking/凉拌黄瓜.md similarity index 88% rename from 凉拌黄瓜.md rename to dishes/home-cooking/凉拌黄瓜.md index cad74cd0..76cbf452 100644 --- a/凉拌黄瓜.md +++ b/dishes/home-cooking/凉拌黄瓜.md @@ -16,7 +16,7 @@ ## 操作 -* 用菜刀将黄瓜拍扁,再剁成长3厘米的碎块 +* 用菜刀将黄瓜拍扁,再剁成长 3 厘米的碎块 * 将碎黄瓜装入碗中 * 将蒜拍碎切成碎末 * 将醋,酱油和蒜末倒入碗中搅拌均匀 diff --git a/回锅肉.md b/dishes/home-cooking/回锅肉.md similarity index 100% rename from 回锅肉.md rename to dishes/home-cooking/回锅肉.md diff --git a/dishes/home-cooking/地三鲜.md b/dishes/home-cooking/地三鲜.md new file mode 100644 index 000000000..aeb849fb --- /dev/null +++ b/dishes/home-cooking/地三鲜.md @@ -0,0 +1,56 @@ +# 地三鲜的做法 + +## 必备原料和工具 + +* 茄子 +* 土豆 +* 尖椒 +* 葱 +* 姜 +* 蒜 +* 豆瓣酱 +* 生抽 +* 盐 +* 糖 +* 淀粉 + +## 计算 + +注意,这道菜仅有足够 2-4 人食用的版本。 + +* 茄子 100g +* 土豆 150g +* 尖椒 3 - 4 个 + +使用上述条件,计算出计划使用的原材料比例。 + +## 操作 + +### 原材料准备 + +* 土豆洗净、去皮。茄子、尖椒洗净。 +* 葱 3g 切 0.5cm 小段。蒜 10g 剁碎。姜 10g 切沫。 +* 茄子、土豆、尖椒均切成 15g 左右的小块。 + +### 最终步骤 + +* 热锅,加入 25ml 油。 +* 加入土豆,煎炸大约 3 分钟,待其到大约 8 分熟,以显示金黄色为准。 +* 捞出土豆,留下油。 +* 加入茄子,煎炸大约 40 秒,待其到大约 7 分熟,以显示金黄色为准。 +* 如果锅内已经没有流动的油,可以考虑补充 15ml 油。 +* 放入葱 3g。姜 10g。 +* 放入豆瓣酱 20ml。 +* 放入生抽 10ml。 +* 放入盐 8g。 +* 放入糖 10g。 +* 放入之前处理的土豆。 +* 放入尖椒。 +* 翻炒 1 分钟。 +* 放入蒜 10g +* 加入 200ml 水和 80g 淀粉。 +* 待水开后,汤减少一半左右时,关火盛盘。 + +## 附加内容 + +如果您遵循本指南的制作流程而发现有问题或可以改进的流程,请提出 Issue 或 Pull request 。 diff --git a/dishes/home-cooking/小炒肉.md b/dishes/home-cooking/小炒肉.md new file mode 100644 index 000000000..08aceaef --- /dev/null +++ b/dishes/home-cooking/小炒肉.md @@ -0,0 +1,48 @@ +# 小炒肉的做法 + +## 必备原料工具 + +- 五花肉 +- 朝天椒 +- 小米椒 +- 豆豉 +- 豆瓣酱 +- 老抽 +- 淀粉 +- 盐 +- 葱 +- 蒜 + +### 计算公式 + +每份: + +- 五花肉 500g +- 朝天椒 4 根 +- 小米椒 4 根 +- 豆豉 10g,根据个人口味加减 ±5g +- 豆瓣酱 10g,根据个人口味加减 ±5g +- 老抽 10ml +- 淀粉 10g +- 盐 1-2g +- 葱 1 棵 +- 蒜 2 瓣 +- 食用油 15ml + +## 操作步骤 + +- 五花肉切片 +- 把肉放入器皿内,加入淀粉、生抽、盐搅拌腌制半小时 +- 葱切段 +- 小米椒、朝天椒斜刀切好 +- 热锅、倒油 +- 油热后加入五花肉煸炒。炒至变色后盛出来 +- 向锅中加蒜,煸出香味,加入豆豉,翻炒均匀 +- 加入豆瓣酱翻炒均匀 +- 加入炒好的五花肉继续的翻炒均匀 +- 加入小米椒、葱段翻炒 40 秒 +- 出锅。 + +## 附加内容 + +- 如果您遵循本指南的制作流程而发现有问题或可以改进的流程,请提出 Issue 或 Pull request 。 diff --git a/dishes/home-cooking/尖椒炒牛肉.md b/dishes/home-cooking/尖椒炒牛肉.md new file mode 100644 index 000000000..7527e65e --- /dev/null +++ b/dishes/home-cooking/尖椒炒牛肉.md @@ -0,0 +1,52 @@ +# 尖椒炒牛肉的做法 + +## 必备原料和工具 + +* 牛肉 +* 葱、姜、蒜 +* 尖椒 +* 酱油 +* 盐 +* 糖 + +## 计算 + +* 牛肉用量为 250 g/人 +* 葱的用量为 0.5 根/人 +* 姜的用量为 1 个/人 +* 盐的用量为 3 g/人(1 勺) +* 糖的用量为 1.5 g/人(0.5 勺) +* 酱油的用量为 9 g/人(3 勺) + +使用上述条件,计算出计划使用的原材料比例。 + +## 操作 + +### 配菜处理 + +* 蒜剁成蒜泥 +* 葱切段 +* 姜切成姜片 +* 尖椒切成段 + +### 牛肉的预处理 + +* 牛肉放入碗中 +* 加姜、盐、酱油、糖进行腌制 30-40 分钟 +* 腌制完姜可以去掉 + +### 炒熟 + +* 冷油下锅,待油变热至偶有气泡 +* 加入蒜泥 +* 蒜泥变金黄后加入尖椒 +* 待尖椒表皮微皱,加入腌制好的牛肉翻炒 +* 翻炒变熟之前加入葱,继续翻炒 +* 翻炒至牛肉变熟,关火出锅 + +## 附加内容 + +* 腌制可以加入小苏打使牛肉变嫩,牛肉苏打比例为 500g:3g。 +* 腌制的时候姜片可用料酒代替,料酒的用量为 3 g/人(1 勺) + +如果您遵循本指南的制作流程而发现有问题或可以改进的流程,请提出 Issue 或 Pull request 。 diff --git a/dishes/home-cooking/清蒸生蚝.md b/dishes/home-cooking/清蒸生蚝.md new file mode 100644 index 000000000..9e1af8d1 --- /dev/null +++ b/dishes/home-cooking/清蒸生蚝.md @@ -0,0 +1,33 @@ +# 清蒸生蚝的做法 + +## 必备原料和工具 + +* 生蚝 +* 葱 +* 蒜 +* 姜 +* 酱油 +* 刷子 + +## 计算 + +* 饮用水 1 升 +* 生蚝 6 个 +* 葱 3 颗 +* 蒜 6 瓣 +* 姜 1 小块 +* 酱油 每个生蚝 1 ml + +## 操作 + +* 将生蚝用刷子刷干净(没有刷子用牙刷)。 +* 蒸锅中放水,将蒸屉放上之后,将 6 个生蚝的平铺在蒸屉,使用 50%功率,蒸 3 分钟。 +* 用右手拿着湿抹布掀开烫锅盖,将每个生蚝的外壳掀开一半去掉,生蚝的凸面向下,平面向上,每个放 1 根姜丝,2 勺蒜末放到生蚝上。 +* 关上烫锅盖,100%功率蒸 3.5 分钟。 +* 停火,用右手拿着抹布掀开烫锅盖,每个放 1 勺酱油。 +* 盛盘。 + +## 附加内容 + +* 勺子为日常调料品附带的勺子 +* 如果您遵循本指南的制作流程而发现有问题或可以改进的流程,请提出 Issue 或 Pull request 。 diff --git a/Images/糖醋鲤鱼/成品.jpg b/dishes/home-cooking/糖醋鲤鱼/成品.jpg similarity index 100% rename from Images/糖醋鲤鱼/成品.jpg rename to dishes/home-cooking/糖醋鲤鱼/成品.jpg diff --git a/糖醋鲤鱼.md b/dishes/home-cooking/糖醋鲤鱼/糖醋鲤鱼.md similarity index 64% rename from 糖醋鲤鱼.md rename to dishes/home-cooking/糖醋鲤鱼/糖醋鲤鱼.md index fba4fb5e..2bacbf59 100644 --- a/糖醋鲤鱼.md +++ b/dishes/home-cooking/糖醋鲤鱼/糖醋鲤鱼.md @@ -18,9 +18,9 @@ ## 计算 -注意,该菜只有3人以上版本(过大或太小的鱼都是不合适的),所以不需要公式计算,特别适合家庭聚餐时食用,如年夜饭 +注意,该菜只有 3 人以上版本(过大或太小的鱼都是不合适的),所以不需要公式计算,特别适合家庭聚餐时食用,如年夜饭 -* 鲤鱼 = 约3斤 +* 鲤鱼 = 约 3 斤 --- @@ -41,22 +41,22 @@ * 将鱼清洗干净,确保无鱼鳞等异物 -* 将鱼头朝左,鱼肚朝下,右手持刀。刀竖直切下1cm,按紧鱼身往左片3-4cm,再将鱼片中间轻轻划一刀 +* 将鱼头朝左,鱼肚朝下,右手持刀。刀竖直切下 1cm,按紧鱼身往左片 3-4cm,再将鱼片中间轻轻划一刀 * 将鱼放进盆里,然后将大姜切片,大葱切段(随便切切就行了,主要是需要去腥味) * 用吃奶的力气将大葱大姜里的汁水挤到盆中 -* 加入20g盐,25g料酒,然后给鲤鱼搓个澡,涂抹均匀 +* 加入 20g 盐,25g 料酒,然后给鲤鱼搓个澡,涂抹均匀 -![](./Images/糖醋鲤鱼/腌制.jpg) +![](./腌制.jpg) -(腌鱼时间越长,鱼腥味就越小,推荐腌30分钟以上) +(腌鱼时间越长,鱼腥味就越小,推荐腌 30 分钟以上) -* 找个干净的盆,加入100g面粉、200g淀粉、180g水、5g盐,用手将其搅拌均匀,面糊此时粘稠呈可拉丝状态,然后打入一个鸡蛋,再次搅匀 +* 找个干净的盆,加入 100g 面粉、200g 淀粉、180g 水、5g 盐,用手将其搅拌均匀,面糊此时粘稠呈可拉丝状态,然后打入一个鸡蛋,再次搅匀 ---- 此处等待30分钟 --- +--- 此处等待 30 分钟 --- * 将鱼放在案板上,用干毛巾将鱼身上的水擦干(这样可以更好的挂糊) * 将盆冲洗干净,用干毛巾擦干 -* 起锅烧油,加入约1L左右的油,将油温烧至7成热,约200-240度 +* 起锅烧油,加入约 1L 左右的油,将油温烧至 7 成热,约 200-240 度 * 捏起鱼的尾巴,将鱼头沉入锅底,用勺子往鱼的身上淋热油,待面糊成型后,将鱼慢慢放入锅中,拿锅铲轻轻铲起鱼的头部,然后垫上笊篱。防止底部炸糊。 * 准备一个盛鱼的盘子,放在锅的旁边。 * 用锅铲从鱼身处轻轻铲入,两个工具配合鱼翻个身。再炸两分钟,还是同样的方式(笊篱托着鱼头,锅铲托着鱼身,将鱼盛入盘中) @@ -64,13 +64,13 @@ --- -* 将50g清水、40g番茄酱、20g白糖、10g白醋放入小碗中,搅拌均匀 -* 再准备一个小碗加入10g淀粉、10g水,搅拌成水淀粉 +* 将 50g 清水、40g 番茄酱、20g 白糖、10g 白醋放入小碗中,搅拌均匀 +* 再准备一个小碗加入 10g 淀粉、10g 水,搅拌成水淀粉 * 开大火将锅烧热,然后倒入我们准备的料汁,大火烧开,转小火 -* 加入调好的水淀粉,边倒边搅拌,然后20秒后关火 +* 加入调好的水淀粉,边倒边搅拌,然后 20 秒后关火 * 将熬好的糖醋汁用勺子均匀地浇在鱼身上,可以加点香菜或葱花点缀,糖醋鲤鱼就做好了 -![](./Images/糖醋鲤鱼/成品.jpg) +![](./成品.jpg) 我这里的糖醋汁熬的有点稠了...... diff --git a/Images/糖醋鲤鱼/腌制.jpg b/dishes/home-cooking/糖醋鲤鱼/腌制.jpg similarity index 100% rename from Images/糖醋鲤鱼/腌制.jpg rename to dishes/home-cooking/糖醋鲤鱼/腌制.jpg diff --git a/dishes/home-cooking/茄子炖土豆.md b/dishes/home-cooking/茄子炖土豆.md new file mode 100644 index 000000000..7ed205a9 --- /dev/null +++ b/dishes/home-cooking/茄子炖土豆.md @@ -0,0 +1,44 @@ +# 茄子炖土豆的做法 + +## 必备原料和工具 + +- 茄子 +- 土豆 +- 肉 +- 辣椒(是青辣椒,而**不是辣椒面或辣椒油**) +- 酱油 +- 盐 +- 蒜 + +## 计算 + +个人认为,当人数为 1-5 人时,味道最佳。 + +- 茄子的数量 = 人数 * 2 个 +- 土豆数量 = 人数 * 1 个 +- 肉量 = 人数 * 200 克 +- 酱油量 = 人数 * 15 毫升 +- 盐量 = 人数 * 5 克 +- 辣椒量 = 50 克(调味,所以无论多少人都放这些。) +- 蒜量 = 3 瓣(调味,所以无论多少人都放这些。注意是里面的小瓣 3 瓣,而**不是3整头**) + +使用上述条件,计算出计划使用的原材料比例。 + +## 操作 + +1. 将茄子、土豆、辣椒洗净,蒜扒皮并拍碎。 +2. 将茄子、土豆切成约 6 立方厘米左右的块,辣椒切成 5 克左右的小块,肉切成 3 厘米左右的丝。 +3. 开火,热锅,加入人数 * 13 毫升左右的油。 +4. 当能看到锅里的油冒出一丝烟时,放入辣椒。 +5. 煸出辣椒香气后,立刻放入肉,用铲子翻炒 30 秒。 +6. 放入土豆,翻炒 30 秒。 +7. 放入茄子,翻炒 30 秒。 +8. 放入酱油和盐,继续翻炒 5 分钟。 +9. 加入水,水面高度为锅内食材高度的 0.9 倍,并盖上锅盖。 +10. 等待,直到锅内水的高度剩余食材高度的 0.1 倍时,开盖,放入蒜,搅拌均匀,关火。 + +## 附加内容 + +在操作的第 5-7 步骤中要注意:在此过程中注意锅底如果没有液体(油或水),则加 5 毫升左右的水再继续翻炒。 + +如果您遵循本指南的制作流程而发现有问题或可以改进的流程,请提出 Issue 或 Pull request 。 diff --git a/葱煎豆腐.md b/dishes/home-cooking/葱煎豆腐.md similarity index 93% rename from 葱煎豆腐.md rename to dishes/home-cooking/葱煎豆腐.md index 32357d53..7d1bfba2 100644 --- a/葱煎豆腐.md +++ b/dishes/home-cooking/葱煎豆腐.md @@ -11,7 +11,7 @@ ## 计算 -注意,这道菜不提供一人版本。如果确定只有一个人食用,请在人数中代入2。 +注意,这道菜不提供一人版本。如果确定只有一个人食用,请在人数中代入 2。 * 白豆腐的数量 = 人数 * 0.8 向上取整。 * 辣椒的数量 = 1.5 只/三人。 @@ -26,7 +26,7 @@ * 豆腐洗净。切约 5 mm 厚度,置于碟中。 * 葱洗净,除去根部,切成葱花,备用。 * 辣椒洗净,切开,去籽,切成 1cm * 1cm 状,备用、 -* 热锅,加入人数 * 9ml油。 +* 热锅,加入人数 * 9ml 油。 * 油入锅后,使其均匀布于锅底,均匀放入豆腐,小火煎至金黄翻面。 * 待两面金黄,盛入碟中备用。 * 补油至覆盖锅底,倒入辣椒大火翻炒,并铲碾 3 分钟。 diff --git a/dishes/home-cooking/西红柿炒鸡蛋.md b/dishes/home-cooking/西红柿炒鸡蛋.md new file mode 100644 index 000000000..7067decb --- /dev/null +++ b/dishes/home-cooking/西红柿炒鸡蛋.md @@ -0,0 +1,40 @@ +# 西红柿鸡蛋的做法 + +西红柿炒蛋是中国家常几乎最常见的一道菜肴。它的原材料易于搜集,制作步骤也较为简单,所以非常适合新厨师上手,是很多人学习做菜时做的第一道菜。 + +## 必备原料和工具 + +* 西红柿 +* 鸡蛋 +* 盐 +* 糖 + +## 计算 + +每份: + +* 西红柿 2 个(每个西红柿约 180g,共 360g) +* 鸡蛋 2-3 个 +* 盐 4g +* 糖 4g(如果担心使用糖产生健康问题,这里可以降低至 2g) + +## 操作 + +* 西红柿洗净。去蒂,切成边长不超过 4cm 的小块 +* (可选)对西红柿[焯水](../../tips/learn/焯水.md) +* (可选)去掉西红柿的外表皮 +* 将鸡蛋打入碗中,加入 2g 盐,搅匀 +* 热锅,加入 8ml 油 +* 油热后,倒入鸡蛋液。翻炒 10 秒,将鸡蛋翻炒成不超过 5cm 的小块 +* 关火。将半熟固体鸡蛋放入盘子中备用。不要洗锅 +* 重新开火,加入西红柿,翻炒 20 秒,让西红柿变软烂 +* 向锅中加入之前备用的鸡蛋,翻炒均匀 +* (可选)加入 300ml 饮用水,并加热 30 秒(这可以避免最终盛盘后可能的汤汁不足) +* 加入 2g 盐。加入 4g 糖。翻炒均匀 +* 关火,盛盘 + +## 附加内容 + +**请不要在这道菜中加醋!** + +如果您遵循本指南的制作流程而发现有问题或可以改进的流程,请提出 Issue 或 Pull request 。 diff --git a/辣椒炒肉.md b/dishes/home-cooking/辣椒炒肉.md similarity index 75% rename from 辣椒炒肉.md rename to dishes/home-cooking/辣椒炒肉.md index 43597bab..bee7325b 100644 --- a/辣椒炒肉.md +++ b/dishes/home-cooking/辣椒炒肉.md @@ -16,9 +16,9 @@ ## 计算 -注意,这道菜不提供一人版本。如果确定只有一个人食用,请在人数中代入2。 +注意,这道菜不提供一人版本。如果确定只有一个人食用,请在人数中代入 2。 -* 青椒的数量 = 人数 * 3个。 +* 青椒的数量 = 人数 * 3 个。 * 肉量 = 人数 * 200g。 * 盐量 = 人数 * 3g。 * 生抽 = 人数 * 3ml。 @@ -33,12 +33,13 @@ ## 操作 * 将`青椒`洗净,去除`青椒把`以及`青椒籽`,再用`滚刀手法`切好备用。 -* `大蒜`横切成`蒜瓣`,`生姜`切碎成`姜末`。 +* `大蒜`用刀拍一下,再横切成`蒜瓣`,`生姜`切碎成`姜末`。 * 将`猪瘦肉`切成`肉片`(顺着猪肉的纹理切,即刀和肉的纹理呈水平线,出来的肉片,纹路呈“川”字)。 -* 将切好的`猪肉`洗净,放入空碗,再加入计算好的`生抽`、`蚝油`、`盐`搅拌均匀,腌制10分钟。 -* 热锅,不用倒油,把`切好的青椒`放入锅中,大火干煸至虎皮状后,再加2g`盐`继续翻炒1min后捞起。 -* 不用洗锅,大火热锅,加入人数 * 8ml`油`,等待30s,加入`蒜瓣`、`姜末`翻炒15s,加入腌制好的`猪肉`倒入锅内翻炒2min,再加入干煸过的`青椒`翻炒1min。 -* 根据个人口味喜好加入`豆豉`,最后加入`酱油`,继续翻炒30s。 +* 将切好的`猪肉`洗净,放入空碗,再加入计算好的`生抽`、`蚝油`、`盐`搅拌均匀,腌制 10 分钟。 +* 热锅,不用倒油,把`切好的青椒`放入锅中,大火干煸至虎皮状后,再加 2g`盐`继续翻炒 1min 后捞起。 +* 不用洗锅,大火热锅,加入人数 * 8ml`油`,等待 30s,加入`蒜瓣`、`姜末`翻炒 15s。 +* 加入腌制好的`猪肉`倒入锅内翻炒 2min,再加入干煸过的`青椒`翻炒 1min。 +* 根据个人口味喜好加入`豆豉`,最后加入`酱油`,继续翻炒 30s。 * 出锅,盛盘。 ## 附加内容 diff --git a/dishes/home-cooking/速冻水饺.md b/dishes/home-cooking/速冻水饺.md new file mode 100644 index 000000000..18a81a07 --- /dev/null +++ b/dishes/home-cooking/速冻水饺.md @@ -0,0 +1,33 @@ +# 速冻水饺的做法 + +饺子是一种源自中国的一种以面皮包馅、形如半月或元宝形的食物。饺子是在农历新年和冬至等节日的重要食品。通常由碎肉和蔬菜馅料包裹成一片薄生面团后包好密封。而饺子的缺点在于难以制作。不妨选择购买速冻水饺来快速在家里吃上热气腾腾的饺子。 + +## 必备原料和工具 + +* 未过期的一袋速冻水饺 +* 醋(可选) + +## 计算 + +* 每人可以食用 7~10 个水饺 +* 一个水饺约需要本身体积两倍的水 + +使用上述条件,计算出计划使用的原材料比例。 + +## 操作 + +### 烧开水 + +* 中火,将水倒入锅中,静候水煮沸。 +* 将饺子倒入锅中。 +* 倒入锅前可以适当用水过一下。 +* 倒入饺子后,抓住锅柄轻轻摇晃锅使饺子移动以避免粘锅上撕破皮。 +* 如果饺子太多可以用铲子搅水,但要注意不要铲到饺子上。 +* 频率不需要太高,平均每 `30` 秒摇 `3` 秒,饺子浮起后不需要再做此步。 +* 所有饺子浮起后用铲子把饺子铲入盘或碗中,装盘后即可食用。 + +## 附加内容 + +可以搭配醋食用。建议用量:10-20ml。 + +如果您遵循本指南的制作流程而发现有问题或可以改进的流程,请提出 Issue 或 Pull request 。 diff --git a/dishes/home-cooking/香干肉丝.md b/dishes/home-cooking/香干肉丝.md new file mode 100644 index 000000000..6ee2788b --- /dev/null +++ b/dishes/home-cooking/香干肉丝.md @@ -0,0 +1,53 @@ +# 香干肉丝的做法 + +## 必备原料和工具 + +* 猪里脊(可以买超市切好且称重好的肉丝) +* 香干 +* 盐 +* 生抽 +* 淀粉 +* 大蒜 +* 青椒 +* 鸡精 + +## 计算 + +注意,这道菜提供的是一人版本。如果确定有多个人食用,请在人数中代入相应的系数。 + +* 香干 = 人数 * 75g +* 青椒的数量 = 人数 * 5 个 +* 肉量 = 人数 * 100g +* 盐量 = 人数 * 3g +* 生抽 = 人数 * 5ml +* 淀粉 = 人数 * 5g +* 大蒜 = 人数 * 5g(大约 3 个蒜瓣) +* 鸡精 = 2g + +使用上述条件,计算出计划使用的原材料比例。 + +## 操作 + +### 准备工作 + +* `肉丝`(没有肉丝,自己切)用生抽(3ml),生粉混合均匀待用。 +* 将`青椒`洗净,再用`滚刀手法`切好备用。 +* `大蒜`横切成片,`香干`切丝。 +* `淀粉`与水(10ml)混合,搅拌均匀。 + +### 起锅 + +* 干净锅适量油,不用等油热就倒入肉丝慢慢划散,肉丝熟了,立马捞出,留油到锅里。 +* 将蒜片和香干放入锅中,加入 2ml 生抽,翻炒均匀。 +* 2-3 分钟,看火大小,将青椒丝放入锅中混合,翻炒。 +* 1 分钟后,放入肉丝混合。 +* 倒入 2 淀粉水勾芡,加入盐 3g,鸡精 2g,翻炒 2-3 分钟出锅。 +* 成品。 + +注意,不同的锅具或者灶台,会影响翻炒的时间,建议,不确定是否熟了,可以试吃下。 + +## 附加内容 + +**辣椒选择青椒,螺丝椒为最优解,喜欢辣的可以加入小米椒切细碎,同青椒一起加入!** + +如果您遵循本指南的制作流程而发现有问题或可以改进的流程,请提出 Issue 或 Pull request 。 diff --git a/鱼香肉丝.md b/dishes/home-cooking/鱼香肉丝.md similarity index 57% rename from 鱼香肉丝.md rename to dishes/home-cooking/鱼香肉丝.md index b077ed4f..b3e49112 100644 --- a/鱼香肉丝.md +++ b/dishes/home-cooking/鱼香肉丝.md @@ -8,56 +8,56 @@ * 木耳(干) 5g * 生抽 10ml * 料酒 5ml -* 蛋清 1个 +* 蛋清 1 个 * 淀粉 10g * 醋 15ml * 白糖 10g * 盐 5g * 姜 20g * 葱 20g -* 蒜 2瓣 +* 蒜 2 瓣 * 豆瓣酱 15g ## 计算 -注意,这道菜仅有足够1-2人食用的版本。 +注意,这道菜仅有足够 1-2 人食用的版本。 ## 操作 ### 制作腌料和香碗汁 * 制作`腌料`:将下列原料混合: - * 生抽5ml - * 料酒5ml - * 淀粉5g - * 水20ml - * 蛋清1个 + * 生抽 5ml + * 料酒 5ml + * 淀粉 5g + * 水 20ml + * 蛋清 1 个 * 制作`香汁`:将下列原料混合: - * 生抽5ml - * 醋15ml - * 白糖10克 - * 盐1克 - * 淀粉5g - * 水20ml + * 生抽 5ml + * 醋 15ml + * 白糖 10 克 + * 盐 1 克 + * 淀粉 5g + * 水 20ml ### 处理原料 -* 用`腌料`腌制里脊肉15-30min。注意将肉抓匀。 +* 用`腌料`腌制里脊肉 15-30min。注意将肉抓匀。 * 干木耳泡一个晚上,洗净,切成小块。 * 青椒洗净,去蒂,切成丝。 -* 胡萝卜洗净,切成丝,将胡萝卜丝[焯水](https://baike.baidu.hk/item/%E7%84%AF%E6%B0%B4/5546193)。 +* 胡萝卜洗净,切成丝,将胡萝卜丝[焯水](../../tips/learn/焯水.md)。 * 姜、蒜切沫。 -* 葱切成5mm的小段。 +* 葱切成 5mm 的小段。 ### 炒熟各种材料 -* 将锅烧热,加入15ml油。 +* 将锅烧热,加入 15ml 油。 * 向锅内倒入准备好的腌肉,快速滑散至变白,盛出备用。 -* 将锅烧热,加入5ml油。 +* 将锅烧热,加入 5ml 油。 * 倒入全部`葱`、`姜`、`蒜`、`豆瓣酱`。 -* 倒入全部`胡萝卜`,翻炒20s后,放入青椒和木耳,翻炒2min。 -* 倒入`炒过的肉`。快速翻炒均匀。注意不要炒超过20秒。 -* 倒入`香汁`。快速翻炒均匀。注意不要炒超过15秒。 +* 倒入全部`胡萝卜`,翻炒 20s 后,放入青椒和木耳,翻炒 2min。 +* 倒入`炒过的肉`。快速翻炒均匀。注意不要炒超过 20 秒。 +* 倒入`香汁`。快速翻炒均匀。注意不要炒超过 15 秒。 * 关火,盛盘。 ## 附加内容 diff --git a/dishes/home-cooking/麻辣香锅.md b/dishes/home-cooking/麻辣香锅.md new file mode 100644 index 000000000..ebc173f6 --- /dev/null +++ b/dishes/home-cooking/麻辣香锅.md @@ -0,0 +1,46 @@ +# 麻辣香锅 + +## 必备原料和工具 + +- 青菜(油菜、油麦菜、菠菜) +- 无骨肉(猪肉、牛肉、鸡肉、鱼丸、火腿肠) +- 干豆腐 +- 北京麻辣方便面 +- 干辣椒 +- 麻辣香锅调料([示例图片1](https://recipes-1258617162.cos.ap-beijing.myqcloud.com/malaxianguo-frontside.jpg)、[示例图片2](https://recipes-1258617162.cos.ap-beijing.myqcloud.com/malaxiangguo-backside.jpg)) + +## 计算 + +此数值大约是 3 个人的量。 + +- 青菜共需 455 克,其中油菜、油麦菜、菠菜的比例按自己喜好分配即可 +- 无骨肉共需 430 克,其中猪肉、牛肉、鸡肉、鱼丸、火腿肠的比例按自己喜好分配即可 +- 干豆腐 152 克 +- 北京麻辣方便面 1 袋 +- 干辣椒 5 克 +- 麻辣香锅调料 110 克 + +以上内容中,青菜、无骨肉、干豆腐、北京麻辣方便面的配比为推荐配比,如果你有自己喜欢的食材,可以按喜好重新分配比例。 + +## 操作 + +1. 烧开一锅水(水量能没过第 2-4 步中的食材即可)。 +2. 在开水中放入青菜,焯 5 分钟左右后盛出备用。 +3. 在开水中放入无骨肉,焯 4 分钟左右后盛出备用。 +4. 在开水中放入北京麻辣方便面,煮 2 分钟后盛出备用。 +5. 倒出开水,擦干锅具,放入 105 克食用油,大火加热 30 秒。 +6. 放入麻辣香锅调料,翻炒 20 秒。 +7. 放入干辣椒,翻炒 10 秒。 +8. 放入焯过的青菜,改中火,翻炒 3 分钟。 +9. 放入焯过的无骨肉,翻炒 3 分钟。 +10. 放入煮过的北京麻辣方便面,用筷子翻动 1 分钟。 +11. 关火,出锅。 + +## 附加内容 + +关于火候的说明: + +- 大火通常温度在 240 摄氏度左右,以电磁炉为例,输入功率大约 2 千瓦左右。 +- 中火通常温度在 120 摄氏度左右,以电磁炉为例,输入功率大约 1.4 千瓦左右。 + +如果您遵循本指南的制作流程而发现有问题或可以改进的流程,请提出 Issue 或 Pull request 。 \ No newline at end of file diff --git a/dishes/porridge/皮蛋瘦肉粥.md b/dishes/porridge/皮蛋瘦肉粥.md new file mode 100644 index 000000000..e6283510 --- /dev/null +++ b/dishes/porridge/皮蛋瘦肉粥.md @@ -0,0 +1,68 @@ +# 皮蛋瘦肉粥的做法 + +## 必备原料和工具 + +* 饮用水 +* 皮蛋(松花蛋) +* 瘦肉 +* 大米 +* 小葱 +* 香菜 +* 生菜 +* 生姜 +* 酱油 +* 蚝油 +* 盐 +* 胡椒粉 +* 食用油 +* 电饭锅 +* 小碗若干 + +## 计算 + +### 所有材料按个人爱好与食量适量增减,处理食材时有条件带上一次性手套,使用之前生蔬食材建议提前洗净放置一旁保持卫生 + +* 饮用水 1 升 +* 皮蛋 2 颗 +* 瘦肉 100g +* 大米 0.5 杯 +* 小葱 1 棵 +* 香菜 1 棵 +* 生菜 4 叶 +* 生姜 1 拇指块 +* 酱油 1 勺 +* 蚝油 1 勺 +* 盐 0.2 勺 +* 胡椒粉 0.1 勺 +* 食用油 2 勺 + +## 操作 + +### 主料 + +* 大米 - 洗净 - 放入电饭锅内胆 - 加入 1 升 饮用水 +* 瘦肉 - 洗净 - 简易晾去水分 - 加入 2 勺 食用油 - 揉搓均匀 - 放入电饭锅内胆 +* 皮蛋 - 去壳 - 洗净 - 对半切开 - 分离蛋白蛋黄 - 蛋白简单切碎块 - 蛋黄揉碎 - 放入电饭锅内胆 +* 生姜 - 洗净 - 削皮 - 去除枯黄枯黑无法食用部分 - 切丝 - 放入电饭锅内胆 + +### 配料 + +* 小葱 - 洗净 - 去除根部 - 去除枯黄枯黑无法食用部分 - 切碎 - 放入小碗备用 +* 香菜 - 洗净 - 去除根部 - 去除枯黄枯黑无法食用部分 - 切碎 - 放入小碗备用 +* 生菜 - 洗净 - 去除根部 - 去除枯黄枯黑无法食用部分 - 切碎 - 放入小碗备用 + +### 酱料 + +* 酱油 + 蚝油 + 盐 + 胡椒粉 - 搅拌均匀 - 放入小碗备用 + +### 烹饪过程 + +* 主料 - 使用电饭锅煮粥模式煮熟 +* 配料 - 待主料煮熟后,生菜单独过一次热水,并与其余配料一同开盖加入主料中搅拌均匀 +* 酱料 - 待主料煮熟后,与其余配料一同开盖加入主料中搅拌均匀 + +## 附加内容 + +* 勺子为日常使用的瓷质勺子 +* 如果您遵循本指南的制作流程而发现有问题或可以改进的流程,请提出 Issue 或 Pull request 。 +* 作为早餐时可提前一夜准备好主料,保温模式到第二天早餐,再添加配料和酱料 diff --git a/dishes/porridge/米粥.md b/dishes/porridge/米粥.md new file mode 100644 index 000000000..6a83bbb0 --- /dev/null +++ b/dishes/porridge/米粥.md @@ -0,0 +1,34 @@ +# 米粥的做法 + +大米粥是一道以大米和水作為主要原料經大火煮沸熬製而成的美食,老少皆宜,米粥具有補脾、和胃、清肺功效。 + +## 必备原料和工具 + +* 米 +* 水 +* 植物油(可选) + +## 计算 + +* 每人可以食用 60ml-110ml 的米。 +* 水的体积是米饭的体积的 9-12 倍。 +* 一碗容量是 500ml。 +* 中断大火加热的最晚时间 T1:1.5 min/500ml * 水体积 +* 米粥能够食用的最早时间 Tr:10 min/500ml * 水体积 +* 油的质量 Mo:生米体积 / 10 +* 冷藏时间 Tc = 生米体积 /10 ml/分钟。 + +使用上述条件,计算出计划使用的原材料比例。 + +## 操作 + +* (可选)将 Mo ml 的油与洗净的米混合,*尽量确保完全混合,即每粒米上至少都沾上少量油* +* (可选)将 米-油混合物品冷藏保存,冷藏时间 Tc。 +* 将米和水加入锅中。 +* 开大火,加热到 T1。 +* 在 T1 之前将火关小。**如果忘记此步骤,水可能会漫出而熄灭火焰。非常危险!** +* 加热到 Tr。在 Tr 时关闭火源。 + +## 附加内容 + +如果您遵循本指南的制作流程而发现有问题或可以改进的流程,请提出 Issue 或 Pull request 。 diff --git a/dishes/porridge/西红柿鸡蛋汤.md b/dishes/porridge/西红柿鸡蛋汤.md new file mode 100644 index 000000000..716fc5f5 --- /dev/null +++ b/dishes/porridge/西红柿鸡蛋汤.md @@ -0,0 +1,36 @@ +# 西红柿鸡蛋汤 + +## 必备原料和工具 + +- 西红柿 +- 鸡蛋 +- 香油 +- 味素 +- 盐 +- 葱、姜、蒜 + +## 计算 + +- 西红柿 1 个 +- 鸡蛋 1-2 个(依照自己的口味而定,喜欢吃鸡蛋就放 2 个,一般就放 1 个) +- 香油 2 滴 +- 味素 5 克(可选) +- 盐 15 克 +- 葱、姜、蒜共 15 克 + +## 操作 + +1. 将西红柿洗净,切块。 +2. 葱姜蒜切碎。 +3. 鸡蛋打到碗中,用筷子(或打蛋器)搅拌均匀。 +4. 热锅,并放入 15 毫升的油,待能从油中看到冒出一丝烟时,放入葱姜蒜翻炒 30 秒。 +5. 放入西红柿翻炒 1 分钟。 +6. 倒入水,水的高度大约为锅内菜品高度的 1.2 倍,并放入盐。 +7. 待开锅后,将鸡蛋液放入,并用筷子将鸡蛋打散,放入味素和香油。 +8. 等待 30 秒,关火出锅。 + +## 附加内容 + +味素可加可不加。 + +如果您遵循本指南的制作流程而发现有问题或可以改进的流程,请提出 Issue 或 Pull request 。 \ No newline at end of file diff --git a/凉皮.md b/dishes/staple/凉皮.md similarity index 62% rename from 凉皮.md rename to dishes/staple/凉皮.md index 42f23025..c12ea118 100644 --- a/凉皮.md +++ b/dishes/staple/凉皮.md @@ -11,32 +11,32 @@ * 凉皮用量为 300 g/人 向下取整。 * 芝麻酱的用量为 30 g/人 向下取整。 -* 黄瓜100g/人、绿豆芽50g/人。 +* 黄瓜 100g/人、绿豆芽 50g/人。 ## 操作 ### 准备工作 -* 锅中加入500ml水。煮沸。 -* 将绿豆芽放入锅中,大火煮60秒。豆芽捞出,过凉水,放入盘中备用。 +* 锅中加入 500ml 水。煮沸。 +* 将绿豆芽放入锅中,大火煮 60 秒。豆芽捞出,过凉水,放入盘中备用。 * 黄瓜切丝放入盘中备用 -* 将10g蒜瓣剥皮、放入蒜臼中加入1g盐。锤成蒜泥,加入10g自来水。放置备用。 +* 将 10g 蒜瓣剥皮、放入蒜臼中加入 1g 盐。锤成蒜泥,加入 10g 自来水。放置备用。 * 注:超市购买来的凉皮表面一般会有食用油,如果这让干净的你对超市不信任,可以使用自来水清洗。面筋同样。 * 注:清洗面筋之后,请用手将面筋中的大量水分挤出(不需过于用力)。 ### 盐水调配 -* 准备小碗,加入3g盐、2g鸡精、5g生抽、1g老抽、1g香油、2g耗油、香醋5g、(盐、香醋均可根据个人口位酌量添加,以上数据只是大众口味)。 -* 以上调料加入25-35g温水(据个人咸淡程度),使用筷子将其拌匀、溶解。静置一旁冷却。 +* 准备小碗,加入 3g 盐、2g 鸡精、5g 生抽、1g 老抽、1g 香油、2g 耗油、香醋 5g、(盐、香醋均可根据个人口位酌量添加,以上数据只是大众口味)。 +* 以上调料加入 25-35g 温水(据个人咸淡程度),使用筷子将其拌匀、溶解。静置一旁冷却。 ### 芝麻酱调配 -* 注:以下计量均为一人份,如果有n人,请自觉将计量乘以n +* 注:以下计量均为一人份,如果有 n 人,请自觉将计量乘以 n * 拿出小碗,将准备好的芝麻酱放入其中。 -* 加入4g盐、3g鸡精、5g生抽、1g老抽、3g耗油。 +* 加入 4g 盐、3g 鸡精、5g 生抽、1g 老抽、3g 耗油。 * 使用筷子将其调料与芝麻酱拌匀。 -* 加入10g清水将其拌匀。 -* 上一步骤重复2、3次(次数根据个人对芝麻酱的浓稠程度而定)。 +* 加入 10g 清水将其拌匀。 +* 上一步骤重复 2、3 次(次数根据个人对芝麻酱的浓稠程度而定)。 ### 最终步骤 diff --git a/dishes/staple/日式咖喱饭/成品.jpg b/dishes/staple/日式咖喱饭/成品.jpg new file mode 100644 index 000000000..3da1d835 Binary files /dev/null and b/dishes/staple/日式咖喱饭/成品.jpg differ diff --git a/dishes/staple/日式咖喱饭/日式咖喱饭.md b/dishes/staple/日式咖喱饭/日式咖喱饭.md new file mode 100644 index 000000000..188da7b7 --- /dev/null +++ b/dishes/staple/日式咖喱饭/日式咖喱饭.md @@ -0,0 +1,88 @@ +# 日式咖喱饭的做法 + +## 必备原料和工具 + +### 主食材 + +- 咖喱块(推荐品牌好侍) +- 土豆 +- 胡萝卜 +- 洋葱 +- 肉(猪肉、鸡肉、牛肉均可) +- 蒜头 + +### 副食材 + +额外用作点缀的食材,可选 + +- 花椰菜(清水煮开) +- 培根(即食) +- 煎蛋或[太阳蛋](../../breakfast/太阳蛋.md) + +## 计算 + +食材用量与咖喱成正比,计算部分以 **半盒好侍咖喱块(115g)** 为例。半盒约六碗份,做好的咖喱在冰箱冷藏后风味更佳,不用担心一个人吃不完。 + +- 洋葱 2 个 +- 土豆 2 个 +- 胡萝卜 1 根 +- 蒜头 2~3 瓣 +- 肉 2 斤 + +## 操作 + +### 1. 食材准备 + +- 胡萝卜去头尾,去皮,滚刀切 +- 洋葱剥去外层去芯,切成月牙状 +- 土豆去皮、切大块 +- 肉切块状 +- 剥蒜拍平切碎 +- 咖喱块切碎,增加接触面积加速溶解 + +### 2. 烧煮过程 + +- 热油锅放入蒜和肉,**快速翻炒**至肉*表面变白* +- 加入胡萝卜,**快速翻炒**至均匀受热 +- 加入洋葱,**快速翻炒**至洋葱*变透明状* +- 加入土豆,保持翻炒至土豆*变软*(可以用筷子确认) +- 加水没过所有食材,沸腾后**等待 15 分钟** +- 关火,加咖喱并搅拌 +- 等待咖喱融化后再开火,缓慢**搅拌 10 分钟**,防止糊锅 +- 在外观*呈粘稠状态*关火结束制作 + +### 3.冷藏后加热 + +冷藏的咖喱每次取出需要吃的份量,加热后盖在[米饭](../米饭.md)上。 + +- 微波炉:单人份高火 2-3 分钟 +- 锅:需额外加 50ml 水,加热时保持搅拌 + +## 附加内容 + +### 备注说明 + +- 步骤 1-6 可以在 2-5 的等待过程进行,在这个过程也可以用清水锅煮些蔬菜,或做个煎蛋。 +- 2-5 到 2-6 之间,需要注意观察沸腾的水位线,如发现低于 2/3 的食材应加热水至没过食材。 + +### 流程图解 + +``` mermaid +graph TD + A[处理肉, 胡萝卜, 洋葱, 土豆] --> B(开油锅, 先后下锅炒熟) + B --> C[加水没过食材, 煮15分钟] + C --> D[咖喱切碎, 开水煮花椰菜等] + C --> E[加入咖喱搅拌 10 分钟] + D --> E +``` + +### 成品 + +![日式咖喱饭成品](./成品.jpg) + +### 参考资料 + +- [世界美食教程的微博视频](http://t.cn/EJ77yFy) + +--- +如果您遵循本指南的制作流程而发现有问题或可以改进的流程,请提出 Issue 或 Pull request 。 diff --git a/炒方便面.md b/dishes/staple/炒方便面.md similarity index 67% rename from 炒方便面.md rename to dishes/staple/炒方便面.md index a5107d88..f3d5dd32 100644 --- a/炒方便面.md +++ b/dishes/staple/炒方便面.md @@ -20,30 +20,30 @@ ### 面的处理 -* 锅中加入300 ml水。煮沸。 -* 加入方便面,煮30秒。煮的过程中将其挑动,把面条打散。 +* 锅中加入 300 ml 水。煮沸。 +* 加入方便面,煮 30 秒。煮的过程中将其挑动,把面条打散。 * 面条打散后关火 * 将面汤和面分离。用凉水冲一下面条。 ### 酱料处理 * 准备一个小碗,将方便面的三个调料包全部挤进去。 -* 将第一步的面汤取出60ml,加入小碗,搅匀。 +* 将第一步的面汤取出 60ml,加入小碗,搅匀。 ### 鸡蛋的预处理 * 取出两个鸡蛋,打入一个小碗。 -* 加入4g盐。搅拌均匀。 -* 热锅20s,加入人数 * 8ml油。 -* 油热后,可以考虑加入火腿肠。加入刚刚准备好的一碗鸡蛋。翻炒大约20s至鸡蛋形成固态即可。 +* 加入 4g 盐。搅拌均匀。 +* 热锅 20s,加入人数 * 8ml 油。 +* 油热后,可以考虑加入火腿肠。加入刚刚准备好的一碗鸡蛋。翻炒大约 20s 至鸡蛋形成固态即可。 * 将煎鸡蛋鸡蛋取出暂存。 * 增加锅内的油到人数 * 10ml。 ### 最终步骤 -* 继上一步,加入第一步的面。翻炒30秒。 -* 加入第二步的调料碗。翻炒1分钟。 -* 加入第三步的煎鸡蛋。翻炒1分钟。 +* 继上一步,加入第一步的面。翻炒 30 秒。 +* 加入第二步的调料碗。翻炒 1 分钟。 +* 加入第三步的煎鸡蛋。翻炒 1 分钟。 * 关火盛盘即可。 ## 附加内容 diff --git a/炒河粉.MD b/dishes/staple/炒河粉.md similarity index 75% rename from 炒河粉.MD rename to dishes/staple/炒河粉.md index 243b9659..84507f5a 100644 --- a/炒河粉.MD +++ b/dishes/staple/炒河粉.md @@ -12,12 +12,12 @@ ## 计算 -* 河粉用量为 250 g/人,男生可再加100g/人 向下取整。 -* 黄瓜丝30g/人、面筋块30g/人、绿豆芽30g/人、打碎的鸡蛋1个/人。 -* 拍碎的蒜瓣2个/人、小葱1根/人 -* 河粉料可按20g/人添加,若自行准备炒料可10g盐+2g味精+3g孜然粉。 -* 淀粉可准备每100g肉+5g淀粉比例准备。 -* 老抽/生抽,分别为每250g河粉10ml/15ml。 +* 河粉用量为 250 g/人,男生可再加 100g/人 向下取整。 +* 黄瓜丝 30g/人、面筋块 30g/人、绿豆芽 30g/人、打碎的鸡蛋 1 个/人。 +* 拍碎的蒜瓣 2 个/人、小葱 1 根/人 +* 河粉料可按 20g/人添加,若自行准备炒料可 10g 盐+2g 味精+3g 孜然粉。 +* 淀粉可准备每 100g 肉+5g 淀粉比例准备。 +* 老抽/生抽,分别为每 250g 河粉 10ml/15ml。 ## 操作 @@ -25,7 +25,7 @@ * 小葱切碎(葱白和葱叶分开)、蒜瓣拍碎,丢案板上备用。 * 打碎鸡蛋,捞一点蛋清到一只碗中,剩下的丢入另一只碗中备用。 -* 将绿豆芽放入锅中,大火煮60秒。豆芽捞出,过凉水,放入盘中备用。 +* 将绿豆芽放入锅中,大火煮 60 秒。豆芽捞出,过凉水,放入盘中备用。 * 黄瓜切丝放入盘中备用,可和豆芽丢一起。 * 处理面筋,单独丢一个盘中。 * 肉切细条状,加入淀粉与刚刚碗中的鸡蛋清、胡椒粉,顺时针拌匀。 @@ -39,7 +39,7 @@ ### 炒制河粉 -* 趁锅热,加入20g食用油(高血压人群可降低用量),倒入葱白、蒜爆炒出香。 +* 趁锅热,加入 20g 食用油(高血压人群可降低用量),倒入葱白、蒜爆炒出香。 * 加入河粉,淋入老抽提色,翻炒均匀后再加入河粉炒料,继续翻炒。 * 河粉即将透明时,放入炒制好的肉丝与面筋,并加入生抽提鲜,简单翻炒两次。 * 加入豆芽与黄瓜丝,翻炒至河粉完全透明。 diff --git a/dishes/staple/炸酱面.md b/dishes/staple/炸酱面.md new file mode 100644 index 000000000..71449ca9 --- /dev/null +++ b/dishes/staple/炸酱面.md @@ -0,0 +1,30 @@ +# 炸酱面 + +## 原料与工具 + +* 肉丁/肉末 = 人数 * 150g +* 挂面 = 人数 * 150g +* 蒜 = 人数 * 3 个 +* 白菜 = 人数 * 3 片 +* 油 = 人数 * 10g +* 豆瓣酱 = 人数 * 15g +* 甜面酱 = 人数 * 15g + +## 操作 + +1. 白菜(或其他菜)切丝,[焯水](../../tips/learn/焯水.md)至软化熟透,盛出备用。 +2. 煮面条至断生(无白芯),连同汤水一同盛出备用。 +3. 蒜切末。油锅烧热,下蒜末和肉,炒至肉完全熟透(无红色)。 +4. 下豆瓣酱和甜面酱,加 30g 水盖盖焖煮至收汁粘稠,得到炸酱。 +5. 第 2 步面条倒掉汤水,盛入碗中,加第 1 步的菜和第 4 步的炸酱,拌匀可吃。 + +## 附加内容 + +* 肉推荐瘦肉丁,口感更好,一次买多可分装小保鲜袋冷冻备用。每次取用前 30 秒微波炉解冻。 +* 面条口感关键在于劲道。勿选龙须等细面。第 2 步中不要完全煮熟,盛出并在进行后续步骤时,汤水会进一步催熟。 +* 本文以白菜为例,可灵活替换为易获取的各种蔬菜,口感影响不大,以半碗的量为宜。 +* 如有条件(另一个锅)且熟练后,第 1、2 步和 3、4 步可分时并行执行。 +* 第 3/4 步可选加干辣椒(= 人数 * 3 个)。 +* 甜咸口个人有爱好,两种酱的配比需要自己迭代优化。 + +如果您遵循本指南的制作流程而发现有问题或可以改进的流程,请提出 Issue 或 Pull request 。 diff --git a/Images/烙饼/成品.jpg b/dishes/staple/烙饼/成品.jpg similarity index 100% rename from Images/烙饼/成品.jpg rename to dishes/staple/烙饼/成品.jpg diff --git a/烙饼.md b/dishes/staple/烙饼/烙饼.md similarity index 72% rename from 烙饼.md rename to dishes/staple/烙饼/烙饼.md index d14640a6..9ae70e9e 100644 --- a/烙饼.md +++ b/dishes/staple/烙饼/烙饼.md @@ -11,17 +11,17 @@ 注意:该主食不提供更少或更多的版本,我选取了最适合新手的量,超简单!!! * 面粉 = 400g -* 热水 = 130ml(80度) +* 热水 = 130ml(80 度) * 冷水 = 130ml ## 操作 -* 将400g面粉倒入盆中,一半用凉水和面,一半用热水和面,搅拌成面絮,用手揉成团。用保鲜膜封起来,醒面40分钟 -* 离醒面完成时间还有10分钟时,请查看[小技巧](./小技巧.md)中的油酥做法(热油酥效果更好) +* 将 400g 面粉倒入盆中,一半用凉水和面,一半用热水和面,搅拌成面絮,用手揉成团。用保鲜膜封起来,醒面 40 分钟 +* 离醒面完成时间还有 10 分钟时,请查看[小技巧](../../condiment/油酥.md)中的油酥做法(热油酥效果更好) * 醒好的面不用揉,稍微摁一下,用一横刀一竖刀将其分成四份。 -* 搓圆,擀开,擀成与电饼档大小差不多的饼,取1/4的油酥,将饼表面涂抹均匀 +* 搓圆,擀开,擀成与电饼档大小差不多的饼,取 1/4 的油酥,将饼表面涂抹均匀 * 沿饼的半径切开,从外圈将其卷成圆锥形,然后将圆锥尾部捏好,防止油酥外漏。 -* 按压面饼圆锥尖的地方,将其压扁,然后再次擀成与电饼档大小差不多的面饼(厚度约为3mm) +* 按压面饼圆锥尖的地方,将其压扁,然后再次擀成与电饼档大小差不多的面饼(厚度约为 3mm) * 将电饼档预热,涂上凉油(热锅凉油),将擀好的饼放入电饼档中,将饼的上方也刷点油,涂抹均匀(锁住水分),盖上盖子 * 大火烙一分钟,打开盖子,将饼翻个面再烙一分钟 * 重复以上动作,完成饼的烙制 diff --git a/米饭.md b/dishes/staple/米饭.md similarity index 57% rename from 米饭.md rename to dishes/staple/米饭.md index dc331a33..17c8f65c 100644 --- a/米饭.md +++ b/dishes/staple/米饭.md @@ -7,9 +7,9 @@ ## 计算 -* 每人可以食用100ml-200ml的米。 -* 水的体积是米饭的体积的1.25-2.25倍。 -* 一碗容量是500ml。 +* 每人可以食用 100ml-200ml 的米。 +* 水的体积是米饭的体积的 1.25-2.25 倍。 +* 一碗容量是 500ml。 使用上述条件,计算出计划使用的原材料比例。 @@ -17,10 +17,10 @@ * 清洗米 * 将米和水分别加入电饭煲中。 -* 连接电饭煲电源,进入加热模式。等待大约30分钟。 -* 待电饭煲自动进入保温模式后 -* 将米在电饭煲中闷10-15分钟 -* 盛出米 +* 连接电饭煲电源,进入加热模式。等待大约 30 分钟。 +* 待电饭煲自动进入保温模式后。 +* 将米在电饭煲中闷 10-15 分钟。 +* 盛出米。 ## 附加内容 diff --git a/老干妈拌面.md b/dishes/staple/老干妈拌面.md similarity index 100% rename from 老干妈拌面.md rename to dishes/staple/老干妈拌面.md diff --git a/蛋炒饭.md b/dishes/staple/蛋炒饭.md similarity index 94% rename from 蛋炒饭.md rename to dishes/staple/蛋炒饭.md index e1b3c56a..8f0be102 100644 --- a/蛋炒饭.md +++ b/dishes/staple/蛋炒饭.md @@ -17,11 +17,11 @@ * 隔夜米饭(人数*500ml) * 鸡蛋 (人数*1.5 % 1) -* 火腿(人数*2个) +* 火腿(人数*2 个) * 黄瓜(可选,人数*30g) * 胡萝卜(可选,人数*30g) * 油(人数*12ml) -* 盐(人数*4g - 人数*6g) +* 盐(人数\*4g - 人数*6g) * 胡椒粉(人数*8g) 使用上述条件,计算出计划使用的原材料比例。 diff --git a/醪糟小汤圆.md b/dishes/staple/醪糟小汤圆.md similarity index 100% rename from 醪糟小汤圆.md rename to dishes/staple/醪糟小汤圆.md diff --git a/dishes/template/示例菜/示例菜.jpg b/dishes/template/示例菜/示例菜.jpg new file mode 100644 index 000000000..3da1d835 Binary files /dev/null and b/dishes/template/示例菜/示例菜.jpg differ diff --git a/dishes/template/示例菜/示例菜.md b/dishes/template/示例菜/示例菜.md new file mode 100644 index 000000000..eaacd5a3 --- /dev/null +++ b/dishes/template/示例菜/示例菜.md @@ -0,0 +1,68 @@ + + + +# 示例菜的做法 + +*这是一个模板文件!它的注释中包含一些重要的信息。请浏览源代码而不是预览。请查看 Raw 内容* + + + + + +![示例菜成品](./示例菜.jpg) + + +示例菜是一道简单易做的菜。富含 DHA 和蛋白质。一般初学者只需要 3 小时即可完成。还有美容效果哦~ + +## 必备原料和工具 + + + + + + +- 咖喱块(推荐品牌好侍) +- 土豆 + +## 计算 + + + + + +每份: + +- 咖喱块 115g + +- 土豆 2 个(每个土豆约 120g,共 240g) + +- 食用油 10-15ml + +## 操作 + + + + + +- 土豆去皮、切成不超过 4cm 的大块,备用 +- 咖喱块切碎,增加接触面积加速溶解,备用 +- 热锅,锅内放入 10ml - 15ml 食用油。等待 10 秒让油温升高 +- 放入土豆,保持翻炒至土豆*变软*(可以用筷子确认) +- 加水没过所有食材,沸腾后,将火调小然后**等待 15 分钟** +- 关火,加咖喱并搅拌,等待直至咖喱融化 +- 再开火,缓慢**搅拌 10 分钟**,防止糊锅 +- 在外观*呈粘稠状态*后关火,盛盘 + +## 附加内容 + + +- 操作时,需要注意观察沸腾的水位线,如发现低于 2/3 的食材应加热水至没过食材。 + +### 参考资料 + +- [世界美食教程的微博视频](http://t.cn/EJ77yFy) + + +如果您遵循本指南的制作流程而发现有问题或可以改进的流程,请提出 Issue 或 Pull request 。 + + diff --git a/package-lock.json b/package-lock.json new file mode 100644 index 000000000..6b192b2d --- /dev/null +++ b/package-lock.json @@ -0,0 +1,3760 @@ +{ + "name": "HowToCook", + "lockfileVersion": 2, + "requires": true, + "packages": { + "": { + "dependencies": { + "textlint": "^12.1.0", + "textlint-rule-ja-space-between-half-and-full-width": "^2.2.0" + } + }, + "node_modules/@azu/format-text": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@azu/format-text/-/format-text-1.0.1.tgz", + "integrity": "sha1-aWc1CpRkD2sChVFpvYl85U1s6+I=" + }, + "node_modules/@azu/style-format": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/@azu/style-format/-/style-format-1.0.0.tgz", + "integrity": "sha1-5wGH+Khi4ZGxvObAJo8TrNOlayA=", + "dependencies": { + "@azu/format-text": "^1.0.1" + } + }, + "node_modules/@textlint/ast-node-types": { + "version": "12.1.0", + "resolved": "https://registry.npmjs.org/@textlint/ast-node-types/-/ast-node-types-12.1.0.tgz", + "integrity": "sha512-UlxqemrV/EnGTCl26OU7JhtFJpH7NZdgXvnsuII604orcIkvywUA1GGlg51grfbfqi+ar4zRsOb6fVbcbMZnKA==" + }, + "node_modules/@textlint/ast-tester": { + "version": "12.1.0", + "resolved": "https://registry.npmjs.org/@textlint/ast-tester/-/ast-tester-12.1.0.tgz", + "integrity": "sha512-s3VHRDaULFYhxjJ3vP9LUIt2aHLnUB4XFUSRhUVnW4/GDOb1EXCGWFd+wtYy6jTtBg/5TR5ApdC6sNu/SLcb5w==", + "dependencies": { + "@textlint/ast-node-types": "^12.1.0", + "debug": "^4.3.3" + } + }, + "node_modules/@textlint/ast-traverse": { + "version": "12.1.0", + "resolved": "https://registry.npmjs.org/@textlint/ast-traverse/-/ast-traverse-12.1.0.tgz", + "integrity": "sha512-NJCCMS7lxZ6Ed15zsosbe/5i/SyynqQsxOYxhsMHuyU/adx27WzNWLoFbgTdz6Wmn3Ok1PSFf0442MpoS6SP7g==", + "dependencies": { + "@textlint/ast-node-types": "^12.1.0" + } + }, + "node_modules/@textlint/feature-flag": { + "version": "12.1.0", + "resolved": "https://registry.npmjs.org/@textlint/feature-flag/-/feature-flag-12.1.0.tgz", + "integrity": "sha512-pQfA2bUXimBQjxT5hVmGGuFf1Cwwx26kbrcwkGHsgxgXlXkg1zboby5UCMOjWda/TbJjynzqDO0JaU24Ms9fZg==" + }, + "node_modules/@textlint/fixer-formatter": { + "version": "12.1.0", + "resolved": "https://registry.npmjs.org/@textlint/fixer-formatter/-/fixer-formatter-12.1.0.tgz", + "integrity": "sha512-ELG9ehkid+J0sRd0mVRbZ+2UOnLqowycrYsaHxDE+xf2s33OcogZa9i3Uact7y2oSCadX00oNLEhsQcwkAqvpw==", + "dependencies": { + "@textlint/module-interop": "^12.1.0", + "@textlint/types": "^12.1.0", + "chalk": "^1.1.3", + "debug": "^4.3.3", + "diff": "^4.0.2", + "is-file": "^1.0.0", + "string-width": "^1.0.2", + "strip-ansi": "^6.0.1", + "text-table": "^0.2.0", + "try-resolve": "^1.0.1" + } + }, + "node_modules/@textlint/kernel": { + "version": "12.1.0", + "resolved": "https://registry.npmjs.org/@textlint/kernel/-/kernel-12.1.0.tgz", + "integrity": "sha512-6crFn0Ng4Y8PnUvD8HdGMZUlxURx3YgbDv/Grp+7kg8qLlNAkvbyJ1cE8ZYJTF+PfJ1dK1FZmmlZsvrieI4KBQ==", + "dependencies": { + "@textlint/ast-node-types": "^12.1.0", + "@textlint/ast-tester": "^12.1.0", + "@textlint/ast-traverse": "^12.1.0", + "@textlint/feature-flag": "^12.1.0", + "@textlint/source-code-fixer": "^12.1.0", + "@textlint/types": "^12.1.0", + "@textlint/utils": "^12.1.0", + "debug": "^4.3.3", + "deep-equal": "^1.1.1", + "structured-source": "^3.0.2" + } + }, + "node_modules/@textlint/linter-formatter": { + "version": "12.1.0", + "resolved": "https://registry.npmjs.org/@textlint/linter-formatter/-/linter-formatter-12.1.0.tgz", + "integrity": "sha512-OoDvn7wD+pAV+W2loCKgxO9V11rYo14GVKkp8UktsqzeOzxxRY5iZUOALMOOde19fOklb2mEvs8AJ4lDaRDJVQ==", + "dependencies": { + "@azu/format-text": "^1.0.1", + "@azu/style-format": "^1.0.0", + "@textlint/module-interop": "^12.1.0", + "@textlint/types": "^12.1.0", + "chalk": "^1.1.3", + "debug": "^4.3.3", + "is-file": "^1.0.0", + "js-yaml": "^3.14.1", + "optionator": "^0.9.1", + "pluralize": "^2.0.0", + "string-width": "^1.0.2", + "strip-ansi": "^6.0.1", + "table": "^6.7.3", + "text-table": "^0.2.0", + "try-resolve": "^1.0.1", + "xml-escape": "^1.1.0" + } + }, + "node_modules/@textlint/markdown-to-ast": { + "version": "12.1.0", + "resolved": "https://registry.npmjs.org/@textlint/markdown-to-ast/-/markdown-to-ast-12.1.0.tgz", + "integrity": "sha512-22FRiXRxTrNVe1gbE18V8TxAtrWb9rKUb1+2mt5vXdgByZ+rHUJuEc4UonAiye/8+0eTrJ4brjPNXgYsJGeMKg==", + "dependencies": { + "@textlint/ast-node-types": "^12.1.0", + "debug": "^4.3.3", + "remark-footnotes": "^3.0.0", + "remark-frontmatter": "^3.0.0", + "remark-gfm": "^1.0.0", + "remark-parse": "^9.0.0", + "traverse": "^0.6.6", + "unified": "^9.2.2" + } + }, + "node_modules/@textlint/module-interop": { + "version": "12.1.0", + "resolved": "https://registry.npmjs.org/@textlint/module-interop/-/module-interop-12.1.0.tgz", + "integrity": "sha512-J1VhFZ7lK1V3Ue7DCvZlGIFEuaongBCkir1XFL+f1yfhfQlgfM5TCp3OBBB6NhKPff8T6sPA9niBzMYr+NyKyA==" + }, + "node_modules/@textlint/source-code-fixer": { + "version": "12.1.0", + "resolved": "https://registry.npmjs.org/@textlint/source-code-fixer/-/source-code-fixer-12.1.0.tgz", + "integrity": "sha512-3HEWCu8XlRpxK0UmUxGEzc4u0deaO0GtisqaEsCVHzlQFq6tzE+5VTdZ4ffon64UN8UV57EAC2ralEV/VgxkBQ==", + "dependencies": { + "@textlint/types": "^12.1.0", + "debug": "^4.3.3" + } + }, + "node_modules/@textlint/text-to-ast": { + "version": "12.1.0", + "resolved": "https://registry.npmjs.org/@textlint/text-to-ast/-/text-to-ast-12.1.0.tgz", + "integrity": "sha512-s45+d0E9+gMKz+LC9+sJamU7SVrPyGYsXVLDRM5oxqjdb0MeIfjIFj7xl52MUpAHnywbPSgakB6HHiryiEAmqQ==", + "dependencies": { + "@textlint/ast-node-types": "^12.1.0" + } + }, + "node_modules/@textlint/textlint-plugin-markdown": { + "version": "12.1.0", + "resolved": "https://registry.npmjs.org/@textlint/textlint-plugin-markdown/-/textlint-plugin-markdown-12.1.0.tgz", + "integrity": "sha512-bS67fq4Ea2JdKO4mJM4sGSATVI1bw9++IfOIsx2rc01NfZlTxwz4kM8lrhvNFHGY4URaN1kCULSgupeI/u/Seg==", + "dependencies": { + "@textlint/markdown-to-ast": "^12.1.0" + } + }, + "node_modules/@textlint/textlint-plugin-text": { + "version": "12.1.0", + "resolved": "https://registry.npmjs.org/@textlint/textlint-plugin-text/-/textlint-plugin-text-12.1.0.tgz", + "integrity": "sha512-ItqpVEYLDYQkEk0ixeD4wElqkgkDErAGGDN/QK4cmIvtBeVd/GSIQFS1pwC1/Abmd4dTK3j/9z/dov1gVFZB1Q==", + "dependencies": { + "@textlint/text-to-ast": "^12.1.0" + } + }, + "node_modules/@textlint/types": { + "version": "12.1.0", + "resolved": "https://registry.npmjs.org/@textlint/types/-/types-12.1.0.tgz", + "integrity": "sha512-O8RQUiGnBvBrwV/fLHp2vU+y3w223G+qKUzvW/k2eFwAdbtmCfordoKESXAIGuqAUZjgiM2+Mt3We1pY+tMR3g==", + "dependencies": { + "@textlint/ast-node-types": "^12.1.0" + } + }, + "node_modules/@textlint/utils": { + "version": "12.1.0", + "resolved": "https://registry.npmjs.org/@textlint/utils/-/utils-12.1.0.tgz", + "integrity": "sha512-WE0bxQ/q+PgSslqEBuDi4Z8ZskBA0ZEehmKqcsd0hpDWU4VRU/R9o/WVXwia0APbQxgXPYWaHf1Rb7FAKUcVcg==" + }, + "node_modules/@types/mdast": { + "version": "3.0.10", + "resolved": "https://registry.npmjs.org/@types/mdast/-/mdast-3.0.10.tgz", + "integrity": "sha512-W864tg/Osz1+9f4lrGTZpCSO5/z4608eUp19tbozkq2HJK6i3z1kT0H9tlADXuYIb1YYOBByU4Jsqkk75q48qA==", + "dependencies": { + "@types/unist": "*" + } + }, + "node_modules/@types/unist": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/@types/unist/-/unist-2.0.6.tgz", + "integrity": "sha512-PBjIUxZHOuj0R15/xuwJYjFi+KZdNFrehocChv4g5hu6aFroHue8m0lBP0POdK2nKzbw0cgV1mws8+V/JAcEkQ==" + }, + "node_modules/ajv": { + "version": "8.10.0", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.10.0.tgz", + "integrity": "sha512-bzqAEZOjkrUMl2afH8dknrq5KEk2SrwdBROR+vH1EKVQTqaUbJVPdc/gEdggTMM0Se+s+Ja4ju4TlNcStKl2Hw==", + "dependencies": { + "fast-deep-equal": "^3.1.1", + "json-schema-traverse": "^1.0.0", + "require-from-string": "^2.0.2", + "uri-js": "^4.2.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" + } + }, + "node_modules/ansi-regex": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", + "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/ansi-styles": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", + "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/argparse": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", + "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", + "dependencies": { + "sprintf-js": "~1.0.2" + } + }, + "node_modules/astral-regex": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/astral-regex/-/astral-regex-2.0.0.tgz", + "integrity": "sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ==", + "engines": { + "node": ">=8" + } + }, + "node_modules/bail": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/bail/-/bail-1.0.5.tgz", + "integrity": "sha512-xFbRxM1tahm08yHBP16MMjVUAvDaBMD38zsM9EMAUN61omwLmKlOpB/Zku5QkjZ8TZ4vn53pj+t518cH0S03RQ==", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/balanced-match": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", + "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==" + }, + "node_modules/boundary": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/boundary/-/boundary-1.0.1.tgz", + "integrity": "sha1-TWfcJgLAzBbdm85+v4fpSCkPWBI=" + }, + "node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/call-bind": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz", + "integrity": "sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==", + "dependencies": { + "function-bind": "^1.1.1", + "get-intrinsic": "^1.0.2" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/ccount": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/ccount/-/ccount-1.1.0.tgz", + "integrity": "sha512-vlNK021QdI7PNeiUh/lKkC/mNHHfV0m/Ad5JoI0TYtlBnJAslM/JIkm/tGC88bkLIwO6OQ5uV6ztS6kVAtCDlg==", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/chalk": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", + "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", + "dependencies": { + "ansi-styles": "^2.2.1", + "escape-string-regexp": "^1.0.2", + "has-ansi": "^2.0.0", + "strip-ansi": "^3.0.0", + "supports-color": "^2.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/chalk/node_modules/strip-ansi": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", + "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", + "dependencies": { + "ansi-regex": "^2.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/character-entities": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/character-entities/-/character-entities-1.2.4.tgz", + "integrity": "sha512-iBMyeEHxfVnIakwOuDXpVkc54HijNgCyQB2w0VfGQThle6NXn50zU6V/u+LDhxHcDUPojn6Kpga3PTAD8W1bQw==", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/character-entities-legacy": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/character-entities-legacy/-/character-entities-legacy-1.1.4.tgz", + "integrity": "sha512-3Xnr+7ZFS1uxeiUDvV02wQ+QDbc55o97tIV5zHScSPJpcLm/r0DFPcoY3tYRp+VZukxuMeKgXYmsXQHO05zQeA==", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/character-reference-invalid": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/character-reference-invalid/-/character-reference-invalid-1.1.4.tgz", + "integrity": "sha512-mKKUkUbhPpQlCOfIuZkvSEgktjPFIsZKRRbC6KWVEMvlzblj3i3asQv5ODsrwt0N3pHAEvjP8KTQPHkp0+6jOg==", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/charenc": { + "version": "0.0.2", + "resolved": "https://registry.npmjs.org/charenc/-/charenc-0.0.2.tgz", + "integrity": "sha1-wKHS86cJLgN3S/qD8UwPxXkKhmc=", + "engines": { + "node": "*" + } + }, + "node_modules/code-point-at": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/code-point-at/-/code-point-at-1.1.0.tgz", + "integrity": "sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c=", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" + }, + "node_modules/concat-map": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=" + }, + "node_modules/crypt": { + "version": "0.0.2", + "resolved": "https://registry.npmjs.org/crypt/-/crypt-0.0.2.tgz", + "integrity": "sha1-iNf/fsDfuG9xPch7u0LQRNPmxBs=", + "engines": { + "node": "*" + } + }, + "node_modules/debug": { + "version": "4.3.3", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.3.tgz", + "integrity": "sha512-/zxw5+vh1Tfv+4Qn7a5nsbcJKPaSvCDhojn6FEl9vupwK2VCSDtEiEtqr8DFtzYFOdz63LBkxec7DYuc2jon6Q==", + "dependencies": { + "ms": "2.1.2" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, + "node_modules/deep-equal": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/deep-equal/-/deep-equal-1.1.1.tgz", + "integrity": "sha512-yd9c5AdiqVcR+JjcwUQb9DkhJc8ngNr0MahEBGvDiJw8puWab2yZlh+nkasOnZP+EGTAP6rRp2JzJhJZzvNF8g==", + "dependencies": { + "is-arguments": "^1.0.4", + "is-date-object": "^1.0.1", + "is-regex": "^1.0.4", + "object-is": "^1.0.1", + "object-keys": "^1.1.1", + "regexp.prototype.flags": "^1.2.0" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/deep-is": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz", + "integrity": "sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==" + }, + "node_modules/define-properties": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.1.3.tgz", + "integrity": "sha512-3MqfYKj2lLzdMSf8ZIZE/V+Zuy+BgD6f164e8K2w7dgnpKArBDerGYpM46IYYcjnkdPNMjPk9A6VFB8+3SKlXQ==", + "dependencies": { + "object-keys": "^1.0.12" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/diff": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/diff/-/diff-4.0.2.tgz", + "integrity": "sha512-58lmxKSA4BNyLz+HHMUzlOEpg09FV+ev6ZMe3vJihgdxzgcwZ8VoEEPmALCZG9LmqfVoNMMKpttIYTVG6uDY7A==", + "engines": { + "node": ">=0.3.1" + } + }, + "node_modules/emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==" + }, + "node_modules/error-ex": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", + "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==", + "dependencies": { + "is-arrayish": "^0.2.1" + } + }, + "node_modules/escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/esprima": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", + "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", + "bin": { + "esparse": "bin/esparse.js", + "esvalidate": "bin/esvalidate.js" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/extend": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz", + "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==" + }, + "node_modules/fast-deep-equal": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", + "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==" + }, + "node_modules/fast-levenshtein": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", + "integrity": "sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc=" + }, + "node_modules/fault": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/fault/-/fault-1.0.4.tgz", + "integrity": "sha512-CJ0HCB5tL5fYTEA7ToAq5+kTwd++Borf1/bifxd9iT70QcXr4MRrO3Llf8Ifs70q+SJcGHFtnIE/Nw6giCtECA==", + "dependencies": { + "format": "^0.2.0" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/file-entry-cache": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-5.0.1.tgz", + "integrity": "sha512-bCg29ictuBaKUwwArK4ouCaqDgLZcysCFLmM/Yn/FDoqndh/9vNuQfXRDvTuXKLxfD/JtZQGKFT8MGcJBK644g==", + "dependencies": { + "flat-cache": "^2.0.1" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/find-up": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz", + "integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=", + "dependencies": { + "locate-path": "^2.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/flat-cache": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-2.0.1.tgz", + "integrity": "sha512-LoQe6yDuUMDzQAEH8sgmh4Md6oZnc/7PjtwjNFSzveXqSHt6ka9fPBuso7IGf9Rz4uqnSnWiFH2B/zj24a5ReA==", + "dependencies": { + "flatted": "^2.0.0", + "rimraf": "2.6.3", + "write": "1.0.3" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/flatted": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/flatted/-/flatted-2.0.2.tgz", + "integrity": "sha512-r5wGx7YeOwNWNlCA0wQ86zKyDLMQr+/RB8xy74M4hTphfmjlijTSSXGuH8rnvKZnfT9i+75zmd8jcKdMR4O6jA==" + }, + "node_modules/format": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/format/-/format-0.2.2.tgz", + "integrity": "sha1-1hcBB+nv3E7TDJ3DkBbflCtctYs=", + "engines": { + "node": ">=0.4.x" + } + }, + "node_modules/fs.realpath": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", + "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=" + }, + "node_modules/function-bind": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", + "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==" + }, + "node_modules/get-intrinsic": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.1.1.tgz", + "integrity": "sha512-kWZrnVM42QCiEA2Ig1bG8zjoIMOgxWwYCEeNdwY6Tv/cOSeGpcoX4pXHfKUxNKVoArnrEr2e9srnAxxGIraS9Q==", + "dependencies": { + "function-bind": "^1.1.1", + "has": "^1.0.3", + "has-symbols": "^1.0.1" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/get-stdin": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/get-stdin/-/get-stdin-5.0.1.tgz", + "integrity": "sha1-Ei4WFZHiH/TFJTAwVpPyDmOTo5g=", + "engines": { + "node": ">=0.12.0" + } + }, + "node_modules/glob": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.0.tgz", + "integrity": "sha512-lmLf6gtyrPq8tTjSmrO94wBeQbFR3HbLHbuyD69wuyQkImp2hWqMGB47OX65FBkPffO641IP9jWa1z4ivqG26Q==", + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.0.4", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + }, + "engines": { + "node": "*" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/graceful-fs": { + "version": "4.2.9", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.9.tgz", + "integrity": "sha512-NtNxqUcXgpW2iMrfqSfR73Glt39K+BLwWsPs94yR63v45T0Wbej7eRmL5cWfwEgqXnmjQp3zaJTshdRW/qC2ZQ==" + }, + "node_modules/has": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", + "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", + "dependencies": { + "function-bind": "^1.1.1" + }, + "engines": { + "node": ">= 0.4.0" + } + }, + "node_modules/has-ansi": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/has-ansi/-/has-ansi-2.0.0.tgz", + "integrity": "sha1-NPUEnOHs3ysGSa8+8k5F7TVBbZE=", + "dependencies": { + "ansi-regex": "^2.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/has-symbols": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.2.tgz", + "integrity": "sha512-chXa79rL/UC2KlX17jo3vRGz0azaWEx5tGqZg5pO3NUyEJVB17dMruQlzCCOfUvElghKcm5194+BCRvi2Rv/Gw==", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-tostringtag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.0.tgz", + "integrity": "sha512-kFjcSNhnlGV1kyoGk7OXKSawH5JOb/LzUc5w9B02hOTO0dfFRjbHQKvg1d6cf3HbeUmtU9VbbV3qzZ2Teh97WQ==", + "dependencies": { + "has-symbols": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/hosted-git-info": { + "version": "2.8.9", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.9.tgz", + "integrity": "sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==" + }, + "node_modules/inflight": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", + "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", + "dependencies": { + "once": "^1.3.0", + "wrappy": "1" + } + }, + "node_modules/inherits": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" + }, + "node_modules/is-alphabetical": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-alphabetical/-/is-alphabetical-1.0.4.tgz", + "integrity": "sha512-DwzsA04LQ10FHTZuL0/grVDk4rFoVH1pjAToYwBrHSxcrBIGQuXrQMtD5U1b0U2XVgKZCTLLP8u2Qxqhy3l2Vg==", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/is-alphanumerical": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-alphanumerical/-/is-alphanumerical-1.0.4.tgz", + "integrity": "sha512-UzoZUr+XfVz3t3v4KyGEniVL9BDRoQtY7tOyrRybkVNjDFWyo1yhXNGrrBTQxp3ib9BLAWs7k2YKBQsFRkZG9A==", + "dependencies": { + "is-alphabetical": "^1.0.0", + "is-decimal": "^1.0.0" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/is-arguments": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/is-arguments/-/is-arguments-1.1.1.tgz", + "integrity": "sha512-8Q7EARjzEnKpt/PCD7e1cgUS0a6X8u5tdSiMqXhojOdoV9TsMsiO+9VLC5vAmO8N7/GmXn7yjR8qnA6bVAEzfA==", + "dependencies": { + "call-bind": "^1.0.2", + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-arrayish": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", + "integrity": "sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0=" + }, + "node_modules/is-buffer": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz", + "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==" + }, + "node_modules/is-core-module": { + "version": "2.8.1", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.8.1.tgz", + "integrity": "sha512-SdNCUs284hr40hFTFP6l0IfZ/RSrMXF3qgoRHd3/79unUTvrFO/JoXwkGm+5J/Oe3E/b5GsnG330uUNgRpu1PA==", + "dependencies": { + "has": "^1.0.3" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-date-object": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.5.tgz", + "integrity": "sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ==", + "dependencies": { + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-decimal": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-decimal/-/is-decimal-1.0.4.tgz", + "integrity": "sha512-RGdriMmQQvZ2aqaQq3awNA6dCGtKpiDFcOzrTWrDAT2MiWrKQVPmxLGHl7Y2nNu6led0kEyoX0enY0qXYsv9zw==", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/is-file": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-file/-/is-file-1.0.0.tgz", + "integrity": "sha1-KKRM+9nT2xkwRfIrZfzo7fliBZY=" + }, + "node_modules/is-fullwidth-code-point": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", + "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", + "dependencies": { + "number-is-nan": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-hexadecimal": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-hexadecimal/-/is-hexadecimal-1.0.4.tgz", + "integrity": "sha512-gyPJuv83bHMpocVYoqof5VDiZveEoGoFL8m3BXNb2VW8Xs+rz9kqO8LOQ5DH6EsuvilT1ApazU0pyl+ytbPtlw==", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/is-plain-obj": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-2.1.0.tgz", + "integrity": "sha512-YWnfyRwxL/+SsrWYfOpUtz5b3YD+nyfkHvjbcanzk8zgyO4ASD67uVMRt8k5bM4lLMDnXfriRhOpemw+NfT1eA==", + "engines": { + "node": ">=8" + } + }, + "node_modules/is-regex": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.1.4.tgz", + "integrity": "sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg==", + "dependencies": { + "call-bind": "^1.0.2", + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-utf8": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/is-utf8/-/is-utf8-0.2.1.tgz", + "integrity": "sha1-Sw2hRCEE0bM2NA6AeX6GXPOffXI=" + }, + "node_modules/js-yaml": { + "version": "3.14.1", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", + "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==", + "dependencies": { + "argparse": "^1.0.7", + "esprima": "^4.0.0" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" + } + }, + "node_modules/json-parse-better-errors": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz", + "integrity": "sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw==" + }, + "node_modules/json-schema-traverse": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", + "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==" + }, + "node_modules/json5": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.0.tgz", + "integrity": "sha512-f+8cldu7X/y7RAJurMEJmdoKXGB/X550w2Nr3tTbezL6RwEE/iMcm+tZnXeoZtKuOq6ft8+CqzEkrIgx1fPoQA==", + "dependencies": { + "minimist": "^1.2.5" + }, + "bin": { + "json5": "lib/cli.js" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/levn": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz", + "integrity": "sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==", + "dependencies": { + "prelude-ls": "^1.2.1", + "type-check": "~0.4.0" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/load-json-file": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-1.1.0.tgz", + "integrity": "sha1-lWkFcI1YtLq0wiYbBPWfMcmTdMA=", + "dependencies": { + "graceful-fs": "^4.1.2", + "parse-json": "^2.2.0", + "pify": "^2.0.0", + "pinkie-promise": "^2.0.0", + "strip-bom": "^2.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/locate-path": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz", + "integrity": "sha1-K1aLJl7slExtnA3pw9u7ygNUzY4=", + "dependencies": { + "p-locate": "^2.0.0", + "path-exists": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/lodash.truncate": { + "version": "4.4.2", + "resolved": "https://registry.npmjs.org/lodash.truncate/-/lodash.truncate-4.4.2.tgz", + "integrity": "sha1-WjUNoLERO4N+z//VgSy+WNbq4ZM=" + }, + "node_modules/log-symbols": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-1.0.2.tgz", + "integrity": "sha1-N2/3tY6jCGoPCfrMdGF+ylAeGhg=", + "dependencies": { + "chalk": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/longest-streak": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/longest-streak/-/longest-streak-2.0.4.tgz", + "integrity": "sha512-vM6rUVCVUJJt33bnmHiZEvr7wPT78ztX7rojL+LW51bHtLh6HTjx84LA5W4+oa6aKEJA7jJu5LR6vQRBpA5DVg==", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/markdown-table": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/markdown-table/-/markdown-table-2.0.0.tgz", + "integrity": "sha512-Ezda85ToJUBhM6WGaG6veasyym+Tbs3cMAw/ZhOPqXiYsr0jgocBV3j3nx+4lk47plLlIqjwuTm/ywVI+zjJ/A==", + "dependencies": { + "repeat-string": "^1.0.0" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/match-index": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/match-index/-/match-index-1.0.3.tgz", + "integrity": "sha512-1XjyBWqCvEFFUDW/MPv0RwbITRD4xQXOvKoPYtLDq8IdZTfdF/cQSo5Yn4qvhfSSZgjgkTFsqJD2wOUG4ovV8Q==", + "dependencies": { + "regexp.prototype.flags": "^1.1.1" + } + }, + "node_modules/md5": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/md5/-/md5-2.3.0.tgz", + "integrity": "sha512-T1GITYmFaKuO91vxyoQMFETst+O71VUPEU3ze5GNzDm0OWdP8v1ziTaAEPUr/3kLsY3Sftgz242A1SetQiDL7g==", + "dependencies": { + "charenc": "0.0.2", + "crypt": "0.0.2", + "is-buffer": "~1.1.6" + } + }, + "node_modules/mdast-util-find-and-replace": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/mdast-util-find-and-replace/-/mdast-util-find-and-replace-1.1.1.tgz", + "integrity": "sha512-9cKl33Y21lyckGzpSmEQnIDjEfeeWelN5s1kUW1LwdB0Fkuq2u+4GdqcGEygYxJE8GVqCl0741bYXHgamfWAZA==", + "dependencies": { + "escape-string-regexp": "^4.0.0", + "unist-util-is": "^4.0.0", + "unist-util-visit-parents": "^3.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/mdast-util-find-and-replace/node_modules/escape-string-regexp": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", + "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/mdast-util-footnote": { + "version": "0.1.7", + "resolved": "https://registry.npmjs.org/mdast-util-footnote/-/mdast-util-footnote-0.1.7.tgz", + "integrity": "sha512-QxNdO8qSxqbO2e3m09KwDKfWiLgqyCurdWTQ198NpbZ2hxntdc+VKS4fDJCmNWbAroUdYnSthu+XbZ8ovh8C3w==", + "dependencies": { + "mdast-util-to-markdown": "^0.6.0", + "micromark": "~2.11.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/mdast-util-from-markdown": { + "version": "0.8.5", + "resolved": "https://registry.npmjs.org/mdast-util-from-markdown/-/mdast-util-from-markdown-0.8.5.tgz", + "integrity": "sha512-2hkTXtYYnr+NubD/g6KGBS/0mFmBcifAsI0yIWRiRo0PjVs6SSOSOdtzbp6kSGnShDN6G5aWZpKQ2lWRy27mWQ==", + "dependencies": { + "@types/mdast": "^3.0.0", + "mdast-util-to-string": "^2.0.0", + "micromark": "~2.11.0", + "parse-entities": "^2.0.0", + "unist-util-stringify-position": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/mdast-util-frontmatter": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/mdast-util-frontmatter/-/mdast-util-frontmatter-0.2.0.tgz", + "integrity": "sha512-FHKL4w4S5fdt1KjJCwB0178WJ0evnyyQr5kXTM3wrOVpytD0hrkvd+AOOjU9Td8onOejCkmZ+HQRT3CZ3coHHQ==", + "dependencies": { + "micromark-extension-frontmatter": "^0.2.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/mdast-util-gfm": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/mdast-util-gfm/-/mdast-util-gfm-0.1.2.tgz", + "integrity": "sha512-NNkhDx/qYcuOWB7xHUGWZYVXvjPFFd6afg6/e2g+SV4r9q5XUcCbV4Wfa3DLYIiD+xAEZc6K4MGaE/m0KDcPwQ==", + "dependencies": { + "mdast-util-gfm-autolink-literal": "^0.1.0", + "mdast-util-gfm-strikethrough": "^0.2.0", + "mdast-util-gfm-table": "^0.1.0", + "mdast-util-gfm-task-list-item": "^0.1.0", + "mdast-util-to-markdown": "^0.6.1" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/mdast-util-gfm-autolink-literal": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/mdast-util-gfm-autolink-literal/-/mdast-util-gfm-autolink-literal-0.1.3.tgz", + "integrity": "sha512-GjmLjWrXg1wqMIO9+ZsRik/s7PLwTaeCHVB7vRxUwLntZc8mzmTsLVr6HW1yLokcnhfURsn5zmSVdi3/xWWu1A==", + "dependencies": { + "ccount": "^1.0.0", + "mdast-util-find-and-replace": "^1.1.0", + "micromark": "^2.11.3" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/mdast-util-gfm-strikethrough": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/mdast-util-gfm-strikethrough/-/mdast-util-gfm-strikethrough-0.2.3.tgz", + "integrity": "sha512-5OQLXpt6qdbttcDG/UxYY7Yjj3e8P7X16LzvpX8pIQPYJ/C2Z1qFGMmcw+1PZMUM3Z8wt8NRfYTvCni93mgsgA==", + "dependencies": { + "mdast-util-to-markdown": "^0.6.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/mdast-util-gfm-table": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/mdast-util-gfm-table/-/mdast-util-gfm-table-0.1.6.tgz", + "integrity": "sha512-j4yDxQ66AJSBwGkbpFEp9uG/LS1tZV3P33fN1gkyRB2LoRL+RR3f76m0HPHaby6F4Z5xr9Fv1URmATlRRUIpRQ==", + "dependencies": { + "markdown-table": "^2.0.0", + "mdast-util-to-markdown": "~0.6.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/mdast-util-gfm-task-list-item": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/mdast-util-gfm-task-list-item/-/mdast-util-gfm-task-list-item-0.1.6.tgz", + "integrity": "sha512-/d51FFIfPsSmCIRNp7E6pozM9z1GYPIkSy1urQ8s/o4TC22BZ7DqfHFWiqBD23bc7J3vV1Fc9O4QIHBlfuit8A==", + "dependencies": { + "mdast-util-to-markdown": "~0.6.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/mdast-util-to-markdown": { + "version": "0.6.5", + "resolved": "https://registry.npmjs.org/mdast-util-to-markdown/-/mdast-util-to-markdown-0.6.5.tgz", + "integrity": "sha512-XeV9sDE7ZlOQvs45C9UKMtfTcctcaj/pGwH8YLbMHoMOXNNCn2LsqVQOqrF1+/NU8lKDAqozme9SCXWyo9oAcQ==", + "dependencies": { + "@types/unist": "^2.0.0", + "longest-streak": "^2.0.0", + "mdast-util-to-string": "^2.0.0", + "parse-entities": "^2.0.0", + "repeat-string": "^1.0.0", + "zwitch": "^1.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/mdast-util-to-string": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/mdast-util-to-string/-/mdast-util-to-string-2.0.0.tgz", + "integrity": "sha512-AW4DRS3QbBayY/jJmD8437V1Gombjf8RSOUCMFBuo5iHi58AGEgVCKQ+ezHkZZDpAQS75hcBMpLqjpJTjtUL7w==", + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/micromark": { + "version": "2.11.4", + "resolved": "https://registry.npmjs.org/micromark/-/micromark-2.11.4.tgz", + "integrity": "sha512-+WoovN/ppKolQOFIAajxi7Lu9kInbPxFuTBVEavFcL8eAfVstoc5MocPmqBeAdBOJV00uaVjegzH4+MA0DN/uA==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "dependencies": { + "debug": "^4.0.0", + "parse-entities": "^2.0.0" + } + }, + "node_modules/micromark-extension-footnote": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/micromark-extension-footnote/-/micromark-extension-footnote-0.3.2.tgz", + "integrity": "sha512-gr/BeIxbIWQoUm02cIfK7mdMZ/fbroRpLsck4kvFtjbzP4yi+OPVbnukTc/zy0i7spC2xYE/dbX1Sur8BEDJsQ==", + "dependencies": { + "micromark": "~2.11.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/micromark-extension-frontmatter": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/micromark-extension-frontmatter/-/micromark-extension-frontmatter-0.2.2.tgz", + "integrity": "sha512-q6nPLFCMTLtfsctAuS0Xh4vaolxSFUWUWR6PZSrXXiRy+SANGllpcqdXFv2z07l0Xz/6Hl40hK0ffNCJPH2n1A==", + "dependencies": { + "fault": "^1.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/micromark-extension-gfm": { + "version": "0.3.3", + "resolved": "https://registry.npmjs.org/micromark-extension-gfm/-/micromark-extension-gfm-0.3.3.tgz", + "integrity": "sha512-oVN4zv5/tAIA+l3GbMi7lWeYpJ14oQyJ3uEim20ktYFAcfX1x3LNlFGGlmrZHt7u9YlKExmyJdDGaTt6cMSR/A==", + "dependencies": { + "micromark": "~2.11.0", + "micromark-extension-gfm-autolink-literal": "~0.5.0", + "micromark-extension-gfm-strikethrough": "~0.6.5", + "micromark-extension-gfm-table": "~0.4.0", + "micromark-extension-gfm-tagfilter": "~0.3.0", + "micromark-extension-gfm-task-list-item": "~0.3.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/micromark-extension-gfm-autolink-literal": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/micromark-extension-gfm-autolink-literal/-/micromark-extension-gfm-autolink-literal-0.5.7.tgz", + "integrity": "sha512-ePiDGH0/lhcngCe8FtH4ARFoxKTUelMp4L7Gg2pujYD5CSMb9PbblnyL+AAMud/SNMyusbS2XDSiPIRcQoNFAw==", + "dependencies": { + "micromark": "~2.11.3" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/micromark-extension-gfm-strikethrough": { + "version": "0.6.5", + "resolved": "https://registry.npmjs.org/micromark-extension-gfm-strikethrough/-/micromark-extension-gfm-strikethrough-0.6.5.tgz", + "integrity": "sha512-PpOKlgokpQRwUesRwWEp+fHjGGkZEejj83k9gU5iXCbDG+XBA92BqnRKYJdfqfkrRcZRgGuPuXb7DaK/DmxOhw==", + "dependencies": { + "micromark": "~2.11.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/micromark-extension-gfm-table": { + "version": "0.4.3", + "resolved": "https://registry.npmjs.org/micromark-extension-gfm-table/-/micromark-extension-gfm-table-0.4.3.tgz", + "integrity": "sha512-hVGvESPq0fk6ALWtomcwmgLvH8ZSVpcPjzi0AjPclB9FsVRgMtGZkUcpE0zgjOCFAznKepF4z3hX8z6e3HODdA==", + "dependencies": { + "micromark": "~2.11.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/micromark-extension-gfm-tagfilter": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/micromark-extension-gfm-tagfilter/-/micromark-extension-gfm-tagfilter-0.3.0.tgz", + "integrity": "sha512-9GU0xBatryXifL//FJH+tAZ6i240xQuFrSL7mYi8f4oZSbc+NvXjkrHemeYP0+L4ZUT+Ptz3b95zhUZnMtoi/Q==", + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/micromark-extension-gfm-task-list-item": { + "version": "0.3.3", + "resolved": "https://registry.npmjs.org/micromark-extension-gfm-task-list-item/-/micromark-extension-gfm-task-list-item-0.3.3.tgz", + "integrity": "sha512-0zvM5iSLKrc/NQl84pZSjGo66aTGd57C1idmlWmE87lkMcXrTxg1uXa/nXomxJytoje9trP0NDLvw4bZ/Z/XCQ==", + "dependencies": { + "micromark": "~2.11.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/minimist": { + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz", + "integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==" + }, + "node_modules/mkdirp": { + "version": "0.5.5", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.5.tgz", + "integrity": "sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ==", + "dependencies": { + "minimist": "^1.2.5" + }, + "bin": { + "mkdirp": "bin/cmd.js" + } + }, + "node_modules/ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" + }, + "node_modules/normalize-package-data": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz", + "integrity": "sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==", + "dependencies": { + "hosted-git-info": "^2.1.4", + "resolve": "^1.10.0", + "semver": "2 || 3 || 4 || 5", + "validate-npm-package-license": "^3.0.1" + } + }, + "node_modules/number-is-nan": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/number-is-nan/-/number-is-nan-1.0.1.tgz", + "integrity": "sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0=", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/object-is": { + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/object-is/-/object-is-1.1.5.tgz", + "integrity": "sha512-3cyDsyHgtmi7I7DfSSI2LDp6SK2lwvtbg0p0R1e0RvTqF5ceGx+K2dfSjm1bKDMVCFEDAQvy+o8c6a7VujOddw==", + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/object-keys": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", + "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==", + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/once": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", + "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", + "dependencies": { + "wrappy": "1" + } + }, + "node_modules/optionator": { + "version": "0.9.1", + "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.1.tgz", + "integrity": "sha512-74RlY5FCnhq4jRxVUPKDaRwrVNXMqsGsiW6AJw4XK8hmtm10wC0ypZBLw5IIp85NZMr91+qd1RvvENwg7jjRFw==", + "dependencies": { + "deep-is": "^0.1.3", + "fast-levenshtein": "^2.0.6", + "levn": "^0.4.1", + "prelude-ls": "^1.2.1", + "type-check": "^0.4.0", + "word-wrap": "^1.2.3" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/p-limit": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.3.0.tgz", + "integrity": "sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==", + "dependencies": { + "p-try": "^1.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/p-locate": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz", + "integrity": "sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=", + "dependencies": { + "p-limit": "^1.1.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/p-try": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-1.0.0.tgz", + "integrity": "sha1-y8ec26+P1CKOE/Yh8rGiN8GyB7M=", + "engines": { + "node": ">=4" + } + }, + "node_modules/parse-entities": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/parse-entities/-/parse-entities-2.0.0.tgz", + "integrity": "sha512-kkywGpCcRYhqQIchaWqZ875wzpS/bMKhz5HnN3p7wveJTkTtyAB/AlnS0f8DFSqYW1T82t6yEAkEcB+A1I3MbQ==", + "dependencies": { + "character-entities": "^1.0.0", + "character-entities-legacy": "^1.0.0", + "character-reference-invalid": "^1.0.0", + "is-alphanumerical": "^1.0.0", + "is-decimal": "^1.0.0", + "is-hexadecimal": "^1.0.0" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/parse-json": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-2.2.0.tgz", + "integrity": "sha1-9ID0BDTvgHQfhGkJn43qGPVaTck=", + "dependencies": { + "error-ex": "^1.2.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/path-exists": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", + "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=", + "engines": { + "node": ">=4" + } + }, + "node_modules/path-is-absolute": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", + "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/path-parse": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", + "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==" + }, + "node_modules/path-to-glob-pattern": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/path-to-glob-pattern/-/path-to-glob-pattern-1.0.2.tgz", + "integrity": "sha1-Rz5qOikqnRP7rj7czuctO6uoxhk=" + }, + "node_modules/path-type": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-1.1.0.tgz", + "integrity": "sha1-WcRPfuSR2nBNpBXaWkBwuk+P5EE=", + "dependencies": { + "graceful-fs": "^4.1.2", + "pify": "^2.0.0", + "pinkie-promise": "^2.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/pify": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", + "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/pinkie": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/pinkie/-/pinkie-2.0.4.tgz", + "integrity": "sha1-clVrgM+g1IqXToDnckjoDtT3+HA=", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/pinkie-promise": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/pinkie-promise/-/pinkie-promise-2.0.1.tgz", + "integrity": "sha1-ITXW36ejWMBprJsXh3YogihFD/o=", + "dependencies": { + "pinkie": "^2.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/pluralize": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/pluralize/-/pluralize-2.0.0.tgz", + "integrity": "sha1-crcmqm+sHt7uQiVsfY3CVrM1Z38=" + }, + "node_modules/prelude-ls": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz", + "integrity": "sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==", + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/punycode": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", + "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==", + "engines": { + "node": ">=6" + } + }, + "node_modules/rc-config-loader": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/rc-config-loader/-/rc-config-loader-3.0.0.tgz", + "integrity": "sha512-bwfUSB37TWkHfP+PPjb/x8BUjChFmmBK44JMfVnU7paisWqZl/o5k7ttCH+EQLnrbn2Aq8Fo1LAsyUiz+WF4CQ==", + "dependencies": { + "debug": "^4.1.1", + "js-yaml": "^3.12.0", + "json5": "^2.1.1", + "require-from-string": "^2.0.2" + } + }, + "node_modules/read-pkg": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-1.1.0.tgz", + "integrity": "sha1-9f+qXs0pyzHAR0vKfXVra7KePyg=", + "dependencies": { + "load-json-file": "^1.0.0", + "normalize-package-data": "^2.3.2", + "path-type": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/read-pkg-up": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-3.0.0.tgz", + "integrity": "sha1-PtSWaF26D4/hGNBpHcUfSh/5bwc=", + "dependencies": { + "find-up": "^2.0.0", + "read-pkg": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/read-pkg-up/node_modules/load-json-file": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-4.0.0.tgz", + "integrity": "sha1-L19Fq5HjMhYjT9U62rZo607AmTs=", + "dependencies": { + "graceful-fs": "^4.1.2", + "parse-json": "^4.0.0", + "pify": "^3.0.0", + "strip-bom": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/read-pkg-up/node_modules/parse-json": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-4.0.0.tgz", + "integrity": "sha1-vjX1Qlvh9/bHRxhPmKeIy5lHfuA=", + "dependencies": { + "error-ex": "^1.3.1", + "json-parse-better-errors": "^1.0.1" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/read-pkg-up/node_modules/path-type": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-3.0.0.tgz", + "integrity": "sha512-T2ZUsdZFHgA3u4e5PfPbjd7HDDpxPnQb5jN0SrDsjNSuVXHJqtwTnWqG0B1jZrgmJ/7lj1EmVIByWt1gxGkWvg==", + "dependencies": { + "pify": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/read-pkg-up/node_modules/pify": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", + "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=", + "engines": { + "node": ">=4" + } + }, + "node_modules/read-pkg-up/node_modules/read-pkg": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-3.0.0.tgz", + "integrity": "sha1-nLxoaXj+5l0WwA4rGcI3/Pbjg4k=", + "dependencies": { + "load-json-file": "^4.0.0", + "normalize-package-data": "^2.3.2", + "path-type": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/read-pkg-up/node_modules/strip-bom": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", + "integrity": "sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM=", + "engines": { + "node": ">=4" + } + }, + "node_modules/regexp.prototype.flags": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.4.1.tgz", + "integrity": "sha512-pMR7hBVUUGI7PMA37m2ofIdQCsomVnas+Jn5UPGAHQ+/LlwKm/aTLJHdasmHRzlfeZwHiAOaRSo2rbBDm3nNUQ==", + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/remark-footnotes": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/remark-footnotes/-/remark-footnotes-3.0.0.tgz", + "integrity": "sha512-ZssAvH9FjGYlJ/PBVKdSmfyPc3Cz4rTWgZLI4iE/SX8Nt5l3o3oEjv3wwG5VD7xOjktzdwp5coac+kJV9l4jgg==", + "dependencies": { + "mdast-util-footnote": "^0.1.0", + "micromark-extension-footnote": "^0.3.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/remark-frontmatter": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/remark-frontmatter/-/remark-frontmatter-3.0.0.tgz", + "integrity": "sha512-mSuDd3svCHs+2PyO29h7iijIZx4plX0fheacJcAoYAASfgzgVIcXGYSq9GFyYocFLftQs8IOmmkgtOovs6d4oA==", + "dependencies": { + "mdast-util-frontmatter": "^0.2.0", + "micromark-extension-frontmatter": "^0.2.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/remark-gfm": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/remark-gfm/-/remark-gfm-1.0.0.tgz", + "integrity": "sha512-KfexHJCiqvrdBZVbQ6RopMZGwaXz6wFJEfByIuEwGf0arvITHjiKKZ1dpXujjH9KZdm1//XJQwgfnJ3lmXaDPA==", + "dependencies": { + "mdast-util-gfm": "^0.1.0", + "micromark-extension-gfm": "^0.3.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/remark-parse": { + "version": "9.0.0", + "resolved": "https://registry.npmjs.org/remark-parse/-/remark-parse-9.0.0.tgz", + "integrity": "sha512-geKatMwSzEXKHuzBNU1z676sGcDcFoChMK38TgdHJNAYfFtsfHDQG7MoJAjs6sgYMqyLduCYWDIWZIxiPeafEw==", + "dependencies": { + "mdast-util-from-markdown": "^0.8.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/repeat-string": { + "version": "1.6.1", + "resolved": "https://registry.npmjs.org/repeat-string/-/repeat-string-1.6.1.tgz", + "integrity": "sha1-jcrkcOHIirwtYA//Sndihtp15jc=", + "engines": { + "node": ">=0.10" + } + }, + "node_modules/require-from-string": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/require-from-string/-/require-from-string-2.0.2.tgz", + "integrity": "sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/resolve": { + "version": "1.22.0", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.0.tgz", + "integrity": "sha512-Hhtrw0nLeSrFQ7phPp4OOcVjLPIeMnRlr5mcnVuMe7M/7eBn98A3hmFRLoFo3DLZkivSYwhRUJTyPyWAk56WLw==", + "dependencies": { + "is-core-module": "^2.8.1", + "path-parse": "^1.0.7", + "supports-preserve-symlinks-flag": "^1.0.0" + }, + "bin": { + "resolve": "bin/resolve" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/rimraf": { + "version": "2.6.3", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.6.3.tgz", + "integrity": "sha512-mwqeW5XsA2qAejG46gYdENaxXjx9onRNCfn7L0duuP4hCuTIi/QO7PDK07KJfp1d+izWPrzEJDcSqBa0OZQriA==", + "dependencies": { + "glob": "^7.1.3" + }, + "bin": { + "rimraf": "bin.js" + } + }, + "node_modules/semver": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", + "bin": { + "semver": "bin/semver" + } + }, + "node_modules/slice-ansi": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-4.0.0.tgz", + "integrity": "sha512-qMCMfhY040cVHT43K9BFygqYbUPFZKHOg7K73mtTWJRb8pyP3fzf4Ixd5SzdEJQ6MRUg/WBnOLxghZtKKurENQ==", + "dependencies": { + "ansi-styles": "^4.0.0", + "astral-regex": "^2.0.0", + "is-fullwidth-code-point": "^3.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/slice-ansi?sponsor=1" + } + }, + "node_modules/slice-ansi/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/slice-ansi/node_modules/is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "engines": { + "node": ">=8" + } + }, + "node_modules/spdx-correct": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.1.1.tgz", + "integrity": "sha512-cOYcUWwhCuHCXi49RhFRCyJEK3iPj1Ziz9DpViV3tbZOwXD49QzIN3MpOLJNxh2qwq2lJJZaKMVw9qNi4jTC0w==", + "dependencies": { + "spdx-expression-parse": "^3.0.0", + "spdx-license-ids": "^3.0.0" + } + }, + "node_modules/spdx-exceptions": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.3.0.tgz", + "integrity": "sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A==" + }, + "node_modules/spdx-expression-parse": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz", + "integrity": "sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==", + "dependencies": { + "spdx-exceptions": "^2.1.0", + "spdx-license-ids": "^3.0.0" + } + }, + "node_modules/spdx-license-ids": { + "version": "3.0.11", + "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.11.tgz", + "integrity": "sha512-Ctl2BrFiM0X3MANYgj3CkygxhRmr9mi6xhejbdO960nF6EDJApTYpn0BQnDKlnNBULKiCN1n3w9EBkHK8ZWg+g==" + }, + "node_modules/sprintf-js": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", + "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=" + }, + "node_modules/string-width": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", + "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", + "dependencies": { + "code-point-at": "^1.0.0", + "is-fullwidth-code-point": "^1.0.0", + "strip-ansi": "^3.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/string-width/node_modules/strip-ansi": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", + "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", + "dependencies": { + "ansi-regex": "^2.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/strip-ansi/node_modules/ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "engines": { + "node": ">=8" + } + }, + "node_modules/strip-bom": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-2.0.0.tgz", + "integrity": "sha1-YhmoVhZSBJHzV4i9vxRHqZx+aw4=", + "dependencies": { + "is-utf8": "^0.2.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/structured-source": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/structured-source/-/structured-source-3.0.2.tgz", + "integrity": "sha1-3YAkJeD1PcSm56yjdSkBoczaevU=", + "dependencies": { + "boundary": "^1.0.1" + } + }, + "node_modules/supports-color": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", + "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=", + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/supports-preserve-symlinks-flag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", + "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/table": { + "version": "6.8.0", + "resolved": "https://registry.npmjs.org/table/-/table-6.8.0.tgz", + "integrity": "sha512-s/fitrbVeEyHKFa7mFdkuQMWlH1Wgw/yEXMt5xACT4ZpzWFluehAxRtUUQKPuWhaLAWhFcVx6w3oC8VKaUfPGA==", + "dependencies": { + "ajv": "^8.0.1", + "lodash.truncate": "^4.4.2", + "slice-ansi": "^4.0.0", + "string-width": "^4.2.3", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=10.0.0" + } + }, + "node_modules/table/node_modules/is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "engines": { + "node": ">=8" + } + }, + "node_modules/table/node_modules/string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/text-table": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", + "integrity": "sha1-f17oI66AUgfACvLfSoTsP8+lcLQ=" + }, + "node_modules/textlint": { + "version": "12.1.0", + "resolved": "https://registry.npmjs.org/textlint/-/textlint-12.1.0.tgz", + "integrity": "sha512-VZ0iVepE0jUchMfIW0uKGdEdv3l0ajOFvUBcpB1xGOLAz3gVwpdWvlagVlFXuwjc2N+9mcjTM0PCIXNwIs2vQA==", + "dependencies": { + "@textlint/ast-node-types": "^12.1.0", + "@textlint/ast-traverse": "^12.1.0", + "@textlint/feature-flag": "^12.1.0", + "@textlint/fixer-formatter": "^12.1.0", + "@textlint/kernel": "^12.1.0", + "@textlint/linter-formatter": "^12.1.0", + "@textlint/module-interop": "^12.1.0", + "@textlint/textlint-plugin-markdown": "^12.1.0", + "@textlint/textlint-plugin-text": "^12.1.0", + "@textlint/types": "^12.1.0", + "@textlint/utils": "^12.1.0", + "debug": "^4.3.3", + "deep-equal": "^1.1.1", + "file-entry-cache": "^5.0.1", + "get-stdin": "^5.0.1", + "glob": "^7.2.0", + "is-file": "^1.0.0", + "log-symbols": "^1.0.2", + "md5": "^2.3.0", + "mkdirp": "^0.5.0", + "optionator": "^0.9.1", + "path-to-glob-pattern": "^1.0.2", + "rc-config-loader": "^3.0.0", + "read-pkg": "^1.1.0", + "read-pkg-up": "^3.0.0", + "structured-source": "^3.0.2", + "try-resolve": "^1.0.1", + "unique-concat": "^0.2.2" + }, + "bin": { + "textlint": "bin/textlint.js" + }, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + } + }, + "node_modules/textlint-rule-helper": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/textlint-rule-helper/-/textlint-rule-helper-2.2.1.tgz", + "integrity": "sha512-pdX3uNbFzQTgINamaBpEHRT/MgROHev5wCnQnUTXRLT5DaRjls0Rmpi5d1MPZG6HT5NKVL++Q2J0FUbh5shi3Q==", + "dependencies": { + "structured-source": "^3.0.2", + "unist-util-visit": "^2.0.3" + }, + "peerDependencies": { + "@textlint/ast-node-types": "^12.1.0", + "@textlint/types": "^12.1.0" + } + }, + "node_modules/textlint-rule-ja-space-between-half-and-full-width": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/textlint-rule-ja-space-between-half-and-full-width/-/textlint-rule-ja-space-between-half-and-full-width-2.2.0.tgz", + "integrity": "sha512-/NJb0FrBa0qx/Z1SuW1nE0dhERCRNxz8IkdZ8V3VPxtZIaeBbPLdYxLf7h5qJnEAapqSd85pvZ4EXZI3RArvYw==", + "dependencies": { + "match-index": "^1.0.1", + "textlint-rule-helper": "^2.2.0" + } + }, + "node_modules/traverse": { + "version": "0.6.6", + "resolved": "https://registry.npmjs.org/traverse/-/traverse-0.6.6.tgz", + "integrity": "sha1-y99WD9e5r2MlAv7UD5GMFX6pcTc=" + }, + "node_modules/trough": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/trough/-/trough-1.0.5.tgz", + "integrity": "sha512-rvuRbTarPXmMb79SmzEp8aqXNKcK+y0XaB298IXueQ8I2PsrATcPBCSPyK/dDNa2iWOhKlfNnOjdAOTBU/nkFA==", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/try-resolve": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/try-resolve/-/try-resolve-1.0.1.tgz", + "integrity": "sha1-z95vq9ctY+V5fPqrhzq76OcA6RI=" + }, + "node_modules/type-check": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz", + "integrity": "sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==", + "dependencies": { + "prelude-ls": "^1.2.1" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/unified": { + "version": "9.2.2", + "resolved": "https://registry.npmjs.org/unified/-/unified-9.2.2.tgz", + "integrity": "sha512-Sg7j110mtefBD+qunSLO1lqOEKdrwBFBrR6Qd8f4uwkhWNlbkaqwHse6e7QvD3AP/MNoJdEDLaf8OxYyoWgorQ==", + "dependencies": { + "bail": "^1.0.0", + "extend": "^3.0.0", + "is-buffer": "^2.0.0", + "is-plain-obj": "^2.0.0", + "trough": "^1.0.0", + "vfile": "^4.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/unified/node_modules/is-buffer": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-2.0.5.tgz", + "integrity": "sha512-i2R6zNFDwgEHJyQUtJEk0XFi1i0dPFn/oqjK3/vPCcDeJvW5NQ83V8QbicfF1SupOaB0h8ntgBC2YiE7dfyctQ==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "engines": { + "node": ">=4" + } + }, + "node_modules/unique-concat": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/unique-concat/-/unique-concat-0.2.2.tgz", + "integrity": "sha1-khD5vcqsxeHjkpSQ18AZ35bxhxI=" + }, + "node_modules/unist-util-is": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/unist-util-is/-/unist-util-is-4.1.0.tgz", + "integrity": "sha512-ZOQSsnce92GrxSqlnEEseX0gi7GH9zTJZ0p9dtu87WRb/37mMPO2Ilx1s/t9vBHrFhbgweUwb+t7cIn5dxPhZg==", + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/unist-util-stringify-position": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/unist-util-stringify-position/-/unist-util-stringify-position-2.0.3.tgz", + "integrity": "sha512-3faScn5I+hy9VleOq/qNbAd6pAx7iH5jYBMS9I1HgQVijz/4mv5Bvw5iw1sC/90CODiKo81G/ps8AJrISn687g==", + "dependencies": { + "@types/unist": "^2.0.2" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/unist-util-visit": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/unist-util-visit/-/unist-util-visit-2.0.3.tgz", + "integrity": "sha512-iJ4/RczbJMkD0712mGktuGpm/U4By4FfDonL7N/9tATGIF4imikjOuagyMY53tnZq3NP6BcmlrHhEKAfGWjh7Q==", + "dependencies": { + "@types/unist": "^2.0.0", + "unist-util-is": "^4.0.0", + "unist-util-visit-parents": "^3.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/unist-util-visit-parents": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/unist-util-visit-parents/-/unist-util-visit-parents-3.1.1.tgz", + "integrity": "sha512-1KROIZWo6bcMrZEwiH2UrXDyalAa0uqzWCxCJj6lPOvTve2WkfgCytoDTPaMnodXh1WrXOq0haVYHj99ynJlsg==", + "dependencies": { + "@types/unist": "^2.0.0", + "unist-util-is": "^4.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/uri-js": { + "version": "4.4.1", + "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", + "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", + "dependencies": { + "punycode": "^2.1.0" + } + }, + "node_modules/validate-npm-package-license": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz", + "integrity": "sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==", + "dependencies": { + "spdx-correct": "^3.0.0", + "spdx-expression-parse": "^3.0.0" + } + }, + "node_modules/vfile": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/vfile/-/vfile-4.2.1.tgz", + "integrity": "sha512-O6AE4OskCG5S1emQ/4gl8zK586RqA3srz3nfK/Viy0UPToBc5Trp9BVFb1u0CjsKrAWwnpr4ifM/KBXPWwJbCA==", + "dependencies": { + "@types/unist": "^2.0.0", + "is-buffer": "^2.0.0", + "unist-util-stringify-position": "^2.0.0", + "vfile-message": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/vfile-message": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/vfile-message/-/vfile-message-2.0.4.tgz", + "integrity": "sha512-DjssxRGkMvifUOJre00juHoP9DPWuzjxKuMDrhNbk2TdaYYBNMStsNhEOt3idrtI12VQYM/1+iM0KOzXi4pxwQ==", + "dependencies": { + "@types/unist": "^2.0.0", + "unist-util-stringify-position": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/vfile/node_modules/is-buffer": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-2.0.5.tgz", + "integrity": "sha512-i2R6zNFDwgEHJyQUtJEk0XFi1i0dPFn/oqjK3/vPCcDeJvW5NQ83V8QbicfF1SupOaB0h8ntgBC2YiE7dfyctQ==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "engines": { + "node": ">=4" + } + }, + "node_modules/word-wrap": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.3.tgz", + "integrity": "sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/wrappy": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", + "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=" + }, + "node_modules/write": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/write/-/write-1.0.3.tgz", + "integrity": "sha512-/lg70HAjtkUgWPVZhZcm+T4hkL8Zbtp1nFNOn3lRrxnlv50SRBv7cR7RqR+GMsd3hUXy9hWBo4CHTbFTcOYwig==", + "dependencies": { + "mkdirp": "^0.5.1" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/xml-escape": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/xml-escape/-/xml-escape-1.1.0.tgz", + "integrity": "sha1-OQTBQ/qOs6ADDsZG0pAqLxtwbEQ=" + }, + "node_modules/zwitch": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/zwitch/-/zwitch-1.0.5.tgz", + "integrity": "sha512-V50KMwwzqJV0NpZIZFwfOD5/lyny3WlSzRiXgA0G7VUnRlqttta1L6UQIHzd6EuBY/cHGfwTIck7w1yH6Q5zUw==", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + } + }, + "dependencies": { + "@azu/format-text": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@azu/format-text/-/format-text-1.0.1.tgz", + "integrity": "sha1-aWc1CpRkD2sChVFpvYl85U1s6+I=" + }, + "@azu/style-format": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/@azu/style-format/-/style-format-1.0.0.tgz", + "integrity": "sha1-5wGH+Khi4ZGxvObAJo8TrNOlayA=", + "requires": { + "@azu/format-text": "^1.0.1" + } + }, + "@textlint/ast-node-types": { + "version": "12.1.0", + "resolved": "https://registry.npmjs.org/@textlint/ast-node-types/-/ast-node-types-12.1.0.tgz", + "integrity": "sha512-UlxqemrV/EnGTCl26OU7JhtFJpH7NZdgXvnsuII604orcIkvywUA1GGlg51grfbfqi+ar4zRsOb6fVbcbMZnKA==" + }, + "@textlint/ast-tester": { + "version": "12.1.0", + "resolved": "https://registry.npmjs.org/@textlint/ast-tester/-/ast-tester-12.1.0.tgz", + "integrity": "sha512-s3VHRDaULFYhxjJ3vP9LUIt2aHLnUB4XFUSRhUVnW4/GDOb1EXCGWFd+wtYy6jTtBg/5TR5ApdC6sNu/SLcb5w==", + "requires": { + "@textlint/ast-node-types": "^12.1.0", + "debug": "^4.3.3" + } + }, + "@textlint/ast-traverse": { + "version": "12.1.0", + "resolved": "https://registry.npmjs.org/@textlint/ast-traverse/-/ast-traverse-12.1.0.tgz", + "integrity": "sha512-NJCCMS7lxZ6Ed15zsosbe/5i/SyynqQsxOYxhsMHuyU/adx27WzNWLoFbgTdz6Wmn3Ok1PSFf0442MpoS6SP7g==", + "requires": { + "@textlint/ast-node-types": "^12.1.0" + } + }, + "@textlint/feature-flag": { + "version": "12.1.0", + "resolved": "https://registry.npmjs.org/@textlint/feature-flag/-/feature-flag-12.1.0.tgz", + "integrity": "sha512-pQfA2bUXimBQjxT5hVmGGuFf1Cwwx26kbrcwkGHsgxgXlXkg1zboby5UCMOjWda/TbJjynzqDO0JaU24Ms9fZg==" + }, + "@textlint/fixer-formatter": { + "version": "12.1.0", + "resolved": "https://registry.npmjs.org/@textlint/fixer-formatter/-/fixer-formatter-12.1.0.tgz", + "integrity": "sha512-ELG9ehkid+J0sRd0mVRbZ+2UOnLqowycrYsaHxDE+xf2s33OcogZa9i3Uact7y2oSCadX00oNLEhsQcwkAqvpw==", + "requires": { + "@textlint/module-interop": "^12.1.0", + "@textlint/types": "^12.1.0", + "chalk": "^1.1.3", + "debug": "^4.3.3", + "diff": "^4.0.2", + "is-file": "^1.0.0", + "string-width": "^1.0.2", + "strip-ansi": "^6.0.1", + "text-table": "^0.2.0", + "try-resolve": "^1.0.1" + } + }, + "@textlint/kernel": { + "version": "12.1.0", + "resolved": "https://registry.npmjs.org/@textlint/kernel/-/kernel-12.1.0.tgz", + "integrity": "sha512-6crFn0Ng4Y8PnUvD8HdGMZUlxURx3YgbDv/Grp+7kg8qLlNAkvbyJ1cE8ZYJTF+PfJ1dK1FZmmlZsvrieI4KBQ==", + "requires": { + "@textlint/ast-node-types": "^12.1.0", + "@textlint/ast-tester": "^12.1.0", + "@textlint/ast-traverse": "^12.1.0", + "@textlint/feature-flag": "^12.1.0", + "@textlint/source-code-fixer": "^12.1.0", + "@textlint/types": "^12.1.0", + "@textlint/utils": "^12.1.0", + "debug": "^4.3.3", + "deep-equal": "^1.1.1", + "structured-source": "^3.0.2" + } + }, + "@textlint/linter-formatter": { + "version": "12.1.0", + "resolved": "https://registry.npmjs.org/@textlint/linter-formatter/-/linter-formatter-12.1.0.tgz", + "integrity": "sha512-OoDvn7wD+pAV+W2loCKgxO9V11rYo14GVKkp8UktsqzeOzxxRY5iZUOALMOOde19fOklb2mEvs8AJ4lDaRDJVQ==", + "requires": { + "@azu/format-text": "^1.0.1", + "@azu/style-format": "^1.0.0", + "@textlint/module-interop": "^12.1.0", + "@textlint/types": "^12.1.0", + "chalk": "^1.1.3", + "debug": "^4.3.3", + "is-file": "^1.0.0", + "js-yaml": "^3.14.1", + "optionator": "^0.9.1", + "pluralize": "^2.0.0", + "string-width": "^1.0.2", + "strip-ansi": "^6.0.1", + "table": "^6.7.3", + "text-table": "^0.2.0", + "try-resolve": "^1.0.1", + "xml-escape": "^1.1.0" + } + }, + "@textlint/markdown-to-ast": { + "version": "12.1.0", + "resolved": "https://registry.npmjs.org/@textlint/markdown-to-ast/-/markdown-to-ast-12.1.0.tgz", + "integrity": "sha512-22FRiXRxTrNVe1gbE18V8TxAtrWb9rKUb1+2mt5vXdgByZ+rHUJuEc4UonAiye/8+0eTrJ4brjPNXgYsJGeMKg==", + "requires": { + "@textlint/ast-node-types": "^12.1.0", + "debug": "^4.3.3", + "remark-footnotes": "^3.0.0", + "remark-frontmatter": "^3.0.0", + "remark-gfm": "^1.0.0", + "remark-parse": "^9.0.0", + "traverse": "^0.6.6", + "unified": "^9.2.2" + } + }, + "@textlint/module-interop": { + "version": "12.1.0", + "resolved": "https://registry.npmjs.org/@textlint/module-interop/-/module-interop-12.1.0.tgz", + "integrity": "sha512-J1VhFZ7lK1V3Ue7DCvZlGIFEuaongBCkir1XFL+f1yfhfQlgfM5TCp3OBBB6NhKPff8T6sPA9niBzMYr+NyKyA==" + }, + "@textlint/source-code-fixer": { + "version": "12.1.0", + "resolved": "https://registry.npmjs.org/@textlint/source-code-fixer/-/source-code-fixer-12.1.0.tgz", + "integrity": "sha512-3HEWCu8XlRpxK0UmUxGEzc4u0deaO0GtisqaEsCVHzlQFq6tzE+5VTdZ4ffon64UN8UV57EAC2ralEV/VgxkBQ==", + "requires": { + "@textlint/types": "^12.1.0", + "debug": "^4.3.3" + } + }, + "@textlint/text-to-ast": { + "version": "12.1.0", + "resolved": "https://registry.npmjs.org/@textlint/text-to-ast/-/text-to-ast-12.1.0.tgz", + "integrity": "sha512-s45+d0E9+gMKz+LC9+sJamU7SVrPyGYsXVLDRM5oxqjdb0MeIfjIFj7xl52MUpAHnywbPSgakB6HHiryiEAmqQ==", + "requires": { + "@textlint/ast-node-types": "^12.1.0" + } + }, + "@textlint/textlint-plugin-markdown": { + "version": "12.1.0", + "resolved": "https://registry.npmjs.org/@textlint/textlint-plugin-markdown/-/textlint-plugin-markdown-12.1.0.tgz", + "integrity": "sha512-bS67fq4Ea2JdKO4mJM4sGSATVI1bw9++IfOIsx2rc01NfZlTxwz4kM8lrhvNFHGY4URaN1kCULSgupeI/u/Seg==", + "requires": { + "@textlint/markdown-to-ast": "^12.1.0" + } + }, + "@textlint/textlint-plugin-text": { + "version": "12.1.0", + "resolved": "https://registry.npmjs.org/@textlint/textlint-plugin-text/-/textlint-plugin-text-12.1.0.tgz", + "integrity": "sha512-ItqpVEYLDYQkEk0ixeD4wElqkgkDErAGGDN/QK4cmIvtBeVd/GSIQFS1pwC1/Abmd4dTK3j/9z/dov1gVFZB1Q==", + "requires": { + "@textlint/text-to-ast": "^12.1.0" + } + }, + "@textlint/types": { + "version": "12.1.0", + "resolved": "https://registry.npmjs.org/@textlint/types/-/types-12.1.0.tgz", + "integrity": "sha512-O8RQUiGnBvBrwV/fLHp2vU+y3w223G+qKUzvW/k2eFwAdbtmCfordoKESXAIGuqAUZjgiM2+Mt3We1pY+tMR3g==", + "requires": { + "@textlint/ast-node-types": "^12.1.0" + } + }, + "@textlint/utils": { + "version": "12.1.0", + "resolved": "https://registry.npmjs.org/@textlint/utils/-/utils-12.1.0.tgz", + "integrity": "sha512-WE0bxQ/q+PgSslqEBuDi4Z8ZskBA0ZEehmKqcsd0hpDWU4VRU/R9o/WVXwia0APbQxgXPYWaHf1Rb7FAKUcVcg==" + }, + "@types/mdast": { + "version": "3.0.10", + "resolved": "https://registry.npmjs.org/@types/mdast/-/mdast-3.0.10.tgz", + "integrity": "sha512-W864tg/Osz1+9f4lrGTZpCSO5/z4608eUp19tbozkq2HJK6i3z1kT0H9tlADXuYIb1YYOBByU4Jsqkk75q48qA==", + "requires": { + "@types/unist": "*" + } + }, + "@types/unist": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/@types/unist/-/unist-2.0.6.tgz", + "integrity": "sha512-PBjIUxZHOuj0R15/xuwJYjFi+KZdNFrehocChv4g5hu6aFroHue8m0lBP0POdK2nKzbw0cgV1mws8+V/JAcEkQ==" + }, + "ajv": { + "version": "8.10.0", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.10.0.tgz", + "integrity": "sha512-bzqAEZOjkrUMl2afH8dknrq5KEk2SrwdBROR+vH1EKVQTqaUbJVPdc/gEdggTMM0Se+s+Ja4ju4TlNcStKl2Hw==", + "requires": { + "fast-deep-equal": "^3.1.1", + "json-schema-traverse": "^1.0.0", + "require-from-string": "^2.0.2", + "uri-js": "^4.2.2" + } + }, + "ansi-regex": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", + "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=" + }, + "ansi-styles": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", + "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=" + }, + "argparse": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", + "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", + "requires": { + "sprintf-js": "~1.0.2" + } + }, + "astral-regex": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/astral-regex/-/astral-regex-2.0.0.tgz", + "integrity": "sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ==" + }, + "bail": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/bail/-/bail-1.0.5.tgz", + "integrity": "sha512-xFbRxM1tahm08yHBP16MMjVUAvDaBMD38zsM9EMAUN61omwLmKlOpB/Zku5QkjZ8TZ4vn53pj+t518cH0S03RQ==" + }, + "balanced-match": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", + "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==" + }, + "boundary": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/boundary/-/boundary-1.0.1.tgz", + "integrity": "sha1-TWfcJgLAzBbdm85+v4fpSCkPWBI=" + }, + "brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "requires": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "call-bind": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz", + "integrity": "sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==", + "requires": { + "function-bind": "^1.1.1", + "get-intrinsic": "^1.0.2" + } + }, + "ccount": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/ccount/-/ccount-1.1.0.tgz", + "integrity": "sha512-vlNK021QdI7PNeiUh/lKkC/mNHHfV0m/Ad5JoI0TYtlBnJAslM/JIkm/tGC88bkLIwO6OQ5uV6ztS6kVAtCDlg==" + }, + "chalk": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", + "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", + "requires": { + "ansi-styles": "^2.2.1", + "escape-string-regexp": "^1.0.2", + "has-ansi": "^2.0.0", + "strip-ansi": "^3.0.0", + "supports-color": "^2.0.0" + }, + "dependencies": { + "strip-ansi": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", + "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", + "requires": { + "ansi-regex": "^2.0.0" + } + } + } + }, + "character-entities": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/character-entities/-/character-entities-1.2.4.tgz", + "integrity": "sha512-iBMyeEHxfVnIakwOuDXpVkc54HijNgCyQB2w0VfGQThle6NXn50zU6V/u+LDhxHcDUPojn6Kpga3PTAD8W1bQw==" + }, + "character-entities-legacy": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/character-entities-legacy/-/character-entities-legacy-1.1.4.tgz", + "integrity": "sha512-3Xnr+7ZFS1uxeiUDvV02wQ+QDbc55o97tIV5zHScSPJpcLm/r0DFPcoY3tYRp+VZukxuMeKgXYmsXQHO05zQeA==" + }, + "character-reference-invalid": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/character-reference-invalid/-/character-reference-invalid-1.1.4.tgz", + "integrity": "sha512-mKKUkUbhPpQlCOfIuZkvSEgktjPFIsZKRRbC6KWVEMvlzblj3i3asQv5ODsrwt0N3pHAEvjP8KTQPHkp0+6jOg==" + }, + "charenc": { + "version": "0.0.2", + "resolved": "https://registry.npmjs.org/charenc/-/charenc-0.0.2.tgz", + "integrity": "sha1-wKHS86cJLgN3S/qD8UwPxXkKhmc=" + }, + "code-point-at": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/code-point-at/-/code-point-at-1.1.0.tgz", + "integrity": "sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c=" + }, + "color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "requires": { + "color-name": "~1.1.4" + } + }, + "color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" + }, + "concat-map": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=" + }, + "crypt": { + "version": "0.0.2", + "resolved": "https://registry.npmjs.org/crypt/-/crypt-0.0.2.tgz", + "integrity": "sha1-iNf/fsDfuG9xPch7u0LQRNPmxBs=" + }, + "debug": { + "version": "4.3.3", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.3.tgz", + "integrity": "sha512-/zxw5+vh1Tfv+4Qn7a5nsbcJKPaSvCDhojn6FEl9vupwK2VCSDtEiEtqr8DFtzYFOdz63LBkxec7DYuc2jon6Q==", + "requires": { + "ms": "2.1.2" + } + }, + "deep-equal": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/deep-equal/-/deep-equal-1.1.1.tgz", + "integrity": "sha512-yd9c5AdiqVcR+JjcwUQb9DkhJc8ngNr0MahEBGvDiJw8puWab2yZlh+nkasOnZP+EGTAP6rRp2JzJhJZzvNF8g==", + "requires": { + "is-arguments": "^1.0.4", + "is-date-object": "^1.0.1", + "is-regex": "^1.0.4", + "object-is": "^1.0.1", + "object-keys": "^1.1.1", + "regexp.prototype.flags": "^1.2.0" + } + }, + "deep-is": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz", + "integrity": "sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==" + }, + "define-properties": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.1.3.tgz", + "integrity": "sha512-3MqfYKj2lLzdMSf8ZIZE/V+Zuy+BgD6f164e8K2w7dgnpKArBDerGYpM46IYYcjnkdPNMjPk9A6VFB8+3SKlXQ==", + "requires": { + "object-keys": "^1.0.12" + } + }, + "diff": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/diff/-/diff-4.0.2.tgz", + "integrity": "sha512-58lmxKSA4BNyLz+HHMUzlOEpg09FV+ev6ZMe3vJihgdxzgcwZ8VoEEPmALCZG9LmqfVoNMMKpttIYTVG6uDY7A==" + }, + "emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==" + }, + "error-ex": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", + "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==", + "requires": { + "is-arrayish": "^0.2.1" + } + }, + "escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=" + }, + "esprima": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", + "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==" + }, + "extend": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz", + "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==" + }, + "fast-deep-equal": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", + "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==" + }, + "fast-levenshtein": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", + "integrity": "sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc=" + }, + "fault": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/fault/-/fault-1.0.4.tgz", + "integrity": "sha512-CJ0HCB5tL5fYTEA7ToAq5+kTwd++Borf1/bifxd9iT70QcXr4MRrO3Llf8Ifs70q+SJcGHFtnIE/Nw6giCtECA==", + "requires": { + "format": "^0.2.0" + } + }, + "file-entry-cache": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-5.0.1.tgz", + "integrity": "sha512-bCg29ictuBaKUwwArK4ouCaqDgLZcysCFLmM/Yn/FDoqndh/9vNuQfXRDvTuXKLxfD/JtZQGKFT8MGcJBK644g==", + "requires": { + "flat-cache": "^2.0.1" + } + }, + "find-up": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz", + "integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=", + "requires": { + "locate-path": "^2.0.0" + } + }, + "flat-cache": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-2.0.1.tgz", + "integrity": "sha512-LoQe6yDuUMDzQAEH8sgmh4Md6oZnc/7PjtwjNFSzveXqSHt6ka9fPBuso7IGf9Rz4uqnSnWiFH2B/zj24a5ReA==", + "requires": { + "flatted": "^2.0.0", + "rimraf": "2.6.3", + "write": "1.0.3" + } + }, + "flatted": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/flatted/-/flatted-2.0.2.tgz", + "integrity": "sha512-r5wGx7YeOwNWNlCA0wQ86zKyDLMQr+/RB8xy74M4hTphfmjlijTSSXGuH8rnvKZnfT9i+75zmd8jcKdMR4O6jA==" + }, + "format": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/format/-/format-0.2.2.tgz", + "integrity": "sha1-1hcBB+nv3E7TDJ3DkBbflCtctYs=" + }, + "fs.realpath": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", + "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=" + }, + "function-bind": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", + "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==" + }, + "get-intrinsic": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.1.1.tgz", + "integrity": "sha512-kWZrnVM42QCiEA2Ig1bG8zjoIMOgxWwYCEeNdwY6Tv/cOSeGpcoX4pXHfKUxNKVoArnrEr2e9srnAxxGIraS9Q==", + "requires": { + "function-bind": "^1.1.1", + "has": "^1.0.3", + "has-symbols": "^1.0.1" + } + }, + "get-stdin": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/get-stdin/-/get-stdin-5.0.1.tgz", + "integrity": "sha1-Ei4WFZHiH/TFJTAwVpPyDmOTo5g=" + }, + "glob": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.0.tgz", + "integrity": "sha512-lmLf6gtyrPq8tTjSmrO94wBeQbFR3HbLHbuyD69wuyQkImp2hWqMGB47OX65FBkPffO641IP9jWa1z4ivqG26Q==", + "requires": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.0.4", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + } + }, + "graceful-fs": { + "version": "4.2.9", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.9.tgz", + "integrity": "sha512-NtNxqUcXgpW2iMrfqSfR73Glt39K+BLwWsPs94yR63v45T0Wbej7eRmL5cWfwEgqXnmjQp3zaJTshdRW/qC2ZQ==" + }, + "has": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", + "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", + "requires": { + "function-bind": "^1.1.1" + } + }, + "has-ansi": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/has-ansi/-/has-ansi-2.0.0.tgz", + "integrity": "sha1-NPUEnOHs3ysGSa8+8k5F7TVBbZE=", + "requires": { + "ansi-regex": "^2.0.0" + } + }, + "has-symbols": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.2.tgz", + "integrity": "sha512-chXa79rL/UC2KlX17jo3vRGz0azaWEx5tGqZg5pO3NUyEJVB17dMruQlzCCOfUvElghKcm5194+BCRvi2Rv/Gw==" + }, + "has-tostringtag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.0.tgz", + "integrity": "sha512-kFjcSNhnlGV1kyoGk7OXKSawH5JOb/LzUc5w9B02hOTO0dfFRjbHQKvg1d6cf3HbeUmtU9VbbV3qzZ2Teh97WQ==", + "requires": { + "has-symbols": "^1.0.2" + } + }, + "hosted-git-info": { + "version": "2.8.9", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.9.tgz", + "integrity": "sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==" + }, + "inflight": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", + "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", + "requires": { + "once": "^1.3.0", + "wrappy": "1" + } + }, + "inherits": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" + }, + "is-alphabetical": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-alphabetical/-/is-alphabetical-1.0.4.tgz", + "integrity": "sha512-DwzsA04LQ10FHTZuL0/grVDk4rFoVH1pjAToYwBrHSxcrBIGQuXrQMtD5U1b0U2XVgKZCTLLP8u2Qxqhy3l2Vg==" + }, + "is-alphanumerical": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-alphanumerical/-/is-alphanumerical-1.0.4.tgz", + "integrity": "sha512-UzoZUr+XfVz3t3v4KyGEniVL9BDRoQtY7tOyrRybkVNjDFWyo1yhXNGrrBTQxp3ib9BLAWs7k2YKBQsFRkZG9A==", + "requires": { + "is-alphabetical": "^1.0.0", + "is-decimal": "^1.0.0" + } + }, + "is-arguments": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/is-arguments/-/is-arguments-1.1.1.tgz", + "integrity": "sha512-8Q7EARjzEnKpt/PCD7e1cgUS0a6X8u5tdSiMqXhojOdoV9TsMsiO+9VLC5vAmO8N7/GmXn7yjR8qnA6bVAEzfA==", + "requires": { + "call-bind": "^1.0.2", + "has-tostringtag": "^1.0.0" + } + }, + "is-arrayish": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", + "integrity": "sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0=" + }, + "is-buffer": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz", + "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==" + }, + "is-core-module": { + "version": "2.8.1", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.8.1.tgz", + "integrity": "sha512-SdNCUs284hr40hFTFP6l0IfZ/RSrMXF3qgoRHd3/79unUTvrFO/JoXwkGm+5J/Oe3E/b5GsnG330uUNgRpu1PA==", + "requires": { + "has": "^1.0.3" + } + }, + "is-date-object": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.5.tgz", + "integrity": "sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ==", + "requires": { + "has-tostringtag": "^1.0.0" + } + }, + "is-decimal": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-decimal/-/is-decimal-1.0.4.tgz", + "integrity": "sha512-RGdriMmQQvZ2aqaQq3awNA6dCGtKpiDFcOzrTWrDAT2MiWrKQVPmxLGHl7Y2nNu6led0kEyoX0enY0qXYsv9zw==" + }, + "is-file": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-file/-/is-file-1.0.0.tgz", + "integrity": "sha1-KKRM+9nT2xkwRfIrZfzo7fliBZY=" + }, + "is-fullwidth-code-point": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", + "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", + "requires": { + "number-is-nan": "^1.0.0" + } + }, + "is-hexadecimal": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-hexadecimal/-/is-hexadecimal-1.0.4.tgz", + "integrity": "sha512-gyPJuv83bHMpocVYoqof5VDiZveEoGoFL8m3BXNb2VW8Xs+rz9kqO8LOQ5DH6EsuvilT1ApazU0pyl+ytbPtlw==" + }, + "is-plain-obj": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-2.1.0.tgz", + "integrity": "sha512-YWnfyRwxL/+SsrWYfOpUtz5b3YD+nyfkHvjbcanzk8zgyO4ASD67uVMRt8k5bM4lLMDnXfriRhOpemw+NfT1eA==" + }, + "is-regex": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.1.4.tgz", + "integrity": "sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg==", + "requires": { + "call-bind": "^1.0.2", + "has-tostringtag": "^1.0.0" + } + }, + "is-utf8": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/is-utf8/-/is-utf8-0.2.1.tgz", + "integrity": "sha1-Sw2hRCEE0bM2NA6AeX6GXPOffXI=" + }, + "js-yaml": { + "version": "3.14.1", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", + "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==", + "requires": { + "argparse": "^1.0.7", + "esprima": "^4.0.0" + } + }, + "json-parse-better-errors": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz", + "integrity": "sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw==" + }, + "json-schema-traverse": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", + "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==" + }, + "json5": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.0.tgz", + "integrity": "sha512-f+8cldu7X/y7RAJurMEJmdoKXGB/X550w2Nr3tTbezL6RwEE/iMcm+tZnXeoZtKuOq6ft8+CqzEkrIgx1fPoQA==", + "requires": { + "minimist": "^1.2.5" + } + }, + "levn": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz", + "integrity": "sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==", + "requires": { + "prelude-ls": "^1.2.1", + "type-check": "~0.4.0" + } + }, + "load-json-file": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-1.1.0.tgz", + "integrity": "sha1-lWkFcI1YtLq0wiYbBPWfMcmTdMA=", + "requires": { + "graceful-fs": "^4.1.2", + "parse-json": "^2.2.0", + "pify": "^2.0.0", + "pinkie-promise": "^2.0.0", + "strip-bom": "^2.0.0" + } + }, + "locate-path": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz", + "integrity": "sha1-K1aLJl7slExtnA3pw9u7ygNUzY4=", + "requires": { + "p-locate": "^2.0.0", + "path-exists": "^3.0.0" + } + }, + "lodash.truncate": { + "version": "4.4.2", + "resolved": "https://registry.npmjs.org/lodash.truncate/-/lodash.truncate-4.4.2.tgz", + "integrity": "sha1-WjUNoLERO4N+z//VgSy+WNbq4ZM=" + }, + "log-symbols": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-1.0.2.tgz", + "integrity": "sha1-N2/3tY6jCGoPCfrMdGF+ylAeGhg=", + "requires": { + "chalk": "^1.0.0" + } + }, + "longest-streak": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/longest-streak/-/longest-streak-2.0.4.tgz", + "integrity": "sha512-vM6rUVCVUJJt33bnmHiZEvr7wPT78ztX7rojL+LW51bHtLh6HTjx84LA5W4+oa6aKEJA7jJu5LR6vQRBpA5DVg==" + }, + "markdown-table": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/markdown-table/-/markdown-table-2.0.0.tgz", + "integrity": "sha512-Ezda85ToJUBhM6WGaG6veasyym+Tbs3cMAw/ZhOPqXiYsr0jgocBV3j3nx+4lk47plLlIqjwuTm/ywVI+zjJ/A==", + "requires": { + "repeat-string": "^1.0.0" + } + }, + "match-index": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/match-index/-/match-index-1.0.3.tgz", + "integrity": "sha512-1XjyBWqCvEFFUDW/MPv0RwbITRD4xQXOvKoPYtLDq8IdZTfdF/cQSo5Yn4qvhfSSZgjgkTFsqJD2wOUG4ovV8Q==", + "requires": { + "regexp.prototype.flags": "^1.1.1" + } + }, + "md5": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/md5/-/md5-2.3.0.tgz", + "integrity": "sha512-T1GITYmFaKuO91vxyoQMFETst+O71VUPEU3ze5GNzDm0OWdP8v1ziTaAEPUr/3kLsY3Sftgz242A1SetQiDL7g==", + "requires": { + "charenc": "0.0.2", + "crypt": "0.0.2", + "is-buffer": "~1.1.6" + } + }, + "mdast-util-find-and-replace": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/mdast-util-find-and-replace/-/mdast-util-find-and-replace-1.1.1.tgz", + "integrity": "sha512-9cKl33Y21lyckGzpSmEQnIDjEfeeWelN5s1kUW1LwdB0Fkuq2u+4GdqcGEygYxJE8GVqCl0741bYXHgamfWAZA==", + "requires": { + "escape-string-regexp": "^4.0.0", + "unist-util-is": "^4.0.0", + "unist-util-visit-parents": "^3.0.0" + }, + "dependencies": { + "escape-string-regexp": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", + "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==" + } + } + }, + "mdast-util-footnote": { + "version": "0.1.7", + "resolved": "https://registry.npmjs.org/mdast-util-footnote/-/mdast-util-footnote-0.1.7.tgz", + "integrity": "sha512-QxNdO8qSxqbO2e3m09KwDKfWiLgqyCurdWTQ198NpbZ2hxntdc+VKS4fDJCmNWbAroUdYnSthu+XbZ8ovh8C3w==", + "requires": { + "mdast-util-to-markdown": "^0.6.0", + "micromark": "~2.11.0" + } + }, + "mdast-util-from-markdown": { + "version": "0.8.5", + "resolved": "https://registry.npmjs.org/mdast-util-from-markdown/-/mdast-util-from-markdown-0.8.5.tgz", + "integrity": "sha512-2hkTXtYYnr+NubD/g6KGBS/0mFmBcifAsI0yIWRiRo0PjVs6SSOSOdtzbp6kSGnShDN6G5aWZpKQ2lWRy27mWQ==", + "requires": { + "@types/mdast": "^3.0.0", + "mdast-util-to-string": "^2.0.0", + "micromark": "~2.11.0", + "parse-entities": "^2.0.0", + "unist-util-stringify-position": "^2.0.0" + } + }, + "mdast-util-frontmatter": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/mdast-util-frontmatter/-/mdast-util-frontmatter-0.2.0.tgz", + "integrity": "sha512-FHKL4w4S5fdt1KjJCwB0178WJ0evnyyQr5kXTM3wrOVpytD0hrkvd+AOOjU9Td8onOejCkmZ+HQRT3CZ3coHHQ==", + "requires": { + "micromark-extension-frontmatter": "^0.2.0" + } + }, + "mdast-util-gfm": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/mdast-util-gfm/-/mdast-util-gfm-0.1.2.tgz", + "integrity": "sha512-NNkhDx/qYcuOWB7xHUGWZYVXvjPFFd6afg6/e2g+SV4r9q5XUcCbV4Wfa3DLYIiD+xAEZc6K4MGaE/m0KDcPwQ==", + "requires": { + "mdast-util-gfm-autolink-literal": "^0.1.0", + "mdast-util-gfm-strikethrough": "^0.2.0", + "mdast-util-gfm-table": "^0.1.0", + "mdast-util-gfm-task-list-item": "^0.1.0", + "mdast-util-to-markdown": "^0.6.1" + } + }, + "mdast-util-gfm-autolink-literal": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/mdast-util-gfm-autolink-literal/-/mdast-util-gfm-autolink-literal-0.1.3.tgz", + "integrity": "sha512-GjmLjWrXg1wqMIO9+ZsRik/s7PLwTaeCHVB7vRxUwLntZc8mzmTsLVr6HW1yLokcnhfURsn5zmSVdi3/xWWu1A==", + "requires": { + "ccount": "^1.0.0", + "mdast-util-find-and-replace": "^1.1.0", + "micromark": "^2.11.3" + } + }, + "mdast-util-gfm-strikethrough": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/mdast-util-gfm-strikethrough/-/mdast-util-gfm-strikethrough-0.2.3.tgz", + "integrity": "sha512-5OQLXpt6qdbttcDG/UxYY7Yjj3e8P7X16LzvpX8pIQPYJ/C2Z1qFGMmcw+1PZMUM3Z8wt8NRfYTvCni93mgsgA==", + "requires": { + "mdast-util-to-markdown": "^0.6.0" + } + }, + "mdast-util-gfm-table": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/mdast-util-gfm-table/-/mdast-util-gfm-table-0.1.6.tgz", + "integrity": "sha512-j4yDxQ66AJSBwGkbpFEp9uG/LS1tZV3P33fN1gkyRB2LoRL+RR3f76m0HPHaby6F4Z5xr9Fv1URmATlRRUIpRQ==", + "requires": { + "markdown-table": "^2.0.0", + "mdast-util-to-markdown": "~0.6.0" + } + }, + "mdast-util-gfm-task-list-item": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/mdast-util-gfm-task-list-item/-/mdast-util-gfm-task-list-item-0.1.6.tgz", + "integrity": "sha512-/d51FFIfPsSmCIRNp7E6pozM9z1GYPIkSy1urQ8s/o4TC22BZ7DqfHFWiqBD23bc7J3vV1Fc9O4QIHBlfuit8A==", + "requires": { + "mdast-util-to-markdown": "~0.6.0" + } + }, + "mdast-util-to-markdown": { + "version": "0.6.5", + "resolved": "https://registry.npmjs.org/mdast-util-to-markdown/-/mdast-util-to-markdown-0.6.5.tgz", + "integrity": "sha512-XeV9sDE7ZlOQvs45C9UKMtfTcctcaj/pGwH8YLbMHoMOXNNCn2LsqVQOqrF1+/NU8lKDAqozme9SCXWyo9oAcQ==", + "requires": { + "@types/unist": "^2.0.0", + "longest-streak": "^2.0.0", + "mdast-util-to-string": "^2.0.0", + "parse-entities": "^2.0.0", + "repeat-string": "^1.0.0", + "zwitch": "^1.0.0" + } + }, + "mdast-util-to-string": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/mdast-util-to-string/-/mdast-util-to-string-2.0.0.tgz", + "integrity": "sha512-AW4DRS3QbBayY/jJmD8437V1Gombjf8RSOUCMFBuo5iHi58AGEgVCKQ+ezHkZZDpAQS75hcBMpLqjpJTjtUL7w==" + }, + "micromark": { + "version": "2.11.4", + "resolved": "https://registry.npmjs.org/micromark/-/micromark-2.11.4.tgz", + "integrity": "sha512-+WoovN/ppKolQOFIAajxi7Lu9kInbPxFuTBVEavFcL8eAfVstoc5MocPmqBeAdBOJV00uaVjegzH4+MA0DN/uA==", + "requires": { + "debug": "^4.0.0", + "parse-entities": "^2.0.0" + } + }, + "micromark-extension-footnote": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/micromark-extension-footnote/-/micromark-extension-footnote-0.3.2.tgz", + "integrity": "sha512-gr/BeIxbIWQoUm02cIfK7mdMZ/fbroRpLsck4kvFtjbzP4yi+OPVbnukTc/zy0i7spC2xYE/dbX1Sur8BEDJsQ==", + "requires": { + "micromark": "~2.11.0" + } + }, + "micromark-extension-frontmatter": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/micromark-extension-frontmatter/-/micromark-extension-frontmatter-0.2.2.tgz", + "integrity": "sha512-q6nPLFCMTLtfsctAuS0Xh4vaolxSFUWUWR6PZSrXXiRy+SANGllpcqdXFv2z07l0Xz/6Hl40hK0ffNCJPH2n1A==", + "requires": { + "fault": "^1.0.0" + } + }, + "micromark-extension-gfm": { + "version": "0.3.3", + "resolved": "https://registry.npmjs.org/micromark-extension-gfm/-/micromark-extension-gfm-0.3.3.tgz", + "integrity": "sha512-oVN4zv5/tAIA+l3GbMi7lWeYpJ14oQyJ3uEim20ktYFAcfX1x3LNlFGGlmrZHt7u9YlKExmyJdDGaTt6cMSR/A==", + "requires": { + "micromark": "~2.11.0", + "micromark-extension-gfm-autolink-literal": "~0.5.0", + "micromark-extension-gfm-strikethrough": "~0.6.5", + "micromark-extension-gfm-table": "~0.4.0", + "micromark-extension-gfm-tagfilter": "~0.3.0", + "micromark-extension-gfm-task-list-item": "~0.3.0" + } + }, + "micromark-extension-gfm-autolink-literal": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/micromark-extension-gfm-autolink-literal/-/micromark-extension-gfm-autolink-literal-0.5.7.tgz", + "integrity": "sha512-ePiDGH0/lhcngCe8FtH4ARFoxKTUelMp4L7Gg2pujYD5CSMb9PbblnyL+AAMud/SNMyusbS2XDSiPIRcQoNFAw==", + "requires": { + "micromark": "~2.11.3" + } + }, + "micromark-extension-gfm-strikethrough": { + "version": "0.6.5", + "resolved": "https://registry.npmjs.org/micromark-extension-gfm-strikethrough/-/micromark-extension-gfm-strikethrough-0.6.5.tgz", + "integrity": "sha512-PpOKlgokpQRwUesRwWEp+fHjGGkZEejj83k9gU5iXCbDG+XBA92BqnRKYJdfqfkrRcZRgGuPuXb7DaK/DmxOhw==", + "requires": { + "micromark": "~2.11.0" + } + }, + "micromark-extension-gfm-table": { + "version": "0.4.3", + "resolved": "https://registry.npmjs.org/micromark-extension-gfm-table/-/micromark-extension-gfm-table-0.4.3.tgz", + "integrity": "sha512-hVGvESPq0fk6ALWtomcwmgLvH8ZSVpcPjzi0AjPclB9FsVRgMtGZkUcpE0zgjOCFAznKepF4z3hX8z6e3HODdA==", + "requires": { + "micromark": "~2.11.0" + } + }, + "micromark-extension-gfm-tagfilter": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/micromark-extension-gfm-tagfilter/-/micromark-extension-gfm-tagfilter-0.3.0.tgz", + "integrity": "sha512-9GU0xBatryXifL//FJH+tAZ6i240xQuFrSL7mYi8f4oZSbc+NvXjkrHemeYP0+L4ZUT+Ptz3b95zhUZnMtoi/Q==" + }, + "micromark-extension-gfm-task-list-item": { + "version": "0.3.3", + "resolved": "https://registry.npmjs.org/micromark-extension-gfm-task-list-item/-/micromark-extension-gfm-task-list-item-0.3.3.tgz", + "integrity": "sha512-0zvM5iSLKrc/NQl84pZSjGo66aTGd57C1idmlWmE87lkMcXrTxg1uXa/nXomxJytoje9trP0NDLvw4bZ/Z/XCQ==", + "requires": { + "micromark": "~2.11.0" + } + }, + "minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "requires": { + "brace-expansion": "^1.1.7" + } + }, + "minimist": { + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz", + "integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==" + }, + "mkdirp": { + "version": "0.5.5", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.5.tgz", + "integrity": "sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ==", + "requires": { + "minimist": "^1.2.5" + } + }, + "ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" + }, + "normalize-package-data": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz", + "integrity": "sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==", + "requires": { + "hosted-git-info": "^2.1.4", + "resolve": "^1.10.0", + "semver": "2 || 3 || 4 || 5", + "validate-npm-package-license": "^3.0.1" + } + }, + "number-is-nan": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/number-is-nan/-/number-is-nan-1.0.1.tgz", + "integrity": "sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0=" + }, + "object-is": { + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/object-is/-/object-is-1.1.5.tgz", + "integrity": "sha512-3cyDsyHgtmi7I7DfSSI2LDp6SK2lwvtbg0p0R1e0RvTqF5ceGx+K2dfSjm1bKDMVCFEDAQvy+o8c6a7VujOddw==", + "requires": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.3" + } + }, + "object-keys": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", + "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==" + }, + "once": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", + "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", + "requires": { + "wrappy": "1" + } + }, + "optionator": { + "version": "0.9.1", + "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.1.tgz", + "integrity": "sha512-74RlY5FCnhq4jRxVUPKDaRwrVNXMqsGsiW6AJw4XK8hmtm10wC0ypZBLw5IIp85NZMr91+qd1RvvENwg7jjRFw==", + "requires": { + "deep-is": "^0.1.3", + "fast-levenshtein": "^2.0.6", + "levn": "^0.4.1", + "prelude-ls": "^1.2.1", + "type-check": "^0.4.0", + "word-wrap": "^1.2.3" + } + }, + "p-limit": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.3.0.tgz", + "integrity": "sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==", + "requires": { + "p-try": "^1.0.0" + } + }, + "p-locate": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz", + "integrity": "sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=", + "requires": { + "p-limit": "^1.1.0" + } + }, + "p-try": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-1.0.0.tgz", + "integrity": "sha1-y8ec26+P1CKOE/Yh8rGiN8GyB7M=" + }, + "parse-entities": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/parse-entities/-/parse-entities-2.0.0.tgz", + "integrity": "sha512-kkywGpCcRYhqQIchaWqZ875wzpS/bMKhz5HnN3p7wveJTkTtyAB/AlnS0f8DFSqYW1T82t6yEAkEcB+A1I3MbQ==", + "requires": { + "character-entities": "^1.0.0", + "character-entities-legacy": "^1.0.0", + "character-reference-invalid": "^1.0.0", + "is-alphanumerical": "^1.0.0", + "is-decimal": "^1.0.0", + "is-hexadecimal": "^1.0.0" + } + }, + "parse-json": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-2.2.0.tgz", + "integrity": "sha1-9ID0BDTvgHQfhGkJn43qGPVaTck=", + "requires": { + "error-ex": "^1.2.0" + } + }, + "path-exists": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", + "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=" + }, + "path-is-absolute": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", + "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=" + }, + "path-parse": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", + "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==" + }, + "path-to-glob-pattern": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/path-to-glob-pattern/-/path-to-glob-pattern-1.0.2.tgz", + "integrity": "sha1-Rz5qOikqnRP7rj7czuctO6uoxhk=" + }, + "path-type": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-1.1.0.tgz", + "integrity": "sha1-WcRPfuSR2nBNpBXaWkBwuk+P5EE=", + "requires": { + "graceful-fs": "^4.1.2", + "pify": "^2.0.0", + "pinkie-promise": "^2.0.0" + } + }, + "pify": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", + "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=" + }, + "pinkie": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/pinkie/-/pinkie-2.0.4.tgz", + "integrity": "sha1-clVrgM+g1IqXToDnckjoDtT3+HA=" + }, + "pinkie-promise": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/pinkie-promise/-/pinkie-promise-2.0.1.tgz", + "integrity": "sha1-ITXW36ejWMBprJsXh3YogihFD/o=", + "requires": { + "pinkie": "^2.0.0" + } + }, + "pluralize": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/pluralize/-/pluralize-2.0.0.tgz", + "integrity": "sha1-crcmqm+sHt7uQiVsfY3CVrM1Z38=" + }, + "prelude-ls": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz", + "integrity": "sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==" + }, + "punycode": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", + "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==" + }, + "rc-config-loader": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/rc-config-loader/-/rc-config-loader-3.0.0.tgz", + "integrity": "sha512-bwfUSB37TWkHfP+PPjb/x8BUjChFmmBK44JMfVnU7paisWqZl/o5k7ttCH+EQLnrbn2Aq8Fo1LAsyUiz+WF4CQ==", + "requires": { + "debug": "^4.1.1", + "js-yaml": "^3.12.0", + "json5": "^2.1.1", + "require-from-string": "^2.0.2" + } + }, + "read-pkg": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-1.1.0.tgz", + "integrity": "sha1-9f+qXs0pyzHAR0vKfXVra7KePyg=", + "requires": { + "load-json-file": "^1.0.0", + "normalize-package-data": "^2.3.2", + "path-type": "^1.0.0" + } + }, + "read-pkg-up": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-3.0.0.tgz", + "integrity": "sha1-PtSWaF26D4/hGNBpHcUfSh/5bwc=", + "requires": { + "find-up": "^2.0.0", + "read-pkg": "^3.0.0" + }, + "dependencies": { + "load-json-file": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-4.0.0.tgz", + "integrity": "sha1-L19Fq5HjMhYjT9U62rZo607AmTs=", + "requires": { + "graceful-fs": "^4.1.2", + "parse-json": "^4.0.0", + "pify": "^3.0.0", + "strip-bom": "^3.0.0" + } + }, + "parse-json": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-4.0.0.tgz", + "integrity": "sha1-vjX1Qlvh9/bHRxhPmKeIy5lHfuA=", + "requires": { + "error-ex": "^1.3.1", + "json-parse-better-errors": "^1.0.1" + } + }, + "path-type": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-3.0.0.tgz", + "integrity": "sha512-T2ZUsdZFHgA3u4e5PfPbjd7HDDpxPnQb5jN0SrDsjNSuVXHJqtwTnWqG0B1jZrgmJ/7lj1EmVIByWt1gxGkWvg==", + "requires": { + "pify": "^3.0.0" + } + }, + "pify": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", + "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=" + }, + "read-pkg": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-3.0.0.tgz", + "integrity": "sha1-nLxoaXj+5l0WwA4rGcI3/Pbjg4k=", + "requires": { + "load-json-file": "^4.0.0", + "normalize-package-data": "^2.3.2", + "path-type": "^3.0.0" + } + }, + "strip-bom": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", + "integrity": "sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM=" + } + } + }, + "regexp.prototype.flags": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.4.1.tgz", + "integrity": "sha512-pMR7hBVUUGI7PMA37m2ofIdQCsomVnas+Jn5UPGAHQ+/LlwKm/aTLJHdasmHRzlfeZwHiAOaRSo2rbBDm3nNUQ==", + "requires": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.3" + } + }, + "remark-footnotes": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/remark-footnotes/-/remark-footnotes-3.0.0.tgz", + "integrity": "sha512-ZssAvH9FjGYlJ/PBVKdSmfyPc3Cz4rTWgZLI4iE/SX8Nt5l3o3oEjv3wwG5VD7xOjktzdwp5coac+kJV9l4jgg==", + "requires": { + "mdast-util-footnote": "^0.1.0", + "micromark-extension-footnote": "^0.3.0" + } + }, + "remark-frontmatter": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/remark-frontmatter/-/remark-frontmatter-3.0.0.tgz", + "integrity": "sha512-mSuDd3svCHs+2PyO29h7iijIZx4plX0fheacJcAoYAASfgzgVIcXGYSq9GFyYocFLftQs8IOmmkgtOovs6d4oA==", + "requires": { + "mdast-util-frontmatter": "^0.2.0", + "micromark-extension-frontmatter": "^0.2.0" + } + }, + "remark-gfm": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/remark-gfm/-/remark-gfm-1.0.0.tgz", + "integrity": "sha512-KfexHJCiqvrdBZVbQ6RopMZGwaXz6wFJEfByIuEwGf0arvITHjiKKZ1dpXujjH9KZdm1//XJQwgfnJ3lmXaDPA==", + "requires": { + "mdast-util-gfm": "^0.1.0", + "micromark-extension-gfm": "^0.3.0" + } + }, + "remark-parse": { + "version": "9.0.0", + "resolved": "https://registry.npmjs.org/remark-parse/-/remark-parse-9.0.0.tgz", + "integrity": "sha512-geKatMwSzEXKHuzBNU1z676sGcDcFoChMK38TgdHJNAYfFtsfHDQG7MoJAjs6sgYMqyLduCYWDIWZIxiPeafEw==", + "requires": { + "mdast-util-from-markdown": "^0.8.0" + } + }, + "repeat-string": { + "version": "1.6.1", + "resolved": "https://registry.npmjs.org/repeat-string/-/repeat-string-1.6.1.tgz", + "integrity": "sha1-jcrkcOHIirwtYA//Sndihtp15jc=" + }, + "require-from-string": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/require-from-string/-/require-from-string-2.0.2.tgz", + "integrity": "sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==" + }, + "resolve": { + "version": "1.22.0", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.0.tgz", + "integrity": "sha512-Hhtrw0nLeSrFQ7phPp4OOcVjLPIeMnRlr5mcnVuMe7M/7eBn98A3hmFRLoFo3DLZkivSYwhRUJTyPyWAk56WLw==", + "requires": { + "is-core-module": "^2.8.1", + "path-parse": "^1.0.7", + "supports-preserve-symlinks-flag": "^1.0.0" + } + }, + "rimraf": { + "version": "2.6.3", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.6.3.tgz", + "integrity": "sha512-mwqeW5XsA2qAejG46gYdENaxXjx9onRNCfn7L0duuP4hCuTIi/QO7PDK07KJfp1d+izWPrzEJDcSqBa0OZQriA==", + "requires": { + "glob": "^7.1.3" + } + }, + "semver": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==" + }, + "slice-ansi": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-4.0.0.tgz", + "integrity": "sha512-qMCMfhY040cVHT43K9BFygqYbUPFZKHOg7K73mtTWJRb8pyP3fzf4Ixd5SzdEJQ6MRUg/WBnOLxghZtKKurENQ==", + "requires": { + "ansi-styles": "^4.0.0", + "astral-regex": "^2.0.0", + "is-fullwidth-code-point": "^3.0.0" + }, + "dependencies": { + "ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "requires": { + "color-convert": "^2.0.1" + } + }, + "is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==" + } + } + }, + "spdx-correct": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.1.1.tgz", + "integrity": "sha512-cOYcUWwhCuHCXi49RhFRCyJEK3iPj1Ziz9DpViV3tbZOwXD49QzIN3MpOLJNxh2qwq2lJJZaKMVw9qNi4jTC0w==", + "requires": { + "spdx-expression-parse": "^3.0.0", + "spdx-license-ids": "^3.0.0" + } + }, + "spdx-exceptions": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.3.0.tgz", + "integrity": "sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A==" + }, + "spdx-expression-parse": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz", + "integrity": "sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==", + "requires": { + "spdx-exceptions": "^2.1.0", + "spdx-license-ids": "^3.0.0" + } + }, + "spdx-license-ids": { + "version": "3.0.11", + "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.11.tgz", + "integrity": "sha512-Ctl2BrFiM0X3MANYgj3CkygxhRmr9mi6xhejbdO960nF6EDJApTYpn0BQnDKlnNBULKiCN1n3w9EBkHK8ZWg+g==" + }, + "sprintf-js": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", + "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=" + }, + "string-width": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", + "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", + "requires": { + "code-point-at": "^1.0.0", + "is-fullwidth-code-point": "^1.0.0", + "strip-ansi": "^3.0.0" + }, + "dependencies": { + "strip-ansi": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", + "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", + "requires": { + "ansi-regex": "^2.0.0" + } + } + } + }, + "strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "requires": { + "ansi-regex": "^5.0.1" + }, + "dependencies": { + "ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==" + } + } + }, + "strip-bom": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-2.0.0.tgz", + "integrity": "sha1-YhmoVhZSBJHzV4i9vxRHqZx+aw4=", + "requires": { + "is-utf8": "^0.2.0" + } + }, + "structured-source": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/structured-source/-/structured-source-3.0.2.tgz", + "integrity": "sha1-3YAkJeD1PcSm56yjdSkBoczaevU=", + "requires": { + "boundary": "^1.0.1" + } + }, + "supports-color": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", + "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=" + }, + "supports-preserve-symlinks-flag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", + "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==" + }, + "table": { + "version": "6.8.0", + "resolved": "https://registry.npmjs.org/table/-/table-6.8.0.tgz", + "integrity": "sha512-s/fitrbVeEyHKFa7mFdkuQMWlH1Wgw/yEXMt5xACT4ZpzWFluehAxRtUUQKPuWhaLAWhFcVx6w3oC8VKaUfPGA==", + "requires": { + "ajv": "^8.0.1", + "lodash.truncate": "^4.4.2", + "slice-ansi": "^4.0.0", + "string-width": "^4.2.3", + "strip-ansi": "^6.0.1" + }, + "dependencies": { + "is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==" + }, + "string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "requires": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + } + } + } + }, + "text-table": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", + "integrity": "sha1-f17oI66AUgfACvLfSoTsP8+lcLQ=" + }, + "textlint": { + "version": "12.1.0", + "resolved": "https://registry.npmjs.org/textlint/-/textlint-12.1.0.tgz", + "integrity": "sha512-VZ0iVepE0jUchMfIW0uKGdEdv3l0ajOFvUBcpB1xGOLAz3gVwpdWvlagVlFXuwjc2N+9mcjTM0PCIXNwIs2vQA==", + "requires": { + "@textlint/ast-node-types": "^12.1.0", + "@textlint/ast-traverse": "^12.1.0", + "@textlint/feature-flag": "^12.1.0", + "@textlint/fixer-formatter": "^12.1.0", + "@textlint/kernel": "^12.1.0", + "@textlint/linter-formatter": "^12.1.0", + "@textlint/module-interop": "^12.1.0", + "@textlint/textlint-plugin-markdown": "^12.1.0", + "@textlint/textlint-plugin-text": "^12.1.0", + "@textlint/types": "^12.1.0", + "@textlint/utils": "^12.1.0", + "debug": "^4.3.3", + "deep-equal": "^1.1.1", + "file-entry-cache": "^5.0.1", + "get-stdin": "^5.0.1", + "glob": "^7.2.0", + "is-file": "^1.0.0", + "log-symbols": "^1.0.2", + "md5": "^2.3.0", + "mkdirp": "^0.5.0", + "optionator": "^0.9.1", + "path-to-glob-pattern": "^1.0.2", + "rc-config-loader": "^3.0.0", + "read-pkg": "^1.1.0", + "read-pkg-up": "^3.0.0", + "structured-source": "^3.0.2", + "try-resolve": "^1.0.1", + "unique-concat": "^0.2.2" + } + }, + "textlint-rule-helper": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/textlint-rule-helper/-/textlint-rule-helper-2.2.1.tgz", + "integrity": "sha512-pdX3uNbFzQTgINamaBpEHRT/MgROHev5wCnQnUTXRLT5DaRjls0Rmpi5d1MPZG6HT5NKVL++Q2J0FUbh5shi3Q==", + "requires": { + "structured-source": "^3.0.2", + "unist-util-visit": "^2.0.3" + } + }, + "textlint-rule-ja-space-between-half-and-full-width": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/textlint-rule-ja-space-between-half-and-full-width/-/textlint-rule-ja-space-between-half-and-full-width-2.2.0.tgz", + "integrity": "sha512-/NJb0FrBa0qx/Z1SuW1nE0dhERCRNxz8IkdZ8V3VPxtZIaeBbPLdYxLf7h5qJnEAapqSd85pvZ4EXZI3RArvYw==", + "requires": { + "match-index": "^1.0.1", + "textlint-rule-helper": "^2.2.0" + } + }, + "traverse": { + "version": "0.6.6", + "resolved": "https://registry.npmjs.org/traverse/-/traverse-0.6.6.tgz", + "integrity": "sha1-y99WD9e5r2MlAv7UD5GMFX6pcTc=" + }, + "trough": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/trough/-/trough-1.0.5.tgz", + "integrity": "sha512-rvuRbTarPXmMb79SmzEp8aqXNKcK+y0XaB298IXueQ8I2PsrATcPBCSPyK/dDNa2iWOhKlfNnOjdAOTBU/nkFA==" + }, + "try-resolve": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/try-resolve/-/try-resolve-1.0.1.tgz", + "integrity": "sha1-z95vq9ctY+V5fPqrhzq76OcA6RI=" + }, + "type-check": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz", + "integrity": "sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==", + "requires": { + "prelude-ls": "^1.2.1" + } + }, + "unified": { + "version": "9.2.2", + "resolved": "https://registry.npmjs.org/unified/-/unified-9.2.2.tgz", + "integrity": "sha512-Sg7j110mtefBD+qunSLO1lqOEKdrwBFBrR6Qd8f4uwkhWNlbkaqwHse6e7QvD3AP/MNoJdEDLaf8OxYyoWgorQ==", + "requires": { + "bail": "^1.0.0", + "extend": "^3.0.0", + "is-buffer": "^2.0.0", + "is-plain-obj": "^2.0.0", + "trough": "^1.0.0", + "vfile": "^4.0.0" + }, + "dependencies": { + "is-buffer": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-2.0.5.tgz", + "integrity": "sha512-i2R6zNFDwgEHJyQUtJEk0XFi1i0dPFn/oqjK3/vPCcDeJvW5NQ83V8QbicfF1SupOaB0h8ntgBC2YiE7dfyctQ==" + } + } + }, + "unique-concat": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/unique-concat/-/unique-concat-0.2.2.tgz", + "integrity": "sha1-khD5vcqsxeHjkpSQ18AZ35bxhxI=" + }, + "unist-util-is": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/unist-util-is/-/unist-util-is-4.1.0.tgz", + "integrity": "sha512-ZOQSsnce92GrxSqlnEEseX0gi7GH9zTJZ0p9dtu87WRb/37mMPO2Ilx1s/t9vBHrFhbgweUwb+t7cIn5dxPhZg==" + }, + "unist-util-stringify-position": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/unist-util-stringify-position/-/unist-util-stringify-position-2.0.3.tgz", + "integrity": "sha512-3faScn5I+hy9VleOq/qNbAd6pAx7iH5jYBMS9I1HgQVijz/4mv5Bvw5iw1sC/90CODiKo81G/ps8AJrISn687g==", + "requires": { + "@types/unist": "^2.0.2" + } + }, + "unist-util-visit": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/unist-util-visit/-/unist-util-visit-2.0.3.tgz", + "integrity": "sha512-iJ4/RczbJMkD0712mGktuGpm/U4By4FfDonL7N/9tATGIF4imikjOuagyMY53tnZq3NP6BcmlrHhEKAfGWjh7Q==", + "requires": { + "@types/unist": "^2.0.0", + "unist-util-is": "^4.0.0", + "unist-util-visit-parents": "^3.0.0" + } + }, + "unist-util-visit-parents": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/unist-util-visit-parents/-/unist-util-visit-parents-3.1.1.tgz", + "integrity": "sha512-1KROIZWo6bcMrZEwiH2UrXDyalAa0uqzWCxCJj6lPOvTve2WkfgCytoDTPaMnodXh1WrXOq0haVYHj99ynJlsg==", + "requires": { + "@types/unist": "^2.0.0", + "unist-util-is": "^4.0.0" + } + }, + "uri-js": { + "version": "4.4.1", + "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", + "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", + "requires": { + "punycode": "^2.1.0" + } + }, + "validate-npm-package-license": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz", + "integrity": "sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==", + "requires": { + "spdx-correct": "^3.0.0", + "spdx-expression-parse": "^3.0.0" + } + }, + "vfile": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/vfile/-/vfile-4.2.1.tgz", + "integrity": "sha512-O6AE4OskCG5S1emQ/4gl8zK586RqA3srz3nfK/Viy0UPToBc5Trp9BVFb1u0CjsKrAWwnpr4ifM/KBXPWwJbCA==", + "requires": { + "@types/unist": "^2.0.0", + "is-buffer": "^2.0.0", + "unist-util-stringify-position": "^2.0.0", + "vfile-message": "^2.0.0" + }, + "dependencies": { + "is-buffer": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-2.0.5.tgz", + "integrity": "sha512-i2R6zNFDwgEHJyQUtJEk0XFi1i0dPFn/oqjK3/vPCcDeJvW5NQ83V8QbicfF1SupOaB0h8ntgBC2YiE7dfyctQ==" + } + } + }, + "vfile-message": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/vfile-message/-/vfile-message-2.0.4.tgz", + "integrity": "sha512-DjssxRGkMvifUOJre00juHoP9DPWuzjxKuMDrhNbk2TdaYYBNMStsNhEOt3idrtI12VQYM/1+iM0KOzXi4pxwQ==", + "requires": { + "@types/unist": "^2.0.0", + "unist-util-stringify-position": "^2.0.0" + } + }, + "word-wrap": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.3.tgz", + "integrity": "sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==" + }, + "wrappy": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", + "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=" + }, + "write": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/write/-/write-1.0.3.tgz", + "integrity": "sha512-/lg70HAjtkUgWPVZhZcm+T4hkL8Zbtp1nFNOn3lRrxnlv50SRBv7cR7RqR+GMsd3hUXy9hWBo4CHTbFTcOYwig==", + "requires": { + "mkdirp": "^0.5.1" + } + }, + "xml-escape": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/xml-escape/-/xml-escape-1.1.0.tgz", + "integrity": "sha1-OQTBQ/qOs6ADDsZG0pAqLxtwbEQ=" + }, + "zwitch": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/zwitch/-/zwitch-1.0.5.tgz", + "integrity": "sha512-V50KMwwzqJV0NpZIZFwfOD5/lyny3WlSzRiXgA0G7VUnRlqttta1L6UQIHzd6EuBY/cHGfwTIck7w1yH6Q5zUw==" + } + } +} diff --git a/package.json b/package.json new file mode 100644 index 000000000..635dee11 --- /dev/null +++ b/package.json @@ -0,0 +1,6 @@ +{ + "dependencies": { + "textlint": "^12.1.0", + "textlint-rule-ja-space-between-half-and-full-width": "^2.2.0" + } +} diff --git a/tips/advanced/辅料技巧.md b/tips/advanced/辅料技巧.md new file mode 100644 index 000000000..49b9d096 --- /dev/null +++ b/tips/advanced/辅料技巧.md @@ -0,0 +1,8 @@ +# 辅料技巧 + +* 辅料的放入顺序基本为下:先放姜、后放葱和蒜、辣椒、再放干料(八角/花椒/麻椒)、再放干辣椒。以上每一步骤根据所做菜的不同,可以把不需要的辅料从队列中被移除。 +* 姜的含水量是最大的,这意味着我们需要更多的时间将姜的汁水煸出。 +* 如果你使用的是葱段(葱段最好使用菜刀拍两下),那么我推荐你先放入葱段,再放入蒜碎,如果你使用的是葱花,那么可以将这两种辅料一起下锅。注:葱段中的汁水更难被炒出。 +* 如果你做的是炒菜,那么我更推荐你在没放姜之前先放入干料,这可以让油变得更有味道,以至于炒出来的菜更香。为什么炖菜、焖菜不这样做,是因为你可能需要翻炒很多辅料,以至于辅料翻炒时间过长导致干料变黑、变苦。 +* 将干辣椒放在最后是因为干辣椒很容易因为锅的温度而变黑,干辣椒稍微翻炒几秒钟即可。 +* 注:不论你喜欢做什么菜系,小火将这些辅料炒至金黄,都可以将整道菜变得更有香味,这是调料所不能给予的。 diff --git a/tips/learn/炒与煎.md b/tips/learn/炒与煎.md new file mode 100644 index 000000000..92511b61 --- /dev/null +++ b/tips/learn/炒与煎.md @@ -0,0 +1,22 @@ + +# 炒/煎 + +## 器具 + +可使用普通金属制(铁/不锈钢/铝)炒/煎锅或不粘锅。 + +### 注意事项 + +* 使用普通金属锅存在食材粘锅的风险。炒菜时倒入足量的油并及时翻炒菜品可以避免粘锅。菜品翻炒时加入少量水也可避免粘锅。 +* 使用不粘锅煎炒食物不会粘锅。不粘锅的功能来源于其内壁上的涂层。**金属锅铲会划伤涂层。使用不粘锅时应使用木制锅铲以避免损坏涂层。** + +### 流程 + +开火——直接将锅平放于火上,烧热——将油倒入锅中,烧热——放入菜品,翻炒——出锅前记得放调料 + +### 注意事项 + +* 判断锅/油是否烧热时,可将手平放于锅的上方感受热量;油热后方可放入食材。 +* 倒油入锅前,务必确认锅的内部没有残余水份。**水会导致热油飞溅,造成危险。** +* 接上条,食材放入油锅前,应当沥干水份(蛋液没事);同理,不可将未解冻的食材放入油锅,以免冰化后造成危险。 +* **若油锅起火,切不可倒水灭火**。这样做会使火势扩大。火刚起时,可迅速关火,盖上锅盖。 diff --git a/tips/learn/焯水.md b/tips/learn/焯水.md new file mode 100644 index 000000000..7725f8b8 --- /dev/null +++ b/tips/learn/焯水.md @@ -0,0 +1,45 @@ +# 焯水 + +焯水是做饭的一道工序,读作 chāo shuǐ。 + +焯水指将初步加工的原料放在开水锅中加热至半熟或全熟,取出以备进一步烹调或调味。 它是烹调中特别是冷拌菜不可缺少的一道工序。 对菜餚的色、香、味,特别是色起着关键作用。 + +大部分蔬菜和带有腥羶气味的肉类原料都需要焯水。 + +## 操作 + +### 开水锅焯水 + +开水锅焯水,就是将锅内的水加热,然后将原料下锅。下锅后及时翻动,时间要短,不要过火。 + +这种方法多用于植物性原料,如:芹菜、菠菜、莴笋等。 焯水时要特别注意火候,时间稍长,颜色就会变淡,而且也不脆、嫩。 因此放入锅内后,水微开时即可捞出晾凉。 + +- 叶类蔬菜原料应先焯水再切片,以免营养成分损失过多。 +- 焯水时应水宽火旺,以使投入原料后能及时开锅;焯制绿叶蔬菜时,应略滚即捞出。 +- 蔬菜类原料在焯水后应立即投凉控干,以免因余热而使之变黄、熟烂的现象发生。 + +### 冷水锅焯水 + +冷水锅焯水是将原料与冷水同时下锅。 水要没过原料,然后烧开,目的是使原料成熟,便于进一步加工。 + +土豆、胡萝卜等因体积大,不易成熟,需要煮的时间长一些。 + +有些动物性原料,如;白肉、牛百页、牛肚领等,也是冷水下锅加热成熟后再进一步加工的。 有些用于煮汤的动物性原料;也要冷水下锅,在加热过程中使营养物质逐渐溢出,使汤味鲜美,如用热水锅,则会造成蛋白质凝固。 + +- 锅内的加水量不宜过多,以淹没原料为度。 +- 在逐渐加热过程中,必须对原料勤翻动,以使原料受热均匀,达到焯水的目的。 + +## 额外注意事项 + +- 焯水有时也会使原料内的一些不稳定、可溶性营养物质溢出,特别是新鲜蔬菜中的水溶性维生素更容易受到损失 +- 动物类原料与植物类原料要分别焯水;色味较重的与色味较轻的要分别焯水;块状大的要与块状小的分别焯水,以防彼此串味 +- 焯制动物性原料后,汤汁可在撇沫澄清后作为鲜汤使用 + +### 肉的焯水 + +- 肉类原料经过开水焯过后变色即可,捞出沥干水分后可以进行下一步的烹调。 + +### 青菜的焯水 + +- 洗青菜时,在清水里撒一些盐,这样可以把青菜里的虫子清洗出来 +- 焯过后的青菜应立即浸入冷水中,以保持颜色和口感。如果不用冷水浸,青菜会因为开水的余温变的不再清脆,而出现烂烂的感觉 diff --git a/tips/learn/煮.md b/tips/learn/煮.md new file mode 100644 index 000000000..2619a9ea --- /dev/null +++ b/tips/learn/煮.md @@ -0,0 +1,12 @@ +# 煮 + +## 流程 + +倒水入锅——开火,将锅放于火上加热——水开(水翻滚,有大量气泡冒出)后放入食材 + +### 注意事项 + +* 加热时盖上锅盖可以加快受热。**但这样做有溢锅的风险**。持续加热后,过渡翻腾的流体可能会冒出锅外,这就是溢锅。 +* **若即将溢锅,立刻关小火并打开锅盖即可。** +* 想要加快受热又避免溢锅,可以半开锅盖,留出气体出口;也可在后期关小火,并时时注意锅中情况。 +* 根据烹饪需要,食材也可冷水下锅。不过这样水烧开需要的时间更久。 diff --git a/tips/learn/蒸.md b/tips/learn/蒸.md new file mode 100644 index 000000000..e4a13db9 --- /dev/null +++ b/tips/learn/蒸.md @@ -0,0 +1,13 @@ +# 蒸 + +## 器具 + +蒸锅。蒸锅为多层结构,最底部用于盛水,利用水开后产生的水蒸气的热量,加热上层食物。 + +### 流程 + +蒸锅最底层加入适量水——将食物放于上层蒸屉中——蒸锅放于火上加热 + +#### 注意事项 + +* 由于热源为水蒸气,较低的蒸屉中的食物底部可能被水浸湿。可将蒸笼布放在食物底下以避免这种情况。用筷子搭个放食物的简易支架也可以。 diff --git a/tips/learn/食品安全.md b/tips/learn/食品安全.md new file mode 100644 index 000000000..c0778990 --- /dev/null +++ b/tips/learn/食品安全.md @@ -0,0 +1,15 @@ +# 食品安全 + +## 中毒 + +以下食物有造成中毒的风险: + +* 未成熟的青西红柿 +* 未烹饪熟的四季豆 +* 未煮熟的豆角 +* 发芽的土豆 +* 生豆浆 +* 泡发时间过长的木耳 +* ……(欢迎补充) + +## 寄生虫 diff --git a/tips/learn/高压力锅.md b/tips/learn/高压力锅.md new file mode 100644 index 000000000..25681bff --- /dev/null +++ b/tips/learn/高压力锅.md @@ -0,0 +1,12 @@ +# 蒸(米)/炖(使用电饭煲/高压锅/电压力锅) + +## (6)流程 + +* 食材和水放入内胆后盒盖,**确保锅体密封**,加热。 +* 切换至保温状态后,**通过排气阀将锅内蒸汽排空方可开盖** + +### e.注意事项 + +* **水蒸气很烫,不要凑到排气阀上。** +* 烹饪**流质食物**的过程中,**不要手动排气**,小心喷溅。 +* 开盖前需确认蒸气已排空。开盖时小心蒸气烫伤。 diff --git a/tips/厨房准备.md b/tips/厨房准备.md new file mode 100644 index 000000000..bd19adea --- /dev/null +++ b/tips/厨房准备.md @@ -0,0 +1,24 @@ +# 厨房准备 + +在阅读和参考菜谱之前,假想你已经在厨房中准备好了下列物品。这些物品不会在原材料和工具部分提及。 + +```text +燃气灶, 饮用水, 锅, 食用油, 碗与盘子, 筷子, 炒勺, 洗涤剂, 抹布, 钢丝球, 菜刀 +``` + +下列材料可能会被高频使用。建议提前为厨房采购好,并永远保障有新鲜的可以取用。 + +```text +葱,姜,蒜,辣椒 +酱油,醋,豆瓣酱 +白糖,盐,胡椒粉 +``` + +如果你预计将被隔离很久,建议同样采购好下列内容: + +```text +冰箱、微波炉、保鲜膜 +鸡蛋、青椒、胡萝卜、黄瓜、西红柿、木耳、里脊肉、方便面、茄子、米、淀粉、料酒、蚝油、生抽 +``` + +其它针对每道菜的原材料,请具体参考菜品本身的`所需原材料`章节。 diff --git a/如何选择现在吃什么.md b/tips/如何选择现在吃什么.md similarity index 92% rename from 如何选择现在吃什么.md rename to tips/如何选择现在吃什么.md index e217c60f..bf65a149 100644 --- a/如何选择现在吃什么.md +++ b/tips/如何选择现在吃什么.md @@ -29,7 +29,7 @@ ### 菜的选择 -* 如果人数超过8人,考虑在荤菜中增加鱼类荤菜。 +* 如果人数超过 8 人,考虑在荤菜中增加鱼类荤菜。 * 如果有小孩,考虑增加有甜味的菜。 * 考虑增加特色菜、拿手菜。 * 注意决策荤菜时不要全部使用同一种动物的肉。考虑顺序为:`猪肉`、`鸡肉`、`牛肉`、`羊肉`、`鸭肉`、`鱼肉`。 diff --git a/地三鲜.md b/地三鲜.md deleted file mode 100644 index 9825a0a1..000000000 --- a/地三鲜.md +++ /dev/null @@ -1,56 +0,0 @@ -# 地三鲜的做法 - -## 必备原料和工具 - -* 茄子 -* 土豆 -* 尖椒 -* 葱 -* 姜 -* 蒜 -* 豆瓣酱 -* 生抽 -* 盐 -* 糖 -* 淀粉 - -## 计算 - -注意,这道菜仅有足够2-4人食用的版本。 - -* 茄子 100g -* 土豆 150g -* 尖椒 3 - 4个 - -使用上述条件,计算出计划使用的原材料比例。 - -## 操作 - -### 原材料准备 - -* 土豆洗净、去皮。茄子、尖椒洗净。 -* 葱3g切0.5cm小段。蒜10g剁碎。姜10g切沫。 -* 茄子、土豆、尖椒均切成15g左右的小块。 - -### 最终步骤 - -* 热锅,加入25ml油。 -* 加入土豆,煎炸大约3分钟,待其到大约8分熟,以显示金黄色为准。 -* 捞出土豆,留下油。 -* 加入茄子,煎炸大约40秒,待其到大约7分熟,以显示金黄色为准。 -* 如果锅内已经没有流动的油,可以考虑补充15ml油。 -* 放入葱3g。姜10g。 -* 放入豆瓣酱20ml。 -* 放入生抽10ml。 -* 放入盐8g。 -* 放入糖10g。 -* 放入之前处理的土豆。 -* 放入尖椒。 -* 翻炒1分钟。 -* 放入蒜10g -* 加入200ml水和80g淀粉。 -* 待水开后,汤减少一半左右时,关火盛盘。 - -## 附加内容 - -如果您遵循本指南的制作流程而发现有问题或可以改进的流程,请提出 Issue 或 Pull request 。 diff --git a/小技巧.md b/小技巧.md deleted file mode 100644 index c3cd9693..000000000 --- a/小技巧.md +++ /dev/null @@ -1,36 +0,0 @@ -# 小技巧 - -这里提供了很多通用的做菜技巧以及复用性很强的辅助调料的做法 - -## 糖醋汁 - -糖醋汁通常情况下由清水、白糖、白醋、淀粉制成,有些人喜欢放一些番茄酱来增添不一样的酸甜味,可用于糖醋鱼、糖醋里脊等菜品的制作。 - -* 准备:清水、番茄酱、白糖、白醋、淀粉 -* 计算:清水(50ml)、番茄酱(40ml)、白醋(30ml)、白糖(20ml)、淀粉(10g) -* 操作:将酱汁搅拌均匀,锅中加入10g油,油温烧至五成热,约150度时,倒入酱汁,小火熬制浓稠 - -## 油酥 - -油酥是由面粉与热油混合调制的,通常在烙饼时涂点油酥,可以使得饼子层层分明,外酥里软,口感更佳。 - -* 准备:面粉、油、盐 -* 计算:油 = 要烙饼的张数 * 10g,盐 = (油 / 20)g,面粉 = (要烙饼的张数 / 0.13)g -* 操作:面粉盛小碗里,加入盐,加入200度左右的热油,用筷子将其搅拌成无固状物体的糊状。 - -## 翻炒辅料 - -一个高级厨师与刚入门的厨师最大的差别就在于对菜品火候的把控,更好的厨师他们更会控制火候,他们更了解何种程度下的辅料香味更足却不失观感,菜品何种程度下口感、色泽更佳。 - -* 大火翻炒辅料的缺点:味道没有被展现、辅料焦黑色等等。 -* 小火翻炒完美弥补了以上的不足。 -* 辅料的放入顺序基本为下:先放姜、后放葱和蒜、辣椒、再放干料(八角/花椒/麻椒)、再放干辣椒。以上每一步骤根据所做菜的不同,可以把不需要的辅料从队列中被移除。 -* 姜的含水量是最大的,这意味着我们需要更多的时间将姜的汁水煸出。 -* 如果你使用的是葱段(葱段最好使用菜刀拍两下),那么我推荐你先放入葱段,再放入蒜碎,如果你使用的是葱花,那么可以将这两种辅料一起下锅。注:葱段中的汁水更难被炒出。 -* 如果你做的是炒菜,那么我更推荐你在没放姜之前先放入干料,这可以让油变得更有味道,以至于炒出来的菜更香。为什么炖菜、焖菜不这样做,是因为你可能需要翻炒很多辅料,以至于辅料翻炒时间过长导致干料变黑、变苦。 -* 将干辣椒放在最后是因为干辣椒很容易因为锅的温度而变黑,干辣椒稍微翻炒几秒钟即可。 -* 注:不论你喜欢做什么菜系,小火将这些辅料炒至金黄,都可以将整道菜变得更有香味,这是调料所不能给予的。 - -## 附加内容 - -如果您发现有问题或可以改进的流程,请提出 Issue 或 Pull request 。 diff --git a/清蒸生蚝.md b/清蒸生蚝.md deleted file mode 100644 index 39294ae8..000000000 --- a/清蒸生蚝.md +++ /dev/null @@ -1,33 +0,0 @@ -# 清蒸生蚝的做法 - -## 必备原料和工具 - -* 生蚝 6个 -* 葱 三颗 -* 蒜 6瓣 -* 姜 一小块 -* 酱油 3勺 - -## 计算 - -* 水 1 升 -* 生蚝 6个 -* 葱 三颗 -* 蒜 6瓣 -* 姜 一小块 -* 酱油 每个1勺 - -## 操作 - -* 将生蚝用刷子刷干净,没有刷子用牙刷。 -* 锅中放水,将蒸屉放上之后,将6个生蚝的平铺在蒸屉,中火蒸3分钟。 -* 用右手拿着抹布掀开烫锅盖,将每个生蚝的外壳掀开一半去掉,生蚝的凸面向下,平面向上,每个放1根姜丝,2勺蒜末放到生蚝上。 - 关上烫锅盖,大火蒸3.5分钟。 -* 停火,用右手拿着抹布掀开烫锅盖,每个放1勺酱油。 -* 叫上对象,一起吃。 - -## 附加内容 - -* 勺子为日常调料品附带的勺子 -* 日啖生蚝三百个,不辞长作程序员,男人的加油站,女人的美容院。 -* 如果您遵循本指南的制作流程而发现有问题或可以改进的流程,请提出 Issue 或 Pull request 。 diff --git a/米粥.md b/米粥.md deleted file mode 100644 index ef84f1d3..000000000 --- a/米粥.md +++ /dev/null @@ -1,27 +0,0 @@ -# 米粥的做法 - -## 必备原料和工具 - -* 米 -* 水 - -## 计算 - -* 每人可以食用60ml-110ml的米。 -* 水的体积是米饭的体积的9-12倍。 -* 一碗容量是500ml。 -* 中断大火加热的最晚时间T1:1.5 min/500ml * 水体积。 -* 米粥能够食用的最早时间Tr:10 min/500ml * 水体积。 - -使用上述条件,计算出计划使用的原材料比例。 - -## 操作 - -* 将米和水加入锅中。 -* 开大火,加热到T1。 -* 在T1之前将火关小。**如果忘记此步骤,水可能会漫出而熄灭火焰。非常危险!** -* 加热到Tr。在Tr时关闭火源。 - -## 附加内容 - -如果您遵循本指南的制作流程而发现有问题或可以改进的流程,请提出 Issue 或 Pull request 。 diff --git a/红烧茄子.md b/红烧茄子.md deleted file mode 100644 index 2775b75b..000000000 --- a/红烧茄子.md +++ /dev/null @@ -1,52 +0,0 @@ -# 红烧茄子 - -## 原料与工具 - -- 大蒜 -- 大葱 -- 青辣椒 -- 洋葱 -- 西红柿 -- 青茄子 -- 盐 -- 酱油 -- 鸡蛋 -- 面粉 -- 淀粉 - -## 计算 - -人数大于等于2人时最佳 - -- 青茄子的数量 = 人数 * 0.7(个) -- 青辣椒 = 人数 * 0.5(个) -- 洋葱 = 人数 * 0.3(个) -- 西红柿 = 1个 -- 大葱 = 半颗 -- 大蒜 = 3瓣 -- 鸡蛋 = 1个 -- 面粉 = 青茄子数量 * 150(克) -- 淀粉 = 面粉 / 4(克) -- 酱油 = (茄子数量 * 7)g (向上取整) - -## 操作 - -1. 青茄子、青辣椒、西红柿、洋葱、大葱洗净。 -2. 大葱切5毫米宽的葱花,大蒜扒皮并拍碎,西红柿切6立方厘米左右的块,青辣椒、洋葱切5g左右的块。 -3. 茄子切菱形块(先切2公分左右厚的片,然后再把片切成2公分左右的条,最后斜刀切块儿...)。 -4. 将面粉倒入盆中,依次加入少量水,搅拌均匀,呈粘稠糊状。 -5. 加入淀粉,加入30克水,搅拌均匀。 -6. 将鸡蛋打到盆中,加入(面粉 / 20)克的盐,搅拌均匀。 -7. 将茄块倒入面糊中,搅拌使茄块的每一面都能沾上面糊。 -8. 开大火,热锅,加入500毫升的油,当能看到锅里的油冒出一丝烟时,调至小火,将茄块用筷子夹入到油锅,待所有的茄块下锅之后,调至中火,直到茄块变金黄色时捞出,将油倒出。 -9. 加入(人数 * 5)g左右的油,放入大蒜、葱花,翻炒15秒,放入青辣椒块翻炒30秒,放入西红柿翻炒30秒。 -10. 放入炸好的茄块,加水面高度为锅内食材的0.8倍。 -11. 放入酱油和(人数 * 3)g左右的盐。 -12. 等待,直到汤汁呈粘稠状(水位大概为剩余食材高度的0.2-0.3倍),开盖,盛出菜,关火。 - -## 附加内容 - -在操作的第4-6步骤中要注意: -一定要顺序执行,否则会有灾难性错误...... - -如果您遵循本指南的制作流程而发现有问题或可以改进的流程,请提出 Issue 或 Pull request 。 diff --git a/茄子炖土豆.md b/茄子炖土豆.md deleted file mode 100644 index ee6b9b57..000000000 --- a/茄子炖土豆.md +++ /dev/null @@ -1,43 +0,0 @@ -# 茄子炖土豆的做法 - -## 必备原料和工具 - -- 茄子 -- 土豆 -- 肉 -- 辣椒(是青辣椒,而**不是辣椒面或辣椒油**) -- 酱油 -- 盐 -- 蒜 - -## 计算 - -个人认为,当人数为1-5人时,味道最佳。 - -- 茄子的数量 = 人数 * 2个 -- 土豆数量 = 人数 * 1个 -- 肉量 = 人数 * 200克 -- 酱油量 = 人数 * 15毫升 -- 盐量 = 人数 * 5克 -- 辣椒量 = 50克(调味,所以无论多少人都放这些。) -- 蒜量 = 3瓣(调味,所以无论多少人都放这些。注意是里面的小瓣3瓣,而**不是3整头**) - -使用上述条件,计算出计划使用的原材料比例。 - -## 操作 - -1. 将茄子、土豆、辣椒洗净,蒜扒皮并拍碎。 -2. 将茄子、土豆切成约6立方厘米左右的块,辣椒切成5克左右的小块,肉切成3厘米左右的丝。 -3. 开火,热锅,加入人数 * 13毫升左右的油。 -4. 当能看到锅里的油冒出一丝烟时,放入肉,用铲子翻炒30秒。 -5. 放入土豆,翻炒30秒。 -6. 放入茄子,翻炒30秒。 -7. 放入酱油和盐,继续翻炒5分钟。 -8. 加入水,水面高度为锅内食材高度的0.9倍,并盖上锅盖。 -9. 等待,直到锅内水的高度剩余食材高度的0.1倍时,开盖,放入蒜,搅拌均匀,关火。 - -## 附加内容 - -在操作的第5-7步骤中要注意:在此过程中注意锅底如果没有液体(油或水),则加5毫升左右的水再继续翻炒。 - -如果您遵循本指南的制作流程而发现有问题或可以改进的流程,请提出 Issue 或 Pull request 。 \ No newline at end of file diff --git a/西红柿鸡蛋.md b/西红柿鸡蛋.md deleted file mode 100644 index 859d7e7e..000000000 --- a/西红柿鸡蛋.md +++ /dev/null @@ -1,35 +0,0 @@ -# 西红柿鸡蛋的做法 - -## 必备原料和工具 - -* 西红柿 -* 鸡蛋 -* 盐 -* 糖 - -## 计算 - -注意,这道菜不提供一人版本。如果确定只有一个人食用,请在人数中代入2。 - -* 西红柿的数量 = (人数 * 0.9) 向上取整。 -* 鸡蛋的数量 = 西红柿的数量。 -* 盐量 = 人数 * 4g。 -* 糖量 = 人数 * 6g。 - -使用上述条件,计算出计划使用的原材料比例。 - -## 操作 - -* 西红柿洗净。去蒂,切成边长10mm的小块。 -* 将鸡蛋打入碗中。 -* 热锅,加入人数 * 8ml油。 -* 油热后,加入第2步的鸡蛋。翻炒20秒。 -* 加入第1步的西红柿。翻炒10秒。 -* 加入盐。加入糖。翻炒30秒。 -* 出锅,盛盘。 - -## 附加内容 - -**请不要在这道菜中加醋!** - -如果您遵循本指南的制作流程而发现有问题或可以改进的流程,请提出 Issue 或 Pull request 。 diff --git a/西红柿鸡蛋汤.md b/西红柿鸡蛋汤.md deleted file mode 100644 index b4c3ec41..000000000 --- a/西红柿鸡蛋汤.md +++ /dev/null @@ -1,36 +0,0 @@ -# 西红柿鸡蛋汤 - -## 必备原料和工具 - -- 西红柿 -- 鸡蛋 -- 香油 -- 味素 -- 盐 -- 葱、姜、蒜 - -## 计算 - -- 西红柿1个 -- 鸡蛋1-2个(依照自己的口味而定,喜欢吃鸡蛋就放2个,一般就放1个) -- 香油2滴 -- 味素5克(可选) -- 盐15克 -- 葱、姜、蒜共15克 - -## 操作 - -1. 将西红柿洗净,切块。 -2. 葱姜蒜切碎。 -3. 鸡蛋打到碗中,用筷子(或打蛋器)搅拌均匀。 -4. 热锅,并放入15毫升的油,待能从油中看到冒出一丝烟时,放入葱姜蒜翻炒30秒。 -5. 放入西红柿翻炒1分钟。 -6. 倒入水,水的高度大约为锅内菜品高度的1.2倍,并放入盐。 -7. 待开锅后,将鸡蛋液放入,并用筷子将鸡蛋打散,放入味素和香油。 -8. 等待30秒,关火出锅。 - -## 附加内容 - -味素可加可不加。 - -如果您遵循本指南的制作流程而发现有问题或可以改进的流程,请提出 Issue 或 Pull request 。 \ No newline at end of file diff --git a/麻辣香锅.md b/麻辣香锅.md deleted file mode 100644 index 51b305c9..000000000 --- a/麻辣香锅.md +++ /dev/null @@ -1,46 +0,0 @@ -# 麻辣香锅 - -## 必备原料和工具 - -- 青菜(油菜、油麦菜、菠菜) -- 无骨肉(猪肉、牛肉、鸡肉、鱼丸、火腿肠) -- 干豆腐 -- 北京麻辣方便面 -- 干辣椒 -- 麻辣香锅调料([示例图片1](https://recipes-1258617162.cos.ap-beijing.myqcloud.com/malaxianguo-frontside.jpg)、[示例图片2](https://recipes-1258617162.cos.ap-beijing.myqcloud.com/malaxiangguo-backside.jpg)) - -## 计算 - -此数值大约是3个人的量。 - -- 青菜共需455克,其中油菜、油麦菜、菠菜的比例按自己喜好分配即可 -- 无骨肉共需430克,其中猪肉、牛肉、鸡肉、鱼丸、火腿肠的比例按自己喜好分配即可 -- 干豆腐152克 -- 北京麻辣方便面1袋 -- 干辣椒5克 -- 麻辣香锅调料110克 - -以上内容中,青菜、无骨肉、干豆腐、北京麻辣方便面的配比为推荐配比,如果你有自己喜欢的食材,可以按喜好重新分配比例。 - -## 操作 - -1. 烧开一锅水(水量能没过第2-4步中的食材即可)。 -2. 在开水中放入青菜,焯5分钟左右后盛出备用。 -3. 在开水中放入无骨肉,焯4分钟左右后盛出备用。 -4. 在开水中放入北京麻辣方便面,煮2分钟后盛出备用。 -5. 倒出开水,擦干锅具,放入105克食用油,大火加热30秒。 -6. 放入麻辣香锅调料,翻炒20秒。 -7. 放入干辣椒,翻炒10秒。 -8. 放入焯过的青菜,改中火,翻炒3分钟。 -9. 放入焯过的无骨肉,翻炒3分钟。 -10. 放入煮过的北京麻辣方便面,用筷子翻动1分钟。 -11. 关火,出锅。 - -## 附加内容 - -关于火候的说明: - -- 大火通常温度在240摄氏度左右,以电磁炉为例,输入功率大约2千瓦左右。 -- 中火通常温度在120摄氏度左右,以电磁炉为例,输入功率大约1.4千瓦左右。 - -如果您遵循本指南的制作流程而发现有问题或可以改进的流程,请提出 Issue 或 Pull request 。 \ No newline at end of file