├── .editorconfig
├── .eslintrc.js
├── .gitignore
├── README.md
├── index.js
├── package-lock.json
├── package.json
├── vercel.json
└── views
└── index.mustache
/.editorconfig:
--------------------------------------------------------------------------------
1 | root = true
2 |
3 | [*]
4 | charset = utf-8
5 | end_of_line = lf
6 | indent_size = 2
7 | indent_style = space
8 | insert_final_newline = true
9 | trim_trailing_whitespace = true
10 |
--------------------------------------------------------------------------------
/.eslintrc.js:
--------------------------------------------------------------------------------
1 | module.exports = {
2 | env: {
3 | browser: true,
4 | commonjs: true,
5 | es2021: true,
6 | },
7 | extends: 'xo',
8 | overrides: [
9 | {
10 | env: {
11 | node: true,
12 | },
13 | files: [
14 | '.eslintrc.{js,cjs}',
15 | ],
16 | parserOptions: {
17 | sourceType: 'script',
18 | },
19 | },
20 | ],
21 | parserOptions: {
22 | ecmaVersion: 'latest',
23 | },
24 | rules: {
25 | },
26 | };
27 |
--------------------------------------------------------------------------------
/.gitignore:
--------------------------------------------------------------------------------
1 | node_modules/
2 |
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | # Widget para README GitHub com o progresso do 100 dias de código
2 |
3 | > Para saber mais sobre o projeto: [100 dias de código](https://www.100diasdecodigo.dev)
4 |
5 | Fique a vontade para utilizar esse repositorio como base para desenvolver seus próprios widgets :D
6 |
7 | ## Como usar
8 |
9 | Simplesmente inclua esse link com imagem no seu README:
10 |
11 | ```
12 |
13 |
14 |
15 | ```
16 |
17 | > Importante! O username em questão precisa ser referente ao do seu **twitter**
18 |
19 | ## Como contribuir
20 |
21 | Contribuições fazem com que a comunidade open source seja um lugar incrível para aprender, inspirar e criar. Todas as contribuições
22 | são **extremamente apreciadas**!
23 |
24 | 1. Realize um Fork do projeto
25 | 2. Crie um branch com a nova feature (`git checkout -b feature/featurebraba`)
26 | 3. Realize o Commit (`git commit -m 'feature/featurebraba'`)
27 | 4. Realize o Push no Branch (`git push origin feature/featurebraba`)
28 | 5. Quando finalizar abra um Pull Request
29 |
30 | ---
31 |
32 | May the force be with you! 🍒
33 |
--------------------------------------------------------------------------------
/index.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 |
3 | const express = require('express');
4 | const mustacheExpress = require('mustache-express');
5 |
6 | const app = express();
7 |
8 | app.set('views', `${__dirname}/views`);
9 | app.set('view engine', 'mustache');
10 | app.engine('mustache', mustacheExpress());
11 |
12 | app.get('/', async (req, res) => {
13 | const user = req.query.username;
14 |
15 | if (!user) {
16 | return;
17 | }
18 |
19 | try {
20 | const response = await fetch(`http://20.201.112.54:8001/api/users/find/${user}`).then(data => data.json());
21 |
22 | res.setHeader('content-type', 'image/svg+xml; charset=utf-8');
23 | res.setHeader('cache-control', 'no-cache, max-age=0');
24 |
25 | res.render('index', {
26 | finishedDays: response.days_participated || 0,
27 | daysFinishedPercentage: response.days_participated ? (response.days_participated / 100) * 250 : 0,
28 | name: response.name || '',
29 | totalLikes: response.statistics.total_likes || 0,
30 | totalViews: response.statistics.total_views || 0,
31 | totalReplies: response.statistics.total_replies || 0,
32 | maxStreak: response.statistics.max_streak || 0,
33 | });
34 | } catch (error) {
35 | console.error(error);
36 | }
37 | });
38 |
39 | const port = process.env.NODE_ENV || 3000;
40 |
41 | app.listen(port, () => console.log(`Server running on ${port}`));
42 |
--------------------------------------------------------------------------------
/package-lock.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "100-dias-de-codigo-github-readme",
3 | "version": "1.0.0",
4 | "lockfileVersion": 3,
5 | "requires": true,
6 | "packages": {
7 | "": {
8 | "name": "100-dias-de-codigo-github-readme",
9 | "version": "1.0.0",
10 | "license": "ISC",
11 | "dependencies": {
12 | "express": "^4.18.2",
13 | "mustache-express": "^1.3.2"
14 | },
15 | "devDependencies": {
16 | "eslint": "^8.50.0",
17 | "eslint-config-xo": "^0.43.1"
18 | }
19 | },
20 | "node_modules/@aashutoshrathi/word-wrap": {
21 | "version": "1.2.6",
22 | "resolved": "https://registry.npmjs.org/@aashutoshrathi/word-wrap/-/word-wrap-1.2.6.tgz",
23 | "integrity": "sha512-1Yjs2SvM8TflER/OD3cOjhWWOZb58A2t7wpE2S9XfBYTiIl+XFhQG2bjy4Pu1I+EAlCNUzRDYDdFwFYUKvXcIA==",
24 | "dev": true,
25 | "engines": {
26 | "node": ">=0.10.0"
27 | }
28 | },
29 | "node_modules/@eslint-community/eslint-utils": {
30 | "version": "4.4.0",
31 | "resolved": "https://registry.npmjs.org/@eslint-community/eslint-utils/-/eslint-utils-4.4.0.tgz",
32 | "integrity": "sha512-1/sA4dwrzBAyeUoQ6oxahHKmrZvsnLCg4RfxW3ZFGGmQkSNQPFNLV9CUEFQP1x9EYXHTo5p6xdhZM1Ne9p/AfA==",
33 | "dev": true,
34 | "dependencies": {
35 | "eslint-visitor-keys": "^3.3.0"
36 | },
37 | "engines": {
38 | "node": "^12.22.0 || ^14.17.0 || >=16.0.0"
39 | },
40 | "peerDependencies": {
41 | "eslint": "^6.0.0 || ^7.0.0 || >=8.0.0"
42 | }
43 | },
44 | "node_modules/@eslint-community/regexpp": {
45 | "version": "4.8.1",
46 | "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.8.1.tgz",
47 | "integrity": "sha512-PWiOzLIUAjN/w5K17PoF4n6sKBw0gqLHPhywmYHP4t1VFQQVYeb1yWsJwnMVEMl3tUHME7X/SJPZLmtG7XBDxQ==",
48 | "dev": true,
49 | "engines": {
50 | "node": "^12.0.0 || ^14.0.0 || >=16.0.0"
51 | }
52 | },
53 | "node_modules/@eslint/eslintrc": {
54 | "version": "2.1.2",
55 | "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-2.1.2.tgz",
56 | "integrity": "sha512-+wvgpDsrB1YqAMdEUCcnTlpfVBH7Vqn6A/NT3D8WVXFIaKMlErPIZT3oCIAVCOtarRpMtelZLqJeU3t7WY6X6g==",
57 | "dev": true,
58 | "dependencies": {
59 | "ajv": "^6.12.4",
60 | "debug": "^4.3.2",
61 | "espree": "^9.6.0",
62 | "globals": "^13.19.0",
63 | "ignore": "^5.2.0",
64 | "import-fresh": "^3.2.1",
65 | "js-yaml": "^4.1.0",
66 | "minimatch": "^3.1.2",
67 | "strip-json-comments": "^3.1.1"
68 | },
69 | "engines": {
70 | "node": "^12.22.0 || ^14.17.0 || >=16.0.0"
71 | },
72 | "funding": {
73 | "url": "https://opencollective.com/eslint"
74 | }
75 | },
76 | "node_modules/@eslint/eslintrc/node_modules/debug": {
77 | "version": "4.3.4",
78 | "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz",
79 | "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==",
80 | "dev": true,
81 | "dependencies": {
82 | "ms": "2.1.2"
83 | },
84 | "engines": {
85 | "node": ">=6.0"
86 | },
87 | "peerDependenciesMeta": {
88 | "supports-color": {
89 | "optional": true
90 | }
91 | }
92 | },
93 | "node_modules/@eslint/eslintrc/node_modules/ms": {
94 | "version": "2.1.2",
95 | "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz",
96 | "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==",
97 | "dev": true
98 | },
99 | "node_modules/@eslint/js": {
100 | "version": "8.50.0",
101 | "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.50.0.tgz",
102 | "integrity": "sha512-NCC3zz2+nvYd+Ckfh87rA47zfu2QsQpvc6k1yzTk+b9KzRj0wkGa8LSoGOXN6Zv4lRf/EIoZ80biDh9HOI+RNQ==",
103 | "dev": true,
104 | "engines": {
105 | "node": "^12.22.0 || ^14.17.0 || >=16.0.0"
106 | }
107 | },
108 | "node_modules/@humanwhocodes/config-array": {
109 | "version": "0.11.11",
110 | "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.11.11.tgz",
111 | "integrity": "sha512-N2brEuAadi0CcdeMXUkhbZB84eskAc8MEX1By6qEchoVywSgXPIjou4rYsl0V3Hj0ZnuGycGCjdNgockbzeWNA==",
112 | "dev": true,
113 | "dependencies": {
114 | "@humanwhocodes/object-schema": "^1.2.1",
115 | "debug": "^4.1.1",
116 | "minimatch": "^3.0.5"
117 | },
118 | "engines": {
119 | "node": ">=10.10.0"
120 | }
121 | },
122 | "node_modules/@humanwhocodes/config-array/node_modules/debug": {
123 | "version": "4.3.4",
124 | "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz",
125 | "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==",
126 | "dev": true,
127 | "dependencies": {
128 | "ms": "2.1.2"
129 | },
130 | "engines": {
131 | "node": ">=6.0"
132 | },
133 | "peerDependenciesMeta": {
134 | "supports-color": {
135 | "optional": true
136 | }
137 | }
138 | },
139 | "node_modules/@humanwhocodes/config-array/node_modules/ms": {
140 | "version": "2.1.2",
141 | "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz",
142 | "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==",
143 | "dev": true
144 | },
145 | "node_modules/@humanwhocodes/module-importer": {
146 | "version": "1.0.1",
147 | "resolved": "https://registry.npmjs.org/@humanwhocodes/module-importer/-/module-importer-1.0.1.tgz",
148 | "integrity": "sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==",
149 | "dev": true,
150 | "engines": {
151 | "node": ">=12.22"
152 | },
153 | "funding": {
154 | "type": "github",
155 | "url": "https://github.com/sponsors/nzakas"
156 | }
157 | },
158 | "node_modules/@humanwhocodes/object-schema": {
159 | "version": "1.2.1",
160 | "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-1.2.1.tgz",
161 | "integrity": "sha512-ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA==",
162 | "dev": true
163 | },
164 | "node_modules/@nodelib/fs.scandir": {
165 | "version": "2.1.5",
166 | "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz",
167 | "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==",
168 | "dev": true,
169 | "dependencies": {
170 | "@nodelib/fs.stat": "2.0.5",
171 | "run-parallel": "^1.1.9"
172 | },
173 | "engines": {
174 | "node": ">= 8"
175 | }
176 | },
177 | "node_modules/@nodelib/fs.stat": {
178 | "version": "2.0.5",
179 | "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz",
180 | "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==",
181 | "dev": true,
182 | "engines": {
183 | "node": ">= 8"
184 | }
185 | },
186 | "node_modules/@nodelib/fs.walk": {
187 | "version": "1.2.8",
188 | "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz",
189 | "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==",
190 | "dev": true,
191 | "dependencies": {
192 | "@nodelib/fs.scandir": "2.1.5",
193 | "fastq": "^1.6.0"
194 | },
195 | "engines": {
196 | "node": ">= 8"
197 | }
198 | },
199 | "node_modules/accepts": {
200 | "version": "1.3.8",
201 | "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.8.tgz",
202 | "integrity": "sha512-PYAthTa2m2VKxuvSD3DPC/Gy+U+sOA1LAuT8mkmRuvw+NACSaeXEQ+NHcVF7rONl6qcaxV3Uuemwawk+7+SJLw==",
203 | "dependencies": {
204 | "mime-types": "~2.1.34",
205 | "negotiator": "0.6.3"
206 | },
207 | "engines": {
208 | "node": ">= 0.6"
209 | }
210 | },
211 | "node_modules/acorn": {
212 | "version": "8.10.0",
213 | "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.10.0.tgz",
214 | "integrity": "sha512-F0SAmZ8iUtS//m8DmCTA0jlh6TDKkHQyK6xc6V4KDTyZKA9dnvX9/3sRTVQrWm79glUAZbnmmNcdYwUIHWVybw==",
215 | "dev": true,
216 | "bin": {
217 | "acorn": "bin/acorn"
218 | },
219 | "engines": {
220 | "node": ">=0.4.0"
221 | }
222 | },
223 | "node_modules/acorn-jsx": {
224 | "version": "5.3.2",
225 | "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz",
226 | "integrity": "sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==",
227 | "dev": true,
228 | "peerDependencies": {
229 | "acorn": "^6.0.0 || ^7.0.0 || ^8.0.0"
230 | }
231 | },
232 | "node_modules/ajv": {
233 | "version": "6.12.6",
234 | "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz",
235 | "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==",
236 | "dev": true,
237 | "dependencies": {
238 | "fast-deep-equal": "^3.1.1",
239 | "fast-json-stable-stringify": "^2.0.0",
240 | "json-schema-traverse": "^0.4.1",
241 | "uri-js": "^4.2.2"
242 | },
243 | "funding": {
244 | "type": "github",
245 | "url": "https://github.com/sponsors/epoberezkin"
246 | }
247 | },
248 | "node_modules/ansi-regex": {
249 | "version": "5.0.1",
250 | "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz",
251 | "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==",
252 | "dev": true,
253 | "engines": {
254 | "node": ">=8"
255 | }
256 | },
257 | "node_modules/ansi-styles": {
258 | "version": "4.3.0",
259 | "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
260 | "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
261 | "dev": true,
262 | "dependencies": {
263 | "color-convert": "^2.0.1"
264 | },
265 | "engines": {
266 | "node": ">=8"
267 | },
268 | "funding": {
269 | "url": "https://github.com/chalk/ansi-styles?sponsor=1"
270 | }
271 | },
272 | "node_modules/argparse": {
273 | "version": "2.0.1",
274 | "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz",
275 | "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==",
276 | "dev": true
277 | },
278 | "node_modules/array-flatten": {
279 | "version": "1.1.1",
280 | "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz",
281 | "integrity": "sha512-PCVAQswWemu6UdxsDFFX/+gVeYqKAod3D3UVm91jHwynguOwAvYPhx8nNlM++NqRcK6CxxpUafjmhIdKiHibqg=="
282 | },
283 | "node_modules/async": {
284 | "version": "3.2.4",
285 | "resolved": "https://registry.npmjs.org/async/-/async-3.2.4.tgz",
286 | "integrity": "sha512-iAB+JbDEGXhyIUavoDl9WP/Jj106Kz9DEn1DPgYw5ruDn0e3Wgi3sKFm55sASdGBNOQB8F59d9qQ7deqrHA8wQ=="
287 | },
288 | "node_modules/balanced-match": {
289 | "version": "1.0.2",
290 | "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz",
291 | "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==",
292 | "dev": true
293 | },
294 | "node_modules/body-parser": {
295 | "version": "1.20.1",
296 | "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.20.1.tgz",
297 | "integrity": "sha512-jWi7abTbYwajOytWCQc37VulmWiRae5RyTpaCyDcS5/lMdtwSz5lOpDE67srw/HYe35f1z3fDQw+3txg7gNtWw==",
298 | "dependencies": {
299 | "bytes": "3.1.2",
300 | "content-type": "~1.0.4",
301 | "debug": "2.6.9",
302 | "depd": "2.0.0",
303 | "destroy": "1.2.0",
304 | "http-errors": "2.0.0",
305 | "iconv-lite": "0.4.24",
306 | "on-finished": "2.4.1",
307 | "qs": "6.11.0",
308 | "raw-body": "2.5.1",
309 | "type-is": "~1.6.18",
310 | "unpipe": "1.0.0"
311 | },
312 | "engines": {
313 | "node": ">= 0.8",
314 | "npm": "1.2.8000 || >= 1.4.16"
315 | }
316 | },
317 | "node_modules/brace-expansion": {
318 | "version": "1.1.11",
319 | "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz",
320 | "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==",
321 | "dev": true,
322 | "dependencies": {
323 | "balanced-match": "^1.0.0",
324 | "concat-map": "0.0.1"
325 | }
326 | },
327 | "node_modules/bytes": {
328 | "version": "3.1.2",
329 | "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.2.tgz",
330 | "integrity": "sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==",
331 | "engines": {
332 | "node": ">= 0.8"
333 | }
334 | },
335 | "node_modules/call-bind": {
336 | "version": "1.0.2",
337 | "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz",
338 | "integrity": "sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==",
339 | "dependencies": {
340 | "function-bind": "^1.1.1",
341 | "get-intrinsic": "^1.0.2"
342 | },
343 | "funding": {
344 | "url": "https://github.com/sponsors/ljharb"
345 | }
346 | },
347 | "node_modules/callsites": {
348 | "version": "3.1.0",
349 | "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz",
350 | "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==",
351 | "dev": true,
352 | "engines": {
353 | "node": ">=6"
354 | }
355 | },
356 | "node_modules/chalk": {
357 | "version": "4.1.2",
358 | "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
359 | "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
360 | "dev": true,
361 | "dependencies": {
362 | "ansi-styles": "^4.1.0",
363 | "supports-color": "^7.1.0"
364 | },
365 | "engines": {
366 | "node": ">=10"
367 | },
368 | "funding": {
369 | "url": "https://github.com/chalk/chalk?sponsor=1"
370 | }
371 | },
372 | "node_modules/color-convert": {
373 | "version": "2.0.1",
374 | "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
375 | "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
376 | "dev": true,
377 | "dependencies": {
378 | "color-name": "~1.1.4"
379 | },
380 | "engines": {
381 | "node": ">=7.0.0"
382 | }
383 | },
384 | "node_modules/color-name": {
385 | "version": "1.1.4",
386 | "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
387 | "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
388 | "dev": true
389 | },
390 | "node_modules/concat-map": {
391 | "version": "0.0.1",
392 | "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz",
393 | "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==",
394 | "dev": true
395 | },
396 | "node_modules/confusing-browser-globals": {
397 | "version": "1.0.11",
398 | "resolved": "https://registry.npmjs.org/confusing-browser-globals/-/confusing-browser-globals-1.0.11.tgz",
399 | "integrity": "sha512-JsPKdmh8ZkmnHxDk55FZ1TqVLvEQTvoByJZRN9jzI0UjxK/QgAmsphz7PGtqgPieQZ/CQcHWXCR7ATDNhGe+YA==",
400 | "dev": true
401 | },
402 | "node_modules/content-disposition": {
403 | "version": "0.5.4",
404 | "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.4.tgz",
405 | "integrity": "sha512-FveZTNuGw04cxlAiWbzi6zTAL/lhehaWbTtgluJh4/E95DqMwTmha3KZN1aAWA8cFIhHzMZUvLevkw5Rqk+tSQ==",
406 | "dependencies": {
407 | "safe-buffer": "5.2.1"
408 | },
409 | "engines": {
410 | "node": ">= 0.6"
411 | }
412 | },
413 | "node_modules/content-type": {
414 | "version": "1.0.5",
415 | "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.5.tgz",
416 | "integrity": "sha512-nTjqfcBFEipKdXCv4YDQWCfmcLZKm81ldF0pAopTvyrFGVbcR6P/VAAd5G7N+0tTr8QqiU0tFadD6FK4NtJwOA==",
417 | "engines": {
418 | "node": ">= 0.6"
419 | }
420 | },
421 | "node_modules/cookie": {
422 | "version": "0.5.0",
423 | "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.5.0.tgz",
424 | "integrity": "sha512-YZ3GUyn/o8gfKJlnlX7g7xq4gyO6OSuhGPKaaGssGB2qgDUS0gPgtTvoyZLTt9Ab6dC4hfc9dV5arkvc/OCmrw==",
425 | "engines": {
426 | "node": ">= 0.6"
427 | }
428 | },
429 | "node_modules/cookie-signature": {
430 | "version": "1.0.6",
431 | "resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz",
432 | "integrity": "sha512-QADzlaHc8icV8I7vbaJXJwod9HWYp8uCqf1xa4OfNu1T7JVxQIrUgOWtHdNDtPiywmFbiS12VjotIXLrKM3orQ=="
433 | },
434 | "node_modules/cross-spawn": {
435 | "version": "7.0.3",
436 | "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz",
437 | "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==",
438 | "dev": true,
439 | "dependencies": {
440 | "path-key": "^3.1.0",
441 | "shebang-command": "^2.0.0",
442 | "which": "^2.0.1"
443 | },
444 | "engines": {
445 | "node": ">= 8"
446 | }
447 | },
448 | "node_modules/debug": {
449 | "version": "2.6.9",
450 | "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz",
451 | "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==",
452 | "dependencies": {
453 | "ms": "2.0.0"
454 | }
455 | },
456 | "node_modules/deep-is": {
457 | "version": "0.1.4",
458 | "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz",
459 | "integrity": "sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==",
460 | "dev": true
461 | },
462 | "node_modules/depd": {
463 | "version": "2.0.0",
464 | "resolved": "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz",
465 | "integrity": "sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==",
466 | "engines": {
467 | "node": ">= 0.8"
468 | }
469 | },
470 | "node_modules/destroy": {
471 | "version": "1.2.0",
472 | "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.2.0.tgz",
473 | "integrity": "sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg==",
474 | "engines": {
475 | "node": ">= 0.8",
476 | "npm": "1.2.8000 || >= 1.4.16"
477 | }
478 | },
479 | "node_modules/doctrine": {
480 | "version": "3.0.0",
481 | "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz",
482 | "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==",
483 | "dev": true,
484 | "dependencies": {
485 | "esutils": "^2.0.2"
486 | },
487 | "engines": {
488 | "node": ">=6.0.0"
489 | }
490 | },
491 | "node_modules/ee-first": {
492 | "version": "1.1.1",
493 | "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz",
494 | "integrity": "sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow=="
495 | },
496 | "node_modules/encodeurl": {
497 | "version": "1.0.2",
498 | "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz",
499 | "integrity": "sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w==",
500 | "engines": {
501 | "node": ">= 0.8"
502 | }
503 | },
504 | "node_modules/escape-html": {
505 | "version": "1.0.3",
506 | "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz",
507 | "integrity": "sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow=="
508 | },
509 | "node_modules/escape-string-regexp": {
510 | "version": "4.0.0",
511 | "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz",
512 | "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==",
513 | "dev": true,
514 | "engines": {
515 | "node": ">=10"
516 | },
517 | "funding": {
518 | "url": "https://github.com/sponsors/sindresorhus"
519 | }
520 | },
521 | "node_modules/eslint": {
522 | "version": "8.50.0",
523 | "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.50.0.tgz",
524 | "integrity": "sha512-FOnOGSuFuFLv/Sa+FDVRZl4GGVAAFFi8LecRsI5a1tMO5HIE8nCm4ivAlzt4dT3ol/PaaGC0rJEEXQmHJBGoOg==",
525 | "dev": true,
526 | "dependencies": {
527 | "@eslint-community/eslint-utils": "^4.2.0",
528 | "@eslint-community/regexpp": "^4.6.1",
529 | "@eslint/eslintrc": "^2.1.2",
530 | "@eslint/js": "8.50.0",
531 | "@humanwhocodes/config-array": "^0.11.11",
532 | "@humanwhocodes/module-importer": "^1.0.1",
533 | "@nodelib/fs.walk": "^1.2.8",
534 | "ajv": "^6.12.4",
535 | "chalk": "^4.0.0",
536 | "cross-spawn": "^7.0.2",
537 | "debug": "^4.3.2",
538 | "doctrine": "^3.0.0",
539 | "escape-string-regexp": "^4.0.0",
540 | "eslint-scope": "^7.2.2",
541 | "eslint-visitor-keys": "^3.4.3",
542 | "espree": "^9.6.1",
543 | "esquery": "^1.4.2",
544 | "esutils": "^2.0.2",
545 | "fast-deep-equal": "^3.1.3",
546 | "file-entry-cache": "^6.0.1",
547 | "find-up": "^5.0.0",
548 | "glob-parent": "^6.0.2",
549 | "globals": "^13.19.0",
550 | "graphemer": "^1.4.0",
551 | "ignore": "^5.2.0",
552 | "imurmurhash": "^0.1.4",
553 | "is-glob": "^4.0.0",
554 | "is-path-inside": "^3.0.3",
555 | "js-yaml": "^4.1.0",
556 | "json-stable-stringify-without-jsonify": "^1.0.1",
557 | "levn": "^0.4.1",
558 | "lodash.merge": "^4.6.2",
559 | "minimatch": "^3.1.2",
560 | "natural-compare": "^1.4.0",
561 | "optionator": "^0.9.3",
562 | "strip-ansi": "^6.0.1",
563 | "text-table": "^0.2.0"
564 | },
565 | "bin": {
566 | "eslint": "bin/eslint.js"
567 | },
568 | "engines": {
569 | "node": "^12.22.0 || ^14.17.0 || >=16.0.0"
570 | },
571 | "funding": {
572 | "url": "https://opencollective.com/eslint"
573 | }
574 | },
575 | "node_modules/eslint-config-xo": {
576 | "version": "0.43.1",
577 | "resolved": "https://registry.npmjs.org/eslint-config-xo/-/eslint-config-xo-0.43.1.tgz",
578 | "integrity": "sha512-azv1L2PysRA0NkZOgbndUpN+581L7wPqkgJOgxxw3hxwXAbJgD6Hqb/SjHRiACifXt/AvxCzE/jIKFAlI7XjvQ==",
579 | "dev": true,
580 | "dependencies": {
581 | "confusing-browser-globals": "1.0.11"
582 | },
583 | "engines": {
584 | "node": ">=12"
585 | },
586 | "funding": {
587 | "url": "https://github.com/sponsors/sindresorhus"
588 | },
589 | "peerDependencies": {
590 | "eslint": ">=8.27.0"
591 | }
592 | },
593 | "node_modules/eslint-scope": {
594 | "version": "7.2.2",
595 | "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-7.2.2.tgz",
596 | "integrity": "sha512-dOt21O7lTMhDM+X9mB4GX+DZrZtCUJPL/wlcTqxyrx5IvO0IYtILdtrQGQp+8n5S0gwSVmOf9NQrjMOgfQZlIg==",
597 | "dev": true,
598 | "dependencies": {
599 | "esrecurse": "^4.3.0",
600 | "estraverse": "^5.2.0"
601 | },
602 | "engines": {
603 | "node": "^12.22.0 || ^14.17.0 || >=16.0.0"
604 | },
605 | "funding": {
606 | "url": "https://opencollective.com/eslint"
607 | }
608 | },
609 | "node_modules/eslint-visitor-keys": {
610 | "version": "3.4.3",
611 | "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz",
612 | "integrity": "sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==",
613 | "dev": true,
614 | "engines": {
615 | "node": "^12.22.0 || ^14.17.0 || >=16.0.0"
616 | },
617 | "funding": {
618 | "url": "https://opencollective.com/eslint"
619 | }
620 | },
621 | "node_modules/eslint/node_modules/debug": {
622 | "version": "4.3.4",
623 | "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz",
624 | "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==",
625 | "dev": true,
626 | "dependencies": {
627 | "ms": "2.1.2"
628 | },
629 | "engines": {
630 | "node": ">=6.0"
631 | },
632 | "peerDependenciesMeta": {
633 | "supports-color": {
634 | "optional": true
635 | }
636 | }
637 | },
638 | "node_modules/eslint/node_modules/ms": {
639 | "version": "2.1.2",
640 | "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz",
641 | "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==",
642 | "dev": true
643 | },
644 | "node_modules/espree": {
645 | "version": "9.6.1",
646 | "resolved": "https://registry.npmjs.org/espree/-/espree-9.6.1.tgz",
647 | "integrity": "sha512-oruZaFkjorTpF32kDSI5/75ViwGeZginGGy2NoOSg3Q9bnwlnmDm4HLnkl0RE3n+njDXR037aY1+x58Z/zFdwQ==",
648 | "dev": true,
649 | "dependencies": {
650 | "acorn": "^8.9.0",
651 | "acorn-jsx": "^5.3.2",
652 | "eslint-visitor-keys": "^3.4.1"
653 | },
654 | "engines": {
655 | "node": "^12.22.0 || ^14.17.0 || >=16.0.0"
656 | },
657 | "funding": {
658 | "url": "https://opencollective.com/eslint"
659 | }
660 | },
661 | "node_modules/esquery": {
662 | "version": "1.5.0",
663 | "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.5.0.tgz",
664 | "integrity": "sha512-YQLXUplAwJgCydQ78IMJywZCceoqk1oH01OERdSAJc/7U2AylwjhSCLDEtqwg811idIS/9fIU5GjG73IgjKMVg==",
665 | "dev": true,
666 | "dependencies": {
667 | "estraverse": "^5.1.0"
668 | },
669 | "engines": {
670 | "node": ">=0.10"
671 | }
672 | },
673 | "node_modules/esrecurse": {
674 | "version": "4.3.0",
675 | "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz",
676 | "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==",
677 | "dev": true,
678 | "dependencies": {
679 | "estraverse": "^5.2.0"
680 | },
681 | "engines": {
682 | "node": ">=4.0"
683 | }
684 | },
685 | "node_modules/estraverse": {
686 | "version": "5.3.0",
687 | "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz",
688 | "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==",
689 | "dev": true,
690 | "engines": {
691 | "node": ">=4.0"
692 | }
693 | },
694 | "node_modules/esutils": {
695 | "version": "2.0.3",
696 | "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz",
697 | "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==",
698 | "dev": true,
699 | "engines": {
700 | "node": ">=0.10.0"
701 | }
702 | },
703 | "node_modules/etag": {
704 | "version": "1.8.1",
705 | "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz",
706 | "integrity": "sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg==",
707 | "engines": {
708 | "node": ">= 0.6"
709 | }
710 | },
711 | "node_modules/express": {
712 | "version": "4.18.2",
713 | "resolved": "https://registry.npmjs.org/express/-/express-4.18.2.tgz",
714 | "integrity": "sha512-5/PsL6iGPdfQ/lKM1UuielYgv3BUoJfz1aUwU9vHZ+J7gyvwdQXFEBIEIaxeGf0GIcreATNyBExtalisDbuMqQ==",
715 | "dependencies": {
716 | "accepts": "~1.3.8",
717 | "array-flatten": "1.1.1",
718 | "body-parser": "1.20.1",
719 | "content-disposition": "0.5.4",
720 | "content-type": "~1.0.4",
721 | "cookie": "0.5.0",
722 | "cookie-signature": "1.0.6",
723 | "debug": "2.6.9",
724 | "depd": "2.0.0",
725 | "encodeurl": "~1.0.2",
726 | "escape-html": "~1.0.3",
727 | "etag": "~1.8.1",
728 | "finalhandler": "1.2.0",
729 | "fresh": "0.5.2",
730 | "http-errors": "2.0.0",
731 | "merge-descriptors": "1.0.1",
732 | "methods": "~1.1.2",
733 | "on-finished": "2.4.1",
734 | "parseurl": "~1.3.3",
735 | "path-to-regexp": "0.1.7",
736 | "proxy-addr": "~2.0.7",
737 | "qs": "6.11.0",
738 | "range-parser": "~1.2.1",
739 | "safe-buffer": "5.2.1",
740 | "send": "0.18.0",
741 | "serve-static": "1.15.0",
742 | "setprototypeof": "1.2.0",
743 | "statuses": "2.0.1",
744 | "type-is": "~1.6.18",
745 | "utils-merge": "1.0.1",
746 | "vary": "~1.1.2"
747 | },
748 | "engines": {
749 | "node": ">= 0.10.0"
750 | }
751 | },
752 | "node_modules/fast-deep-equal": {
753 | "version": "3.1.3",
754 | "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz",
755 | "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==",
756 | "dev": true
757 | },
758 | "node_modules/fast-json-stable-stringify": {
759 | "version": "2.1.0",
760 | "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz",
761 | "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==",
762 | "dev": true
763 | },
764 | "node_modules/fast-levenshtein": {
765 | "version": "2.0.6",
766 | "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz",
767 | "integrity": "sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==",
768 | "dev": true
769 | },
770 | "node_modules/fastq": {
771 | "version": "1.15.0",
772 | "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.15.0.tgz",
773 | "integrity": "sha512-wBrocU2LCXXa+lWBt8RoIRD89Fi8OdABODa/kEnyeyjS5aZO5/GNvI5sEINADqP/h8M29UHTHUb53sUu5Ihqdw==",
774 | "dev": true,
775 | "dependencies": {
776 | "reusify": "^1.0.4"
777 | }
778 | },
779 | "node_modules/file-entry-cache": {
780 | "version": "6.0.1",
781 | "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-6.0.1.tgz",
782 | "integrity": "sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==",
783 | "dev": true,
784 | "dependencies": {
785 | "flat-cache": "^3.0.4"
786 | },
787 | "engines": {
788 | "node": "^10.12.0 || >=12.0.0"
789 | }
790 | },
791 | "node_modules/finalhandler": {
792 | "version": "1.2.0",
793 | "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.2.0.tgz",
794 | "integrity": "sha512-5uXcUVftlQMFnWC9qu/svkWv3GTd2PfUhK/3PLkYNAe7FbqJMt3515HaxE6eRL74GdsriiwujiawdaB1BpEISg==",
795 | "dependencies": {
796 | "debug": "2.6.9",
797 | "encodeurl": "~1.0.2",
798 | "escape-html": "~1.0.3",
799 | "on-finished": "2.4.1",
800 | "parseurl": "~1.3.3",
801 | "statuses": "2.0.1",
802 | "unpipe": "~1.0.0"
803 | },
804 | "engines": {
805 | "node": ">= 0.8"
806 | }
807 | },
808 | "node_modules/find-up": {
809 | "version": "5.0.0",
810 | "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz",
811 | "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==",
812 | "dev": true,
813 | "dependencies": {
814 | "locate-path": "^6.0.0",
815 | "path-exists": "^4.0.0"
816 | },
817 | "engines": {
818 | "node": ">=10"
819 | },
820 | "funding": {
821 | "url": "https://github.com/sponsors/sindresorhus"
822 | }
823 | },
824 | "node_modules/flat-cache": {
825 | "version": "3.1.0",
826 | "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-3.1.0.tgz",
827 | "integrity": "sha512-OHx4Qwrrt0E4jEIcI5/Xb+f+QmJYNj2rrK8wiIdQOIrB9WrrJL8cjZvXdXuBTkkEwEqLycb5BeZDV1o2i9bTew==",
828 | "dev": true,
829 | "dependencies": {
830 | "flatted": "^3.2.7",
831 | "keyv": "^4.5.3",
832 | "rimraf": "^3.0.2"
833 | },
834 | "engines": {
835 | "node": ">=12.0.0"
836 | }
837 | },
838 | "node_modules/flatted": {
839 | "version": "3.2.9",
840 | "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.2.9.tgz",
841 | "integrity": "sha512-36yxDn5H7OFZQla0/jFJmbIKTdZAQHngCedGxiMmpNfEZM0sdEeT+WczLQrjK6D7o2aiyLYDnkw0R3JK0Qv1RQ==",
842 | "dev": true
843 | },
844 | "node_modules/forwarded": {
845 | "version": "0.2.0",
846 | "resolved": "https://registry.npmjs.org/forwarded/-/forwarded-0.2.0.tgz",
847 | "integrity": "sha512-buRG0fpBtRHSTCOASe6hD258tEubFoRLb4ZNA6NxMVHNw2gOcwHo9wyablzMzOA5z9xA9L1KNjk/Nt6MT9aYow==",
848 | "engines": {
849 | "node": ">= 0.6"
850 | }
851 | },
852 | "node_modules/fresh": {
853 | "version": "0.5.2",
854 | "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz",
855 | "integrity": "sha512-zJ2mQYM18rEFOudeV4GShTGIQ7RbzA7ozbU9I/XBpm7kqgMywgmylMwXHxZJmkVoYkna9d2pVXVXPdYTP9ej8Q==",
856 | "engines": {
857 | "node": ">= 0.6"
858 | }
859 | },
860 | "node_modules/fs.realpath": {
861 | "version": "1.0.0",
862 | "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz",
863 | "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==",
864 | "dev": true
865 | },
866 | "node_modules/function-bind": {
867 | "version": "1.1.1",
868 | "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz",
869 | "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A=="
870 | },
871 | "node_modules/get-intrinsic": {
872 | "version": "1.2.1",
873 | "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.2.1.tgz",
874 | "integrity": "sha512-2DcsyfABl+gVHEfCOaTrWgyt+tb6MSEGmKq+kI5HwLbIYgjgmMcV8KQ41uaKz1xxUcn9tJtgFbQUEVcEbd0FYw==",
875 | "dependencies": {
876 | "function-bind": "^1.1.1",
877 | "has": "^1.0.3",
878 | "has-proto": "^1.0.1",
879 | "has-symbols": "^1.0.3"
880 | },
881 | "funding": {
882 | "url": "https://github.com/sponsors/ljharb"
883 | }
884 | },
885 | "node_modules/glob": {
886 | "version": "7.2.3",
887 | "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz",
888 | "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==",
889 | "dev": true,
890 | "dependencies": {
891 | "fs.realpath": "^1.0.0",
892 | "inflight": "^1.0.4",
893 | "inherits": "2",
894 | "minimatch": "^3.1.1",
895 | "once": "^1.3.0",
896 | "path-is-absolute": "^1.0.0"
897 | },
898 | "engines": {
899 | "node": "*"
900 | },
901 | "funding": {
902 | "url": "https://github.com/sponsors/isaacs"
903 | }
904 | },
905 | "node_modules/glob-parent": {
906 | "version": "6.0.2",
907 | "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz",
908 | "integrity": "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==",
909 | "dev": true,
910 | "dependencies": {
911 | "is-glob": "^4.0.3"
912 | },
913 | "engines": {
914 | "node": ">=10.13.0"
915 | }
916 | },
917 | "node_modules/globals": {
918 | "version": "13.22.0",
919 | "resolved": "https://registry.npmjs.org/globals/-/globals-13.22.0.tgz",
920 | "integrity": "sha512-H1Ddc/PbZHTDVJSnj8kWptIRSD6AM3pK+mKytuIVF4uoBV7rshFlhhvA58ceJ5wp3Er58w6zj7bykMpYXt3ETw==",
921 | "dev": true,
922 | "dependencies": {
923 | "type-fest": "^0.20.2"
924 | },
925 | "engines": {
926 | "node": ">=8"
927 | },
928 | "funding": {
929 | "url": "https://github.com/sponsors/sindresorhus"
930 | }
931 | },
932 | "node_modules/graphemer": {
933 | "version": "1.4.0",
934 | "resolved": "https://registry.npmjs.org/graphemer/-/graphemer-1.4.0.tgz",
935 | "integrity": "sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==",
936 | "dev": true
937 | },
938 | "node_modules/has": {
939 | "version": "1.0.3",
940 | "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz",
941 | "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==",
942 | "dependencies": {
943 | "function-bind": "^1.1.1"
944 | },
945 | "engines": {
946 | "node": ">= 0.4.0"
947 | }
948 | },
949 | "node_modules/has-flag": {
950 | "version": "4.0.0",
951 | "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
952 | "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
953 | "dev": true,
954 | "engines": {
955 | "node": ">=8"
956 | }
957 | },
958 | "node_modules/has-proto": {
959 | "version": "1.0.1",
960 | "resolved": "https://registry.npmjs.org/has-proto/-/has-proto-1.0.1.tgz",
961 | "integrity": "sha512-7qE+iP+O+bgF9clE5+UoBFzE65mlBiVj3tKCrlNQ0Ogwm0BjpT/gK4SlLYDMybDh5I3TCTKnPPa0oMG7JDYrhg==",
962 | "engines": {
963 | "node": ">= 0.4"
964 | },
965 | "funding": {
966 | "url": "https://github.com/sponsors/ljharb"
967 | }
968 | },
969 | "node_modules/has-symbols": {
970 | "version": "1.0.3",
971 | "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.3.tgz",
972 | "integrity": "sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==",
973 | "engines": {
974 | "node": ">= 0.4"
975 | },
976 | "funding": {
977 | "url": "https://github.com/sponsors/ljharb"
978 | }
979 | },
980 | "node_modules/http-errors": {
981 | "version": "2.0.0",
982 | "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-2.0.0.tgz",
983 | "integrity": "sha512-FtwrG/euBzaEjYeRqOgly7G0qviiXoJWnvEH2Z1plBdXgbyjv34pHTSb9zoeHMyDy33+DWy5Wt9Wo+TURtOYSQ==",
984 | "dependencies": {
985 | "depd": "2.0.0",
986 | "inherits": "2.0.4",
987 | "setprototypeof": "1.2.0",
988 | "statuses": "2.0.1",
989 | "toidentifier": "1.0.1"
990 | },
991 | "engines": {
992 | "node": ">= 0.8"
993 | }
994 | },
995 | "node_modules/iconv-lite": {
996 | "version": "0.4.24",
997 | "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz",
998 | "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==",
999 | "dependencies": {
1000 | "safer-buffer": ">= 2.1.2 < 3"
1001 | },
1002 | "engines": {
1003 | "node": ">=0.10.0"
1004 | }
1005 | },
1006 | "node_modules/ignore": {
1007 | "version": "5.2.4",
1008 | "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.2.4.tgz",
1009 | "integrity": "sha512-MAb38BcSbH0eHNBxn7ql2NH/kX33OkB3lZ1BNdh7ENeRChHTYsTvWrMubiIAMNS2llXEEgZ1MUOBtXChP3kaFQ==",
1010 | "dev": true,
1011 | "engines": {
1012 | "node": ">= 4"
1013 | }
1014 | },
1015 | "node_modules/import-fresh": {
1016 | "version": "3.3.0",
1017 | "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz",
1018 | "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==",
1019 | "dev": true,
1020 | "dependencies": {
1021 | "parent-module": "^1.0.0",
1022 | "resolve-from": "^4.0.0"
1023 | },
1024 | "engines": {
1025 | "node": ">=6"
1026 | },
1027 | "funding": {
1028 | "url": "https://github.com/sponsors/sindresorhus"
1029 | }
1030 | },
1031 | "node_modules/imurmurhash": {
1032 | "version": "0.1.4",
1033 | "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz",
1034 | "integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==",
1035 | "dev": true,
1036 | "engines": {
1037 | "node": ">=0.8.19"
1038 | }
1039 | },
1040 | "node_modules/inflight": {
1041 | "version": "1.0.6",
1042 | "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz",
1043 | "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==",
1044 | "dev": true,
1045 | "dependencies": {
1046 | "once": "^1.3.0",
1047 | "wrappy": "1"
1048 | }
1049 | },
1050 | "node_modules/inherits": {
1051 | "version": "2.0.4",
1052 | "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz",
1053 | "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ=="
1054 | },
1055 | "node_modules/ipaddr.js": {
1056 | "version": "1.9.1",
1057 | "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.9.1.tgz",
1058 | "integrity": "sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g==",
1059 | "engines": {
1060 | "node": ">= 0.10"
1061 | }
1062 | },
1063 | "node_modules/is-extglob": {
1064 | "version": "2.1.1",
1065 | "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz",
1066 | "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==",
1067 | "dev": true,
1068 | "engines": {
1069 | "node": ">=0.10.0"
1070 | }
1071 | },
1072 | "node_modules/is-glob": {
1073 | "version": "4.0.3",
1074 | "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz",
1075 | "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==",
1076 | "dev": true,
1077 | "dependencies": {
1078 | "is-extglob": "^2.1.1"
1079 | },
1080 | "engines": {
1081 | "node": ">=0.10.0"
1082 | }
1083 | },
1084 | "node_modules/is-path-inside": {
1085 | "version": "3.0.3",
1086 | "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-3.0.3.tgz",
1087 | "integrity": "sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==",
1088 | "dev": true,
1089 | "engines": {
1090 | "node": ">=8"
1091 | }
1092 | },
1093 | "node_modules/isexe": {
1094 | "version": "2.0.0",
1095 | "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz",
1096 | "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==",
1097 | "dev": true
1098 | },
1099 | "node_modules/js-yaml": {
1100 | "version": "4.1.0",
1101 | "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz",
1102 | "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==",
1103 | "dev": true,
1104 | "dependencies": {
1105 | "argparse": "^2.0.1"
1106 | },
1107 | "bin": {
1108 | "js-yaml": "bin/js-yaml.js"
1109 | }
1110 | },
1111 | "node_modules/json-buffer": {
1112 | "version": "3.0.1",
1113 | "resolved": "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.1.tgz",
1114 | "integrity": "sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==",
1115 | "dev": true
1116 | },
1117 | "node_modules/json-schema-traverse": {
1118 | "version": "0.4.1",
1119 | "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz",
1120 | "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==",
1121 | "dev": true
1122 | },
1123 | "node_modules/json-stable-stringify-without-jsonify": {
1124 | "version": "1.0.1",
1125 | "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz",
1126 | "integrity": "sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==",
1127 | "dev": true
1128 | },
1129 | "node_modules/keyv": {
1130 | "version": "4.5.3",
1131 | "resolved": "https://registry.npmjs.org/keyv/-/keyv-4.5.3.tgz",
1132 | "integrity": "sha512-QCiSav9WaX1PgETJ+SpNnx2PRRapJ/oRSXM4VO5OGYGSjrxbKPVFVhB3l2OCbLCk329N8qyAtsJjSjvVBWzEug==",
1133 | "dev": true,
1134 | "dependencies": {
1135 | "json-buffer": "3.0.1"
1136 | }
1137 | },
1138 | "node_modules/levn": {
1139 | "version": "0.4.1",
1140 | "resolved": "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz",
1141 | "integrity": "sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==",
1142 | "dev": true,
1143 | "dependencies": {
1144 | "prelude-ls": "^1.2.1",
1145 | "type-check": "~0.4.0"
1146 | },
1147 | "engines": {
1148 | "node": ">= 0.8.0"
1149 | }
1150 | },
1151 | "node_modules/locate-path": {
1152 | "version": "6.0.0",
1153 | "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz",
1154 | "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==",
1155 | "dev": true,
1156 | "dependencies": {
1157 | "p-locate": "^5.0.0"
1158 | },
1159 | "engines": {
1160 | "node": ">=10"
1161 | },
1162 | "funding": {
1163 | "url": "https://github.com/sponsors/sindresorhus"
1164 | }
1165 | },
1166 | "node_modules/lodash.merge": {
1167 | "version": "4.6.2",
1168 | "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz",
1169 | "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==",
1170 | "dev": true
1171 | },
1172 | "node_modules/lru-cache": {
1173 | "version": "5.1.1",
1174 | "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz",
1175 | "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==",
1176 | "dependencies": {
1177 | "yallist": "^3.0.2"
1178 | }
1179 | },
1180 | "node_modules/media-typer": {
1181 | "version": "0.3.0",
1182 | "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz",
1183 | "integrity": "sha512-dq+qelQ9akHpcOl/gUVRTxVIOkAJ1wR3QAvb4RsVjS8oVoFjDGTc679wJYmUmknUF5HwMLOgb5O+a3KxfWapPQ==",
1184 | "engines": {
1185 | "node": ">= 0.6"
1186 | }
1187 | },
1188 | "node_modules/merge-descriptors": {
1189 | "version": "1.0.1",
1190 | "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.1.tgz",
1191 | "integrity": "sha512-cCi6g3/Zr1iqQi6ySbseM1Xvooa98N0w31jzUYrXPX2xqObmFGHJ0tQ5u74H3mVh7wLouTseZyYIq39g8cNp1w=="
1192 | },
1193 | "node_modules/methods": {
1194 | "version": "1.1.2",
1195 | "resolved": "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz",
1196 | "integrity": "sha512-iclAHeNqNm68zFtnZ0e+1L2yUIdvzNoauKU4WBA3VvH/vPFieF7qfRlwUZU+DA9P9bPXIS90ulxoUoCH23sV2w==",
1197 | "engines": {
1198 | "node": ">= 0.6"
1199 | }
1200 | },
1201 | "node_modules/mime": {
1202 | "version": "1.6.0",
1203 | "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz",
1204 | "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==",
1205 | "bin": {
1206 | "mime": "cli.js"
1207 | },
1208 | "engines": {
1209 | "node": ">=4"
1210 | }
1211 | },
1212 | "node_modules/mime-db": {
1213 | "version": "1.52.0",
1214 | "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz",
1215 | "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==",
1216 | "engines": {
1217 | "node": ">= 0.6"
1218 | }
1219 | },
1220 | "node_modules/mime-types": {
1221 | "version": "2.1.35",
1222 | "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz",
1223 | "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==",
1224 | "dependencies": {
1225 | "mime-db": "1.52.0"
1226 | },
1227 | "engines": {
1228 | "node": ">= 0.6"
1229 | }
1230 | },
1231 | "node_modules/minimatch": {
1232 | "version": "3.1.2",
1233 | "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz",
1234 | "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==",
1235 | "dev": true,
1236 | "dependencies": {
1237 | "brace-expansion": "^1.1.7"
1238 | },
1239 | "engines": {
1240 | "node": "*"
1241 | }
1242 | },
1243 | "node_modules/ms": {
1244 | "version": "2.0.0",
1245 | "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz",
1246 | "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A=="
1247 | },
1248 | "node_modules/mustache": {
1249 | "version": "4.2.0",
1250 | "resolved": "https://registry.npmjs.org/mustache/-/mustache-4.2.0.tgz",
1251 | "integrity": "sha512-71ippSywq5Yb7/tVYyGbkBggbU8H3u5Rz56fH60jGFgr8uHwxs+aSKeqmluIVzM0m0kB7xQjKS6qPfd0b2ZoqQ==",
1252 | "bin": {
1253 | "mustache": "bin/mustache"
1254 | }
1255 | },
1256 | "node_modules/mustache-express": {
1257 | "version": "1.3.2",
1258 | "resolved": "https://registry.npmjs.org/mustache-express/-/mustache-express-1.3.2.tgz",
1259 | "integrity": "sha512-yAdGHctEq9ubUH7h9O6Z6kW35fwfE+7LpW/TBrcfVibZuiVRHDcK8DEydgiU5nlJmJUY5VC3jv2lzaPUL+Arkw==",
1260 | "dependencies": {
1261 | "async": "~3.2.0",
1262 | "lru-cache": "~5.1.1",
1263 | "mustache": "^4.2.0"
1264 | },
1265 | "engines": {
1266 | "node": ">= 0.8.0"
1267 | }
1268 | },
1269 | "node_modules/natural-compare": {
1270 | "version": "1.4.0",
1271 | "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz",
1272 | "integrity": "sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==",
1273 | "dev": true
1274 | },
1275 | "node_modules/negotiator": {
1276 | "version": "0.6.3",
1277 | "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.3.tgz",
1278 | "integrity": "sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==",
1279 | "engines": {
1280 | "node": ">= 0.6"
1281 | }
1282 | },
1283 | "node_modules/object-inspect": {
1284 | "version": "1.12.3",
1285 | "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.12.3.tgz",
1286 | "integrity": "sha512-geUvdk7c+eizMNUDkRpW1wJwgfOiOeHbxBR/hLXK1aT6zmVSO0jsQcs7fj6MGw89jC/cjGfLcNOrtMYtGqm81g==",
1287 | "funding": {
1288 | "url": "https://github.com/sponsors/ljharb"
1289 | }
1290 | },
1291 | "node_modules/on-finished": {
1292 | "version": "2.4.1",
1293 | "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.4.1.tgz",
1294 | "integrity": "sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg==",
1295 | "dependencies": {
1296 | "ee-first": "1.1.1"
1297 | },
1298 | "engines": {
1299 | "node": ">= 0.8"
1300 | }
1301 | },
1302 | "node_modules/once": {
1303 | "version": "1.4.0",
1304 | "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz",
1305 | "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==",
1306 | "dev": true,
1307 | "dependencies": {
1308 | "wrappy": "1"
1309 | }
1310 | },
1311 | "node_modules/optionator": {
1312 | "version": "0.9.3",
1313 | "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.3.tgz",
1314 | "integrity": "sha512-JjCoypp+jKn1ttEFExxhetCKeJt9zhAgAve5FXHixTvFDW/5aEktX9bufBKLRRMdU7bNtpLfcGu94B3cdEJgjg==",
1315 | "dev": true,
1316 | "dependencies": {
1317 | "@aashutoshrathi/word-wrap": "^1.2.3",
1318 | "deep-is": "^0.1.3",
1319 | "fast-levenshtein": "^2.0.6",
1320 | "levn": "^0.4.1",
1321 | "prelude-ls": "^1.2.1",
1322 | "type-check": "^0.4.0"
1323 | },
1324 | "engines": {
1325 | "node": ">= 0.8.0"
1326 | }
1327 | },
1328 | "node_modules/p-limit": {
1329 | "version": "3.1.0",
1330 | "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz",
1331 | "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==",
1332 | "dev": true,
1333 | "dependencies": {
1334 | "yocto-queue": "^0.1.0"
1335 | },
1336 | "engines": {
1337 | "node": ">=10"
1338 | },
1339 | "funding": {
1340 | "url": "https://github.com/sponsors/sindresorhus"
1341 | }
1342 | },
1343 | "node_modules/p-locate": {
1344 | "version": "5.0.0",
1345 | "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz",
1346 | "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==",
1347 | "dev": true,
1348 | "dependencies": {
1349 | "p-limit": "^3.0.2"
1350 | },
1351 | "engines": {
1352 | "node": ">=10"
1353 | },
1354 | "funding": {
1355 | "url": "https://github.com/sponsors/sindresorhus"
1356 | }
1357 | },
1358 | "node_modules/parent-module": {
1359 | "version": "1.0.1",
1360 | "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz",
1361 | "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==",
1362 | "dev": true,
1363 | "dependencies": {
1364 | "callsites": "^3.0.0"
1365 | },
1366 | "engines": {
1367 | "node": ">=6"
1368 | }
1369 | },
1370 | "node_modules/parseurl": {
1371 | "version": "1.3.3",
1372 | "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz",
1373 | "integrity": "sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==",
1374 | "engines": {
1375 | "node": ">= 0.8"
1376 | }
1377 | },
1378 | "node_modules/path-exists": {
1379 | "version": "4.0.0",
1380 | "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz",
1381 | "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==",
1382 | "dev": true,
1383 | "engines": {
1384 | "node": ">=8"
1385 | }
1386 | },
1387 | "node_modules/path-is-absolute": {
1388 | "version": "1.0.1",
1389 | "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz",
1390 | "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==",
1391 | "dev": true,
1392 | "engines": {
1393 | "node": ">=0.10.0"
1394 | }
1395 | },
1396 | "node_modules/path-key": {
1397 | "version": "3.1.1",
1398 | "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz",
1399 | "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==",
1400 | "dev": true,
1401 | "engines": {
1402 | "node": ">=8"
1403 | }
1404 | },
1405 | "node_modules/path-to-regexp": {
1406 | "version": "0.1.7",
1407 | "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.7.tgz",
1408 | "integrity": "sha512-5DFkuoqlv1uYQKxy8omFBeJPQcdoE07Kv2sferDCrAq1ohOU+MSDswDIbnx3YAM60qIOnYa53wBhXW0EbMonrQ=="
1409 | },
1410 | "node_modules/prelude-ls": {
1411 | "version": "1.2.1",
1412 | "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz",
1413 | "integrity": "sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==",
1414 | "dev": true,
1415 | "engines": {
1416 | "node": ">= 0.8.0"
1417 | }
1418 | },
1419 | "node_modules/proxy-addr": {
1420 | "version": "2.0.7",
1421 | "resolved": "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.7.tgz",
1422 | "integrity": "sha512-llQsMLSUDUPT44jdrU/O37qlnifitDP+ZwrmmZcoSKyLKvtZxpyV0n2/bD/N4tBAAZ/gJEdZU7KMraoK1+XYAg==",
1423 | "dependencies": {
1424 | "forwarded": "0.2.0",
1425 | "ipaddr.js": "1.9.1"
1426 | },
1427 | "engines": {
1428 | "node": ">= 0.10"
1429 | }
1430 | },
1431 | "node_modules/punycode": {
1432 | "version": "2.3.0",
1433 | "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.0.tgz",
1434 | "integrity": "sha512-rRV+zQD8tVFys26lAGR9WUuS4iUAngJScM+ZRSKtvl5tKeZ2t5bvdNFdNHBW9FWR4guGHlgmsZ1G7BSm2wTbuA==",
1435 | "dev": true,
1436 | "engines": {
1437 | "node": ">=6"
1438 | }
1439 | },
1440 | "node_modules/qs": {
1441 | "version": "6.11.0",
1442 | "resolved": "https://registry.npmjs.org/qs/-/qs-6.11.0.tgz",
1443 | "integrity": "sha512-MvjoMCJwEarSbUYk5O+nmoSzSutSsTwF85zcHPQ9OrlFoZOYIjaqBAJIqIXjptyD5vThxGq52Xu/MaJzRkIk4Q==",
1444 | "dependencies": {
1445 | "side-channel": "^1.0.4"
1446 | },
1447 | "engines": {
1448 | "node": ">=0.6"
1449 | },
1450 | "funding": {
1451 | "url": "https://github.com/sponsors/ljharb"
1452 | }
1453 | },
1454 | "node_modules/queue-microtask": {
1455 | "version": "1.2.3",
1456 | "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz",
1457 | "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==",
1458 | "dev": true,
1459 | "funding": [
1460 | {
1461 | "type": "github",
1462 | "url": "https://github.com/sponsors/feross"
1463 | },
1464 | {
1465 | "type": "patreon",
1466 | "url": "https://www.patreon.com/feross"
1467 | },
1468 | {
1469 | "type": "consulting",
1470 | "url": "https://feross.org/support"
1471 | }
1472 | ]
1473 | },
1474 | "node_modules/range-parser": {
1475 | "version": "1.2.1",
1476 | "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.1.tgz",
1477 | "integrity": "sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==",
1478 | "engines": {
1479 | "node": ">= 0.6"
1480 | }
1481 | },
1482 | "node_modules/raw-body": {
1483 | "version": "2.5.1",
1484 | "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.5.1.tgz",
1485 | "integrity": "sha512-qqJBtEyVgS0ZmPGdCFPWJ3FreoqvG4MVQln/kCgF7Olq95IbOp0/BWyMwbdtn4VTvkM8Y7khCQ2Xgk/tcrCXig==",
1486 | "dependencies": {
1487 | "bytes": "3.1.2",
1488 | "http-errors": "2.0.0",
1489 | "iconv-lite": "0.4.24",
1490 | "unpipe": "1.0.0"
1491 | },
1492 | "engines": {
1493 | "node": ">= 0.8"
1494 | }
1495 | },
1496 | "node_modules/resolve-from": {
1497 | "version": "4.0.0",
1498 | "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz",
1499 | "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==",
1500 | "dev": true,
1501 | "engines": {
1502 | "node": ">=4"
1503 | }
1504 | },
1505 | "node_modules/reusify": {
1506 | "version": "1.0.4",
1507 | "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz",
1508 | "integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==",
1509 | "dev": true,
1510 | "engines": {
1511 | "iojs": ">=1.0.0",
1512 | "node": ">=0.10.0"
1513 | }
1514 | },
1515 | "node_modules/rimraf": {
1516 | "version": "3.0.2",
1517 | "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz",
1518 | "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==",
1519 | "dev": true,
1520 | "dependencies": {
1521 | "glob": "^7.1.3"
1522 | },
1523 | "bin": {
1524 | "rimraf": "bin.js"
1525 | },
1526 | "funding": {
1527 | "url": "https://github.com/sponsors/isaacs"
1528 | }
1529 | },
1530 | "node_modules/run-parallel": {
1531 | "version": "1.2.0",
1532 | "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz",
1533 | "integrity": "sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==",
1534 | "dev": true,
1535 | "funding": [
1536 | {
1537 | "type": "github",
1538 | "url": "https://github.com/sponsors/feross"
1539 | },
1540 | {
1541 | "type": "patreon",
1542 | "url": "https://www.patreon.com/feross"
1543 | },
1544 | {
1545 | "type": "consulting",
1546 | "url": "https://feross.org/support"
1547 | }
1548 | ],
1549 | "dependencies": {
1550 | "queue-microtask": "^1.2.2"
1551 | }
1552 | },
1553 | "node_modules/safe-buffer": {
1554 | "version": "5.2.1",
1555 | "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz",
1556 | "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==",
1557 | "funding": [
1558 | {
1559 | "type": "github",
1560 | "url": "https://github.com/sponsors/feross"
1561 | },
1562 | {
1563 | "type": "patreon",
1564 | "url": "https://www.patreon.com/feross"
1565 | },
1566 | {
1567 | "type": "consulting",
1568 | "url": "https://feross.org/support"
1569 | }
1570 | ]
1571 | },
1572 | "node_modules/safer-buffer": {
1573 | "version": "2.1.2",
1574 | "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz",
1575 | "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg=="
1576 | },
1577 | "node_modules/send": {
1578 | "version": "0.18.0",
1579 | "resolved": "https://registry.npmjs.org/send/-/send-0.18.0.tgz",
1580 | "integrity": "sha512-qqWzuOjSFOuqPjFe4NOsMLafToQQwBSOEpS+FwEt3A2V3vKubTquT3vmLTQpFgMXp8AlFWFuP1qKaJZOtPpVXg==",
1581 | "dependencies": {
1582 | "debug": "2.6.9",
1583 | "depd": "2.0.0",
1584 | "destroy": "1.2.0",
1585 | "encodeurl": "~1.0.2",
1586 | "escape-html": "~1.0.3",
1587 | "etag": "~1.8.1",
1588 | "fresh": "0.5.2",
1589 | "http-errors": "2.0.0",
1590 | "mime": "1.6.0",
1591 | "ms": "2.1.3",
1592 | "on-finished": "2.4.1",
1593 | "range-parser": "~1.2.1",
1594 | "statuses": "2.0.1"
1595 | },
1596 | "engines": {
1597 | "node": ">= 0.8.0"
1598 | }
1599 | },
1600 | "node_modules/send/node_modules/ms": {
1601 | "version": "2.1.3",
1602 | "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz",
1603 | "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA=="
1604 | },
1605 | "node_modules/serve-static": {
1606 | "version": "1.15.0",
1607 | "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.15.0.tgz",
1608 | "integrity": "sha512-XGuRDNjXUijsUL0vl6nSD7cwURuzEgglbOaFuZM9g3kwDXOWVTck0jLzjPzGD+TazWbboZYu52/9/XPdUgne9g==",
1609 | "dependencies": {
1610 | "encodeurl": "~1.0.2",
1611 | "escape-html": "~1.0.3",
1612 | "parseurl": "~1.3.3",
1613 | "send": "0.18.0"
1614 | },
1615 | "engines": {
1616 | "node": ">= 0.8.0"
1617 | }
1618 | },
1619 | "node_modules/setprototypeof": {
1620 | "version": "1.2.0",
1621 | "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.2.0.tgz",
1622 | "integrity": "sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw=="
1623 | },
1624 | "node_modules/shebang-command": {
1625 | "version": "2.0.0",
1626 | "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz",
1627 | "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==",
1628 | "dev": true,
1629 | "dependencies": {
1630 | "shebang-regex": "^3.0.0"
1631 | },
1632 | "engines": {
1633 | "node": ">=8"
1634 | }
1635 | },
1636 | "node_modules/shebang-regex": {
1637 | "version": "3.0.0",
1638 | "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz",
1639 | "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==",
1640 | "dev": true,
1641 | "engines": {
1642 | "node": ">=8"
1643 | }
1644 | },
1645 | "node_modules/side-channel": {
1646 | "version": "1.0.4",
1647 | "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.4.tgz",
1648 | "integrity": "sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==",
1649 | "dependencies": {
1650 | "call-bind": "^1.0.0",
1651 | "get-intrinsic": "^1.0.2",
1652 | "object-inspect": "^1.9.0"
1653 | },
1654 | "funding": {
1655 | "url": "https://github.com/sponsors/ljharb"
1656 | }
1657 | },
1658 | "node_modules/statuses": {
1659 | "version": "2.0.1",
1660 | "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz",
1661 | "integrity": "sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==",
1662 | "engines": {
1663 | "node": ">= 0.8"
1664 | }
1665 | },
1666 | "node_modules/strip-ansi": {
1667 | "version": "6.0.1",
1668 | "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz",
1669 | "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==",
1670 | "dev": true,
1671 | "dependencies": {
1672 | "ansi-regex": "^5.0.1"
1673 | },
1674 | "engines": {
1675 | "node": ">=8"
1676 | }
1677 | },
1678 | "node_modules/strip-json-comments": {
1679 | "version": "3.1.1",
1680 | "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz",
1681 | "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==",
1682 | "dev": true,
1683 | "engines": {
1684 | "node": ">=8"
1685 | },
1686 | "funding": {
1687 | "url": "https://github.com/sponsors/sindresorhus"
1688 | }
1689 | },
1690 | "node_modules/supports-color": {
1691 | "version": "7.2.0",
1692 | "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
1693 | "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
1694 | "dev": true,
1695 | "dependencies": {
1696 | "has-flag": "^4.0.0"
1697 | },
1698 | "engines": {
1699 | "node": ">=8"
1700 | }
1701 | },
1702 | "node_modules/text-table": {
1703 | "version": "0.2.0",
1704 | "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz",
1705 | "integrity": "sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==",
1706 | "dev": true
1707 | },
1708 | "node_modules/toidentifier": {
1709 | "version": "1.0.1",
1710 | "resolved": "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.1.tgz",
1711 | "integrity": "sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA==",
1712 | "engines": {
1713 | "node": ">=0.6"
1714 | }
1715 | },
1716 | "node_modules/type-check": {
1717 | "version": "0.4.0",
1718 | "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz",
1719 | "integrity": "sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==",
1720 | "dev": true,
1721 | "dependencies": {
1722 | "prelude-ls": "^1.2.1"
1723 | },
1724 | "engines": {
1725 | "node": ">= 0.8.0"
1726 | }
1727 | },
1728 | "node_modules/type-fest": {
1729 | "version": "0.20.2",
1730 | "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz",
1731 | "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==",
1732 | "dev": true,
1733 | "engines": {
1734 | "node": ">=10"
1735 | },
1736 | "funding": {
1737 | "url": "https://github.com/sponsors/sindresorhus"
1738 | }
1739 | },
1740 | "node_modules/type-is": {
1741 | "version": "1.6.18",
1742 | "resolved": "https://registry.npmjs.org/type-is/-/type-is-1.6.18.tgz",
1743 | "integrity": "sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g==",
1744 | "dependencies": {
1745 | "media-typer": "0.3.0",
1746 | "mime-types": "~2.1.24"
1747 | },
1748 | "engines": {
1749 | "node": ">= 0.6"
1750 | }
1751 | },
1752 | "node_modules/unpipe": {
1753 | "version": "1.0.0",
1754 | "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz",
1755 | "integrity": "sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ==",
1756 | "engines": {
1757 | "node": ">= 0.8"
1758 | }
1759 | },
1760 | "node_modules/uri-js": {
1761 | "version": "4.4.1",
1762 | "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz",
1763 | "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==",
1764 | "dev": true,
1765 | "dependencies": {
1766 | "punycode": "^2.1.0"
1767 | }
1768 | },
1769 | "node_modules/utils-merge": {
1770 | "version": "1.0.1",
1771 | "resolved": "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz",
1772 | "integrity": "sha512-pMZTvIkT1d+TFGvDOqodOclx0QWkkgi6Tdoa8gC8ffGAAqz9pzPTZWAybbsHHoED/ztMtkv/VoYTYyShUn81hA==",
1773 | "engines": {
1774 | "node": ">= 0.4.0"
1775 | }
1776 | },
1777 | "node_modules/vary": {
1778 | "version": "1.1.2",
1779 | "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz",
1780 | "integrity": "sha512-BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg==",
1781 | "engines": {
1782 | "node": ">= 0.8"
1783 | }
1784 | },
1785 | "node_modules/which": {
1786 | "version": "2.0.2",
1787 | "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz",
1788 | "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==",
1789 | "dev": true,
1790 | "dependencies": {
1791 | "isexe": "^2.0.0"
1792 | },
1793 | "bin": {
1794 | "node-which": "bin/node-which"
1795 | },
1796 | "engines": {
1797 | "node": ">= 8"
1798 | }
1799 | },
1800 | "node_modules/wrappy": {
1801 | "version": "1.0.2",
1802 | "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz",
1803 | "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==",
1804 | "dev": true
1805 | },
1806 | "node_modules/yallist": {
1807 | "version": "3.1.1",
1808 | "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz",
1809 | "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g=="
1810 | },
1811 | "node_modules/yocto-queue": {
1812 | "version": "0.1.0",
1813 | "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz",
1814 | "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==",
1815 | "dev": true,
1816 | "engines": {
1817 | "node": ">=10"
1818 | },
1819 | "funding": {
1820 | "url": "https://github.com/sponsors/sindresorhus"
1821 | }
1822 | }
1823 | }
1824 | }
1825 |
--------------------------------------------------------------------------------
/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "100-dias-de-codigo-github-readme",
3 | "version": "1.0.0",
4 | "description": "",
5 | "main": "index.js",
6 | "scripts": {
7 | "start": "node index.js"
8 | },
9 | "keywords": [],
10 | "author": "",
11 | "license": "ISC",
12 | "dependencies": {
13 | "express": "^4.18.2",
14 | "mustache-express": "^1.3.2"
15 | },
16 | "devDependencies": {
17 | "eslint": "^8.50.0",
18 | "eslint-config-xo": "^0.43.1"
19 | }
20 | }
21 |
--------------------------------------------------------------------------------
/vercel.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": 2,
3 | "builds": [
4 | {
5 | "src": "index.js",
6 | "use": "@vercel/node"
7 | }
8 | ],
9 | "routes": [
10 | {
11 | "src": "/(.*)",
12 | "dest": "index.js"
13 | }
14 | ]
15 | }
16 |
--------------------------------------------------------------------------------
/views/index.mustache:
--------------------------------------------------------------------------------
1 |
202 |
--------------------------------------------------------------------------------