From b8c6d1bbc14e9e53803d320a3ea3ffda7cc9ac3f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?G=C3=B6ran=20Sander?= Date: Wed, 21 Oct 2020 19:03:09 +0200 Subject: [PATCH 01/10] Updates to Code climate badge --- .codeclimate.yml | 31 +++++++++++-------------------- README.md | 1 + 2 files changed, 12 insertions(+), 20 deletions(-) diff --git a/.codeclimate.yml b/.codeclimate.yml index c4d58397..8c823c49 100644 --- a/.codeclimate.yml +++ b/.codeclimate.yml @@ -1,4 +1,14 @@ version: "2" # required to adjust maintainability checks +plugins: + eslint: + enabled: true + fixme: + enabled: true + markdownlint: + enabled: true + nodesecurity: + enabled: true + checks: argument-count: config: @@ -17,7 +27,7 @@ checks: threshold: 20 method-lines: config: - threshold: 25 + threshold: 50 nested-control-flow: config: threshold: 4 @@ -31,24 +41,5 @@ checks: config: threshold: # language-specific defaults. an override will affect all languages. -plugins: - eslint: - enabled: true - # channel: "eslint-6" -# csslint: -# enabled: true - markdownlint: - enabled: true - exclude_patterns: -# - "config/" - - "db/" - - "dist/" - - "features/" - "**/node_modules/" - - "script/" - - "**/spec/" - - "**/test/" - - "**/tests/" - - "Tests/" - - "**/vendor/" diff --git a/README.md b/README.md index c9dc622f..312f6fa8 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,7 @@ # Butler [![Build Status](https://cloud.drone.io/api/badges/ptarmiganlabs/butler/status.svg)](https://cloud.drone.io/ptarmiganlabs/butler) +[![Maintainability](https://api.codeclimate.com/v1/badges/cb33990248ffbaaf7526/maintainability)](https://codeclimate.com/github/ptarmiganlabs/butler/maintainability) ![Butler](icon.png) \ From b1cb0cf80a7d5072d08f3246831cb00a56805b6d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?G=C3=B6ran=20Sander?= Date: Tue, 27 Oct 2020 12:00:42 +0100 Subject: [PATCH 02/10] Updated deps --- src/package-lock.json | 20 ++++++++++---------- src/package.json | 4 ++-- src/rest/senseAppDump.js | 1 + 3 files changed, 13 insertions(+), 12 deletions(-) diff --git a/src/package-lock.json b/src/package-lock.json index a07173eb..9e1e6774 100644 --- a/src/package-lock.json +++ b/src/package-lock.json @@ -54,9 +54,9 @@ } }, "@eslint/eslintrc": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-0.1.3.tgz", - "integrity": "sha512-4YVwPkANLeNtRjMekzux1ci8hIaH5eGKktGqR0d3LWsKNn5B2X/1Z6Trxy7jQXl9EBGE6Yj02O+t09FMeRllaA==", + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-0.2.1.tgz", + "integrity": "sha512-XRUeBZ5zBWLYgSANMpThFddrZZkEbGHgUdt5UJjZfnlN9BGCiUBrf+nvbRupSjMvqzwnQN0qwCmOxITt1cfywA==", "dev": true, "requires": { "ajv": "^6.12.4", @@ -215,9 +215,9 @@ "integrity": "sha512-wMHVg2EOHaMRxbzgFJ9gtjOOCrI80OHLG14rxi28XwOW8ux6IiEbRCGGGqCtdAIg4FQCbW20k9RsT4y3gJlFug==" }, "axios": { - "version": "0.20.0", - "resolved": "https://registry.npmjs.org/axios/-/axios-0.20.0.tgz", - "integrity": "sha512-ANA4rr2BDcmmAQLOKft2fufrtuvlqR+cXNNinUmvfeSNCOF98PZL+7M/v1zIdGo7OLjEA9J2gXJL+j4zGsl0bA==", + "version": "0.21.0", + "resolved": "https://registry.npmjs.org/axios/-/axios-0.21.0.tgz", + "integrity": "sha512-fmkJBknJKoZwem3/IKSSLpkdNXZeBu5Q7GA/aRsr2btgrptmSCxi2oFjZHqGdK9DoTil9PIHlPIZw2EcRJXRvw==", "requires": { "follow-redirects": "^1.10.0" } @@ -920,13 +920,13 @@ "dev": true }, "eslint": { - "version": "7.11.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-7.11.0.tgz", - "integrity": "sha512-G9+qtYVCHaDi1ZuWzBsOWo2wSwd70TXnU6UHA3cTYHp7gCTXZcpggWFoUVAMRarg68qtPoNfFbzPh+VdOgmwmw==", + "version": "7.12.1", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-7.12.1.tgz", + "integrity": "sha512-HlMTEdr/LicJfN08LB3nM1rRYliDXOmfoO4vj39xN6BLpFzF00hbwBoqHk8UcJ2M/3nlARZWy/mslvGEuZFvsg==", "dev": true, "requires": { "@babel/code-frame": "^7.0.0", - "@eslint/eslintrc": "^0.1.3", + "@eslint/eslintrc": "^0.2.1", "ajv": "^6.10.0", "chalk": "^4.0.0", "cross-spawn": "^7.0.2", diff --git a/src/package.json b/src/package.json index 7b5f82ab..63c5a7dd 100644 --- a/src/package.json +++ b/src/package.json @@ -5,7 +5,7 @@ "docs": "node_modules/.bin/docco {mqtt,qrs}/{**/*,*} -l classic", "dependencies": { "any-base": "^1.1.0", - "axios": "^0.20.0", + "axios": "^0.21.0", "config": "^3.3.2", "cron-job-manager": "^2.1.4", "dict": "^1.4.0", @@ -36,7 +36,7 @@ "ws": "^7.3.1" }, "devDependencies": { - "eslint": "7.11.0", + "eslint": "^7.12.1", "eslint-config-google": "0.14.0" }, "homepage": "https://github.com/ptarmiganlabs/butler", diff --git a/src/rest/senseAppDump.js b/src/rest/senseAppDump.js index a388fc78..921495e2 100644 --- a/src/rest/senseAppDump.js +++ b/src/rest/senseAppDump.js @@ -49,6 +49,7 @@ module.exports.respondGET_senseAppDump = function (req, res, next) { globals.logger.info(`APPDUMP: Dumping app: ${req.params.appIi}`); // create a new session + // TODO Maybe should use https://github.com/qlik-oss/enigma.js/blob/master/docs/api.md#senseutilitiesbuildurlconfig ? const configEnigma = { schema: qixSchema, url: `wss://${globals.configEngine.host}:${globals.configEngine.port}`, From 261ddc8f8d18a9b15d757ed02b9fc89fb5dae047 Mon Sep 17 00:00:00 2001 From: Renovate Bot Date: Tue, 27 Oct 2020 11:01:39 +0000 Subject: [PATCH 03/10] Pin dependency eslint to 7.12.1 --- src/package-lock.json | 3919 ++++++++++++++++++++++++++++++++++++++++- src/package.json | 2 +- 2 files changed, 3910 insertions(+), 11 deletions(-) diff --git a/src/package-lock.json b/src/package-lock.json index 9e1e6774..0e56bdd5 100644 --- a/src/package-lock.json +++ b/src/package-lock.json @@ -1,8 +1,3903 @@ { "name": "butler", "version": "4.0.0", - "lockfileVersion": 1, + "lockfileVersion": 2, "requires": true, + "packages": { + "": { + "name": "butler", + "version": "4.0.0", + "license": "MIT", + "dependencies": { + "any-base": "^1.1.0", + "axios": "^0.21.0", + "config": "^3.3.2", + "cron-job-manager": "^2.1.4", + "dict": "^1.4.0", + "diskusage": "^1.1.3", + "enigma.js": "^2.7.2", + "fs-extra": "^9.0.1", + "influx": "^5.5.2", + "js-yaml": "^3.14.0", + "jshint": "^2.12.0", + "keyv": "^4.0.3", + "keyv-file": "^0.2.0", + "later": "^1.2.0", + "mkdirp": "^1.0.4", + "moment": "^2.29.1", + "moment-precise-range-plugin": "^1.3.0", + "mqtt": "^4.2.1", + "ms-teams-webhook": "^1.0.3", + "node-slack": "0.0.7", + "promise": "^8.0.3", + "restify": "^8.4.1", + "restify-cors-middleware": "^1.1.1", + "restify-errors": "^8.0.2", + "restify-swagger-jsdoc": "^3.2.4", + "serializeapp": "^3.0.0", + "uuid": "^8.3.1", + "winston": "^3.3.3", + "winston-daily-rotate-file": "^4.5.0", + "ws": "^7.3.1" + }, + "devDependencies": { + "eslint": "7.12.1", + "eslint-config-google": "0.14.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/@babel/code-frame": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.10.4.tgz", + "integrity": "sha512-vG6SvB6oYEhvgisZNFRmRCUkLz11c7rp+tbNTynGqc6mS1d5ATd/sGyV6W0KZZnXRKMTzZDRgQT3Ou9jhpAfUg==", + "dev": true, + "dependencies": { + "@babel/highlight": "^7.10.4" + } + }, + "node_modules/@babel/helper-validator-identifier": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.10.4.tgz", + "integrity": "sha512-3U9y+43hz7ZM+rzG24Qe2mufW5KhvFg/NhnNph+i9mgCtdTCtMJuI1TMkrIUiK7Ix4PYlRF9I5dhqaLYA/ADXw==", + "dev": true + }, + "node_modules/@babel/highlight": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.10.4.tgz", + "integrity": "sha512-i6rgnR/YgPEQzZZnbTHHuZdlE8qyoBNalD6F+q4vAFlcMEcqmkoG+mPqJYJCo63qPf74+Y1UZsl3l6f7/RIkmA==", + "dev": true, + "dependencies": { + "@babel/helper-validator-identifier": "^7.10.4", + "chalk": "^2.0.0", + "js-tokens": "^4.0.0" + } + }, + "node_modules/@babel/highlight/node_modules/chalk": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "dev": true, + "dependencies": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/@dabh/diagnostics": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/@dabh/diagnostics/-/diagnostics-2.0.2.tgz", + "integrity": "sha512-+A1YivoVDNNVCdfozHSR8v/jyuuLTMXwjWuxPFlFlUapXoGc+Gj9mDlTDDfrwl7rXCl2tNZ0kE8sIBO6YOn96Q==", + "dependencies": { + "colorspace": "1.1.x", + "enabled": "2.0.x", + "kuler": "^2.0.0" + } + }, + "node_modules/@eslint/eslintrc": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-0.2.1.tgz", + "integrity": "sha512-XRUeBZ5zBWLYgSANMpThFddrZZkEbGHgUdt5UJjZfnlN9BGCiUBrf+nvbRupSjMvqzwnQN0qwCmOxITt1cfywA==", + "dev": true, + "dependencies": { + "ajv": "^6.12.4", + "debug": "^4.1.1", + "espree": "^7.3.0", + "globals": "^12.1.0", + "ignore": "^4.0.6", + "import-fresh": "^3.2.1", + "js-yaml": "^3.13.1", + "lodash": "^4.17.19", + "minimatch": "^3.0.4", + "strip-json-comments": "^3.1.1" + }, + "engines": { + "node": "^10.12.0 || >=12.0.0" + } + }, + "node_modules/@eslint/eslintrc/node_modules/ajv": { + "version": "6.12.6", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", + "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", + "dev": true, + "dependencies": { + "fast-deep-equal": "^3.1.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" + } + }, + "node_modules/@eslint/eslintrc/node_modules/strip-json-comments": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz", + "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==", + "dev": true, + "funding": "https://github.com/sponsors/sindresorhus", + "engines": { + "node": ">=8" + } + }, + "node_modules/@netflix/nerror": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/@netflix/nerror/-/nerror-1.1.3.tgz", + "integrity": "sha512-b+MGNyP9/LXkapreJzNUzcvuzZslj/RGgdVVJ16P2wSlYatfLycPObImqVJSmNAdyeShvNeM/pl3sVZsObFueg==", + "dependencies": { + "assert-plus": "^1.0.0", + "extsprintf": "^1.4.0", + "lodash": "^4.17.15" + } + }, + "node_modules/@netflix/nerror/node_modules/extsprintf": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.4.0.tgz", + "integrity": "sha1-4mifjzVvrWLMplo6kcXfX5VRaS8=", + "engines": [ + "node >=0.6.0" + ] + }, + "node_modules/acorn": { + "version": "7.4.1", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz", + "integrity": "sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==", + "dev": true, + "bin": { + "acorn": "bin/acorn" + }, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/acorn-jsx": { + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.1.tgz", + "integrity": "sha512-K0Ptm/47OKfQRpNQ2J/oIN/3QYiK6FwW+eJbILhsdxh2WTLdl+30o8aGdTbm5JbffpFFAg/g+zi1E+jvJha5ng==", + "dev": true, + "peerDependencies": { + "acorn": "^6.0.0 || ^7.0.0 || ^8.0.0" + } + }, + "node_modules/ajv": { + "version": "6.11.0", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.11.0.tgz", + "integrity": "sha512-nCprB/0syFYy9fVYU1ox1l2KN8S9I+tziH8D4zdZuLT3N6RMlGSGt5FSTpAiHB/Whv8Qs1cWHma1aMKZyaHRKA==", + "dependencies": { + "fast-deep-equal": "^3.1.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" + } + }, + "node_modules/ansi-colors": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-4.1.1.tgz", + "integrity": "sha512-JoX0apGbHaUJBNl6yF+p6JAFYZ666/hhCGKN5t9QFjbJQKUU/g8MNbFDbvfrgKXvI1QpZplPOnwIo99lX/AAmA==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/ansi-regex": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", + "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "dev": true, + "dependencies": { + "color-convert": "^1.9.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/any-base": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/any-base/-/any-base-1.1.0.tgz", + "integrity": "sha512-uMgjozySS8adZZYePpaWs8cxB9/kdzmpX6SgJZ+wbz1K5eYk5QMYDVJaZKhxyIHUdnnJkfR7SVgStgH7LkGUyg==" + }, + "node_modules/argparse": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", + "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", + "dependencies": { + "sprintf-js": "~1.0.2" + } + }, + "node_modules/asap": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/asap/-/asap-2.0.6.tgz", + "integrity": "sha1-5QNHYR1+aQlDIIu9r+vLwvuGbUY=" + }, + "node_modules/asn1": { + "version": "0.2.4", + "resolved": "https://registry.npmjs.org/asn1/-/asn1-0.2.4.tgz", + "integrity": "sha512-jxwzQpLQjSmWXgwaCZE9Nz+glAG01yF1QnWgbhGwHI5A6FRIEY6IVqtHhIepHqI7/kyEyQEagBC5mBEFlIYvdg==", + "dependencies": { + "safer-buffer": "~2.1.0" + } + }, + "node_modules/assert-plus": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz", + "integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU=", + "engines": { + "node": ">=0.8" + } + }, + "node_modules/astral-regex": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/astral-regex/-/astral-regex-1.0.0.tgz", + "integrity": "sha512-+Ryf6g3BKoRc7jfp7ad8tM4TtMiaWvbF/1/sQcZPkkS7ag3D5nMBCe2UfOTONtAkaG0tO0ij3C5Lwmf1EiyjHg==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/async": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/async/-/async-3.2.0.tgz", + "integrity": "sha512-TR2mEZFVOj2pLStYxLht7TyfuRzaydfpxr3k9RpHIzMgw7A64dzsdqCxH1WJyQdoe8T10nDXd9wnEigmiuHIZw==" + }, + "node_modules/asynckit": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", + "integrity": "sha1-x57Zf380y48robyXkLzDZkdLS3k=" + }, + "node_modules/at-least-node": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/at-least-node/-/at-least-node-1.0.0.tgz", + "integrity": "sha512-+q/t7Ekv1EDY2l6Gda6LLiX14rU9TV20Wa3ofeQmwPFZbOMo9DXrLbOjFaaclkXKWidIaopwAObQDqwWtGUjqg==", + "engines": { + "node": ">= 4.0.0" + } + }, + "node_modules/aws-sign2": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.7.0.tgz", + "integrity": "sha1-tG6JCTSpWR8tL2+G1+ap8bP+dqg=", + "engines": { + "node": "*" + } + }, + "node_modules/aws4": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/aws4/-/aws4-1.9.1.tgz", + "integrity": "sha512-wMHVg2EOHaMRxbzgFJ9gtjOOCrI80OHLG14rxi28XwOW8ux6IiEbRCGGGqCtdAIg4FQCbW20k9RsT4y3gJlFug==" + }, + "node_modules/axios": { + "version": "0.21.0", + "resolved": "https://registry.npmjs.org/axios/-/axios-0.21.0.tgz", + "integrity": "sha512-fmkJBknJKoZwem3/IKSSLpkdNXZeBu5Q7GA/aRsr2btgrptmSCxi2oFjZHqGdK9DoTil9PIHlPIZw2EcRJXRvw==", + "dependencies": { + "follow-redirects": "^1.10.0" + } + }, + "node_modules/balanced-match": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz", + "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=" + }, + "node_modules/base64-js": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.3.1.tgz", + "integrity": "sha512-mLQ4i2QO1ytvGWFWmcngKO//JXAQueZvwEKtjgQFM4jIK0kU+ytMfplL8j+n5mspOfjHwoAg+9yhb7BwAHm36g==" + }, + "node_modules/bcrypt-pbkdf": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz", + "integrity": "sha1-pDAdOJtqQ/m2f/PKEaP2Y342Dp4=", + "dependencies": { + "tweetnacl": "^0.14.3" + } + }, + "node_modules/bl": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/bl/-/bl-4.0.3.tgz", + "integrity": "sha512-fs4G6/Hu4/EE+F75J8DuN/0IpQqNjAdC7aEQv7Qt8MHGUH7Ckv2MwTEEeN9QehD0pfIDkMI1bkHYkKy7xHyKIg==", + "dependencies": { + "buffer": "^5.5.0", + "inherits": "^2.0.4", + "readable-stream": "^3.4.0" + } + }, + "node_modules/bl/node_modules/readable-stream": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", + "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", + "dependencies": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/bl/node_modules/safe-buffer": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", + "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] + }, + "node_modules/bl/node_modules/string_decoder": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", + "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", + "dependencies": { + "safe-buffer": "~5.2.0" + } + }, + "node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/buffer": { + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.6.0.tgz", + "integrity": "sha512-/gDYp/UtU0eA1ys8bOs9J6a+E/KWIY+DZ+Q2WESNUA0jFRsJOc0SNUO6xJ5SGA1xueg3NL65W6s+NY5l9cunuw==", + "dependencies": { + "base64-js": "^1.0.2", + "ieee754": "^1.1.4" + } + }, + "node_modules/buffer-from": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.1.tgz", + "integrity": "sha512-MQcXEUbCKtEo7bhqEs6560Hyd4XaovZlO/k9V3hjVUF/zwW7KBVdSK4gIt/bzwS9MbR5qob+F5jusZsb0YQK2A==" + }, + "node_modules/bunyan": { + "version": "1.8.12", + "resolved": "https://registry.npmjs.org/bunyan/-/bunyan-1.8.12.tgz", + "integrity": "sha1-8VDw9nSKvdcq6uhPBEA74u8RN5c=", + "engines": [ + "node >=0.10.0" + ], + "dependencies": { + "dtrace-provider": "~0.8", + "moment": "^2.10.6", + "mv": "~2", + "safe-json-stringify": "~1" + }, + "bin": { + "bunyan": "./bin/bunyan" + }, + "optionalDependencies": { + "dtrace-provider": "~0.8", + "moment": "^2.10.6", + "mv": "~2", + "safe-json-stringify": "~1" + } + }, + "node_modules/call-me-maybe": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/call-me-maybe/-/call-me-maybe-1.0.1.tgz", + "integrity": "sha1-JtII6onje1y95gJQoV8DHBak1ms=" + }, + "node_modules/callback-stream": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/callback-stream/-/callback-stream-1.1.0.tgz", + "integrity": "sha1-RwGlEmbwbgbqpx/BcjOCLYdfSQg=", + "dependencies": { + "inherits": "^2.0.1", + "readable-stream": "> 1.0.0 < 3.0.0" + } + }, + "node_modules/callsites": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", + "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/caseless": { + "version": "0.12.0", + "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz", + "integrity": "sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw=" + }, + "node_modules/chalk": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.0.tgz", + "integrity": "sha512-qwx12AxXe2Q5xQ43Ac//I6v5aXTipYrSESdOgzrN+9XjgEpyjpKuvSGaN4qE93f7TQTlerQQ8S+EQ0EyDoVL1A==", + "dev": true, + "funding": "https://github.com/chalk/chalk?sponsor=1", + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/chalk/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "funding": "https://github.com/chalk/ansi-styles?sponsor=1", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/chalk/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/chalk/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "node_modules/chalk/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/chalk/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/cli": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/cli/-/cli-1.0.1.tgz", + "integrity": "sha1-IoF1NPJL+klQw01TLUjsvGIbjBQ=", + "dependencies": { + "exit": "0.1.2", + "glob": "^7.1.1" + }, + "engines": { + "node": ">=0.2.5" + } + }, + "node_modules/color": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/color/-/color-3.0.0.tgz", + "integrity": "sha512-jCpd5+s0s0t7p3pHQKpnJ0TpQKKdleP71LWcA0aqiljpiuAkOSUFN/dyH8ZwF0hRmFlrIuRhufds1QyEP9EB+w==", + "dependencies": { + "color-convert": "^1.9.1", + "color-string": "^1.5.2" + } + }, + "node_modules/color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "dependencies": { + "color-name": "1.1.3" + } + }, + "node_modules/color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=" + }, + "node_modules/color-string": { + "version": "1.5.3", + "resolved": "https://registry.npmjs.org/color-string/-/color-string-1.5.3.tgz", + "integrity": "sha512-dC2C5qeWoYkxki5UAXapdjqO672AM4vZuPGRQfO8b5HKuKGBbKWpITyDYN7TOFKvRW7kOgAn3746clDBMDJyQw==", + "dependencies": { + "color-name": "^1.0.0", + "simple-swizzle": "^0.2.2" + } + }, + "node_modules/colors": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/colors/-/colors-1.4.0.tgz", + "integrity": "sha512-a+UqTh4kgZg/SlGvfbzDHpgRu7AAQOmmqRHJnxhRZICKFUT91brVhNNt58CMWU9PsBbv3PDCZUHbVxuDiH2mtA==", + "engines": { + "node": ">=0.1.90" + } + }, + "node_modules/colorspace": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/colorspace/-/colorspace-1.1.2.tgz", + "integrity": "sha512-vt+OoIP2d76xLhjwbBaucYlNSpPsrJWPlBTtwCpQKIu6/CSMutyzX93O/Do0qzpH3YoHEes8YEFXyZ797rEhzQ==", + "dependencies": { + "color": "3.0.x", + "text-hex": "1.0.x" + } + }, + "node_modules/combined-stream": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", + "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", + "dependencies": { + "delayed-stream": "~1.0.0" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/commander": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/commander/-/commander-4.0.1.tgz", + "integrity": "sha512-IPF4ouhCP+qdlcmCedhxX4xiGBPyigb8v5NeUp+0LyhwLgxMqyp3S0vl7TAPfS/hiP7FC3caI/PB9lTmP8r1NA==", + "engines": { + "node": ">= 6" + } + }, + "node_modules/commist": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/commist/-/commist-1.1.0.tgz", + "integrity": "sha512-rraC8NXWOEjhADbZe9QBNzLAN5Q3fsTPQtBV+fEVj6xKIgDgNiEVE6ZNfHpZOqfQ21YUzfVNUXLOEZquYvQPPg==", + "dependencies": { + "leven": "^2.1.0", + "minimist": "^1.1.0" + } + }, + "node_modules/concat-map": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=" + }, + "node_modules/concat-stream": { + "version": "1.6.2", + "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-1.6.2.tgz", + "integrity": "sha512-27HBghJxjiZtIk3Ycvn/4kbJk/1uZuJFfuPEns6LaEvpvG1f0hTea8lilrouyo9mVc2GWdcEZ8OLoGmSADlrCw==", + "engines": [ + "node >= 0.8" + ], + "dependencies": { + "buffer-from": "^1.0.0", + "inherits": "^2.0.3", + "readable-stream": "^2.2.2", + "typedarray": "^0.0.6" + } + }, + "node_modules/concat-stream/node_modules/isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=" + }, + "node_modules/concat-stream/node_modules/readable-stream": { + "version": "2.3.7", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", + "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", + "dependencies": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "node_modules/concat-stream/node_modules/string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "dependencies": { + "safe-buffer": "~5.1.0" + } + }, + "node_modules/config": { + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/config/-/config-3.3.2.tgz", + "integrity": "sha512-NlGfBn2565YA44Irn7GV5KHlIGC3KJbf0062/zW5ddP9VXIuRj0m7HVyFAWvMZvaHPEglyGfwmevGz3KosIpCg==", + "dependencies": { + "json5": "^2.1.1" + }, + "engines": { + "node": ">= 6.0.0" + } + }, + "node_modules/console-browserify": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/console-browserify/-/console-browserify-1.1.0.tgz", + "integrity": "sha1-8CQcRXMKn8YyOyBtvzjtx0HQuxA=", + "dependencies": { + "date-now": "^0.1.4" + } + }, + "node_modules/core-util-is": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", + "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=" + }, + "node_modules/cron": { + "version": "1.8.2", + "resolved": "https://registry.npmjs.org/cron/-/cron-1.8.2.tgz", + "integrity": "sha512-Gk2c4y6xKEO8FSAUTklqtfSr7oTq0CiPQeLBG5Fl0qoXpZyMcj1SG59YL+hqq04bu6/IuEA7lMkYDAplQNKkyg==", + "dependencies": { + "moment-timezone": "^0.5.x" + } + }, + "node_modules/cron-job-manager": { + "version": "2.1.4", + "resolved": "https://registry.npmjs.org/cron-job-manager/-/cron-job-manager-2.1.4.tgz", + "integrity": "sha512-4qNaZpuf3njP747TcJWDL/zXEtluKqkhqaSdnsm61MwjP1Y2Mn7iSIB59rwnlxKykCDjnLhxPogQgFNS9YVKmg==", + "dependencies": { + "cron": "1.8.2" + } + }, + "node_modules/cross-spawn": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", + "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", + "dev": true, + "dependencies": { + "path-key": "^3.1.0", + "shebang-command": "^2.0.0", + "which": "^2.0.1" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/csv": { + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/csv/-/csv-5.3.2.tgz", + "integrity": "sha512-odDyucr9OgJTdGM2wrMbJXbOkJx3nnUX3Pt8SFOwlAMOpsUQlz1dywvLMXJWX/4Ib0rjfOsaawuuwfI5ucqBGQ==", + "dependencies": { + "csv-generate": "^3.2.4", + "csv-parse": "^4.8.8", + "csv-stringify": "^5.3.6", + "stream-transform": "^2.0.1" + }, + "engines": { + "node": ">= 0.1.90" + } + }, + "node_modules/csv-generate": { + "version": "3.2.4", + "resolved": "https://registry.npmjs.org/csv-generate/-/csv-generate-3.2.4.tgz", + "integrity": "sha512-qNM9eqlxd53TWJeGtY1IQPj90b563Zx49eZs8e0uMyEvPgvNVmX1uZDtdzAcflB3PniuH9creAzcFOdyJ9YGvA==" + }, + "node_modules/csv-parse": { + "version": "4.8.8", + "resolved": "https://registry.npmjs.org/csv-parse/-/csv-parse-4.8.8.tgz", + "integrity": "sha512-Kv3Ilz2GV58dOoHBXRCTF8ijxlLjl80bG3d67XPI6DNqffb3AnbPbKr/WvCUMJq5V0AZYi6sukOaOQAVpfuVbg==" + }, + "node_modules/csv-stringify": { + "version": "5.3.6", + "resolved": "https://registry.npmjs.org/csv-stringify/-/csv-stringify-5.3.6.tgz", + "integrity": "sha512-kPcRbMvo5NLLD71TAqW5K+g9kbM2HpIZJLAzm73Du8U+5TXmDp9YtXKCBLyxEh0q3Jbg8QhNFBz3b5VJzjZ/jw==" + }, + "node_modules/d": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/d/-/d-1.0.1.tgz", + "integrity": "sha512-m62ShEObQ39CfralilEQRjH6oAMtNCV1xJyEx5LpRYUVN+EviphDgUc/F3hnYbADmkiNs67Y+3ylmlG7Lnu+FA==", + "dependencies": { + "es5-ext": "^0.10.50", + "type": "^1.0.1" + } + }, + "node_modules/dashdash": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/dashdash/-/dashdash-1.14.1.tgz", + "integrity": "sha1-hTz6D3y+L+1d4gMmuN1YEDX24vA=", + "dependencies": { + "assert-plus": "^1.0.0" + }, + "engines": { + "node": ">=0.10" + } + }, + "node_modules/date-now": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/date-now/-/date-now-0.1.4.tgz", + "integrity": "sha1-6vQ5/U1ISK105cx9vvIAZyueNFs=" + }, + "node_modules/debug": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", + "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", + "dependencies": { + "ms": "^2.1.1" + } + }, + "node_modules/deep-is": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.3.tgz", + "integrity": "sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ=", + "dev": true + }, + "node_modules/deferred": { + "version": "0.7.1", + "resolved": "https://registry.npmjs.org/deferred/-/deferred-0.7.1.tgz", + "integrity": "sha1-9lzTwFaD899VS/XBU4UUlIEdAfQ=", + "dependencies": { + "d": "~0.1.1", + "es5-ext": "~0.10.2", + "event-emitter": "~0.3.1", + "next-tick": "~0.2.2" + } + }, + "node_modules/deferred/node_modules/d": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/d/-/d-0.1.1.tgz", + "integrity": "sha1-2hhMU10Y2O57oqoim5FACfrhEwk=", + "dependencies": { + "es5-ext": "~0.10.2" + } + }, + "node_modules/deferred/node_modules/next-tick": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/next-tick/-/next-tick-0.2.2.tgz", + "integrity": "sha1-ddpKkn7liH45BliABltzNkE7MQ0=" + }, + "node_modules/delayed-stream": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", + "integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk=", + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/depd": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz", + "integrity": "sha1-m81S4UwJd2PnSbJ0xDRu0uVgtak=", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/destroy": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.0.4.tgz", + "integrity": "sha1-l4hXRCxEdJ5CBmE+N5RiBYJqvYA=" + }, + "node_modules/detect-node": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/detect-node/-/detect-node-2.0.4.tgz", + "integrity": "sha512-ZIzRpLJrOj7jjP2miAtgqIfmzbxa4ZOr5jJc601zklsfEx9oTzmmj2nVpIPRpNlRTIh8lc1kyViIY7BWSGNmKw==" + }, + "node_modules/dict": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/dict/-/dict-1.4.0.tgz", + "integrity": "sha1-g9h9V88MSsDYNGCESLEKbiO7/qA=" + }, + "node_modules/diskusage": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/diskusage/-/diskusage-1.1.3.tgz", + "integrity": "sha512-EAyaxl8hy4Ph07kzlzGTfpbZMNAAAHXSZtNEMwdlnSd1noHzvA6HsgKt4fEMSvaEXQYLSphe5rPMxN4WOj0hcQ==", + "hasInstallScript": true, + "dependencies": { + "es6-promise": "^4.2.5", + "nan": "^2.14.0" + } + }, + "node_modules/doctrine": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz", + "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==", + "dependencies": { + "esutils": "^2.0.2" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/dom-serializer": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-0.2.2.tgz", + "integrity": "sha512-2/xPb3ORsQ42nHYiSunXkDjPLBaEj/xTwUO4B7XCZQTRk7EBtTOPaygh10YAAh2OI1Qrp6NWfpAhzswj0ydt9g==", + "dependencies": { + "domelementtype": "^2.0.1", + "entities": "^2.0.0" + } + }, + "node_modules/dom-serializer/node_modules/domelementtype": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-2.0.2.tgz", + "integrity": "sha512-wFwTwCVebUrMgGeAwRL/NhZtHAUyT9n9yg4IMDwf10+6iCMxSkVq9MGCVEH+QZWo1nNidy8kNvwmv4zWHDTqvA==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/fb55" + } + ] + }, + "node_modules/dom-serializer/node_modules/entities": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/entities/-/entities-2.0.3.tgz", + "integrity": "sha512-MyoZ0jgnLvB2X3Lg5HqpFmn1kybDiIfEQmKzTb5apr51Rb+T3KdmMiqa70T+bhGnyv7bQ6WMj2QMHpGMmlrUYQ==" + }, + "node_modules/domelementtype": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-1.3.1.tgz", + "integrity": "sha512-BSKB+TSpMpFI/HOxCNr1O8aMOTZ8hT3pM3GQ0w/mWRmkhEDSFJkkyzz4XQsBV44BChwGkrDfMyjVD0eA2aFV3w==" + }, + "node_modules/domhandler": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-2.3.0.tgz", + "integrity": "sha1-LeWaCCLVAn+r/28DLCsloqir5zg=", + "dependencies": { + "domelementtype": "1" + } + }, + "node_modules/domutils": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/domutils/-/domutils-1.5.1.tgz", + "integrity": "sha1-3NhIiib1Y9YQeeSMn3t+Mjc2gs8=", + "dependencies": { + "dom-serializer": "0", + "domelementtype": "1" + } + }, + "node_modules/dtrace-provider": { + "version": "0.8.8", + "resolved": "https://registry.npmjs.org/dtrace-provider/-/dtrace-provider-0.8.8.tgz", + "integrity": "sha512-b7Z7cNtHPhH9EJhNNbbeqTcXB8LGFFZhq1PGgEvpeHlzd36bhbdTWoE/Ba/YguqpBSlAPKnARWhVlhunCMwfxg==", + "hasInstallScript": true, + "optional": true, + "dependencies": { + "nan": "^2.14.0" + }, + "engines": { + "node": ">=0.10" + } + }, + "node_modules/duplexify": { + "version": "3.7.1", + "resolved": "https://registry.npmjs.org/duplexify/-/duplexify-3.7.1.tgz", + "integrity": "sha512-07z8uv2wMyS51kKhD1KsdXJg5WQ6t93RneqRxUHnskXVtlYYkLqM0gqStQZ3pj073g687jPCHrqNfCzawLYh5g==", + "dependencies": { + "end-of-stream": "^1.0.0", + "inherits": "^2.0.1", + "readable-stream": "^2.0.0", + "stream-shift": "^1.0.0" + } + }, + "node_modules/duplexify/node_modules/isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=" + }, + "node_modules/duplexify/node_modules/readable-stream": { + "version": "2.3.7", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", + "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", + "dependencies": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "node_modules/duplexify/node_modules/string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "dependencies": { + "safe-buffer": "~5.1.0" + } + }, + "node_modules/ecc-jsbn": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/ecc-jsbn/-/ecc-jsbn-0.1.2.tgz", + "integrity": "sha1-OoOpBOVDUyh4dMVkt1SThoSamMk=", + "dependencies": { + "jsbn": "~0.1.0", + "safer-buffer": "^2.1.0" + } + }, + "node_modules/ee-first": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", + "integrity": "sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0=" + }, + "node_modules/emoji-regex": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz", + "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==", + "dev": true + }, + "node_modules/enabled": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/enabled/-/enabled-2.0.0.tgz", + "integrity": "sha512-AKrN98kuwOzMIdAizXGI86UFBoo26CL21UM763y1h/GMSJ4/OHU9k2YlsmBpyScFo/wbLzWQJBMCW4+IO3/+OQ==" + }, + "node_modules/encodeurl": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", + "integrity": "sha1-rT/0yG7C0CkyL1oCw6mmBslbP1k=", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/end-of-stream": { + "version": "1.4.4", + "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.4.tgz", + "integrity": "sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==", + "dependencies": { + "once": "^1.4.0" + } + }, + "node_modules/enigma.js": { + "version": "2.7.2", + "resolved": "https://registry.npmjs.org/enigma.js/-/enigma.js-2.7.2.tgz", + "integrity": "sha512-MATvu3+DqV3NGkdKM5uYJT8VLBkQeWgvNqiHsOXO/ChcMezwrKpr4gcn+gx/sqnACX9yaoFi02ECbs8rCZ+aIQ==" + }, + "node_modules/enquirer": { + "version": "2.3.6", + "resolved": "https://registry.npmjs.org/enquirer/-/enquirer-2.3.6.tgz", + "integrity": "sha512-yjNnPr315/FjS4zIsUxYguYUPP2e1NK4d7E7ZOLiyYCcbFBiTMyID+2wvm2w6+pZ/odMA7cRkjhsPbltwBOrLg==", + "dev": true, + "dependencies": { + "ansi-colors": "^4.1.1" + }, + "engines": { + "node": ">=8.6" + } + }, + "node_modules/entities": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/entities/-/entities-1.0.0.tgz", + "integrity": "sha1-sph6o4ITR/zeZCsk/fyeT7cSvyY=" + }, + "node_modules/es5-ext": { + "version": "0.10.53", + "resolved": "https://registry.npmjs.org/es5-ext/-/es5-ext-0.10.53.tgz", + "integrity": "sha512-Xs2Stw6NiNHWypzRTY1MtaG/uJlwCk8kH81920ma8mvN8Xq1gsfhZvpkImLQArw8AHnv8MT2I45J3c0R8slE+Q==", + "dependencies": { + "es6-iterator": "~2.0.3", + "es6-symbol": "~3.1.3", + "next-tick": "~1.0.0" + } + }, + "node_modules/es6-iterator": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/es6-iterator/-/es6-iterator-2.0.3.tgz", + "integrity": "sha1-p96IkUGgWpSwhUQDstCg+/qY87c=", + "dependencies": { + "d": "1", + "es5-ext": "^0.10.35", + "es6-symbol": "^3.1.1" + } + }, + "node_modules/es6-map": { + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/es6-map/-/es6-map-0.1.5.tgz", + "integrity": "sha1-kTbgUD3MBqMBaQ8LsU/042TpSfA=", + "dependencies": { + "d": "1", + "es5-ext": "~0.10.14", + "es6-iterator": "~2.0.1", + "es6-set": "~0.1.5", + "es6-symbol": "~3.1.1", + "event-emitter": "~0.3.5" + } + }, + "node_modules/es6-promise": { + "version": "4.2.8", + "resolved": "https://registry.npmjs.org/es6-promise/-/es6-promise-4.2.8.tgz", + "integrity": "sha512-HJDGx5daxeIvxdBxvG2cb9g4tEvwIk3i8+nhX0yGrYmZUzbkdg8QbDevheDB8gd0//uPj4c1EQua8Q+MViT0/w==" + }, + "node_modules/es6-set": { + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/es6-set/-/es6-set-0.1.5.tgz", + "integrity": "sha1-0rPsXU2ADO2BjbU40ol02wpzzLE=", + "dependencies": { + "d": "1", + "es5-ext": "~0.10.14", + "es6-iterator": "~2.0.1", + "es6-symbol": "3.1.1", + "event-emitter": "~0.3.5" + } + }, + "node_modules/es6-set/node_modules/es6-symbol": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/es6-symbol/-/es6-symbol-3.1.1.tgz", + "integrity": "sha1-vwDvT9q2uhtG7Le2KbTH7VcVzHc=", + "dependencies": { + "d": "1", + "es5-ext": "~0.10.14" + } + }, + "node_modules/es6-symbol": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/es6-symbol/-/es6-symbol-3.1.3.tgz", + "integrity": "sha512-NJ6Yn3FuDinBaBRWl/q5X/s4koRHBrgKAu+yGI6JCBeiu3qrcbJhwT2GeR/EXVfylRk8dpQVJoLEFhK+Mu31NA==", + "dependencies": { + "d": "^1.0.1", + "ext": "^1.1.2" + } + }, + "node_modules/escape-html": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz", + "integrity": "sha1-Aljq5NPQwJdN4cFpGI7wBR0dGYg=" + }, + "node_modules/escape-regexp-component": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/escape-regexp-component/-/escape-regexp-component-1.0.2.tgz", + "integrity": "sha1-nGO20LJf8qiMOtvRjFthrMO5+qI=" + }, + "node_modules/escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", + "dev": true, + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/eslint": { + "version": "7.12.1", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-7.12.1.tgz", + "integrity": "sha512-HlMTEdr/LicJfN08LB3nM1rRYliDXOmfoO4vj39xN6BLpFzF00hbwBoqHk8UcJ2M/3nlARZWy/mslvGEuZFvsg==", + "dev": true, + "funding": "https://opencollective.com/eslint", + "dependencies": { + "@babel/code-frame": "^7.0.0", + "@eslint/eslintrc": "^0.2.1", + "ajv": "^6.10.0", + "chalk": "^4.0.0", + "cross-spawn": "^7.0.2", + "debug": "^4.0.1", + "doctrine": "^3.0.0", + "enquirer": "^2.3.5", + "eslint-scope": "^5.1.1", + "eslint-utils": "^2.1.0", + "eslint-visitor-keys": "^2.0.0", + "espree": "^7.3.0", + "esquery": "^1.2.0", + "esutils": "^2.0.2", + "file-entry-cache": "^5.0.1", + "functional-red-black-tree": "^1.0.1", + "glob-parent": "^5.0.0", + "globals": "^12.1.0", + "ignore": "^4.0.6", + "import-fresh": "^3.0.0", + "imurmurhash": "^0.1.4", + "is-glob": "^4.0.0", + "js-yaml": "^3.13.1", + "json-stable-stringify-without-jsonify": "^1.0.1", + "levn": "^0.4.1", + "lodash": "^4.17.19", + "minimatch": "^3.0.4", + "natural-compare": "^1.4.0", + "optionator": "^0.9.1", + "progress": "^2.0.0", + "regexpp": "^3.1.0", + "semver": "^7.2.1", + "strip-ansi": "^6.0.0", + "strip-json-comments": "^3.1.0", + "table": "^5.2.3", + "text-table": "^0.2.0", + "v8-compile-cache": "^2.0.3" + }, + "bin": { + "eslint": "bin/eslint.js" + }, + "engines": { + "node": "^10.12.0 || >=12.0.0" + } + }, + "node_modules/eslint-config-google": { + "version": "0.14.0", + "resolved": "https://registry.npmjs.org/eslint-config-google/-/eslint-config-google-0.14.0.tgz", + "integrity": "sha512-WsbX4WbjuMvTdeVL6+J3rK1RGhCTqjsFjX7UMSMgZiyxxaNLkoJENbrGExzERFeoTpGw3F3FypTiWAP9ZXzkEw==", + "dev": true, + "engines": { + "node": ">=0.10.0" + }, + "peerDependencies": { + "eslint": ">=5.16.0" + } + }, + "node_modules/eslint-scope": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.1.tgz", + "integrity": "sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==", + "dev": true, + "dependencies": { + "esrecurse": "^4.3.0", + "estraverse": "^4.1.1" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/eslint-utils": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-2.1.0.tgz", + "integrity": "sha512-w94dQYoauyvlDc43XnGB8lU3Zt713vNChgt4EWwhXAP2XkBvndfxF0AgIqKOOasjPIPzj9JqgwkwbCYD0/V3Zg==", + "dev": true, + "funding": "https://github.com/sponsors/mysticatea", + "dependencies": { + "eslint-visitor-keys": "^1.1.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/eslint-utils/node_modules/eslint-visitor-keys": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz", + "integrity": "sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/eslint-visitor-keys": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-2.0.0.tgz", + "integrity": "sha512-QudtT6av5WXels9WjIM7qz1XD1cWGvX4gGXvp/zBn9nXG02D0utdU3Em2m/QjTnrsk6bBjmCygl3rmj118msQQ==", + "dev": true, + "engines": { + "node": ">=10" + } + }, + "node_modules/eslint/node_modules/glob-parent": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.1.tgz", + "integrity": "sha512-FnI+VGOpnlGHWZxthPGR+QhR78fuiK0sNLkHQv+bL9fQi57lNNdquIbna/WrfROrolq8GK5Ek6BiMwqL/voRYQ==", + "dev": true, + "dependencies": { + "is-glob": "^4.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/eslint/node_modules/is-glob": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.1.tgz", + "integrity": "sha512-5G0tKtBTFImOqDnLB2hG6Bp2qcKEFduo4tZu9MT/H6NQv/ghhy30o55ufafxJ/LdH79LLs2Kfrn85TLKyA7BUg==", + "dev": true, + "dependencies": { + "is-extglob": "^2.1.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/eslint/node_modules/semver": { + "version": "7.3.2", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.2.tgz", + "integrity": "sha512-OrOb32TeeambH6UrhtShmF7CRDqhL6/5XpPNp2DuRH6+9QLw/orhp72j87v8Qa1ScDkvrrBNpZcDejAirJmfXQ==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/eslint/node_modules/strip-json-comments": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz", + "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==", + "dev": true, + "funding": "https://github.com/sponsors/sindresorhus", + "engines": { + "node": ">=8" + } + }, + "node_modules/espree": { + "version": "7.3.0", + "resolved": "https://registry.npmjs.org/espree/-/espree-7.3.0.tgz", + "integrity": "sha512-dksIWsvKCixn1yrEXO8UosNSxaDoSYpq9reEjZSbHLpT5hpaCAKTLBwq0RHtLrIr+c0ByiYzWT8KTMRzoRCNlw==", + "dev": true, + "dependencies": { + "acorn": "^7.4.0", + "acorn-jsx": "^5.2.0", + "eslint-visitor-keys": "^1.3.0" + }, + "engines": { + "node": "^10.12.0 || >=12.0.0" + } + }, + "node_modules/espree/node_modules/eslint-visitor-keys": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz", + "integrity": "sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/esprima": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", + "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", + "bin": { + "esparse": "./bin/esparse.js", + "esvalidate": "./bin/esvalidate.js" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/esquery": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.3.1.tgz", + "integrity": "sha512-olpvt9QG0vniUBZspVRN6lwB7hOZoTRtT+jzR+tS4ffYx2mzbw+z0XCOk44aaLYKApNX5nMm+E+P6o25ip/DHQ==", + "dev": true, + "dependencies": { + "estraverse": "^5.1.0" + }, + "engines": { + "node": ">=0.10" + } + }, + "node_modules/esquery/node_modules/estraverse": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.2.0.tgz", + "integrity": "sha512-BxbNGGNm0RyRYvUdHpIwv9IWzeM9XClbOxwoATuFdOE7ZE6wHL+HQ5T8hoPM+zHvmKzzsEqhgy0GrQ5X13afiQ==", + "dev": true, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/esrecurse": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz", + "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==", + "dev": true, + "dependencies": { + "estraverse": "^5.2.0" + }, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/esrecurse/node_modules/estraverse": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.2.0.tgz", + "integrity": "sha512-BxbNGGNm0RyRYvUdHpIwv9IWzeM9XClbOxwoATuFdOE7ZE6wHL+HQ5T8hoPM+zHvmKzzsEqhgy0GrQ5X13afiQ==", + "dev": true, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/estraverse": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", + "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==", + "dev": true, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/esutils": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", + "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/etag": { + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz", + "integrity": "sha1-Qa4u62XvpiJorr/qg6x9eSmbCIc=", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/event-emitter": { + "version": "0.3.5", + "resolved": "https://registry.npmjs.org/event-emitter/-/event-emitter-0.3.5.tgz", + "integrity": "sha1-34xp7vFkeSPHFXuc6DhAYQsCzDk=", + "dependencies": { + "d": "1", + "es5-ext": "~0.10.14" + } + }, + "node_modules/ewma": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/ewma/-/ewma-2.0.1.tgz", + "integrity": "sha512-MYYK17A76cuuyvkR7MnqLW4iFYPEi5Isl2qb8rXiWpLiwFS9dxW/rncuNnjjgSENuVqZQkIuR4+DChVL4g1lnw==", + "dependencies": { + "assert-plus": "^1.0.0" + } + }, + "node_modules/exit": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/exit/-/exit-0.1.2.tgz", + "integrity": "sha1-BjJjj42HfMghB9MKD/8aF8uhzQw=", + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/ext": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/ext/-/ext-1.4.0.tgz", + "integrity": "sha512-Key5NIsUxdqKg3vIsdw9dSuXpPCQ297y6wBjL30edxwPgt2E44WcWBZey/ZvUc6sERLTxKdyCu4gZFmUbk1Q7A==", + "dependencies": { + "type": "^2.0.0" + } + }, + "node_modules/ext/node_modules/type": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/type/-/type-2.0.0.tgz", + "integrity": "sha512-KBt58xCHry4Cejnc2ISQAF7QY+ORngsWfxezO68+12hKV6lQY8P/psIkcbjeHWn7MqcgciWJyCCevFMJdIXpow==" + }, + "node_modules/extend": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz", + "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==" + }, + "node_modules/extsprintf": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.3.0.tgz", + "integrity": "sha1-lpGEQOMEGnpBT4xS48V06zw+HgU=", + "engines": [ + "node >=0.6.0" + ] + }, + "node_modules/fast-decode-uri-component": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/fast-decode-uri-component/-/fast-decode-uri-component-1.0.1.tgz", + "integrity": "sha512-WKgKWg5eUxvRZGwW8FvfbaH7AXSh2cL+3j5fMGzUMCxWBJ3dV3a7Wz8y2f/uQ0e3B6WmodD3oS54jTQ9HVTIIg==" + }, + "node_modules/fast-deep-equal": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.1.tgz", + "integrity": "sha512-8UEa58QDLauDNfpbrX55Q9jrGHThw2ZMdOky5Gl1CDtVeJDPVrG4Jxx1N8jw2gkWaff5UUuX1KJd+9zGe2B+ZA==" + }, + "node_modules/fast-json-stable-stringify": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", + "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==" + }, + "node_modules/fast-levenshtein": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", + "integrity": "sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc=", + "dev": true + }, + "node_modules/fast-safe-stringify": { + "version": "2.0.7", + "resolved": "https://registry.npmjs.org/fast-safe-stringify/-/fast-safe-stringify-2.0.7.tgz", + "integrity": "sha512-Utm6CdzT+6xsDk2m8S6uL8VHxNwI6Jub+e9NYTcAms28T84pTa25GJQV9j0CY0N1rM8hK4x6grpF2BQf+2qwVA==" + }, + "node_modules/fecha": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/fecha/-/fecha-4.2.0.tgz", + "integrity": "sha512-aN3pcx/DSmtyoovUudctc8+6Hl4T+hI9GBBHLjA76jdZl7+b1sgh5g4k+u/GL3dTy1/pnYzKp69FpJ0OicE3Wg==" + }, + "node_modules/file-entry-cache": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-5.0.1.tgz", + "integrity": "sha512-bCg29ictuBaKUwwArK4ouCaqDgLZcysCFLmM/Yn/FDoqndh/9vNuQfXRDvTuXKLxfD/JtZQGKFT8MGcJBK644g==", + "dev": true, + "dependencies": { + "flat-cache": "^2.0.1" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/file-stream-rotator": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/file-stream-rotator/-/file-stream-rotator-0.5.7.tgz", + "integrity": "sha512-VYb3HZ/GiAGUCrfeakO8Mp54YGswNUHvL7P09WQcXAJNSj3iQ5QraYSp3cIn1MUyw6uzfgN/EFOarCNa4JvUHQ==", + "dependencies": { + "moment": "^2.11.2" + } + }, + "node_modules/find-my-way": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/find-my-way/-/find-my-way-2.2.1.tgz", + "integrity": "sha512-pzZA9/PlhDGG5PRzmd4vH4AbKW7FO68RE7q2I3NzjJHcVPukYbDA7bPdArg7ySKfS6pKki+qhrawFoN6aNZfjA==", + "dependencies": { + "fast-decode-uri-component": "^1.0.0", + "safe-regex2": "^2.0.0", + "semver-store": "^0.3.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/flat-cache": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-2.0.1.tgz", + "integrity": "sha512-LoQe6yDuUMDzQAEH8sgmh4Md6oZnc/7PjtwjNFSzveXqSHt6ka9fPBuso7IGf9Rz4uqnSnWiFH2B/zj24a5ReA==", + "dev": true, + "dependencies": { + "flatted": "^2.0.0", + "rimraf": "2.6.3", + "write": "1.0.3" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/flat-cache/node_modules/rimraf": { + "version": "2.6.3", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.6.3.tgz", + "integrity": "sha512-mwqeW5XsA2qAejG46gYdENaxXjx9onRNCfn7L0duuP4hCuTIi/QO7PDK07KJfp1d+izWPrzEJDcSqBa0OZQriA==", + "dev": true, + "dependencies": { + "glob": "^7.1.3" + }, + "bin": { + "rimraf": "./bin.js" + } + }, + "node_modules/flatted": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/flatted/-/flatted-2.0.2.tgz", + "integrity": "sha512-r5wGx7YeOwNWNlCA0wQ86zKyDLMQr+/RB8xy74M4hTphfmjlijTSSXGuH8rnvKZnfT9i+75zmd8jcKdMR4O6jA==", + "dev": true + }, + "node_modules/fn.name": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/fn.name/-/fn.name-1.1.0.tgz", + "integrity": "sha512-GRnmB5gPyJpAhTQdSZTSp9uaPSvl09KoYcMQtsB9rQoOmzs9dH6ffeccH+Z+cv6P68Hu5bC6JjRh4Ah/mHSNRw==" + }, + "node_modules/follow-redirects": { + "version": "1.13.0", + "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.13.0.tgz", + "integrity": "sha512-aq6gF1BEKje4a9i9+5jimNFIpq4Q1WiwBToeRK5NvZBd/TRsmW8BsJfOEGkr76TbOyPVD3OVDN910EcUNtRYEA==", + "funding": [ + { + "type": "individual", + "url": "https://github.com/sponsors/RubenVerborgh" + } + ], + "engines": { + "node": ">=4.0" + } + }, + "node_modules/forever-agent": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz", + "integrity": "sha1-+8cfDEGt6zf5bFd60e1C2P2sypE=", + "engines": { + "node": "*" + } + }, + "node_modules/form-data": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.3.3.tgz", + "integrity": "sha512-1lLKB2Mu3aGP1Q/2eCOx0fNbRMe7XdwktwOruhfqqd0rIJWwN4Dh+E3hrPSlDCXnSR7UtZ1N38rVXm+6+MEhJQ==", + "dependencies": { + "asynckit": "^0.4.0", + "combined-stream": "^1.0.6", + "mime-types": "^2.1.12" + }, + "engines": { + "node": ">= 0.12" + } + }, + "node_modules/formidable": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/formidable/-/formidable-1.2.2.tgz", + "integrity": "sha512-V8gLm+41I/8kguQ4/o1D3RIHRmhYFG4pnNyonvua+40rqcEmT4+V71yaZ3B457xbbgCsCfjSPi65u/W6vK1U5Q==", + "funding": "https://ko-fi.com/tunnckoCore/commissions" + }, + "node_modules/fresh": { + "version": "0.5.2", + "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz", + "integrity": "sha1-PYyt2Q2XZWn6g1qx+OSyOhBWBac=", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/fs-extra": { + "version": "9.0.1", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-9.0.1.tgz", + "integrity": "sha512-h2iAoN838FqAFJY2/qVpzFXy+EBxfVE220PalAqQLDVsFOHLJrZvut5puAbCdNv6WJk+B8ihI+k0c7JK5erwqQ==", + "dependencies": { + "at-least-node": "^1.0.0", + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^1.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/fs.realpath": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", + "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=" + }, + "node_modules/functional-red-black-tree": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz", + "integrity": "sha1-GwqzvVU7Kg1jmdKcDj6gslIHgyc=", + "dev": true + }, + "node_modules/getpass": { + "version": "0.1.7", + "resolved": "https://registry.npmjs.org/getpass/-/getpass-0.1.7.tgz", + "integrity": "sha1-Xv+OPmhNVprkyysSgmBOi6YhSfo=", + "dependencies": { + "assert-plus": "^1.0.0" + } + }, + "node_modules/glob": { + "version": "7.1.6", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.6.tgz", + "integrity": "sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA==", + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.0.4", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + }, + "engines": { + "node": "*" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/glob-parent": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-3.1.0.tgz", + "integrity": "sha1-nmr2KZ2NO9K9QEMIMr0RPfkGxa4=", + "dependencies": { + "is-glob": "^3.1.0", + "path-dirname": "^1.0.0" + } + }, + "node_modules/glob-stream": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/glob-stream/-/glob-stream-6.1.0.tgz", + "integrity": "sha1-cEXJlBOz65SIjYOrRtC0BMx73eQ=", + "dependencies": { + "extend": "^3.0.0", + "glob": "^7.1.1", + "glob-parent": "^3.1.0", + "is-negated-glob": "^1.0.0", + "ordered-read-streams": "^1.0.0", + "pumpify": "^1.3.5", + "readable-stream": "^2.1.5", + "remove-trailing-separator": "^1.0.1", + "to-absolute-glob": "^2.0.0", + "unique-stream": "^2.0.2" + }, + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/glob-stream/node_modules/isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=" + }, + "node_modules/glob-stream/node_modules/readable-stream": { + "version": "2.3.7", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", + "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", + "dependencies": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "node_modules/glob-stream/node_modules/string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "dependencies": { + "safe-buffer": "~5.1.0" + } + }, + "node_modules/globals": { + "version": "12.4.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-12.4.0.tgz", + "integrity": "sha512-BWICuzzDvDoH54NHKCseDanAhE3CeDorgDL5MT6LMXXj2WCnd9UC2szdk4AWLfjdgNBCXLUanXYcpBBKOSWGwg==", + "dev": true, + "funding": "https://github.com/sponsors/sindresorhus", + "dependencies": { + "type-fest": "^0.8.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/graceful-fs": { + "version": "4.2.4", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.4.tgz", + "integrity": "sha512-WjKPNJF79dtJAVniUlGGWHYGz2jWxT6VhN/4m1NdkbZ2nOsEF+cI1Edgql5zCRhs/VsQYRvrXctxktVXZUkixw==" + }, + "node_modules/handle-thing": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/handle-thing/-/handle-thing-2.0.0.tgz", + "integrity": "sha512-d4sze1JNC454Wdo2fkuyzCr6aHcbL6PGGuFAz0Li/NcOm1tCHGnWDRmJP85dh9IhQErTc2svWFEX5xHIOo//kQ==" + }, + "node_modules/har-schema": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/har-schema/-/har-schema-2.0.0.tgz", + "integrity": "sha1-qUwiJOvKwEeCoNkDVSHyRzW37JI=", + "engines": { + "node": ">=4" + } + }, + "node_modules/har-validator": { + "version": "5.1.3", + "resolved": "https://registry.npmjs.org/har-validator/-/har-validator-5.1.3.tgz", + "integrity": "sha512-sNvOCzEQNr/qrvJgc3UG/kD4QtlHycrzwS+6mfTrrSq97BvaYcPZZI1ZSqGSPR73Cxn4LKTD4PttRwfU7jWq5g==", + "deprecated": "this library is no longer supported", + "dependencies": { + "ajv": "^6.5.5", + "har-schema": "^2.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/help-me": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/help-me/-/help-me-1.1.0.tgz", + "integrity": "sha1-jy1QjQYAtKRW2i8IZVbn5cBWo8Y=", + "dependencies": { + "callback-stream": "^1.0.2", + "glob-stream": "^6.1.0", + "through2": "^2.0.1", + "xtend": "^4.0.0" + } + }, + "node_modules/hpack.js": { + "version": "2.1.6", + "resolved": "https://registry.npmjs.org/hpack.js/-/hpack.js-2.1.6.tgz", + "integrity": "sha1-h3dMCUnlE/QuhFdbPEVoH63ioLI=", + "dependencies": { + "inherits": "^2.0.1", + "obuf": "^1.0.0", + "readable-stream": "^2.0.1", + "wbuf": "^1.1.0" + } + }, + "node_modules/hpack.js/node_modules/isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=" + }, + "node_modules/hpack.js/node_modules/readable-stream": { + "version": "2.3.7", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", + "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", + "dependencies": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "node_modules/hpack.js/node_modules/string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "dependencies": { + "safe-buffer": "~5.1.0" + } + }, + "node_modules/htmlparser2": { + "version": "3.8.3", + "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-3.8.3.tgz", + "integrity": "sha1-mWwosZFRaovoZQGn15dX5ccMEGg=", + "dependencies": { + "domelementtype": "1", + "domhandler": "2.3", + "domutils": "1.5", + "entities": "1.0", + "readable-stream": "1.1" + } + }, + "node_modules/http-deceiver": { + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/http-deceiver/-/http-deceiver-1.2.7.tgz", + "integrity": "sha1-+nFolEq5pRnTN8sL7HKE3D5yPYc=" + }, + "node_modules/http-errors": { + "version": "1.6.3", + "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.6.3.tgz", + "integrity": "sha1-i1VoC7S+KDoLW/TqLjhYC+HZMg0=", + "dependencies": { + "depd": "~1.1.2", + "inherits": "2.0.3", + "setprototypeof": "1.1.0", + "statuses": ">= 1.4.0 < 2" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/http-errors/node_modules/inherits": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", + "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=" + }, + "node_modules/http-signature": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/http-signature/-/http-signature-1.2.0.tgz", + "integrity": "sha1-muzZJRFHcvPZW2WmCruPfBj7rOE=", + "dependencies": { + "assert-plus": "^1.0.0", + "jsprim": "^1.2.2", + "sshpk": "^1.7.0" + }, + "engines": { + "node": ">=0.8", + "npm": ">=1.3.7" + } + }, + "node_modules/ieee754": { + "version": "1.1.13", + "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.1.13.tgz", + "integrity": "sha512-4vf7I2LYV/HaWerSo3XmlMkp5eZ83i+/CDluXi/IGTs/O1sejBNhTtnxzmRZfvOUqj7lZjqHkeTvpgSFDlWZTg==" + }, + "node_modules/ignore": { + "version": "4.0.6", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-4.0.6.tgz", + "integrity": "sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg==", + "dev": true, + "engines": { + "node": ">= 4" + } + }, + "node_modules/import-fresh": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.2.1.tgz", + "integrity": "sha512-6e1q1cnWP2RXD9/keSkxHScg508CdXqXWgWBaETNhyuBFz+kUZlKboh+ISK+bU++DmbHimVBrOz/zzPe0sZ3sQ==", + "dev": true, + "dependencies": { + "parent-module": "^1.0.0", + "resolve-from": "^4.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/imurmurhash": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", + "integrity": "sha1-khi5srkoojixPcT7a21XbyMUU+o=", + "dev": true, + "engines": { + "node": ">=0.8.19" + } + }, + "node_modules/inflight": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", + "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", + "dependencies": { + "once": "^1.3.0", + "wrappy": "1" + } + }, + "node_modules/influx": { + "version": "5.6.3", + "resolved": "https://registry.npmjs.org/influx/-/influx-5.6.3.tgz", + "integrity": "sha512-j2biV776HXb2IbIcp2G24w50IqIWENDnKitm0Vj54vlpw9EfGzY7x7ndCRZSGzzm4fyDLSDQ+/cypZQpuDQxyA==" + }, + "node_modules/inherits": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" + }, + "node_modules/is-absolute": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-absolute/-/is-absolute-1.0.0.tgz", + "integrity": "sha512-dOWoqflvcydARa360Gvv18DZ/gRuHKi2NU/wU5X1ZFzdYfH29nkiNZsF3mp4OJ3H4yo9Mx8A/uAGNzpzPN3yBA==", + "dependencies": { + "is-relative": "^1.0.0", + "is-windows": "^1.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-arrayish": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.3.2.tgz", + "integrity": "sha512-eVRqCvVlZbuw3GrM63ovNSNAeA1K16kaR/LRY/92w0zxQ5/1YzwblUX652i4Xs9RwAGjW9d9y6X88t8OaAJfWQ==" + }, + "node_modules/is-extglob": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", + "integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-fullwidth-code-point": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", + "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/is-glob": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-3.1.0.tgz", + "integrity": "sha1-e6WuJCF4BKxwcHuWkiVnSGzD6Eo=", + "dependencies": { + "is-extglob": "^2.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-negated-glob": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-negated-glob/-/is-negated-glob-1.0.0.tgz", + "integrity": "sha1-aRC8pdqMleeEtXUbl2z1oQ/uNtI=", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-relative": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-relative/-/is-relative-1.0.0.tgz", + "integrity": "sha512-Kw/ReK0iqwKeu0MITLFuj0jbPAmEiOsIwyIXvvbfa6QfmN9pkD1M+8pdk7Rl/dTKbH34/XBFMbgD4iMJhLQbGA==", + "dependencies": { + "is-unc-path": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-stream": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.0.tgz", + "integrity": "sha512-XCoy+WlUr7d1+Z8GgSuXmpuUFC9fOhRXglJMx+dwLKTkL44Cjd4W1Z5P+BQZpr+cR93aGP4S/s7Ftw6Nd/kiEw==", + "engines": { + "node": ">=8" + } + }, + "node_modules/is-typedarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz", + "integrity": "sha1-5HnICFjfDBsR3dppQPlgEfzaSpo=" + }, + "node_modules/is-unc-path": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-unc-path/-/is-unc-path-1.0.0.tgz", + "integrity": "sha512-mrGpVd0fs7WWLfVsStvgF6iEJnbjDFZh9/emhRDcGWTduTfNHd9CHeUwH3gYIjdbwo4On6hunkztwOaAw0yllQ==", + "dependencies": { + "unc-path-regex": "^0.1.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-windows": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-windows/-/is-windows-1.0.2.tgz", + "integrity": "sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/isarray": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", + "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=" + }, + "node_modules/isexe": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", + "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=", + "dev": true + }, + "node_modules/isstream": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz", + "integrity": "sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo=" + }, + "node_modules/js-tokens": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", + "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", + "dev": true + }, + "node_modules/js-yaml": { + "version": "3.14.0", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.0.tgz", + "integrity": "sha512-/4IbIeHcD9VMHFqDR/gQ7EdZdLimOvW2DdcxFjdyyZ9NsbS+ccrXqVWDtab/lRl5AlUqmpBx8EhPaWR+OtY17A==", + "dependencies": { + "argparse": "^1.0.7", + "esprima": "^4.0.0" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" + } + }, + "node_modules/jsbn": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-0.1.1.tgz", + "integrity": "sha1-peZUwuWi3rXyAdls77yoDA7y9RM=" + }, + "node_modules/jshint": { + "version": "2.12.0", + "resolved": "https://registry.npmjs.org/jshint/-/jshint-2.12.0.tgz", + "integrity": "sha512-TwuuaUDmra0JMkuqvqy+WGo2xGHSNjv1BA1nTIgtH2K5z1jHuAEeAgp7laaR+hLRmajRjcrM71+vByBDanCyYA==", + "dependencies": { + "cli": "~1.0.0", + "console-browserify": "1.1.x", + "exit": "0.1.x", + "htmlparser2": "3.8.x", + "lodash": "~4.17.19", + "minimatch": "~3.0.2", + "shelljs": "0.3.x", + "strip-json-comments": "1.0.x" + }, + "bin": { + "jshint": "bin/jshint" + } + }, + "node_modules/json-buffer": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.1.tgz", + "integrity": "sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==" + }, + "node_modules/json-schema": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/json-schema/-/json-schema-0.2.3.tgz", + "integrity": "sha1-tIDIkuWaLwWVTOcnvT8qTogvnhM=" + }, + "node_modules/json-schema-ref-parser": { + "version": "7.1.4", + "resolved": "https://registry.npmjs.org/json-schema-ref-parser/-/json-schema-ref-parser-7.1.4.tgz", + "integrity": "sha512-AD7bvav0vak1/63w3jH8F7eHId/4E4EPdMAEZhGxtjktteUv9dnNB/cJy6nVnMyoTPBJnLwFK6tiQPSTeleCtQ==", + "dependencies": { + "call-me-maybe": "^1.0.1", + "js-yaml": "^3.13.1", + "ono": "^6.0.0" + } + }, + "node_modules/json-schema-traverse": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", + "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==" + }, + "node_modules/json-stable-stringify-without-jsonify": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz", + "integrity": "sha1-nbe1lJatPzz+8wp1FC0tkwrXJlE=" + }, + "node_modules/json-stringify-safe": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz", + "integrity": "sha1-Epai1Y/UXxmg9s4B1lcB4sc1tus=" + }, + "node_modules/json5": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/json5/-/json5-2.1.3.tgz", + "integrity": "sha512-KXPvOm8K9IJKFM0bmdn8QXh7udDh1g/giieX0NLCaMnb4hEiVFqnop2ImTXCc5e0/oHz3LTqmHGtExn5hfMkOA==", + "dependencies": { + "minimist": "^1.2.5" + }, + "bin": { + "json5": "lib/cli.js" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/jsonfile": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-6.0.1.tgz", + "integrity": "sha512-jR2b5v7d2vIOust+w3wtFKZIfpC2pnRmFAhAC/BuweZFQR8qZzxH1OyrQ10HmdVYiXWkYUqPVsz91cG7EL2FBg==", + "dependencies": { + "graceful-fs": "^4.1.6", + "universalify": "^1.0.0" + }, + "optionalDependencies": { + "graceful-fs": "^4.1.6" + } + }, + "node_modules/jsprim": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/jsprim/-/jsprim-1.4.1.tgz", + "integrity": "sha1-MT5mvB5cwG5Di8G3SZwuXFastqI=", + "engines": [ + "node >=0.6.0" + ], + "dependencies": { + "assert-plus": "1.0.0", + "extsprintf": "1.3.0", + "json-schema": "0.2.3", + "verror": "1.10.0" + } + }, + "node_modules/keyv": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/keyv/-/keyv-4.0.3.tgz", + "integrity": "sha512-zdGa2TOpSZPq5mU6iowDARnMBZgtCqJ11dJROFi6tg6kTn4nuUdU09lFyLFSaHrWqpIJ+EBq4E8/Dc0Vx5vLdA==", + "dependencies": { + "json-buffer": "3.0.1" + } + }, + "node_modules/keyv-file": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/keyv-file/-/keyv-file-0.2.0.tgz", + "integrity": "sha512-zUQ11eZRmilEUpV1gJSj8mBAHjyXpleQo1iCS0khb+GFRhiPfwavWgn4eDUKNlOyMZzmExnISl8HE1hNbim0gw==", + "dependencies": { + "debug": "^4.1.1", + "fs-extra": "^4.0.1", + "tslib": "^1.9.3" + } + }, + "node_modules/keyv-file/node_modules/fs-extra": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-4.0.3.tgz", + "integrity": "sha512-q6rbdDd1o2mAnQreO7YADIxf/Whx4AHBiRf6d+/cVT8h44ss+lHgxf1FemcqDnQt9X3ct4McHr+JMGlYSsK7Cg==", + "dependencies": { + "graceful-fs": "^4.1.2", + "jsonfile": "^4.0.0", + "universalify": "^0.1.0" + } + }, + "node_modules/keyv-file/node_modules/jsonfile": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz", + "integrity": "sha1-h3Gq4HmbZAdrdmQPygWPnBDjPss=", + "dependencies": { + "graceful-fs": "^4.1.6" + }, + "optionalDependencies": { + "graceful-fs": "^4.1.6" + } + }, + "node_modules/keyv-file/node_modules/universalify": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz", + "integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==", + "engines": { + "node": ">= 4.0.0" + } + }, + "node_modules/kuler": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/kuler/-/kuler-2.0.0.tgz", + "integrity": "sha512-Xq9nH7KlWZmXAtodXDDRE7vs6DU1gTU8zYDHDiWLSip45Egwq3plLHzPn27NgvzL2r1LMPC1vdqh98sQxtqj4A==" + }, + "node_modules/later": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/later/-/later-1.2.0.tgz", + "integrity": "sha1-8s9sTdeVbdL1IK3wMpg26YdrrQ8=", + "deprecated": "Please upgrade to the maintained and new drop-in replacement @breejs/later at https://github.com/breejs/later 🚀 Thanks and happy hacking! 🚀 @niftylettuce" + }, + "node_modules/leven": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/leven/-/leven-2.1.0.tgz", + "integrity": "sha1-wuep93IJTe6dNCAq6KzORoeHVYA=", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/levn": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz", + "integrity": "sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==", + "dev": true, + "dependencies": { + "prelude-ls": "^1.2.1", + "type-check": "~0.4.0" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/lodash": { + "version": "4.17.19", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.19.tgz", + "integrity": "sha512-JNvd8XER9GQX0v2qJgsaN/mzFCNA5BRe/j8JN9d+tWyGLSodKQHKFicdwNYzWwI3wjRnaKPsGj1XkBjx/F96DQ==" + }, + "node_modules/lodash.get": { + "version": "4.4.2", + "resolved": "https://registry.npmjs.org/lodash.get/-/lodash.get-4.4.2.tgz", + "integrity": "sha1-LRd/ZS+jHpObRDjVNBSZ36OCXpk=" + }, + "node_modules/lodash.isequal": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/lodash.isequal/-/lodash.isequal-4.5.0.tgz", + "integrity": "sha1-QVxEePK8wwEgwizhDtMib30+GOA=" + }, + "node_modules/logform": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/logform/-/logform-2.2.0.tgz", + "integrity": "sha512-N0qPlqfypFx7UHNn4B3lzS/b0uLqt2hmuoa+PpuXNYgozdJYAyauF5Ky0BWVjrxDlMWiT3qN4zPq3vVAfZy7Yg==", + "dependencies": { + "colors": "^1.2.1", + "fast-safe-stringify": "^2.0.4", + "fecha": "^4.2.0", + "ms": "^2.1.1", + "triple-beam": "^1.3.0" + } + }, + "node_modules/lru-cache": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", + "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", + "dependencies": { + "yallist": "^3.0.2" + } + }, + "node_modules/mime": { + "version": "2.4.4", + "resolved": "https://registry.npmjs.org/mime/-/mime-2.4.4.tgz", + "integrity": "sha512-LRxmNwziLPT828z+4YkNzloCFC2YM4wrB99k+AV5ZbEyfGNWfG8SO1FUXLmLDBSo89NrJZ4DIWeLjy1CHGhMGA==", + "bin": { + "mime": "cli.js" + }, + "engines": { + "node": ">=4.0.0" + } + }, + "node_modules/mime-db": { + "version": "1.43.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.43.0.tgz", + "integrity": "sha512-+5dsGEEovYbT8UY9yD7eE4XTc4UwJ1jBYlgaQQF38ENsKR3wj/8q8RFZrF9WIZpB2V1ArTVFUva8sAul1NzRzQ==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/mime-types": { + "version": "2.1.26", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.26.tgz", + "integrity": "sha512-01paPWYgLrkqAyrlDorC1uDwl2p3qZT7yl806vW7DvDoxwXi46jsjFbg+WdwotBIk6/MbEhO/dh5aZ5sNj/dWQ==", + "dependencies": { + "mime-db": "1.43.0" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/minimalistic-assert": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz", + "integrity": "sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==" + }, + "node_modules/minimatch": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", + "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/minimist": { + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz", + "integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==" + }, + "node_modules/mixme": { + "version": "0.3.5", + "resolved": "https://registry.npmjs.org/mixme/-/mixme-0.3.5.tgz", + "integrity": "sha512-SyV9uPETRig5ZmYev0ANfiGeB+g6N2EnqqEfBbCGmmJ6MgZ3E4qv5aPbnHVdZ60KAHHXV+T3sXopdrnIXQdmjQ==", + "engines": { + "node": ">= 8.0.0" + } + }, + "node_modules/mkdirp": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", + "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==", + "bin": { + "mkdirp": "bin/cmd.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/moment": { + "version": "2.29.1", + "resolved": "https://registry.npmjs.org/moment/-/moment-2.29.1.tgz", + "integrity": "sha512-kHmoybcPV8Sqy59DwNDY3Jefr64lK/by/da0ViFcuA4DH0vQg5Q6Ze5VimxkfQNSC+Mls/Kx53s7TjP1RhFEDQ==", + "engines": { + "node": "*" + } + }, + "node_modules/moment-precise-range-plugin": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/moment-precise-range-plugin/-/moment-precise-range-plugin-1.3.0.tgz", + "integrity": "sha1-YKwHX9/RRon20QKvdR0XGoC0q2A=", + "peerDependencies": { + "moment": ">=2.9.0" + } + }, + "node_modules/moment-timezone": { + "version": "0.5.31", + "resolved": "https://registry.npmjs.org/moment-timezone/-/moment-timezone-0.5.31.tgz", + "integrity": "sha512-+GgHNg8xRhMXfEbv81iDtrVeTcWt0kWmTEY1XQK14dICTXnWJnT0dxdlPspwqF3keKMVPXwayEsk1DI0AA/jdA==", + "dependencies": { + "moment": ">= 2.9.0" + }, + "engines": { + "node": "*" + } + }, + "node_modules/mqtt": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/mqtt/-/mqtt-4.2.1.tgz", + "integrity": "sha512-Iv893r+jWlo5GkNcPOfCGwW8M49IixwHiKLFFYTociEymSibUVCORVEjPXWPGzSxhn7BdlUeHicbRmWiv0Crkg==", + "dependencies": { + "base64-js": "^1.3.0", + "commist": "^1.0.0", + "concat-stream": "^1.6.2", + "debug": "^4.1.1", + "end-of-stream": "^1.4.1", + "es6-map": "^0.1.5", + "help-me": "^1.0.1", + "inherits": "^2.0.3", + "minimist": "^1.2.5", + "mqtt-packet": "^6.3.2", + "pump": "^3.0.0", + "readable-stream": "^2.3.6", + "reinterval": "^1.1.0", + "split2": "^3.1.0", + "ws": "^7.3.1", + "xtend": "^4.0.1" + }, + "bin": { + "mqtt": "bin/mqtt.js", + "mqtt_pub": "bin/pub.js", + "mqtt_sub": "bin/sub.js" + }, + "engines": { + "node": ">=4.0.0" + } + }, + "node_modules/mqtt-packet": { + "version": "6.6.0", + "resolved": "https://registry.npmjs.org/mqtt-packet/-/mqtt-packet-6.6.0.tgz", + "integrity": "sha512-LvghnKMFC70hKWMVykmhJarlO5e7lT3t9s9A2qPCUx+lazL3Mq55U+eCV0eLi7/nRRQYvEUWo/2tTo89EjnCJQ==", + "dependencies": { + "bl": "^4.0.2", + "debug": "^4.1.1", + "process-nextick-args": "^2.0.1" + } + }, + "node_modules/mqtt/node_modules/isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=" + }, + "node_modules/mqtt/node_modules/readable-stream": { + "version": "2.3.7", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", + "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", + "dependencies": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "node_modules/mqtt/node_modules/string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "dependencies": { + "safe-buffer": "~5.1.0" + } + }, + "node_modules/ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" + }, + "node_modules/ms-teams-webhook": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/ms-teams-webhook/-/ms-teams-webhook-1.0.3.tgz", + "integrity": "sha512-6Lt9Mh4Mb6PoOmTMV+/JsocbylacwGbK+WlwNz0UMBtr2Bax3FDL7Cj/SVt0cOHt5y0OWwE33Erd7CCubQcz0w==", + "dependencies": { + "axios": "^0.19.0" + } + }, + "node_modules/ms-teams-webhook/node_modules/axios": { + "version": "0.19.2", + "resolved": "https://registry.npmjs.org/axios/-/axios-0.19.2.tgz", + "integrity": "sha512-fjgm5MvRHLhx+osE2xoekY70AhARk3a6hkN+3Io1jc00jtquGvxYlKlsFUhmUET0V5te6CcZI7lcv2Ym61mjHA==", + "dependencies": { + "follow-redirects": "1.5.10" + } + }, + "node_modules/ms-teams-webhook/node_modules/debug": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", + "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/ms-teams-webhook/node_modules/follow-redirects": { + "version": "1.5.10", + "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.5.10.tgz", + "integrity": "sha512-0V5l4Cizzvqt5D44aTXbFZz+FtyXV1vrDN6qrelxtfYQKW0KO0W2T/hkE8xvGa/540LkZlkaUjO4ailYTFtHVQ==", + "dependencies": { + "debug": "=3.1.0" + }, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/ms-teams-webhook/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" + }, + "node_modules/mv": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/mv/-/mv-2.1.1.tgz", + "integrity": "sha1-rmzg1vbV4KT32JN5jQPB6pVZtqI=", + "optional": true, + "dependencies": { + "mkdirp": "~0.5.1", + "ncp": "~2.0.0", + "rimraf": "~2.4.0" + }, + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/mv/node_modules/mkdirp": { + "version": "0.5.5", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.5.tgz", + "integrity": "sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ==", + "optional": true, + "dependencies": { + "minimist": "^1.2.5" + }, + "bin": { + "mkdirp": "bin/cmd.js" + } + }, + "node_modules/nan": { + "version": "2.14.0", + "resolved": "https://registry.npmjs.org/nan/-/nan-2.14.0.tgz", + "integrity": "sha512-INOFj37C7k3AfaNTtX8RhsTw7qRy7eLET14cROi9+5HAVbbHuIWUHEauBv5qT4Av2tWasiTY1Jw6puUNqRJXQg==" + }, + "node_modules/natural-compare": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", + "integrity": "sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc=", + "dev": true + }, + "node_modules/ncp": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ncp/-/ncp-2.0.0.tgz", + "integrity": "sha1-GVoh1sRuNh0vsSgbo4uR6d9727M=", + "optional": true, + "bin": { + "ncp": "./bin/ncp" + } + }, + "node_modules/negotiator": { + "version": "0.6.2", + "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.2.tgz", + "integrity": "sha512-hZXc7K2e+PgeI1eDBe/10Ard4ekbfrrqG8Ep+8Jmf4JID2bNg7NvCPOZN+kfF574pFQI7mum2AUqDidoKqcTOw==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/next-tick": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/next-tick/-/next-tick-1.0.0.tgz", + "integrity": "sha1-yobR/ogoFpsBICCOPchCS524NCw=" + }, + "node_modules/node-slack": { + "version": "0.0.7", + "resolved": "https://registry.npmjs.org/node-slack/-/node-slack-0.0.7.tgz", + "integrity": "sha1-KgItO1tH6qppP7Fn/L+8rXaXrOc=", + "dependencies": { + "deferred": "0.7.1", + "request": "~2.x" + } + }, + "node_modules/oauth-sign": { + "version": "0.9.0", + "resolved": "https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.9.0.tgz", + "integrity": "sha512-fexhUFFPTGV8ybAtSIGbV6gOkSv8UtRbDBnAyLQw4QPKkgNlsH2ByPGtMUqdWkos6YCRmAqViwgZrJc/mRDzZQ==", + "engines": { + "node": "*" + } + }, + "node_modules/object-hash": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/object-hash/-/object-hash-2.0.3.tgz", + "integrity": "sha512-JPKn0GMu+Fa3zt3Bmr66JhokJU5BaNBIh4ZeTlaCBzrBsOeXzwcKKAK1tbLiPKgvwmPXsDvvLHoWh5Bm7ofIYg==", + "engines": { + "node": ">= 6" + } + }, + "node_modules/obuf": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/obuf/-/obuf-1.1.2.tgz", + "integrity": "sha512-PX1wu0AmAdPqOL1mWhqmlOd8kOIZQwGZw6rh7uby9fTc5lhaOWFLX3I6R1hrF9k3zUY40e6igsLGkDXK92LJNg==" + }, + "node_modules/on-finished": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.3.0.tgz", + "integrity": "sha1-IPEzZIGwg811M3mSoWlxqi2QaUc=", + "dependencies": { + "ee-first": "1.1.1" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/once": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", + "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", + "dependencies": { + "wrappy": "1" + } + }, + "node_modules/one-time": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/one-time/-/one-time-1.0.0.tgz", + "integrity": "sha512-5DXOiRKwuSEcQ/l0kGCF6Q3jcADFv5tSmRaJck/OqkVFcOzutB134KRSfF0xDrL39MNnqxbHBbUUcjZIhTgb2g==", + "dependencies": { + "fn.name": "1.x.x" + } + }, + "node_modules/ono": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/ono/-/ono-6.0.1.tgz", + "integrity": "sha512-5rdYW/106kHqLeG22GE2MHKq+FlsxMERZev9DCzQX1zwkxnFwBivSn5i17a5O/rDmOJOdf4Wyt80UZljzx9+DA==" + }, + "node_modules/openapi-schemas": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/openapi-schemas/-/openapi-schemas-1.0.3.tgz", + "integrity": "sha512-KtMWcK2VtOS+nD8RKSIyScJsj8JrmVWcIX7Kjx4xEHijFYuvMTDON8WfeKOgeSb4uNG6UsqLj5Na7nKbSav9RQ==", + "engines": { + "node": ">=8" + } + }, + "node_modules/openapi-types": { + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/openapi-types/-/openapi-types-1.3.5.tgz", + "integrity": "sha512-11oi4zYorsgvg5yBarZplAqbpev5HkuVNPlZaPTknPDzAynq+lnJdXAmruGWP0s+dNYZS7bjM+xrTpJw7184Fg==" + }, + "node_modules/optionator": { + "version": "0.9.1", + "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.1.tgz", + "integrity": "sha512-74RlY5FCnhq4jRxVUPKDaRwrVNXMqsGsiW6AJw4XK8hmtm10wC0ypZBLw5IIp85NZMr91+qd1RvvENwg7jjRFw==", + "dev": true, + "dependencies": { + "deep-is": "^0.1.3", + "fast-levenshtein": "^2.0.6", + "levn": "^0.4.1", + "prelude-ls": "^1.2.1", + "type-check": "^0.4.0", + "word-wrap": "^1.2.3" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/ordered-read-streams": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/ordered-read-streams/-/ordered-read-streams-1.0.1.tgz", + "integrity": "sha1-d8DLN8QVJdZBZtmQ/61+xqDhNj4=", + "dependencies": { + "readable-stream": "^2.0.1" + } + }, + "node_modules/ordered-read-streams/node_modules/isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=" + }, + "node_modules/ordered-read-streams/node_modules/readable-stream": { + "version": "2.3.7", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", + "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", + "dependencies": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "node_modules/ordered-read-streams/node_modules/string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "dependencies": { + "safe-buffer": "~5.1.0" + } + }, + "node_modules/parent-module": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", + "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==", + "dev": true, + "dependencies": { + "callsites": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/path-dirname": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/path-dirname/-/path-dirname-1.0.2.tgz", + "integrity": "sha1-zDPSTVJeCZpTiMAzbG4yuRYGCeA=" + }, + "node_modules/path-is-absolute": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", + "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/path-key": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", + "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/performance-now": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz", + "integrity": "sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns=" + }, + "node_modules/pidusage": { + "version": "2.0.18", + "resolved": "https://registry.npmjs.org/pidusage/-/pidusage-2.0.18.tgz", + "integrity": "sha512-Y/VfKfh3poHjMEINxU+gJTeVOBjiThQeFAmzR7z56HSNiMx+etl+yBhk42nRPciPYt/VZl8DQLVXNC6P5vH11A==", + "dependencies": { + "safe-buffer": "^5.1.2" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/prelude-ls": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz", + "integrity": "sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==", + "dev": true, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/process-nextick-args": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz", + "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==" + }, + "node_modules/progress": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/progress/-/progress-2.0.3.tgz", + "integrity": "sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA==", + "dev": true, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/promise": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/promise/-/promise-8.1.0.tgz", + "integrity": "sha512-W04AqnILOL/sPRXziNicCjSNRruLAuIHEOVBazepu0545DDNGYHz7ar9ZgZ1fMU8/MA4mVxp5rkBWRi6OXIy3Q==", + "dependencies": { + "asap": "~2.0.6" + } + }, + "node_modules/psl": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/psl/-/psl-1.7.0.tgz", + "integrity": "sha512-5NsSEDv8zY70ScRnOTn7bK7eanl2MvFrOrS/R6x+dBt5g1ghnj9Zv90kO8GwT8gxcu2ANyFprnFYB85IogIJOQ==" + }, + "node_modules/pump": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz", + "integrity": "sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==", + "dependencies": { + "end-of-stream": "^1.1.0", + "once": "^1.3.1" + } + }, + "node_modules/pumpify": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/pumpify/-/pumpify-1.5.1.tgz", + "integrity": "sha512-oClZI37HvuUJJxSKKrC17bZ9Cu0ZYhEAGPsPUy9KlMUmv9dKX2o77RUmq7f3XjIxbwyGwYzbzQ1L2Ks8sIradQ==", + "dependencies": { + "duplexify": "^3.6.0", + "inherits": "^2.0.3", + "pump": "^2.0.0" + } + }, + "node_modules/pumpify/node_modules/pump": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/pump/-/pump-2.0.1.tgz", + "integrity": "sha512-ruPMNRkN3MHP1cWJc9OWr+T/xDP0jhXYCLfJcBuX54hhfIBnaQmAUMfDcG4DM5UMWByBbJY69QSphm3jtDKIkA==", + "dependencies": { + "end-of-stream": "^1.1.0", + "once": "^1.3.1" + } + }, + "node_modules/punycode": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", + "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==", + "engines": { + "node": ">=6" + } + }, + "node_modules/qs": { + "version": "6.5.2", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.2.tgz", + "integrity": "sha512-N5ZAX4/LxJmF+7wN74pUD6qAh9/wnvdQcjq9TZjevvXzSUo7bfmw91saqMjzGS2xq91/odN2dW/WOl7qQHNDGA==", + "engines": { + "node": ">=0.6" + } + }, + "node_modules/range-parser": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.1.tgz", + "integrity": "sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/readable-stream": { + "version": "1.1.14", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.1.14.tgz", + "integrity": "sha1-fPTFTvZI44EwhMY23SB54WbAgdk=", + "dependencies": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.1", + "isarray": "0.0.1", + "string_decoder": "~0.10.x" + } + }, + "node_modules/regexpp": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/regexpp/-/regexpp-3.1.0.tgz", + "integrity": "sha512-ZOIzd8yVsQQA7j8GCSlPGXwg5PfmA1mrq0JP4nGhh54LaKN3xdai/vHUDu74pKwV8OxseMS65u2NImosQcSD0Q==", + "dev": true, + "funding": "https://github.com/sponsors/mysticatea", + "engines": { + "node": ">=8" + } + }, + "node_modules/reinterval": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/reinterval/-/reinterval-1.1.0.tgz", + "integrity": "sha1-M2Hs+jymwYKDOA3Qu5VG85D17Oc=" + }, + "node_modules/remove-trailing-separator": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz", + "integrity": "sha1-wkvOKig62tW8P1jg1IJJuSN52O8=" + }, + "node_modules/request": { + "version": "2.88.2", + "resolved": "https://registry.npmjs.org/request/-/request-2.88.2.tgz", + "integrity": "sha512-MsvtOrfG9ZcrOwAW+Qi+F6HbD0CWXEh9ou77uOb7FM2WPhwT7smM833PzanhJLsgXjN89Ir6V2PczXNnMpwKhw==", + "deprecated": "request has been deprecated, see https://github.com/request/request/issues/3142", + "dependencies": { + "aws-sign2": "~0.7.0", + "aws4": "^1.8.0", + "caseless": "~0.12.0", + "combined-stream": "~1.0.6", + "extend": "~3.0.2", + "forever-agent": "~0.6.1", + "form-data": "~2.3.2", + "har-validator": "~5.1.3", + "http-signature": "~1.2.0", + "is-typedarray": "~1.0.0", + "isstream": "~0.1.2", + "json-stringify-safe": "~5.0.1", + "mime-types": "~2.1.19", + "oauth-sign": "~0.9.0", + "performance-now": "^2.1.0", + "qs": "~6.5.2", + "safe-buffer": "^5.1.2", + "tough-cookie": "~2.5.0", + "tunnel-agent": "^0.6.0", + "uuid": "^3.3.2" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/request/node_modules/uuid": { + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.4.0.tgz", + "integrity": "sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==", + "bin": { + "uuid": "./bin/uuid" + } + }, + "node_modules/resolve-from": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", + "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/restify": { + "version": "8.5.1", + "resolved": "https://registry.npmjs.org/restify/-/restify-8.5.1.tgz", + "integrity": "sha512-g+xciouvSDg2vmCZuCinztt2mvQynCfnGIE1y8vMjfcUrjBo4AP8DJ9RNheu0mdGpiI0cMoCHYA/GdZ3TEW+DA==", + "dependencies": { + "assert-plus": "^1.0.0", + "bunyan": "^1.8.12", + "csv": "^5.1.1", + "dtrace-provider": "^0.8.1", + "escape-regexp-component": "^1.0.2", + "ewma": "^2.0.1", + "find-my-way": "^2.0.1", + "formidable": "^1.2.1", + "http-signature": "^1.2.0", + "lodash": "^4.17.11", + "lru-cache": "^5.1.1", + "mime": "^2.4.3", + "negotiator": "^0.6.2", + "once": "^1.4.0", + "pidusage": "^2.0.17", + "qs": "^6.7.0", + "restify-errors": "^8.0.2", + "semver": "^6.1.1", + "send": "^0.16.2", + "spdy": "^4.0.0", + "uuid": "^3.3.2", + "vasync": "^2.2.0" + }, + "bin": { + "report-latency": "./bin/report-latency" + }, + "engines": { + "node": ">=8.3.0" + }, + "optionalDependencies": { + "dtrace-provider": "^0.8.1" + } + }, + "node_modules/restify-cors-middleware": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/restify-cors-middleware/-/restify-cors-middleware-1.1.1.tgz", + "integrity": "sha1-BmiFAvoIuMYngxA4RMh9z8MNzz4=", + "dependencies": { + "assert-plus": "^1.0.0" + }, + "peerDependencies": { + "restify": "2.6.x - 7.x.x" + } + }, + "node_modules/restify-errors": { + "version": "8.0.2", + "resolved": "https://registry.npmjs.org/restify-errors/-/restify-errors-8.0.2.tgz", + "integrity": "sha512-UsXUVQo7M26xoQzeUcZQ0+H8L2t9DGzrXcAgR3WB/1vnbl+UdI4tZ1PqYsN+sS5WnqHKZ0Xy9w0CKf83bbrwYA==", + "dependencies": { + "@netflix/nerror": "^1.0.0", + "assert-plus": "^1.0.0", + "lodash": "^4.17.15", + "safe-json-stringify": "^1.0.4" + }, + "optionalDependencies": { + "safe-json-stringify": "^1.0.4" + } + }, + "node_modules/restify-swagger-jsdoc": { + "version": "3.2.4", + "resolved": "https://registry.npmjs.org/restify-swagger-jsdoc/-/restify-swagger-jsdoc-3.2.4.tgz", + "integrity": "sha512-w7vtlAqBYXySpaWJ2/4pl+YeVOXBP1ow0ZAgikIsWsRHMHi+sphyugHucB3SWBSg7AhXln68M/EgOaHaL7vVsA==", + "dependencies": { + "mime-types": "^2.1.27", + "restify-errors": "^6.1.1", + "swagger-jsdoc": "^3.7.0", + "swagger-ui-dist": "^3.28.0" + }, + "peerDependencies": { + "restify": ">=7" + } + }, + "node_modules/restify-swagger-jsdoc/node_modules/mime-db": { + "version": "1.44.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.44.0.tgz", + "integrity": "sha512-/NOTfLrsPBVeH7YtFPgsVWveuL+4SjjYxaQ1xtM1KMFj7HdxlBlxeyNLzhyJVx7r4rZGJAZ/6lkKCitSc/Nmpg==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/restify-swagger-jsdoc/node_modules/mime-types": { + "version": "2.1.27", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.27.tgz", + "integrity": "sha512-JIhqnCasI9yD+SsmkquHBxTSEuZdQX5BuQnS2Vc7puQQQ+8yiP5AY5uWhpdv4YL4VM5c6iliiYWPgJ/nJQLp7w==", + "dependencies": { + "mime-db": "1.44.0" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/restify-swagger-jsdoc/node_modules/restify-errors": { + "version": "6.1.1", + "resolved": "https://registry.npmjs.org/restify-errors/-/restify-errors-6.1.1.tgz", + "integrity": "sha512-QSwjp1b0pHB8QQQwqaPJu+VroGHAGX+HeHqz50awIb8334SAENCKeCI1VAhN099n4h0UVNupJ99ozx0pkHdqew==", + "dependencies": { + "assert-plus": "^1.0.0", + "lodash": "^4.17.4", + "safe-json-stringify": "^1.0.4", + "verror": "^1.10.0" + }, + "optionalDependencies": { + "safe-json-stringify": "^1.0.4" + } + }, + "node_modules/restify/node_modules/qs": { + "version": "6.9.1", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.9.1.tgz", + "integrity": "sha512-Cxm7/SS/y/Z3MHWSxXb8lIFqgqBowP5JMlTUFyJN88y0SGQhVmZnqFK/PeuMX9LzUyWsqqhNxIyg0jlzq946yA==", + "engines": { + "node": ">=0.6" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/restify/node_modules/uuid": { + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.4.0.tgz", + "integrity": "sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==", + "bin": { + "uuid": "./bin/uuid" + } + }, + "node_modules/ret": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/ret/-/ret-0.2.2.tgz", + "integrity": "sha512-M0b3YWQs7R3Z917WRQy1HHA7Ba7D8hvZg6UE5mLykJxQVE2ju0IXbGlaHPPlkY+WN7wFP+wUMXmBFA0aV6vYGQ==", + "engines": { + "node": ">=4" + } + }, + "node_modules/rimraf": { + "version": "2.4.5", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.4.5.tgz", + "integrity": "sha1-7nEM5dk6j9uFb7Xqj/Di11k0sto=", + "optional": true, + "dependencies": { + "glob": "^6.0.1" + }, + "bin": { + "rimraf": "./bin.js" + } + }, + "node_modules/rimraf/node_modules/glob": { + "version": "6.0.4", + "resolved": "https://registry.npmjs.org/glob/-/glob-6.0.4.tgz", + "integrity": "sha1-DwiGD2oVUSey+t1PnOJLGqtuTSI=", + "optional": true, + "dependencies": { + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "2 || 3", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + }, + "engines": { + "node": "*" + } + }, + "node_modules/safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" + }, + "node_modules/safe-json-stringify": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/safe-json-stringify/-/safe-json-stringify-1.2.0.tgz", + "integrity": "sha512-gH8eh2nZudPQO6TytOvbxnuhYBOvDBBLW52tz5q6X58lJcd/tkmqFR+5Z9adS8aJtURSXWThWy/xJtJwixErvg==", + "optional": true + }, + "node_modules/safe-regex2": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/safe-regex2/-/safe-regex2-2.0.0.tgz", + "integrity": "sha512-PaUSFsUaNNuKwkBijoAPHAK6/eM6VirvyPWlZ7BAQy4D+hCvh4B6lIG+nPdhbFfIbP+gTGBcrdsOaUs0F+ZBOQ==", + "dependencies": { + "ret": "~0.2.0" + } + }, + "node_modules/safer-buffer": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", + "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==" + }, + "node_modules/select-hose": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/select-hose/-/select-hose-2.0.0.tgz", + "integrity": "sha1-Yl2GWPhlr0Psliv8N2o3NZpJlMo=" + }, + "node_modules/semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "bin": { + "semver": "./bin/semver.js" + } + }, + "node_modules/semver-store": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/semver-store/-/semver-store-0.3.0.tgz", + "integrity": "sha512-TcZvGMMy9vodEFSse30lWinkj+JgOBvPn8wRItpQRSayhc+4ssDs335uklkfvQQJgL/WvmHLVj4Ycv2s7QCQMg==" + }, + "node_modules/send": { + "version": "0.16.2", + "resolved": "https://registry.npmjs.org/send/-/send-0.16.2.tgz", + "integrity": "sha512-E64YFPUssFHEFBvpbbjr44NCLtI1AohxQ8ZSiJjQLskAdKuriYEP6VyGEsRDH8ScozGpkaX1BGvhanqCwkcEZw==", + "dependencies": { + "debug": "2.6.9", + "depd": "~1.1.2", + "destroy": "~1.0.4", + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "etag": "~1.8.1", + "fresh": "0.5.2", + "http-errors": "~1.6.2", + "mime": "1.4.1", + "ms": "2.0.0", + "on-finished": "~2.3.0", + "range-parser": "~1.2.0", + "statuses": "~1.4.0" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/send/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/send/node_modules/mime": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/mime/-/mime-1.4.1.tgz", + "integrity": "sha512-KI1+qOZu5DcW6wayYHSzR/tXKCDC5Om4s1z2QJjDULzLcmf3DvzS7oluY4HCTrc+9FiKmWUgeNLg7W3uIQvxtQ==", + "bin": { + "mime": "cli.js" + } + }, + "node_modules/send/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" + }, + "node_modules/serializeapp": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/serializeapp/-/serializeapp-3.0.0.tgz", + "integrity": "sha1-VVepaTWOXasrousxSM3b/uFFPVc=" + }, + "node_modules/setprototypeof": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.0.tgz", + "integrity": "sha512-BvE/TwpZX4FXExxOxZyRGQQv651MSwmWKZGqvmPcRIjDqWub67kTKuIMx43cZZrS/cBBzwBcNDWoFxt2XEFIpQ==" + }, + "node_modules/shebang-command": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", + "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", + "dev": true, + "dependencies": { + "shebang-regex": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/shebang-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", + "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/shelljs": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/shelljs/-/shelljs-0.3.0.tgz", + "integrity": "sha1-NZbmMHp4FUT1kfN9phg2DzHbV7E=", + "bin": { + "shjs": "./bin/shjs" + }, + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/simple-swizzle": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/simple-swizzle/-/simple-swizzle-0.2.2.tgz", + "integrity": "sha1-pNprY1/8zMoz9w0Xy5JZLeleVXo=", + "dependencies": { + "is-arrayish": "^0.3.1" + } + }, + "node_modules/slice-ansi": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-2.1.0.tgz", + "integrity": "sha512-Qu+VC3EwYLldKa1fCxuuvULvSJOKEgk9pi8dZeCVK7TqBfUNTH4sFkk4joj8afVSfAYgJoSOetjx9QWOJ5mYoQ==", + "dev": true, + "dependencies": { + "ansi-styles": "^3.2.0", + "astral-regex": "^1.0.0", + "is-fullwidth-code-point": "^2.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/spdy": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/spdy/-/spdy-4.0.1.tgz", + "integrity": "sha512-HeZS3PBdMA+sZSu0qwpCxl3DeALD5ASx8pAX0jZdKXSpPWbQ6SYGnlg3BBmYLx5LtiZrmkAZfErCm2oECBcioA==", + "dependencies": { + "debug": "^4.1.0", + "handle-thing": "^2.0.0", + "http-deceiver": "^1.2.7", + "select-hose": "^2.0.0", + "spdy-transport": "^3.0.0" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/spdy-transport": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/spdy-transport/-/spdy-transport-3.0.0.tgz", + "integrity": "sha512-hsLVFE5SjA6TCisWeJXFKniGGOpBgMLmerfO2aCyCU5s7nJ/rpAepqmFifv/GCbSbueEeAJJnmSQ2rKC/g8Fcw==", + "dependencies": { + "debug": "^4.1.0", + "detect-node": "^2.0.4", + "hpack.js": "^2.1.6", + "obuf": "^1.1.2", + "readable-stream": "^3.0.6", + "wbuf": "^1.7.3" + } + }, + "node_modules/spdy-transport/node_modules/readable-stream": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", + "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", + "dependencies": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/spdy-transport/node_modules/safe-buffer": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.0.tgz", + "integrity": "sha512-fZEwUGbVl7kouZs1jCdMLdt95hdIv0ZeHg6L7qPeciMZhZ+/gdesW4wgTARkrFWEpspjEATAzUGPG8N2jJiwbg==" + }, + "node_modules/spdy-transport/node_modules/string_decoder": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", + "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", + "dependencies": { + "safe-buffer": "~5.2.0" + } + }, + "node_modules/split2": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/split2/-/split2-3.2.2.tgz", + "integrity": "sha512-9NThjpgZnifTkJpzTZ7Eue85S49QwpNhZTq6GRJwObb6jnLFNGB7Qm73V5HewTROPyxD0C29xqmaI68bQtV+hg==", + "dependencies": { + "readable-stream": "^3.0.0" + } + }, + "node_modules/split2/node_modules/readable-stream": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", + "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", + "dependencies": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/split2/node_modules/safe-buffer": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", + "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] + }, + "node_modules/split2/node_modules/string_decoder": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", + "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", + "dependencies": { + "safe-buffer": "~5.2.0" + } + }, + "node_modules/sprintf-js": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", + "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=" + }, + "node_modules/sshpk": { + "version": "1.16.1", + "resolved": "https://registry.npmjs.org/sshpk/-/sshpk-1.16.1.tgz", + "integrity": "sha512-HXXqVUq7+pcKeLqqZj6mHFUMvXtOJt1uoUx09pFW6011inTMxqI8BA8PM95myrIyyKwdnzjdFjLiE6KBPVtJIg==", + "dependencies": { + "asn1": "~0.2.3", + "assert-plus": "^1.0.0", + "bcrypt-pbkdf": "^1.0.0", + "dashdash": "^1.12.0", + "ecc-jsbn": "~0.1.1", + "getpass": "^0.1.1", + "jsbn": "~0.1.0", + "safer-buffer": "^2.0.2", + "tweetnacl": "~0.14.0" + }, + "bin": { + "sshpk-conv": "bin/sshpk-conv", + "sshpk-sign": "bin/sshpk-sign", + "sshpk-verify": "bin/sshpk-verify" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/stack-trace": { + "version": "0.0.10", + "resolved": "https://registry.npmjs.org/stack-trace/-/stack-trace-0.0.10.tgz", + "integrity": "sha1-VHxws0fo0ytOEI6hoqFZ5f3eGcA=", + "engines": { + "node": "*" + } + }, + "node_modules/statuses": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.4.0.tgz", + "integrity": "sha512-zhSCtt8v2NDrRlPQpCNtw/heZLtfUDqxBM1udqikb/Hbk52LK4nQSwr10u77iopCW5LsyHpuXS0GnEc48mLeew==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/stream-shift": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/stream-shift/-/stream-shift-1.0.1.tgz", + "integrity": "sha512-AiisoFqQ0vbGcZgQPY1cdP2I76glaVA/RauYR4G4thNFgkTqr90yXTo4LYX60Jl+sIlPNHHdGSwo01AvbKUSVQ==" + }, + "node_modules/stream-transform": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/stream-transform/-/stream-transform-2.0.1.tgz", + "integrity": "sha512-GiTcO/rRvZP2R8WPwxmxCFP+Of1yIATuFAmYkvSLDfcD93X2WHiPwdgIqeFT2CvL1gyAsjQvu1nB6RDNQ5b2jw==", + "dependencies": { + "mixme": "^0.3.1" + } + }, + "node_modules/string_decoder": { + "version": "0.10.31", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz", + "integrity": "sha1-YuIDvEF2bGwoyfyEMB2rHFMQ+pQ=" + }, + "node_modules/string-width": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz", + "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==", + "dev": true, + "dependencies": { + "emoji-regex": "^7.0.1", + "is-fullwidth-code-point": "^2.0.0", + "strip-ansi": "^5.1.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/string-width/node_modules/ansi-regex": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz", + "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/string-width/node_modules/strip-ansi": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", + "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", + "dev": true, + "dependencies": { + "ansi-regex": "^4.1.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/strip-ansi": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz", + "integrity": "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==", + "dev": true, + "dependencies": { + "ansi-regex": "^5.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/strip-json-comments": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-1.0.4.tgz", + "integrity": "sha1-HhX7ysl9Pumb8tc7TGVrCCu6+5E=", + "bin": { + "strip-json-comments": "cli.js" + }, + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "dev": true, + "dependencies": { + "has-flag": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/swagger-jsdoc": { + "version": "3.7.0", + "resolved": "https://registry.npmjs.org/swagger-jsdoc/-/swagger-jsdoc-3.7.0.tgz", + "integrity": "sha512-K3R1NaP1CoWXeBp2F8Oh1vrtHRaDA2+pN17Ls/U1lHOtRlKtbtICwPKLRNOA2kDY0x2SXsCZisKiJlBStnv3yg==", + "dependencies": { + "commander": "4.0.1", + "doctrine": "3.0.0", + "glob": "7.1.6", + "js-yaml": "3.13.1", + "swagger-parser": "8.0.4" + }, + "bin": { + "swagger-jsdoc": "bin/swagger-jsdoc.js" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/swagger-jsdoc/node_modules/js-yaml": { + "version": "3.13.1", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.13.1.tgz", + "integrity": "sha512-YfbcO7jXDdyj0DGxYVSlSeQNHbD7XPWvrVWeVUujrQEoZzWJIRrCPoyk6kL6IAjAG2IolMK4T0hNUe0HOUs5Jw==", + "dependencies": { + "argparse": "^1.0.7", + "esprima": "^4.0.0" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" + } + }, + "node_modules/swagger-methods": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/swagger-methods/-/swagger-methods-2.0.2.tgz", + "integrity": "sha512-/RNqvBZkH8+3S/FqBPejHxJxZenaYq3MrpeXnzi06aDIS39Mqf5YCUNb/ZBjsvFFt8h9FxfKs8EXPtcYdfLiRg==" + }, + "node_modules/swagger-parser": { + "version": "8.0.4", + "resolved": "https://registry.npmjs.org/swagger-parser/-/swagger-parser-8.0.4.tgz", + "integrity": "sha512-KGRdAaMJogSEB7sPKI31ptKIWX8lydEDAwWgB4pBMU7zys5cd54XNhoPSVlTxG/A3LphjX47EBn9j0dOGyzWbA==", + "dependencies": { + "call-me-maybe": "^1.0.1", + "json-schema-ref-parser": "^7.1.3", + "ono": "^6.0.0", + "openapi-schemas": "^1.0.2", + "openapi-types": "^1.3.5", + "swagger-methods": "^2.0.1", + "z-schema": "^4.2.2" + } + }, + "node_modules/swagger-ui-dist": { + "version": "3.34.0", + "resolved": "https://registry.npmjs.org/swagger-ui-dist/-/swagger-ui-dist-3.34.0.tgz", + "integrity": "sha512-xk5CMbwoQVI53rTq9o/iMojAqXP5NT4/+TMeTP4uXWDIH18pB9AXgO5Olqt0RXuf3jH032DA4DS4qzem6XdXAw==" + }, + "node_modules/table": { + "version": "5.4.6", + "resolved": "https://registry.npmjs.org/table/-/table-5.4.6.tgz", + "integrity": "sha512-wmEc8m4fjnob4gt5riFRtTu/6+4rSe12TpAELNSqHMfF3IqnA+CH37USM6/YR3qRZv7e56kAEAtd6nKZaxe0Ug==", + "dev": true, + "dependencies": { + "ajv": "^6.10.2", + "lodash": "^4.17.14", + "slice-ansi": "^2.1.0", + "string-width": "^3.0.0" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/text-hex": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/text-hex/-/text-hex-1.0.0.tgz", + "integrity": "sha512-uuVGNWzgJ4yhRaNSiubPY7OjISw4sw4E5Uv0wbjp+OzcbmVU/rsT8ujgcXJhn9ypzsgr5vlzpPqP+MBBKcGvbg==" + }, + "node_modules/text-table": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", + "integrity": "sha1-f17oI66AUgfACvLfSoTsP8+lcLQ=", + "dev": true + }, + "node_modules/through2": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/through2/-/through2-2.0.5.tgz", + "integrity": "sha512-/mrRod8xqpA+IHSLyGCQ2s8SPHiCDEeQJSep1jqLYeEUClOFG2Qsh+4FU6G9VeqpZnGW/Su8LQGc4YKni5rYSQ==", + "dependencies": { + "readable-stream": "~2.3.6", + "xtend": "~4.0.1" + } + }, + "node_modules/through2-filter": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/through2-filter/-/through2-filter-3.0.0.tgz", + "integrity": "sha512-jaRjI2WxN3W1V8/FMZ9HKIBXixtiqs3SQSX4/YGIiP3gL6djW48VoZq9tDqeCWs3MT8YY5wb/zli8VW8snY1CA==", + "dependencies": { + "through2": "~2.0.0", + "xtend": "~4.0.0" + } + }, + "node_modules/through2/node_modules/isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=" + }, + "node_modules/through2/node_modules/readable-stream": { + "version": "2.3.7", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", + "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", + "dependencies": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "node_modules/through2/node_modules/string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "dependencies": { + "safe-buffer": "~5.1.0" + } + }, + "node_modules/to-absolute-glob": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/to-absolute-glob/-/to-absolute-glob-2.0.2.tgz", + "integrity": "sha1-GGX0PZ50sIItufFFt4z/fQ98hJs=", + "dependencies": { + "is-absolute": "^1.0.0", + "is-negated-glob": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/tough-cookie": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.5.0.tgz", + "integrity": "sha512-nlLsUzgm1kfLXSXfRZMc1KLAugd4hqJHDTvc2hDIwS3mZAfMEuMbc03SujMF+GEcpaX/qboeycw6iO8JwVv2+g==", + "dependencies": { + "psl": "^1.1.28", + "punycode": "^2.1.1" + }, + "engines": { + "node": ">=0.8" + } + }, + "node_modules/triple-beam": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/triple-beam/-/triple-beam-1.3.0.tgz", + "integrity": "sha512-XrHUvV5HpdLmIj4uVMxHggLbFSZYIn7HEWsqePZcI50pco+MPqJ50wMGY794X7AOOhxOBAjbkqfAbEe/QMp2Lw==" + }, + "node_modules/tslib": { + "version": "1.13.0", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.13.0.tgz", + "integrity": "sha512-i/6DQjL8Xf3be4K/E6Wgpekn5Qasl1usyw++dAA35Ue5orEn65VIxOA+YvNNl9HV3qv70T7CNwjODHZrLwvd1Q==" + }, + "node_modules/tunnel-agent": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz", + "integrity": "sha1-J6XeoGs2sEoKmWZ3SykIaPD8QP0=", + "dependencies": { + "safe-buffer": "^5.0.1" + }, + "engines": { + "node": "*" + } + }, + "node_modules/tweetnacl": { + "version": "0.14.5", + "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz", + "integrity": "sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q=" + }, + "node_modules/type": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/type/-/type-1.2.0.tgz", + "integrity": "sha512-+5nt5AAniqsCnu2cEQQdpzCAh33kVx8n0VoFidKpB1dVVLAN/F+bgVOqOJqOnEnrhp222clB5p3vUlD+1QAnfg==" + }, + "node_modules/type-check": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz", + "integrity": "sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==", + "dev": true, + "dependencies": { + "prelude-ls": "^1.2.1" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/type-fest": { + "version": "0.8.1", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.8.1.tgz", + "integrity": "sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/typedarray": { + "version": "0.0.6", + "resolved": "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz", + "integrity": "sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c=" + }, + "node_modules/unc-path-regex": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/unc-path-regex/-/unc-path-regex-0.1.2.tgz", + "integrity": "sha1-5z3T17DXxe2G+6xrCufYxqadUPo=", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/unique-stream": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/unique-stream/-/unique-stream-2.3.1.tgz", + "integrity": "sha512-2nY4TnBE70yoxHkDli7DMazpWiP7xMdCYqU2nBRO0UB+ZpEkGsSija7MvmvnZFUeC+mrgiUfcHSr3LmRFIg4+A==", + "dependencies": { + "json-stable-stringify-without-jsonify": "^1.0.1", + "through2-filter": "^3.0.0" + } + }, + "node_modules/universalify": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-1.0.0.tgz", + "integrity": "sha512-rb6X1W158d7pRQBg5gkR8uPaSfiids68LTJQYOtEUhoJUWBdaQHsuT/EUduxXYxcrt4r5PJ4fuHW1MHT6p0qug==", + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/uri-js": { + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.2.2.tgz", + "integrity": "sha512-KY9Frmirql91X2Qgjry0Wd4Y+YTdrdZheS8TFwvkbLWf/G5KNJDCh6pKL5OZctEW4+0Baa5idK2ZQuELRwPznQ==", + "dependencies": { + "punycode": "^2.1.0" + } + }, + "node_modules/util-deprecate": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", + "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=" + }, + "node_modules/uuid": { + "version": "8.3.1", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-8.3.1.tgz", + "integrity": "sha512-FOmRr+FmWEIG8uhZv6C2bTgEVXsHk08kE7mPlrBbEe+c3r9pjceVPgupIfNIhc4yx55H69OXANrUaSuu9eInKg==", + "bin": { + "uuid": "dist/bin/uuid" + } + }, + "node_modules/v8-compile-cache": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/v8-compile-cache/-/v8-compile-cache-2.1.1.tgz", + "integrity": "sha512-8OQ9CL+VWyt3JStj7HX7/ciTL2V3Rl1Wf5OL+SNTm0yK1KvtReVulksyeRnCANHHuUxHlQig+JJDlUhBt1NQDQ==", + "dev": true + }, + "node_modules/validator": { + "version": "12.2.0", + "resolved": "https://registry.npmjs.org/validator/-/validator-12.2.0.tgz", + "integrity": "sha512-jJfE/DW6tIK1Ek8nCfNFqt8Wb3nzMoAbocBF6/Icgg1ZFSBpObdnwVY2jQj6qUqzhx5jc71fpvBWyLGO7Xl+nQ==", + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/vasync": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/vasync/-/vasync-2.2.0.tgz", + "integrity": "sha1-z951GGChWCLbOxMrxZsRakra8Bs=", + "engines": [ + "node >=0.6.0" + ], + "dependencies": { + "verror": "1.10.0" + } + }, + "node_modules/verror": { + "version": "1.10.0", + "resolved": "https://registry.npmjs.org/verror/-/verror-1.10.0.tgz", + "integrity": "sha1-OhBcoXBTr1XW4nDB+CiGguGNpAA=", + "engines": [ + "node >=0.6.0" + ], + "dependencies": { + "assert-plus": "^1.0.0", + "core-util-is": "1.0.2", + "extsprintf": "^1.2.0" + } + }, + "node_modules/wbuf": { + "version": "1.7.3", + "resolved": "https://registry.npmjs.org/wbuf/-/wbuf-1.7.3.tgz", + "integrity": "sha512-O84QOnr0icsbFGLS0O3bI5FswxzRr8/gHwWkDlQFskhSPryQXvrTMxjxGP4+iWYoauLoBvfDpkrOauZ+0iZpDA==", + "dependencies": { + "minimalistic-assert": "^1.0.0" + } + }, + "node_modules/which": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", + "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", + "dev": true, + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "node-which": "./bin/node-which" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/winston": { + "version": "3.3.3", + "resolved": "https://registry.npmjs.org/winston/-/winston-3.3.3.tgz", + "integrity": "sha512-oEXTISQnC8VlSAKf1KYSSd7J6IWuRPQqDdo8eoRNaYKLvwSb5+79Z3Yi1lrl6KDpU6/VWaxpakDAtb1oQ4n9aw==", + "dependencies": { + "@dabh/diagnostics": "^2.0.2", + "async": "^3.1.0", + "is-stream": "^2.0.0", + "logform": "^2.2.0", + "one-time": "^1.0.0", + "readable-stream": "^3.4.0", + "stack-trace": "0.0.x", + "triple-beam": "^1.3.0", + "winston-transport": "^4.4.0" + }, + "engines": { + "node": ">= 6.4.0" + } + }, + "node_modules/winston-daily-rotate-file": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/winston-daily-rotate-file/-/winston-daily-rotate-file-4.5.0.tgz", + "integrity": "sha512-/HqeWiU48dzGqcrABRlxYWVMdL6l3uKCtFSJyrqK+E2rLnSFNsgYpvwx15EgTitBLNzH69lQd/+z2ASryV2aqw==", + "dependencies": { + "file-stream-rotator": "^0.5.7", + "object-hash": "^2.0.1", + "triple-beam": "^1.3.0", + "winston-transport": "^4.2.0" + }, + "engines": { + "node": ">=8" + }, + "peerDependencies": { + "winston": "^3" + } + }, + "node_modules/winston-transport": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/winston-transport/-/winston-transport-4.4.0.tgz", + "integrity": "sha512-Lc7/p3GtqtqPBYYtS6KCN3c77/2QCev51DvcJKbkFPQNoj1sinkGwLGFDxkXY9J6p9+EPnYs+D90uwbnaiURTw==", + "dependencies": { + "readable-stream": "^2.3.7", + "triple-beam": "^1.2.0" + }, + "engines": { + "node": ">= 6.4.0" + } + }, + "node_modules/winston-transport/node_modules/isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=" + }, + "node_modules/winston-transport/node_modules/readable-stream": { + "version": "2.3.7", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", + "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", + "dependencies": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "node_modules/winston-transport/node_modules/string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "dependencies": { + "safe-buffer": "~5.1.0" + } + }, + "node_modules/winston/node_modules/readable-stream": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", + "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", + "dependencies": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/winston/node_modules/safe-buffer": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", + "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] + }, + "node_modules/winston/node_modules/string_decoder": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", + "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", + "dependencies": { + "safe-buffer": "~5.2.0" + } + }, + "node_modules/word-wrap": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.3.tgz", + "integrity": "sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/wrappy": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", + "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=" + }, + "node_modules/write": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/write/-/write-1.0.3.tgz", + "integrity": "sha512-/lg70HAjtkUgWPVZhZcm+T4hkL8Zbtp1nFNOn3lRrxnlv50SRBv7cR7RqR+GMsd3hUXy9hWBo4CHTbFTcOYwig==", + "dev": true, + "dependencies": { + "mkdirp": "^0.5.1" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/write/node_modules/mkdirp": { + "version": "0.5.5", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.5.tgz", + "integrity": "sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ==", + "dev": true, + "dependencies": { + "minimist": "^1.2.5" + }, + "bin": { + "mkdirp": "bin/cmd.js" + } + }, + "node_modules/ws": { + "version": "7.3.1", + "resolved": "https://registry.npmjs.org/ws/-/ws-7.3.1.tgz", + "integrity": "sha512-D3RuNkynyHmEJIpD2qrgVkc9DQ23OrN/moAwZX4L8DfvszsJxpjQuUq3LMx6HoYji9fbIOBY18XWBsAux1ZZUA==", + "engines": { + "node": ">=8.3.0" + }, + "peerDependencies": { + "bufferutil": "^4.0.1", + "utf-8-validate": "^5.0.2" + }, + "peerDependenciesMeta": { + "bufferutil": { + "optional": true + }, + "utf-8-validate": { + "optional": true + } + } + }, + "node_modules/xtend": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz", + "integrity": "sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==", + "engines": { + "node": ">=0.4" + } + }, + "node_modules/yallist": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", + "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==" + }, + "node_modules/z-schema": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/z-schema/-/z-schema-4.2.3.tgz", + "integrity": "sha512-zkvK/9TC6p38IwcrbnT3ul9in1UX4cm1y/VZSs4GHKIiDCrlafc+YQBgQBUdDXLAoZHf2qvQ7gJJOo6yT1LH6A==", + "dependencies": { + "commander": "^2.7.1", + "lodash.get": "^4.4.2", + "lodash.isequal": "^4.5.0", + "validator": "^12.0.0" + }, + "bin": { + "z-schema": "./bin/z-schema" + }, + "engines": { + "node": ">=6.0.0" + }, + "optionalDependencies": { + "commander": "^2.7.1" + } + }, + "node_modules/z-schema/node_modules/commander": { + "version": "2.20.3", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", + "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==", + "optional": true + } + }, "dependencies": { "@babel/code-frame": { "version": "7.10.4", @@ -118,7 +4013,8 @@ "version": "5.3.1", "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.1.tgz", "integrity": "sha512-K0Ptm/47OKfQRpNQ2J/oIN/3QYiK6FwW+eJbILhsdxh2WTLdl+30o8aGdTbm5JbffpFFAg/g+zi1E+jvJha5ng==", - "dev": true + "dev": true, + "requires": {} }, "ajv": { "version": "6.11.0", @@ -1000,7 +4896,8 @@ "version": "0.14.0", "resolved": "https://registry.npmjs.org/eslint-config-google/-/eslint-config-google-0.14.0.tgz", "integrity": "sha512-WsbX4WbjuMvTdeVL6+J3rK1RGhCTqjsFjX7UMSMgZiyxxaNLkoJENbrGExzERFeoTpGw3F3FypTiWAP9ZXzkEw==", - "dev": true + "dev": true, + "requires": {} }, "eslint-scope": { "version": "5.1.1", @@ -1896,7 +5793,8 @@ "moment-precise-range-plugin": { "version": "1.3.0", "resolved": "https://registry.npmjs.org/moment-precise-range-plugin/-/moment-precise-range-plugin-1.3.0.tgz", - "integrity": "sha1-YKwHX9/RRon20QKvdR0XGoC0q2A=" + "integrity": "sha1-YKwHX9/RRon20QKvdR0XGoC0q2A=", + "requires": {} }, "moment-timezone": { "version": "0.5.31", @@ -2736,6 +6634,11 @@ "mixme": "^0.3.1" } }, + "string_decoder": { + "version": "0.10.31", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz", + "integrity": "sha1-YuIDvEF2bGwoyfyEMB2rHFMQ+pQ=" + }, "string-width": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz", @@ -2764,11 +6667,6 @@ } } }, - "string_decoder": { - "version": "0.10.31", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz", - "integrity": "sha1-YuIDvEF2bGwoyfyEMB2rHFMQ+pQ=" - }, "strip-ansi": { "version": "6.0.0", "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz", @@ -3182,7 +7080,8 @@ "ws": { "version": "7.3.1", "resolved": "https://registry.npmjs.org/ws/-/ws-7.3.1.tgz", - "integrity": "sha512-D3RuNkynyHmEJIpD2qrgVkc9DQ23OrN/moAwZX4L8DfvszsJxpjQuUq3LMx6HoYji9fbIOBY18XWBsAux1ZZUA==" + "integrity": "sha512-D3RuNkynyHmEJIpD2qrgVkc9DQ23OrN/moAwZX4L8DfvszsJxpjQuUq3LMx6HoYji9fbIOBY18XWBsAux1ZZUA==", + "requires": {} }, "xtend": { "version": "4.0.2", diff --git a/src/package.json b/src/package.json index 63c5a7dd..90f5f142 100644 --- a/src/package.json +++ b/src/package.json @@ -36,7 +36,7 @@ "ws": "^7.3.1" }, "devDependencies": { - "eslint": "^7.12.1", + "eslint": "7.12.1", "eslint-config-google": "0.14.0" }, "homepage": "https://github.com/ptarmiganlabs/butler", From eb7dcc5129fb8685e00b25f51ac010a2d53e5a3c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?G=C3=B6ran=20Sander?= Date: Tue, 27 Oct 2020 12:12:37 +0100 Subject: [PATCH 04/10] Added fileCopy method to API (wip) --- src/butler.js | 5 ++ src/config/production_template.yaml | 9 +++ src/globals.js | 20 +++++ src/rest/disk_utils.js | 121 ++++++++++++++++++++++++++++ 4 files changed, 155 insertions(+) diff --git a/src/butler.js b/src/butler.js index 29b65b9d..3e44707e 100644 --- a/src/butler.js +++ b/src/butler.js @@ -144,6 +144,11 @@ if (globals.config.get('Butler.restServerEndpointsEnable.fileMove')) { restServer.put({ path: '/v4/filemove' }, rest.disk_utils.respondPUT_fileMove); } +if (globals.config.get('Butler.restServerEndpointsEnable.fileCopy')) { + globals.logger.debug('Registering REST endpoint PUT /v4/filecopy'); + restServer.put({ path: '/v4/filecopy' }, rest.disk_utils.respondPUT_fileCopy); +} + if (globals.config.get('Butler.restServerEndpointsEnable.activeUserCount')) { globals.logger.debug('Registering REST endpoint GET /v4/activeusercount'); restServer.get({ path: '/v4/activeusercount' }, rest.activeUserCount.respondGET_activeUserCount); diff --git a/src/config/production_template.yaml b/src/config/production_template.yaml index 0804c65b..14333cd3 100644 --- a/src/config/production_template.yaml +++ b/src/config/production_template.yaml @@ -81,6 +81,14 @@ Butler: serverHost: serverPort: 8080 + fileCopyApprovedDirectories: # List of directories between which file copying via the REST API can be done. + - fromDirectory: /Users/goran/butler-test-dir1//abc//.. + toDirectory: /Users/goran/butler-test-dir2 + - fromDirectory: /Users/goran/butler-test-dir2 + toDirectory: /Users/goran/butler-test-dir1 + - fromDirectory: /from/some/directory2 + toDirectory: /to/some/directory2 + fileMoveApprovedDirectories: # List of directories between which file moves via the REST API can be done. - fromDirectory: /Users/goran/butler-test-dir1//abc//.. toDirectory: /Users/goran/butler-test-dir2 @@ -105,6 +113,7 @@ Butler: createDirQVD: false fileDelete: false fileMove: false + fileCopy: false keyValueStore: false mqttPublishMessage: false scheduler: diff --git a/src/globals.js b/src/globals.js index 93b7cbda..f496fdde 100644 --- a/src/globals.js +++ b/src/globals.js @@ -154,6 +154,25 @@ var udp_port_take_failure = config.get('Butler.udpServerConfig.portTaskFailure') // Folder under which QVD folders are to be created var qvdFolder = config.get('Butler.configDirectories.qvdPath'); +// Load approved fromDir and toDir for fileCopy operation +var fileCopyDirectories = []; + +if (config.has('Butler.fileCopyApprovedDirectories')) { + config.get('Butler.fileCopyApprovedDirectories').forEach(element => { + logger.verbose(`fileCopy directories from config file: ${JSON.stringify(element, null, 2)}`); + + let newDirCombo = { + fromDir: path.normalize(element.fromDirectory), + toDir: path.normalize(element.toDirectory), + }; + + logger.info(`Adding normalized fileCopy directories ${JSON.stringify(newDirCombo, null, 2)}`); + + fileCopyDirectories.push(newDirCombo); + }); +} + + // Load approved fromDir and toDir for fileMove operation var fileMoveDirectories = []; @@ -305,6 +324,7 @@ module.exports = { configSchedule, initInfluxDB, influx, + fileCopyDirectories, fileMoveDirectories, fileDeleteDirectories, endpointsEnabled, diff --git a/src/rest/disk_utils.js b/src/rest/disk_utils.js index 82618327..38bb3e1b 100644 --- a/src/rest/disk_utils.js +++ b/src/rest/disk_utils.js @@ -9,6 +9,127 @@ const path = require('path'); var mkdirp = require('mkdirp'); +/** + * @swagger + * + * /v4/filecopy: + * put: + * description: | + * Copy a file between well defined, approved locations. + * produces: + * - application/json + * parameters: + * - name: body + * description: | + * Copying of files is only posttible between pre-approved directories. + * Defining approved source and destination directories is done in Butler's config file. + * in: body + * schema: + * type: object + * required: + * - fromFile + * - toFile + * properties: + * fromFile: + * type: string + * description: Name of source file + * example: "subfolder/file1.qvd" + * toFile: + * type: string + * description: Name of destination file. Can be different from source file name, if needed + * example: "archive/file1_20200925.qvd" + * overwrite: + * type: boolean + * description: Controls whether destination file should be overwritten if it already exists. Defaults to false. + * example: "false" + * responses: + * 200: + * description: File copied. + * schema: + * type: object + * properties: + * fromFile: + * type: string + * description: Name of source file + * example: "subfolder/file1.qvd" + * toFile: + * type: string + * description: Name of destination file. Can be different from source file name, if needed + * example: "archive/file1_20200925.qvd" + * overwrite: + * type: boolean + * description: Controls whether destination file should be overwritten if it already exists. Defaults to false. + * example: "false" + * 403: + * description: No approved fromDir/toDir for file move. + * 404: + * description: fromFile not found. + * 409: + * description: Required parameter missing. + * 500: + * description: Internal error, or file overwrite was not allowed. + * + */ +module.exports.respondPUT_fileCopy = async function (req, res, next) { + logRESTCall(req); + + try { + let overwrite = false; + + if (req.body.fromFile == undefined || req.body.toFile == undefined || req.body.fromFile == '' || req.body.toFile == '') { + // Required parameter is missing + res.send(new errors.MissingParameterError({}, 'Required parameter missing')); + } else { + if (req.body.overwrite == 'true') { + overwrite = true; + } + + // Make sure that + // 1. fromFile is in a valid source directory (or subdirectory thereof), + // 2. toFile is in a valid associated destiation directory (or subdirectory thereof) + + let fromFile = path.normalize(req.body.fromFile), + toFile = path.normalize(req.body.toFile); + + let fromDir = path.dirname(fromFile), + toDir = path.dirname(toFile); + + let copyIsOk = false; // Only allow move if this flag is true + + // Ensure fromFile exists + if (await fs.pathExists(fromFile)) { + globals.fileCopyDirectories.forEach(element => { + if (isDirectoryChildOf(fromDir, element.fromDir) && isDirectoryChildOf(toDir, element.toDir)) { + // The fromFile passed as parameter matches an approved fromDir specified in the config file + // AND + // toFile passed as parameter matches the associated approved toDir specified in the config file + + copyIsOk = true; + } + }); + + if (copyIsOk) { + await fs.copyFile(fromFile, toFile, { overwrite: overwrite }); + res.send(200, { fromFile: fromFile, toFile: toFile, overwrite: overwrite }); + } else { + globals.logger.error(`FILECOPY: No approved fromDir/toDir for file copy ${req.body.fromFile} to ${req.body.toFile}`); + res.send(new errors.ForbiddenError({}, 'No approved fromDir/toDir for file copy')); + } + } else { + // fromFile does not exist + globals.logger.error(`FILECOPY: From file ${req.body.fromFile} does not exist`); + res.send(new errors.ResourceNotFoundError({}, 'fromFile does not exist')); + } + } + + next(); + } catch (err) { + globals.logger.error(`FILECOPY: Failed copying file ${req.body.fromFile} to ${req.body.toFile}`); + res.send(new errors.InternalError({}, 'Failed copying file')); + next(); + } +}; + /** * @swagger * From 4a02f6a5db8536aa7e520f417f2bf557b4baf0b3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?G=C3=B6ran=20Sander?= Date: Tue, 27 Oct 2020 12:14:26 +0100 Subject: [PATCH 05/10] Update version number to 4.1.0 --- src/docker-compose.yml | 2 +- src/package.json | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/docker-compose.yml b/src/docker-compose.yml index 9f7a361e..70479697 100644 --- a/src/docker-compose.yml +++ b/src/docker-compose.yml @@ -2,7 +2,7 @@ version: '3.3' services: butler: - image: ptarmiganlabs/butler:4.0.0 + image: ptarmiganlabs/butler:4.1.0 container_name: butler restart: always ports: diff --git a/src/package.json b/src/package.json index 90f5f142..d74fb69a 100644 --- a/src/package.json +++ b/src/package.json @@ -1,6 +1,6 @@ { "name": "butler", - "version": "4.0.0", + "version": "4.1.0", "description": "Microservice providing features that Qlik Sense or Qlikview cannot do out of the box.", "docs": "node_modules/.bin/docco {mqtt,qrs}/{**/*,*} -l classic", "dependencies": { From 867fcbdad30a1bf79af9e0874f106f5cb412d2ee Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?G=C3=B6ran=20Sander?= Date: Tue, 27 Oct 2020 16:14:44 +0100 Subject: [PATCH 06/10] File copy implementation wip --- changelog.md | 12 +++++++++++- src/butler.js | 5 +++-- src/rest/disk_utils.js | 36 +++++++++++++++++++++++------------- 3 files changed, 37 insertions(+), 16 deletions(-) diff --git a/changelog.md b/changelog.md index 71196b63..d2aee136 100644 --- a/changelog.md +++ b/changelog.md @@ -1,6 +1,16 @@ # Change log -## 4.0 +## 4.1.0 + +### New features + +- File copy method in the REST API. + +### Breaking changes + +None. + +## 4.0.0 ### New features diff --git a/src/butler.js b/src/butler.js index 3e44707e..21d13986 100644 --- a/src/butler.js +++ b/src/butler.js @@ -129,8 +129,9 @@ restifySwaggerJsdoc.createSwaggerPage({ // restServer.get({ path: '/v4/getdiskspace' }, rest.getDiskSpace.respondGET_getDiskSpace); // } +// TODO First test if config entry exists => Make Butler less picky about new formats in the config file if (globals.config.get('Butler.restServerEndpointsEnable.apiListEnbledEndpoints')) { - globals.logger.debug('Registering REST endpoint PGETUT /v4/configfile/endpointsenabled'); + globals.logger.debug('Registering REST endpoint GET /v4/configfile/endpointsenabled'); restServer.get({ path: '/v4/configfile/endpointsenabled' }, rest.api.respondGET_configFileListEnbledEndpoints); } @@ -144,7 +145,7 @@ if (globals.config.get('Butler.restServerEndpointsEnable.fileMove')) { restServer.put({ path: '/v4/filemove' }, rest.disk_utils.respondPUT_fileMove); } -if (globals.config.get('Butler.restServerEndpointsEnable.fileCopy')) { +if (globals.config.has('Butler.restServerEndpointsEnable.fileCopy') && globals.config.get('Butler.restServerEndpointsEnable.fileCopy')) { globals.logger.debug('Registering REST endpoint PUT /v4/filecopy'); restServer.put({ path: '/v4/filecopy' }, rest.disk_utils.respondPUT_fileCopy); } diff --git a/src/rest/disk_utils.js b/src/rest/disk_utils.js index 38bb3e1b..201875d0 100644 --- a/src/rest/disk_utils.js +++ b/src/rest/disk_utils.js @@ -8,7 +8,6 @@ var fs = require('fs-extra'); const path = require('path'); var mkdirp = require('mkdirp'); - /** * @swagger * @@ -23,6 +22,7 @@ var mkdirp = require('mkdirp'); * description: | * Copying of files is only posttible between pre-approved directories. * Defining approved source and destination directories is done in Butler's config file. + * If the source directory contains subdirectories, these will be copied too. * in: body * schema: * type: object @@ -40,7 +40,11 @@ var mkdirp = require('mkdirp'); * example: "archive/file1_20200925.qvd" * overwrite: * type: boolean - * description: Controls whether destination file should be overwritten if it already exists. Defaults to false. + * description: Controls whether destination file should be overwritten if it already exists. Note that the copy operation will silently fail if you set this to false and the destination exists. Defaults to false. + * example: "false" + * preserveTimestamp: + * type: boolean + * description: When true, the timestamp of the source file(s) will be preserved on the destination file(s). When false, timestamp behaviour is OS-dependent. Defaults to false. * example: "false" * responses: * 200: @@ -58,7 +62,11 @@ var mkdirp = require('mkdirp'); * example: "archive/file1_20200925.qvd" * overwrite: * type: boolean - * description: Controls whether destination file should be overwritten if it already exists. Defaults to false. + * description: Controls whether destination file should be overwritten if it already exists. Note that the copy operation will silently fail if you set this to false and the destination exists. Defaults to false. + * example: "false" + * preserveTimestamp: + * type: boolean + * description: When true, the timestamp of the source file(s) will be preserved on the destination file(s). When false, timestamp behaviour is OS-dependent. Defaults to false. * example: "false" * 403: * description: No approved fromDir/toDir for file move. @@ -75,6 +83,7 @@ module.exports.respondPUT_fileCopy = async function (req, res, next) { try { let overwrite = false; + let preserveTimestamp = false; if (req.body.fromFile == undefined || req.body.toFile == undefined || req.body.fromFile == '' || req.body.toFile == '') { // Required parameter is missing @@ -84,6 +93,10 @@ module.exports.respondPUT_fileCopy = async function (req, res, next) { overwrite = true; } + if (req.body.preserveTimestamp == 'true') { + preserveTimestamp = true; + } + // Make sure that // 1. fromFile is in a valid source directory (or subdirectory thereof), // 2. toFile is in a valid associated destiation directory (or subdirectory thereof) @@ -94,7 +107,7 @@ module.exports.respondPUT_fileCopy = async function (req, res, next) { let fromDir = path.dirname(fromFile), toDir = path.dirname(toFile); - let copyIsOk = false; // Only allow move if this flag is true + let copyIsOk = false; // Only allow copy if this flag is true // Ensure fromFile exists if (await fs.pathExists(fromFile)) { @@ -109,8 +122,8 @@ module.exports.respondPUT_fileCopy = async function (req, res, next) { }); if (copyIsOk) { - await fs.copyFile(fromFile, toFile, { overwrite: overwrite }); - res.send(200, { fromFile: fromFile, toFile: toFile, overwrite: overwrite }); + await fs.copySync(fromFile, toFile, { overwrite: overwrite, preserveTimestamps: preserveTimestamp }); + res.send(200, { fromFile: fromFile, toFile: toFile, overwrite: overwrite, preserveTimestamp: preserveTimestamp }); } else { globals.logger.error(`FILECOPY: No approved fromDir/toDir for file copy ${req.body.fromFile} to ${req.body.toFile}`); res.send(new errors.ForbiddenError({}, 'No approved fromDir/toDir for file copy')); @@ -338,8 +351,6 @@ module.exports.respondPUT_fileDelete = async function (req, res, next) { } }; - - /** * @swagger * @@ -371,7 +382,7 @@ module.exports.respondPUT_fileDelete = async function (req, res, next) { * type: string * description: Path to created directory. * example: "subfolder/2020-10" - * + * * 409: * description: Missing parameter. * 500: @@ -406,7 +417,6 @@ module.exports.respondPOST_createDirQVD = function (req, res, next) { } }; - /** * @swagger * @@ -414,16 +424,16 @@ module.exports.respondPOST_createDirQVD = function (req, res, next) { * post: * description: | * Creates a directory in file system. - * If the directory already exists nothing will happen. + * If the directory already exists nothing will happen. * If permissions don't allow a directory to be created, or if the path is invalid, an error will be returned. * * __WARNING: This method can create folders anywhere (where the account running Butler has permissions) in the filesystem.__ - * Use with caution. + * Use with caution. * produces: * - application/json * parameters: * - name: body - * description: + * description: * in: body * schema: * type: object From 8a32958e659331bf53e357a6c06b94c57057f05e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?G=C3=B6ran=20Sander?= Date: Tue, 27 Oct 2020 18:31:56 +0100 Subject: [PATCH 07/10] Change file move and delete to use sync methods --- src/rest/disk_utils.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/rest/disk_utils.js b/src/rest/disk_utils.js index 201875d0..92cc9186 100644 --- a/src/rest/disk_utils.js +++ b/src/rest/disk_utils.js @@ -243,7 +243,7 @@ module.exports.respondPUT_fileMove = async function (req, res, next) { }); if (moveIsOk) { - await fs.moveFile(fromFile, toFile, { overwrite: overwrite }); + await fs.moveSync(fromFile, toFile, { overwrite: overwrite }); res.send(200, { fromFile: fromFile, toFile: toFile, overwrite: overwrite }); } else { globals.logger.error(`FILEMOVE: No approved fromDir/toDir for file move ${req.body.fromFile} to ${req.body.toFile}`); @@ -330,7 +330,7 @@ module.exports.respondPUT_fileDelete = async function (req, res, next) { if (deleteIsOk) { if (await fs.pathExists(deleteFile)) { // Finally, make sure that file realy exists - await fs.remove(deleteFile); + await fs.removeSync(deleteFile); res.send(204); } else { // deleteFile does not exist From 3601a1ce956ae0a9acafc0144eba7d35656272d4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?G=C3=B6ran=20Sander?= Date: Tue, 27 Oct 2020 18:52:15 +0100 Subject: [PATCH 08/10] Be more forgiving against malformed config file --- changelog.md | 5 ++++ src/butler.js | 44 ++++++++++++++--------------- src/config/production_template.yaml | 15 +++++++--- 3 files changed, 38 insertions(+), 26 deletions(-) diff --git a/changelog.md b/changelog.md index d2aee136..ac9c3abf 100644 --- a/changelog.md +++ b/changelog.md @@ -6,6 +6,11 @@ - File copy method in the REST API. +### Fixes and patches + +- Updated dependencies to latest versions. +- Minor stability changes/improvements to filemove and filedelete API methods. + ### Breaking changes None. diff --git a/src/butler.js b/src/butler.js index 21d13986..723f1484 100644 --- a/src/butler.js +++ b/src/butler.js @@ -130,17 +130,17 @@ restifySwaggerJsdoc.createSwaggerPage({ // } // TODO First test if config entry exists => Make Butler less picky about new formats in the config file -if (globals.config.get('Butler.restServerEndpointsEnable.apiListEnbledEndpoints')) { +if (globals.config.has('Butler.restServerEndpointsEnable.apiListEnbledEndpoints') && globals.config.get('Butler.restServerEndpointsEnable.apiListEnbledEndpoints')) { globals.logger.debug('Registering REST endpoint GET /v4/configfile/endpointsenabled'); restServer.get({ path: '/v4/configfile/endpointsenabled' }, rest.api.respondGET_configFileListEnbledEndpoints); } -if (globals.config.get('Butler.restServerEndpointsEnable.fileDelete')) { +if (globals.config.has('Butler.restServerEndpointsEnable.fileDelete') && globals.config.get('Butler.restServerEndpointsEnable.fileDelete')) { globals.logger.debug('Registering REST endpoint DELETE /v4/filedelete'); restServer.del({ path: '/v4/filedelete' }, rest.disk_utils.respondPUT_fileDelete); } -if (globals.config.get('Butler.restServerEndpointsEnable.fileMove')) { +if (globals.config.has('Butler.restServerEndpointsEnable.fileMove') && globals.config.get('Butler.restServerEndpointsEnable.fileMove')) { globals.logger.debug('Registering REST endpoint PUT /v4/filemove'); restServer.put({ path: '/v4/filemove' }, rest.disk_utils.respondPUT_fileMove); } @@ -150,67 +150,67 @@ if (globals.config.has('Butler.restServerEndpointsEnable.fileCopy') && globals.c restServer.put({ path: '/v4/filecopy' }, rest.disk_utils.respondPUT_fileCopy); } -if (globals.config.get('Butler.restServerEndpointsEnable.activeUserCount')) { +if (globals.config.has('Butler.restServerEndpointsEnable.activeUserCount') && globals.config.get('Butler.restServerEndpointsEnable.activeUserCount')) { globals.logger.debug('Registering REST endpoint GET /v4/activeusercount'); restServer.get({ path: '/v4/activeusercount' }, rest.activeUserCount.respondGET_activeUserCount); } -if (globals.config.get('Butler.restServerEndpointsEnable.activeUsers')) { +if (globals.config.has('Butler.restServerEndpointsEnable.activeUsers') && globals.config.get('Butler.restServerEndpointsEnable.activeUsers')) { globals.logger.debug('Registering REST endpoint GET /v4/activeusers'); restServer.get({ path: '/v4/activeusers' }, rest.activeUsers.respondGET_activeUsers); } -if (globals.config.get('Butler.restServerEndpointsEnable.slackPostMessage')) { +if (globals.config.has('Butler.restServerEndpointsEnable.slackPostMessage') && globals.config.get('Butler.restServerEndpointsEnable.slackPostMessage')) { globals.logger.debug('Registering REST endpoint PUT /v4/slackpostmessage'); restServer.put({ path: '/v4/slackpostmessage' }, rest.slackPostMessage.respondPUT_slackPostMessage); } -if (globals.config.get('Butler.restServerEndpointsEnable.createDir')) { +if (globals.config.has('Butler.restServerEndpointsEnable.createDir') && globals.config.get('Butler.restServerEndpointsEnable.createDir')) { globals.logger.debug('Registering REST endpoint POST /v4/createdir'); restServer.post({ path: '/v4/createdir' }, rest.disk_utils.respondPOST_createDir); } -if (globals.config.get('Butler.restServerEndpointsEnable.createDirQVD')) { +if (globals.config.has('Butler.restServerEndpointsEnable.createDirQVD') && globals.config.get('Butler.restServerEndpointsEnable.createDirQVD')) { globals.logger.debug('Registering REST endpoint POST /v4/createdirqvd'); restServer.post({ path: '/v4/createdirqvd' }, rest.disk_utils.respondPOST_createDirQVD); } -if (globals.config.get('Butler.restServerEndpointsEnable.mqttPublishMessage')) { +if (globals.config.has('Butler.restServerEndpointsEnable.mqttPublishMessage') && globals.config.get('Butler.restServerEndpointsEnable.mqttPublishMessage')) { globals.logger.debug('Registering REST endpoint PUT /v4/mqttpublishmessage'); restServer.put({ path: '/v4/mqttpublishmessage' }, rest.mqttPublishMessage.respondPUT_mqttPublishMessage); } -if (globals.config.get('Butler.restServerEndpointsEnable.senseStartTask')) { +if (globals.config.has('Butler.restServerEndpointsEnable.senseStartTask') && globals.config.get('Butler.restServerEndpointsEnable.senseStartTask')) { globals.logger.debug('Registering REST endpoint PUT /v4/sensestarttask'); restServer.put({ path: '/v4/reloadtask/:taskId/start' }, rest.senseStartTask.respondPUT_senseStartTask); } -if (globals.config.get('Butler.restServerEndpointsEnable.senseAppDump')) { +if (globals.config.has('Butler.restServerEndpointsEnable.senseAppDump') && globals.config.get('Butler.restServerEndpointsEnable.senseAppDump')) { globals.logger.debug('Registering REST endpoint GET /v4/senseappdump'); restServer.get({ path: '/v4/senseappdump/:appId' }, rest.senseAppDump.respondGET_senseAppDump); } -if (globals.config.get('Butler.restServerEndpointsEnable.senseListApps')) { +if (globals.config.has('Butler.restServerEndpointsEnable.senseListApps') && globals.config.get('Butler.restServerEndpointsEnable.senseListApps')) { globals.logger.debug('Registering REST endpoint GET /v4/senselistapps'); restServer.get({ path: '/v4/senselistapps' }, rest.senseListApps.respondGET_senseListApps); } -if (globals.config.get('Butler.restServerEndpointsEnable.butlerping')) { +if (globals.config.has('Butler.restServerEndpointsEnable.butlerping') && globals.config.get('Butler.restServerEndpointsEnable.butlerping')) { globals.logger.debug('Registering REST endpoint GET /v4/butlerping'); restServer.get({ path: '/v4/butlerping' }, rest.butlerPing.respondGET_butlerPing); } -if (globals.config.get('Butler.restServerEndpointsEnable.base62ToBase16')) { +if (globals.config.has('Butler.restServerEndpointsEnable.base62ToBase16') && globals.config.get('Butler.restServerEndpointsEnable.base62ToBase16')) { globals.logger.debug('Registering REST endpoint GET /v4/base62tobase16'); restServer.get({ path: '/v4/base62tobase16' }, rest.base62ToBase16.respondGET_base62ToBase16); } -if (globals.config.get('Butler.restServerEndpointsEnable.base16ToBase62')) { +if (globals.config.has('Butler.restServerEndpointsEnable.base16ToBase62') && globals.config.get('Butler.restServerEndpointsEnable.base16ToBase62')) { globals.logger.debug('Registering REST endpoint GET /v4/base16tobase62'); restServer.get({ path: '/v4/base16tobase62' }, rest.base16ToBase62.respondGET_base16ToBase62); } -if (globals.config.get('Butler.restServerEndpointsEnable.keyValueStore')) { +if (globals.config.has('Butler.restServerEndpointsEnable.keyValueStore') && globals.config.get('Butler.restServerEndpointsEnable.keyValueStore')) { globals.logger.debug('Registering REST endpoint GET /v4/keyvaluenamespaces'); restServer.get({ path: '/v4/keyvaluesnamespaces' }, rest.keyValueStore.respondGET_keyvaluesnamespaces); @@ -230,32 +230,32 @@ if (globals.config.get('Butler.restServerEndpointsEnable.keyValueStore')) { restServer.del({ path: '/v4/keyvalues/:namespace' }, rest.keyValueStore.respondDELETE_keyvaluesDelete); } -if (globals.config.get('Butler.scheduler.enable')) { - if (globals.config.get('Butler.restServerEndpointsEnable.scheduler.createNewSchedule')) { +if (globals.config.has('Butler.scheduler.enable') && globals.config.get('Butler.scheduler.enable')) { + if (globals.config.has('Butler.restServerEndpointsEnable.scheduler.createNewSchedule') && globals.config.get('Butler.restServerEndpointsEnable.scheduler.createNewSchedule')) { globals.logger.debug('Registering REST endpoint POST /v4/schedules'); restServer.post({ path: '/v4/schedules' }, rest.scheduler.respondPOST_schedules); } - if (globals.config.get('Butler.restServerEndpointsEnable.scheduler.getSchedule')) { + if (globals.config.has('Butler.restServerEndpointsEnable.scheduler.getSchedule') && globals.config.get('Butler.restServerEndpointsEnable.scheduler.getSchedule')) { globals.logger.debug('Registering REST endpoint GET /v4/schedules'); restServer.get({ path: '/v4/schedules' }, rest.scheduler.respondGET_schedules); } - if (globals.config.get('Butler.restServerEndpointsEnable.scheduler.deleteSchedule')) { + if (globals.config.has('Butler.restServerEndpointsEnable.scheduler.deleteSchedule') && globals.config.get('Butler.restServerEndpointsEnable.scheduler.deleteSchedule')) { globals.logger.debug('Registering REST endpoint DELETE /v4/schedules'); restServer.del({ path: '/v4/schedules/:scheduleId' }, rest.scheduler.respondDELETE_schedules); } - if (globals.config.get('Butler.restServerEndpointsEnable.scheduler.startSchedule')) { + if (globals.config.has('Butler.restServerEndpointsEnable.scheduler.startSchedule') && globals.config.get('Butler.restServerEndpointsEnable.scheduler.startSchedule')) { globals.logger.debug('Registering REST endpoint POST /v4/schedulestart'); restServer.put({ path: '/v4/schedules/:scheduleId/start' }, rest.scheduler.respondPUT_schedulesStart); } - if (globals.config.get('Butler.restServerEndpointsEnable.scheduler.stopSchedule')) { + if (globals.config.has('Butler.restServerEndpointsEnable.scheduler.stopSchedule') && globals.config.get('Butler.restServerEndpointsEnable.scheduler.stopSchedule')) { globals.logger.debug('Registering REST endpoint POST /v4/schedulestop'); restServer.put({ path: '/v4/schedules/:scheduleId/stop' }, rest.scheduler.respondPUT_schedulesStop); diff --git a/src/config/production_template.yaml b/src/config/production_template.yaml index 14333cd3..e860e89e 100644 --- a/src/config/production_template.yaml +++ b/src/config/production_template.yaml @@ -81,15 +81,20 @@ Butler: serverHost: serverPort: 8080 - fileCopyApprovedDirectories: # List of directories between which file copying via the REST API can be done. - - fromDirectory: /Users/goran/butler-test-dir1//abc//.. + # List of directories between which file copying via the REST API can be done. + # Butler will try to clean up messy paths like this one, which resolves to /Users/goran/butler-test-dir1 + # How? First you have /Users/goran/butler-test-dir1//abc which cleans up to /Users/goran/butler-test-dir1/abc, + # then up one level (..). + fileCopyApprovedDirectories: + - fromDirectory: /Users/goran/butler-test-dir1//abc//.. toDirectory: /Users/goran/butler-test-dir2 - fromDirectory: /Users/goran/butler-test-dir2 toDirectory: /Users/goran/butler-test-dir1 - fromDirectory: /from/some/directory2 toDirectory: /to/some/directory2 - fileMoveApprovedDirectories: # List of directories between which file moves via the REST API can be done. + # List of directories between which file moves via the REST API can be done. + fileMoveApprovedDirectories: - fromDirectory: /Users/goran/butler-test-dir1//abc//.. toDirectory: /Users/goran/butler-test-dir2 - fromDirectory: /Users/goran/butler-test-dir2 @@ -97,10 +102,12 @@ Butler: - fromDirectory: /from/some/directory2 toDirectory: /to/some/directory2 - fileDeleteApprovedDirectories: # List of directories in which file deletes via the REST API can be done. + # List of directories in which file deletes via the REST API can be done. + fileDeleteApprovedDirectories: - /Users/goran/butler-test-dir1 - /Users/goran/butler-test-dir1//abc//.. - /Users/goran/butler-test-dir2 + # Enable/disable individual REST API endpoints. Set config item below to true to enable that endpoint. restServerEndpointsEnable: activeUserCount: false From 3fc82e41205ce85a3a35c2bc0cebc986f751e248 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?G=C3=B6ran=20Sander?= Date: Tue, 27 Oct 2020 18:53:06 +0100 Subject: [PATCH 09/10] changelog update --- changelog.md | 1 + 1 file changed, 1 insertion(+) diff --git a/changelog.md b/changelog.md index ac9c3abf..12fde74c 100644 --- a/changelog.md +++ b/changelog.md @@ -10,6 +10,7 @@ - Updated dependencies to latest versions. - Minor stability changes/improvements to filemove and filedelete API methods. +- Change parsing of config file to make Butler more forgiving if some parts of the config file are missing. ### Breaking changes From 4e18ee6cd67524c2abcb22a1d57dfacd7acabaae Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?G=C3=B6ran=20Sander?= Date: Tue, 27 Oct 2020 19:18:42 +0100 Subject: [PATCH 10/10] Added general Sense demo app for Butler APIs --- changelog.md | 1 + docs/sense_apps/Butler 4.1 demo app.qvf | Bin 0 -> 229376 bytes 2 files changed, 1 insertion(+) create mode 100644 docs/sense_apps/Butler 4.1 demo app.qvf diff --git a/changelog.md b/changelog.md index 12fde74c..8df52031 100644 --- a/changelog.md +++ b/changelog.md @@ -5,6 +5,7 @@ ### New features - File copy method in the REST API. +- Added Qlik Sense app "Butler 4.1 demo app" which contains examples of how Butler's API can be called from Sense load scripts. ### Fixes and patches diff --git a/docs/sense_apps/Butler 4.1 demo app.qvf b/docs/sense_apps/Butler 4.1 demo app.qvf new file mode 100644 index 0000000000000000000000000000000000000000..28fe63664ebd8a3f86913884339ce0f176e1e7ad GIT binary patch literal 229376 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 literal 0 HcmV?d00001