├── content ├── Edicion.png └── Listado.png ├── media ├── bladerunner.png ├── interstellar.png └── 2001_space_odyssey.png ├── server ├── package.json ├── db.json └── package-lock.json ├── README.md └── .gitignore /content/Edicion.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Lemoncode/angular-lab-2023/main/content/Edicion.png -------------------------------------------------------------------------------- /content/Listado.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Lemoncode/angular-lab-2023/main/content/Listado.png -------------------------------------------------------------------------------- /media/bladerunner.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Lemoncode/angular-lab-2023/main/media/bladerunner.png -------------------------------------------------------------------------------- /media/interstellar.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Lemoncode/angular-lab-2023/main/media/interstellar.png -------------------------------------------------------------------------------- /media/2001_space_odyssey.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Lemoncode/angular-lab-2023/main/media/2001_space_odyssey.png -------------------------------------------------------------------------------- /server/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "demo-server", 3 | "version": "1.0.0", 4 | "description": "", 5 | "main": "index.js", 6 | "scripts": { 7 | "start": "json-server --watch db.json --port 3001", 8 | "test": "echo \"Error: no test specified\" && exit 1" 9 | }, 10 | "author": "", 11 | "license": "ISC", 12 | "dependencies": { 13 | "json-server": "^0.17.1" 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /server/db.json: -------------------------------------------------------------------------------- 1 | { 2 | "movies": [ 3 | { 4 | "id": 1, 5 | "name": "Blade Runner", 6 | "poster": "https://raw.githubusercontent.com/Lemoncode/angular-lab-2023/main/media/bladerunner.png", 7 | "director": "Ridley Scott", 8 | "year": 1982 9 | }, 10 | { 11 | "id": 2, 12 | "name": "Interstellar", 13 | "poster": "https://raw.githubusercontent.com/Lemoncode/angular-lab-2023/main/media/interstellar.png", 14 | "director": "Christopher Nolan", 15 | "year": 2014 16 | }, 17 | { 18 | "id": 3, 19 | "name": "2001 space odyssey", 20 | "poster": "https://raw.githubusercontent.com/Lemoncode/angular-lab-2023/main/media/2001_space_odyssey.png", 21 | "director": "Stanley Kubrick", 22 | "year": 1968 23 | } 24 | ] 25 | } 26 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # Laboratorio Angular 2 | 3 | Vamos a crear una aplicación simple que contendrá dos páginas: 4 | 5 | 1. Listado de películas 6 | 2. Visualización detalle de películas 7 | 8 | ## Listado de películas 9 | 10 | El listado de películas va a leer los datos de una API REST que nos proporciona una lista de películas. 11 | 12 | Vamos a mostrar el siguiente layout: 13 | 14 | ![Listado de películas](./content/Listado.png) 15 | 16 | ## Navegación 17 | 18 | - Pinchando en una película del listado, vamos a navegar a la página de detalle de la película, donde podemos editarla. 19 | 20 | ## Edición película 21 | 22 | Podemos editar una película existente para ello usaremos el verbo PUT o PATCH de la API REST. 23 | 24 | ![Edición de película](./content/Edicion.png) 25 | 26 | Validaciones formulario: 27 | 28 | - URL Imagen: 29 | - Obligatorio. 30 | - URL Bien formada. 31 | - Título: 32 | - Obligatorio. 33 | - Mínimo 3 caracteres. 34 | - Año 35 | - Obligatorio. 36 | - Año entre 1900 y 2100. 37 | - Director 38 | - Obligatorio. 39 | - Mínimo 3 caracteres. 40 | 41 | # Servidor 42 | 43 | En el repositorio de Angular-Lab se incluye una API Rest para pruebas, el repo esta en la siguiente url: 44 | 45 | Clonalo a local, una vez clonado, y en la carpeta de trabajo, ejecuta: 46 | 47 | ```bash 48 | cd server 49 | ``` 50 | 51 | ```bash 52 | npm start 53 | ``` 54 | 55 | Se levantara un servidor en el puerto 3001, para acceder al listado de películas, la url: 56 | 57 | ``` 58 | http://localhost:3001/movies 59 | ``` 60 | 61 | # Opcional 62 | 63 | Puntos opcionales a entregar: 64 | 65 | - Utilizar los controles de Angular Material. 66 | - Añadir funcionalidad de creación de película. 67 | - Añadir un botón de borrado de película. 68 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | *.pdf 2 | 3 | # Logs 4 | logs 5 | *.log 6 | npm-debug.log* 7 | yarn-debug.log* 8 | yarn-error.log* 9 | lerna-debug.log* 10 | 11 | # Diagnostic reports (https://nodejs.org/api/report.html) 12 | report.[0-9]*.[0-9]*.[0-9]*.[0-9]*.json 13 | 14 | # Runtime data 15 | pids 16 | *.pid 17 | *.seed 18 | *.pid.lock 19 | 20 | # Directory for instrumented libs generated by jscoverage/JSCover 21 | lib-cov 22 | 23 | # Coverage directory used by tools like istanbul 24 | coverage 25 | *.lcov 26 | 27 | # nyc test coverage 28 | .nyc_output 29 | 30 | # Grunt intermediate storage (https://gruntjs.com/creating-plugins#storing-task-files) 31 | .grunt 32 | 33 | # Bower dependency directory (https://bower.io/) 34 | bower_components 35 | 36 | # node-waf configuration 37 | .lock-wscript 38 | 39 | # Compiled binary addons (https://nodejs.org/api/addons.html) 40 | build/Release 41 | 42 | # Dependency directories 43 | node_modules/ 44 | jspm_packages/ 45 | 46 | # TypeScript v1 declaration files 47 | typings/ 48 | 49 | # TypeScript cache 50 | *.tsbuildinfo 51 | 52 | # Optional npm cache directory 53 | .npm 54 | 55 | # Optional eslint cache 56 | .eslintcache 57 | 58 | # Microbundle cache 59 | .rpt2_cache/ 60 | .rts2_cache_cjs/ 61 | .rts2_cache_es/ 62 | .rts2_cache_umd/ 63 | 64 | # Optional REPL history 65 | .node_repl_history 66 | 67 | # Output of 'npm pack' 68 | *.tgz 69 | 70 | # Yarn Integrity file 71 | .yarn-integrity 72 | 73 | # dotenv environment variables file 74 | .env 75 | .env.test 76 | 77 | # parcel-bundler cache (https://parceljs.org/) 78 | .cache 79 | 80 | # Next.js build output 81 | .next 82 | 83 | # Nuxt.js build / generate output 84 | .nuxt 85 | dist 86 | 87 | # Gatsby files 88 | .cache/ 89 | # Comment in the public line in if your project uses Gatsby and *not* Next.js 90 | # https://nextjs.org/blog/next-9-1#public-directory-support 91 | # public 92 | 93 | # vuepress build output 94 | .vuepress/dist 95 | 96 | # Serverless directories 97 | .serverless/ 98 | 99 | # FuseBox cache 100 | .fusebox/ 101 | 102 | # DynamoDB Local files 103 | .dynamodb/ 104 | 105 | # TernJS port file 106 | .tern-port 107 | -------------------------------------------------------------------------------- /server/package-lock.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "demo-server", 3 | "version": "1.0.0", 4 | "lockfileVersion": 2, 5 | "requires": true, 6 | "packages": { 7 | "": { 8 | "name": "demo-server", 9 | "version": "1.0.0", 10 | "license": "ISC", 11 | "dependencies": { 12 | "json-server": "^0.17.1" 13 | } 14 | }, 15 | "node_modules/accepts": { 16 | "version": "1.3.8", 17 | "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.8.tgz", 18 | "integrity": "sha512-PYAthTa2m2VKxuvSD3DPC/Gy+U+sOA1LAuT8mkmRuvw+NACSaeXEQ+NHcVF7rONl6qcaxV3Uuemwawk+7+SJLw==", 19 | "dependencies": { 20 | "mime-types": "~2.1.34", 21 | "negotiator": "0.6.3" 22 | }, 23 | "engines": { 24 | "node": ">= 0.6" 25 | } 26 | }, 27 | "node_modules/ansi-regex": { 28 | "version": "5.0.1", 29 | "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", 30 | "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", 31 | "engines": { 32 | "node": ">=8" 33 | } 34 | }, 35 | "node_modules/ansi-styles": { 36 | "version": "4.3.0", 37 | "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", 38 | "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", 39 | "dependencies": { 40 | "color-convert": "^2.0.1" 41 | }, 42 | "engines": { 43 | "node": ">=8" 44 | }, 45 | "funding": { 46 | "url": "https://github.com/chalk/ansi-styles?sponsor=1" 47 | } 48 | }, 49 | "node_modules/array-flatten": { 50 | "version": "1.1.1", 51 | "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz", 52 | "integrity": "sha512-PCVAQswWemu6UdxsDFFX/+gVeYqKAod3D3UVm91jHwynguOwAvYPhx8nNlM++NqRcK6CxxpUafjmhIdKiHibqg==" 53 | }, 54 | "node_modules/basic-auth": { 55 | "version": "2.0.1", 56 | "resolved": "https://registry.npmjs.org/basic-auth/-/basic-auth-2.0.1.tgz", 57 | "integrity": "sha512-NF+epuEdnUYVlGuhaxbbq+dvJttwLnGY+YixlXlME5KpQ5W3CnXA5cVTneY3SPbPDRkcjMbifrwmFYcClgOZeg==", 58 | "dependencies": { 59 | "safe-buffer": "5.1.2" 60 | }, 61 | "engines": { 62 | "node": ">= 0.8" 63 | } 64 | }, 65 | "node_modules/body-parser": { 66 | "version": "1.20.1", 67 | "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.20.1.tgz", 68 | "integrity": "sha512-jWi7abTbYwajOytWCQc37VulmWiRae5RyTpaCyDcS5/lMdtwSz5lOpDE67srw/HYe35f1z3fDQw+3txg7gNtWw==", 69 | "dependencies": { 70 | "bytes": "3.1.2", 71 | "content-type": "~1.0.4", 72 | "debug": "2.6.9", 73 | "depd": "2.0.0", 74 | "destroy": "1.2.0", 75 | "http-errors": "2.0.0", 76 | "iconv-lite": "0.4.24", 77 | "on-finished": "2.4.1", 78 | "qs": "6.11.0", 79 | "raw-body": "2.5.1", 80 | "type-is": "~1.6.18", 81 | "unpipe": "1.0.0" 82 | }, 83 | "engines": { 84 | "node": ">= 0.8", 85 | "npm": "1.2.8000 || >= 1.4.16" 86 | } 87 | }, 88 | "node_modules/bytes": { 89 | "version": "3.1.2", 90 | "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.2.tgz", 91 | "integrity": "sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==", 92 | "engines": { 93 | "node": ">= 0.8" 94 | } 95 | }, 96 | "node_modules/call-bind": { 97 | "version": "1.0.2", 98 | "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz", 99 | "integrity": "sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==", 100 | "dependencies": { 101 | "function-bind": "^1.1.1", 102 | "get-intrinsic": "^1.0.2" 103 | }, 104 | "funding": { 105 | "url": "https://github.com/sponsors/ljharb" 106 | } 107 | }, 108 | "node_modules/chalk": { 109 | "version": "4.1.2", 110 | "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", 111 | "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", 112 | "dependencies": { 113 | "ansi-styles": "^4.1.0", 114 | "supports-color": "^7.1.0" 115 | }, 116 | "engines": { 117 | "node": ">=10" 118 | }, 119 | "funding": { 120 | "url": "https://github.com/chalk/chalk?sponsor=1" 121 | } 122 | }, 123 | "node_modules/cliui": { 124 | "version": "8.0.1", 125 | "resolved": "https://registry.npmjs.org/cliui/-/cliui-8.0.1.tgz", 126 | "integrity": "sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==", 127 | "dependencies": { 128 | "string-width": "^4.2.0", 129 | "strip-ansi": "^6.0.1", 130 | "wrap-ansi": "^7.0.0" 131 | }, 132 | "engines": { 133 | "node": ">=12" 134 | } 135 | }, 136 | "node_modules/color-convert": { 137 | "version": "2.0.1", 138 | "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", 139 | "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", 140 | "dependencies": { 141 | "color-name": "~1.1.4" 142 | }, 143 | "engines": { 144 | "node": ">=7.0.0" 145 | } 146 | }, 147 | "node_modules/color-name": { 148 | "version": "1.1.4", 149 | "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", 150 | "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" 151 | }, 152 | "node_modules/compressible": { 153 | "version": "2.0.18", 154 | "resolved": "https://registry.npmjs.org/compressible/-/compressible-2.0.18.tgz", 155 | "integrity": "sha512-AF3r7P5dWxL8MxyITRMlORQNaOA2IkAFaTr4k7BUumjPtRpGDTZpl0Pb1XCO6JeDCBdp126Cgs9sMxqSjgYyRg==", 156 | "dependencies": { 157 | "mime-db": ">= 1.43.0 < 2" 158 | }, 159 | "engines": { 160 | "node": ">= 0.6" 161 | } 162 | }, 163 | "node_modules/compression": { 164 | "version": "1.7.4", 165 | "resolved": "https://registry.npmjs.org/compression/-/compression-1.7.4.tgz", 166 | "integrity": "sha512-jaSIDzP9pZVS4ZfQ+TzvtiWhdpFhE2RDHz8QJkpX9SIpLq88VueF5jJw6t+6CUQcAoA6t+x89MLrWAqpfDE8iQ==", 167 | "dependencies": { 168 | "accepts": "~1.3.5", 169 | "bytes": "3.0.0", 170 | "compressible": "~2.0.16", 171 | "debug": "2.6.9", 172 | "on-headers": "~1.0.2", 173 | "safe-buffer": "5.1.2", 174 | "vary": "~1.1.2" 175 | }, 176 | "engines": { 177 | "node": ">= 0.8.0" 178 | } 179 | }, 180 | "node_modules/compression/node_modules/bytes": { 181 | "version": "3.0.0", 182 | "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.0.0.tgz", 183 | "integrity": "sha512-pMhOfFDPiv9t5jjIXkHosWmkSyQbvsgEVNkz0ERHbuLh2T/7j4Mqqpz523Fe8MVY89KC6Sh/QfS2sM+SjgFDcw==", 184 | "engines": { 185 | "node": ">= 0.8" 186 | } 187 | }, 188 | "node_modules/connect-pause": { 189 | "version": "0.1.1", 190 | "resolved": "https://registry.npmjs.org/connect-pause/-/connect-pause-0.1.1.tgz", 191 | "integrity": "sha512-a1gSWQBQD73krFXdUEYJom2RTFrWUL3YvXDCRkyv//GVXc79cdW9MngtRuN9ih4FDKBtfJAJId+BbDuX+1rh2w==", 192 | "engines": { 193 | "node": "*" 194 | } 195 | }, 196 | "node_modules/content-disposition": { 197 | "version": "0.5.4", 198 | "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.4.tgz", 199 | "integrity": "sha512-FveZTNuGw04cxlAiWbzi6zTAL/lhehaWbTtgluJh4/E95DqMwTmha3KZN1aAWA8cFIhHzMZUvLevkw5Rqk+tSQ==", 200 | "dependencies": { 201 | "safe-buffer": "5.2.1" 202 | }, 203 | "engines": { 204 | "node": ">= 0.6" 205 | } 206 | }, 207 | "node_modules/content-disposition/node_modules/safe-buffer": { 208 | "version": "5.2.1", 209 | "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", 210 | "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", 211 | "funding": [ 212 | { 213 | "type": "github", 214 | "url": "https://github.com/sponsors/feross" 215 | }, 216 | { 217 | "type": "patreon", 218 | "url": "https://www.patreon.com/feross" 219 | }, 220 | { 221 | "type": "consulting", 222 | "url": "https://feross.org/support" 223 | } 224 | ] 225 | }, 226 | "node_modules/content-type": { 227 | "version": "1.0.5", 228 | "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.5.tgz", 229 | "integrity": "sha512-nTjqfcBFEipKdXCv4YDQWCfmcLZKm81ldF0pAopTvyrFGVbcR6P/VAAd5G7N+0tTr8QqiU0tFadD6FK4NtJwOA==", 230 | "engines": { 231 | "node": ">= 0.6" 232 | } 233 | }, 234 | "node_modules/cookie": { 235 | "version": "0.5.0", 236 | "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.5.0.tgz", 237 | "integrity": "sha512-YZ3GUyn/o8gfKJlnlX7g7xq4gyO6OSuhGPKaaGssGB2qgDUS0gPgtTvoyZLTt9Ab6dC4hfc9dV5arkvc/OCmrw==", 238 | "engines": { 239 | "node": ">= 0.6" 240 | } 241 | }, 242 | "node_modules/cookie-signature": { 243 | "version": "1.0.6", 244 | "resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz", 245 | "integrity": "sha512-QADzlaHc8icV8I7vbaJXJwod9HWYp8uCqf1xa4OfNu1T7JVxQIrUgOWtHdNDtPiywmFbiS12VjotIXLrKM3orQ==" 246 | }, 247 | "node_modules/cors": { 248 | "version": "2.8.5", 249 | "resolved": "https://registry.npmjs.org/cors/-/cors-2.8.5.tgz", 250 | "integrity": "sha512-KIHbLJqu73RGr/hnbrO9uBeixNGuvSQjul/jdFvS/KFSIH1hWVd1ng7zOHx+YrEfInLG7q4n6GHQ9cDtxv/P6g==", 251 | "dependencies": { 252 | "object-assign": "^4", 253 | "vary": "^1" 254 | }, 255 | "engines": { 256 | "node": ">= 0.10" 257 | } 258 | }, 259 | "node_modules/debug": { 260 | "version": "2.6.9", 261 | "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", 262 | "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", 263 | "dependencies": { 264 | "ms": "2.0.0" 265 | } 266 | }, 267 | "node_modules/depd": { 268 | "version": "2.0.0", 269 | "resolved": "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz", 270 | "integrity": "sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==", 271 | "engines": { 272 | "node": ">= 0.8" 273 | } 274 | }, 275 | "node_modules/destroy": { 276 | "version": "1.2.0", 277 | "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.2.0.tgz", 278 | "integrity": "sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg==", 279 | "engines": { 280 | "node": ">= 0.8", 281 | "npm": "1.2.8000 || >= 1.4.16" 282 | } 283 | }, 284 | "node_modules/ee-first": { 285 | "version": "1.1.1", 286 | "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", 287 | "integrity": "sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==" 288 | }, 289 | "node_modules/emoji-regex": { 290 | "version": "8.0.0", 291 | "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", 292 | "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==" 293 | }, 294 | "node_modules/encodeurl": { 295 | "version": "1.0.2", 296 | "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", 297 | "integrity": "sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w==", 298 | "engines": { 299 | "node": ">= 0.8" 300 | } 301 | }, 302 | "node_modules/errorhandler": { 303 | "version": "1.5.1", 304 | "resolved": "https://registry.npmjs.org/errorhandler/-/errorhandler-1.5.1.tgz", 305 | "integrity": "sha512-rcOwbfvP1WTViVoUjcfZicVzjhjTuhSMntHh6mW3IrEiyE6mJyXvsToJUJGlGlw/2xU9P5whlWNGlIDVeCiT4A==", 306 | "dependencies": { 307 | "accepts": "~1.3.7", 308 | "escape-html": "~1.0.3" 309 | }, 310 | "engines": { 311 | "node": ">= 0.8" 312 | } 313 | }, 314 | "node_modules/escalade": { 315 | "version": "3.1.1", 316 | "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz", 317 | "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==", 318 | "engines": { 319 | "node": ">=6" 320 | } 321 | }, 322 | "node_modules/escape-html": { 323 | "version": "1.0.3", 324 | "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz", 325 | "integrity": "sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow==" 326 | }, 327 | "node_modules/etag": { 328 | "version": "1.8.1", 329 | "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz", 330 | "integrity": "sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg==", 331 | "engines": { 332 | "node": ">= 0.6" 333 | } 334 | }, 335 | "node_modules/express": { 336 | "version": "4.18.2", 337 | "resolved": "https://registry.npmjs.org/express/-/express-4.18.2.tgz", 338 | "integrity": "sha512-5/PsL6iGPdfQ/lKM1UuielYgv3BUoJfz1aUwU9vHZ+J7gyvwdQXFEBIEIaxeGf0GIcreATNyBExtalisDbuMqQ==", 339 | "dependencies": { 340 | "accepts": "~1.3.8", 341 | "array-flatten": "1.1.1", 342 | "body-parser": "1.20.1", 343 | "content-disposition": "0.5.4", 344 | "content-type": "~1.0.4", 345 | "cookie": "0.5.0", 346 | "cookie-signature": "1.0.6", 347 | "debug": "2.6.9", 348 | "depd": "2.0.0", 349 | "encodeurl": "~1.0.2", 350 | "escape-html": "~1.0.3", 351 | "etag": "~1.8.1", 352 | "finalhandler": "1.2.0", 353 | "fresh": "0.5.2", 354 | "http-errors": "2.0.0", 355 | "merge-descriptors": "1.0.1", 356 | "methods": "~1.1.2", 357 | "on-finished": "2.4.1", 358 | "parseurl": "~1.3.3", 359 | "path-to-regexp": "0.1.7", 360 | "proxy-addr": "~2.0.7", 361 | "qs": "6.11.0", 362 | "range-parser": "~1.2.1", 363 | "safe-buffer": "5.2.1", 364 | "send": "0.18.0", 365 | "serve-static": "1.15.0", 366 | "setprototypeof": "1.2.0", 367 | "statuses": "2.0.1", 368 | "type-is": "~1.6.18", 369 | "utils-merge": "1.0.1", 370 | "vary": "~1.1.2" 371 | }, 372 | "engines": { 373 | "node": ">= 0.10.0" 374 | } 375 | }, 376 | "node_modules/express-urlrewrite": { 377 | "version": "1.4.0", 378 | "resolved": "https://registry.npmjs.org/express-urlrewrite/-/express-urlrewrite-1.4.0.tgz", 379 | "integrity": "sha512-PI5h8JuzoweS26vFizwQl6UTF25CAHSggNv0J25Dn/IKZscJHWZzPrI5z2Y2jgOzIaw2qh8l6+/jUcig23Z2SA==", 380 | "dependencies": { 381 | "debug": "*", 382 | "path-to-regexp": "^1.0.3" 383 | } 384 | }, 385 | "node_modules/express-urlrewrite/node_modules/path-to-regexp": { 386 | "version": "1.8.0", 387 | "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-1.8.0.tgz", 388 | "integrity": "sha512-n43JRhlUKUAlibEJhPeir1ncUID16QnEjNpwzNdO3Lm4ywrBpBZ5oLD0I6br9evr1Y9JTqwRtAh7JLoOzAQdVA==", 389 | "dependencies": { 390 | "isarray": "0.0.1" 391 | } 392 | }, 393 | "node_modules/express/node_modules/safe-buffer": { 394 | "version": "5.2.1", 395 | "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", 396 | "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", 397 | "funding": [ 398 | { 399 | "type": "github", 400 | "url": "https://github.com/sponsors/feross" 401 | }, 402 | { 403 | "type": "patreon", 404 | "url": "https://www.patreon.com/feross" 405 | }, 406 | { 407 | "type": "consulting", 408 | "url": "https://feross.org/support" 409 | } 410 | ] 411 | }, 412 | "node_modules/finalhandler": { 413 | "version": "1.2.0", 414 | "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.2.0.tgz", 415 | "integrity": "sha512-5uXcUVftlQMFnWC9qu/svkWv3GTd2PfUhK/3PLkYNAe7FbqJMt3515HaxE6eRL74GdsriiwujiawdaB1BpEISg==", 416 | "dependencies": { 417 | "debug": "2.6.9", 418 | "encodeurl": "~1.0.2", 419 | "escape-html": "~1.0.3", 420 | "on-finished": "2.4.1", 421 | "parseurl": "~1.3.3", 422 | "statuses": "2.0.1", 423 | "unpipe": "~1.0.0" 424 | }, 425 | "engines": { 426 | "node": ">= 0.8" 427 | } 428 | }, 429 | "node_modules/forwarded": { 430 | "version": "0.2.0", 431 | "resolved": "https://registry.npmjs.org/forwarded/-/forwarded-0.2.0.tgz", 432 | "integrity": "sha512-buRG0fpBtRHSTCOASe6hD258tEubFoRLb4ZNA6NxMVHNw2gOcwHo9wyablzMzOA5z9xA9L1KNjk/Nt6MT9aYow==", 433 | "engines": { 434 | "node": ">= 0.6" 435 | } 436 | }, 437 | "node_modules/fresh": { 438 | "version": "0.5.2", 439 | "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz", 440 | "integrity": "sha512-zJ2mQYM18rEFOudeV4GShTGIQ7RbzA7ozbU9I/XBpm7kqgMywgmylMwXHxZJmkVoYkna9d2pVXVXPdYTP9ej8Q==", 441 | "engines": { 442 | "node": ">= 0.6" 443 | } 444 | }, 445 | "node_modules/function-bind": { 446 | "version": "1.1.1", 447 | "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", 448 | "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==" 449 | }, 450 | "node_modules/get-caller-file": { 451 | "version": "2.0.5", 452 | "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", 453 | "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", 454 | "engines": { 455 | "node": "6.* || 8.* || >= 10.*" 456 | } 457 | }, 458 | "node_modules/get-intrinsic": { 459 | "version": "1.2.0", 460 | "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.2.0.tgz", 461 | "integrity": "sha512-L049y6nFOuom5wGyRc3/gdTLO94dySVKRACj1RmJZBQXlbTMhtNIgkWkUHq+jYmZvKf14EW1EoJnnjbmoHij0Q==", 462 | "dependencies": { 463 | "function-bind": "^1.1.1", 464 | "has": "^1.0.3", 465 | "has-symbols": "^1.0.3" 466 | }, 467 | "funding": { 468 | "url": "https://github.com/sponsors/ljharb" 469 | } 470 | }, 471 | "node_modules/graceful-fs": { 472 | "version": "4.2.10", 473 | "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.10.tgz", 474 | "integrity": "sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA==" 475 | }, 476 | "node_modules/has": { 477 | "version": "1.0.3", 478 | "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", 479 | "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", 480 | "dependencies": { 481 | "function-bind": "^1.1.1" 482 | }, 483 | "engines": { 484 | "node": ">= 0.4.0" 485 | } 486 | }, 487 | "node_modules/has-flag": { 488 | "version": "4.0.0", 489 | "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", 490 | "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", 491 | "engines": { 492 | "node": ">=8" 493 | } 494 | }, 495 | "node_modules/has-symbols": { 496 | "version": "1.0.3", 497 | "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.3.tgz", 498 | "integrity": "sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==", 499 | "engines": { 500 | "node": ">= 0.4" 501 | }, 502 | "funding": { 503 | "url": "https://github.com/sponsors/ljharb" 504 | } 505 | }, 506 | "node_modules/http-errors": { 507 | "version": "2.0.0", 508 | "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-2.0.0.tgz", 509 | "integrity": "sha512-FtwrG/euBzaEjYeRqOgly7G0qviiXoJWnvEH2Z1plBdXgbyjv34pHTSb9zoeHMyDy33+DWy5Wt9Wo+TURtOYSQ==", 510 | "dependencies": { 511 | "depd": "2.0.0", 512 | "inherits": "2.0.4", 513 | "setprototypeof": "1.2.0", 514 | "statuses": "2.0.1", 515 | "toidentifier": "1.0.1" 516 | }, 517 | "engines": { 518 | "node": ">= 0.8" 519 | } 520 | }, 521 | "node_modules/iconv-lite": { 522 | "version": "0.4.24", 523 | "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", 524 | "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", 525 | "dependencies": { 526 | "safer-buffer": ">= 2.1.2 < 3" 527 | }, 528 | "engines": { 529 | "node": ">=0.10.0" 530 | } 531 | }, 532 | "node_modules/inherits": { 533 | "version": "2.0.4", 534 | "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", 535 | "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" 536 | }, 537 | "node_modules/ipaddr.js": { 538 | "version": "1.9.1", 539 | "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.9.1.tgz", 540 | "integrity": "sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g==", 541 | "engines": { 542 | "node": ">= 0.10" 543 | } 544 | }, 545 | "node_modules/is-fullwidth-code-point": { 546 | "version": "3.0.0", 547 | "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", 548 | "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", 549 | "engines": { 550 | "node": ">=8" 551 | } 552 | }, 553 | "node_modules/is-promise": { 554 | "version": "2.2.2", 555 | "resolved": "https://registry.npmjs.org/is-promise/-/is-promise-2.2.2.tgz", 556 | "integrity": "sha512-+lP4/6lKUBfQjZ2pdxThZvLUAafmZb8OAxFb8XXtiQmS35INgr85hdOGoEs124ez1FCnZJt6jau/T+alh58QFQ==" 557 | }, 558 | "node_modules/isarray": { 559 | "version": "0.0.1", 560 | "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", 561 | "integrity": "sha512-D2S+3GLxWH+uhrNEcoh/fnmYeP8E8/zHl644d/jdA0g2uyXvy3sb0qxotE+ne0LtccHknQzWwZEzhak7oJ0COQ==" 562 | }, 563 | "node_modules/jju": { 564 | "version": "1.4.0", 565 | "resolved": "https://registry.npmjs.org/jju/-/jju-1.4.0.tgz", 566 | "integrity": "sha512-8wb9Yw966OSxApiCt0K3yNJL8pnNeIv+OEq2YMidz4FKP6nonSRoOXc80iXY4JaN2FC11B9qsNmDsm+ZOfMROA==" 567 | }, 568 | "node_modules/json-parse-helpfulerror": { 569 | "version": "1.0.3", 570 | "resolved": "https://registry.npmjs.org/json-parse-helpfulerror/-/json-parse-helpfulerror-1.0.3.tgz", 571 | "integrity": "sha512-XgP0FGR77+QhUxjXkwOMkC94k3WtqEBfcnjWqhRd82qTat4SWKRE+9kUnynz/shm3I4ea2+qISvTIeGTNU7kJg==", 572 | "dependencies": { 573 | "jju": "^1.1.0" 574 | } 575 | }, 576 | "node_modules/json-server": { 577 | "version": "0.17.1", 578 | "resolved": "https://registry.npmjs.org/json-server/-/json-server-0.17.1.tgz", 579 | "integrity": "sha512-2cR/IAL9xX4M1Y5ONMpnvRvJ5o9gJH5GsSQs7fQHdTKTKoN4YRZu1ApQKg/4P0XzwlLyUDqTlwhPq9nsvJ9acw==", 580 | "dependencies": { 581 | "body-parser": "^1.19.0", 582 | "chalk": "^4.1.2", 583 | "compression": "^1.7.4", 584 | "connect-pause": "^0.1.1", 585 | "cors": "^2.8.5", 586 | "errorhandler": "^1.5.1", 587 | "express": "^4.17.1", 588 | "express-urlrewrite": "^1.4.0", 589 | "json-parse-helpfulerror": "^1.0.3", 590 | "lodash": "^4.17.21", 591 | "lodash-id": "^0.14.1", 592 | "lowdb": "^1.0.0", 593 | "method-override": "^3.0.0", 594 | "morgan": "^1.10.0", 595 | "nanoid": "^3.1.23", 596 | "please-upgrade-node": "^3.2.0", 597 | "pluralize": "^8.0.0", 598 | "server-destroy": "^1.0.1", 599 | "yargs": "^17.0.1" 600 | }, 601 | "bin": { 602 | "json-server": "lib/cli/bin.js" 603 | }, 604 | "engines": { 605 | "node": ">=12" 606 | } 607 | }, 608 | "node_modules/lodash": { 609 | "version": "4.17.21", 610 | "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", 611 | "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==" 612 | }, 613 | "node_modules/lodash-id": { 614 | "version": "0.14.1", 615 | "resolved": "https://registry.npmjs.org/lodash-id/-/lodash-id-0.14.1.tgz", 616 | "integrity": "sha512-ikQPBTiq/d5m6dfKQlFdIXFzvThPi2Be9/AHxktOnDSfSxE1j9ICbBT5Elk1ke7HSTgM38LHTpmJovo9/klnLg==", 617 | "engines": { 618 | "node": ">= 4" 619 | } 620 | }, 621 | "node_modules/lowdb": { 622 | "version": "1.0.0", 623 | "resolved": "https://registry.npmjs.org/lowdb/-/lowdb-1.0.0.tgz", 624 | "integrity": "sha512-2+x8esE/Wb9SQ1F9IHaYWfsC9FIecLOPrK4g17FGEayjUWH172H6nwicRovGvSE2CPZouc2MCIqCI7h9d+GftQ==", 625 | "dependencies": { 626 | "graceful-fs": "^4.1.3", 627 | "is-promise": "^2.1.0", 628 | "lodash": "4", 629 | "pify": "^3.0.0", 630 | "steno": "^0.4.1" 631 | }, 632 | "engines": { 633 | "node": ">=4" 634 | } 635 | }, 636 | "node_modules/media-typer": { 637 | "version": "0.3.0", 638 | "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz", 639 | "integrity": "sha512-dq+qelQ9akHpcOl/gUVRTxVIOkAJ1wR3QAvb4RsVjS8oVoFjDGTc679wJYmUmknUF5HwMLOgb5O+a3KxfWapPQ==", 640 | "engines": { 641 | "node": ">= 0.6" 642 | } 643 | }, 644 | "node_modules/merge-descriptors": { 645 | "version": "1.0.1", 646 | "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.1.tgz", 647 | "integrity": "sha512-cCi6g3/Zr1iqQi6ySbseM1Xvooa98N0w31jzUYrXPX2xqObmFGHJ0tQ5u74H3mVh7wLouTseZyYIq39g8cNp1w==" 648 | }, 649 | "node_modules/method-override": { 650 | "version": "3.0.0", 651 | "resolved": "https://registry.npmjs.org/method-override/-/method-override-3.0.0.tgz", 652 | "integrity": "sha512-IJ2NNN/mSl9w3kzWB92rcdHpz+HjkxhDJWNDBqSlas+zQdP8wBiJzITPg08M/k2uVvMow7Sk41atndNtt/PHSA==", 653 | "dependencies": { 654 | "debug": "3.1.0", 655 | "methods": "~1.1.2", 656 | "parseurl": "~1.3.2", 657 | "vary": "~1.1.2" 658 | }, 659 | "engines": { 660 | "node": ">= 0.10" 661 | } 662 | }, 663 | "node_modules/method-override/node_modules/debug": { 664 | "version": "3.1.0", 665 | "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", 666 | "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", 667 | "dependencies": { 668 | "ms": "2.0.0" 669 | } 670 | }, 671 | "node_modules/methods": { 672 | "version": "1.1.2", 673 | "resolved": "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz", 674 | "integrity": "sha512-iclAHeNqNm68zFtnZ0e+1L2yUIdvzNoauKU4WBA3VvH/vPFieF7qfRlwUZU+DA9P9bPXIS90ulxoUoCH23sV2w==", 675 | "engines": { 676 | "node": ">= 0.6" 677 | } 678 | }, 679 | "node_modules/mime": { 680 | "version": "1.6.0", 681 | "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", 682 | "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==", 683 | "bin": { 684 | "mime": "cli.js" 685 | }, 686 | "engines": { 687 | "node": ">=4" 688 | } 689 | }, 690 | "node_modules/mime-db": { 691 | "version": "1.52.0", 692 | "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", 693 | "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==", 694 | "engines": { 695 | "node": ">= 0.6" 696 | } 697 | }, 698 | "node_modules/mime-types": { 699 | "version": "2.1.35", 700 | "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", 701 | "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", 702 | "dependencies": { 703 | "mime-db": "1.52.0" 704 | }, 705 | "engines": { 706 | "node": ">= 0.6" 707 | } 708 | }, 709 | "node_modules/morgan": { 710 | "version": "1.10.0", 711 | "resolved": "https://registry.npmjs.org/morgan/-/morgan-1.10.0.tgz", 712 | "integrity": "sha512-AbegBVI4sh6El+1gNwvD5YIck7nSA36weD7xvIxG4in80j/UoK8AEGaWnnz8v1GxonMCltmlNs5ZKbGvl9b1XQ==", 713 | "dependencies": { 714 | "basic-auth": "~2.0.1", 715 | "debug": "2.6.9", 716 | "depd": "~2.0.0", 717 | "on-finished": "~2.3.0", 718 | "on-headers": "~1.0.2" 719 | }, 720 | "engines": { 721 | "node": ">= 0.8.0" 722 | } 723 | }, 724 | "node_modules/morgan/node_modules/on-finished": { 725 | "version": "2.3.0", 726 | "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.3.0.tgz", 727 | "integrity": "sha512-ikqdkGAAyf/X/gPhXGvfgAytDZtDbr+bkNUJ0N9h5MI/dmdgCs3l6hoHrcUv41sRKew3jIwrp4qQDXiK99Utww==", 728 | "dependencies": { 729 | "ee-first": "1.1.1" 730 | }, 731 | "engines": { 732 | "node": ">= 0.8" 733 | } 734 | }, 735 | "node_modules/ms": { 736 | "version": "2.0.0", 737 | "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", 738 | "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" 739 | }, 740 | "node_modules/nanoid": { 741 | "version": "3.3.4", 742 | "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.4.tgz", 743 | "integrity": "sha512-MqBkQh/OHTS2egovRtLk45wEyNXwF+cokD+1YPf9u5VfJiRdAiRwB2froX5Co9Rh20xs4siNPm8naNotSD6RBw==", 744 | "bin": { 745 | "nanoid": "bin/nanoid.cjs" 746 | }, 747 | "engines": { 748 | "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1" 749 | } 750 | }, 751 | "node_modules/negotiator": { 752 | "version": "0.6.3", 753 | "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.3.tgz", 754 | "integrity": "sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==", 755 | "engines": { 756 | "node": ">= 0.6" 757 | } 758 | }, 759 | "node_modules/object-assign": { 760 | "version": "4.1.1", 761 | "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", 762 | "integrity": "sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==", 763 | "engines": { 764 | "node": ">=0.10.0" 765 | } 766 | }, 767 | "node_modules/object-inspect": { 768 | "version": "1.12.3", 769 | "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.12.3.tgz", 770 | "integrity": "sha512-geUvdk7c+eizMNUDkRpW1wJwgfOiOeHbxBR/hLXK1aT6zmVSO0jsQcs7fj6MGw89jC/cjGfLcNOrtMYtGqm81g==", 771 | "funding": { 772 | "url": "https://github.com/sponsors/ljharb" 773 | } 774 | }, 775 | "node_modules/on-finished": { 776 | "version": "2.4.1", 777 | "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.4.1.tgz", 778 | "integrity": "sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg==", 779 | "dependencies": { 780 | "ee-first": "1.1.1" 781 | }, 782 | "engines": { 783 | "node": ">= 0.8" 784 | } 785 | }, 786 | "node_modules/on-headers": { 787 | "version": "1.0.2", 788 | "resolved": "https://registry.npmjs.org/on-headers/-/on-headers-1.0.2.tgz", 789 | "integrity": "sha512-pZAE+FJLoyITytdqK0U5s+FIpjN0JP3OzFi/u8Rx+EV5/W+JTWGXG8xFzevE7AjBfDqHv/8vL8qQsIhHnqRkrA==", 790 | "engines": { 791 | "node": ">= 0.8" 792 | } 793 | }, 794 | "node_modules/parseurl": { 795 | "version": "1.3.3", 796 | "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz", 797 | "integrity": "sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==", 798 | "engines": { 799 | "node": ">= 0.8" 800 | } 801 | }, 802 | "node_modules/path-to-regexp": { 803 | "version": "0.1.7", 804 | "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.7.tgz", 805 | "integrity": "sha512-5DFkuoqlv1uYQKxy8omFBeJPQcdoE07Kv2sferDCrAq1ohOU+MSDswDIbnx3YAM60qIOnYa53wBhXW0EbMonrQ==" 806 | }, 807 | "node_modules/pify": { 808 | "version": "3.0.0", 809 | "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", 810 | "integrity": "sha512-C3FsVNH1udSEX48gGX1xfvwTWfsYWj5U+8/uK15BGzIGrKoUpghX8hWZwa/OFnakBiiVNmBvemTJR5mcy7iPcg==", 811 | "engines": { 812 | "node": ">=4" 813 | } 814 | }, 815 | "node_modules/please-upgrade-node": { 816 | "version": "3.2.0", 817 | "resolved": "https://registry.npmjs.org/please-upgrade-node/-/please-upgrade-node-3.2.0.tgz", 818 | "integrity": "sha512-gQR3WpIgNIKwBMVLkpMUeR3e1/E1y42bqDQZfql+kDeXd8COYfM8PQA4X6y7a8u9Ua9FHmsrrmirW2vHs45hWg==", 819 | "dependencies": { 820 | "semver-compare": "^1.0.0" 821 | } 822 | }, 823 | "node_modules/pluralize": { 824 | "version": "8.0.0", 825 | "resolved": "https://registry.npmjs.org/pluralize/-/pluralize-8.0.0.tgz", 826 | "integrity": "sha512-Nc3IT5yHzflTfbjgqWcCPpo7DaKy4FnpB0l/zCAW0Tc7jxAiuqSxHasntB3D7887LSrA93kDJ9IXovxJYxyLCA==", 827 | "engines": { 828 | "node": ">=4" 829 | } 830 | }, 831 | "node_modules/proxy-addr": { 832 | "version": "2.0.7", 833 | "resolved": "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.7.tgz", 834 | "integrity": "sha512-llQsMLSUDUPT44jdrU/O37qlnifitDP+ZwrmmZcoSKyLKvtZxpyV0n2/bD/N4tBAAZ/gJEdZU7KMraoK1+XYAg==", 835 | "dependencies": { 836 | "forwarded": "0.2.0", 837 | "ipaddr.js": "1.9.1" 838 | }, 839 | "engines": { 840 | "node": ">= 0.10" 841 | } 842 | }, 843 | "node_modules/qs": { 844 | "version": "6.11.0", 845 | "resolved": "https://registry.npmjs.org/qs/-/qs-6.11.0.tgz", 846 | "integrity": "sha512-MvjoMCJwEarSbUYk5O+nmoSzSutSsTwF85zcHPQ9OrlFoZOYIjaqBAJIqIXjptyD5vThxGq52Xu/MaJzRkIk4Q==", 847 | "dependencies": { 848 | "side-channel": "^1.0.4" 849 | }, 850 | "engines": { 851 | "node": ">=0.6" 852 | }, 853 | "funding": { 854 | "url": "https://github.com/sponsors/ljharb" 855 | } 856 | }, 857 | "node_modules/range-parser": { 858 | "version": "1.2.1", 859 | "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.1.tgz", 860 | "integrity": "sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==", 861 | "engines": { 862 | "node": ">= 0.6" 863 | } 864 | }, 865 | "node_modules/raw-body": { 866 | "version": "2.5.1", 867 | "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.5.1.tgz", 868 | "integrity": "sha512-qqJBtEyVgS0ZmPGdCFPWJ3FreoqvG4MVQln/kCgF7Olq95IbOp0/BWyMwbdtn4VTvkM8Y7khCQ2Xgk/tcrCXig==", 869 | "dependencies": { 870 | "bytes": "3.1.2", 871 | "http-errors": "2.0.0", 872 | "iconv-lite": "0.4.24", 873 | "unpipe": "1.0.0" 874 | }, 875 | "engines": { 876 | "node": ">= 0.8" 877 | } 878 | }, 879 | "node_modules/require-directory": { 880 | "version": "2.1.1", 881 | "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", 882 | "integrity": "sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==", 883 | "engines": { 884 | "node": ">=0.10.0" 885 | } 886 | }, 887 | "node_modules/safe-buffer": { 888 | "version": "5.1.2", 889 | "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", 890 | "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" 891 | }, 892 | "node_modules/safer-buffer": { 893 | "version": "2.1.2", 894 | "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", 895 | "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==" 896 | }, 897 | "node_modules/semver-compare": { 898 | "version": "1.0.0", 899 | "resolved": "https://registry.npmjs.org/semver-compare/-/semver-compare-1.0.0.tgz", 900 | "integrity": "sha512-YM3/ITh2MJ5MtzaM429anh+x2jiLVjqILF4m4oyQB18W7Ggea7BfqdH/wGMK7dDiMghv/6WG7znWMwUDzJiXow==" 901 | }, 902 | "node_modules/send": { 903 | "version": "0.18.0", 904 | "resolved": "https://registry.npmjs.org/send/-/send-0.18.0.tgz", 905 | "integrity": "sha512-qqWzuOjSFOuqPjFe4NOsMLafToQQwBSOEpS+FwEt3A2V3vKubTquT3vmLTQpFgMXp8AlFWFuP1qKaJZOtPpVXg==", 906 | "dependencies": { 907 | "debug": "2.6.9", 908 | "depd": "2.0.0", 909 | "destroy": "1.2.0", 910 | "encodeurl": "~1.0.2", 911 | "escape-html": "~1.0.3", 912 | "etag": "~1.8.1", 913 | "fresh": "0.5.2", 914 | "http-errors": "2.0.0", 915 | "mime": "1.6.0", 916 | "ms": "2.1.3", 917 | "on-finished": "2.4.1", 918 | "range-parser": "~1.2.1", 919 | "statuses": "2.0.1" 920 | }, 921 | "engines": { 922 | "node": ">= 0.8.0" 923 | } 924 | }, 925 | "node_modules/send/node_modules/ms": { 926 | "version": "2.1.3", 927 | "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", 928 | "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==" 929 | }, 930 | "node_modules/serve-static": { 931 | "version": "1.15.0", 932 | "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.15.0.tgz", 933 | "integrity": "sha512-XGuRDNjXUijsUL0vl6nSD7cwURuzEgglbOaFuZM9g3kwDXOWVTck0jLzjPzGD+TazWbboZYu52/9/XPdUgne9g==", 934 | "dependencies": { 935 | "encodeurl": "~1.0.2", 936 | "escape-html": "~1.0.3", 937 | "parseurl": "~1.3.3", 938 | "send": "0.18.0" 939 | }, 940 | "engines": { 941 | "node": ">= 0.8.0" 942 | } 943 | }, 944 | "node_modules/server-destroy": { 945 | "version": "1.0.1", 946 | "resolved": "https://registry.npmjs.org/server-destroy/-/server-destroy-1.0.1.tgz", 947 | "integrity": "sha512-rb+9B5YBIEzYcD6x2VKidaa+cqYBJQKnU4oe4E3ANwRRN56yk/ua1YCJT1n21NTS8w6CcOclAKNP3PhdCXKYtQ==" 948 | }, 949 | "node_modules/setprototypeof": { 950 | "version": "1.2.0", 951 | "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.2.0.tgz", 952 | "integrity": "sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==" 953 | }, 954 | "node_modules/side-channel": { 955 | "version": "1.0.4", 956 | "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.4.tgz", 957 | "integrity": "sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==", 958 | "dependencies": { 959 | "call-bind": "^1.0.0", 960 | "get-intrinsic": "^1.0.2", 961 | "object-inspect": "^1.9.0" 962 | }, 963 | "funding": { 964 | "url": "https://github.com/sponsors/ljharb" 965 | } 966 | }, 967 | "node_modules/statuses": { 968 | "version": "2.0.1", 969 | "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz", 970 | "integrity": "sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==", 971 | "engines": { 972 | "node": ">= 0.8" 973 | } 974 | }, 975 | "node_modules/steno": { 976 | "version": "0.4.4", 977 | "resolved": "https://registry.npmjs.org/steno/-/steno-0.4.4.tgz", 978 | "integrity": "sha512-EEHMVYHNXFHfGtgjNITnka0aHhiAlo93F7z2/Pwd+g0teG9CnM3JIINM7hVVB5/rhw9voufD7Wukwgtw2uqh6w==", 979 | "dependencies": { 980 | "graceful-fs": "^4.1.3" 981 | } 982 | }, 983 | "node_modules/string-width": { 984 | "version": "4.2.3", 985 | "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", 986 | "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", 987 | "dependencies": { 988 | "emoji-regex": "^8.0.0", 989 | "is-fullwidth-code-point": "^3.0.0", 990 | "strip-ansi": "^6.0.1" 991 | }, 992 | "engines": { 993 | "node": ">=8" 994 | } 995 | }, 996 | "node_modules/strip-ansi": { 997 | "version": "6.0.1", 998 | "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", 999 | "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", 1000 | "dependencies": { 1001 | "ansi-regex": "^5.0.1" 1002 | }, 1003 | "engines": { 1004 | "node": ">=8" 1005 | } 1006 | }, 1007 | "node_modules/supports-color": { 1008 | "version": "7.2.0", 1009 | "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", 1010 | "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", 1011 | "dependencies": { 1012 | "has-flag": "^4.0.0" 1013 | }, 1014 | "engines": { 1015 | "node": ">=8" 1016 | } 1017 | }, 1018 | "node_modules/toidentifier": { 1019 | "version": "1.0.1", 1020 | "resolved": "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.1.tgz", 1021 | "integrity": "sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA==", 1022 | "engines": { 1023 | "node": ">=0.6" 1024 | } 1025 | }, 1026 | "node_modules/type-is": { 1027 | "version": "1.6.18", 1028 | "resolved": "https://registry.npmjs.org/type-is/-/type-is-1.6.18.tgz", 1029 | "integrity": "sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g==", 1030 | "dependencies": { 1031 | "media-typer": "0.3.0", 1032 | "mime-types": "~2.1.24" 1033 | }, 1034 | "engines": { 1035 | "node": ">= 0.6" 1036 | } 1037 | }, 1038 | "node_modules/unpipe": { 1039 | "version": "1.0.0", 1040 | "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz", 1041 | "integrity": "sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ==", 1042 | "engines": { 1043 | "node": ">= 0.8" 1044 | } 1045 | }, 1046 | "node_modules/utils-merge": { 1047 | "version": "1.0.1", 1048 | "resolved": "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz", 1049 | "integrity": "sha512-pMZTvIkT1d+TFGvDOqodOclx0QWkkgi6Tdoa8gC8ffGAAqz9pzPTZWAybbsHHoED/ztMtkv/VoYTYyShUn81hA==", 1050 | "engines": { 1051 | "node": ">= 0.4.0" 1052 | } 1053 | }, 1054 | "node_modules/vary": { 1055 | "version": "1.1.2", 1056 | "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz", 1057 | "integrity": "sha512-BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg==", 1058 | "engines": { 1059 | "node": ">= 0.8" 1060 | } 1061 | }, 1062 | "node_modules/wrap-ansi": { 1063 | "version": "7.0.0", 1064 | "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", 1065 | "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", 1066 | "dependencies": { 1067 | "ansi-styles": "^4.0.0", 1068 | "string-width": "^4.1.0", 1069 | "strip-ansi": "^6.0.0" 1070 | }, 1071 | "engines": { 1072 | "node": ">=10" 1073 | }, 1074 | "funding": { 1075 | "url": "https://github.com/chalk/wrap-ansi?sponsor=1" 1076 | } 1077 | }, 1078 | "node_modules/y18n": { 1079 | "version": "5.0.8", 1080 | "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", 1081 | "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==", 1082 | "engines": { 1083 | "node": ">=10" 1084 | } 1085 | }, 1086 | "node_modules/yargs": { 1087 | "version": "17.6.2", 1088 | "resolved": "https://registry.npmjs.org/yargs/-/yargs-17.6.2.tgz", 1089 | "integrity": "sha512-1/9UrdHjDZc0eOU0HxOHoS78C69UD3JRMvzlJ7S79S2nTaWRA/whGCTV8o9e/N/1Va9YIV7Q4sOxD8VV4pCWOw==", 1090 | "dependencies": { 1091 | "cliui": "^8.0.1", 1092 | "escalade": "^3.1.1", 1093 | "get-caller-file": "^2.0.5", 1094 | "require-directory": "^2.1.1", 1095 | "string-width": "^4.2.3", 1096 | "y18n": "^5.0.5", 1097 | "yargs-parser": "^21.1.1" 1098 | }, 1099 | "engines": { 1100 | "node": ">=12" 1101 | } 1102 | }, 1103 | "node_modules/yargs-parser": { 1104 | "version": "21.1.1", 1105 | "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.1.1.tgz", 1106 | "integrity": "sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==", 1107 | "engines": { 1108 | "node": ">=12" 1109 | } 1110 | } 1111 | }, 1112 | "dependencies": { 1113 | "accepts": { 1114 | "version": "1.3.8", 1115 | "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.8.tgz", 1116 | "integrity": "sha512-PYAthTa2m2VKxuvSD3DPC/Gy+U+sOA1LAuT8mkmRuvw+NACSaeXEQ+NHcVF7rONl6qcaxV3Uuemwawk+7+SJLw==", 1117 | "requires": { 1118 | "mime-types": "~2.1.34", 1119 | "negotiator": "0.6.3" 1120 | } 1121 | }, 1122 | "ansi-regex": { 1123 | "version": "5.0.1", 1124 | "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", 1125 | "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==" 1126 | }, 1127 | "ansi-styles": { 1128 | "version": "4.3.0", 1129 | "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", 1130 | "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", 1131 | "requires": { 1132 | "color-convert": "^2.0.1" 1133 | } 1134 | }, 1135 | "array-flatten": { 1136 | "version": "1.1.1", 1137 | "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz", 1138 | "integrity": "sha512-PCVAQswWemu6UdxsDFFX/+gVeYqKAod3D3UVm91jHwynguOwAvYPhx8nNlM++NqRcK6CxxpUafjmhIdKiHibqg==" 1139 | }, 1140 | "basic-auth": { 1141 | "version": "2.0.1", 1142 | "resolved": "https://registry.npmjs.org/basic-auth/-/basic-auth-2.0.1.tgz", 1143 | "integrity": "sha512-NF+epuEdnUYVlGuhaxbbq+dvJttwLnGY+YixlXlME5KpQ5W3CnXA5cVTneY3SPbPDRkcjMbifrwmFYcClgOZeg==", 1144 | "requires": { 1145 | "safe-buffer": "5.1.2" 1146 | } 1147 | }, 1148 | "body-parser": { 1149 | "version": "1.20.1", 1150 | "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.20.1.tgz", 1151 | "integrity": "sha512-jWi7abTbYwajOytWCQc37VulmWiRae5RyTpaCyDcS5/lMdtwSz5lOpDE67srw/HYe35f1z3fDQw+3txg7gNtWw==", 1152 | "requires": { 1153 | "bytes": "3.1.2", 1154 | "content-type": "~1.0.4", 1155 | "debug": "2.6.9", 1156 | "depd": "2.0.0", 1157 | "destroy": "1.2.0", 1158 | "http-errors": "2.0.0", 1159 | "iconv-lite": "0.4.24", 1160 | "on-finished": "2.4.1", 1161 | "qs": "6.11.0", 1162 | "raw-body": "2.5.1", 1163 | "type-is": "~1.6.18", 1164 | "unpipe": "1.0.0" 1165 | } 1166 | }, 1167 | "bytes": { 1168 | "version": "3.1.2", 1169 | "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.2.tgz", 1170 | "integrity": "sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==" 1171 | }, 1172 | "call-bind": { 1173 | "version": "1.0.2", 1174 | "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz", 1175 | "integrity": "sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==", 1176 | "requires": { 1177 | "function-bind": "^1.1.1", 1178 | "get-intrinsic": "^1.0.2" 1179 | } 1180 | }, 1181 | "chalk": { 1182 | "version": "4.1.2", 1183 | "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", 1184 | "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", 1185 | "requires": { 1186 | "ansi-styles": "^4.1.0", 1187 | "supports-color": "^7.1.0" 1188 | } 1189 | }, 1190 | "cliui": { 1191 | "version": "8.0.1", 1192 | "resolved": "https://registry.npmjs.org/cliui/-/cliui-8.0.1.tgz", 1193 | "integrity": "sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==", 1194 | "requires": { 1195 | "string-width": "^4.2.0", 1196 | "strip-ansi": "^6.0.1", 1197 | "wrap-ansi": "^7.0.0" 1198 | } 1199 | }, 1200 | "color-convert": { 1201 | "version": "2.0.1", 1202 | "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", 1203 | "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", 1204 | "requires": { 1205 | "color-name": "~1.1.4" 1206 | } 1207 | }, 1208 | "color-name": { 1209 | "version": "1.1.4", 1210 | "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", 1211 | "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" 1212 | }, 1213 | "compressible": { 1214 | "version": "2.0.18", 1215 | "resolved": "https://registry.npmjs.org/compressible/-/compressible-2.0.18.tgz", 1216 | "integrity": "sha512-AF3r7P5dWxL8MxyITRMlORQNaOA2IkAFaTr4k7BUumjPtRpGDTZpl0Pb1XCO6JeDCBdp126Cgs9sMxqSjgYyRg==", 1217 | "requires": { 1218 | "mime-db": ">= 1.43.0 < 2" 1219 | } 1220 | }, 1221 | "compression": { 1222 | "version": "1.7.4", 1223 | "resolved": "https://registry.npmjs.org/compression/-/compression-1.7.4.tgz", 1224 | "integrity": "sha512-jaSIDzP9pZVS4ZfQ+TzvtiWhdpFhE2RDHz8QJkpX9SIpLq88VueF5jJw6t+6CUQcAoA6t+x89MLrWAqpfDE8iQ==", 1225 | "requires": { 1226 | "accepts": "~1.3.5", 1227 | "bytes": "3.0.0", 1228 | "compressible": "~2.0.16", 1229 | "debug": "2.6.9", 1230 | "on-headers": "~1.0.2", 1231 | "safe-buffer": "5.1.2", 1232 | "vary": "~1.1.2" 1233 | }, 1234 | "dependencies": { 1235 | "bytes": { 1236 | "version": "3.0.0", 1237 | "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.0.0.tgz", 1238 | "integrity": "sha512-pMhOfFDPiv9t5jjIXkHosWmkSyQbvsgEVNkz0ERHbuLh2T/7j4Mqqpz523Fe8MVY89KC6Sh/QfS2sM+SjgFDcw==" 1239 | } 1240 | } 1241 | }, 1242 | "connect-pause": { 1243 | "version": "0.1.1", 1244 | "resolved": "https://registry.npmjs.org/connect-pause/-/connect-pause-0.1.1.tgz", 1245 | "integrity": "sha512-a1gSWQBQD73krFXdUEYJom2RTFrWUL3YvXDCRkyv//GVXc79cdW9MngtRuN9ih4FDKBtfJAJId+BbDuX+1rh2w==" 1246 | }, 1247 | "content-disposition": { 1248 | "version": "0.5.4", 1249 | "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.4.tgz", 1250 | "integrity": "sha512-FveZTNuGw04cxlAiWbzi6zTAL/lhehaWbTtgluJh4/E95DqMwTmha3KZN1aAWA8cFIhHzMZUvLevkw5Rqk+tSQ==", 1251 | "requires": { 1252 | "safe-buffer": "5.2.1" 1253 | }, 1254 | "dependencies": { 1255 | "safe-buffer": { 1256 | "version": "5.2.1", 1257 | "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", 1258 | "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==" 1259 | } 1260 | } 1261 | }, 1262 | "content-type": { 1263 | "version": "1.0.5", 1264 | "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.5.tgz", 1265 | "integrity": "sha512-nTjqfcBFEipKdXCv4YDQWCfmcLZKm81ldF0pAopTvyrFGVbcR6P/VAAd5G7N+0tTr8QqiU0tFadD6FK4NtJwOA==" 1266 | }, 1267 | "cookie": { 1268 | "version": "0.5.0", 1269 | "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.5.0.tgz", 1270 | "integrity": "sha512-YZ3GUyn/o8gfKJlnlX7g7xq4gyO6OSuhGPKaaGssGB2qgDUS0gPgtTvoyZLTt9Ab6dC4hfc9dV5arkvc/OCmrw==" 1271 | }, 1272 | "cookie-signature": { 1273 | "version": "1.0.6", 1274 | "resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz", 1275 | "integrity": "sha512-QADzlaHc8icV8I7vbaJXJwod9HWYp8uCqf1xa4OfNu1T7JVxQIrUgOWtHdNDtPiywmFbiS12VjotIXLrKM3orQ==" 1276 | }, 1277 | "cors": { 1278 | "version": "2.8.5", 1279 | "resolved": "https://registry.npmjs.org/cors/-/cors-2.8.5.tgz", 1280 | "integrity": "sha512-KIHbLJqu73RGr/hnbrO9uBeixNGuvSQjul/jdFvS/KFSIH1hWVd1ng7zOHx+YrEfInLG7q4n6GHQ9cDtxv/P6g==", 1281 | "requires": { 1282 | "object-assign": "^4", 1283 | "vary": "^1" 1284 | } 1285 | }, 1286 | "debug": { 1287 | "version": "2.6.9", 1288 | "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", 1289 | "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", 1290 | "requires": { 1291 | "ms": "2.0.0" 1292 | } 1293 | }, 1294 | "depd": { 1295 | "version": "2.0.0", 1296 | "resolved": "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz", 1297 | "integrity": "sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==" 1298 | }, 1299 | "destroy": { 1300 | "version": "1.2.0", 1301 | "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.2.0.tgz", 1302 | "integrity": "sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg==" 1303 | }, 1304 | "ee-first": { 1305 | "version": "1.1.1", 1306 | "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", 1307 | "integrity": "sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==" 1308 | }, 1309 | "emoji-regex": { 1310 | "version": "8.0.0", 1311 | "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", 1312 | "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==" 1313 | }, 1314 | "encodeurl": { 1315 | "version": "1.0.2", 1316 | "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", 1317 | "integrity": "sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w==" 1318 | }, 1319 | "errorhandler": { 1320 | "version": "1.5.1", 1321 | "resolved": "https://registry.npmjs.org/errorhandler/-/errorhandler-1.5.1.tgz", 1322 | "integrity": "sha512-rcOwbfvP1WTViVoUjcfZicVzjhjTuhSMntHh6mW3IrEiyE6mJyXvsToJUJGlGlw/2xU9P5whlWNGlIDVeCiT4A==", 1323 | "requires": { 1324 | "accepts": "~1.3.7", 1325 | "escape-html": "~1.0.3" 1326 | } 1327 | }, 1328 | "escalade": { 1329 | "version": "3.1.1", 1330 | "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz", 1331 | "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==" 1332 | }, 1333 | "escape-html": { 1334 | "version": "1.0.3", 1335 | "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz", 1336 | "integrity": "sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow==" 1337 | }, 1338 | "etag": { 1339 | "version": "1.8.1", 1340 | "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz", 1341 | "integrity": "sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg==" 1342 | }, 1343 | "express": { 1344 | "version": "4.18.2", 1345 | "resolved": "https://registry.npmjs.org/express/-/express-4.18.2.tgz", 1346 | "integrity": "sha512-5/PsL6iGPdfQ/lKM1UuielYgv3BUoJfz1aUwU9vHZ+J7gyvwdQXFEBIEIaxeGf0GIcreATNyBExtalisDbuMqQ==", 1347 | "requires": { 1348 | "accepts": "~1.3.8", 1349 | "array-flatten": "1.1.1", 1350 | "body-parser": "1.20.1", 1351 | "content-disposition": "0.5.4", 1352 | "content-type": "~1.0.4", 1353 | "cookie": "0.5.0", 1354 | "cookie-signature": "1.0.6", 1355 | "debug": "2.6.9", 1356 | "depd": "2.0.0", 1357 | "encodeurl": "~1.0.2", 1358 | "escape-html": "~1.0.3", 1359 | "etag": "~1.8.1", 1360 | "finalhandler": "1.2.0", 1361 | "fresh": "0.5.2", 1362 | "http-errors": "2.0.0", 1363 | "merge-descriptors": "1.0.1", 1364 | "methods": "~1.1.2", 1365 | "on-finished": "2.4.1", 1366 | "parseurl": "~1.3.3", 1367 | "path-to-regexp": "0.1.7", 1368 | "proxy-addr": "~2.0.7", 1369 | "qs": "6.11.0", 1370 | "range-parser": "~1.2.1", 1371 | "safe-buffer": "5.2.1", 1372 | "send": "0.18.0", 1373 | "serve-static": "1.15.0", 1374 | "setprototypeof": "1.2.0", 1375 | "statuses": "2.0.1", 1376 | "type-is": "~1.6.18", 1377 | "utils-merge": "1.0.1", 1378 | "vary": "~1.1.2" 1379 | }, 1380 | "dependencies": { 1381 | "safe-buffer": { 1382 | "version": "5.2.1", 1383 | "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", 1384 | "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==" 1385 | } 1386 | } 1387 | }, 1388 | "express-urlrewrite": { 1389 | "version": "1.4.0", 1390 | "resolved": "https://registry.npmjs.org/express-urlrewrite/-/express-urlrewrite-1.4.0.tgz", 1391 | "integrity": "sha512-PI5h8JuzoweS26vFizwQl6UTF25CAHSggNv0J25Dn/IKZscJHWZzPrI5z2Y2jgOzIaw2qh8l6+/jUcig23Z2SA==", 1392 | "requires": { 1393 | "debug": "*", 1394 | "path-to-regexp": "^1.0.3" 1395 | }, 1396 | "dependencies": { 1397 | "path-to-regexp": { 1398 | "version": "1.8.0", 1399 | "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-1.8.0.tgz", 1400 | "integrity": "sha512-n43JRhlUKUAlibEJhPeir1ncUID16QnEjNpwzNdO3Lm4ywrBpBZ5oLD0I6br9evr1Y9JTqwRtAh7JLoOzAQdVA==", 1401 | "requires": { 1402 | "isarray": "0.0.1" 1403 | } 1404 | } 1405 | } 1406 | }, 1407 | "finalhandler": { 1408 | "version": "1.2.0", 1409 | "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.2.0.tgz", 1410 | "integrity": "sha512-5uXcUVftlQMFnWC9qu/svkWv3GTd2PfUhK/3PLkYNAe7FbqJMt3515HaxE6eRL74GdsriiwujiawdaB1BpEISg==", 1411 | "requires": { 1412 | "debug": "2.6.9", 1413 | "encodeurl": "~1.0.2", 1414 | "escape-html": "~1.0.3", 1415 | "on-finished": "2.4.1", 1416 | "parseurl": "~1.3.3", 1417 | "statuses": "2.0.1", 1418 | "unpipe": "~1.0.0" 1419 | } 1420 | }, 1421 | "forwarded": { 1422 | "version": "0.2.0", 1423 | "resolved": "https://registry.npmjs.org/forwarded/-/forwarded-0.2.0.tgz", 1424 | "integrity": "sha512-buRG0fpBtRHSTCOASe6hD258tEubFoRLb4ZNA6NxMVHNw2gOcwHo9wyablzMzOA5z9xA9L1KNjk/Nt6MT9aYow==" 1425 | }, 1426 | "fresh": { 1427 | "version": "0.5.2", 1428 | "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz", 1429 | "integrity": "sha512-zJ2mQYM18rEFOudeV4GShTGIQ7RbzA7ozbU9I/XBpm7kqgMywgmylMwXHxZJmkVoYkna9d2pVXVXPdYTP9ej8Q==" 1430 | }, 1431 | "function-bind": { 1432 | "version": "1.1.1", 1433 | "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", 1434 | "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==" 1435 | }, 1436 | "get-caller-file": { 1437 | "version": "2.0.5", 1438 | "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", 1439 | "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==" 1440 | }, 1441 | "get-intrinsic": { 1442 | "version": "1.2.0", 1443 | "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.2.0.tgz", 1444 | "integrity": "sha512-L049y6nFOuom5wGyRc3/gdTLO94dySVKRACj1RmJZBQXlbTMhtNIgkWkUHq+jYmZvKf14EW1EoJnnjbmoHij0Q==", 1445 | "requires": { 1446 | "function-bind": "^1.1.1", 1447 | "has": "^1.0.3", 1448 | "has-symbols": "^1.0.3" 1449 | } 1450 | }, 1451 | "graceful-fs": { 1452 | "version": "4.2.10", 1453 | "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.10.tgz", 1454 | "integrity": "sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA==" 1455 | }, 1456 | "has": { 1457 | "version": "1.0.3", 1458 | "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", 1459 | "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", 1460 | "requires": { 1461 | "function-bind": "^1.1.1" 1462 | } 1463 | }, 1464 | "has-flag": { 1465 | "version": "4.0.0", 1466 | "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", 1467 | "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==" 1468 | }, 1469 | "has-symbols": { 1470 | "version": "1.0.3", 1471 | "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.3.tgz", 1472 | "integrity": "sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==" 1473 | }, 1474 | "http-errors": { 1475 | "version": "2.0.0", 1476 | "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-2.0.0.tgz", 1477 | "integrity": "sha512-FtwrG/euBzaEjYeRqOgly7G0qviiXoJWnvEH2Z1plBdXgbyjv34pHTSb9zoeHMyDy33+DWy5Wt9Wo+TURtOYSQ==", 1478 | "requires": { 1479 | "depd": "2.0.0", 1480 | "inherits": "2.0.4", 1481 | "setprototypeof": "1.2.0", 1482 | "statuses": "2.0.1", 1483 | "toidentifier": "1.0.1" 1484 | } 1485 | }, 1486 | "iconv-lite": { 1487 | "version": "0.4.24", 1488 | "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", 1489 | "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", 1490 | "requires": { 1491 | "safer-buffer": ">= 2.1.2 < 3" 1492 | } 1493 | }, 1494 | "inherits": { 1495 | "version": "2.0.4", 1496 | "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", 1497 | "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" 1498 | }, 1499 | "ipaddr.js": { 1500 | "version": "1.9.1", 1501 | "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.9.1.tgz", 1502 | "integrity": "sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g==" 1503 | }, 1504 | "is-fullwidth-code-point": { 1505 | "version": "3.0.0", 1506 | "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", 1507 | "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==" 1508 | }, 1509 | "is-promise": { 1510 | "version": "2.2.2", 1511 | "resolved": "https://registry.npmjs.org/is-promise/-/is-promise-2.2.2.tgz", 1512 | "integrity": "sha512-+lP4/6lKUBfQjZ2pdxThZvLUAafmZb8OAxFb8XXtiQmS35INgr85hdOGoEs124ez1FCnZJt6jau/T+alh58QFQ==" 1513 | }, 1514 | "isarray": { 1515 | "version": "0.0.1", 1516 | "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", 1517 | "integrity": "sha512-D2S+3GLxWH+uhrNEcoh/fnmYeP8E8/zHl644d/jdA0g2uyXvy3sb0qxotE+ne0LtccHknQzWwZEzhak7oJ0COQ==" 1518 | }, 1519 | "jju": { 1520 | "version": "1.4.0", 1521 | "resolved": "https://registry.npmjs.org/jju/-/jju-1.4.0.tgz", 1522 | "integrity": "sha512-8wb9Yw966OSxApiCt0K3yNJL8pnNeIv+OEq2YMidz4FKP6nonSRoOXc80iXY4JaN2FC11B9qsNmDsm+ZOfMROA==" 1523 | }, 1524 | "json-parse-helpfulerror": { 1525 | "version": "1.0.3", 1526 | "resolved": "https://registry.npmjs.org/json-parse-helpfulerror/-/json-parse-helpfulerror-1.0.3.tgz", 1527 | "integrity": "sha512-XgP0FGR77+QhUxjXkwOMkC94k3WtqEBfcnjWqhRd82qTat4SWKRE+9kUnynz/shm3I4ea2+qISvTIeGTNU7kJg==", 1528 | "requires": { 1529 | "jju": "^1.1.0" 1530 | } 1531 | }, 1532 | "json-server": { 1533 | "version": "0.17.1", 1534 | "resolved": "https://registry.npmjs.org/json-server/-/json-server-0.17.1.tgz", 1535 | "integrity": "sha512-2cR/IAL9xX4M1Y5ONMpnvRvJ5o9gJH5GsSQs7fQHdTKTKoN4YRZu1ApQKg/4P0XzwlLyUDqTlwhPq9nsvJ9acw==", 1536 | "requires": { 1537 | "body-parser": "^1.19.0", 1538 | "chalk": "^4.1.2", 1539 | "compression": "^1.7.4", 1540 | "connect-pause": "^0.1.1", 1541 | "cors": "^2.8.5", 1542 | "errorhandler": "^1.5.1", 1543 | "express": "^4.17.1", 1544 | "express-urlrewrite": "^1.4.0", 1545 | "json-parse-helpfulerror": "^1.0.3", 1546 | "lodash": "^4.17.21", 1547 | "lodash-id": "^0.14.1", 1548 | "lowdb": "^1.0.0", 1549 | "method-override": "^3.0.0", 1550 | "morgan": "^1.10.0", 1551 | "nanoid": "^3.1.23", 1552 | "please-upgrade-node": "^3.2.0", 1553 | "pluralize": "^8.0.0", 1554 | "server-destroy": "^1.0.1", 1555 | "yargs": "^17.0.1" 1556 | } 1557 | }, 1558 | "lodash": { 1559 | "version": "4.17.21", 1560 | "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", 1561 | "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==" 1562 | }, 1563 | "lodash-id": { 1564 | "version": "0.14.1", 1565 | "resolved": "https://registry.npmjs.org/lodash-id/-/lodash-id-0.14.1.tgz", 1566 | "integrity": "sha512-ikQPBTiq/d5m6dfKQlFdIXFzvThPi2Be9/AHxktOnDSfSxE1j9ICbBT5Elk1ke7HSTgM38LHTpmJovo9/klnLg==" 1567 | }, 1568 | "lowdb": { 1569 | "version": "1.0.0", 1570 | "resolved": "https://registry.npmjs.org/lowdb/-/lowdb-1.0.0.tgz", 1571 | "integrity": "sha512-2+x8esE/Wb9SQ1F9IHaYWfsC9FIecLOPrK4g17FGEayjUWH172H6nwicRovGvSE2CPZouc2MCIqCI7h9d+GftQ==", 1572 | "requires": { 1573 | "graceful-fs": "^4.1.3", 1574 | "is-promise": "^2.1.0", 1575 | "lodash": "4", 1576 | "pify": "^3.0.0", 1577 | "steno": "^0.4.1" 1578 | } 1579 | }, 1580 | "media-typer": { 1581 | "version": "0.3.0", 1582 | "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz", 1583 | "integrity": "sha512-dq+qelQ9akHpcOl/gUVRTxVIOkAJ1wR3QAvb4RsVjS8oVoFjDGTc679wJYmUmknUF5HwMLOgb5O+a3KxfWapPQ==" 1584 | }, 1585 | "merge-descriptors": { 1586 | "version": "1.0.1", 1587 | "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.1.tgz", 1588 | "integrity": "sha512-cCi6g3/Zr1iqQi6ySbseM1Xvooa98N0w31jzUYrXPX2xqObmFGHJ0tQ5u74H3mVh7wLouTseZyYIq39g8cNp1w==" 1589 | }, 1590 | "method-override": { 1591 | "version": "3.0.0", 1592 | "resolved": "https://registry.npmjs.org/method-override/-/method-override-3.0.0.tgz", 1593 | "integrity": "sha512-IJ2NNN/mSl9w3kzWB92rcdHpz+HjkxhDJWNDBqSlas+zQdP8wBiJzITPg08M/k2uVvMow7Sk41atndNtt/PHSA==", 1594 | "requires": { 1595 | "debug": "3.1.0", 1596 | "methods": "~1.1.2", 1597 | "parseurl": "~1.3.2", 1598 | "vary": "~1.1.2" 1599 | }, 1600 | "dependencies": { 1601 | "debug": { 1602 | "version": "3.1.0", 1603 | "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", 1604 | "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", 1605 | "requires": { 1606 | "ms": "2.0.0" 1607 | } 1608 | } 1609 | } 1610 | }, 1611 | "methods": { 1612 | "version": "1.1.2", 1613 | "resolved": "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz", 1614 | "integrity": "sha512-iclAHeNqNm68zFtnZ0e+1L2yUIdvzNoauKU4WBA3VvH/vPFieF7qfRlwUZU+DA9P9bPXIS90ulxoUoCH23sV2w==" 1615 | }, 1616 | "mime": { 1617 | "version": "1.6.0", 1618 | "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", 1619 | "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==" 1620 | }, 1621 | "mime-db": { 1622 | "version": "1.52.0", 1623 | "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", 1624 | "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==" 1625 | }, 1626 | "mime-types": { 1627 | "version": "2.1.35", 1628 | "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", 1629 | "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", 1630 | "requires": { 1631 | "mime-db": "1.52.0" 1632 | } 1633 | }, 1634 | "morgan": { 1635 | "version": "1.10.0", 1636 | "resolved": "https://registry.npmjs.org/morgan/-/morgan-1.10.0.tgz", 1637 | "integrity": "sha512-AbegBVI4sh6El+1gNwvD5YIck7nSA36weD7xvIxG4in80j/UoK8AEGaWnnz8v1GxonMCltmlNs5ZKbGvl9b1XQ==", 1638 | "requires": { 1639 | "basic-auth": "~2.0.1", 1640 | "debug": "2.6.9", 1641 | "depd": "~2.0.0", 1642 | "on-finished": "~2.3.0", 1643 | "on-headers": "~1.0.2" 1644 | }, 1645 | "dependencies": { 1646 | "on-finished": { 1647 | "version": "2.3.0", 1648 | "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.3.0.tgz", 1649 | "integrity": "sha512-ikqdkGAAyf/X/gPhXGvfgAytDZtDbr+bkNUJ0N9h5MI/dmdgCs3l6hoHrcUv41sRKew3jIwrp4qQDXiK99Utww==", 1650 | "requires": { 1651 | "ee-first": "1.1.1" 1652 | } 1653 | } 1654 | } 1655 | }, 1656 | "ms": { 1657 | "version": "2.0.0", 1658 | "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", 1659 | "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" 1660 | }, 1661 | "nanoid": { 1662 | "version": "3.3.4", 1663 | "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.4.tgz", 1664 | "integrity": "sha512-MqBkQh/OHTS2egovRtLk45wEyNXwF+cokD+1YPf9u5VfJiRdAiRwB2froX5Co9Rh20xs4siNPm8naNotSD6RBw==" 1665 | }, 1666 | "negotiator": { 1667 | "version": "0.6.3", 1668 | "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.3.tgz", 1669 | "integrity": "sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==" 1670 | }, 1671 | "object-assign": { 1672 | "version": "4.1.1", 1673 | "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", 1674 | "integrity": "sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==" 1675 | }, 1676 | "object-inspect": { 1677 | "version": "1.12.3", 1678 | "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.12.3.tgz", 1679 | "integrity": "sha512-geUvdk7c+eizMNUDkRpW1wJwgfOiOeHbxBR/hLXK1aT6zmVSO0jsQcs7fj6MGw89jC/cjGfLcNOrtMYtGqm81g==" 1680 | }, 1681 | "on-finished": { 1682 | "version": "2.4.1", 1683 | "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.4.1.tgz", 1684 | "integrity": "sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg==", 1685 | "requires": { 1686 | "ee-first": "1.1.1" 1687 | } 1688 | }, 1689 | "on-headers": { 1690 | "version": "1.0.2", 1691 | "resolved": "https://registry.npmjs.org/on-headers/-/on-headers-1.0.2.tgz", 1692 | "integrity": "sha512-pZAE+FJLoyITytdqK0U5s+FIpjN0JP3OzFi/u8Rx+EV5/W+JTWGXG8xFzevE7AjBfDqHv/8vL8qQsIhHnqRkrA==" 1693 | }, 1694 | "parseurl": { 1695 | "version": "1.3.3", 1696 | "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz", 1697 | "integrity": "sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==" 1698 | }, 1699 | "path-to-regexp": { 1700 | "version": "0.1.7", 1701 | "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.7.tgz", 1702 | "integrity": "sha512-5DFkuoqlv1uYQKxy8omFBeJPQcdoE07Kv2sferDCrAq1ohOU+MSDswDIbnx3YAM60qIOnYa53wBhXW0EbMonrQ==" 1703 | }, 1704 | "pify": { 1705 | "version": "3.0.0", 1706 | "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", 1707 | "integrity": "sha512-C3FsVNH1udSEX48gGX1xfvwTWfsYWj5U+8/uK15BGzIGrKoUpghX8hWZwa/OFnakBiiVNmBvemTJR5mcy7iPcg==" 1708 | }, 1709 | "please-upgrade-node": { 1710 | "version": "3.2.0", 1711 | "resolved": "https://registry.npmjs.org/please-upgrade-node/-/please-upgrade-node-3.2.0.tgz", 1712 | "integrity": "sha512-gQR3WpIgNIKwBMVLkpMUeR3e1/E1y42bqDQZfql+kDeXd8COYfM8PQA4X6y7a8u9Ua9FHmsrrmirW2vHs45hWg==", 1713 | "requires": { 1714 | "semver-compare": "^1.0.0" 1715 | } 1716 | }, 1717 | "pluralize": { 1718 | "version": "8.0.0", 1719 | "resolved": "https://registry.npmjs.org/pluralize/-/pluralize-8.0.0.tgz", 1720 | "integrity": "sha512-Nc3IT5yHzflTfbjgqWcCPpo7DaKy4FnpB0l/zCAW0Tc7jxAiuqSxHasntB3D7887LSrA93kDJ9IXovxJYxyLCA==" 1721 | }, 1722 | "proxy-addr": { 1723 | "version": "2.0.7", 1724 | "resolved": "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.7.tgz", 1725 | "integrity": "sha512-llQsMLSUDUPT44jdrU/O37qlnifitDP+ZwrmmZcoSKyLKvtZxpyV0n2/bD/N4tBAAZ/gJEdZU7KMraoK1+XYAg==", 1726 | "requires": { 1727 | "forwarded": "0.2.0", 1728 | "ipaddr.js": "1.9.1" 1729 | } 1730 | }, 1731 | "qs": { 1732 | "version": "6.11.0", 1733 | "resolved": "https://registry.npmjs.org/qs/-/qs-6.11.0.tgz", 1734 | "integrity": "sha512-MvjoMCJwEarSbUYk5O+nmoSzSutSsTwF85zcHPQ9OrlFoZOYIjaqBAJIqIXjptyD5vThxGq52Xu/MaJzRkIk4Q==", 1735 | "requires": { 1736 | "side-channel": "^1.0.4" 1737 | } 1738 | }, 1739 | "range-parser": { 1740 | "version": "1.2.1", 1741 | "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.1.tgz", 1742 | "integrity": "sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==" 1743 | }, 1744 | "raw-body": { 1745 | "version": "2.5.1", 1746 | "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.5.1.tgz", 1747 | "integrity": "sha512-qqJBtEyVgS0ZmPGdCFPWJ3FreoqvG4MVQln/kCgF7Olq95IbOp0/BWyMwbdtn4VTvkM8Y7khCQ2Xgk/tcrCXig==", 1748 | "requires": { 1749 | "bytes": "3.1.2", 1750 | "http-errors": "2.0.0", 1751 | "iconv-lite": "0.4.24", 1752 | "unpipe": "1.0.0" 1753 | } 1754 | }, 1755 | "require-directory": { 1756 | "version": "2.1.1", 1757 | "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", 1758 | "integrity": "sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==" 1759 | }, 1760 | "safe-buffer": { 1761 | "version": "5.1.2", 1762 | "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", 1763 | "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" 1764 | }, 1765 | "safer-buffer": { 1766 | "version": "2.1.2", 1767 | "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", 1768 | "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==" 1769 | }, 1770 | "semver-compare": { 1771 | "version": "1.0.0", 1772 | "resolved": "https://registry.npmjs.org/semver-compare/-/semver-compare-1.0.0.tgz", 1773 | "integrity": "sha512-YM3/ITh2MJ5MtzaM429anh+x2jiLVjqILF4m4oyQB18W7Ggea7BfqdH/wGMK7dDiMghv/6WG7znWMwUDzJiXow==" 1774 | }, 1775 | "send": { 1776 | "version": "0.18.0", 1777 | "resolved": "https://registry.npmjs.org/send/-/send-0.18.0.tgz", 1778 | "integrity": "sha512-qqWzuOjSFOuqPjFe4NOsMLafToQQwBSOEpS+FwEt3A2V3vKubTquT3vmLTQpFgMXp8AlFWFuP1qKaJZOtPpVXg==", 1779 | "requires": { 1780 | "debug": "2.6.9", 1781 | "depd": "2.0.0", 1782 | "destroy": "1.2.0", 1783 | "encodeurl": "~1.0.2", 1784 | "escape-html": "~1.0.3", 1785 | "etag": "~1.8.1", 1786 | "fresh": "0.5.2", 1787 | "http-errors": "2.0.0", 1788 | "mime": "1.6.0", 1789 | "ms": "2.1.3", 1790 | "on-finished": "2.4.1", 1791 | "range-parser": "~1.2.1", 1792 | "statuses": "2.0.1" 1793 | }, 1794 | "dependencies": { 1795 | "ms": { 1796 | "version": "2.1.3", 1797 | "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", 1798 | "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==" 1799 | } 1800 | } 1801 | }, 1802 | "serve-static": { 1803 | "version": "1.15.0", 1804 | "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.15.0.tgz", 1805 | "integrity": "sha512-XGuRDNjXUijsUL0vl6nSD7cwURuzEgglbOaFuZM9g3kwDXOWVTck0jLzjPzGD+TazWbboZYu52/9/XPdUgne9g==", 1806 | "requires": { 1807 | "encodeurl": "~1.0.2", 1808 | "escape-html": "~1.0.3", 1809 | "parseurl": "~1.3.3", 1810 | "send": "0.18.0" 1811 | } 1812 | }, 1813 | "server-destroy": { 1814 | "version": "1.0.1", 1815 | "resolved": "https://registry.npmjs.org/server-destroy/-/server-destroy-1.0.1.tgz", 1816 | "integrity": "sha512-rb+9B5YBIEzYcD6x2VKidaa+cqYBJQKnU4oe4E3ANwRRN56yk/ua1YCJT1n21NTS8w6CcOclAKNP3PhdCXKYtQ==" 1817 | }, 1818 | "setprototypeof": { 1819 | "version": "1.2.0", 1820 | "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.2.0.tgz", 1821 | "integrity": "sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==" 1822 | }, 1823 | "side-channel": { 1824 | "version": "1.0.4", 1825 | "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.4.tgz", 1826 | "integrity": "sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==", 1827 | "requires": { 1828 | "call-bind": "^1.0.0", 1829 | "get-intrinsic": "^1.0.2", 1830 | "object-inspect": "^1.9.0" 1831 | } 1832 | }, 1833 | "statuses": { 1834 | "version": "2.0.1", 1835 | "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz", 1836 | "integrity": "sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==" 1837 | }, 1838 | "steno": { 1839 | "version": "0.4.4", 1840 | "resolved": "https://registry.npmjs.org/steno/-/steno-0.4.4.tgz", 1841 | "integrity": "sha512-EEHMVYHNXFHfGtgjNITnka0aHhiAlo93F7z2/Pwd+g0teG9CnM3JIINM7hVVB5/rhw9voufD7Wukwgtw2uqh6w==", 1842 | "requires": { 1843 | "graceful-fs": "^4.1.3" 1844 | } 1845 | }, 1846 | "string-width": { 1847 | "version": "4.2.3", 1848 | "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", 1849 | "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", 1850 | "requires": { 1851 | "emoji-regex": "^8.0.0", 1852 | "is-fullwidth-code-point": "^3.0.0", 1853 | "strip-ansi": "^6.0.1" 1854 | } 1855 | }, 1856 | "strip-ansi": { 1857 | "version": "6.0.1", 1858 | "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", 1859 | "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", 1860 | "requires": { 1861 | "ansi-regex": "^5.0.1" 1862 | } 1863 | }, 1864 | "supports-color": { 1865 | "version": "7.2.0", 1866 | "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", 1867 | "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", 1868 | "requires": { 1869 | "has-flag": "^4.0.0" 1870 | } 1871 | }, 1872 | "toidentifier": { 1873 | "version": "1.0.1", 1874 | "resolved": "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.1.tgz", 1875 | "integrity": "sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA==" 1876 | }, 1877 | "type-is": { 1878 | "version": "1.6.18", 1879 | "resolved": "https://registry.npmjs.org/type-is/-/type-is-1.6.18.tgz", 1880 | "integrity": "sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g==", 1881 | "requires": { 1882 | "media-typer": "0.3.0", 1883 | "mime-types": "~2.1.24" 1884 | } 1885 | }, 1886 | "unpipe": { 1887 | "version": "1.0.0", 1888 | "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz", 1889 | "integrity": "sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ==" 1890 | }, 1891 | "utils-merge": { 1892 | "version": "1.0.1", 1893 | "resolved": "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz", 1894 | "integrity": "sha512-pMZTvIkT1d+TFGvDOqodOclx0QWkkgi6Tdoa8gC8ffGAAqz9pzPTZWAybbsHHoED/ztMtkv/VoYTYyShUn81hA==" 1895 | }, 1896 | "vary": { 1897 | "version": "1.1.2", 1898 | "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz", 1899 | "integrity": "sha512-BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg==" 1900 | }, 1901 | "wrap-ansi": { 1902 | "version": "7.0.0", 1903 | "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", 1904 | "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", 1905 | "requires": { 1906 | "ansi-styles": "^4.0.0", 1907 | "string-width": "^4.1.0", 1908 | "strip-ansi": "^6.0.0" 1909 | } 1910 | }, 1911 | "y18n": { 1912 | "version": "5.0.8", 1913 | "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", 1914 | "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==" 1915 | }, 1916 | "yargs": { 1917 | "version": "17.6.2", 1918 | "resolved": "https://registry.npmjs.org/yargs/-/yargs-17.6.2.tgz", 1919 | "integrity": "sha512-1/9UrdHjDZc0eOU0HxOHoS78C69UD3JRMvzlJ7S79S2nTaWRA/whGCTV8o9e/N/1Va9YIV7Q4sOxD8VV4pCWOw==", 1920 | "requires": { 1921 | "cliui": "^8.0.1", 1922 | "escalade": "^3.1.1", 1923 | "get-caller-file": "^2.0.5", 1924 | "require-directory": "^2.1.1", 1925 | "string-width": "^4.2.3", 1926 | "y18n": "^5.0.5", 1927 | "yargs-parser": "^21.1.1" 1928 | } 1929 | }, 1930 | "yargs-parser": { 1931 | "version": "21.1.1", 1932 | "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.1.1.tgz", 1933 | "integrity": "sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==" 1934 | } 1935 | } 1936 | } 1937 | --------------------------------------------------------------------------------