├── .gitignore
├── README.md
├── index.html
├── package.json
├── server.js
├── src
├── App.vue
├── Hello.vue
└── main.js
└── yarn.lock
/.gitignore:
--------------------------------------------------------------------------------
1 |
2 | node_modules
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 |
2 | # mini-vite
3 |
4 | 实现 mini-vite 学习 vite 原理
--------------------------------------------------------------------------------
/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 | Document
8 |
9 |
10 |
11 |
12 |
13 |
14 |
--------------------------------------------------------------------------------
/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "mini-vite",
3 | "version": "1.0.0",
4 | "main": "index.js",
5 | "license": "MIT",
6 | "scripts": {
7 | "dev": "nodemon server.js"
8 | },
9 | "dependencies": {
10 | "@vue/compiler-dom": "^3.2.12",
11 | "@vue/compiler-sfc": "^3.2.12",
12 | "koa": "^2.13.1",
13 | "koa-send": "^5.0.1",
14 | "vue": "^3.2.12"
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/server.js:
--------------------------------------------------------------------------------
1 | const Koa = require("koa");
2 | const app = new Koa();
3 |
4 | const fs = require("fs");
5 | const path = require("path");
6 |
7 | const { parse } = require("@vue/compiler-sfc");
8 | const { compile } = require("@vue/compiler-dom");
9 |
10 | function rewriteImport(content) {
11 | return content
12 | .replace(/(from\s+['"])(?![\.\/])/g, "$1/@modules/")
13 | .replace(/process\.env\.NODE_ENV/g, '"development"');
14 | }
15 |
16 | app.use(async (ctx) => {
17 | // ctx.body = 'kkb vite'
18 | const url = ctx.request.url;
19 | if (url === "/") {
20 | ctx.type = "text/html";
21 | console.log(ctx.path)
22 | ctx.body = fs.readFileSync("./index.html", "utf-8");
23 | } else if (url.endsWith(".js")) {
24 | const p = path.resolve(__dirname, url.slice(1));
25 | ctx.type = "text/javascript";
26 | const ret = fs.readFileSync(p, "utf-8");
27 | ctx.body = rewriteImport(ret);
28 | } else if (url.startsWith("/@modules")) {
29 | const moduleName = url.replace("/@modules/", "");
30 | const prefix = path.resolve(__dirname, "node_modules", moduleName);
31 | const module = require(prefix + "/package.json").module;
32 | const filePath = path.join(prefix, module);
33 | const ret = fs.readFileSync(filePath, "utf8");
34 | ctx.type = "text/javascript";
35 | ctx.body = rewriteImport(ret);
36 | } else if (url.endsWith(".vue")) {
37 | // 解析单文件组件相当于vue-loader做的事情
38 | // 转换script部分:将默认导出的组件对象转换为常量
39 | const p = path.resolve(__dirname, url.slice(1));
40 | const ret = parse(fs.readFileSync(p, "utf-8"));
41 | const scriptContent = ret.descriptor.script.content;
42 | const script = scriptContent.replace(
43 | "export default ",
44 | "const __script = "
45 | );
46 |
47 | // 转换template为模板请求
48 | // 将转换获得的渲染函数设置到__script上
49 | // 最后重新导出__script
50 | ctx.type = "text/javascript";
51 |
52 | // 如果我在这一步就对 url 做解析会怎么样?
53 | // 因为使用 compile 得到的 render 并不是只有一个 render 函数,还有其中的导入依赖的代码逻辑
54 | // 不方便直接拼到 __script.render = 上, 所以在利用一个请求单独来处理
55 |
56 | ctx.body = `
57 | ${rewriteImport(script)}
58 | import { render as __render } from '${url}?type=template'
59 | __script.render = __render
60 | export default __script
61 | `;
62 | } else if (url.endsWith("?type=template")) {
63 | // 模板编译请求
64 | const p = path.resolve(__dirname, url.split("?")[0].slice(1));
65 | const ret = parse(fs.readFileSync(p, "utf-8"));
66 | const template = ret.descriptor.template.content;
67 | // 使用编译该模板
68 | const render = compile(template, { mode: "module" }).code;
69 | ctx.type = "text/javascript";
70 | ctx.body = rewriteImport(render);
71 | } else if (url.endsWith(".png")) {
72 | ctx.body = fs.readFileSync("src" + url);
73 | }
74 | });
75 |
76 | app.listen(3000, () => {
77 | console.log("vite start");
78 | });
79 |
--------------------------------------------------------------------------------
/src/App.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 | App
4 |
5 |
6 |
7 |
8 |
16 |
17 |
18 |
--------------------------------------------------------------------------------
/src/Hello.vue:
--------------------------------------------------------------------------------
1 |
2 | Hello
3 |
4 |
5 |
8 |
9 |
10 |
--------------------------------------------------------------------------------
/src/main.js:
--------------------------------------------------------------------------------
1 | import { createApp } from "vue";
2 | import App from "./App.vue";
3 |
4 | console.log(createApp)
5 | console.log("main.js");
6 |
7 | createApp(App).mount("#app");
8 |
--------------------------------------------------------------------------------
/yarn.lock:
--------------------------------------------------------------------------------
1 | # THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY.
2 | # yarn lockfile v1
3 |
4 |
5 | "@babel/helper-validator-identifier@^7.14.9":
6 | version "7.15.7"
7 | resolved "https://registry.nlark.com/@babel/helper-validator-identifier/download/@babel/helper-validator-identifier-7.15.7.tgz#220df993bfe904a4a6b02ab4f3385a5ebf6e2389"
8 | integrity sha1-Ig35k7/pBKSmsCq08zhaXr9uI4k=
9 |
10 | "@babel/parser@^7.15.0":
11 | version "7.15.7"
12 | resolved "https://registry.nlark.com/@babel/parser/download/@babel/parser-7.15.7.tgz?cache=0&sync_timestamp=1631920112644&other_urls=https%3A%2F%2Fregistry.nlark.com%2F%40babel%2Fparser%2Fdownload%2F%40babel%2Fparser-7.15.7.tgz#0c3ed4a2eb07b165dfa85b3cc45c727334c4edae"
13 | integrity sha1-DD7UousHsWXfqFs8xFxyczTE7a4=
14 |
15 | "@babel/types@^7.15.0":
16 | version "7.15.6"
17 | resolved "https://registry.nlark.com/@babel/types/download/@babel/types-7.15.6.tgz?cache=0&sync_timestamp=1631216362613&other_urls=https%3A%2F%2Fregistry.nlark.com%2F%40babel%2Ftypes%2Fdownload%2F%40babel%2Ftypes-7.15.6.tgz#99abdc48218b2881c058dd0a7ab05b99c9be758f"
18 | integrity sha1-mavcSCGLKIHAWN0KerBbmcm+dY8=
19 | dependencies:
20 | "@babel/helper-validator-identifier" "^7.14.9"
21 | to-fast-properties "^2.0.0"
22 |
23 | "@types/estree@^0.0.48":
24 | version "0.0.48"
25 | resolved "https://registry.nlark.com/@types/estree/download/@types/estree-0.0.48.tgz#18dc8091b285df90db2f25aa7d906cfc394b7f74"
26 | integrity sha1-GNyAkbKF35DbLyWqfZBs/DlLf3Q=
27 |
28 | "@vue/compiler-core@3.2.12":
29 | version "3.2.12"
30 | resolved "https://registry.nlark.com/@vue/compiler-core/download/@vue/compiler-core-3.2.12.tgz#23998d6986a45e1ab0424130cc0ad00e33da1101"
31 | integrity sha1-I5mNaYakXhqwQkEwzArQDjPaEQE=
32 | dependencies:
33 | "@babel/parser" "^7.15.0"
34 | "@babel/types" "^7.15.0"
35 | "@vue/shared" "3.2.12"
36 | estree-walker "^2.0.2"
37 | source-map "^0.6.1"
38 |
39 | "@vue/compiler-dom@3.2.12", "@vue/compiler-dom@^3.2.12":
40 | version "3.2.12"
41 | resolved "https://registry.nlark.com/@vue/compiler-dom/download/@vue/compiler-dom-3.2.12.tgz#d6ba00114e73adb8b18940c3ff18797cc2b0514f"
42 | integrity sha1-1roAEU5zrbixiUDD/xh5fMKwUU8=
43 | dependencies:
44 | "@vue/compiler-core" "3.2.12"
45 | "@vue/shared" "3.2.12"
46 |
47 | "@vue/compiler-sfc@^3.2.12":
48 | version "3.2.12"
49 | resolved "https://registry.nlark.com/@vue/compiler-sfc/download/@vue/compiler-sfc-3.2.12.tgz?cache=0&sync_timestamp=1631890702874&other_urls=https%3A%2F%2Fregistry.nlark.com%2F%40vue%2Fcompiler-sfc%2Fdownload%2F%40vue%2Fcompiler-sfc-3.2.12.tgz#39555550d96051508753ba934f7260dc5ee5211e"
50 | integrity sha1-OVVVUNlgUVCHU7qTT3Jg3F7lIR4=
51 | dependencies:
52 | "@babel/parser" "^7.15.0"
53 | "@babel/types" "^7.15.0"
54 | "@types/estree" "^0.0.48"
55 | "@vue/compiler-core" "3.2.12"
56 | "@vue/compiler-dom" "3.2.12"
57 | "@vue/compiler-ssr" "3.2.12"
58 | "@vue/ref-transform" "3.2.12"
59 | "@vue/shared" "3.2.12"
60 | consolidate "^0.16.0"
61 | estree-walker "^2.0.2"
62 | hash-sum "^2.0.0"
63 | lru-cache "^5.1.1"
64 | magic-string "^0.25.7"
65 | merge-source-map "^1.1.0"
66 | postcss "^8.1.10"
67 | postcss-modules "^4.0.0"
68 | postcss-selector-parser "^6.0.4"
69 | source-map "^0.6.1"
70 |
71 | "@vue/compiler-ssr@3.2.12":
72 | version "3.2.12"
73 | resolved "https://registry.nlark.com/@vue/compiler-ssr/download/@vue/compiler-ssr-3.2.12.tgz?cache=0&sync_timestamp=1631890704961&other_urls=https%3A%2F%2Fregistry.nlark.com%2F%40vue%2Fcompiler-ssr%2Fdownload%2F%40vue%2Fcompiler-ssr-3.2.12.tgz#32e5d4bc31c371c125b43e9d07b8a8f70442b080"
74 | integrity sha1-MuXUvDHDccEltD6dB7io9wRCsIA=
75 | dependencies:
76 | "@vue/compiler-dom" "3.2.12"
77 | "@vue/shared" "3.2.12"
78 |
79 | "@vue/reactivity@3.2.12":
80 | version "3.2.12"
81 | resolved "https://registry.nlark.com/@vue/reactivity/download/@vue/reactivity-3.2.12.tgz?cache=0&sync_timestamp=1631890713344&other_urls=https%3A%2F%2Fregistry.nlark.com%2F%40vue%2Freactivity%2Fdownload%2F%40vue%2Freactivity-3.2.12.tgz#b482a737cbdc891f9b1ec3100f3c1804b56d080b"
82 | integrity sha1-tIKnN8vciR+bHsMQDzwYBLVtCAs=
83 | dependencies:
84 | "@vue/shared" "3.2.12"
85 |
86 | "@vue/ref-transform@3.2.12":
87 | version "3.2.12"
88 | resolved "https://registry.nlark.com/@vue/ref-transform/download/@vue/ref-transform-3.2.12.tgz?cache=0&sync_timestamp=1631890704557&other_urls=https%3A%2F%2Fregistry.nlark.com%2F%40vue%2Fref-transform%2Fdownload%2F%40vue%2Fref-transform-3.2.12.tgz#6f7fa46dd84447ddcf54adfb1b689b1cf4243de0"
89 | integrity sha1-b3+kbdhER93PVK37G2ibHPQkPeA=
90 | dependencies:
91 | "@babel/parser" "^7.15.0"
92 | "@vue/compiler-core" "3.2.12"
93 | "@vue/shared" "3.2.12"
94 | estree-walker "^2.0.2"
95 | magic-string "^0.25.7"
96 |
97 | "@vue/runtime-core@3.2.12":
98 | version "3.2.12"
99 | resolved "https://registry.nlark.com/@vue/runtime-core/download/@vue/runtime-core-3.2.12.tgz?cache=0&sync_timestamp=1631890716144&other_urls=https%3A%2F%2Fregistry.nlark.com%2F%40vue%2Fruntime-core%2Fdownload%2F%40vue%2Fruntime-core-3.2.12.tgz#422662fd5b85f787222d2aea840264ba97e84a13"
100 | integrity sha1-QiZi/VuF94ciLSrqhAJkupfoShM=
101 | dependencies:
102 | "@vue/reactivity" "3.2.12"
103 | "@vue/shared" "3.2.12"
104 |
105 | "@vue/runtime-dom@3.2.12":
106 | version "3.2.12"
107 | resolved "https://registry.nlark.com/@vue/runtime-dom/download/@vue/runtime-dom-3.2.12.tgz?cache=0&sync_timestamp=1631890706703&other_urls=https%3A%2F%2Fregistry.nlark.com%2F%40vue%2Fruntime-dom%2Fdownload%2F%40vue%2Fruntime-dom-3.2.12.tgz#d9fe865dca36f9ca33ba327afdeb89ae2aa03f4c"
108 | integrity sha1-2f6GXco2+cozujJ6/euJriqgP0w=
109 | dependencies:
110 | "@vue/runtime-core" "3.2.12"
111 | "@vue/shared" "3.2.12"
112 | csstype "^2.6.8"
113 |
114 | "@vue/shared@3.2.12":
115 | version "3.2.12"
116 | resolved "https://registry.nlark.com/@vue/shared/download/@vue/shared-3.2.12.tgz#304064a4b56fc6c7b9169d80e9ee62ecb4bf0a1c"
117 | integrity sha1-MEBkpLVvxse5Fp2A6e5i7LS/Chw=
118 |
119 | accepts@^1.3.5:
120 | version "1.3.7"
121 | resolved "https://registry.nlark.com/accepts/download/accepts-1.3.7.tgz#531bc726517a3b2b41f850021c6cc15eaab507cd"
122 | integrity sha1-UxvHJlF6OytB+FACHGzBXqq1B80=
123 | dependencies:
124 | mime-types "~2.1.24"
125 | negotiator "0.6.2"
126 |
127 | any-promise@^1.1.0:
128 | version "1.3.0"
129 | resolved "https://registry.npm.taobao.org/any-promise/download/any-promise-1.3.0.tgz#abc6afeedcea52e809cdc0376aed3ce39635d17f"
130 | integrity sha1-q8av7tzqUugJzcA3au0845Y10X8=
131 |
132 | big.js@^5.2.2:
133 | version "5.2.2"
134 | resolved "https://registry.nlark.com/big.js/download/big.js-5.2.2.tgz#65f0af382f578bcdc742bd9c281e9cb2d7768328"
135 | integrity sha1-ZfCvOC9Xi83HQr2cKB6cstd2gyg=
136 |
137 | bluebird@^3.7.2:
138 | version "3.7.2"
139 | resolved "https://registry.npm.taobao.org/bluebird/download/bluebird-3.7.2.tgz?cache=0&sync_timestamp=1602657218976&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fbluebird%2Fdownload%2Fbluebird-3.7.2.tgz#9f229c15be272454ffa973ace0dbee79a1b0c36f"
140 | integrity sha1-nyKcFb4nJFT/qXOs4NvueaGww28=
141 |
142 | cache-content-type@^1.0.0:
143 | version "1.0.1"
144 | resolved "https://registry.nlark.com/cache-content-type/download/cache-content-type-1.0.1.tgz#035cde2b08ee2129f4a8315ea8f00a00dba1453c"
145 | integrity sha1-A1zeKwjuISn0qDFeqPAKANuhRTw=
146 | dependencies:
147 | mime-types "^2.1.18"
148 | ylru "^1.2.0"
149 |
150 | co@^4.6.0:
151 | version "4.6.0"
152 | resolved "https://registry.npm.taobao.org/co/download/co-4.6.0.tgz#6ea6bdf3d853ae54ccb8e47bfa0bf3f9031fb184"
153 | integrity sha1-bqa989hTrlTMuOR7+gvz+QMfsYQ=
154 |
155 | colorette@^1.2.2:
156 | version "1.4.0"
157 | resolved "https://registry.nlark.com/colorette/download/colorette-1.4.0.tgz?cache=0&sync_timestamp=1631964901390&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fcolorette%2Fdownload%2Fcolorette-1.4.0.tgz#5190fbb87276259a86ad700bff2c6d6faa3fca40"
158 | integrity sha1-UZD7uHJ2JZqGrXAL/yxtb6o/ykA=
159 |
160 | consolidate@^0.16.0:
161 | version "0.16.0"
162 | resolved "https://registry.npm.taobao.org/consolidate/download/consolidate-0.16.0.tgz#a11864768930f2f19431660a65906668f5fbdc16"
163 | integrity sha1-oRhkdokw8vGUMWYKZZBmaPX73BY=
164 | dependencies:
165 | bluebird "^3.7.2"
166 |
167 | content-disposition@~0.5.2:
168 | version "0.5.3"
169 | resolved "https://registry.npm.taobao.org/content-disposition/download/content-disposition-0.5.3.tgz#e130caf7e7279087c5616c2007d0485698984fbd"
170 | integrity sha1-4TDK9+cnkIfFYWwgB9BIVpiYT70=
171 | dependencies:
172 | safe-buffer "5.1.2"
173 |
174 | content-type@^1.0.4:
175 | version "1.0.4"
176 | resolved "https://registry.npm.taobao.org/content-type/download/content-type-1.0.4.tgz#e138cc75e040c727b1966fe5e5f8c9aee256fe3b"
177 | integrity sha1-4TjMdeBAxyexlm/l5fjJruJW/js=
178 |
179 | cookies@~0.8.0:
180 | version "0.8.0"
181 | resolved "https://registry.npm.taobao.org/cookies/download/cookies-0.8.0.tgz#1293ce4b391740a8406e3c9870e828c4b54f3f90"
182 | integrity sha1-EpPOSzkXQKhAbjyYcOgoxLVPP5A=
183 | dependencies:
184 | depd "~2.0.0"
185 | keygrip "~1.1.0"
186 |
187 | cssesc@^3.0.0:
188 | version "3.0.0"
189 | resolved "https://registry.nlark.com/cssesc/download/cssesc-3.0.0.tgz#37741919903b868565e1c09ea747445cd18983ee"
190 | integrity sha1-N3QZGZA7hoVl4cCep0dEXNGJg+4=
191 |
192 | csstype@^2.6.8:
193 | version "2.6.18"
194 | resolved "https://registry.nlark.com/csstype/download/csstype-2.6.18.tgz?cache=0&sync_timestamp=1631540782346&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fcsstype%2Fdownload%2Fcsstype-2.6.18.tgz#980a8b53085f34af313410af064f2bd241784218"
195 | integrity sha1-mAqLUwhfNK8xNBCvBk8r0kF4Qhg=
196 |
197 | debug@^4.1.1:
198 | version "4.3.2"
199 | resolved "https://registry.nlark.com/debug/download/debug-4.3.2.tgz#f0a49c18ac8779e31d4a0c6029dfb76873c7428b"
200 | integrity sha1-8KScGKyHeeMdSgxgKd+3aHPHQos=
201 | dependencies:
202 | ms "2.1.2"
203 |
204 | debug@~3.1.0:
205 | version "3.1.0"
206 | resolved "https://registry.nlark.com/debug/download/debug-3.1.0.tgz#5bb5a0672628b64149566ba16819e61518c67261"
207 | integrity sha1-W7WgZyYotkFJVmuhaBnmFRjGcmE=
208 | dependencies:
209 | ms "2.0.0"
210 |
211 | deep-equal@~1.0.1:
212 | version "1.0.1"
213 | resolved "https://registry.nlark.com/deep-equal/download/deep-equal-1.0.1.tgz#f5d260292b660e084eff4cdbc9f08ad3247448b5"
214 | integrity sha1-9dJgKStmDghO/0zbyfCK0yR0SLU=
215 |
216 | delegates@^1.0.0:
217 | version "1.0.0"
218 | resolved "https://registry.npm.taobao.org/delegates/download/delegates-1.0.0.tgz#84c6e159b81904fdca59a0ef44cd870d31250f9a"
219 | integrity sha1-hMbhWbgZBP3KWaDvRM2HDTElD5o=
220 |
221 | depd@^2.0.0, depd@~2.0.0:
222 | version "2.0.0"
223 | resolved "https://registry.npm.taobao.org/depd/download/depd-2.0.0.tgz#b696163cc757560d09cf22cc8fad1571b79e76df"
224 | integrity sha1-tpYWPMdXVg0JzyLMj60Vcbeedt8=
225 |
226 | depd@~1.1.2:
227 | version "1.1.2"
228 | resolved "https://registry.npm.taobao.org/depd/download/depd-1.1.2.tgz#9bcd52e14c097763e749b274c4346ed2e560b5a9"
229 | integrity sha1-m81S4UwJd2PnSbJ0xDRu0uVgtak=
230 |
231 | destroy@^1.0.4:
232 | version "1.0.4"
233 | resolved "https://registry.npm.taobao.org/destroy/download/destroy-1.0.4.tgz#978857442c44749e4206613e37946205826abd80"
234 | integrity sha1-l4hXRCxEdJ5CBmE+N5RiBYJqvYA=
235 |
236 | ee-first@1.1.1:
237 | version "1.1.1"
238 | resolved "https://registry.npm.taobao.org/ee-first/download/ee-first-1.1.1.tgz#590c61156b0ae2f4f0255732a158b266bc56b21d"
239 | integrity sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0=
240 |
241 | emojis-list@^3.0.0:
242 | version "3.0.0"
243 | resolved "https://registry.npm.taobao.org/emojis-list/download/emojis-list-3.0.0.tgz#5570662046ad29e2e916e71aae260abdff4f6a78"
244 | integrity sha1-VXBmIEatKeLpFucariYKvf9Pang=
245 |
246 | encodeurl@^1.0.2:
247 | version "1.0.2"
248 | resolved "https://registry.npm.taobao.org/encodeurl/download/encodeurl-1.0.2.tgz#ad3ff4c86ec2d029322f5a02c3a9a606c95b3f59"
249 | integrity sha1-rT/0yG7C0CkyL1oCw6mmBslbP1k=
250 |
251 | escape-html@^1.0.3:
252 | version "1.0.3"
253 | resolved "https://registry.npm.taobao.org/escape-html/download/escape-html-1.0.3.tgz#0258eae4d3d0c0974de1c169188ef0051d1d1988"
254 | integrity sha1-Aljq5NPQwJdN4cFpGI7wBR0dGYg=
255 |
256 | estree-walker@^2.0.2:
257 | version "2.0.2"
258 | resolved "https://registry.npm.taobao.org/estree-walker/download/estree-walker-2.0.2.tgz#52f010178c2a4c117a7757cfe942adb7d2da4cac"
259 | integrity sha1-UvAQF4wqTBF6d1fP6UKtt9LaTKw=
260 |
261 | fresh@~0.5.2:
262 | version "0.5.2"
263 | resolved "https://registry.nlark.com/fresh/download/fresh-0.5.2.tgz#3d8cadd90d976569fa835ab1f8e4b23a105605a7"
264 | integrity sha1-PYyt2Q2XZWn6g1qx+OSyOhBWBac=
265 |
266 | generic-names@^2.0.1:
267 | version "2.0.1"
268 | resolved "https://registry.npm.taobao.org/generic-names/download/generic-names-2.0.1.tgz#f8a378ead2ccaa7a34f0317b05554832ae41b872"
269 | integrity sha1-+KN46tLMqno08DF7BVVIMq5BuHI=
270 | dependencies:
271 | loader-utils "^1.1.0"
272 |
273 | has-symbols@^1.0.2:
274 | version "1.0.2"
275 | resolved "https://registry.npm.taobao.org/has-symbols/download/has-symbols-1.0.2.tgz?cache=0&sync_timestamp=1614443577352&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fhas-symbols%2Fdownload%2Fhas-symbols-1.0.2.tgz#165d3070c00309752a1236a479331e3ac56f1423"
276 | integrity sha1-Fl0wcMADCXUqEjakeTMeOsVvFCM=
277 |
278 | has-tostringtag@^1.0.0:
279 | version "1.0.0"
280 | resolved "https://registry.nlark.com/has-tostringtag/download/has-tostringtag-1.0.0.tgz?cache=0&sync_timestamp=1628197490246&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fhas-tostringtag%2Fdownload%2Fhas-tostringtag-1.0.0.tgz#7e133818a7d394734f941e73c3d3f9291e658b25"
281 | integrity sha1-fhM4GKfTlHNPlB5zw9P5KR5liyU=
282 | dependencies:
283 | has-symbols "^1.0.2"
284 |
285 | hash-sum@^2.0.0:
286 | version "2.0.0"
287 | resolved "https://registry.npm.taobao.org/hash-sum/download/hash-sum-2.0.0.tgz#81d01bb5de8ea4a214ad5d6ead1b523460b0b45a"
288 | integrity sha1-gdAbtd6OpKIUrV1urRtSNGCwtFo=
289 |
290 | http-assert@^1.3.0:
291 | version "1.5.0"
292 | resolved "https://registry.nlark.com/http-assert/download/http-assert-1.5.0.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fhttp-assert%2Fdownload%2Fhttp-assert-1.5.0.tgz#c389ccd87ac16ed2dfa6246fd73b926aa00e6b8f"
293 | integrity sha1-w4nM2HrBbtLfpiRv1zuSaqAOa48=
294 | dependencies:
295 | deep-equal "~1.0.1"
296 | http-errors "~1.8.0"
297 |
298 | http-errors@^1.6.3, http-errors@^1.7.3, http-errors@~1.8.0:
299 | version "1.8.0"
300 | resolved "https://registry.npm.taobao.org/http-errors/download/http-errors-1.8.0.tgz#75d1bbe497e1044f51e4ee9e704a62f28d336507"
301 | integrity sha1-ddG75JfhBE9R5O6ecEpi8o0zZQc=
302 | dependencies:
303 | depd "~1.1.2"
304 | inherits "2.0.4"
305 | setprototypeof "1.2.0"
306 | statuses ">= 1.5.0 < 2"
307 | toidentifier "1.0.0"
308 |
309 | http-errors@~1.6.2:
310 | version "1.6.3"
311 | resolved "https://registry.npm.taobao.org/http-errors/download/http-errors-1.6.3.tgz#8b55680bb4be283a0b5bf4ea2e38580be1d9320d"
312 | integrity sha1-i1VoC7S+KDoLW/TqLjhYC+HZMg0=
313 | dependencies:
314 | depd "~1.1.2"
315 | inherits "2.0.3"
316 | setprototypeof "1.1.0"
317 | statuses ">= 1.4.0 < 2"
318 |
319 | icss-replace-symbols@^1.1.0:
320 | version "1.1.0"
321 | resolved "https://registry.npm.taobao.org/icss-replace-symbols/download/icss-replace-symbols-1.1.0.tgz#06ea6f83679a7749e386cfe1fe812ae5db223ded"
322 | integrity sha1-Bupvg2ead0njhs/h/oEq5dsiPe0=
323 |
324 | icss-utils@^5.0.0:
325 | version "5.1.0"
326 | resolved "https://registry.npm.taobao.org/icss-utils/download/icss-utils-5.1.0.tgz#c6be6858abd013d768e98366ae47e25d5887b1ae"
327 | integrity sha1-xr5oWKvQE9do6YNmrkfiXViHsa4=
328 |
329 | inherits@2.0.3:
330 | version "2.0.3"
331 | resolved "https://registry.nlark.com/inherits/download/inherits-2.0.3.tgz#633c2c83e3da42a502f52466022480f4208261de"
332 | integrity sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=
333 |
334 | inherits@2.0.4:
335 | version "2.0.4"
336 | resolved "https://registry.nlark.com/inherits/download/inherits-2.0.4.tgz#0fa2c64f932917c3433a0ded55363aae37416b7c"
337 | integrity sha1-D6LGT5MpF8NDOg3tVTY6rjdBa3w=
338 |
339 | is-generator-function@^1.0.7:
340 | version "1.0.10"
341 | resolved "https://registry.nlark.com/is-generator-function/download/is-generator-function-1.0.10.tgz?cache=0&sync_timestamp=1628227835267&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fis-generator-function%2Fdownload%2Fis-generator-function-1.0.10.tgz#f1558baf1ac17e0deea7c0415c438351ff2b3c72"
342 | integrity sha1-8VWLrxrBfg3up8BBXEODUf8rPHI=
343 | dependencies:
344 | has-tostringtag "^1.0.0"
345 |
346 | json5@^1.0.1:
347 | version "1.0.1"
348 | resolved "https://registry.npm.taobao.org/json5/download/json5-1.0.1.tgz#779fb0018604fa854eacbf6252180d83543e3dbe"
349 | integrity sha1-d5+wAYYE+oVOrL9iUhgNg1Q+Pb4=
350 | dependencies:
351 | minimist "^1.2.0"
352 |
353 | keygrip@~1.1.0:
354 | version "1.1.0"
355 | resolved "https://registry.nlark.com/keygrip/download/keygrip-1.1.0.tgz#871b1681d5e159c62a445b0c74b615e0917e7226"
356 | integrity sha1-hxsWgdXhWcYqRFsMdLYV4JF+ciY=
357 | dependencies:
358 | tsscmp "1.0.6"
359 |
360 | koa-compose@^3.0.0:
361 | version "3.2.1"
362 | resolved "https://registry.npm.taobao.org/koa-compose/download/koa-compose-3.2.1.tgz#a85ccb40b7d986d8e5a345b3a1ace8eabcf54de7"
363 | integrity sha1-qFzLQLfZhtjlo0Wzoazo6rz1Tec=
364 | dependencies:
365 | any-promise "^1.1.0"
366 |
367 | koa-compose@^4.1.0:
368 | version "4.1.0"
369 | resolved "https://registry.npm.taobao.org/koa-compose/download/koa-compose-4.1.0.tgz#507306b9371901db41121c812e923d0d67d3e877"
370 | integrity sha1-UHMGuTcZAdtBEhyBLpI9DWfT6Hc=
371 |
372 | koa-convert@^1.2.0:
373 | version "1.2.0"
374 | resolved "https://registry.npm.taobao.org/koa-convert/download/koa-convert-1.2.0.tgz#da40875df49de0539098d1700b50820cebcd21d0"
375 | integrity sha1-2kCHXfSd4FOQmNFwC1CCDOvNIdA=
376 | dependencies:
377 | co "^4.6.0"
378 | koa-compose "^3.0.0"
379 |
380 | koa-send@^5.0.1:
381 | version "5.0.1"
382 | resolved "https://registry.npm.taobao.org/koa-send/download/koa-send-5.0.1.tgz#39dceebfafb395d0d60beaffba3a70b4f543fe79"
383 | integrity sha1-Odzuv6+zldDWC+r/ujpwtPVD/nk=
384 | dependencies:
385 | debug "^4.1.1"
386 | http-errors "^1.7.3"
387 | resolve-path "^1.4.0"
388 |
389 | koa@^2.13.1:
390 | version "2.13.1"
391 | resolved "https://registry.npm.taobao.org/koa/download/koa-2.13.1.tgz#6275172875b27bcfe1d454356a5b6b9f5a9b1051"
392 | integrity sha1-YnUXKHWye8/h1FQ1altrn1qbEFE=
393 | dependencies:
394 | accepts "^1.3.5"
395 | cache-content-type "^1.0.0"
396 | content-disposition "~0.5.2"
397 | content-type "^1.0.4"
398 | cookies "~0.8.0"
399 | debug "~3.1.0"
400 | delegates "^1.0.0"
401 | depd "^2.0.0"
402 | destroy "^1.0.4"
403 | encodeurl "^1.0.2"
404 | escape-html "^1.0.3"
405 | fresh "~0.5.2"
406 | http-assert "^1.3.0"
407 | http-errors "^1.6.3"
408 | is-generator-function "^1.0.7"
409 | koa-compose "^4.1.0"
410 | koa-convert "^1.2.0"
411 | on-finished "^2.3.0"
412 | only "~0.0.2"
413 | parseurl "^1.3.2"
414 | statuses "^1.5.0"
415 | type-is "^1.6.16"
416 | vary "^1.1.2"
417 |
418 | loader-utils@^1.1.0:
419 | version "1.4.0"
420 | resolved "https://registry.npm.taobao.org/loader-utils/download/loader-utils-1.4.0.tgz#c579b5e34cb34b1a74edc6c1fb36bfa371d5a613"
421 | integrity sha1-xXm140yzSxp07cbB+za/o3HVphM=
422 | dependencies:
423 | big.js "^5.2.2"
424 | emojis-list "^3.0.0"
425 | json5 "^1.0.1"
426 |
427 | lodash.camelcase@^4.3.0:
428 | version "4.3.0"
429 | resolved "https://registry.npm.taobao.org/lodash.camelcase/download/lodash.camelcase-4.3.0.tgz#b28aa6288a2b9fc651035c7711f65ab6190331a6"
430 | integrity sha1-soqmKIorn8ZRA1x3EfZathkDMaY=
431 |
432 | lru-cache@^5.1.1:
433 | version "5.1.1"
434 | resolved "https://registry.npm.taobao.org/lru-cache/download/lru-cache-5.1.1.tgz#1da27e6710271947695daf6848e847f01d84b920"
435 | integrity sha1-HaJ+ZxAnGUdpXa9oSOhH8B2EuSA=
436 | dependencies:
437 | yallist "^3.0.2"
438 |
439 | magic-string@^0.25.7:
440 | version "0.25.7"
441 | resolved "https://registry.npm.taobao.org/magic-string/download/magic-string-0.25.7.tgz#3f497d6fd34c669c6798dcb821f2ef31f5445051"
442 | integrity sha1-P0l9b9NMZpxnmNy4IfLvMfVEUFE=
443 | dependencies:
444 | sourcemap-codec "^1.4.4"
445 |
446 | media-typer@0.3.0:
447 | version "0.3.0"
448 | resolved "https://registry.nlark.com/media-typer/download/media-typer-0.3.0.tgz#8710d7af0aa626f8fffa1ce00168545263255748"
449 | integrity sha1-hxDXrwqmJvj/+hzgAWhUUmMlV0g=
450 |
451 | merge-source-map@^1.1.0:
452 | version "1.1.0"
453 | resolved "https://registry.nlark.com/merge-source-map/download/merge-source-map-1.1.0.tgz#2fdde7e6020939f70906a68f2d7ae685e4c8c646"
454 | integrity sha1-L93n5gIJOfcJBqaPLXrmheTIxkY=
455 | dependencies:
456 | source-map "^0.6.1"
457 |
458 | mime-db@1.49.0:
459 | version "1.49.0"
460 | resolved "https://registry.nlark.com/mime-db/download/mime-db-1.49.0.tgz?cache=0&sync_timestamp=1631863111146&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fmime-db%2Fdownload%2Fmime-db-1.49.0.tgz#f3dfde60c99e9cf3bc9701d687778f537001cbed"
461 | integrity sha1-89/eYMmenPO8lwHWh3ePU3ABy+0=
462 |
463 | mime-types@^2.1.18, mime-types@~2.1.24:
464 | version "2.1.32"
465 | resolved "https://registry.nlark.com/mime-types/download/mime-types-2.1.32.tgz#1d00e89e7de7fe02008db61001d9e02852670fd5"
466 | integrity sha1-HQDonn3n/gIAjbYQAdngKFJnD9U=
467 | dependencies:
468 | mime-db "1.49.0"
469 |
470 | minimist@^1.2.0:
471 | version "1.2.5"
472 | resolved "https://registry.npm.taobao.org/minimist/download/minimist-1.2.5.tgz?cache=0&sync_timestamp=1602337228360&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fminimist%2Fdownload%2Fminimist-1.2.5.tgz#67d66014b66a6a8aaa0c083c5fd58df4e4e97602"
473 | integrity sha1-Z9ZgFLZqaoqqDAg8X9WN9OTpdgI=
474 |
475 | ms@2.0.0:
476 | version "2.0.0"
477 | resolved "https://registry.nlark.com/ms/download/ms-2.0.0.tgz#5608aeadfc00be6c2901df5f9861788de0d597c8"
478 | integrity sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=
479 |
480 | ms@2.1.2:
481 | version "2.1.2"
482 | resolved "https://registry.nlark.com/ms/download/ms-2.1.2.tgz#d09d1f357b443f493382a8eb3ccd183872ae6009"
483 | integrity sha1-0J0fNXtEP0kzgqjrPM0YOHKuYAk=
484 |
485 | nanoid@^3.1.23:
486 | version "3.1.25"
487 | resolved "https://registry.nlark.com/nanoid/download/nanoid-3.1.25.tgz#09ca32747c0e543f0e1814b7d3793477f9c8e152"
488 | integrity sha1-CcoydHwOVD8OGBS303k0d/nI4VI=
489 |
490 | negotiator@0.6.2:
491 | version "0.6.2"
492 | resolved "https://registry.npm.taobao.org/negotiator/download/negotiator-0.6.2.tgz#feacf7ccf525a77ae9634436a64883ffeca346fb"
493 | integrity sha1-/qz3zPUlp3rpY0Q2pkiD/+yjRvs=
494 |
495 | on-finished@^2.3.0:
496 | version "2.3.0"
497 | resolved "https://registry.npm.taobao.org/on-finished/download/on-finished-2.3.0.tgz?cache=0&sync_timestamp=1614930634590&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fon-finished%2Fdownload%2Fon-finished-2.3.0.tgz#20f1336481b083cd75337992a16971aa2d906947"
498 | integrity sha1-IPEzZIGwg811M3mSoWlxqi2QaUc=
499 | dependencies:
500 | ee-first "1.1.1"
501 |
502 | only@~0.0.2:
503 | version "0.0.2"
504 | resolved "https://registry.npm.taobao.org/only/download/only-0.0.2.tgz#2afde84d03e50b9a8edc444e30610a70295edfb4"
505 | integrity sha1-Kv3oTQPlC5qO3EROMGEKcCle37Q=
506 |
507 | parseurl@^1.3.2:
508 | version "1.3.3"
509 | resolved "https://registry.npm.taobao.org/parseurl/download/parseurl-1.3.3.tgz#9da19e7bee8d12dff0513ed5b76957793bc2e8d4"
510 | integrity sha1-naGee+6NEt/wUT7Vt2lXeTvC6NQ=
511 |
512 | path-is-absolute@1.0.1:
513 | version "1.0.1"
514 | resolved "https://registry.nlark.com/path-is-absolute/download/path-is-absolute-1.0.1.tgz#174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f"
515 | integrity sha1-F0uSaHNVNP+8es5r9TpanhtcX18=
516 |
517 | postcss-modules-extract-imports@^3.0.0:
518 | version "3.0.0"
519 | resolved "https://registry.nlark.com/postcss-modules-extract-imports/download/postcss-modules-extract-imports-3.0.0.tgz#cda1f047c0ae80c97dbe28c3e76a43b88025741d"
520 | integrity sha1-zaHwR8CugMl9vijD52pDuIAldB0=
521 |
522 | postcss-modules-local-by-default@^4.0.0:
523 | version "4.0.0"
524 | resolved "https://registry.npm.taobao.org/postcss-modules-local-by-default/download/postcss-modules-local-by-default-4.0.0.tgz?cache=0&sync_timestamp=1602587625149&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fpostcss-modules-local-by-default%2Fdownload%2Fpostcss-modules-local-by-default-4.0.0.tgz#ebbb54fae1598eecfdf691a02b3ff3b390a5a51c"
525 | integrity sha1-67tU+uFZjuz99pGgKz/zs5ClpRw=
526 | dependencies:
527 | icss-utils "^5.0.0"
528 | postcss-selector-parser "^6.0.2"
529 | postcss-value-parser "^4.1.0"
530 |
531 | postcss-modules-scope@^3.0.0:
532 | version "3.0.0"
533 | resolved "https://registry.npm.taobao.org/postcss-modules-scope/download/postcss-modules-scope-3.0.0.tgz#9ef3151456d3bbfa120ca44898dfca6f2fa01f06"
534 | integrity sha1-nvMVFFbTu/oSDKRImN/Kby+gHwY=
535 | dependencies:
536 | postcss-selector-parser "^6.0.4"
537 |
538 | postcss-modules-values@^4.0.0:
539 | version "4.0.0"
540 | resolved "https://registry.npm.taobao.org/postcss-modules-values/download/postcss-modules-values-4.0.0.tgz?cache=0&sync_timestamp=1602586215124&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fpostcss-modules-values%2Fdownload%2Fpostcss-modules-values-4.0.0.tgz#d7c5e7e68c3bb3c9b27cbf48ca0bb3ffb4602c9c"
541 | integrity sha1-18Xn5ow7s8myfL9Iyguz/7RgLJw=
542 | dependencies:
543 | icss-utils "^5.0.0"
544 |
545 | postcss-modules@^4.0.0:
546 | version "4.2.2"
547 | resolved "https://registry.nlark.com/postcss-modules/download/postcss-modules-4.2.2.tgz?cache=0&sync_timestamp=1627039417896&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fpostcss-modules%2Fdownload%2Fpostcss-modules-4.2.2.tgz#5e7777c5a8964ea176919d90b2e54ef891321ce5"
548 | integrity sha1-Xnd3xaiWTqF2kZ2QsuVO+JEyHOU=
549 | dependencies:
550 | generic-names "^2.0.1"
551 | icss-replace-symbols "^1.1.0"
552 | lodash.camelcase "^4.3.0"
553 | postcss-modules-extract-imports "^3.0.0"
554 | postcss-modules-local-by-default "^4.0.0"
555 | postcss-modules-scope "^3.0.0"
556 | postcss-modules-values "^4.0.0"
557 | string-hash "^1.1.1"
558 |
559 | postcss-selector-parser@^6.0.2, postcss-selector-parser@^6.0.4:
560 | version "6.0.6"
561 | resolved "https://registry.nlark.com/postcss-selector-parser/download/postcss-selector-parser-6.0.6.tgz#2c5bba8174ac2f6981ab631a42ab0ee54af332ea"
562 | integrity sha1-LFu6gXSsL2mBq2MaQqsO5UrzMuo=
563 | dependencies:
564 | cssesc "^3.0.0"
565 | util-deprecate "^1.0.2"
566 |
567 | postcss-value-parser@^4.1.0:
568 | version "4.1.0"
569 | resolved "https://registry.npm.taobao.org/postcss-value-parser/download/postcss-value-parser-4.1.0.tgz#443f6a20ced6481a2bda4fa8532a6e55d789a2cb"
570 | integrity sha1-RD9qIM7WSBor2k+oUypuVdeJoss=
571 |
572 | postcss@^8.1.10:
573 | version "8.3.6"
574 | resolved "https://registry.nlark.com/postcss/download/postcss-8.3.6.tgz?cache=0&sync_timestamp=1626882928473&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fpostcss%2Fdownload%2Fpostcss-8.3.6.tgz#2730dd76a97969f37f53b9a6096197be311cc4ea"
575 | integrity sha1-JzDddql5afN/U7mmCWGXvjEcxOo=
576 | dependencies:
577 | colorette "^1.2.2"
578 | nanoid "^3.1.23"
579 | source-map-js "^0.6.2"
580 |
581 | resolve-path@^1.4.0:
582 | version "1.4.0"
583 | resolved "https://registry.npm.taobao.org/resolve-path/download/resolve-path-1.4.0.tgz#c4bda9f5efb2fce65247873ab36bb4d834fe16f7"
584 | integrity sha1-xL2p9e+y/OZSR4c6s2u02DT+Fvc=
585 | dependencies:
586 | http-errors "~1.6.2"
587 | path-is-absolute "1.0.1"
588 |
589 | safe-buffer@5.1.2:
590 | version "5.1.2"
591 | resolved "https://registry.npm.taobao.org/safe-buffer/download/safe-buffer-5.1.2.tgz#991ec69d296e0313747d59bdfd2b745c35f8828d"
592 | integrity sha1-mR7GnSluAxN0fVm9/St0XDX4go0=
593 |
594 | setprototypeof@1.1.0:
595 | version "1.1.0"
596 | resolved "https://registry.npm.taobao.org/setprototypeof/download/setprototypeof-1.1.0.tgz#d0bd85536887b6fe7c0d818cb962d9d91c54e656"
597 | integrity sha1-0L2FU2iHtv58DYGMuWLZ2RxU5lY=
598 |
599 | setprototypeof@1.2.0:
600 | version "1.2.0"
601 | resolved "https://registry.npm.taobao.org/setprototypeof/download/setprototypeof-1.2.0.tgz#66c9a24a73f9fc28cbe66b09fed3d33dcaf1b424"
602 | integrity sha1-ZsmiSnP5/CjL5msJ/tPTPcrxtCQ=
603 |
604 | source-map-js@^0.6.2:
605 | version "0.6.2"
606 | resolved "https://registry.npm.taobao.org/source-map-js/download/source-map-js-0.6.2.tgz#0bb5de631b41cfbda6cfba8bd05a80efdfd2385e"
607 | integrity sha1-C7XeYxtBz72mz7qL0FqA79/SOF4=
608 |
609 | source-map@^0.6.1:
610 | version "0.6.1"
611 | resolved "https://registry.npm.taobao.org/source-map/download/source-map-0.6.1.tgz#74722af32e9614e9c287a8d0bbde48b5e2f1a263"
612 | integrity sha1-dHIq8y6WFOnCh6jQu95IteLxomM=
613 |
614 | sourcemap-codec@^1.4.4:
615 | version "1.4.8"
616 | resolved "https://registry.nlark.com/sourcemap-codec/download/sourcemap-codec-1.4.8.tgz#ea804bd94857402e6992d05a38ef1ae35a9ab4c4"
617 | integrity sha1-6oBL2UhXQC5pktBaOO8a41qatMQ=
618 |
619 | "statuses@>= 1.4.0 < 2", "statuses@>= 1.5.0 < 2", statuses@^1.5.0:
620 | version "1.5.0"
621 | resolved "https://registry.npm.taobao.org/statuses/download/statuses-1.5.0.tgz?cache=0&sync_timestamp=1609654066899&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fstatuses%2Fdownload%2Fstatuses-1.5.0.tgz#161c7dac177659fd9811f43771fa99381478628c"
622 | integrity sha1-Fhx9rBd2Wf2YEfQ3cfqZOBR4Yow=
623 |
624 | string-hash@^1.1.1:
625 | version "1.1.3"
626 | resolved "https://registry.npm.taobao.org/string-hash/download/string-hash-1.1.3.tgz#e8aafc0ac1855b4666929ed7dd1275df5d6c811b"
627 | integrity sha1-6Kr8CsGFW0Zmkp7X3RJ1311sgRs=
628 |
629 | to-fast-properties@^2.0.0:
630 | version "2.0.0"
631 | resolved "https://registry.nlark.com/to-fast-properties/download/to-fast-properties-2.0.0.tgz#dc5e698cbd079265bc73e0377681a4e4e83f616e"
632 | integrity sha1-3F5pjL0HkmW8c+A3doGk5Og/YW4=
633 |
634 | toidentifier@1.0.0:
635 | version "1.0.0"
636 | resolved "https://registry.npm.taobao.org/toidentifier/download/toidentifier-1.0.0.tgz#7e1be3470f1e77948bc43d94a3c8f4d7752ba553"
637 | integrity sha1-fhvjRw8ed5SLxD2Uo8j013UrpVM=
638 |
639 | tsscmp@1.0.6:
640 | version "1.0.6"
641 | resolved "https://registry.npm.taobao.org/tsscmp/download/tsscmp-1.0.6.tgz#85b99583ac3589ec4bfef825b5000aa911d605eb"
642 | integrity sha1-hbmVg6w1iexL/vgltQAKqRHWBes=
643 |
644 | type-is@^1.6.16:
645 | version "1.6.18"
646 | resolved "https://registry.npm.taobao.org/type-is/download/type-is-1.6.18.tgz#4e552cd05df09467dcbc4ef739de89f2cf37c131"
647 | integrity sha1-TlUs0F3wlGfcvE73Od6J8s83wTE=
648 | dependencies:
649 | media-typer "0.3.0"
650 | mime-types "~2.1.24"
651 |
652 | util-deprecate@^1.0.2:
653 | version "1.0.2"
654 | resolved "https://registry.npm.taobao.org/util-deprecate/download/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf"
655 | integrity sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=
656 |
657 | vary@^1.1.2:
658 | version "1.1.2"
659 | resolved "https://registry.npm.taobao.org/vary/download/vary-1.1.2.tgz#2299f02c6ded30d4a5961b0b9f74524a18f634fc"
660 | integrity sha1-IpnwLG3tMNSllhsLn3RSShj2NPw=
661 |
662 | vue@^3.2.12:
663 | version "3.2.12"
664 | resolved "https://registry.nlark.com/vue/download/vue-3.2.12.tgz#b44f55506fb6a7c4b65635e609deb5f9368aa2ce"
665 | integrity sha1-tE9VUG+2p8S2VjXmCd61+TaKos4=
666 | dependencies:
667 | "@vue/compiler-dom" "3.2.12"
668 | "@vue/runtime-dom" "3.2.12"
669 | "@vue/shared" "3.2.12"
670 |
671 | yallist@^3.0.2:
672 | version "3.1.1"
673 | resolved "https://registry.nlark.com/yallist/download/yallist-3.1.1.tgz#dbb7daf9bfd8bac9ab45ebf602b8cbad0d5d08fd"
674 | integrity sha1-27fa+b/YusmrRev2ArjLrQ1dCP0=
675 |
676 | ylru@^1.2.0:
677 | version "1.2.1"
678 | resolved "https://registry.npm.taobao.org/ylru/download/ylru-1.2.1.tgz#f576b63341547989c1de7ba288760923b27fe84f"
679 | integrity sha1-9Xa2M0FUeYnB3nuiiHYJI7J/6E8=
680 |
--------------------------------------------------------------------------------