From d3c08655bdacb11084fd543bd5378b0177a06a1a Mon Sep 17 00:00:00 2001 From: Cody Date: Mon, 22 Dec 2025 15:46:06 -0600 Subject: [PATCH 1/4] fixes for favorites filter --- dist/package.json | 2 +- dist/src/lib/compareFavorites.js | 8 +- dist/src/lib/compareFavorites.js.map | 2 +- .../lib/handlers/alks-developer-favorites.js | 2 + .../handlers/alks-developer-favorites.js.map | 2 +- dist/src/lib/promptForAlksAccountAndRole.js | 4 +- .../lib/promptForAlksAccountAndRole.js.map | 2 +- npm-shrinkwrap.json | 754 +++++++++--------- package.json | 2 +- src/lib/compareFavorites.ts | 9 +- src/lib/handlers/alks-developer-favorites.ts | 2 + src/lib/promptForAlksAccountAndRole.ts | 6 +- 12 files changed, 403 insertions(+), 392 deletions(-) diff --git a/dist/package.json b/dist/package.json index de11617e..ed908dc9 100644 --- a/dist/package.json +++ b/dist/package.json @@ -53,7 +53,7 @@ "crypto": "0.0.3", "fuzzy": "^0.1.1", "ini": "^2.0.0", - "inquirer": "^6.5.2", + "inquirer": "^8.2.7", "lodash": "^4.17.21", "lokijs": "^1.5.1", "memoizee": "^0.4.15", diff --git a/dist/src/lib/compareFavorites.js b/dist/src/lib/compareFavorites.js index 9f12c142..729e5ab5 100644 --- a/dist/src/lib/compareFavorites.js +++ b/dist/src/lib/compareFavorites.js @@ -1,8 +1,12 @@ "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.compareFavorites = void 0; +const getAccountDelim_1 = require("./getAccountDelim"); // Returns a number for a sorting function such that favorites are sorted to the top -const compareFavorites = (favorites) => (a, b) => Number(favorites.includes(b.account)) - - Number(favorites.includes(a.account)); +const compareFavorites = (favorites) => (a, b) => { + const aKey = [a.account, a.role].join((0, getAccountDelim_1.getAccountDelim)()); + const bKey = [b.account, b.role].join((0, getAccountDelim_1.getAccountDelim)()); + return Number(favorites.includes(bKey)) - Number(favorites.includes(aKey)); +}; exports.compareFavorites = compareFavorites; //# sourceMappingURL=compareFavorites.js.map \ No newline at end of file diff --git a/dist/src/lib/compareFavorites.js.map b/dist/src/lib/compareFavorites.js.map index b5c43218..cc5b9ece 100644 --- a/dist/src/lib/compareFavorites.js.map +++ b/dist/src/lib/compareFavorites.js.map @@ -1 +1 @@ -{"version":3,"file":"compareFavorites.js","sourceRoot":"","sources":["../../../src/lib/compareFavorites.ts"],"names":[],"mappings":";;;AAEA,oFAAoF;AAC7E,MAAM,gBAAgB,GAC3B,CAAC,SAAmB,EAAE,EAAE,CACxB,CAAC,CAAU,EAAE,CAAU,EAAU,EAAE,CACjC,MAAM,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;IACrC,MAAM,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC;AAJ7B,QAAA,gBAAgB,oBAIa"} \ No newline at end of file +{"version":3,"file":"compareFavorites.js","sourceRoot":"","sources":["../../../src/lib/compareFavorites.ts"],"names":[],"mappings":";;;AACA,uDAAoD;AAEpD,oFAAoF;AAC7E,MAAM,gBAAgB,GAC3B,CAAC,SAAmB,EAAE,EAAE,CACxB,CAAC,CAAU,EAAE,CAAU,EAAU,EAAE;IACjC,MAAM,IAAI,GAAG,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAA,iCAAe,GAAE,CAAC,CAAC;IACzD,MAAM,IAAI,GAAG,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAA,iCAAe,GAAE,CAAC,CAAC;IACzD,OAAO,MAAM,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,GAAG,MAAM,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC;AAC7E,CAAC,CAAC;AANS,QAAA,gBAAgB,oBAMzB"} \ No newline at end of file diff --git a/dist/src/lib/handlers/alks-developer-favorites.js b/dist/src/lib/handlers/alks-developer-favorites.js index 4cb89976..dd7731e4 100644 --- a/dist/src/lib/handlers/alks-developer-favorites.js +++ b/dist/src/lib/handlers/alks-developer-favorites.js @@ -31,6 +31,7 @@ function handleAlksDeveloperFavorites(_options) { const name = [alksAccount.account, alksAccount.role].join((0, getAccountDelim_1.getAccountDelim)()); choices.push({ name, + value: name, checked: (0, underscore_1.contains)(favorites, name), }); } @@ -43,6 +44,7 @@ function handleAlksDeveloperFavorites(_options) { const name = [val.account, val.role].join((0, getAccountDelim_1.getAccountDelim)()); choices.push({ name, + value: name, checked: (0, underscore_1.contains)(favorites, name), }); }); diff --git a/dist/src/lib/handlers/alks-developer-favorites.js.map b/dist/src/lib/handlers/alks-developer-favorites.js.map index 39158d57..e03d7b79 100644 --- a/dist/src/lib/handlers/alks-developer-favorites.js.map +++ b/dist/src/lib/handlers/alks-developer-favorites.js.map @@ -1 +1 @@ -{"version":3,"file":"alks-developer-favorites.js","sourceRoot":"","sources":["../../../../src/lib/handlers/alks-developer-favorites.ts"],"names":[],"mappings":";;;;AAEA,gEAAgC;AAChC,2CAAsC;AACtC,sDAAmD;AACnD,kDAA+C;AAC/C,wDAAqD;AACrD,wCAAqC;AACrC,wCAAqC;AACrC,kDAA+C;AAC/C,gCAA6B;AAC7B,oDAAiD;AAEjD,SAAsB,4BAA4B,CAChD,QAAgC;;QAEhC,IAAI;YACF,IAAA,SAAG,EAAC,cAAc,CAAC,CAAC;YACpB,MAAM,IAAI,GAAG,MAAM,IAAA,iBAAO,GAAE,CAAC;YAE7B,MAAM,IAAI,GAAG,MAAM,IAAA,iBAAO,oBACrB,IAAI,EACP,CAAC;YAEH,IAAA,SAAG,EAAC,uBAAuB,CAAC,CAAC;YAC7B,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,WAAW,EAAE,CAAC;YAE9C,IAAA,SAAG,EAAC,2BAA2B,CAAC,CAAC;YACjC,MAAM,SAAS,GAAG,MAAM,IAAA,2BAAY,GAAE,CAAC;YAEvC,MAAM,OAAO,GAAG,EAAE,CAAC;YACnB,MAAM,QAAQ,GAAmB,EAAE,CAAC;YAEpC,IAAA,SAAG,EAAC,6BAA6B,CAAC,CAAC;YACnC,OAAO,CAAC,IAAI,CAAC,IAAI,kBAAQ,CAAC,SAAS,CAAC,gBAAgB,CAAC,CAAC,CAAC;YACvD,YAAY,CAAC,OAAO,CAAC,CAAC,WAAW,EAAE,EAAE;gBACnC,IAAI,CAAC,WAAW,CAAC,YAAY,EAAE;oBAC7B,MAAM,IAAI,GAAG,CAAC,WAAW,CAAC,OAAO,EAAE,WAAW,CAAC,IAAI,CAAC,CAAC,IAAI,CACvD,IAAA,iCAAe,GAAE,CAClB,CAAC;oBACF,OAAO,CAAC,IAAI,CAAC;wBACX,IAAI;wBACJ,OAAO,EAAE,IAAA,qBAAQ,EAAC,SAAS,EAAE,IAAI,CAAC;qBACnC,CAAC,CAAC;iBACJ;qBAAM;oBACL,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;iBAC5B;YACH,CAAC,CAAC,CAAC;YAEH,OAAO,CAAC,IAAI,CAAC,IAAI,kBAAQ,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC,CAAC;YAClD,QAAQ,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,EAAE;gBACvB,MAAM,IAAI,GAAG,CAAC,GAAG,CAAC,OAAO,EAAE,GAAG,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAA,iCAAe,GAAE,CAAC,CAAC;gBAC7D,OAAO,CAAC,IAAI,CAAC;oBACX,IAAI;oBACJ,OAAO,EAAE,IAAA,qBAAQ,EAAC,SAAS,EAAE,IAAI,CAAC;iBACnC,CAAC,CAAC;YACL,CAAC,CAAC,CAAC;YAEH,MAAM,KAAK,GAAG,MAAM,kBAAQ,CAAC,MAAM,CAAC;gBAClC;oBACE,IAAI,EAAE,UAAU;oBAChB,OAAO,EAAE,kBAAkB;oBAC3B,IAAI,EAAE,WAAW;oBACjB,OAAO;oBACP,QAAQ,EAAE,EAAE;iBACb;aACF,CAAC,CAAC;YAEH,MAAM,IAAA,6BAAa,EAAC,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC,CAAC;YACzC,OAAO,CAAC,GAAG,CAAC,4BAA4B,CAAC,CAAC;YAE1C,MAAM,IAAA,+BAAc,GAAE,CAAC;SACxB;QAAC,OAAO,GAAG,EAAE;YACZ,IAAA,2BAAY,EAAE,GAAa,CAAC,OAAO,EAAE,GAAY,CAAC,CAAC;SACpD;IACH,CAAC;CAAA;AA9DD,oEA8DC"} \ No newline at end of file +{"version":3,"file":"alks-developer-favorites.js","sourceRoot":"","sources":["../../../../src/lib/handlers/alks-developer-favorites.ts"],"names":[],"mappings":";;;;AAEA,gEAAgC;AAChC,2CAAsC;AACtC,sDAAmD;AACnD,kDAA+C;AAC/C,wDAAqD;AACrD,wCAAqC;AACrC,wCAAqC;AACrC,kDAA+C;AAC/C,gCAA6B;AAC7B,oDAAiD;AAEjD,SAAsB,4BAA4B,CAChD,QAAgC;;QAEhC,IAAI;YACF,IAAA,SAAG,EAAC,cAAc,CAAC,CAAC;YACpB,MAAM,IAAI,GAAG,MAAM,IAAA,iBAAO,GAAE,CAAC;YAE7B,MAAM,IAAI,GAAG,MAAM,IAAA,iBAAO,oBACrB,IAAI,EACP,CAAC;YAEH,IAAA,SAAG,EAAC,uBAAuB,CAAC,CAAC;YAC7B,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,WAAW,EAAE,CAAC;YAE9C,IAAA,SAAG,EAAC,2BAA2B,CAAC,CAAC;YACjC,MAAM,SAAS,GAAG,MAAM,IAAA,2BAAY,GAAE,CAAC;YAEvC,MAAM,OAAO,GAAG,EAAE,CAAC;YACnB,MAAM,QAAQ,GAAmB,EAAE,CAAC;YAEpC,IAAA,SAAG,EAAC,6BAA6B,CAAC,CAAC;YACnC,OAAO,CAAC,IAAI,CAAC,IAAI,kBAAQ,CAAC,SAAS,CAAC,gBAAgB,CAAC,CAAC,CAAC;YACvD,YAAY,CAAC,OAAO,CAAC,CAAC,WAAW,EAAE,EAAE;gBACnC,IAAI,CAAC,WAAW,CAAC,YAAY,EAAE;oBAC7B,MAAM,IAAI,GAAG,CAAC,WAAW,CAAC,OAAO,EAAE,WAAW,CAAC,IAAI,CAAC,CAAC,IAAI,CACvD,IAAA,iCAAe,GAAE,CAClB,CAAC;oBACF,OAAO,CAAC,IAAI,CAAC;wBACX,IAAI;wBACJ,KAAK,EAAE,IAAI;wBACX,OAAO,EAAE,IAAA,qBAAQ,EAAC,SAAS,EAAE,IAAI,CAAC;qBACnC,CAAC,CAAC;iBACJ;qBAAM;oBACL,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;iBAC5B;YACH,CAAC,CAAC,CAAC;YAEH,OAAO,CAAC,IAAI,CAAC,IAAI,kBAAQ,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC,CAAC;YAClD,QAAQ,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,EAAE;gBACvB,MAAM,IAAI,GAAG,CAAC,GAAG,CAAC,OAAO,EAAE,GAAG,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAA,iCAAe,GAAE,CAAC,CAAC;gBAC7D,OAAO,CAAC,IAAI,CAAC;oBACX,IAAI;oBACJ,KAAK,EAAE,IAAI;oBACX,OAAO,EAAE,IAAA,qBAAQ,EAAC,SAAS,EAAE,IAAI,CAAC;iBACnC,CAAC,CAAC;YACL,CAAC,CAAC,CAAC;YAEH,MAAM,KAAK,GAAG,MAAM,kBAAQ,CAAC,MAAM,CAAC;gBAClC;oBACE,IAAI,EAAE,UAAU;oBAChB,OAAO,EAAE,kBAAkB;oBAC3B,IAAI,EAAE,WAAW;oBACjB,OAAO;oBACP,QAAQ,EAAE,EAAE;iBACb;aACF,CAAC,CAAC;YAEH,MAAM,IAAA,6BAAa,EAAC,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC,CAAC;YACzC,OAAO,CAAC,GAAG,CAAC,4BAA4B,CAAC,CAAC;YAE1C,MAAM,IAAA,+BAAc,GAAE,CAAC;SACxB;QAAC,OAAO,GAAG,EAAE;YACZ,IAAA,2BAAY,EAAE,GAAa,CAAC,OAAO,EAAE,GAAY,CAAC,CAAC;SACpD;IACH,CAAC;CAAA;AAhED,oEAgEC"} \ No newline at end of file diff --git a/dist/src/lib/promptForAlksAccountAndRole.js b/dist/src/lib/promptForAlksAccountAndRole.js index 0a3d6c56..62dd1e16 100644 --- a/dist/src/lib/promptForAlksAccountAndRole.js +++ b/dist/src/lib/promptForAlksAccountAndRole.js @@ -12,6 +12,7 @@ const parseAlksAccount_1 = require("./parseAlksAccount"); const formatAccountOutput_1 = require("./formatAccountOutput"); const compareAliasesAlphabetically_1 = require("./compareAliasesAlphabetically"); const compareFavorites_1 = require("./compareFavorites"); +const getAccountDelim_1 = require("./getAccountDelim"); function promptForAlksAccountAndRole(options) { return tslib_1.__awaiter(this, void 0, void 0, function* () { const opts = { @@ -25,7 +26,8 @@ function promptForAlksAccountAndRole(options) { const maxAccountAliasLength = Math.max(...alksAccounts.map((a) => a.accountAlias.length)); const maxAccountIdAndRoleLength = Math.max(...alksAccounts.map((a) => a.accountIdAndRole.length)); const indexedAlksAccounts = alksAccounts - .filter((alksAccount) => !opts.filterFavorites || favorites.includes(alksAccount.account)) // Filter out non-favorites if filterFavorites flag is passed + .filter((alksAccount) => !opts.filterFavorites || + favorites.includes([alksAccount.account, alksAccount.role].join((0, getAccountDelim_1.getAccountDelim)()))) // Filter out non-favorites if filterFavorites flag is passed .sort((0, compareAliasesAlphabetically_1.compareAliasesAlphabetically)()) // Sort alphabetically first .sort((0, compareFavorites_1.compareFavorites)(favorites)) // Move favorites to the front of the list, non-favorites to the back .map((alksAccount) => (Object.assign(Object.assign({}, alksAccount), { formattedOutput: (0, formatAccountOutput_1.formatAccountOutput)(alksAccount, maxAccountAliasLength, maxAccountIdAndRoleLength) }))); // Add a field to the account object containing the formatted output string diff --git a/dist/src/lib/promptForAlksAccountAndRole.js.map b/dist/src/lib/promptForAlksAccountAndRole.js.map index b22340ab..31c81efe 100644 --- a/dist/src/lib/promptForAlksAccountAndRole.js.map +++ b/dist/src/lib/promptForAlksAccountAndRole.js.map @@ -1 +1 @@ -{"version":3,"file":"promptForAlksAccountAndRole.js","sourceRoot":"","sources":["../../../src/lib/promptForAlksAccountAndRole.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"promptForAlksAccountAndRole.js","sourceRoot":"","sources":["../../../src/lib/promptForAlksAccountAndRole.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/npm-shrinkwrap.json b/npm-shrinkwrap.json index 8109043b..4e67b55d 100644 --- a/npm-shrinkwrap.json +++ b/npm-shrinkwrap.json @@ -18,7 +18,7 @@ "crypto": "0.0.3", "fuzzy": "^0.1.1", "ini": "^2.0.0", - "inquirer": "^6.5.2", + "inquirer": "^8.2.7", "lodash": "^4.17.21", "lokijs": "^1.5.1", "memoizee": "^0.4.15", @@ -2069,21 +2069,6 @@ } } }, - "node_modules/@jest/core/node_modules/ansi-escapes": { - "version": "4.3.2", - "resolved": "https://artifactory.coxautoinc.com/artifactory/api/npm/cai-npm/ansi-escapes/-/ansi-escapes-4.3.2.tgz", - "integrity": "sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ==", - "dev": true, - "dependencies": { - "type-fest": "^0.21.3" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/@jest/core/node_modules/ansi-styles": { "version": "5.2.0", "resolved": "https://artifactory.coxautoinc.com/artifactory/api/npm/cai-npm/ansi-styles/-/ansi-styles-5.2.0.tgz", @@ -2116,30 +2101,6 @@ "integrity": "sha512-/LLMVyas0ljjAtoYiPqYiL8VWXzUUdThrmU5+n20DZv+a+ClRoevUzw5JxU+Ieh5/c87ytoTBV9G1FiKfNJdmg==", "dev": true }, - "node_modules/@jest/core/node_modules/strip-ansi": { - "version": "6.0.1", - "resolved": "https://artifactory.coxautoinc.com/artifactory/api/npm/cai-npm/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "dev": true, - "dependencies": { - "ansi-regex": "^5.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/@jest/core/node_modules/type-fest": { - "version": "0.21.3", - "resolved": "https://artifactory.coxautoinc.com/artifactory/api/npm/cai-npm/type-fest/-/type-fest-0.21.3.tgz", - "integrity": "sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w==", - "dev": true, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/@jest/environment": { "version": "29.7.0", "resolved": "https://artifactory.coxautoinc.com/artifactory/api/npm/cai-npm/@jest/environment/-/environment-29.7.0.tgz", @@ -2283,18 +2244,6 @@ "node": ">=10" } }, - "node_modules/@jest/reporters/node_modules/strip-ansi": { - "version": "6.0.1", - "resolved": "https://artifactory.coxautoinc.com/artifactory/api/npm/cai-npm/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "dev": true, - "dependencies": { - "ansi-regex": "^5.0.1" - }, - "engines": { - "node": ">=8" - } - }, "node_modules/@jest/schemas": { "version": "29.6.3", "resolved": "https://artifactory.coxautoinc.com/artifactory/api/npm/cai-npm/@jest/schemas/-/schemas-29.6.3.tgz", @@ -3104,11 +3053,28 @@ } }, "node_modules/ansi-escapes": { - "version": "3.2.0", - "resolved": "https://artifactory.coxautoinc.com/artifactory/api/npm/cai-npm/ansi-escapes/-/ansi-escapes-3.2.0.tgz", - "integrity": "sha512-cBhpre4ma+U0T1oM5fXg7Dy1Jw7zzwv7lt/GoCpr+hDQJoYnKVPLL4dCvSEFMmQurOQvSrwT7SL/DAlhBI97RQ==", + "version": "4.3.2", + "resolved": "https://artifactory.coxautoinc.com/artifactory/api/npm/cai-npm/ansi-escapes/-/ansi-escapes-4.3.2.tgz", + "integrity": "sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ==", + "dependencies": { + "type-fest": "^0.21.3" + }, "engines": { - "node": ">=4" + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/ansi-escapes/node_modules/type-fest": { + "version": "0.21.3", + "resolved": "https://artifactory.coxautoinc.com/artifactory/api/npm/cai-npm/type-fest/-/type-fest-0.21.3.tgz", + "integrity": "sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w==", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/ansi-regex": { @@ -3575,7 +3541,6 @@ "version": "4.1.0", "resolved": "https://artifactory.coxautoinc.com/artifactory/api/npm/cai-npm/bl/-/bl-4.1.0.tgz", "integrity": "sha512-1W07cM9gS6DcLperZfFSj+bWLtaPGSOHWhPiGzXmvVJbRLdG82sH/Kn8EtW1VqWVA54AKf2h5k5BbnIbwF3h6w==", - "optional": true, "dependencies": { "buffer": "^5.5.0", "inherits": "^2.0.4", @@ -3837,7 +3802,6 @@ "url": "https://feross.org/support" } ], - "optional": true, "dependencies": { "base64-js": "^1.3.1", "ieee754": "^1.1.13" @@ -4147,7 +4111,6 @@ "version": "4.1.2", "resolved": "https://artifactory.coxautoinc.com/artifactory/api/npm/cai-npm/chalk/-/chalk-4.1.2.tgz", "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, "dependencies": { "ansi-styles": "^4.1.0", "supports-color": "^7.1.0" @@ -4169,9 +4132,9 @@ } }, "node_modules/chardet": { - "version": "0.7.0", - "resolved": "https://artifactory.coxautoinc.com/artifactory/api/npm/cai-npm/chardet/-/chardet-0.7.0.tgz", - "integrity": "sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA==" + "version": "2.1.1", + "resolved": "https://artifactory.coxautoinc.com/artifactory/api/npm/cai-npm/chardet/-/chardet-2.1.1.tgz", + "integrity": "sha512-PsezH1rqdV9VvyNhxxOW32/d75r01NY7TQCmOqomRo15ZSOKbpTFVsfjghxo6JloQUCGnH4k1LGu0R4yCLlWQQ==" }, "node_modules/chokidar": { "version": "1.7.0", @@ -4295,14 +4258,25 @@ } }, "node_modules/cli-cursor": { - "version": "2.1.0", - "resolved": "https://artifactory.coxautoinc.com/artifactory/api/npm/cai-npm/cli-cursor/-/cli-cursor-2.1.0.tgz", - "integrity": "sha512-8lgKz8LmCRYZZQDpRyT2m5rKJ08TnU4tR9FFFW2rxpxR1FzWi4PQ/NfyODchAatHaUgnSPVcx/R5w6NuTBzFiw==", + "version": "3.1.0", + "resolved": "https://artifactory.coxautoinc.com/artifactory/api/npm/cai-npm/cli-cursor/-/cli-cursor-3.1.0.tgz", + "integrity": "sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw==", "dependencies": { - "restore-cursor": "^2.0.0" + "restore-cursor": "^3.1.0" }, "engines": { - "node": ">=4" + "node": ">=8" + } + }, + "node_modules/cli-spinners": { + "version": "2.9.2", + "resolved": "https://artifactory.coxautoinc.com/artifactory/api/npm/cai-npm/cli-spinners/-/cli-spinners-2.9.2.tgz", + "integrity": "sha512-ywqV+5MmyL4E7ybXgKys4DugZbX0FC6LnwrhjuykIjnK9k8OQacQ7axGKnjDXWNhns0xot3bZI5h55H8yo9cJg==", + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/cli-table3": { @@ -4350,23 +4324,14 @@ "node": ">=8" } }, - "node_modules/cli-truncate/node_modules/strip-ansi": { - "version": "6.0.1", - "resolved": "https://artifactory.coxautoinc.com/artifactory/api/npm/cai-npm/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "dev": true, - "dependencies": { - "ansi-regex": "^5.0.1" - }, + "node_modules/cli-width": { + "version": "3.0.0", + "resolved": "https://artifactory.coxautoinc.com/artifactory/api/npm/cai-npm/cli-width/-/cli-width-3.0.0.tgz", + "integrity": "sha512-FxqpkPPwu1HjuN93Omfm4h8uIanXofW0RxVEW3k5RKx+mJJYSthzNhp32Kzxxy3YAEZ/Dc/EWN1vZRY0+kOhbw==", "engines": { - "node": ">=8" + "node": ">= 10" } }, - "node_modules/cli-width": { - "version": "2.2.1", - "resolved": "https://artifactory.coxautoinc.com/artifactory/api/npm/cai-npm/cli-width/-/cli-width-2.2.1.tgz", - "integrity": "sha512-GRMWDxpOB6Dgk2E5Uo+3eEBvtOOlimMmpbFiKuLFnQzYDavtLFY3K5ona41jgN/WdRZtG7utuVSVTL4HbZHGkw==" - }, "node_modules/cliff": { "version": "0.1.10", "resolved": "https://artifactory.coxautoinc.com/artifactory/api/npm/cai-npm/cliff/-/cliff-0.1.10.tgz", @@ -4416,22 +4381,10 @@ "node": ">=8" } }, - "node_modules/cliui/node_modules/strip-ansi": { - "version": "6.0.1", - "resolved": "https://artifactory.coxautoinc.com/artifactory/api/npm/cai-npm/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "dependencies": { - "ansi-regex": "^5.0.1" - }, - "engines": { - "node": ">=8" - } - }, "node_modules/clone": { "version": "1.0.4", "resolved": "https://artifactory.coxautoinc.com/artifactory/api/npm/cai-npm/clone/-/clone-1.0.4.tgz", "integrity": "sha512-JQHZ2QMW6l3aH/j6xCqQThY/9OH4D/9ls34cgkUBiEeocRTU04tHfKPBsUK1PqZCUQM7GiA0IIXJSuXHI64Kbg==", - "optional": true, "engines": { "node": ">=0.8" } @@ -4815,6 +4768,17 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/defaults": { + "version": "1.0.4", + "resolved": "https://artifactory.coxautoinc.com/artifactory/api/npm/cai-npm/defaults/-/defaults-1.0.4.tgz", + "integrity": "sha512-eFuaLoy/Rxalv2kr+lqMlUnrDWV+3j4pljOIJgLIhI058IQfWJ7vXhyEIHu+HtC738klGALYxOKDO0bQP3tg8A==", + "dependencies": { + "clone": "^1.0.2" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/define-lazy-prop": { "version": "2.0.0", "resolved": "https://artifactory.coxautoinc.com/artifactory/api/npm/cai-npm/define-lazy-prop/-/define-lazy-prop-2.0.0.tgz", @@ -5021,18 +4985,6 @@ "node": ">=8.6" } }, - "node_modules/enquirer/node_modules/strip-ansi": { - "version": "6.0.1", - "resolved": "https://artifactory.coxautoinc.com/artifactory/api/npm/cai-npm/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "dev": true, - "dependencies": { - "ansi-regex": "^5.0.1" - }, - "engines": { - "node": ">=8" - } - }, "node_modules/err-code": { "version": "2.0.3", "resolved": "https://artifactory.coxautoinc.com/artifactory/api/npm/cai-npm/err-code/-/err-code-2.0.3.tgz", @@ -5488,6 +5440,11 @@ "node": ">=4" } }, + "node_modules/external-editor/node_modules/chardet": { + "version": "0.7.0", + "resolved": "https://artifactory.coxautoinc.com/artifactory/api/npm/cai-npm/chardet/-/chardet-0.7.0.tgz", + "integrity": "sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA==" + }, "node_modules/external-editor/node_modules/iconv-lite": { "version": "0.4.24", "resolved": "https://artifactory.coxautoinc.com/artifactory/api/npm/cai-npm/iconv-lite/-/iconv-lite-0.4.24.tgz", @@ -5536,14 +5493,17 @@ } }, "node_modules/figures": { - "version": "2.0.0", - "resolved": "https://artifactory.coxautoinc.com/artifactory/api/npm/cai-npm/figures/-/figures-2.0.0.tgz", - "integrity": "sha512-Oa2M9atig69ZkfwiApY8F2Yy+tzMbazyvqv21R0NsSC8floSOC09BbT1ITWAdoMGQvJ/aZnR1KMwdx9tvHnTNA==", + "version": "3.2.0", + "resolved": "https://artifactory.coxautoinc.com/artifactory/api/npm/cai-npm/figures/-/figures-3.2.0.tgz", + "integrity": "sha512-yaduQFRKLXYOGgEn6AZau90j3ggSOyiqXU0F9JZfeXYhNa+Jk4X+s45A2zg5jns87GAFa34BBm2kXw4XpNcbdg==", "dependencies": { "escape-string-regexp": "^1.0.5" }, "engines": { - "node": ">=4" + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/file-uri-to-path": { @@ -6225,7 +6185,6 @@ "version": "4.0.0", "resolved": "https://artifactory.coxautoinc.com/artifactory/api/npm/cai-npm/has-flag/-/has-flag-4.0.0.tgz", "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, "engines": { "node": ">=8" } @@ -6492,8 +6451,7 @@ "type": "consulting", "url": "https://feross.org/support" } - ], - "optional": true + ] }, "node_modules/import-fresh": { "version": "3.3.1", @@ -6581,82 +6539,107 @@ } }, "node_modules/inquirer": { - "version": "6.5.2", - "resolved": "https://artifactory.coxautoinc.com/artifactory/api/npm/cai-npm/inquirer/-/inquirer-6.5.2.tgz", - "integrity": "sha512-cntlB5ghuB0iuO65Ovoi8ogLHiWGs/5yNrtUcKjFhSSiVeAIVpD7koaSU9RM8mpXw5YDi9RdYXGQMaOURB7ycQ==", + "version": "8.2.7", + "resolved": "https://artifactory.coxautoinc.com/artifactory/api/npm/cai-npm/inquirer/-/inquirer-8.2.7.tgz", + "integrity": "sha512-UjOaSel/iddGZJ5xP/Eixh6dY1XghiBw4XK13rCCIJcJfyhhoul/7KhLLUGtebEj6GDYM6Vnx/mVsjx2L/mFIA==", "dependencies": { - "ansi-escapes": "^3.2.0", - "chalk": "^2.4.2", - "cli-cursor": "^2.1.0", - "cli-width": "^2.0.0", - "external-editor": "^3.0.3", - "figures": "^2.0.0", - "lodash": "^4.17.12", - "mute-stream": "0.0.7", - "run-async": "^2.2.0", - "rxjs": "^6.4.0", - "string-width": "^2.1.0", - "strip-ansi": "^5.1.0", - "through": "^2.3.6" + "@inquirer/external-editor": "^1.0.0", + "ansi-escapes": "^4.2.1", + "chalk": "^4.1.1", + "cli-cursor": "^3.1.0", + "cli-width": "^3.0.0", + "figures": "^3.0.0", + "lodash": "^4.17.21", + "mute-stream": "0.0.8", + "ora": "^5.4.1", + "run-async": "^2.4.0", + "rxjs": "^7.5.5", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0", + "through": "^2.3.6", + "wrap-ansi": "^6.0.1" }, "engines": { - "node": ">=6.0.0" + "node": ">=12.0.0" } }, - "node_modules/inquirer/node_modules/ansi-styles": { - "version": "3.2.1", - "resolved": "https://artifactory.coxautoinc.com/artifactory/api/npm/cai-npm/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "node_modules/inquirer/node_modules/@inquirer/external-editor": { + "version": "1.0.3", + "resolved": "https://artifactory.coxautoinc.com/artifactory/api/npm/cai-npm/@inquirer/external-editor/-/external-editor-1.0.3.tgz", + "integrity": "sha512-RWbSrDiYmO4LbejWY7ttpxczuwQyZLBUyygsA9Nsv95hpzUWwnNTVQmAq3xuh7vNwCp07UTmE5i11XAEExx4RA==", "dependencies": { - "color-convert": "^1.9.0" + "chardet": "^2.1.1", + "iconv-lite": "^0.7.0" }, "engines": { - "node": ">=4" + "node": ">=18" + }, + "peerDependencies": { + "@types/node": ">=18" + }, + "peerDependenciesMeta": { + "@types/node": { + "optional": true + } } }, - "node_modules/inquirer/node_modules/chalk": { - "version": "2.4.2", - "resolved": "https://artifactory.coxautoinc.com/artifactory/api/npm/cai-npm/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "node_modules/inquirer/node_modules/@types/node": { + "version": "25.0.3", + "resolved": "https://artifactory.coxautoinc.com/artifactory/api/npm/cai-npm/@types/node/-/node-25.0.3.tgz", + "integrity": "sha512-W609buLVRVmeW693xKfzHeIV6nJGGz98uCPfeXI1ELMLXVeKYZ9m15fAMSaUPBHYLGFsVRcMmSCksQOrZV9BYA==", + "optional": true, + "peer": true, "dependencies": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" + "undici-types": "~7.16.0" + } + }, + "node_modules/inquirer/node_modules/iconv-lite": { + "version": "0.7.1", + "resolved": "https://artifactory.coxautoinc.com/artifactory/api/npm/cai-npm/iconv-lite/-/iconv-lite-0.7.1.tgz", + "integrity": "sha512-2Tth85cXwGFHfvRgZWszZSvdo+0Xsqmw8k8ZwxScfcBneNUraK+dxRxRm24nszx80Y0TVio8kKLt5sLE7ZCLlw==", + "dependencies": { + "safer-buffer": ">= 2.1.2 < 3.0.0" }, "engines": { - "node": ">=4" + "node": ">=0.10.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/express" } }, - "node_modules/inquirer/node_modules/color-convert": { - "version": "1.9.3", - "resolved": "https://artifactory.coxautoinc.com/artifactory/api/npm/cai-npm/color-convert/-/color-convert-1.9.3.tgz", - "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "node_modules/inquirer/node_modules/rxjs": { + "version": "7.8.2", + "resolved": "https://artifactory.coxautoinc.com/artifactory/api/npm/cai-npm/rxjs/-/rxjs-7.8.2.tgz", + "integrity": "sha512-dhKf903U/PQZY6boNNtAGdWbG85WAbjT/1xYoZIC7FAY0yWapOBQVsVrDl58W86//e1VpMNBtRV4MaXfdMySFA==", "dependencies": { - "color-name": "1.1.3" + "tslib": "^2.1.0" } }, - "node_modules/inquirer/node_modules/color-name": { - "version": "1.1.3", - "resolved": "https://artifactory.coxautoinc.com/artifactory/api/npm/cai-npm/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==" - }, - "node_modules/inquirer/node_modules/has-flag": { - "version": "3.0.0", - "resolved": "https://artifactory.coxautoinc.com/artifactory/api/npm/cai-npm/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", + "node_modules/inquirer/node_modules/string-width": { + "version": "4.2.3", + "resolved": "https://artifactory.coxautoinc.com/artifactory/api/npm/cai-npm/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, "engines": { - "node": ">=4" + "node": ">=8" } }, - "node_modules/inquirer/node_modules/supports-color": { - "version": "5.5.0", - "resolved": "https://artifactory.coxautoinc.com/artifactory/api/npm/cai-npm/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "node_modules/inquirer/node_modules/wrap-ansi": { + "version": "6.2.0", + "resolved": "https://artifactory.coxautoinc.com/artifactory/api/npm/cai-npm/wrap-ansi/-/wrap-ansi-6.2.0.tgz", + "integrity": "sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==", "dependencies": { - "has-flag": "^3.0.0" + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" }, "engines": { - "node": ">=4" + "node": ">=8" } }, "node_modules/interpret": { @@ -6843,6 +6826,14 @@ "node": ">=0.10.0" } }, + "node_modules/is-interactive": { + "version": "1.0.0", + "resolved": "https://artifactory.coxautoinc.com/artifactory/api/npm/cai-npm/is-interactive/-/is-interactive-1.0.0.tgz", + "integrity": "sha512-2HvIEKRoqS62guEC+qBjpvRubdX910WCMuJTZ+I9yvqKU2/12eSL549HMwtabb4oupdj2sMP50k+XJfB/8JE6w==", + "engines": { + "node": ">=8" + } + }, "node_modules/is-number": { "version": "7.0.0", "resolved": "https://artifactory.coxautoinc.com/artifactory/api/npm/cai-npm/is-number/-/is-number-7.0.0.tgz", @@ -6944,7 +6935,6 @@ "version": "0.1.0", "resolved": "https://artifactory.coxautoinc.com/artifactory/api/npm/cai-npm/is-unicode-supported/-/is-unicode-supported-0.1.0.tgz", "integrity": "sha512-knxG2q4UC3u8stRGyAVJCOdxFmv5DZiRcdlIaAQXAbSfJya+OhopNotLQrstBhququ4ZpuKbDc/8S6mgXgPFPw==", - "dev": true, "engines": { "node": ">=10" }, @@ -8042,33 +8032,6 @@ "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, - "node_modules/jest-watcher/node_modules/ansi-escapes": { - "version": "4.3.2", - "resolved": "https://artifactory.coxautoinc.com/artifactory/api/npm/cai-npm/ansi-escapes/-/ansi-escapes-4.3.2.tgz", - "integrity": "sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ==", - "dev": true, - "dependencies": { - "type-fest": "^0.21.3" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/jest-watcher/node_modules/type-fest": { - "version": "0.21.3", - "resolved": "https://artifactory.coxautoinc.com/artifactory/api/npm/cai-npm/type-fest/-/type-fest-0.21.3.tgz", - "integrity": "sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w==", - "dev": true, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/jest-worker": { "version": "29.7.0", "resolved": "https://artifactory.coxautoinc.com/artifactory/api/npm/cai-npm/jest-worker/-/jest-worker-29.7.0.tgz", @@ -8419,7 +8382,6 @@ "version": "4.1.0", "resolved": "https://artifactory.coxautoinc.com/artifactory/api/npm/cai-npm/log-symbols/-/log-symbols-4.1.0.tgz", "integrity": "sha512-8XPvpAA8uyhfteu8pIvQxpJZ7SYYdpUivZpGy6sFsBuKRY/7rQGavedeB8aK+Zkyq6upMFVL/9AW6vOYzfRyLg==", - "dev": true, "dependencies": { "chalk": "^4.1.0", "is-unicode-supported": "^0.1.0" @@ -8449,46 +8411,6 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/log-update/node_modules/ansi-escapes": { - "version": "4.3.2", - "resolved": "https://artifactory.coxautoinc.com/artifactory/api/npm/cai-npm/ansi-escapes/-/ansi-escapes-4.3.2.tgz", - "integrity": "sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ==", - "dev": true, - "dependencies": { - "type-fest": "^0.21.3" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/log-update/node_modules/cli-cursor": { - "version": "3.1.0", - "resolved": "https://artifactory.coxautoinc.com/artifactory/api/npm/cai-npm/cli-cursor/-/cli-cursor-3.1.0.tgz", - "integrity": "sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw==", - "dev": true, - "dependencies": { - "restore-cursor": "^3.1.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/log-update/node_modules/restore-cursor": { - "version": "3.1.0", - "resolved": "https://artifactory.coxautoinc.com/artifactory/api/npm/cai-npm/restore-cursor/-/restore-cursor-3.1.0.tgz", - "integrity": "sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA==", - "dev": true, - "dependencies": { - "onetime": "^5.1.0", - "signal-exit": "^3.0.2" - }, - "engines": { - "node": ">=8" - } - }, "node_modules/log-update/node_modules/slice-ansi": { "version": "4.0.0", "resolved": "https://artifactory.coxautoinc.com/artifactory/api/npm/cai-npm/slice-ansi/-/slice-ansi-4.0.0.tgz", @@ -8520,30 +8442,6 @@ "node": ">=8" } }, - "node_modules/log-update/node_modules/strip-ansi": { - "version": "6.0.1", - "resolved": "https://artifactory.coxautoinc.com/artifactory/api/npm/cai-npm/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "dev": true, - "dependencies": { - "ansi-regex": "^5.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/log-update/node_modules/type-fest": { - "version": "0.21.3", - "resolved": "https://artifactory.coxautoinc.com/artifactory/api/npm/cai-npm/type-fest/-/type-fest-0.21.3.tgz", - "integrity": "sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w==", - "dev": true, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/log-update/node_modules/wrap-ansi": { "version": "6.2.0", "resolved": "https://artifactory.coxautoinc.com/artifactory/api/npm/cai-npm/wrap-ansi/-/wrap-ansi-6.2.0.tgz", @@ -8790,7 +8688,6 @@ "version": "2.1.0", "resolved": "https://artifactory.coxautoinc.com/artifactory/api/npm/cai-npm/mimic-fn/-/mimic-fn-2.1.0.tgz", "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==", - "dev": true, "engines": { "node": ">=6" } @@ -9302,18 +9199,6 @@ "node": ">=8" } }, - "node_modules/mocha/node_modules/strip-ansi": { - "version": "6.0.1", - "resolved": "https://artifactory.coxautoinc.com/artifactory/api/npm/cai-npm/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "dev": true, - "dependencies": { - "ansi-regex": "^5.0.1" - }, - "engines": { - "node": ">=8" - } - }, "node_modules/mocha/node_modules/supports-color": { "version": "8.1.1", "resolved": "https://artifactory.coxautoinc.com/artifactory/api/npm/cai-npm/supports-color/-/supports-color-8.1.1.tgz", @@ -9361,9 +9246,9 @@ "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==" }, "node_modules/mute-stream": { - "version": "0.0.7", - "resolved": "https://artifactory.coxautoinc.com/artifactory/api/npm/cai-npm/mute-stream/-/mute-stream-0.0.7.tgz", - "integrity": "sha512-r65nCZhrbXXb6dXOACihYApHw2Q6pV0M3V0PSxd74N0+D8nzAdEAITq2oAjA1jVnKI+tGvEBUpqiMh0+rW6zDQ==" + "version": "0.0.8", + "resolved": "https://artifactory.coxautoinc.com/artifactory/api/npm/cai-npm/mute-stream/-/mute-stream-0.0.8.tgz", + "integrity": "sha512-nnbWWOkoWyUsTjKrhgD0dcz22mdkSnpYqbEjIm2nhwhuxlSkpywJmBo8h0ZqJdkp73mb90SssHkN4rsRaBAfAA==" }, "node_modules/nan": { "version": "2.24.0", @@ -9808,18 +9693,6 @@ "node": ">=8" } }, - "node_modules/nyc/node_modules/strip-ansi": { - "version": "6.0.1", - "resolved": "https://artifactory.coxautoinc.com/artifactory/api/npm/cai-npm/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "dev": true, - "dependencies": { - "ansi-regex": "^5.0.1" - }, - "engines": { - "node": ">=8" - } - }, "node_modules/nyc/node_modules/wrap-ansi": { "version": "6.2.0", "resolved": "https://artifactory.coxautoinc.com/artifactory/api/npm/cai-npm/wrap-ansi/-/wrap-ansi-6.2.0.tgz", @@ -10021,7 +9894,6 @@ "version": "5.1.2", "resolved": "https://artifactory.coxautoinc.com/artifactory/api/npm/cai-npm/onetime/-/onetime-5.1.2.tgz", "integrity": "sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==", - "dev": true, "dependencies": { "mimic-fn": "^2.1.0" }, @@ -10064,6 +9936,28 @@ "integrity": "sha512-iotkTvxc+TwOm5Ieim8VnSNvCDjCK9S8G3scJ50ZthspSxa7jx50jkhYduuAtAjvfDUwSgOwf8+If99AlOEhyw==", "optional": true }, + "node_modules/ora": { + "version": "5.4.1", + "resolved": "https://artifactory.coxautoinc.com/artifactory/api/npm/cai-npm/ora/-/ora-5.4.1.tgz", + "integrity": "sha512-5b6Y85tPxZZ7QytO+BQzysW31HJku27cRIlkbAXaNx+BdcVi+LlRFmVXzeF6a7JCwJpyw5c4b+YSVImQIrBpuQ==", + "dependencies": { + "bl": "^4.1.0", + "chalk": "^4.1.0", + "cli-cursor": "^3.1.0", + "cli-spinners": "^2.5.0", + "is-interactive": "^1.0.0", + "is-unicode-supported": "^0.1.0", + "log-symbols": "^4.1.0", + "strip-ansi": "^6.0.0", + "wcwidth": "^1.0.1" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/os-tmpdir": { "version": "1.0.2", "resolved": "https://artifactory.coxautoinc.com/artifactory/api/npm/cai-npm/os-tmpdir/-/os-tmpdir-1.0.2.tgz", @@ -11323,34 +11217,15 @@ } }, "node_modules/restore-cursor": { - "version": "2.0.0", - "resolved": "https://artifactory.coxautoinc.com/artifactory/api/npm/cai-npm/restore-cursor/-/restore-cursor-2.0.0.tgz", - "integrity": "sha512-6IzJLuGi4+R14vwagDHX+JrXmPVtPpn4mffDJ1UdR7/Edm87fl6yi8mMBIVvFtJaNTUvjughmW4hwLhRG7gC1Q==", + "version": "3.1.0", + "resolved": "https://artifactory.coxautoinc.com/artifactory/api/npm/cai-npm/restore-cursor/-/restore-cursor-3.1.0.tgz", + "integrity": "sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA==", "dependencies": { - "onetime": "^2.0.0", + "onetime": "^5.1.0", "signal-exit": "^3.0.2" }, "engines": { - "node": ">=4" - } - }, - "node_modules/restore-cursor/node_modules/mimic-fn": { - "version": "1.2.0", - "resolved": "https://artifactory.coxautoinc.com/artifactory/api/npm/cai-npm/mimic-fn/-/mimic-fn-1.2.0.tgz", - "integrity": "sha512-jf84uxzwiuiIVKiOLpfYk7N46TSy8ubTonmneY9vrpHNAnp0QBt2BxWV9dO3/j+BoVAb+a5G6YDPW3M5HOdMWQ==", - "engines": { - "node": ">=4" - } - }, - "node_modules/restore-cursor/node_modules/onetime": { - "version": "2.0.1", - "resolved": "https://artifactory.coxautoinc.com/artifactory/api/npm/cai-npm/onetime/-/onetime-2.0.1.tgz", - "integrity": "sha512-oyyPpiMaKARvvcgip+JV+7zci5L8D1W9RZIz2l1o08AM3pfspitVWnPt3mzHcBPp12oYMTy0pqrFs/C+m3EwsQ==", - "dependencies": { - "mimic-fn": "^1.0.0" - }, - "engines": { - "node": ">=4" + "node": ">=8" } }, "node_modules/ret": { @@ -12279,18 +12154,6 @@ "node": ">=10" } }, - "node_modules/string-length/node_modules/strip-ansi": { - "version": "6.0.1", - "resolved": "https://artifactory.coxautoinc.com/artifactory/api/npm/cai-npm/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "dev": true, - "dependencies": { - "ansi-regex": "^5.0.1" - }, - "engines": { - "node": ">=8" - } - }, "node_modules/string-width": { "version": "2.1.1", "resolved": "https://artifactory.coxautoinc.com/artifactory/api/npm/cai-npm/string-width/-/string-width-2.1.1.tgz", @@ -12317,17 +12180,6 @@ "node": ">=8" } }, - "node_modules/string-width-cjs/node_modules/strip-ansi": { - "version": "6.0.1", - "resolved": "https://artifactory.coxautoinc.com/artifactory/api/npm/cai-npm/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "dependencies": { - "ansi-regex": "^5.0.1" - }, - "engines": { - "node": ">=8" - } - }, "node_modules/string-width/node_modules/ansi-regex": { "version": "3.0.1", "resolved": "https://artifactory.coxautoinc.com/artifactory/api/npm/cai-npm/ansi-regex/-/ansi-regex-3.0.1.tgz", @@ -12370,14 +12222,14 @@ } }, "node_modules/strip-ansi": { - "version": "5.2.0", - "resolved": "https://artifactory.coxautoinc.com/artifactory/api/npm/cai-npm/strip-ansi/-/strip-ansi-5.2.0.tgz", - "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", + "version": "6.0.1", + "resolved": "https://artifactory.coxautoinc.com/artifactory/api/npm/cai-npm/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", "dependencies": { - "ansi-regex": "^4.1.0" + "ansi-regex": "^5.0.1" }, "engines": { - "node": ">=6" + "node": ">=8" } }, "node_modules/strip-ansi-cjs": { @@ -12392,14 +12244,6 @@ "node": ">=8" } }, - "node_modules/strip-ansi/node_modules/ansi-regex": { - "version": "4.1.1", - "resolved": "https://artifactory.coxautoinc.com/artifactory/api/npm/cai-npm/ansi-regex/-/ansi-regex-4.1.1.tgz", - "integrity": "sha512-ILlv4k/3f6vfQ4OoP2AGvirOktlQ98ZEL1k9FaQjxa3L1abBgbuTDAdPOpvbGncC0BTVQrl+OM8xZGK6tWXt7g==", - "engines": { - "node": ">=6" - } - }, "node_modules/strip-bom": { "version": "4.0.0", "resolved": "https://artifactory.coxautoinc.com/artifactory/api/npm/cai-npm/strip-bom/-/strip-bom-4.0.0.tgz", @@ -12439,7 +12283,6 @@ "version": "7.2.0", "resolved": "https://artifactory.coxautoinc.com/artifactory/api/npm/cai-npm/supports-color/-/supports-color-7.2.0.tgz", "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, "dependencies": { "has-flag": "^4.0.0" }, @@ -12472,6 +12315,175 @@ "untildify": "^3.0.3" } }, + "node_modules/tabtab/node_modules/ansi-escapes": { + "version": "3.2.0", + "resolved": "https://artifactory.coxautoinc.com/artifactory/api/npm/cai-npm/ansi-escapes/-/ansi-escapes-3.2.0.tgz", + "integrity": "sha512-cBhpre4ma+U0T1oM5fXg7Dy1Jw7zzwv7lt/GoCpr+hDQJoYnKVPLL4dCvSEFMmQurOQvSrwT7SL/DAlhBI97RQ==", + "engines": { + "node": ">=4" + } + }, + "node_modules/tabtab/node_modules/ansi-regex": { + "version": "4.1.1", + "resolved": "https://artifactory.coxautoinc.com/artifactory/api/npm/cai-npm/ansi-regex/-/ansi-regex-4.1.1.tgz", + "integrity": "sha512-ILlv4k/3f6vfQ4OoP2AGvirOktlQ98ZEL1k9FaQjxa3L1abBgbuTDAdPOpvbGncC0BTVQrl+OM8xZGK6tWXt7g==", + "engines": { + "node": ">=6" + } + }, + "node_modules/tabtab/node_modules/ansi-styles": { + "version": "3.2.1", + "resolved": "https://artifactory.coxautoinc.com/artifactory/api/npm/cai-npm/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "dependencies": { + "color-convert": "^1.9.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/tabtab/node_modules/chalk": { + "version": "2.4.2", + "resolved": "https://artifactory.coxautoinc.com/artifactory/api/npm/cai-npm/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "dependencies": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/tabtab/node_modules/cli-cursor": { + "version": "2.1.0", + "resolved": "https://artifactory.coxautoinc.com/artifactory/api/npm/cai-npm/cli-cursor/-/cli-cursor-2.1.0.tgz", + "integrity": "sha512-8lgKz8LmCRYZZQDpRyT2m5rKJ08TnU4tR9FFFW2rxpxR1FzWi4PQ/NfyODchAatHaUgnSPVcx/R5w6NuTBzFiw==", + "dependencies": { + "restore-cursor": "^2.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/tabtab/node_modules/cli-width": { + "version": "2.2.1", + "resolved": "https://artifactory.coxautoinc.com/artifactory/api/npm/cai-npm/cli-width/-/cli-width-2.2.1.tgz", + "integrity": "sha512-GRMWDxpOB6Dgk2E5Uo+3eEBvtOOlimMmpbFiKuLFnQzYDavtLFY3K5ona41jgN/WdRZtG7utuVSVTL4HbZHGkw==" + }, + "node_modules/tabtab/node_modules/color-convert": { + "version": "1.9.3", + "resolved": "https://artifactory.coxautoinc.com/artifactory/api/npm/cai-npm/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "dependencies": { + "color-name": "1.1.3" + } + }, + "node_modules/tabtab/node_modules/color-name": { + "version": "1.1.3", + "resolved": "https://artifactory.coxautoinc.com/artifactory/api/npm/cai-npm/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==" + }, + "node_modules/tabtab/node_modules/figures": { + "version": "2.0.0", + "resolved": "https://artifactory.coxautoinc.com/artifactory/api/npm/cai-npm/figures/-/figures-2.0.0.tgz", + "integrity": "sha512-Oa2M9atig69ZkfwiApY8F2Yy+tzMbazyvqv21R0NsSC8floSOC09BbT1ITWAdoMGQvJ/aZnR1KMwdx9tvHnTNA==", + "dependencies": { + "escape-string-regexp": "^1.0.5" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/tabtab/node_modules/has-flag": { + "version": "3.0.0", + "resolved": "https://artifactory.coxautoinc.com/artifactory/api/npm/cai-npm/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", + "engines": { + "node": ">=4" + } + }, + "node_modules/tabtab/node_modules/inquirer": { + "version": "6.5.2", + "resolved": "https://artifactory.coxautoinc.com/artifactory/api/npm/cai-npm/inquirer/-/inquirer-6.5.2.tgz", + "integrity": "sha512-cntlB5ghuB0iuO65Ovoi8ogLHiWGs/5yNrtUcKjFhSSiVeAIVpD7koaSU9RM8mpXw5YDi9RdYXGQMaOURB7ycQ==", + "dependencies": { + "ansi-escapes": "^3.2.0", + "chalk": "^2.4.2", + "cli-cursor": "^2.1.0", + "cli-width": "^2.0.0", + "external-editor": "^3.0.3", + "figures": "^2.0.0", + "lodash": "^4.17.12", + "mute-stream": "0.0.7", + "run-async": "^2.2.0", + "rxjs": "^6.4.0", + "string-width": "^2.1.0", + "strip-ansi": "^5.1.0", + "through": "^2.3.6" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/tabtab/node_modules/mimic-fn": { + "version": "1.2.0", + "resolved": "https://artifactory.coxautoinc.com/artifactory/api/npm/cai-npm/mimic-fn/-/mimic-fn-1.2.0.tgz", + "integrity": "sha512-jf84uxzwiuiIVKiOLpfYk7N46TSy8ubTonmneY9vrpHNAnp0QBt2BxWV9dO3/j+BoVAb+a5G6YDPW3M5HOdMWQ==", + "engines": { + "node": ">=4" + } + }, + "node_modules/tabtab/node_modules/mute-stream": { + "version": "0.0.7", + "resolved": "https://artifactory.coxautoinc.com/artifactory/api/npm/cai-npm/mute-stream/-/mute-stream-0.0.7.tgz", + "integrity": "sha512-r65nCZhrbXXb6dXOACihYApHw2Q6pV0M3V0PSxd74N0+D8nzAdEAITq2oAjA1jVnKI+tGvEBUpqiMh0+rW6zDQ==" + }, + "node_modules/tabtab/node_modules/onetime": { + "version": "2.0.1", + "resolved": "https://artifactory.coxautoinc.com/artifactory/api/npm/cai-npm/onetime/-/onetime-2.0.1.tgz", + "integrity": "sha512-oyyPpiMaKARvvcgip+JV+7zci5L8D1W9RZIz2l1o08AM3pfspitVWnPt3mzHcBPp12oYMTy0pqrFs/C+m3EwsQ==", + "dependencies": { + "mimic-fn": "^1.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/tabtab/node_modules/restore-cursor": { + "version": "2.0.0", + "resolved": "https://artifactory.coxautoinc.com/artifactory/api/npm/cai-npm/restore-cursor/-/restore-cursor-2.0.0.tgz", + "integrity": "sha512-6IzJLuGi4+R14vwagDHX+JrXmPVtPpn4mffDJ1UdR7/Edm87fl6yi8mMBIVvFtJaNTUvjughmW4hwLhRG7gC1Q==", + "dependencies": { + "onetime": "^2.0.0", + "signal-exit": "^3.0.2" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/tabtab/node_modules/strip-ansi": { + "version": "5.2.0", + "resolved": "https://artifactory.coxautoinc.com/artifactory/api/npm/cai-npm/strip-ansi/-/strip-ansi-5.2.0.tgz", + "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", + "dependencies": { + "ansi-regex": "^4.1.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/tabtab/node_modules/supports-color": { + "version": "5.5.0", + "resolved": "https://artifactory.coxautoinc.com/artifactory/api/npm/cai-npm/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "dependencies": { + "has-flag": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, "node_modules/tar": { "version": "7.5.2", "resolved": "https://artifactory.coxautoinc.com/artifactory/api/npm/cai-npm/tar/-/tar-7.5.2.tgz", @@ -13055,6 +13067,13 @@ "resolved": "https://artifactory.coxautoinc.com/artifactory/api/npm/cai-npm/underscore/-/underscore-1.13.7.tgz", "integrity": "sha512-GMXzWtsc57XAtguZgaQViUOzs0KTkk8ojr3/xAxXLITqf/3EMwxC0inyETfDFjH/Krbhuep0HNbbjI9i/q3F3g==" }, + "node_modules/undici-types": { + "version": "7.16.0", + "resolved": "https://artifactory.coxautoinc.com/artifactory/api/npm/cai-npm/undici-types/-/undici-types-7.16.0.tgz", + "integrity": "sha512-Zz+aZWSj8LE6zoxD+xrjh4VfkIG8Ya6LvYkZqtUQGJPZjYl53ypCaUwWqo7eI0x66KBGeRo+mlBEkMSeSZ38Nw==", + "optional": true, + "peer": true + }, "node_modules/unicode-canonical-property-names-ecmascript": { "version": "2.0.1", "resolved": "https://artifactory.coxautoinc.com/artifactory/api/npm/cai-npm/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-2.0.1.tgz", @@ -13360,6 +13379,14 @@ "makeerror": "1.0.12" } }, + "node_modules/wcwidth": { + "version": "1.0.1", + "resolved": "https://artifactory.coxautoinc.com/artifactory/api/npm/cai-npm/wcwidth/-/wcwidth-1.0.1.tgz", + "integrity": "sha512-XHPEwS0q6TaxcvG85+8EYkbiCux2XtWG2mkc47Ng2A77BQu9+DqIOJldST4HgPkuea7dvKSj5VgX3P1d4rW8Tg==", + "dependencies": { + "defaults": "^1.0.3" + } + }, "node_modules/webidl-conversions": { "version": "3.0.1", "resolved": "https://artifactory.coxautoinc.com/artifactory/api/npm/cai-npm/webidl-conversions/-/webidl-conversions-3.0.1.tgz", @@ -13491,17 +13518,6 @@ "node": ">=8" } }, - "node_modules/wrap-ansi-cjs/node_modules/strip-ansi": { - "version": "6.0.1", - "resolved": "https://artifactory.coxautoinc.com/artifactory/api/npm/cai-npm/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "dependencies": { - "ansi-regex": "^5.0.1" - }, - "engines": { - "node": ">=8" - } - }, "node_modules/wrap-ansi/node_modules/string-width": { "version": "4.2.3", "resolved": "https://artifactory.coxautoinc.com/artifactory/api/npm/cai-npm/string-width/-/string-width-4.2.3.tgz", @@ -13515,17 +13531,6 @@ "node": ">=8" } }, - "node_modules/wrap-ansi/node_modules/strip-ansi": { - "version": "6.0.1", - "resolved": "https://artifactory.coxautoinc.com/artifactory/api/npm/cai-npm/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "dependencies": { - "ansi-regex": "^5.0.1" - }, - "engines": { - "node": ">=8" - } - }, "node_modules/wrappy": { "version": "1.0.2", "resolved": "https://artifactory.coxautoinc.com/artifactory/api/npm/cai-npm/wrappy/-/wrappy-1.0.2.tgz", @@ -13645,17 +13650,6 @@ "node": ">=8" } }, - "node_modules/yargs/node_modules/strip-ansi": { - "version": "6.0.1", - "resolved": "https://artifactory.coxautoinc.com/artifactory/api/npm/cai-npm/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "dependencies": { - "ansi-regex": "^5.0.1" - }, - "engines": { - "node": ">=8" - } - }, "node_modules/yargs/node_modules/yargs-parser": { "version": "21.1.1", "resolved": "https://artifactory.coxautoinc.com/artifactory/api/npm/cai-npm/yargs-parser/-/yargs-parser-21.1.1.tgz", diff --git a/package.json b/package.json index 61b055c8..70e41e7d 100644 --- a/package.json +++ b/package.json @@ -53,7 +53,7 @@ "crypto": "0.0.3", "fuzzy": "^0.1.1", "ini": "^2.0.0", - "inquirer": "^6.5.2", + "inquirer": "^8.2.7", "lodash": "^4.17.21", "lokijs": "^1.5.1", "memoizee": "^0.4.15", diff --git a/src/lib/compareFavorites.ts b/src/lib/compareFavorites.ts index d2d49998..20eb110b 100644 --- a/src/lib/compareFavorites.ts +++ b/src/lib/compareFavorites.ts @@ -1,8 +1,11 @@ import { Account } from 'alks.js'; +import { getAccountDelim } from './getAccountDelim'; // Returns a number for a sorting function such that favorites are sorted to the top export const compareFavorites = (favorites: string[]) => - (a: Account, b: Account): number => - Number(favorites.includes(b.account)) - - Number(favorites.includes(a.account)); + (a: Account, b: Account): number => { + const aKey = [a.account, a.role].join(getAccountDelim()); + const bKey = [b.account, b.role].join(getAccountDelim()); + return Number(favorites.includes(bKey)) - Number(favorites.includes(aKey)); + }; diff --git a/src/lib/handlers/alks-developer-favorites.ts b/src/lib/handlers/alks-developer-favorites.ts index 873efe4c..0afdb819 100644 --- a/src/lib/handlers/alks-developer-favorites.ts +++ b/src/lib/handlers/alks-developer-favorites.ts @@ -40,6 +40,7 @@ export async function handleAlksDeveloperFavorites( ); choices.push({ name, + value: name, checked: contains(favorites, name), }); } else { @@ -52,6 +53,7 @@ export async function handleAlksDeveloperFavorites( const name = [val.account, val.role].join(getAccountDelim()); choices.push({ name, + value: name, checked: contains(favorites, name), }); }); diff --git a/src/lib/promptForAlksAccountAndRole.ts b/src/lib/promptForAlksAccountAndRole.ts index 5b56b0f2..8f633476 100644 --- a/src/lib/promptForAlksAccountAndRole.ts +++ b/src/lib/promptForAlksAccountAndRole.ts @@ -8,6 +8,7 @@ import { parseAlksAccount } from './parseAlksAccount'; import { formatAccountOutput } from './formatAccountOutput'; import { compareAliasesAlphabetically } from './compareAliasesAlphabetically'; import { compareFavorites } from './compareFavorites'; +import { getAccountDelim } from './getAccountDelim'; export interface GetAlksAccountOptions { iamOnly: boolean; @@ -50,7 +51,10 @@ export async function promptForAlksAccountAndRole( const indexedAlksAccounts = alksAccounts .filter( (alksAccount) => - !opts.filterFavorites || favorites.includes(alksAccount.account) + !opts.filterFavorites || + favorites.includes( + [alksAccount.account, alksAccount.role].join(getAccountDelim()) + ) ) // Filter out non-favorites if filterFavorites flag is passed .sort(compareAliasesAlphabetically()) // Sort alphabetically first .sort(compareFavorites(favorites)) // Move favorites to the front of the list, non-favorites to the back From 750b88317a3679b7b6f7c332ec20ed79a2e9685d Mon Sep 17 00:00:00 2001 From: Cody Date: Tue, 23 Dec 2025 12:31:26 -0600 Subject: [PATCH 2/4] changelog --- changelog.txt | 3 +-- dist/changelog.txt | 3 +-- 2 files changed, 2 insertions(+), 4 deletions(-) diff --git a/changelog.txt b/changelog.txt index 77aaae2c..147203d3 100644 --- a/changelog.txt +++ b/changelog.txt @@ -3,8 +3,7 @@ Thanks for upgrading to the latest version of the ALKS CLI! -* Updated alks.js dependency to latest version (2.14.9) with bug fixes and improvements. -* Updated CI/CD workflows to use Artifactory for npm package registry. +* Fixed favorites not being displayed correctly in certain scenarios. Have feedback? https://github.com/Cox-Automotive/ALKS-CLI/issues diff --git a/dist/changelog.txt b/dist/changelog.txt index 77aaae2c..147203d3 100644 --- a/dist/changelog.txt +++ b/dist/changelog.txt @@ -3,8 +3,7 @@ Thanks for upgrading to the latest version of the ALKS CLI! -* Updated alks.js dependency to latest version (2.14.9) with bug fixes and improvements. -* Updated CI/CD workflows to use Artifactory for npm package registry. +* Fixed favorites not being displayed correctly in certain scenarios. Have feedback? https://github.com/Cox-Automotive/ALKS-CLI/issues From 40b05bcc84e41ce17a3791290c2d6fb435b523f0 Mon Sep 17 00:00:00 2001 From: Cody Date: Tue, 23 Dec 2025 12:34:36 -0600 Subject: [PATCH 3/4] Empty Commit to trigger From b6aceaa8e2da127ea2cfa66af80da11988ae8320 Mon Sep 17 00:00:00 2001 From: Cody Date: Tue, 23 Dec 2025 14:58:37 -0600 Subject: [PATCH 4/4] fixes for unit tests --- dist/src/lib/compareFavorites.js | 12 +++++++++++- dist/src/lib/compareFavorites.js.map | 2 +- dist/src/lib/promptForAlksAccountAndRole.js | 4 +--- dist/src/lib/promptForAlksAccountAndRole.js.map | 2 +- .../src/lib/promptForAlksAccountAndRole.test.js | 14 +++++++------- .../lib/promptForAlksAccountAndRole.test.js.map | 2 +- src/lib/compareFavorites.ts | 17 +++++++++++++++-- src/lib/promptForAlksAccountAndRole.test.ts | 14 +++++++------- src/lib/promptForAlksAccountAndRole.ts | 4 +--- 9 files changed, 45 insertions(+), 26 deletions(-) diff --git a/dist/src/lib/compareFavorites.js b/dist/src/lib/compareFavorites.js index 729e5ab5..a9c77c86 100644 --- a/dist/src/lib/compareFavorites.js +++ b/dist/src/lib/compareFavorites.js @@ -3,10 +3,20 @@ Object.defineProperty(exports, "__esModule", { value: true }); exports.compareFavorites = void 0; const getAccountDelim_1 = require("./getAccountDelim"); // Returns a number for a sorting function such that favorites are sorted to the top +// while maintaining alphabetical order within each group const compareFavorites = (favorites) => (a, b) => { const aKey = [a.account, a.role].join((0, getAccountDelim_1.getAccountDelim)()); const bKey = [b.account, b.role].join((0, getAccountDelim_1.getAccountDelim)()); - return Number(favorites.includes(bKey)) - Number(favorites.includes(aKey)); + const aIsFavorite = favorites.includes(aKey); + const bIsFavorite = favorites.includes(bKey); + // If one is favorite and the other is not, sort favorites first + if (aIsFavorite !== bIsFavorite) { + return Number(bIsFavorite) - Number(aIsFavorite); + } + // If both are favorites or both are non-favorites, maintain alphabetical order + const aAlias = 'accountAlias' in a ? a.accountAlias : a.account; + const bAlias = 'accountAlias' in b ? b.accountAlias : b.account; + return aAlias.localeCompare(bAlias); }; exports.compareFavorites = compareFavorites; //# sourceMappingURL=compareFavorites.js.map \ No newline at end of file diff --git a/dist/src/lib/compareFavorites.js.map b/dist/src/lib/compareFavorites.js.map index cc5b9ece..4a23eeb9 100644 --- a/dist/src/lib/compareFavorites.js.map +++ b/dist/src/lib/compareFavorites.js.map @@ -1 +1 @@ -{"version":3,"file":"compareFavorites.js","sourceRoot":"","sources":["../../../src/lib/compareFavorites.ts"],"names":[],"mappings":";;;AACA,uDAAoD;AAEpD,oFAAoF;AAC7E,MAAM,gBAAgB,GAC3B,CAAC,SAAmB,EAAE,EAAE,CACxB,CAAC,CAAU,EAAE,CAAU,EAAU,EAAE;IACjC,MAAM,IAAI,GAAG,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAA,iCAAe,GAAE,CAAC,CAAC;IACzD,MAAM,IAAI,GAAG,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAA,iCAAe,GAAE,CAAC,CAAC;IACzD,OAAO,MAAM,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,GAAG,MAAM,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC;AAC7E,CAAC,CAAC;AANS,QAAA,gBAAgB,oBAMzB"} \ No newline at end of file +{"version":3,"file":"compareFavorites.js","sourceRoot":"","sources":["../../../src/lib/compareFavorites.ts"],"names":[],"mappings":";;;AACA,uDAAoD;AAGpD,oFAAoF;AACpF,yDAAyD;AAClD,MAAM,gBAAgB,GAC3B,CAAC,SAAmB,EAAE,EAAE,CACxB,CAAC,CAA0B,EAAE,CAA0B,EAAU,EAAE;IACjE,MAAM,IAAI,GAAG,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAA,iCAAe,GAAE,CAAC,CAAC;IACzD,MAAM,IAAI,GAAG,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAA,iCAAe,GAAE,CAAC,CAAC;IACzD,MAAM,WAAW,GAAG,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;IAC7C,MAAM,WAAW,GAAG,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;IAE7C,gEAAgE;IAChE,IAAI,WAAW,KAAK,WAAW,EAAE;QAC/B,OAAO,MAAM,CAAC,WAAW,CAAC,GAAG,MAAM,CAAC,WAAW,CAAC,CAAC;KAClD;IAED,+EAA+E;IAC/E,MAAM,MAAM,GAAG,cAAc,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC;IAChE,MAAM,MAAM,GAAG,cAAc,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC;IAChE,OAAO,MAAM,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;AACtC,CAAC,CAAC;AAjBS,QAAA,gBAAgB,oBAiBzB"} \ No newline at end of file diff --git a/dist/src/lib/promptForAlksAccountAndRole.js b/dist/src/lib/promptForAlksAccountAndRole.js index 62dd1e16..e89686b5 100644 --- a/dist/src/lib/promptForAlksAccountAndRole.js +++ b/dist/src/lib/promptForAlksAccountAndRole.js @@ -10,7 +10,6 @@ const alksAccount_1 = require("./state/alksAccount"); const alksRole_1 = require("./state/alksRole"); const parseAlksAccount_1 = require("./parseAlksAccount"); const formatAccountOutput_1 = require("./formatAccountOutput"); -const compareAliasesAlphabetically_1 = require("./compareAliasesAlphabetically"); const compareFavorites_1 = require("./compareFavorites"); const getAccountDelim_1 = require("./getAccountDelim"); function promptForAlksAccountAndRole(options) { @@ -28,8 +27,7 @@ function promptForAlksAccountAndRole(options) { const indexedAlksAccounts = alksAccounts .filter((alksAccount) => !opts.filterFavorites || favorites.includes([alksAccount.account, alksAccount.role].join((0, getAccountDelim_1.getAccountDelim)()))) // Filter out non-favorites if filterFavorites flag is passed - .sort((0, compareAliasesAlphabetically_1.compareAliasesAlphabetically)()) // Sort alphabetically first - .sort((0, compareFavorites_1.compareFavorites)(favorites)) // Move favorites to the front of the list, non-favorites to the back + .sort((0, compareFavorites_1.compareFavorites)(favorites)) // Sort favorites to top while maintaining alphabetical order .map((alksAccount) => (Object.assign(Object.assign({}, alksAccount), { formattedOutput: (0, formatAccountOutput_1.formatAccountOutput)(alksAccount, maxAccountAliasLength, maxAccountIdAndRoleLength) }))); // Add a field to the account object containing the formatted output string if (!indexedAlksAccounts.length) { throw new Error('No accounts found.'); diff --git a/dist/src/lib/promptForAlksAccountAndRole.js.map b/dist/src/lib/promptForAlksAccountAndRole.js.map index 31c81efe..a13a6029 100644 --- a/dist/src/lib/promptForAlksAccountAndRole.js.map +++ b/dist/src/lib/promptForAlksAccountAndRole.js.map @@ -1 +1 @@ -{"version":3,"file":"promptForAlksAccountAndRole.js","sourceRoot":"","sources":["../../../src/lib/promptForAlksAccountAndRole.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"promptForAlksAccountAndRole.js","sourceRoot":"","sources":["../../../src/lib/promptForAlksAccountAndRole.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/src/lib/promptForAlksAccountAndRole.test.js b/dist/src/lib/promptForAlksAccountAndRole.test.js index eaab524c..1d52711d 100644 --- a/dist/src/lib/promptForAlksAccountAndRole.test.js +++ b/dist/src/lib/promptForAlksAccountAndRole.test.js @@ -53,13 +53,13 @@ describe('promptForAlksAccountAndRole', () => { { account: '109876543210/ALKSReadOnly - identity3', role: 'ReadOnly' }, ]; const mockFavorites = [ - '543210987654/ALKSAdmin - testapps', - '567890123456/ALKSReadOnly - commontools', - '678901234567/ALKSAdmin - clientstaging', - '456789012345/ALKSReadOnly - stagingcell2', - '111111111111/ALKSReadOnly - testenv2', - '987654321098/ALKSAdmin - prodbridge1', - '890123456789/ALKSLabAdmin - devlabs', + '543210987654/ALKSAdmin - testapps :: Admin', + '567890123456/ALKSReadOnly - commontools :: ReadOnly', + '678901234567/ALKSAdmin - clientstaging :: Admin', + '456789012345/ALKSReadOnly - stagingcell2 :: ReadOnly', + '111111111111/ALKSReadOnly - testenv2 :: ReadOnly', + '987654321098/ALKSAdmin - prodbridge1 :: Admin', + '890123456789/ALKSLabAdmin - devlabs :: LabAdmin', ]; let mockPromptFn; beforeEach(() => { diff --git a/dist/src/lib/promptForAlksAccountAndRole.test.js.map b/dist/src/lib/promptForAlksAccountAndRole.test.js.map index 5e0f46bd..fa93a044 100644 --- a/dist/src/lib/promptForAlksAccountAndRole.test.js.map +++ b/dist/src/lib/promptForAlksAccountAndRole.test.js.map @@ -1 +1 @@ -{"version":3,"file":"promptForAlksAccountAndRole.test.js","sourceRoot":"","sources":["../../../src/lib/promptForAlksAccountAndRole.test.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"promptForAlksAccountAndRole.test.js","sourceRoot":"","sources":["../../../src/lib/promptForAlksAccountAndRole.test.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/lib/compareFavorites.ts b/src/lib/compareFavorites.ts index 20eb110b..57fac117 100644 --- a/src/lib/compareFavorites.ts +++ b/src/lib/compareFavorites.ts @@ -1,11 +1,24 @@ import { Account } from 'alks.js'; import { getAccountDelim } from './getAccountDelim'; +import { ParsedAccount } from '../model/parsedAccount'; // Returns a number for a sorting function such that favorites are sorted to the top +// while maintaining alphabetical order within each group export const compareFavorites = (favorites: string[]) => - (a: Account, b: Account): number => { + (a: Account | ParsedAccount, b: Account | ParsedAccount): number => { const aKey = [a.account, a.role].join(getAccountDelim()); const bKey = [b.account, b.role].join(getAccountDelim()); - return Number(favorites.includes(bKey)) - Number(favorites.includes(aKey)); + const aIsFavorite = favorites.includes(aKey); + const bIsFavorite = favorites.includes(bKey); + + // If one is favorite and the other is not, sort favorites first + if (aIsFavorite !== bIsFavorite) { + return Number(bIsFavorite) - Number(aIsFavorite); + } + + // If both are favorites or both are non-favorites, maintain alphabetical order + const aAlias = 'accountAlias' in a ? a.accountAlias : a.account; + const bAlias = 'accountAlias' in b ? b.accountAlias : b.account; + return aAlias.localeCompare(bAlias); }; diff --git a/src/lib/promptForAlksAccountAndRole.test.ts b/src/lib/promptForAlksAccountAndRole.test.ts index 249361ae..eacf1bc7 100644 --- a/src/lib/promptForAlksAccountAndRole.test.ts +++ b/src/lib/promptForAlksAccountAndRole.test.ts @@ -53,13 +53,13 @@ describe('promptForAlksAccountAndRole', () => { ]; const mockFavorites = [ - '543210987654/ALKSAdmin - testapps', - '567890123456/ALKSReadOnly - commontools', - '678901234567/ALKSAdmin - clientstaging', - '456789012345/ALKSReadOnly - stagingcell2', - '111111111111/ALKSReadOnly - testenv2', - '987654321098/ALKSAdmin - prodbridge1', - '890123456789/ALKSLabAdmin - devlabs', + '543210987654/ALKSAdmin - testapps :: Admin', + '567890123456/ALKSReadOnly - commontools :: ReadOnly', + '678901234567/ALKSAdmin - clientstaging :: Admin', + '456789012345/ALKSReadOnly - stagingcell2 :: ReadOnly', + '111111111111/ALKSReadOnly - testenv2 :: ReadOnly', + '987654321098/ALKSAdmin - prodbridge1 :: Admin', + '890123456789/ALKSLabAdmin - devlabs :: LabAdmin', ]; let mockPromptFn: jest.Mock; diff --git a/src/lib/promptForAlksAccountAndRole.ts b/src/lib/promptForAlksAccountAndRole.ts index 8f633476..9265a529 100644 --- a/src/lib/promptForAlksAccountAndRole.ts +++ b/src/lib/promptForAlksAccountAndRole.ts @@ -6,7 +6,6 @@ import { getAlksAccount } from './state/alksAccount'; import { getAlksRole } from './state/alksRole'; import { parseAlksAccount } from './parseAlksAccount'; import { formatAccountOutput } from './formatAccountOutput'; -import { compareAliasesAlphabetically } from './compareAliasesAlphabetically'; import { compareFavorites } from './compareFavorites'; import { getAccountDelim } from './getAccountDelim'; @@ -56,8 +55,7 @@ export async function promptForAlksAccountAndRole( [alksAccount.account, alksAccount.role].join(getAccountDelim()) ) ) // Filter out non-favorites if filterFavorites flag is passed - .sort(compareAliasesAlphabetically()) // Sort alphabetically first - .sort(compareFavorites(favorites)) // Move favorites to the front of the list, non-favorites to the back + .sort(compareFavorites(favorites)) // Sort favorites to top while maintaining alphabetical order .map((alksAccount) => ({ ...alksAccount, formattedOutput: formatAccountOutput(