├── .gitignore ├── nodemon.json ├── src ├── index.ts ├── swaggerOptions.ts ├── db.ts ├── app.ts ├── controllers │ └── task.controller.ts └── routes │ └── tasks.routes.ts ├── README.md ├── requests └── tasks.http ├── package.json ├── tsconfig.json └── yarn.lock /.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | 3 | build 4 | 5 | db.json -------------------------------------------------------------------------------- /nodemon.json: -------------------------------------------------------------------------------- 1 | { 2 | "watch": [ 3 | "src" 4 | ], 5 | "ext": "ts,json", 6 | "ignore": [ 7 | "src/**/*.spec.ts" 8 | ], 9 | "exec": "ts-node ./src/index.ts" 10 | } -------------------------------------------------------------------------------- /src/index.ts: -------------------------------------------------------------------------------- 1 | import app from "./app"; 2 | import { createConnection } from "./db"; 3 | 4 | createConnection(); 5 | 6 | app.listen(app.get("port"), () => { 7 | console.log("Server on port", app.get("port")); 8 | }); 9 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # Typescript REST API with Lowdb 2 | A CRUD REST API with Swagger Docs and Lowdb as database 3 | 4 | # Issues 5 | 6 | - https://github.com/typicode/lowdb/issues/233 7 | - https://github.com/Surnet/swagger-jsdoc/issues/249 -------------------------------------------------------------------------------- /requests/tasks.http: -------------------------------------------------------------------------------- 1 | @api = http://localhost:3000 2 | 3 | GET {{api}}/tasks 4 | 5 | ### 6 | POST {{api}}/tasks 7 | Content-Type: application/json 8 | 9 | { 10 | "name": "my first task", 11 | "description": "I have to do something" 12 | } -------------------------------------------------------------------------------- /src/swaggerOptions.ts: -------------------------------------------------------------------------------- 1 | export const options = { 2 | definition: { 3 | openapi: "3.0.0", 4 | info: { 5 | title: "Tasks API", 6 | version: "1.0.0", 7 | description: "A simple express library API", 8 | }, 9 | servers: [ 10 | { 11 | url: "http://localhost:3000", 12 | }, 13 | ], 14 | }, 15 | apis: ["./src/routes/*.ts"], 16 | }; 17 | -------------------------------------------------------------------------------- /src/db.ts: -------------------------------------------------------------------------------- 1 | import lowdb from "lowdb"; 2 | import FileSync from "lowdb/adapters/FileSync"; 3 | 4 | type Task = { 5 | id: string; 6 | name: string; 7 | description: string; 8 | }; 9 | 10 | type Schema = { 11 | tasks: Task[]; 12 | }; 13 | 14 | let db: lowdb.LowdbSync; 15 | 16 | export const createConnection = async () => { 17 | const adapter = new FileSync("db.json"); 18 | db = lowdb(adapter); 19 | db.defaults({ tasks: [] }).write(); 20 | }; 21 | 22 | export const getConnection = () => db; 23 | -------------------------------------------------------------------------------- /src/app.ts: -------------------------------------------------------------------------------- 1 | import express from "express"; 2 | import cors from "cors"; 3 | import morgan from "morgan"; 4 | 5 | // Swagger 6 | import swaggerUI from "swagger-ui-express"; 7 | import swaggerJsDoc from "swagger-jsdoc"; 8 | import { options } from "./swaggerOptions"; 9 | 10 | import tasksRoutes from "./routes/tasks.routes"; 11 | 12 | const app = express(); 13 | 14 | app.set("port", process.env.PORT || 3000); 15 | 16 | app.use(cors()); 17 | app.use(morgan("dev")); 18 | app.use(express.json()); 19 | 20 | const specs = swaggerJsDoc(options); 21 | 22 | // Routes 23 | app.use(tasksRoutes); 24 | app.use("/docs", swaggerUI.serve, swaggerUI.setup(specs)); 25 | 26 | export default app; 27 | -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "typescript-swagger-lowdb", 3 | "version": "1.0.0", 4 | "main": "index.js", 5 | "license": "MIT", 6 | "dependencies": { 7 | "cors": "^2.8.5", 8 | "express": "^4.17.1", 9 | "lowdb": "^1.0.0", 10 | "morgan": "^1.10.0", 11 | "nanoid": "^3.1.23", 12 | "swagger-jsdoc": "6.1.0", 13 | "swagger-ui-express": "^4.1.6" 14 | }, 15 | "devDependencies": { 16 | "@types/cors": "^2.8.10", 17 | "@types/express": "^4.17.11", 18 | "@types/lowdb": "^1.0.9", 19 | "@types/morgan": "^1.9.2", 20 | "@types/swagger-jsdoc": "^6.0.0", 21 | "@types/swagger-ui-express": "^4.1.2", 22 | "nodemon": "^2.0.7", 23 | "ts-node": "^9.1.1", 24 | "typescript": "^4.2.4" 25 | }, 26 | "scripts": { 27 | "build": "tsc", 28 | "dev": "nodemon", 29 | "start": "node build/index.js" 30 | } 31 | } 32 | -------------------------------------------------------------------------------- /src/controllers/task.controller.ts: -------------------------------------------------------------------------------- 1 | import { Handler } from "express"; 2 | import { nanoid } from "nanoid"; 3 | import { getConnection } from "../db"; 4 | 5 | export const getTasks: Handler = (req, res) => { 6 | const data = getConnection().get("tasks").value(); 7 | return res.json(data); 8 | }; 9 | 10 | export const createTask: Handler = (req, res) => { 11 | const { name, description } = req.body; 12 | 13 | const newTask = { name, description, id: nanoid() }; 14 | 15 | try { 16 | getConnection().get("tasks").push(newTask).write(); 17 | res.json(newTask); 18 | } catch (error) { 19 | res.status(500).send(error); 20 | } 21 | }; 22 | 23 | export const getTask: Handler = (req, res) => { 24 | const taskFound = getConnection() 25 | .get("tasks") 26 | .find({ id: req.params.id }) 27 | .value(); 28 | 29 | if (!taskFound) return res.status(404).json({ msg: "Task was not found" }); 30 | 31 | res.json(taskFound); 32 | }; 33 | 34 | export const count: Handler = (req, res) => { 35 | const taskLength = getConnection().get("tasks").value().length; 36 | res.json(taskLength); 37 | }; 38 | 39 | export const deleteTask: Handler = (req, res) => { 40 | const taskFound = getConnection() 41 | .get("tasks") 42 | .find({ id: req.params.id }) 43 | .value(); 44 | 45 | if (!taskFound) { 46 | return res.status(404).json({ msg: "Task was not found" }); 47 | } 48 | 49 | const deletedTask = getConnection() 50 | .get("tasks") 51 | .remove({ id: req.params.id }) 52 | .write(); 53 | 54 | res.json(deletedTask); 55 | }; 56 | 57 | export const updateTask: Handler = (req, res) => { 58 | try { 59 | const taskFound = getConnection() 60 | .get("tasks") 61 | .find({ id: req.params.id }) 62 | .value(); 63 | 64 | if (!taskFound) { 65 | return res.status(404).json({ msg: "Task was not found" }); 66 | } 67 | 68 | const updatedTask = getConnection() 69 | .get("tasks") 70 | .find({ id: req.params.id }) 71 | .assign(req.body) 72 | .write(); 73 | 74 | res.json(updatedTask); 75 | } catch (error) { 76 | return res.status(500).send(error); 77 | } 78 | }; 79 | -------------------------------------------------------------------------------- /src/routes/tasks.routes.ts: -------------------------------------------------------------------------------- 1 | import { Router } from "express"; 2 | import { 3 | getTasks, 4 | createTask, 5 | count, 6 | deleteTask, 7 | getTask, 8 | updateTask, 9 | } from "../controllers/task.controller"; 10 | 11 | const router = Router(); 12 | 13 | /** 14 | * @swagger 15 | * components: 16 | * schemas: 17 | * Task: 18 | * type: object 19 | * properties: 20 | * id: 21 | * type: string 22 | * description: the auto-generated id of task 23 | * name: 24 | * type: string 25 | * description: the name of the task 26 | * description: 27 | * type: string 28 | * description: the description of the task 29 | * required: 30 | * - name 31 | * - description 32 | * example: 33 | * id: gQBOyGbxcQy6tEp0aZ78X 34 | * name: My first Task 35 | * description: I have to do Something 36 | * TaskNotFound: 37 | * type: object 38 | * properties: 39 | * msg: 40 | * type: string 41 | * description: A message for the not found task 42 | * example: 43 | * msg: Task was not found 44 | * 45 | * parameters: 46 | * taskId: 47 | * in: path 48 | * name: id 49 | * required: true 50 | * schema: 51 | * type: string 52 | * description: the task id 53 | */ 54 | 55 | /** 56 | * @swagger 57 | * tags: 58 | * name: Tasks 59 | * description: Tasks endpoint 60 | */ 61 | 62 | /** 63 | * @swagger 64 | * /tasks: 65 | * get: 66 | * summary: Returns a list of tasks 67 | * tags: [Tasks] 68 | * responses: 69 | * 200: 70 | * description: the list of tasks 71 | * content: 72 | * application/json: 73 | * schema: 74 | * type: array 75 | * items: 76 | * $ref: '#/components/schemas/Task' 77 | */ 78 | 79 | router.get("/tasks", getTasks); 80 | 81 | /** 82 | * @swagger 83 | * /tasks/count: 84 | * get: 85 | * summary: Get a task by Id 86 | * tags: [Tasks] 87 | * responses: 88 | * 200: 89 | * description: the total number of tasks 90 | * content: 91 | * text/plain: 92 | * schema: 93 | * type: integer 94 | * example: 15 95 | * 96 | */ 97 | router.get("/tasks/count", count); 98 | 99 | /** 100 | * @swagger 101 | * /tasks: 102 | * post: 103 | * summary: create a new task 104 | * tags: [Tasks] 105 | * requestBody: 106 | * required: true 107 | * content: 108 | * application/json: 109 | * schema: 110 | * $ref: '#/components/schemas/Task' 111 | * responses: 112 | * 200: 113 | * description: the tasks was successfully created 114 | * content: 115 | * application/json: 116 | * schema: 117 | * $ref: '#/components/schemas/Task' 118 | * 500: 119 | * description: Some server error 120 | * 121 | */ 122 | router.post("/tasks", createTask); 123 | 124 | /** 125 | * @swagger 126 | * /tasks/{id}: 127 | * get: 128 | * summary: get a task by Id 129 | * tags: [Tasks] 130 | * parameters: 131 | * - $ref: '#/components/parameters/taskId' 132 | * responses: 133 | * 200: 134 | * description: The Found Task 135 | * content: 136 | * application/json: 137 | * schema: 138 | * $ref: '#/components/schemas/Task' 139 | * 404: 140 | * description: the task was not found 141 | * content: 142 | * application/json: 143 | * schema: 144 | * $ref: '#/components/schemas/TaskNotFound' 145 | */ 146 | router.get("/tasks/:id", getTask); 147 | 148 | /** 149 | * @swagger 150 | * /tasks/{id}: 151 | * delete: 152 | * summary: delete a task by id 153 | * tags: [Tasks] 154 | * parameters: 155 | * - $ref: '#/components/parameters/taskId' 156 | * responses: 157 | * 200: 158 | * description: the task was deleted 159 | * content: 160 | * application/json: 161 | * schema: 162 | * $ref: '#/components/schemas/Task' 163 | * 404: 164 | * description: the task was not found 165 | * content: 166 | * application/json: 167 | * schema: 168 | * $ref: '#/components/schemas/TaskNotFound' 169 | * 170 | */ 171 | router.delete("/tasks/:id", deleteTask); 172 | 173 | /** 174 | * @swagger 175 | * /tasks/{id}: 176 | * put: 177 | * summary: Update a task by id 178 | * tags: [Tasks] 179 | * parameters: 180 | * - $ref: '#/components/parameters/taskId' 181 | * requestBody: 182 | * required: true 183 | * content: 184 | * application/json: 185 | * schema: 186 | * $ref: '#/components/schemas/Task' 187 | * responses: 188 | * 200: 189 | * description: The updated task 190 | * content: 191 | * application/json: 192 | * schema: 193 | * $ref: '#/components/schemas/Task' 194 | * 404: 195 | * description: the task was not found 196 | * content: 197 | * application/json: 198 | * schema: 199 | * $ref: '#/components/schemas/TaskNotFound' 200 | * 201 | */ 202 | router.put("/tasks/:id", updateTask); 203 | 204 | export default router; 205 | -------------------------------------------------------------------------------- /tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "compilerOptions": { 3 | /* Visit https://aka.ms/tsconfig.json to read more about this file */ 4 | /* Basic Options */ 5 | // "incremental": true, /* Enable incremental compilation */ 6 | "target": "es6", /* Specify ECMAScript target version: 'ES3' (default), 'ES5', 'ES2015', 'ES2016', 'ES2017', 'ES2018', 'ES2019', 'ES2020', or 'ESNEXT'. */ 7 | "module": "commonjs", /* Specify module code generation: 'none', 'commonjs', 'amd', 'system', 'umd', 'es2015', 'es2020', or 'ESNext'. */ 8 | // "lib": [], /* Specify library files to be included in the compilation. */ 9 | // "allowJs": true, /* Allow javascript files to be compiled. */ 10 | // "checkJs": true, /* Report errors in .js files. */ 11 | // "jsx": "preserve", /* Specify JSX code generation: 'preserve', 'react-native', 'react', 'react-jsx' or 'react-jsxdev'. */ 12 | // "declaration": true, /* Generates corresponding '.d.ts' file. */ 13 | // "declarationMap": true, /* Generates a sourcemap for each corresponding '.d.ts' file. */ 14 | // "sourceMap": true, /* Generates corresponding '.map' file. */ 15 | // "outFile": "./", /* Concatenate and emit output to single file. */ 16 | "outDir": "./build", /* Redirect output structure to the directory. */ 17 | "rootDir": "./src", /* Specify the root directory of input files. Use to control the output directory structure with --outDir. */ 18 | // "composite": true, /* Enable project compilation */ 19 | // "tsBuildInfoFile": "./", /* Specify file to store incremental compilation information */ 20 | // "removeComments": true, /* Do not emit comments to output. */ 21 | // "noEmit": true, /* Do not emit outputs. */ 22 | // "importHelpers": true, /* Import emit helpers from 'tslib'. */ 23 | // "downlevelIteration": true, /* Provide full support for iterables in 'for-of', spread, and destructuring when targeting 'ES5' or 'ES3'. */ 24 | // "isolatedModules": true, /* Transpile each file as a separate module (similar to 'ts.transpileModule'). */ 25 | /* Strict Type-Checking Options */ 26 | "strict": true, /* Enable all strict type-checking options. */ 27 | // "noImplicitAny": true, /* Raise error on expressions and declarations with an implied 'any' type. */ 28 | // "strictNullChecks": true, /* Enable strict null checks. */ 29 | // "strictFunctionTypes": true, /* Enable strict checking of function types. */ 30 | // "strictBindCallApply": true, /* Enable strict 'bind', 'call', and 'apply' methods on functions. */ 31 | // "strictPropertyInitialization": true, /* Enable strict checking of property initialization in classes. */ 32 | // "noImplicitThis": true, /* Raise error on 'this' expressions with an implied 'any' type. */ 33 | // "alwaysStrict": true, /* Parse in strict mode and emit "use strict" for each source file. */ 34 | /* Additional Checks */ 35 | // "noUnusedLocals": true, /* Report errors on unused locals. */ 36 | // "noUnusedParameters": true, /* Report errors on unused parameters. */ 37 | // "noImplicitReturns": true, /* Report error when not all code paths in function return a value. */ 38 | // "noFallthroughCasesInSwitch": true, /* Report errors for fallthrough cases in switch statement. */ 39 | // "noUncheckedIndexedAccess": true, /* Include 'undefined' in index signature results */ 40 | // "noPropertyAccessFromIndexSignature": true, /* Require undeclared properties from index signatures to use element accesses. */ 41 | /* Module Resolution Options */ 42 | // "moduleResolution": "node", /* Specify module resolution strategy: 'node' (Node.js) or 'classic' (TypeScript pre-1.6). */ 43 | // "baseUrl": "./", /* Base directory to resolve non-absolute module names. */ 44 | // "paths": {}, /* A series of entries which re-map imports to lookup locations relative to the 'baseUrl'. */ 45 | // "rootDirs": [], /* List of root folders whose combined content represents the structure of the project at runtime. */ 46 | // "typeRoots": [], /* List of folders to include type definitions from. */ 47 | // "types": [], /* Type declaration files to be included in compilation. */ 48 | // "allowSyntheticDefaultImports": true, /* Allow default imports from modules with no default export. This does not affect code emit, just typechecking. */ 49 | "esModuleInterop": true, /* Enables emit interoperability between CommonJS and ES Modules via creation of namespace objects for all imports. Implies 'allowSyntheticDefaultImports'. */ 50 | // "preserveSymlinks": true, /* Do not resolve the real path of symlinks. */ 51 | // "allowUmdGlobalAccess": true, /* Allow accessing UMD globals from modules. */ 52 | /* Source Map Options */ 53 | // "sourceRoot": "", /* Specify the location where debugger should locate TypeScript files instead of source locations. */ 54 | // "mapRoot": "", /* Specify the location where debugger should locate map files instead of generated locations. */ 55 | // "inlineSourceMap": true, /* Emit a single file with source maps instead of having a separate file. */ 56 | // "inlineSources": true, /* Emit the source alongside the sourcemaps within a single file; requires '--inlineSourceMap' or '--sourceMap' to be set. */ 57 | /* Experimental Options */ 58 | // "experimentalDecorators": true, /* Enables experimental support for ES7 decorators. */ 59 | // "emitDecoratorMetadata": true, /* Enables experimental support for emitting type metadata for decorators. */ 60 | /* Advanced Options */ 61 | "skipLibCheck": true, /* Skip type checking of declaration files. */ 62 | "forceConsistentCasingInFileNames": true /* Disallow inconsistently-cased references to the same file. */ 63 | } 64 | } -------------------------------------------------------------------------------- /yarn.lock: -------------------------------------------------------------------------------- 1 | # THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY. 2 | # yarn lockfile v1 3 | 4 | 5 | "@apidevtools/json-schema-ref-parser@^9.0.6": 6 | version "9.0.7" 7 | resolved "https://registry.yarnpkg.com/@apidevtools/json-schema-ref-parser/-/json-schema-ref-parser-9.0.7.tgz#64aa7f5b34e43d74ea9e408b90ddfba02050dde3" 8 | integrity sha512-QdwOGF1+eeyFh+17v2Tz626WX0nucd1iKOm6JUTUvCZdbolblCOOQCxGrQPY0f7jEhn36PiAWqZnsC2r5vmUWg== 9 | dependencies: 10 | "@jsdevtools/ono" "^7.1.3" 11 | call-me-maybe "^1.0.1" 12 | js-yaml "^3.13.1" 13 | 14 | "@apidevtools/openapi-schemas@^2.0.4": 15 | version "2.1.0" 16 | resolved "https://registry.yarnpkg.com/@apidevtools/openapi-schemas/-/openapi-schemas-2.1.0.tgz#9fa08017fb59d80538812f03fc7cac5992caaa17" 17 | integrity sha512-Zc1AlqrJlX3SlpupFGpiLi2EbteyP7fXmUOGup6/DnkRgjP9bgMM/ag+n91rsv0U1Gpz0H3VILA/o3bW7Ua6BQ== 18 | 19 | "@apidevtools/swagger-methods@^3.0.2": 20 | version "3.0.2" 21 | resolved "https://registry.yarnpkg.com/@apidevtools/swagger-methods/-/swagger-methods-3.0.2.tgz#b789a362e055b0340d04712eafe7027ddc1ac267" 22 | integrity sha512-QAkD5kK2b1WfjDS/UQn/qQkbwF31uqRjPTrsCs5ZG9BQGAkjwvqGFjjPqAuzac/IYzpPtRzjCP1WrTuAIjMrXg== 23 | 24 | "@apidevtools/swagger-parser@10.0.2": 25 | version "10.0.2" 26 | resolved "https://registry.yarnpkg.com/@apidevtools/swagger-parser/-/swagger-parser-10.0.2.tgz#f4145afb7c3a3bafe0376f003b5c3bdeae17a952" 27 | integrity sha512-JFxcEyp8RlNHgBCE98nwuTkZT6eNFPc1aosWV6wPcQph72TSEEu1k3baJD4/x1qznU+JiDdz8F5pTwabZh+Dhg== 28 | dependencies: 29 | "@apidevtools/json-schema-ref-parser" "^9.0.6" 30 | "@apidevtools/openapi-schemas" "^2.0.4" 31 | "@apidevtools/swagger-methods" "^3.0.2" 32 | "@jsdevtools/ono" "^7.1.3" 33 | call-me-maybe "^1.0.1" 34 | z-schema "^4.2.3" 35 | 36 | "@jsdevtools/ono@^7.1.3": 37 | version "7.1.3" 38 | resolved "https://registry.yarnpkg.com/@jsdevtools/ono/-/ono-7.1.3.tgz#9df03bbd7c696a5c58885c34aa06da41c8543796" 39 | integrity sha512-4JQNk+3mVzK3xh2rqd6RB4J46qUR19azEHBneZyTZM+c456qOrbbM/5xcR8huNCCcbVt7+UmizG6GuUvPvKUYg== 40 | 41 | "@sindresorhus/is@^0.14.0": 42 | version "0.14.0" 43 | resolved "https://registry.yarnpkg.com/@sindresorhus/is/-/is-0.14.0.tgz#9fb3a3cf3132328151f353de4632e01e52102bea" 44 | integrity sha512-9NET910DNaIPngYnLLPeg+Ogzqsi9uM4mSboU5y6p8S5DzMTVEsJZrawi+BoDNUVBa2DhJqQYUFvMDfgU062LQ== 45 | 46 | "@szmarczak/http-timer@^1.1.2": 47 | version "1.1.2" 48 | resolved "https://registry.yarnpkg.com/@szmarczak/http-timer/-/http-timer-1.1.2.tgz#b1665e2c461a2cd92f4c1bbf50d5454de0d4b421" 49 | integrity sha512-XIB2XbzHTN6ieIjfIMV9hlVcfPU26s2vafYWQcZHWXHOxiaRZYEDKEwdl129Zyg50+foYV2jCgtrqSA6qNuNSA== 50 | dependencies: 51 | defer-to-connect "^1.0.1" 52 | 53 | "@types/body-parser@*": 54 | version "1.19.0" 55 | resolved "https://registry.yarnpkg.com/@types/body-parser/-/body-parser-1.19.0.tgz#0685b3c47eb3006ffed117cdd55164b61f80538f" 56 | integrity sha512-W98JrE0j2K78swW4ukqMleo8R7h/pFETjM2DQ90MF6XK2i4LO4W3gQ71Lt4w3bfm2EvVSyWHplECvB5sK22yFQ== 57 | dependencies: 58 | "@types/connect" "*" 59 | "@types/node" "*" 60 | 61 | "@types/connect@*": 62 | version "3.4.34" 63 | resolved "https://registry.yarnpkg.com/@types/connect/-/connect-3.4.34.tgz#170a40223a6d666006d93ca128af2beb1d9b1901" 64 | integrity sha512-ePPA/JuI+X0vb+gSWlPKOY0NdNAie/rPUqX2GUPpbZwiKTkSPhjXWuee47E4MtE54QVzGCQMQkAL6JhV2E1+cQ== 65 | dependencies: 66 | "@types/node" "*" 67 | 68 | "@types/cors@^2.8.10": 69 | version "2.8.10" 70 | resolved "https://registry.yarnpkg.com/@types/cors/-/cors-2.8.10.tgz#61cc8469849e5bcdd0c7044122265c39cec10cf4" 71 | integrity sha512-C7srjHiVG3Ey1nR6d511dtDkCEjxuN9W1HWAEjGq8kpcwmNM6JJkpC0xvabM7BXTG2wDq8Eu33iH9aQKa7IvLQ== 72 | 73 | "@types/express-serve-static-core@^4.17.18": 74 | version "4.17.19" 75 | resolved "https://registry.yarnpkg.com/@types/express-serve-static-core/-/express-serve-static-core-4.17.19.tgz#00acfc1632e729acac4f1530e9e16f6dd1508a1d" 76 | integrity sha512-DJOSHzX7pCiSElWaGR8kCprwibCB/3yW6vcT8VG3P0SJjnv19gnWG/AZMfM60Xj/YJIp/YCaDHyvzsFVeniARA== 77 | dependencies: 78 | "@types/node" "*" 79 | "@types/qs" "*" 80 | "@types/range-parser" "*" 81 | 82 | "@types/express@*", "@types/express@^4.17.11": 83 | version "4.17.11" 84 | resolved "https://registry.yarnpkg.com/@types/express/-/express-4.17.11.tgz#debe3caa6f8e5fcda96b47bd54e2f40c4ee59545" 85 | integrity sha512-no+R6rW60JEc59977wIxreQVsIEOAYwgCqldrA/vkpCnbD7MqTefO97lmoBe4WE0F156bC4uLSP1XHDOySnChg== 86 | dependencies: 87 | "@types/body-parser" "*" 88 | "@types/express-serve-static-core" "^4.17.18" 89 | "@types/qs" "*" 90 | "@types/serve-static" "*" 91 | 92 | "@types/lodash@*": 93 | version "4.14.168" 94 | resolved "https://registry.yarnpkg.com/@types/lodash/-/lodash-4.14.168.tgz#fe24632e79b7ade3f132891afff86caa5e5ce008" 95 | integrity sha512-oVfRvqHV/V6D1yifJbVRU3TMp8OT6o6BG+U9MkwuJ3U8/CsDHvalRpsxBqivn71ztOFZBTfJMvETbqHiaNSj7Q== 96 | 97 | "@types/lowdb@^1.0.9": 98 | version "1.0.9" 99 | resolved "https://registry.yarnpkg.com/@types/lowdb/-/lowdb-1.0.9.tgz#1f6c27df72dd1c64522cc9a4566796d2dd058d38" 100 | integrity sha512-LBRG5EPXFOJDoJc9jACstMhtMP+u+UkPYllBeGQXXKiaHc+uzJs9+/Aynb/5KkX33DtrIiKyzNVTPQc/4RcD6A== 101 | dependencies: 102 | "@types/lodash" "*" 103 | 104 | "@types/mime@^1": 105 | version "1.3.2" 106 | resolved "https://registry.yarnpkg.com/@types/mime/-/mime-1.3.2.tgz#93e25bf9ee75fe0fd80b594bc4feb0e862111b5a" 107 | integrity sha512-YATxVxgRqNH6nHEIsvg6k2Boc1JHI9ZbH5iWFFv/MTkchz3b1ieGDa5T0a9RznNdI0KhVbdbWSN+KWWrQZRxTw== 108 | 109 | "@types/morgan@^1.9.2": 110 | version "1.9.2" 111 | resolved "https://registry.yarnpkg.com/@types/morgan/-/morgan-1.9.2.tgz#450f958a4d3fb0694a3ba012b09c8106f9a2885e" 112 | integrity sha512-edtGMEdit146JwwIeyQeHHg9yID4WSolQPxpEorHmN3KuytuCHyn2ELNr5Uxy8SerniFbbkmgKMrGM933am5BQ== 113 | dependencies: 114 | "@types/node" "*" 115 | 116 | "@types/node@*": 117 | version "15.0.2" 118 | resolved "https://registry.yarnpkg.com/@types/node/-/node-15.0.2.tgz#51e9c0920d1b45936ea04341aa3e2e58d339fb67" 119 | integrity sha512-p68+a+KoxpoB47015IeYZYRrdqMUcpbK8re/zpFB8Ld46LHC1lPEbp3EXgkEhAYEcPvjJF6ZO+869SQ0aH1dcA== 120 | 121 | "@types/qs@*": 122 | version "6.9.6" 123 | resolved "https://registry.yarnpkg.com/@types/qs/-/qs-6.9.6.tgz#df9c3c8b31a247ec315e6996566be3171df4b3b1" 124 | integrity sha512-0/HnwIfW4ki2D8L8c9GVcG5I72s9jP5GSLVF0VIXDW00kmIpA6O33G7a8n59Tmh7Nz0WUC3rSb7PTY/sdW2JzA== 125 | 126 | "@types/range-parser@*": 127 | version "1.2.3" 128 | resolved "https://registry.yarnpkg.com/@types/range-parser/-/range-parser-1.2.3.tgz#7ee330ba7caafb98090bece86a5ee44115904c2c" 129 | integrity sha512-ewFXqrQHlFsgc09MK5jP5iR7vumV/BYayNC6PgJO2LPe8vrnNFyjQjSppfEngITi0qvfKtzFvgKymGheFM9UOA== 130 | 131 | "@types/serve-static@*": 132 | version "1.13.9" 133 | resolved "https://registry.yarnpkg.com/@types/serve-static/-/serve-static-1.13.9.tgz#aacf28a85a05ee29a11fb7c3ead935ac56f33e4e" 134 | integrity sha512-ZFqF6qa48XsPdjXV5Gsz0Zqmux2PerNd3a/ktL45mHpa19cuMi/cL8tcxdAx497yRh+QtYPuofjT9oWw9P7nkA== 135 | dependencies: 136 | "@types/mime" "^1" 137 | "@types/node" "*" 138 | 139 | "@types/swagger-jsdoc@^6.0.0": 140 | version "6.0.0" 141 | resolved "https://registry.yarnpkg.com/@types/swagger-jsdoc/-/swagger-jsdoc-6.0.0.tgz#4d2308b6b9a650cd476b49274889608a2b18ef46" 142 | integrity sha512-0snGxQMvrPOFEFnEVcXAm8zKH7aLB5tAsUTXfWwQu7XGfMBelt+tSLzF5lH0D+ppRiZrwPnWF7f3fpDHZaWzag== 143 | 144 | "@types/swagger-ui-express@^4.1.2": 145 | version "4.1.2" 146 | resolved "https://registry.yarnpkg.com/@types/swagger-ui-express/-/swagger-ui-express-4.1.2.tgz#cfc884904a104c3193f46f423d04ee0416be1ef4" 147 | integrity sha512-t9teFTU8dKe69rX9EwL6OM2hbVquYdFM+sQ0REny4RalPlxAm+zyP04B12j4c7qEuDS6CnlwICywqWStPA3v4g== 148 | dependencies: 149 | "@types/express" "*" 150 | "@types/serve-static" "*" 151 | 152 | abbrev@1: 153 | version "1.1.1" 154 | resolved "https://registry.yarnpkg.com/abbrev/-/abbrev-1.1.1.tgz#f8f2c887ad10bf67f634f005b6987fed3179aac8" 155 | integrity sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q== 156 | 157 | accepts@~1.3.7: 158 | version "1.3.7" 159 | resolved "https://registry.yarnpkg.com/accepts/-/accepts-1.3.7.tgz#531bc726517a3b2b41f850021c6cc15eaab507cd" 160 | integrity sha512-Il80Qs2WjYlJIBNzNkK6KYqlVMTbZLXgHx2oT0pU/fjRHyEp+PEfEPY0R3WCwAGVOtauxh1hOxNgIf5bv7dQpA== 161 | dependencies: 162 | mime-types "~2.1.24" 163 | negotiator "0.6.2" 164 | 165 | ansi-align@^3.0.0: 166 | version "3.0.0" 167 | resolved "https://registry.yarnpkg.com/ansi-align/-/ansi-align-3.0.0.tgz#b536b371cf687caaef236c18d3e21fe3797467cb" 168 | integrity sha512-ZpClVKqXN3RGBmKibdfWzqCY4lnjEuoNzU5T0oEFpfd/z5qJHVarukridD4juLO2FXMiwUQxr9WqQtaYa8XRYw== 169 | dependencies: 170 | string-width "^3.0.0" 171 | 172 | ansi-regex@^4.1.0: 173 | version "4.1.0" 174 | resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-4.1.0.tgz#8b9f8f08cf1acb843756a839ca8c7e3168c51997" 175 | integrity sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg== 176 | 177 | ansi-regex@^5.0.0: 178 | version "5.0.0" 179 | resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-5.0.0.tgz#388539f55179bf39339c81af30a654d69f87cb75" 180 | integrity sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg== 181 | 182 | ansi-styles@^4.1.0: 183 | version "4.3.0" 184 | resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-4.3.0.tgz#edd803628ae71c04c85ae7a0906edad34b648937" 185 | integrity sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg== 186 | dependencies: 187 | color-convert "^2.0.1" 188 | 189 | anymatch@~3.1.1: 190 | version "3.1.2" 191 | resolved "https://registry.yarnpkg.com/anymatch/-/anymatch-3.1.2.tgz#c0557c096af32f106198f4f4e2a383537e378716" 192 | integrity sha512-P43ePfOAIupkguHUycrc4qJ9kz8ZiuOUijaETwX7THt0Y/GNK7v0aa8rY816xWjZ7rJdA5XdMcpVFTKMq+RvWg== 193 | dependencies: 194 | normalize-path "^3.0.0" 195 | picomatch "^2.0.4" 196 | 197 | arg@^4.1.0: 198 | version "4.1.3" 199 | resolved "https://registry.yarnpkg.com/arg/-/arg-4.1.3.tgz#269fc7ad5b8e42cb63c896d5666017261c144089" 200 | integrity sha512-58S9QDqG0Xx27YwPSt9fJxivjYl432YCwfDMfZ+71RAqUrZef7LrKQZ3LHLOwCS4FLNBplP533Zx895SeOCHvA== 201 | 202 | argparse@^1.0.7: 203 | version "1.0.10" 204 | resolved "https://registry.yarnpkg.com/argparse/-/argparse-1.0.10.tgz#bcd6791ea5ae09725e17e5ad988134cd40b3d911" 205 | integrity sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg== 206 | dependencies: 207 | sprintf-js "~1.0.2" 208 | 209 | array-flatten@1.1.1: 210 | version "1.1.1" 211 | resolved "https://registry.yarnpkg.com/array-flatten/-/array-flatten-1.1.1.tgz#9a5f699051b1e7073328f2a008968b64ea2955d2" 212 | integrity sha1-ml9pkFGx5wczKPKgCJaLZOopVdI= 213 | 214 | balanced-match@^1.0.0: 215 | version "1.0.2" 216 | resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-1.0.2.tgz#e83e3a7e3f300b34cb9d87f615fa0cbf357690ee" 217 | integrity sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw== 218 | 219 | basic-auth@~2.0.1: 220 | version "2.0.1" 221 | resolved "https://registry.yarnpkg.com/basic-auth/-/basic-auth-2.0.1.tgz#b998279bf47ce38344b4f3cf916d4679bbf51e3a" 222 | integrity sha512-NF+epuEdnUYVlGuhaxbbq+dvJttwLnGY+YixlXlME5KpQ5W3CnXA5cVTneY3SPbPDRkcjMbifrwmFYcClgOZeg== 223 | dependencies: 224 | safe-buffer "5.1.2" 225 | 226 | binary-extensions@^2.0.0: 227 | version "2.2.0" 228 | resolved "https://registry.yarnpkg.com/binary-extensions/-/binary-extensions-2.2.0.tgz#75f502eeaf9ffde42fc98829645be4ea76bd9e2d" 229 | integrity sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA== 230 | 231 | body-parser@1.19.0: 232 | version "1.19.0" 233 | resolved "https://registry.yarnpkg.com/body-parser/-/body-parser-1.19.0.tgz#96b2709e57c9c4e09a6fd66a8fd979844f69f08a" 234 | integrity sha512-dhEPs72UPbDnAQJ9ZKMNTP6ptJaionhP5cBb541nXPlW60Jepo9RV/a4fX4XWW9CuFNK22krhrj1+rgzifNCsw== 235 | dependencies: 236 | bytes "3.1.0" 237 | content-type "~1.0.4" 238 | debug "2.6.9" 239 | depd "~1.1.2" 240 | http-errors "1.7.2" 241 | iconv-lite "0.4.24" 242 | on-finished "~2.3.0" 243 | qs "6.7.0" 244 | raw-body "2.4.0" 245 | type-is "~1.6.17" 246 | 247 | boxen@^4.2.0: 248 | version "4.2.0" 249 | resolved "https://registry.yarnpkg.com/boxen/-/boxen-4.2.0.tgz#e411b62357d6d6d36587c8ac3d5d974daa070e64" 250 | integrity sha512-eB4uT9RGzg2odpER62bBwSLvUeGC+WbRjjyyFhGsKnc8wp/m0+hQsMUvUe3H2V0D5vw0nBdO1hCJoZo5mKeuIQ== 251 | dependencies: 252 | ansi-align "^3.0.0" 253 | camelcase "^5.3.1" 254 | chalk "^3.0.0" 255 | cli-boxes "^2.2.0" 256 | string-width "^4.1.0" 257 | term-size "^2.1.0" 258 | type-fest "^0.8.1" 259 | widest-line "^3.1.0" 260 | 261 | brace-expansion@^1.1.7: 262 | version "1.1.11" 263 | resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-1.1.11.tgz#3c7fcbf529d87226f3d2f52b966ff5271eb441dd" 264 | integrity sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA== 265 | dependencies: 266 | balanced-match "^1.0.0" 267 | concat-map "0.0.1" 268 | 269 | braces@~3.0.2: 270 | version "3.0.2" 271 | resolved "https://registry.yarnpkg.com/braces/-/braces-3.0.2.tgz#3454e1a462ee8d599e236df336cd9ea4f8afe107" 272 | integrity sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A== 273 | dependencies: 274 | fill-range "^7.0.1" 275 | 276 | buffer-from@^1.0.0: 277 | version "1.1.1" 278 | resolved "https://registry.yarnpkg.com/buffer-from/-/buffer-from-1.1.1.tgz#32713bc028f75c02fdb710d7c7bcec1f2c6070ef" 279 | integrity sha512-MQcXEUbCKtEo7bhqEs6560Hyd4XaovZlO/k9V3hjVUF/zwW7KBVdSK4gIt/bzwS9MbR5qob+F5jusZsb0YQK2A== 280 | 281 | bytes@3.1.0: 282 | version "3.1.0" 283 | resolved "https://registry.yarnpkg.com/bytes/-/bytes-3.1.0.tgz#f6cf7933a360e0588fa9fde85651cdc7f805d1f6" 284 | integrity sha512-zauLjrfCG+xvoyaqLoV8bLVXXNGC4JqlxFCutSDWA6fJrTo2ZuvLYTqZ7aHBLZSMOopbzwv8f+wZcVzfVTI2Dg== 285 | 286 | cacheable-request@^6.0.0: 287 | version "6.1.0" 288 | resolved "https://registry.yarnpkg.com/cacheable-request/-/cacheable-request-6.1.0.tgz#20ffb8bd162ba4be11e9567d823db651052ca912" 289 | integrity sha512-Oj3cAGPCqOZX7Rz64Uny2GYAZNliQSqfbePrgAQ1wKAihYmCUnraBtJtKcGR4xz7wF+LoJC+ssFZvv5BgF9Igg== 290 | dependencies: 291 | clone-response "^1.0.2" 292 | get-stream "^5.1.0" 293 | http-cache-semantics "^4.0.0" 294 | keyv "^3.0.0" 295 | lowercase-keys "^2.0.0" 296 | normalize-url "^4.1.0" 297 | responselike "^1.0.2" 298 | 299 | call-me-maybe@^1.0.1: 300 | version "1.0.1" 301 | resolved "https://registry.yarnpkg.com/call-me-maybe/-/call-me-maybe-1.0.1.tgz#26d208ea89e37b5cbde60250a15f031c16a4d66b" 302 | integrity sha1-JtII6onje1y95gJQoV8DHBak1ms= 303 | 304 | camelcase@^5.3.1: 305 | version "5.3.1" 306 | resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-5.3.1.tgz#e3c9b31569e106811df242f715725a1f4c494320" 307 | integrity sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg== 308 | 309 | chalk@^3.0.0: 310 | version "3.0.0" 311 | resolved "https://registry.yarnpkg.com/chalk/-/chalk-3.0.0.tgz#3f73c2bf526591f574cc492c51e2456349f844e4" 312 | integrity sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg== 313 | dependencies: 314 | ansi-styles "^4.1.0" 315 | supports-color "^7.1.0" 316 | 317 | chokidar@^3.2.2: 318 | version "3.5.1" 319 | resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-3.5.1.tgz#ee9ce7bbebd2b79f49f304799d5468e31e14e68a" 320 | integrity sha512-9+s+Od+W0VJJzawDma/gvBNQqkTiqYTWLuZoyAsivsI4AaWTCzHG06/TMjsf1cYe9Cb97UCEhjz7HvnPk2p/tw== 321 | dependencies: 322 | anymatch "~3.1.1" 323 | braces "~3.0.2" 324 | glob-parent "~5.1.0" 325 | is-binary-path "~2.1.0" 326 | is-glob "~4.0.1" 327 | normalize-path "~3.0.0" 328 | readdirp "~3.5.0" 329 | optionalDependencies: 330 | fsevents "~2.3.1" 331 | 332 | ci-info@^2.0.0: 333 | version "2.0.0" 334 | resolved "https://registry.yarnpkg.com/ci-info/-/ci-info-2.0.0.tgz#67a9e964be31a51e15e5010d58e6f12834002f46" 335 | integrity sha512-5tK7EtrZ0N+OLFMthtqOj4fI2Jeb88C4CAZPu25LDVUgXJ0A3Js4PMGqrn0JU1W0Mh1/Z8wZzYPxqUrXeBboCQ== 336 | 337 | cli-boxes@^2.2.0: 338 | version "2.2.1" 339 | resolved "https://registry.yarnpkg.com/cli-boxes/-/cli-boxes-2.2.1.tgz#ddd5035d25094fce220e9cab40a45840a440318f" 340 | integrity sha512-y4coMcylgSCdVinjiDBuR8PCC2bLjyGTwEmPb9NHR/QaNU6EUOXcTY/s6VjGMD6ENSEaeQYHCY0GNGS5jfMwPw== 341 | 342 | clone-response@^1.0.2: 343 | version "1.0.2" 344 | resolved "https://registry.yarnpkg.com/clone-response/-/clone-response-1.0.2.tgz#d1dc973920314df67fbeb94223b4ee350239e96b" 345 | integrity sha1-0dyXOSAxTfZ/vrlCI7TuNQI56Ws= 346 | dependencies: 347 | mimic-response "^1.0.0" 348 | 349 | color-convert@^2.0.1: 350 | version "2.0.1" 351 | resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-2.0.1.tgz#72d3a68d598c9bdb3af2ad1e84f21d896abd4de3" 352 | integrity sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ== 353 | dependencies: 354 | color-name "~1.1.4" 355 | 356 | color-name@~1.1.4: 357 | version "1.1.4" 358 | resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.4.tgz#c2a09a87acbde69543de6f63fa3995c826c536a2" 359 | integrity sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA== 360 | 361 | commander@6.2.0: 362 | version "6.2.0" 363 | resolved "https://registry.yarnpkg.com/commander/-/commander-6.2.0.tgz#b990bfb8ac030aedc6d11bc04d1488ffef56db75" 364 | integrity sha512-zP4jEKbe8SHzKJYQmq8Y9gYjtO/POJLgIdKgV7B9qNmABVFVc+ctqSX6iXh4mCpJfRBOabiZ2YKPg8ciDw6C+Q== 365 | 366 | commander@^2.7.1: 367 | version "2.20.3" 368 | resolved "https://registry.yarnpkg.com/commander/-/commander-2.20.3.tgz#fd485e84c03eb4881c20722ba48035e8531aeb33" 369 | integrity sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ== 370 | 371 | concat-map@0.0.1: 372 | version "0.0.1" 373 | resolved "https://registry.yarnpkg.com/concat-map/-/concat-map-0.0.1.tgz#d8a96bd77fd68df7793a73036a3ba0d5405d477b" 374 | integrity sha1-2Klr13/Wjfd5OnMDajug1UBdR3s= 375 | 376 | configstore@^5.0.1: 377 | version "5.0.1" 378 | resolved "https://registry.yarnpkg.com/configstore/-/configstore-5.0.1.tgz#d365021b5df4b98cdd187d6a3b0e3f6a7cc5ed96" 379 | integrity sha512-aMKprgk5YhBNyH25hj8wGt2+D52Sw1DRRIzqBwLp2Ya9mFmY8KPvvtvmna8SxVR9JMZ4kzMD68N22vlaRpkeFA== 380 | dependencies: 381 | dot-prop "^5.2.0" 382 | graceful-fs "^4.1.2" 383 | make-dir "^3.0.0" 384 | unique-string "^2.0.0" 385 | write-file-atomic "^3.0.0" 386 | xdg-basedir "^4.0.0" 387 | 388 | content-disposition@0.5.3: 389 | version "0.5.3" 390 | resolved "https://registry.yarnpkg.com/content-disposition/-/content-disposition-0.5.3.tgz#e130caf7e7279087c5616c2007d0485698984fbd" 391 | integrity sha512-ExO0774ikEObIAEV9kDo50o+79VCUdEB6n6lzKgGwupcVeRlhrj3qGAfwq8G6uBJjkqLrhT0qEYFcWng8z1z0g== 392 | dependencies: 393 | safe-buffer "5.1.2" 394 | 395 | content-type@~1.0.4: 396 | version "1.0.4" 397 | resolved "https://registry.yarnpkg.com/content-type/-/content-type-1.0.4.tgz#e138cc75e040c727b1966fe5e5f8c9aee256fe3b" 398 | integrity sha512-hIP3EEPs8tB9AT1L+NUqtwOAps4mk2Zob89MWXMHjHWg9milF/j4osnnQLXBCBFBk/tvIG/tUc9mOUJiPBhPXA== 399 | 400 | cookie-signature@1.0.6: 401 | version "1.0.6" 402 | resolved "https://registry.yarnpkg.com/cookie-signature/-/cookie-signature-1.0.6.tgz#e303a882b342cc3ee8ca513a79999734dab3ae2c" 403 | integrity sha1-4wOogrNCzD7oylE6eZmXNNqzriw= 404 | 405 | cookie@0.4.0: 406 | version "0.4.0" 407 | resolved "https://registry.yarnpkg.com/cookie/-/cookie-0.4.0.tgz#beb437e7022b3b6d49019d088665303ebe9c14ba" 408 | integrity sha512-+Hp8fLp57wnUSt0tY0tHEXh4voZRDnoIrZPqlo3DPiI4y9lwg/jqx+1Om94/W6ZaPDOUbnjOt/99w66zk+l1Xg== 409 | 410 | cors@^2.8.5: 411 | version "2.8.5" 412 | resolved "https://registry.yarnpkg.com/cors/-/cors-2.8.5.tgz#eac11da51592dd86b9f06f6e7ac293b3df875d29" 413 | integrity sha512-KIHbLJqu73RGr/hnbrO9uBeixNGuvSQjul/jdFvS/KFSIH1hWVd1ng7zOHx+YrEfInLG7q4n6GHQ9cDtxv/P6g== 414 | dependencies: 415 | object-assign "^4" 416 | vary "^1" 417 | 418 | create-require@^1.1.0: 419 | version "1.1.1" 420 | resolved "https://registry.yarnpkg.com/create-require/-/create-require-1.1.1.tgz#c1d7e8f1e5f6cfc9ff65f9cd352d37348756c333" 421 | integrity sha512-dcKFX3jn0MpIaXjisoRvexIJVEKzaq7z2rZKxf+MSr9TkdmHmsU4m2lcLojrj/FHl8mk5VxMmYA+ftRkP/3oKQ== 422 | 423 | crypto-random-string@^2.0.0: 424 | version "2.0.0" 425 | resolved "https://registry.yarnpkg.com/crypto-random-string/-/crypto-random-string-2.0.0.tgz#ef2a7a966ec11083388369baa02ebead229b30d5" 426 | integrity sha512-v1plID3y9r/lPhviJ1wrXpLeyUIGAZ2SHNYTEapm7/8A9nLPoyvVp3RK/EPFqn5kEznyWgYZNsRtYYIWbuG8KA== 427 | 428 | debug@2.6.9, debug@^2.2.0: 429 | version "2.6.9" 430 | resolved "https://registry.yarnpkg.com/debug/-/debug-2.6.9.tgz#5d128515df134ff327e90a4c93f4e077a536341f" 431 | integrity sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA== 432 | dependencies: 433 | ms "2.0.0" 434 | 435 | debug@^3.2.6: 436 | version "3.2.7" 437 | resolved "https://registry.yarnpkg.com/debug/-/debug-3.2.7.tgz#72580b7e9145fb39b6676f9c5e5fb100b934179a" 438 | integrity sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ== 439 | dependencies: 440 | ms "^2.1.1" 441 | 442 | decompress-response@^3.3.0: 443 | version "3.3.0" 444 | resolved "https://registry.yarnpkg.com/decompress-response/-/decompress-response-3.3.0.tgz#80a4dd323748384bfa248083622aedec982adff3" 445 | integrity sha1-gKTdMjdIOEv6JICDYirt7Jgq3/M= 446 | dependencies: 447 | mimic-response "^1.0.0" 448 | 449 | deep-extend@^0.6.0: 450 | version "0.6.0" 451 | resolved "https://registry.yarnpkg.com/deep-extend/-/deep-extend-0.6.0.tgz#c4fa7c95404a17a9c3e8ca7e1537312b736330ac" 452 | integrity sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA== 453 | 454 | defer-to-connect@^1.0.1: 455 | version "1.1.3" 456 | resolved "https://registry.yarnpkg.com/defer-to-connect/-/defer-to-connect-1.1.3.tgz#331ae050c08dcf789f8c83a7b81f0ed94f4ac591" 457 | integrity sha512-0ISdNousHvZT2EiFlZeZAHBUvSxmKswVCEf8hW7KWgG4a8MVEu/3Vb6uWYozkjylyCxe0JBIiRB1jV45S70WVQ== 458 | 459 | depd@~1.1.2: 460 | version "1.1.2" 461 | resolved "https://registry.yarnpkg.com/depd/-/depd-1.1.2.tgz#9bcd52e14c097763e749b274c4346ed2e560b5a9" 462 | integrity sha1-m81S4UwJd2PnSbJ0xDRu0uVgtak= 463 | 464 | depd@~2.0.0: 465 | version "2.0.0" 466 | resolved "https://registry.yarnpkg.com/depd/-/depd-2.0.0.tgz#b696163cc757560d09cf22cc8fad1571b79e76df" 467 | integrity sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw== 468 | 469 | destroy@~1.0.4: 470 | version "1.0.4" 471 | resolved "https://registry.yarnpkg.com/destroy/-/destroy-1.0.4.tgz#978857442c44749e4206613e37946205826abd80" 472 | integrity sha1-l4hXRCxEdJ5CBmE+N5RiBYJqvYA= 473 | 474 | diff@^4.0.1: 475 | version "4.0.2" 476 | resolved "https://registry.yarnpkg.com/diff/-/diff-4.0.2.tgz#60f3aecb89d5fae520c11aa19efc2bb982aade7d" 477 | integrity sha512-58lmxKSA4BNyLz+HHMUzlOEpg09FV+ev6ZMe3vJihgdxzgcwZ8VoEEPmALCZG9LmqfVoNMMKpttIYTVG6uDY7A== 478 | 479 | doctrine@3.0.0: 480 | version "3.0.0" 481 | resolved "https://registry.yarnpkg.com/doctrine/-/doctrine-3.0.0.tgz#addebead72a6574db783639dc87a121773973961" 482 | integrity sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w== 483 | dependencies: 484 | esutils "^2.0.2" 485 | 486 | dot-prop@^5.2.0: 487 | version "5.3.0" 488 | resolved "https://registry.yarnpkg.com/dot-prop/-/dot-prop-5.3.0.tgz#90ccce708cd9cd82cc4dc8c3ddd9abdd55b20e88" 489 | integrity sha512-QM8q3zDe58hqUqjraQOmzZ1LIH9SWQJTlEKCH4kJ2oQvLZk7RbQXvtDM2XEq3fwkV9CCvvH4LA0AV+ogFsBM2Q== 490 | dependencies: 491 | is-obj "^2.0.0" 492 | 493 | duplexer3@^0.1.4: 494 | version "0.1.4" 495 | resolved "https://registry.yarnpkg.com/duplexer3/-/duplexer3-0.1.4.tgz#ee01dd1cac0ed3cbc7fdbea37dc0a8f1ce002ce2" 496 | integrity sha1-7gHdHKwO08vH/b6jfcCo8c4ALOI= 497 | 498 | ee-first@1.1.1: 499 | version "1.1.1" 500 | resolved "https://registry.yarnpkg.com/ee-first/-/ee-first-1.1.1.tgz#590c61156b0ae2f4f0255732a158b266bc56b21d" 501 | integrity sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0= 502 | 503 | emoji-regex@^7.0.1: 504 | version "7.0.3" 505 | resolved "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-7.0.3.tgz#933a04052860c85e83c122479c4748a8e4c72156" 506 | integrity sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA== 507 | 508 | emoji-regex@^8.0.0: 509 | version "8.0.0" 510 | resolved "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-8.0.0.tgz#e818fd69ce5ccfcb404594f842963bf53164cc37" 511 | integrity sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A== 512 | 513 | encodeurl@~1.0.2: 514 | version "1.0.2" 515 | resolved "https://registry.yarnpkg.com/encodeurl/-/encodeurl-1.0.2.tgz#ad3ff4c86ec2d029322f5a02c3a9a606c95b3f59" 516 | integrity sha1-rT/0yG7C0CkyL1oCw6mmBslbP1k= 517 | 518 | end-of-stream@^1.1.0: 519 | version "1.4.4" 520 | resolved "https://registry.yarnpkg.com/end-of-stream/-/end-of-stream-1.4.4.tgz#5ae64a5f45057baf3626ec14da0ca5e4b2431eb0" 521 | integrity sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q== 522 | dependencies: 523 | once "^1.4.0" 524 | 525 | escape-goat@^2.0.0: 526 | version "2.1.1" 527 | resolved "https://registry.yarnpkg.com/escape-goat/-/escape-goat-2.1.1.tgz#1b2dc77003676c457ec760b2dc68edb648188675" 528 | integrity sha512-8/uIhbG12Csjy2JEW7D9pHbreaVaS/OpN3ycnyvElTdwM5n6GY6W6e2IPemfvGZeUMqZ9A/3GqIZMgKnBhAw/Q== 529 | 530 | escape-html@~1.0.3: 531 | version "1.0.3" 532 | resolved "https://registry.yarnpkg.com/escape-html/-/escape-html-1.0.3.tgz#0258eae4d3d0c0974de1c169188ef0051d1d1988" 533 | integrity sha1-Aljq5NPQwJdN4cFpGI7wBR0dGYg= 534 | 535 | esprima@^4.0.0: 536 | version "4.0.1" 537 | resolved "https://registry.yarnpkg.com/esprima/-/esprima-4.0.1.tgz#13b04cdb3e6c5d19df91ab6987a8695619b0aa71" 538 | integrity sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A== 539 | 540 | esutils@^2.0.2: 541 | version "2.0.3" 542 | resolved "https://registry.yarnpkg.com/esutils/-/esutils-2.0.3.tgz#74d2eb4de0b8da1293711910d50775b9b710ef64" 543 | integrity sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g== 544 | 545 | etag@~1.8.1: 546 | version "1.8.1" 547 | resolved "https://registry.yarnpkg.com/etag/-/etag-1.8.1.tgz#41ae2eeb65efa62268aebfea83ac7d79299b0887" 548 | integrity sha1-Qa4u62XvpiJorr/qg6x9eSmbCIc= 549 | 550 | express@^4.17.1: 551 | version "4.17.1" 552 | resolved "https://registry.yarnpkg.com/express/-/express-4.17.1.tgz#4491fc38605cf51f8629d39c2b5d026f98a4c134" 553 | integrity sha512-mHJ9O79RqluphRrcw2X/GTh3k9tVv8YcoyY4Kkh4WDMUYKRZUq0h1o0w2rrrxBqM7VoeUVqgb27xlEMXTnYt4g== 554 | dependencies: 555 | accepts "~1.3.7" 556 | array-flatten "1.1.1" 557 | body-parser "1.19.0" 558 | content-disposition "0.5.3" 559 | content-type "~1.0.4" 560 | cookie "0.4.0" 561 | cookie-signature "1.0.6" 562 | debug "2.6.9" 563 | depd "~1.1.2" 564 | encodeurl "~1.0.2" 565 | escape-html "~1.0.3" 566 | etag "~1.8.1" 567 | finalhandler "~1.1.2" 568 | fresh "0.5.2" 569 | merge-descriptors "1.0.1" 570 | methods "~1.1.2" 571 | on-finished "~2.3.0" 572 | parseurl "~1.3.3" 573 | path-to-regexp "0.1.7" 574 | proxy-addr "~2.0.5" 575 | qs "6.7.0" 576 | range-parser "~1.2.1" 577 | safe-buffer "5.1.2" 578 | send "0.17.1" 579 | serve-static "1.14.1" 580 | setprototypeof "1.1.1" 581 | statuses "~1.5.0" 582 | type-is "~1.6.18" 583 | utils-merge "1.0.1" 584 | vary "~1.1.2" 585 | 586 | fill-range@^7.0.1: 587 | version "7.0.1" 588 | resolved "https://registry.yarnpkg.com/fill-range/-/fill-range-7.0.1.tgz#1919a6a7c75fe38b2c7c77e5198535da9acdda40" 589 | integrity sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ== 590 | dependencies: 591 | to-regex-range "^5.0.1" 592 | 593 | finalhandler@~1.1.2: 594 | version "1.1.2" 595 | resolved "https://registry.yarnpkg.com/finalhandler/-/finalhandler-1.1.2.tgz#b7e7d000ffd11938d0fdb053506f6ebabe9f587d" 596 | integrity sha512-aAWcW57uxVNrQZqFXjITpW3sIUQmHGG3qSb9mUah9MgMC4NeWhNOlNjXEYq3HjRAvL6arUviZGGJsBg6z0zsWA== 597 | dependencies: 598 | debug "2.6.9" 599 | encodeurl "~1.0.2" 600 | escape-html "~1.0.3" 601 | on-finished "~2.3.0" 602 | parseurl "~1.3.3" 603 | statuses "~1.5.0" 604 | unpipe "~1.0.0" 605 | 606 | forwarded@~0.1.2: 607 | version "0.1.2" 608 | resolved "https://registry.yarnpkg.com/forwarded/-/forwarded-0.1.2.tgz#98c23dab1175657b8c0573e8ceccd91b0ff18c84" 609 | integrity sha1-mMI9qxF1ZXuMBXPozszZGw/xjIQ= 610 | 611 | fresh@0.5.2: 612 | version "0.5.2" 613 | resolved "https://registry.yarnpkg.com/fresh/-/fresh-0.5.2.tgz#3d8cadd90d976569fa835ab1f8e4b23a105605a7" 614 | integrity sha1-PYyt2Q2XZWn6g1qx+OSyOhBWBac= 615 | 616 | fs.realpath@^1.0.0: 617 | version "1.0.0" 618 | resolved "https://registry.yarnpkg.com/fs.realpath/-/fs.realpath-1.0.0.tgz#1504ad2523158caa40db4a2787cb01411994ea4f" 619 | integrity sha1-FQStJSMVjKpA20onh8sBQRmU6k8= 620 | 621 | fsevents@~2.3.1: 622 | version "2.3.2" 623 | resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-2.3.2.tgz#8a526f78b8fdf4623b709e0b975c52c24c02fd1a" 624 | integrity sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA== 625 | 626 | get-stream@^4.1.0: 627 | version "4.1.0" 628 | resolved "https://registry.yarnpkg.com/get-stream/-/get-stream-4.1.0.tgz#c1b255575f3dc21d59bfc79cd3d2b46b1c3a54b5" 629 | integrity sha512-GMat4EJ5161kIy2HevLlr4luNjBgvmj413KaQA7jt4V8B4RDsfpHk7WQ9GVqfYyyx8OS/L66Kox+rJRNklLK7w== 630 | dependencies: 631 | pump "^3.0.0" 632 | 633 | get-stream@^5.1.0: 634 | version "5.2.0" 635 | resolved "https://registry.yarnpkg.com/get-stream/-/get-stream-5.2.0.tgz#4966a1795ee5ace65e706c4b7beb71257d6e22d3" 636 | integrity sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA== 637 | dependencies: 638 | pump "^3.0.0" 639 | 640 | glob-parent@~5.1.0: 641 | version "5.1.2" 642 | resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-5.1.2.tgz#869832c58034fe68a4093c17dc15e8340d8401c4" 643 | integrity sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow== 644 | dependencies: 645 | is-glob "^4.0.1" 646 | 647 | glob@7.1.6: 648 | version "7.1.6" 649 | resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.6.tgz#141f33b81a7c2492e125594307480c46679278a6" 650 | integrity sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA== 651 | dependencies: 652 | fs.realpath "^1.0.0" 653 | inflight "^1.0.4" 654 | inherits "2" 655 | minimatch "^3.0.4" 656 | once "^1.3.0" 657 | path-is-absolute "^1.0.0" 658 | 659 | global-dirs@^2.0.1: 660 | version "2.1.0" 661 | resolved "https://registry.yarnpkg.com/global-dirs/-/global-dirs-2.1.0.tgz#e9046a49c806ff04d6c1825e196c8f0091e8df4d" 662 | integrity sha512-MG6kdOUh/xBnyo9cJFeIKkLEc1AyFq42QTU4XiX51i2NEdxLxLWXIjEjmqKeSuKR7pAZjTqUVoT2b2huxVLgYQ== 663 | dependencies: 664 | ini "1.3.7" 665 | 666 | got@^9.6.0: 667 | version "9.6.0" 668 | resolved "https://registry.yarnpkg.com/got/-/got-9.6.0.tgz#edf45e7d67f99545705de1f7bbeeeb121765ed85" 669 | integrity sha512-R7eWptXuGYxwijs0eV+v3o6+XH1IqVK8dJOEecQfTmkncw9AV4dcw/Dhxi8MdlqPthxxpZyizMzyg8RTmEsG+Q== 670 | dependencies: 671 | "@sindresorhus/is" "^0.14.0" 672 | "@szmarczak/http-timer" "^1.1.2" 673 | cacheable-request "^6.0.0" 674 | decompress-response "^3.3.0" 675 | duplexer3 "^0.1.4" 676 | get-stream "^4.1.0" 677 | lowercase-keys "^1.0.1" 678 | mimic-response "^1.0.1" 679 | p-cancelable "^1.0.0" 680 | to-readable-stream "^1.0.0" 681 | url-parse-lax "^3.0.0" 682 | 683 | graceful-fs@^4.1.2, graceful-fs@^4.1.3: 684 | version "4.2.6" 685 | resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.2.6.tgz#ff040b2b0853b23c3d31027523706f1885d76bee" 686 | integrity sha512-nTnJ528pbqxYanhpDYsi4Rd8MAeaBA67+RZ10CM1m3bTAVFEDcd5AuA4a6W5YkGZ1iNXHzZz8T6TBKLeBuNriQ== 687 | 688 | has-flag@^3.0.0: 689 | version "3.0.0" 690 | resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-3.0.0.tgz#b5d454dc2199ae225699f3467e5a07f3b955bafd" 691 | integrity sha1-tdRU3CGZriJWmfNGfloH87lVuv0= 692 | 693 | has-flag@^4.0.0: 694 | version "4.0.0" 695 | resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-4.0.0.tgz#944771fd9c81c81265c4d6941860da06bb59479b" 696 | integrity sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ== 697 | 698 | has-yarn@^2.1.0: 699 | version "2.1.0" 700 | resolved "https://registry.yarnpkg.com/has-yarn/-/has-yarn-2.1.0.tgz#137e11354a7b5bf11aa5cb649cf0c6f3ff2b2e77" 701 | integrity sha512-UqBRqi4ju7T+TqGNdqAO0PaSVGsDGJUBQvk9eUWNGRY1CFGDzYhLWoM7JQEemnlvVcv/YEmc2wNW8BC24EnUsw== 702 | 703 | http-cache-semantics@^4.0.0: 704 | version "4.1.0" 705 | resolved "https://registry.yarnpkg.com/http-cache-semantics/-/http-cache-semantics-4.1.0.tgz#49e91c5cbf36c9b94bcfcd71c23d5249ec74e390" 706 | integrity sha512-carPklcUh7ROWRK7Cv27RPtdhYhUsela/ue5/jKzjegVvXDqM2ILE9Q2BGn9JZJh1g87cp56su/FgQSzcWS8cQ== 707 | 708 | http-errors@1.7.2: 709 | version "1.7.2" 710 | resolved "https://registry.yarnpkg.com/http-errors/-/http-errors-1.7.2.tgz#4f5029cf13239f31036e5b2e55292bcfbcc85c8f" 711 | integrity sha512-uUQBt3H/cSIVfch6i1EuPNy/YsRSOUBXTVfZ+yR7Zjez3qjBz6i9+i4zjNaoqcoFVI4lQJ5plg63TvGfRSDCRg== 712 | dependencies: 713 | depd "~1.1.2" 714 | inherits "2.0.3" 715 | setprototypeof "1.1.1" 716 | statuses ">= 1.5.0 < 2" 717 | toidentifier "1.0.0" 718 | 719 | http-errors@~1.7.2: 720 | version "1.7.3" 721 | resolved "https://registry.yarnpkg.com/http-errors/-/http-errors-1.7.3.tgz#6c619e4f9c60308c38519498c14fbb10aacebb06" 722 | integrity sha512-ZTTX0MWrsQ2ZAhA1cejAwDLycFsd7I7nVtnkT3Ol0aqodaKW+0CTZDQ1uBv5whptCnc8e8HeRRJxRs0kmm/Qfw== 723 | dependencies: 724 | depd "~1.1.2" 725 | inherits "2.0.4" 726 | setprototypeof "1.1.1" 727 | statuses ">= 1.5.0 < 2" 728 | toidentifier "1.0.0" 729 | 730 | iconv-lite@0.4.24: 731 | version "0.4.24" 732 | resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.4.24.tgz#2022b4b25fbddc21d2f524974a474aafe733908b" 733 | integrity sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA== 734 | dependencies: 735 | safer-buffer ">= 2.1.2 < 3" 736 | 737 | ignore-by-default@^1.0.1: 738 | version "1.0.1" 739 | resolved "https://registry.yarnpkg.com/ignore-by-default/-/ignore-by-default-1.0.1.tgz#48ca6d72f6c6a3af00a9ad4ae6876be3889e2b09" 740 | integrity sha1-SMptcvbGo68Aqa1K5odr44ieKwk= 741 | 742 | import-lazy@^2.1.0: 743 | version "2.1.0" 744 | resolved "https://registry.yarnpkg.com/import-lazy/-/import-lazy-2.1.0.tgz#05698e3d45c88e8d7e9d92cb0584e77f096f3e43" 745 | integrity sha1-BWmOPUXIjo1+nZLLBYTnfwlvPkM= 746 | 747 | imurmurhash@^0.1.4: 748 | version "0.1.4" 749 | resolved "https://registry.yarnpkg.com/imurmurhash/-/imurmurhash-0.1.4.tgz#9218b9b2b928a238b13dc4fb6b6d576f231453ea" 750 | integrity sha1-khi5srkoojixPcT7a21XbyMUU+o= 751 | 752 | inflight@^1.0.4: 753 | version "1.0.6" 754 | resolved "https://registry.yarnpkg.com/inflight/-/inflight-1.0.6.tgz#49bd6331d7d02d0c09bc910a1075ba8165b56df9" 755 | integrity sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk= 756 | dependencies: 757 | once "^1.3.0" 758 | wrappy "1" 759 | 760 | inherits@2, inherits@2.0.4: 761 | version "2.0.4" 762 | resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.4.tgz#0fa2c64f932917c3433a0ded55363aae37416b7c" 763 | integrity sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ== 764 | 765 | inherits@2.0.3: 766 | version "2.0.3" 767 | resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.3.tgz#633c2c83e3da42a502f52466022480f4208261de" 768 | integrity sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4= 769 | 770 | ini@1.3.7: 771 | version "1.3.7" 772 | resolved "https://registry.yarnpkg.com/ini/-/ini-1.3.7.tgz#a09363e1911972ea16d7a8851005d84cf09a9a84" 773 | integrity sha512-iKpRpXP+CrP2jyrxvg1kMUpXDyRUFDWurxbnVT1vQPx+Wz9uCYsMIqYuSBLV+PAaZG/d7kRLKRFc9oDMsH+mFQ== 774 | 775 | ini@~1.3.0: 776 | version "1.3.8" 777 | resolved "https://registry.yarnpkg.com/ini/-/ini-1.3.8.tgz#a29da425b48806f34767a4efce397269af28432c" 778 | integrity sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew== 779 | 780 | ipaddr.js@1.9.1: 781 | version "1.9.1" 782 | resolved "https://registry.yarnpkg.com/ipaddr.js/-/ipaddr.js-1.9.1.tgz#bff38543eeb8984825079ff3a2a8e6cbd46781b3" 783 | integrity sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g== 784 | 785 | is-binary-path@~2.1.0: 786 | version "2.1.0" 787 | resolved "https://registry.yarnpkg.com/is-binary-path/-/is-binary-path-2.1.0.tgz#ea1f7f3b80f064236e83470f86c09c254fb45b09" 788 | integrity sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw== 789 | dependencies: 790 | binary-extensions "^2.0.0" 791 | 792 | is-ci@^2.0.0: 793 | version "2.0.0" 794 | resolved "https://registry.yarnpkg.com/is-ci/-/is-ci-2.0.0.tgz#6bc6334181810e04b5c22b3d589fdca55026404c" 795 | integrity sha512-YfJT7rkpQB0updsdHLGWrvhBJfcfzNNawYDNIyQXJz0IViGf75O8EBPKSdvw2rF+LGCsX4FZ8tcr3b19LcZq4w== 796 | dependencies: 797 | ci-info "^2.0.0" 798 | 799 | is-extglob@^2.1.1: 800 | version "2.1.1" 801 | resolved "https://registry.yarnpkg.com/is-extglob/-/is-extglob-2.1.1.tgz#a88c02535791f02ed37c76a1b9ea9773c833f8c2" 802 | integrity sha1-qIwCU1eR8C7TfHahueqXc8gz+MI= 803 | 804 | is-fullwidth-code-point@^2.0.0: 805 | version "2.0.0" 806 | resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz#a3b30a5c4f199183167aaab93beefae3ddfb654f" 807 | integrity sha1-o7MKXE8ZkYMWeqq5O+764937ZU8= 808 | 809 | is-fullwidth-code-point@^3.0.0: 810 | version "3.0.0" 811 | resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz#f116f8064fe90b3f7844a38997c0b75051269f1d" 812 | integrity sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg== 813 | 814 | is-glob@^4.0.1, is-glob@~4.0.1: 815 | version "4.0.1" 816 | resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-4.0.1.tgz#7567dbe9f2f5e2467bc77ab83c4a29482407a5dc" 817 | integrity sha512-5G0tKtBTFImOqDnLB2hG6Bp2qcKEFduo4tZu9MT/H6NQv/ghhy30o55ufafxJ/LdH79LLs2Kfrn85TLKyA7BUg== 818 | dependencies: 819 | is-extglob "^2.1.1" 820 | 821 | is-installed-globally@^0.3.1: 822 | version "0.3.2" 823 | resolved "https://registry.yarnpkg.com/is-installed-globally/-/is-installed-globally-0.3.2.tgz#fd3efa79ee670d1187233182d5b0a1dd00313141" 824 | integrity sha512-wZ8x1js7Ia0kecP/CHM/3ABkAmujX7WPvQk6uu3Fly/Mk44pySulQpnHG46OMjHGXApINnV4QhY3SWnECO2z5g== 825 | dependencies: 826 | global-dirs "^2.0.1" 827 | is-path-inside "^3.0.1" 828 | 829 | is-npm@^4.0.0: 830 | version "4.0.0" 831 | resolved "https://registry.yarnpkg.com/is-npm/-/is-npm-4.0.0.tgz#c90dd8380696df87a7a6d823c20d0b12bbe3c84d" 832 | integrity sha512-96ECIfh9xtDDlPylNPXhzjsykHsMJZ18ASpaWzQyBr4YRTcVjUvzaHayDAES2oU/3KpljhHUjtSRNiDwi0F0ig== 833 | 834 | is-number@^7.0.0: 835 | version "7.0.0" 836 | resolved "https://registry.yarnpkg.com/is-number/-/is-number-7.0.0.tgz#7535345b896734d5f80c4d06c50955527a14f12b" 837 | integrity sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng== 838 | 839 | is-obj@^2.0.0: 840 | version "2.0.0" 841 | resolved "https://registry.yarnpkg.com/is-obj/-/is-obj-2.0.0.tgz#473fb05d973705e3fd9620545018ca8e22ef4982" 842 | integrity sha512-drqDG3cbczxxEJRoOXcOjtdp1J/lyp1mNn0xaznRs8+muBhgQcrnbspox5X5fOw0HnMnbfDzvnEMEtqDEJEo8w== 843 | 844 | is-path-inside@^3.0.1: 845 | version "3.0.3" 846 | resolved "https://registry.yarnpkg.com/is-path-inside/-/is-path-inside-3.0.3.tgz#d231362e53a07ff2b0e0ea7fed049161ffd16283" 847 | integrity sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ== 848 | 849 | is-promise@^2.1.0: 850 | version "2.2.2" 851 | resolved "https://registry.yarnpkg.com/is-promise/-/is-promise-2.2.2.tgz#39ab959ccbf9a774cf079f7b40c7a26f763135f1" 852 | integrity sha512-+lP4/6lKUBfQjZ2pdxThZvLUAafmZb8OAxFb8XXtiQmS35INgr85hdOGoEs124ez1FCnZJt6jau/T+alh58QFQ== 853 | 854 | is-typedarray@^1.0.0: 855 | version "1.0.0" 856 | resolved "https://registry.yarnpkg.com/is-typedarray/-/is-typedarray-1.0.0.tgz#e479c80858df0c1b11ddda6940f96011fcda4a9a" 857 | integrity sha1-5HnICFjfDBsR3dppQPlgEfzaSpo= 858 | 859 | is-yarn-global@^0.3.0: 860 | version "0.3.0" 861 | resolved "https://registry.yarnpkg.com/is-yarn-global/-/is-yarn-global-0.3.0.tgz#d502d3382590ea3004893746754c89139973e232" 862 | integrity sha512-VjSeb/lHmkoyd8ryPVIKvOCn4D1koMqY+vqyjjUfc3xyKtP4dYOxM44sZrnqQSzSds3xyOrUTLTC9LVCVgLngw== 863 | 864 | js-yaml@^3.13.1: 865 | version "3.14.1" 866 | resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-3.14.1.tgz#dae812fdb3825fa306609a8717383c50c36a0537" 867 | integrity sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g== 868 | dependencies: 869 | argparse "^1.0.7" 870 | esprima "^4.0.0" 871 | 872 | json-buffer@3.0.0: 873 | version "3.0.0" 874 | resolved "https://registry.yarnpkg.com/json-buffer/-/json-buffer-3.0.0.tgz#5b1f397afc75d677bde8bcfc0e47e1f9a3d9a898" 875 | integrity sha1-Wx85evx11ne96Lz8Dkfh+aPZqJg= 876 | 877 | keyv@^3.0.0: 878 | version "3.1.0" 879 | resolved "https://registry.yarnpkg.com/keyv/-/keyv-3.1.0.tgz#ecc228486f69991e49e9476485a5be1e8fc5c4d9" 880 | integrity sha512-9ykJ/46SN/9KPM/sichzQ7OvXyGDYKGTaDlKMGCAlg2UK8KRy4jb0d8sFc+0Tt0YYnThq8X2RZgCg74RPxgcVA== 881 | dependencies: 882 | json-buffer "3.0.0" 883 | 884 | latest-version@^5.0.0: 885 | version "5.1.0" 886 | resolved "https://registry.yarnpkg.com/latest-version/-/latest-version-5.1.0.tgz#119dfe908fe38d15dfa43ecd13fa12ec8832face" 887 | integrity sha512-weT+r0kTkRQdCdYCNtkMwWXQTMEswKrFBkm4ckQOMVhhqhIMI1UT2hMj+1iigIhgSZm5gTmrRXBNoGUgaTY1xA== 888 | dependencies: 889 | package-json "^6.3.0" 890 | 891 | lodash.get@^4.4.2: 892 | version "4.4.2" 893 | resolved "https://registry.yarnpkg.com/lodash.get/-/lodash.get-4.4.2.tgz#2d177f652fa31e939b4438d5341499dfa3825e99" 894 | integrity sha1-LRd/ZS+jHpObRDjVNBSZ36OCXpk= 895 | 896 | lodash.isequal@^4.5.0: 897 | version "4.5.0" 898 | resolved "https://registry.yarnpkg.com/lodash.isequal/-/lodash.isequal-4.5.0.tgz#415c4478f2bcc30120c22ce10ed3226f7d3e18e0" 899 | integrity sha1-QVxEePK8wwEgwizhDtMib30+GOA= 900 | 901 | lodash@4: 902 | version "4.17.21" 903 | resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.21.tgz#679591c564c3bffaae8454cf0b3df370c3d6911c" 904 | integrity sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg== 905 | 906 | lowdb@^1.0.0: 907 | version "1.0.0" 908 | resolved "https://registry.yarnpkg.com/lowdb/-/lowdb-1.0.0.tgz#5243be6b22786ccce30e50c9a33eac36b20c8064" 909 | integrity sha512-2+x8esE/Wb9SQ1F9IHaYWfsC9FIecLOPrK4g17FGEayjUWH172H6nwicRovGvSE2CPZouc2MCIqCI7h9d+GftQ== 910 | dependencies: 911 | graceful-fs "^4.1.3" 912 | is-promise "^2.1.0" 913 | lodash "4" 914 | pify "^3.0.0" 915 | steno "^0.4.1" 916 | 917 | lowercase-keys@^1.0.0, lowercase-keys@^1.0.1: 918 | version "1.0.1" 919 | resolved "https://registry.yarnpkg.com/lowercase-keys/-/lowercase-keys-1.0.1.tgz#6f9e30b47084d971a7c820ff15a6c5167b74c26f" 920 | integrity sha512-G2Lj61tXDnVFFOi8VZds+SoQjtQC3dgokKdDG2mTm1tx4m50NUHBOZSBwQQHyy0V12A0JTG4icfZQH+xPyh8VA== 921 | 922 | lowercase-keys@^2.0.0: 923 | version "2.0.0" 924 | resolved "https://registry.yarnpkg.com/lowercase-keys/-/lowercase-keys-2.0.0.tgz#2603e78b7b4b0006cbca2fbcc8a3202558ac9479" 925 | integrity sha512-tqNXrS78oMOE73NMxK4EMLQsQowWf8jKooH9g7xPavRT706R6bkQJ6DY2Te7QukaZsulxa30wQ7bk0pm4XiHmA== 926 | 927 | make-dir@^3.0.0: 928 | version "3.1.0" 929 | resolved "https://registry.yarnpkg.com/make-dir/-/make-dir-3.1.0.tgz#415e967046b3a7f1d185277d84aa58203726a13f" 930 | integrity sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw== 931 | dependencies: 932 | semver "^6.0.0" 933 | 934 | make-error@^1.1.1: 935 | version "1.3.6" 936 | resolved "https://registry.yarnpkg.com/make-error/-/make-error-1.3.6.tgz#2eb2e37ea9b67c4891f684a1394799af484cf7a2" 937 | integrity sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw== 938 | 939 | media-typer@0.3.0: 940 | version "0.3.0" 941 | resolved "https://registry.yarnpkg.com/media-typer/-/media-typer-0.3.0.tgz#8710d7af0aa626f8fffa1ce00168545263255748" 942 | integrity sha1-hxDXrwqmJvj/+hzgAWhUUmMlV0g= 943 | 944 | merge-descriptors@1.0.1: 945 | version "1.0.1" 946 | resolved "https://registry.yarnpkg.com/merge-descriptors/-/merge-descriptors-1.0.1.tgz#b00aaa556dd8b44568150ec9d1b953f3f90cbb61" 947 | integrity sha1-sAqqVW3YtEVoFQ7J0blT8/kMu2E= 948 | 949 | methods@~1.1.2: 950 | version "1.1.2" 951 | resolved "https://registry.yarnpkg.com/methods/-/methods-1.1.2.tgz#5529a4d67654134edcc5266656835b0f851afcee" 952 | integrity sha1-VSmk1nZUE07cxSZmVoNbD4Ua/O4= 953 | 954 | mime-db@1.47.0: 955 | version "1.47.0" 956 | resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.47.0.tgz#8cb313e59965d3c05cfbf898915a267af46a335c" 957 | integrity sha512-QBmA/G2y+IfeS4oktet3qRZ+P5kPhCKRXxXnQEudYqUaEioAU1/Lq2us3D/t1Jfo4hE9REQPrbB7K5sOczJVIw== 958 | 959 | mime-types@~2.1.24: 960 | version "2.1.30" 961 | resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.30.tgz#6e7be8b4c479825f85ed6326695db73f9305d62d" 962 | integrity sha512-crmjA4bLtR8m9qLpHvgxSChT+XoSlZi8J4n/aIdn3z92e/U47Z0V/yl+Wh9W046GgFVAmoNR/fmdbZYcSSIUeg== 963 | dependencies: 964 | mime-db "1.47.0" 965 | 966 | mime@1.6.0: 967 | version "1.6.0" 968 | resolved "https://registry.yarnpkg.com/mime/-/mime-1.6.0.tgz#32cd9e5c64553bd58d19a568af452acff04981b1" 969 | integrity sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg== 970 | 971 | mimic-response@^1.0.0, mimic-response@^1.0.1: 972 | version "1.0.1" 973 | resolved "https://registry.yarnpkg.com/mimic-response/-/mimic-response-1.0.1.tgz#4923538878eef42063cb8a3e3b0798781487ab1b" 974 | integrity sha512-j5EctnkH7amfV/q5Hgmoal1g2QHFJRraOtmx0JpIqkxhBhI/lJSl1nMpQ45hVarwNETOoWEimndZ4QK0RHxuxQ== 975 | 976 | minimatch@^3.0.4: 977 | version "3.0.4" 978 | resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.0.4.tgz#5166e286457f03306064be5497e8dbb0c3d32083" 979 | integrity sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA== 980 | dependencies: 981 | brace-expansion "^1.1.7" 982 | 983 | minimist@^1.2.0: 984 | version "1.2.5" 985 | resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.5.tgz#67d66014b66a6a8aaa0c083c5fd58df4e4e97602" 986 | integrity sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw== 987 | 988 | morgan@^1.10.0: 989 | version "1.10.0" 990 | resolved "https://registry.yarnpkg.com/morgan/-/morgan-1.10.0.tgz#091778abc1fc47cd3509824653dae1faab6b17d7" 991 | integrity sha512-AbegBVI4sh6El+1gNwvD5YIck7nSA36weD7xvIxG4in80j/UoK8AEGaWnnz8v1GxonMCltmlNs5ZKbGvl9b1XQ== 992 | dependencies: 993 | basic-auth "~2.0.1" 994 | debug "2.6.9" 995 | depd "~2.0.0" 996 | on-finished "~2.3.0" 997 | on-headers "~1.0.2" 998 | 999 | ms@2.0.0: 1000 | version "2.0.0" 1001 | resolved "https://registry.yarnpkg.com/ms/-/ms-2.0.0.tgz#5608aeadfc00be6c2901df5f9861788de0d597c8" 1002 | integrity sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g= 1003 | 1004 | ms@2.1.1: 1005 | version "2.1.1" 1006 | resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.1.tgz#30a5864eb3ebb0a66f2ebe6d727af06a09d86e0a" 1007 | integrity sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg== 1008 | 1009 | ms@^2.1.1: 1010 | version "2.1.3" 1011 | resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.3.tgz#574c8138ce1d2b5861f0b44579dbadd60c6615b2" 1012 | integrity sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA== 1013 | 1014 | nanoid@^3.1.22: 1015 | version "3.1.22" 1016 | resolved "https://registry.yarnpkg.com/nanoid/-/nanoid-3.1.22.tgz#b35f8fb7d151990a8aebd5aa5015c03cf726f844" 1017 | integrity sha512-/2ZUaJX2ANuLtTvqTlgqBQNJoQO398KyJgZloL0PZkC0dpysjncRUPsFe3DUPzz/y3h+u7C46np8RMuvF3jsSQ== 1018 | 1019 | negotiator@0.6.2: 1020 | version "0.6.2" 1021 | resolved "https://registry.yarnpkg.com/negotiator/-/negotiator-0.6.2.tgz#feacf7ccf525a77ae9634436a64883ffeca346fb" 1022 | integrity sha512-hZXc7K2e+PgeI1eDBe/10Ard4ekbfrrqG8Ep+8Jmf4JID2bNg7NvCPOZN+kfF574pFQI7mum2AUqDidoKqcTOw== 1023 | 1024 | nodemon@^2.0.7: 1025 | version "2.0.7" 1026 | resolved "https://registry.yarnpkg.com/nodemon/-/nodemon-2.0.7.tgz#6f030a0a0ebe3ea1ba2a38f71bf9bab4841ced32" 1027 | integrity sha512-XHzK69Awgnec9UzHr1kc8EomQh4sjTQ8oRf8TsGrSmHDx9/UmiGG9E/mM3BuTfNeFwdNBvrqQq/RHL0xIeyFOA== 1028 | dependencies: 1029 | chokidar "^3.2.2" 1030 | debug "^3.2.6" 1031 | ignore-by-default "^1.0.1" 1032 | minimatch "^3.0.4" 1033 | pstree.remy "^1.1.7" 1034 | semver "^5.7.1" 1035 | supports-color "^5.5.0" 1036 | touch "^3.1.0" 1037 | undefsafe "^2.0.3" 1038 | update-notifier "^4.1.0" 1039 | 1040 | nopt@~1.0.10: 1041 | version "1.0.10" 1042 | resolved "https://registry.yarnpkg.com/nopt/-/nopt-1.0.10.tgz#6ddd21bd2a31417b92727dd585f8a6f37608ebee" 1043 | integrity sha1-bd0hvSoxQXuScn3Vhfim83YI6+4= 1044 | dependencies: 1045 | abbrev "1" 1046 | 1047 | normalize-path@^3.0.0, normalize-path@~3.0.0: 1048 | version "3.0.0" 1049 | resolved "https://registry.yarnpkg.com/normalize-path/-/normalize-path-3.0.0.tgz#0dcd69ff23a1c9b11fd0978316644a0388216a65" 1050 | integrity sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA== 1051 | 1052 | normalize-url@^4.1.0: 1053 | version "4.5.0" 1054 | resolved "https://registry.yarnpkg.com/normalize-url/-/normalize-url-4.5.0.tgz#453354087e6ca96957bd8f5baf753f5982142129" 1055 | integrity sha512-2s47yzUxdexf1OhyRi4Em83iQk0aPvwTddtFz4hnSSw9dCEsLEGf6SwIO8ss/19S9iBb5sJaOuTvTGDeZI00BQ== 1056 | 1057 | object-assign@^4: 1058 | version "4.1.1" 1059 | resolved "https://registry.yarnpkg.com/object-assign/-/object-assign-4.1.1.tgz#2109adc7965887cfc05cbbd442cac8bfbb360863" 1060 | integrity sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM= 1061 | 1062 | on-finished@~2.3.0: 1063 | version "2.3.0" 1064 | resolved "https://registry.yarnpkg.com/on-finished/-/on-finished-2.3.0.tgz#20f1336481b083cd75337992a16971aa2d906947" 1065 | integrity sha1-IPEzZIGwg811M3mSoWlxqi2QaUc= 1066 | dependencies: 1067 | ee-first "1.1.1" 1068 | 1069 | on-headers@~1.0.2: 1070 | version "1.0.2" 1071 | resolved "https://registry.yarnpkg.com/on-headers/-/on-headers-1.0.2.tgz#772b0ae6aaa525c399e489adfad90c403eb3c28f" 1072 | integrity sha512-pZAE+FJLoyITytdqK0U5s+FIpjN0JP3OzFi/u8Rx+EV5/W+JTWGXG8xFzevE7AjBfDqHv/8vL8qQsIhHnqRkrA== 1073 | 1074 | once@^1.3.0, once@^1.3.1, once@^1.4.0: 1075 | version "1.4.0" 1076 | resolved "https://registry.yarnpkg.com/once/-/once-1.4.0.tgz#583b1aa775961d4b113ac17d9c50baef9dd76bd1" 1077 | integrity sha1-WDsap3WWHUsROsF9nFC6753Xa9E= 1078 | dependencies: 1079 | wrappy "1" 1080 | 1081 | p-cancelable@^1.0.0: 1082 | version "1.1.0" 1083 | resolved "https://registry.yarnpkg.com/p-cancelable/-/p-cancelable-1.1.0.tgz#d078d15a3af409220c886f1d9a0ca2e441ab26cc" 1084 | integrity sha512-s73XxOZ4zpt1edZYZzvhqFa6uvQc1vwUa0K0BdtIZgQMAJj9IbebH+JkgKZc9h+B05PKHLOTl4ajG1BmNrVZlw== 1085 | 1086 | package-json@^6.3.0: 1087 | version "6.5.0" 1088 | resolved "https://registry.yarnpkg.com/package-json/-/package-json-6.5.0.tgz#6feedaca35e75725876d0b0e64974697fed145b0" 1089 | integrity sha512-k3bdm2n25tkyxcjSKzB5x8kfVxlMdgsbPr0GkZcwHsLpba6cBjqCt1KlcChKEvxHIcTB1FVMuwoijZ26xex5MQ== 1090 | dependencies: 1091 | got "^9.6.0" 1092 | registry-auth-token "^4.0.0" 1093 | registry-url "^5.0.0" 1094 | semver "^6.2.0" 1095 | 1096 | parseurl@~1.3.3: 1097 | version "1.3.3" 1098 | resolved "https://registry.yarnpkg.com/parseurl/-/parseurl-1.3.3.tgz#9da19e7bee8d12dff0513ed5b76957793bc2e8d4" 1099 | integrity sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ== 1100 | 1101 | path-is-absolute@^1.0.0: 1102 | version "1.0.1" 1103 | resolved "https://registry.yarnpkg.com/path-is-absolute/-/path-is-absolute-1.0.1.tgz#174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f" 1104 | integrity sha1-F0uSaHNVNP+8es5r9TpanhtcX18= 1105 | 1106 | path-to-regexp@0.1.7: 1107 | version "0.1.7" 1108 | resolved "https://registry.yarnpkg.com/path-to-regexp/-/path-to-regexp-0.1.7.tgz#df604178005f522f15eb4490e7247a1bfaa67f8c" 1109 | integrity sha1-32BBeABfUi8V60SQ5yR6G/qmf4w= 1110 | 1111 | picomatch@^2.0.4, picomatch@^2.2.1: 1112 | version "2.2.3" 1113 | resolved "https://registry.yarnpkg.com/picomatch/-/picomatch-2.2.3.tgz#465547f359ccc206d3c48e46a1bcb89bf7ee619d" 1114 | integrity sha512-KpELjfwcCDUb9PeigTs2mBJzXUPzAuP2oPcA989He8Rte0+YUAjw1JVedDhuTKPkHjSYzMN3npC9luThGYEKdg== 1115 | 1116 | pify@^3.0.0: 1117 | version "3.0.0" 1118 | resolved "https://registry.yarnpkg.com/pify/-/pify-3.0.0.tgz#e5a4acd2c101fdf3d9a4d07f0dbc4db49dd28176" 1119 | integrity sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY= 1120 | 1121 | prepend-http@^2.0.0: 1122 | version "2.0.0" 1123 | resolved "https://registry.yarnpkg.com/prepend-http/-/prepend-http-2.0.0.tgz#e92434bfa5ea8c19f41cdfd401d741a3c819d897" 1124 | integrity sha1-6SQ0v6XqjBn0HN/UAddBo8gZ2Jc= 1125 | 1126 | proxy-addr@~2.0.5: 1127 | version "2.0.6" 1128 | resolved "https://registry.yarnpkg.com/proxy-addr/-/proxy-addr-2.0.6.tgz#fdc2336505447d3f2f2c638ed272caf614bbb2bf" 1129 | integrity sha512-dh/frvCBVmSsDYzw6n926jv974gddhkFPfiN8hPOi30Wax25QZyZEGveluCgliBnqmuM+UJmBErbAUFIoDbjOw== 1130 | dependencies: 1131 | forwarded "~0.1.2" 1132 | ipaddr.js "1.9.1" 1133 | 1134 | pstree.remy@^1.1.7: 1135 | version "1.1.8" 1136 | resolved "https://registry.yarnpkg.com/pstree.remy/-/pstree.remy-1.1.8.tgz#c242224f4a67c21f686839bbdb4ac282b8373d3a" 1137 | integrity sha512-77DZwxQmxKnu3aR542U+X8FypNzbfJ+C5XQDk3uWjWxn6151aIMGthWYRXTqT1E5oJvg+ljaa2OJi+VfvCOQ8w== 1138 | 1139 | pump@^3.0.0: 1140 | version "3.0.0" 1141 | resolved "https://registry.yarnpkg.com/pump/-/pump-3.0.0.tgz#b4a2116815bde2f4e1ea602354e8c75565107a64" 1142 | integrity sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww== 1143 | dependencies: 1144 | end-of-stream "^1.1.0" 1145 | once "^1.3.1" 1146 | 1147 | pupa@^2.0.1: 1148 | version "2.1.1" 1149 | resolved "https://registry.yarnpkg.com/pupa/-/pupa-2.1.1.tgz#f5e8fd4afc2c5d97828faa523549ed8744a20d62" 1150 | integrity sha512-l1jNAspIBSFqbT+y+5FosojNpVpF94nlI+wDUpqP9enwOTfHx9f0gh5nB96vl+6yTpsJsypeNrwfzPrKuHB41A== 1151 | dependencies: 1152 | escape-goat "^2.0.0" 1153 | 1154 | qs@6.7.0: 1155 | version "6.7.0" 1156 | resolved "https://registry.yarnpkg.com/qs/-/qs-6.7.0.tgz#41dc1a015e3d581f1621776be31afb2876a9b1bc" 1157 | integrity sha512-VCdBRNFTX1fyE7Nb6FYoURo/SPe62QCaAyzJvUjwRaIsc+NePBEniHlvxFmmX56+HZphIGtV0XeCirBtpDrTyQ== 1158 | 1159 | range-parser@~1.2.1: 1160 | version "1.2.1" 1161 | resolved "https://registry.yarnpkg.com/range-parser/-/range-parser-1.2.1.tgz#3cf37023d199e1c24d1a55b84800c2f3e6468031" 1162 | integrity sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg== 1163 | 1164 | raw-body@2.4.0: 1165 | version "2.4.0" 1166 | resolved "https://registry.yarnpkg.com/raw-body/-/raw-body-2.4.0.tgz#a1ce6fb9c9bc356ca52e89256ab59059e13d0332" 1167 | integrity sha512-4Oz8DUIwdvoa5qMJelxipzi/iJIi40O5cGV1wNYp5hvZP8ZN0T+jiNkL0QepXs+EsQ9XJ8ipEDoiH70ySUJP3Q== 1168 | dependencies: 1169 | bytes "3.1.0" 1170 | http-errors "1.7.2" 1171 | iconv-lite "0.4.24" 1172 | unpipe "1.0.0" 1173 | 1174 | rc@^1.2.8: 1175 | version "1.2.8" 1176 | resolved "https://registry.yarnpkg.com/rc/-/rc-1.2.8.tgz#cd924bf5200a075b83c188cd6b9e211b7fc0d3ed" 1177 | integrity sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw== 1178 | dependencies: 1179 | deep-extend "^0.6.0" 1180 | ini "~1.3.0" 1181 | minimist "^1.2.0" 1182 | strip-json-comments "~2.0.1" 1183 | 1184 | readdirp@~3.5.0: 1185 | version "3.5.0" 1186 | resolved "https://registry.yarnpkg.com/readdirp/-/readdirp-3.5.0.tgz#9ba74c019b15d365278d2e91bb8c48d7b4d42c9e" 1187 | integrity sha512-cMhu7c/8rdhkHXWsY+osBhfSy0JikwpHK/5+imo+LpeasTF8ouErHrlYkwT0++njiyuDvc7OFY5T3ukvZ8qmFQ== 1188 | dependencies: 1189 | picomatch "^2.2.1" 1190 | 1191 | registry-auth-token@^4.0.0: 1192 | version "4.2.1" 1193 | resolved "https://registry.yarnpkg.com/registry-auth-token/-/registry-auth-token-4.2.1.tgz#6d7b4006441918972ccd5fedcd41dc322c79b250" 1194 | integrity sha512-6gkSb4U6aWJB4SF2ZvLb76yCBjcvufXBqvvEx1HbmKPkutswjW1xNVRY0+daljIYRbogN7O0etYSlbiaEQyMyw== 1195 | dependencies: 1196 | rc "^1.2.8" 1197 | 1198 | registry-url@^5.0.0: 1199 | version "5.1.0" 1200 | resolved "https://registry.yarnpkg.com/registry-url/-/registry-url-5.1.0.tgz#e98334b50d5434b81136b44ec638d9c2009c5009" 1201 | integrity sha512-8acYXXTI0AkQv6RAOjE3vOaIXZkT9wo4LOFbBKYQEEnnMNBpKqdUrI6S4NT0KPIo/WVvJ5tE/X5LF/TQUf0ekw== 1202 | dependencies: 1203 | rc "^1.2.8" 1204 | 1205 | responselike@^1.0.2: 1206 | version "1.0.2" 1207 | resolved "https://registry.yarnpkg.com/responselike/-/responselike-1.0.2.tgz#918720ef3b631c5642be068f15ade5a46f4ba1e7" 1208 | integrity sha1-kYcg7ztjHFZCvgaPFa3lpG9Loec= 1209 | dependencies: 1210 | lowercase-keys "^1.0.0" 1211 | 1212 | safe-buffer@5.1.2: 1213 | version "5.1.2" 1214 | resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.1.2.tgz#991ec69d296e0313747d59bdfd2b745c35f8828d" 1215 | integrity sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g== 1216 | 1217 | "safer-buffer@>= 2.1.2 < 3": 1218 | version "2.1.2" 1219 | resolved "https://registry.yarnpkg.com/safer-buffer/-/safer-buffer-2.1.2.tgz#44fa161b0187b9549dd84bb91802f9bd8385cd6a" 1220 | integrity sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg== 1221 | 1222 | semver-diff@^3.1.1: 1223 | version "3.1.1" 1224 | resolved "https://registry.yarnpkg.com/semver-diff/-/semver-diff-3.1.1.tgz#05f77ce59f325e00e2706afd67bb506ddb1ca32b" 1225 | integrity sha512-GX0Ix/CJcHyB8c4ykpHGIAvLyOwOobtM/8d+TQkAd81/bEjgPHrfba41Vpesr7jX/t8Uh+R3EX9eAS5be+jQYg== 1226 | dependencies: 1227 | semver "^6.3.0" 1228 | 1229 | semver@^5.7.1: 1230 | version "5.7.1" 1231 | resolved "https://registry.yarnpkg.com/semver/-/semver-5.7.1.tgz#a954f931aeba508d307bbf069eff0c01c96116f7" 1232 | integrity sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ== 1233 | 1234 | semver@^6.0.0, semver@^6.2.0, semver@^6.3.0: 1235 | version "6.3.0" 1236 | resolved "https://registry.yarnpkg.com/semver/-/semver-6.3.0.tgz#ee0a64c8af5e8ceea67687b133761e1becbd1d3d" 1237 | integrity sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw== 1238 | 1239 | send@0.17.1: 1240 | version "0.17.1" 1241 | resolved "https://registry.yarnpkg.com/send/-/send-0.17.1.tgz#c1d8b059f7900f7466dd4938bdc44e11ddb376c8" 1242 | integrity sha512-BsVKsiGcQMFwT8UxypobUKyv7irCNRHk1T0G680vk88yf6LBByGcZJOTJCrTP2xVN6yI+XjPJcNuE3V4fT9sAg== 1243 | dependencies: 1244 | debug "2.6.9" 1245 | depd "~1.1.2" 1246 | destroy "~1.0.4" 1247 | encodeurl "~1.0.2" 1248 | escape-html "~1.0.3" 1249 | etag "~1.8.1" 1250 | fresh "0.5.2" 1251 | http-errors "~1.7.2" 1252 | mime "1.6.0" 1253 | ms "2.1.1" 1254 | on-finished "~2.3.0" 1255 | range-parser "~1.2.1" 1256 | statuses "~1.5.0" 1257 | 1258 | serve-static@1.14.1: 1259 | version "1.14.1" 1260 | resolved "https://registry.yarnpkg.com/serve-static/-/serve-static-1.14.1.tgz#666e636dc4f010f7ef29970a88a674320898b2f9" 1261 | integrity sha512-JMrvUwE54emCYWlTI+hGrGv5I8dEwmco/00EvkzIIsR7MqrHonbD9pO2MOfFnpFntl7ecpZs+3mW+XbQZu9QCg== 1262 | dependencies: 1263 | encodeurl "~1.0.2" 1264 | escape-html "~1.0.3" 1265 | parseurl "~1.3.3" 1266 | send "0.17.1" 1267 | 1268 | setprototypeof@1.1.1: 1269 | version "1.1.1" 1270 | resolved "https://registry.yarnpkg.com/setprototypeof/-/setprototypeof-1.1.1.tgz#7e95acb24aa92f5885e0abef5ba131330d4ae683" 1271 | integrity sha512-JvdAWfbXeIGaZ9cILp38HntZSFSo3mWg6xGcJJsd+d4aRMOqauag1C63dJfDw7OaMYwEbHMOxEZ1lqVRYP2OAw== 1272 | 1273 | signal-exit@^3.0.2: 1274 | version "3.0.3" 1275 | resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.3.tgz#a1410c2edd8f077b08b4e253c8eacfcaf057461c" 1276 | integrity sha512-VUJ49FC8U1OxwZLxIbTTrDvLnf/6TDgxZcK8wxR8zs13xpx7xbG60ndBlhNrFi2EMuFRoeDoJO7wthSLq42EjA== 1277 | 1278 | source-map-support@^0.5.17: 1279 | version "0.5.19" 1280 | resolved "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.5.19.tgz#a98b62f86dcaf4f67399648c085291ab9e8fed61" 1281 | integrity sha512-Wonm7zOCIJzBGQdB+thsPar0kYuCIzYvxZwlBa87yi/Mdjv7Tip2cyVbLj5o0cFPN4EVkuTwb3GDDyUx2DGnGw== 1282 | dependencies: 1283 | buffer-from "^1.0.0" 1284 | source-map "^0.6.0" 1285 | 1286 | source-map@^0.6.0: 1287 | version "0.6.1" 1288 | resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.6.1.tgz#74722af32e9614e9c287a8d0bbde48b5e2f1a263" 1289 | integrity sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g== 1290 | 1291 | sprintf-js@~1.0.2: 1292 | version "1.0.3" 1293 | resolved "https://registry.yarnpkg.com/sprintf-js/-/sprintf-js-1.0.3.tgz#04e6926f662895354f3dd015203633b857297e2c" 1294 | integrity sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw= 1295 | 1296 | "statuses@>= 1.5.0 < 2", statuses@~1.5.0: 1297 | version "1.5.0" 1298 | resolved "https://registry.yarnpkg.com/statuses/-/statuses-1.5.0.tgz#161c7dac177659fd9811f43771fa99381478628c" 1299 | integrity sha1-Fhx9rBd2Wf2YEfQ3cfqZOBR4Yow= 1300 | 1301 | steno@^0.4.1: 1302 | version "0.4.4" 1303 | resolved "https://registry.yarnpkg.com/steno/-/steno-0.4.4.tgz#071105bdfc286e6615c0403c27e9d7b5dcb855cb" 1304 | integrity sha1-BxEFvfwobmYVwEA8J+nXtdy4Vcs= 1305 | dependencies: 1306 | graceful-fs "^4.1.3" 1307 | 1308 | string-width@^3.0.0: 1309 | version "3.1.0" 1310 | resolved "https://registry.yarnpkg.com/string-width/-/string-width-3.1.0.tgz#22767be21b62af1081574306f69ac51b62203961" 1311 | integrity sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w== 1312 | dependencies: 1313 | emoji-regex "^7.0.1" 1314 | is-fullwidth-code-point "^2.0.0" 1315 | strip-ansi "^5.1.0" 1316 | 1317 | string-width@^4.0.0, string-width@^4.1.0: 1318 | version "4.2.2" 1319 | resolved "https://registry.yarnpkg.com/string-width/-/string-width-4.2.2.tgz#dafd4f9559a7585cfba529c6a0a4f73488ebd4c5" 1320 | integrity sha512-XBJbT3N4JhVumXE0eoLU9DCjcaF92KLNqTmFCnG1pf8duUxFGwtP6AD6nkjw9a3IdiRtL3E2w3JDiE/xi3vOeA== 1321 | dependencies: 1322 | emoji-regex "^8.0.0" 1323 | is-fullwidth-code-point "^3.0.0" 1324 | strip-ansi "^6.0.0" 1325 | 1326 | strip-ansi@^5.1.0: 1327 | version "5.2.0" 1328 | resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-5.2.0.tgz#8c9a536feb6afc962bdfa5b104a5091c1ad9c0ae" 1329 | integrity sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA== 1330 | dependencies: 1331 | ansi-regex "^4.1.0" 1332 | 1333 | strip-ansi@^6.0.0: 1334 | version "6.0.0" 1335 | resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-6.0.0.tgz#0b1571dd7669ccd4f3e06e14ef1eed26225ae532" 1336 | integrity sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w== 1337 | dependencies: 1338 | ansi-regex "^5.0.0" 1339 | 1340 | strip-json-comments@~2.0.1: 1341 | version "2.0.1" 1342 | resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-2.0.1.tgz#3c531942e908c2697c0ec344858c286c7ca0a60a" 1343 | integrity sha1-PFMZQukIwml8DsNEhYwobHygpgo= 1344 | 1345 | supports-color@^5.5.0: 1346 | version "5.5.0" 1347 | resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-5.5.0.tgz#e2e69a44ac8772f78a1ec0b35b689df6530efc8f" 1348 | integrity sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow== 1349 | dependencies: 1350 | has-flag "^3.0.0" 1351 | 1352 | supports-color@^7.1.0: 1353 | version "7.2.0" 1354 | resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-7.2.0.tgz#1b7dcdcb32b8138801b3e478ba6a51caa89648da" 1355 | integrity sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw== 1356 | dependencies: 1357 | has-flag "^4.0.0" 1358 | 1359 | swagger-jsdoc@6.0.1: 1360 | version "6.0.1" 1361 | resolved "https://registry.yarnpkg.com/swagger-jsdoc/-/swagger-jsdoc-6.0.1.tgz#7b5df9b7d4f28e844d879f437dd045efa4d037fd" 1362 | integrity sha512-Rpyq3aMR3wlLie9syaLRwF7WmWHNvSXRBzqn4P45rdJ1tXGIxFBeKRQG/Y/1YmBh3BmK6ds29CMavzDLWqRlpw== 1363 | dependencies: 1364 | commander "6.2.0" 1365 | doctrine "3.0.0" 1366 | glob "7.1.6" 1367 | swagger-parser "10.0.2" 1368 | yaml "2.0.0-1" 1369 | 1370 | swagger-parser@10.0.2: 1371 | version "10.0.2" 1372 | resolved "https://registry.yarnpkg.com/swagger-parser/-/swagger-parser-10.0.2.tgz#d7f18faa09c9c145e938977c9bd6c3435998b667" 1373 | integrity sha512-9jHkHM+QXyLGFLk1DkXBwV+4HyNm0Za3b8/zk/+mjr8jgOSiqm3FOTHBSDsBjtn9scdL+8eWcHdupp2NLM8tDw== 1374 | dependencies: 1375 | "@apidevtools/swagger-parser" "10.0.2" 1376 | 1377 | swagger-ui-dist@^3.18.1: 1378 | version "3.48.0" 1379 | resolved "https://registry.yarnpkg.com/swagger-ui-dist/-/swagger-ui-dist-3.48.0.tgz#3d23194d86ec1e76b926a345578c290ef3fc6e98" 1380 | integrity sha512-UgpKIQW5RAb4nYRG8B615blmQzct0DNuvtX4904Fe2aMWAVfWeKHKl4kwzFXuBJgr2WYWTwM1PnhZ+qqkLrpPg== 1381 | 1382 | swagger-ui-express@^4.1.6: 1383 | version "4.1.6" 1384 | resolved "https://registry.yarnpkg.com/swagger-ui-express/-/swagger-ui-express-4.1.6.tgz#682294af3d5c70f74a1fa4d6a9b503a9ee55ea82" 1385 | integrity sha512-Xs2BGGudvDBtL7RXcYtNvHsFtP1DBFPMJFRxHe5ez/VG/rzVOEjazJOOSc/kSCyxreCTKfJrII6MJlL9a6t8vw== 1386 | dependencies: 1387 | swagger-ui-dist "^3.18.1" 1388 | 1389 | term-size@^2.1.0: 1390 | version "2.2.1" 1391 | resolved "https://registry.yarnpkg.com/term-size/-/term-size-2.2.1.tgz#2a6a54840432c2fb6320fea0f415531e90189f54" 1392 | integrity sha512-wK0Ri4fOGjv/XPy8SBHZChl8CM7uMc5VML7SqiQ0zG7+J5Vr+RMQDoHa2CNT6KHUnTGIXH34UDMkPzAUyapBZg== 1393 | 1394 | to-readable-stream@^1.0.0: 1395 | version "1.0.0" 1396 | resolved "https://registry.yarnpkg.com/to-readable-stream/-/to-readable-stream-1.0.0.tgz#ce0aa0c2f3df6adf852efb404a783e77c0475771" 1397 | integrity sha512-Iq25XBt6zD5npPhlLVXGFN3/gyR2/qODcKNNyTMd4vbm39HUaOiAM4PMq0eMVC/Tkxz+Zjdsc55g9yyz+Yq00Q== 1398 | 1399 | to-regex-range@^5.0.1: 1400 | version "5.0.1" 1401 | resolved "https://registry.yarnpkg.com/to-regex-range/-/to-regex-range-5.0.1.tgz#1648c44aae7c8d988a326018ed72f5b4dd0392e4" 1402 | integrity sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ== 1403 | dependencies: 1404 | is-number "^7.0.0" 1405 | 1406 | toidentifier@1.0.0: 1407 | version "1.0.0" 1408 | resolved "https://registry.yarnpkg.com/toidentifier/-/toidentifier-1.0.0.tgz#7e1be3470f1e77948bc43d94a3c8f4d7752ba553" 1409 | integrity sha512-yaOH/Pk/VEhBWWTlhI+qXxDFXlejDGcQipMlyxda9nthulaxLZUNcUqFxokp0vcYnvteJln5FNQDRrxj3YcbVw== 1410 | 1411 | touch@^3.1.0: 1412 | version "3.1.0" 1413 | resolved "https://registry.yarnpkg.com/touch/-/touch-3.1.0.tgz#fe365f5f75ec9ed4e56825e0bb76d24ab74af83b" 1414 | integrity sha512-WBx8Uy5TLtOSRtIq+M03/sKDrXCLHxwDcquSP2c43Le03/9serjQBIztjRz6FkJez9D/hleyAXTBGLwwZUw9lA== 1415 | dependencies: 1416 | nopt "~1.0.10" 1417 | 1418 | ts-node@^9.1.1: 1419 | version "9.1.1" 1420 | resolved "https://registry.yarnpkg.com/ts-node/-/ts-node-9.1.1.tgz#51a9a450a3e959401bda5f004a72d54b936d376d" 1421 | integrity sha512-hPlt7ZACERQGf03M253ytLY3dHbGNGrAq9qIHWUY9XHYl1z7wYngSr3OQ5xmui8o2AaxsONxIzjafLUiWBo1Fg== 1422 | dependencies: 1423 | arg "^4.1.0" 1424 | create-require "^1.1.0" 1425 | diff "^4.0.1" 1426 | make-error "^1.1.1" 1427 | source-map-support "^0.5.17" 1428 | yn "3.1.1" 1429 | 1430 | type-fest@^0.8.1: 1431 | version "0.8.1" 1432 | resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.8.1.tgz#09e249ebde851d3b1e48d27c105444667f17b83d" 1433 | integrity sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA== 1434 | 1435 | type-is@~1.6.17, type-is@~1.6.18: 1436 | version "1.6.18" 1437 | resolved "https://registry.yarnpkg.com/type-is/-/type-is-1.6.18.tgz#4e552cd05df09467dcbc4ef739de89f2cf37c131" 1438 | integrity sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g== 1439 | dependencies: 1440 | media-typer "0.3.0" 1441 | mime-types "~2.1.24" 1442 | 1443 | typedarray-to-buffer@^3.1.5: 1444 | version "3.1.5" 1445 | resolved "https://registry.yarnpkg.com/typedarray-to-buffer/-/typedarray-to-buffer-3.1.5.tgz#a97ee7a9ff42691b9f783ff1bc5112fe3fca9080" 1446 | integrity sha512-zdu8XMNEDepKKR+XYOXAVPtWui0ly0NtohUscw+UmaHiAWT8hrV1rr//H6V+0DvJ3OQ19S979M0laLfX8rm82Q== 1447 | dependencies: 1448 | is-typedarray "^1.0.0" 1449 | 1450 | typescript@^4.2.4: 1451 | version "4.2.4" 1452 | resolved "https://registry.yarnpkg.com/typescript/-/typescript-4.2.4.tgz#8610b59747de028fda898a8aef0e103f156d0961" 1453 | integrity sha512-V+evlYHZnQkaz8TRBuxTA92yZBPotr5H+WhQ7bD3hZUndx5tGOa1fuCgeSjxAzM1RiN5IzvadIXTVefuuwZCRg== 1454 | 1455 | undefsafe@^2.0.3: 1456 | version "2.0.3" 1457 | resolved "https://registry.yarnpkg.com/undefsafe/-/undefsafe-2.0.3.tgz#6b166e7094ad46313b2202da7ecc2cd7cc6e7aae" 1458 | integrity sha512-nrXZwwXrD/T/JXeygJqdCO6NZZ1L66HrxM/Z7mIq2oPanoN0F1nLx3lwJMu6AwJY69hdixaFQOuoYsMjE5/C2A== 1459 | dependencies: 1460 | debug "^2.2.0" 1461 | 1462 | unique-string@^2.0.0: 1463 | version "2.0.0" 1464 | resolved "https://registry.yarnpkg.com/unique-string/-/unique-string-2.0.0.tgz#39c6451f81afb2749de2b233e3f7c5e8843bd89d" 1465 | integrity sha512-uNaeirEPvpZWSgzwsPGtU2zVSTrn/8L5q/IexZmH0eH6SA73CmAA5U4GwORTxQAZs95TAXLNqeLoPPNO5gZfWg== 1466 | dependencies: 1467 | crypto-random-string "^2.0.0" 1468 | 1469 | unpipe@1.0.0, unpipe@~1.0.0: 1470 | version "1.0.0" 1471 | resolved "https://registry.yarnpkg.com/unpipe/-/unpipe-1.0.0.tgz#b2bf4ee8514aae6165b4817829d21b2ef49904ec" 1472 | integrity sha1-sr9O6FFKrmFltIF4KdIbLvSZBOw= 1473 | 1474 | update-notifier@^4.1.0: 1475 | version "4.1.3" 1476 | resolved "https://registry.yarnpkg.com/update-notifier/-/update-notifier-4.1.3.tgz#be86ee13e8ce48fb50043ff72057b5bd598e1ea3" 1477 | integrity sha512-Yld6Z0RyCYGB6ckIjffGOSOmHXj1gMeE7aROz4MG+XMkmixBX4jUngrGXNYz7wPKBmtoD4MnBa2Anu7RSKht/A== 1478 | dependencies: 1479 | boxen "^4.2.0" 1480 | chalk "^3.0.0" 1481 | configstore "^5.0.1" 1482 | has-yarn "^2.1.0" 1483 | import-lazy "^2.1.0" 1484 | is-ci "^2.0.0" 1485 | is-installed-globally "^0.3.1" 1486 | is-npm "^4.0.0" 1487 | is-yarn-global "^0.3.0" 1488 | latest-version "^5.0.0" 1489 | pupa "^2.0.1" 1490 | semver-diff "^3.1.1" 1491 | xdg-basedir "^4.0.0" 1492 | 1493 | url-parse-lax@^3.0.0: 1494 | version "3.0.0" 1495 | resolved "https://registry.yarnpkg.com/url-parse-lax/-/url-parse-lax-3.0.0.tgz#16b5cafc07dbe3676c1b1999177823d6503acb0c" 1496 | integrity sha1-FrXK/Afb42dsGxmZF3gj1lA6yww= 1497 | dependencies: 1498 | prepend-http "^2.0.0" 1499 | 1500 | utils-merge@1.0.1: 1501 | version "1.0.1" 1502 | resolved "https://registry.yarnpkg.com/utils-merge/-/utils-merge-1.0.1.tgz#9f95710f50a267947b2ccc124741c1028427e713" 1503 | integrity sha1-n5VxD1CiZ5R7LMwSR0HBAoQn5xM= 1504 | 1505 | validator@^12.0.0: 1506 | version "12.2.0" 1507 | resolved "https://registry.yarnpkg.com/validator/-/validator-12.2.0.tgz#660d47e96267033fd070096c3b1a6f2db4380a0a" 1508 | integrity sha512-jJfE/DW6tIK1Ek8nCfNFqt8Wb3nzMoAbocBF6/Icgg1ZFSBpObdnwVY2jQj6qUqzhx5jc71fpvBWyLGO7Xl+nQ== 1509 | 1510 | vary@^1, vary@~1.1.2: 1511 | version "1.1.2" 1512 | resolved "https://registry.yarnpkg.com/vary/-/vary-1.1.2.tgz#2299f02c6ded30d4a5961b0b9f74524a18f634fc" 1513 | integrity sha1-IpnwLG3tMNSllhsLn3RSShj2NPw= 1514 | 1515 | widest-line@^3.1.0: 1516 | version "3.1.0" 1517 | resolved "https://registry.yarnpkg.com/widest-line/-/widest-line-3.1.0.tgz#8292333bbf66cb45ff0de1603b136b7ae1496eca" 1518 | integrity sha512-NsmoXalsWVDMGupxZ5R08ka9flZjjiLvHVAWYOKtiKM8ujtZWr9cRffak+uSE48+Ob8ObalXpwyeUiyDD6QFgg== 1519 | dependencies: 1520 | string-width "^4.0.0" 1521 | 1522 | wrappy@1: 1523 | version "1.0.2" 1524 | resolved "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f" 1525 | integrity sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8= 1526 | 1527 | write-file-atomic@^3.0.0: 1528 | version "3.0.3" 1529 | resolved "https://registry.yarnpkg.com/write-file-atomic/-/write-file-atomic-3.0.3.tgz#56bd5c5a5c70481cd19c571bd39ab965a5de56e8" 1530 | integrity sha512-AvHcyZ5JnSfq3ioSyjrBkH9yW4m7Ayk8/9My/DD9onKeu/94fwrMocemO2QAJFAlnnDN+ZDS+ZjAR5ua1/PV/Q== 1531 | dependencies: 1532 | imurmurhash "^0.1.4" 1533 | is-typedarray "^1.0.0" 1534 | signal-exit "^3.0.2" 1535 | typedarray-to-buffer "^3.1.5" 1536 | 1537 | xdg-basedir@^4.0.0: 1538 | version "4.0.0" 1539 | resolved "https://registry.yarnpkg.com/xdg-basedir/-/xdg-basedir-4.0.0.tgz#4bc8d9984403696225ef83a1573cbbcb4e79db13" 1540 | integrity sha512-PSNhEJDejZYV7h50BohL09Er9VaIefr2LMAf3OEmpCkjOi34eYyQYAXUTjEQtZJTKcF0E2UKTh+osDLsgNim9Q== 1541 | 1542 | yaml@2.0.0-1: 1543 | version "2.0.0-1" 1544 | resolved "https://registry.yarnpkg.com/yaml/-/yaml-2.0.0-1.tgz#8c3029b3ee2028306d5bcf396980623115ff8d18" 1545 | integrity sha512-W7h5dEhywMKenDJh2iX/LABkbFnBxasD27oyXWDS/feDsxiw0dD5ncXdYXgkvAsXIY2MpW/ZKkr9IU30DBdMNQ== 1546 | 1547 | yn@3.1.1: 1548 | version "3.1.1" 1549 | resolved "https://registry.yarnpkg.com/yn/-/yn-3.1.1.tgz#1e87401a09d767c1d5eab26a6e4c185182d2eb50" 1550 | integrity sha512-Ux4ygGWsu2c7isFWe8Yu1YluJmqVhxqK2cLXNQA5AcC3QfbGNpM7fu0Y8b/z16pXLnFxZYvWhd3fhBY9DLmC6Q== 1551 | 1552 | z-schema@^4.2.3: 1553 | version "4.2.3" 1554 | resolved "https://registry.yarnpkg.com/z-schema/-/z-schema-4.2.3.tgz#85f7eea7e6d4fe59a483462a98f511bd78fe9882" 1555 | integrity sha512-zkvK/9TC6p38IwcrbnT3ul9in1UX4cm1y/VZSs4GHKIiDCrlafc+YQBgQBUdDXLAoZHf2qvQ7gJJOo6yT1LH6A== 1556 | dependencies: 1557 | lodash.get "^4.4.2" 1558 | lodash.isequal "^4.5.0" 1559 | validator "^12.0.0" 1560 | optionalDependencies: 1561 | commander "^2.7.1" 1562 | --------------------------------------------------------------------------------