├── .editorconfig ├── .eslintrc.json ├── .gitignore ├── LICENSE ├── README.md ├── media ├── asian-skater-boys.mp4 └── big-buck.mp4 ├── package.json ├── prettier.config.js ├── public ├── index.html └── style.css ├── screenshots ├── codecs.png └── demo.gif ├── src ├── server.js └── utils │ └── crypt.js ├── subtitles ├── asian-skater-boys.en.vtt ├── asian-skater-boys.es.vtt └── asian-skater-boys.fr.vtt └── yarn.lock /.editorconfig: -------------------------------------------------------------------------------- 1 | # EditorConfig is awesome: https://EditorConfig.org 2 | 3 | # top-most EditorConfig file 4 | root = true 5 | 6 | [*] 7 | end_of_line = lf 8 | indent_style = space 9 | indent_size = 2 10 | end_of_line = crlf 11 | charset = utf-8 12 | trim_trailing_whitespace = true 13 | insert_final_newline = true 14 | -------------------------------------------------------------------------------- /.eslintrc.json: -------------------------------------------------------------------------------- 1 | { 2 | "env": { 3 | "es2021": true, 4 | "node": true 5 | }, 6 | "extends": [ 7 | "airbnb-base" 8 | ], 9 | "parser": "babel-eslint", 10 | "parserOptions": { 11 | "ecmaVersion": 12, 12 | "sourceType": "module" 13 | }, 14 | "rules": { 15 | "linebreak-style": ["error", "windows"], 16 | "import/prefer-default-export": "off", 17 | "import/extensions": ["error", { 18 | "js": "always" 19 | }] 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2025 Diego Victor 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 | # Code Streamer 2 | [![nodemon](https://img.shields.io/badge/nodemon-2.0.7-76d04b?style=flat-square&logo=nodemon)](https://nodemon.io/) 3 | [![eslint](https://img.shields.io/badge/eslint-7.28.0-4b32c3?style=flat-square&logo=eslint)](https://eslint.org/) 4 | [![airbnb-style](https://flat.badgen.net/badge/style-guide/airbnb/ff5a5f?icon=airbnb)](https://github.com/airbnb/javascript) 5 | [![MIT License](https://img.shields.io/badge/license-MIT-green?style=flat-square)](https://raw.githubusercontent.com/DiegoVictor/code-streamer/main/LICENSE) 6 | 7 | Study Case to learn about streaming video in Node.js 8 | 9 | Live Demo: https://code-streamer.onrender.com 10 | 11 | ## Table of Contents 12 | * [Requirements](#requirements) 13 | * [Installing](#installing) 14 | * [Usage](#usage) 15 | * [Choosing another videos](#choosing-another-videos) 16 | * [CODEC String](#codec-string) 17 | 18 | # Requirements 19 | * [Node.js](https://nodejs.org) ^15.14.0 20 | * npm or [yarn](https://yarnpkg.com) 21 | 22 | # Installing 23 | After clone the repo, just install dependencies: 24 | ```shell 25 | npm install 26 | ``` 27 | Or: 28 | ```shell 29 | yarn 30 | ``` 31 | 32 | # Usage 33 | First of all start up the server: 34 | ```shell 35 | npm run dev:server 36 | ``` 37 | Or: 38 | ```shell 39 | yarn dev:server 40 | ``` 41 | 42 | Then access through the browser the `http://localhost:3000` page (if you are using the default configuration), if everything is OK you should see the player loading and playing the video: 43 | 44 | ![Demo](https://media.githubusercontent.com/media/DiegoVictor/code-streamer/main/screenshots/demo.gif) 45 | 46 | ## Choosing another videos 47 | If you would like to choose another videos make sure to fragment them or the [Media Source Extensions](https://developer.mozilla.org/en-US/docs/Web/API/Media_Source_Extensions_API) may not deal it properly. 48 | 49 | * [Checking Fragmentation](https://developer.mozilla.org/en-US/docs/Web/API/Media_Source_Extensions_API/Transcoding_assets_for_MSE#checking_fragmentation) 50 | * [Fragmenting](https://developer.mozilla.org/en-US/docs/Web/API/Media_Source_Extensions_API/Transcoding_assets_for_MSE#fragmenting) 51 | 52 | Alternatively you can use [mp4fragment](http://www.bento4.com/documentation/mp4fragment/) from [Bento4](https://github.com/axiomatic-systems/Bento4) toolkit: 53 | ``` 54 | $ mp4fragment input.mp4 output.mp4 55 | ``` 56 | 57 | ### CODEC String 58 | To [add a Source Buffer to Media Source](https://developer.mozilla.org/en-US/docs/Web/API/MediaSource/addSourceBuffer) is necessary to set video's mimetype and codecs: 59 | ``` 60 | mediaSource.addSourceBuffer( 61 | 'video/mp4; codecs="avc1.640028, mp4a.40.2"' 62 | ); 63 | ``` 64 | To retrieve this information you can also use the [Checking Fragmentation](https://developer.mozilla.org/en-US/docs/Web/API/Media_Source_Extensions_API/Transcoding_assets_for_MSE#checking_fragmentation) page: 65 | 66 | ![codecs](https://raw.githubusercontent.com/DiegoVictor/code-streamer/main/screenshots/codecs.png) 67 | 68 | Or use [mp4info](http://www.bento4.com/documentation/mp4info/) from [Bento4](https://github.com/axiomatic-systems/Bento4) toolkit: 69 | ```shell 70 | $ mp4info big-buck.mp4 | grep Codec 71 | Codec String: mp4a.40.2 72 | Codec String: avc1.42E01E 73 | ``` 74 | -------------------------------------------------------------------------------- /media/asian-skater-boys.mp4: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DiegoVictor/code-streamer/7063e6a67a1d110022db6dde28f08ce1ad8be42d/media/asian-skater-boys.mp4 -------------------------------------------------------------------------------- /media/big-buck.mp4: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DiegoVictor/code-streamer/7063e6a67a1d110022db6dde28f08ce1ad8be42d/media/big-buck.mp4 -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- 1 | { 2 | "type": "module", 3 | "license": "MIT", 4 | "private": true, 5 | "scripts": { 6 | "dev:server": "nodemon ./src/server.js", 7 | "start": "node ./src/server.js" 8 | }, 9 | "dependencies": { 10 | "cors": "^2.8.5", 11 | "crypto-js": "^4.0.0", 12 | "express": "^4.17.1" 13 | }, 14 | "devDependencies": { 15 | "babel-eslint": "^10.1.0", 16 | "eslint": "^7.28.0", 17 | "eslint-config-airbnb-base": "^14.2.1", 18 | "eslint-config-prettier": "^8.3.0", 19 | "eslint-plugin-import": "^2.23.4", 20 | "eslint-plugin-prettier": "^3.4.0", 21 | "nodemon": "^2.0.7", 22 | "prettier": "^2.3.1" 23 | } 24 | } 25 | -------------------------------------------------------------------------------- /prettier.config.js: -------------------------------------------------------------------------------- 1 | export const singleQuote = true; 2 | export const trailingComma = 'es5'; 3 | export const endOfLine = 'lf'; 4 | -------------------------------------------------------------------------------- /public/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | Code Streamer 8 | 9 | 10 | 11 | 12 | 13 |
14 |
15 | 22 |
23 |
24 | 25 |
26 |
27 |
28 |
29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 |
40 |
41 | 46 | 51 |
52 |
53 |
54 |
55 |
56 |
57 |
58 |
59 |
60 |
61 | 64 |
65 |
66 |
67 |
68 |
69 | 70 | 71 | 72 |
73 | 95 |
96 |
97 | 98 | 99 | 100 | 101 | 102 | 103 | 104 | 105 | 106 | 107 |
108 |
109 |
110 |
111 |
112 |
113 | 114 | 115 | 116 | 117 | 417 | 418 | 419 | -------------------------------------------------------------------------------- /public/style.css: -------------------------------------------------------------------------------- 1 | body { 2 | margin: 0px; 3 | } 4 | 5 | #app { 6 | display: flex; 7 | justify-content: center; 8 | margin-top: 100px; 9 | padding: 8px; 10 | } 11 | 12 | .video-container { 13 | display: inline-block; 14 | font-size: 0px; 15 | position: relative; 16 | } 17 | 18 | .video-container , 19 | .buttons .video-volume-progress, 20 | .buttons .submenu .menu-item, 21 | .menu { 22 | overflow: hidden; 23 | } 24 | 25 | .video-container, .video-container video { 26 | border-radius: 8px; 27 | } 28 | 29 | .video-container video { 30 | background-color: black; 31 | height: 100%; 32 | min-width: 640px; 33 | max-width: 720px; 34 | width: 100%; 35 | } 36 | .video-container video::cue { 37 | background-color: rgba(0, 0, 0, 0.4); 38 | line-height: 20px; 39 | } 40 | 41 | .video-container.fullscreen video { 42 | border-radius: 0px; 43 | max-width: 100%; 44 | } 45 | 46 | .video-controls { 47 | background-image: linear-gradient(to top, rgba(0, 0, 0, 0.6), transparent); 48 | border-radius: 0px 0px 8px 8px; 49 | bottom: 0px; 50 | color: white; 51 | height: 45px; 52 | padding: 0px 15px; 53 | position: absolute; 54 | transition: .25s; 55 | width: calc(100% - 30px); 56 | z-index: 1; 57 | } 58 | 59 | .video-container.playing .video-controls, 60 | .submenu .menu-item, 61 | .menu { 62 | height: 0px; 63 | } 64 | 65 | .video-container.playing:hover .video-controls { 66 | height: 45px; 67 | } 68 | 69 | .video-progress-timeline, 70 | progress, 71 | .buttons .submenu, 72 | .menu-item-title, 73 | .submenu .menu-item { 74 | width: 100%; 75 | } 76 | 77 | .video-progress-timeline { 78 | height: 14px; 79 | } 80 | 81 | progress, 82 | .buttons .video-volume-bar { 83 | background: rgba(255, 255, 255, 0.4); 84 | } 85 | 86 | progress { 87 | border: 0px; 88 | border-radius: 0px; 89 | height: 3.5px; 90 | } 91 | 92 | progress::-moz-progress-bar, 93 | progress::-webkit-progress-value { 94 | background: red; 95 | } 96 | 97 | .buttons { 98 | height: 24px; 99 | } 100 | 101 | .buttons, .buttons .left, 102 | .buttons .right, 103 | .buttons .video-volume, 104 | .buttons .video-time, 105 | .buttons .video-volume-slider, 106 | .video-progress-timeline { 107 | align-items: center; 108 | display: flex; 109 | } 110 | 111 | .buttons, .buttons .left { 112 | justify-content: space-between; 113 | } 114 | 115 | .buttons .left { 116 | justify-content: flex-start; 117 | } 118 | 119 | .buttons .right { 120 | justify-content: flex-end; 121 | } 122 | 123 | .buttons .video-volume, 124 | .video-progress-timeline, 125 | .buttons span, 126 | .buttons .video-settings { 127 | cursor: pointer; 128 | } 129 | 130 | .buttons .video-volume { 131 | padding-left: 7px; 132 | } 133 | 134 | .buttons .video-volume > :first-child { 135 | margin-right: 10px; 136 | } 137 | 138 | .buttons .video-volume-progress { 139 | padding: 0px; 140 | } 141 | 142 | .buttons .video-volume-slider { 143 | height: 10px; 144 | position: relative; 145 | transition: all 0.25s; 146 | width: 0px; 147 | } 148 | 149 | .buttons .video-volume-bar { 150 | height: 2px; 151 | width: 100% 152 | } 153 | 154 | .buttons .video-volume-bar-current { 155 | background-color: white; 156 | height: 100%; 157 | } 158 | 159 | .buttons .video-volume-handler { 160 | background-color: white; 161 | border-radius: 50%; 162 | height: 10px; 163 | left: 47px; 164 | position: absolute; 165 | top: 0px; 166 | width: 10px; 167 | } 168 | 169 | .buttons .video-volume:hover > :first-child { 170 | margin: 0px; 171 | } 172 | 173 | .buttons .video-volume:hover .video-volume-progress { 174 | padding-left: 10px; 175 | } 176 | 177 | .buttons .video-volume:hover .video-volume-slider { 178 | margin-right: 15px; 179 | width: 52px; 180 | } 181 | 182 | .buttons .video-time { 183 | font-family: Roboto, sans-serif; 184 | font-size: 14px; 185 | height: 17px; 186 | margin-left: 2px; 187 | } 188 | 189 | .buttons .video-settings { 190 | padding-right: 7px; 191 | } 192 | 193 | .buttons .video-settings-menu { 194 | background-color: rgba(0, 0, 0, 0.5); 195 | bottom: 45px; 196 | position: absolute; 197 | right: 15px; 198 | } 199 | 200 | .menu, .submenu { 201 | font-family: Roboto, sans-serif; 202 | font-size: 15px; 203 | } 204 | 205 | .menu-item { 206 | transition: height 0.25s; 207 | } 208 | 209 | .menu-item-title { 210 | align-items: center; 211 | box-sizing: border-box; 212 | display: flex; 213 | height: 50px; 214 | padding: 10px 15px; 215 | } 216 | 217 | .menu .menu-item:not(.selected):hover { 218 | background-color: rgba(0, 0, 0, 0.6); 219 | } 220 | 221 | .submenu .menu-item { 222 | padding: 0px; 223 | } 224 | 225 | 226 | .menu-item:hover > .submenu .menu-item, 227 | .menu-item > .submenu .menu-item:hover { 228 | height: 50px; 229 | } 230 | 231 | .menu-item.selected { 232 | background-color: rgba(255, 0, 0, 0.8); 233 | } 234 | 235 | .menu.open { 236 | height: auto; 237 | } 238 | -------------------------------------------------------------------------------- /screenshots/codecs.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DiegoVictor/code-streamer/7063e6a67a1d110022db6dde28f08ce1ad8be42d/screenshots/codecs.png -------------------------------------------------------------------------------- /screenshots/demo.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DiegoVictor/code-streamer/7063e6a67a1d110022db6dde28f08ce1ad8be42d/screenshots/demo.gif -------------------------------------------------------------------------------- /src/server.js: -------------------------------------------------------------------------------- 1 | import express from 'express'; 2 | import fs from 'fs'; 3 | import cors from 'cors'; 4 | import { Transform, promises } from 'stream'; 5 | import zlib from 'zlib'; 6 | 7 | import { encrypt } from './utils/crypt.js'; 8 | 9 | const app = express(); 10 | 11 | app.use(cors()); 12 | app.use(express.static('public')); 13 | app.use(express.json()); 14 | 15 | app.get('/subtitles/:slug', async (request, response) => { 16 | const { slug } = request.params; 17 | const filePath = `./subtitles/${slug}`; 18 | 19 | const stat = await fs.promises.stat(filePath).then((file) => file).catch(() => null); 20 | if (!stat) { 21 | return response.status(404).json({ 22 | message: `The file ${slug} was not found`, 23 | }); 24 | } 25 | 26 | return fs.createReadStream(filePath).pipe(response); 27 | }); 28 | 29 | app.get('/videos/:slug', async (request, response) => { 30 | const { slug } = request.params; 31 | const { range } = request.headers; 32 | 33 | if (!range) { 34 | return response.status(400).json({ 35 | message: 'Range header is required', 36 | }); 37 | } 38 | 39 | const filePath = `./media/${slug}`; 40 | const stat = await fs.promises.stat(filePath).then((file) => file).catch(() => null); 41 | 42 | if (!stat) { 43 | return response.status(404).json({ 44 | message: `The file ${slug} was not found`, 45 | }); 46 | } 47 | const { size: fileSize } = stat; 48 | 49 | const chunkSize = 1024 * 48; 50 | const start = Number(range.replace(/\D/gi, '')); 51 | const end = Math.min(start + chunkSize, fileSize - 1); 52 | 53 | const stream = fs.createReadStream(filePath, { start, end }); 54 | 55 | return stream 56 | .on('open', () => { 57 | const transform = new Transform({ 58 | transform(chunk, _, callback) { 59 | const cipherText = encrypt(chunk, '6n2347856n234785nc623487c56n2347'); 60 | 61 | callback(null, cipherText); 62 | }, 63 | }); 64 | 65 | const steps = [stream, transform]; 66 | const headers = { 67 | 'Content-Range': `bytes ${start}-${end}/${fileSize}`, 68 | 'Accept-Ranges': 'bytes', 69 | 'Content-Type': 'application/octet-stream', 70 | }; 71 | 72 | const { 'accept-encoding': acceptEncoding } = request.headers; 73 | if (acceptEncoding && acceptEncoding.includes('gzip')) { 74 | steps.push(zlib.createGzip()); 75 | headers['Content-Encoding'] = 'gzip'; 76 | } 77 | 78 | response.writeHead(206, headers); 79 | steps.push(response); 80 | 81 | promises.pipeline(steps); 82 | }) 83 | .on('error', () => { 84 | response.status(500).json({ 85 | message: 'Internal Server Error', 86 | }); 87 | }); 88 | }); 89 | 90 | app.listen(process.env.PORT, () => { 91 | process.stdout.write(`\nRunning at: http://localhost:${process.env.PORT}\n`); 92 | }); 93 | -------------------------------------------------------------------------------- /src/utils/crypt.js: -------------------------------------------------------------------------------- 1 | import crypto from 'crypto-js'; 2 | 3 | export const encrypt = (buffer, secret) => { 4 | const hex = buffer.toString('hex'); 5 | const cipherText = crypto.AES.encrypt( 6 | hex, 7 | secret, 8 | ).toString(); 9 | 10 | return cipherText; 11 | }; 12 | 13 | export const decrypt = (cipherText, secret) => Buffer.from( 14 | crypto.AES.decrypt(cipherText, secret).toString(crypto.enc.Utf8), 15 | 'hex', 16 | ); 17 | -------------------------------------------------------------------------------- /subtitles/asian-skater-boys.en.vtt: -------------------------------------------------------------------------------- 1 | WEBVTT 2 | 3 | 1 4 | 00:00:00.360 --> 00:00:02.360 line:14 5 | For us, there is a lack 6 | of representation 7 | 8 | 2 9 | 00:00:02.560 --> 00:00:05.400 line:14 10 | of Asians in all areas, 11 | especially skateboarding. 12 | 13 | 3 14 | 00:00:08.684 --> 00:00:10.685 line:14 15 | 'We created a 16 | collective to make 17 | 18 | 4 19 | 00:00:10.686 --> 00:00:13.245 line:14 20 | Asian skaters more visible' 21 | 22 | 5 23 | 00:00:14.720 --> 00:00:17.160 line:14 24 | My name is Thomas Pham, 25 | I'm 24 years old, 26 | 27 | 6 28 | 00:00:17.360 --> 00:00:19.400 line:14 29 | and I'm part of the 30 | Bassac collective. 31 | 32 | 7 33 | 00:00:19.600 --> 00:00:21.096 line:14 34 | My name is Thien Thanh, 35 | I'm 23 years old 36 | 37 | 8 38 | 00:00:21.097 --> 00:00:21.679 line:14 39 | and I've been part 40 | 41 | 9 42 | 00:00:21.680 --> 00:00:25.200 line:14 43 | of the Bassac collective 44 | since the beginning. 45 | 46 | 10 47 | 00:00:25.400 --> 00:00:26.319 line:14 48 | Bassac is a skateboarding 49 | collective 50 | 51 | 11 52 | 00:00:26.320 --> 00:00:28.200 line:14 53 | that aims to promote 54 | 55 | 12 56 | 00:00:28.400 --> 00:00:30.640 line:14 57 | the 13th district and 58 | the Asian community. 59 | 60 | 13 61 | 00:00:30.840 --> 00:00:33.920 line:14 62 | We have an Instagram 63 | account where we publish 64 | 65 | 14 66 | 00:00:34.120 --> 00:00:36.880 line:14 67 | photos, videos, 68 | skateboarding edits. 69 | 70 | 15 71 | 00:00:37.080 --> 00:00:38.879 line:14 72 | We are trying to put 73 | 74 | 16 75 | 00:00:38.880 --> 00:00:42.620 line:14 76 | some references to 77 | our identity and culture. 78 | 79 | 17 80 | 00:00:42.621 --> 00:00:44.080 line:14 81 | We do this through music 82 | 83 | 18 84 | 00:00:44.280 --> 00:00:46.280 line:14 85 | and images of our 86 | neighbourhood. 87 | 88 | 19 89 | 00:00:46.480 --> 00:00:49.600 line:14 90 | I started skating 91 | eight years ago. 92 | 93 | 20 94 | 00:00:49.800 --> 00:00:51.280 line:14 95 | At first, I did it 96 | on my own. 97 | 98 | 21 99 | 00:00:51.480 --> 00:00:54.880 line:14 100 | Then, I made some friends 101 | who are now part of Bassac. 102 | 103 | 22 104 | 00:00:55.080 --> 00:00:56.520 line:14 105 | I feel like it's a family. 106 | 107 | 23 108 | 00:00:56.720 --> 00:00:58.480 line:14 109 | Honestly, it has become 110 | like a little ritual, 111 | 112 | 24 113 | 00:00:58.680 --> 00:01:00.480 line:14 114 | on weekends, 115 | we get together, 116 | 117 | 25 118 | 00:01:00.680 --> 00:01:03.240 line:14 119 | we talk, skate 120 | and laugh together. 121 | 122 | 26 123 | 00:01:03.440 --> 00:01:05.360 line:14 124 | Here we are on the slab 125 | 126 | 27 127 | 00:01:05.560 --> 00:01:09.280 line:14 128 | "Olympiad", it is like the 129 | heart of the 13th district. 130 | 131 | 28 132 | 00:01:09.480 --> 00:01:11.960 line:14 133 | I'd say it's the Chinatown 134 | of Paris. 135 | 136 | 29 137 | 00:01:12.160 --> 00:01:13.760 line:14 138 | It's a neighbourhood with 139 | 140 | 30 141 | 00:01:13.960 --> 00:01:16.080 line:14 142 | a lot of Southeast Asian 143 | people, mostly. 144 | 145 | 31 146 | 00:01:16.280 --> 00:01:16.840 line:14 147 | There are lots 148 | 149 | 32 150 | 00:01:16.850 --> 00:01:18.000 line:14 151 | of restaurants and 152 | plenty of shops. 153 | 154 | 33 155 | 00:01:18.200 --> 00:01:20.280 line:14 156 | The name Bassac 157 | comes from a junction 158 | 159 | 34 160 | 00:01:20.480 --> 00:01:22.840 line:14 161 | of the Mekong river, we 162 | thought it sounded good 163 | 164 | 35 165 | 00:01:22.840 --> 00:01:24.920 line:14 166 | and that it represented 167 | our identities well. 168 | 169 | 36 170 | 00:01:25.120 --> 00:01:25.840 line:14 171 | In the collective, 172 | 173 | 37 174 | 00:01:25.841 --> 00:01:28.440 line:14 175 | we have people who have 176 | Vietnamese, 177 | 178 | 38 179 | 00:01:28.640 --> 00:01:30.801 line:14 180 | Cambodian and Chaochow 181 | origins. 182 | 183 | 39 184 | 00:01:31.001 --> 00:01:32.440 line:14 185 | These are minorities 186 | that are not 187 | 188 | 40 189 | 00:01:32.640 --> 00:01:34.283 line:14 190 | necessarily represented 191 | 192 | 41 193 | 00:01:34.483 --> 00:01:36.640 line:14 194 | in the "mainstream" 195 | Asian culture, 196 | 197 | 42 198 | 00:01:37.480 --> 00:01:41.296 line:14 199 | where we usually just see 200 | Koreans, Japanese, etc. 201 | 202 | 43 203 | 00:01:41.496 --> 00:01:42.520 line:14 204 | In the community, 205 | 206 | 44 207 | 00:01:42.560 --> 00:01:44.600 line:14 208 | skating is a discipline 209 | with a bad reputation. 210 | 211 | 45 212 | 00:01:44.800 --> 00:01:48.200 line:14 213 | Bassac is simply the desire 214 | to make skating more 215 | 216 | 46 217 | 00:01:48.400 --> 00:01:51.880 line:14 218 | accessible for Asians, 219 | for our community. 220 | 221 | 47 222 | 00:01:52.080 --> 00:01:53.040 line:14 223 | I think it's a shame 224 | that people hesitate 225 | 226 | 48 227 | 00:01:53.200 --> 00:01:54.560 line:14 228 | to get involved because of 229 | 230 | 49 231 | 00:01:54.760 --> 00:01:57.280 line:14 232 | where they're from when 233 | in fact, skating 234 | 235 | 50 236 | 00:01:57.480 --> 00:01:58.999 line:14 237 | is a very friendly sport 238 | 239 | 51 240 | 00:01:59.199 --> 00:02:00.960 line:14 241 | that does not 242 | take into account 243 | 244 | 52 245 | 00:02:01.160 --> 00:02:02.760 line:14 246 | our person or 247 | our ethnic background. 248 | 249 | 53 250 | 00:02:02.960 --> 00:02:05.200 line:14 251 | The goal is really 252 | to encourage people 253 | 254 | 54 255 | 00:02:05.240 --> 00:02:06.680 line:14 256 | who otherwise wouldn't 257 | dare to take the plunge. 258 | 259 | -------------------------------------------------------------------------------- /subtitles/asian-skater-boys.es.vtt: -------------------------------------------------------------------------------- 1 | WEBVTT 2 | 3 | 00:00:00.360 --> 00:00:03.640 line:14 4 | Hay una falta de 5 | de representación de los asiáticos 6 | 7 | 00:00:03.729 --> 00:00:06.300 line:14 8 | en todas las áreas, especialmente el skateboard. 9 | 10 | 00:00:08.457 --> 00:00:10.543 line:14 11 | 'Creamos un colectivo para hacer 12 | a las personas asiáticas 13 | 14 | 00:00:10.544 --> 00:00:12.143 line:14 15 | más visibles en el skate board' 16 | 17 | 00:00:12.144 --> 00:00:13.800 line:14 18 | Thomas Pham, 24 años 19 | Thien Thanh La, 23 años 20 | 21 | 00:00:13.840 --> 00:00:16.600 line:14 22 | Me llamo Thomas Pham, tengo 24 años, 23 | 24 | 00:00:16.800 --> 00:00:19.200 line:14 25 | y formo parte del colectivo 26 | Bassac. 27 | 28 | 00:00:19.201 --> 00:00:20.540 line:14 29 | Me llamo Thien, tengo 23 años 30 | 31 | 00:00:20.657 --> 00:00:23.329 line:14 32 | y formo parte del colectivo Bassac 33 | 34 | 00:00:23.600 --> 00:00:25.200 line:14 35 | desde su creación. 36 | 37 | 00:00:25.400 --> 00:00:28.200 line:14 38 | Bassac es un colectivo de patinadores 39 | que quiere promover 40 | 41 | 00:00:28.400 --> 00:00:30.640 line:14 42 | el distrito 13 º y la comunidad asiática. 43 | 44 | 00:00:30.840 --> 00:00:33.920 line:14 45 | Tenemos una cuenta de Instagram 46 | con la que publicamos 47 | 48 | 00:00:34.120 --> 00:00:36.880 line:14 49 | fotos, videos de skateboarding. 50 | 51 | 00:00:37.080 --> 00:00:38.520 line:14 52 | Estamos intentando proporcionar 53 | 54 | 00:00:38.720 --> 00:00:40.720 line:14 55 | referentes a nuestra identidad y cultura. 56 | 57 | 00:00:42.400 --> 00:00:43.520 line:14 58 | Esto se hace a través de 59 | 60 | 00:00:43.720 --> 00:00:46.280 line:14 61 | música e imágenes de los barrios. 62 | 63 | 00:00:46.480 --> 00:00:49.280 line:14 64 | Empecé de a patinar 65 | hace ocho años. 66 | 67 | 00:00:49.480 --> 00:00:51.200 line:14 68 | Al principio, estaba solo. 69 | 70 | 00:00:51.400 --> 00:00:53.480 line:14 71 | Luego conocí a amigos que son 72 | 73 | 00:00:53.680 --> 00:00:54.840 line:14 74 | ahora parte de Bassac. 75 | 76 | 00:00:55.040 --> 00:00:56.520 line:14 77 | Siento que es como una 78 | familia, en realidad. 79 | 80 | 00:00:56.720 --> 00:00:57.000 line:14 81 | Sinceramente, 82 | 83 | 00:00:57.000 --> 00:00:58.560 line:14 84 | se ha convertido en un 85 | pequeño ritual. 86 | 87 | 00:00:58.680 --> 00:01:00.480 line:14 88 | Los fines de semana 89 | nos juntamos, 90 | 91 | 00:01:00.680 --> 00:01:03.240 line:14 92 | hablamos y luego patinamos, 93 | nos reímos juntos. 94 | 95 | 00:01:03.440 --> 00:01:05.360 line:14 96 | Aquí, estamos en 97 | La dalle des Olympiades 98 | 99 | 00:01:05.560 --> 00:01:08.814 line:14 100 | que es el corazón 101 | del distrito 13º. 102 | 103 | 00:01:09.014 --> 00:01:10.920 line:14 104 | Diría que es el Barrio Chino de París. 105 | 106 | 00:01:11.120 --> 00:01:12.880 line:14 107 | Es un barrio 108 | 109 | 00:01:13.080 --> 00:01:15.760 line:14 110 | donde tenemos un montón de 111 | asiáticos del sudeste principalmente. 112 | 113 | 00:01:15.880 --> 00:01:18.000 line:14 114 | Hay muchos restaurantes. 115 | y tiendas. 116 | 117 | 00:01:18.200 --> 00:01:21.000 line:14 118 | El nombre Bassac, 119 | es el nombre de un cruce del río Mekong 120 | 121 | 00:01:21.200 --> 00:01:23.360 line:14 122 | y pensamos que sonaba sonaba bien y 123 | 124 | 00:01:23.360 --> 00:01:24.920 line:14 125 | que representa nuestras identidades. 126 | 127 | 00:01:25.120 --> 00:01:26.520 line:14 128 | En el colectivo, tenemos gente 129 | 130 | 00:01:26.720 --> 00:01:29.360 line:14 131 | de origen vietnamita, camboyano 132 | 133 | 00:01:29.560 --> 00:01:33.520 line:14 134 | y las minorías asiáticas 135 | que no son necesariamente 136 | 137 | 00:01:33.720 --> 00:01:35.720 line:14 138 | representado en la cultura asiática mainstream, 139 | 140 | 00:01:35.920 --> 00:01:38.400 line:14 141 | entre comillas. 142 | Lo que solemos ver, 143 | 144 | 00:01:38.600 --> 00:01:41.640 line:14 145 | son los asiáticos 146 | coreanos, japoneses, etc. 147 | 148 | 00:01:41.840 --> 00:01:43.040 line:14 149 | En la comunidad, el skate es 150 | 151 | 00:01:43.080 --> 00:01:44.600 line:14 152 | una disciplina que es no se percibe bien. 153 | 154 | 00:01:44.800 --> 00:01:46.560 line:14 155 | Bassac es simplemente el deseo 156 | 157 | 00:01:46.760 --> 00:01:49.120 line:14 158 | de hacer el skate 159 | más accesible 160 | 161 | 00:01:49.320 --> 00:01:51.880 line:14 162 | para los asiáticos, 163 | para nuestra comunidad. 164 | 165 | 00:01:52.080 --> 00:01:54.000 line:14 166 | Es una pena que la gente 167 | dude en involucrarse 168 | 169 | 00:01:54.000 --> 00:01:56.120 line:14 170 | debido a sus orígenes 171 | 172 | 00:01:56.220 --> 00:01:58.120 line:14 173 | cuando de hecho, el skate es un deporte 174 | 175 | 00:01:58.320 --> 00:02:00.960 line:14 176 | muy amigable que no tiene en cuenta 177 | 178 | 00:02:01.160 --> 00:02:02.760 line:14 179 | nuestra persona ni orígenes. 180 | 181 | 00:02:02.960 --> 00:02:05.200 line:14 182 | El objetivo es realmente 183 | animar a la gente 184 | 185 | 00:02:05.240 --> 00:02:06.680 line:14 186 | que no se atrevería a para dar el paso. 187 | -------------------------------------------------------------------------------- /subtitles/asian-skater-boys.fr.vtt: -------------------------------------------------------------------------------- 1 | WEBVTT 2 | 3 | 00:00:00.260 --> 00:00:02.433 line:14 4 | Pour nous, il y a un manque 5 | de représentation 6 | 7 | 00:00:02.633 --> 00:00:03.640 line:14 8 | des Asiatiques 9 | dans tous les domaines, 10 | 11 | 00:00:03.840 --> 00:00:06.720 line:14 12 | et en particulier 13 | le skateboard. 14 | 15 | 00:00:08.720 --> 00:00:10.619 line:14 16 | On a créé un collectif 17 | pour visibiliser 18 | 19 | 00:00:10.620 --> 00:00:13.240 line:14 20 | les skateurs d'origine 21 | asiatique 22 | 23 | 00:00:13.840 --> 00:00:16.600 line:14 24 | Moi c'est Thomas Pham, 25 | j'ai 24 ans, 26 | 27 | 00:00:16.800 --> 00:00:19.360 line:14 28 | et je fais partie du 29 | collectif Bassac. 30 | 31 | 00:00:19.560 --> 00:00:21.080 line:14 32 | Je m'appelle Thien, 33 | j'ai 23 ans et 34 | 35 | 00:00:21.280 --> 00:00:23.400 line:14 36 | je fais partie du collectif 37 | Bassac depuis ses débuts. 38 | 39 | 00:00:23.600 --> 00:00:26.799 line:14 40 | Bassac c'est un 41 | collectif de skateurs 42 | 43 | 00:00:26.800 --> 00:00:28.200 line:14 44 | qui veut promouvoir 45 | le 13ème arrondissement 46 | 47 | 00:00:28.400 --> 00:00:30.640 line:14 48 | et la communauté asiatique. 49 | 50 | 00:00:30.840 --> 00:00:33.920 line:14 51 | On un compte Instagram avec 52 | lequel on publie 53 | 54 | 00:00:34.120 --> 00:00:36.880 line:14 55 | des photos, des vidéos, 56 | des edits de skate. 57 | 58 | 00:00:37.080 --> 00:00:38.520 line:14 59 | On essaie d'insérer des 60 | 61 | 00:00:38.720 --> 00:00:42.200 line:14 62 | petits clins d'œil à notre 63 | identité et notre culture. 64 | 65 | 00:00:42.400 --> 00:00:43.520 line:14 66 | Ça se fait à travers 67 | 68 | 00:00:43.720 --> 00:00:46.280 line:14 69 | la musique et des images 70 | de notre quartier. 71 | 72 | 00:00:46.480 --> 00:00:49.280 line:14 73 | Moi, j'ai commencé 74 | le skate il y a huit ans. 75 | 76 | 00:00:49.480 --> 00:00:51.200 line:14 77 | Au départ, 78 | j'étais tout seul. 79 | 80 | 00:00:51.400 --> 00:00:53.480 line:14 81 | J'ai rencontré 82 | des amis qui sont 83 | 84 | 00:00:53.480 --> 00:00:54.840 line:14 85 | maintenant avec 86 | moi dans Bassac. 87 | 88 | 00:00:55.040 --> 00:00:56.520 line:14 89 | J'ai l'impression que c'est 90 | comme une famille, en fait. 91 | 92 | 00:00:56.720 --> 00:00:57.199 line:14 93 | Franchement, 94 | 95 | 00:00:57.200 --> 00:00:58.600 line:14 96 | c'est devenu comme un petit 97 | rituel du genre 98 | 99 | 00:00:58.680 --> 00:01:00.480 line:14 100 | le week end, on se retrouve 101 | ensemble, 102 | 103 | 00:01:00.680 --> 00:01:03.240 line:14 104 | on discute et puis on 105 | skate, on rigole ensemble. 106 | 107 | 00:01:03.440 --> 00:01:05.360 line:14 108 | Ici, on est sur la dalle 109 | 110 | 00:01:05.560 --> 00:01:08.480 line:14 111 | Olympiades, c'est 112 | un peu le cœur du 13ème. 113 | 114 | 00:01:08.680 --> 00:01:10.920 line:14 115 | C'est le Chinatown 116 | de Paris je dirais. 117 | 118 | 00:01:11.120 --> 00:01:12.880 line:14 119 | C'est un quartier 120 | où il y a beaucoup 121 | 122 | 00:01:13.080 --> 00:01:15.800 line:14 123 | de Sud-Est 124 | asiatiques principalement. 125 | 126 | 00:01:15.880 --> 00:01:18.000 line:14 127 | Il y a plein de restos, 128 | plein de boutiques. 129 | 130 | 00:01:18.200 --> 00:01:19.000 line:14 131 | Le nom Bassac, 132 | 133 | 00:01:19.080 --> 00:01:21.000 line:14 134 | c'est le nom d'un 135 | embranchement du Mékong 136 | 137 | 00:01:21.200 --> 00:01:23.360 line:14 138 | et on a trouvé que ça 139 | sonnait bien et 140 | 141 | 00:01:23.370 --> 00:01:24.920 line:14 142 | que ça représentait bien 143 | nos identités. 144 | 145 | 00:01:25.120 --> 00:01:26.520 line:14 146 | Dans le collectif, 147 | on a des personnes 148 | 149 | 00:01:26.720 --> 00:01:29.360 line:14 150 | d'origine vietnamienne, 151 | cambodgienne et teochew. 152 | 153 | 00:01:29.560 --> 00:01:32.895 line:14 154 | C'est des minorités 155 | asiatiques qui ne sont pas 156 | 157 | 00:01:33.095 --> 00:01:34.324 line:14 158 | forcément représentées 159 | 160 | 00:01:34.524 --> 00:01:37.280 line:14 161 | dans la culture asiatique 162 | "mainstream". 163 | 164 | 00:01:37.480 --> 00:01:38.599 line:14 165 | Ce qu'on voit généralement, 166 | 167 | 00:01:38.600 --> 00:01:41.680 line:14 168 | c'est des asiatiques 169 | Coréens, Japonais, etc. 170 | 171 | 00:01:41.840 --> 00:01:43.240 line:14 172 | Dans la communauté, 173 | le skate est 174 | 175 | 00:01:43.280 --> 00:01:44.600 line:14 176 | une discipline qui est 177 | assez mal perçue. 178 | 179 | 00:01:44.800 --> 00:01:46.560 line:14 180 | Bassac, c'est simplement 181 | le fait 182 | 183 | 00:01:46.760 --> 00:01:49.120 line:14 184 | de vouloir rendre plus 185 | accessible le skate 186 | 187 | 00:01:49.320 --> 00:01:51.880 line:14 188 | pour les Asiatiques, 189 | pour notre communauté. 190 | 191 | 00:01:52.080 --> 00:01:54.000 line:14 192 | Je trouve ça dommage 193 | que des gens hésitent 194 | 195 | 00:01:54.000 --> 00:01:55.309 line:14 196 | à se lancer dans le skate 197 | par rapport à 198 | 199 | 00:01:55.509 --> 00:01:56.219 line:14 200 | leurs origines ou 201 | d'où ils viennent 202 | 203 | 00:01:56.220 --> 00:01:58.120 line:14 204 | alors qu'en fait, 205 | c'est un sport 206 | 207 | 00:01:58.320 --> 00:02:00.920 line:14 208 | très convivial qui ne 209 | prend pas compte 210 | 211 | 00:02:01.160 --> 00:02:02.760 line:14 212 | de notre personne 213 | et nos origines. 214 | 215 | 00:02:02.960 --> 00:02:05.200 line:14 216 | Le but, c'est vraiment 217 | d'encourager les gens 218 | 219 | 00:02:05.240 --> 00:02:06.720 line:14 220 | qui n'oseraient pas 221 | se lancer, à se lancer. 222 | -------------------------------------------------------------------------------- /yarn.lock: -------------------------------------------------------------------------------- 1 | # THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY. 2 | # yarn lockfile v1 3 | 4 | 5 | "@babel/code-frame@7.12.11": 6 | version "7.12.11" 7 | resolved "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.12.11.tgz" 8 | integrity sha512-Zt1yodBx1UcyiePMSkWnU4hPqhwq7hGi2nFL1LeA3EUl+q2LQx16MISgJ0+z7dnmgvP9QtIleuETGOiOH1RcIw== 9 | dependencies: 10 | "@babel/highlight" "^7.10.4" 11 | 12 | "@babel/code-frame@^7.0.0", "@babel/code-frame@^7.12.13": 13 | version "7.12.13" 14 | resolved "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.12.13.tgz" 15 | integrity sha512-HV1Cm0Q3ZrpCR93tkWOYiuYIgLxZXZFVG2VgK+MBWjUqZTundupbfx2aXarXuw5Ko5aMcjtJgbSs4vUGBS5v6g== 16 | dependencies: 17 | "@babel/highlight" "^7.12.13" 18 | 19 | "@babel/generator@^7.14.2": 20 | version "7.14.3" 21 | resolved "https://registry.npmjs.org/@babel/generator/-/generator-7.14.3.tgz" 22 | integrity sha512-bn0S6flG/j0xtQdz3hsjJ624h3W0r3llttBMfyHX3YrZ/KtLYr15bjA0FXkgW7FpvrDuTuElXeVjiKlYRpnOFA== 23 | dependencies: 24 | "@babel/types" "^7.14.2" 25 | jsesc "^2.5.1" 26 | source-map "^0.5.0" 27 | 28 | "@babel/helper-function-name@^7.14.2": 29 | version "7.14.2" 30 | resolved "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.14.2.tgz" 31 | integrity sha512-NYZlkZRydxw+YT56IlhIcS8PAhb+FEUiOzuhFTfqDyPmzAhRge6ua0dQYT/Uh0t/EDHq05/i+e5M2d4XvjgarQ== 32 | dependencies: 33 | "@babel/helper-get-function-arity" "^7.12.13" 34 | "@babel/template" "^7.12.13" 35 | "@babel/types" "^7.14.2" 36 | 37 | "@babel/helper-get-function-arity@^7.12.13": 38 | version "7.12.13" 39 | resolved "https://registry.npmjs.org/@babel/helper-get-function-arity/-/helper-get-function-arity-7.12.13.tgz" 40 | integrity sha512-DjEVzQNz5LICkzN0REdpD5prGoidvbdYk1BVgRUOINaWJP2t6avB27X1guXK1kXNrX0WMfsrm1A/ZBthYuIMQg== 41 | dependencies: 42 | "@babel/types" "^7.12.13" 43 | 44 | "@babel/helper-split-export-declaration@^7.12.13": 45 | version "7.12.13" 46 | resolved "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.12.13.tgz" 47 | integrity sha512-tCJDltF83htUtXx5NLcaDqRmknv652ZWCHyoTETf1CXYJdPC7nohZohjUgieXhv0hTJdRf2FjDueFehdNucpzg== 48 | dependencies: 49 | "@babel/types" "^7.12.13" 50 | 51 | "@babel/helper-validator-identifier@^7.14.0": 52 | version "7.14.0" 53 | resolved "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.14.0.tgz" 54 | integrity sha512-V3ts7zMSu5lfiwWDVWzRDGIN+lnCEUdaXgtVHJgLb1rGaA6jMrtB9EmE7L18foXJIE8Un/A/h6NJfGQp/e1J4A== 55 | 56 | "@babel/highlight@^7.10.4", "@babel/highlight@^7.12.13": 57 | version "7.14.0" 58 | resolved "https://registry.npmjs.org/@babel/highlight/-/highlight-7.14.0.tgz" 59 | integrity sha512-YSCOwxvTYEIMSGaBQb5kDDsCopDdiUGsqpatp3fOlI4+2HQSkTmEVWnVuySdAC5EWCqSWWTv0ib63RjR7dTBdg== 60 | dependencies: 61 | "@babel/helper-validator-identifier" "^7.14.0" 62 | chalk "^2.0.0" 63 | js-tokens "^4.0.0" 64 | 65 | "@babel/parser@^7.12.13", "@babel/parser@^7.14.2", "@babel/parser@^7.7.0": 66 | version "7.14.4" 67 | resolved "https://registry.npmjs.org/@babel/parser/-/parser-7.14.4.tgz" 68 | integrity sha512-ArliyUsWDUqEGfWcmzpGUzNfLxTdTp6WU4IuP6QFSp9gGfWS6boxFCkJSJ/L4+RG8z/FnIU3WxCk6hPL9SSWeA== 69 | 70 | "@babel/template@^7.12.13": 71 | version "7.12.13" 72 | resolved "https://registry.npmjs.org/@babel/template/-/template-7.12.13.tgz" 73 | integrity sha512-/7xxiGA57xMo/P2GVvdEumr8ONhFOhfgq2ihK3h1e6THqzTAkHbkXgB0xI9yeTfIUoH3+oAeHhqm/I43OTbbjA== 74 | dependencies: 75 | "@babel/code-frame" "^7.12.13" 76 | "@babel/parser" "^7.12.13" 77 | "@babel/types" "^7.12.13" 78 | 79 | "@babel/traverse@^7.7.0": 80 | version "7.14.2" 81 | resolved "https://registry.npmjs.org/@babel/traverse/-/traverse-7.14.2.tgz" 82 | integrity sha512-TsdRgvBFHMyHOOzcP9S6QU0QQtjxlRpEYOy3mcCO5RgmC305ki42aSAmfZEMSSYBla2oZ9BMqYlncBaKmD/7iA== 83 | dependencies: 84 | "@babel/code-frame" "^7.12.13" 85 | "@babel/generator" "^7.14.2" 86 | "@babel/helper-function-name" "^7.14.2" 87 | "@babel/helper-split-export-declaration" "^7.12.13" 88 | "@babel/parser" "^7.14.2" 89 | "@babel/types" "^7.14.2" 90 | debug "^4.1.0" 91 | globals "^11.1.0" 92 | 93 | "@babel/types@^7.12.13", "@babel/types@^7.14.2", "@babel/types@^7.7.0": 94 | version "7.14.4" 95 | resolved "https://registry.npmjs.org/@babel/types/-/types-7.14.4.tgz" 96 | integrity sha512-lCj4aIs0xUefJFQnwwQv2Bxg7Omd6bgquZ6LGC+gGMh6/s5qDVfjuCMlDmYQ15SLsWHd9n+X3E75lKIhl5Lkiw== 97 | dependencies: 98 | "@babel/helper-validator-identifier" "^7.14.0" 99 | to-fast-properties "^2.0.0" 100 | 101 | "@eslint/eslintrc@^0.4.2": 102 | version "0.4.2" 103 | resolved "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-0.4.2.tgz" 104 | integrity sha512-8nmGq/4ycLpIwzvhI4tNDmQztZ8sp+hI7cyG8i1nQDhkAbRzHpXPidRAHlNvCZQpJTKw5ItIpMw9RSToGF00mg== 105 | dependencies: 106 | ajv "^6.12.4" 107 | debug "^4.1.1" 108 | espree "^7.3.0" 109 | globals "^13.9.0" 110 | ignore "^4.0.6" 111 | import-fresh "^3.2.1" 112 | js-yaml "^3.13.1" 113 | minimatch "^3.0.4" 114 | strip-json-comments "^3.1.1" 115 | 116 | "@sindresorhus/is@^0.14.0": 117 | version "0.14.0" 118 | resolved "https://registry.npmjs.org/@sindresorhus/is/-/is-0.14.0.tgz" 119 | integrity sha512-9NET910DNaIPngYnLLPeg+Ogzqsi9uM4mSboU5y6p8S5DzMTVEsJZrawi+BoDNUVBa2DhJqQYUFvMDfgU062LQ== 120 | 121 | "@szmarczak/http-timer@^1.1.2": 122 | version "1.1.2" 123 | resolved "https://registry.npmjs.org/@szmarczak/http-timer/-/http-timer-1.1.2.tgz" 124 | integrity sha512-XIB2XbzHTN6ieIjfIMV9hlVcfPU26s2vafYWQcZHWXHOxiaRZYEDKEwdl129Zyg50+foYV2jCgtrqSA6qNuNSA== 125 | dependencies: 126 | defer-to-connect "^1.0.1" 127 | 128 | "@types/json5@^0.0.29": 129 | version "0.0.29" 130 | resolved "https://registry.npmjs.org/@types/json5/-/json5-0.0.29.tgz" 131 | integrity sha1-7ihweulOEdK4J7y+UnC86n8+ce4= 132 | 133 | abbrev@1: 134 | version "1.1.1" 135 | resolved "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz" 136 | integrity sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q== 137 | 138 | accepts@~1.3.7: 139 | version "1.3.7" 140 | resolved "https://registry.npmjs.org/accepts/-/accepts-1.3.7.tgz" 141 | integrity sha512-Il80Qs2WjYlJIBNzNkK6KYqlVMTbZLXgHx2oT0pU/fjRHyEp+PEfEPY0R3WCwAGVOtauxh1hOxNgIf5bv7dQpA== 142 | dependencies: 143 | mime-types "~2.1.24" 144 | negotiator "0.6.2" 145 | 146 | acorn-jsx@^5.3.1: 147 | version "5.3.1" 148 | resolved "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.1.tgz" 149 | integrity sha512-K0Ptm/47OKfQRpNQ2J/oIN/3QYiK6FwW+eJbILhsdxh2WTLdl+30o8aGdTbm5JbffpFFAg/g+zi1E+jvJha5ng== 150 | 151 | acorn@^7.4.0: 152 | version "7.4.1" 153 | resolved "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz" 154 | integrity sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A== 155 | 156 | ajv@^6.10.0, ajv@^6.12.4: 157 | version "6.12.6" 158 | resolved "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz" 159 | integrity sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g== 160 | dependencies: 161 | fast-deep-equal "^3.1.1" 162 | fast-json-stable-stringify "^2.0.0" 163 | json-schema-traverse "^0.4.1" 164 | uri-js "^4.2.2" 165 | 166 | ajv@^8.0.1: 167 | version "8.6.0" 168 | resolved "https://registry.npmjs.org/ajv/-/ajv-8.6.0.tgz" 169 | integrity sha512-cnUG4NSBiM4YFBxgZIj/In3/6KX+rQ2l2YPRVcvAMQGWEPKuXoPIhxzwqh31jA3IPbI4qEOp/5ILI4ynioXsGQ== 170 | dependencies: 171 | fast-deep-equal "^3.1.1" 172 | json-schema-traverse "^1.0.0" 173 | require-from-string "^2.0.2" 174 | uri-js "^4.2.2" 175 | 176 | ansi-align@^3.0.0: 177 | version "3.0.0" 178 | resolved "https://registry.npmjs.org/ansi-align/-/ansi-align-3.0.0.tgz" 179 | integrity sha512-ZpClVKqXN3RGBmKibdfWzqCY4lnjEuoNzU5T0oEFpfd/z5qJHVarukridD4juLO2FXMiwUQxr9WqQtaYa8XRYw== 180 | dependencies: 181 | string-width "^3.0.0" 182 | 183 | ansi-colors@^4.1.1: 184 | version "4.1.1" 185 | resolved "https://registry.npmjs.org/ansi-colors/-/ansi-colors-4.1.1.tgz" 186 | integrity sha512-JoX0apGbHaUJBNl6yF+p6JAFYZ666/hhCGKN5t9QFjbJQKUU/g8MNbFDbvfrgKXvI1QpZplPOnwIo99lX/AAmA== 187 | 188 | ansi-regex@^4.1.0: 189 | version "4.1.0" 190 | resolved "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz" 191 | integrity sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg== 192 | 193 | ansi-regex@^5.0.0: 194 | version "5.0.0" 195 | resolved "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz" 196 | integrity sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg== 197 | 198 | ansi-styles@^3.2.1: 199 | version "3.2.1" 200 | resolved "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz" 201 | integrity sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA== 202 | dependencies: 203 | color-convert "^1.9.0" 204 | 205 | ansi-styles@^4.0.0, ansi-styles@^4.1.0: 206 | version "4.3.0" 207 | resolved "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz" 208 | integrity sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg== 209 | dependencies: 210 | color-convert "^2.0.1" 211 | 212 | anymatch@~3.1.1: 213 | version "3.1.2" 214 | resolved "https://registry.npmjs.org/anymatch/-/anymatch-3.1.2.tgz" 215 | integrity sha512-P43ePfOAIupkguHUycrc4qJ9kz8ZiuOUijaETwX7THt0Y/GNK7v0aa8rY816xWjZ7rJdA5XdMcpVFTKMq+RvWg== 216 | dependencies: 217 | normalize-path "^3.0.0" 218 | picomatch "^2.0.4" 219 | 220 | argparse@^1.0.7: 221 | version "1.0.10" 222 | resolved "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz" 223 | integrity sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg== 224 | dependencies: 225 | sprintf-js "~1.0.2" 226 | 227 | array-flatten@1.1.1: 228 | version "1.1.1" 229 | resolved "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz" 230 | integrity sha1-ml9pkFGx5wczKPKgCJaLZOopVdI= 231 | 232 | array-includes@^3.1.3: 233 | version "3.1.3" 234 | resolved "https://registry.npmjs.org/array-includes/-/array-includes-3.1.3.tgz" 235 | integrity sha512-gcem1KlBU7c9rB+Rq8/3PPKsK2kjqeEBa3bD5kkQo4nYlOHQCJqIJFqBXDEfwaRuYTT4E+FxA9xez7Gf/e3Q7A== 236 | dependencies: 237 | call-bind "^1.0.2" 238 | define-properties "^1.1.3" 239 | es-abstract "^1.18.0-next.2" 240 | get-intrinsic "^1.1.1" 241 | is-string "^1.0.5" 242 | 243 | array.prototype.flat@^1.2.4: 244 | version "1.2.4" 245 | resolved "https://registry.npmjs.org/array.prototype.flat/-/array.prototype.flat-1.2.4.tgz" 246 | integrity sha512-4470Xi3GAPAjZqFcljX2xzckv1qeKPizoNkiS0+O4IoPR2ZNpcjE0pkhdihlDouK+x6QOast26B4Q/O9DJnwSg== 247 | dependencies: 248 | call-bind "^1.0.0" 249 | define-properties "^1.1.3" 250 | es-abstract "^1.18.0-next.1" 251 | 252 | astral-regex@^2.0.0: 253 | version "2.0.0" 254 | resolved "https://registry.npmjs.org/astral-regex/-/astral-regex-2.0.0.tgz" 255 | integrity sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ== 256 | 257 | babel-eslint@^10.1.0: 258 | version "10.1.0" 259 | resolved "https://registry.npmjs.org/babel-eslint/-/babel-eslint-10.1.0.tgz" 260 | integrity sha512-ifWaTHQ0ce+448CYop8AdrQiBsGrnC+bMgfyKFdi6EsPLTAWG+QfyDeM6OH+FmWnKvEq5NnBMLvlBUPKQZoDSg== 261 | dependencies: 262 | "@babel/code-frame" "^7.0.0" 263 | "@babel/parser" "^7.7.0" 264 | "@babel/traverse" "^7.7.0" 265 | "@babel/types" "^7.7.0" 266 | eslint-visitor-keys "^1.0.0" 267 | resolve "^1.12.0" 268 | 269 | balanced-match@^1.0.0: 270 | version "1.0.2" 271 | resolved "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz" 272 | integrity sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw== 273 | 274 | binary-extensions@^2.0.0: 275 | version "2.2.0" 276 | resolved "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz" 277 | integrity sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA== 278 | 279 | body-parser@1.19.0: 280 | version "1.19.0" 281 | resolved "https://registry.npmjs.org/body-parser/-/body-parser-1.19.0.tgz" 282 | integrity sha512-dhEPs72UPbDnAQJ9ZKMNTP6ptJaionhP5cBb541nXPlW60Jepo9RV/a4fX4XWW9CuFNK22krhrj1+rgzifNCsw== 283 | dependencies: 284 | bytes "3.1.0" 285 | content-type "~1.0.4" 286 | debug "2.6.9" 287 | depd "~1.1.2" 288 | http-errors "1.7.2" 289 | iconv-lite "0.4.24" 290 | on-finished "~2.3.0" 291 | qs "6.7.0" 292 | raw-body "2.4.0" 293 | type-is "~1.6.17" 294 | 295 | boxen@^4.2.0: 296 | version "4.2.0" 297 | resolved "https://registry.npmjs.org/boxen/-/boxen-4.2.0.tgz" 298 | integrity sha512-eB4uT9RGzg2odpER62bBwSLvUeGC+WbRjjyyFhGsKnc8wp/m0+hQsMUvUe3H2V0D5vw0nBdO1hCJoZo5mKeuIQ== 299 | dependencies: 300 | ansi-align "^3.0.0" 301 | camelcase "^5.3.1" 302 | chalk "^3.0.0" 303 | cli-boxes "^2.2.0" 304 | string-width "^4.1.0" 305 | term-size "^2.1.0" 306 | type-fest "^0.8.1" 307 | widest-line "^3.1.0" 308 | 309 | brace-expansion@^1.1.7: 310 | version "1.1.11" 311 | resolved "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz" 312 | integrity sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA== 313 | dependencies: 314 | balanced-match "^1.0.0" 315 | concat-map "0.0.1" 316 | 317 | braces@~3.0.2: 318 | version "3.0.2" 319 | resolved "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz" 320 | integrity sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A== 321 | dependencies: 322 | fill-range "^7.0.1" 323 | 324 | bytes@3.1.0: 325 | version "3.1.0" 326 | resolved "https://registry.npmjs.org/bytes/-/bytes-3.1.0.tgz" 327 | integrity sha512-zauLjrfCG+xvoyaqLoV8bLVXXNGC4JqlxFCutSDWA6fJrTo2ZuvLYTqZ7aHBLZSMOopbzwv8f+wZcVzfVTI2Dg== 328 | 329 | cacheable-request@^6.0.0: 330 | version "6.1.0" 331 | resolved "https://registry.npmjs.org/cacheable-request/-/cacheable-request-6.1.0.tgz" 332 | integrity sha512-Oj3cAGPCqOZX7Rz64Uny2GYAZNliQSqfbePrgAQ1wKAihYmCUnraBtJtKcGR4xz7wF+LoJC+ssFZvv5BgF9Igg== 333 | dependencies: 334 | clone-response "^1.0.2" 335 | get-stream "^5.1.0" 336 | http-cache-semantics "^4.0.0" 337 | keyv "^3.0.0" 338 | lowercase-keys "^2.0.0" 339 | normalize-url "^4.1.0" 340 | responselike "^1.0.2" 341 | 342 | call-bind@^1.0.0, call-bind@^1.0.2: 343 | version "1.0.2" 344 | resolved "https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz" 345 | integrity sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA== 346 | dependencies: 347 | function-bind "^1.1.1" 348 | get-intrinsic "^1.0.2" 349 | 350 | callsites@^3.0.0: 351 | version "3.1.0" 352 | resolved "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz" 353 | integrity sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ== 354 | 355 | camelcase@^5.3.1: 356 | version "5.3.1" 357 | resolved "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz" 358 | integrity sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg== 359 | 360 | chalk@^2.0.0: 361 | version "2.4.2" 362 | resolved "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz" 363 | integrity sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ== 364 | dependencies: 365 | ansi-styles "^3.2.1" 366 | escape-string-regexp "^1.0.5" 367 | supports-color "^5.3.0" 368 | 369 | chalk@^3.0.0: 370 | version "3.0.0" 371 | resolved "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz" 372 | integrity sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg== 373 | dependencies: 374 | ansi-styles "^4.1.0" 375 | supports-color "^7.1.0" 376 | 377 | chalk@^4.0.0: 378 | version "4.1.1" 379 | resolved "https://registry.npmjs.org/chalk/-/chalk-4.1.1.tgz" 380 | integrity sha512-diHzdDKxcU+bAsUboHLPEDQiw0qEe0qd7SYUn3HgcFlWgbDcfLGswOHYeGrHKzG9z6UYf01d9VFMfZxPM1xZSg== 381 | dependencies: 382 | ansi-styles "^4.1.0" 383 | supports-color "^7.1.0" 384 | 385 | chokidar@^3.2.2: 386 | version "3.5.1" 387 | resolved "https://registry.npmjs.org/chokidar/-/chokidar-3.5.1.tgz" 388 | integrity sha512-9+s+Od+W0VJJzawDma/gvBNQqkTiqYTWLuZoyAsivsI4AaWTCzHG06/TMjsf1cYe9Cb97UCEhjz7HvnPk2p/tw== 389 | dependencies: 390 | anymatch "~3.1.1" 391 | braces "~3.0.2" 392 | glob-parent "~5.1.0" 393 | is-binary-path "~2.1.0" 394 | is-glob "~4.0.1" 395 | normalize-path "~3.0.0" 396 | readdirp "~3.5.0" 397 | optionalDependencies: 398 | fsevents "~2.3.1" 399 | 400 | ci-info@^2.0.0: 401 | version "2.0.0" 402 | resolved "https://registry.npmjs.org/ci-info/-/ci-info-2.0.0.tgz" 403 | integrity sha512-5tK7EtrZ0N+OLFMthtqOj4fI2Jeb88C4CAZPu25LDVUgXJ0A3Js4PMGqrn0JU1W0Mh1/Z8wZzYPxqUrXeBboCQ== 404 | 405 | cli-boxes@^2.2.0: 406 | version "2.2.1" 407 | resolved "https://registry.npmjs.org/cli-boxes/-/cli-boxes-2.2.1.tgz" 408 | integrity sha512-y4coMcylgSCdVinjiDBuR8PCC2bLjyGTwEmPb9NHR/QaNU6EUOXcTY/s6VjGMD6ENSEaeQYHCY0GNGS5jfMwPw== 409 | 410 | clone-response@^1.0.2: 411 | version "1.0.2" 412 | resolved "https://registry.npmjs.org/clone-response/-/clone-response-1.0.2.tgz" 413 | integrity sha1-0dyXOSAxTfZ/vrlCI7TuNQI56Ws= 414 | dependencies: 415 | mimic-response "^1.0.0" 416 | 417 | color-convert@^1.9.0: 418 | version "1.9.3" 419 | resolved "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz" 420 | integrity sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg== 421 | dependencies: 422 | color-name "1.1.3" 423 | 424 | color-convert@^2.0.1: 425 | version "2.0.1" 426 | resolved "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz" 427 | integrity sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ== 428 | dependencies: 429 | color-name "~1.1.4" 430 | 431 | color-name@1.1.3: 432 | version "1.1.3" 433 | resolved "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz" 434 | integrity sha1-p9BVi9icQveV3UIyj3QIMcpTvCU= 435 | 436 | color-name@~1.1.4: 437 | version "1.1.4" 438 | resolved "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz" 439 | integrity sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA== 440 | 441 | concat-map@0.0.1: 442 | version "0.0.1" 443 | resolved "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz" 444 | integrity sha1-2Klr13/Wjfd5OnMDajug1UBdR3s= 445 | 446 | configstore@^5.0.1: 447 | version "5.0.1" 448 | resolved "https://registry.npmjs.org/configstore/-/configstore-5.0.1.tgz" 449 | integrity sha512-aMKprgk5YhBNyH25hj8wGt2+D52Sw1DRRIzqBwLp2Ya9mFmY8KPvvtvmna8SxVR9JMZ4kzMD68N22vlaRpkeFA== 450 | dependencies: 451 | dot-prop "^5.2.0" 452 | graceful-fs "^4.1.2" 453 | make-dir "^3.0.0" 454 | unique-string "^2.0.0" 455 | write-file-atomic "^3.0.0" 456 | xdg-basedir "^4.0.0" 457 | 458 | confusing-browser-globals@^1.0.10: 459 | version "1.0.10" 460 | resolved "https://registry.npmjs.org/confusing-browser-globals/-/confusing-browser-globals-1.0.10.tgz" 461 | integrity sha512-gNld/3lySHwuhaVluJUKLePYirM3QNCKzVxqAdhJII9/WXKVX5PURzMVJspS1jTslSqjeuG4KMVTSouit5YPHA== 462 | 463 | content-disposition@0.5.3: 464 | version "0.5.3" 465 | resolved "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.3.tgz" 466 | integrity sha512-ExO0774ikEObIAEV9kDo50o+79VCUdEB6n6lzKgGwupcVeRlhrj3qGAfwq8G6uBJjkqLrhT0qEYFcWng8z1z0g== 467 | dependencies: 468 | safe-buffer "5.1.2" 469 | 470 | content-type@~1.0.4: 471 | version "1.0.4" 472 | resolved "https://registry.npmjs.org/content-type/-/content-type-1.0.4.tgz" 473 | integrity sha512-hIP3EEPs8tB9AT1L+NUqtwOAps4mk2Zob89MWXMHjHWg9milF/j4osnnQLXBCBFBk/tvIG/tUc9mOUJiPBhPXA== 474 | 475 | cookie-signature@1.0.6: 476 | version "1.0.6" 477 | resolved "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz" 478 | integrity sha1-4wOogrNCzD7oylE6eZmXNNqzriw= 479 | 480 | cookie@0.4.0: 481 | version "0.4.0" 482 | resolved "https://registry.npmjs.org/cookie/-/cookie-0.4.0.tgz" 483 | integrity sha512-+Hp8fLp57wnUSt0tY0tHEXh4voZRDnoIrZPqlo3DPiI4y9lwg/jqx+1Om94/W6ZaPDOUbnjOt/99w66zk+l1Xg== 484 | 485 | cors@^2.8.5: 486 | version "2.8.5" 487 | resolved "https://registry.npmjs.org/cors/-/cors-2.8.5.tgz" 488 | integrity sha512-KIHbLJqu73RGr/hnbrO9uBeixNGuvSQjul/jdFvS/KFSIH1hWVd1ng7zOHx+YrEfInLG7q4n6GHQ9cDtxv/P6g== 489 | dependencies: 490 | object-assign "^4" 491 | vary "^1" 492 | 493 | cross-spawn@^7.0.2: 494 | version "7.0.3" 495 | resolved "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz" 496 | integrity sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w== 497 | dependencies: 498 | path-key "^3.1.0" 499 | shebang-command "^2.0.0" 500 | which "^2.0.1" 501 | 502 | crypto-js@^4.0.0: 503 | version "4.0.0" 504 | resolved "https://registry.npmjs.org/crypto-js/-/crypto-js-4.0.0.tgz" 505 | integrity sha512-bzHZN8Pn+gS7DQA6n+iUmBfl0hO5DJq++QP3U6uTucDtk/0iGpXd/Gg7CGR0p8tJhofJyaKoWBuJI4eAO00BBg== 506 | 507 | crypto-random-string@^2.0.0: 508 | version "2.0.0" 509 | resolved "https://registry.npmjs.org/crypto-random-string/-/crypto-random-string-2.0.0.tgz" 510 | integrity sha512-v1plID3y9r/lPhviJ1wrXpLeyUIGAZ2SHNYTEapm7/8A9nLPoyvVp3RK/EPFqn5kEznyWgYZNsRtYYIWbuG8KA== 511 | 512 | debug@2.6.9, debug@^2.2.0, debug@^2.6.9: 513 | version "2.6.9" 514 | resolved "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz" 515 | integrity sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA== 516 | dependencies: 517 | ms "2.0.0" 518 | 519 | debug@^3.2.6, debug@^3.2.7: 520 | version "3.2.7" 521 | resolved "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz" 522 | integrity sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ== 523 | dependencies: 524 | ms "^2.1.1" 525 | 526 | debug@^4.0.1, debug@^4.1.0, debug@^4.1.1: 527 | version "4.3.1" 528 | resolved "https://registry.npmjs.org/debug/-/debug-4.3.1.tgz" 529 | integrity sha512-doEwdvm4PCeK4K3RQN2ZC2BYUBaxwLARCqZmMjtF8a51J2Rb0xpVloFRnCODwqjpwnAoao4pelN8l3RJdv3gRQ== 530 | dependencies: 531 | ms "2.1.2" 532 | 533 | decompress-response@^3.3.0: 534 | version "3.3.0" 535 | resolved "https://registry.npmjs.org/decompress-response/-/decompress-response-3.3.0.tgz" 536 | integrity sha1-gKTdMjdIOEv6JICDYirt7Jgq3/M= 537 | dependencies: 538 | mimic-response "^1.0.0" 539 | 540 | deep-extend@^0.6.0: 541 | version "0.6.0" 542 | resolved "https://registry.npmjs.org/deep-extend/-/deep-extend-0.6.0.tgz" 543 | integrity sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA== 544 | 545 | deep-is@^0.1.3: 546 | version "0.1.3" 547 | resolved "https://registry.npmjs.org/deep-is/-/deep-is-0.1.3.tgz" 548 | integrity sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ= 549 | 550 | defer-to-connect@^1.0.1: 551 | version "1.1.3" 552 | resolved "https://registry.npmjs.org/defer-to-connect/-/defer-to-connect-1.1.3.tgz" 553 | integrity sha512-0ISdNousHvZT2EiFlZeZAHBUvSxmKswVCEf8hW7KWgG4a8MVEu/3Vb6uWYozkjylyCxe0JBIiRB1jV45S70WVQ== 554 | 555 | define-properties@^1.1.3: 556 | version "1.1.3" 557 | resolved "https://registry.npmjs.org/define-properties/-/define-properties-1.1.3.tgz" 558 | integrity sha512-3MqfYKj2lLzdMSf8ZIZE/V+Zuy+BgD6f164e8K2w7dgnpKArBDerGYpM46IYYcjnkdPNMjPk9A6VFB8+3SKlXQ== 559 | dependencies: 560 | object-keys "^1.0.12" 561 | 562 | depd@~1.1.2: 563 | version "1.1.2" 564 | resolved "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz" 565 | integrity sha1-m81S4UwJd2PnSbJ0xDRu0uVgtak= 566 | 567 | destroy@~1.0.4: 568 | version "1.0.4" 569 | resolved "https://registry.npmjs.org/destroy/-/destroy-1.0.4.tgz" 570 | integrity sha1-l4hXRCxEdJ5CBmE+N5RiBYJqvYA= 571 | 572 | doctrine@^2.1.0: 573 | version "2.1.0" 574 | resolved "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz" 575 | integrity sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw== 576 | dependencies: 577 | esutils "^2.0.2" 578 | 579 | doctrine@^3.0.0: 580 | version "3.0.0" 581 | resolved "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz" 582 | integrity sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w== 583 | dependencies: 584 | esutils "^2.0.2" 585 | 586 | dot-prop@^5.2.0: 587 | version "5.3.0" 588 | resolved "https://registry.npmjs.org/dot-prop/-/dot-prop-5.3.0.tgz" 589 | integrity sha512-QM8q3zDe58hqUqjraQOmzZ1LIH9SWQJTlEKCH4kJ2oQvLZk7RbQXvtDM2XEq3fwkV9CCvvH4LA0AV+ogFsBM2Q== 590 | dependencies: 591 | is-obj "^2.0.0" 592 | 593 | duplexer3@^0.1.4: 594 | version "0.1.4" 595 | resolved "https://registry.npmjs.org/duplexer3/-/duplexer3-0.1.4.tgz" 596 | integrity sha1-7gHdHKwO08vH/b6jfcCo8c4ALOI= 597 | 598 | ee-first@1.1.1: 599 | version "1.1.1" 600 | resolved "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz" 601 | integrity sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0= 602 | 603 | emoji-regex@^7.0.1: 604 | version "7.0.3" 605 | resolved "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz" 606 | integrity sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA== 607 | 608 | emoji-regex@^8.0.0: 609 | version "8.0.0" 610 | resolved "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz" 611 | integrity sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A== 612 | 613 | encodeurl@~1.0.2: 614 | version "1.0.2" 615 | resolved "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz" 616 | integrity sha1-rT/0yG7C0CkyL1oCw6mmBslbP1k= 617 | 618 | end-of-stream@^1.1.0: 619 | version "1.4.4" 620 | resolved "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.4.tgz" 621 | integrity sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q== 622 | dependencies: 623 | once "^1.4.0" 624 | 625 | enquirer@^2.3.5: 626 | version "2.3.6" 627 | resolved "https://registry.npmjs.org/enquirer/-/enquirer-2.3.6.tgz" 628 | integrity sha512-yjNnPr315/FjS4zIsUxYguYUPP2e1NK4d7E7ZOLiyYCcbFBiTMyID+2wvm2w6+pZ/odMA7cRkjhsPbltwBOrLg== 629 | dependencies: 630 | ansi-colors "^4.1.1" 631 | 632 | error-ex@^1.3.1: 633 | version "1.3.2" 634 | resolved "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz" 635 | integrity sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g== 636 | dependencies: 637 | is-arrayish "^0.2.1" 638 | 639 | es-abstract@^1.18.0-next.1, es-abstract@^1.18.0-next.2, es-abstract@^1.18.2: 640 | version "1.18.3" 641 | resolved "https://registry.npmjs.org/es-abstract/-/es-abstract-1.18.3.tgz" 642 | integrity sha512-nQIr12dxV7SSxE6r6f1l3DtAeEYdsGpps13dR0TwJg1S8gyp4ZPgy3FZcHBgbiQqnoqSTb+oC+kO4UQ0C/J8vw== 643 | dependencies: 644 | call-bind "^1.0.2" 645 | es-to-primitive "^1.2.1" 646 | function-bind "^1.1.1" 647 | get-intrinsic "^1.1.1" 648 | has "^1.0.3" 649 | has-symbols "^1.0.2" 650 | is-callable "^1.2.3" 651 | is-negative-zero "^2.0.1" 652 | is-regex "^1.1.3" 653 | is-string "^1.0.6" 654 | object-inspect "^1.10.3" 655 | object-keys "^1.1.1" 656 | object.assign "^4.1.2" 657 | string.prototype.trimend "^1.0.4" 658 | string.prototype.trimstart "^1.0.4" 659 | unbox-primitive "^1.0.1" 660 | 661 | es-to-primitive@^1.2.1: 662 | version "1.2.1" 663 | resolved "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.1.tgz" 664 | integrity sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA== 665 | dependencies: 666 | is-callable "^1.1.4" 667 | is-date-object "^1.0.1" 668 | is-symbol "^1.0.2" 669 | 670 | escape-goat@^2.0.0: 671 | version "2.1.1" 672 | resolved "https://registry.npmjs.org/escape-goat/-/escape-goat-2.1.1.tgz" 673 | integrity sha512-8/uIhbG12Csjy2JEW7D9pHbreaVaS/OpN3ycnyvElTdwM5n6GY6W6e2IPemfvGZeUMqZ9A/3GqIZMgKnBhAw/Q== 674 | 675 | escape-html@~1.0.3: 676 | version "1.0.3" 677 | resolved "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz" 678 | integrity sha1-Aljq5NPQwJdN4cFpGI7wBR0dGYg= 679 | 680 | escape-string-regexp@^1.0.5: 681 | version "1.0.5" 682 | resolved "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz" 683 | integrity sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ= 684 | 685 | escape-string-regexp@^4.0.0: 686 | version "4.0.0" 687 | resolved "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz" 688 | integrity sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA== 689 | 690 | eslint-config-airbnb-base@^14.2.1: 691 | version "14.2.1" 692 | resolved "https://registry.npmjs.org/eslint-config-airbnb-base/-/eslint-config-airbnb-base-14.2.1.tgz" 693 | integrity sha512-GOrQyDtVEc1Xy20U7vsB2yAoB4nBlfH5HZJeatRXHleO+OS5Ot+MWij4Dpltw4/DyIkqUfqz1epfhVR5XWWQPA== 694 | dependencies: 695 | confusing-browser-globals "^1.0.10" 696 | object.assign "^4.1.2" 697 | object.entries "^1.1.2" 698 | 699 | eslint-config-prettier@^8.3.0: 700 | version "8.3.0" 701 | resolved "https://registry.npmjs.org/eslint-config-prettier/-/eslint-config-prettier-8.3.0.tgz" 702 | integrity sha512-BgZuLUSeKzvlL/VUjx/Yb787VQ26RU3gGjA3iiFvdsp/2bMfVIWUVP7tjxtjS0e+HP409cPlPvNkQloz8C91ew== 703 | 704 | eslint-import-resolver-node@^0.3.4: 705 | version "0.3.4" 706 | resolved "https://registry.npmjs.org/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.4.tgz" 707 | integrity sha512-ogtf+5AB/O+nM6DIeBUNr2fuT7ot9Qg/1harBfBtaP13ekEWFQEEMP94BCB7zaNW3gyY+8SHYF00rnqYwXKWOA== 708 | dependencies: 709 | debug "^2.6.9" 710 | resolve "^1.13.1" 711 | 712 | eslint-module-utils@^2.6.1: 713 | version "2.6.1" 714 | resolved "https://registry.npmjs.org/eslint-module-utils/-/eslint-module-utils-2.6.1.tgz" 715 | integrity sha512-ZXI9B8cxAJIH4nfkhTwcRTEAnrVfobYqwjWy/QMCZ8rHkZHFjf9yO4BzpiF9kCSfNlMG54eKigISHpX0+AaT4A== 716 | dependencies: 717 | debug "^3.2.7" 718 | pkg-dir "^2.0.0" 719 | 720 | eslint-plugin-import@^2.23.4: 721 | version "2.23.4" 722 | resolved "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.23.4.tgz" 723 | integrity sha512-6/wP8zZRsnQFiR3iaPFgh5ImVRM1WN5NUWfTIRqwOdeiGJlBcSk82o1FEVq8yXmy4lkIzTo7YhHCIxlU/2HyEQ== 724 | dependencies: 725 | array-includes "^3.1.3" 726 | array.prototype.flat "^1.2.4" 727 | debug "^2.6.9" 728 | doctrine "^2.1.0" 729 | eslint-import-resolver-node "^0.3.4" 730 | eslint-module-utils "^2.6.1" 731 | find-up "^2.0.0" 732 | has "^1.0.3" 733 | is-core-module "^2.4.0" 734 | minimatch "^3.0.4" 735 | object.values "^1.1.3" 736 | pkg-up "^2.0.0" 737 | read-pkg-up "^3.0.0" 738 | resolve "^1.20.0" 739 | tsconfig-paths "^3.9.0" 740 | 741 | eslint-plugin-prettier@^3.4.0: 742 | version "3.4.0" 743 | resolved "https://registry.npmjs.org/eslint-plugin-prettier/-/eslint-plugin-prettier-3.4.0.tgz" 744 | integrity sha512-UDK6rJT6INSfcOo545jiaOwB701uAIt2/dR7WnFQoGCVl1/EMqdANBmwUaqqQ45aXprsTGzSa39LI1PyuRBxxw== 745 | dependencies: 746 | prettier-linter-helpers "^1.0.0" 747 | 748 | eslint-scope@^5.1.1: 749 | version "5.1.1" 750 | resolved "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.1.tgz" 751 | integrity sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw== 752 | dependencies: 753 | esrecurse "^4.3.0" 754 | estraverse "^4.1.1" 755 | 756 | eslint-utils@^2.1.0: 757 | version "2.1.0" 758 | resolved "https://registry.npmjs.org/eslint-utils/-/eslint-utils-2.1.0.tgz" 759 | integrity sha512-w94dQYoauyvlDc43XnGB8lU3Zt713vNChgt4EWwhXAP2XkBvndfxF0AgIqKOOasjPIPzj9JqgwkwbCYD0/V3Zg== 760 | dependencies: 761 | eslint-visitor-keys "^1.1.0" 762 | 763 | eslint-visitor-keys@^1.0.0, eslint-visitor-keys@^1.1.0, eslint-visitor-keys@^1.3.0: 764 | version "1.3.0" 765 | resolved "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz" 766 | integrity sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ== 767 | 768 | eslint-visitor-keys@^2.0.0: 769 | version "2.1.0" 770 | resolved "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-2.1.0.tgz" 771 | integrity sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw== 772 | 773 | eslint@^7.28.0: 774 | version "7.28.0" 775 | resolved "https://registry.npmjs.org/eslint/-/eslint-7.28.0.tgz" 776 | integrity sha512-UMfH0VSjP0G4p3EWirscJEQ/cHqnT/iuH6oNZOB94nBjWbMnhGEPxsZm1eyIW0C/9jLI0Fow4W5DXLjEI7mn1g== 777 | dependencies: 778 | "@babel/code-frame" "7.12.11" 779 | "@eslint/eslintrc" "^0.4.2" 780 | ajv "^6.10.0" 781 | chalk "^4.0.0" 782 | cross-spawn "^7.0.2" 783 | debug "^4.0.1" 784 | doctrine "^3.0.0" 785 | enquirer "^2.3.5" 786 | escape-string-regexp "^4.0.0" 787 | eslint-scope "^5.1.1" 788 | eslint-utils "^2.1.0" 789 | eslint-visitor-keys "^2.0.0" 790 | espree "^7.3.1" 791 | esquery "^1.4.0" 792 | esutils "^2.0.2" 793 | fast-deep-equal "^3.1.3" 794 | file-entry-cache "^6.0.1" 795 | functional-red-black-tree "^1.0.1" 796 | glob-parent "^5.1.2" 797 | globals "^13.6.0" 798 | ignore "^4.0.6" 799 | import-fresh "^3.0.0" 800 | imurmurhash "^0.1.4" 801 | is-glob "^4.0.0" 802 | js-yaml "^3.13.1" 803 | json-stable-stringify-without-jsonify "^1.0.1" 804 | levn "^0.4.1" 805 | lodash.merge "^4.6.2" 806 | minimatch "^3.0.4" 807 | natural-compare "^1.4.0" 808 | optionator "^0.9.1" 809 | progress "^2.0.0" 810 | regexpp "^3.1.0" 811 | semver "^7.2.1" 812 | strip-ansi "^6.0.0" 813 | strip-json-comments "^3.1.0" 814 | table "^6.0.9" 815 | text-table "^0.2.0" 816 | v8-compile-cache "^2.0.3" 817 | 818 | espree@^7.3.0, espree@^7.3.1: 819 | version "7.3.1" 820 | resolved "https://registry.npmjs.org/espree/-/espree-7.3.1.tgz" 821 | integrity sha512-v3JCNCE64umkFpmkFGqzVKsOT0tN1Zr+ueqLZfpV1Ob8e+CEgPWa+OxCoGH3tnhimMKIaBm4m/vaRpJ/krRz2g== 822 | dependencies: 823 | acorn "^7.4.0" 824 | acorn-jsx "^5.3.1" 825 | eslint-visitor-keys "^1.3.0" 826 | 827 | esprima@^4.0.0: 828 | version "4.0.1" 829 | resolved "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz" 830 | integrity sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A== 831 | 832 | esquery@^1.4.0: 833 | version "1.4.0" 834 | resolved "https://registry.npmjs.org/esquery/-/esquery-1.4.0.tgz" 835 | integrity sha512-cCDispWt5vHHtwMY2YrAQ4ibFkAL8RbH5YGBnZBc90MolvvfkkQcJro/aZiAQUlQ3qgrYS6D6v8Gc5G5CQsc9w== 836 | dependencies: 837 | estraverse "^5.1.0" 838 | 839 | esrecurse@^4.3.0: 840 | version "4.3.0" 841 | resolved "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz" 842 | integrity sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag== 843 | dependencies: 844 | estraverse "^5.2.0" 845 | 846 | estraverse@^4.1.1: 847 | version "4.3.0" 848 | resolved "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz" 849 | integrity sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw== 850 | 851 | estraverse@^5.1.0, estraverse@^5.2.0: 852 | version "5.2.0" 853 | resolved "https://registry.npmjs.org/estraverse/-/estraverse-5.2.0.tgz" 854 | integrity sha512-BxbNGGNm0RyRYvUdHpIwv9IWzeM9XClbOxwoATuFdOE7ZE6wHL+HQ5T8hoPM+zHvmKzzsEqhgy0GrQ5X13afiQ== 855 | 856 | esutils@^2.0.2: 857 | version "2.0.3" 858 | resolved "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz" 859 | integrity sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g== 860 | 861 | etag@~1.8.1: 862 | version "1.8.1" 863 | resolved "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz" 864 | integrity sha1-Qa4u62XvpiJorr/qg6x9eSmbCIc= 865 | 866 | express@^4.17.1: 867 | version "4.17.1" 868 | resolved "https://registry.npmjs.org/express/-/express-4.17.1.tgz" 869 | integrity sha512-mHJ9O79RqluphRrcw2X/GTh3k9tVv8YcoyY4Kkh4WDMUYKRZUq0h1o0w2rrrxBqM7VoeUVqgb27xlEMXTnYt4g== 870 | dependencies: 871 | accepts "~1.3.7" 872 | array-flatten "1.1.1" 873 | body-parser "1.19.0" 874 | content-disposition "0.5.3" 875 | content-type "~1.0.4" 876 | cookie "0.4.0" 877 | cookie-signature "1.0.6" 878 | debug "2.6.9" 879 | depd "~1.1.2" 880 | encodeurl "~1.0.2" 881 | escape-html "~1.0.3" 882 | etag "~1.8.1" 883 | finalhandler "~1.1.2" 884 | fresh "0.5.2" 885 | merge-descriptors "1.0.1" 886 | methods "~1.1.2" 887 | on-finished "~2.3.0" 888 | parseurl "~1.3.3" 889 | path-to-regexp "0.1.7" 890 | proxy-addr "~2.0.5" 891 | qs "6.7.0" 892 | range-parser "~1.2.1" 893 | safe-buffer "5.1.2" 894 | send "0.17.1" 895 | serve-static "1.14.1" 896 | setprototypeof "1.1.1" 897 | statuses "~1.5.0" 898 | type-is "~1.6.18" 899 | utils-merge "1.0.1" 900 | vary "~1.1.2" 901 | 902 | fast-deep-equal@^3.1.1, fast-deep-equal@^3.1.3: 903 | version "3.1.3" 904 | resolved "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz" 905 | integrity sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q== 906 | 907 | fast-diff@^1.1.2: 908 | version "1.2.0" 909 | resolved "https://registry.npmjs.org/fast-diff/-/fast-diff-1.2.0.tgz" 910 | integrity sha512-xJuoT5+L99XlZ8twedaRf6Ax2TgQVxvgZOYoPKqZufmJib0tL2tegPBOZb1pVNgIhlqDlA0eO0c3wBvQcmzx4w== 911 | 912 | fast-json-stable-stringify@^2.0.0: 913 | version "2.1.0" 914 | resolved "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz" 915 | integrity sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw== 916 | 917 | fast-levenshtein@^2.0.6: 918 | version "2.0.6" 919 | resolved "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz" 920 | integrity sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc= 921 | 922 | file-entry-cache@^6.0.1: 923 | version "6.0.1" 924 | resolved "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-6.0.1.tgz" 925 | integrity sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg== 926 | dependencies: 927 | flat-cache "^3.0.4" 928 | 929 | fill-range@^7.0.1: 930 | version "7.0.1" 931 | resolved "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz" 932 | integrity sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ== 933 | dependencies: 934 | to-regex-range "^5.0.1" 935 | 936 | finalhandler@~1.1.2: 937 | version "1.1.2" 938 | resolved "https://registry.npmjs.org/finalhandler/-/finalhandler-1.1.2.tgz" 939 | integrity sha512-aAWcW57uxVNrQZqFXjITpW3sIUQmHGG3qSb9mUah9MgMC4NeWhNOlNjXEYq3HjRAvL6arUviZGGJsBg6z0zsWA== 940 | dependencies: 941 | debug "2.6.9" 942 | encodeurl "~1.0.2" 943 | escape-html "~1.0.3" 944 | on-finished "~2.3.0" 945 | parseurl "~1.3.3" 946 | statuses "~1.5.0" 947 | unpipe "~1.0.0" 948 | 949 | find-up@^2.0.0, find-up@^2.1.0: 950 | version "2.1.0" 951 | resolved "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz" 952 | integrity sha1-RdG35QbHF93UgndaK3eSCjwMV6c= 953 | dependencies: 954 | locate-path "^2.0.0" 955 | 956 | flat-cache@^3.0.4: 957 | version "3.0.4" 958 | resolved "https://registry.npmjs.org/flat-cache/-/flat-cache-3.0.4.tgz" 959 | integrity sha512-dm9s5Pw7Jc0GvMYbshN6zchCA9RgQlzzEZX3vylR9IqFfS8XciblUXOKfW6SiuJ0e13eDYZoZV5wdrev7P3Nwg== 960 | dependencies: 961 | flatted "^3.1.0" 962 | rimraf "^3.0.2" 963 | 964 | flatted@^3.1.0: 965 | version "3.1.1" 966 | resolved "https://registry.npmjs.org/flatted/-/flatted-3.1.1.tgz" 967 | integrity sha512-zAoAQiudy+r5SvnSw3KJy5os/oRJYHzrzja/tBDqrZtNhUw8bt6y8OBzMWcjWr+8liV8Eb6yOhw8WZ7VFZ5ZzA== 968 | 969 | forwarded@0.2.0: 970 | version "0.2.0" 971 | resolved "https://registry.npmjs.org/forwarded/-/forwarded-0.2.0.tgz" 972 | integrity sha512-buRG0fpBtRHSTCOASe6hD258tEubFoRLb4ZNA6NxMVHNw2gOcwHo9wyablzMzOA5z9xA9L1KNjk/Nt6MT9aYow== 973 | 974 | fresh@0.5.2: 975 | version "0.5.2" 976 | resolved "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz" 977 | integrity sha1-PYyt2Q2XZWn6g1qx+OSyOhBWBac= 978 | 979 | fs.realpath@^1.0.0: 980 | version "1.0.0" 981 | resolved "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz" 982 | integrity sha1-FQStJSMVjKpA20onh8sBQRmU6k8= 983 | 984 | fsevents@~2.3.1: 985 | version "2.3.2" 986 | resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-2.3.2.tgz#8a526f78b8fdf4623b709e0b975c52c24c02fd1a" 987 | integrity sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA== 988 | 989 | function-bind@^1.1.1: 990 | version "1.1.1" 991 | resolved "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz" 992 | integrity sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A== 993 | 994 | functional-red-black-tree@^1.0.1: 995 | version "1.0.1" 996 | resolved "https://registry.npmjs.org/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz" 997 | integrity sha1-GwqzvVU7Kg1jmdKcDj6gslIHgyc= 998 | 999 | get-intrinsic@^1.0.2, get-intrinsic@^1.1.1: 1000 | version "1.1.1" 1001 | resolved "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.1.1.tgz" 1002 | integrity sha512-kWZrnVM42QCiEA2Ig1bG8zjoIMOgxWwYCEeNdwY6Tv/cOSeGpcoX4pXHfKUxNKVoArnrEr2e9srnAxxGIraS9Q== 1003 | dependencies: 1004 | function-bind "^1.1.1" 1005 | has "^1.0.3" 1006 | has-symbols "^1.0.1" 1007 | 1008 | get-stream@^4.1.0: 1009 | version "4.1.0" 1010 | resolved "https://registry.npmjs.org/get-stream/-/get-stream-4.1.0.tgz" 1011 | integrity sha512-GMat4EJ5161kIy2HevLlr4luNjBgvmj413KaQA7jt4V8B4RDsfpHk7WQ9GVqfYyyx8OS/L66Kox+rJRNklLK7w== 1012 | dependencies: 1013 | pump "^3.0.0" 1014 | 1015 | get-stream@^5.1.0: 1016 | version "5.2.0" 1017 | resolved "https://registry.npmjs.org/get-stream/-/get-stream-5.2.0.tgz" 1018 | integrity sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA== 1019 | dependencies: 1020 | pump "^3.0.0" 1021 | 1022 | glob-parent@^5.1.2, glob-parent@~5.1.0: 1023 | version "5.1.2" 1024 | resolved "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz" 1025 | integrity sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow== 1026 | dependencies: 1027 | is-glob "^4.0.1" 1028 | 1029 | glob@^7.1.3: 1030 | version "7.1.7" 1031 | resolved "https://registry.npmjs.org/glob/-/glob-7.1.7.tgz" 1032 | integrity sha512-OvD9ENzPLbegENnYP5UUfJIirTg4+XwMWGaQfQTY0JenxNvvIKP3U3/tAQSPIu/lHxXYSZmpXlUHeqAIdKzBLQ== 1033 | dependencies: 1034 | fs.realpath "^1.0.0" 1035 | inflight "^1.0.4" 1036 | inherits "2" 1037 | minimatch "^3.0.4" 1038 | once "^1.3.0" 1039 | path-is-absolute "^1.0.0" 1040 | 1041 | global-dirs@^2.0.1: 1042 | version "2.1.0" 1043 | resolved "https://registry.npmjs.org/global-dirs/-/global-dirs-2.1.0.tgz" 1044 | integrity sha512-MG6kdOUh/xBnyo9cJFeIKkLEc1AyFq42QTU4XiX51i2NEdxLxLWXIjEjmqKeSuKR7pAZjTqUVoT2b2huxVLgYQ== 1045 | dependencies: 1046 | ini "1.3.7" 1047 | 1048 | globals@^11.1.0: 1049 | version "11.12.0" 1050 | resolved "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz" 1051 | integrity sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA== 1052 | 1053 | globals@^13.6.0, globals@^13.9.0: 1054 | version "13.9.0" 1055 | resolved "https://registry.npmjs.org/globals/-/globals-13.9.0.tgz" 1056 | integrity sha512-74/FduwI/JaIrr1H8e71UbDE+5x7pIPs1C2rrwC52SszOo043CsWOZEMW7o2Y58xwm9b+0RBKDxY5n2sUpEFxA== 1057 | dependencies: 1058 | type-fest "^0.20.2" 1059 | 1060 | got@^9.6.0: 1061 | version "9.6.0" 1062 | resolved "https://registry.npmjs.org/got/-/got-9.6.0.tgz" 1063 | integrity sha512-R7eWptXuGYxwijs0eV+v3o6+XH1IqVK8dJOEecQfTmkncw9AV4dcw/Dhxi8MdlqPthxxpZyizMzyg8RTmEsG+Q== 1064 | dependencies: 1065 | "@sindresorhus/is" "^0.14.0" 1066 | "@szmarczak/http-timer" "^1.1.2" 1067 | cacheable-request "^6.0.0" 1068 | decompress-response "^3.3.0" 1069 | duplexer3 "^0.1.4" 1070 | get-stream "^4.1.0" 1071 | lowercase-keys "^1.0.1" 1072 | mimic-response "^1.0.1" 1073 | p-cancelable "^1.0.0" 1074 | to-readable-stream "^1.0.0" 1075 | url-parse-lax "^3.0.0" 1076 | 1077 | graceful-fs@^4.1.2: 1078 | version "4.2.6" 1079 | resolved "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.6.tgz" 1080 | integrity sha512-nTnJ528pbqxYanhpDYsi4Rd8MAeaBA67+RZ10CM1m3bTAVFEDcd5AuA4a6W5YkGZ1iNXHzZz8T6TBKLeBuNriQ== 1081 | 1082 | has-bigints@^1.0.1: 1083 | version "1.0.1" 1084 | resolved "https://registry.npmjs.org/has-bigints/-/has-bigints-1.0.1.tgz" 1085 | integrity sha512-LSBS2LjbNBTf6287JEbEzvJgftkF5qFkmCo9hDRpAzKhUOlJ+hx8dd4USs00SgsUNwc4617J9ki5YtEClM2ffA== 1086 | 1087 | has-flag@^3.0.0: 1088 | version "3.0.0" 1089 | resolved "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz" 1090 | integrity sha1-tdRU3CGZriJWmfNGfloH87lVuv0= 1091 | 1092 | has-flag@^4.0.0: 1093 | version "4.0.0" 1094 | resolved "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz" 1095 | integrity sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ== 1096 | 1097 | has-symbols@^1.0.1, has-symbols@^1.0.2: 1098 | version "1.0.2" 1099 | resolved "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.2.tgz" 1100 | integrity sha512-chXa79rL/UC2KlX17jo3vRGz0azaWEx5tGqZg5pO3NUyEJVB17dMruQlzCCOfUvElghKcm5194+BCRvi2Rv/Gw== 1101 | 1102 | has-yarn@^2.1.0: 1103 | version "2.1.0" 1104 | resolved "https://registry.npmjs.org/has-yarn/-/has-yarn-2.1.0.tgz" 1105 | integrity sha512-UqBRqi4ju7T+TqGNdqAO0PaSVGsDGJUBQvk9eUWNGRY1CFGDzYhLWoM7JQEemnlvVcv/YEmc2wNW8BC24EnUsw== 1106 | 1107 | has@^1.0.3: 1108 | version "1.0.3" 1109 | resolved "https://registry.npmjs.org/has/-/has-1.0.3.tgz" 1110 | integrity sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw== 1111 | dependencies: 1112 | function-bind "^1.1.1" 1113 | 1114 | hosted-git-info@^2.1.4: 1115 | version "2.8.9" 1116 | resolved "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.9.tgz" 1117 | integrity sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw== 1118 | 1119 | http-cache-semantics@^4.0.0: 1120 | version "4.1.0" 1121 | resolved "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-4.1.0.tgz" 1122 | integrity sha512-carPklcUh7ROWRK7Cv27RPtdhYhUsela/ue5/jKzjegVvXDqM2ILE9Q2BGn9JZJh1g87cp56su/FgQSzcWS8cQ== 1123 | 1124 | http-errors@1.7.2: 1125 | version "1.7.2" 1126 | resolved "https://registry.npmjs.org/http-errors/-/http-errors-1.7.2.tgz" 1127 | integrity sha512-uUQBt3H/cSIVfch6i1EuPNy/YsRSOUBXTVfZ+yR7Zjez3qjBz6i9+i4zjNaoqcoFVI4lQJ5plg63TvGfRSDCRg== 1128 | dependencies: 1129 | depd "~1.1.2" 1130 | inherits "2.0.3" 1131 | setprototypeof "1.1.1" 1132 | statuses ">= 1.5.0 < 2" 1133 | toidentifier "1.0.0" 1134 | 1135 | http-errors@~1.7.2: 1136 | version "1.7.3" 1137 | resolved "https://registry.npmjs.org/http-errors/-/http-errors-1.7.3.tgz" 1138 | integrity sha512-ZTTX0MWrsQ2ZAhA1cejAwDLycFsd7I7nVtnkT3Ol0aqodaKW+0CTZDQ1uBv5whptCnc8e8HeRRJxRs0kmm/Qfw== 1139 | dependencies: 1140 | depd "~1.1.2" 1141 | inherits "2.0.4" 1142 | setprototypeof "1.1.1" 1143 | statuses ">= 1.5.0 < 2" 1144 | toidentifier "1.0.0" 1145 | 1146 | iconv-lite@0.4.24: 1147 | version "0.4.24" 1148 | resolved "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz" 1149 | integrity sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA== 1150 | dependencies: 1151 | safer-buffer ">= 2.1.2 < 3" 1152 | 1153 | ignore-by-default@^1.0.1: 1154 | version "1.0.1" 1155 | resolved "https://registry.npmjs.org/ignore-by-default/-/ignore-by-default-1.0.1.tgz" 1156 | integrity sha1-SMptcvbGo68Aqa1K5odr44ieKwk= 1157 | 1158 | ignore@^4.0.6: 1159 | version "4.0.6" 1160 | resolved "https://registry.npmjs.org/ignore/-/ignore-4.0.6.tgz" 1161 | integrity sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg== 1162 | 1163 | import-fresh@^3.0.0, import-fresh@^3.2.1: 1164 | version "3.3.0" 1165 | resolved "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz" 1166 | integrity sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw== 1167 | dependencies: 1168 | parent-module "^1.0.0" 1169 | resolve-from "^4.0.0" 1170 | 1171 | import-lazy@^2.1.0: 1172 | version "2.1.0" 1173 | resolved "https://registry.npmjs.org/import-lazy/-/import-lazy-2.1.0.tgz" 1174 | integrity sha1-BWmOPUXIjo1+nZLLBYTnfwlvPkM= 1175 | 1176 | imurmurhash@^0.1.4: 1177 | version "0.1.4" 1178 | resolved "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz" 1179 | integrity sha1-khi5srkoojixPcT7a21XbyMUU+o= 1180 | 1181 | inflight@^1.0.4: 1182 | version "1.0.6" 1183 | resolved "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz" 1184 | integrity sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk= 1185 | dependencies: 1186 | once "^1.3.0" 1187 | wrappy "1" 1188 | 1189 | inherits@2, inherits@2.0.4: 1190 | version "2.0.4" 1191 | resolved "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz" 1192 | integrity sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ== 1193 | 1194 | inherits@2.0.3: 1195 | version "2.0.3" 1196 | resolved "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz" 1197 | integrity sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4= 1198 | 1199 | ini@1.3.7: 1200 | version "1.3.7" 1201 | resolved "https://registry.npmjs.org/ini/-/ini-1.3.7.tgz" 1202 | integrity sha512-iKpRpXP+CrP2jyrxvg1kMUpXDyRUFDWurxbnVT1vQPx+Wz9uCYsMIqYuSBLV+PAaZG/d7kRLKRFc9oDMsH+mFQ== 1203 | 1204 | ini@~1.3.0: 1205 | version "1.3.8" 1206 | resolved "https://registry.npmjs.org/ini/-/ini-1.3.8.tgz" 1207 | integrity sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew== 1208 | 1209 | ipaddr.js@1.9.1: 1210 | version "1.9.1" 1211 | resolved "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.9.1.tgz" 1212 | integrity sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g== 1213 | 1214 | is-arrayish@^0.2.1: 1215 | version "0.2.1" 1216 | resolved "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz" 1217 | integrity sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0= 1218 | 1219 | is-bigint@^1.0.1: 1220 | version "1.0.2" 1221 | resolved "https://registry.npmjs.org/is-bigint/-/is-bigint-1.0.2.tgz" 1222 | integrity sha512-0JV5+SOCQkIdzjBK9buARcV804Ddu7A0Qet6sHi3FimE9ne6m4BGQZfRn+NZiXbBk4F4XmHfDZIipLj9pX8dSA== 1223 | 1224 | is-binary-path@~2.1.0: 1225 | version "2.1.0" 1226 | resolved "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz" 1227 | integrity sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw== 1228 | dependencies: 1229 | binary-extensions "^2.0.0" 1230 | 1231 | is-boolean-object@^1.1.0: 1232 | version "1.1.1" 1233 | resolved "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.1.1.tgz" 1234 | integrity sha512-bXdQWkECBUIAcCkeH1unwJLIpZYaa5VvuygSyS/c2lf719mTKZDU5UdDRlpd01UjADgmW8RfqaP+mRaVPdr/Ng== 1235 | dependencies: 1236 | call-bind "^1.0.2" 1237 | 1238 | is-callable@^1.1.4, is-callable@^1.2.3: 1239 | version "1.2.3" 1240 | resolved "https://registry.npmjs.org/is-callable/-/is-callable-1.2.3.tgz" 1241 | integrity sha512-J1DcMe8UYTBSrKezuIUTUwjXsho29693unXM2YhJUTR2txK/eG47bvNa/wipPFmZFgr/N6f1GA66dv0mEyTIyQ== 1242 | 1243 | is-ci@^2.0.0: 1244 | version "2.0.0" 1245 | resolved "https://registry.npmjs.org/is-ci/-/is-ci-2.0.0.tgz" 1246 | integrity sha512-YfJT7rkpQB0updsdHLGWrvhBJfcfzNNawYDNIyQXJz0IViGf75O8EBPKSdvw2rF+LGCsX4FZ8tcr3b19LcZq4w== 1247 | dependencies: 1248 | ci-info "^2.0.0" 1249 | 1250 | is-core-module@^2.2.0, is-core-module@^2.4.0: 1251 | version "2.4.0" 1252 | resolved "https://registry.npmjs.org/is-core-module/-/is-core-module-2.4.0.tgz" 1253 | integrity sha512-6A2fkfq1rfeQZjxrZJGerpLCTHRNEBiSgnu0+obeJpEPZRUooHgsizvzv0ZjJwOz3iWIHdJtVWJ/tmPr3D21/A== 1254 | dependencies: 1255 | has "^1.0.3" 1256 | 1257 | is-date-object@^1.0.1: 1258 | version "1.0.4" 1259 | resolved "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.4.tgz" 1260 | integrity sha512-/b4ZVsG7Z5XVtIxs/h9W8nvfLgSAyKYdtGWQLbqy6jA1icmgjf8WCoTKgeS4wy5tYaPePouzFMANbnj94c2Z+A== 1261 | 1262 | is-extglob@^2.1.1: 1263 | version "2.1.1" 1264 | resolved "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz" 1265 | integrity sha1-qIwCU1eR8C7TfHahueqXc8gz+MI= 1266 | 1267 | is-fullwidth-code-point@^2.0.0: 1268 | version "2.0.0" 1269 | resolved "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz" 1270 | integrity sha1-o7MKXE8ZkYMWeqq5O+764937ZU8= 1271 | 1272 | is-fullwidth-code-point@^3.0.0: 1273 | version "3.0.0" 1274 | resolved "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz" 1275 | integrity sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg== 1276 | 1277 | is-glob@^4.0.0, is-glob@^4.0.1, is-glob@~4.0.1: 1278 | version "4.0.1" 1279 | resolved "https://registry.npmjs.org/is-glob/-/is-glob-4.0.1.tgz" 1280 | integrity sha512-5G0tKtBTFImOqDnLB2hG6Bp2qcKEFduo4tZu9MT/H6NQv/ghhy30o55ufafxJ/LdH79LLs2Kfrn85TLKyA7BUg== 1281 | dependencies: 1282 | is-extglob "^2.1.1" 1283 | 1284 | is-installed-globally@^0.3.1: 1285 | version "0.3.2" 1286 | resolved "https://registry.npmjs.org/is-installed-globally/-/is-installed-globally-0.3.2.tgz" 1287 | integrity sha512-wZ8x1js7Ia0kecP/CHM/3ABkAmujX7WPvQk6uu3Fly/Mk44pySulQpnHG46OMjHGXApINnV4QhY3SWnECO2z5g== 1288 | dependencies: 1289 | global-dirs "^2.0.1" 1290 | is-path-inside "^3.0.1" 1291 | 1292 | is-negative-zero@^2.0.1: 1293 | version "2.0.1" 1294 | resolved "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.1.tgz" 1295 | integrity sha512-2z6JzQvZRa9A2Y7xC6dQQm4FSTSTNWjKIYYTt4246eMTJmIo0Q+ZyOsU66X8lxK1AbB92dFeglPLrhwpeRKO6w== 1296 | 1297 | is-npm@^4.0.0: 1298 | version "4.0.0" 1299 | resolved "https://registry.npmjs.org/is-npm/-/is-npm-4.0.0.tgz" 1300 | integrity sha512-96ECIfh9xtDDlPylNPXhzjsykHsMJZ18ASpaWzQyBr4YRTcVjUvzaHayDAES2oU/3KpljhHUjtSRNiDwi0F0ig== 1301 | 1302 | is-number-object@^1.0.4: 1303 | version "1.0.5" 1304 | resolved "https://registry.npmjs.org/is-number-object/-/is-number-object-1.0.5.tgz" 1305 | integrity sha512-RU0lI/n95pMoUKu9v1BZP5MBcZuNSVJkMkAG2dJqC4z2GlkGUNeH68SuHuBKBD/XFe+LHZ+f9BKkLET60Niedw== 1306 | 1307 | is-number@^7.0.0: 1308 | version "7.0.0" 1309 | resolved "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz" 1310 | integrity sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng== 1311 | 1312 | is-obj@^2.0.0: 1313 | version "2.0.0" 1314 | resolved "https://registry.npmjs.org/is-obj/-/is-obj-2.0.0.tgz" 1315 | integrity sha512-drqDG3cbczxxEJRoOXcOjtdp1J/lyp1mNn0xaznRs8+muBhgQcrnbspox5X5fOw0HnMnbfDzvnEMEtqDEJEo8w== 1316 | 1317 | is-path-inside@^3.0.1: 1318 | version "3.0.3" 1319 | resolved "https://registry.npmjs.org/is-path-inside/-/is-path-inside-3.0.3.tgz" 1320 | integrity sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ== 1321 | 1322 | is-regex@^1.1.3: 1323 | version "1.1.3" 1324 | resolved "https://registry.npmjs.org/is-regex/-/is-regex-1.1.3.tgz" 1325 | integrity sha512-qSVXFz28HM7y+IWX6vLCsexdlvzT1PJNFSBuaQLQ5o0IEw8UDYW6/2+eCMVyIsbM8CNLX2a/QWmSpyxYEHY7CQ== 1326 | dependencies: 1327 | call-bind "^1.0.2" 1328 | has-symbols "^1.0.2" 1329 | 1330 | is-string@^1.0.5, is-string@^1.0.6: 1331 | version "1.0.6" 1332 | resolved "https://registry.npmjs.org/is-string/-/is-string-1.0.6.tgz" 1333 | integrity sha512-2gdzbKUuqtQ3lYNrUTQYoClPhm7oQu4UdpSZMp1/DGgkHBT8E2Z1l0yMdb6D4zNAxwDiMv8MdulKROJGNl0Q0w== 1334 | 1335 | is-symbol@^1.0.2, is-symbol@^1.0.3: 1336 | version "1.0.4" 1337 | resolved "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.4.tgz" 1338 | integrity sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg== 1339 | dependencies: 1340 | has-symbols "^1.0.2" 1341 | 1342 | is-typedarray@^1.0.0: 1343 | version "1.0.0" 1344 | resolved "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz" 1345 | integrity sha1-5HnICFjfDBsR3dppQPlgEfzaSpo= 1346 | 1347 | is-yarn-global@^0.3.0: 1348 | version "0.3.0" 1349 | resolved "https://registry.npmjs.org/is-yarn-global/-/is-yarn-global-0.3.0.tgz" 1350 | integrity sha512-VjSeb/lHmkoyd8ryPVIKvOCn4D1koMqY+vqyjjUfc3xyKtP4dYOxM44sZrnqQSzSds3xyOrUTLTC9LVCVgLngw== 1351 | 1352 | isexe@^2.0.0: 1353 | version "2.0.0" 1354 | resolved "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz" 1355 | integrity sha1-6PvzdNxVb/iUehDcsFctYz8s+hA= 1356 | 1357 | js-tokens@^4.0.0: 1358 | version "4.0.0" 1359 | resolved "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz" 1360 | integrity sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ== 1361 | 1362 | js-yaml@^3.13.1: 1363 | version "3.14.1" 1364 | resolved "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz" 1365 | integrity sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g== 1366 | dependencies: 1367 | argparse "^1.0.7" 1368 | esprima "^4.0.0" 1369 | 1370 | jsesc@^2.5.1: 1371 | version "2.5.2" 1372 | resolved "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz" 1373 | integrity sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA== 1374 | 1375 | json-buffer@3.0.0: 1376 | version "3.0.0" 1377 | resolved "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.0.tgz" 1378 | integrity sha1-Wx85evx11ne96Lz8Dkfh+aPZqJg= 1379 | 1380 | json-parse-better-errors@^1.0.1: 1381 | version "1.0.2" 1382 | resolved "https://registry.npmjs.org/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz" 1383 | integrity sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw== 1384 | 1385 | json-schema-traverse@^0.4.1: 1386 | version "0.4.1" 1387 | resolved "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz" 1388 | integrity sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg== 1389 | 1390 | json-schema-traverse@^1.0.0: 1391 | version "1.0.0" 1392 | resolved "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz" 1393 | integrity sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug== 1394 | 1395 | json-stable-stringify-without-jsonify@^1.0.1: 1396 | version "1.0.1" 1397 | resolved "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz" 1398 | integrity sha1-nbe1lJatPzz+8wp1FC0tkwrXJlE= 1399 | 1400 | json5@^1.0.1: 1401 | version "1.0.1" 1402 | resolved "https://registry.npmjs.org/json5/-/json5-1.0.1.tgz" 1403 | integrity sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow== 1404 | dependencies: 1405 | minimist "^1.2.0" 1406 | 1407 | keyv@^3.0.0: 1408 | version "3.1.0" 1409 | resolved "https://registry.npmjs.org/keyv/-/keyv-3.1.0.tgz" 1410 | integrity sha512-9ykJ/46SN/9KPM/sichzQ7OvXyGDYKGTaDlKMGCAlg2UK8KRy4jb0d8sFc+0Tt0YYnThq8X2RZgCg74RPxgcVA== 1411 | dependencies: 1412 | json-buffer "3.0.0" 1413 | 1414 | latest-version@^5.0.0: 1415 | version "5.1.0" 1416 | resolved "https://registry.npmjs.org/latest-version/-/latest-version-5.1.0.tgz" 1417 | integrity sha512-weT+r0kTkRQdCdYCNtkMwWXQTMEswKrFBkm4ckQOMVhhqhIMI1UT2hMj+1iigIhgSZm5gTmrRXBNoGUgaTY1xA== 1418 | dependencies: 1419 | package-json "^6.3.0" 1420 | 1421 | levn@^0.4.1: 1422 | version "0.4.1" 1423 | resolved "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz" 1424 | integrity sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ== 1425 | dependencies: 1426 | prelude-ls "^1.2.1" 1427 | type-check "~0.4.0" 1428 | 1429 | load-json-file@^4.0.0: 1430 | version "4.0.0" 1431 | resolved "https://registry.npmjs.org/load-json-file/-/load-json-file-4.0.0.tgz" 1432 | integrity sha1-L19Fq5HjMhYjT9U62rZo607AmTs= 1433 | dependencies: 1434 | graceful-fs "^4.1.2" 1435 | parse-json "^4.0.0" 1436 | pify "^3.0.0" 1437 | strip-bom "^3.0.0" 1438 | 1439 | locate-path@^2.0.0: 1440 | version "2.0.0" 1441 | resolved "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz" 1442 | integrity sha1-K1aLJl7slExtnA3pw9u7ygNUzY4= 1443 | dependencies: 1444 | p-locate "^2.0.0" 1445 | path-exists "^3.0.0" 1446 | 1447 | lodash.clonedeep@^4.5.0: 1448 | version "4.5.0" 1449 | resolved "https://registry.npmjs.org/lodash.clonedeep/-/lodash.clonedeep-4.5.0.tgz" 1450 | integrity sha1-4j8/nE+Pvd6HJSnBBxhXoIblzO8= 1451 | 1452 | lodash.merge@^4.6.2: 1453 | version "4.6.2" 1454 | resolved "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz" 1455 | integrity sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ== 1456 | 1457 | lodash.truncate@^4.4.2: 1458 | version "4.4.2" 1459 | resolved "https://registry.npmjs.org/lodash.truncate/-/lodash.truncate-4.4.2.tgz" 1460 | integrity sha1-WjUNoLERO4N+z//VgSy+WNbq4ZM= 1461 | 1462 | lowercase-keys@^1.0.0, lowercase-keys@^1.0.1: 1463 | version "1.0.1" 1464 | resolved "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-1.0.1.tgz" 1465 | integrity sha512-G2Lj61tXDnVFFOi8VZds+SoQjtQC3dgokKdDG2mTm1tx4m50NUHBOZSBwQQHyy0V12A0JTG4icfZQH+xPyh8VA== 1466 | 1467 | lowercase-keys@^2.0.0: 1468 | version "2.0.0" 1469 | resolved "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-2.0.0.tgz" 1470 | integrity sha512-tqNXrS78oMOE73NMxK4EMLQsQowWf8jKooH9g7xPavRT706R6bkQJ6DY2Te7QukaZsulxa30wQ7bk0pm4XiHmA== 1471 | 1472 | lru-cache@^6.0.0: 1473 | version "6.0.0" 1474 | resolved "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz" 1475 | integrity sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA== 1476 | dependencies: 1477 | yallist "^4.0.0" 1478 | 1479 | make-dir@^3.0.0: 1480 | version "3.1.0" 1481 | resolved "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz" 1482 | integrity sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw== 1483 | dependencies: 1484 | semver "^6.0.0" 1485 | 1486 | media-typer@0.3.0: 1487 | version "0.3.0" 1488 | resolved "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz" 1489 | integrity sha1-hxDXrwqmJvj/+hzgAWhUUmMlV0g= 1490 | 1491 | merge-descriptors@1.0.1: 1492 | version "1.0.1" 1493 | resolved "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.1.tgz" 1494 | integrity sha1-sAqqVW3YtEVoFQ7J0blT8/kMu2E= 1495 | 1496 | methods@~1.1.2: 1497 | version "1.1.2" 1498 | resolved "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz" 1499 | integrity sha1-VSmk1nZUE07cxSZmVoNbD4Ua/O4= 1500 | 1501 | mime-db@1.48.0: 1502 | version "1.48.0" 1503 | resolved "https://registry.npmjs.org/mime-db/-/mime-db-1.48.0.tgz" 1504 | integrity sha512-FM3QwxV+TnZYQ2aRqhlKBMHxk10lTbMt3bBkMAp54ddrNeVSfcQYOOKuGuy3Ddrm38I04If834fOUSq1yzslJQ== 1505 | 1506 | mime-types@~2.1.24: 1507 | version "2.1.31" 1508 | resolved "https://registry.npmjs.org/mime-types/-/mime-types-2.1.31.tgz" 1509 | integrity sha512-XGZnNzm3QvgKxa8dpzyhFTHmpP3l5YNusmne07VUOXxou9CqUqYa/HBy124RqtVh/O2pECas/MOcsDgpilPOPg== 1510 | dependencies: 1511 | mime-db "1.48.0" 1512 | 1513 | mime@1.6.0: 1514 | version "1.6.0" 1515 | resolved "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz" 1516 | integrity sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg== 1517 | 1518 | mimic-response@^1.0.0, mimic-response@^1.0.1: 1519 | version "1.0.1" 1520 | resolved "https://registry.npmjs.org/mimic-response/-/mimic-response-1.0.1.tgz" 1521 | integrity sha512-j5EctnkH7amfV/q5Hgmoal1g2QHFJRraOtmx0JpIqkxhBhI/lJSl1nMpQ45hVarwNETOoWEimndZ4QK0RHxuxQ== 1522 | 1523 | minimatch@^3.0.4: 1524 | version "3.0.4" 1525 | resolved "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz" 1526 | integrity sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA== 1527 | dependencies: 1528 | brace-expansion "^1.1.7" 1529 | 1530 | minimist@^1.2.0: 1531 | version "1.2.5" 1532 | resolved "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz" 1533 | integrity sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw== 1534 | 1535 | ms@2.0.0: 1536 | version "2.0.0" 1537 | resolved "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz" 1538 | integrity sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g= 1539 | 1540 | ms@2.1.1: 1541 | version "2.1.1" 1542 | resolved "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz" 1543 | integrity sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg== 1544 | 1545 | ms@2.1.2: 1546 | version "2.1.2" 1547 | resolved "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz" 1548 | integrity sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w== 1549 | 1550 | ms@^2.1.1: 1551 | version "2.1.3" 1552 | resolved "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz" 1553 | integrity sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA== 1554 | 1555 | natural-compare@^1.4.0: 1556 | version "1.4.0" 1557 | resolved "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz" 1558 | integrity sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc= 1559 | 1560 | negotiator@0.6.2: 1561 | version "0.6.2" 1562 | resolved "https://registry.npmjs.org/negotiator/-/negotiator-0.6.2.tgz" 1563 | integrity sha512-hZXc7K2e+PgeI1eDBe/10Ard4ekbfrrqG8Ep+8Jmf4JID2bNg7NvCPOZN+kfF574pFQI7mum2AUqDidoKqcTOw== 1564 | 1565 | nodemon@^2.0.7: 1566 | version "2.0.7" 1567 | resolved "https://registry.npmjs.org/nodemon/-/nodemon-2.0.7.tgz" 1568 | integrity sha512-XHzK69Awgnec9UzHr1kc8EomQh4sjTQ8oRf8TsGrSmHDx9/UmiGG9E/mM3BuTfNeFwdNBvrqQq/RHL0xIeyFOA== 1569 | dependencies: 1570 | chokidar "^3.2.2" 1571 | debug "^3.2.6" 1572 | ignore-by-default "^1.0.1" 1573 | minimatch "^3.0.4" 1574 | pstree.remy "^1.1.7" 1575 | semver "^5.7.1" 1576 | supports-color "^5.5.0" 1577 | touch "^3.1.0" 1578 | undefsafe "^2.0.3" 1579 | update-notifier "^4.1.0" 1580 | 1581 | nopt@~1.0.10: 1582 | version "1.0.10" 1583 | resolved "https://registry.npmjs.org/nopt/-/nopt-1.0.10.tgz" 1584 | integrity sha1-bd0hvSoxQXuScn3Vhfim83YI6+4= 1585 | dependencies: 1586 | abbrev "1" 1587 | 1588 | normalize-package-data@^2.3.2: 1589 | version "2.5.0" 1590 | resolved "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz" 1591 | integrity sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA== 1592 | dependencies: 1593 | hosted-git-info "^2.1.4" 1594 | resolve "^1.10.0" 1595 | semver "2 || 3 || 4 || 5" 1596 | validate-npm-package-license "^3.0.1" 1597 | 1598 | normalize-path@^3.0.0, normalize-path@~3.0.0: 1599 | version "3.0.0" 1600 | resolved "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz" 1601 | integrity sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA== 1602 | 1603 | normalize-url@^4.1.0: 1604 | version "4.5.1" 1605 | resolved "https://registry.npmjs.org/normalize-url/-/normalize-url-4.5.1.tgz" 1606 | integrity sha512-9UZCFRHQdNrfTpGg8+1INIg93B6zE0aXMVFkw1WFwvO4SlZywU6aLg5Of0Ap/PgcbSw4LNxvMWXMeugwMCX0AA== 1607 | 1608 | object-assign@^4: 1609 | version "4.1.1" 1610 | resolved "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz" 1611 | integrity sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM= 1612 | 1613 | object-inspect@^1.10.3: 1614 | version "1.10.3" 1615 | resolved "https://registry.npmjs.org/object-inspect/-/object-inspect-1.10.3.tgz" 1616 | integrity sha512-e5mCJlSH7poANfC8z8S9s9S2IN5/4Zb3aZ33f5s8YqoazCFzNLloLU8r5VCG+G7WoqLvAAZoVMcy3tp/3X0Plw== 1617 | 1618 | object-keys@^1.0.12, object-keys@^1.1.1: 1619 | version "1.1.1" 1620 | resolved "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz" 1621 | integrity sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA== 1622 | 1623 | object.assign@^4.1.2: 1624 | version "4.1.2" 1625 | resolved "https://registry.npmjs.org/object.assign/-/object.assign-4.1.2.tgz" 1626 | integrity sha512-ixT2L5THXsApyiUPYKmW+2EHpXXe5Ii3M+f4e+aJFAHao5amFRW6J0OO6c/LU8Be47utCx2GL89hxGB6XSmKuQ== 1627 | dependencies: 1628 | call-bind "^1.0.0" 1629 | define-properties "^1.1.3" 1630 | has-symbols "^1.0.1" 1631 | object-keys "^1.1.1" 1632 | 1633 | object.entries@^1.1.2: 1634 | version "1.1.4" 1635 | resolved "https://registry.npmjs.org/object.entries/-/object.entries-1.1.4.tgz" 1636 | integrity sha512-h4LWKWE+wKQGhtMjZEBud7uLGhqyLwj8fpHOarZhD2uY3C9cRtk57VQ89ke3moByLXMedqs3XCHzyb4AmA2DjA== 1637 | dependencies: 1638 | call-bind "^1.0.2" 1639 | define-properties "^1.1.3" 1640 | es-abstract "^1.18.2" 1641 | 1642 | object.values@^1.1.3: 1643 | version "1.1.4" 1644 | resolved "https://registry.npmjs.org/object.values/-/object.values-1.1.4.tgz" 1645 | integrity sha512-TnGo7j4XSnKQoK3MfvkzqKCi0nVe/D9I9IjwTNYdb/fxYHpjrluHVOgw0AF6jrRFGMPHdfuidR09tIDiIvnaSg== 1646 | dependencies: 1647 | call-bind "^1.0.2" 1648 | define-properties "^1.1.3" 1649 | es-abstract "^1.18.2" 1650 | 1651 | on-finished@~2.3.0: 1652 | version "2.3.0" 1653 | resolved "https://registry.npmjs.org/on-finished/-/on-finished-2.3.0.tgz" 1654 | integrity sha1-IPEzZIGwg811M3mSoWlxqi2QaUc= 1655 | dependencies: 1656 | ee-first "1.1.1" 1657 | 1658 | once@^1.3.0, once@^1.3.1, once@^1.4.0: 1659 | version "1.4.0" 1660 | resolved "https://registry.npmjs.org/once/-/once-1.4.0.tgz" 1661 | integrity sha1-WDsap3WWHUsROsF9nFC6753Xa9E= 1662 | dependencies: 1663 | wrappy "1" 1664 | 1665 | optionator@^0.9.1: 1666 | version "0.9.1" 1667 | resolved "https://registry.npmjs.org/optionator/-/optionator-0.9.1.tgz" 1668 | integrity sha512-74RlY5FCnhq4jRxVUPKDaRwrVNXMqsGsiW6AJw4XK8hmtm10wC0ypZBLw5IIp85NZMr91+qd1RvvENwg7jjRFw== 1669 | dependencies: 1670 | deep-is "^0.1.3" 1671 | fast-levenshtein "^2.0.6" 1672 | levn "^0.4.1" 1673 | prelude-ls "^1.2.1" 1674 | type-check "^0.4.0" 1675 | word-wrap "^1.2.3" 1676 | 1677 | p-cancelable@^1.0.0: 1678 | version "1.1.0" 1679 | resolved "https://registry.npmjs.org/p-cancelable/-/p-cancelable-1.1.0.tgz" 1680 | integrity sha512-s73XxOZ4zpt1edZYZzvhqFa6uvQc1vwUa0K0BdtIZgQMAJj9IbebH+JkgKZc9h+B05PKHLOTl4ajG1BmNrVZlw== 1681 | 1682 | p-limit@^1.1.0: 1683 | version "1.3.0" 1684 | resolved "https://registry.npmjs.org/p-limit/-/p-limit-1.3.0.tgz" 1685 | integrity sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q== 1686 | dependencies: 1687 | p-try "^1.0.0" 1688 | 1689 | p-locate@^2.0.0: 1690 | version "2.0.0" 1691 | resolved "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz" 1692 | integrity sha1-IKAQOyIqcMj9OcwuWAaA893l7EM= 1693 | dependencies: 1694 | p-limit "^1.1.0" 1695 | 1696 | p-try@^1.0.0: 1697 | version "1.0.0" 1698 | resolved "https://registry.npmjs.org/p-try/-/p-try-1.0.0.tgz" 1699 | integrity sha1-y8ec26+P1CKOE/Yh8rGiN8GyB7M= 1700 | 1701 | package-json@^6.3.0: 1702 | version "6.5.0" 1703 | resolved "https://registry.npmjs.org/package-json/-/package-json-6.5.0.tgz" 1704 | integrity sha512-k3bdm2n25tkyxcjSKzB5x8kfVxlMdgsbPr0GkZcwHsLpba6cBjqCt1KlcChKEvxHIcTB1FVMuwoijZ26xex5MQ== 1705 | dependencies: 1706 | got "^9.6.0" 1707 | registry-auth-token "^4.0.0" 1708 | registry-url "^5.0.0" 1709 | semver "^6.2.0" 1710 | 1711 | parent-module@^1.0.0: 1712 | version "1.0.1" 1713 | resolved "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz" 1714 | integrity sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g== 1715 | dependencies: 1716 | callsites "^3.0.0" 1717 | 1718 | parse-json@^4.0.0: 1719 | version "4.0.0" 1720 | resolved "https://registry.npmjs.org/parse-json/-/parse-json-4.0.0.tgz" 1721 | integrity sha1-vjX1Qlvh9/bHRxhPmKeIy5lHfuA= 1722 | dependencies: 1723 | error-ex "^1.3.1" 1724 | json-parse-better-errors "^1.0.1" 1725 | 1726 | parseurl@~1.3.3: 1727 | version "1.3.3" 1728 | resolved "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz" 1729 | integrity sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ== 1730 | 1731 | path-exists@^3.0.0: 1732 | version "3.0.0" 1733 | resolved "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz" 1734 | integrity sha1-zg6+ql94yxiSXqfYENe1mwEP1RU= 1735 | 1736 | path-is-absolute@^1.0.0: 1737 | version "1.0.1" 1738 | resolved "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz" 1739 | integrity sha1-F0uSaHNVNP+8es5r9TpanhtcX18= 1740 | 1741 | path-key@^3.1.0: 1742 | version "3.1.1" 1743 | resolved "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz" 1744 | integrity sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q== 1745 | 1746 | path-parse@^1.0.6: 1747 | version "1.0.7" 1748 | resolved "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz" 1749 | integrity sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw== 1750 | 1751 | path-to-regexp@0.1.7: 1752 | version "0.1.7" 1753 | resolved "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.7.tgz" 1754 | integrity sha1-32BBeABfUi8V60SQ5yR6G/qmf4w= 1755 | 1756 | path-type@^3.0.0: 1757 | version "3.0.0" 1758 | resolved "https://registry.npmjs.org/path-type/-/path-type-3.0.0.tgz" 1759 | integrity sha512-T2ZUsdZFHgA3u4e5PfPbjd7HDDpxPnQb5jN0SrDsjNSuVXHJqtwTnWqG0B1jZrgmJ/7lj1EmVIByWt1gxGkWvg== 1760 | dependencies: 1761 | pify "^3.0.0" 1762 | 1763 | picomatch@^2.0.4, picomatch@^2.2.1: 1764 | version "2.3.0" 1765 | resolved "https://registry.npmjs.org/picomatch/-/picomatch-2.3.0.tgz" 1766 | integrity sha512-lY1Q/PiJGC2zOv/z391WOTD+Z02bCgsFfvxoXXf6h7kv9o+WmsmzYqrAwY63sNgOxE4xEdq0WyUnXfKeBrSvYw== 1767 | 1768 | pify@^3.0.0: 1769 | version "3.0.0" 1770 | resolved "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz" 1771 | integrity sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY= 1772 | 1773 | pkg-dir@^2.0.0: 1774 | version "2.0.0" 1775 | resolved "https://registry.npmjs.org/pkg-dir/-/pkg-dir-2.0.0.tgz" 1776 | integrity sha1-9tXREJ4Z1j7fQo4L1X4Sd3YVM0s= 1777 | dependencies: 1778 | find-up "^2.1.0" 1779 | 1780 | pkg-up@^2.0.0: 1781 | version "2.0.0" 1782 | resolved "https://registry.npmjs.org/pkg-up/-/pkg-up-2.0.0.tgz" 1783 | integrity sha1-yBmscoBZpGHKscOImivjxJoATX8= 1784 | dependencies: 1785 | find-up "^2.1.0" 1786 | 1787 | prelude-ls@^1.2.1: 1788 | version "1.2.1" 1789 | resolved "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz" 1790 | integrity sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g== 1791 | 1792 | prepend-http@^2.0.0: 1793 | version "2.0.0" 1794 | resolved "https://registry.npmjs.org/prepend-http/-/prepend-http-2.0.0.tgz" 1795 | integrity sha1-6SQ0v6XqjBn0HN/UAddBo8gZ2Jc= 1796 | 1797 | prettier-linter-helpers@^1.0.0: 1798 | version "1.0.0" 1799 | resolved "https://registry.npmjs.org/prettier-linter-helpers/-/prettier-linter-helpers-1.0.0.tgz" 1800 | integrity sha512-GbK2cP9nraSSUF9N2XwUwqfzlAFlMNYYl+ShE/V+H8a9uNl/oUqB1w2EL54Jh0OlyRSd8RfWYJ3coVS4TROP2w== 1801 | dependencies: 1802 | fast-diff "^1.1.2" 1803 | 1804 | prettier@^2.3.1: 1805 | version "2.3.1" 1806 | resolved "https://registry.npmjs.org/prettier/-/prettier-2.3.1.tgz" 1807 | integrity sha512-p+vNbgpLjif/+D+DwAZAbndtRrR0md0MwfmOVN9N+2RgyACMT+7tfaRnT+WDPkqnuVwleyuBIG2XBxKDme3hPA== 1808 | 1809 | progress@^2.0.0: 1810 | version "2.0.3" 1811 | resolved "https://registry.npmjs.org/progress/-/progress-2.0.3.tgz" 1812 | integrity sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA== 1813 | 1814 | proxy-addr@~2.0.5: 1815 | version "2.0.7" 1816 | resolved "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.7.tgz" 1817 | integrity sha512-llQsMLSUDUPT44jdrU/O37qlnifitDP+ZwrmmZcoSKyLKvtZxpyV0n2/bD/N4tBAAZ/gJEdZU7KMraoK1+XYAg== 1818 | dependencies: 1819 | forwarded "0.2.0" 1820 | ipaddr.js "1.9.1" 1821 | 1822 | pstree.remy@^1.1.7: 1823 | version "1.1.8" 1824 | resolved "https://registry.npmjs.org/pstree.remy/-/pstree.remy-1.1.8.tgz" 1825 | integrity sha512-77DZwxQmxKnu3aR542U+X8FypNzbfJ+C5XQDk3uWjWxn6151aIMGthWYRXTqT1E5oJvg+ljaa2OJi+VfvCOQ8w== 1826 | 1827 | pump@^3.0.0: 1828 | version "3.0.0" 1829 | resolved "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz" 1830 | integrity sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww== 1831 | dependencies: 1832 | end-of-stream "^1.1.0" 1833 | once "^1.3.1" 1834 | 1835 | punycode@^2.1.0: 1836 | version "2.1.1" 1837 | resolved "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz" 1838 | integrity sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A== 1839 | 1840 | pupa@^2.0.1: 1841 | version "2.1.1" 1842 | resolved "https://registry.npmjs.org/pupa/-/pupa-2.1.1.tgz" 1843 | integrity sha512-l1jNAspIBSFqbT+y+5FosojNpVpF94nlI+wDUpqP9enwOTfHx9f0gh5nB96vl+6yTpsJsypeNrwfzPrKuHB41A== 1844 | dependencies: 1845 | escape-goat "^2.0.0" 1846 | 1847 | qs@6.7.0: 1848 | version "6.7.0" 1849 | resolved "https://registry.npmjs.org/qs/-/qs-6.7.0.tgz" 1850 | integrity sha512-VCdBRNFTX1fyE7Nb6FYoURo/SPe62QCaAyzJvUjwRaIsc+NePBEniHlvxFmmX56+HZphIGtV0XeCirBtpDrTyQ== 1851 | 1852 | range-parser@~1.2.1: 1853 | version "1.2.1" 1854 | resolved "https://registry.npmjs.org/range-parser/-/range-parser-1.2.1.tgz" 1855 | integrity sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg== 1856 | 1857 | raw-body@2.4.0: 1858 | version "2.4.0" 1859 | resolved "https://registry.npmjs.org/raw-body/-/raw-body-2.4.0.tgz" 1860 | integrity sha512-4Oz8DUIwdvoa5qMJelxipzi/iJIi40O5cGV1wNYp5hvZP8ZN0T+jiNkL0QepXs+EsQ9XJ8ipEDoiH70ySUJP3Q== 1861 | dependencies: 1862 | bytes "3.1.0" 1863 | http-errors "1.7.2" 1864 | iconv-lite "0.4.24" 1865 | unpipe "1.0.0" 1866 | 1867 | rc@^1.2.8: 1868 | version "1.2.8" 1869 | resolved "https://registry.npmjs.org/rc/-/rc-1.2.8.tgz" 1870 | integrity sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw== 1871 | dependencies: 1872 | deep-extend "^0.6.0" 1873 | ini "~1.3.0" 1874 | minimist "^1.2.0" 1875 | strip-json-comments "~2.0.1" 1876 | 1877 | read-pkg-up@^3.0.0: 1878 | version "3.0.0" 1879 | resolved "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-3.0.0.tgz" 1880 | integrity sha1-PtSWaF26D4/hGNBpHcUfSh/5bwc= 1881 | dependencies: 1882 | find-up "^2.0.0" 1883 | read-pkg "^3.0.0" 1884 | 1885 | read-pkg@^3.0.0: 1886 | version "3.0.0" 1887 | resolved "https://registry.npmjs.org/read-pkg/-/read-pkg-3.0.0.tgz" 1888 | integrity sha1-nLxoaXj+5l0WwA4rGcI3/Pbjg4k= 1889 | dependencies: 1890 | load-json-file "^4.0.0" 1891 | normalize-package-data "^2.3.2" 1892 | path-type "^3.0.0" 1893 | 1894 | readdirp@~3.5.0: 1895 | version "3.5.0" 1896 | resolved "https://registry.npmjs.org/readdirp/-/readdirp-3.5.0.tgz" 1897 | integrity sha512-cMhu7c/8rdhkHXWsY+osBhfSy0JikwpHK/5+imo+LpeasTF8ouErHrlYkwT0++njiyuDvc7OFY5T3ukvZ8qmFQ== 1898 | dependencies: 1899 | picomatch "^2.2.1" 1900 | 1901 | regexpp@^3.1.0: 1902 | version "3.1.0" 1903 | resolved "https://registry.npmjs.org/regexpp/-/regexpp-3.1.0.tgz" 1904 | integrity sha512-ZOIzd8yVsQQA7j8GCSlPGXwg5PfmA1mrq0JP4nGhh54LaKN3xdai/vHUDu74pKwV8OxseMS65u2NImosQcSD0Q== 1905 | 1906 | registry-auth-token@^4.0.0: 1907 | version "4.2.1" 1908 | resolved "https://registry.npmjs.org/registry-auth-token/-/registry-auth-token-4.2.1.tgz" 1909 | integrity sha512-6gkSb4U6aWJB4SF2ZvLb76yCBjcvufXBqvvEx1HbmKPkutswjW1xNVRY0+daljIYRbogN7O0etYSlbiaEQyMyw== 1910 | dependencies: 1911 | rc "^1.2.8" 1912 | 1913 | registry-url@^5.0.0: 1914 | version "5.1.0" 1915 | resolved "https://registry.npmjs.org/registry-url/-/registry-url-5.1.0.tgz" 1916 | integrity sha512-8acYXXTI0AkQv6RAOjE3vOaIXZkT9wo4LOFbBKYQEEnnMNBpKqdUrI6S4NT0KPIo/WVvJ5tE/X5LF/TQUf0ekw== 1917 | dependencies: 1918 | rc "^1.2.8" 1919 | 1920 | require-from-string@^2.0.2: 1921 | version "2.0.2" 1922 | resolved "https://registry.npmjs.org/require-from-string/-/require-from-string-2.0.2.tgz" 1923 | integrity sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw== 1924 | 1925 | resolve-from@^4.0.0: 1926 | version "4.0.0" 1927 | resolved "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz" 1928 | integrity sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g== 1929 | 1930 | resolve@^1.10.0, resolve@^1.12.0, resolve@^1.13.1, resolve@^1.20.0: 1931 | version "1.20.0" 1932 | resolved "https://registry.npmjs.org/resolve/-/resolve-1.20.0.tgz" 1933 | integrity sha512-wENBPt4ySzg4ybFQW2TT1zMQucPK95HSh/nq2CFTZVOGut2+pQvSsgtda4d26YrYcr067wjbmzOG8byDPBX63A== 1934 | dependencies: 1935 | is-core-module "^2.2.0" 1936 | path-parse "^1.0.6" 1937 | 1938 | responselike@^1.0.2: 1939 | version "1.0.2" 1940 | resolved "https://registry.npmjs.org/responselike/-/responselike-1.0.2.tgz" 1941 | integrity sha1-kYcg7ztjHFZCvgaPFa3lpG9Loec= 1942 | dependencies: 1943 | lowercase-keys "^1.0.0" 1944 | 1945 | rimraf@^3.0.2: 1946 | version "3.0.2" 1947 | resolved "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz" 1948 | integrity sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA== 1949 | dependencies: 1950 | glob "^7.1.3" 1951 | 1952 | safe-buffer@5.1.2: 1953 | version "5.1.2" 1954 | resolved "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz" 1955 | integrity sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g== 1956 | 1957 | "safer-buffer@>= 2.1.2 < 3": 1958 | version "2.1.2" 1959 | resolved "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz" 1960 | integrity sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg== 1961 | 1962 | semver-diff@^3.1.1: 1963 | version "3.1.1" 1964 | resolved "https://registry.npmjs.org/semver-diff/-/semver-diff-3.1.1.tgz" 1965 | integrity sha512-GX0Ix/CJcHyB8c4ykpHGIAvLyOwOobtM/8d+TQkAd81/bEjgPHrfba41Vpesr7jX/t8Uh+R3EX9eAS5be+jQYg== 1966 | dependencies: 1967 | semver "^6.3.0" 1968 | 1969 | "semver@2 || 3 || 4 || 5", semver@^5.7.1: 1970 | version "5.7.1" 1971 | resolved "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz" 1972 | integrity sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ== 1973 | 1974 | semver@^6.0.0, semver@^6.2.0, semver@^6.3.0: 1975 | version "6.3.0" 1976 | resolved "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz" 1977 | integrity sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw== 1978 | 1979 | semver@^7.2.1: 1980 | version "7.3.5" 1981 | resolved "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz" 1982 | integrity sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ== 1983 | dependencies: 1984 | lru-cache "^6.0.0" 1985 | 1986 | send@0.17.1: 1987 | version "0.17.1" 1988 | resolved "https://registry.npmjs.org/send/-/send-0.17.1.tgz" 1989 | integrity sha512-BsVKsiGcQMFwT8UxypobUKyv7irCNRHk1T0G680vk88yf6LBByGcZJOTJCrTP2xVN6yI+XjPJcNuE3V4fT9sAg== 1990 | dependencies: 1991 | debug "2.6.9" 1992 | depd "~1.1.2" 1993 | destroy "~1.0.4" 1994 | encodeurl "~1.0.2" 1995 | escape-html "~1.0.3" 1996 | etag "~1.8.1" 1997 | fresh "0.5.2" 1998 | http-errors "~1.7.2" 1999 | mime "1.6.0" 2000 | ms "2.1.1" 2001 | on-finished "~2.3.0" 2002 | range-parser "~1.2.1" 2003 | statuses "~1.5.0" 2004 | 2005 | serve-static@1.14.1: 2006 | version "1.14.1" 2007 | resolved "https://registry.npmjs.org/serve-static/-/serve-static-1.14.1.tgz" 2008 | integrity sha512-JMrvUwE54emCYWlTI+hGrGv5I8dEwmco/00EvkzIIsR7MqrHonbD9pO2MOfFnpFntl7ecpZs+3mW+XbQZu9QCg== 2009 | dependencies: 2010 | encodeurl "~1.0.2" 2011 | escape-html "~1.0.3" 2012 | parseurl "~1.3.3" 2013 | send "0.17.1" 2014 | 2015 | setprototypeof@1.1.1: 2016 | version "1.1.1" 2017 | resolved "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.1.tgz" 2018 | integrity sha512-JvdAWfbXeIGaZ9cILp38HntZSFSo3mWg6xGcJJsd+d4aRMOqauag1C63dJfDw7OaMYwEbHMOxEZ1lqVRYP2OAw== 2019 | 2020 | shebang-command@^2.0.0: 2021 | version "2.0.0" 2022 | resolved "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz" 2023 | integrity sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA== 2024 | dependencies: 2025 | shebang-regex "^3.0.0" 2026 | 2027 | shebang-regex@^3.0.0: 2028 | version "3.0.0" 2029 | resolved "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz" 2030 | integrity sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A== 2031 | 2032 | signal-exit@^3.0.2: 2033 | version "3.0.3" 2034 | resolved "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.3.tgz" 2035 | integrity sha512-VUJ49FC8U1OxwZLxIbTTrDvLnf/6TDgxZcK8wxR8zs13xpx7xbG60ndBlhNrFi2EMuFRoeDoJO7wthSLq42EjA== 2036 | 2037 | slice-ansi@^4.0.0: 2038 | version "4.0.0" 2039 | resolved "https://registry.npmjs.org/slice-ansi/-/slice-ansi-4.0.0.tgz" 2040 | integrity sha512-qMCMfhY040cVHT43K9BFygqYbUPFZKHOg7K73mtTWJRb8pyP3fzf4Ixd5SzdEJQ6MRUg/WBnOLxghZtKKurENQ== 2041 | dependencies: 2042 | ansi-styles "^4.0.0" 2043 | astral-regex "^2.0.0" 2044 | is-fullwidth-code-point "^3.0.0" 2045 | 2046 | source-map@^0.5.0: 2047 | version "0.5.7" 2048 | resolved "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz" 2049 | integrity sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w= 2050 | 2051 | spdx-correct@^3.0.0: 2052 | version "3.1.1" 2053 | resolved "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.1.1.tgz" 2054 | integrity sha512-cOYcUWwhCuHCXi49RhFRCyJEK3iPj1Ziz9DpViV3tbZOwXD49QzIN3MpOLJNxh2qwq2lJJZaKMVw9qNi4jTC0w== 2055 | dependencies: 2056 | spdx-expression-parse "^3.0.0" 2057 | spdx-license-ids "^3.0.0" 2058 | 2059 | spdx-exceptions@^2.1.0: 2060 | version "2.3.0" 2061 | resolved "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.3.0.tgz" 2062 | integrity sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A== 2063 | 2064 | spdx-expression-parse@^3.0.0: 2065 | version "3.0.1" 2066 | resolved "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz" 2067 | integrity sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q== 2068 | dependencies: 2069 | spdx-exceptions "^2.1.0" 2070 | spdx-license-ids "^3.0.0" 2071 | 2072 | spdx-license-ids@^3.0.0: 2073 | version "3.0.9" 2074 | resolved "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.9.tgz" 2075 | integrity sha512-Ki212dKK4ogX+xDo4CtOZBVIwhsKBEfsEEcwmJfLQzirgc2jIWdzg40Unxz/HzEUqM1WFzVlQSMF9kZZ2HboLQ== 2076 | 2077 | sprintf-js@~1.0.2: 2078 | version "1.0.3" 2079 | resolved "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz" 2080 | integrity sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw= 2081 | 2082 | "statuses@>= 1.5.0 < 2", statuses@~1.5.0: 2083 | version "1.5.0" 2084 | resolved "https://registry.npmjs.org/statuses/-/statuses-1.5.0.tgz" 2085 | integrity sha1-Fhx9rBd2Wf2YEfQ3cfqZOBR4Yow= 2086 | 2087 | string-width@^3.0.0: 2088 | version "3.1.0" 2089 | resolved "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz" 2090 | integrity sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w== 2091 | dependencies: 2092 | emoji-regex "^7.0.1" 2093 | is-fullwidth-code-point "^2.0.0" 2094 | strip-ansi "^5.1.0" 2095 | 2096 | string-width@^4.0.0, string-width@^4.1.0, string-width@^4.2.0: 2097 | version "4.2.2" 2098 | resolved "https://registry.npmjs.org/string-width/-/string-width-4.2.2.tgz" 2099 | integrity sha512-XBJbT3N4JhVumXE0eoLU9DCjcaF92KLNqTmFCnG1pf8duUxFGwtP6AD6nkjw9a3IdiRtL3E2w3JDiE/xi3vOeA== 2100 | dependencies: 2101 | emoji-regex "^8.0.0" 2102 | is-fullwidth-code-point "^3.0.0" 2103 | strip-ansi "^6.0.0" 2104 | 2105 | string.prototype.trimend@^1.0.4: 2106 | version "1.0.4" 2107 | resolved "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.4.tgz" 2108 | integrity sha512-y9xCjw1P23Awk8EvTpcyL2NIr1j7wJ39f+k6lvRnSMz+mz9CGz9NYPelDk42kOz6+ql8xjfK8oYzy3jAP5QU5A== 2109 | dependencies: 2110 | call-bind "^1.0.2" 2111 | define-properties "^1.1.3" 2112 | 2113 | string.prototype.trimstart@^1.0.4: 2114 | version "1.0.4" 2115 | resolved "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.4.tgz" 2116 | integrity sha512-jh6e984OBfvxS50tdY2nRZnoC5/mLFKOREQfw8t5yytkoUsJRNxvI/E39qu1sD0OtWI3OC0XgKSmcWwziwYuZw== 2117 | dependencies: 2118 | call-bind "^1.0.2" 2119 | define-properties "^1.1.3" 2120 | 2121 | strip-ansi@^5.1.0: 2122 | version "5.2.0" 2123 | resolved "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz" 2124 | integrity sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA== 2125 | dependencies: 2126 | ansi-regex "^4.1.0" 2127 | 2128 | strip-ansi@^6.0.0: 2129 | version "6.0.0" 2130 | resolved "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz" 2131 | integrity sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w== 2132 | dependencies: 2133 | ansi-regex "^5.0.0" 2134 | 2135 | strip-bom@^3.0.0: 2136 | version "3.0.0" 2137 | resolved "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz" 2138 | integrity sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM= 2139 | 2140 | strip-json-comments@^3.1.0, strip-json-comments@^3.1.1: 2141 | version "3.1.1" 2142 | resolved "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz" 2143 | integrity sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig== 2144 | 2145 | strip-json-comments@~2.0.1: 2146 | version "2.0.1" 2147 | resolved "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz" 2148 | integrity sha1-PFMZQukIwml8DsNEhYwobHygpgo= 2149 | 2150 | supports-color@^5.3.0, supports-color@^5.5.0: 2151 | version "5.5.0" 2152 | resolved "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz" 2153 | integrity sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow== 2154 | dependencies: 2155 | has-flag "^3.0.0" 2156 | 2157 | supports-color@^7.1.0: 2158 | version "7.2.0" 2159 | resolved "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz" 2160 | integrity sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw== 2161 | dependencies: 2162 | has-flag "^4.0.0" 2163 | 2164 | table@^6.0.9: 2165 | version "6.7.1" 2166 | resolved "https://registry.npmjs.org/table/-/table-6.7.1.tgz" 2167 | integrity sha512-ZGum47Yi6KOOFDE8m223td53ath2enHcYLgOCjGr5ngu8bdIARQk6mN/wRMv4yMRcHnCSnHbCEha4sobQx5yWg== 2168 | dependencies: 2169 | ajv "^8.0.1" 2170 | lodash.clonedeep "^4.5.0" 2171 | lodash.truncate "^4.4.2" 2172 | slice-ansi "^4.0.0" 2173 | string-width "^4.2.0" 2174 | strip-ansi "^6.0.0" 2175 | 2176 | term-size@^2.1.0: 2177 | version "2.2.1" 2178 | resolved "https://registry.npmjs.org/term-size/-/term-size-2.2.1.tgz" 2179 | integrity sha512-wK0Ri4fOGjv/XPy8SBHZChl8CM7uMc5VML7SqiQ0zG7+J5Vr+RMQDoHa2CNT6KHUnTGIXH34UDMkPzAUyapBZg== 2180 | 2181 | text-table@^0.2.0: 2182 | version "0.2.0" 2183 | resolved "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz" 2184 | integrity sha1-f17oI66AUgfACvLfSoTsP8+lcLQ= 2185 | 2186 | to-fast-properties@^2.0.0: 2187 | version "2.0.0" 2188 | resolved "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz" 2189 | integrity sha1-3F5pjL0HkmW8c+A3doGk5Og/YW4= 2190 | 2191 | to-readable-stream@^1.0.0: 2192 | version "1.0.0" 2193 | resolved "https://registry.npmjs.org/to-readable-stream/-/to-readable-stream-1.0.0.tgz" 2194 | integrity sha512-Iq25XBt6zD5npPhlLVXGFN3/gyR2/qODcKNNyTMd4vbm39HUaOiAM4PMq0eMVC/Tkxz+Zjdsc55g9yyz+Yq00Q== 2195 | 2196 | to-regex-range@^5.0.1: 2197 | version "5.0.1" 2198 | resolved "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz" 2199 | integrity sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ== 2200 | dependencies: 2201 | is-number "^7.0.0" 2202 | 2203 | toidentifier@1.0.0: 2204 | version "1.0.0" 2205 | resolved "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.0.tgz" 2206 | integrity sha512-yaOH/Pk/VEhBWWTlhI+qXxDFXlejDGcQipMlyxda9nthulaxLZUNcUqFxokp0vcYnvteJln5FNQDRrxj3YcbVw== 2207 | 2208 | touch@^3.1.0: 2209 | version "3.1.0" 2210 | resolved "https://registry.npmjs.org/touch/-/touch-3.1.0.tgz" 2211 | integrity sha512-WBx8Uy5TLtOSRtIq+M03/sKDrXCLHxwDcquSP2c43Le03/9serjQBIztjRz6FkJez9D/hleyAXTBGLwwZUw9lA== 2212 | dependencies: 2213 | nopt "~1.0.10" 2214 | 2215 | tsconfig-paths@^3.9.0: 2216 | version "3.9.0" 2217 | resolved "https://registry.npmjs.org/tsconfig-paths/-/tsconfig-paths-3.9.0.tgz" 2218 | integrity sha512-dRcuzokWhajtZWkQsDVKbWyY+jgcLC5sqJhg2PSgf4ZkH2aHPvaOY8YWGhmjb68b5qqTfasSsDO9k7RUiEmZAw== 2219 | dependencies: 2220 | "@types/json5" "^0.0.29" 2221 | json5 "^1.0.1" 2222 | minimist "^1.2.0" 2223 | strip-bom "^3.0.0" 2224 | 2225 | type-check@^0.4.0, type-check@~0.4.0: 2226 | version "0.4.0" 2227 | resolved "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz" 2228 | integrity sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew== 2229 | dependencies: 2230 | prelude-ls "^1.2.1" 2231 | 2232 | type-fest@^0.20.2: 2233 | version "0.20.2" 2234 | resolved "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz" 2235 | integrity sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ== 2236 | 2237 | type-fest@^0.8.1: 2238 | version "0.8.1" 2239 | resolved "https://registry.npmjs.org/type-fest/-/type-fest-0.8.1.tgz" 2240 | integrity sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA== 2241 | 2242 | type-is@~1.6.17, type-is@~1.6.18: 2243 | version "1.6.18" 2244 | resolved "https://registry.npmjs.org/type-is/-/type-is-1.6.18.tgz" 2245 | integrity sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g== 2246 | dependencies: 2247 | media-typer "0.3.0" 2248 | mime-types "~2.1.24" 2249 | 2250 | typedarray-to-buffer@^3.1.5: 2251 | version "3.1.5" 2252 | resolved "https://registry.npmjs.org/typedarray-to-buffer/-/typedarray-to-buffer-3.1.5.tgz" 2253 | integrity sha512-zdu8XMNEDepKKR+XYOXAVPtWui0ly0NtohUscw+UmaHiAWT8hrV1rr//H6V+0DvJ3OQ19S979M0laLfX8rm82Q== 2254 | dependencies: 2255 | is-typedarray "^1.0.0" 2256 | 2257 | unbox-primitive@^1.0.1: 2258 | version "1.0.1" 2259 | resolved "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.0.1.tgz" 2260 | integrity sha512-tZU/3NqK3dA5gpE1KtyiJUrEB0lxnGkMFHptJ7q6ewdZ8s12QrODwNbhIJStmJkd1QDXa1NRA8aF2A1zk/Ypyw== 2261 | dependencies: 2262 | function-bind "^1.1.1" 2263 | has-bigints "^1.0.1" 2264 | has-symbols "^1.0.2" 2265 | which-boxed-primitive "^1.0.2" 2266 | 2267 | undefsafe@^2.0.3: 2268 | version "2.0.3" 2269 | resolved "https://registry.npmjs.org/undefsafe/-/undefsafe-2.0.3.tgz" 2270 | integrity sha512-nrXZwwXrD/T/JXeygJqdCO6NZZ1L66HrxM/Z7mIq2oPanoN0F1nLx3lwJMu6AwJY69hdixaFQOuoYsMjE5/C2A== 2271 | dependencies: 2272 | debug "^2.2.0" 2273 | 2274 | unique-string@^2.0.0: 2275 | version "2.0.0" 2276 | resolved "https://registry.npmjs.org/unique-string/-/unique-string-2.0.0.tgz" 2277 | integrity sha512-uNaeirEPvpZWSgzwsPGtU2zVSTrn/8L5q/IexZmH0eH6SA73CmAA5U4GwORTxQAZs95TAXLNqeLoPPNO5gZfWg== 2278 | dependencies: 2279 | crypto-random-string "^2.0.0" 2280 | 2281 | unpipe@1.0.0, unpipe@~1.0.0: 2282 | version "1.0.0" 2283 | resolved "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz" 2284 | integrity sha1-sr9O6FFKrmFltIF4KdIbLvSZBOw= 2285 | 2286 | update-notifier@^4.1.0: 2287 | version "4.1.3" 2288 | resolved "https://registry.npmjs.org/update-notifier/-/update-notifier-4.1.3.tgz" 2289 | integrity sha512-Yld6Z0RyCYGB6ckIjffGOSOmHXj1gMeE7aROz4MG+XMkmixBX4jUngrGXNYz7wPKBmtoD4MnBa2Anu7RSKht/A== 2290 | dependencies: 2291 | boxen "^4.2.0" 2292 | chalk "^3.0.0" 2293 | configstore "^5.0.1" 2294 | has-yarn "^2.1.0" 2295 | import-lazy "^2.1.0" 2296 | is-ci "^2.0.0" 2297 | is-installed-globally "^0.3.1" 2298 | is-npm "^4.0.0" 2299 | is-yarn-global "^0.3.0" 2300 | latest-version "^5.0.0" 2301 | pupa "^2.0.1" 2302 | semver-diff "^3.1.1" 2303 | xdg-basedir "^4.0.0" 2304 | 2305 | uri-js@^4.2.2: 2306 | version "4.4.1" 2307 | resolved "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz" 2308 | integrity sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg== 2309 | dependencies: 2310 | punycode "^2.1.0" 2311 | 2312 | url-parse-lax@^3.0.0: 2313 | version "3.0.0" 2314 | resolved "https://registry.npmjs.org/url-parse-lax/-/url-parse-lax-3.0.0.tgz" 2315 | integrity sha1-FrXK/Afb42dsGxmZF3gj1lA6yww= 2316 | dependencies: 2317 | prepend-http "^2.0.0" 2318 | 2319 | utils-merge@1.0.1: 2320 | version "1.0.1" 2321 | resolved "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz" 2322 | integrity sha1-n5VxD1CiZ5R7LMwSR0HBAoQn5xM= 2323 | 2324 | v8-compile-cache@^2.0.3: 2325 | version "2.3.0" 2326 | resolved "https://registry.npmjs.org/v8-compile-cache/-/v8-compile-cache-2.3.0.tgz" 2327 | integrity sha512-l8lCEmLcLYZh4nbunNZvQCJc5pv7+RCwa8q/LdUx8u7lsWvPDKmpodJAJNwkAhJC//dFY48KuIEmjtd4RViDrA== 2328 | 2329 | validate-npm-package-license@^3.0.1: 2330 | version "3.0.4" 2331 | resolved "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz" 2332 | integrity sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew== 2333 | dependencies: 2334 | spdx-correct "^3.0.0" 2335 | spdx-expression-parse "^3.0.0" 2336 | 2337 | vary@^1, vary@~1.1.2: 2338 | version "1.1.2" 2339 | resolved "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz" 2340 | integrity sha1-IpnwLG3tMNSllhsLn3RSShj2NPw= 2341 | 2342 | which-boxed-primitive@^1.0.2: 2343 | version "1.0.2" 2344 | resolved "https://registry.npmjs.org/which-boxed-primitive/-/which-boxed-primitive-1.0.2.tgz" 2345 | integrity sha512-bwZdv0AKLpplFY2KZRX6TvyuN7ojjr7lwkg6ml0roIy9YeuSr7JS372qlNW18UQYzgYK9ziGcerWqZOmEn9VNg== 2346 | dependencies: 2347 | is-bigint "^1.0.1" 2348 | is-boolean-object "^1.1.0" 2349 | is-number-object "^1.0.4" 2350 | is-string "^1.0.5" 2351 | is-symbol "^1.0.3" 2352 | 2353 | which@^2.0.1: 2354 | version "2.0.2" 2355 | resolved "https://registry.npmjs.org/which/-/which-2.0.2.tgz" 2356 | integrity sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA== 2357 | dependencies: 2358 | isexe "^2.0.0" 2359 | 2360 | widest-line@^3.1.0: 2361 | version "3.1.0" 2362 | resolved "https://registry.npmjs.org/widest-line/-/widest-line-3.1.0.tgz" 2363 | integrity sha512-NsmoXalsWVDMGupxZ5R08ka9flZjjiLvHVAWYOKtiKM8ujtZWr9cRffak+uSE48+Ob8ObalXpwyeUiyDD6QFgg== 2364 | dependencies: 2365 | string-width "^4.0.0" 2366 | 2367 | word-wrap@^1.2.3: 2368 | version "1.2.3" 2369 | resolved "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.3.tgz" 2370 | integrity sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ== 2371 | 2372 | wrappy@1: 2373 | version "1.0.2" 2374 | resolved "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz" 2375 | integrity sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8= 2376 | 2377 | write-file-atomic@^3.0.0: 2378 | version "3.0.3" 2379 | resolved "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-3.0.3.tgz" 2380 | integrity sha512-AvHcyZ5JnSfq3ioSyjrBkH9yW4m7Ayk8/9My/DD9onKeu/94fwrMocemO2QAJFAlnnDN+ZDS+ZjAR5ua1/PV/Q== 2381 | dependencies: 2382 | imurmurhash "^0.1.4" 2383 | is-typedarray "^1.0.0" 2384 | signal-exit "^3.0.2" 2385 | typedarray-to-buffer "^3.1.5" 2386 | 2387 | xdg-basedir@^4.0.0: 2388 | version "4.0.0" 2389 | resolved "https://registry.npmjs.org/xdg-basedir/-/xdg-basedir-4.0.0.tgz" 2390 | integrity sha512-PSNhEJDejZYV7h50BohL09Er9VaIefr2LMAf3OEmpCkjOi34eYyQYAXUTjEQtZJTKcF0E2UKTh+osDLsgNim9Q== 2391 | 2392 | yallist@^4.0.0: 2393 | version "4.0.0" 2394 | resolved "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz" 2395 | integrity sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A== 2396 | --------------------------------------------------------------------------------