├── .gitignore ├── README.md ├── api └── serverless.ts ├── package.json ├── pnpm-lock.yaml ├── src ├── app.ts ├── plugins │ ├── README.md │ ├── sensible.ts │ └── support.ts └── routes │ ├── README.md │ ├── example │ └── index.ts │ └── root.ts └── vercel.json /.gitignore: -------------------------------------------------------------------------------- 1 | .vercel 2 | node_modules -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # Example of Vercel Serverless functions with Fastify and TypeScript 2 | 3 | ## Get Started 4 | 5 | ```bash 6 | npx degit brandonxiang/vercel-fastify-serverless my project 7 | ``` 8 | 9 | ## How to use 10 | 11 | ```bash 12 | npm i -g vercel 13 | pnpm i 14 | ``` 15 | 16 | ## How to develop 17 | 18 | ```bash 19 | npm run vercel 20 | ``` 21 | -------------------------------------------------------------------------------- /api/serverless.ts: -------------------------------------------------------------------------------- 1 | import * as dotenv from "dotenv"; 2 | dotenv.config(); 3 | 4 | // Require the framework 5 | import Fastify from "fastify"; 6 | 7 | // Instantiate Fastify with some config 8 | const app = Fastify({ 9 | logger: false, 10 | }); 11 | 12 | // Register your application as a normal plugin. 13 | app.register(import("../src/app"), { 14 | prefix: '/' 15 | }); 16 | 17 | export default async (req, res) => { 18 | await app.ready(); 19 | app.server.emit('request', req, res); 20 | } -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "vercel-serverless", 3 | "version": "1.0.0", 4 | "description": "", 5 | "main": "index.js", 6 | "scripts": { 7 | "vercel": "vercel dev" 8 | }, 9 | "author": "", 10 | "license": "ISC", 11 | "devDependencies": { 12 | "@vercel/node": "^2.6.1", 13 | "@types/node": "^18.0.0" 14 | }, 15 | "dependencies": { 16 | "dotenv": "^16.0.3", 17 | "fastify": "^4.9.2", 18 | "fastify-plugin": "^4.0.0", 19 | "@fastify/autoload": "^5.0.0", 20 | "@fastify/sensible": "^5.0.0", 21 | "fastify-cli": "^5.5.1" 22 | } 23 | } 24 | -------------------------------------------------------------------------------- /pnpm-lock.yaml: -------------------------------------------------------------------------------- 1 | lockfileVersion: 5.4 2 | 3 | specifiers: 4 | '@fastify/autoload': ^5.0.0 5 | '@fastify/sensible': ^5.0.0 6 | '@types/node': ^18.0.0 7 | '@vercel/node': ^2.6.1 8 | dotenv: ^16.0.3 9 | fastify: ^4.9.2 10 | fastify-cli: ^5.5.1 11 | fastify-plugin: ^4.0.0 12 | 13 | dependencies: 14 | '@fastify/autoload': registry.npmmirror.com/@fastify/autoload/5.4.1 15 | '@fastify/sensible': registry.npmmirror.com/@fastify/sensible/5.1.1 16 | dotenv: registry.npmmirror.com/dotenv/16.0.3 17 | fastify: registry.npmmirror.com/fastify/4.9.2 18 | fastify-cli: registry.npmmirror.com/fastify-cli/5.5.1 19 | fastify-plugin: registry.npmmirror.com/fastify-plugin/4.3.0 20 | 21 | devDependencies: 22 | '@types/node': registry.npmmirror.com/@types/node/18.11.9 23 | '@vercel/node': registry.npmmirror.com/@vercel/node/2.6.1 24 | 25 | packages: 26 | 27 | registry.npmmirror.com/@edge-runtime/format/1.1.0: 28 | resolution: {integrity: sha512-MkLDDtPhXZIMx83NykdFmOpF7gVWIdd6GBHYb8V/E+PKWvD2pK/qWx9B30oN1iDJ2XBm0SGDjz02S8nDHI9lMQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@edge-runtime/format/-/format-1.1.0.tgz} 29 | name: '@edge-runtime/format' 30 | version: 1.1.0 31 | dev: true 32 | 33 | registry.npmmirror.com/@edge-runtime/primitives/2.0.0: 34 | resolution: {integrity: sha512-AXqUq1zruTJAICrllUvZcgciIcEGHdF6KJ3r6FM0n4k8LpFxZ62tPWVIJ9HKm+xt+ncTBUZxwgUaQ73QMUQEKw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@edge-runtime/primitives/-/primitives-2.0.0.tgz} 35 | name: '@edge-runtime/primitives' 36 | version: 2.0.0 37 | dev: true 38 | 39 | registry.npmmirror.com/@edge-runtime/vm/2.0.0: 40 | resolution: {integrity: sha512-BOLrAX8IWHRXu1siZocwLguKJPEUv7cr+rG8tI4hvHgMdIsBWHJlLeB8EjuUVnIURFrUiM49lVKn8DRrECmngw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@edge-runtime/vm/-/vm-2.0.0.tgz} 41 | name: '@edge-runtime/vm' 42 | version: 2.0.0 43 | dependencies: 44 | '@edge-runtime/primitives': registry.npmmirror.com/@edge-runtime/primitives/2.0.0 45 | dev: true 46 | 47 | registry.npmmirror.com/@fastify/ajv-compiler/3.4.0: 48 | resolution: {integrity: sha512-69JnK7Cot+ktn7LD5TikP3b7psBPX55tYpQa8WSumt8r117PCa2zwHnImfBtRWYExreJlI48hr0WZaVrTBGj7w==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@fastify/ajv-compiler/-/ajv-compiler-3.4.0.tgz} 49 | name: '@fastify/ajv-compiler' 50 | version: 3.4.0 51 | dependencies: 52 | ajv: registry.npmmirror.com/ajv/8.11.0 53 | ajv-formats: registry.npmmirror.com/ajv-formats/2.1.1 54 | fast-uri: registry.npmmirror.com/fast-uri/2.1.0 55 | dev: false 56 | 57 | registry.npmmirror.com/@fastify/autoload/5.4.1: 58 | resolution: {integrity: sha512-BiNyQ7FnM5zlVDC4JhbxKsMa9QxxUMgoMFrZ86l8m3HpHX3cvNWDdwMWmA32TDJJkzWnKoZE6HHBFPb0+Fu1Rw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@fastify/autoload/-/autoload-5.4.1.tgz} 59 | name: '@fastify/autoload' 60 | version: 5.4.1 61 | dependencies: 62 | pkg-up: registry.npmmirror.com/pkg-up/3.1.0 63 | dev: false 64 | 65 | registry.npmmirror.com/@fastify/deepmerge/1.1.0: 66 | resolution: {integrity: sha512-E8Hfdvs1bG6u0N4vN5Nty6JONUfTdOciyD5rn8KnEsLKIenvOVcr210BQR9t34PRkNyjqnMLGk3e0BsaxRdL+g==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@fastify/deepmerge/-/deepmerge-1.1.0.tgz} 67 | name: '@fastify/deepmerge' 68 | version: 1.1.0 69 | dev: false 70 | 71 | registry.npmmirror.com/@fastify/error/3.0.0: 72 | resolution: {integrity: sha512-dPRyT40GiHRzSCll3/Jn2nPe25+E1VXc9tDwRAIKwFCxd5Np5wzgz1tmooWG3sV0qKgrBibihVoCna2ru4SEFg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@fastify/error/-/error-3.0.0.tgz} 73 | name: '@fastify/error' 74 | version: 3.0.0 75 | dev: false 76 | 77 | registry.npmmirror.com/@fastify/fast-json-stringify-compiler/4.1.0: 78 | resolution: {integrity: sha512-cTKBV2J9+u6VaKDhX7HepSfPSzw+F+TSd+k0wzifj4rG+4E5PjSFJCk19P8R6tr/72cuzgGd+mbB3jFT6lvAgw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@fastify/fast-json-stringify-compiler/-/fast-json-stringify-compiler-4.1.0.tgz} 79 | name: '@fastify/fast-json-stringify-compiler' 80 | version: 4.1.0 81 | dependencies: 82 | fast-json-stringify: registry.npmmirror.com/fast-json-stringify/5.4.1 83 | dev: false 84 | 85 | registry.npmmirror.com/@fastify/sensible/5.1.1: 86 | resolution: {integrity: sha512-zMn3MDb++nTdnQVHMtKPvEsx+gOf213HDYD8iWPnketvtUUcbuHTloYFleXZ0YWR9XCgJdN0RRE3smqzl4Q2gg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@fastify/sensible/-/sensible-5.1.1.tgz} 87 | name: '@fastify/sensible' 88 | version: 5.1.1 89 | dependencies: 90 | fast-deep-equal: registry.npmmirror.com/fast-deep-equal/3.1.3 91 | fastify-plugin: registry.npmmirror.com/fastify-plugin/4.3.0 92 | forwarded: registry.npmmirror.com/forwarded/0.2.0 93 | http-errors: registry.npmmirror.com/http-errors/2.0.0 94 | ms: registry.npmmirror.com/ms/2.1.3 95 | type-is: registry.npmmirror.com/type-is/1.6.18 96 | vary: registry.npmmirror.com/vary/1.1.2 97 | dev: false 98 | 99 | registry.npmmirror.com/@nodelib/fs.scandir/2.1.5: 100 | resolution: {integrity: sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz} 101 | name: '@nodelib/fs.scandir' 102 | version: 2.1.5 103 | engines: {node: '>= 8'} 104 | dependencies: 105 | '@nodelib/fs.stat': registry.npmmirror.com/@nodelib/fs.stat/2.0.5 106 | run-parallel: registry.npmmirror.com/run-parallel/1.2.0 107 | dev: true 108 | 109 | registry.npmmirror.com/@nodelib/fs.stat/2.0.5: 110 | resolution: {integrity: sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz} 111 | name: '@nodelib/fs.stat' 112 | version: 2.0.5 113 | engines: {node: '>= 8'} 114 | dev: true 115 | 116 | registry.npmmirror.com/@nodelib/fs.walk/1.2.8: 117 | resolution: {integrity: sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz} 118 | name: '@nodelib/fs.walk' 119 | version: 1.2.8 120 | engines: {node: '>= 8'} 121 | dependencies: 122 | '@nodelib/fs.scandir': registry.npmmirror.com/@nodelib/fs.scandir/2.1.5 123 | fastq: registry.npmmirror.com/fastq/1.13.0 124 | dev: true 125 | 126 | registry.npmmirror.com/@ts-morph/common/0.11.1: 127 | resolution: {integrity: sha512-7hWZS0NRpEsNV8vWJzg7FEz6V8MaLNeJOmwmghqUXTpzk16V1LLZhdo+4QvE/+zv4cVci0OviuJFnqhEfoV3+g==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@ts-morph/common/-/common-0.11.1.tgz} 128 | name: '@ts-morph/common' 129 | version: 0.11.1 130 | dependencies: 131 | fast-glob: registry.npmmirror.com/fast-glob/3.2.12 132 | minimatch: registry.npmmirror.com/minimatch/3.1.2 133 | mkdirp: registry.npmmirror.com/mkdirp/1.0.4 134 | path-browserify: registry.npmmirror.com/path-browserify/1.0.1 135 | dev: true 136 | 137 | registry.npmmirror.com/@types/json-schema/7.0.11: 138 | resolution: {integrity: sha512-wOuvG1SN4Us4rez+tylwwwCV1psiNVOkJeM3AUWUNWg/jDQY2+HE/444y5gc+jBmRqASOm2Oeh5c1axHobwRKQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@types/json-schema/-/json-schema-7.0.11.tgz} 139 | name: '@types/json-schema' 140 | version: 7.0.11 141 | dev: true 142 | 143 | registry.npmmirror.com/@types/node/18.11.9: 144 | resolution: {integrity: sha512-CRpX21/kGdzjOpFsZSkcrXMGIBWMGNIHXXBVFSH+ggkftxg+XYP20TESbh+zFvFj3EQOl5byk0HTRn1IL6hbqg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@types/node/-/node-18.11.9.tgz} 145 | name: '@types/node' 146 | version: 18.11.9 147 | dev: true 148 | 149 | registry.npmmirror.com/@vercel/build-utils/5.5.7: 150 | resolution: {integrity: sha512-F8brek8VcR3CLgcuKyXbb8k8y/KRwqO/yEV5dTUW6OZ0fGxxa+0RnaaY1UbHlCVF1Cnu+/IsMDsmsj9o1RCP5A==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@vercel/build-utils/-/build-utils-5.5.7.tgz} 151 | name: '@vercel/build-utils' 152 | version: 5.5.7 153 | dev: true 154 | 155 | registry.npmmirror.com/@vercel/node-bridge/3.1.1: 156 | resolution: {integrity: sha512-sWg2okUTj8IbeWnAaY3IKbDp3Vinj4zdt3Q11S+cRMXO+pAUbqJxmiPD5+MS0RyIVvufoNotooiitRGlgQjA5w==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@vercel/node-bridge/-/node-bridge-3.1.1.tgz} 157 | name: '@vercel/node-bridge' 158 | version: 3.1.1 159 | dev: true 160 | 161 | registry.npmmirror.com/@vercel/node/2.6.1: 162 | resolution: {integrity: sha512-8AXrXxx1XKMT5OpSjQ5ghzjw0HYp4Cuv6GUWJ48jPcvzmU9VC5mZvjmhzmbIT4pPHdKjKZLPy8/rHqDjqztuJg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@vercel/node/-/node-2.6.1.tgz} 163 | name: '@vercel/node' 164 | version: 2.6.1 165 | dependencies: 166 | '@edge-runtime/vm': registry.npmmirror.com/@edge-runtime/vm/2.0.0 167 | '@types/node': registry.npmmirror.com/@types/node/18.11.9 168 | '@vercel/build-utils': registry.npmmirror.com/@vercel/build-utils/5.5.7 169 | '@vercel/node-bridge': registry.npmmirror.com/@vercel/node-bridge/3.1.1 170 | '@vercel/static-config': registry.npmmirror.com/@vercel/static-config/2.0.5 171 | edge-runtime: registry.npmmirror.com/edge-runtime/2.0.0 172 | esbuild: registry.npmmirror.com/esbuild/0.14.47 173 | exit-hook: registry.npmmirror.com/exit-hook/2.2.1 174 | node-fetch: registry.npmmirror.com/node-fetch/2.6.7 175 | ts-node: registry.npmmirror.com/ts-node/8.9.1_typescript@4.3.4 176 | typescript: registry.npmmirror.com/typescript/4.3.4 177 | transitivePeerDependencies: 178 | - encoding 179 | dev: true 180 | 181 | registry.npmmirror.com/@vercel/static-config/2.0.5: 182 | resolution: {integrity: sha512-f3wt+vQ3ARRR7hXHteMbrRNjH8iMETmP8f/t2HC8TpOjitjsjUKZg+3YS54AtLDEw/ZZ1s/7EG9nMK2BbU/t6g==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@vercel/static-config/-/static-config-2.0.5.tgz} 183 | name: '@vercel/static-config' 184 | version: 2.0.5 185 | dependencies: 186 | ajv: registry.npmmirror.com/ajv/8.6.3 187 | json-schema-to-ts: registry.npmmirror.com/json-schema-to-ts/1.6.4 188 | ts-morph: registry.npmmirror.com/ts-morph/12.0.0 189 | dev: true 190 | 191 | registry.npmmirror.com/abort-controller/3.0.0: 192 | resolution: {integrity: sha512-h8lQ8tacZYnR3vNQTgibj+tODHI5/+l06Au2Pcriv/Gmet0eaj4TwWH41sO9wnHDiQsEj19q0drzdWdeAHtweg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/abort-controller/-/abort-controller-3.0.0.tgz} 193 | name: abort-controller 194 | version: 3.0.0 195 | engines: {node: '>=6.5'} 196 | dependencies: 197 | event-target-shim: registry.npmmirror.com/event-target-shim/5.0.1 198 | dev: false 199 | 200 | registry.npmmirror.com/abstract-logging/2.0.1: 201 | resolution: {integrity: sha512-2BjRTZxTPvheOvGbBslFSYOUkr+SjPtOnrLP33f+VIWLzezQpZcqVg7ja3L4dBXmzzgwT+a029jRx5PCi3JuiA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/abstract-logging/-/abstract-logging-2.0.1.tgz} 202 | name: abstract-logging 203 | version: 2.0.1 204 | dev: false 205 | 206 | registry.npmmirror.com/ajv-formats/2.1.1: 207 | resolution: {integrity: sha512-Wx0Kx52hxE7C18hkMEggYlEifqWZtYaRgouJor+WMdPnQyEK13vgEWyVNup7SoeeoLMsr4kf5h6dOW11I15MUA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/ajv-formats/-/ajv-formats-2.1.1.tgz} 208 | name: ajv-formats 209 | version: 2.1.1 210 | peerDependenciesMeta: 211 | ajv: 212 | optional: true 213 | dependencies: 214 | ajv: registry.npmmirror.com/ajv/8.11.0 215 | dev: false 216 | 217 | registry.npmmirror.com/ajv/8.11.0: 218 | resolution: {integrity: sha512-wGgprdCvMalC0BztXvitD2hC04YffAvtsUn93JbGXYLAtCUO4xd17mCCZQxUOItiBwZvJScWo8NIvQMQ71rdpg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/ajv/-/ajv-8.11.0.tgz} 219 | name: ajv 220 | version: 8.11.0 221 | dependencies: 222 | fast-deep-equal: registry.npmmirror.com/fast-deep-equal/3.1.3 223 | json-schema-traverse: registry.npmmirror.com/json-schema-traverse/1.0.0 224 | require-from-string: registry.npmmirror.com/require-from-string/2.0.2 225 | uri-js: registry.npmmirror.com/uri-js/4.4.1 226 | dev: false 227 | 228 | registry.npmmirror.com/ajv/8.6.3: 229 | resolution: {integrity: sha512-SMJOdDP6LqTkD0Uq8qLi+gMwSt0imXLSV080qFVwJCpH9U6Mb+SUGHAXM0KNbcBPguytWyvFxcHgMLe2D2XSpw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/ajv/-/ajv-8.6.3.tgz} 230 | name: ajv 231 | version: 8.6.3 232 | dependencies: 233 | fast-deep-equal: registry.npmmirror.com/fast-deep-equal/3.1.3 234 | json-schema-traverse: registry.npmmirror.com/json-schema-traverse/1.0.0 235 | require-from-string: registry.npmmirror.com/require-from-string/2.0.2 236 | uri-js: registry.npmmirror.com/uri-js/4.4.1 237 | dev: true 238 | 239 | registry.npmmirror.com/ansi-styles/4.3.0: 240 | resolution: {integrity: sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/ansi-styles/-/ansi-styles-4.3.0.tgz} 241 | name: ansi-styles 242 | version: 4.3.0 243 | engines: {node: '>=8'} 244 | dependencies: 245 | color-convert: registry.npmmirror.com/color-convert/2.0.1 246 | dev: false 247 | 248 | registry.npmmirror.com/anymatch/3.1.2: 249 | resolution: {integrity: sha512-P43ePfOAIupkguHUycrc4qJ9kz8ZiuOUijaETwX7THt0Y/GNK7v0aa8rY816xWjZ7rJdA5XdMcpVFTKMq+RvWg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/anymatch/-/anymatch-3.1.2.tgz} 250 | name: anymatch 251 | version: 3.1.2 252 | engines: {node: '>= 8'} 253 | dependencies: 254 | normalize-path: registry.npmmirror.com/normalize-path/3.0.0 255 | picomatch: registry.npmmirror.com/picomatch/2.3.1 256 | dev: false 257 | 258 | registry.npmmirror.com/archy/1.0.0: 259 | resolution: {integrity: sha512-Xg+9RwCg/0p32teKdGMPTPnVXKD0w3DfHnFTficozsAgsvq2XenPJq/MYpzzQ/v8zrOyJn6Ds39VA4JIDwFfqw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/archy/-/archy-1.0.0.tgz} 260 | name: archy 261 | version: 1.0.0 262 | dev: false 263 | 264 | registry.npmmirror.com/arg/4.1.3: 265 | resolution: {integrity: sha512-58S9QDqG0Xx27YwPSt9fJxivjYl432YCwfDMfZ+71RAqUrZef7LrKQZ3LHLOwCS4FLNBplP533Zx895SeOCHvA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/arg/-/arg-4.1.3.tgz} 266 | name: arg 267 | version: 4.1.3 268 | dev: true 269 | 270 | registry.npmmirror.com/atomic-sleep/1.0.0: 271 | resolution: {integrity: sha512-kNOjDqAh7px0XWNI+4QbzoiR/nTkHAWNud2uvnJquD1/x5a7EQZMJT0AczqK0Qn67oY/TTQ1LbUKajZpp3I9tQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/atomic-sleep/-/atomic-sleep-1.0.0.tgz} 272 | name: atomic-sleep 273 | version: 1.0.0 274 | engines: {node: '>=8.0.0'} 275 | dev: false 276 | 277 | registry.npmmirror.com/avvio/8.2.0: 278 | resolution: {integrity: sha512-bbCQdg7bpEv6kGH41RO/3B2/GMMmJSo2iBK+X8AWN9mujtfUipMDfIjsgHCfpnKqoGEQrrmCDKSa5OQ19+fDmg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/avvio/-/avvio-8.2.0.tgz} 279 | name: avvio 280 | version: 8.2.0 281 | dependencies: 282 | archy: registry.npmmirror.com/archy/1.0.0 283 | debug: registry.npmmirror.com/debug/4.3.4 284 | fastq: registry.npmmirror.com/fastq/1.13.0 285 | transitivePeerDependencies: 286 | - supports-color 287 | dev: false 288 | 289 | registry.npmmirror.com/balanced-match/1.0.2: 290 | resolution: {integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/balanced-match/-/balanced-match-1.0.2.tgz} 291 | name: balanced-match 292 | version: 1.0.2 293 | 294 | registry.npmmirror.com/base64-js/1.5.1: 295 | resolution: {integrity: sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/base64-js/-/base64-js-1.5.1.tgz} 296 | name: base64-js 297 | version: 1.5.1 298 | dev: false 299 | 300 | registry.npmmirror.com/binary-extensions/2.2.0: 301 | resolution: {integrity: sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/binary-extensions/-/binary-extensions-2.2.0.tgz} 302 | name: binary-extensions 303 | version: 2.2.0 304 | engines: {node: '>=8'} 305 | dev: false 306 | 307 | registry.npmmirror.com/brace-expansion/1.1.11: 308 | resolution: {integrity: sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/brace-expansion/-/brace-expansion-1.1.11.tgz} 309 | name: brace-expansion 310 | version: 1.1.11 311 | dependencies: 312 | balanced-match: registry.npmmirror.com/balanced-match/1.0.2 313 | concat-map: registry.npmmirror.com/concat-map/0.0.1 314 | dev: true 315 | 316 | registry.npmmirror.com/brace-expansion/2.0.1: 317 | resolution: {integrity: sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/brace-expansion/-/brace-expansion-2.0.1.tgz} 318 | name: brace-expansion 319 | version: 2.0.1 320 | dependencies: 321 | balanced-match: registry.npmmirror.com/balanced-match/1.0.2 322 | dev: false 323 | 324 | registry.npmmirror.com/braces/3.0.2: 325 | resolution: {integrity: sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/braces/-/braces-3.0.2.tgz} 326 | name: braces 327 | version: 3.0.2 328 | engines: {node: '>=8'} 329 | dependencies: 330 | fill-range: registry.npmmirror.com/fill-range/7.0.1 331 | 332 | registry.npmmirror.com/buffer-from/1.1.2: 333 | resolution: {integrity: sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/buffer-from/-/buffer-from-1.1.2.tgz} 334 | name: buffer-from 335 | version: 1.1.2 336 | dev: true 337 | 338 | registry.npmmirror.com/buffer/6.0.3: 339 | resolution: {integrity: sha512-FTiCpNxtwiZZHEZbcbTIcZjERVICn9yq/pDFkTl95/AxzD1naBctN7YO68riM/gLSDY7sdrMby8hofADYuuqOA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/buffer/-/buffer-6.0.3.tgz} 340 | name: buffer 341 | version: 6.0.3 342 | dependencies: 343 | base64-js: registry.npmmirror.com/base64-js/1.5.1 344 | ieee754: registry.npmmirror.com/ieee754/1.2.1 345 | dev: false 346 | 347 | registry.npmmirror.com/chalk/4.1.2: 348 | resolution: {integrity: sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/chalk/-/chalk-4.1.2.tgz} 349 | name: chalk 350 | version: 4.1.2 351 | engines: {node: '>=10'} 352 | dependencies: 353 | ansi-styles: registry.npmmirror.com/ansi-styles/4.3.0 354 | supports-color: registry.npmmirror.com/supports-color/7.2.0 355 | dev: false 356 | 357 | registry.npmmirror.com/chokidar/3.5.3: 358 | resolution: {integrity: sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/chokidar/-/chokidar-3.5.3.tgz} 359 | name: chokidar 360 | version: 3.5.3 361 | engines: {node: '>= 8.10.0'} 362 | dependencies: 363 | anymatch: registry.npmmirror.com/anymatch/3.1.2 364 | braces: registry.npmmirror.com/braces/3.0.2 365 | glob-parent: registry.npmmirror.com/glob-parent/5.1.2 366 | is-binary-path: registry.npmmirror.com/is-binary-path/2.1.0 367 | is-glob: registry.npmmirror.com/is-glob/4.0.3 368 | normalize-path: registry.npmmirror.com/normalize-path/3.0.0 369 | readdirp: registry.npmmirror.com/readdirp/3.6.0 370 | optionalDependencies: 371 | fsevents: registry.npmmirror.com/fsevents/2.3.2 372 | dev: false 373 | 374 | registry.npmmirror.com/close-with-grace/1.1.0: 375 | resolution: {integrity: sha512-6cCp71Y5tKw1o9sGVBOa9OwY4vJ+YoLpFcWiTt9YCBhYlcQi0z68EiiN9mJ6/401Za6TZ5YOZg012IHHZt15lw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/close-with-grace/-/close-with-grace-1.1.0.tgz} 376 | name: close-with-grace 377 | version: 1.1.0 378 | dev: false 379 | 380 | registry.npmmirror.com/code-block-writer/10.1.1: 381 | resolution: {integrity: sha512-67ueh2IRGst/51p0n6FvPrnRjAGHY5F8xdjkgrYE7DDzpJe6qA07RYQ9VcoUeo5ATOjSOiWpSL3SWBRRbempMw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/code-block-writer/-/code-block-writer-10.1.1.tgz} 382 | name: code-block-writer 383 | version: 10.1.1 384 | dev: true 385 | 386 | registry.npmmirror.com/color-convert/2.0.1: 387 | resolution: {integrity: sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/color-convert/-/color-convert-2.0.1.tgz} 388 | name: color-convert 389 | version: 2.0.1 390 | engines: {node: '>=7.0.0'} 391 | dependencies: 392 | color-name: registry.npmmirror.com/color-name/1.1.4 393 | dev: false 394 | 395 | registry.npmmirror.com/color-name/1.1.4: 396 | resolution: {integrity: sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/color-name/-/color-name-1.1.4.tgz} 397 | name: color-name 398 | version: 1.1.4 399 | dev: false 400 | 401 | registry.npmmirror.com/colorette/2.0.19: 402 | resolution: {integrity: sha512-3tlv/dIP7FWvj3BsbHrGLJ6l/oKh1O3TcgBqMn+yyCagOxc23fyzDS6HypQbgxWbkpDnf52p1LuR4eWDQ/K9WQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/colorette/-/colorette-2.0.19.tgz} 403 | name: colorette 404 | version: 2.0.19 405 | dev: false 406 | 407 | registry.npmmirror.com/commist/3.1.2: 408 | resolution: {integrity: sha512-cyQMbb5GiGHD/MiTqqI4V5fySqVKS8WUtN0iwxZ3sd6GYZ+8gzo6aYiT2EhBuwzVoBjsAu8F9mnlqlnXGqADZg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/commist/-/commist-3.1.2.tgz} 409 | name: commist 410 | version: 3.1.2 411 | dev: false 412 | 413 | registry.npmmirror.com/concat-map/0.0.1: 414 | resolution: {integrity: sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/concat-map/-/concat-map-0.0.1.tgz} 415 | name: concat-map 416 | version: 0.0.1 417 | dev: true 418 | 419 | registry.npmmirror.com/convert-hrtime/3.0.0: 420 | resolution: {integrity: sha512-7V+KqSvMiHp8yWDuwfww06XleMWVVB9b9tURBx+G7UTADuo5hYPuowKloz4OzOqbPezxgo+fdQ1522WzPG4OeA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/convert-hrtime/-/convert-hrtime-3.0.0.tgz} 421 | name: convert-hrtime 422 | version: 3.0.0 423 | engines: {node: '>=8'} 424 | dev: true 425 | 426 | registry.npmmirror.com/cookie/0.5.0: 427 | resolution: {integrity: sha512-YZ3GUyn/o8gfKJlnlX7g7xq4gyO6OSuhGPKaaGssGB2qgDUS0gPgtTvoyZLTt9Ab6dC4hfc9dV5arkvc/OCmrw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/cookie/-/cookie-0.5.0.tgz} 428 | name: cookie 429 | version: 0.5.0 430 | engines: {node: '>= 0.6'} 431 | dev: false 432 | 433 | registry.npmmirror.com/dateformat/4.6.3: 434 | resolution: {integrity: sha512-2P0p0pFGzHS5EMnhdxQi7aJN+iMheud0UhG4dlE1DLAlvL8JHjJJTX/CSm4JXwV0Ka5nGk3zC5mcb5bUQUxxMA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/dateformat/-/dateformat-4.6.3.tgz} 435 | name: dateformat 436 | version: 4.6.3 437 | dev: false 438 | 439 | registry.npmmirror.com/debug/4.3.4: 440 | resolution: {integrity: sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/debug/-/debug-4.3.4.tgz} 441 | name: debug 442 | version: 4.3.4 443 | engines: {node: '>=6.0'} 444 | peerDependencies: 445 | supports-color: '*' 446 | peerDependenciesMeta: 447 | supports-color: 448 | optional: true 449 | dependencies: 450 | ms: registry.npmmirror.com/ms/2.1.2 451 | dev: false 452 | 453 | registry.npmmirror.com/depd/2.0.0: 454 | resolution: {integrity: sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/depd/-/depd-2.0.0.tgz} 455 | name: depd 456 | version: 2.0.0 457 | engines: {node: '>= 0.8'} 458 | dev: false 459 | 460 | registry.npmmirror.com/diff/4.0.2: 461 | resolution: {integrity: sha512-58lmxKSA4BNyLz+HHMUzlOEpg09FV+ev6ZMe3vJihgdxzgcwZ8VoEEPmALCZG9LmqfVoNMMKpttIYTVG6uDY7A==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/diff/-/diff-4.0.2.tgz} 462 | name: diff 463 | version: 4.0.2 464 | engines: {node: '>=0.3.1'} 465 | dev: true 466 | 467 | registry.npmmirror.com/dotenv/16.0.3: 468 | resolution: {integrity: sha512-7GO6HghkA5fYG9TYnNxi14/7K9f5occMlp3zXAuSxn7CKCxt9xbNWG7yF8hTCSUchlfWSe3uLmlPfigevRItzQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/dotenv/-/dotenv-16.0.3.tgz} 469 | name: dotenv 470 | version: 16.0.3 471 | engines: {node: '>=12'} 472 | dev: false 473 | 474 | registry.npmmirror.com/edge-runtime/2.0.0: 475 | resolution: {integrity: sha512-TmRJhKi4mlM1e+zgF4CSzVU5gJ1sWj7ia+XhVgZ8PYyYUxk4PPjJU8qScpSLsAbdSxoBghLxdMuwuCzdYLd1sQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/edge-runtime/-/edge-runtime-2.0.0.tgz} 476 | name: edge-runtime 477 | version: 2.0.0 478 | hasBin: true 479 | dependencies: 480 | '@edge-runtime/format': registry.npmmirror.com/@edge-runtime/format/1.1.0 481 | '@edge-runtime/vm': registry.npmmirror.com/@edge-runtime/vm/2.0.0 482 | exit-hook: registry.npmmirror.com/exit-hook/2.2.1 483 | http-status: registry.npmmirror.com/http-status/1.5.3 484 | mri: registry.npmmirror.com/mri/1.2.0 485 | picocolors: registry.npmmirror.com/picocolors/1.0.0 486 | pretty-bytes: registry.npmmirror.com/pretty-bytes/5.6.0 487 | pretty-ms: registry.npmmirror.com/pretty-ms/7.0.1 488 | time-span: registry.npmmirror.com/time-span/4.0.0 489 | dev: true 490 | 491 | registry.npmmirror.com/end-of-stream/1.4.4: 492 | resolution: {integrity: sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/end-of-stream/-/end-of-stream-1.4.4.tgz} 493 | name: end-of-stream 494 | version: 1.4.4 495 | dependencies: 496 | once: registry.npmmirror.com/once/1.4.0 497 | dev: false 498 | 499 | registry.npmmirror.com/esbuild-android-64/0.14.47: 500 | resolution: {integrity: sha512-R13Bd9+tqLVFndncMHssZrPWe6/0Kpv2/dt4aA69soX4PRxlzsVpCvoJeFE8sOEoeVEiBkI0myjlkDodXlHa0g==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/esbuild-android-64/-/esbuild-android-64-0.14.47.tgz} 501 | name: esbuild-android-64 502 | version: 0.14.47 503 | engines: {node: '>=12'} 504 | cpu: [x64] 505 | os: [android] 506 | requiresBuild: true 507 | dev: true 508 | optional: true 509 | 510 | registry.npmmirror.com/esbuild-android-arm64/0.14.47: 511 | resolution: {integrity: sha512-OkwOjj7ts4lBp/TL6hdd8HftIzOy/pdtbrNA4+0oVWgGG64HrdVzAF5gxtJufAPOsEjkyh1oIYvKAUinKKQRSQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/esbuild-android-arm64/-/esbuild-android-arm64-0.14.47.tgz} 512 | name: esbuild-android-arm64 513 | version: 0.14.47 514 | engines: {node: '>=12'} 515 | cpu: [arm64] 516 | os: [android] 517 | requiresBuild: true 518 | dev: true 519 | optional: true 520 | 521 | registry.npmmirror.com/esbuild-darwin-64/0.14.47: 522 | resolution: {integrity: sha512-R6oaW0y5/u6Eccti/TS6c/2c1xYTb1izwK3gajJwi4vIfNs1s8B1dQzI1UiC9T61YovOQVuePDcfqHLT3mUZJA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/esbuild-darwin-64/-/esbuild-darwin-64-0.14.47.tgz} 523 | name: esbuild-darwin-64 524 | version: 0.14.47 525 | engines: {node: '>=12'} 526 | cpu: [x64] 527 | os: [darwin] 528 | requiresBuild: true 529 | dev: true 530 | optional: true 531 | 532 | registry.npmmirror.com/esbuild-darwin-arm64/0.14.47: 533 | resolution: {integrity: sha512-seCmearlQyvdvM/noz1L9+qblC5vcBrhUaOoLEDDoLInF/VQ9IkobGiLlyTPYP5dW1YD4LXhtBgOyevoIHGGnw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/esbuild-darwin-arm64/-/esbuild-darwin-arm64-0.14.47.tgz} 534 | name: esbuild-darwin-arm64 535 | version: 0.14.47 536 | engines: {node: '>=12'} 537 | cpu: [arm64] 538 | os: [darwin] 539 | requiresBuild: true 540 | dev: true 541 | optional: true 542 | 543 | registry.npmmirror.com/esbuild-freebsd-64/0.14.47: 544 | resolution: {integrity: sha512-ZH8K2Q8/Ux5kXXvQMDsJcxvkIwut69KVrYQhza/ptkW50DC089bCVrJZZ3sKzIoOx+YPTrmsZvqeZERjyYrlvQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/esbuild-freebsd-64/-/esbuild-freebsd-64-0.14.47.tgz} 545 | name: esbuild-freebsd-64 546 | version: 0.14.47 547 | engines: {node: '>=12'} 548 | cpu: [x64] 549 | os: [freebsd] 550 | requiresBuild: true 551 | dev: true 552 | optional: true 553 | 554 | registry.npmmirror.com/esbuild-freebsd-arm64/0.14.47: 555 | resolution: {integrity: sha512-ZJMQAJQsIOhn3XTm7MPQfCzEu5b9STNC+s90zMWe2afy9EwnHV7Ov7ohEMv2lyWlc2pjqLW8QJnz2r0KZmeAEQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/esbuild-freebsd-arm64/-/esbuild-freebsd-arm64-0.14.47.tgz} 556 | name: esbuild-freebsd-arm64 557 | version: 0.14.47 558 | engines: {node: '>=12'} 559 | cpu: [arm64] 560 | os: [freebsd] 561 | requiresBuild: true 562 | dev: true 563 | optional: true 564 | 565 | registry.npmmirror.com/esbuild-linux-32/0.14.47: 566 | resolution: {integrity: sha512-FxZOCKoEDPRYvq300lsWCTv1kcHgiiZfNrPtEhFAiqD7QZaXrad8LxyJ8fXGcWzIFzRiYZVtB3ttvITBvAFhKw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/esbuild-linux-32/-/esbuild-linux-32-0.14.47.tgz} 567 | name: esbuild-linux-32 568 | version: 0.14.47 569 | engines: {node: '>=12'} 570 | cpu: [ia32] 571 | os: [linux] 572 | requiresBuild: true 573 | dev: true 574 | optional: true 575 | 576 | registry.npmmirror.com/esbuild-linux-64/0.14.47: 577 | resolution: {integrity: sha512-nFNOk9vWVfvWYF9YNYksZptgQAdstnDCMtR6m42l5Wfugbzu11VpMCY9XrD4yFxvPo9zmzcoUL/88y0lfJZJJw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/esbuild-linux-64/-/esbuild-linux-64-0.14.47.tgz} 578 | name: esbuild-linux-64 579 | version: 0.14.47 580 | engines: {node: '>=12'} 581 | cpu: [x64] 582 | os: [linux] 583 | requiresBuild: true 584 | dev: true 585 | optional: true 586 | 587 | registry.npmmirror.com/esbuild-linux-arm/0.14.47: 588 | resolution: {integrity: sha512-ZGE1Bqg/gPRXrBpgpvH81tQHpiaGxa8c9Rx/XOylkIl2ypLuOcawXEAo8ls+5DFCcRGt/o3sV+PzpAFZobOsmA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/esbuild-linux-arm/-/esbuild-linux-arm-0.14.47.tgz} 589 | name: esbuild-linux-arm 590 | version: 0.14.47 591 | engines: {node: '>=12'} 592 | cpu: [arm] 593 | os: [linux] 594 | requiresBuild: true 595 | dev: true 596 | optional: true 597 | 598 | registry.npmmirror.com/esbuild-linux-arm64/0.14.47: 599 | resolution: {integrity: sha512-ywfme6HVrhWcevzmsufjd4iT3PxTfCX9HOdxA7Hd+/ZM23Y9nXeb+vG6AyA6jgq/JovkcqRHcL9XwRNpWG6XRw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/esbuild-linux-arm64/-/esbuild-linux-arm64-0.14.47.tgz} 600 | name: esbuild-linux-arm64 601 | version: 0.14.47 602 | engines: {node: '>=12'} 603 | cpu: [arm64] 604 | os: [linux] 605 | requiresBuild: true 606 | dev: true 607 | optional: true 608 | 609 | registry.npmmirror.com/esbuild-linux-mips64le/0.14.47: 610 | resolution: {integrity: sha512-mg3D8YndZ1LvUiEdDYR3OsmeyAew4MA/dvaEJxvyygahWmpv1SlEEnhEZlhPokjsUMfRagzsEF/d/2XF+kTQGg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/esbuild-linux-mips64le/-/esbuild-linux-mips64le-0.14.47.tgz} 611 | name: esbuild-linux-mips64le 612 | version: 0.14.47 613 | engines: {node: '>=12'} 614 | cpu: [mips64el] 615 | os: [linux] 616 | requiresBuild: true 617 | dev: true 618 | optional: true 619 | 620 | registry.npmmirror.com/esbuild-linux-ppc64le/0.14.47: 621 | resolution: {integrity: sha512-WER+f3+szmnZiWoK6AsrTKGoJoErG2LlauSmk73LEZFQ/iWC+KhhDsOkn1xBUpzXWsxN9THmQFltLoaFEH8F8w==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/esbuild-linux-ppc64le/-/esbuild-linux-ppc64le-0.14.47.tgz} 622 | name: esbuild-linux-ppc64le 623 | version: 0.14.47 624 | engines: {node: '>=12'} 625 | cpu: [ppc64] 626 | os: [linux] 627 | requiresBuild: true 628 | dev: true 629 | optional: true 630 | 631 | registry.npmmirror.com/esbuild-linux-riscv64/0.14.47: 632 | resolution: {integrity: sha512-1fI6bP3A3rvI9BsaaXbMoaOjLE3lVkJtLxsgLHqlBhLlBVY7UqffWBvkrX/9zfPhhVMd9ZRFiaqXnB1T7BsL2g==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/esbuild-linux-riscv64/-/esbuild-linux-riscv64-0.14.47.tgz} 633 | name: esbuild-linux-riscv64 634 | version: 0.14.47 635 | engines: {node: '>=12'} 636 | cpu: [riscv64] 637 | os: [linux] 638 | requiresBuild: true 639 | dev: true 640 | optional: true 641 | 642 | registry.npmmirror.com/esbuild-linux-s390x/0.14.47: 643 | resolution: {integrity: sha512-eZrWzy0xFAhki1CWRGnhsHVz7IlSKX6yT2tj2Eg8lhAwlRE5E96Hsb0M1mPSE1dHGpt1QVwwVivXIAacF/G6mw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/esbuild-linux-s390x/-/esbuild-linux-s390x-0.14.47.tgz} 644 | name: esbuild-linux-s390x 645 | version: 0.14.47 646 | engines: {node: '>=12'} 647 | cpu: [s390x] 648 | os: [linux] 649 | requiresBuild: true 650 | dev: true 651 | optional: true 652 | 653 | registry.npmmirror.com/esbuild-netbsd-64/0.14.47: 654 | resolution: {integrity: sha512-Qjdjr+KQQVH5Q2Q1r6HBYswFTToPpss3gqCiSw2Fpq/ua8+eXSQyAMG+UvULPqXceOwpnPo4smyZyHdlkcPppQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/esbuild-netbsd-64/-/esbuild-netbsd-64-0.14.47.tgz} 655 | name: esbuild-netbsd-64 656 | version: 0.14.47 657 | engines: {node: '>=12'} 658 | cpu: [x64] 659 | os: [netbsd] 660 | requiresBuild: true 661 | dev: true 662 | optional: true 663 | 664 | registry.npmmirror.com/esbuild-openbsd-64/0.14.47: 665 | resolution: {integrity: sha512-QpgN8ofL7B9z8g5zZqJE+eFvD1LehRlxr25PBkjyyasakm4599iroUpaj96rdqRlO2ShuyqwJdr+oNqWwTUmQw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/esbuild-openbsd-64/-/esbuild-openbsd-64-0.14.47.tgz} 666 | name: esbuild-openbsd-64 667 | version: 0.14.47 668 | engines: {node: '>=12'} 669 | cpu: [x64] 670 | os: [openbsd] 671 | requiresBuild: true 672 | dev: true 673 | optional: true 674 | 675 | registry.npmmirror.com/esbuild-sunos-64/0.14.47: 676 | resolution: {integrity: sha512-uOeSgLUwukLioAJOiGYm3kNl+1wJjgJA8R671GYgcPgCx7QR73zfvYqXFFcIO93/nBdIbt5hd8RItqbbf3HtAQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/esbuild-sunos-64/-/esbuild-sunos-64-0.14.47.tgz} 677 | name: esbuild-sunos-64 678 | version: 0.14.47 679 | engines: {node: '>=12'} 680 | cpu: [x64] 681 | os: [sunos] 682 | requiresBuild: true 683 | dev: true 684 | optional: true 685 | 686 | registry.npmmirror.com/esbuild-windows-32/0.14.47: 687 | resolution: {integrity: sha512-H0fWsLTp2WBfKLBgwYT4OTfFly4Im/8B5f3ojDv1Kx//kiubVY0IQunP2Koc/fr/0wI7hj3IiBDbSrmKlrNgLQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/esbuild-windows-32/-/esbuild-windows-32-0.14.47.tgz} 688 | name: esbuild-windows-32 689 | version: 0.14.47 690 | engines: {node: '>=12'} 691 | cpu: [ia32] 692 | os: [win32] 693 | requiresBuild: true 694 | dev: true 695 | optional: true 696 | 697 | registry.npmmirror.com/esbuild-windows-64/0.14.47: 698 | resolution: {integrity: sha512-/Pk5jIEH34T68r8PweKRi77W49KwanZ8X6lr3vDAtOlH5EumPE4pBHqkCUdELanvsT14yMXLQ/C/8XPi1pAtkQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/esbuild-windows-64/-/esbuild-windows-64-0.14.47.tgz} 699 | name: esbuild-windows-64 700 | version: 0.14.47 701 | engines: {node: '>=12'} 702 | cpu: [x64] 703 | os: [win32] 704 | requiresBuild: true 705 | dev: true 706 | optional: true 707 | 708 | registry.npmmirror.com/esbuild-windows-arm64/0.14.47: 709 | resolution: {integrity: sha512-HFSW2lnp62fl86/qPQlqw6asIwCnEsEoNIL1h2uVMgakddf+vUuMcCbtUY1i8sst7KkgHrVKCJQB33YhhOweCQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/esbuild-windows-arm64/-/esbuild-windows-arm64-0.14.47.tgz} 710 | name: esbuild-windows-arm64 711 | version: 0.14.47 712 | engines: {node: '>=12'} 713 | cpu: [arm64] 714 | os: [win32] 715 | requiresBuild: true 716 | dev: true 717 | optional: true 718 | 719 | registry.npmmirror.com/esbuild/0.14.47: 720 | resolution: {integrity: sha512-wI4ZiIfFxpkuxB8ju4MHrGwGLyp1+awEHAHVpx6w7a+1pmYIq8T9FGEVVwFo0iFierDoMj++Xq69GXWYn2EiwA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/esbuild/-/esbuild-0.14.47.tgz} 721 | name: esbuild 722 | version: 0.14.47 723 | engines: {node: '>=12'} 724 | hasBin: true 725 | requiresBuild: true 726 | optionalDependencies: 727 | esbuild-android-64: registry.npmmirror.com/esbuild-android-64/0.14.47 728 | esbuild-android-arm64: registry.npmmirror.com/esbuild-android-arm64/0.14.47 729 | esbuild-darwin-64: registry.npmmirror.com/esbuild-darwin-64/0.14.47 730 | esbuild-darwin-arm64: registry.npmmirror.com/esbuild-darwin-arm64/0.14.47 731 | esbuild-freebsd-64: registry.npmmirror.com/esbuild-freebsd-64/0.14.47 732 | esbuild-freebsd-arm64: registry.npmmirror.com/esbuild-freebsd-arm64/0.14.47 733 | esbuild-linux-32: registry.npmmirror.com/esbuild-linux-32/0.14.47 734 | esbuild-linux-64: registry.npmmirror.com/esbuild-linux-64/0.14.47 735 | esbuild-linux-arm: registry.npmmirror.com/esbuild-linux-arm/0.14.47 736 | esbuild-linux-arm64: registry.npmmirror.com/esbuild-linux-arm64/0.14.47 737 | esbuild-linux-mips64le: registry.npmmirror.com/esbuild-linux-mips64le/0.14.47 738 | esbuild-linux-ppc64le: registry.npmmirror.com/esbuild-linux-ppc64le/0.14.47 739 | esbuild-linux-riscv64: registry.npmmirror.com/esbuild-linux-riscv64/0.14.47 740 | esbuild-linux-s390x: registry.npmmirror.com/esbuild-linux-s390x/0.14.47 741 | esbuild-netbsd-64: registry.npmmirror.com/esbuild-netbsd-64/0.14.47 742 | esbuild-openbsd-64: registry.npmmirror.com/esbuild-openbsd-64/0.14.47 743 | esbuild-sunos-64: registry.npmmirror.com/esbuild-sunos-64/0.14.47 744 | esbuild-windows-32: registry.npmmirror.com/esbuild-windows-32/0.14.47 745 | esbuild-windows-64: registry.npmmirror.com/esbuild-windows-64/0.14.47 746 | esbuild-windows-arm64: registry.npmmirror.com/esbuild-windows-arm64/0.14.47 747 | dev: true 748 | 749 | registry.npmmirror.com/event-target-shim/5.0.1: 750 | resolution: {integrity: sha512-i/2XbnSz/uxRCU6+NdVJgKWDTM427+MqYbkQzD321DuCQJUqOuJKIA0IM2+W2xtYHdKOmZ4dR6fExsd4SXL+WQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/event-target-shim/-/event-target-shim-5.0.1.tgz} 751 | name: event-target-shim 752 | version: 5.0.1 753 | engines: {node: '>=6'} 754 | dev: false 755 | 756 | registry.npmmirror.com/events/3.3.0: 757 | resolution: {integrity: sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/events/-/events-3.3.0.tgz} 758 | name: events 759 | version: 3.3.0 760 | engines: {node: '>=0.8.x'} 761 | dev: false 762 | 763 | registry.npmmirror.com/exit-hook/2.2.1: 764 | resolution: {integrity: sha512-eNTPlAD67BmP31LDINZ3U7HSF8l57TxOY2PmBJ1shpCvpnxBF93mWCE8YHBnXs8qiUZJc9WDcWIeC3a2HIAMfw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/exit-hook/-/exit-hook-2.2.1.tgz} 765 | name: exit-hook 766 | version: 2.2.1 767 | engines: {node: '>=6'} 768 | dev: true 769 | 770 | registry.npmmirror.com/fast-copy/3.0.0: 771 | resolution: {integrity: sha512-4HzS+9pQ5Yxtv13Lhs1Z1unMXamBdn5nA4bEi1abYpDNSpSp7ODYQ1KPMF6nTatfEzgH6/zPvXKU1zvHiUjWlA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/fast-copy/-/fast-copy-3.0.0.tgz} 772 | name: fast-copy 773 | version: 3.0.0 774 | dev: false 775 | 776 | registry.npmmirror.com/fast-decode-uri-component/1.0.1: 777 | resolution: {integrity: sha512-WKgKWg5eUxvRZGwW8FvfbaH7AXSh2cL+3j5fMGzUMCxWBJ3dV3a7Wz8y2f/uQ0e3B6WmodD3oS54jTQ9HVTIIg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/fast-decode-uri-component/-/fast-decode-uri-component-1.0.1.tgz} 778 | name: fast-decode-uri-component 779 | version: 1.0.1 780 | dev: false 781 | 782 | registry.npmmirror.com/fast-deep-equal/3.1.3: 783 | resolution: {integrity: sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz} 784 | name: fast-deep-equal 785 | version: 3.1.3 786 | 787 | registry.npmmirror.com/fast-glob/3.2.12: 788 | resolution: {integrity: sha512-DVj4CQIYYow0BlaelwK1pHl5n5cRSJfM60UA0zK891sVInoPri2Ekj7+e1CT3/3qxXenpI+nBBmQAcJPJgaj4w==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/fast-glob/-/fast-glob-3.2.12.tgz} 789 | name: fast-glob 790 | version: 3.2.12 791 | engines: {node: '>=8.6.0'} 792 | dependencies: 793 | '@nodelib/fs.stat': registry.npmmirror.com/@nodelib/fs.stat/2.0.5 794 | '@nodelib/fs.walk': registry.npmmirror.com/@nodelib/fs.walk/1.2.8 795 | glob-parent: registry.npmmirror.com/glob-parent/5.1.2 796 | merge2: registry.npmmirror.com/merge2/1.4.1 797 | micromatch: registry.npmmirror.com/micromatch/4.0.5 798 | dev: true 799 | 800 | registry.npmmirror.com/fast-json-stringify/5.4.1: 801 | resolution: {integrity: sha512-P7S9WXEnMqu6seBnzAFmgZ+T3KCD+Do+pNIJsmk/6OlDHZVjl6KzsQB3TFHKQb2Q8N7C9l31WS7/LZGF5hT1FA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/fast-json-stringify/-/fast-json-stringify-5.4.1.tgz} 802 | name: fast-json-stringify 803 | version: 5.4.1 804 | dependencies: 805 | '@fastify/deepmerge': registry.npmmirror.com/@fastify/deepmerge/1.1.0 806 | ajv: registry.npmmirror.com/ajv/8.11.0 807 | ajv-formats: registry.npmmirror.com/ajv-formats/2.1.1 808 | fast-deep-equal: registry.npmmirror.com/fast-deep-equal/3.1.3 809 | fast-uri: registry.npmmirror.com/fast-uri/2.1.0 810 | rfdc: registry.npmmirror.com/rfdc/1.3.0 811 | dev: false 812 | 813 | registry.npmmirror.com/fast-querystring/1.0.0: 814 | resolution: {integrity: sha512-3LQi62IhQoDlmt4ULCYmh17vRO2EtS7hTSsG4WwoKWgV7GLMKBOecEh+aiavASnLx8I2y89OD33AGLo0ccRhzA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/fast-querystring/-/fast-querystring-1.0.0.tgz} 815 | name: fast-querystring 816 | version: 1.0.0 817 | dependencies: 818 | fast-decode-uri-component: registry.npmmirror.com/fast-decode-uri-component/1.0.1 819 | dev: false 820 | 821 | registry.npmmirror.com/fast-redact/3.1.2: 822 | resolution: {integrity: sha512-+0em+Iya9fKGfEQGcd62Yv6onjBmmhV1uh86XVfOU8VwAe6kaFdQCWI9s0/Nnugx5Vd9tdbZ7e6gE2tR9dzXdw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/fast-redact/-/fast-redact-3.1.2.tgz} 823 | name: fast-redact 824 | version: 3.1.2 825 | engines: {node: '>=6'} 826 | dev: false 827 | 828 | registry.npmmirror.com/fast-safe-stringify/2.1.1: 829 | resolution: {integrity: sha512-W+KJc2dmILlPplD/H4K9l9LcAHAfPtP6BY84uVLXQ6Evcz9Lcg33Y2z1IVblT6xdY54PXYVHEv+0Wpq8Io6zkA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/fast-safe-stringify/-/fast-safe-stringify-2.1.1.tgz} 830 | name: fast-safe-stringify 831 | version: 2.1.1 832 | dev: false 833 | 834 | registry.npmmirror.com/fast-uri/2.1.0: 835 | resolution: {integrity: sha512-qKRta6N7BWEFVlyonVY/V+BMLgFqktCUV0QjT259ekAIlbVrMaFnFLxJ4s/JPl4tou56S1BzPufI60bLe29fHA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/fast-uri/-/fast-uri-2.1.0.tgz} 836 | name: fast-uri 837 | version: 2.1.0 838 | dev: false 839 | 840 | registry.npmmirror.com/fastify-cli/5.5.1: 841 | resolution: {integrity: sha512-ChxBQmobWZIRMVCAv6gqHosDoqm2rePEVcUSscQDc6s3HkTYMtGNYdeTsf28XKViUQI+Gty2YHItTkFt/X9uog==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/fastify-cli/-/fastify-cli-5.5.1.tgz} 842 | name: fastify-cli 843 | version: 5.5.1 844 | hasBin: true 845 | dependencies: 846 | chalk: registry.npmmirror.com/chalk/4.1.2 847 | chokidar: registry.npmmirror.com/chokidar/3.5.3 848 | close-with-grace: registry.npmmirror.com/close-with-grace/1.1.0 849 | commist: registry.npmmirror.com/commist/3.1.2 850 | dotenv: registry.npmmirror.com/dotenv/16.0.3 851 | fastify: registry.npmmirror.com/fastify/4.9.2 852 | generify: registry.npmmirror.com/generify/4.2.0 853 | help-me: registry.npmmirror.com/help-me/4.1.0 854 | is-docker: registry.npmmirror.com/is-docker/2.2.1 855 | make-promises-safe: registry.npmmirror.com/make-promises-safe/5.1.0 856 | pino-pretty: registry.npmmirror.com/pino-pretty/9.1.1 857 | pkg-up: registry.npmmirror.com/pkg-up/3.1.0 858 | resolve-from: registry.npmmirror.com/resolve-from/5.0.0 859 | semver: registry.npmmirror.com/semver/7.3.8 860 | yargs-parser: registry.npmmirror.com/yargs-parser/21.1.1 861 | transitivePeerDependencies: 862 | - supports-color 863 | dev: false 864 | 865 | registry.npmmirror.com/fastify-plugin/4.3.0: 866 | resolution: {integrity: sha512-M3+i368lV0OYTJ5TfClIoPKEKSOF7112iiPdwgfSR0gN98BjA1Nk+c6oBHtfcVt9KiMxl+EQKHC1QNWo3ZOpYQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/fastify-plugin/-/fastify-plugin-4.3.0.tgz} 867 | name: fastify-plugin 868 | version: 4.3.0 869 | dev: false 870 | 871 | registry.npmmirror.com/fastify/4.9.2: 872 | resolution: {integrity: sha512-Mk3hv7ZRet2huMYN6IJ8RGy1TAAC7LJsCEjxLf808zafAADNu43xRzbl7FSEIBxKyhntTM0F626Oc34LUNcUxQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/fastify/-/fastify-4.9.2.tgz} 873 | name: fastify 874 | version: 4.9.2 875 | dependencies: 876 | '@fastify/ajv-compiler': registry.npmmirror.com/@fastify/ajv-compiler/3.4.0 877 | '@fastify/error': registry.npmmirror.com/@fastify/error/3.0.0 878 | '@fastify/fast-json-stringify-compiler': registry.npmmirror.com/@fastify/fast-json-stringify-compiler/4.1.0 879 | abstract-logging: registry.npmmirror.com/abstract-logging/2.0.1 880 | avvio: registry.npmmirror.com/avvio/8.2.0 881 | find-my-way: registry.npmmirror.com/find-my-way/7.3.1 882 | light-my-request: registry.npmmirror.com/light-my-request/5.6.1 883 | pino: registry.npmmirror.com/pino/8.7.0 884 | process-warning: registry.npmmirror.com/process-warning/2.0.0 885 | proxy-addr: registry.npmmirror.com/proxy-addr/2.0.7 886 | rfdc: registry.npmmirror.com/rfdc/1.3.0 887 | secure-json-parse: registry.npmmirror.com/secure-json-parse/2.5.0 888 | semver: registry.npmmirror.com/semver/7.3.8 889 | tiny-lru: registry.npmmirror.com/tiny-lru/9.0.3 890 | transitivePeerDependencies: 891 | - supports-color 892 | dev: false 893 | 894 | registry.npmmirror.com/fastq/1.13.0: 895 | resolution: {integrity: sha512-YpkpUnK8od0o1hmeSc7UUs/eB/vIPWJYjKck2QKIzAf71Vm1AAQ3EbuZB3g2JIy+pg+ERD0vqI79KyZiB2e2Nw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/fastq/-/fastq-1.13.0.tgz} 896 | name: fastq 897 | version: 1.13.0 898 | dependencies: 899 | reusify: registry.npmmirror.com/reusify/1.0.4 900 | 901 | registry.npmmirror.com/fill-range/7.0.1: 902 | resolution: {integrity: sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/fill-range/-/fill-range-7.0.1.tgz} 903 | name: fill-range 904 | version: 7.0.1 905 | engines: {node: '>=8'} 906 | dependencies: 907 | to-regex-range: registry.npmmirror.com/to-regex-range/5.0.1 908 | 909 | registry.npmmirror.com/find-my-way/7.3.1: 910 | resolution: {integrity: sha512-kGvM08SOkqvheLcuQ8GW9t/H901Qb9rZEbcNWbXopzy4jDRoaJpJoObPSKf4MnQLZ20ZTp7rL5MpF6rf+pqmyg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/find-my-way/-/find-my-way-7.3.1.tgz} 911 | name: find-my-way 912 | version: 7.3.1 913 | engines: {node: '>=14'} 914 | dependencies: 915 | fast-deep-equal: registry.npmmirror.com/fast-deep-equal/3.1.3 916 | fast-querystring: registry.npmmirror.com/fast-querystring/1.0.0 917 | safe-regex2: registry.npmmirror.com/safe-regex2/2.0.0 918 | dev: false 919 | 920 | registry.npmmirror.com/find-up/3.0.0: 921 | resolution: {integrity: sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/find-up/-/find-up-3.0.0.tgz} 922 | name: find-up 923 | version: 3.0.0 924 | engines: {node: '>=6'} 925 | dependencies: 926 | locate-path: registry.npmmirror.com/locate-path/3.0.0 927 | dev: false 928 | 929 | registry.npmmirror.com/forwarded/0.2.0: 930 | resolution: {integrity: sha512-buRG0fpBtRHSTCOASe6hD258tEubFoRLb4ZNA6NxMVHNw2gOcwHo9wyablzMzOA5z9xA9L1KNjk/Nt6MT9aYow==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/forwarded/-/forwarded-0.2.0.tgz} 931 | name: forwarded 932 | version: 0.2.0 933 | engines: {node: '>= 0.6'} 934 | dev: false 935 | 936 | registry.npmmirror.com/fs.realpath/1.0.0: 937 | resolution: {integrity: sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/fs.realpath/-/fs.realpath-1.0.0.tgz} 938 | name: fs.realpath 939 | version: 1.0.0 940 | dev: false 941 | 942 | registry.npmmirror.com/fsevents/2.3.2: 943 | resolution: {integrity: sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/fsevents/-/fsevents-2.3.2.tgz} 944 | name: fsevents 945 | version: 2.3.2 946 | engines: {node: ^8.16.0 || ^10.6.0 || >=11.0.0} 947 | os: [darwin] 948 | requiresBuild: true 949 | dev: false 950 | optional: true 951 | 952 | registry.npmmirror.com/generify/4.2.0: 953 | resolution: {integrity: sha512-b4cVhbPfbgbCZtK0dcUc1lASitXGEAIqukV5DDAyWm25fomWnV+C+a1yXvqikcRZXHN2j0pSDyj3cTfzq8pC7Q==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/generify/-/generify-4.2.0.tgz} 954 | name: generify 955 | version: 4.2.0 956 | hasBin: true 957 | dependencies: 958 | isbinaryfile: registry.npmmirror.com/isbinaryfile/4.0.10 959 | pump: registry.npmmirror.com/pump/3.0.0 960 | split2: registry.npmmirror.com/split2/3.2.2 961 | walker: registry.npmmirror.com/walker/1.0.8 962 | dev: false 963 | 964 | registry.npmmirror.com/glob-parent/5.1.2: 965 | resolution: {integrity: sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/glob-parent/-/glob-parent-5.1.2.tgz} 966 | name: glob-parent 967 | version: 5.1.2 968 | engines: {node: '>= 6'} 969 | dependencies: 970 | is-glob: registry.npmmirror.com/is-glob/4.0.3 971 | 972 | registry.npmmirror.com/glob/8.0.3: 973 | resolution: {integrity: sha512-ull455NHSHI/Y1FqGaaYFaLGkNMMJbavMrEGFXG/PGrg6y7sutWHUHrz6gy6WEBH6akM1M414dWKCNs+IhKdiQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/glob/-/glob-8.0.3.tgz} 974 | name: glob 975 | version: 8.0.3 976 | engines: {node: '>=12'} 977 | dependencies: 978 | fs.realpath: registry.npmmirror.com/fs.realpath/1.0.0 979 | inflight: registry.npmmirror.com/inflight/1.0.6 980 | inherits: registry.npmmirror.com/inherits/2.0.4 981 | minimatch: registry.npmmirror.com/minimatch/5.1.0 982 | once: registry.npmmirror.com/once/1.4.0 983 | dev: false 984 | 985 | registry.npmmirror.com/has-flag/4.0.0: 986 | resolution: {integrity: sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/has-flag/-/has-flag-4.0.0.tgz} 987 | name: has-flag 988 | version: 4.0.0 989 | engines: {node: '>=8'} 990 | dev: false 991 | 992 | registry.npmmirror.com/help-me/4.1.0: 993 | resolution: {integrity: sha512-5HMrkOks2j8Fpu2j5nTLhrBhT7VwHwELpqnSnx802ckofys5MO2SkLpgSz3dgNFHV7IYFX2igm5CM75SmuYidw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/help-me/-/help-me-4.1.0.tgz} 994 | name: help-me 995 | version: 4.1.0 996 | dependencies: 997 | glob: registry.npmmirror.com/glob/8.0.3 998 | readable-stream: registry.npmmirror.com/readable-stream/3.6.0 999 | dev: false 1000 | 1001 | registry.npmmirror.com/http-errors/2.0.0: 1002 | resolution: {integrity: sha512-FtwrG/euBzaEjYeRqOgly7G0qviiXoJWnvEH2Z1plBdXgbyjv34pHTSb9zoeHMyDy33+DWy5Wt9Wo+TURtOYSQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/http-errors/-/http-errors-2.0.0.tgz} 1003 | name: http-errors 1004 | version: 2.0.0 1005 | engines: {node: '>= 0.8'} 1006 | dependencies: 1007 | depd: registry.npmmirror.com/depd/2.0.0 1008 | inherits: registry.npmmirror.com/inherits/2.0.4 1009 | setprototypeof: registry.npmmirror.com/setprototypeof/1.2.0 1010 | statuses: registry.npmmirror.com/statuses/2.0.1 1011 | toidentifier: registry.npmmirror.com/toidentifier/1.0.1 1012 | dev: false 1013 | 1014 | registry.npmmirror.com/http-status/1.5.3: 1015 | resolution: {integrity: sha512-jCClqdnnwigYslmtfb28vPplOgoiZ0siP2Z8C5Ua+3UKbx410v+c+jT+jh1bbI4TvcEySuX0vd/CfFZFbDkJeQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/http-status/-/http-status-1.5.3.tgz} 1016 | name: http-status 1017 | version: 1.5.3 1018 | engines: {node: '>= 0.4.0'} 1019 | dev: true 1020 | 1021 | registry.npmmirror.com/ieee754/1.2.1: 1022 | resolution: {integrity: sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/ieee754/-/ieee754-1.2.1.tgz} 1023 | name: ieee754 1024 | version: 1.2.1 1025 | dev: false 1026 | 1027 | registry.npmmirror.com/inflight/1.0.6: 1028 | resolution: {integrity: sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/inflight/-/inflight-1.0.6.tgz} 1029 | name: inflight 1030 | version: 1.0.6 1031 | dependencies: 1032 | once: registry.npmmirror.com/once/1.4.0 1033 | wrappy: registry.npmmirror.com/wrappy/1.0.2 1034 | dev: false 1035 | 1036 | registry.npmmirror.com/inherits/2.0.4: 1037 | resolution: {integrity: sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/inherits/-/inherits-2.0.4.tgz} 1038 | name: inherits 1039 | version: 2.0.4 1040 | dev: false 1041 | 1042 | registry.npmmirror.com/ipaddr.js/1.9.1: 1043 | resolution: {integrity: sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/ipaddr.js/-/ipaddr.js-1.9.1.tgz} 1044 | name: ipaddr.js 1045 | version: 1.9.1 1046 | engines: {node: '>= 0.10'} 1047 | dev: false 1048 | 1049 | registry.npmmirror.com/is-binary-path/2.1.0: 1050 | resolution: {integrity: sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/is-binary-path/-/is-binary-path-2.1.0.tgz} 1051 | name: is-binary-path 1052 | version: 2.1.0 1053 | engines: {node: '>=8'} 1054 | dependencies: 1055 | binary-extensions: registry.npmmirror.com/binary-extensions/2.2.0 1056 | dev: false 1057 | 1058 | registry.npmmirror.com/is-docker/2.2.1: 1059 | resolution: {integrity: sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/is-docker/-/is-docker-2.2.1.tgz} 1060 | name: is-docker 1061 | version: 2.2.1 1062 | engines: {node: '>=8'} 1063 | hasBin: true 1064 | dev: false 1065 | 1066 | registry.npmmirror.com/is-extglob/2.1.1: 1067 | resolution: {integrity: sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/is-extglob/-/is-extglob-2.1.1.tgz} 1068 | name: is-extglob 1069 | version: 2.1.1 1070 | engines: {node: '>=0.10.0'} 1071 | 1072 | registry.npmmirror.com/is-glob/4.0.3: 1073 | resolution: {integrity: sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/is-glob/-/is-glob-4.0.3.tgz} 1074 | name: is-glob 1075 | version: 4.0.3 1076 | engines: {node: '>=0.10.0'} 1077 | dependencies: 1078 | is-extglob: registry.npmmirror.com/is-extglob/2.1.1 1079 | 1080 | registry.npmmirror.com/is-number/7.0.0: 1081 | resolution: {integrity: sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/is-number/-/is-number-7.0.0.tgz} 1082 | name: is-number 1083 | version: 7.0.0 1084 | engines: {node: '>=0.12.0'} 1085 | 1086 | registry.npmmirror.com/isbinaryfile/4.0.10: 1087 | resolution: {integrity: sha512-iHrqe5shvBUcFbmZq9zOQHBoeOhZJu6RQGrDpBgenUm/Am+F3JM2MgQj+rK3Z601fzrL5gLZWtAPH2OBaSVcyw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/isbinaryfile/-/isbinaryfile-4.0.10.tgz} 1088 | name: isbinaryfile 1089 | version: 4.0.10 1090 | engines: {node: '>= 8.0.0'} 1091 | dev: false 1092 | 1093 | registry.npmmirror.com/joycon/3.1.1: 1094 | resolution: {integrity: sha512-34wB/Y7MW7bzjKRjUKTa46I2Z7eV62Rkhva+KkopW7Qvv/OSWBqvkSY7vusOPrNuZcUG3tApvdVgNB8POj3SPw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/joycon/-/joycon-3.1.1.tgz} 1095 | name: joycon 1096 | version: 3.1.1 1097 | engines: {node: '>=10'} 1098 | dev: false 1099 | 1100 | registry.npmmirror.com/json-schema-to-ts/1.6.4: 1101 | resolution: {integrity: sha512-pR4yQ9DHz6itqswtHCm26mw45FSNfQ9rEQjosaZErhn5J3J2sIViQiz8rDaezjKAhFGpmsoczYVBgGHzFw/stA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/json-schema-to-ts/-/json-schema-to-ts-1.6.4.tgz} 1102 | name: json-schema-to-ts 1103 | version: 1.6.4 1104 | dependencies: 1105 | '@types/json-schema': registry.npmmirror.com/@types/json-schema/7.0.11 1106 | ts-toolbelt: registry.npmmirror.com/ts-toolbelt/6.15.5 1107 | dev: true 1108 | 1109 | registry.npmmirror.com/json-schema-traverse/1.0.0: 1110 | resolution: {integrity: sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz} 1111 | name: json-schema-traverse 1112 | version: 1.0.0 1113 | 1114 | registry.npmmirror.com/light-my-request/5.6.1: 1115 | resolution: {integrity: sha512-sbJnC1UBRivi9L1kICr3CESb82pNiPNB3TvtdIrZZqW0Qh8uDXvoywMmWKZlihDcmw952CMICCzM+54LDf+E+g==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/light-my-request/-/light-my-request-5.6.1.tgz} 1116 | name: light-my-request 1117 | version: 5.6.1 1118 | dependencies: 1119 | cookie: registry.npmmirror.com/cookie/0.5.0 1120 | process-warning: registry.npmmirror.com/process-warning/2.0.0 1121 | set-cookie-parser: registry.npmmirror.com/set-cookie-parser/2.5.1 1122 | dev: false 1123 | 1124 | registry.npmmirror.com/locate-path/3.0.0: 1125 | resolution: {integrity: sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/locate-path/-/locate-path-3.0.0.tgz} 1126 | name: locate-path 1127 | version: 3.0.0 1128 | engines: {node: '>=6'} 1129 | dependencies: 1130 | p-locate: registry.npmmirror.com/p-locate/3.0.0 1131 | path-exists: registry.npmmirror.com/path-exists/3.0.0 1132 | dev: false 1133 | 1134 | registry.npmmirror.com/lru-cache/6.0.0: 1135 | resolution: {integrity: sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/lru-cache/-/lru-cache-6.0.0.tgz} 1136 | name: lru-cache 1137 | version: 6.0.0 1138 | engines: {node: '>=10'} 1139 | dependencies: 1140 | yallist: registry.npmmirror.com/yallist/4.0.0 1141 | dev: false 1142 | 1143 | registry.npmmirror.com/make-error/1.3.6: 1144 | resolution: {integrity: sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/make-error/-/make-error-1.3.6.tgz} 1145 | name: make-error 1146 | version: 1.3.6 1147 | dev: true 1148 | 1149 | registry.npmmirror.com/make-promises-safe/5.1.0: 1150 | resolution: {integrity: sha512-AfdZ49rtyhQR/6cqVKGoH7y4ql7XkS5HJI1lZm0/5N6CQosy1eYbBJ/qbhkKHzo17UH7M918Bysf6XB9f3kS1g==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/make-promises-safe/-/make-promises-safe-5.1.0.tgz} 1151 | name: make-promises-safe 1152 | version: 5.1.0 1153 | dev: false 1154 | 1155 | registry.npmmirror.com/makeerror/1.0.12: 1156 | resolution: {integrity: sha512-JmqCvUhmt43madlpFzG4BQzG2Z3m6tvQDNKdClZnO3VbIudJYmxsT0FNJMeiB2+JTSlTQTSbU8QdesVmwJcmLg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/makeerror/-/makeerror-1.0.12.tgz} 1157 | name: makeerror 1158 | version: 1.0.12 1159 | dependencies: 1160 | tmpl: registry.npmmirror.com/tmpl/1.0.5 1161 | dev: false 1162 | 1163 | registry.npmmirror.com/media-typer/0.3.0: 1164 | resolution: {integrity: sha512-dq+qelQ9akHpcOl/gUVRTxVIOkAJ1wR3QAvb4RsVjS8oVoFjDGTc679wJYmUmknUF5HwMLOgb5O+a3KxfWapPQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/media-typer/-/media-typer-0.3.0.tgz} 1165 | name: media-typer 1166 | version: 0.3.0 1167 | engines: {node: '>= 0.6'} 1168 | dev: false 1169 | 1170 | registry.npmmirror.com/merge2/1.4.1: 1171 | resolution: {integrity: sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/merge2/-/merge2-1.4.1.tgz} 1172 | name: merge2 1173 | version: 1.4.1 1174 | engines: {node: '>= 8'} 1175 | dev: true 1176 | 1177 | registry.npmmirror.com/micromatch/4.0.5: 1178 | resolution: {integrity: sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/micromatch/-/micromatch-4.0.5.tgz} 1179 | name: micromatch 1180 | version: 4.0.5 1181 | engines: {node: '>=8.6'} 1182 | dependencies: 1183 | braces: registry.npmmirror.com/braces/3.0.2 1184 | picomatch: registry.npmmirror.com/picomatch/2.3.1 1185 | dev: true 1186 | 1187 | registry.npmmirror.com/mime-db/1.52.0: 1188 | resolution: {integrity: sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/mime-db/-/mime-db-1.52.0.tgz} 1189 | name: mime-db 1190 | version: 1.52.0 1191 | engines: {node: '>= 0.6'} 1192 | dev: false 1193 | 1194 | registry.npmmirror.com/mime-types/2.1.35: 1195 | resolution: {integrity: sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/mime-types/-/mime-types-2.1.35.tgz} 1196 | name: mime-types 1197 | version: 2.1.35 1198 | engines: {node: '>= 0.6'} 1199 | dependencies: 1200 | mime-db: registry.npmmirror.com/mime-db/1.52.0 1201 | dev: false 1202 | 1203 | registry.npmmirror.com/minimatch/3.1.2: 1204 | resolution: {integrity: sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/minimatch/-/minimatch-3.1.2.tgz} 1205 | name: minimatch 1206 | version: 3.1.2 1207 | dependencies: 1208 | brace-expansion: registry.npmmirror.com/brace-expansion/1.1.11 1209 | dev: true 1210 | 1211 | registry.npmmirror.com/minimatch/5.1.0: 1212 | resolution: {integrity: sha512-9TPBGGak4nHfGZsPBohm9AWg6NoT7QTCehS3BIJABslyZbzxfV78QM2Y6+i741OPZIafFAaiiEMh5OyIrJPgtg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/minimatch/-/minimatch-5.1.0.tgz} 1213 | name: minimatch 1214 | version: 5.1.0 1215 | engines: {node: '>=10'} 1216 | dependencies: 1217 | brace-expansion: registry.npmmirror.com/brace-expansion/2.0.1 1218 | dev: false 1219 | 1220 | registry.npmmirror.com/minimist/1.2.7: 1221 | resolution: {integrity: sha512-bzfL1YUZsP41gmu/qjrEk0Q6i2ix/cVeAhbCbqH9u3zYutS1cLg00qhrD0M2MVdCcx4Sc0UpP2eBWo9rotpq6g==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/minimist/-/minimist-1.2.7.tgz} 1222 | name: minimist 1223 | version: 1.2.7 1224 | dev: false 1225 | 1226 | registry.npmmirror.com/mkdirp/1.0.4: 1227 | resolution: {integrity: sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/mkdirp/-/mkdirp-1.0.4.tgz} 1228 | name: mkdirp 1229 | version: 1.0.4 1230 | engines: {node: '>=10'} 1231 | hasBin: true 1232 | dev: true 1233 | 1234 | registry.npmmirror.com/mri/1.2.0: 1235 | resolution: {integrity: sha512-tzzskb3bG8LvYGFF/mDTpq3jpI6Q9wc3LEmBaghu+DdCssd1FakN7Bc0hVNmEyGq1bq3RgfkCb3cmQLpNPOroA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/mri/-/mri-1.2.0.tgz} 1236 | name: mri 1237 | version: 1.2.0 1238 | engines: {node: '>=4'} 1239 | dev: true 1240 | 1241 | registry.npmmirror.com/ms/2.1.2: 1242 | resolution: {integrity: sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/ms/-/ms-2.1.2.tgz} 1243 | name: ms 1244 | version: 2.1.2 1245 | dev: false 1246 | 1247 | registry.npmmirror.com/ms/2.1.3: 1248 | resolution: {integrity: sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/ms/-/ms-2.1.3.tgz} 1249 | name: ms 1250 | version: 2.1.3 1251 | dev: false 1252 | 1253 | registry.npmmirror.com/node-fetch/2.6.7: 1254 | resolution: {integrity: sha512-ZjMPFEfVx5j+y2yF35Kzx5sF7kDzxuDj6ziH4FFbOp87zKDZNx8yExJIb05OGF4Nlt9IHFIMBkRl41VdvcNdbQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/node-fetch/-/node-fetch-2.6.7.tgz} 1255 | name: node-fetch 1256 | version: 2.6.7 1257 | engines: {node: 4.x || >=6.0.0} 1258 | peerDependencies: 1259 | encoding: ^0.1.0 1260 | peerDependenciesMeta: 1261 | encoding: 1262 | optional: true 1263 | dependencies: 1264 | whatwg-url: registry.npmmirror.com/whatwg-url/5.0.0 1265 | dev: true 1266 | 1267 | registry.npmmirror.com/normalize-path/3.0.0: 1268 | resolution: {integrity: sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/normalize-path/-/normalize-path-3.0.0.tgz} 1269 | name: normalize-path 1270 | version: 3.0.0 1271 | engines: {node: '>=0.10.0'} 1272 | dev: false 1273 | 1274 | registry.npmmirror.com/on-exit-leak-free/2.1.0: 1275 | resolution: {integrity: sha512-VuCaZZAjReZ3vUwgOB8LxAosIurDiAW0s13rI1YwmaP++jvcxP77AWoQvenZebpCA2m8WC1/EosPYPMjnRAp/w==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/on-exit-leak-free/-/on-exit-leak-free-2.1.0.tgz} 1276 | name: on-exit-leak-free 1277 | version: 2.1.0 1278 | dev: false 1279 | 1280 | registry.npmmirror.com/once/1.4.0: 1281 | resolution: {integrity: sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/once/-/once-1.4.0.tgz} 1282 | name: once 1283 | version: 1.4.0 1284 | dependencies: 1285 | wrappy: registry.npmmirror.com/wrappy/1.0.2 1286 | dev: false 1287 | 1288 | registry.npmmirror.com/p-limit/2.3.0: 1289 | resolution: {integrity: sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/p-limit/-/p-limit-2.3.0.tgz} 1290 | name: p-limit 1291 | version: 2.3.0 1292 | engines: {node: '>=6'} 1293 | dependencies: 1294 | p-try: registry.npmmirror.com/p-try/2.2.0 1295 | dev: false 1296 | 1297 | registry.npmmirror.com/p-locate/3.0.0: 1298 | resolution: {integrity: sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/p-locate/-/p-locate-3.0.0.tgz} 1299 | name: p-locate 1300 | version: 3.0.0 1301 | engines: {node: '>=6'} 1302 | dependencies: 1303 | p-limit: registry.npmmirror.com/p-limit/2.3.0 1304 | dev: false 1305 | 1306 | registry.npmmirror.com/p-try/2.2.0: 1307 | resolution: {integrity: sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/p-try/-/p-try-2.2.0.tgz} 1308 | name: p-try 1309 | version: 2.2.0 1310 | engines: {node: '>=6'} 1311 | dev: false 1312 | 1313 | registry.npmmirror.com/parse-ms/2.1.0: 1314 | resolution: {integrity: sha512-kHt7kzLoS9VBZfUsiKjv43mr91ea+U05EyKkEtqp7vNbHxmaVuEqN7XxeEVnGrMtYOAxGrDElSi96K7EgO1zCA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/parse-ms/-/parse-ms-2.1.0.tgz} 1315 | name: parse-ms 1316 | version: 2.1.0 1317 | engines: {node: '>=6'} 1318 | dev: true 1319 | 1320 | registry.npmmirror.com/path-browserify/1.0.1: 1321 | resolution: {integrity: sha512-b7uo2UCUOYZcnF/3ID0lulOJi/bafxa1xPe7ZPsammBSpjSWQkjNxlt635YGS2MiR9GjvuXCtz2emr3jbsz98g==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/path-browserify/-/path-browserify-1.0.1.tgz} 1322 | name: path-browserify 1323 | version: 1.0.1 1324 | dev: true 1325 | 1326 | registry.npmmirror.com/path-exists/3.0.0: 1327 | resolution: {integrity: sha512-bpC7GYwiDYQ4wYLe+FA8lhRjhQCMcQGuSgGGqDkg/QerRWw9CmGRT0iSOVRSZJ29NMLZgIzqaljJ63oaL4NIJQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/path-exists/-/path-exists-3.0.0.tgz} 1328 | name: path-exists 1329 | version: 3.0.0 1330 | engines: {node: '>=4'} 1331 | dev: false 1332 | 1333 | registry.npmmirror.com/picocolors/1.0.0: 1334 | resolution: {integrity: sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/picocolors/-/picocolors-1.0.0.tgz} 1335 | name: picocolors 1336 | version: 1.0.0 1337 | dev: true 1338 | 1339 | registry.npmmirror.com/picomatch/2.3.1: 1340 | resolution: {integrity: sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/picomatch/-/picomatch-2.3.1.tgz} 1341 | name: picomatch 1342 | version: 2.3.1 1343 | engines: {node: '>=8.6'} 1344 | 1345 | registry.npmmirror.com/pino-abstract-transport/1.0.0: 1346 | resolution: {integrity: sha512-c7vo5OpW4wIS42hUVcT5REsL8ZljsUfBjqV/e2sFxmFEFZiq1XLUp5EYLtuDH6PEHq9W1egWqRbnLUP5FuZmOA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/pino-abstract-transport/-/pino-abstract-transport-1.0.0.tgz} 1347 | name: pino-abstract-transport 1348 | version: 1.0.0 1349 | dependencies: 1350 | readable-stream: registry.npmmirror.com/readable-stream/4.2.0 1351 | split2: registry.npmmirror.com/split2/4.1.0 1352 | dev: false 1353 | 1354 | registry.npmmirror.com/pino-pretty/9.1.1: 1355 | resolution: {integrity: sha512-iJrnjgR4FWQIXZkUF48oNgoRI9BpyMhaEmihonHeCnZ6F50ZHAS4YGfGBT/ZVNsPmd+hzkIPGzjKdY08+/yAXw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/pino-pretty/-/pino-pretty-9.1.1.tgz} 1356 | name: pino-pretty 1357 | version: 9.1.1 1358 | hasBin: true 1359 | dependencies: 1360 | colorette: registry.npmmirror.com/colorette/2.0.19 1361 | dateformat: registry.npmmirror.com/dateformat/4.6.3 1362 | fast-copy: registry.npmmirror.com/fast-copy/3.0.0 1363 | fast-safe-stringify: registry.npmmirror.com/fast-safe-stringify/2.1.1 1364 | help-me: registry.npmmirror.com/help-me/4.1.0 1365 | joycon: registry.npmmirror.com/joycon/3.1.1 1366 | minimist: registry.npmmirror.com/minimist/1.2.7 1367 | on-exit-leak-free: registry.npmmirror.com/on-exit-leak-free/2.1.0 1368 | pino-abstract-transport: registry.npmmirror.com/pino-abstract-transport/1.0.0 1369 | pump: registry.npmmirror.com/pump/3.0.0 1370 | readable-stream: registry.npmmirror.com/readable-stream/4.2.0 1371 | secure-json-parse: registry.npmmirror.com/secure-json-parse/2.5.0 1372 | sonic-boom: registry.npmmirror.com/sonic-boom/3.2.0 1373 | strip-json-comments: registry.npmmirror.com/strip-json-comments/3.1.1 1374 | dev: false 1375 | 1376 | registry.npmmirror.com/pino-std-serializers/6.0.0: 1377 | resolution: {integrity: sha512-mMMOwSKrmyl+Y12Ri2xhH1lbzQxwwpuru9VjyJpgFIH4asSj88F2csdMwN6+M5g1Ll4rmsYghHLQJw81tgZ7LQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/pino-std-serializers/-/pino-std-serializers-6.0.0.tgz} 1378 | name: pino-std-serializers 1379 | version: 6.0.0 1380 | dev: false 1381 | 1382 | registry.npmmirror.com/pino/8.7.0: 1383 | resolution: {integrity: sha512-l9sA5uPxmZzwydhMWUcm1gI0YxNnYl8MfSr2h8cwLvOAzQLBLewzF247h/vqHe3/tt6fgtXeG9wdjjoetdI/vA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/pino/-/pino-8.7.0.tgz} 1384 | name: pino 1385 | version: 8.7.0 1386 | hasBin: true 1387 | dependencies: 1388 | atomic-sleep: registry.npmmirror.com/atomic-sleep/1.0.0 1389 | fast-redact: registry.npmmirror.com/fast-redact/3.1.2 1390 | on-exit-leak-free: registry.npmmirror.com/on-exit-leak-free/2.1.0 1391 | pino-abstract-transport: registry.npmmirror.com/pino-abstract-transport/1.0.0 1392 | pino-std-serializers: registry.npmmirror.com/pino-std-serializers/6.0.0 1393 | process-warning: registry.npmmirror.com/process-warning/2.0.0 1394 | quick-format-unescaped: registry.npmmirror.com/quick-format-unescaped/4.0.4 1395 | real-require: registry.npmmirror.com/real-require/0.2.0 1396 | safe-stable-stringify: registry.npmmirror.com/safe-stable-stringify/2.4.1 1397 | sonic-boom: registry.npmmirror.com/sonic-boom/3.2.0 1398 | thread-stream: registry.npmmirror.com/thread-stream/2.2.0 1399 | dev: false 1400 | 1401 | registry.npmmirror.com/pkg-up/3.1.0: 1402 | resolution: {integrity: sha512-nDywThFk1i4BQK4twPQ6TA4RT8bDY96yeuCVBWL3ePARCiEKDRSrNGbFIgUJpLp+XeIR65v8ra7WuJOFUBtkMA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/pkg-up/-/pkg-up-3.1.0.tgz} 1403 | name: pkg-up 1404 | version: 3.1.0 1405 | engines: {node: '>=8'} 1406 | dependencies: 1407 | find-up: registry.npmmirror.com/find-up/3.0.0 1408 | dev: false 1409 | 1410 | registry.npmmirror.com/pretty-bytes/5.6.0: 1411 | resolution: {integrity: sha512-FFw039TmrBqFK8ma/7OL3sDz/VytdtJr044/QUJtH0wK9lb9jLq9tJyIxUwtQJHwar2BqtiA4iCWSwo9JLkzFg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/pretty-bytes/-/pretty-bytes-5.6.0.tgz} 1412 | name: pretty-bytes 1413 | version: 5.6.0 1414 | engines: {node: '>=6'} 1415 | dev: true 1416 | 1417 | registry.npmmirror.com/pretty-ms/7.0.1: 1418 | resolution: {integrity: sha512-973driJZvxiGOQ5ONsFhOF/DtzPMOMtgC11kCpUrPGMTgqp2q/1gwzCquocrN33is0VZ5GFHXZYMM9l6h67v2Q==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/pretty-ms/-/pretty-ms-7.0.1.tgz} 1419 | name: pretty-ms 1420 | version: 7.0.1 1421 | engines: {node: '>=10'} 1422 | dependencies: 1423 | parse-ms: registry.npmmirror.com/parse-ms/2.1.0 1424 | dev: true 1425 | 1426 | registry.npmmirror.com/process-warning/2.0.0: 1427 | resolution: {integrity: sha512-+MmoAXoUX+VTHAlwns0h+kFUWFs/3FZy+ZuchkgjyOu3oioLAo2LB5aCfKPh2+P9O18i3m43tUEv3YqttSy0Ww==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/process-warning/-/process-warning-2.0.0.tgz} 1428 | name: process-warning 1429 | version: 2.0.0 1430 | dev: false 1431 | 1432 | registry.npmmirror.com/process/0.11.10: 1433 | resolution: {integrity: sha512-cdGef/drWFoydD1JsMzuFf8100nZl+GT+yacc2bEced5f9Rjk4z+WtFUTBu9PhOi9j/jfmBPu0mMEY4wIdAF8A==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/process/-/process-0.11.10.tgz} 1434 | name: process 1435 | version: 0.11.10 1436 | engines: {node: '>= 0.6.0'} 1437 | dev: false 1438 | 1439 | registry.npmmirror.com/proxy-addr/2.0.7: 1440 | resolution: {integrity: sha512-llQsMLSUDUPT44jdrU/O37qlnifitDP+ZwrmmZcoSKyLKvtZxpyV0n2/bD/N4tBAAZ/gJEdZU7KMraoK1+XYAg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/proxy-addr/-/proxy-addr-2.0.7.tgz} 1441 | name: proxy-addr 1442 | version: 2.0.7 1443 | engines: {node: '>= 0.10'} 1444 | dependencies: 1445 | forwarded: registry.npmmirror.com/forwarded/0.2.0 1446 | ipaddr.js: registry.npmmirror.com/ipaddr.js/1.9.1 1447 | dev: false 1448 | 1449 | registry.npmmirror.com/pump/3.0.0: 1450 | resolution: {integrity: sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/pump/-/pump-3.0.0.tgz} 1451 | name: pump 1452 | version: 3.0.0 1453 | dependencies: 1454 | end-of-stream: registry.npmmirror.com/end-of-stream/1.4.4 1455 | once: registry.npmmirror.com/once/1.4.0 1456 | dev: false 1457 | 1458 | registry.npmmirror.com/punycode/2.1.1: 1459 | resolution: {integrity: sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/punycode/-/punycode-2.1.1.tgz} 1460 | name: punycode 1461 | version: 2.1.1 1462 | engines: {node: '>=6'} 1463 | 1464 | registry.npmmirror.com/queue-microtask/1.2.3: 1465 | resolution: {integrity: sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/queue-microtask/-/queue-microtask-1.2.3.tgz} 1466 | name: queue-microtask 1467 | version: 1.2.3 1468 | dev: true 1469 | 1470 | registry.npmmirror.com/quick-format-unescaped/4.0.4: 1471 | resolution: {integrity: sha512-tYC1Q1hgyRuHgloV/YXs2w15unPVh8qfu/qCTfhTYamaw7fyhumKa2yGpdSo87vY32rIclj+4fWYQXUMs9EHvg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/quick-format-unescaped/-/quick-format-unescaped-4.0.4.tgz} 1472 | name: quick-format-unescaped 1473 | version: 4.0.4 1474 | dev: false 1475 | 1476 | registry.npmmirror.com/readable-stream/3.6.0: 1477 | resolution: {integrity: sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/readable-stream/-/readable-stream-3.6.0.tgz} 1478 | name: readable-stream 1479 | version: 3.6.0 1480 | engines: {node: '>= 6'} 1481 | dependencies: 1482 | inherits: registry.npmmirror.com/inherits/2.0.4 1483 | string_decoder: registry.npmmirror.com/string_decoder/1.3.0 1484 | util-deprecate: registry.npmmirror.com/util-deprecate/1.0.2 1485 | dev: false 1486 | 1487 | registry.npmmirror.com/readable-stream/4.2.0: 1488 | resolution: {integrity: sha512-gJrBHsaI3lgBoGMW/jHZsQ/o/TIWiu5ENCJG1BB7fuCKzpFM8GaS2UoBVt9NO+oI+3FcrBNbUkl3ilDe09aY4A==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/readable-stream/-/readable-stream-4.2.0.tgz} 1489 | name: readable-stream 1490 | version: 4.2.0 1491 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} 1492 | dependencies: 1493 | abort-controller: registry.npmmirror.com/abort-controller/3.0.0 1494 | buffer: registry.npmmirror.com/buffer/6.0.3 1495 | events: registry.npmmirror.com/events/3.3.0 1496 | process: registry.npmmirror.com/process/0.11.10 1497 | dev: false 1498 | 1499 | registry.npmmirror.com/readdirp/3.6.0: 1500 | resolution: {integrity: sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/readdirp/-/readdirp-3.6.0.tgz} 1501 | name: readdirp 1502 | version: 3.6.0 1503 | engines: {node: '>=8.10.0'} 1504 | dependencies: 1505 | picomatch: registry.npmmirror.com/picomatch/2.3.1 1506 | dev: false 1507 | 1508 | registry.npmmirror.com/real-require/0.2.0: 1509 | resolution: {integrity: sha512-57frrGM/OCTLqLOAh0mhVA9VBMHd+9U7Zb2THMGdBUoZVOtGbJzjxsYGDJ3A9AYYCP4hn6y1TVbaOfzWtm5GFg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/real-require/-/real-require-0.2.0.tgz} 1510 | name: real-require 1511 | version: 0.2.0 1512 | engines: {node: '>= 12.13.0'} 1513 | dev: false 1514 | 1515 | registry.npmmirror.com/require-from-string/2.0.2: 1516 | resolution: {integrity: sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/require-from-string/-/require-from-string-2.0.2.tgz} 1517 | name: require-from-string 1518 | version: 2.0.2 1519 | engines: {node: '>=0.10.0'} 1520 | 1521 | registry.npmmirror.com/resolve-from/5.0.0: 1522 | resolution: {integrity: sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/resolve-from/-/resolve-from-5.0.0.tgz} 1523 | name: resolve-from 1524 | version: 5.0.0 1525 | engines: {node: '>=8'} 1526 | dev: false 1527 | 1528 | registry.npmmirror.com/ret/0.2.2: 1529 | resolution: {integrity: sha512-M0b3YWQs7R3Z917WRQy1HHA7Ba7D8hvZg6UE5mLykJxQVE2ju0IXbGlaHPPlkY+WN7wFP+wUMXmBFA0aV6vYGQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/ret/-/ret-0.2.2.tgz} 1530 | name: ret 1531 | version: 0.2.2 1532 | engines: {node: '>=4'} 1533 | dev: false 1534 | 1535 | registry.npmmirror.com/reusify/1.0.4: 1536 | resolution: {integrity: sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/reusify/-/reusify-1.0.4.tgz} 1537 | name: reusify 1538 | version: 1.0.4 1539 | engines: {iojs: '>=1.0.0', node: '>=0.10.0'} 1540 | 1541 | registry.npmmirror.com/rfdc/1.3.0: 1542 | resolution: {integrity: sha512-V2hovdzFbOi77/WajaSMXk2OLm+xNIeQdMMuB7icj7bk6zi2F8GGAxigcnDFpJHbNyNcgyJDiP+8nOrY5cZGrA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/rfdc/-/rfdc-1.3.0.tgz} 1543 | name: rfdc 1544 | version: 1.3.0 1545 | dev: false 1546 | 1547 | registry.npmmirror.com/run-parallel/1.2.0: 1548 | resolution: {integrity: sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/run-parallel/-/run-parallel-1.2.0.tgz} 1549 | name: run-parallel 1550 | version: 1.2.0 1551 | dependencies: 1552 | queue-microtask: registry.npmmirror.com/queue-microtask/1.2.3 1553 | dev: true 1554 | 1555 | registry.npmmirror.com/safe-buffer/5.2.1: 1556 | resolution: {integrity: sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/safe-buffer/-/safe-buffer-5.2.1.tgz} 1557 | name: safe-buffer 1558 | version: 5.2.1 1559 | dev: false 1560 | 1561 | registry.npmmirror.com/safe-regex2/2.0.0: 1562 | resolution: {integrity: sha512-PaUSFsUaNNuKwkBijoAPHAK6/eM6VirvyPWlZ7BAQy4D+hCvh4B6lIG+nPdhbFfIbP+gTGBcrdsOaUs0F+ZBOQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/safe-regex2/-/safe-regex2-2.0.0.tgz} 1563 | name: safe-regex2 1564 | version: 2.0.0 1565 | dependencies: 1566 | ret: registry.npmmirror.com/ret/0.2.2 1567 | dev: false 1568 | 1569 | registry.npmmirror.com/safe-stable-stringify/2.4.1: 1570 | resolution: {integrity: sha512-dVHE6bMtS/bnL2mwualjc6IxEv1F+OCUpA46pKUj6F8uDbUM0jCCulPqRNPSnWwGNKx5etqMjZYdXtrm5KJZGA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/safe-stable-stringify/-/safe-stable-stringify-2.4.1.tgz} 1571 | name: safe-stable-stringify 1572 | version: 2.4.1 1573 | engines: {node: '>=10'} 1574 | dev: false 1575 | 1576 | registry.npmmirror.com/secure-json-parse/2.5.0: 1577 | resolution: {integrity: sha512-ZQruFgZnIWH+WyO9t5rWt4ZEGqCKPwhiw+YbzTwpmT9elgLrLcfuyUiSnwwjUiVy9r4VM3urtbNF1xmEh9IL2w==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/secure-json-parse/-/secure-json-parse-2.5.0.tgz} 1578 | name: secure-json-parse 1579 | version: 2.5.0 1580 | dev: false 1581 | 1582 | registry.npmmirror.com/semver/7.3.8: 1583 | resolution: {integrity: sha512-NB1ctGL5rlHrPJtFDVIVzTyQylMLu9N9VICA6HSFJo8MCGVTMW6gfpicwKmmK/dAjTOrqu5l63JJOpDSrAis3A==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/semver/-/semver-7.3.8.tgz} 1584 | name: semver 1585 | version: 7.3.8 1586 | engines: {node: '>=10'} 1587 | hasBin: true 1588 | dependencies: 1589 | lru-cache: registry.npmmirror.com/lru-cache/6.0.0 1590 | dev: false 1591 | 1592 | registry.npmmirror.com/set-cookie-parser/2.5.1: 1593 | resolution: {integrity: sha512-1jeBGaKNGdEq4FgIrORu/N570dwoPYio8lSoYLWmX7sQ//0JY08Xh9o5pBcgmHQ/MbsYp/aZnOe1s1lIsbLprQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/set-cookie-parser/-/set-cookie-parser-2.5.1.tgz} 1594 | name: set-cookie-parser 1595 | version: 2.5.1 1596 | dev: false 1597 | 1598 | registry.npmmirror.com/setprototypeof/1.2.0: 1599 | resolution: {integrity: sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/setprototypeof/-/setprototypeof-1.2.0.tgz} 1600 | name: setprototypeof 1601 | version: 1.2.0 1602 | dev: false 1603 | 1604 | registry.npmmirror.com/sonic-boom/3.2.0: 1605 | resolution: {integrity: sha512-SbbZ+Kqj/XIunvIAgUZRlqd6CGQYq71tRRbXR92Za8J/R3Yh4Av+TWENiSiEgnlwckYLyP0YZQWVfyNC0dzLaA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/sonic-boom/-/sonic-boom-3.2.0.tgz} 1606 | name: sonic-boom 1607 | version: 3.2.0 1608 | dependencies: 1609 | atomic-sleep: registry.npmmirror.com/atomic-sleep/1.0.0 1610 | dev: false 1611 | 1612 | registry.npmmirror.com/source-map-support/0.5.21: 1613 | resolution: {integrity: sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/source-map-support/-/source-map-support-0.5.21.tgz} 1614 | name: source-map-support 1615 | version: 0.5.21 1616 | dependencies: 1617 | buffer-from: registry.npmmirror.com/buffer-from/1.1.2 1618 | source-map: registry.npmmirror.com/source-map/0.6.1 1619 | dev: true 1620 | 1621 | registry.npmmirror.com/source-map/0.6.1: 1622 | resolution: {integrity: sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/source-map/-/source-map-0.6.1.tgz} 1623 | name: source-map 1624 | version: 0.6.1 1625 | engines: {node: '>=0.10.0'} 1626 | dev: true 1627 | 1628 | registry.npmmirror.com/split2/3.2.2: 1629 | resolution: {integrity: sha512-9NThjpgZnifTkJpzTZ7Eue85S49QwpNhZTq6GRJwObb6jnLFNGB7Qm73V5HewTROPyxD0C29xqmaI68bQtV+hg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/split2/-/split2-3.2.2.tgz} 1630 | name: split2 1631 | version: 3.2.2 1632 | dependencies: 1633 | readable-stream: registry.npmmirror.com/readable-stream/3.6.0 1634 | dev: false 1635 | 1636 | registry.npmmirror.com/split2/4.1.0: 1637 | resolution: {integrity: sha512-VBiJxFkxiXRlUIeyMQi8s4hgvKCSjtknJv/LVYbrgALPwf5zSKmEwV9Lst25AkvMDnvxODugjdl6KZgwKM1WYQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/split2/-/split2-4.1.0.tgz} 1638 | name: split2 1639 | version: 4.1.0 1640 | engines: {node: '>= 10.x'} 1641 | dev: false 1642 | 1643 | registry.npmmirror.com/statuses/2.0.1: 1644 | resolution: {integrity: sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/statuses/-/statuses-2.0.1.tgz} 1645 | name: statuses 1646 | version: 2.0.1 1647 | engines: {node: '>= 0.8'} 1648 | dev: false 1649 | 1650 | registry.npmmirror.com/string_decoder/1.3.0: 1651 | resolution: {integrity: sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/string_decoder/-/string_decoder-1.3.0.tgz} 1652 | name: string_decoder 1653 | version: 1.3.0 1654 | dependencies: 1655 | safe-buffer: registry.npmmirror.com/safe-buffer/5.2.1 1656 | dev: false 1657 | 1658 | registry.npmmirror.com/strip-json-comments/3.1.1: 1659 | resolution: {integrity: sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/strip-json-comments/-/strip-json-comments-3.1.1.tgz} 1660 | name: strip-json-comments 1661 | version: 3.1.1 1662 | engines: {node: '>=8'} 1663 | dev: false 1664 | 1665 | registry.npmmirror.com/supports-color/7.2.0: 1666 | resolution: {integrity: sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/supports-color/-/supports-color-7.2.0.tgz} 1667 | name: supports-color 1668 | version: 7.2.0 1669 | engines: {node: '>=8'} 1670 | dependencies: 1671 | has-flag: registry.npmmirror.com/has-flag/4.0.0 1672 | dev: false 1673 | 1674 | registry.npmmirror.com/thread-stream/2.2.0: 1675 | resolution: {integrity: sha512-rUkv4/fnb4rqy/gGy7VuqK6wE1+1DOCOWy4RMeaV69ZHMP11tQKZvZSip1yTgrKCMZzEMcCL/bKfHvSfDHx+iQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/thread-stream/-/thread-stream-2.2.0.tgz} 1676 | name: thread-stream 1677 | version: 2.2.0 1678 | dependencies: 1679 | real-require: registry.npmmirror.com/real-require/0.2.0 1680 | dev: false 1681 | 1682 | registry.npmmirror.com/time-span/4.0.0: 1683 | resolution: {integrity: sha512-MyqZCTGLDZ77u4k+jqg4UlrzPTPZ49NDlaekU6uuFaJLzPIN1woaRXCbGeqOfxwc3Y37ZROGAJ614Rdv7Olt+g==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/time-span/-/time-span-4.0.0.tgz} 1684 | name: time-span 1685 | version: 4.0.0 1686 | engines: {node: '>=10'} 1687 | dependencies: 1688 | convert-hrtime: registry.npmmirror.com/convert-hrtime/3.0.0 1689 | dev: true 1690 | 1691 | registry.npmmirror.com/tiny-lru/9.0.3: 1692 | resolution: {integrity: sha512-/i9GruRjXsnDgehxvy6iZ4AFNVxngEFbwzirhdulomMNPGPVV3ECMZOWSw0w4sRMZ9Al9m4jy08GPvRxRUGYlw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/tiny-lru/-/tiny-lru-9.0.3.tgz} 1693 | name: tiny-lru 1694 | version: 9.0.3 1695 | engines: {node: '>=6'} 1696 | dev: false 1697 | 1698 | registry.npmmirror.com/tmpl/1.0.5: 1699 | resolution: {integrity: sha512-3f0uOEAQwIqGuWW2MVzYg8fV/QNnc/IpuJNG837rLuczAaLVHslWHZQj4IGiEl5Hs3kkbhwL9Ab7Hrsmuj+Smw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/tmpl/-/tmpl-1.0.5.tgz} 1700 | name: tmpl 1701 | version: 1.0.5 1702 | dev: false 1703 | 1704 | registry.npmmirror.com/to-regex-range/5.0.1: 1705 | resolution: {integrity: sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/to-regex-range/-/to-regex-range-5.0.1.tgz} 1706 | name: to-regex-range 1707 | version: 5.0.1 1708 | engines: {node: '>=8.0'} 1709 | dependencies: 1710 | is-number: registry.npmmirror.com/is-number/7.0.0 1711 | 1712 | registry.npmmirror.com/toidentifier/1.0.1: 1713 | resolution: {integrity: sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/toidentifier/-/toidentifier-1.0.1.tgz} 1714 | name: toidentifier 1715 | version: 1.0.1 1716 | engines: {node: '>=0.6'} 1717 | dev: false 1718 | 1719 | registry.npmmirror.com/tr46/0.0.3: 1720 | resolution: {integrity: sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/tr46/-/tr46-0.0.3.tgz} 1721 | name: tr46 1722 | version: 0.0.3 1723 | dev: true 1724 | 1725 | registry.npmmirror.com/ts-morph/12.0.0: 1726 | resolution: {integrity: sha512-VHC8XgU2fFW7yO1f/b3mxKDje1vmyzFXHWzOYmKEkCEwcLjDtbdLgBQviqj4ZwP4MJkQtRo6Ha2I29lq/B+VxA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/ts-morph/-/ts-morph-12.0.0.tgz} 1727 | name: ts-morph 1728 | version: 12.0.0 1729 | dependencies: 1730 | '@ts-morph/common': registry.npmmirror.com/@ts-morph/common/0.11.1 1731 | code-block-writer: registry.npmmirror.com/code-block-writer/10.1.1 1732 | dev: true 1733 | 1734 | registry.npmmirror.com/ts-node/8.9.1_typescript@4.3.4: 1735 | resolution: {integrity: sha512-yrq6ODsxEFTLz0R3BX2myf0WBCSQh9A+py8PBo1dCzWIOcvisbyH6akNKqDHMgXePF2kir5mm5JXJTH3OUJYOQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/ts-node/-/ts-node-8.9.1.tgz} 1736 | id: registry.npmmirror.com/ts-node/8.9.1 1737 | name: ts-node 1738 | version: 8.9.1 1739 | engines: {node: '>=6.0.0'} 1740 | hasBin: true 1741 | peerDependencies: 1742 | typescript: '>=2.7' 1743 | dependencies: 1744 | arg: registry.npmmirror.com/arg/4.1.3 1745 | diff: registry.npmmirror.com/diff/4.0.2 1746 | make-error: registry.npmmirror.com/make-error/1.3.6 1747 | source-map-support: registry.npmmirror.com/source-map-support/0.5.21 1748 | typescript: registry.npmmirror.com/typescript/4.3.4 1749 | yn: registry.npmmirror.com/yn/3.1.1 1750 | dev: true 1751 | 1752 | registry.npmmirror.com/ts-toolbelt/6.15.5: 1753 | resolution: {integrity: sha512-FZIXf1ksVyLcfr7M317jbB67XFJhOO1YqdTcuGaq9q5jLUoTikukZ+98TPjKiP2jC5CgmYdWWYs0s2nLSU0/1A==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/ts-toolbelt/-/ts-toolbelt-6.15.5.tgz} 1754 | name: ts-toolbelt 1755 | version: 6.15.5 1756 | dev: true 1757 | 1758 | registry.npmmirror.com/type-is/1.6.18: 1759 | resolution: {integrity: sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/type-is/-/type-is-1.6.18.tgz} 1760 | name: type-is 1761 | version: 1.6.18 1762 | engines: {node: '>= 0.6'} 1763 | dependencies: 1764 | media-typer: registry.npmmirror.com/media-typer/0.3.0 1765 | mime-types: registry.npmmirror.com/mime-types/2.1.35 1766 | dev: false 1767 | 1768 | registry.npmmirror.com/typescript/4.3.4: 1769 | resolution: {integrity: sha512-uauPG7XZn9F/mo+7MrsRjyvbxFpzemRjKEZXS4AK83oP2KKOJPvb+9cO/gmnv8arWZvhnjVOXz7B49m1l0e9Ew==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/typescript/-/typescript-4.3.4.tgz} 1770 | name: typescript 1771 | version: 4.3.4 1772 | engines: {node: '>=4.2.0'} 1773 | hasBin: true 1774 | dev: true 1775 | 1776 | registry.npmmirror.com/uri-js/4.4.1: 1777 | resolution: {integrity: sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/uri-js/-/uri-js-4.4.1.tgz} 1778 | name: uri-js 1779 | version: 4.4.1 1780 | dependencies: 1781 | punycode: registry.npmmirror.com/punycode/2.1.1 1782 | 1783 | registry.npmmirror.com/util-deprecate/1.0.2: 1784 | resolution: {integrity: sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/util-deprecate/-/util-deprecate-1.0.2.tgz} 1785 | name: util-deprecate 1786 | version: 1.0.2 1787 | dev: false 1788 | 1789 | registry.npmmirror.com/vary/1.1.2: 1790 | resolution: {integrity: sha512-BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/vary/-/vary-1.1.2.tgz} 1791 | name: vary 1792 | version: 1.1.2 1793 | engines: {node: '>= 0.8'} 1794 | dev: false 1795 | 1796 | registry.npmmirror.com/walker/1.0.8: 1797 | resolution: {integrity: sha512-ts/8E8l5b7kY0vlWLewOkDXMmPdLcVV4GmOQLyxuSswIJsweeFZtAsMF7k1Nszz+TYBQrlYRmzOnr398y1JemQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/walker/-/walker-1.0.8.tgz} 1798 | name: walker 1799 | version: 1.0.8 1800 | dependencies: 1801 | makeerror: registry.npmmirror.com/makeerror/1.0.12 1802 | dev: false 1803 | 1804 | registry.npmmirror.com/webidl-conversions/3.0.1: 1805 | resolution: {integrity: sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/webidl-conversions/-/webidl-conversions-3.0.1.tgz} 1806 | name: webidl-conversions 1807 | version: 3.0.1 1808 | dev: true 1809 | 1810 | registry.npmmirror.com/whatwg-url/5.0.0: 1811 | resolution: {integrity: sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/whatwg-url/-/whatwg-url-5.0.0.tgz} 1812 | name: whatwg-url 1813 | version: 5.0.0 1814 | dependencies: 1815 | tr46: registry.npmmirror.com/tr46/0.0.3 1816 | webidl-conversions: registry.npmmirror.com/webidl-conversions/3.0.1 1817 | dev: true 1818 | 1819 | registry.npmmirror.com/wrappy/1.0.2: 1820 | resolution: {integrity: sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/wrappy/-/wrappy-1.0.2.tgz} 1821 | name: wrappy 1822 | version: 1.0.2 1823 | dev: false 1824 | 1825 | registry.npmmirror.com/yallist/4.0.0: 1826 | resolution: {integrity: sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/yallist/-/yallist-4.0.0.tgz} 1827 | name: yallist 1828 | version: 4.0.0 1829 | dev: false 1830 | 1831 | registry.npmmirror.com/yargs-parser/21.1.1: 1832 | resolution: {integrity: sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/yargs-parser/-/yargs-parser-21.1.1.tgz} 1833 | name: yargs-parser 1834 | version: 21.1.1 1835 | engines: {node: '>=12'} 1836 | dev: false 1837 | 1838 | registry.npmmirror.com/yn/3.1.1: 1839 | resolution: {integrity: sha512-Ux4ygGWsu2c7isFWe8Yu1YluJmqVhxqK2cLXNQA5AcC3QfbGNpM7fu0Y8b/z16pXLnFxZYvWhd3fhBY9DLmC6Q==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/yn/-/yn-3.1.1.tgz} 1840 | name: yn 1841 | version: 3.1.1 1842 | engines: {node: '>=6'} 1843 | dev: true 1844 | -------------------------------------------------------------------------------- /src/app.ts: -------------------------------------------------------------------------------- 1 | import { join } from 'path'; 2 | import AutoLoad, {AutoloadPluginOptions} from '@fastify/autoload'; 3 | import { FastifyPluginAsync } from 'fastify'; 4 | 5 | export type AppOptions = { 6 | // Place your custom options for app below here. 7 | } & Partial; 8 | 9 | 10 | // Pass --options via CLI arguments in command to enable these options. 11 | const options: AppOptions = { 12 | } 13 | 14 | const app: FastifyPluginAsync = async ( 15 | fastify, 16 | opts 17 | ): Promise => { 18 | // Place here your custom code! 19 | 20 | // Do not touch the following lines 21 | 22 | // This loads all plugins defined in plugins 23 | // those should be support plugins that are reused 24 | // through your application 25 | void fastify.register(AutoLoad, { 26 | dir: join(__dirname, 'plugins'), 27 | options: opts 28 | }) 29 | 30 | // This loads all plugins defined in routes 31 | // define your routes in one of these 32 | void fastify.register(AutoLoad, { 33 | dir: join(__dirname, 'routes'), 34 | options: opts 35 | }) 36 | 37 | }; 38 | 39 | export default app; 40 | export { app, options } 41 | -------------------------------------------------------------------------------- /src/plugins/README.md: -------------------------------------------------------------------------------- 1 | # Plugins Folder 2 | 3 | Plugins define behavior that is common to all the routes in your 4 | application. Authentication, caching, templates, and all the other cross 5 | cutting concerns should be handled by plugins placed in this folder. 6 | 7 | Files in this folder are typically defined through the 8 | [`fastify-plugin`](https://github.com/fastify/fastify-plugin) module, 9 | making them non-encapsulated. They can define decorators and set hooks 10 | that will then be used in the rest of your application. 11 | 12 | Check out: 13 | 14 | * [The hitchhiker's guide to plugins](https://www.fastify.io/docs/latest/Guides/Plugins-Guide/) 15 | * [Fastify decorators](https://www.fastify.io/docs/latest/Reference/Decorators/). 16 | * [Fastify lifecycle](https://www.fastify.io/docs/latest/Reference/Lifecycle/). 17 | -------------------------------------------------------------------------------- /src/plugins/sensible.ts: -------------------------------------------------------------------------------- 1 | import fp from 'fastify-plugin' 2 | import sensible, { SensibleOptions } from '@fastify/sensible' 3 | 4 | /** 5 | * This plugins adds some utilities to handle http errors 6 | * 7 | * @see https://github.com/fastify/fastify-sensible 8 | */ 9 | export default fp(async (fastify) => { 10 | fastify.register(sensible) 11 | }) 12 | -------------------------------------------------------------------------------- /src/plugins/support.ts: -------------------------------------------------------------------------------- 1 | import fp from 'fastify-plugin' 2 | 3 | export interface SupportPluginOptions { 4 | // Specify Support plugin options here 5 | } 6 | 7 | // The use of fastify-plugin is required to be able 8 | // to export the decorators to the outer scope 9 | export default fp(async (fastify, opts) => { 10 | fastify.decorate('someSupport', function () { 11 | return 'hugs' 12 | }) 13 | }) 14 | 15 | // When using .decorate you have to specify added properties for Typescript 16 | declare module 'fastify' { 17 | export interface FastifyInstance { 18 | someSupport(): string; 19 | } 20 | } 21 | -------------------------------------------------------------------------------- /src/routes/README.md: -------------------------------------------------------------------------------- 1 | # Routes Folder 2 | 3 | Routes define endpoints within your application. Fastify provides an 4 | easy path to a microservice architecture, in the future you might want 5 | to independently deploy some of those. 6 | 7 | In this folder you should define all the routes that define the endpoints 8 | of your web application. 9 | Each service is a [Fastify 10 | plugin](https://www.fastify.io/docs/latest/Reference/Plugins/), it is 11 | encapsulated (it can have its own independent plugins) and it is 12 | typically stored in a file; be careful to group your routes logically, 13 | e.g. all `/users` routes in a `users.js` file. We have added 14 | a `root.js` file for you with a '/' root added. 15 | 16 | If a single file become too large, create a folder and add a `index.js` file there: 17 | this file must be a Fastify plugin, and it will be loaded automatically 18 | by the application. You can now add as many files as you want inside that folder. 19 | In this way you can create complex routes within a single monolith, 20 | and eventually extract them. 21 | 22 | If you need to share functionality between routes, place that 23 | functionality into the `plugins` folder, and share it via 24 | [decorators](https://www.fastify.io/docs/latest/Reference/Decorators/). 25 | -------------------------------------------------------------------------------- /src/routes/example/index.ts: -------------------------------------------------------------------------------- 1 | import { FastifyPluginAsync } from "fastify" 2 | 3 | interface IQuerystring { 4 | name: string; 5 | } 6 | 7 | interface IHeaders { 8 | name: string; 9 | } 10 | 11 | 12 | 13 | const example: FastifyPluginAsync = async (fastify, opts): Promise => { 14 | fastify.get<{ 15 | Querystring: IQuerystring, 16 | Headers: IHeaders 17 | }>('/', async function (request, reply) { 18 | 19 | return request.query.name || 'this is an example' 20 | }) 21 | } 22 | 23 | export default example; 24 | -------------------------------------------------------------------------------- /src/routes/root.ts: -------------------------------------------------------------------------------- 1 | import { FastifyPluginAsync } from 'fastify' 2 | 3 | const root: FastifyPluginAsync = async (fastify, opts): Promise => { 4 | fastify.get('/', async function (request, reply) { 5 | return { root: true } 6 | }) 7 | } 8 | 9 | export default root; 10 | -------------------------------------------------------------------------------- /vercel.json: -------------------------------------------------------------------------------- 1 | { 2 | "rewrites": [ 3 | { 4 | "source": "/(.*)", 5 | "destination": "/api/serverless.ts" 6 | } 7 | ] 8 | } --------------------------------------------------------------------------------