├── .gitignore
├── .npmignore
├── LICENSE
├── README.md
├── example
└── vue2
│ ├── cert
│ ├── xxx.cert
│ └── xxx.key
│ ├── index.html
│ ├── package-lock.json
│ ├── package.json
│ ├── proxy-table.js
│ ├── src
│ ├── App.vue
│ ├── components
│ │ ├── ComponentA
│ │ │ └── index.vue
│ │ └── News.vue
│ ├── main.js
│ └── router
│ │ └── index.js
│ └── vite.config.js
├── package-lock.json
├── package.json
├── rollup.config.ts
├── src
├── index.ts
└── utils.ts
└── tsconfig.json
/.gitignore:
--------------------------------------------------------------------------------
1 | node_modules
2 | .DS_Store
3 | dist
--------------------------------------------------------------------------------
/.npmignore:
--------------------------------------------------------------------------------
1 | example
--------------------------------------------------------------------------------
/LICENSE:
--------------------------------------------------------------------------------
1 | MIT License
2 |
3 | Copyright (c) 2021 williamyorkl
4 |
5 | Permission is hereby granted, free of charge, to any person obtaining a copy
6 | of this software and associated documentation files (the "Software"), to deal
7 | in the Software without restriction, including without limitation the rights
8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | copies of the Software, and to permit persons to whom the Software is
10 | furnished to do so, subject to the following conditions:
11 |
12 | The above copyright notice and this permission notice shall be included in all
13 | copies or substantial portions of the Software.
14 |
15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21 | SOFTWARE.
22 |
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | # vite-plugin-proxy-middleware
2 |
3 | a vite plugin that solve the conflict problem between turning on vite proxy and http2, you can use both http2 and proxy at the same time ;-)
4 |
5 | Reason for the limitation between `h2` and `proxy` are saying explicitly on Vite's website:
6 | https://vitejs.dev/config/#server-https
7 |
8 |
9 |
10 | ## Usage
11 |
12 | #### 1. Install
13 |
14 | ```bash
15 | npm i vite-plugin-proxy-middleware -D
16 | ```
17 |
18 | #### 2. Add it to `vite.config.js`
19 |
20 | ```js
21 | // vite.config.js
22 | import { createVuePlugin } from "vite-plugin-vue2";
23 | import VitePluginProxyMiddleware from "vite-plugin-proxy-middleware";
24 |
25 | const path = require("path");
26 |
27 | export default {
28 | plugins: [
29 | createVuePlugin(),
30 | VitePluginProxyMiddleware({
31 | proxyTable: path.resolve(__dirname, "./proxy-table"),
32 | }),
33 | ],
34 | server: {
35 | /* https option must be turned on,so that you can use h2 */
36 | https: {
37 | key: "./cert/xxx.cert",
38 | cert: "./cert/xxx.key",
39 | },
40 |
41 | /* vite's original proxy must be ignored,or else it will impact on h2 setting turning on */
42 | // proxy: xxx,
43 | },
44 | };
45 | ```
46 |
47 | #### 3. Config your proxy table setting to the option: `proxyTable`
48 |
49 | ```js
50 | // vite proxy table example
51 |
52 | module.exports = {
53 | dev: {
54 | "/admin": {
55 | target: "http://xxx-dev.com/",
56 | rewrite: (path) => path.replace(/^\/admin/, ""),
57 | },
58 | },
59 | test: {
60 | "/admin": {
61 | target: "http://xxx-test.com/",
62 | rewrite: (path) => path.replace(/^\/admin/, ""),
63 | },
64 | },
65 | gray: {
66 | "/admin": {
67 | target: "http://xxx-gray.com",
68 | rewrite: (path) => path.replace(/^\/admin/, ""),
69 | },
70 | },
71 | prod: {
72 | "/admin": {
73 | target: "http://xxx-prod.com",
74 | rewrite: (path) => path.replace(/^\/admin/, ""),
75 | },
76 | },
77 | };
78 | ```
79 |
80 | #### 4. Generate a SSL certificate
81 |
82 | > What's more important, please generate a SSL certificate to ensure that your `https` protocols works locally, only if your `https` works, so that you can use http2
83 |
84 | How to generate a local SSL certificate:
85 |
86 | 1. https://github.com/FiloSottile/mkcert
87 |
88 | 2. https://www.jianshu.com/p/7cb5c2cffaaa
89 |
90 | #### 5. Some the other options for reference
91 |
92 | ```ts
93 | interface userOptsType {
94 | /** if you are using mock, specify a mockPath, default value is '/dev-mock', */
95 | mockPath?: string;
96 |
97 | /** proxyTable can be a proxyTable.js path string or proxyTable object */
98 | proxyTable: proxyTableType;
99 |
100 | /** public host config (if you have a host name for your develop environment,such as "xxx-dev.xxx.com", you can set it here, which will be much easier for your to click the link and open the page on browser) */
101 | publicHost?: string;
102 | }
103 | ```
104 |
105 | #### 6. That's all
106 |
107 |
108 |
109 | ## License
110 |
111 | MIT License © 2021 [williamyorkl](https://github.com/williamyorkl)
112 |
--------------------------------------------------------------------------------
/example/vue2/cert/xxx.cert:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/williamyorkl/vite-plugin-proxy-middleware/2d7acdc2e029f5d6fbb67aa617178543f349d63a/example/vue2/cert/xxx.cert
--------------------------------------------------------------------------------
/example/vue2/cert/xxx.key:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/williamyorkl/vite-plugin-proxy-middleware/2d7acdc2e029f5d6fbb67aa617178543f349d63a/example/vue2/cert/xxx.key
--------------------------------------------------------------------------------
/example/vue2/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 | Vite App
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/example/vue2/package-lock.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "vue2",
3 | "version": "1.0.0",
4 | "lockfileVersion": 1,
5 | "requires": true,
6 | "dependencies": {
7 | "@babel/code-frame": {
8 | "version": "7.14.5",
9 | "resolved": "https://registry.nlark.com/@babel/code-frame/download/@babel/code-frame-7.14.5.tgz?cache=0&sync_timestamp=1623280394200&other_urls=https%3A%2F%2Fregistry.nlark.com%2F%40babel%2Fcode-frame%2Fdownload%2F%40babel%2Fcode-frame-7.14.5.tgz",
10 | "integrity": "sha1-I7CNdA6D9JxeWZRfvxtD6Au/Tts=",
11 | "dev": true,
12 | "requires": {
13 | "@babel/highlight": "^7.14.5"
14 | }
15 | },
16 | "@babel/compat-data": {
17 | "version": "7.15.0",
18 | "resolved": "https://registry.nlark.com/@babel/compat-data/download/@babel/compat-data-7.15.0.tgz",
19 | "integrity": "sha1-Lbr4uFM0eWyvuw9Xk6kKL8AQsXY=",
20 | "dev": true
21 | },
22 | "@babel/core": {
23 | "version": "7.15.0",
24 | "resolved": "https://registry.nlark.com/@babel/core/download/@babel/core-7.15.0.tgz?cache=0&sync_timestamp=1628111663424&other_urls=https%3A%2F%2Fregistry.nlark.com%2F%40babel%2Fcore%2Fdownload%2F%40babel%2Fcore-7.15.0.tgz",
25 | "integrity": "sha1-dJ5Xxod4tzrYCCd1Vh9n9Rlqr6g=",
26 | "dev": true,
27 | "requires": {
28 | "@babel/code-frame": "^7.14.5",
29 | "@babel/generator": "^7.15.0",
30 | "@babel/helper-compilation-targets": "^7.15.0",
31 | "@babel/helper-module-transforms": "^7.15.0",
32 | "@babel/helpers": "^7.14.8",
33 | "@babel/parser": "^7.15.0",
34 | "@babel/template": "^7.14.5",
35 | "@babel/traverse": "^7.15.0",
36 | "@babel/types": "^7.15.0",
37 | "convert-source-map": "^1.7.0",
38 | "debug": "^4.1.0",
39 | "gensync": "^1.0.0-beta.2",
40 | "json5": "^2.1.2",
41 | "semver": "^6.3.0",
42 | "source-map": "^0.5.0"
43 | },
44 | "dependencies": {
45 | "source-map": {
46 | "version": "0.5.7",
47 | "resolved": "https://registry.nlark.com/source-map/download/source-map-0.5.7.tgz",
48 | "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=",
49 | "dev": true
50 | }
51 | }
52 | },
53 | "@babel/generator": {
54 | "version": "7.15.0",
55 | "resolved": "https://registry.nlark.com/@babel/generator/download/@babel/generator-7.15.0.tgz",
56 | "integrity": "sha1-p9DBcuDYFJdLrVqnes5UO5eRfxU=",
57 | "dev": true,
58 | "requires": {
59 | "@babel/types": "^7.15.0",
60 | "jsesc": "^2.5.1",
61 | "source-map": "^0.5.0"
62 | },
63 | "dependencies": {
64 | "source-map": {
65 | "version": "0.5.7",
66 | "resolved": "https://registry.nlark.com/source-map/download/source-map-0.5.7.tgz",
67 | "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=",
68 | "dev": true
69 | }
70 | }
71 | },
72 | "@babel/helper-annotate-as-pure": {
73 | "version": "7.14.5",
74 | "resolved": "https://registry.nlark.com/@babel/helper-annotate-as-pure/download/@babel/helper-annotate-as-pure-7.14.5.tgz?cache=0&sync_timestamp=1623280393672&other_urls=https%3A%2F%2Fregistry.nlark.com%2F%40babel%2Fhelper-annotate-as-pure%2Fdownload%2F%40babel%2Fhelper-annotate-as-pure-7.14.5.tgz",
75 | "integrity": "sha1-e/R47Dtxcm1WqMpXdbBG/CmHnmE=",
76 | "dev": true,
77 | "requires": {
78 | "@babel/types": "^7.14.5"
79 | }
80 | },
81 | "@babel/helper-compilation-targets": {
82 | "version": "7.15.0",
83 | "resolved": "https://registry.nlark.com/@babel/helper-compilation-targets/download/@babel/helper-compilation-targets-7.15.0.tgz",
84 | "integrity": "sha1-lz34y9AlUV8/8l2wwF78cE+nmBg=",
85 | "dev": true,
86 | "requires": {
87 | "@babel/compat-data": "^7.15.0",
88 | "@babel/helper-validator-option": "^7.14.5",
89 | "browserslist": "^4.16.6",
90 | "semver": "^6.3.0"
91 | }
92 | },
93 | "@babel/helper-create-class-features-plugin": {
94 | "version": "7.15.0",
95 | "resolved": "https://registry.nlark.com/@babel/helper-create-class-features-plugin/download/@babel/helper-create-class-features-plugin-7.15.0.tgz",
96 | "integrity": "sha1-yaE3pNE3stDixkms9TbXuhp2wPc=",
97 | "dev": true,
98 | "requires": {
99 | "@babel/helper-annotate-as-pure": "^7.14.5",
100 | "@babel/helper-function-name": "^7.14.5",
101 | "@babel/helper-member-expression-to-functions": "^7.15.0",
102 | "@babel/helper-optimise-call-expression": "^7.14.5",
103 | "@babel/helper-replace-supers": "^7.15.0",
104 | "@babel/helper-split-export-declaration": "^7.14.5"
105 | }
106 | },
107 | "@babel/helper-function-name": {
108 | "version": "7.14.5",
109 | "resolved": "https://registry.nlark.com/@babel/helper-function-name/download/@babel/helper-function-name-7.14.5.tgz?cache=0&sync_timestamp=1623280385237&other_urls=https%3A%2F%2Fregistry.nlark.com%2F%40babel%2Fhelper-function-name%2Fdownload%2F%40babel%2Fhelper-function-name-7.14.5.tgz",
110 | "integrity": "sha1-ieLEdJcvFdjiM7Uu6MSA4s/NUMQ=",
111 | "dev": true,
112 | "requires": {
113 | "@babel/helper-get-function-arity": "^7.14.5",
114 | "@babel/template": "^7.14.5",
115 | "@babel/types": "^7.14.5"
116 | }
117 | },
118 | "@babel/helper-get-function-arity": {
119 | "version": "7.14.5",
120 | "resolved": "https://registry.nlark.com/@babel/helper-get-function-arity/download/@babel/helper-get-function-arity-7.14.5.tgz?cache=0&sync_timestamp=1623280360950&other_urls=https%3A%2F%2Fregistry.nlark.com%2F%40babel%2Fhelper-get-function-arity%2Fdownload%2F%40babel%2Fhelper-get-function-arity-7.14.5.tgz",
121 | "integrity": "sha1-Jfv6V5sJN+7h87gF7OTOOYxDGBU=",
122 | "dev": true,
123 | "requires": {
124 | "@babel/types": "^7.14.5"
125 | }
126 | },
127 | "@babel/helper-hoist-variables": {
128 | "version": "7.14.5",
129 | "resolved": "https://registry.nlark.com/@babel/helper-hoist-variables/download/@babel/helper-hoist-variables-7.14.5.tgz?cache=0&sync_timestamp=1623280361512&other_urls=https%3A%2F%2Fregistry.nlark.com%2F%40babel%2Fhelper-hoist-variables%2Fdownload%2F%40babel%2Fhelper-hoist-variables-7.14.5.tgz",
130 | "integrity": "sha1-4N0nwzp45XfXyIhJFqPn7x98f40=",
131 | "dev": true,
132 | "requires": {
133 | "@babel/types": "^7.14.5"
134 | }
135 | },
136 | "@babel/helper-member-expression-to-functions": {
137 | "version": "7.15.0",
138 | "resolved": "https://registry.nlark.com/@babel/helper-member-expression-to-functions/download/@babel/helper-member-expression-to-functions-7.15.0.tgz",
139 | "integrity": "sha1-Ddr1KZyBefJ/NzJ5NlU+m7pgmQs=",
140 | "dev": true,
141 | "requires": {
142 | "@babel/types": "^7.15.0"
143 | }
144 | },
145 | "@babel/helper-module-imports": {
146 | "version": "7.14.5",
147 | "resolved": "https://registry.nlark.com/@babel/helper-module-imports/download/@babel/helper-module-imports-7.14.5.tgz?cache=0&sync_timestamp=1623280362184&other_urls=https%3A%2F%2Fregistry.nlark.com%2F%40babel%2Fhelper-module-imports%2Fdownload%2F%40babel%2Fhelper-module-imports-7.14.5.tgz",
148 | "integrity": "sha1-bRpE32o4yVeqfDEtoHZCnxG0IvM=",
149 | "dev": true,
150 | "requires": {
151 | "@babel/types": "^7.14.5"
152 | }
153 | },
154 | "@babel/helper-module-transforms": {
155 | "version": "7.15.0",
156 | "resolved": "https://registry.nlark.com/@babel/helper-module-transforms/download/@babel/helper-module-transforms-7.15.0.tgz",
157 | "integrity": "sha1-Z5J1WB6gVjc+3b42DhQZ7yN4Owg=",
158 | "dev": true,
159 | "requires": {
160 | "@babel/helper-module-imports": "^7.14.5",
161 | "@babel/helper-replace-supers": "^7.15.0",
162 | "@babel/helper-simple-access": "^7.14.8",
163 | "@babel/helper-split-export-declaration": "^7.14.5",
164 | "@babel/helper-validator-identifier": "^7.14.9",
165 | "@babel/template": "^7.14.5",
166 | "@babel/traverse": "^7.15.0",
167 | "@babel/types": "^7.15.0"
168 | }
169 | },
170 | "@babel/helper-optimise-call-expression": {
171 | "version": "7.14.5",
172 | "resolved": "https://registry.nlark.com/@babel/helper-optimise-call-expression/download/@babel/helper-optimise-call-expression-7.14.5.tgz?cache=0&sync_timestamp=1623280360981&other_urls=https%3A%2F%2Fregistry.nlark.com%2F%40babel%2Fhelper-optimise-call-expression%2Fdownload%2F%40babel%2Fhelper-optimise-call-expression-7.14.5.tgz",
173 | "integrity": "sha1-8nOVqGGeBmWz8DZM3bQcJdcbSZw=",
174 | "dev": true,
175 | "requires": {
176 | "@babel/types": "^7.14.5"
177 | }
178 | },
179 | "@babel/helper-plugin-utils": {
180 | "version": "7.14.5",
181 | "resolved": "https://registry.nlark.com/@babel/helper-plugin-utils/download/@babel/helper-plugin-utils-7.14.5.tgz",
182 | "integrity": "sha1-WsgizpfuxGdBq3ClF5ceRDpwxak=",
183 | "dev": true
184 | },
185 | "@babel/helper-replace-supers": {
186 | "version": "7.15.0",
187 | "resolved": "https://registry.nlark.com/@babel/helper-replace-supers/download/@babel/helper-replace-supers-7.15.0.tgz",
188 | "integrity": "sha1-rOB3CPW/dGvy5rqZVyzOebXU5/Q=",
189 | "dev": true,
190 | "requires": {
191 | "@babel/helper-member-expression-to-functions": "^7.15.0",
192 | "@babel/helper-optimise-call-expression": "^7.14.5",
193 | "@babel/traverse": "^7.15.0",
194 | "@babel/types": "^7.15.0"
195 | }
196 | },
197 | "@babel/helper-simple-access": {
198 | "version": "7.14.8",
199 | "resolved": "https://registry.nlark.com/@babel/helper-simple-access/download/@babel/helper-simple-access-7.14.8.tgz",
200 | "integrity": "sha1-guH+wGRKfndcdNMF8hLDn4/nOSQ=",
201 | "dev": true,
202 | "requires": {
203 | "@babel/types": "^7.14.8"
204 | }
205 | },
206 | "@babel/helper-split-export-declaration": {
207 | "version": "7.14.5",
208 | "resolved": "https://registry.nlark.com/@babel/helper-split-export-declaration/download/@babel/helper-split-export-declaration-7.14.5.tgz?cache=0&sync_timestamp=1623280365934&other_urls=https%3A%2F%2Fregistry.nlark.com%2F%40babel%2Fhelper-split-export-declaration%2Fdownload%2F%40babel%2Fhelper-split-export-declaration-7.14.5.tgz",
209 | "integrity": "sha1-IrI6VO9RwrdgXYUZMMGXbdC8aTo=",
210 | "dev": true,
211 | "requires": {
212 | "@babel/types": "^7.14.5"
213 | }
214 | },
215 | "@babel/helper-validator-identifier": {
216 | "version": "7.14.9",
217 | "resolved": "https://registry.nlark.com/@babel/helper-validator-identifier/download/@babel/helper-validator-identifier-7.14.9.tgz?cache=0&sync_timestamp=1627804430461&other_urls=https%3A%2F%2Fregistry.nlark.com%2F%40babel%2Fhelper-validator-identifier%2Fdownload%2F%40babel%2Fhelper-validator-identifier-7.14.9.tgz",
218 | "integrity": "sha1-ZlTRcbICT22O4VG/JQlpmRkTHUg=",
219 | "dev": true
220 | },
221 | "@babel/helper-validator-option": {
222 | "version": "7.14.5",
223 | "resolved": "https://registry.nlark.com/@babel/helper-validator-option/download/@babel/helper-validator-option-7.14.5.tgz",
224 | "integrity": "sha1-bnKh//GNXfy4eOHmLxoCHEty1aM=",
225 | "dev": true
226 | },
227 | "@babel/helpers": {
228 | "version": "7.15.3",
229 | "resolved": "https://registry.nlark.com/@babel/helpers/download/@babel/helpers-7.15.3.tgz",
230 | "integrity": "sha1-yWg4t1K5Xc1SW050HtQLsdwqE1c=",
231 | "dev": true,
232 | "requires": {
233 | "@babel/template": "^7.14.5",
234 | "@babel/traverse": "^7.15.0",
235 | "@babel/types": "^7.15.0"
236 | }
237 | },
238 | "@babel/highlight": {
239 | "version": "7.14.5",
240 | "resolved": "https://registry.nlark.com/@babel/highlight/download/@babel/highlight-7.14.5.tgz?cache=0&sync_timestamp=1623280393681&other_urls=https%3A%2F%2Fregistry.nlark.com%2F%40babel%2Fhighlight%2Fdownload%2F%40babel%2Fhighlight-7.14.5.tgz",
241 | "integrity": "sha1-aGGlLwOWZAUAH2qlNKAaJNmejNk=",
242 | "dev": true,
243 | "requires": {
244 | "@babel/helper-validator-identifier": "^7.14.5",
245 | "chalk": "^2.0.0",
246 | "js-tokens": "^4.0.0"
247 | }
248 | },
249 | "@babel/parser": {
250 | "version": "7.15.3",
251 | "resolved": "https://registry.nlark.com/@babel/parser/download/@babel/parser-7.15.3.tgz?cache=0&sync_timestamp=1628666443707&other_urls=https%3A%2F%2Fregistry.nlark.com%2F%40babel%2Fparser%2Fdownload%2F%40babel%2Fparser-7.15.3.tgz",
252 | "integrity": "sha1-NBbZvqdIBSz8tj28wnNoEFse2GI=",
253 | "dev": true
254 | },
255 | "@babel/plugin-proposal-class-properties": {
256 | "version": "7.14.5",
257 | "resolved": "https://registry.nlark.com/@babel/plugin-proposal-class-properties/download/@babel/plugin-proposal-class-properties-7.14.5.tgz?cache=0&sync_timestamp=1623280683880&other_urls=https%3A%2F%2Fregistry.nlark.com%2F%40babel%2Fplugin-proposal-class-properties%2Fdownload%2F%40babel%2Fplugin-proposal-class-properties-7.14.5.tgz",
258 | "integrity": "sha1-QNHuFAxbHjGjUPT17tlFCWVZtC4=",
259 | "dev": true,
260 | "requires": {
261 | "@babel/helper-create-class-features-plugin": "^7.14.5",
262 | "@babel/helper-plugin-utils": "^7.14.5"
263 | }
264 | },
265 | "@babel/plugin-proposal-decorators": {
266 | "version": "7.14.5",
267 | "resolved": "https://registry.nlark.com/@babel/plugin-proposal-decorators/download/@babel/plugin-proposal-decorators-7.14.5.tgz?cache=0&sync_timestamp=1623280686025&other_urls=https%3A%2F%2Fregistry.nlark.com%2F%40babel%2Fplugin-proposal-decorators%2Fdownload%2F%40babel%2Fplugin-proposal-decorators-7.14.5.tgz",
268 | "integrity": "sha1-WbxN/B1mW1pnSc95j/Qil+0bLB0=",
269 | "dev": true,
270 | "requires": {
271 | "@babel/helper-create-class-features-plugin": "^7.14.5",
272 | "@babel/helper-plugin-utils": "^7.14.5",
273 | "@babel/plugin-syntax-decorators": "^7.14.5"
274 | }
275 | },
276 | "@babel/plugin-syntax-decorators": {
277 | "version": "7.14.5",
278 | "resolved": "https://registry.nlark.com/@babel/plugin-syntax-decorators/download/@babel/plugin-syntax-decorators-7.14.5.tgz",
279 | "integrity": "sha1-6vucDL4JyK/rlkujp7vWOUWnLyA=",
280 | "dev": true,
281 | "requires": {
282 | "@babel/helper-plugin-utils": "^7.14.5"
283 | }
284 | },
285 | "@babel/plugin-syntax-jsx": {
286 | "version": "7.14.5",
287 | "resolved": "https://registry.nlark.com/@babel/plugin-syntax-jsx/download/@babel/plugin-syntax-jsx-7.14.5.tgz",
288 | "integrity": "sha1-AA4uJdhnPM5JMAUXo+2kTCY+QgE=",
289 | "dev": true,
290 | "requires": {
291 | "@babel/helper-plugin-utils": "^7.14.5"
292 | }
293 | },
294 | "@babel/plugin-syntax-typescript": {
295 | "version": "7.14.5",
296 | "resolved": "https://registry.nlark.com/@babel/plugin-syntax-typescript/download/@babel/plugin-syntax-typescript-7.14.5.tgz",
297 | "integrity": "sha1-uCxs5HGxZbXOQgz5KRTW+0YiVxY=",
298 | "dev": true,
299 | "requires": {
300 | "@babel/helper-plugin-utils": "^7.14.5"
301 | }
302 | },
303 | "@babel/plugin-transform-typescript": {
304 | "version": "7.15.0",
305 | "resolved": "https://registry.nlark.com/@babel/plugin-transform-typescript/download/@babel/plugin-transform-typescript-7.15.0.tgz",
306 | "integrity": "sha1-VT8jC51ThQGHFlhvxI2xDdIo634=",
307 | "dev": true,
308 | "requires": {
309 | "@babel/helper-create-class-features-plugin": "^7.15.0",
310 | "@babel/helper-plugin-utils": "^7.14.5",
311 | "@babel/plugin-syntax-typescript": "^7.14.5"
312 | }
313 | },
314 | "@babel/template": {
315 | "version": "7.14.5",
316 | "resolved": "https://registry.nlark.com/@babel/template/download/@babel/template-7.14.5.tgz?cache=0&sync_timestamp=1623280386138&other_urls=https%3A%2F%2Fregistry.nlark.com%2F%40babel%2Ftemplate%2Fdownload%2F%40babel%2Ftemplate-7.14.5.tgz",
317 | "integrity": "sha1-qbydizM1T/blWpxg0RCSAKaJdPQ=",
318 | "dev": true,
319 | "requires": {
320 | "@babel/code-frame": "^7.14.5",
321 | "@babel/parser": "^7.14.5",
322 | "@babel/types": "^7.14.5"
323 | }
324 | },
325 | "@babel/traverse": {
326 | "version": "7.15.0",
327 | "resolved": "https://registry.nlark.com/@babel/traverse/download/@babel/traverse-7.15.0.tgz",
328 | "integrity": "sha1-TMqDj9GyoDKDwfOOFB9jnWCz/Jg=",
329 | "dev": true,
330 | "requires": {
331 | "@babel/code-frame": "^7.14.5",
332 | "@babel/generator": "^7.15.0",
333 | "@babel/helper-function-name": "^7.14.5",
334 | "@babel/helper-hoist-variables": "^7.14.5",
335 | "@babel/helper-split-export-declaration": "^7.14.5",
336 | "@babel/parser": "^7.15.0",
337 | "@babel/types": "^7.15.0",
338 | "debug": "^4.1.0",
339 | "globals": "^11.1.0"
340 | }
341 | },
342 | "@babel/types": {
343 | "version": "7.15.0",
344 | "resolved": "https://registry.nlark.com/@babel/types/download/@babel/types-7.15.0.tgz?cache=0&sync_timestamp=1628111608723&other_urls=https%3A%2F%2Fregistry.nlark.com%2F%40babel%2Ftypes%2Fdownload%2F%40babel%2Ftypes-7.15.0.tgz",
345 | "integrity": "sha1-Ya8R8ihsTpxpyo3rX0N1pzxy3L0=",
346 | "dev": true,
347 | "requires": {
348 | "@babel/helper-validator-identifier": "^7.14.9",
349 | "to-fast-properties": "^2.0.0"
350 | }
351 | },
352 | "@rollup/pluginutils": {
353 | "version": "4.1.1",
354 | "resolved": "https://registry.nlark.com/@rollup/pluginutils/download/@rollup/pluginutils-4.1.1.tgz?cache=0&sync_timestamp=1626393703548&other_urls=https%3A%2F%2Fregistry.nlark.com%2F%40rollup%2Fpluginutils%2Fdownload%2F%40rollup%2Fpluginutils-4.1.1.tgz",
355 | "integrity": "sha1-HU2obdTt7RVlalfZM/2iuaCNR+w=",
356 | "dev": true,
357 | "requires": {
358 | "estree-walker": "^2.0.1",
359 | "picomatch": "^2.2.2"
360 | }
361 | },
362 | "@vue/babel-helper-vue-jsx-merge-props": {
363 | "version": "1.2.1",
364 | "resolved": "https://registry.npm.taobao.org/@vue/babel-helper-vue-jsx-merge-props/download/@vue/babel-helper-vue-jsx-merge-props-1.2.1.tgz?cache=0&sync_timestamp=1602851122331&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40vue%2Fbabel-helper-vue-jsx-merge-props%2Fdownload%2F%40vue%2Fbabel-helper-vue-jsx-merge-props-1.2.1.tgz",
365 | "integrity": "sha1-MWJKelBfsU2h1YAjclpMXycOaoE=",
366 | "dev": true
367 | },
368 | "@vue/babel-plugin-transform-vue-jsx": {
369 | "version": "1.2.1",
370 | "resolved": "https://registry.npm.taobao.org/@vue/babel-plugin-transform-vue-jsx/download/@vue/babel-plugin-transform-vue-jsx-1.2.1.tgz?cache=0&sync_timestamp=1602851121024&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40vue%2Fbabel-plugin-transform-vue-jsx%2Fdownload%2F%40vue%2Fbabel-plugin-transform-vue-jsx-1.2.1.tgz",
371 | "integrity": "sha1-ZGBGxlLC8CQnJ/NFGdkXsGQEHtc=",
372 | "dev": true,
373 | "requires": {
374 | "@babel/helper-module-imports": "^7.0.0",
375 | "@babel/plugin-syntax-jsx": "^7.2.0",
376 | "@vue/babel-helper-vue-jsx-merge-props": "^1.2.1",
377 | "html-tags": "^2.0.0",
378 | "lodash.kebabcase": "^4.1.1",
379 | "svg-tags": "^1.0.0"
380 | }
381 | },
382 | "@vue/babel-preset-jsx": {
383 | "version": "1.2.4",
384 | "resolved": "https://registry.npm.taobao.org/@vue/babel-preset-jsx/download/@vue/babel-preset-jsx-1.2.4.tgz",
385 | "integrity": "sha1-kv6nnbbxOwHoDToAmeKSS9y+Toc=",
386 | "dev": true,
387 | "requires": {
388 | "@vue/babel-helper-vue-jsx-merge-props": "^1.2.1",
389 | "@vue/babel-plugin-transform-vue-jsx": "^1.2.1",
390 | "@vue/babel-sugar-composition-api-inject-h": "^1.2.1",
391 | "@vue/babel-sugar-composition-api-render-instance": "^1.2.4",
392 | "@vue/babel-sugar-functional-vue": "^1.2.2",
393 | "@vue/babel-sugar-inject-h": "^1.2.2",
394 | "@vue/babel-sugar-v-model": "^1.2.3",
395 | "@vue/babel-sugar-v-on": "^1.2.3"
396 | }
397 | },
398 | "@vue/babel-sugar-composition-api-inject-h": {
399 | "version": "1.2.1",
400 | "resolved": "https://registry.npm.taobao.org/@vue/babel-sugar-composition-api-inject-h/download/@vue/babel-sugar-composition-api-inject-h-1.2.1.tgz",
401 | "integrity": "sha1-BdbgxDJxDjdYKyvppgSbaJtvA+s=",
402 | "dev": true,
403 | "requires": {
404 | "@babel/plugin-syntax-jsx": "^7.2.0"
405 | }
406 | },
407 | "@vue/babel-sugar-composition-api-render-instance": {
408 | "version": "1.2.4",
409 | "resolved": "https://registry.npm.taobao.org/@vue/babel-sugar-composition-api-render-instance/download/@vue/babel-sugar-composition-api-render-instance-1.2.4.tgz",
410 | "integrity": "sha1-5MvGmXw0T6wnF4WteikyXFHWjRk=",
411 | "dev": true,
412 | "requires": {
413 | "@babel/plugin-syntax-jsx": "^7.2.0"
414 | }
415 | },
416 | "@vue/babel-sugar-functional-vue": {
417 | "version": "1.2.2",
418 | "resolved": "https://registry.nlark.com/@vue/babel-sugar-functional-vue/download/@vue/babel-sugar-functional-vue-1.2.2.tgz",
419 | "integrity": "sha1-JnqayNeHyW7b8Dzj85LEnam9Jlg=",
420 | "dev": true,
421 | "requires": {
422 | "@babel/plugin-syntax-jsx": "^7.2.0"
423 | }
424 | },
425 | "@vue/babel-sugar-inject-h": {
426 | "version": "1.2.2",
427 | "resolved": "https://registry.nlark.com/@vue/babel-sugar-inject-h/download/@vue/babel-sugar-inject-h-1.2.2.tgz",
428 | "integrity": "sha1-1zjTyJM2fshJHcu2abAAkZKT46o=",
429 | "dev": true,
430 | "requires": {
431 | "@babel/plugin-syntax-jsx": "^7.2.0"
432 | }
433 | },
434 | "@vue/babel-sugar-v-model": {
435 | "version": "1.2.3",
436 | "resolved": "https://registry.npm.taobao.org/@vue/babel-sugar-v-model/download/@vue/babel-sugar-v-model-1.2.3.tgz?cache=0&sync_timestamp=1603182488740&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40vue%2Fbabel-sugar-v-model%2Fdownload%2F%40vue%2Fbabel-sugar-v-model-1.2.3.tgz",
437 | "integrity": "sha1-+h8pulHr8KoabDX6ZtU5vEWaGPI=",
438 | "dev": true,
439 | "requires": {
440 | "@babel/plugin-syntax-jsx": "^7.2.0",
441 | "@vue/babel-helper-vue-jsx-merge-props": "^1.2.1",
442 | "@vue/babel-plugin-transform-vue-jsx": "^1.2.1",
443 | "camelcase": "^5.0.0",
444 | "html-tags": "^2.0.0",
445 | "svg-tags": "^1.0.0"
446 | }
447 | },
448 | "@vue/babel-sugar-v-on": {
449 | "version": "1.2.3",
450 | "resolved": "https://registry.nlark.com/@vue/babel-sugar-v-on/download/@vue/babel-sugar-v-on-1.2.3.tgz",
451 | "integrity": "sha1-NCNnF4WGpp85LwS/ujICHQKROto=",
452 | "dev": true,
453 | "requires": {
454 | "@babel/plugin-syntax-jsx": "^7.2.0",
455 | "@vue/babel-plugin-transform-vue-jsx": "^1.2.1",
456 | "camelcase": "^5.0.0"
457 | }
458 | },
459 | "@vue/component-compiler-utils": {
460 | "version": "3.2.2",
461 | "resolved": "https://registry.nlark.com/@vue/component-compiler-utils/download/@vue/component-compiler-utils-3.2.2.tgz",
462 | "integrity": "sha1-L37V/u2C/38ChKzBHVJe5+/yJGA=",
463 | "dev": true,
464 | "requires": {
465 | "consolidate": "^0.15.1",
466 | "hash-sum": "^1.0.2",
467 | "lru-cache": "^4.1.2",
468 | "merge-source-map": "^1.1.0",
469 | "postcss": "^7.0.36",
470 | "postcss-selector-parser": "^6.0.2",
471 | "prettier": "^1.18.2",
472 | "source-map": "~0.6.1",
473 | "vue-template-es2015-compiler": "^1.9.0"
474 | },
475 | "dependencies": {
476 | "consolidate": {
477 | "version": "0.15.1",
478 | "resolved": "https://registry.npm.taobao.org/consolidate/download/consolidate-0.15.1.tgz",
479 | "integrity": "sha1-IasEMjXHGgfUXZqtmFk7DbpWurc=",
480 | "dev": true,
481 | "requires": {
482 | "bluebird": "^3.1.1"
483 | }
484 | },
485 | "hash-sum": {
486 | "version": "1.0.2",
487 | "resolved": "https://registry.npm.taobao.org/hash-sum/download/hash-sum-1.0.2.tgz",
488 | "integrity": "sha1-M7QHd3VMZDJXPBIMw4CLvRDUfwQ=",
489 | "dev": true
490 | },
491 | "postcss": {
492 | "version": "7.0.36",
493 | "resolved": "https://registry.nlark.com/postcss/download/postcss-7.0.36.tgz?cache=0&sync_timestamp=1626882933935&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fpostcss%2Fdownload%2Fpostcss-7.0.36.tgz",
494 | "integrity": "sha1-BW+M/6k5ZiqPWQWVDAfVKFZE38s=",
495 | "dev": true,
496 | "requires": {
497 | "chalk": "^2.4.2",
498 | "source-map": "^0.6.1",
499 | "supports-color": "^6.1.0"
500 | }
501 | },
502 | "prettier": {
503 | "version": "1.19.1",
504 | "resolved": "https://registry.nlark.com/prettier/download/prettier-1.19.1.tgz?cache=0&sync_timestamp=1624696193562&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fprettier%2Fdownload%2Fprettier-1.19.1.tgz",
505 | "integrity": "sha1-99f1/4qc2HKnvkyhQglZVqYHl8s=",
506 | "dev": true,
507 | "optional": true
508 | },
509 | "source-map": {
510 | "version": "0.6.1",
511 | "resolved": "https://registry.nlark.com/source-map/download/source-map-0.6.1.tgz",
512 | "integrity": "sha1-dHIq8y6WFOnCh6jQu95IteLxomM=",
513 | "dev": true
514 | },
515 | "supports-color": {
516 | "version": "6.1.0",
517 | "resolved": "https://registry.nlark.com/supports-color/download/supports-color-6.1.0.tgz?cache=0&sync_timestamp=1626703414084&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fsupports-color%2Fdownload%2Fsupports-color-6.1.0.tgz",
518 | "integrity": "sha1-B2Srxpxj1ayELdSGfo0CXogN+PM=",
519 | "dev": true,
520 | "requires": {
521 | "has-flag": "^3.0.0"
522 | }
523 | }
524 | }
525 | },
526 | "ansi-regex": {
527 | "version": "2.1.1",
528 | "resolved": "https://registry.nlark.com/ansi-regex/download/ansi-regex-2.1.1.tgz",
529 | "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=",
530 | "dev": true
531 | },
532 | "ansi-styles": {
533 | "version": "3.2.1",
534 | "resolved": "https://registry.nlark.com/ansi-styles/download/ansi-styles-3.2.1.tgz",
535 | "integrity": "sha1-QfuyAkPlCxK+DwS43tvwdSDOhB0=",
536 | "dev": true,
537 | "requires": {
538 | "color-convert": "^1.9.0"
539 | }
540 | },
541 | "at-least-node": {
542 | "version": "1.0.0",
543 | "resolved": "https://registry.npm.taobao.org/at-least-node/download/at-least-node-1.0.0.tgz",
544 | "integrity": "sha1-YCzUtG6EStTv/JKoARo8RuAjjcI=",
545 | "dev": true
546 | },
547 | "babel-code-frame": {
548 | "version": "6.26.0",
549 | "resolved": "https://registry.nlark.com/babel-code-frame/download/babel-code-frame-6.26.0.tgz",
550 | "integrity": "sha1-Y/1D99weO7fONZR9uP42mj9Yx0s=",
551 | "dev": true,
552 | "requires": {
553 | "chalk": "^1.1.3",
554 | "esutils": "^2.0.2",
555 | "js-tokens": "^3.0.2"
556 | },
557 | "dependencies": {
558 | "ansi-styles": {
559 | "version": "2.2.1",
560 | "resolved": "https://registry.nlark.com/ansi-styles/download/ansi-styles-2.2.1.tgz",
561 | "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=",
562 | "dev": true
563 | },
564 | "chalk": {
565 | "version": "1.1.3",
566 | "resolved": "https://registry.nlark.com/chalk/download/chalk-1.1.3.tgz?cache=0&sync_timestamp=1627646697260&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fchalk%2Fdownload%2Fchalk-1.1.3.tgz",
567 | "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=",
568 | "dev": true,
569 | "requires": {
570 | "ansi-styles": "^2.2.1",
571 | "escape-string-regexp": "^1.0.2",
572 | "has-ansi": "^2.0.0",
573 | "strip-ansi": "^3.0.0",
574 | "supports-color": "^2.0.0"
575 | }
576 | },
577 | "js-tokens": {
578 | "version": "3.0.2",
579 | "resolved": "https://registry.nlark.com/js-tokens/download/js-tokens-3.0.2.tgz?cache=0&sync_timestamp=1619345098261&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fjs-tokens%2Fdownload%2Fjs-tokens-3.0.2.tgz",
580 | "integrity": "sha1-mGbfOVECEw449/mWvOtlRDIJwls=",
581 | "dev": true
582 | },
583 | "supports-color": {
584 | "version": "2.0.0",
585 | "resolved": "https://registry.nlark.com/supports-color/download/supports-color-2.0.0.tgz?cache=0&sync_timestamp=1626703414084&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fsupports-color%2Fdownload%2Fsupports-color-2.0.0.tgz",
586 | "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=",
587 | "dev": true
588 | }
589 | }
590 | },
591 | "babel-helper-builder-binary-assignment-operator-visitor": {
592 | "version": "6.24.1",
593 | "resolved": "https://registry.nlark.com/babel-helper-builder-binary-assignment-operator-visitor/download/babel-helper-builder-binary-assignment-operator-visitor-6.24.1.tgz",
594 | "integrity": "sha1-zORReto1b0IgvK6KAsKzRvmlZmQ=",
595 | "dev": true,
596 | "requires": {
597 | "babel-helper-explode-assignable-expression": "^6.24.1",
598 | "babel-runtime": "^6.22.0",
599 | "babel-types": "^6.24.1"
600 | }
601 | },
602 | "babel-helper-call-delegate": {
603 | "version": "6.24.1",
604 | "resolved": "https://registry.npm.taobao.org/babel-helper-call-delegate/download/babel-helper-call-delegate-6.24.1.tgz",
605 | "integrity": "sha1-7Oaqzdx25Bw0YfiL/Fdb0Nqi340=",
606 | "dev": true,
607 | "requires": {
608 | "babel-helper-hoist-variables": "^6.24.1",
609 | "babel-runtime": "^6.22.0",
610 | "babel-traverse": "^6.24.1",
611 | "babel-types": "^6.24.1"
612 | }
613 | },
614 | "babel-helper-define-map": {
615 | "version": "6.26.0",
616 | "resolved": "https://registry.nlark.com/babel-helper-define-map/download/babel-helper-define-map-6.26.0.tgz",
617 | "integrity": "sha1-pfVtq0GiX5fstJjH66ypgZ+Vvl8=",
618 | "dev": true,
619 | "requires": {
620 | "babel-helper-function-name": "^6.24.1",
621 | "babel-runtime": "^6.26.0",
622 | "babel-types": "^6.26.0",
623 | "lodash": "^4.17.4"
624 | }
625 | },
626 | "babel-helper-explode-assignable-expression": {
627 | "version": "6.24.1",
628 | "resolved": "https://registry.nlark.com/babel-helper-explode-assignable-expression/download/babel-helper-explode-assignable-expression-6.24.1.tgz",
629 | "integrity": "sha1-8luCz33BBDPFX3BZLVdGQArCLKo=",
630 | "dev": true,
631 | "requires": {
632 | "babel-runtime": "^6.22.0",
633 | "babel-traverse": "^6.24.1",
634 | "babel-types": "^6.24.1"
635 | }
636 | },
637 | "babel-helper-function-name": {
638 | "version": "6.24.1",
639 | "resolved": "https://registry.nlark.com/babel-helper-function-name/download/babel-helper-function-name-6.24.1.tgz",
640 | "integrity": "sha1-00dbjAPtmCQqJbSDUasYOZ01gKk=",
641 | "dev": true,
642 | "requires": {
643 | "babel-helper-get-function-arity": "^6.24.1",
644 | "babel-runtime": "^6.22.0",
645 | "babel-template": "^6.24.1",
646 | "babel-traverse": "^6.24.1",
647 | "babel-types": "^6.24.1"
648 | }
649 | },
650 | "babel-helper-get-function-arity": {
651 | "version": "6.24.1",
652 | "resolved": "https://registry.npm.taobao.org/babel-helper-get-function-arity/download/babel-helper-get-function-arity-6.24.1.tgz",
653 | "integrity": "sha1-j3eCqpNAfEHTqlCQj4mwMbG2hT0=",
654 | "dev": true,
655 | "requires": {
656 | "babel-runtime": "^6.22.0",
657 | "babel-types": "^6.24.1"
658 | }
659 | },
660 | "babel-helper-hoist-variables": {
661 | "version": "6.24.1",
662 | "resolved": "https://registry.nlark.com/babel-helper-hoist-variables/download/babel-helper-hoist-variables-6.24.1.tgz",
663 | "integrity": "sha1-HssnaJydJVE+rbyZFKc/VAi+enY=",
664 | "dev": true,
665 | "requires": {
666 | "babel-runtime": "^6.22.0",
667 | "babel-types": "^6.24.1"
668 | }
669 | },
670 | "babel-helper-optimise-call-expression": {
671 | "version": "6.24.1",
672 | "resolved": "https://registry.npm.taobao.org/babel-helper-optimise-call-expression/download/babel-helper-optimise-call-expression-6.24.1.tgz",
673 | "integrity": "sha1-96E0J7qfc/j0+pk8VKl4gtEkQlc=",
674 | "dev": true,
675 | "requires": {
676 | "babel-runtime": "^6.22.0",
677 | "babel-types": "^6.24.1"
678 | }
679 | },
680 | "babel-helper-regex": {
681 | "version": "6.26.0",
682 | "resolved": "https://registry.nlark.com/babel-helper-regex/download/babel-helper-regex-6.26.0.tgz",
683 | "integrity": "sha1-MlxZ+QL4LyS3T6zu0DY5VPZJXnI=",
684 | "dev": true,
685 | "requires": {
686 | "babel-runtime": "^6.26.0",
687 | "babel-types": "^6.26.0",
688 | "lodash": "^4.17.4"
689 | }
690 | },
691 | "babel-helper-remap-async-to-generator": {
692 | "version": "6.24.1",
693 | "resolved": "https://registry.npm.taobao.org/babel-helper-remap-async-to-generator/download/babel-helper-remap-async-to-generator-6.24.1.tgz",
694 | "integrity": "sha1-XsWBgnrXI/7N04HxySg5BnbkVRs=",
695 | "dev": true,
696 | "requires": {
697 | "babel-helper-function-name": "^6.24.1",
698 | "babel-runtime": "^6.22.0",
699 | "babel-template": "^6.24.1",
700 | "babel-traverse": "^6.24.1",
701 | "babel-types": "^6.24.1"
702 | }
703 | },
704 | "babel-helper-replace-supers": {
705 | "version": "6.24.1",
706 | "resolved": "https://registry.nlark.com/babel-helper-replace-supers/download/babel-helper-replace-supers-6.24.1.tgz",
707 | "integrity": "sha1-v22/5Dk40XNpohPKiov3S2qQqxo=",
708 | "dev": true,
709 | "requires": {
710 | "babel-helper-optimise-call-expression": "^6.24.1",
711 | "babel-messages": "^6.23.0",
712 | "babel-runtime": "^6.22.0",
713 | "babel-template": "^6.24.1",
714 | "babel-traverse": "^6.24.1",
715 | "babel-types": "^6.24.1"
716 | }
717 | },
718 | "babel-messages": {
719 | "version": "6.23.0",
720 | "resolved": "https://registry.nlark.com/babel-messages/download/babel-messages-6.23.0.tgz",
721 | "integrity": "sha1-8830cDhYA1sqKVHG7F7fbGLyYw4=",
722 | "dev": true,
723 | "requires": {
724 | "babel-runtime": "^6.22.0"
725 | }
726 | },
727 | "babel-plugin-check-es2015-constants": {
728 | "version": "6.22.0",
729 | "resolved": "https://registry.npm.taobao.org/babel-plugin-check-es2015-constants/download/babel-plugin-check-es2015-constants-6.22.0.tgz",
730 | "integrity": "sha1-NRV7EBQm/S/9PaP3XH0ekYNbv4o=",
731 | "dev": true,
732 | "requires": {
733 | "babel-runtime": "^6.22.0"
734 | }
735 | },
736 | "babel-plugin-syntax-async-functions": {
737 | "version": "6.13.0",
738 | "resolved": "https://registry.npm.taobao.org/babel-plugin-syntax-async-functions/download/babel-plugin-syntax-async-functions-6.13.0.tgz",
739 | "integrity": "sha1-ytnK0RkbWtY0vzCuCHI5HgZHvpU=",
740 | "dev": true
741 | },
742 | "babel-plugin-syntax-exponentiation-operator": {
743 | "version": "6.13.0",
744 | "resolved": "https://registry.nlark.com/babel-plugin-syntax-exponentiation-operator/download/babel-plugin-syntax-exponentiation-operator-6.13.0.tgz",
745 | "integrity": "sha1-nufoM3KQ2pUoggGmpX9BcDF4MN4=",
746 | "dev": true
747 | },
748 | "babel-plugin-syntax-trailing-function-commas": {
749 | "version": "6.22.0",
750 | "resolved": "https://registry.npm.taobao.org/babel-plugin-syntax-trailing-function-commas/download/babel-plugin-syntax-trailing-function-commas-6.22.0.tgz",
751 | "integrity": "sha1-ugNgk3+NBuQBgKQ/4NVhb/9TLPM=",
752 | "dev": true
753 | },
754 | "babel-plugin-transform-async-to-generator": {
755 | "version": "6.24.1",
756 | "resolved": "https://registry.nlark.com/babel-plugin-transform-async-to-generator/download/babel-plugin-transform-async-to-generator-6.24.1.tgz",
757 | "integrity": "sha1-ZTbjeK/2yx1VF6wOQOs+n8jQh2E=",
758 | "dev": true,
759 | "requires": {
760 | "babel-helper-remap-async-to-generator": "^6.24.1",
761 | "babel-plugin-syntax-async-functions": "^6.8.0",
762 | "babel-runtime": "^6.22.0"
763 | }
764 | },
765 | "babel-plugin-transform-es2015-arrow-functions": {
766 | "version": "6.22.0",
767 | "resolved": "https://registry.nlark.com/babel-plugin-transform-es2015-arrow-functions/download/babel-plugin-transform-es2015-arrow-functions-6.22.0.tgz",
768 | "integrity": "sha1-RSaSy3EdX3ncf4XkQM5BufJE0iE=",
769 | "dev": true,
770 | "requires": {
771 | "babel-runtime": "^6.22.0"
772 | }
773 | },
774 | "babel-plugin-transform-es2015-block-scoped-functions": {
775 | "version": "6.22.0",
776 | "resolved": "https://registry.npm.taobao.org/babel-plugin-transform-es2015-block-scoped-functions/download/babel-plugin-transform-es2015-block-scoped-functions-6.22.0.tgz",
777 | "integrity": "sha1-u8UbSflk1wy42OC5ToICRs46YUE=",
778 | "dev": true,
779 | "requires": {
780 | "babel-runtime": "^6.22.0"
781 | }
782 | },
783 | "babel-plugin-transform-es2015-block-scoping": {
784 | "version": "6.26.0",
785 | "resolved": "https://registry.npm.taobao.org/babel-plugin-transform-es2015-block-scoping/download/babel-plugin-transform-es2015-block-scoping-6.26.0.tgz",
786 | "integrity": "sha1-1w9SmcEwjQXBL0Y4E7CgnnOxiV8=",
787 | "dev": true,
788 | "requires": {
789 | "babel-runtime": "^6.26.0",
790 | "babel-template": "^6.26.0",
791 | "babel-traverse": "^6.26.0",
792 | "babel-types": "^6.26.0",
793 | "lodash": "^4.17.4"
794 | }
795 | },
796 | "babel-plugin-transform-es2015-classes": {
797 | "version": "6.24.1",
798 | "resolved": "https://registry.nlark.com/babel-plugin-transform-es2015-classes/download/babel-plugin-transform-es2015-classes-6.24.1.tgz",
799 | "integrity": "sha1-WkxYpQyclGHlZLSyo7+ryXolhNs=",
800 | "dev": true,
801 | "requires": {
802 | "babel-helper-define-map": "^6.24.1",
803 | "babel-helper-function-name": "^6.24.1",
804 | "babel-helper-optimise-call-expression": "^6.24.1",
805 | "babel-helper-replace-supers": "^6.24.1",
806 | "babel-messages": "^6.23.0",
807 | "babel-runtime": "^6.22.0",
808 | "babel-template": "^6.24.1",
809 | "babel-traverse": "^6.24.1",
810 | "babel-types": "^6.24.1"
811 | }
812 | },
813 | "babel-plugin-transform-es2015-computed-properties": {
814 | "version": "6.24.1",
815 | "resolved": "https://registry.npm.taobao.org/babel-plugin-transform-es2015-computed-properties/download/babel-plugin-transform-es2015-computed-properties-6.24.1.tgz",
816 | "integrity": "sha1-b+Ko0WiV1WNPTNmZttNICjCBWbM=",
817 | "dev": true,
818 | "requires": {
819 | "babel-runtime": "^6.22.0",
820 | "babel-template": "^6.24.1"
821 | }
822 | },
823 | "babel-plugin-transform-es2015-destructuring": {
824 | "version": "6.23.0",
825 | "resolved": "https://registry.npm.taobao.org/babel-plugin-transform-es2015-destructuring/download/babel-plugin-transform-es2015-destructuring-6.23.0.tgz",
826 | "integrity": "sha1-mXux8auWf2gtKwh2/jWNYOdlxW0=",
827 | "dev": true,
828 | "requires": {
829 | "babel-runtime": "^6.22.0"
830 | }
831 | },
832 | "babel-plugin-transform-es2015-duplicate-keys": {
833 | "version": "6.24.1",
834 | "resolved": "https://registry.nlark.com/babel-plugin-transform-es2015-duplicate-keys/download/babel-plugin-transform-es2015-duplicate-keys-6.24.1.tgz",
835 | "integrity": "sha1-c+s9MQypaePvnskcU3QabxV2Qj4=",
836 | "dev": true,
837 | "requires": {
838 | "babel-runtime": "^6.22.0",
839 | "babel-types": "^6.24.1"
840 | }
841 | },
842 | "babel-plugin-transform-es2015-for-of": {
843 | "version": "6.23.0",
844 | "resolved": "https://registry.nlark.com/babel-plugin-transform-es2015-for-of/download/babel-plugin-transform-es2015-for-of-6.23.0.tgz",
845 | "integrity": "sha1-9HyVsrYT3x0+zC/bdXNiPHUkhpE=",
846 | "dev": true,
847 | "requires": {
848 | "babel-runtime": "^6.22.0"
849 | }
850 | },
851 | "babel-plugin-transform-es2015-function-name": {
852 | "version": "6.24.1",
853 | "resolved": "https://registry.npm.taobao.org/babel-plugin-transform-es2015-function-name/download/babel-plugin-transform-es2015-function-name-6.24.1.tgz",
854 | "integrity": "sha1-g0yJhTvDaxrw86TF26qU/Y6sqos=",
855 | "dev": true,
856 | "requires": {
857 | "babel-helper-function-name": "^6.24.1",
858 | "babel-runtime": "^6.22.0",
859 | "babel-types": "^6.24.1"
860 | }
861 | },
862 | "babel-plugin-transform-es2015-literals": {
863 | "version": "6.22.0",
864 | "resolved": "https://registry.npm.taobao.org/babel-plugin-transform-es2015-literals/download/babel-plugin-transform-es2015-literals-6.22.0.tgz",
865 | "integrity": "sha1-T1SgLWzWbPkVKAAZox0xklN3yi4=",
866 | "dev": true,
867 | "requires": {
868 | "babel-runtime": "^6.22.0"
869 | }
870 | },
871 | "babel-plugin-transform-es2015-modules-amd": {
872 | "version": "6.24.1",
873 | "resolved": "https://registry.npm.taobao.org/babel-plugin-transform-es2015-modules-amd/download/babel-plugin-transform-es2015-modules-amd-6.24.1.tgz",
874 | "integrity": "sha1-Oz5UAXI5hC1tGcMBHEvS8AoA0VQ=",
875 | "dev": true,
876 | "requires": {
877 | "babel-plugin-transform-es2015-modules-commonjs": "^6.24.1",
878 | "babel-runtime": "^6.22.0",
879 | "babel-template": "^6.24.1"
880 | }
881 | },
882 | "babel-plugin-transform-es2015-modules-commonjs": {
883 | "version": "6.26.2",
884 | "resolved": "https://registry.npm.taobao.org/babel-plugin-transform-es2015-modules-commonjs/download/babel-plugin-transform-es2015-modules-commonjs-6.26.2.tgz",
885 | "integrity": "sha1-WKeThjqefKhwvcWogRF/+sJ9tvM=",
886 | "dev": true,
887 | "requires": {
888 | "babel-plugin-transform-strict-mode": "^6.24.1",
889 | "babel-runtime": "^6.26.0",
890 | "babel-template": "^6.26.0",
891 | "babel-types": "^6.26.0"
892 | }
893 | },
894 | "babel-plugin-transform-es2015-modules-systemjs": {
895 | "version": "6.24.1",
896 | "resolved": "https://registry.npm.taobao.org/babel-plugin-transform-es2015-modules-systemjs/download/babel-plugin-transform-es2015-modules-systemjs-6.24.1.tgz",
897 | "integrity": "sha1-/4mhQrkRmpBhlfXxBuzzBdlAfSM=",
898 | "dev": true,
899 | "requires": {
900 | "babel-helper-hoist-variables": "^6.24.1",
901 | "babel-runtime": "^6.22.0",
902 | "babel-template": "^6.24.1"
903 | }
904 | },
905 | "babel-plugin-transform-es2015-modules-umd": {
906 | "version": "6.24.1",
907 | "resolved": "https://registry.nlark.com/babel-plugin-transform-es2015-modules-umd/download/babel-plugin-transform-es2015-modules-umd-6.24.1.tgz",
908 | "integrity": "sha1-rJl+YoXNGO1hdq22B9YCNErThGg=",
909 | "dev": true,
910 | "requires": {
911 | "babel-plugin-transform-es2015-modules-amd": "^6.24.1",
912 | "babel-runtime": "^6.22.0",
913 | "babel-template": "^6.24.1"
914 | }
915 | },
916 | "babel-plugin-transform-es2015-object-super": {
917 | "version": "6.24.1",
918 | "resolved": "https://registry.npm.taobao.org/babel-plugin-transform-es2015-object-super/download/babel-plugin-transform-es2015-object-super-6.24.1.tgz",
919 | "integrity": "sha1-JM72muIcuDp/hgPa0CH1cusnj40=",
920 | "dev": true,
921 | "requires": {
922 | "babel-helper-replace-supers": "^6.24.1",
923 | "babel-runtime": "^6.22.0"
924 | }
925 | },
926 | "babel-plugin-transform-es2015-parameters": {
927 | "version": "6.24.1",
928 | "resolved": "https://registry.nlark.com/babel-plugin-transform-es2015-parameters/download/babel-plugin-transform-es2015-parameters-6.24.1.tgz",
929 | "integrity": "sha1-V6w1GrScrxSpfNE7CfZv3wpiXys=",
930 | "dev": true,
931 | "requires": {
932 | "babel-helper-call-delegate": "^6.24.1",
933 | "babel-helper-get-function-arity": "^6.24.1",
934 | "babel-runtime": "^6.22.0",
935 | "babel-template": "^6.24.1",
936 | "babel-traverse": "^6.24.1",
937 | "babel-types": "^6.24.1"
938 | }
939 | },
940 | "babel-plugin-transform-es2015-shorthand-properties": {
941 | "version": "6.24.1",
942 | "resolved": "https://registry.npm.taobao.org/babel-plugin-transform-es2015-shorthand-properties/download/babel-plugin-transform-es2015-shorthand-properties-6.24.1.tgz",
943 | "integrity": "sha1-JPh11nIch2YbvZmkYi5R8U3jiqA=",
944 | "dev": true,
945 | "requires": {
946 | "babel-runtime": "^6.22.0",
947 | "babel-types": "^6.24.1"
948 | }
949 | },
950 | "babel-plugin-transform-es2015-spread": {
951 | "version": "6.22.0",
952 | "resolved": "https://registry.npm.taobao.org/babel-plugin-transform-es2015-spread/download/babel-plugin-transform-es2015-spread-6.22.0.tgz",
953 | "integrity": "sha1-1taKmfia7cRTbIGlQujdnxdG+NE=",
954 | "dev": true,
955 | "requires": {
956 | "babel-runtime": "^6.22.0"
957 | }
958 | },
959 | "babel-plugin-transform-es2015-sticky-regex": {
960 | "version": "6.24.1",
961 | "resolved": "https://registry.nlark.com/babel-plugin-transform-es2015-sticky-regex/download/babel-plugin-transform-es2015-sticky-regex-6.24.1.tgz",
962 | "integrity": "sha1-AMHNsaynERLN8M9hJsLta0V8zbw=",
963 | "dev": true,
964 | "requires": {
965 | "babel-helper-regex": "^6.24.1",
966 | "babel-runtime": "^6.22.0",
967 | "babel-types": "^6.24.1"
968 | }
969 | },
970 | "babel-plugin-transform-es2015-template-literals": {
971 | "version": "6.22.0",
972 | "resolved": "https://registry.npm.taobao.org/babel-plugin-transform-es2015-template-literals/download/babel-plugin-transform-es2015-template-literals-6.22.0.tgz",
973 | "integrity": "sha1-qEs0UPfp+PH2g51taH2oS7EjbY0=",
974 | "dev": true,
975 | "requires": {
976 | "babel-runtime": "^6.22.0"
977 | }
978 | },
979 | "babel-plugin-transform-es2015-typeof-symbol": {
980 | "version": "6.23.0",
981 | "resolved": "https://registry.nlark.com/babel-plugin-transform-es2015-typeof-symbol/download/babel-plugin-transform-es2015-typeof-symbol-6.23.0.tgz",
982 | "integrity": "sha1-3sCfHN3/lLUqxz1QXITfWdzOs3I=",
983 | "dev": true,
984 | "requires": {
985 | "babel-runtime": "^6.22.0"
986 | }
987 | },
988 | "babel-plugin-transform-es2015-unicode-regex": {
989 | "version": "6.24.1",
990 | "resolved": "https://registry.npm.taobao.org/babel-plugin-transform-es2015-unicode-regex/download/babel-plugin-transform-es2015-unicode-regex-6.24.1.tgz",
991 | "integrity": "sha1-04sS9C6nMj9yk4fxinxa4frrNek=",
992 | "dev": true,
993 | "requires": {
994 | "babel-helper-regex": "^6.24.1",
995 | "babel-runtime": "^6.22.0",
996 | "regexpu-core": "^2.0.0"
997 | }
998 | },
999 | "babel-plugin-transform-exponentiation-operator": {
1000 | "version": "6.24.1",
1001 | "resolved": "https://registry.nlark.com/babel-plugin-transform-exponentiation-operator/download/babel-plugin-transform-exponentiation-operator-6.24.1.tgz",
1002 | "integrity": "sha1-KrDJx/MJj6SJB3cruBP+QejeOg4=",
1003 | "dev": true,
1004 | "requires": {
1005 | "babel-helper-builder-binary-assignment-operator-visitor": "^6.24.1",
1006 | "babel-plugin-syntax-exponentiation-operator": "^6.8.0",
1007 | "babel-runtime": "^6.22.0"
1008 | }
1009 | },
1010 | "babel-plugin-transform-regenerator": {
1011 | "version": "6.26.0",
1012 | "resolved": "https://registry.nlark.com/babel-plugin-transform-regenerator/download/babel-plugin-transform-regenerator-6.26.0.tgz",
1013 | "integrity": "sha1-4HA2lvveJ/Cj78rPi03KL3s6jy8=",
1014 | "dev": true,
1015 | "requires": {
1016 | "regenerator-transform": "^0.10.0"
1017 | }
1018 | },
1019 | "babel-plugin-transform-strict-mode": {
1020 | "version": "6.24.1",
1021 | "resolved": "https://registry.nlark.com/babel-plugin-transform-strict-mode/download/babel-plugin-transform-strict-mode-6.24.1.tgz",
1022 | "integrity": "sha1-1fr3qleKZbvlkc9e2uBKDGcCB1g=",
1023 | "dev": true,
1024 | "requires": {
1025 | "babel-runtime": "^6.22.0",
1026 | "babel-types": "^6.24.1"
1027 | }
1028 | },
1029 | "babel-preset-env": {
1030 | "version": "1.7.0",
1031 | "resolved": "https://registry.npm.taobao.org/babel-preset-env/download/babel-preset-env-1.7.0.tgz",
1032 | "integrity": "sha1-3qefpOvriDzTXasH4mDBycBN93o=",
1033 | "dev": true,
1034 | "requires": {
1035 | "babel-plugin-check-es2015-constants": "^6.22.0",
1036 | "babel-plugin-syntax-trailing-function-commas": "^6.22.0",
1037 | "babel-plugin-transform-async-to-generator": "^6.22.0",
1038 | "babel-plugin-transform-es2015-arrow-functions": "^6.22.0",
1039 | "babel-plugin-transform-es2015-block-scoped-functions": "^6.22.0",
1040 | "babel-plugin-transform-es2015-block-scoping": "^6.23.0",
1041 | "babel-plugin-transform-es2015-classes": "^6.23.0",
1042 | "babel-plugin-transform-es2015-computed-properties": "^6.22.0",
1043 | "babel-plugin-transform-es2015-destructuring": "^6.23.0",
1044 | "babel-plugin-transform-es2015-duplicate-keys": "^6.22.0",
1045 | "babel-plugin-transform-es2015-for-of": "^6.23.0",
1046 | "babel-plugin-transform-es2015-function-name": "^6.22.0",
1047 | "babel-plugin-transform-es2015-literals": "^6.22.0",
1048 | "babel-plugin-transform-es2015-modules-amd": "^6.22.0",
1049 | "babel-plugin-transform-es2015-modules-commonjs": "^6.23.0",
1050 | "babel-plugin-transform-es2015-modules-systemjs": "^6.23.0",
1051 | "babel-plugin-transform-es2015-modules-umd": "^6.23.0",
1052 | "babel-plugin-transform-es2015-object-super": "^6.22.0",
1053 | "babel-plugin-transform-es2015-parameters": "^6.23.0",
1054 | "babel-plugin-transform-es2015-shorthand-properties": "^6.22.0",
1055 | "babel-plugin-transform-es2015-spread": "^6.22.0",
1056 | "babel-plugin-transform-es2015-sticky-regex": "^6.22.0",
1057 | "babel-plugin-transform-es2015-template-literals": "^6.22.0",
1058 | "babel-plugin-transform-es2015-typeof-symbol": "^6.23.0",
1059 | "babel-plugin-transform-es2015-unicode-regex": "^6.22.0",
1060 | "babel-plugin-transform-exponentiation-operator": "^6.22.0",
1061 | "babel-plugin-transform-regenerator": "^6.22.0",
1062 | "browserslist": "^3.2.6",
1063 | "invariant": "^2.2.2",
1064 | "semver": "^5.3.0"
1065 | },
1066 | "dependencies": {
1067 | "browserslist": {
1068 | "version": "3.2.8",
1069 | "resolved": "https://registry.nlark.com/browserslist/download/browserslist-3.2.8.tgz?cache=0&sync_timestamp=1627982466435&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fbrowserslist%2Fdownload%2Fbrowserslist-3.2.8.tgz",
1070 | "integrity": "sha1-sABTYdZHHw9ZUnl6dvyYXx+Xj8Y=",
1071 | "dev": true,
1072 | "requires": {
1073 | "caniuse-lite": "^1.0.30000844",
1074 | "electron-to-chromium": "^1.3.47"
1075 | }
1076 | },
1077 | "semver": {
1078 | "version": "5.7.1",
1079 | "resolved": "https://registry.nlark.com/semver/download/semver-5.7.1.tgz?cache=0&sync_timestamp=1618847119601&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fsemver%2Fdownload%2Fsemver-5.7.1.tgz",
1080 | "integrity": "sha1-qVT5Ma66UI0we78Gnv8MAclhFvc=",
1081 | "dev": true
1082 | }
1083 | }
1084 | },
1085 | "babel-runtime": {
1086 | "version": "6.26.0",
1087 | "resolved": "https://registry.nlark.com/babel-runtime/download/babel-runtime-6.26.0.tgz",
1088 | "integrity": "sha1-llxwWGaOgrVde/4E/yM3vItWR/4=",
1089 | "dev": true,
1090 | "requires": {
1091 | "core-js": "^2.4.0",
1092 | "regenerator-runtime": "^0.11.0"
1093 | }
1094 | },
1095 | "babel-template": {
1096 | "version": "6.26.0",
1097 | "resolved": "https://registry.nlark.com/babel-template/download/babel-template-6.26.0.tgz",
1098 | "integrity": "sha1-3gPi0WOWsGn0bdn/+FIfsaDjXgI=",
1099 | "dev": true,
1100 | "requires": {
1101 | "babel-runtime": "^6.26.0",
1102 | "babel-traverse": "^6.26.0",
1103 | "babel-types": "^6.26.0",
1104 | "babylon": "^6.18.0",
1105 | "lodash": "^4.17.4"
1106 | }
1107 | },
1108 | "babel-traverse": {
1109 | "version": "6.26.0",
1110 | "resolved": "https://registry.nlark.com/babel-traverse/download/babel-traverse-6.26.0.tgz",
1111 | "integrity": "sha1-RqnL1+3MYsjlwGTi0tjQ9ANXZu4=",
1112 | "dev": true,
1113 | "requires": {
1114 | "babel-code-frame": "^6.26.0",
1115 | "babel-messages": "^6.23.0",
1116 | "babel-runtime": "^6.26.0",
1117 | "babel-types": "^6.26.0",
1118 | "babylon": "^6.18.0",
1119 | "debug": "^2.6.8",
1120 | "globals": "^9.18.0",
1121 | "invariant": "^2.2.2",
1122 | "lodash": "^4.17.4"
1123 | },
1124 | "dependencies": {
1125 | "debug": {
1126 | "version": "2.6.9",
1127 | "resolved": "https://registry.nlark.com/debug/download/debug-2.6.9.tgz",
1128 | "integrity": "sha1-XRKFFd8TT/Mn6QpMk/Tgd6U2NB8=",
1129 | "dev": true,
1130 | "requires": {
1131 | "ms": "2.0.0"
1132 | }
1133 | },
1134 | "globals": {
1135 | "version": "9.18.0",
1136 | "resolved": "https://registry.nlark.com/globals/download/globals-9.18.0.tgz?cache=0&sync_timestamp=1628810148451&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fglobals%2Fdownload%2Fglobals-9.18.0.tgz",
1137 | "integrity": "sha1-qjiWs+abSH8X4x7SFD1pqOMMLYo=",
1138 | "dev": true
1139 | },
1140 | "ms": {
1141 | "version": "2.0.0",
1142 | "resolved": "https://registry.nlark.com/ms/download/ms-2.0.0.tgz",
1143 | "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=",
1144 | "dev": true
1145 | }
1146 | }
1147 | },
1148 | "babel-types": {
1149 | "version": "6.26.0",
1150 | "resolved": "https://registry.nlark.com/babel-types/download/babel-types-6.26.0.tgz",
1151 | "integrity": "sha1-o7Bz+Uq0nrb6Vc1lInozQ4BjJJc=",
1152 | "dev": true,
1153 | "requires": {
1154 | "babel-runtime": "^6.26.0",
1155 | "esutils": "^2.0.2",
1156 | "lodash": "^4.17.4",
1157 | "to-fast-properties": "^1.0.3"
1158 | },
1159 | "dependencies": {
1160 | "to-fast-properties": {
1161 | "version": "1.0.3",
1162 | "resolved": "https://registry.nlark.com/to-fast-properties/download/to-fast-properties-1.0.3.tgz?cache=0&sync_timestamp=1628418855671&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fto-fast-properties%2Fdownload%2Fto-fast-properties-1.0.3.tgz",
1163 | "integrity": "sha1-uDVx+k2MJbguIxsG46MFXeTKGkc=",
1164 | "dev": true
1165 | }
1166 | }
1167 | },
1168 | "babylon": {
1169 | "version": "6.18.0",
1170 | "resolved": "https://registry.npm.taobao.org/babylon/download/babylon-6.18.0.tgz",
1171 | "integrity": "sha1-ry87iPpvXB5MY00aD46sT1WzleM=",
1172 | "dev": true
1173 | },
1174 | "bluebird": {
1175 | "version": "3.7.2",
1176 | "resolved": "https://registry.nlark.com/bluebird/download/bluebird-3.7.2.tgz?cache=0&sync_timestamp=1618847007562&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fbluebird%2Fdownload%2Fbluebird-3.7.2.tgz",
1177 | "integrity": "sha1-nyKcFb4nJFT/qXOs4NvueaGww28=",
1178 | "dev": true
1179 | },
1180 | "browserslist": {
1181 | "version": "4.16.7",
1182 | "resolved": "https://registry.nlark.com/browserslist/download/browserslist-4.16.7.tgz?cache=0&sync_timestamp=1627982466435&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fbrowserslist%2Fdownload%2Fbrowserslist-4.16.7.tgz",
1183 | "integrity": "sha1-EIsNHvM8SvG1h8VPOQ5wQReOQzU=",
1184 | "dev": true,
1185 | "requires": {
1186 | "caniuse-lite": "^1.0.30001248",
1187 | "colorette": "^1.2.2",
1188 | "electron-to-chromium": "^1.3.793",
1189 | "escalade": "^3.1.1",
1190 | "node-releases": "^1.1.73"
1191 | }
1192 | },
1193 | "camelcase": {
1194 | "version": "5.3.1",
1195 | "resolved": "https://registry.nlark.com/camelcase/download/camelcase-5.3.1.tgz",
1196 | "integrity": "sha1-48mzFWnhBoEd8kL3FXJaH0xJQyA=",
1197 | "dev": true
1198 | },
1199 | "caniuse-lite": {
1200 | "version": "1.0.30001251",
1201 | "resolved": "https://registry.nlark.com/caniuse-lite/download/caniuse-lite-1.0.30001251.tgz?cache=0&sync_timestamp=1628744299971&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fcaniuse-lite%2Fdownload%2Fcaniuse-lite-1.0.30001251.tgz",
1202 | "integrity": "sha1-aFOmBuxQiTEV22YPgsCU0Y8JbYU=",
1203 | "dev": true
1204 | },
1205 | "chalk": {
1206 | "version": "2.4.2",
1207 | "resolved": "https://registry.nlark.com/chalk/download/chalk-2.4.2.tgz?cache=0&sync_timestamp=1627646697260&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fchalk%2Fdownload%2Fchalk-2.4.2.tgz",
1208 | "integrity": "sha1-zUJUFnelQzPPVBpJEIwUMrRMlCQ=",
1209 | "dev": true,
1210 | "requires": {
1211 | "ansi-styles": "^3.2.1",
1212 | "escape-string-regexp": "^1.0.5",
1213 | "supports-color": "^5.3.0"
1214 | }
1215 | },
1216 | "color-convert": {
1217 | "version": "1.9.3",
1218 | "resolved": "https://registry.npm.taobao.org/color-convert/download/color-convert-1.9.3.tgz",
1219 | "integrity": "sha1-u3GFBpDh8TZWfeYp0tVHHe2kweg=",
1220 | "dev": true,
1221 | "requires": {
1222 | "color-name": "1.1.3"
1223 | }
1224 | },
1225 | "color-name": {
1226 | "version": "1.1.3",
1227 | "resolved": "https://registry.nlark.com/color-name/download/color-name-1.1.3.tgz",
1228 | "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=",
1229 | "dev": true
1230 | },
1231 | "colorette": {
1232 | "version": "1.3.0",
1233 | "resolved": "https://registry.nlark.com/colorette/download/colorette-1.3.0.tgz",
1234 | "integrity": "sha1-/0XS8O2yRAadO3cq3rBP7TjQoK8=",
1235 | "dev": true
1236 | },
1237 | "consolidate": {
1238 | "version": "0.16.0",
1239 | "resolved": "https://registry.npm.taobao.org/consolidate/download/consolidate-0.16.0.tgz",
1240 | "integrity": "sha1-oRhkdokw8vGUMWYKZZBmaPX73BY=",
1241 | "dev": true,
1242 | "requires": {
1243 | "bluebird": "^3.7.2"
1244 | }
1245 | },
1246 | "convert-source-map": {
1247 | "version": "1.8.0",
1248 | "resolved": "https://registry.nlark.com/convert-source-map/download/convert-source-map-1.8.0.tgz?cache=0&sync_timestamp=1624045304679&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fconvert-source-map%2Fdownload%2Fconvert-source-map-1.8.0.tgz",
1249 | "integrity": "sha1-8zc8MtIbTXgN2ABFFGhPt5HKQ2k=",
1250 | "dev": true,
1251 | "requires": {
1252 | "safe-buffer": "~5.1.1"
1253 | }
1254 | },
1255 | "core-js": {
1256 | "version": "2.6.12",
1257 | "resolved": "https://registry.nlark.com/core-js/download/core-js-2.6.12.tgz?cache=0&sync_timestamp=1628444146107&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fcore-js%2Fdownload%2Fcore-js-2.6.12.tgz",
1258 | "integrity": "sha1-2TM9+nsGXjR8xWgiGdb2kIWcwuw=",
1259 | "dev": true
1260 | },
1261 | "cross-env": {
1262 | "version": "7.0.3",
1263 | "resolved": "https://registry.nlark.com/cross-env/download/cross-env-7.0.3.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fcross-env%2Fdownload%2Fcross-env-7.0.3.tgz",
1264 | "integrity": "sha1-hlJkspZ33AFbqEGJGJZd0jL8VM8=",
1265 | "dev": true,
1266 | "requires": {
1267 | "cross-spawn": "^7.0.1"
1268 | }
1269 | },
1270 | "cross-spawn": {
1271 | "version": "7.0.3",
1272 | "resolved": "https://registry.nlark.com/cross-spawn/download/cross-spawn-7.0.3.tgz",
1273 | "integrity": "sha1-9zqFudXUHQRVUcF34ogtSshXKKY=",
1274 | "dev": true,
1275 | "requires": {
1276 | "path-key": "^3.1.0",
1277 | "shebang-command": "^2.0.0",
1278 | "which": "^2.0.1"
1279 | }
1280 | },
1281 | "cssesc": {
1282 | "version": "3.0.0",
1283 | "resolved": "https://registry.npm.taobao.org/cssesc/download/cssesc-3.0.0.tgz",
1284 | "integrity": "sha1-N3QZGZA7hoVl4cCep0dEXNGJg+4=",
1285 | "dev": true
1286 | },
1287 | "de-indent": {
1288 | "version": "1.0.2",
1289 | "resolved": "https://registry.nlark.com/de-indent/download/de-indent-1.0.2.tgz",
1290 | "integrity": "sha1-sgOOhG3DO6pXlhKNCAS0VbjB4h0="
1291 | },
1292 | "debug": {
1293 | "version": "4.3.2",
1294 | "resolved": "https://registry.nlark.com/debug/download/debug-4.3.2.tgz",
1295 | "integrity": "sha1-8KScGKyHeeMdSgxgKd+3aHPHQos=",
1296 | "dev": true,
1297 | "requires": {
1298 | "ms": "2.1.2"
1299 | }
1300 | },
1301 | "electron-to-chromium": {
1302 | "version": "1.3.806",
1303 | "resolved": "https://registry.nlark.com/electron-to-chromium/download/electron-to-chromium-1.3.806.tgz",
1304 | "integrity": "sha1-IVAhAPEa6tbFAdHNfyUE8WyTZkI=",
1305 | "dev": true
1306 | },
1307 | "esbuild": {
1308 | "version": "0.12.20",
1309 | "resolved": "https://registry.nlark.com/esbuild/download/esbuild-0.12.20.tgz",
1310 | "integrity": "sha1-TTydg8maQDHgJ7QqTDmMI7aCfLA=",
1311 | "dev": true
1312 | },
1313 | "escalade": {
1314 | "version": "3.1.1",
1315 | "resolved": "https://registry.nlark.com/escalade/download/escalade-3.1.1.tgz",
1316 | "integrity": "sha1-2M/ccACWXFoBdLSoLqpcBVJ0LkA=",
1317 | "dev": true
1318 | },
1319 | "escape-string-regexp": {
1320 | "version": "1.0.5",
1321 | "resolved": "https://registry.nlark.com/escape-string-regexp/download/escape-string-regexp-1.0.5.tgz",
1322 | "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=",
1323 | "dev": true
1324 | },
1325 | "estree-walker": {
1326 | "version": "2.0.2",
1327 | "resolved": "https://registry.npm.taobao.org/estree-walker/download/estree-walker-2.0.2.tgz?cache=0&sync_timestamp=1611956983677&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Festree-walker%2Fdownload%2Festree-walker-2.0.2.tgz",
1328 | "integrity": "sha1-UvAQF4wqTBF6d1fP6UKtt9LaTKw=",
1329 | "dev": true
1330 | },
1331 | "esutils": {
1332 | "version": "2.0.3",
1333 | "resolved": "https://registry.nlark.com/esutils/download/esutils-2.0.3.tgz",
1334 | "integrity": "sha1-dNLrTeC42hKTcRkQ1Qd1ubcQ72Q=",
1335 | "dev": true
1336 | },
1337 | "fs-extra": {
1338 | "version": "9.1.0",
1339 | "resolved": "https://registry.nlark.com/fs-extra/download/fs-extra-9.1.0.tgz",
1340 | "integrity": "sha1-WVRGDHZKjaIJS6NVS/g55rmnyG0=",
1341 | "dev": true,
1342 | "requires": {
1343 | "at-least-node": "^1.0.0",
1344 | "graceful-fs": "^4.2.0",
1345 | "jsonfile": "^6.0.1",
1346 | "universalify": "^2.0.0"
1347 | }
1348 | },
1349 | "fsevents": {
1350 | "version": "2.3.2",
1351 | "resolved": "https://registry.npm.taobao.org/fsevents/download/fsevents-2.3.2.tgz",
1352 | "integrity": "sha1-ilJveLj99GI7cJ4Ll1xSwkwC/Ro=",
1353 | "dev": true,
1354 | "optional": true
1355 | },
1356 | "function-bind": {
1357 | "version": "1.1.1",
1358 | "resolved": "https://registry.npm.taobao.org/function-bind/download/function-bind-1.1.1.tgz",
1359 | "integrity": "sha1-pWiZ0+o8m6uHS7l3O3xe3pL0iV0=",
1360 | "dev": true
1361 | },
1362 | "gensync": {
1363 | "version": "1.0.0-beta.2",
1364 | "resolved": "https://registry.npm.taobao.org/gensync/download/gensync-1.0.0-beta.2.tgz",
1365 | "integrity": "sha1-MqbudsPX9S1GsrGuXZP+qFgKJeA=",
1366 | "dev": true
1367 | },
1368 | "globals": {
1369 | "version": "11.12.0",
1370 | "resolved": "https://registry.nlark.com/globals/download/globals-11.12.0.tgz?cache=0&sync_timestamp=1628810148451&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fglobals%2Fdownload%2Fglobals-11.12.0.tgz",
1371 | "integrity": "sha1-q4eVM4hooLq9hSV1gBjCp+uVxC4=",
1372 | "dev": true
1373 | },
1374 | "graceful-fs": {
1375 | "version": "4.2.8",
1376 | "resolved": "https://registry.nlark.com/graceful-fs/download/graceful-fs-4.2.8.tgz?cache=0&sync_timestamp=1628194078324&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fgraceful-fs%2Fdownload%2Fgraceful-fs-4.2.8.tgz",
1377 | "integrity": "sha1-5BK40z9eAGWTy9PO5t+fLOu+gCo=",
1378 | "dev": true
1379 | },
1380 | "has": {
1381 | "version": "1.0.3",
1382 | "resolved": "https://registry.npm.taobao.org/has/download/has-1.0.3.tgz",
1383 | "integrity": "sha1-ci18v8H2qoJB8W3YFOAR4fQeh5Y=",
1384 | "dev": true,
1385 | "requires": {
1386 | "function-bind": "^1.1.1"
1387 | }
1388 | },
1389 | "has-ansi": {
1390 | "version": "2.0.0",
1391 | "resolved": "https://registry.npm.taobao.org/has-ansi/download/has-ansi-2.0.0.tgz",
1392 | "integrity": "sha1-NPUEnOHs3ysGSa8+8k5F7TVBbZE=",
1393 | "dev": true,
1394 | "requires": {
1395 | "ansi-regex": "^2.0.0"
1396 | }
1397 | },
1398 | "has-flag": {
1399 | "version": "3.0.0",
1400 | "resolved": "https://registry.nlark.com/has-flag/download/has-flag-3.0.0.tgz",
1401 | "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=",
1402 | "dev": true
1403 | },
1404 | "hash-sum": {
1405 | "version": "2.0.0",
1406 | "resolved": "https://registry.npm.taobao.org/hash-sum/download/hash-sum-2.0.0.tgz",
1407 | "integrity": "sha1-gdAbtd6OpKIUrV1urRtSNGCwtFo=",
1408 | "dev": true
1409 | },
1410 | "he": {
1411 | "version": "1.2.0",
1412 | "resolved": "https://registry.npm.taobao.org/he/download/he-1.2.0.tgz",
1413 | "integrity": "sha1-hK5l+n6vsWX922FWauFLrwVmTw8="
1414 | },
1415 | "html-tags": {
1416 | "version": "2.0.0",
1417 | "resolved": "https://registry.npm.taobao.org/html-tags/download/html-tags-2.0.0.tgz",
1418 | "integrity": "sha1-ELMKOGCF9Dzt41PMj6fLDe7qZos=",
1419 | "dev": true
1420 | },
1421 | "invariant": {
1422 | "version": "2.2.4",
1423 | "resolved": "https://registry.npm.taobao.org/invariant/download/invariant-2.2.4.tgz",
1424 | "integrity": "sha1-YQ88ksk1nOHbYW5TgAjSP/NRWOY=",
1425 | "dev": true,
1426 | "requires": {
1427 | "loose-envify": "^1.0.0"
1428 | }
1429 | },
1430 | "is-core-module": {
1431 | "version": "2.5.0",
1432 | "resolved": "https://registry.nlark.com/is-core-module/download/is-core-module-2.5.0.tgz",
1433 | "integrity": "sha1-91SENhfHC/0pt72HMnQAzaXBhJE=",
1434 | "dev": true,
1435 | "requires": {
1436 | "has": "^1.0.3"
1437 | }
1438 | },
1439 | "isexe": {
1440 | "version": "2.0.0",
1441 | "resolved": "https://registry.nlark.com/isexe/download/isexe-2.0.0.tgz",
1442 | "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=",
1443 | "dev": true
1444 | },
1445 | "js-tokens": {
1446 | "version": "4.0.0",
1447 | "resolved": "https://registry.nlark.com/js-tokens/download/js-tokens-4.0.0.tgz?cache=0&sync_timestamp=1619345098261&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fjs-tokens%2Fdownload%2Fjs-tokens-4.0.0.tgz",
1448 | "integrity": "sha1-GSA/tZmR35jjoocFDUZHzerzJJk=",
1449 | "dev": true
1450 | },
1451 | "jsesc": {
1452 | "version": "2.5.2",
1453 | "resolved": "https://registry.nlark.com/jsesc/download/jsesc-2.5.2.tgz",
1454 | "integrity": "sha1-gFZNLkg9rPbo7yCWUKZ98/DCg6Q=",
1455 | "dev": true
1456 | },
1457 | "json5": {
1458 | "version": "2.2.0",
1459 | "resolved": "https://registry.npm.taobao.org/json5/download/json5-2.2.0.tgz",
1460 | "integrity": "sha1-Lf7+cgxrpSXZ69kJlQ8FFTFsiaM=",
1461 | "dev": true,
1462 | "requires": {
1463 | "minimist": "^1.2.5"
1464 | }
1465 | },
1466 | "jsonfile": {
1467 | "version": "6.1.0",
1468 | "resolved": "https://registry.nlark.com/jsonfile/download/jsonfile-6.1.0.tgz",
1469 | "integrity": "sha1-vFWyY0eTxnnsZAMJTrE2mKbsCq4=",
1470 | "dev": true,
1471 | "requires": {
1472 | "graceful-fs": "^4.1.6",
1473 | "universalify": "^2.0.0"
1474 | }
1475 | },
1476 | "lodash": {
1477 | "version": "4.17.21",
1478 | "resolved": "https://registry.nlark.com/lodash/download/lodash-4.17.21.tgz",
1479 | "integrity": "sha1-Z5WRxWTDv/quhFTPCz3zcMPWkRw=",
1480 | "dev": true
1481 | },
1482 | "lodash.kebabcase": {
1483 | "version": "4.1.1",
1484 | "resolved": "https://registry.nlark.com/lodash.kebabcase/download/lodash.kebabcase-4.1.1.tgz",
1485 | "integrity": "sha1-hImxyw0p/4gZXM7KRI/21swpXDY=",
1486 | "dev": true
1487 | },
1488 | "loose-envify": {
1489 | "version": "1.4.0",
1490 | "resolved": "https://registry.npm.taobao.org/loose-envify/download/loose-envify-1.4.0.tgz",
1491 | "integrity": "sha1-ce5R+nvkyuwaY4OffmgtgTLTDK8=",
1492 | "dev": true,
1493 | "requires": {
1494 | "js-tokens": "^3.0.0 || ^4.0.0"
1495 | }
1496 | },
1497 | "lru-cache": {
1498 | "version": "4.1.5",
1499 | "resolved": "https://registry.nlark.com/lru-cache/download/lru-cache-4.1.5.tgz",
1500 | "integrity": "sha1-i75Q6oW+1ZvJ4z3KuCNe6bz0Q80=",
1501 | "dev": true,
1502 | "requires": {
1503 | "pseudomap": "^1.0.2",
1504 | "yallist": "^2.1.2"
1505 | }
1506 | },
1507 | "magic-string": {
1508 | "version": "0.25.7",
1509 | "resolved": "https://registry.nlark.com/magic-string/download/magic-string-0.25.7.tgz?cache=0&sync_timestamp=1618847046304&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fmagic-string%2Fdownload%2Fmagic-string-0.25.7.tgz",
1510 | "integrity": "sha1-P0l9b9NMZpxnmNy4IfLvMfVEUFE=",
1511 | "dev": true,
1512 | "requires": {
1513 | "sourcemap-codec": "^1.4.4"
1514 | }
1515 | },
1516 | "merge-source-map": {
1517 | "version": "1.1.0",
1518 | "resolved": "https://registry.nlark.com/merge-source-map/download/merge-source-map-1.1.0.tgz",
1519 | "integrity": "sha1-L93n5gIJOfcJBqaPLXrmheTIxkY=",
1520 | "dev": true,
1521 | "requires": {
1522 | "source-map": "^0.6.1"
1523 | },
1524 | "dependencies": {
1525 | "source-map": {
1526 | "version": "0.6.1",
1527 | "resolved": "https://registry.nlark.com/source-map/download/source-map-0.6.1.tgz",
1528 | "integrity": "sha1-dHIq8y6WFOnCh6jQu95IteLxomM=",
1529 | "dev": true
1530 | }
1531 | }
1532 | },
1533 | "minimist": {
1534 | "version": "1.2.5",
1535 | "resolved": "https://registry.nlark.com/minimist/download/minimist-1.2.5.tgz?cache=0&sync_timestamp=1618847017774&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fminimist%2Fdownload%2Fminimist-1.2.5.tgz",
1536 | "integrity": "sha1-Z9ZgFLZqaoqqDAg8X9WN9OTpdgI=",
1537 | "dev": true
1538 | },
1539 | "ms": {
1540 | "version": "2.1.2",
1541 | "resolved": "https://registry.nlark.com/ms/download/ms-2.1.2.tgz",
1542 | "integrity": "sha1-0J0fNXtEP0kzgqjrPM0YOHKuYAk=",
1543 | "dev": true
1544 | },
1545 | "nanoid": {
1546 | "version": "3.1.25",
1547 | "resolved": "https://registry.nlark.com/nanoid/download/nanoid-3.1.25.tgz?cache=0&sync_timestamp=1628771965808&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fnanoid%2Fdownload%2Fnanoid-3.1.25.tgz",
1548 | "integrity": "sha1-CcoydHwOVD8OGBS303k0d/nI4VI=",
1549 | "dev": true
1550 | },
1551 | "node-releases": {
1552 | "version": "1.1.74",
1553 | "resolved": "https://registry.nlark.com/node-releases/download/node-releases-1.1.74.tgz",
1554 | "integrity": "sha1-5YZkiAgOuqcKk7kRRMzeBvPDRj4=",
1555 | "dev": true
1556 | },
1557 | "path-key": {
1558 | "version": "3.1.1",
1559 | "resolved": "https://registry.npm.taobao.org/path-key/download/path-key-3.1.1.tgz?cache=0&sync_timestamp=1617971695678&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fpath-key%2Fdownload%2Fpath-key-3.1.1.tgz",
1560 | "integrity": "sha1-WB9q3mWMu6ZaDTOA3ndTKVBU83U=",
1561 | "dev": true
1562 | },
1563 | "path-parse": {
1564 | "version": "1.0.7",
1565 | "resolved": "https://registry.nlark.com/path-parse/download/path-parse-1.0.7.tgz",
1566 | "integrity": "sha1-+8EUtgykKzDZ2vWFjkvWi77bZzU=",
1567 | "dev": true
1568 | },
1569 | "picomatch": {
1570 | "version": "2.3.0",
1571 | "resolved": "https://registry.nlark.com/picomatch/download/picomatch-2.3.0.tgz?cache=0&sync_timestamp=1621648246651&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fpicomatch%2Fdownload%2Fpicomatch-2.3.0.tgz",
1572 | "integrity": "sha1-8fBh3o9qS/AiiS4tEoI0+5gwKXI=",
1573 | "dev": true
1574 | },
1575 | "postcss": {
1576 | "version": "8.3.6",
1577 | "resolved": "https://registry.nlark.com/postcss/download/postcss-8.3.6.tgz?cache=0&sync_timestamp=1626882933935&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fpostcss%2Fdownload%2Fpostcss-8.3.6.tgz",
1578 | "integrity": "sha1-JzDddql5afN/U7mmCWGXvjEcxOo=",
1579 | "dev": true,
1580 | "requires": {
1581 | "colorette": "^1.2.2",
1582 | "nanoid": "^3.1.23",
1583 | "source-map-js": "^0.6.2"
1584 | }
1585 | },
1586 | "postcss-selector-parser": {
1587 | "version": "6.0.6",
1588 | "resolved": "https://registry.nlark.com/postcss-selector-parser/download/postcss-selector-parser-6.0.6.tgz?cache=0&sync_timestamp=1620752939806&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fpostcss-selector-parser%2Fdownload%2Fpostcss-selector-parser-6.0.6.tgz",
1589 | "integrity": "sha1-LFu6gXSsL2mBq2MaQqsO5UrzMuo=",
1590 | "dev": true,
1591 | "requires": {
1592 | "cssesc": "^3.0.0",
1593 | "util-deprecate": "^1.0.2"
1594 | }
1595 | },
1596 | "prettier": {
1597 | "version": "2.3.2",
1598 | "resolved": "https://registry.nlark.com/prettier/download/prettier-2.3.2.tgz?cache=0&sync_timestamp=1624696193562&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fprettier%2Fdownload%2Fprettier-2.3.2.tgz",
1599 | "integrity": "sha1-7ygKBewlNxLkhiM9tcbyNEHnNC0=",
1600 | "dev": true
1601 | },
1602 | "private": {
1603 | "version": "0.1.8",
1604 | "resolved": "https://registry.nlark.com/private/download/private-0.1.8.tgz",
1605 | "integrity": "sha1-I4Hts2ifelPWUxkAYPz4ItLzaP8=",
1606 | "dev": true
1607 | },
1608 | "pseudomap": {
1609 | "version": "1.0.2",
1610 | "resolved": "https://registry.npm.taobao.org/pseudomap/download/pseudomap-1.0.2.tgz",
1611 | "integrity": "sha1-8FKijacOYYkX7wqKw0wa5aaChrM=",
1612 | "dev": true
1613 | },
1614 | "querystring": {
1615 | "version": "0.2.1",
1616 | "resolved": "https://registry.nlark.com/querystring/download/querystring-0.2.1.tgz?cache=0&sync_timestamp=1626179435543&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fquerystring%2Fdownload%2Fquerystring-0.2.1.tgz",
1617 | "integrity": "sha1-QNd2FbsJ0WkCqFw+OKqLXtdhwt0=",
1618 | "dev": true
1619 | },
1620 | "regenerate": {
1621 | "version": "1.4.2",
1622 | "resolved": "https://registry.npm.taobao.org/regenerate/download/regenerate-1.4.2.tgz?cache=0&sync_timestamp=1604218353677&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fregenerate%2Fdownload%2Fregenerate-1.4.2.tgz",
1623 | "integrity": "sha1-uTRtiCfo9aMve6KWN9OYtpAUhIo=",
1624 | "dev": true
1625 | },
1626 | "regenerator-runtime": {
1627 | "version": "0.11.1",
1628 | "resolved": "https://registry.nlark.com/regenerator-runtime/download/regenerator-runtime-0.11.1.tgz?cache=0&sync_timestamp=1626993001371&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fregenerator-runtime%2Fdownload%2Fregenerator-runtime-0.11.1.tgz",
1629 | "integrity": "sha1-vgWtf5v30i4Fb5cmzuUBf78Z4uk=",
1630 | "dev": true
1631 | },
1632 | "regenerator-transform": {
1633 | "version": "0.10.1",
1634 | "resolved": "https://registry.nlark.com/regenerator-transform/download/regenerator-transform-0.10.1.tgz?cache=0&sync_timestamp=1627057533376&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fregenerator-transform%2Fdownload%2Fregenerator-transform-0.10.1.tgz",
1635 | "integrity": "sha1-HkmWg3Ix2ot/PPQRTXG1aRoGgN0=",
1636 | "dev": true,
1637 | "requires": {
1638 | "babel-runtime": "^6.18.0",
1639 | "babel-types": "^6.19.0",
1640 | "private": "^0.1.6"
1641 | }
1642 | },
1643 | "regexpu-core": {
1644 | "version": "2.0.0",
1645 | "resolved": "https://registry.npm.taobao.org/regexpu-core/download/regexpu-core-2.0.0.tgz?cache=0&sync_timestamp=1600413461940&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fregexpu-core%2Fdownload%2Fregexpu-core-2.0.0.tgz",
1646 | "integrity": "sha1-SdA4g3uNz4v6W5pCE5k45uoq4kA=",
1647 | "dev": true,
1648 | "requires": {
1649 | "regenerate": "^1.2.1",
1650 | "regjsgen": "^0.2.0",
1651 | "regjsparser": "^0.1.4"
1652 | }
1653 | },
1654 | "regjsgen": {
1655 | "version": "0.2.0",
1656 | "resolved": "https://registry.nlark.com/regjsgen/download/regjsgen-0.2.0.tgz",
1657 | "integrity": "sha1-bAFq3qxVT3WCP+N6wFuS1aTtsfc=",
1658 | "dev": true
1659 | },
1660 | "regjsparser": {
1661 | "version": "0.1.5",
1662 | "resolved": "https://registry.npm.taobao.org/regjsparser/download/regjsparser-0.1.5.tgz",
1663 | "integrity": "sha1-fuj4Tcb6eS0/0K4ijSS9lJ6tIFw=",
1664 | "dev": true,
1665 | "requires": {
1666 | "jsesc": "~0.5.0"
1667 | },
1668 | "dependencies": {
1669 | "jsesc": {
1670 | "version": "0.5.0",
1671 | "resolved": "https://registry.nlark.com/jsesc/download/jsesc-0.5.0.tgz",
1672 | "integrity": "sha1-597mbjXW/Bb3EP6R1c9p9w8IkR0=",
1673 | "dev": true
1674 | }
1675 | }
1676 | },
1677 | "resolve": {
1678 | "version": "1.20.0",
1679 | "resolved": "https://registry.nlark.com/resolve/download/resolve-1.20.0.tgz",
1680 | "integrity": "sha1-YpoBP7P3B1XW8LeTXMHCxTeLGXU=",
1681 | "dev": true,
1682 | "requires": {
1683 | "is-core-module": "^2.2.0",
1684 | "path-parse": "^1.0.6"
1685 | }
1686 | },
1687 | "rollup": {
1688 | "version": "2.56.2",
1689 | "resolved": "https://registry.nlark.com/rollup/download/rollup-2.56.2.tgz",
1690 | "integrity": "sha1-oEX/P2r1PuAJtfUBbKPaAynlRw8=",
1691 | "dev": true,
1692 | "requires": {
1693 | "fsevents": "~2.3.2"
1694 | }
1695 | },
1696 | "safe-buffer": {
1697 | "version": "5.1.2",
1698 | "resolved": "https://registry.npm.taobao.org/safe-buffer/download/safe-buffer-5.1.2.tgz",
1699 | "integrity": "sha1-mR7GnSluAxN0fVm9/St0XDX4go0=",
1700 | "dev": true
1701 | },
1702 | "semver": {
1703 | "version": "6.3.0",
1704 | "resolved": "https://registry.nlark.com/semver/download/semver-6.3.0.tgz?cache=0&sync_timestamp=1618847119601&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fsemver%2Fdownload%2Fsemver-6.3.0.tgz",
1705 | "integrity": "sha1-7gpkyK9ejO6mdoexM3YeG+y9HT0=",
1706 | "dev": true
1707 | },
1708 | "shebang-command": {
1709 | "version": "2.0.0",
1710 | "resolved": "https://registry.npm.taobao.org/shebang-command/download/shebang-command-2.0.0.tgz",
1711 | "integrity": "sha1-zNCvT4g1+9wmW4JGGq8MNmY/NOo=",
1712 | "dev": true,
1713 | "requires": {
1714 | "shebang-regex": "^3.0.0"
1715 | }
1716 | },
1717 | "shebang-regex": {
1718 | "version": "3.0.0",
1719 | "resolved": "https://registry.nlark.com/shebang-regex/download/shebang-regex-3.0.0.tgz?cache=0&sync_timestamp=1628896299850&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fshebang-regex%2Fdownload%2Fshebang-regex-3.0.0.tgz",
1720 | "integrity": "sha1-rhbxZE2HPsrYQ7AwexQzYtTEIXI=",
1721 | "dev": true
1722 | },
1723 | "slash": {
1724 | "version": "3.0.0",
1725 | "resolved": "https://registry.nlark.com/slash/download/slash-3.0.0.tgz",
1726 | "integrity": "sha1-ZTm+hwwWWtvVJAIg2+Nh8bxNRjQ=",
1727 | "dev": true
1728 | },
1729 | "source-map": {
1730 | "version": "0.7.3",
1731 | "resolved": "https://registry.nlark.com/source-map/download/source-map-0.7.3.tgz",
1732 | "integrity": "sha1-UwL4FpAxc1ImVECS5kmB91F1A4M=",
1733 | "dev": true
1734 | },
1735 | "source-map-js": {
1736 | "version": "0.6.2",
1737 | "resolved": "https://registry.npm.taobao.org/source-map-js/download/source-map-js-0.6.2.tgz",
1738 | "integrity": "sha1-C7XeYxtBz72mz7qL0FqA79/SOF4=",
1739 | "dev": true
1740 | },
1741 | "sourcemap-codec": {
1742 | "version": "1.4.8",
1743 | "resolved": "https://registry.nlark.com/sourcemap-codec/download/sourcemap-codec-1.4.8.tgz",
1744 | "integrity": "sha1-6oBL2UhXQC5pktBaOO8a41qatMQ=",
1745 | "dev": true
1746 | },
1747 | "strip-ansi": {
1748 | "version": "3.0.1",
1749 | "resolved": "https://registry.npm.taobao.org/strip-ansi/download/strip-ansi-3.0.1.tgz?cache=0&sync_timestamp=1618553320591&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fstrip-ansi%2Fdownload%2Fstrip-ansi-3.0.1.tgz",
1750 | "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=",
1751 | "dev": true,
1752 | "requires": {
1753 | "ansi-regex": "^2.0.0"
1754 | }
1755 | },
1756 | "supports-color": {
1757 | "version": "5.5.0",
1758 | "resolved": "https://registry.nlark.com/supports-color/download/supports-color-5.5.0.tgz?cache=0&sync_timestamp=1626703414084&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fsupports-color%2Fdownload%2Fsupports-color-5.5.0.tgz",
1759 | "integrity": "sha1-4uaaRKyHcveKHsCzW2id9lMO/I8=",
1760 | "dev": true,
1761 | "requires": {
1762 | "has-flag": "^3.0.0"
1763 | }
1764 | },
1765 | "svg-tags": {
1766 | "version": "1.0.0",
1767 | "resolved": "https://registry.nlark.com/svg-tags/download/svg-tags-1.0.0.tgz",
1768 | "integrity": "sha1-WPcc7jvVGbWdSyqEO2x95krAR2Q=",
1769 | "dev": true
1770 | },
1771 | "to-fast-properties": {
1772 | "version": "2.0.0",
1773 | "resolved": "https://registry.nlark.com/to-fast-properties/download/to-fast-properties-2.0.0.tgz?cache=0&sync_timestamp=1628418855671&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fto-fast-properties%2Fdownload%2Fto-fast-properties-2.0.0.tgz",
1774 | "integrity": "sha1-3F5pjL0HkmW8c+A3doGk5Og/YW4=",
1775 | "dev": true
1776 | },
1777 | "universalify": {
1778 | "version": "2.0.0",
1779 | "resolved": "https://registry.nlark.com/universalify/download/universalify-2.0.0.tgz",
1780 | "integrity": "sha1-daSYTv7cSwiXXFrrc/Uw0C3yVxc=",
1781 | "dev": true
1782 | },
1783 | "util-deprecate": {
1784 | "version": "1.0.2",
1785 | "resolved": "https://registry.nlark.com/util-deprecate/download/util-deprecate-1.0.2.tgz",
1786 | "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=",
1787 | "dev": true
1788 | },
1789 | "vite": {
1790 | "version": "2.5.0",
1791 | "resolved": "https://registry.nlark.com/vite/download/vite-2.5.0.tgz?cache=0&sync_timestamp=1629090810650&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fvite%2Fdownload%2Fvite-2.5.0.tgz",
1792 | "integrity": "sha1-ERujZ5Qy1CbkRWas9IAAWnkUy9Y=",
1793 | "dev": true,
1794 | "requires": {
1795 | "esbuild": "^0.12.17",
1796 | "fsevents": "~2.3.2",
1797 | "postcss": "^8.3.6",
1798 | "resolve": "^1.20.0",
1799 | "rollup": "^2.38.5"
1800 | }
1801 | },
1802 | "vite-plugin-vue2": {
1803 | "version": "1.8.1",
1804 | "resolved": "https://registry.nlark.com/vite-plugin-vue2/download/vite-plugin-vue2-1.8.1.tgz",
1805 | "integrity": "sha1-UdjToJV10NCyQyjJ9z3QjJrk5QQ=",
1806 | "dev": true,
1807 | "requires": {
1808 | "@babel/core": "^7.11.6",
1809 | "@babel/parser": "^7.13.10",
1810 | "@babel/plugin-proposal-class-properties": "^7.14.5",
1811 | "@babel/plugin-proposal-decorators": "^7.14.5",
1812 | "@babel/plugin-transform-typescript": "^7.13.0",
1813 | "@rollup/pluginutils": "^4.1.0",
1814 | "@vue/babel-helper-vue-jsx-merge-props": "^1.2.1",
1815 | "@vue/babel-preset-jsx": "^1.2.4",
1816 | "@vue/component-compiler-utils": "^3.2.0",
1817 | "babel-preset-env": "^1.7.0",
1818 | "consolidate": "^0.16.0",
1819 | "debug": "^4.3.1",
1820 | "fs-extra": "^9.0.1",
1821 | "hash-sum": "^2.0.0",
1822 | "magic-string": "^0.25.7",
1823 | "prettier": "^2.0.5",
1824 | "querystring": "^0.2.0",
1825 | "rollup": "^2.35.1",
1826 | "slash": "^3.0.0",
1827 | "source-map": "^0.7.3",
1828 | "vue-template-es2015-compiler": "^1.9.1"
1829 | }
1830 | },
1831 | "vite-plugin-vue2-suffix": {
1832 | "version": "1.0.6",
1833 | "resolved": "https://registry.npmjs.org/vite-plugin-vue2-suffix/-/vite-plugin-vue2-suffix-1.0.6.tgz",
1834 | "integrity": "sha512-SkYX9tVXTMgBJjRDQw83dQLCtah6wuaiNZoT+/+7OI4KNczN+zmC6viqR6OVPX+IbjErCkOTLoJSH+qr3t4IMg==",
1835 | "dev": true
1836 | },
1837 | "vue": {
1838 | "version": "2.6.12",
1839 | "resolved": "https://registry.nlark.com/vue/download/vue-2.6.12.tgz",
1840 | "integrity": "sha1-9evU+mvShpQD4pqJau1JBEVskSM="
1841 | },
1842 | "vue-router": {
1843 | "version": "3.5.2",
1844 | "resolved": "https://registry.nlark.com/vue-router/download/vue-router-3.5.2.tgz",
1845 | "integrity": "sha1-X1Xj8lGXDjbD6NiKfNLWejUK3lw="
1846 | },
1847 | "vue-template-compiler": {
1848 | "version": "2.6.12",
1849 | "resolved": "https://registry.nlark.com/vue-template-compiler/download/vue-template-compiler-2.6.12.tgz?cache=0&sync_timestamp=1623059640396&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fvue-template-compiler%2Fdownload%2Fvue-template-compiler-2.6.12.tgz",
1850 | "integrity": "sha1-lH7XGWdEyKUoXr4SM/6WBDf8xX4=",
1851 | "requires": {
1852 | "de-indent": "^1.0.2",
1853 | "he": "^1.1.0"
1854 | }
1855 | },
1856 | "vue-template-es2015-compiler": {
1857 | "version": "1.9.1",
1858 | "resolved": "https://registry.npm.taobao.org/vue-template-es2015-compiler/download/vue-template-es2015-compiler-1.9.1.tgz",
1859 | "integrity": "sha1-HuO8mhbsv1EYvjNLsV+cRvgvWCU=",
1860 | "dev": true
1861 | },
1862 | "which": {
1863 | "version": "2.0.2",
1864 | "resolved": "https://registry.nlark.com/which/download/which-2.0.2.tgz",
1865 | "integrity": "sha1-fGqN0KY2oDJ+ELWckobu6T8/UbE=",
1866 | "dev": true,
1867 | "requires": {
1868 | "isexe": "^2.0.0"
1869 | }
1870 | },
1871 | "yallist": {
1872 | "version": "2.1.2",
1873 | "resolved": "https://registry.npm.taobao.org/yallist/download/yallist-2.1.2.tgz",
1874 | "integrity": "sha1-HBH5IY8HYImkfdUS+TxmmaaoHVI=",
1875 | "dev": true
1876 | }
1877 | }
1878 | }
1879 |
--------------------------------------------------------------------------------
/example/vue2/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "private": true,
3 | "scripts": {
4 | "dev": "cross-env connect=dev vite",
5 | "dev:test": "cross-env connect=test vite",
6 | "dev:gray": "cross-env connect=gray vite",
7 | "dev:prod": "cross-env connect=prod vite",
8 | "build": "vite build"
9 | },
10 | "devDependencies": {
11 | "cross-env": "^7.0.3",
12 | "vite": "^2.2.4",
13 | "vite-plugin-vue2": "^1.5.1",
14 | "vite-plugin-vue2-suffix": "^1.0.6"
15 | },
16 | "dependencies": {
17 | "vue-router": "3.5.2",
18 | "vue": "2.6.12",
19 | "vue-template-compiler": "2.6.12"
20 | },
21 | "name": "vue2",
22 | "version": "1.0.0",
23 | "main": "index.js",
24 | "author": "",
25 | "license": "ISC",
26 | "description": ""
27 | }
28 |
--------------------------------------------------------------------------------
/example/vue2/proxy-table.js:
--------------------------------------------------------------------------------
1 | /**
2 | * vite proxytable sample
3 | * */
4 |
5 | const stageProxyTable = {
6 | dev: {
7 | "/admin": {
8 | target: "http://xxx-dev.com/",
9 | rewrite: (path) => path.replace(/^\/admin/, ""),
10 | },
11 | },
12 | test: {
13 | "/admin": {
14 | target: "http://xxx-test.com/",
15 | rewrite: (path) => path.replace(/^\/admin/, ""),
16 | },
17 | },
18 | gray: {
19 | "/admin": {
20 | target: "http://xxx-gray.com",
21 | rewrite: (path) => path.replace(/^\/admin/, ""),
22 | },
23 | },
24 | prod: {
25 | "/admin": {
26 | target: "http://xxx-prod.com",
27 | rewrite: (path) => path.replace(/^\/admin/, ""),
28 | },
29 | },
30 | };
31 |
32 | /** 总代理表 */
33 | module.exports = {
34 | // 1. 不同测试环境代理表
35 | ...stageProxyTable[process.env.connect],
36 |
37 | // 2. 用了mock的接口,地址转发到本地机器上
38 | "/dev-mock": {
39 | target: `http://127.0.0.1:${process.env.PORT}/`,
40 | changeOrigin: true,
41 | rewrite: (path) => path.replace(/^\/dev-mock/, ""),
42 | },
43 |
44 | // 3. 后台开发同学电脑
45 | "/backend001": {
46 | target: "http://192.168.xx.xx:8000",
47 | rewrite: (path) => path.replace(/^\/backend001/, ""),
48 | },
49 | "/backend002": {
50 | target: "http://192.168.xx.xx:8000",
51 | rewrite: (path) => path.replace(/^\/backend002/, ""),
52 | },
53 | };
54 |
--------------------------------------------------------------------------------
/example/vue2/src/App.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
17 |
18 |
26 |
--------------------------------------------------------------------------------
/example/vue2/src/components/ComponentA/index.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
Component A: {{ msg }}
4 |
5 |
6 |
7 |
8 |
9 |
23 |
--------------------------------------------------------------------------------
/example/vue2/src/components/News.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 | this is a news page
4 |
5 |
6 |
7 |
--------------------------------------------------------------------------------
/example/vue2/src/main.js:
--------------------------------------------------------------------------------
1 | import Vue from 'vue'
2 | import App from './App.vue'
3 | import router from './router'
4 |
5 | new Vue({
6 | el:'#app',
7 | router,
8 | render:(h) => h(App)
9 | })
10 |
--------------------------------------------------------------------------------
/example/vue2/src/router/index.js:
--------------------------------------------------------------------------------
1 | import Vue from 'vue'
2 | import Router from 'vue-router'
3 |
4 | Vue.use(Router)
5 |
6 | const routerMap = [
7 | {
8 | path:'/news',
9 | component: () => import('../components/News')
10 | }
11 | ]
12 |
13 | export default new Router({
14 | scrollBehavior:() => ({
15 | y:0,
16 | x:0
17 | }),
18 | routes:routerMap
19 | })
--------------------------------------------------------------------------------
/example/vue2/vite.config.js:
--------------------------------------------------------------------------------
1 | import { createVuePlugin } from "vite-plugin-vue2";
2 | import VitePluginVue2Suffix from "vite-plugin-vue2-suffix";
3 | import VitePluginProxyMiddleware from "../../dist";
4 | // import VitePluginProxyMiddleware from "../../src";
5 | import path from "path";
6 |
7 | export default {
8 | plugins: [
9 | createVuePlugin(),
10 | VitePluginVue2Suffix(),
11 | VitePluginProxyMiddleware({
12 | proxyTable: path.resolve(__dirname, "./proxy-table"),
13 | }),
14 | ],
15 | server: {
16 | /* https option must be turned on,so that you can use h2 */
17 | // https: {
18 | // key: "./cert/xxx.cert",
19 | // cert: "./cert/xxx.key",
20 | // },
21 | /* vite's original proxy must be ignored,or else it will impact on h2 setting turning on */
22 | // proxy: xxx,
23 | },
24 | };
25 |
--------------------------------------------------------------------------------
/package-lock.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "vite-plugin-proxy-middleware",
3 | "version": "1.0.0",
4 | "lockfileVersion": 1,
5 | "requires": true,
6 | "dependencies": {
7 | "@babel/code-frame": {
8 | "version": "7.15.8",
9 | "resolved": "https://registry.npmmirror.com/@babel/code-frame/download/@babel/code-frame-7.15.8.tgz?cache=0&sync_timestamp=1633553739126&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2F%40babel%2Fcode-frame%2Fdownload%2F%40babel%2Fcode-frame-7.15.8.tgz",
10 | "integrity": "sha1-RZkMR62tsAwDZ3uqiSIffMI9JQM=",
11 | "dev": true,
12 | "requires": {
13 | "@babel/highlight": "^7.14.5"
14 | }
15 | },
16 | "@babel/helper-validator-identifier": {
17 | "version": "7.15.7",
18 | "resolved": "https://registry.nlark.com/@babel/helper-validator-identifier/download/@babel/helper-validator-identifier-7.15.7.tgz?cache=0&sync_timestamp=1631920110587&other_urls=https%3A%2F%2Fregistry.nlark.com%2F%40babel%2Fhelper-validator-identifier%2Fdownload%2F%40babel%2Fhelper-validator-identifier-7.15.7.tgz",
19 | "integrity": "sha1-Ig35k7/pBKSmsCq08zhaXr9uI4k=",
20 | "dev": true
21 | },
22 | "@babel/highlight": {
23 | "version": "7.14.5",
24 | "resolved": "https://registry.nlark.com/@babel/highlight/download/@babel/highlight-7.14.5.tgz?cache=0&sync_timestamp=1623280393681&other_urls=https%3A%2F%2Fregistry.nlark.com%2F%40babel%2Fhighlight%2Fdownload%2F%40babel%2Fhighlight-7.14.5.tgz",
25 | "integrity": "sha1-aGGlLwOWZAUAH2qlNKAaJNmejNk=",
26 | "dev": true,
27 | "requires": {
28 | "@babel/helper-validator-identifier": "^7.14.5",
29 | "chalk": "^2.0.0",
30 | "js-tokens": "^4.0.0"
31 | },
32 | "dependencies": {
33 | "ansi-styles": {
34 | "version": "3.2.1",
35 | "resolved": "https://registry.nlark.com/ansi-styles/download/ansi-styles-3.2.1.tgz?cache=0&sync_timestamp=1618997040758&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fansi-styles%2Fdownload%2Fansi-styles-3.2.1.tgz",
36 | "integrity": "sha1-QfuyAkPlCxK+DwS43tvwdSDOhB0=",
37 | "dev": true,
38 | "requires": {
39 | "color-convert": "^1.9.0"
40 | }
41 | },
42 | "chalk": {
43 | "version": "2.4.2",
44 | "resolved": "https://registry.nlark.com/chalk/download/chalk-2.4.2.tgz?cache=0&sync_timestamp=1627647108647&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fchalk%2Fdownload%2Fchalk-2.4.2.tgz",
45 | "integrity": "sha1-zUJUFnelQzPPVBpJEIwUMrRMlCQ=",
46 | "dev": true,
47 | "requires": {
48 | "ansi-styles": "^3.2.1",
49 | "escape-string-regexp": "^1.0.5",
50 | "supports-color": "^5.3.0"
51 | }
52 | },
53 | "color-convert": {
54 | "version": "1.9.3",
55 | "resolved": "https://registry.npm.taobao.org/color-convert/download/color-convert-1.9.3.tgz",
56 | "integrity": "sha1-u3GFBpDh8TZWfeYp0tVHHe2kweg=",
57 | "dev": true,
58 | "requires": {
59 | "color-name": "1.1.3"
60 | }
61 | },
62 | "color-name": {
63 | "version": "1.1.3",
64 | "resolved": "https://registry.npm.taobao.org/color-name/download/color-name-1.1.3.tgz",
65 | "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=",
66 | "dev": true
67 | },
68 | "has-flag": {
69 | "version": "3.0.0",
70 | "resolved": "https://registry.nlark.com/has-flag/download/has-flag-3.0.0.tgz?cache=0&sync_timestamp=1626715907927&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fhas-flag%2Fdownload%2Fhas-flag-3.0.0.tgz",
71 | "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=",
72 | "dev": true
73 | },
74 | "supports-color": {
75 | "version": "5.5.0",
76 | "resolved": "https://registry.nlark.com/supports-color/download/supports-color-5.5.0.tgz?cache=0&sync_timestamp=1626703400240&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fsupports-color%2Fdownload%2Fsupports-color-5.5.0.tgz",
77 | "integrity": "sha1-4uaaRKyHcveKHsCzW2id9lMO/I8=",
78 | "dev": true,
79 | "requires": {
80 | "has-flag": "^3.0.0"
81 | }
82 | }
83 | }
84 | },
85 | "@rollup/pluginutils": {
86 | "version": "4.1.1",
87 | "resolved": "https://registry.nlark.com/@rollup/pluginutils/download/@rollup/pluginutils-4.1.1.tgz",
88 | "integrity": "sha1-HU2obdTt7RVlalfZM/2iuaCNR+w=",
89 | "dev": true,
90 | "requires": {
91 | "estree-walker": "^2.0.1",
92 | "picomatch": "^2.2.2"
93 | }
94 | },
95 | "@types/node": {
96 | "version": "16.10.3",
97 | "resolved": "https://registry.npmmirror.com/@types/node/download/@types/node-16.10.3.tgz?cache=0&sync_timestamp=1633466158941&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2F%40types%2Fnode%2Fdownload%2F%40types%2Fnode-16.10.3.tgz",
98 | "integrity": "sha1-eo8oOGA+oxTR0iuzFx2JnhXFe9U=",
99 | "dev": true
100 | },
101 | "ansi-styles": {
102 | "version": "4.3.0",
103 | "resolved": "https://registry.nlark.com/ansi-styles/download/ansi-styles-4.3.0.tgz?cache=0&sync_timestamp=1618997040758&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fansi-styles%2Fdownload%2Fansi-styles-4.3.0.tgz",
104 | "integrity": "sha1-7dgDYornHATIWuegkG7a00tkiTc=",
105 | "requires": {
106 | "color-convert": "^2.0.1"
107 | }
108 | },
109 | "buffer-from": {
110 | "version": "1.1.2",
111 | "resolved": "https://registry.nlark.com/buffer-from/download/buffer-from-1.1.2.tgz",
112 | "integrity": "sha1-KxRqb9cugLT1XSVfNe1Zo6mkG9U=",
113 | "dev": true
114 | },
115 | "chalk": {
116 | "version": "4.1.2",
117 | "resolved": "https://registry.nlark.com/chalk/download/chalk-4.1.2.tgz?cache=0&sync_timestamp=1627647108647&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fchalk%2Fdownload%2Fchalk-4.1.2.tgz",
118 | "integrity": "sha1-qsTit3NKdAhnrrFr8CqtVWoeegE=",
119 | "requires": {
120 | "ansi-styles": "^4.1.0",
121 | "supports-color": "^7.1.0"
122 | }
123 | },
124 | "color-convert": {
125 | "version": "2.0.1",
126 | "resolved": "https://registry.npm.taobao.org/color-convert/download/color-convert-2.0.1.tgz",
127 | "integrity": "sha1-ctOmjVmMm9s68q0ehPIdiWq9TeM=",
128 | "requires": {
129 | "color-name": "~1.1.4"
130 | }
131 | },
132 | "color-name": {
133 | "version": "1.1.4",
134 | "resolved": "https://registry.npm.taobao.org/color-name/download/color-name-1.1.4.tgz",
135 | "integrity": "sha1-wqCah6y95pVD3m9j+jmVyCbFNqI="
136 | },
137 | "commander": {
138 | "version": "2.20.3",
139 | "resolved": "https://registry.nlark.com/commander/download/commander-2.20.3.tgz",
140 | "integrity": "sha1-/UhehMA+tIgcIHIrpIA16FMa6zM=",
141 | "dev": true
142 | },
143 | "commondir": {
144 | "version": "1.0.1",
145 | "resolved": "https://registry.npm.taobao.org/commondir/download/commondir-1.0.1.tgz",
146 | "integrity": "sha1-3dgA2gxmEnOTzKWVDqloo6rxJTs=",
147 | "dev": true
148 | },
149 | "esbuild": {
150 | "version": "0.13.4",
151 | "resolved": "https://registry.npmmirror.com/esbuild/download/esbuild-0.13.4.tgz?cache=0&sync_timestamp=1633444926890&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2Fesbuild%2Fdownload%2Fesbuild-0.13.4.tgz",
152 | "integrity": "sha1-zi3rVsT7Ngk4MRy/xn+ORnu2hBs=",
153 | "requires": {
154 | "esbuild-android-arm64": "0.13.4",
155 | "esbuild-darwin-64": "0.13.4",
156 | "esbuild-darwin-arm64": "0.13.4",
157 | "esbuild-freebsd-64": "0.13.4",
158 | "esbuild-freebsd-arm64": "0.13.4",
159 | "esbuild-linux-32": "0.13.4",
160 | "esbuild-linux-64": "0.13.4",
161 | "esbuild-linux-arm": "0.13.4",
162 | "esbuild-linux-arm64": "0.13.4",
163 | "esbuild-linux-mips64le": "0.13.4",
164 | "esbuild-linux-ppc64le": "0.13.4",
165 | "esbuild-openbsd-64": "0.13.4",
166 | "esbuild-sunos-64": "0.13.4",
167 | "esbuild-windows-32": "0.13.4",
168 | "esbuild-windows-64": "0.13.4",
169 | "esbuild-windows-arm64": "0.13.4"
170 | }
171 | },
172 | "esbuild-android-arm64": {
173 | "version": "0.13.4",
174 | "resolved": "https://registry.npmmirror.com/esbuild-android-arm64/download/esbuild-android-arm64-0.13.4.tgz",
175 | "integrity": "sha1-UXiiDSt6unQaMcGWCfnmezRplrk=",
176 | "optional": true
177 | },
178 | "esbuild-darwin-64": {
179 | "version": "0.13.4",
180 | "resolved": "https://registry.npmmirror.com/esbuild-darwin-64/download/esbuild-darwin-64-0.13.4.tgz",
181 | "integrity": "sha1-ej5myOEnG2UFQbJe7WXITzVkpp0=",
182 | "optional": true
183 | },
184 | "esbuild-darwin-arm64": {
185 | "version": "0.13.4",
186 | "resolved": "https://registry.npmmirror.com/esbuild-darwin-arm64/download/esbuild-darwin-arm64-0.13.4.tgz",
187 | "integrity": "sha1-eT/spgMrKlfvKR65stM3aNYKSdY=",
188 | "optional": true
189 | },
190 | "esbuild-freebsd-64": {
191 | "version": "0.13.4",
192 | "resolved": "https://registry.npmmirror.com/esbuild-freebsd-64/download/esbuild-freebsd-64-0.13.4.tgz",
193 | "integrity": "sha1-KUrsPCz0tB+2kAIS/Jwz3Y+7tKI=",
194 | "optional": true
195 | },
196 | "esbuild-freebsd-arm64": {
197 | "version": "0.13.4",
198 | "resolved": "https://registry.npmmirror.com/esbuild-freebsd-arm64/download/esbuild-freebsd-arm64-0.13.4.tgz",
199 | "integrity": "sha1-Cf5mx1HBL5uXaXax2D895ZTLJ4c=",
200 | "optional": true
201 | },
202 | "esbuild-linux-32": {
203 | "version": "0.13.4",
204 | "resolved": "https://registry.npmmirror.com/esbuild-linux-32/download/esbuild-linux-32-0.13.4.tgz",
205 | "integrity": "sha1-qfB5PXvMnO9PT/pDmMUlh3+6WDk=",
206 | "optional": true
207 | },
208 | "esbuild-linux-64": {
209 | "version": "0.13.4",
210 | "resolved": "https://registry.npmmirror.com/esbuild-linux-64/download/esbuild-linux-64-0.13.4.tgz",
211 | "integrity": "sha1-wNC0ydYuO7+L3yzs43QDqm1g/C4=",
212 | "optional": true
213 | },
214 | "esbuild-linux-arm": {
215 | "version": "0.13.4",
216 | "resolved": "https://registry.npmmirror.com/esbuild-linux-arm/download/esbuild-linux-arm-0.13.4.tgz",
217 | "integrity": "sha1-GGzZuIhawTK5lTpKCv5mgWjevRA=",
218 | "optional": true
219 | },
220 | "esbuild-linux-arm64": {
221 | "version": "0.13.4",
222 | "resolved": "https://registry.npmmirror.com/esbuild-linux-arm64/download/esbuild-linux-arm64-0.13.4.tgz?cache=0&sync_timestamp=1633444925615&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2Fesbuild-linux-arm64%2Fdownload%2Fesbuild-linux-arm64-0.13.4.tgz",
223 | "integrity": "sha1-EpLZe/pkoI0Sco+KeDe/kndsd5s=",
224 | "optional": true
225 | },
226 | "esbuild-linux-mips64le": {
227 | "version": "0.13.4",
228 | "resolved": "https://registry.npmmirror.com/esbuild-linux-mips64le/download/esbuild-linux-mips64le-0.13.4.tgz?cache=0&sync_timestamp=1633444924551&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2Fesbuild-linux-mips64le%2Fdownload%2Fesbuild-linux-mips64le-0.13.4.tgz",
229 | "integrity": "sha1-QgSb9yvFhoF7SlHMnjIUjRPl6Ac=",
230 | "optional": true
231 | },
232 | "esbuild-linux-ppc64le": {
233 | "version": "0.13.4",
234 | "resolved": "https://registry.npmmirror.com/esbuild-linux-ppc64le/download/esbuild-linux-ppc64le-0.13.4.tgz?cache=0&sync_timestamp=1633444926268&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2Fesbuild-linux-ppc64le%2Fdownload%2Fesbuild-linux-ppc64le-0.13.4.tgz",
235 | "integrity": "sha1-rfHOLvIwJ1fEODiH2mrE3SW+nU8=",
236 | "optional": true
237 | },
238 | "esbuild-openbsd-64": {
239 | "version": "0.13.4",
240 | "resolved": "https://registry.npmmirror.com/esbuild-openbsd-64/download/esbuild-openbsd-64-0.13.4.tgz",
241 | "integrity": "sha1-HIEiEBiYxSogyHhpNc8+t6Gbg7Q=",
242 | "optional": true
243 | },
244 | "esbuild-sunos-64": {
245 | "version": "0.13.4",
246 | "resolved": "https://registry.npmmirror.com/esbuild-sunos-64/download/esbuild-sunos-64-0.13.4.tgz?cache=0&sync_timestamp=1633444925041&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2Fesbuild-sunos-64%2Fdownload%2Fesbuild-sunos-64-0.13.4.tgz",
247 | "integrity": "sha1-TslfqhSmDylf5IW+v/7/9Ahzkzc=",
248 | "optional": true
249 | },
250 | "esbuild-windows-32": {
251 | "version": "0.13.4",
252 | "resolved": "https://registry.npmmirror.com/esbuild-windows-32/download/esbuild-windows-32-0.13.4.tgz",
253 | "integrity": "sha1-MYLDgEh7eXsE0OwsgMKUVmaGkIA=",
254 | "optional": true
255 | },
256 | "esbuild-windows-64": {
257 | "version": "0.13.4",
258 | "resolved": "https://registry.npmmirror.com/esbuild-windows-64/download/esbuild-windows-64-0.13.4.tgz",
259 | "integrity": "sha1-uemV+S2B9DOgTzNhHmA+gvkjLmk=",
260 | "optional": true
261 | },
262 | "esbuild-windows-arm64": {
263 | "version": "0.13.4",
264 | "resolved": "https://registry.npmmirror.com/esbuild-windows-arm64/download/esbuild-windows-arm64-0.13.4.tgz",
265 | "integrity": "sha1-+yOVMvB7dk0Vj0zHhxeO9Mb621w=",
266 | "optional": true
267 | },
268 | "escape-string-regexp": {
269 | "version": "1.0.5",
270 | "resolved": "https://registry.nlark.com/escape-string-regexp/download/escape-string-regexp-1.0.5.tgz",
271 | "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=",
272 | "dev": true
273 | },
274 | "estree-walker": {
275 | "version": "2.0.2",
276 | "resolved": "https://registry.npm.taobao.org/estree-walker/download/estree-walker-2.0.2.tgz",
277 | "integrity": "sha1-UvAQF4wqTBF6d1fP6UKtt9LaTKw=",
278 | "dev": true
279 | },
280 | "find-cache-dir": {
281 | "version": "3.3.2",
282 | "resolved": "https://registry.nlark.com/find-cache-dir/download/find-cache-dir-3.3.2.tgz?cache=0&sync_timestamp=1630260009898&other_urls=https%3A%2F%2Fregistry.nlark.com%2Ffind-cache-dir%2Fdownload%2Ffind-cache-dir-3.3.2.tgz",
283 | "integrity": "sha1-swxbbv8HMHMa6pu9nb7L2AJW1ks=",
284 | "dev": true,
285 | "requires": {
286 | "commondir": "^1.0.1",
287 | "make-dir": "^3.0.2",
288 | "pkg-dir": "^4.1.0"
289 | }
290 | },
291 | "find-up": {
292 | "version": "4.1.0",
293 | "resolved": "https://registry.npmmirror.com/find-up/download/find-up-4.1.0.tgz",
294 | "integrity": "sha1-l6/n1s3AvFkoWEt8jXsW6KmqXRk=",
295 | "dev": true,
296 | "requires": {
297 | "locate-path": "^5.0.0",
298 | "path-exists": "^4.0.0"
299 | }
300 | },
301 | "fs-extra": {
302 | "version": "8.1.0",
303 | "resolved": "https://registry.nlark.com/fs-extra/download/fs-extra-8.1.0.tgz",
304 | "integrity": "sha1-SdQ8RaiM2Wd2aMt74bRu/bjS4cA=",
305 | "dev": true,
306 | "requires": {
307 | "graceful-fs": "^4.2.0",
308 | "jsonfile": "^4.0.0",
309 | "universalify": "^0.1.0"
310 | }
311 | },
312 | "fsevents": {
313 | "version": "2.3.2",
314 | "resolved": "https://registry.npm.taobao.org/fsevents/download/fsevents-2.3.2.tgz",
315 | "integrity": "sha1-ilJveLj99GI7cJ4Ll1xSwkwC/Ro=",
316 | "optional": true
317 | },
318 | "function-bind": {
319 | "version": "1.1.1",
320 | "resolved": "https://registry.npm.taobao.org/function-bind/download/function-bind-1.1.1.tgz",
321 | "integrity": "sha1-pWiZ0+o8m6uHS7l3O3xe3pL0iV0="
322 | },
323 | "graceful-fs": {
324 | "version": "4.2.8",
325 | "resolved": "https://registry.nlark.com/graceful-fs/download/graceful-fs-4.2.8.tgz?cache=0&sync_timestamp=1628196352424&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fgraceful-fs%2Fdownload%2Fgraceful-fs-4.2.8.tgz",
326 | "integrity": "sha1-5BK40z9eAGWTy9PO5t+fLOu+gCo=",
327 | "dev": true
328 | },
329 | "has": {
330 | "version": "1.0.3",
331 | "resolved": "https://registry.npm.taobao.org/has/download/has-1.0.3.tgz",
332 | "integrity": "sha1-ci18v8H2qoJB8W3YFOAR4fQeh5Y=",
333 | "requires": {
334 | "function-bind": "^1.1.1"
335 | }
336 | },
337 | "has-flag": {
338 | "version": "4.0.0",
339 | "resolved": "https://registry.nlark.com/has-flag/download/has-flag-4.0.0.tgz?cache=0&sync_timestamp=1626715907927&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fhas-flag%2Fdownload%2Fhas-flag-4.0.0.tgz",
340 | "integrity": "sha1-lEdx/ZyByBJlxNaUGGDaBrtZR5s="
341 | },
342 | "http2-proxy": {
343 | "version": "5.0.53",
344 | "resolved": "https://registry.nlark.com/http2-proxy/download/http2-proxy-5.0.53.tgz",
345 | "integrity": "sha1-/GywfSu5d6OI6+7ERJVX8gEeWh8="
346 | },
347 | "is-core-module": {
348 | "version": "2.7.0",
349 | "resolved": "https://registry.npmmirror.com/is-core-module/download/is-core-module-2.7.0.tgz",
350 | "integrity": "sha1-PA730xtKz8V0+AxYQJ1WioNoSOM=",
351 | "requires": {
352 | "has": "^1.0.3"
353 | }
354 | },
355 | "jest-worker": {
356 | "version": "26.6.2",
357 | "resolved": "https://registry.npmmirror.com/jest-worker/download/jest-worker-26.6.2.tgz",
358 | "integrity": "sha1-f3LLxNZDw2Xie5/XdfnQ6qnHqO0=",
359 | "dev": true,
360 | "requires": {
361 | "@types/node": "*",
362 | "merge-stream": "^2.0.0",
363 | "supports-color": "^7.0.0"
364 | },
365 | "dependencies": {
366 | "has-flag": {
367 | "version": "4.0.0",
368 | "resolved": "https://registry.nlark.com/has-flag/download/has-flag-4.0.0.tgz",
369 | "integrity": "sha1-lEdx/ZyByBJlxNaUGGDaBrtZR5s=",
370 | "dev": true
371 | },
372 | "supports-color": {
373 | "version": "7.2.0",
374 | "resolved": "https://registry.nlark.com/supports-color/download/supports-color-7.2.0.tgz?cache=0&sync_timestamp=1626703414084&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fsupports-color%2Fdownload%2Fsupports-color-7.2.0.tgz",
375 | "integrity": "sha1-G33NyzK4E4gBs+R4umpRyqiWSNo=",
376 | "dev": true,
377 | "requires": {
378 | "has-flag": "^4.0.0"
379 | }
380 | }
381 | }
382 | },
383 | "js-tokens": {
384 | "version": "4.0.0",
385 | "resolved": "https://registry.nlark.com/js-tokens/download/js-tokens-4.0.0.tgz?cache=0&sync_timestamp=1619345098261&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fjs-tokens%2Fdownload%2Fjs-tokens-4.0.0.tgz",
386 | "integrity": "sha1-GSA/tZmR35jjoocFDUZHzerzJJk=",
387 | "dev": true
388 | },
389 | "jsonfile": {
390 | "version": "4.0.0",
391 | "resolved": "https://registry.npm.taobao.org/jsonfile/download/jsonfile-4.0.0.tgz",
392 | "integrity": "sha1-h3Gq4HmbZAdrdmQPygWPnBDjPss=",
393 | "dev": true,
394 | "requires": {
395 | "graceful-fs": "^4.1.6"
396 | }
397 | },
398 | "locate-path": {
399 | "version": "5.0.0",
400 | "resolved": "https://registry.nlark.com/locate-path/download/locate-path-5.0.0.tgz?cache=0&sync_timestamp=1629895724478&other_urls=https%3A%2F%2Fregistry.nlark.com%2Flocate-path%2Fdownload%2Flocate-path-5.0.0.tgz",
401 | "integrity": "sha1-Gvujlq/WdqbUJQTQpno6frn2KqA=",
402 | "dev": true,
403 | "requires": {
404 | "p-locate": "^4.1.0"
405 | }
406 | },
407 | "make-dir": {
408 | "version": "3.1.0",
409 | "resolved": "https://registry.npm.taobao.org/make-dir/download/make-dir-3.1.0.tgz",
410 | "integrity": "sha1-QV6WcEazp/HRhSd9hKpYIDcmoT8=",
411 | "dev": true,
412 | "requires": {
413 | "semver": "^6.0.0"
414 | }
415 | },
416 | "merge-stream": {
417 | "version": "2.0.0",
418 | "resolved": "https://registry.npm.taobao.org/merge-stream/download/merge-stream-2.0.0.tgz",
419 | "integrity": "sha1-UoI2KaFN0AyXcPtq1H3GMQ8sH2A=",
420 | "dev": true
421 | },
422 | "nanoid": {
423 | "version": "3.1.29",
424 | "resolved": "https://registry.npmmirror.com/nanoid/download/nanoid-3.1.29.tgz?cache=0&sync_timestamp=1633468315706&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2Fnanoid%2Fdownload%2Fnanoid-3.1.29.tgz",
425 | "integrity": "sha1-IU+y16M+GlvvR1e3ed+utqTlrrQ="
426 | },
427 | "p-limit": {
428 | "version": "2.3.0",
429 | "resolved": "https://registry.nlark.com/p-limit/download/p-limit-2.3.0.tgz",
430 | "integrity": "sha1-PdM8ZHohT9//2DWTPrCG2g3CHbE=",
431 | "dev": true,
432 | "requires": {
433 | "p-try": "^2.0.0"
434 | }
435 | },
436 | "p-locate": {
437 | "version": "4.1.0",
438 | "resolved": "https://registry.nlark.com/p-locate/download/p-locate-4.1.0.tgz",
439 | "integrity": "sha1-o0KLtwiLOmApL2aRkni3wpetTwc=",
440 | "dev": true,
441 | "requires": {
442 | "p-limit": "^2.2.0"
443 | }
444 | },
445 | "p-try": {
446 | "version": "2.2.0",
447 | "resolved": "https://registry.npmmirror.com/p-try/download/p-try-2.2.0.tgz?cache=0&sync_timestamp=1633364462890&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2Fp-try%2Fdownload%2Fp-try-2.2.0.tgz",
448 | "integrity": "sha1-yyhoVA4xPWHeWPr741zpAE1VQOY=",
449 | "dev": true
450 | },
451 | "path-exists": {
452 | "version": "4.0.0",
453 | "resolved": "https://registry.nlark.com/path-exists/download/path-exists-4.0.0.tgz?cache=0&sync_timestamp=1628765299359&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fpath-exists%2Fdownload%2Fpath-exists-4.0.0.tgz",
454 | "integrity": "sha1-UTvb4tO5XXdi6METfvoZXGxhtbM=",
455 | "dev": true
456 | },
457 | "path-parse": {
458 | "version": "1.0.7",
459 | "resolved": "https://registry.nlark.com/path-parse/download/path-parse-1.0.7.tgz",
460 | "integrity": "sha1-+8EUtgykKzDZ2vWFjkvWi77bZzU="
461 | },
462 | "picocolors": {
463 | "version": "0.2.1",
464 | "resolved": "https://registry.npmmirror.com/picocolors/download/picocolors-0.2.1.tgz",
465 | "integrity": "sha1-VwZw95NkaFHRuhNZlpYqutWHhZ8="
466 | },
467 | "picomatch": {
468 | "version": "2.3.0",
469 | "resolved": "https://registry.nlark.com/picomatch/download/picomatch-2.3.0.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fpicomatch%2Fdownload%2Fpicomatch-2.3.0.tgz",
470 | "integrity": "sha1-8fBh3o9qS/AiiS4tEoI0+5gwKXI=",
471 | "dev": true
472 | },
473 | "pkg-dir": {
474 | "version": "4.2.0",
475 | "resolved": "https://registry.npmmirror.com/pkg-dir/download/pkg-dir-4.2.0.tgz?cache=0&sync_timestamp=1633498133295&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2Fpkg-dir%2Fdownload%2Fpkg-dir-4.2.0.tgz",
476 | "integrity": "sha1-8JkTPfft5CLoHR2ESCcO6z5CYfM=",
477 | "dev": true,
478 | "requires": {
479 | "find-up": "^4.0.0"
480 | }
481 | },
482 | "postcss": {
483 | "version": "8.3.9",
484 | "resolved": "https://registry.npmmirror.com/postcss/download/postcss-8.3.9.tgz?cache=0&sync_timestamp=1633378540690&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2Fpostcss%2Fdownload%2Fpostcss-8.3.9.tgz",
485 | "integrity": "sha1-mHVMqgbE7p61nMSL0HO7a9NDfDE=",
486 | "requires": {
487 | "nanoid": "^3.1.28",
488 | "picocolors": "^0.2.1",
489 | "source-map-js": "^0.6.2"
490 | }
491 | },
492 | "randombytes": {
493 | "version": "2.1.0",
494 | "resolved": "https://registry.npm.taobao.org/randombytes/download/randombytes-2.1.0.tgz",
495 | "integrity": "sha1-32+ENy8CcNxlzfYpE0mrekc9Tyo=",
496 | "dev": true,
497 | "requires": {
498 | "safe-buffer": "^5.1.0"
499 | }
500 | },
501 | "resolve": {
502 | "version": "1.20.0",
503 | "resolved": "https://registry.nlark.com/resolve/download/resolve-1.20.0.tgz",
504 | "integrity": "sha1-YpoBP7P3B1XW8LeTXMHCxTeLGXU=",
505 | "requires": {
506 | "is-core-module": "^2.2.0",
507 | "path-parse": "^1.0.6"
508 | }
509 | },
510 | "rollup": {
511 | "version": "2.58.0",
512 | "resolved": "https://registry.npmmirror.com/rollup/download/rollup-2.58.0.tgz",
513 | "integrity": "sha1-pkOYM2Xnv39bfGKoMxuYO3xMZ/s=",
514 | "requires": {
515 | "fsevents": "~2.3.2"
516 | }
517 | },
518 | "rollup-plugin-terser": {
519 | "version": "7.0.2",
520 | "resolved": "https://registry.npm.taobao.org/rollup-plugin-terser/download/rollup-plugin-terser-7.0.2.tgz?cache=0&sync_timestamp=1599266972539&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Frollup-plugin-terser%2Fdownload%2Frollup-plugin-terser-7.0.2.tgz",
521 | "integrity": "sha1-6Pu6SGmYGy3DWufopQLVxsBNMk0=",
522 | "dev": true,
523 | "requires": {
524 | "@babel/code-frame": "^7.10.4",
525 | "jest-worker": "^26.2.1",
526 | "serialize-javascript": "^4.0.0",
527 | "terser": "^5.0.0"
528 | }
529 | },
530 | "rollup-plugin-typescript2": {
531 | "version": "0.30.0",
532 | "resolved": "https://registry.npm.taobao.org/rollup-plugin-typescript2/download/rollup-plugin-typescript2-0.30.0.tgz?cache=0&sync_timestamp=1613666385631&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Frollup-plugin-typescript2%2Fdownload%2Frollup-plugin-typescript2-0.30.0.tgz",
533 | "integrity": "sha1-HMmawjCb9LnQo+vbwgAq7NVgg9M=",
534 | "dev": true,
535 | "requires": {
536 | "@rollup/pluginutils": "^4.1.0",
537 | "find-cache-dir": "^3.3.1",
538 | "fs-extra": "8.1.0",
539 | "resolve": "1.20.0",
540 | "tslib": "2.1.0"
541 | },
542 | "dependencies": {
543 | "tslib": {
544 | "version": "2.1.0",
545 | "resolved": "https://registry.nlark.com/tslib/download/tslib-2.1.0.tgz?cache=0&sync_timestamp=1628722556410&other_urls=https%3A%2F%2Fregistry.nlark.com%2Ftslib%2Fdownload%2Ftslib-2.1.0.tgz",
546 | "integrity": "sha1-2mCGDxwuyqVwOrfTm8Bba/mIuXo=",
547 | "dev": true
548 | }
549 | }
550 | },
551 | "safe-buffer": {
552 | "version": "5.2.1",
553 | "resolved": "https://registry.npm.taobao.org/safe-buffer/download/safe-buffer-5.2.1.tgz",
554 | "integrity": "sha1-Hq+fqb2x/dTsdfWPnNtOa3gn7sY=",
555 | "dev": true
556 | },
557 | "semver": {
558 | "version": "6.3.0",
559 | "resolved": "https://registry.nlark.com/semver/download/semver-6.3.0.tgz?cache=0&sync_timestamp=1618847119601&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fsemver%2Fdownload%2Fsemver-6.3.0.tgz",
560 | "integrity": "sha1-7gpkyK9ejO6mdoexM3YeG+y9HT0=",
561 | "dev": true
562 | },
563 | "serialize-javascript": {
564 | "version": "4.0.0",
565 | "resolved": "https://registry.nlark.com/serialize-javascript/download/serialize-javascript-4.0.0.tgz",
566 | "integrity": "sha1-tSXhI4SJpez8Qq+sw/6Z5mb0sao=",
567 | "dev": true,
568 | "requires": {
569 | "randombytes": "^2.1.0"
570 | }
571 | },
572 | "source-map": {
573 | "version": "0.7.3",
574 | "resolved": "https://registry.nlark.com/source-map/download/source-map-0.7.3.tgz",
575 | "integrity": "sha1-UwL4FpAxc1ImVECS5kmB91F1A4M=",
576 | "dev": true
577 | },
578 | "source-map-js": {
579 | "version": "0.6.2",
580 | "resolved": "https://registry.npm.taobao.org/source-map-js/download/source-map-js-0.6.2.tgz",
581 | "integrity": "sha1-C7XeYxtBz72mz7qL0FqA79/SOF4="
582 | },
583 | "source-map-support": {
584 | "version": "0.5.20",
585 | "resolved": "https://registry.nlark.com/source-map-support/download/source-map-support-0.5.20.tgz?cache=0&sync_timestamp=1631179636992&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fsource-map-support%2Fdownload%2Fsource-map-support-0.5.20.tgz",
586 | "integrity": "sha1-EhZgifj15ejFaSazd2Mzkt0stsk=",
587 | "dev": true,
588 | "requires": {
589 | "buffer-from": "^1.0.0",
590 | "source-map": "^0.6.0"
591 | },
592 | "dependencies": {
593 | "source-map": {
594 | "version": "0.6.1",
595 | "resolved": "https://registry.nlark.com/source-map/download/source-map-0.6.1.tgz",
596 | "integrity": "sha1-dHIq8y6WFOnCh6jQu95IteLxomM=",
597 | "dev": true
598 | }
599 | }
600 | },
601 | "supports-color": {
602 | "version": "7.2.0",
603 | "resolved": "https://registry.nlark.com/supports-color/download/supports-color-7.2.0.tgz?cache=0&sync_timestamp=1626703400240&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fsupports-color%2Fdownload%2Fsupports-color-7.2.0.tgz",
604 | "integrity": "sha1-G33NyzK4E4gBs+R4umpRyqiWSNo=",
605 | "requires": {
606 | "has-flag": "^4.0.0"
607 | }
608 | },
609 | "terser": {
610 | "version": "5.9.0",
611 | "resolved": "https://registry.nlark.com/terser/download/terser-5.9.0.tgz",
612 | "integrity": "sha1-R9bmKaUiljJA8rVfyqPJkIPSw1E=",
613 | "dev": true,
614 | "requires": {
615 | "commander": "^2.20.0",
616 | "source-map": "~0.7.2",
617 | "source-map-support": "~0.5.20"
618 | }
619 | },
620 | "tslib": {
621 | "version": "2.3.1",
622 | "resolved": "https://registry.nlark.com/tslib/download/tslib-2.3.1.tgz?cache=0&sync_timestamp=1628722556410&other_urls=https%3A%2F%2Fregistry.nlark.com%2Ftslib%2Fdownload%2Ftslib-2.3.1.tgz",
623 | "integrity": "sha1-6KM1rdXOrlGqJh0ypJAVjvBC7wE=",
624 | "dev": true
625 | },
626 | "typescript": {
627 | "version": "4.4.3",
628 | "resolved": "https://registry.npmmirror.com/typescript/download/typescript-4.4.3.tgz?cache=0&sync_timestamp=1633677705465&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2Ftypescript%2Fdownload%2Ftypescript-4.4.3.tgz",
629 | "integrity": "sha1-vcVAfKorEJ79T4L+EwZW+XeikyQ=",
630 | "dev": true
631 | },
632 | "universalify": {
633 | "version": "0.1.2",
634 | "resolved": "https://registry.npm.taobao.org/universalify/download/universalify-0.1.2.tgz",
635 | "integrity": "sha1-tkb2m+OULavOzJ1mOcgNwQXvqmY=",
636 | "dev": true
637 | },
638 | "vite": {
639 | "version": "2.6.5",
640 | "resolved": "https://registry.npmmirror.com/vite/download/vite-2.6.5.tgz",
641 | "integrity": "sha1-xNJZcuL3Nx5oLahoKHIt31Em89E=",
642 | "requires": {
643 | "esbuild": "^0.13.2",
644 | "fsevents": "~2.3.2",
645 | "postcss": "^8.3.8",
646 | "resolve": "^1.20.0",
647 | "rollup": "^2.57.0"
648 | }
649 | }
650 | }
651 | }
652 |
--------------------------------------------------------------------------------
/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "vite-plugin-proxy-middleware",
3 | "version": "1.0.2",
4 | "description": "a vite plugin that solve the conflict problem between turning on vite proxy and http2, you can use both http2 and proxy at the same time ;-)",
5 | "main": "dist/index.js",
6 | "scripts": {
7 | "build": "rollup -c"
8 | },
9 | "repository": {
10 | "type": "git",
11 | "url": "git+https://github.com/williamyorkl/vite-plugin-proxy-middleware.git"
12 | },
13 | "author": "",
14 | "license": "ISC",
15 | "bugs": {
16 | "url": "https://github.com/williamyorkl/vite-plugin-proxy-middleware/issues"
17 | },
18 | "homepage": "https://github.com/williamyorkl/vite-plugin-proxy-middleware#readme",
19 | "dependencies": {
20 | "chalk": "^4.1.2",
21 | "http2-proxy": "^5.0.53",
22 | "vite": "^2.6.5"
23 | },
24 | "devDependencies": {
25 | "@types/node": "^16.10.3",
26 | "rollup": "^2.56.2",
27 | "rollup-plugin-terser": "^7.0.2",
28 | "rollup-plugin-typescript2": "^0.30.0",
29 | "tslib": "^2.3.1",
30 | "typescript": "^4.4.3"
31 | },
32 | "types": "./dist/index.d.ts"
33 | }
34 |
--------------------------------------------------------------------------------
/rollup.config.ts:
--------------------------------------------------------------------------------
1 | import { terser } from "rollup-plugin-terser";
2 | import typescript from "rollup-plugin-typescript2";
3 |
4 | export default {
5 | input: "./src/index.ts",
6 | output: [
7 | {
8 | file: "./dist/index.js",
9 | format: "cjs",
10 | },
11 | ],
12 | external: ["chalk", "http2-proxy"],
13 | plugins: [
14 | terser({
15 | output: {
16 | ascii_only: true, // 仅输出ascii字符
17 | },
18 | }),
19 | typescript({
20 | tsconfig: "./tsconfig.json",
21 | tsconfigOverride: {
22 | compilerOptions: { module: "esnext" },
23 | },
24 | }),
25 | ],
26 | };
27 |
--------------------------------------------------------------------------------
/src/index.ts:
--------------------------------------------------------------------------------
1 | import { generateMiddlewareProxyTable } from "./utils";
2 | import chalk from "chalk";
3 |
4 | import { Plugin, ProxyOptions, ResolvedConfig } from "vite";
5 | import { middleWareOptsType } from "./utils";
6 |
7 | interface userOptsType {
8 | /** if you are using mock, specify a mockPath, default value is '/dev-mock', */
9 | mockPath?: string;
10 |
11 | /** proxyTable can be a proxyTable.js path string or proxyTable object */
12 | proxyTable: proxyTableType;
13 |
14 | /** public host config (if you have a host name for your develop environment,such as "xxx-dev.xxx.com", you can set it here, which will be much easier for your to click the link and open the page on browser) */
15 | publicHost?: string;
16 | }
17 |
18 | export type proxyTableType = Record<"string", ProxyOptions> | string;
19 |
20 | function VitePluginProxyMiddleware(opts: userOptsType): Plugin {
21 | let config: ResolvedConfig;
22 | let viteProtocol: middleWareOptsType["viteProtocol"];
23 | let vitePort: middleWareOptsType["vitePort"];
24 | let proxyTableMap: Record<"string", ProxyOptions>;
25 |
26 | // defalut mock address: "/dev-mock"
27 | const { mockPath = "/dev-mock", proxyTable, publicHost } = opts;
28 |
29 | // proxyTable setting
30 | if (typeof proxyTable === "string") proxyTableMap = require(proxyTable);
31 | else if (typeof proxyTable === "object") proxyTableMap = proxyTable;
32 | else
33 | throw new Error(
34 | "proxyTable is missing, it can be a path or a proxy object"
35 | );
36 |
37 | return {
38 | name: "vite-plugin-proxy-middleware",
39 | configResolved(resolvedConfig) {
40 | config = resolvedConfig;
41 | viteProtocol = config.server.https ? "https" : "http";
42 | vitePort = config.server.port;
43 | },
44 | configureServer({ middlewares }) {
45 | setTimeout(() => {
46 | publicHost &&
47 | console.log(
48 | chalk.cyan.bold(
49 | " > Here is your public host:" +
50 | `${viteProtocol}://${publicHost}:${vitePort}/ `
51 | )
52 | );
53 | console.log(
54 | chalk.yellow.bold(
55 | ` > current serving environment:` + `${process.env.connect}\n\n`
56 | )
57 | );
58 | }, 1000);
59 |
60 | middlewares.use(
61 | generateMiddlewareProxyTable({
62 | viteProtocol,
63 | vitePort,
64 | mockPath,
65 | proxyTableMap,
66 | })
67 | );
68 | },
69 | };
70 | }
71 |
72 | export default VitePluginProxyMiddleware;
73 |
--------------------------------------------------------------------------------
/src/utils.ts:
--------------------------------------------------------------------------------
1 | import proxy from "http2-proxy";
2 | import { proxyTableType } from "./index";
3 |
4 | import { Connect } from "vite";
5 | import * as http from "http";
6 |
7 | export interface middleWareOptsType {
8 | viteProtocol: number | string;
9 | vitePort: number | string;
10 | mockPath: string;
11 | proxyTableMap: Exclude;
12 | }
13 |
14 | process.env["NODE_TLS_REJECT_UNAUTHORIZED"] = "0";
15 |
16 | export function generateMiddlewareProxyTable({
17 | viteProtocol,
18 | vitePort,
19 | mockPath,
20 | proxyTableMap,
21 | }: middleWareOptsType): Connect.HandleFunction {
22 | // let proxyTable;
23 | let proxyTableResolved = [];
24 |
25 | // try {
26 | // proxyTable = require(path.resolve(__dirname, "../../config/proxy-table"));
27 | // } catch (error) {
28 | // console.log("exports.generateMiddlewareProxyTable -> error", error);
29 | // }
30 |
31 | // 生成 proxyTableResolved (对应middlewares的格式进行遍历)
32 |
33 | for (const key in proxyTableMap) {
34 | const proxyPath = key;
35 | const { target, rewrite } = proxyTableMap[proxyPath];
36 |
37 | const viteProxyUrLTarget =
38 | target && target.split("//").pop().replace("/", "").split(":");
39 |
40 | const proxyOptions = {
41 | hostname: viteProxyUrLTarget[0],
42 | port: Number(viteProxyUrLTarget[1]) || 80,
43 | };
44 |
45 | proxyTableResolved.push({
46 | proxyOptions,
47 | rewrite,
48 | proxyPath,
49 | });
50 | }
51 |
52 | return (
53 | req: Connect.IncomingMessage,
54 | res: http.ServerResponse,
55 | next: Connect.NextFunction
56 | ) => {
57 | /**
58 | * 拦截请求
59 | * 1. mock接口请求 代理 --> 本地vite服务
60 | * 2. 前端vite文件服务请求 代理 --> 本地h2
61 | * 3. 其它数据接口请求 代理 --> 测试环境的http服务
62 | */
63 | for (let proxyOpts of proxyTableResolved) {
64 | const { rewrite, proxyOptions, proxyPath } = proxyOpts;
65 | const proxyOptsResolved = {
66 | ...proxyOptions,
67 | path: rewrite(req.originalUrl),
68 | };
69 |
70 | if (req.originalUrl.includes(proxyPath)) {
71 | if (req.originalUrl.includes(mockPath)) {
72 | return proxy.web(req, res, {
73 | ...proxyOptsResolved,
74 | protocol: viteProtocol,
75 | port: vitePort,
76 | });
77 | } else {
78 | return proxy.web(req, res, proxyOptsResolved);
79 | }
80 | }
81 | }
82 | next();
83 | };
84 | }
85 |
--------------------------------------------------------------------------------
/tsconfig.json:
--------------------------------------------------------------------------------
1 | {
2 | "compilerOptions": {
3 | /* Visit https://aka.ms/tsconfig.json to read more about this file */
4 |
5 | /* Projects */
6 | // "incremental": true, /* Enable incremental compilation */
7 | // "composite": true, /* Enable constraints that allow a TypeScript project to be used with project references. */
8 | // "tsBuildInfoFile": "./", /* Specify the folder for .tsbuildinfo incremental compilation files. */
9 | // "disableSourceOfProjectReferenceRedirect": true, /* Disable preferring source files instead of declaration files when referencing composite projects */
10 | // "disableSolutionSearching": true, /* Opt a project out of multi-project reference checking when editing. */
11 | // "disableReferencedProjectLoad": true, /* Reduce the number of projects loaded automatically by TypeScript. */
12 |
13 | /* Language and Environment */
14 | "target": "esnext" /* Set the JavaScript language version for emitted JavaScript and include compatible library declarations. */,
15 | // "lib": [], /* Specify a set of bundled library declaration files that describe the target runtime environment. */
16 | // "jsx": "preserve", /* Specify what JSX code is generated. */
17 | // "experimentalDecorators": true, /* Enable experimental support for TC39 stage 2 draft decorators. */
18 | // "emitDecoratorMetadata": true, /* Emit design-type metadata for decorated declarations in source files. */
19 | // "jsxFactory": "", /* Specify the JSX factory function used when targeting React JSX emit, e.g. 'React.createElement' or 'h' */
20 | // "jsxFragmentFactory": "", /* Specify the JSX Fragment reference used for fragments when targeting React JSX emit e.g. 'React.Fragment' or 'Fragment'. */
21 | // "jsxImportSource": "", /* Specify module specifier used to import the JSX factory functions when using `jsx: react-jsx*`.` */
22 | // "reactNamespace": "", /* Specify the object invoked for `createElement`. This only applies when targeting `react` JSX emit. */
23 | // "noLib": true, /* Disable including any library files, including the default lib.d.ts. */
24 | // "useDefineForClassFields": true, /* Emit ECMAScript-standard-compliant class fields. */
25 |
26 | /* Modules */
27 | "module": "CommonJS" /* Specify what module code is generated. */,
28 | // "rootDir": "./", /* Specify the root folder within your source files. */
29 | // "moduleResolution": "node", /* Specify how TypeScript looks up a file from a given module specifier. */
30 | // "baseUrl": "./", /* Specify the base directory to resolve non-relative module names. */
31 | // "paths": {}, /* Specify a set of entries that re-map imports to additional lookup locations. */
32 | // "rootDirs": [], /* Allow multiple folders to be treated as one when resolving modules. */
33 | // "typeRoots": [], /* Specify multiple folders that act like `./node_modules/@types`. */
34 | // "types": [], /* Specify type package names to be included without being referenced in a source file. */
35 | // "allowUmdGlobalAccess": true, /* Allow accessing UMD globals from modules. */
36 | // "resolveJsonModule": true, /* Enable importing .json files */
37 | // "noResolve": true, /* Disallow `import`s, `require`s or ``s from expanding the number of files TypeScript should add to a project. */
38 |
39 | /* JavaScript Support */
40 | // "allowJs": true, /* Allow JavaScript files to be a part of your program. Use the `checkJS` option to get errors from these files. */
41 | // "checkJs": true, /* Enable error reporting in type-checked JavaScript files. */
42 | // "maxNodeModuleJsDepth": 1, /* Specify the maximum folder depth used for checking JavaScript files from `node_modules`. Only applicable with `allowJs`. */
43 |
44 | /* Emit */
45 | "declaration": true /* Generate .d.ts files from TypeScript and JavaScript files in your project. */,
46 | // "declarationMap": true, /* Create sourcemaps for d.ts files. */
47 | // "emitDeclarationOnly": true, /* Only output d.ts files and not JavaScript files. */
48 | // "sourceMap": true, /* Create source map files for emitted JavaScript files. */
49 | // "outFile": "./", /* Specify a file that bundles all outputs into one JavaScript file. If `declaration` is true, also designates a file that bundles all .d.ts output. */
50 | // "outDir": "./" /* Specify an output folder for all emitted files. */,
51 | // "removeComments": true, /* Disable emitting comments. */
52 | // "noEmit": true, /* Disable emitting files from a compilation. */
53 | // "importHelpers": true, /* Allow importing helper functions from tslib once per project, instead of including them per-file. */
54 | // "importsNotUsedAsValues": "remove", /* Specify emit/checking behavior for imports that are only used for types */
55 | // "downlevelIteration": true, /* Emit more compliant, but verbose and less performant JavaScript for iteration. */
56 | // "sourceRoot": "", /* Specify the root path for debuggers to find the reference source code. */
57 | // "mapRoot": "", /* Specify the location where debugger should locate map files instead of generated locations. */
58 | // "inlineSourceMap": true, /* Include sourcemap files inside the emitted JavaScript. */
59 | // "inlineSources": true, /* Include source code in the sourcemaps inside the emitted JavaScript. */
60 | // "emitBOM": true, /* Emit a UTF-8 Byte Order Mark (BOM) in the beginning of output files. */
61 | // "newLine": "crlf", /* Set the newline character for emitting files. */
62 | // "stripInternal": true, /* Disable emitting declarations that have `@internal` in their JSDoc comments. */
63 | // "noEmitHelpers": true, /* Disable generating custom helper functions like `__extends` in compiled output. */
64 | // "noEmitOnError": true, /* Disable emitting files if any type checking errors are reported. */
65 | // "preserveConstEnums": true, /* Disable erasing `const enum` declarations in generated code. */
66 | // "declarationDir": "./" /* Specify the output directory for generated declaration files. */,
67 |
68 | /* Interop Constraints */
69 | // "isolatedModules": true, /* Ensure that each file can be safely transpiled without relying on other imports. */
70 | // "allowSyntheticDefaultImports": true, /* Allow 'import x from y' when a module doesn't have a default export. */
71 | "esModuleInterop": true /* Emit additional JavaScript to ease support for importing CommonJS modules. This enables `allowSyntheticDefaultImports` for type compatibility. */,
72 | // "preserveSymlinks": true, /* Disable resolving symlinks to their realpath. This correlates to the same flag in node. */
73 | "forceConsistentCasingInFileNames": true /* Ensure that casing is correct in imports. */,
74 |
75 | /* Type Checking */
76 | "strict": false /* Enable all strict type-checking options. */,
77 | // "noImplicitAny": true, /* Enable error reporting for expressions and declarations with an implied `any` type.. */
78 | // "strictNullChecks": true, /* When type checking, take into account `null` and `undefined`. */
79 | // "strictFunctionTypes": true, /* When assigning functions, check to ensure parameters and the return values are subtype-compatible. */
80 | // "strictBindCallApply": true, /* Check that the arguments for `bind`, `call`, and `apply` methods match the original function. */
81 | // "strictPropertyInitialization": true, /* Check for class properties that are declared but not set in the constructor. */
82 | // "noImplicitThis": true, /* Enable error reporting when `this` is given the type `any`. */
83 | // "useUnknownInCatchVariables": true, /* Type catch clause variables as 'unknown' instead of 'any'. */
84 | // "alwaysStrict": true, /* Ensure 'use strict' is always emitted. */
85 | // "noUnusedLocals": true, /* Enable error reporting when a local variables aren't read. */
86 | // "noUnusedParameters": true, /* Raise an error when a function parameter isn't read */
87 | // "exactOptionalPropertyTypes": true, /* Interpret optional property types as written, rather than adding 'undefined'. */
88 | // "noImplicitReturns": true, /* Enable error reporting for codepaths that do not explicitly return in a function. */
89 | // "noFallthroughCasesInSwitch": true, /* Enable error reporting for fallthrough cases in switch statements. */
90 | // "noUncheckedIndexedAccess": true, /* Include 'undefined' in index signature results */
91 | // "noImplicitOverride": true, /* Ensure overriding members in derived classes are marked with an override modifier. */
92 | // "noPropertyAccessFromIndexSignature": true, /* Enforces using indexed accessors for keys declared using an indexed type */
93 | // "allowUnusedLabels": true, /* Disable error reporting for unused labels. */
94 | // "allowUnreachableCode": true, /* Disable error reporting for unreachable code. */
95 |
96 | /* Completeness */
97 | // "skipDefaultLibCheck": true, /* Skip type checking .d.ts files that are included with TypeScript. */
98 | "skipLibCheck": false /* Skip type checking all .d.ts files. */
99 | },
100 | "include": ["./src/**/*.ts"],
101 | "exclude": ["./example/**/*"]
102 | }
103 |
--------------------------------------------------------------------------------