From 9a777c2abc998a5540aaa0b6fa6e995a0cfe046d Mon Sep 17 00:00:00 2001 From: Nakul Manchanda Date: Thu, 3 Sep 2020 10:50:22 -0400 Subject: [PATCH] update to src folder and npm scripts Signed-off-by: Nakul Manchanda --- bin/start.sh | 2 +- build/sample-node-api.zip | Bin 13667 -> 0 bytes package-lock.json | 1566 +++++++++++++---- package.json | 16 +- server/app.js | 168 -- src/config.js | 107 ++ {server => src}/config.json | 0 .../controllers/accounts.controller.js | 0 .../controllers/accountsCars.controller.js | 0 .../controllers/cars.controller.js | 0 data.js => src/data.js | 0 src/index.js | 39 + {server => src}/routes/accounts.route.js | 0 {server => src}/routes/accountsCars.route.js | 0 {server => src}/routes/cars.route.js | 0 {server => src}/routes/index.route.js | 12 + src/routes/swagger.route.js | 19 + {server => src}/services/accounts.service.js | 2 +- .../services/accountsCars.service.js | 2 +- {server => src}/services/cars.service.js | 2 +- {server => src}/swagger.json | 2 +- start-sample.sh | 7 +- 22 files changed, 1461 insertions(+), 483 deletions(-) delete mode 100644 build/sample-node-api.zip delete mode 100644 server/app.js create mode 100644 src/config.js rename {server => src}/config.json (100%) rename {server => src}/controllers/accounts.controller.js (100%) rename {server => src}/controllers/accountsCars.controller.js (100%) rename {server => src}/controllers/cars.controller.js (100%) rename data.js => src/data.js (100%) create mode 100644 src/index.js rename {server => src}/routes/accounts.route.js (100%) rename {server => src}/routes/accountsCars.route.js (100%) rename {server => src}/routes/cars.route.js (100%) rename {server => src}/routes/index.route.js (62%) create mode 100644 src/routes/swagger.route.js rename {server => src}/services/accounts.service.js (93%) rename {server => src}/services/accountsCars.service.js (95%) rename {server => src}/services/cars.service.js (92%) rename {server => src}/swagger.json (99%) diff --git a/bin/start.sh b/bin/start.sh index affc004..8f38c4e 100644 --- a/bin/start.sh +++ b/bin/start.sh @@ -32,7 +32,7 @@ echo 'load sample-node-api config' echo "start sample-node-api app on port ${MY_API_PORT}" #start component -$NODE_BIN $COMPONENT_DIR/server/app.js \ +$NODE_BIN $COMPONENT_DIR/src/index.js \ --service ${MY_API_NAME} \ --port ${MY_API_PORT} \ --key ${KEYSTORE_KEY} \ diff --git a/build/sample-node-api.zip b/build/sample-node-api.zip deleted file mode 100644 index 5b0bd87039e49b6a88d60e52ef2e110e0a3f0f1f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 13667 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 diff --git a/package-lock.json b/package-lock.json index 7de3629..31d35ed 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,9 +1,36 @@ { - "name": "sample-api", + "name": "sample-node-api", "version": "1.0.0", "lockfileVersion": 1, "requires": true, "dependencies": { + "@sindresorhus/is": { + "version": "0.14.0", + "resolved": "https://registry.npmjs.org/@sindresorhus/is/-/is-0.14.0.tgz", + "integrity": "sha512-9NET910DNaIPngYnLLPeg+Ogzqsi9uM4mSboU5y6p8S5DzMTVEsJZrawi+BoDNUVBa2DhJqQYUFvMDfgU062LQ==", + "dev": true + }, + "@szmarczak/http-timer": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@szmarczak/http-timer/-/http-timer-1.1.2.tgz", + "integrity": "sha512-XIB2XbzHTN6ieIjfIMV9hlVcfPU26s2vafYWQcZHWXHOxiaRZYEDKEwdl129Zyg50+foYV2jCgtrqSA6qNuNSA==", + "dev": true, + "requires": { + "defer-to-connect": "^1.0.1" + } + }, + "@types/color-name": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/@types/color-name/-/color-name-1.1.1.tgz", + "integrity": "sha512-rr+OQyAjxze7GgWrSaJwydHStIhHq2lvY3BOC2Mj7KnzI7XK0Uw1TOOdI9lDoajEbSWLiYgoo4f1R51erQfhPQ==", + "dev": true + }, + "abbrev": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz", + "integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==", + "dev": true + }, "accepts": { "version": "1.3.7", "resolved": "https://zowe.jfrog.io/zowe/api/npm/npm-release/accepts/-/accepts-1.3.7.tgz", @@ -13,22 +40,64 @@ "negotiator": "0.6.2" } }, - "ansi-regex": { + "ansi-align": { "version": "3.0.0", - "resolved": "https://zowe.jfrog.io/zowe/api/npm/npm-release/ansi-regex/-/ansi-regex-3.0.0.tgz", - "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=" + "resolved": "https://registry.npmjs.org/ansi-align/-/ansi-align-3.0.0.tgz", + "integrity": "sha512-ZpClVKqXN3RGBmKibdfWzqCY4lnjEuoNzU5T0oEFpfd/z5qJHVarukridD4juLO2FXMiwUQxr9WqQtaYa8XRYw==", + "dev": true, + "requires": { + "string-width": "^3.0.0" + } + }, + "ansi-regex": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz", + "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==" + }, + "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==", + "requires": { + "color-convert": "^1.9.0" + } + }, + "anymatch": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.1.tgz", + "integrity": "sha512-mM8522psRCqzV+6LhomX5wgp25YVibjh8Wj23I5RPkPppSVSjyKD2A2mBJmWGa+KN7f2D6LNh9jkBCeyLktzjg==", + "dev": true, + "requires": { + "normalize-path": "^3.0.0", + "picomatch": "^2.0.4" + } }, "array-flatten": { "version": "1.1.1", "resolved": "https://zowe.jfrog.io/zowe/api/npm/npm-release/array-flatten/-/array-flatten-1.1.1.tgz", "integrity": "sha1-ml9pkFGx5wczKPKgCJaLZOopVdI=" }, + "async": { + "version": "2.6.3", + "resolved": "https://registry.npmjs.org/async/-/async-2.6.3.tgz", + "integrity": "sha512-zflvls11DCy+dQWzTW2dzuilv8Z5X/pjfmZOWba6TNIVDm+2UDaJmXSOXlasHKfNBs8oo3M0aT50fDEWfKZjXg==", + "dev": true, + "requires": { + "lodash": "^4.17.14" + } + }, "balanced-match": { "version": "1.0.0", "resolved": "https://zowe.jfrog.io/zowe/api/npm/npm-release/balanced-match/-/balanced-match-1.0.0.tgz", "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=", "dev": true }, + "binary-extensions": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.1.0.tgz", + "integrity": "sha512-1Yj8h9Q+QDF5FzhMs/c9+6UntbD5MkRfRwac8DoEm9ZfUBZ7tZ55YcGVAzEe4bXsdQHEk+s9S5wsOKVdZrw0tQ==", + "dev": true + }, "body-parser": { "version": "1.19.0", "resolved": "https://zowe.jfrog.io/zowe/api/npm/npm-release/body-parser/-/body-parser-1.19.0.tgz", @@ -46,6 +115,62 @@ "type-is": "~1.6.17" } }, + "boxen": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/boxen/-/boxen-4.2.0.tgz", + "integrity": "sha512-eB4uT9RGzg2odpER62bBwSLvUeGC+WbRjjyyFhGsKnc8wp/m0+hQsMUvUe3H2V0D5vw0nBdO1hCJoZo5mKeuIQ==", + "dev": true, + "requires": { + "ansi-align": "^3.0.0", + "camelcase": "^5.3.1", + "chalk": "^3.0.0", + "cli-boxes": "^2.2.0", + "string-width": "^4.1.0", + "term-size": "^2.1.0", + "type-fest": "^0.8.1", + "widest-line": "^3.1.0" + }, + "dependencies": { + "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 + }, + "emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", + "dev": true + }, + "is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "dev": true + }, + "string-width": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.0.tgz", + "integrity": "sha512-zUz5JD+tgqtuDjMhwIg5uFVV3dtqZ9yQJlZVfq4I01/K5Paj5UHj7VyrQOJvzawSVlKpObApbfD0Ed6yJc+1eg==", + "dev": true, + "requires": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.0" + } + }, + "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, + "requires": { + "ansi-regex": "^5.0.0" + } + } + } + }, "brace-expansion": { "version": "1.1.11", "resolved": "https://zowe.jfrog.io/zowe/api/npm/npm-release/brace-expansion/-/brace-expansion-1.1.11.tgz", @@ -56,63 +181,174 @@ "concat-map": "0.0.1" } }, + "braces": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", + "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", + "dev": true, + "requires": { + "fill-range": "^7.0.1" + } + }, "bytes": { "version": "3.1.0", "resolved": "https://zowe.jfrog.io/zowe/api/npm/npm-release/bytes/-/bytes-3.1.0.tgz", "integrity": "sha1-9s95M6Ng4FiPqf3oVlHNx/gF0fY=" }, - "camelcase": { - "version": "4.1.0", - "resolved": "https://zowe.jfrog.io/zowe/api/npm/npm-release/camelcase/-/camelcase-4.1.0.tgz", - "integrity": "sha1-1UVjW+HjPFQmScaRc+Xeas+uNN0=" - }, - "cliui": { - "version": "3.2.0", - "resolved": "https://zowe.jfrog.io/zowe/api/npm/npm-release/cliui/-/cliui-3.2.0.tgz", - "integrity": "sha1-EgYBU3qRbSmUD5NNo7SNWFo5IT0=", + "cacheable-request": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/cacheable-request/-/cacheable-request-6.1.0.tgz", + "integrity": "sha512-Oj3cAGPCqOZX7Rz64Uny2GYAZNliQSqfbePrgAQ1wKAihYmCUnraBtJtKcGR4xz7wF+LoJC+ssFZvv5BgF9Igg==", + "dev": true, "requires": { - "string-width": "^1.0.1", - "strip-ansi": "^3.0.1", - "wrap-ansi": "^2.0.0" + "clone-response": "^1.0.2", + "get-stream": "^5.1.0", + "http-cache-semantics": "^4.0.0", + "keyv": "^3.0.0", + "lowercase-keys": "^2.0.0", + "normalize-url": "^4.1.0", + "responselike": "^1.0.2" }, "dependencies": { - "ansi-regex": { - "version": "2.1.1", - "resolved": "https://zowe.jfrog.io/zowe/api/npm/npm-release/ansi-regex/-/ansi-regex-2.1.1.tgz", - "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=" - }, - "is-fullwidth-code-point": { - "version": "1.0.0", - "resolved": "https://zowe.jfrog.io/zowe/api/npm/npm-release/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", - "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", + "get-stream": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-5.2.0.tgz", + "integrity": "sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA==", + "dev": true, "requires": { - "number-is-nan": "^1.0.0" + "pump": "^3.0.0" } }, - "string-width": { - "version": "1.0.2", - "resolved": "https://zowe.jfrog.io/zowe/api/npm/npm-release/string-width/-/string-width-1.0.2.tgz", - "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", + "lowercase-keys": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-2.0.0.tgz", + "integrity": "sha512-tqNXrS78oMOE73NMxK4EMLQsQowWf8jKooH9g7xPavRT706R6bkQJ6DY2Te7QukaZsulxa30wQ7bk0pm4XiHmA==", + "dev": true + } + } + }, + "camelcase": { + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", + "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==" + }, + "chalk": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz", + "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==", + "dev": true, + "requires": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "dependencies": { + "ansi-styles": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.2.1.tgz", + "integrity": "sha512-9VGjrMsG1vePxcSweQsN20KY/c4zN0h9fLjqAbwbPfahM3t+NL+M9HC8xeXG2I8pX5NoamTGNuomEUFI7fcUjA==", + "dev": true, "requires": { - "code-point-at": "^1.0.0", - "is-fullwidth-code-point": "^1.0.0", - "strip-ansi": "^3.0.0" + "@types/color-name": "^1.1.1", + "color-convert": "^2.0.1" } }, - "strip-ansi": { - "version": "3.0.1", - "resolved": "https://zowe.jfrog.io/zowe/api/npm/npm-release/strip-ansi/-/strip-ansi-3.0.1.tgz", - "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", + "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, "requires": { - "ansi-regex": "^2.0.0" + "color-name": "~1.1.4" + } + }, + "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 + }, + "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 + }, + "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, + "requires": { + "has-flag": "^4.0.0" } } } }, + "chokidar": { + "version": "3.4.2", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.4.2.tgz", + "integrity": "sha512-IZHaDeBeI+sZJRX7lGcXsdzgvZqKv6sECqsbErJA4mHWfpRrD8B97kSFN4cQz6nGBGiuFia1MKR4d6c1o8Cv7A==", + "dev": true, + "requires": { + "anymatch": "~3.1.1", + "braces": "~3.0.2", + "fsevents": "~2.1.2", + "glob-parent": "~5.1.0", + "is-binary-path": "~2.1.0", + "is-glob": "~4.0.1", + "normalize-path": "~3.0.0", + "readdirp": "~3.4.0" + } + }, + "ci-info": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-2.0.0.tgz", + "integrity": "sha512-5tK7EtrZ0N+OLFMthtqOj4fI2Jeb88C4CAZPu25LDVUgXJ0A3Js4PMGqrn0JU1W0Mh1/Z8wZzYPxqUrXeBboCQ==", + "dev": true + }, + "cli-boxes": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/cli-boxes/-/cli-boxes-2.2.1.tgz", + "integrity": "sha512-y4coMcylgSCdVinjiDBuR8PCC2bLjyGTwEmPb9NHR/QaNU6EUOXcTY/s6VjGMD6ENSEaeQYHCY0GNGS5jfMwPw==", + "dev": true + }, + "cliui": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-5.0.0.tgz", + "integrity": "sha512-PYeGSEmmHM6zvoef2w8TPzlrnNpXIjTipYK780YswmIP9vjxmd6Y2a3CB2Ks6/AU8NHjZugXvo8w3oWM2qnwXA==", + "requires": { + "string-width": "^3.1.0", + "strip-ansi": "^5.2.0", + "wrap-ansi": "^5.1.0" + } + }, + "clone-response": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/clone-response/-/clone-response-1.0.2.tgz", + "integrity": "sha1-0dyXOSAxTfZ/vrlCI7TuNQI56Ws=", + "dev": true, + "requires": { + "mimic-response": "^1.0.0" + } + }, "code-point-at": { "version": "1.1.0", "resolved": "https://zowe.jfrog.io/zowe/api/npm/npm-release/code-point-at/-/code-point-at-1.1.0.tgz", - "integrity": "sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c=" + "integrity": "sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c=", + "dev": true + }, + "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==", + "requires": { + "color-name": "1.1.3" + } + }, + "color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=" }, "concat-map": { "version": "0.0.1", @@ -120,6 +356,20 @@ "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=", "dev": true }, + "configstore": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/configstore/-/configstore-5.0.1.tgz", + "integrity": "sha512-aMKprgk5YhBNyH25hj8wGt2+D52Sw1DRRIzqBwLp2Ya9mFmY8KPvvtvmna8SxVR9JMZ4kzMD68N22vlaRpkeFA==", + "dev": true, + "requires": { + "dot-prop": "^5.2.0", + "graceful-fs": "^4.1.2", + "make-dir": "^3.0.0", + "unique-string": "^2.0.0", + "write-file-atomic": "^3.0.0", + "xdg-basedir": "^4.0.0" + } + }, "content-disposition": { "version": "0.5.3", "resolved": "https://zowe.jfrog.io/zowe/api/npm/npm-release/content-disposition/-/content-disposition-0.5.3.tgz", @@ -143,6 +393,159 @@ "resolved": "https://zowe.jfrog.io/zowe/api/npm/npm-release/cookie-signature/-/cookie-signature-1.0.6.tgz", "integrity": "sha1-4wOogrNCzD7oylE6eZmXNNqzriw=" }, + "copy-node-modules": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/copy-node-modules/-/copy-node-modules-1.1.1.tgz", + "integrity": "sha512-yHW0GIH6s515MTxnwsDW/ajL9EXGYNEztQFZ124PEMMNY4SFpS7/gVCQM7zgW2Tk+5k4mGU+nzx7gY4zXi/40A==", + "dev": true, + "requires": { + "async": "^2.6.1", + "graceful-fs": "^4.1.15", + "jsonfile": "^5.0.0", + "lodash.flatten": "^4.4.0", + "lodash.uniqwith": "^4.5.0", + "mkdirp": "^0.5.1", + "ncp": "^2.0.0", + "semver": "^5.6.0", + "yargs": "^12.0.5" + }, + "dependencies": { + "ansi-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", + "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", + "dev": true + }, + "cliui": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-4.1.0.tgz", + "integrity": "sha512-4FG+RSG9DL7uEwRUZXZn3SS34DiDPfzP0VOiEwtUWlE+AR2EIg+hSyvrIgUUfhdgR/UkAeW2QHgeP+hWrXs7jQ==", + "dev": true, + "requires": { + "string-width": "^2.1.1", + "strip-ansi": "^4.0.0", + "wrap-ansi": "^2.0.0" + } + }, + "get-caller-file": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-1.0.3.tgz", + "integrity": "sha512-3t6rVToeoZfYSGd8YoLFR2DJkiQrIiUrGcjvFX2mDw3bn6k2OtwHN0TNCLbBO+w8qTvimhDkv+LSscbJY1vE6w==", + "dev": true + }, + "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, + "requires": { + "minimist": "^1.2.5" + } + }, + "require-main-filename": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/require-main-filename/-/require-main-filename-1.0.1.tgz", + "integrity": "sha1-l/cXtp1IeE9fUmpsWqj/3aBVpNE=", + "dev": true + }, + "string-width": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", + "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", + "dev": true, + "requires": { + "is-fullwidth-code-point": "^2.0.0", + "strip-ansi": "^4.0.0" + } + }, + "strip-ansi": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", + "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", + "dev": true, + "requires": { + "ansi-regex": "^3.0.0" + } + }, + "wrap-ansi": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-2.1.0.tgz", + "integrity": "sha1-2Pw9KE3QV5T+hJc8rs3Rz4JP3YU=", + "dev": true, + "requires": { + "string-width": "^1.0.1", + "strip-ansi": "^3.0.1" + }, + "dependencies": { + "ansi-regex": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", + "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=", + "dev": true + }, + "is-fullwidth-code-point": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", + "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", + "dev": true, + "requires": { + "number-is-nan": "^1.0.0" + } + }, + "string-width": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", + "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", + "dev": true, + "requires": { + "code-point-at": "^1.0.0", + "is-fullwidth-code-point": "^1.0.0", + "strip-ansi": "^3.0.0" + } + }, + "strip-ansi": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", + "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", + "dev": true, + "requires": { + "ansi-regex": "^2.0.0" + } + } + } + }, + "yargs": { + "version": "12.0.5", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-12.0.5.tgz", + "integrity": "sha512-Lhz8TLaYnxq/2ObqHDql8dX8CJi97oHxrjUcYtzKbbykPtVW9WB+poxI+NM2UIzsMgNCZTIf0AQwsjK5yMAqZw==", + "dev": true, + "requires": { + "cliui": "^4.0.0", + "decamelize": "^1.2.0", + "find-up": "^3.0.0", + "get-caller-file": "^1.0.1", + "os-locale": "^3.0.0", + "require-directory": "^2.1.1", + "require-main-filename": "^1.0.1", + "set-blocking": "^2.0.0", + "string-width": "^2.0.0", + "which-module": "^2.0.0", + "y18n": "^3.2.1 || ^4.0.0", + "yargs-parser": "^11.1.1" + } + }, + "yargs-parser": { + "version": "11.1.1", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-11.1.1.tgz", + "integrity": "sha512-C6kB/WJDiaxONLJQnF8ccx9SEeoTTLek8RVbaOIsrAUS8VrBEXfmeSnCZxygc+XC2sNMBIwOOnfcxiynjHsVSQ==", + "dev": true, + "requires": { + "camelcase": "^5.0.0", + "decamelize": "^1.2.0" + } + } + } + }, "cors": { "version": "2.8.5", "resolved": "https://zowe.jfrog.io/zowe/api/npm/npm-release/cors/-/cors-2.8.5.tgz", @@ -152,6 +555,25 @@ "vary": "^1" } }, + "cross-spawn": { + "version": "6.0.5", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-6.0.5.tgz", + "integrity": "sha512-eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ==", + "dev": true, + "requires": { + "nice-try": "^1.0.4", + "path-key": "^2.0.1", + "semver": "^5.5.0", + "shebang-command": "^1.2.0", + "which": "^1.2.9" + } + }, + "crypto-random-string": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/crypto-random-string/-/crypto-random-string-2.0.0.tgz", + "integrity": "sha512-v1plID3y9r/lPhviJ1wrXpLeyUIGAZ2SHNYTEapm7/8A9nLPoyvVp3RK/EPFqn5kEznyWgYZNsRtYYIWbuG8KA==", + "dev": true + }, "debug": { "version": "2.6.9", "resolved": "https://zowe.jfrog.io/zowe/api/npm/npm-release/debug/-/debug-2.6.9.tgz", @@ -165,6 +587,27 @@ "resolved": "https://zowe.jfrog.io/zowe/api/npm/npm-release/decamelize/-/decamelize-1.2.0.tgz", "integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=" }, + "decompress-response": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/decompress-response/-/decompress-response-3.3.0.tgz", + "integrity": "sha1-gKTdMjdIOEv6JICDYirt7Jgq3/M=", + "dev": true, + "requires": { + "mimic-response": "^1.0.0" + } + }, + "deep-extend": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/deep-extend/-/deep-extend-0.6.0.tgz", + "integrity": "sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA==", + "dev": true + }, + "defer-to-connect": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/defer-to-connect/-/defer-to-connect-1.1.3.tgz", + "integrity": "sha512-0ISdNousHvZT2EiFlZeZAHBUvSxmKswVCEf8hW7KWgG4a8MVEu/3Vb6uWYozkjylyCxe0JBIiRB1jV45S70WVQ==", + "dev": true + }, "depd": { "version": "1.1.2", "resolved": "https://zowe.jfrog.io/zowe/api/npm/npm-release/depd/-/depd-1.1.2.tgz", @@ -175,24 +618,51 @@ "resolved": "https://zowe.jfrog.io/zowe/api/npm/npm-release/destroy/-/destroy-1.0.4.tgz", "integrity": "sha1-l4hXRCxEdJ5CBmE+N5RiBYJqvYA=" }, + "dot-prop": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/dot-prop/-/dot-prop-5.2.0.tgz", + "integrity": "sha512-uEUyaDKoSQ1M4Oq8l45hSE26SnTxL6snNnqvK/VWx5wJhmff5z0FUVJDKDanor/6w3kzE3i7XZOk+7wC0EXr1A==", + "dev": true, + "requires": { + "is-obj": "^2.0.0" + } + }, + "duplexer3": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/duplexer3/-/duplexer3-0.1.4.tgz", + "integrity": "sha1-7gHdHKwO08vH/b6jfcCo8c4ALOI=", + "dev": true + }, "ee-first": { "version": "1.1.1", "resolved": "https://zowe.jfrog.io/zowe/api/npm/npm-release/ee-first/-/ee-first-1.1.1.tgz", "integrity": "sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0=" }, + "emoji-regex": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz", + "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==" + }, "encodeurl": { "version": "1.0.2", "resolved": "https://zowe.jfrog.io/zowe/api/npm/npm-release/encodeurl/-/encodeurl-1.0.2.tgz", "integrity": "sha1-rT/0yG7C0CkyL1oCw6mmBslbP1k=" }, - "error-ex": { - "version": "1.3.2", - "resolved": "https://zowe.jfrog.io/zowe/api/npm/npm-release/error-ex/-/error-ex-1.3.2.tgz", - "integrity": "sha1-tKxAZIEH/c3PriQvQovqihTU8b8=", + "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==", + "dev": true, "requires": { - "is-arrayish": "^0.2.1" + "once": "^1.4.0" } }, + "escape-goat": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/escape-goat/-/escape-goat-2.1.1.tgz", + "integrity": "sha512-8/uIhbG12Csjy2JEW7D9pHbreaVaS/OpN3ycnyvElTdwM5n6GY6W6e2IPemfvGZeUMqZ9A/3GqIZMgKnBhAw/Q==", + "dev": true + }, "escape-html": { "version": "1.0.3", "resolved": "https://zowe.jfrog.io/zowe/api/npm/npm-release/escape-html/-/escape-html-1.0.3.tgz", @@ -204,29 +674,18 @@ "integrity": "sha1-Qa4u62XvpiJorr/qg6x9eSmbCIc=" }, "execa": { - "version": "0.7.0", - "resolved": "https://zowe.jfrog.io/zowe/api/npm/npm-release/execa/-/execa-0.7.0.tgz", - "integrity": "sha1-lEvs00zEHuMqY6n68nrVpl/Fl3c=", + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/execa/-/execa-1.0.0.tgz", + "integrity": "sha512-adbxcyWV46qiHyvSp50TKt05tB4tK3HcmF7/nxfAdhnox83seTDbwnaqKO4sXRy7roHAIFqJP/Rw/AuEbX61LA==", + "dev": true, "requires": { - "cross-spawn": "^5.0.1", - "get-stream": "^3.0.0", + "cross-spawn": "^6.0.0", + "get-stream": "^4.0.0", "is-stream": "^1.1.0", "npm-run-path": "^2.0.0", "p-finally": "^1.0.0", "signal-exit": "^3.0.0", "strip-eof": "^1.0.0" - }, - "dependencies": { - "cross-spawn": { - "version": "5.1.0", - "resolved": "https://zowe.jfrog.io/zowe/api/npm/npm-release/cross-spawn/-/cross-spawn-5.1.0.tgz", - "integrity": "sha1-6L0O/uWPz/b4+UUQoKVUu/ojVEk=", - "requires": { - "lru-cache": "^4.0.1", - "shebang-command": "^1.2.0", - "which": "^1.2.9" - } - } } }, "express": { @@ -266,6 +725,15 @@ "vary": "~1.1.2" } }, + "fill-range": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", + "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", + "dev": true, + "requires": { + "to-regex-range": "^5.0.1" + } + }, "finalhandler": { "version": "1.1.2", "resolved": "https://zowe.jfrog.io/zowe/api/npm/npm-release/finalhandler/-/finalhandler-1.1.2.tgz", @@ -281,11 +749,11 @@ } }, "find-up": { - "version": "2.1.0", - "resolved": "https://zowe.jfrog.io/zowe/api/npm/npm-release/find-up/-/find-up-2.1.0.tgz", - "integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", + "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", "requires": { - "locate-path": "^2.0.0" + "locate-path": "^3.0.0" } }, "forwarded": { @@ -304,15 +772,26 @@ "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=", "dev": true }, + "fsevents": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.1.3.tgz", + "integrity": "sha512-Auw9a4AxqWpa9GUfj370BMPzzyncfBABW8Mab7BGWBYDj4Isgq+cDKtx0i6u9jcX9pQDnswsaaOTgTmA5pEjuQ==", + "dev": true, + "optional": true + }, "get-caller-file": { - "version": "1.0.3", - "resolved": "https://zowe.jfrog.io/zowe/api/npm/npm-release/get-caller-file/-/get-caller-file-1.0.3.tgz", - "integrity": "sha1-+Xj6TJDR3+f/LWvtoqUV5xO9z0o=" + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", + "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==" }, "get-stream": { - "version": "3.0.0", - "resolved": "https://zowe.jfrog.io/zowe/api/npm/npm-release/get-stream/-/get-stream-3.0.0.tgz", - "integrity": "sha1-jpQ9E1jcN1VQVOy+LtsFqhdO3hQ=" + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-4.1.0.tgz", + "integrity": "sha512-GMat4EJ5161kIy2HevLlr4luNjBgvmj413KaQA7jt4V8B4RDsfpHk7WQ9GVqfYyyx8OS/L66Kox+rJRNklLK7w==", + "dev": true, + "requires": { + "pump": "^3.0.0" + } }, "glob": { "version": "7.1.6", @@ -328,15 +807,66 @@ "path-is-absolute": "^1.0.0" } }, - "graceful-fs": { - "version": "4.2.3", - "resolved": "https://zowe.jfrog.io/zowe/api/npm/npm-release/graceful-fs/-/graceful-fs-4.2.3.tgz", - "integrity": "sha1-ShL/G2A3bvCYYsIJPt2Qgyi+hCM=" + "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, + "requires": { + "is-glob": "^4.0.1" + } }, - "hosted-git-info": { - "version": "2.8.5", - "resolved": "https://zowe.jfrog.io/zowe/api/npm/npm-release/hosted-git-info/-/hosted-git-info-2.8.5.tgz", - "integrity": "sha1-dZz88sTRVq3lmwst+r3cQqa5xww=" + "global-dirs": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/global-dirs/-/global-dirs-2.0.1.tgz", + "integrity": "sha512-5HqUqdhkEovj2Of/ms3IeS/EekcO54ytHRLV4PEY2rhRwrHXLQjeVEES0Lhka0xwNDtGYn58wyC4s5+MHsOO6A==", + "dev": true, + "requires": { + "ini": "^1.3.5" + } + }, + "got": { + "version": "9.6.0", + "resolved": "https://registry.npmjs.org/got/-/got-9.6.0.tgz", + "integrity": "sha512-R7eWptXuGYxwijs0eV+v3o6+XH1IqVK8dJOEecQfTmkncw9AV4dcw/Dhxi8MdlqPthxxpZyizMzyg8RTmEsG+Q==", + "dev": true, + "requires": { + "@sindresorhus/is": "^0.14.0", + "@szmarczak/http-timer": "^1.1.2", + "cacheable-request": "^6.0.0", + "decompress-response": "^3.3.0", + "duplexer3": "^0.1.4", + "get-stream": "^4.1.0", + "lowercase-keys": "^1.0.1", + "mimic-response": "^1.0.1", + "p-cancelable": "^1.0.0", + "to-readable-stream": "^1.0.0", + "url-parse-lax": "^3.0.0" + } + }, + "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==", + "dev": true + }, + "has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", + "dev": true + }, + "has-yarn": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/has-yarn/-/has-yarn-2.1.0.tgz", + "integrity": "sha512-UqBRqi4ju7T+TqGNdqAO0PaSVGsDGJUBQvk9eUWNGRY1CFGDzYhLWoM7JQEemnlvVcv/YEmc2wNW8BC24EnUsw==", + "dev": true + }, + "http-cache-semantics": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-4.1.0.tgz", + "integrity": "sha512-carPklcUh7ROWRK7Cv27RPtdhYhUsela/ue5/jKzjegVvXDqM2ILE9Q2BGn9JZJh1g87cp56su/FgQSzcWS8cQ==", + "dev": true }, "http-errors": { "version": "1.7.2", @@ -365,6 +895,24 @@ "safer-buffer": ">= 2.1.2 < 3" } }, + "ignore-by-default": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/ignore-by-default/-/ignore-by-default-1.0.1.tgz", + "integrity": "sha1-SMptcvbGo68Aqa1K5odr44ieKwk=", + "dev": true + }, + "import-lazy": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/import-lazy/-/import-lazy-2.1.0.tgz", + "integrity": "sha1-BWmOPUXIjo1+nZLLBYTnfwlvPkM=", + "dev": true + }, + "imurmurhash": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", + "integrity": "sha1-khi5srkoojixPcT7a21XbyMUU+o=", + "dev": true + }, "inflight": { "version": "1.0.6", "resolved": "https://zowe.jfrog.io/zowe/api/npm/npm-release/inflight/-/inflight-1.0.6.tgz", @@ -381,71 +929,219 @@ "integrity": "sha1-sX0I0ya0Qj5Wjv9xn5GwscvfafE=", "dev": true }, + "ini": { + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.5.tgz", + "integrity": "sha512-RZY5huIKCMRWDUqZlEi72f/lmXKMvuszcMBduliQ3nnWbx9X/ZBQO7DijMEYS9EhHBb2qacRUMtC7svLwe0lcw==", + "dev": true + }, "invert-kv": { - "version": "1.0.0", - "resolved": "https://zowe.jfrog.io/zowe/api/npm/npm-release/invert-kv/-/invert-kv-1.0.0.tgz", - "integrity": "sha1-EEqOSqym09jNFXqO+L+rLXo//bY=" + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/invert-kv/-/invert-kv-2.0.0.tgz", + "integrity": "sha512-wPVv/y/QQ/Uiirj/vh3oP+1Ww+AWehmi1g5fFWGPF6IpCBCDVrhgHRMvrLfdYcwDh3QJbGXDW4JAuzxElLSqKA==", + "dev": true }, "ipaddr.js": { "version": "1.9.0", "resolved": "https://zowe.jfrog.io/zowe/api/npm/npm-release/ipaddr.js/-/ipaddr.js-1.9.0.tgz", "integrity": "sha1-N9905DCg5HVQ/lSi3v4w2KzZX2U=" }, - "is-arrayish": { - "version": "0.2.1", - "resolved": "https://zowe.jfrog.io/zowe/api/npm/npm-release/is-arrayish/-/is-arrayish-0.2.1.tgz", - "integrity": "sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0=" + "is-binary-path": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", + "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", + "dev": true, + "requires": { + "binary-extensions": "^2.0.0" + } + }, + "is-ci": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-ci/-/is-ci-2.0.0.tgz", + "integrity": "sha512-YfJT7rkpQB0updsdHLGWrvhBJfcfzNNawYDNIyQXJz0IViGf75O8EBPKSdvw2rF+LGCsX4FZ8tcr3b19LcZq4w==", + "dev": true, + "requires": { + "ci-info": "^2.0.0" + } + }, + "is-extglob": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", + "integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=", + "dev": true }, "is-fullwidth-code-point": { "version": "2.0.0", "resolved": "https://zowe.jfrog.io/zowe/api/npm/npm-release/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=" }, + "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, + "requires": { + "is-extglob": "^2.1.1" + } + }, + "is-installed-globally": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/is-installed-globally/-/is-installed-globally-0.3.2.tgz", + "integrity": "sha512-wZ8x1js7Ia0kecP/CHM/3ABkAmujX7WPvQk6uu3Fly/Mk44pySulQpnHG46OMjHGXApINnV4QhY3SWnECO2z5g==", + "dev": true, + "requires": { + "global-dirs": "^2.0.1", + "is-path-inside": "^3.0.1" + } + }, + "is-npm": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/is-npm/-/is-npm-4.0.0.tgz", + "integrity": "sha512-96ECIfh9xtDDlPylNPXhzjsykHsMJZ18ASpaWzQyBr4YRTcVjUvzaHayDAES2oU/3KpljhHUjtSRNiDwi0F0ig==", + "dev": true + }, + "is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "dev": true + }, + "is-obj": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-obj/-/is-obj-2.0.0.tgz", + "integrity": "sha512-drqDG3cbczxxEJRoOXcOjtdp1J/lyp1mNn0xaznRs8+muBhgQcrnbspox5X5fOw0HnMnbfDzvnEMEtqDEJEo8w==", + "dev": true + }, + "is-path-inside": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-3.0.2.tgz", + "integrity": "sha512-/2UGPSgmtqwo1ktx8NDHjuPwZWmHhO+gj0f93EkhLB5RgW9RZevWYYlIkS6zePc6U2WpOdQYIwHe9YC4DWEBVg==", + "dev": true + }, "is-stream": { "version": "1.1.0", "resolved": "https://zowe.jfrog.io/zowe/api/npm/npm-release/is-stream/-/is-stream-1.1.0.tgz", - "integrity": "sha1-EtSj3U5o4Lec6428hBc66A2RykQ=" + "integrity": "sha1-EtSj3U5o4Lec6428hBc66A2RykQ=", + "dev": true + }, + "is-typedarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz", + "integrity": "sha1-5HnICFjfDBsR3dppQPlgEfzaSpo=", + "dev": true + }, + "is-yarn-global": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/is-yarn-global/-/is-yarn-global-0.3.0.tgz", + "integrity": "sha512-VjSeb/lHmkoyd8ryPVIKvOCn4D1koMqY+vqyjjUfc3xyKtP4dYOxM44sZrnqQSzSds3xyOrUTLTC9LVCVgLngw==", + "dev": true }, "isexe": { "version": "2.0.0", "resolved": "https://zowe.jfrog.io/zowe/api/npm/npm-release/isexe/-/isexe-2.0.0.tgz", - "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=" + "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=", + "dev": true }, - "lcid": { - "version": "1.0.0", - "resolved": "https://zowe.jfrog.io/zowe/api/npm/npm-release/lcid/-/lcid-1.0.0.tgz", - "integrity": "sha1-MIrMr6C8SDo4Z7S28rlQYlHRuDU=", + "json-buffer": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.0.tgz", + "integrity": "sha1-Wx85evx11ne96Lz8Dkfh+aPZqJg=", + "dev": true + }, + "jsonfile": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-5.0.0.tgz", + "integrity": "sha512-NQRZ5CRo74MhMMC3/3r5g2k4fjodJ/wh8MxjFbCViWKFjxrnudWSY5vomh+23ZaXzAS7J3fBZIR2dV6WbmfM0w==", + "dev": true, "requires": { - "invert-kv": "^1.0.0" + "graceful-fs": "^4.1.6", + "universalify": "^0.1.2" } }, - "load-json-file": { - "version": "2.0.0", - "resolved": "https://zowe.jfrog.io/zowe/api/npm/npm-release/load-json-file/-/load-json-file-2.0.0.tgz", - "integrity": "sha1-eUfkIUmvgNaWy/eXvKq8/h/inKg=", + "keyv": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/keyv/-/keyv-3.1.0.tgz", + "integrity": "sha512-9ykJ/46SN/9KPM/sichzQ7OvXyGDYKGTaDlKMGCAlg2UK8KRy4jb0d8sFc+0Tt0YYnThq8X2RZgCg74RPxgcVA==", + "dev": true, "requires": { - "graceful-fs": "^4.1.2", - "parse-json": "^2.2.0", - "pify": "^2.0.0", - "strip-bom": "^3.0.0" + "json-buffer": "3.0.0" + } + }, + "latest-version": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/latest-version/-/latest-version-5.1.0.tgz", + "integrity": "sha512-weT+r0kTkRQdCdYCNtkMwWXQTMEswKrFBkm4ckQOMVhhqhIMI1UT2hMj+1iigIhgSZm5gTmrRXBNoGUgaTY1xA==", + "dev": true, + "requires": { + "package-json": "^6.3.0" + } + }, + "lcid": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/lcid/-/lcid-2.0.0.tgz", + "integrity": "sha512-avPEb8P8EGnwXKClwsNUgryVjllcRqtMYa49NTsbQagYuT1DcXnl1915oxWjoyGrXR6zH/Y0Zc96xWsPcoDKeA==", + "dev": true, + "requires": { + "invert-kv": "^2.0.0" } }, "locate-path": { - "version": "2.0.0", - "resolved": "https://zowe.jfrog.io/zowe/api/npm/npm-release/locate-path/-/locate-path-2.0.0.tgz", - "integrity": "sha1-K1aLJl7slExtnA3pw9u7ygNUzY4=", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", + "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", "requires": { - "p-locate": "^2.0.0", + "p-locate": "^3.0.0", "path-exists": "^3.0.0" } }, - "lru-cache": { - "version": "4.1.5", - "resolved": "https://zowe.jfrog.io/zowe/api/npm/npm-release/lru-cache/-/lru-cache-4.1.5.tgz", - "integrity": "sha1-i75Q6oW+1ZvJ4z3KuCNe6bz0Q80=", + "lodash": { + "version": "4.17.20", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.20.tgz", + "integrity": "sha512-PlhdFcillOINfeV7Ni6oF1TAEayyZBoZ8bcshTHqOYJYlrqzRK5hagpagky5o4HfCzzd1TRkXPMFq6cKk9rGmA==", + "dev": true + }, + "lodash.flatten": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/lodash.flatten/-/lodash.flatten-4.4.0.tgz", + "integrity": "sha1-8xwiIlqWMtK7+OSt2+8kCqdlph8=", + "dev": true + }, + "lodash.uniqwith": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/lodash.uniqwith/-/lodash.uniqwith-4.5.0.tgz", + "integrity": "sha1-egy/ZfQ7WShiWp1NDcVLGMrcfvM=", + "dev": true + }, + "lowercase-keys": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-1.0.1.tgz", + "integrity": "sha512-G2Lj61tXDnVFFOi8VZds+SoQjtQC3dgokKdDG2mTm1tx4m50NUHBOZSBwQQHyy0V12A0JTG4icfZQH+xPyh8VA==", + "dev": true + }, + "make-dir": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", + "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", + "dev": true, "requires": { - "pseudomap": "^1.0.2", - "yallist": "^2.1.2" + "semver": "^6.0.0" + }, + "dependencies": { + "semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "dev": true + } + } + }, + "map-age-cleaner": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/map-age-cleaner/-/map-age-cleaner-0.1.3.tgz", + "integrity": "sha512-bJzx6nMoP6PDLPBFmg7+xRKeFZvFboMrGlxmNj9ClvX53KrmvM5bXFXEWjbz4cz1AFn+jWJ9z/DJSz7hrs0w3w==", + "dev": true, + "requires": { + "p-defer": "^1.0.0" } }, "media-typer": { @@ -454,11 +1150,14 @@ "integrity": "sha1-hxDXrwqmJvj/+hzgAWhUUmMlV0g=" }, "mem": { - "version": "1.1.0", - "resolved": "https://zowe.jfrog.io/zowe/api/npm/npm-release/mem/-/mem-1.1.0.tgz", - "integrity": "sha1-Xt1StIXKHZAP5kiVUFOZoN+kX3Y=", + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/mem/-/mem-4.3.0.tgz", + "integrity": "sha512-qX2bG48pTqYRVmDB37rn/6PT7LcR8T7oAX3bf99u1Tt1nzxYfxkgqDwUwolPlXweM0XzBOBFzSx4kfp7KP1s/w==", + "dev": true, "requires": { - "mimic-fn": "^1.0.0" + "map-age-cleaner": "^0.1.1", + "mimic-fn": "^2.0.0", + "p-is-promise": "^2.0.0" } }, "merge-descriptors": { @@ -490,9 +1189,16 @@ } }, "mimic-fn": { - "version": "1.2.0", - "resolved": "https://zowe.jfrog.io/zowe/api/npm/npm-release/mimic-fn/-/mimic-fn-1.2.0.tgz", - "integrity": "sha1-ggyGo5M0ZA6ZUWkovQP8qIBX0CI=" + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz", + "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==", + "dev": true + }, + "mimic-response": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-1.0.1.tgz", + "integrity": "sha512-j5EctnkH7amfV/q5Hgmoal1g2QHFJRraOtmx0JpIqkxhBhI/lJSl1nMpQ45hVarwNETOoWEimndZ4QK0RHxuxQ==", + "dev": true }, "minimatch": { "version": "3.0.4", @@ -503,6 +1209,12 @@ "brace-expansion": "^1.1.7" } }, + "minimist": { + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz", + "integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==", + "dev": true + }, "mkdirp": { "version": "1.0.3", "resolved": "https://zowe.jfrog.io/zowe/api/npm/npm-release/mkdirp/-/mkdirp-1.0.3.tgz", @@ -514,32 +1226,90 @@ "resolved": "https://zowe.jfrog.io/zowe/api/npm/npm-release/ms/-/ms-2.0.0.tgz", "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" }, + "ncp": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ncp/-/ncp-2.0.0.tgz", + "integrity": "sha1-GVoh1sRuNh0vsSgbo4uR6d9727M=", + "dev": true + }, "negotiator": { "version": "0.6.2", "resolved": "https://zowe.jfrog.io/zowe/api/npm/npm-release/negotiator/-/negotiator-0.6.2.tgz", "integrity": "sha1-/qz3zPUlp3rpY0Q2pkiD/+yjRvs=" }, + "nice-try": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/nice-try/-/nice-try-1.0.5.tgz", + "integrity": "sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ==", + "dev": true + }, "node-fetch": { "version": "2.6.0", "resolved": "https://zowe.jfrog.io/zowe/api/npm/npm-release/node-fetch/-/node-fetch-2.6.0.tgz", "integrity": "sha1-5jNFY4bUqlWGP2dqerDaqP3ssP0=", "dev": true }, - "normalize-package-data": { - "version": "2.5.0", - "resolved": "https://zowe.jfrog.io/zowe/api/npm/npm-release/normalize-package-data/-/normalize-package-data-2.5.0.tgz", - "integrity": "sha1-5m2xg4sgDB38IzIl0SyzZSDiNKg=", + "nodemon": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/nodemon/-/nodemon-2.0.4.tgz", + "integrity": "sha512-Ltced+hIfTmaS28Zjv1BM552oQ3dbwPqI4+zI0SLgq+wpJhSyqgYude/aZa/3i31VCQWMfXJVxvu86abcam3uQ==", + "dev": true, "requires": { - "hosted-git-info": "^2.1.4", - "resolve": "^1.10.0", - "semver": "2 || 3 || 4 || 5", - "validate-npm-package-license": "^3.0.1" + "chokidar": "^3.2.2", + "debug": "^3.2.6", + "ignore-by-default": "^1.0.1", + "minimatch": "^3.0.4", + "pstree.remy": "^1.1.7", + "semver": "^5.7.1", + "supports-color": "^5.5.0", + "touch": "^3.1.0", + "undefsafe": "^2.0.2", + "update-notifier": "^4.0.0" + }, + "dependencies": { + "debug": { + "version": "3.2.6", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", + "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", + "dev": true, + "requires": { + "ms": "^2.1.1" + } + }, + "ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "dev": true + } } }, + "nopt": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/nopt/-/nopt-1.0.10.tgz", + "integrity": "sha1-bd0hvSoxQXuScn3Vhfim83YI6+4=", + "dev": true, + "requires": { + "abbrev": "1" + } + }, + "normalize-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", + "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", + "dev": true + }, + "normalize-url": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/normalize-url/-/normalize-url-4.5.0.tgz", + "integrity": "sha512-2s47yzUxdexf1OhyRi4Em83iQk0aPvwTddtFz4hnSSw9dCEsLEGf6SwIO8ss/19S9iBb5sJaOuTvTGDeZI00BQ==", + "dev": true + }, "npm-run-path": { "version": "2.0.2", "resolved": "https://zowe.jfrog.io/zowe/api/npm/npm-release/npm-run-path/-/npm-run-path-2.0.2.tgz", "integrity": "sha1-NakjLfo11wZ7TLLd8jV7GHFTbF8=", + "dev": true, "requires": { "path-key": "^2.0.0" } @@ -547,7 +1317,8 @@ "number-is-nan": { "version": "1.0.1", "resolved": "https://zowe.jfrog.io/zowe/api/npm/npm-release/number-is-nan/-/number-is-nan-1.0.1.tgz", - "integrity": "sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0=" + "integrity": "sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0=", + "dev": true }, "object-assign": { "version": "4.1.1", @@ -572,47 +1343,79 @@ } }, "os-locale": { - "version": "2.1.0", - "resolved": "https://zowe.jfrog.io/zowe/api/npm/npm-release/os-locale/-/os-locale-2.1.0.tgz", - "integrity": "sha1-QrwpAKa1uL0XN2yOiCtlr8zyS/I=", + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/os-locale/-/os-locale-3.1.0.tgz", + "integrity": "sha512-Z8l3R4wYWM40/52Z+S265okfFj8Kt2cC2MKY+xNi3kFs+XGI7WXu/I309QQQYbRW4ijiZ+yxs9pqEhJh0DqW3Q==", + "dev": true, "requires": { - "execa": "^0.7.0", - "lcid": "^1.0.0", - "mem": "^1.1.0" + "execa": "^1.0.0", + "lcid": "^2.0.0", + "mem": "^4.0.0" } }, + "p-cancelable": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/p-cancelable/-/p-cancelable-1.1.0.tgz", + "integrity": "sha512-s73XxOZ4zpt1edZYZzvhqFa6uvQc1vwUa0K0BdtIZgQMAJj9IbebH+JkgKZc9h+B05PKHLOTl4ajG1BmNrVZlw==", + "dev": true + }, + "p-defer": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/p-defer/-/p-defer-1.0.0.tgz", + "integrity": "sha1-n26xgvbJqozXQwBKfU+WsZaw+ww=", + "dev": true + }, "p-finally": { "version": "1.0.0", "resolved": "https://zowe.jfrog.io/zowe/api/npm/npm-release/p-finally/-/p-finally-1.0.0.tgz", - "integrity": "sha1-P7z7FbiZpEEjs0ttzBi3JDNqLK4=" + "integrity": "sha1-P7z7FbiZpEEjs0ttzBi3JDNqLK4=", + "dev": true + }, + "p-is-promise": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/p-is-promise/-/p-is-promise-2.1.0.tgz", + "integrity": "sha512-Y3W0wlRPK8ZMRbNq97l4M5otioeA5lm1z7bkNkxCka8HSPjR0xRWmpCmc9utiaLP9Jb1eD8BgeIxTW4AIF45Pg==", + "dev": true }, "p-limit": { - "version": "1.3.0", - "resolved": "https://zowe.jfrog.io/zowe/api/npm/npm-release/p-limit/-/p-limit-1.3.0.tgz", - "integrity": "sha1-uGvV8MJWkJEcdZD8v8IBDVSzzLg=", + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", + "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", "requires": { - "p-try": "^1.0.0" + "p-try": "^2.0.0" } }, "p-locate": { - "version": "2.0.0", - "resolved": "https://zowe.jfrog.io/zowe/api/npm/npm-release/p-locate/-/p-locate-2.0.0.tgz", - "integrity": "sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", + "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", "requires": { - "p-limit": "^1.1.0" + "p-limit": "^2.0.0" } }, "p-try": { - "version": "1.0.0", - "resolved": "https://zowe.jfrog.io/zowe/api/npm/npm-release/p-try/-/p-try-1.0.0.tgz", - "integrity": "sha1-y8ec26+P1CKOE/Yh8rGiN8GyB7M=" - }, - "parse-json": { "version": "2.2.0", - "resolved": "https://zowe.jfrog.io/zowe/api/npm/npm-release/parse-json/-/parse-json-2.2.0.tgz", - "integrity": "sha1-9ID0BDTvgHQfhGkJn43qGPVaTck=", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", + "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==" + }, + "package-json": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/package-json/-/package-json-6.5.0.tgz", + "integrity": "sha512-k3bdm2n25tkyxcjSKzB5x8kfVxlMdgsbPr0GkZcwHsLpba6cBjqCt1KlcChKEvxHIcTB1FVMuwoijZ26xex5MQ==", + "dev": true, "requires": { - "error-ex": "^1.2.0" + "got": "^9.6.0", + "registry-auth-token": "^4.0.0", + "registry-url": "^5.0.0", + "semver": "^6.2.0" + }, + "dependencies": { + "semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "dev": true + } } }, "parseurl": { @@ -634,30 +1437,25 @@ "path-key": { "version": "2.0.1", "resolved": "https://zowe.jfrog.io/zowe/api/npm/npm-release/path-key/-/path-key-2.0.1.tgz", - "integrity": "sha1-QRyttXTFoUDTpLGRDUDYDMn0C0A=" - }, - "path-parse": { - "version": "1.0.6", - "resolved": "https://zowe.jfrog.io/zowe/api/npm/npm-release/path-parse/-/path-parse-1.0.6.tgz", - "integrity": "sha1-1i27VnlAXXLEc37FhgDp3c8G0kw=" + "integrity": "sha1-QRyttXTFoUDTpLGRDUDYDMn0C0A=", + "dev": true }, "path-to-regexp": { "version": "0.1.7", "resolved": "https://zowe.jfrog.io/zowe/api/npm/npm-release/path-to-regexp/-/path-to-regexp-0.1.7.tgz", "integrity": "sha1-32BBeABfUi8V60SQ5yR6G/qmf4w=" }, - "path-type": { - "version": "2.0.0", - "resolved": "https://zowe.jfrog.io/zowe/api/npm/npm-release/path-type/-/path-type-2.0.0.tgz", - "integrity": "sha1-8BLMuEFbcJb8LaoQVMPXI4lZTHM=", - "requires": { - "pify": "^2.0.0" - } + "picomatch": { + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.2.2.tgz", + "integrity": "sha512-q0M/9eZHzmr0AulXyPwNfZjtwZ/RBZlbN3K3CErVrk50T2ASYI7Bye0EvekFY3IP1Nt2DHu0re+V2ZHIpMkuWg==", + "dev": true }, - "pify": { - "version": "2.3.0", - "resolved": "https://zowe.jfrog.io/zowe/api/npm/npm-release/pify/-/pify-2.3.0.tgz", - "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=" + "prepend-http": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/prepend-http/-/prepend-http-2.0.0.tgz", + "integrity": "sha1-6SQ0v6XqjBn0HN/UAddBo8gZ2Jc=", + "dev": true }, "proxy-addr": { "version": "2.0.5", @@ -668,10 +1466,30 @@ "ipaddr.js": "1.9.0" } }, - "pseudomap": { - "version": "1.0.2", - "resolved": "https://zowe.jfrog.io/zowe/api/npm/npm-release/pseudomap/-/pseudomap-1.0.2.tgz", - "integrity": "sha1-8FKijacOYYkX7wqKw0wa5aaChrM=" + "pstree.remy": { + "version": "1.1.8", + "resolved": "https://registry.npmjs.org/pstree.remy/-/pstree.remy-1.1.8.tgz", + "integrity": "sha512-77DZwxQmxKnu3aR542U+X8FypNzbfJ+C5XQDk3uWjWxn6151aIMGthWYRXTqT1E5oJvg+ljaa2OJi+VfvCOQ8w==", + "dev": true + }, + "pump": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz", + "integrity": "sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==", + "dev": true, + "requires": { + "end-of-stream": "^1.1.0", + "once": "^1.3.1" + } + }, + "pupa": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/pupa/-/pupa-2.0.1.tgz", + "integrity": "sha512-hEJH0s8PXLY/cdXh66tNEQGndDrIKNqNC5xmrysZy3i5C3oEoLna7YAOad+7u125+zH1HNXUmGEkrhb3c2VriA==", + "dev": true, + "requires": { + "escape-goat": "^2.0.0" + } }, "qs": { "version": "6.7.0", @@ -694,23 +1512,43 @@ "unpipe": "1.0.0" } }, - "read-pkg": { - "version": "2.0.0", - "resolved": "https://zowe.jfrog.io/zowe/api/npm/npm-release/read-pkg/-/read-pkg-2.0.0.tgz", - "integrity": "sha1-jvHAYjxqbbDcZxPEv6xGMysjaPg=", + "rc": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/rc/-/rc-1.2.8.tgz", + "integrity": "sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw==", + "dev": true, "requires": { - "load-json-file": "^2.0.0", - "normalize-package-data": "^2.3.2", - "path-type": "^2.0.0" + "deep-extend": "^0.6.0", + "ini": "~1.3.0", + "minimist": "^1.2.0", + "strip-json-comments": "~2.0.1" } }, - "read-pkg-up": { - "version": "2.0.0", - "resolved": "https://zowe.jfrog.io/zowe/api/npm/npm-release/read-pkg-up/-/read-pkg-up-2.0.0.tgz", - "integrity": "sha1-a3KoBImE4MQeeVEP1en6mbO1Sb4=", + "readdirp": { + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.4.0.tgz", + "integrity": "sha512-0xe001vZBnJEK+uKcj8qOhyAKPzIT+gStxWr3LCB0DwcXR5NZJ3IaC+yGnHCYzB/S7ov3m3EEbZI2zeNvX+hGQ==", + "dev": true, "requires": { - "find-up": "^2.0.0", - "read-pkg": "^2.0.0" + "picomatch": "^2.2.1" + } + }, + "registry-auth-token": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/registry-auth-token/-/registry-auth-token-4.2.0.tgz", + "integrity": "sha512-P+lWzPrsgfN+UEpDS3U8AQKg/UjZX6mQSJueZj3EK+vNESoqBSpBUD3gmu4sF9lOsjXWjF11dQKUqemf3veq1w==", + "dev": true, + "requires": { + "rc": "^1.2.8" + } + }, + "registry-url": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/registry-url/-/registry-url-5.1.0.tgz", + "integrity": "sha512-8acYXXTI0AkQv6RAOjE3vOaIXZkT9wo4LOFbBKYQEEnnMNBpKqdUrI6S4NT0KPIo/WVvJ5tE/X5LF/TQUf0ekw==", + "dev": true, + "requires": { + "rc": "^1.2.8" } }, "require-directory": { @@ -719,16 +1557,17 @@ "integrity": "sha1-jGStX9MNqxyXbiNE/+f3kqam30I=" }, "require-main-filename": { - "version": "1.0.1", - "resolved": "https://zowe.jfrog.io/zowe/api/npm/npm-release/require-main-filename/-/require-main-filename-1.0.1.tgz", - "integrity": "sha1-l/cXtp1IeE9fUmpsWqj/3aBVpNE=" + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/require-main-filename/-/require-main-filename-2.0.0.tgz", + "integrity": "sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg==" }, - "resolve": { - "version": "1.15.1", - "resolved": "https://zowe.jfrog.io/zowe/api/npm/npm-release/resolve/-/resolve-1.15.1.tgz", - "integrity": "sha1-J73N7/6vLWJEuVuw+fS0ZTRR8+g=", + "responselike": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/responselike/-/responselike-1.0.2.tgz", + "integrity": "sha1-kYcg7ztjHFZCvgaPFa3lpG9Loec=", + "dev": true, "requires": { - "path-parse": "^1.0.6" + "lowercase-keys": "^1.0.0" } }, "rimraf": { @@ -752,8 +1591,26 @@ }, "semver": { "version": "5.7.1", - "resolved": "https://zowe.jfrog.io/zowe/api/npm/npm-release/semver/-/semver-5.7.1.tgz", - "integrity": "sha1-qVT5Ma66UI0we78Gnv8MAclhFvc=" + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", + "dev": true + }, + "semver-diff": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/semver-diff/-/semver-diff-3.1.1.tgz", + "integrity": "sha512-GX0Ix/CJcHyB8c4ykpHGIAvLyOwOobtM/8d+TQkAd81/bEjgPHrfba41Vpesr7jX/t8Uh+R3EX9eAS5be+jQYg==", + "dev": true, + "requires": { + "semver": "^6.3.0" + }, + "dependencies": { + "semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "dev": true + } + } }, "send": { "version": "0.17.1", @@ -807,6 +1664,7 @@ "version": "1.2.0", "resolved": "https://zowe.jfrog.io/zowe/api/npm/npm-release/shebang-command/-/shebang-command-1.2.0.tgz", "integrity": "sha1-RKrGW2lbAzmJaMOfNj/uXer98eo=", + "dev": true, "requires": { "shebang-regex": "^1.0.0" } @@ -814,40 +1672,14 @@ "shebang-regex": { "version": "1.0.0", "resolved": "https://zowe.jfrog.io/zowe/api/npm/npm-release/shebang-regex/-/shebang-regex-1.0.0.tgz", - "integrity": "sha1-2kL0l0DAtC2yypcoVxyxkMmO/qM=" + "integrity": "sha1-2kL0l0DAtC2yypcoVxyxkMmO/qM=", + "dev": true }, "signal-exit": { - "version": "3.0.2", - "resolved": "https://zowe.jfrog.io/zowe/api/npm/npm-release/signal-exit/-/signal-exit-3.0.2.tgz", - "integrity": "sha1-tf3AjxKH6hF4Yo5BXiUTK3NkbG0=" - }, - "spdx-correct": { - "version": "3.1.0", - "resolved": "https://zowe.jfrog.io/zowe/api/npm/npm-release/spdx-correct/-/spdx-correct-3.1.0.tgz", - "integrity": "sha1-+4PlBERSaPFUsHTiGMh8ADzTHfQ=", - "requires": { - "spdx-expression-parse": "^3.0.0", - "spdx-license-ids": "^3.0.0" - } - }, - "spdx-exceptions": { - "version": "2.2.0", - "resolved": "https://zowe.jfrog.io/zowe/api/npm/npm-release/spdx-exceptions/-/spdx-exceptions-2.2.0.tgz", - "integrity": "sha1-LqRQrudPKom/uUUZwH/Nb0EyKXc=" - }, - "spdx-expression-parse": { - "version": "3.0.0", - "resolved": "https://zowe.jfrog.io/zowe/api/npm/npm-release/spdx-expression-parse/-/spdx-expression-parse-3.0.0.tgz", - "integrity": "sha1-meEZt6XaAOBUkcn6M4t5BII7QdA=", - "requires": { - "spdx-exceptions": "^2.1.0", - "spdx-license-ids": "^3.0.0" - } - }, - "spdx-license-ids": { - "version": "3.0.5", - "resolved": "https://zowe.jfrog.io/zowe/api/npm/npm-release/spdx-license-ids/-/spdx-license-ids-3.0.5.tgz", - "integrity": "sha1-NpS1gEVnpFjTyARYQqY1hjL2JlQ=" + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.3.tgz", + "integrity": "sha512-VUJ49FC8U1OxwZLxIbTTrDvLnf/6TDgxZcK8wxR8zs13xpx7xbG60ndBlhNrFi2EMuFRoeDoJO7wthSLq42EjA==", + "dev": true }, "statuses": { "version": "1.5.0", @@ -855,31 +1687,43 @@ "integrity": "sha1-Fhx9rBd2Wf2YEfQ3cfqZOBR4Yow=" }, "string-width": { - "version": "2.1.1", - "resolved": "https://zowe.jfrog.io/zowe/api/npm/npm-release/string-width/-/string-width-2.1.1.tgz", - "integrity": "sha1-q5Pyeo3BPSjKyBXEYhQ6bZASrp4=", + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz", + "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==", "requires": { + "emoji-regex": "^7.0.1", "is-fullwidth-code-point": "^2.0.0", - "strip-ansi": "^4.0.0" + "strip-ansi": "^5.1.0" } }, "strip-ansi": { - "version": "4.0.0", - "resolved": "https://zowe.jfrog.io/zowe/api/npm/npm-release/strip-ansi/-/strip-ansi-4.0.0.tgz", - "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", + "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", "requires": { - "ansi-regex": "^3.0.0" + "ansi-regex": "^4.1.0" } }, - "strip-bom": { - "version": "3.0.0", - "resolved": "https://zowe.jfrog.io/zowe/api/npm/npm-release/strip-bom/-/strip-bom-3.0.0.tgz", - "integrity": "sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM=" - }, "strip-eof": { "version": "1.0.0", "resolved": "https://zowe.jfrog.io/zowe/api/npm/npm-release/strip-eof/-/strip-eof-1.0.0.tgz", - "integrity": "sha1-u0P/VZim6wXYm1n80SnJgzE2Br8=" + "integrity": "sha1-u0P/VZim6wXYm1n80SnJgzE2Br8=", + "dev": true + }, + "strip-json-comments": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz", + "integrity": "sha1-PFMZQukIwml8DsNEhYwobHygpgo=", + "dev": true + }, + "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, + "requires": { + "has-flag": "^3.0.0" + } }, "swagger-ui-dist": { "version": "3.30.0", @@ -894,11 +1738,47 @@ "swagger-ui-dist": "^3.18.1" } }, + "term-size": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/term-size/-/term-size-2.2.0.tgz", + "integrity": "sha512-a6sumDlzyHVJWb8+YofY4TW112G6p2FCPEAFk+59gIYHv3XHRhm9ltVQ9kli4hNWeQBwSpe8cRN25x0ROunMOw==", + "dev": true + }, + "to-readable-stream": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/to-readable-stream/-/to-readable-stream-1.0.0.tgz", + "integrity": "sha512-Iq25XBt6zD5npPhlLVXGFN3/gyR2/qODcKNNyTMd4vbm39HUaOiAM4PMq0eMVC/Tkxz+Zjdsc55g9yyz+Yq00Q==", + "dev": true + }, + "to-regex-range": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "dev": true, + "requires": { + "is-number": "^7.0.0" + } + }, "toidentifier": { "version": "1.0.0", "resolved": "https://zowe.jfrog.io/zowe/api/npm/npm-release/toidentifier/-/toidentifier-1.0.0.tgz", "integrity": "sha1-fhvjRw8ed5SLxD2Uo8j013UrpVM=" }, + "touch": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/touch/-/touch-3.1.0.tgz", + "integrity": "sha512-WBx8Uy5TLtOSRtIq+M03/sKDrXCLHxwDcquSP2c43Le03/9serjQBIztjRz6FkJez9D/hleyAXTBGLwwZUw9lA==", + "dev": true, + "requires": { + "nopt": "~1.0.10" + } + }, + "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 + }, "type-is": { "version": "1.6.18", "resolved": "https://zowe.jfrog.io/zowe/api/npm/npm-release/type-is/-/type-is-1.6.18.tgz", @@ -908,25 +1788,79 @@ "mime-types": "~2.1.24" } }, + "typedarray-to-buffer": { + "version": "3.1.5", + "resolved": "https://registry.npmjs.org/typedarray-to-buffer/-/typedarray-to-buffer-3.1.5.tgz", + "integrity": "sha512-zdu8XMNEDepKKR+XYOXAVPtWui0ly0NtohUscw+UmaHiAWT8hrV1rr//H6V+0DvJ3OQ19S979M0laLfX8rm82Q==", + "dev": true, + "requires": { + "is-typedarray": "^1.0.0" + } + }, + "undefsafe": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/undefsafe/-/undefsafe-2.0.3.tgz", + "integrity": "sha512-nrXZwwXrD/T/JXeygJqdCO6NZZ1L66HrxM/Z7mIq2oPanoN0F1nLx3lwJMu6AwJY69hdixaFQOuoYsMjE5/C2A==", + "dev": true, + "requires": { + "debug": "^2.2.0" + } + }, + "unique-string": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/unique-string/-/unique-string-2.0.0.tgz", + "integrity": "sha512-uNaeirEPvpZWSgzwsPGtU2zVSTrn/8L5q/IexZmH0eH6SA73CmAA5U4GwORTxQAZs95TAXLNqeLoPPNO5gZfWg==", + "dev": true, + "requires": { + "crypto-random-string": "^2.0.0" + } + }, + "universalify": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz", + "integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==", + "dev": true + }, "unpipe": { "version": "1.0.0", "resolved": "https://zowe.jfrog.io/zowe/api/npm/npm-release/unpipe/-/unpipe-1.0.0.tgz", "integrity": "sha1-sr9O6FFKrmFltIF4KdIbLvSZBOw=" }, + "update-notifier": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/update-notifier/-/update-notifier-4.1.1.tgz", + "integrity": "sha512-9y+Kds0+LoLG6yN802wVXoIfxYEwh3FlZwzMwpCZp62S2i1/Jzeqb9Eeeju3NSHccGGasfGlK5/vEHbAifYRDg==", + "dev": true, + "requires": { + "boxen": "^4.2.0", + "chalk": "^3.0.0", + "configstore": "^5.0.1", + "has-yarn": "^2.1.0", + "import-lazy": "^2.1.0", + "is-ci": "^2.0.0", + "is-installed-globally": "^0.3.1", + "is-npm": "^4.0.0", + "is-yarn-global": "^0.3.0", + "latest-version": "^5.0.0", + "pupa": "^2.0.1", + "semver-diff": "^3.1.1", + "xdg-basedir": "^4.0.0" + } + }, + "url-parse-lax": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/url-parse-lax/-/url-parse-lax-3.0.0.tgz", + "integrity": "sha1-FrXK/Afb42dsGxmZF3gj1lA6yww=", + "dev": true, + "requires": { + "prepend-http": "^2.0.0" + } + }, "utils-merge": { "version": "1.0.1", "resolved": "https://zowe.jfrog.io/zowe/api/npm/npm-release/utils-merge/-/utils-merge-1.0.1.tgz", "integrity": "sha1-n5VxD1CiZ5R7LMwSR0HBAoQn5xM=" }, - "validate-npm-package-license": { - "version": "3.0.4", - "resolved": "https://zowe.jfrog.io/zowe/api/npm/npm-release/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz", - "integrity": "sha1-/JH2uce6FchX9MssXe/uw51PQQo=", - "requires": { - "spdx-correct": "^3.0.0", - "spdx-expression-parse": "^3.0.0" - } - }, "vary": { "version": "1.1.2", "resolved": "https://zowe.jfrog.io/zowe/api/npm/npm-release/vary/-/vary-1.1.2.tgz", @@ -934,8 +1868,9 @@ }, "which": { "version": "1.3.1", - "resolved": "https://zowe.jfrog.io/zowe/api/npm/npm-release/which/-/which-1.3.1.tgz", - "integrity": "sha1-pFBD1U9YBTFtqNYvn1CRjT2nCwo=", + "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", + "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", + "dev": true, "requires": { "isexe": "^2.0.0" } @@ -945,90 +1880,119 @@ "resolved": "https://zowe.jfrog.io/zowe/api/npm/npm-release/which-module/-/which-module-2.0.0.tgz", "integrity": "sha1-2e8H3Od7mQK4o6j6SzHD4/fm6Ho=" }, - "wrap-ansi": { - "version": "2.1.0", - "resolved": "https://zowe.jfrog.io/zowe/api/npm/npm-release/wrap-ansi/-/wrap-ansi-2.1.0.tgz", - "integrity": "sha1-2Pw9KE3QV5T+hJc8rs3Rz4JP3YU=", + "widest-line": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/widest-line/-/widest-line-3.1.0.tgz", + "integrity": "sha512-NsmoXalsWVDMGupxZ5R08ka9flZjjiLvHVAWYOKtiKM8ujtZWr9cRffak+uSE48+Ob8ObalXpwyeUiyDD6QFgg==", + "dev": true, "requires": { - "string-width": "^1.0.1", - "strip-ansi": "^3.0.1" + "string-width": "^4.0.0" }, "dependencies": { "ansi-regex": { - "version": "2.1.1", - "resolved": "https://zowe.jfrog.io/zowe/api/npm/npm-release/ansi-regex/-/ansi-regex-2.1.1.tgz", - "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=" + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", + "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==", + "dev": true + }, + "emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", + "dev": true }, "is-fullwidth-code-point": { - "version": "1.0.0", - "resolved": "https://zowe.jfrog.io/zowe/api/npm/npm-release/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", - "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", - "requires": { - "number-is-nan": "^1.0.0" - } + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "dev": true }, "string-width": { - "version": "1.0.2", - "resolved": "https://zowe.jfrog.io/zowe/api/npm/npm-release/string-width/-/string-width-1.0.2.tgz", - "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.0.tgz", + "integrity": "sha512-zUz5JD+tgqtuDjMhwIg5uFVV3dtqZ9yQJlZVfq4I01/K5Paj5UHj7VyrQOJvzawSVlKpObApbfD0Ed6yJc+1eg==", + "dev": true, "requires": { - "code-point-at": "^1.0.0", - "is-fullwidth-code-point": "^1.0.0", - "strip-ansi": "^3.0.0" + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.0" } }, "strip-ansi": { - "version": "3.0.1", - "resolved": "https://zowe.jfrog.io/zowe/api/npm/npm-release/strip-ansi/-/strip-ansi-3.0.1.tgz", - "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz", + "integrity": "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==", + "dev": true, "requires": { - "ansi-regex": "^2.0.0" + "ansi-regex": "^5.0.0" } } } }, + "wrap-ansi": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-5.1.0.tgz", + "integrity": "sha512-QC1/iN/2/RPVJ5jYK8BGttj5z83LmSKmvbvrXPNCLZSEb32KKVDJDl/MOt2N01qU2H/FkzEa9PKto1BqDjtd7Q==", + "requires": { + "ansi-styles": "^3.2.0", + "string-width": "^3.0.0", + "strip-ansi": "^5.0.0" + } + }, "wrappy": { "version": "1.0.2", "resolved": "https://zowe.jfrog.io/zowe/api/npm/npm-release/wrappy/-/wrappy-1.0.2.tgz", "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=", "dev": true }, - "y18n": { - "version": "3.2.1", - "resolved": "https://zowe.jfrog.io/zowe/api/npm/npm-release/y18n/-/y18n-3.2.1.tgz", - "integrity": "sha1-bRX7qITAhnnA136I53WegR4H+kE=" + "write-file-atomic": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-3.0.3.tgz", + "integrity": "sha512-AvHcyZ5JnSfq3ioSyjrBkH9yW4m7Ayk8/9My/DD9onKeu/94fwrMocemO2QAJFAlnnDN+ZDS+ZjAR5ua1/PV/Q==", + "dev": true, + "requires": { + "imurmurhash": "^0.1.4", + "is-typedarray": "^1.0.0", + "signal-exit": "^3.0.2", + "typedarray-to-buffer": "^3.1.5" + } }, - "yallist": { - "version": "2.1.2", - "resolved": "https://zowe.jfrog.io/zowe/api/npm/npm-release/yallist/-/yallist-2.1.2.tgz", - "integrity": "sha1-HBH5IY8HYImkfdUS+TxmmaaoHVI=" + "xdg-basedir": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/xdg-basedir/-/xdg-basedir-4.0.0.tgz", + "integrity": "sha512-PSNhEJDejZYV7h50BohL09Er9VaIefr2LMAf3OEmpCkjOi34eYyQYAXUTjEQtZJTKcF0E2UKTh+osDLsgNim9Q==", + "dev": true + }, + "y18n": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.0.tgz", + "integrity": "sha512-r9S/ZyXu/Xu9q1tYlpsLIsa3EeLXXk0VwlxqTcFRfg9EhMW+17kbt9G0NrgCmhGb5vT2hyhJZLfDGx+7+5Uj/w==" }, "yargs": { - "version": "8.0.2", - "resolved": "https://zowe.jfrog.io/zowe/api/npm/npm-release/yargs/-/yargs-8.0.2.tgz", - "integrity": "sha1-YpmpBVsc78lp/355wdkY3Osiw2A=", + "version": "14.2.3", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-14.2.3.tgz", + "integrity": "sha512-ZbotRWhF+lkjijC/VhmOT9wSgyBQ7+zr13+YLkhfsSiTriYsMzkTUFP18pFhWwBeMa5gUc1MzbhrO6/VB7c9Xg==", "requires": { - "camelcase": "^4.1.0", - "cliui": "^3.2.0", - "decamelize": "^1.1.1", - "get-caller-file": "^1.0.1", - "os-locale": "^2.0.0", - "read-pkg-up": "^2.0.0", + "cliui": "^5.0.0", + "decamelize": "^1.2.0", + "find-up": "^3.0.0", + "get-caller-file": "^2.0.1", "require-directory": "^2.1.1", - "require-main-filename": "^1.0.1", + "require-main-filename": "^2.0.0", "set-blocking": "^2.0.0", - "string-width": "^2.0.0", + "string-width": "^3.0.0", "which-module": "^2.0.0", - "y18n": "^3.2.1", - "yargs-parser": "^7.0.0" + "y18n": "^4.0.0", + "yargs-parser": "^15.0.1" } }, "yargs-parser": { - "version": "7.0.0", - "resolved": "https://zowe.jfrog.io/zowe/api/npm/npm-release/yargs-parser/-/yargs-parser-7.0.0.tgz", - "integrity": "sha1-jQrELxbqVd69MyyvTEA4s+P139k=", + "version": "15.0.1", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-15.0.1.tgz", + "integrity": "sha512-0OAMV2mAZQrs3FkNpDQcBk1x5HXb8X4twADss4S0Iuk+2dGnLOE/fRHrsYm542GduMveyA77OF4wrNJuanRCWw==", "requires": { - "camelcase": "^4.1.0" + "camelcase": "^5.0.0", + "decamelize": "^1.2.0" } } } diff --git a/package.json b/package.json index 177d66d..74fc972 100644 --- a/package.json +++ b/package.json @@ -1,12 +1,16 @@ { - "name": "sample-api", + "name": "sample-node-api", "version": "1.0.0", "description": "", "main": "index.js", "scripts": { - "start": "node server/app.js --service sample-node-api --port 8080 --key sslcert/server.key --cert sslcert/server.cert", - "build": "npm run clean && cp -r server dist/server && cp -r bin dist/bin && cp *.yml dist && cp *.json dist && cp *.js dist && rimraf dist/package-lock.json", - "clean": "rimraf dist && mkdirp dist" + "dev": "nodemon src/index.js", + "dev:https": "nodemon src/index.js --key sslcert/server.key --cert sslcert/server.cert", + "start": "node src/index.js", + "build": "npm run clean && cp -r src dist/src && cp -r bin dist/bin && cp *.yml dist && cp *.json dist && cp README.md dist", + "dist": "npm run clean && npm install && npm run build && npm run pack", + "clean": "rimraf dist && mkdirp dist", + "pack": "copy-node-modules . dist" }, "author": "", "license": "EPL-2.0", @@ -14,11 +18,13 @@ "cors": "^2.8.5", "express": "^4.16.4", "swagger-ui-express": "^4.1.4", - "yargs": "^8.0.2" + "yargs": "^14.2.1" }, "devDependencies": { + "copy-node-modules": "^1.1.1", "mkdirp": "^1.0.3", "node-fetch": "^2.3.0", + "nodemon": "^2.0.4", "rimraf": "^3.0.2" } } diff --git a/server/app.js b/server/app.js deleted file mode 100644 index 0490ed3..0000000 --- a/server/app.js +++ /dev/null @@ -1,168 +0,0 @@ -/* - This program and the accompanying materials are - made available under the terms of the Eclipse Public License v2.0 which accompanies - this distribution, and is available at https://www.eclipse.org/legal/epl-v20.html - - SPDX-License-Identifier: EPL-2.0 - - Copyright IBM Corporation 2020 -*/ - -const express = require('express'); -const http = require('http'); -const https = require('https'); -const fs = require('fs'); -const path = require("path"); -const cors = require('cors'); - - -function buildConfig(argv) { - - const config = { - 'port': argv.port /*|| port*/, - 'https': { - 'key': argv.key /*|| key*/, - 'cert': argv.cert /*|| cert*/, - 'pfx': argv.pfx, - 'passphrase': argv.pass, - } - }; - return config; -} - -function loadCertificateFiles(config) { - // load https certs file content - if (config && config.https) { - ['key', 'cert', 'pfx'].forEach(key => { - if (config.https[key]) { - let file = config.https[key]; - config.https[key] = fs.readFileSync(file); - } - }); - } - return config; -}; - -function validateParams (argv) { - let isValid = true; - const serviceFor=argv.s; - - if((argv.p==='' || !argv.p) && isValid) { - isValid = false; - process.stderr.write(`[${serviceFor}] port configuration is missing\n`); - } - - if( (argv.k==='' && argv.c==='' && argv.x==='' && argv.w==='') && isValid) { - isValid = false; - process.stderr.write(`[${serviceFor}] https configuration is missing\n`); - } - - if( ( (argv.k==='' && argv.c>'') || (argv.k>'' && argv.c==='') - || (argv.x==='' && argv.w>'' && argv.k==='' && argv.c==='') - || (argv.x==='' && argv.w>'' && !(argv.k>'' && argv.c>'')) - || (argv.x>'' && argv.w==='') ) && isValid) { - isValid = false; - process.stderr.write(`[${serviceFor}] https configuration is missing\n`); - } - - if(!isValid) { - process.stderr.write(`[${serviceFor}] is failed to start, error:\n`); - process.exit(1); - return false; - } - - return true; -} - -var argv = require('yargs') - .usage('Usage: $0 [options]') - .option('s', { - alias: 'service', - description: 'service-for path', - default: '' - }) - .option('p', { - alias: 'port', - description: 'listening port' - }) - .option('k', { - alias: 'key', - default: '', - description: 'server key' - }) - .option('c', { - alias: 'cert', - default: '', - description: 'server cert', - }) - .option('x', { - alias: 'pfx', - default: '', - description: 'server pfx', - }) - .option('w', { - alias: 'pass', - default: '', - description: 'server pfx passphrase', - }) - .option('v', { - alias: 'verbose', - default: false, - description: 'show request logs', - type: 'boolean' - }) - .help('h') - .alias('h', 'help') - .check(validateParams) - .argv; - -let config = buildConfig(argv); -config = loadCertificateFiles(config); -const {https:{key, cert}} = config; -const credentials = { key, cert }; - -const app = express(); -const swaggerUi = require('swagger-ui-express'); -const swaggerDocument = require('./swagger.json'); - -var options = { - explorer: false -}; - -// app.use('/api-docs', swaggerUi.serve, swaggerUi.setup(swaggerDocument, options)); -app.use('/api-docs-ui', function(req, res, next){ - swaggerDocument.host = req.get('host'); - req.swaggerDoc = swaggerDocument; - next(); -}, swaggerUi.serve, swaggerUi.setup()); - - -//TODO: use for whitelist only -app.use(cors()); -const routes = require('./routes/index.route'); - -app.get('/', (req, res) => res.send('Hello World!')); -app.get('/health', (req, res) => { - const healthcheck = { - uptime: process.uptime(), - message: 'OK', - timestamp: Date.now() - }; - res.send(JSON.stringify(healthcheck)); -}); -app.use(routes); - -app.use('/api-docs',function(req, res, next){ - swaggerDocument.host = req.get('host'); - res.send(swaggerDocument); -}); - -const httpServer = http.createServer(app); -const httpsServer = https.createServer(credentials, app); - -httpServer.listen(config.port); -httpsServer.listen(config.port+1); -console.log(`http server listening at port ${config.port}`); -console.log(`https server listening at port ${config.port + 1}`); - -module.exports = { app }; \ No newline at end of file diff --git a/src/config.js b/src/config.js new file mode 100644 index 0000000..d7435c1 --- /dev/null +++ b/src/config.js @@ -0,0 +1,107 @@ +const fs = require('fs'); +const path = require("path"); + +function buildConfig(argv) { + + let config = { + 'serviceName': argv.service, + 'port': argv.port, + 'https': { + 'key': argv.key , + 'cert': argv.cert, + }, + }; + + config.isHttps = isHttps(config); + if(config.isHttps) { + config = loadCertificateFiles(config); + } + return config; +} + +function isHttps(config) { + return config.https.key>'' && config.https.cert>'' +} + +function loadCertificateFiles(config) { + // load https certs file content + if (config && config.https) { + ['key', 'cert'].forEach(key => { + if (config.https[key]) { + let file = config.https[key]; + config.https[key] = fs.readFileSync(file); + } + }); + } + return config; +}; + +function validateParams (argv) { + let isValid = true; + const serviceName=argv.s; + + if((argv.p==='' || !argv.p) && isValid) { + isValid = false; + process.stderr.write(`[${serviceName}] port configuration is missing\n`); + } + + if( ( (argv.k==='' && argv.c>'') || (argv.k>'' && argv.c==='') ) && isValid) { + isValid = false; + process.stderr.write(`[${serviceName}] https configuration is missing\n`); + } + + if(!isValid) { + process.stderr.write(`[${serviceName}] is failed to start, error:\n`); + process.exit(1); + return false; + } + + return true; +} + +function setUpParams() { + var argv = require('yargs') + .usage('Usage: $0 [options]') + .option('s', { + alias: 'service', + description: 'service-for path', + default: 'sample-node-api' + }) + .option('p', { + alias: 'port', + description: 'listening port', + default: 18000 + }) + .option('k', { + alias: 'key', + default: '', + description: 'server key' + }) + .option('c', { + alias: 'cert', + default: '', + description: 'server cert', + }) + .option('v', { + alias: 'verbose', + default: false, + description: 'show request logs', + type: 'boolean' + }) + .help('h') + .alias('h', 'help') + .check(validateParams) + .argv; + + return argv; +} + +function buildConfigFromParams() { + let argv = setUpParams(); + let config = buildConfig(argv); + return config; +} + +const config = buildConfigFromParams(); + +module.exports = config; \ No newline at end of file diff --git a/server/config.json b/src/config.json similarity index 100% rename from server/config.json rename to src/config.json diff --git a/server/controllers/accounts.controller.js b/src/controllers/accounts.controller.js similarity index 100% rename from server/controllers/accounts.controller.js rename to src/controllers/accounts.controller.js diff --git a/server/controllers/accountsCars.controller.js b/src/controllers/accountsCars.controller.js similarity index 100% rename from server/controllers/accountsCars.controller.js rename to src/controllers/accountsCars.controller.js diff --git a/server/controllers/cars.controller.js b/src/controllers/cars.controller.js similarity index 100% rename from server/controllers/cars.controller.js rename to src/controllers/cars.controller.js diff --git a/data.js b/src/data.js similarity index 100% rename from data.js rename to src/data.js diff --git a/src/index.js b/src/index.js new file mode 100644 index 0000000..8ba0c85 --- /dev/null +++ b/src/index.js @@ -0,0 +1,39 @@ +/* + This program and the accompanying materials are + made available under the terms of the Eclipse Public License v2.0 which accompanies + this distribution, and is available at https://www.eclipse.org/legal/epl-v20.html + + SPDX-License-Identifier: EPL-2.0 + + Copyright IBM Corporation 2020 +*/ + +const express = require('express'); +const http = require('http'); +const https = require('https'); +const cors = require('cors'); + +//build config from params +const config = require('./config'); +const {https:{ key, cert}, port, isHttps, serviceName} = config; +const credentials = {key, cert}; + +//setup app & its routes +const app = express(); +app.use(cors()); +const routes = require('./routes/index.route'); +app.use(routes); + +//start http server +const httpServer = http.createServer(app); +httpServer.listen(port); +console.log(`[${serviceName}] http server listening at port ${port}`); + +//start https server +if(isHttps) { + const httpsServer = https.createServer(credentials, app); + httpsServer.listen(port+1); + console.log(`[${serviceName}] https server listening at port ${port + 1}`); +} + +module.exports = { app }; \ No newline at end of file diff --git a/server/routes/accounts.route.js b/src/routes/accounts.route.js similarity index 100% rename from server/routes/accounts.route.js rename to src/routes/accounts.route.js diff --git a/server/routes/accountsCars.route.js b/src/routes/accountsCars.route.js similarity index 100% rename from server/routes/accountsCars.route.js rename to src/routes/accountsCars.route.js diff --git a/server/routes/cars.route.js b/src/routes/cars.route.js similarity index 100% rename from server/routes/cars.route.js rename to src/routes/cars.route.js diff --git a/server/routes/index.route.js b/src/routes/index.route.js similarity index 62% rename from server/routes/index.route.js rename to src/routes/index.route.js index 964b3dd..1f14821 100644 --- a/server/routes/index.route.js +++ b/src/routes/index.route.js @@ -11,10 +11,22 @@ const express = require('express'); const cars = require('./cars.route'); const accounts = require('./accounts.route'); +const swagger = require('./swagger.route'); const router = express.Router(); router.use('/cars', cars); router.use('/accounts', accounts); +router.use('/', swagger); + +router.get('/', (req, res) => res.send('Sample Node API Version1')); +router.get('/health', (req, res) => { + const healthcheck = { + uptime: process.uptime(), + message: 'OK', + timestamp: Date.now() + }; + res.send(JSON.stringify(healthcheck)); +}); module.exports = router; \ No newline at end of file diff --git a/src/routes/swagger.route.js b/src/routes/swagger.route.js new file mode 100644 index 0000000..387b81f --- /dev/null +++ b/src/routes/swagger.route.js @@ -0,0 +1,19 @@ +const express = require('express'); +const router = express.Router({ mergeParams: true }); + +const swaggerUi = require('swagger-ui-express'); +const swaggerDocument = require('../swagger.json'); + +router.use('/api-docs-ui', function(req, res, next){ + swaggerDocument.host = req.get('host'); + req.swaggerDoc = swaggerDocument; + next(); +}, swaggerUi.serve, swaggerUi.setup()); + +router.use('/api-docs',function(req, res, next){ + swaggerDocument.host = req.get('host'); + res.send(swaggerDocument); +}); + +module.exports = router; + \ No newline at end of file diff --git a/server/services/accounts.service.js b/src/services/accounts.service.js similarity index 93% rename from server/services/accounts.service.js rename to src/services/accounts.service.js index c04bf3f..423fde1 100644 --- a/server/services/accounts.service.js +++ b/src/services/accounts.service.js @@ -8,7 +8,7 @@ Copyright IBM Corporation 2020 */ -const data = require('../../data'); +const data = require('../data'); const get = function(_id){ return getAll().find(account => account._id == _id); diff --git a/server/services/accountsCars.service.js b/src/services/accountsCars.service.js similarity index 95% rename from server/services/accountsCars.service.js rename to src/services/accountsCars.service.js index 2a296dc..cc13b14 100644 --- a/server/services/accountsCars.service.js +++ b/src/services/accountsCars.service.js @@ -8,7 +8,7 @@ Copyright IBM Corporation 2020 */ -const data = require('../../data'); +const data = require('../data'); const carsService = require('./cars.service'); diff --git a/server/services/cars.service.js b/src/services/cars.service.js similarity index 92% rename from server/services/cars.service.js rename to src/services/cars.service.js index 04ef301..16d5ff7 100644 --- a/server/services/cars.service.js +++ b/src/services/cars.service.js @@ -8,7 +8,7 @@ Copyright IBM Corporation 2020 */ -const data = require('../../data'); +const data = require('../data'); const get = function(_id){ return getAll().find(car => car._id == _id); diff --git a/server/swagger.json b/src/swagger.json similarity index 99% rename from server/swagger.json rename to src/swagger.json index 5e3f88a..7385d6b 100644 --- a/server/swagger.json +++ b/src/swagger.json @@ -3,7 +3,7 @@ ,"info":{"description":"Sample Node API" ,"version":"1.0" ,"title":"Sample Node API"} - ,"host":"localhost:8080" + ,"host":"localhost:18000" ,"basePath":"/" ,"tags":[{"name":"Accounts","description":"Accounts API"},{"name":"Cars","description":"Cars API"}] ,"schemes":["http"] diff --git a/start-sample.sh b/start-sample.sh index 954a938..e2d00a0 100644 --- a/start-sample.sh +++ b/start-sample.sh @@ -1,5 +1,5 @@ ## start locally -node server/app.js --service sample-node-api --port 8080 --key sslcert/server.key --cert sslcert/server.cert -v +node src/index.js --service sample-node-api --port 8080 --key sslcert/server.key --cert sslcert/server.cert -v cd ~/zowe/extenders/sample-node-api ## start on z/os uss @@ -8,9 +8,8 @@ KEYSTORE_ALIAS=localhost KEYSTORE_PREFIX="${KEYSTORE_DIRECTORY}/${KEYSTORE_ALIAS}/${KEYSTORE_ALIAS}.keystore" KEYSTORE_KEY=${KEYSTORE_PREFIX}.key KEYSTORE_CERTIFICATE=${KEYSTORE_PREFIX}.cer-ebcdic -node server/app.js --service sample-node-api --port 18000 --key ${KEYSTORE_KEY} --cert ${KEYSTORE_CERTIFICATE} -v +node src/index.js --service sample-node-api --port 18000 --key ${KEYSTORE_KEY} --cert ${KEYSTORE_CERTIFICATE} -v # register with API ML layer cd ~/zowe/extenders/sample-node-api -iconv -f IBM-1047 -t IBM-850 sample-node-api.http.yml > bin/sample-node-api-http.yml -iconv -f IBM-1047 -t IBM-850 sample-node-api.http.yml > ~/zowe/instance/workspace/api-mediation/api-defs/sample-node-api.yml \ No newline at end of file +iconv -f IBM-1047 -t IBM-850 sample-node-api.yml > ~/zowe/instance/workspace/api-mediation/api-defs/sample-node-api.yml \ No newline at end of file