diff --git a/.circleci/config.yml b/.circleci/config.yml index 016be2a5b..9c9920e45 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -65,6 +65,7 @@ workflows: size: large requires: - release-management/test-package + no_output_timeout: 30m matrix: parameters: os: @@ -75,7 +76,7 @@ workflows: - 'yarn test:nuts:commands:other' - 'yarn test:nuts:delete' - 'yarn test:nuts:deploy' - - 'yarn test:nuts:deploy:async' + # - 'yarn test:nuts:deploy:async' - 'yarn test:nuts:deploy:rest' - 'yarn test:nuts:manifest:create' - 'yarn test:nuts:retrieve' diff --git a/bin/dev b/bin/dev new file mode 100755 index 000000000..02b50d62a --- /dev/null +++ b/bin/dev @@ -0,0 +1,17 @@ +#!/usr/bin/env node + +const oclif = require('@oclif/core'); + +const path = require('path'); +const project = path.join(__dirname, '..', 'tsconfig.json'); + +// In dev mode -> use ts-node and dev plugins +process.env.NODE_ENV = 'development'; + +require('ts-node').register({ project }); + +// In dev mode, always show stack traces +oclif.settings.debug = true; + +// Start the CLI +oclif.run().then(oclif.flush).catch(oclif.Errors.handle); diff --git a/bin/dev.cmd b/bin/dev.cmd new file mode 100755 index 000000000..2ebfaa64f --- /dev/null +++ b/bin/dev.cmd @@ -0,0 +1,4 @@ +@@ -0,0 +1,3 @@ +@echo off + +node "%~dp0\dev" %* diff --git a/bin/run b/bin/run index 3c4ae3ac0..3aceab631 100755 --- a/bin/run +++ b/bin/run @@ -1,4 +1,4 @@ #!/usr/bin/env node -require('@oclif/command').run() -.catch(require('@oclif/errors/handle')) +require('@oclif/core').run().then(require('@oclif/core/flush')).catch(require('@oclif/core/handle')); + diff --git a/command-snapshot.json b/command-snapshot.json index cf5cec5fa..bd60dcca1 100644 --- a/command-snapshot.json +++ b/command-snapshot.json @@ -5,6 +5,95 @@ "flags": ["json", "loglevel"], "alias": [] }, + { + "command": "force:mdapi:beta:convert", + "plugin": "@salesforce/plugin-source", + "flags": ["json", "loglevel", "manifest", "metadata", "metadatapath", "outputdir", "rootdir"], + "alias": ["force:mdapi:beta:convert"] + }, + { + "command": "force:mdapi:beta:deploy", + "plugin": "@salesforce/plugin-source", + "flags": [ + "apiversion", + "checkonly", + "concise", + "coverageformatters", + "deploydir", + "ignoreerrors", + "ignorewarnings", + "json", + "junit", + "loglevel", + "purgeondelete", + "resultsdir", + "runtests", + "singlepackage", + "soapdeploy", + "targetusername", + "testlevel", + "validateddeployrequestid", + "verbose", + "wait", + "zipfile" + ], + "alias": ["force:mdapi:beta:deploy"] + }, + { + "command": "force:mdapi:beta:deploy:report", + "plugin": "@salesforce/plugin-source", + "flags": [ + "apiversion", + "concise", + "coverageformatters", + "jobid", + "json", + "junit", + "loglevel", + "resultsdir", + "targetusername", + "verbose", + "wait" + ], + "alias": ["force:mdapi:beta:deploy:report"] + }, + { + "command": "force:mdapi:beta:retrieve", + "plugin": "@salesforce/plugin-source", + "flags": [ + "apiversion", + "json", + "loglevel", + "packagenames", + "retrievetargetdir", + "singlepackage", + "sourcedir", + "targetusername", + "unpackaged", + "unzip", + "verbose", + "wait", + "zipfilename" + ], + "alias": ["force:mdapi:beta:retrieve"] + }, + { + "command": "force:mdapi:beta:retrieve:report", + "plugin": "@salesforce/plugin-source", + "flags": [ + "apiversion", + "jobid", + "json", + "loglevel", + "retrievetargetdir", + "targetusername", + "unzip", + "verbose", + "wait", + "zipfilename" + ], + "alias": ["force:mdapi:beta:retrieve:report"] + }, { "command": "force:mdapi:convert", "plugin": "@salesforce/plugin-source", @@ -112,6 +201,36 @@ ], "alias": ["force:mdapi:beta:retrieve:report"] }, + { + "command": "force:source:beta:pull", + "plugin": "@salesforce/plugin-source", + "flags": ["apiversion", "forceoverwrite", "json", "loglevel", "targetusername", "wait"], + "alias": ["force:source:beta:pull"] + }, + { + "command": "force:source:beta:push", + "plugin": "@salesforce/plugin-source", + "flags": ["apiversion", "forceoverwrite", "ignorewarnings", "json", "loglevel", "quiet", "targetusername", "wait"], + "alias": ["force:source:beta:push"] + }, + { + "command": "force:source:beta:status", + "plugin": "@salesforce/plugin-source", + "flags": ["apiversion", "concise", "json", "local", "loglevel", "remote", "targetusername"], + "alias": ["force:source:beta:status"] + }, + { + "command": "force:source:beta:tracking:clear", + "plugin": "@salesforce/plugin-source", + "flags": ["apiversion", "json", "loglevel", "noprompt", "targetusername"], + "alias": ["force:source:beta:tracking:clear"] + }, + { + "command": "force:source:beta:tracking:reset", + "plugin": "@salesforce/plugin-source", + "flags": ["apiversion", "json", "loglevel", "noprompt", "revision", "targetusername"], + "alias": ["force:source:beta:tracking:reset"] + }, { "command": "force:source:convert", "plugin": "@salesforce/plugin-source", diff --git a/messages/delete.json b/messages/delete.json index af2aa62e3..dd08a1fef 100644 --- a/messages/delete.json +++ b/messages/delete.json @@ -42,5 +42,6 @@ "localPrompt": "This operation will delete the following files on your computer and in your org: \n%s", "remotePrompt": "This operation will delete the following metadata in your org: \n%s", "deployPrompt": "This operation will deploy the following: \n%s", - "areYouSure": "\n\nAre you sure you want to proceed (y/n)?" + "areYouSure": "\n\nAre you sure you want to proceed (y/n)?", + "areYouSureCheckOnly": "\n\nAre you sure you want to proceed (this is only a check and won't actually delete anything) (y/n)?" } diff --git a/messages/deploy.json b/messages/deploy.json index 23d7d3f8e..a32f7c8b0 100644 --- a/messages/deploy.json +++ b/messages/deploy.json @@ -81,7 +81,8 @@ ] }, "checkOnlySuccess": "Successfully validated the deployment. %s components deployed and %s tests run.\nUse the --verbose parameter to see detailed output.", - "MissingDeployId": "No deploy ID was provided or found in deploy history.", + "checkOnlySuccessVerbose": "Successfully validated the deployment.", + "deploySuccess": "Deploy Succeeded.", "deployCanceled": "The deployment has been canceled by %s.", "deployFailed": "Deploy failed.", "asyncDeployQueued": "Deploy has been queued.", diff --git a/messages/deployCommand.json b/messages/deployCommand.json index 684a9ae9c..1297068ef 100644 --- a/messages/deployCommand.json +++ b/messages/deployCommand.json @@ -1,3 +1,5 @@ { - "resultsDirMissing": "You must supply the --resultsdir parameter when choosing to produce code coverage or JUnit reports." + "resultsDirMissing": "You must supply the --resultsdir parameter when choosing to produce code coverage or JUnit reports.", + "MissingDeployId": "No deploy ID was provided or found in deploy history.", + "invalidDeployId": "The provided ID is invalid, deploy IDs must start with '0Af'." } diff --git a/messages/md.cancel.json b/messages/md.cancel.json index a45009542..c6c423376 100644 --- a/messages/md.cancel.json +++ b/messages/md.cancel.json @@ -6,7 +6,6 @@ "waitLong": "Number of minutes to wait for the command to complete and display results to the terminal window. If the command continues to run after the wait period, the CLI returns control of the terminal window to you. The default is 33 minutes.", "jobid": "job ID of the deployment you want to cancel; defaults to your most recent CLI deployment if not specified" }, - "examples": [ "Deploy a directory of files to the org", " $ sfdx force:mdapi:deploy -d ", @@ -16,5 +15,6 @@ " $ sfdx force:mdapi:deploy:cancel -i ", "Check the status of the cancel job", " $ sfdx force:mdapi:deploy:report" - ] + ], + "CancelFailed": "The cancel command failed due to: %s" } diff --git a/messages/report.json b/messages/report.json index ec5b15815..48b7d65cd 100644 --- a/messages/report.json +++ b/messages/report.json @@ -5,7 +5,6 @@ " $ sfdx force:source:deploy -d ", "Now cancel this deployment and wait two minutes", " $ sfdx force:source:deploy:cancel -w 2", - "If you have multiple deployments in progress and want to cancel a specific one, specify the job ID", " $ sfdx force:source:deploy:cancel -i ", "Check the status of the cancel job", diff --git a/messages/retrieve.json b/messages/retrieve.json index 95524c6fb..241a65e5b 100644 --- a/messages/retrieve.json +++ b/messages/retrieve.json @@ -50,6 +50,7 @@ "columnNumberColumn": "COLUMN NUMBER", "lineNumberColumn": "LINE NUMBER", "errorColumn": "PROBLEM", + "nothingToRetrieve": "Specify a source path, manifest, metadata, or package names to retrieve.", "wantsToRetrieveCustomFields": "Because you're retrieving one or more CustomFields, we're also retrieving the CustomObject to which it's associated.", "retrieveWontDelete": "You currently have files deleted in your org. The retrieve command will NOT delete them from your local project" } diff --git a/messages/status.json b/messages/status.json index 1a6884d27..1da0ffa24 100644 --- a/messages/status.json +++ b/messages/status.json @@ -4,8 +4,8 @@ "examples": [ "$ sfdx force:source:status -l", "$ sfdx force:source:status -r", - "$ sfdx force:source:status -a", - "$ sfdx force:source:status -a -u me@example.com --json" + "$ sfdx force:source:status", + "$ sfdx force:source:status -u me@example.com --json" ], "flags": { "all": "list all the changes that have been made", diff --git a/package.json b/package.json index 603d18e15..6ec5ecd5f 100644 --- a/package.json +++ b/package.json @@ -1,41 +1,40 @@ { "name": "@salesforce/plugin-source", "description": "Commands to interact with source formatted metadata", - "version": "1.10.2", + "version": "2.0.0", "author": "Salesforce", "main": "lib/index.js", "bugs": "https://github.com/forcedotcom/cli/issues", "dependencies": { - "@oclif/config": "^1.18.3", + "@oclif/core": "^1.9.0", "@oclif/plugin-help": "^3.3.1", "@salesforce/apex-node": "^0.13.0", - "@salesforce/command": "^4.2.2", - "@salesforce/core": "^2.35.0", - "@salesforce/source-deploy-retrieve": "^5.12.14", - "@salesforce/source-tracking": "^1.4.2", + "@salesforce/command": "^5.1.2", + "@salesforce/core": "^3.20.1", + "@salesforce/kit": "^1.5.41", + "@salesforce/source-deploy-retrieve": "^6.0.3", + "@salesforce/source-tracking": "^2.0.0", "chalk": "^4.1.2", - "cli-ux": "^5.6.3", "got": "^11.8.3", + "jsforce": "2.0.0-beta.10", "open": "^8.4.0", "proxy-agent": "^5.0.0", "proxy-from-env": "^1.1.0", "tslib": "^2" }, "devDependencies": { - "@oclif/dev-cli": "^1", "@oclif/plugin-command-snapshot": "^3.1.2", - "@salesforce/cli-plugins-testkit": "^1.5.28", + "@salesforce/cli-plugins-testkit": "^2.2.0", "@salesforce/dev-config": "^3.0.1", "@salesforce/dev-scripts": "^2.0.0", "@salesforce/plugin-command-reference": "^1.3.18", - "@salesforce/plugin-config": "^1.3.30", - "@salesforce/plugin-user": "^1.7.1", + "@salesforce/plugin-config": "^2.3.2", + "@salesforce/plugin-user": "^2.0.2", "@salesforce/prettier-config": "^0.0.2", - "@salesforce/source-testkit": "^0.0.16", + "@salesforce/source-testkit": "^1.2.0", "@salesforce/ts-sinon": "1.3.21", "@types/archiver": "^5.1.1", "@types/debug": "^4.1.7", - "@types/jsforce": "^1.9.39", "@types/proxy-from-env": "^1.0.1", "@types/shelljs": "^0.8.11", "@typescript-eslint/eslint-plugin": "^4.33.0", @@ -57,9 +56,9 @@ "eslint-plugin-prettier": "^4.0.0", "fast-glob": "^3.2.7", "husky": "^7.0.4", - "lint-staged": "^12.3.2", "mocha": "^9.1.3", "nyc": "^15.1.0", + "oclif": "^3.0.1", "prettier": "^2.5.1", "pretty-quick": "^3.1.3", "salesforcedx-templates": "^49.8.0", @@ -151,8 +150,8 @@ "prepare": "sf-install", "pretest": "sf-compile-test", "test": "sf-test", - "test:command-reference": "./bin/run commandreference:generate --erroronwarnings", - "test:deprecation-policy": "./bin/run snapshot:compare", + "test:command-reference": "./bin/dev commandreference:generate --erroronwarnings", + "test:deprecation-policy": "./bin/dev snapshot:compare", "test:nuts": "ts-node ./test/nuts/generateNuts.ts && nyc mocha \"**/*.nut.ts\" --slow 4500 --timeout 600000 --parallel --retries 0", "test:nuts:commands:other": "mocha \"test/nuts/open.nut.ts\" \"test/nuts/ignored_list.nut.ts\" --slow 4500 --timeout 600000 --retries 0 --parallel", "test:nuts:convert": "cross-env PLUGIN_SOURCE_SEED_FILTER=convert ts-node ./test/nuts/generateNuts.ts && mocha \"test/nuts/generated/*.nut.ts\" --slow 4500 --timeout 600000 --parallel --retries 0", @@ -166,25 +165,25 @@ "test:nuts:deploy:rest": "mocha \"test/nuts/REST/*.nut.ts\" --slow 3000 --timeout 600000 --retries 0 --parallel", "test:nuts:deploy:sourcepath": "cross-env PLUGIN_SOURCE_SEED_FILTER=deploy.sourcepath ts-node ./test/nuts/generateNuts.ts && mocha \"test/nuts/generated/*.nut.ts\" --slow 4500 --timeout 600000 --parallel --retries 0", "test:nuts:deploy:testlevel": "cross-env PLUGIN_SOURCE_SEED_FILTER=deploy.testlevel ts-node ./test/nuts/generateNuts.ts && mocha \"test/nuts/generated/*.nut.ts\" --slow 4500 --timeout 600000 --parallel --retries 0", - "test:nuts:folders": "mocha \"test/nuts/folderTypes.nut.ts\" --slow 4500 --timeout 600000", "test:nuts:manifest:create": "mocha \"test/nuts/create.nut.ts\" --slow 4500 --timeout 600000 --retries 0", "test:nuts:mdapi": "mocha \"test/nuts/mdapi.nut.ts\" --slow 3000 --timeout 600000 --retries 0", - "test:nuts:nestedLwc": "mocha \"test/nuts/nestedLwc.nut.ts\" --slow 3000 --timeout 600000 --retries 0", "test:nuts:retrieve": "cross-env PLUGIN_SOURCE_SEED_FILTER=retrieve ts-node ./test/nuts/generateNuts.ts && mocha \"test/nuts/generated/*.nut.ts\" --slow 4500 --timeout 600000 --parallel --retries 0", "test:nuts:specialTypes": "mocha \"test/nuts/territory2.nut.ts\" \"test/nuts/folderTypes.nut.ts\" \"test/nuts/translation.nut.ts\" \"test/nuts/nestedLwc.nut.ts\" --slow 4500 --timeout 600000 --retries 0 --parallel", - "test:nuts:territory2": "mocha \"test/nuts/territory2.nut.ts\" --slow 4500 --timeout 600000 --retries 0", + "test:nuts:specialTypes:folders": "mocha \"test/nuts/folderTypes.nut.ts\" --slow 4500 --timeout 600000", + "test:nuts:specialTypes:nestedLwc": "mocha \"test/nuts/nestedLwc.nut.ts\" --slow 3000 --timeout 600000 --retries 0", + "test:nuts:specialTypes:territory2": "mocha \"test/nuts/territory2.nut.ts\" --slow 4500 --timeout 600000 --retries 0", + "test:nuts:specialTypes:translations": "mocha \"test/nuts/translation.nut.ts\" --slow 4500 --timeout 600000 --retries 0", "test:nuts:tracking": "mocha \"test/nuts/trackingCommands/*.nut.ts\" --slow 3000 --timeout 600000 --parallel --retries 0", "test:nuts:tracking:basics": "mocha \"test/nuts/trackingCommands/basics.nut.ts\" --slow 3000 --timeout 600000 --retries 0", "test:nuts:tracking:conflicts": "mocha \"test/nuts/trackingCommands/conflicts.nut.ts\" --slow 3000 --timeout 600000 --retries 0", "test:nuts:tracking:flag": "mocha \"test/nuts/trackingCommands/deployRetrieveDelete.nut.ts\" --slow 3000 --timeout 600000 --retries 0", "test:nuts:tracking:forceignore": "mocha \"test/nuts/trackingCommands/forceIgnore.nut.ts\" --slow 3000 --timeout 600000 --retries 0", "test:nuts:tracking:lwc": "mocha \"test/nuts/trackingCommands/lwc.nut.ts\" --slow 3000 --timeout 600000 --retries 0", - "test:nuts:tracking:mpd": "mocha \"test/nuts/trackingCommands/mpd*\" --slow 3000 --timeout 600000 --retries 0", + "test:nuts:tracking:mpd": "mocha \"test/nuts/trackingCommands/mpd*\" --slow 3000 --timeout 600000 --retries 0 -parallel", "test:nuts:tracking:remote": "mocha \"test/nuts/trackingCommands/remoteChanges.nut.ts\" --slow 3000 --timeout 600000 --retries 0", "test:nuts:tracking:resetClear": "mocha \"test/nuts/trackingCommands/resetClear.nut.ts\" --slow 3000 --timeout 600000 --retries 0", - "test:nuts:translations": "mocha \"test/nuts/translation.nut.ts\" --slow 4500 --timeout 600000 --retries 0", "test:watch": "mocha --watch \"./test/**/*.test.ts\"", - "version": "oclif-dev readme" + "version": "oclif readme" }, "publishConfig": { "access": "public" diff --git a/src/commands/force.ts b/src/commands/force.ts index 81ae76ef4..07031b41b 100644 --- a/src/commands/force.ts +++ b/src/commands/force.ts @@ -10,7 +10,7 @@ import { SfdxCommand } from '@salesforce/command'; import got from 'got'; -import { Help } from '@oclif/plugin-help'; +import { Help } from '@oclif/core'; import * as ProxyAgent from 'proxy-agent'; import { getProxyForUrl } from 'proxy-from-env'; import { ConfigAggregator } from '@salesforce/core'; @@ -80,10 +80,10 @@ export class ForceCommand extends SfdxCommand { } // overrides the help so that it shows the help for the `force` topic and not "help" for this command - protected _help(): never { + protected _help(): void { const help = new Help(this.config); // We need to include force in the args for topics to be shown - help.showHelp(process.argv.slice(2)); + void help.showHelp(process.argv.slice(2)); return this.exit(0); } } diff --git a/src/commands/force/mdapi/deploy.ts b/src/commands/force/mdapi/deploy.ts index 00fd62c34..6791ad24b 100644 --- a/src/commands/force/mdapi/deploy.ts +++ b/src/commands/force/mdapi/deploy.ts @@ -173,10 +173,10 @@ export class Deploy extends DeployCommand { protected formatResult(): MdDeployResult | DeployCommandAsyncResult { this.resultsDir = this.resolveOutputDir( - this.flags.coverageformatters, - this.flags.junit, - this.flags.resultsdir, - this.deployResult?.response.id, + this.getFlag('coverageformatters', undefined), + this.getFlag('junit'), + this.getFlag('resultsdir'), + this.deployResult?.response?.id, true ); diff --git a/src/commands/force/mdapi/deploy/cancel.ts b/src/commands/force/mdapi/deploy/cancel.ts index 6abb4e02e..807788932 100644 --- a/src/commands/force/mdapi/deploy/cancel.ts +++ b/src/commands/force/mdapi/deploy/cancel.ts @@ -7,7 +7,7 @@ import * as os from 'os'; import { flags, FlagsConfig } from '@salesforce/command'; -import { Messages, SfdxError } from '@salesforce/core'; +import { Messages, SfError } from '@salesforce/core'; import { Duration } from '@salesforce/kit'; import { RequestStatus } from '@salesforce/source-deploy-retrieve'; import { DeployCommand } from '../../../../deployCommand'; @@ -17,7 +17,14 @@ import { } from '../../../../formatters/deployCancelResultFormatter'; Messages.importMessagesDirectory(__dirname); -const messages = Messages.loadMessages('@salesforce/plugin-source', 'md.cancel'); +const messages = Messages.load('@salesforce/plugin-source', 'md.cancel', [ + 'CancelFailed', + 'description', + 'examples', + 'flags.wait', + 'flags.waitLong', + 'flags.jobid', +]); export class Cancel extends DeployCommand { public static readonly description = messages.getMessage('description'); @@ -53,7 +60,7 @@ export class Cancel extends DeployCommand { this.deployResult = await this.poll(deployId); } catch (e) { const err = e as Error; - throw SfdxError.create('@salesforce/plugin-source', 'cancel', 'CancelFailed', [err.message]); + throw new SfError(messages.getMessage('CancelFailed', [err.message]), 'CancelFailed'); } } diff --git a/src/commands/force/mdapi/deploy/report.ts b/src/commands/force/mdapi/deploy/report.ts index fa4b8a5a1..539ba6f92 100644 --- a/src/commands/force/mdapi/deploy/report.ts +++ b/src/commands/force/mdapi/deploy/report.ts @@ -74,9 +74,9 @@ export class Report extends DeployCommand { const deployId = this.resolveDeployId(this.getFlag('jobid')); this.resultsDir = this.resolveOutputDir( - this.flags.coverageformatters, - this.flags.junit, - this.flags.resultsdir, + this.getFlag('coverageformatters', undefined), + this.getFlag('junit'), + this.getFlag('resultsdir'), deployId, false ); diff --git a/src/commands/force/mdapi/describemetadata.ts b/src/commands/force/mdapi/describemetadata.ts index 960da5282..68c0ab6a7 100644 --- a/src/commands/force/mdapi/describemetadata.ts +++ b/src/commands/force/mdapi/describemetadata.ts @@ -9,7 +9,7 @@ import * as os from 'os'; import * as fs from 'fs'; import { flags, FlagsConfig } from '@salesforce/command'; import { Messages } from '@salesforce/core'; -import { DescribeMetadataResult } from 'jsforce'; +import { DescribeMetadataResult } from 'jsforce/api/metadata'; import { RegistryAccess } from '@salesforce/source-deploy-retrieve'; import { SourceCommand } from '../../../sourceCommand'; diff --git a/src/commands/force/mdapi/listmetadata.ts b/src/commands/force/mdapi/listmetadata.ts index 50c1d6694..e10634a1d 100644 --- a/src/commands/force/mdapi/listmetadata.ts +++ b/src/commands/force/mdapi/listmetadata.ts @@ -10,7 +10,7 @@ import * as fs from 'fs'; import { flags, FlagsConfig } from '@salesforce/command'; import { Messages } from '@salesforce/core'; import { Optional } from '@salesforce/ts-types'; -import { FileProperties, ListMetadataQuery } from 'jsforce'; +import { FileProperties, ListMetadataQuery } from 'jsforce/api/metadata'; import { SourceCommand } from '../../../sourceCommand'; Messages.importMessagesDirectory(__dirname); diff --git a/src/commands/force/mdapi/retrieve.ts b/src/commands/force/mdapi/retrieve.ts index b1b101be1..67cbcef2d 100644 --- a/src/commands/force/mdapi/retrieve.ts +++ b/src/commands/force/mdapi/retrieve.ts @@ -8,7 +8,7 @@ import * as os from 'os'; import { extname } from 'path'; import { flags, FlagsConfig } from '@salesforce/command'; -import { Messages, SfdxError, SfdxProject } from '@salesforce/core'; +import { Messages, SfError, SfProject } from '@salesforce/core'; import { Duration } from '@salesforce/kit'; import { ComponentSetBuilder, @@ -123,16 +123,14 @@ export class Retrieve extends SourceCommand { this.isAsync = this.wait.quantity === 0; if (singlePackage && packagenames?.length > 1) { - throw SfdxError.create('@salesforce/plugin-source', 'md.retrieve', 'InvalidPackageNames', [ - packagenames.toString(), - ]); + throw new SfError(messages.getMessage('InvalidPackageNames', [packagenames.toString()]), 'InvalidPackageNames'); } this.ux.startSpinner(spinnerMessages.getMessage('retrieve.main', [this.org.getUsername()])); this.ux.setSpinnerStatus(spinnerMessages.getMessage('retrieve.componentSetBuild')); this.componentSet = await ComponentSetBuilder.build({ - apiversion: this.getFlag('apiversion'), + apiversion: this.getFlag('apiversion') ?? (await this.org.retrieveMaxApiVersion()), packagenames, sourcepath: this.sourceDir ? [this.sourceDir] : undefined, manifest: manifest && { @@ -234,7 +232,7 @@ export class Retrieve extends SourceCommand { private resolveProjectPath(): string { try { - return SfdxProject.getInstance().getDefaultPackage().fullPath; + return SfProject.getInstance().getDefaultPackage().fullPath; } catch (error) { this.logger.debug('No SFDX project found for default package directory'); } diff --git a/src/commands/force/mdapi/retrieve/report.ts b/src/commands/force/mdapi/retrieve/report.ts index 2ddf6b3dc..4c931787f 100644 --- a/src/commands/force/mdapi/retrieve/report.ts +++ b/src/commands/force/mdapi/retrieve/report.ts @@ -8,7 +8,7 @@ import * as os from 'os'; import { extname } from 'path'; import { flags, FlagsConfig } from '@salesforce/command'; -import { Messages, SfdxError } from '@salesforce/core'; +import { Messages, SfError } from '@salesforce/core'; import { Duration } from '@salesforce/kit'; import { MetadataApiRetrieve, MetadataApiRetrieveStatus, RetrieveResult } from '@salesforce/source-deploy-retrieve'; import { SourceCommand } from '../../../../sourceCommand'; @@ -88,7 +88,7 @@ export class Report extends SourceCommand { // throw if no Retrieve ID in stash either if (!mdRetrieveStash?.jobid) { - throw SfdxError.create('@salesforce/plugin-source', 'md.retrieve', 'MissingRetrieveId'); + throw new SfError(messages.getMessage('MissingRetrieveId'), 'MissingRetrieveId'); } retrieveId = mdRetrieveStash.jobid; this.retrieveTargetDir = this.resolveOutputDir(mdRetrieveStash?.retrievetargetdir); diff --git a/src/commands/force/source/delete.ts b/src/commands/force/source/delete.ts index e058f05e9..e11018a72 100644 --- a/src/commands/force/source/delete.ts +++ b/src/commands/force/source/delete.ts @@ -7,7 +7,7 @@ import * as os from 'os'; import * as fs from 'fs'; import * as path from 'path'; -import { confirm } from 'cli-ux/lib/prompt'; +import { CliUx } from '@oclif/core'; import { flags, FlagsConfig } from '@salesforce/command'; import { Messages } from '@salesforce/core'; import { @@ -154,6 +154,8 @@ export class Delete extends DeployCommand { // create a new ComponentSet and mark everything for deletion const cs = new ComponentSet([]); + cs.apiVersion = this.getFlag('apiversion') ?? (await this.org.retrieveMaxApiVersion()); + cs.sourceApiVersion = this.getFlag('apiversion') ?? (await this.getSourceApiVersion()); this.components.map((component) => { if (component instanceof SourceComponent) { cs.add(component, DestructiveChangesType.POST); @@ -380,8 +382,12 @@ export class Delete extends DeployCommand { message.push('\n', messages.getMessage('localPrompt', [[...new Set(local)].join('\n')])); } - message.push(messages.getMessage('areYouSure')); - return confirm(message.join('')); + message.push( + this.getFlag('checkonly', false) + ? messages.getMessage('areYouSureCheckOnly') + : messages.getMessage('areYouSure') + ); + return CliUx.ux.confirm(message.join('')); } return true; } diff --git a/src/commands/force/source/deploy.ts b/src/commands/force/source/deploy.ts index 46efa34a8..4a4279dbd 100644 --- a/src/commands/force/source/deploy.ts +++ b/src/commands/force/source/deploy.ts @@ -242,9 +242,9 @@ export class Deploy extends DeployCommand { protected formatResult(): DeployCommandResult | DeployCommandAsyncResult { this.resultsDir = this.resolveOutputDir( - this.flags.coverageformatters, - this.flags.junit, - this.flags.resultsdir, + this.getFlag('coverageformatters', undefined), + this.getFlag('junit'), + this.getFlag('resultsdir'), this.deployResult?.response?.id, false ); diff --git a/src/commands/force/source/deploy/cancel.ts b/src/commands/force/source/deploy/cancel.ts index 404fecb7e..dd747023c 100644 --- a/src/commands/force/source/deploy/cancel.ts +++ b/src/commands/force/source/deploy/cancel.ts @@ -7,7 +7,7 @@ import * as os from 'os'; import { flags, FlagsConfig } from '@salesforce/command'; -import { Messages, SfdxError } from '@salesforce/core'; +import { Messages, SfError } from '@salesforce/core'; import { Duration } from '@salesforce/kit'; import { RequestStatus } from '@salesforce/source-deploy-retrieve'; import { DeployCommand } from '../../../../deployCommand'; @@ -53,7 +53,7 @@ export class Cancel extends DeployCommand { this.deployResult = await this.poll(deployId); } catch (e) { const err = e as Error; - throw SfdxError.create('@salesforce/plugin-source', 'cancel', 'CancelFailed', [err.message]); + throw new SfError(messages.getMessage('CancelFailed', [err.message]), 'CancelFailed'); } } diff --git a/src/commands/force/source/deploy/report.ts b/src/commands/force/source/deploy/report.ts index ba5cc5442..d6b3215e4 100644 --- a/src/commands/force/source/deploy/report.ts +++ b/src/commands/force/source/deploy/report.ts @@ -6,7 +6,7 @@ */ import * as os from 'os'; -import { Messages, SfdxProject } from '@salesforce/core'; +import { Messages, SfProject } from '@salesforce/core'; import { flags, FlagsConfig } from '@salesforce/command'; import { Duration, env } from '@salesforce/kit'; import { ComponentSetBuilder } from '@salesforce/source-deploy-retrieve'; @@ -64,9 +64,9 @@ export class Report extends DeployCommand { const deployId = this.resolveDeployId(this.getFlag('jobid')); this.resultsDir = this.resolveOutputDir( - this.flags.coverageformatters, - this.flags.junit, - this.flags.resultsdir, + this.getFlag('coverageformatters', undefined), + this.getFlag('junit'), + this.getFlag('resultsdir'), deployId, false ); @@ -77,7 +77,7 @@ export class Report extends DeployCommand { if (this.getFlag('verbose')) { let sourcepath: string[]; try { - this.project = await SfdxProject.resolve(); + this.project = await SfProject.resolve(); sourcepath = this.project.getUniquePackageDirectories().map((pDir) => pDir.fullPath); } catch (err) { // ignore the error. this was just to get improved command output. diff --git a/src/commands/force/source/ignored/list.ts b/src/commands/force/source/ignored/list.ts index 9338eeef5..226b8941c 100644 --- a/src/commands/force/source/ignored/list.ts +++ b/src/commands/force/source/ignored/list.ts @@ -5,8 +5,9 @@ * For full license text, see LICENSE.txt file in the repo root or https://opensource.org/licenses/BSD-3-Clause */ import * as path from 'path'; +import * as fs from 'fs'; import { flags, FlagsConfig, SfdxCommand } from '@salesforce/command'; -import { fs as fsCore, Messages, SfdxError } from '@salesforce/core'; +import { Messages, SfError } from '@salesforce/core'; import { ForceIgnore } from '@salesforce/source-deploy-retrieve'; import { FsError } from '../../../../types'; @@ -56,17 +57,18 @@ export class SourceIgnoredCommand extends SfdxCommand { } catch (err) { const error = err as FsError; if (error.code === 'ENOENT') { - throw SfdxError.create('@salesforce/plugin-source', 'ignored_list', 'invalidSourcePath', [ - this.flags.sourcepath as string, - ]); + throw new SfError( + messages.getMessage('invalidSourcePath', [this.flags.sourcepath as string]), + 'invalidSourcePath' + ); } - throw SfdxError.wrap(error); + throw SfError.wrap(error); } } // Stat the filepath. Test if a file, recurse if a directory. private async statIgnored(filepath: string): Promise { - const stats = await fsCore.stat(filepath); + const stats = await fs.promises.stat(filepath); if (stats.isDirectory()) { return (await Promise.all(await this.findIgnored(filepath))).flat(); } else { @@ -77,7 +79,7 @@ export class SourceIgnoredCommand extends SfdxCommand { // Recursively search a directory for source files to test. private async findIgnored(dir: string): Promise>> { this.logger.debug(`Searching dir: ${dir}`); - return (await fsCore.readdir(dir)).map((filename) => this.statIgnored(path.join(dir, filename))); + return (await fs.promises.readdir(dir)).map((filename) => this.statIgnored(path.join(dir, filename))); } // Test if a source file is denied, adding any ignored files to diff --git a/src/commands/force/source/manifest/create.ts b/src/commands/force/source/manifest/create.ts index ec6794a67..ed588e4a4 100644 --- a/src/commands/force/source/manifest/create.ts +++ b/src/commands/force/source/manifest/create.ts @@ -104,7 +104,7 @@ export class create extends SourceCommand { } const componentSet = await ComponentSetBuilder.build({ - apiversion: this.getFlag('apiversion'), + apiversion: this.getFlag('apiversion') ?? (await this.getSourceApiVersion()), sourcepath: this.getFlag('sourcepath'), metadata: this.flags.metadata && { metadataEntries: this.getFlag('metadata'), @@ -120,13 +120,13 @@ export class create extends SourceCommand { this.manifestName = this.manifestName.endsWith('.xml') ? this.manifestName : this.manifestName + '.xml'; if (this.outputDir) { - fs.mkdirSync(this.outputDir, { recursive: true }); + await fs.promises.mkdir(this.outputDir, { recursive: true }); this.outputPath = join(this.outputDir, this.manifestName); } else { this.outputPath = this.manifestName; } - return fs.writeFileSync(this.outputPath, componentSet.getPackageXml()); + return fs.promises.writeFile(this.outputPath, await componentSet.getPackageXml()); } // noop this method because any errors will be reported by the createManifest method diff --git a/src/commands/force/source/open.ts b/src/commands/force/source/open.ts index 3c6752f6d..ea393c1dc 100644 --- a/src/commands/force/source/open.ts +++ b/src/commands/force/source/open.ts @@ -11,13 +11,18 @@ import * as fs from 'fs'; import * as open from 'open'; import { getString } from '@salesforce/ts-types'; import { flags, FlagsConfig } from '@salesforce/command'; -import { AuthInfo, Messages, sfdc, SfdcUrl, SfdxError } from '@salesforce/core'; +import { AuthInfo, Messages, sfdc, SfdcUrl, SfError } from '@salesforce/core'; import { MetadataResolver, SourceComponent } from '@salesforce/source-deploy-retrieve'; import { OpenCommandResult, OpenResultFormatter } from '../../../formatters/source/openResultFormatter'; import { SourceCommand } from '../../../sourceCommand'; Messages.importMessagesDirectory(__dirname); -const messages = Messages.loadMessages('@salesforce/plugin-source', 'open'); +const messages = Messages.load('@salesforce/plugin-source', 'open', [ + 'description', + 'examples', + 'SourceOpenFileDescription', + 'SourceOpenPathDescription', +]); export class Open extends SourceCommand { public static readonly description = messages.getMessage('description'); @@ -74,7 +79,7 @@ export class Open extends SourceCommand { const components: SourceComponent[] = metadataResolver.getComponentsFromPath(fsPath); return components[0].type.name; } - throw new SfdxError(`File not found: ${fsPath}`, 'FileNotFound'); + throw new SfError(`File not found: ${fsPath}`, 'FileNotFound'); } private async buildFrontdoorUrl(): Promise { @@ -94,7 +99,7 @@ export class Open extends SourceCommand { try { await new SfdcUrl(url).checkLightningDomain(); } catch (error) { - throw SfdxError.create('@salesforce/plugin-source', 'open', 'SourceOpenCommandTimeoutError'); + throw new SfError('SourceOpenCommandTimeoutError', 'SourceOpenCommandTimeoutError'); } } diff --git a/src/commands/force/source/pull.ts b/src/commands/force/source/pull.ts index 2e543ab40..7d1afeba4 100644 --- a/src/commands/force/source/pull.ts +++ b/src/commands/force/source/pull.ts @@ -15,7 +15,12 @@ import { PullResponse, PullResultFormatter } from '../../../formatters/source/pu import { trackingSetup, updateTracking } from '../../../trackingFunctions'; Messages.importMessagesDirectory(__dirname); -const messages: Messages = Messages.loadMessages('@salesforce/plugin-source', 'pull'); +const messages = Messages.load('@salesforce/plugin-source', 'pull', [ + 'flags.forceoverwrite', + 'description', + 'help', + 'flags.waitLong', +]); export default class Pull extends SourceCommand { public static aliases = ['force:source:beta:pull']; diff --git a/src/commands/force/source/push.ts b/src/commands/force/source/push.ts index 6eb0319e5..aac750602 100644 --- a/src/commands/force/source/push.ts +++ b/src/commands/force/source/push.ts @@ -19,7 +19,7 @@ import { DeployProgressStatusFormatter } from '../../../formatters/deployProgres import { trackingSetup, updateTracking } from '../../../trackingFunctions'; Messages.importMessagesDirectory(__dirname); -const messages: Messages = Messages.loadMessages('@salesforce/plugin-source', 'push'); +const messages = Messages.loadMessages('@salesforce/plugin-source', 'push'); export default class Push extends DeployCommand { public static aliases = ['force:source:beta:push']; diff --git a/src/commands/force/source/retrieve.ts b/src/commands/force/source/retrieve.ts index 6d0d41af5..36c615747 100644 --- a/src/commands/force/source/retrieve.ts +++ b/src/commands/force/source/retrieve.ts @@ -8,7 +8,7 @@ import * as os from 'os'; import { join } from 'path'; import { flags, FlagsConfig } from '@salesforce/command'; -import { Messages, SfdxProject } from '@salesforce/core'; +import { Messages, SfError, SfProject } from '@salesforce/core'; import { Duration } from '@salesforce/kit'; import { ComponentSet, ComponentSetBuilder, RequestStatus, RetrieveResult } from '@salesforce/source-deploy-retrieve'; import { SourceTracking } from '@salesforce/source-tracking'; @@ -90,6 +90,11 @@ export class Retrieve extends SourceCommand { } protected async preChecks(): Promise { + // we need something to retrieve + const retrieveInputs = [this.flags.manifest, this.flags.metadata, this.flags.sourcepath, this.flags.packagenames]; + if (!retrieveInputs.some((x) => x)) { + throw new SfError(messages.getMessage('nothingToRetrieve')); + } if (this.flags.tracksource) { this.tracking = await trackingSetup({ ux: this.ux, @@ -176,7 +181,7 @@ export class Retrieve extends SourceCommand { protected async formatResult(): Promise { const packages: PackageRetrieval[] = []; - const projectPath = await SfdxProject.resolveProjectPath(); + const projectPath = await SfProject.resolveProjectPath(); this.getFlag('packagenames', []).forEach((name) => { packages.push({ name, path: join(projectPath, name) }); diff --git a/src/commands/force/source/status.ts b/src/commands/force/source/status.ts index 1a1c5975b..dafb85cf0 100644 --- a/src/commands/force/source/status.ts +++ b/src/commands/force/source/status.ts @@ -13,7 +13,7 @@ import { StatusFormatter, StatusResult } from '../../../formatters/source/status import { trackingSetup } from '../../../trackingFunctions'; Messages.importMessagesDirectory(__dirname); -const messages: Messages = Messages.loadMessages('@salesforce/plugin-source', 'status'); +const messages = Messages.loadMessages('@salesforce/plugin-source', 'status'); export default class Status extends SfdxCommand { public static aliases = ['force:source:beta:status']; @@ -48,7 +48,6 @@ export default class Status extends SfdxCommand { org: this.org, project: this.project, ux: this.ux, - apiVersion: this.flags.apiversion as string, }); const wantsLocal = (this.flags.local as boolean) || (!this.flags.remote && !this.flags.local); diff --git a/src/commands/force/source/tracking/clear.ts b/src/commands/force/source/tracking/clear.ts index a72d6b67e..a456c437d 100644 --- a/src/commands/force/source/tracking/clear.ts +++ b/src/commands/force/source/tracking/clear.ts @@ -11,7 +11,7 @@ import * as chalk from 'chalk'; import { SourceTracking, throwIfInvalid } from '@salesforce/source-tracking'; Messages.importMessagesDirectory(__dirname); -const messages: Messages = Messages.loadMessages('@salesforce/plugin-source', 'tracking'); +const messages = Messages.loadMessages('@salesforce/plugin-source', 'tracking'); export type SourceTrackingClearResult = { clearedFiles: string[]; @@ -43,7 +43,6 @@ export class Clear extends SfdxCommand { const sourceTracking = await SourceTracking.create({ project: this.project, org: this.org, - apiVersion: this.flags.apiversion as string, }); clearedFiles = await Promise.all([sourceTracking.clearLocalTracking(), sourceTracking.clearRemoteTracking()]); this.ux.log('Cleared local tracking files.'); diff --git a/src/commands/force/source/tracking/reset.ts b/src/commands/force/source/tracking/reset.ts index 4cd89de17..a343fcbd1 100644 --- a/src/commands/force/source/tracking/reset.ts +++ b/src/commands/force/source/tracking/reset.ts @@ -11,7 +11,7 @@ import * as chalk from 'chalk'; import { SourceTracking, throwIfInvalid } from '@salesforce/source-tracking'; Messages.importMessagesDirectory(__dirname); -const messages: Messages = Messages.loadMessages('@salesforce/plugin-source', 'tracking'); +const messages = Messages.loadMessages('@salesforce/plugin-source', 'tracking'); export type SourceTrackingResetResult = { sourceMembersSynced: number; @@ -48,7 +48,6 @@ export class Reset extends SfdxCommand { const sourceTracking = await SourceTracking.create({ project: this.project, org: this.org, - apiVersion: this.flags.apiversion as string, }); const [remoteResets, localResets] = await Promise.all([ diff --git a/src/deployCommand.ts b/src/deployCommand.ts index c8a390ec3..6a45db95f 100644 --- a/src/deployCommand.ts +++ b/src/deployCommand.ts @@ -15,7 +15,7 @@ import { RequestStatus, AsyncResult, } from '@salesforce/source-deploy-retrieve'; -import { ConfigAggregator, Messages, PollingClient, SfdxError, StatusResult } from '@salesforce/core'; +import { ConfigAggregator, PollingClient, SfError, StatusResult, Messages } from '@salesforce/core'; import { AnyJson, getBoolean, isString } from '@salesforce/ts-types'; import { Duration, once } from '@salesforce/kit'; import { @@ -34,10 +34,13 @@ import { toArray } from './formatters/resultFormatter'; export type TestLevel = 'NoTestRun' | 'RunSpecifiedTests' | 'RunLocalTests' | 'RunAllTestsInOrg'; -export const reportsFormatters = Object.keys(DefaultReportOptions); - Messages.importMessagesDirectory(__dirname); -const messages = Messages.loadMessages('@salesforce/plugin-source', 'deployCommand'); +const messages = Messages.load('@salesforce/plugin-source', 'deployCommand', [ + 'invalidDeployId', + 'MissingDeployId', + 'resultsDirMissing', +]); +export const reportsFormatters = Object.keys(DefaultReportOptions); export abstract class DeployCommand extends SourceCommand { protected displayDeployId = once((id: string) => { @@ -63,7 +66,7 @@ export abstract class DeployCommand extends SourceCommand { if (id.startsWith('0Af')) { return true; } else { - throw SfdxError.create('@salesforce/plugin-source', 'deploy', 'invalidDeployId'); + throw new SfError(messages.getMessage('invalidDeployId'), 'invalidDeployId'); } }; /** @@ -118,7 +121,7 @@ export abstract class DeployCommand extends SourceCommand { } else { const stash = Stash.get(Stash.getKey(this.id)); if (!stash) { - throw SfdxError.create('@salesforce/plugin-source', 'deploy', 'MissingDeployId'); + throw new SfError(messages.getMessage('MissingDeployId')); } return stash.jobid; } @@ -266,7 +269,7 @@ export abstract class DeployCommand extends SourceCommand { return deployId; } if (!noThrow) { - throw new SfdxError(messages.getMessage('resultsDirMissing')); + throw new SfError(messages.getMessage('resultsDirMissing')); } } return undefined; diff --git a/src/formatters/convertResultFormatter.ts b/src/formatters/convertResultFormatter.ts index c6fe17710..5b21cf197 100644 --- a/src/formatters/convertResultFormatter.ts +++ b/src/formatters/convertResultFormatter.ts @@ -7,7 +7,7 @@ import { resolve } from 'path'; import { UX } from '@salesforce/command'; -import { Logger, Messages, SfdxError } from '@salesforce/core'; +import { Logger, Messages, SfError } from '@salesforce/core'; import { ConvertResult } from '@salesforce/source-deploy-retrieve'; import { ResultFormatter } from './resultFormatter'; @@ -36,7 +36,7 @@ export class ConvertResultFormatter extends ResultFormatter { if (this.isSuccess()) { this.ux.log(messages.getMessage('success', [this.result.packagePath])); } else { - throw new SfdxError(messages.getMessage('convertFailed'), 'ConvertFailed'); + throw new SfError(messages.getMessage('convertFailed'), 'ConvertFailed'); } } } diff --git a/src/formatters/deployProgressBarFormatter.ts b/src/formatters/deployProgressBarFormatter.ts index 5f04e9f26..2f003814b 100644 --- a/src/formatters/deployProgressBarFormatter.ts +++ b/src/formatters/deployProgressBarFormatter.ts @@ -8,7 +8,7 @@ import { UX } from '@salesforce/command'; import { Logger } from '@salesforce/core'; import { MetadataApiDeploy } from '@salesforce/source-deploy-retrieve'; import { once } from '@salesforce/kit'; -import cli from 'cli-ux'; +import { CliUx } from '@oclif/core'; import { ProgressBar } from '../types'; import { ProgressFormatter } from './progressFormatter'; @@ -66,10 +66,10 @@ export class DeployProgressBarFormatter extends ProgressFormatter { }); } - // used to initialise the progress bar + // used to initialize the progress bar protected initProgressBar(): void { this.logger.debug('initializing progress bar'); - this.progressBar = cli.progress({ + this.progressBar = CliUx.ux.progress({ format: 'DEPLOY PROGRESS | {bar} | {value}/{total} Components', barCompleteChar: '\u2588', barIncompleteChar: '\u2591', diff --git a/src/formatters/deployReportResultFormatter.ts b/src/formatters/deployReportResultFormatter.ts index ac6517b4f..91d055527 100644 --- a/src/formatters/deployReportResultFormatter.ts +++ b/src/formatters/deployReportResultFormatter.ts @@ -7,9 +7,11 @@ import { MetadataApiDeployStatus, RequestStatus } from '@salesforce/source-deploy-retrieve'; import { getString } from '@salesforce/ts-types'; -import { SfdxError } from '@salesforce/core'; +import { SfError, Messages } from '@salesforce/core'; import { DeployResultFormatter } from './deployResultFormatter'; +Messages.importMessagesDirectory(__dirname); + export type DeployReportCommandResult = MetadataApiDeployStatus; export class DeployReportResultFormatter extends DeployResultFormatter { @@ -45,7 +47,8 @@ export class DeployReportResultFormatter extends DeployResultFormatter { } if (status === RequestStatus.Failed) { - throw SfdxError.create('@salesforce/plugin-source', 'report', 'mdapiDeployFailed'); + const messages = Messages.load('@salesforce/plugin-source', 'report', ['mdapiDeployFailed']); + throw new SfError(messages.getMessage('mdapiDeployFailed'), 'mdapiDeployFailed'); } return; diff --git a/src/formatters/deployResultFormatter.ts b/src/formatters/deployResultFormatter.ts index 88cb5f0b2..2bbad3dc6 100644 --- a/src/formatters/deployResultFormatter.ts +++ b/src/formatters/deployResultFormatter.ts @@ -7,7 +7,7 @@ import * as chalk from 'chalk'; import { UX } from '@salesforce/command'; -import { Logger, Messages, SfdxError } from '@salesforce/core'; +import { Logger, Messages, SfError } from '@salesforce/core'; import { asString, get, getBoolean, getNumber, getString } from '@salesforce/ts-types'; import { DeployMessage, @@ -78,7 +78,7 @@ export class DeployResultFormatter extends ResultFormatter { } if (this.hasStatus(RequestStatus.Canceled)) { const canceledByName = getString(this.result, 'response.canceledByName', 'unknown'); - throw new SfdxError(messages.getMessage('deployCanceled', [canceledByName]), 'DeployFailed'); + throw new SfError(messages.getMessage('deployCanceled', [canceledByName]), 'DeployFailed'); } this.displaySuccesses(); this.displayDeletions(); @@ -88,8 +88,10 @@ export class DeployResultFormatter extends ResultFormatter { // Throw a DeployFailed error unless the deployment was successful. if (!this.isSuccess()) { - throw new SfdxError(messages.getMessage('deployFailed'), 'DeployFailed'); + throw new SfError(messages.getMessage('deployFailed'), 'DeployFailed'); } + + this.ux.log(messages.getMessage(this.isCheckOnly() ? 'checkOnlySuccessVerbose' : 'deploySuccess')); } protected hasStatus(status: RequestStatus): boolean { @@ -124,11 +126,9 @@ export class DeployResultFormatter extends ResultFormatter { this.ux.log(''); this.ux.styledHeader(chalk.blue('Deployed Source')); this.ux.table(successes, { - columns: [ - { key: 'fullName', label: 'FULL NAME' }, - { key: 'type', label: 'TYPE' }, - { key: 'filePath', label: 'PROJECT PATH' }, - ], + fullName: { header: 'FULL NAME' }, + type: { header: 'TYPE' }, + filePath: { header: 'PROJECT PATH' }, }); } } @@ -144,11 +144,9 @@ export class DeployResultFormatter extends ResultFormatter { this.ux.log(''); this.ux.styledHeader(chalk.blue('Deleted Source')); this.ux.table(deletions, { - columns: [ - { key: 'fullName', label: 'FULL NAME' }, - { key: 'type', label: 'TYPE' }, - { key: 'filePath', label: 'PROJECT PATH' }, - ], + fullName: { header: 'FULL NAME' }, + type: { header: 'TYPE' }, + filePath: { header: 'PROJECT PATH' }, }); } @@ -184,11 +182,9 @@ export class DeployResultFormatter extends ResultFormatter { this.ux.log(''); this.ux.styledHeader(chalk.red(`Component Failures [${failures.length}]`)); this.ux.table(failures, { - columns: [ - { key: 'problemType', label: 'Type' }, - { key: 'fullName', label: 'Name' }, - { key: 'error', label: 'Problem' }, - ], + problemType: { header: 'Type' }, + fullName: { header: 'Name' }, + error: { header: 'Problem' }, }); this.ux.log(''); } @@ -222,12 +218,10 @@ export class DeployResultFormatter extends ResultFormatter { chalk.red(`Test Failures [${asString(this.result.response.details.runTestResult?.numFailures)}]`) ); this.ux.table(tests, { - columns: [ - { key: 'name', label: 'Name' }, - { key: 'methodName', label: 'Method' }, - { key: 'message', label: 'Message' }, - { key: 'stackTrace', label: 'Stacktrace' }, - ], + name: { header: 'Name' }, + methodName: { header: 'Method' }, + message: { header: 'Message' }, + stackTrace: { header: 'Stacktrace' }, }); } } @@ -239,10 +233,8 @@ export class DeployResultFormatter extends ResultFormatter { this.ux.log(''); this.ux.styledHeader(chalk.green(`Test Success [${success.length}]`)); this.ux.table(tests, { - columns: [ - { key: 'name', label: 'Name' }, - { key: 'methodName', label: 'Method' }, - ], + name: { header: 'Name' }, + methodName: { header: 'Method' }, }); } const codeCoverage = toArray(this.result?.response?.details?.runTestResult?.codeCoverage); @@ -253,17 +245,9 @@ export class DeployResultFormatter extends ResultFormatter { this.ux.log(''); this.ux.styledHeader(chalk.blue('Apex Code Coverage')); this.ux.table(coverage, { - columns: [ - { key: 'name', label: 'Name' }, - { - key: 'numLocations', - label: '% Covered', - }, - { - key: 'lineNotCovered', - label: 'Uncovered Lines', - }, - ], + name: { header: 'Name' }, + numLocations: { header: '% Covered' }, + lineNotCovered: { header: 'Uncovered Lines' }, }); } } diff --git a/src/formatters/mdapi/convertResultFormatter.ts b/src/formatters/mdapi/convertResultFormatter.ts index b1bedb14f..00c80d565 100644 --- a/src/formatters/mdapi/convertResultFormatter.ts +++ b/src/formatters/mdapi/convertResultFormatter.ts @@ -59,12 +59,10 @@ export class ConvertResultFormatter extends ResultFormatter { const convertData = this.getJson(); if (convertData?.length) { this.ux.table(convertData, { - columns: [ - { key: 'state', label: 'STATE' }, - { key: 'fullName', label: 'FULL NAME' }, - { key: 'type', label: 'TYPE' }, - { key: 'filePath', label: 'PROJECT PATH' }, - ], + state: { header: 'STATE' }, + fullName: { header: 'FULL NAME' }, + type: { header: 'TYPE' }, + filePath: { header: 'PROJECT PATH' }, }); } else { this.ux.log('No metadata found to convert'); diff --git a/src/formatters/mdapi/mdDeployResultFormatter.ts b/src/formatters/mdapi/mdDeployResultFormatter.ts index 6f97d29ff..74d20c494 100644 --- a/src/formatters/mdapi/mdDeployResultFormatter.ts +++ b/src/formatters/mdapi/mdDeployResultFormatter.ts @@ -8,7 +8,7 @@ import * as chalk from 'chalk'; import { getNumber } from '@salesforce/ts-types'; import { UX } from '@salesforce/command'; -import { Logger, Messages, SfdxError } from '@salesforce/core'; +import { Logger, Messages, SfError } from '@salesforce/core'; import { DeployMessage, DeployResult, @@ -72,7 +72,7 @@ export class MdDeployResultFormatter extends ResultFormatter { public display(isReportCommand = false): void { if (this.hasStatus(RequestStatus.Canceled)) { const canceledByName = this.result.response.canceledByName ?? 'unknown'; - throw new SfdxError(messages.getMessage('deployCanceled', [canceledByName]), 'DeployFailed'); + throw new SfError(messages.getMessage('deployCanceled', [canceledByName]), 'DeployFailed'); } if (this.isVerbose()) { this.displaySuccesses(); @@ -98,9 +98,9 @@ export class MdDeployResultFormatter extends ResultFormatter { this.displayTestResults(isReportCommand); this.displayOutputFileLocations(); } - // TODO: the toolbelt version of this is returning an SfdxError shape. This returns a status=1 and the result (mdapi response) but not the error name, etc + // TODO: the toolbelt version of this is returning an SfError shape. This returns a status=1 and the result (mdapi response) but not the error name, etc if (!this.isSuccess()) { - const error = new SfdxError(messages.getMessage('deployFailed'), 'mdapiDeployFailed'); + const error = new SfError(messages.getMessage('deployFailed'), 'mdapiDeployFailed'); error.setData(this.result); throw error; } @@ -121,12 +121,10 @@ export class MdDeployResultFormatter extends ResultFormatter { this.ux.log(''); this.ux.styledHeader(chalk.blue('Deployed Source')); this.ux.table(successes, { - columns: [ - { key: 'componentType', label: 'Type' }, - { key: 'fileName', label: 'File' }, - { key: 'fullName', label: 'Name' }, - { key: 'id', label: 'Id' }, - ], + componentType: { header: 'Type' }, + fileName: { header: 'File' }, + fullName: { header: 'Name' }, + id: { header: 'Id' }, }); } } @@ -140,12 +138,10 @@ export class MdDeployResultFormatter extends ResultFormatter { this.ux.log(''); this.ux.styledHeader(chalk.red(`Component Failures [${failures.length}]`)); this.ux.table(failures, { - columns: [ - { key: 'problemType', label: 'Type' }, - { key: 'fileName', label: 'File' }, - { key: 'fullName', label: 'Name' }, - { key: 'problem', label: 'Problem' }, - ], + problemType: { header: 'Type' }, + fileName: { header: 'File' }, + fullName: { header: 'Name' }, + problem: { header: 'Problem' }, }); this.ux.log(''); } @@ -181,12 +177,10 @@ export class MdDeployResultFormatter extends ResultFormatter { this.ux.log(''); this.ux.styledHeader(chalk.red(`Test Failures [${this.result.response.details.runTestResult?.numFailures}]`)); this.ux.table(tests, { - columns: [ - { key: 'name', label: 'Name' }, - { key: 'methodName', label: 'Method' }, - { key: 'message', label: 'Message' }, - { key: 'stackTrace', label: 'Stacktrace' }, - ], + name: { header: 'Name' }, + methodName: { header: 'Method' }, + message: { header: 'Message' }, + stackTrace: { header: 'Stacktrace' }, }); } } @@ -198,10 +192,8 @@ export class MdDeployResultFormatter extends ResultFormatter { this.ux.log(''); this.ux.styledHeader(chalk.green(`Test Success [${success.length}]`)); this.ux.table(tests, { - columns: [ - { key: 'name', label: 'Name' }, - { key: 'methodName', label: 'Method' }, - ], + name: { header: 'Name' }, + methodName: { header: 'Method' }, }); } const codeCoverage = toArray(this.result?.response?.details?.runTestResult?.codeCoverage); @@ -213,17 +205,9 @@ export class MdDeployResultFormatter extends ResultFormatter { this.ux.styledHeader(chalk.blue('Apex Code Coverage')); this.ux.table(coverage, { - columns: [ - { key: 'name', label: 'Name' }, - { - key: 'numLocations', - label: '% Covered', - }, - { - key: 'lineNotCovered', - label: 'Uncovered Lines', - }, - ], + name: { header: 'Name' }, + numLocations: { header: '% Covered' }, + lineNotCovered: { header: 'Uncovered Lines' }, }); } } diff --git a/src/formatters/mdapi/retrieveResultFormatter.ts b/src/formatters/mdapi/retrieveResultFormatter.ts index fb148817a..3c2bad4d4 100644 --- a/src/formatters/mdapi/retrieveResultFormatter.ts +++ b/src/formatters/mdapi/retrieveResultFormatter.ts @@ -88,12 +88,11 @@ export class RetrieveResultFormatter extends RetrieveFormatter { this.ux.log(''); this.ux.styledHeader(blue(`Components Retrieved [${retrievedFiles.length}]`)); - const columns = [ - { key: 'type', label: 'TYPE' }, - { key: 'fileName', label: 'FILE' }, - { key: 'fullName', label: 'NAME' }, - { key: 'id', label: 'ID' }, - ]; - this.ux.table(retrievedFiles, { columns }); + this.ux.table(retrievedFiles, { + type: { header: 'TYPE' }, + fileName: { header: 'FILE' }, + fullName: { header: 'NAME' }, + id: { header: 'ID' }, + }); } } diff --git a/src/formatters/retrieveFormatter.ts b/src/formatters/retrieveFormatter.ts index 3950f7bc8..a3a57c234 100644 --- a/src/formatters/retrieveFormatter.ts +++ b/src/formatters/retrieveFormatter.ts @@ -6,7 +6,7 @@ */ import { yellow } from 'chalk'; -import { Logger, Messages, SfdxError } from '@salesforce/core'; +import { Logger, Messages, SfError } from '@salesforce/core'; import { get } from '@salesforce/ts-types'; import { MetadataApiRetrieveStatus, @@ -40,11 +40,7 @@ export abstract class RetrieveFormatter extends ResultFormatter { protected displayWarnings(): void { this.ux.styledHeader(yellow(this.messages.getMessage('retrievedSourceWarningsHeader'))); - const columns = [ - { key: 'fileName', label: 'FILE NAME' }, - { key: 'problem', label: 'PROBLEM' }, - ]; - this.ux.table(this.warnings, { columns }); + this.ux.table(this.warnings, { fileName: { header: 'FILE NAME' }, problem: { header: 'PROBLEM' } }); this.ux.log(); } @@ -52,7 +48,7 @@ export abstract class RetrieveFormatter extends ResultFormatter { // an invalid packagename retrieval will end up with a message in the `errorMessage` entry const errorMessage = get(this.result, 'errorMessage') as string; if (errorMessage) { - throw new SfdxError(errorMessage); + throw new SfError(errorMessage); } const unknownMsg: RetrieveMessage[] = [{ fileName: 'unknown', problem: 'unknown' }]; const responseMsgs = get(this.result, 'messages', unknownMsg) as RetrieveMessage | RetrieveMessage[]; diff --git a/src/formatters/retrieveResultFormatter.ts b/src/formatters/retrieveResultFormatter.ts index b636c72ac..386a610f8 100644 --- a/src/formatters/retrieveResultFormatter.ts +++ b/src/formatters/retrieveResultFormatter.ts @@ -99,11 +99,10 @@ export class RetrieveResultFormatter extends RetrieveFormatter { private displaySuccesses(retrievedFiles: FileResponse[]): void { this.sortFileResponses(retrievedFiles); this.asRelativePaths(retrievedFiles); - const columns = [ - { key: 'fullName', label: 'FULL NAME' }, - { key: 'type', label: 'TYPE' }, - { key: 'filePath', label: 'PROJECT PATH' }, - ]; - this.ux.table(retrievedFiles, { columns }); + this.ux.table(retrievedFiles, { + fullName: { header: 'FULL NAME' }, + type: { header: 'TYPE' }, + filePath: { header: 'PROJECT PATH' }, + }); } } diff --git a/src/formatters/source/deleteResultFormatter.ts b/src/formatters/source/deleteResultFormatter.ts index 8f67397b3..2a58146b6 100644 --- a/src/formatters/source/deleteResultFormatter.ts +++ b/src/formatters/source/deleteResultFormatter.ts @@ -71,11 +71,9 @@ export class DeleteResultFormatter extends DeployResultFormatter { this.ux.log(''); this.ux.styledHeader(chalk.blue('Deleted Source')); this.ux.table(successes, { - columns: [ - { key: 'fullName', label: 'FULL NAME' }, - { key: 'type', label: 'TYPE' }, - { key: 'filePath', label: 'PROJECT PATH' }, - ], + fullName: { header: 'FULL NAME' }, + type: { header: 'TYPE' }, + filePath: { header: 'PROJECT PATH' }, }); } } diff --git a/src/formatters/source/openResultFormatter.ts b/src/formatters/source/openResultFormatter.ts index f9f38d08d..63efa7a26 100644 --- a/src/formatters/source/openResultFormatter.ts +++ b/src/formatters/source/openResultFormatter.ts @@ -6,7 +6,7 @@ */ import { UX } from '@salesforce/command'; -import { Logger, Messages, SfdxError } from '@salesforce/core'; +import { Logger, Messages, SfError } from '@salesforce/core'; import { ResultFormatter } from '../resultFormatter'; Messages.importMessagesDirectory(__dirname); @@ -37,7 +37,7 @@ export class OpenResultFormatter extends ResultFormatter { const { orgId, username, url } = this.result; this.ux.log(messages.getMessage('SourceOpenCommandHumanSuccess', [orgId, username, url])); } else { - throw new SfdxError(messages.getMessage('SourceOpenCommandError'), 'OpenFailed'); + throw new SfError(messages.getMessage('SourceOpenCommandError'), 'OpenFailed'); } } } diff --git a/src/formatters/source/pullFormatter.ts b/src/formatters/source/pullFormatter.ts index aeddec0d1..63a74524e 100644 --- a/src/formatters/source/pullFormatter.ts +++ b/src/formatters/source/pullFormatter.ts @@ -7,7 +7,7 @@ import { blue, yellow } from 'chalk'; import { UX } from '@salesforce/command'; -import { Logger, Messages, SfdxError } from '@salesforce/core'; +import { Logger, Messages, SfError } from '@salesforce/core'; import { get, getNumber, getString } from '@salesforce/ts-types'; import { ComponentStatus, @@ -19,7 +19,12 @@ import { import { ResultFormatter, ResultFormatterOptions, toArray } from '../resultFormatter'; Messages.importMessagesDirectory(__dirname); -const messages = Messages.loadMessages('@salesforce/plugin-source', 'pull'); +const messages = Messages.load('@salesforce/plugin-source', 'pull', [ + 'retrievedSourceWarningsHeader', + 'retrievedSourceHeader', + 'retrieveTimeout', + 'NoResultsFound', +]); export type PullResponse = { pulledSource: Array> }; @@ -55,7 +60,7 @@ export class PullResultFormatter extends ResultFormatter { */ public getJson(): PullResponse { if (!this.isSuccess()) { - const error = new SfdxError('Pull failed.', 'PullFailed', [], process.exitCode); + const error = new SfError('Pull failed.', 'PullFailed', [], process.exitCode); error.setData( this.fileResponses.map(({ state, fullName, type, filePath }) => ({ state, fullName, type, filePath })) ); @@ -107,11 +112,7 @@ export class PullResultFormatter extends ResultFormatter { private displayWarnings(): void { this.ux.styledHeader(yellow(messages.getMessage('retrievedSourceWarningsHeader'))); - const columns = [ - { key: 'fileName', label: 'FILE NAME' }, - { key: 'problem', label: 'PROBLEM' }, - ]; - this.ux.table(this.warnings, { columns }); + this.ux.table(this.warnings, { fileName: { header: 'FILE NAME' }, problem: { header: 'PROBLEM' } }); this.ux.log(); } @@ -119,12 +120,10 @@ export class PullResultFormatter extends ResultFormatter { this.sortFileResponses(retrievedFiles); this.asRelativePaths(retrievedFiles); this.ux.table(retrievedFiles, { - columns: [ - { label: 'STATE', key: 'state' }, - { label: 'FULL NAME', key: 'fullName' }, - { label: 'TYPE', key: 'type' }, - { label: 'PROJECT PATH', key: 'filePath' }, - ], + state: { header: 'STATE' }, + fullName: { header: 'FULL NAME' }, + type: { header: 'TYPE' }, + filePath: { header: 'PROJECT PATH' }, }); } @@ -135,7 +134,7 @@ export class PullResultFormatter extends ResultFormatter { } const errorMessage = getString(this.result.response, 'errorMessage'); if (errorMessage) { - throw new SfdxError(errorMessage); + throw new SfError(errorMessage); } const unknownMsg: RetrieveMessage[] = [{ fileName: 'unknown', problem: 'unknown' }]; const responseMsgs = get(this.result, 'response.messages', unknownMsg) as RetrieveMessage | RetrieveMessage[]; diff --git a/src/formatters/source/pushResultFormatter.ts b/src/formatters/source/pushResultFormatter.ts index 60082a633..d0e410a2a 100644 --- a/src/formatters/source/pushResultFormatter.ts +++ b/src/formatters/source/pushResultFormatter.ts @@ -7,7 +7,7 @@ import { resolve as pathResolve } from 'path'; import * as chalk from 'chalk'; import { UX } from '@salesforce/command'; -import { Logger, Messages, SfdxError } from '@salesforce/core'; +import { Logger, Messages, SfError } from '@salesforce/core'; import { ComponentStatus, DeployMessage, @@ -48,7 +48,7 @@ export class PushResultFormatter extends ResultFormatter { public getJson(): PushResponse { // throws a particular json structure. commandName property will be appended by sfdxCommand when this throws if (process.exitCode !== 0) { - const error = new SfdxError(messages.getMessage('sourcepushFailed'), 'DeployFailed', [], process.exitCode); + const error = new SfError(messages.getMessage('sourcepushFailed'), 'DeployFailed', [], process.exitCode); const errorData = this.fileResponses.filter((fileResponse) => fileResponse.state === ComponentStatus.Failed); error.setData(errorData); error['result'] = errorData; @@ -84,7 +84,7 @@ export class PushResultFormatter extends ResultFormatter { // Throw a DeployFailed error unless the deployment was successful. if (!this.isSuccess()) { - throw new SfdxError(messages.getMessage('sourcepushFailed'), 'PushFailed'); + throw new SfError(messages.getMessage('sourcepushFailed'), 'PushFailed'); } } @@ -147,12 +147,10 @@ export class PushResultFormatter extends ResultFormatter { this.ux.log(''); this.ux.styledHeader(chalk.blue('Pushed Source')); this.ux.table(successes, { - columns: [ - { key: 'state', label: 'STATE' }, - { key: 'fullName', label: 'FULL NAME' }, - { key: 'type', label: 'TYPE' }, - { key: 'filePath', label: 'PROJECT PATH' }, - ], + state: { header: 'STATE' }, + fullName: { header: 'FULL NAME' }, + type: { header: 'TYPE' }, + filePath: { header: 'PROJECT PATH' }, }); } } @@ -190,11 +188,9 @@ export class PushResultFormatter extends ResultFormatter { this.ux.log(''); this.ux.styledHeader(chalk.red(`Component Failures [${failures.length}]`)); this.ux.table(failures, { - columns: [ - { key: 'problemType', label: 'Type' }, - { key: 'fullName', label: 'Name' }, - { key: 'error', label: 'Problem' }, - ], + problemType: { header: 'Type' }, + fullName: { header: 'Name' }, + error: { header: 'Problem' }, }); this.ux.log(''); } diff --git a/src/formatters/source/statusFormatter.ts b/src/formatters/source/statusFormatter.ts index 44acbd9a0..abef511c4 100644 --- a/src/formatters/source/statusFormatter.ts +++ b/src/formatters/source/statusFormatter.ts @@ -9,7 +9,7 @@ import { Logger, Messages } from '@salesforce/core'; import { ResultFormatter, ResultFormatterOptions } from '../resultFormatter'; Messages.importMessagesDirectory(__dirname); -const messages: Messages = Messages.loadMessages('@salesforce/plugin-source', 'status'); +const messages = Messages.load('@salesforce/plugin-source', 'status', ['humanSuccess', 'noResults']); type StatusActualState = 'Deleted' | 'Add' | 'Changed' | 'Unchanged'; type StatusOrigin = 'Local' | 'Remote'; @@ -54,16 +54,12 @@ export class StatusFormatter extends ResultFormatter { return; } this.ux.log(messages.getMessage('humanSuccess')); - const baseColumns = [ - { label: 'STATE', key: 'state' }, - { label: 'FULL NAME', key: 'fullName' }, - { label: 'TYPE', key: 'type' }, - { label: 'PROJECT PATH', key: 'filePath' }, - ]; this.ux.table(this.statusRows.sort(rowSortFunction), { - columns: this.statusRows.some((row) => row.ignored) - ? [{ label: 'IGNORED', key: 'ignored' }, ...baseColumns] - : baseColumns, + ...(this.statusRows.some((row) => row.ignored) ? { ignored: { header: 'IGNORED' } } : {}), + state: { header: 'STATE' }, + fullName: { header: 'FULL NAME' }, + type: { header: 'TYPE' }, + filePath: { header: 'PROJECT PATH' }, }); } } diff --git a/src/sourceCommand.ts b/src/sourceCommand.ts index 02af776b3..42f83d2c8 100644 --- a/src/sourceCommand.ts +++ b/src/sourceCommand.ts @@ -8,14 +8,19 @@ import { dirname, resolve } from 'path'; import * as fs from 'fs'; import { SfdxCommand } from '@salesforce/command'; -import { Messages, Lifecycle, SfdxError } from '@salesforce/core'; +import { Messages, Lifecycle, SfError } from '@salesforce/core'; import { ComponentSet } from '@salesforce/source-deploy-retrieve'; import { get, getBoolean, getString, Optional } from '@salesforce/ts-types'; -import cli from 'cli-ux'; +import { CliUx } from '@oclif/core'; import { EnsureFsFlagOptions, FsError, ProgressBar } from './types'; Messages.importMessagesDirectory(__dirname); -const messages = Messages.loadMessages('@salesforce/plugin-source', 'flags.validation'); +const messages = Messages.load('@salesforce/plugin-source', 'flags.validation', [ + 'InvalidFlagPath', + 'expectedDirectory', + 'expectedFile', + 'notFound', +]); // TODO: use messages for tracking version compatibility errors // Messages.importMessagesDirectory(__dirname); @@ -38,7 +43,7 @@ export abstract class SourceCommand extends SfdxCommand { protected initProgressBar(): void { this.logger.debug('initializing progress bar'); - this.progressBar = cli.progress({ + this.progressBar = CliUx.ux.progress({ format: 'SOURCE PROGRESS | {bar} | {value}/{total} Components', barCompleteChar: '\u2588', barIncompleteChar: '\u2591', @@ -88,18 +93,10 @@ export abstract class SourceCommand extends SfdxCommand { const isDir = stats.isDirectory(); if (type === 'dir' && !isDir) { const msg = messages.getMessage('expectedDirectory'); - throw SfdxError.create('@salesforce/plugin-source', 'flags.validation', 'InvalidFlagPath', [ - flagName, - path, - msg, - ]); + throw new SfError(messages.getMessage('InvalidFlagPath', [flagName, path, msg]), 'InvalidFlagPath'); } else if (type === 'file' && isDir) { const msg = messages.getMessage('expectedFile'); - throw SfdxError.create('@salesforce/plugin-source', 'flags.validation', 'InvalidFlagPath', [ - flagName, - path, - msg, - ]); + throw new SfError(messages.getMessage('InvalidFlagPath', [flagName, path, msg]), 'InvalidFlagPath'); } } } catch (error: unknown) { @@ -109,11 +106,7 @@ export abstract class SourceCommand extends SfdxCommand { } else { if (throwOnENOENT) { const enoent = messages.getMessage('notFound'); - throw SfdxError.create('@salesforce/plugin-source', 'flags.validation', 'InvalidFlagPath', [ - flagName, - path, - enoent, - ]); + throw new SfError(messages.getMessage('InvalidFlagPath', [flagName, path, enoent]), 'InvalidFlagPath'); } const dir = type === 'dir' ? resolvedPath : dirname(resolvedPath); fs.mkdirSync(dir, { recursive: true }); diff --git a/src/stash.ts b/src/stash.ts index bcb477d40..898f6606a 100644 --- a/src/stash.ts +++ b/src/stash.ts @@ -5,9 +5,11 @@ * For full license text, see LICENSE.txt file in the repo root or https://opensource.org/licenses/BSD-3-Clause */ import * as fs from 'fs'; -import { ConfigFile, Logger, SfdxError } from '@salesforce/core'; +import { ConfigFile, Logger, Messages, SfError } from '@salesforce/core'; import { JsonMap, Optional } from '@salesforce/ts-types'; +Messages.importMessagesDirectory(__dirname); + interface StashFile { isGlobal: boolean; filename: string; @@ -86,7 +88,8 @@ export class Stash { public static getKey(commandId: string): StashKey { const key = Stash.keyMap[commandId] as StashKey; if (!key) { - throw SfdxError.create('@salesforce/plugin-source', 'stash', 'InvalidStashKey', [commandId]); + const messages = Messages.load('@salesforce/plugin-source', 'stash', ['InvalidStashKey']); + throw new SfError(messages.getMessage('InvalidStashKey', [commandId]), 'InvalidStashKey'); } return key; } @@ -136,14 +139,15 @@ export class Stash { const stashFilePath = Stash.instance?.getPath(); const corruptFilePath = `${stashFilePath}_corrupted_${Date.now()}`; fs.renameSync(stashFilePath, corruptFilePath); - const invalidStashErr = SfdxError.create('@salesforce/plugin-source', 'stash', 'InvalidStashFile', [ - corruptFilePath, - ]); - invalidStashErr.message = `${invalidStashErr.message}\n${error.message}`; - invalidStashErr.stack = `${invalidStashErr.stack}\nDue to:\n${error.stack}`; - throw invalidStashErr; + const messages = Messages.load('@salesforce/plugin-source', 'stash', ['InvalidStashKey']); + throw new SfError( + `${messages.getMessage('InvalidStashKey', [corruptFilePath])}\n\n${error.message}`, + 'InvalidStashFile', + [], + error + ); } - throw SfdxError.wrap(error); + throw SfError.wrap(error); } return Stash.instance; diff --git a/src/trackingFunctions.ts b/src/trackingFunctions.ts index 05fb5d0d2..f5668ba4f 100644 --- a/src/trackingFunctions.ts +++ b/src/trackingFunctions.ts @@ -13,7 +13,7 @@ import { SourceTrackingOptions, throwIfInvalid, } from '@salesforce/source-tracking'; -import { Messages, SfdxError } from '@salesforce/core'; +import { Messages, SfError } from '@salesforce/core'; import { ComponentSet, ComponentStatus, @@ -87,7 +87,7 @@ export const trackingSetup = async (options: TrackingSetupRequest): Promise { ux.table(conflicts, { - columns: [ - { label: 'STATE', key: 'state' }, - { label: 'FULL NAME', key: 'fullName' }, - { label: 'TYPE', key: 'type' }, - { label: 'PROJECT PATH', key: 'filePath' }, - ], + state: { header: 'STATE' }, + fullName: { header: 'FULL NAME' }, + type: { header: 'TYPE' }, + filePath: { header: 'FILE PATH' }, }); }; @@ -182,7 +180,7 @@ const processConflicts = (conflicts: ChangeResult[], ux: UX, message: string): v }); const reformattedConflicts = Array.from(conflictMap.values()); writeConflictTable(reformattedConflicts, ux); - const err = new SfdxError(message, 'sourceConflictDetected'); + const err = new SfError(message, 'sourceConflictDetected'); err.setData(reformattedConflicts); throw err; }; diff --git a/test/commands/mdapi/cancel.test.ts b/test/commands/mdapi/cancel.test.ts index 68e7b9bff..0e4c0a86d 100644 --- a/test/commands/mdapi/cancel.test.ts +++ b/test/commands/mdapi/cancel.test.ts @@ -9,8 +9,8 @@ import { join } from 'path'; import * as sinon from 'sinon'; import { expect } from 'chai'; import { fromStub, spyMethod, stubInterface, stubMethod } from '@salesforce/ts-sinon'; -import { ConfigFile, Org, SfdxProject } from '@salesforce/core'; -import { IConfig } from '@oclif/config'; +import { ConfigFile, Org, SfProject } from '@salesforce/core'; +import { Config } from '@oclif/core'; import { UX } from '@salesforce/command'; import { MetadataApiDeploy } from '@salesforce/source-deploy-retrieve'; import { Cancel } from '../../../src/commands/force/mdapi/deploy/cancel'; @@ -32,7 +32,7 @@ describe('force:mdapi:deploy:cancel', () => { expectedResults.deploys = [deployResult.response]; // Stubs - const oclifConfigStub = fromStub(stubInterface(sandbox)); + const oclifConfigStub = fromStub(stubInterface(sandbox)); let checkDeployStatusStub: sinon.SinonStub; let cancelStub: sinon.SinonStub; let uxLogStub: sinon.SinonStub; @@ -47,7 +47,7 @@ describe('force:mdapi:deploy:cancel', () => { public setOrg(org: Org) { this.org = org; } - public setProject(project: SfdxProject) { + public setProject(project: SfProject) { this.project = project; } @@ -60,12 +60,12 @@ describe('force:mdapi:deploy:cancel', () => { const runCancelCmd = async (params: string[]) => { const cmd = new TestCancel(params, oclifConfigStub); stubMethod(sandbox, cmd, 'assignProject').callsFake(() => { - const sfdxProjectStub = fromStub( - stubInterface(sandbox, { + const SfProjectStub = fromStub( + stubInterface(sandbox, { getUniquePackageDirectories: () => [{ fullPath: defaultDir }], }) ); - cmd.setProject(sfdxProjectStub); + cmd.setProject(SfProjectStub); }); stubMethod(sandbox, cmd, 'assignOrg').callsFake(() => { const orgStub = fromStub( diff --git a/test/commands/mdapi/convert.test.ts b/test/commands/mdapi/convert.test.ts index b45bd65c8..57248209b 100644 --- a/test/commands/mdapi/convert.test.ts +++ b/test/commands/mdapi/convert.test.ts @@ -10,9 +10,9 @@ import { join, resolve } from 'path'; import * as sinon from 'sinon'; import { assert, expect } from 'chai'; import { fromStub, stubInterface, stubMethod } from '@salesforce/ts-sinon'; -import { IConfig } from '@oclif/config'; +import { Config } from '@oclif/core'; import { UX } from '@salesforce/command'; -import { SfdxProject } from '@salesforce/core'; +import { SfProject } from '@salesforce/core'; import { ComponentSetBuilder, MetadataConverter } from '@salesforce/source-deploy-retrieve'; import { Convert } from '../../../src/commands/force/mdapi/convert'; import { FsError } from '../../../src/types'; @@ -56,7 +56,7 @@ const commandName = 'mdapi:convert'; describe(`force:${commandName}`, () => { const sandbox = sinon.createSandbox(); - const oclifConfigStub = fromStub(stubInterface(sandbox)); + const oclifConfigStub = fromStub(stubInterface(sandbox)); const defaultDir = join('my', 'default', 'package'); let uxLogStub: sinon.SinonStub; @@ -73,7 +73,7 @@ describe(`force:${commandName}`, () => { await this.init(); return this.run(); } - public setProject(project: SfdxProject) { + public setProject(project: SfProject) { this.project = project; } } @@ -81,12 +81,12 @@ describe(`force:${commandName}`, () => { const runConvertCmd = async (params: string[]) => { const cmd = new TestConvert(params, oclifConfigStub); stubMethod(sandbox, cmd, 'assignProject').callsFake(() => { - const sfdxProjectStub = fromStub( - stubInterface(sandbox, { + const SfProjectStub = fromStub( + stubInterface(sandbox, { getDefaultPackage: () => ({ path: defaultDir }), }) ); - cmd.setProject(sfdxProjectStub); + cmd.setProject(SfProjectStub); }); stubMethod(sandbox, cmd, 'assignOrg'); diff --git a/test/commands/mdapi/describemetadata.test.ts b/test/commands/mdapi/describemetadata.test.ts index 5a3e99637..bb4fd6c29 100644 --- a/test/commands/mdapi/describemetadata.test.ts +++ b/test/commands/mdapi/describemetadata.test.ts @@ -9,10 +9,10 @@ import * as fs from 'fs'; import * as sinon from 'sinon'; import { expect } from 'chai'; import { Org } from '@salesforce/core'; -import { DescribeMetadataResult } from 'jsforce'; +import { DescribeMetadataResult } from 'jsforce/api/metadata'; import { fromStub, stubInterface, stubMethod } from '@salesforce/ts-sinon'; import { cloneJson } from '@salesforce/kit'; -import { IConfig } from '@oclif/config'; +import { Config } from '@oclif/core'; import { UX } from '@salesforce/command'; import { RegistryAccess } from '@salesforce/source-deploy-retrieve'; import { DescribeMetadata } from '../../../src/commands/force/mdapi/describemetadata'; @@ -29,6 +29,7 @@ describe('force:mdapi:describemetadata', () => { metaFile: false, suffix: 'mlPrediction', xmlName: 'MLPredictionDefinition', + childXmlNames: [], }, { directoryName: 'fieldRestrictionRules', @@ -36,6 +37,7 @@ describe('force:mdapi:describemetadata', () => { metaFile: false, suffix: 'rule', xmlName: 'FieldRestrictionRule', + childXmlNames: [], }, ], organizationNamespace: '', @@ -43,7 +45,7 @@ describe('force:mdapi:describemetadata', () => { testRequired: false, }; - const oclifConfigStub = fromStub(stubInterface(sandbox)); + const oclifConfigStub = fromStub(stubInterface(sandbox)); let describeMetadataStub: sinon.SinonStub; let uxLogStub: sinon.SinonStub; let uxStyledJsonStub: sinon.SinonStub; diff --git a/test/commands/mdapi/listmetadata.test.ts b/test/commands/mdapi/listmetadata.test.ts index 6acf50bbc..9ce89efec 100644 --- a/test/commands/mdapi/listmetadata.test.ts +++ b/test/commands/mdapi/listmetadata.test.ts @@ -9,9 +9,9 @@ import * as fs from 'fs'; import * as sinon from 'sinon'; import { assert, expect } from 'chai'; import { Org } from '@salesforce/core'; -import { FileProperties } from 'jsforce'; +import { FileProperties } from 'jsforce/api/metadata'; import { fromStub, stubInterface, stubMethod } from '@salesforce/ts-sinon'; -import { IConfig } from '@oclif/config'; +import { Config } from '@oclif/core'; import { UX } from '@salesforce/command'; import { ListMetadata } from '../../../src/commands/force/mdapi/listmetadata'; @@ -33,7 +33,7 @@ describe('force:mdapi:listmetadata', () => { type: 'ApexClass', }; - const oclifConfigStub = fromStub(stubInterface(sandbox)); + const oclifConfigStub = fromStub(stubInterface(sandbox)); let listMetadataStub: sinon.SinonStub; let uxLogStub: sinon.SinonStub; let uxStyledJsonStub: sinon.SinonStub; diff --git a/test/commands/mdapi/retrieve.test.ts b/test/commands/mdapi/retrieve.test.ts index 2c7045a32..42fa7d0ad 100644 --- a/test/commands/mdapi/retrieve.test.ts +++ b/test/commands/mdapi/retrieve.test.ts @@ -11,7 +11,7 @@ import * as sinon from 'sinon'; import { expect } from 'chai'; import { Lifecycle, Org } from '@salesforce/core'; import { fromStub, stubInterface, stubMethod } from '@salesforce/ts-sinon'; -import { IConfig } from '@oclif/config'; +import { Config } from '@oclif/core'; import { UX } from '@salesforce/command'; import { ComponentSetBuilder, ComponentSetOptions, RetrieveOptions } from '@salesforce/source-deploy-retrieve'; import { Duration } from '@salesforce/kit'; @@ -24,7 +24,7 @@ describe('force:mdapi:retrieve', () => { const username = 'retrieve-test@org.com'; const packageXml = 'package.xml'; const retrievetargetdir = path.resolve('retrieve-target-dir'); - const oclifConfigStub = fromStub(stubInterface(sandbox)); + const oclifConfigStub = fromStub(stubInterface(sandbox)); const retrieveResult = getRetrieveResult('success'); const defaultZipFilePath = path.join(retrievetargetdir, 'unpackaged.zip'); const expectedDefaultResult = Object.assign({}, retrieveResult.response, { zipFilePath: defaultZipFilePath }); @@ -189,7 +189,7 @@ describe('force:mdapi:retrieve', () => { }, }); ensureRetrieveArgs(); - ensureHookArgs(manifestPath); + // ensureHookArgs(manifestPath); ensureStashSet(); expect(fsStatStub.called).to.be.true; }); diff --git a/test/commands/mdapi/retrieveReport.test.ts b/test/commands/mdapi/retrieveReport.test.ts index 854dfdb0d..a1131f9ae 100644 --- a/test/commands/mdapi/retrieveReport.test.ts +++ b/test/commands/mdapi/retrieveReport.test.ts @@ -11,7 +11,7 @@ import * as sinon from 'sinon'; import { expect } from 'chai'; import { Org } from '@salesforce/core'; import { fromStub, stubInterface, stubMethod } from '@salesforce/ts-sinon'; -import { IConfig } from '@oclif/config'; +import { Config } from '@oclif/core'; import { UX } from '@salesforce/command'; import { MetadataApiRetrieve } from '@salesforce/source-deploy-retrieve'; import { Report } from '../../../src/commands/force/mdapi/retrieve/report'; @@ -22,7 +22,7 @@ describe('force:mdapi:retrieve:report', () => { const sandbox = sinon.createSandbox(); const username = 'report-test@org.com'; const retrievetargetdir = path.resolve('retrieve-target-dir'); - const oclifConfigStub = fromStub(stubInterface(sandbox)); + const oclifConfigStub = fromStub(stubInterface(sandbox)); const retrieveResult = getRetrieveResult('success'); const defaultZipFileName = 'unpackaged.zip'; const defaultZipFilePath = path.join(retrievetargetdir, defaultZipFileName); diff --git a/test/commands/source/cancel.test.ts b/test/commands/source/cancel.test.ts index 242ef307a..90adbd54f 100644 --- a/test/commands/source/cancel.test.ts +++ b/test/commands/source/cancel.test.ts @@ -9,8 +9,8 @@ import { join } from 'path'; import * as sinon from 'sinon'; import { expect } from 'chai'; import { fromStub, spyMethod, stubInterface, stubMethod } from '@salesforce/ts-sinon'; -import { ConfigFile, Org, SfdxProject } from '@salesforce/core'; -import { IConfig } from '@oclif/config'; +import { ConfigFile, Org, SfProject } from '@salesforce/core'; +import { Config } from '@oclif/core'; import { UX } from '@salesforce/command'; import { MetadataApiDeploy } from '@salesforce/source-deploy-retrieve'; import { Cancel } from '../../../src/commands/force/source/deploy/cancel'; @@ -32,7 +32,7 @@ describe('force:source:deploy:cancel', () => { expectedResults.deploys = [deployResult.response]; // Stubs - const oclifConfigStub = fromStub(stubInterface(sandbox)); + const oclifConfigStub = fromStub(stubInterface(sandbox)); let checkDeployStatusStub: sinon.SinonStub; let cancelStub: sinon.SinonStub; let uxLogStub: sinon.SinonStub; @@ -47,7 +47,7 @@ describe('force:source:deploy:cancel', () => { public setOrg(org: Org) { this.org = org; } - public setProject(project: SfdxProject) { + public setProject(project: SfProject) { this.project = project; } @@ -60,12 +60,12 @@ describe('force:source:deploy:cancel', () => { const runCancelCmd = async (params: string[]) => { const cmd = new TestCancel(params, oclifConfigStub); stubMethod(sandbox, cmd, 'assignProject').callsFake(() => { - const sfdxProjectStub = fromStub( - stubInterface(sandbox, { + const SfProjectStub = fromStub( + stubInterface(sandbox, { getUniquePackageDirectories: () => [{ fullPath: defaultDir }], }) ); - cmd.setProject(sfdxProjectStub); + cmd.setProject(SfProjectStub); }); stubMethod(sandbox, cmd, 'assignOrg').callsFake(() => { const orgStub = fromStub( diff --git a/test/commands/source/convert.test.ts b/test/commands/source/convert.test.ts index 3e1125302..fb1b794aa 100644 --- a/test/commands/source/convert.test.ts +++ b/test/commands/source/convert.test.ts @@ -10,8 +10,8 @@ import { ComponentSetBuilder, ComponentSetOptions, MetadataConverter } from '@sa import * as sinon from 'sinon'; import { expect } from 'chai'; import { fromStub, stubInterface, stubMethod } from '@salesforce/ts-sinon'; -import { IConfig } from '@oclif/config'; -import { SfdxProject } from '@salesforce/core'; +import { Config } from '@oclif/core'; +import { SfProject } from '@salesforce/core'; import { Convert } from '../../../src/commands/force/source/convert'; describe('force:source:convert', () => { @@ -22,7 +22,7 @@ describe('force:source:convert', () => { const defaultDir = join('my', 'default', 'package'); const myApp = join('new', 'package', 'directory'); const packageXml = 'package.xml'; - const oclifConfigStub = fromStub(stubInterface(sandbox)); + const oclifConfigStub = fromStub(stubInterface(sandbox)); let resolveProjectConfigStub: sinon.SinonStub; class TestConvert extends Convert { @@ -30,7 +30,7 @@ describe('force:source:convert', () => { await this.init(); return this.run(); } - public setProject(project: SfdxProject) { + public setProject(project: SfProject) { this.project = project; } } @@ -38,14 +38,14 @@ describe('force:source:convert', () => { const runConvertCmd = async (params: string[]) => { const cmd = new TestConvert(params, oclifConfigStub); stubMethod(sandbox, cmd, 'assignProject').callsFake(() => { - const sfdxProjectStub = fromStub( - stubInterface(sandbox, { + const SfProjectStub = fromStub( + stubInterface(sandbox, { getDefaultPackage: () => ({ path: defaultDir }), getUniquePackageDirectories: () => [{ fullPath: defaultDir }], resolveProjectConfig: resolveProjectConfigStub, }) ); - cmd.setProject(sfdxProjectStub); + cmd.setProject(SfProjectStub); }); stubMethod(sandbox, cmd, 'assignOrg'); return cmd.runIt(); diff --git a/test/commands/source/delete.test.ts b/test/commands/source/delete.test.ts index 66ddee675..c7406e6d9 100644 --- a/test/commands/source/delete.test.ts +++ b/test/commands/source/delete.test.ts @@ -15,9 +15,9 @@ import { ComponentSetOptions, SourceComponent, } from '@salesforce/source-deploy-retrieve'; -import { Lifecycle, Org, SfdxProject } from '@salesforce/core'; +import { Lifecycle, Org, SfProject } from '@salesforce/core'; import { fromStub, stubInterface, stubMethod } from '@salesforce/ts-sinon'; -import { IConfig } from '@oclif/config'; +import { Config } from '@oclif/core'; import { UX } from '@salesforce/command'; import { Delete } from '../../../src/commands/force/source/delete'; import { exampleDeleteResponse, exampleSourceComponent } from './testConsts'; @@ -30,7 +30,7 @@ describe('force:source:delete', () => { const defaultPackagePath = 'defaultPackagePath'; let confirm = true; - const oclifConfigStub = fromStub(stubInterface(sandbox)); + const oclifConfigStub = fromStub(stubInterface(sandbox)); // Stubs let buildComponentSetStub: sinon.SinonStub; @@ -51,23 +51,23 @@ describe('force:source:delete', () => { public setOrg(org: Org) { this.org = org; } - public setProject(project: SfdxProject) { + public setProject(project: SfProject) { this.project = project; } } const runDeleteCmd = async (params: string[]) => { const cmd = new TestDelete(params, oclifConfigStub); - stubMethod(sandbox, SfdxProject, 'resolveProjectPath').resolves(join('path', 'to', 'package')); + stubMethod(sandbox, SfProject, 'resolveProjectPath').resolves(join('path', 'to', 'package')); stubMethod(sandbox, cmd, 'assignProject').callsFake(() => { - const sfdxProjectStub = fromStub( - stubInterface(sandbox, { + const SfProjectStub = fromStub( + stubInterface(sandbox, { getDefaultPackage: () => ({ fullPath: defaultPackagePath }), getUniquePackageDirectories: () => [{ fullPath: defaultPackagePath }], resolveProjectConfig: resolveProjectConfigStub, }) ); - cmd.setProject(sfdxProjectStub); + cmd.setProject(SfProjectStub); }); stubMethod(sandbox, cmd, 'assignOrg').callsFake(() => { const orgStub = fromStub( diff --git a/test/commands/source/deploy.test.ts b/test/commands/source/deploy.test.ts index af560c5f5..4381aba50 100644 --- a/test/commands/source/deploy.test.ts +++ b/test/commands/source/deploy.test.ts @@ -10,9 +10,9 @@ import * as sinon from 'sinon'; import { expect } from 'chai'; import { ComponentSetBuilder, ComponentSetOptions, MetadataApiDeployOptions } from '@salesforce/source-deploy-retrieve'; import { fromStub, stubInterface, stubMethod } from '@salesforce/ts-sinon'; -import { ConfigAggregator, Lifecycle, Messages, Org, SfdxProject } from '@salesforce/core'; +import { ConfigAggregator, Lifecycle, Messages, Org, SfProject } from '@salesforce/core'; import { UX } from '@salesforce/command'; -import { IConfig } from '@oclif/config'; +import { Config } from '@oclif/core'; import { Deploy } from '../../../src/commands/force/source/deploy'; import { DeployCommandResult, DeployResultFormatter } from '../../../src/formatters/deployResultFormatter'; import { @@ -31,7 +31,7 @@ describe('force:source:deploy', () => { const username = 'deploy-test@org.com'; const packageXml = 'package.xml'; const defaultDir = join('my', 'default', 'package'); - const oclifConfigStub = fromStub(stubInterface(sandbox)); + const oclifConfigStub = fromStub(stubInterface(sandbox)); const deployResult = getDeployResult('successSync'); const expectedResults = deployResult.response as DeployCommandResult; @@ -78,7 +78,7 @@ describe('force:source:deploy', () => { public setOrg(org: Org) { this.org = org; } - public setProject(project: SfdxProject) { + public setProject(project: SfProject) { this.project = project; } } @@ -86,13 +86,13 @@ describe('force:source:deploy', () => { const runDeployCmd = async (params: string[]) => { const cmd = new TestDeploy(params, oclifConfigStub); stubMethod(sandbox, cmd, 'assignProject').callsFake(() => { - const sfdxProjectStub = fromStub( - stubInterface(sandbox, { + const SfProjectStub = fromStub( + stubInterface(sandbox, { getUniquePackageDirectories: () => [{ fullPath: defaultDir }], resolveProjectConfig: resolveProjectConfigStub, }) ); - cmd.setProject(sfdxProjectStub); + cmd.setProject(SfProjectStub); }); stubMethod(sandbox, cmd, 'assignOrg').callsFake(() => { const orgStub = fromStub( diff --git a/test/commands/source/deployCommand.test.ts b/test/commands/source/deployCommand.test.ts index 24f7c0144..6f07b11c2 100644 --- a/test/commands/source/deployCommand.test.ts +++ b/test/commands/source/deployCommand.test.ts @@ -4,7 +4,7 @@ * Licensed under the BSD 3-Clause license. * For full license text, see LICENSE.txt file in the repo root or https://opensource.org/licenses/BSD-3-Clause */ -import { SfdxError } from '@salesforce/core'; +import { SfError } from '@salesforce/core'; import { ComponentSet } from '@salesforce/source-deploy-retrieve'; import { assert, expect } from 'chai'; import { getVersionMessage, DeployCommand } from '../../../src/deployCommand'; @@ -19,7 +19,7 @@ describe('test static method for valid deploy IDs', () => { DeployCommand.isValidDeployId('00D000000012345'); assert.fail('should have thrown'); } catch (e) { - expect((e as SfdxError).name).to.equal('invalidDeployId'); + expect((e as SfError).name).to.equal('invalidDeployId'); } }); }); diff --git a/test/commands/source/open.test.ts b/test/commands/source/open.test.ts index 8b2ead600..0ac92dd81 100644 --- a/test/commands/source/open.test.ts +++ b/test/commands/source/open.test.ts @@ -11,8 +11,8 @@ import * as sinon from 'sinon'; import { expect } from 'chai'; import { MetadataResolver, SourceComponent } from '@salesforce/source-deploy-retrieve'; import { fromStub, stubInterface, stubMethod } from '@salesforce/ts-sinon'; -import { IConfig } from '@oclif/config'; -import { AuthInfo, MyDomainResolver, Org, SfdxProject } from '@salesforce/core'; +import { Config } from '@oclif/core'; +import { AuthInfo, MyDomainResolver, Org, SfProject } from '@salesforce/core'; import { Open } from '../../../src/commands/force/source/open'; import { OpenCommandResult } from '../../../src/formatters/source/openResultFormatter'; @@ -64,7 +64,7 @@ describe('force:source:open', () => { const recordId = '0M0J0000000Q0vmKAC'; const frontDoorUrl = 'https://my-org.salesforce.com/secur/frontdoor.jsp?sid='; let getComponentsFromPathStub: sinon.SinonStub; - const oclifConfigStub = fromStub(stubInterface(sandbox)); + const oclifConfigStub = fromStub(stubInterface(sandbox)); class TestOpen extends Open { public async runIt() { @@ -74,7 +74,7 @@ describe('force:source:open', () => { public setOrg(org: Org) { this.org = org; } - public setProject(project: SfdxProject) { + public setProject(project: SfProject) { this.project = project; } } @@ -82,13 +82,13 @@ describe('force:source:open', () => { const runOpenCmd = async (params: string[]) => { const cmd = new TestOpen(params, oclifConfigStub); stubMethod(sandbox, cmd, 'assignProject').callsFake(() => { - const sfdxProjectStub = fromStub( - stubInterface(sandbox, { + const SfProjectStub = fromStub( + stubInterface(sandbox, { getDefaultPackage: () => ({ path: defaultDir }), getUniquePackageDirectories: () => [{ fullPath: defaultDir }], }) ); - cmd.setProject(sfdxProjectStub); + cmd.setProject(SfProjectStub); }); stubMethod(sandbox, cmd, 'assignOrg').callsFake(() => { const orgStub = fromStub( diff --git a/test/commands/source/report.test.ts b/test/commands/source/report.test.ts index 153b317a9..01f7da01d 100644 --- a/test/commands/source/report.test.ts +++ b/test/commands/source/report.test.ts @@ -10,8 +10,8 @@ import * as fs from 'fs'; import * as sinon from 'sinon'; import { assert, expect } from 'chai'; import { fromStub, spyMethod, stubInterface, stubMethod } from '@salesforce/ts-sinon'; -import { ConfigFile, Org, SfdxProject } from '@salesforce/core'; -import { IConfig } from '@oclif/config'; +import { ConfigFile, Org, SfProject } from '@salesforce/core'; +import { Config } from '@oclif/core'; import { UX } from '@salesforce/command'; import { MetadataApiDeploy } from '@salesforce/source-deploy-retrieve'; import { Report } from '../../../src/commands/force/source/deploy/report'; @@ -35,7 +35,7 @@ describe('force:source:report', () => { expectedResults.deploys = [deployResult.response]; // Stubs - const oclifConfigStub = fromStub(stubInterface(sandbox)); + const oclifConfigStub = fromStub(stubInterface(sandbox)); let checkDeployStatusStub: sinon.SinonStub; let uxLogStub: sinon.SinonStub; let pollStatusStub: sinon.SinonStub; @@ -51,7 +51,7 @@ describe('force:source:report', () => { public setOrg(org: Org) { this.org = org; } - public setProject(project: SfdxProject) { + public setProject(project: SfProject) { this.project = project; } @@ -64,12 +64,12 @@ describe('force:source:report', () => { const runReportCmd = async (params: string[]) => { const cmd = new TestReport(params, oclifConfigStub); stubMethod(sandbox, cmd, 'assignProject').callsFake(() => { - const sfdxProjectStub = fromStub( - stubInterface(sandbox, { + const SfProjectStub = fromStub( + stubInterface(sandbox, { getUniquePackageDirectories: () => [{ fullPath: defaultDir }], }) ); - cmd.setProject(sfdxProjectStub); + cmd.setProject(SfProjectStub); }); stubMethod(sandbox, cmd, 'assignOrg').callsFake(() => { const orgStub = fromStub( diff --git a/test/commands/source/retrieve.test.ts b/test/commands/source/retrieve.test.ts index 83ad392b9..870dfa992 100644 --- a/test/commands/source/retrieve.test.ts +++ b/test/commands/source/retrieve.test.ts @@ -16,9 +16,9 @@ import { MetadataType, RetrieveOptions, } from '@salesforce/source-deploy-retrieve'; -import { Lifecycle, Messages, Org, SfdxProject } from '@salesforce/core'; +import { Lifecycle, Messages, Org, SfProject } from '@salesforce/core'; import { fromStub, stubInterface, stubMethod } from '@salesforce/ts-sinon'; -import { IConfig } from '@oclif/config'; +import { Config } from '@oclif/core'; import { UX } from '@salesforce/command'; import { Retrieve } from '../../../src/commands/force/source/retrieve'; import { RetrieveCommandResult, RetrieveResultFormatter } from '../../../src/formatters/retrieveResultFormatter'; @@ -34,7 +34,7 @@ describe('force:source:retrieve', () => { const packageXml = 'package.xml'; const defaultPackagePath = 'defaultPackagePath'; - const oclifConfigStub = fromStub(stubInterface(sandbox)); + const oclifConfigStub = fromStub(stubInterface(sandbox)); const retrieveResult = getRetrieveResult('success'); const expectedResults: RetrieveCommandResult = { @@ -60,23 +60,23 @@ describe('force:source:retrieve', () => { public setOrg(org: Org) { this.org = org; } - public setProject(project: SfdxProject) { + public setProject(project: SfProject) { this.project = project; } } const runRetrieveCmd = async (params: string[]) => { const cmd = new TestRetrieve(params, oclifConfigStub); - stubMethod(sandbox, SfdxProject, 'resolveProjectPath').resolves(join('path', 'to', 'package')); + stubMethod(sandbox, SfProject, 'resolveProjectPath').resolves(join('path', 'to', 'package')); stubMethod(sandbox, cmd, 'assignProject').callsFake(() => { - const sfdxProjectStub = fromStub( - stubInterface(sandbox, { + const SfProjectStub = fromStub( + stubInterface(sandbox, { getDefaultPackage: () => ({ fullPath: defaultPackagePath }), getUniquePackageDirectories: () => [{ fullPath: defaultPackagePath }], resolveProjectConfig: resolveProjectConfigStub, }) ); - cmd.setProject(sfdxProjectStub); + cmd.setProject(SfProjectStub); }); stubMethod(sandbox, cmd, 'assignOrg').callsFake(() => { const orgStub = fromStub( diff --git a/test/coverageUtils.test.ts b/test/coverageUtils.test.ts index f4da43ca9..f35ca2132 100644 --- a/test/coverageUtils.test.ts +++ b/test/coverageUtils.test.ts @@ -185,8 +185,13 @@ describe('transform md RunTestResult', () => { let sandboxStub: SinonSandbox; beforeEach(async () => { sandboxStub = createSandbox(); - $$.setConfigStubContents('AuthInfoConfig', { - contents: await testData.getConfig(), + + $$.setConfigStubContents('StateAggregator', { + contents: { + orgs: { + [testData.username]: await testData.getConfig(), + }, + }, }); // Stub retrieveMaxApiVersion to get over "Domain Not Found: The org cannot be found" error sandboxStub.stub(Connection.prototype, 'retrieveMaxApiVersion').resolves('50.0'); diff --git a/test/formatters/deployResultFormatter.test.ts b/test/formatters/deployResultFormatter.test.ts index b44ba3e7b..366668380 100644 --- a/test/formatters/deployResultFormatter.test.ts +++ b/test/formatters/deployResultFormatter.test.ts @@ -94,7 +94,7 @@ describe('DeployResultFormatter', () => { const formatter = new DeployResultFormatter(logger, ux as UX, {}, deployResultSuccess); formatter.display(); expect(styledHeaderStub.calledOnce).to.equal(true); - expect(logStub.calledOnce).to.equal(true); + expect(logStub.callCount).to.equal(2); expect(tableStub.called).to.equal(true); expect(styledHeaderStub.firstCall.args[0]).to.contain('Deployed Source'); const fileResponses = deployResultSuccess.getFileResponses(); @@ -106,7 +106,7 @@ describe('DeployResultFormatter', () => { const formatter = new DeployResultFormatter(logger, ux as UX, {}, deployResultFailure); formatter.display(); expect(styledHeaderStub.calledOnce).to.equal(true); - expect(logStub.calledTwice).to.equal(true); + expect(logStub.callCount).to.equal(3); expect(tableStub.called).to.equal(true); expect(styledHeaderStub.args[0][0]).to.include('Component Failures [1]'); const fileResponses = deployResultFailure.getFileResponses(); @@ -118,7 +118,7 @@ describe('DeployResultFormatter', () => { const formatter = new DeployResultFormatter(logger, ux as UX, { verbose: true }, deployResultTestFailure); formatter.display(); expect(styledHeaderStub.calledThrice).to.equal(true); - expect(logStub.callCount).to.equal(7); + expect(logStub.callCount).to.equal(8); expect(tableStub.calledThrice).to.equal(true); expect(styledHeaderStub.args[0][0]).to.include('Component Failures [1]'); expect(styledHeaderStub.args[1][0]).to.include('Test Failures [1]'); @@ -129,7 +129,7 @@ describe('DeployResultFormatter', () => { const formatter = new DeployResultFormatter(logger, ux as UX, { verbose: true }, deployResultTestSuccess); formatter.display(); expect(styledHeaderStub.calledThrice).to.equal(true); - expect(logStub.callCount).to.equal(7); + expect(logStub.callCount).to.equal(8); expect(tableStub.calledThrice).to.equal(true); expect(styledHeaderStub.args[0][0]).to.include('Component Failures [1]'); expect(styledHeaderStub.args[1][0]).to.include('Test Success [1]'); @@ -145,7 +145,7 @@ describe('DeployResultFormatter', () => { ); formatter.display(); expect(styledHeaderStub.callCount).to.equal(4); - expect(logStub.callCount).to.equal(8); + expect(logStub.callCount).to.equal(9); expect(tableStub.callCount).to.equal(4); expect(styledHeaderStub.args[0][0]).to.include('Component Failures [1]'); expect(styledHeaderStub.args[1][0]).to.include('Test Failures [2]'); @@ -157,7 +157,7 @@ describe('DeployResultFormatter', () => { const formatter = new DeployResultFormatter(logger, ux as UX, { verbose: true }, deployResultPartialSuccess); formatter.display(); expect(styledHeaderStub.callCount, 'styledHeaderStub.callCount').to.equal(2); - expect(logStub.callCount, 'logStub.callCount').to.equal(3); + expect(logStub.callCount, 'logStub.callCount').to.equal(4); expect(tableStub.callCount, 'tableStub.callCount').to.equal(2); expect(styledHeaderStub.args[0][0]).to.include('Deployed Source'); expect(styledHeaderStub.args[1][0]).to.include('Component Failures'); diff --git a/test/nuts/REST/deploy.mpd.nut.ts b/test/nuts/REST/deploy.mpd.nut.ts index 0180e4ebb..96f519ae2 100644 --- a/test/nuts/REST/deploy.mpd.nut.ts +++ b/test/nuts/REST/deploy.mpd.nut.ts @@ -11,8 +11,9 @@ import { get } from '@salesforce/ts-types'; import { FileResponse } from '@salesforce/source-deploy-retrieve'; import { expect } from 'chai'; import { DeployCommandResult } from '../../../lib/formatters/deployResultFormatter'; +import { DeployReportCommandResult } from '../../../lib/formatters/deployReportResultFormatter'; -const EXECUTABLE = path.join(process.cwd(), 'bin', 'run'); +const EXECUTABLE = path.join(process.cwd(), 'bin', 'dev'); const repo = { name: 'sample-project-multiple-packages', @@ -157,22 +158,26 @@ context(`MPD REST Deploy NUTs [name: ${repo.name}] [exec: ${EXECUTABLE} ]`, () = it('should return an id immediately when --wait is set to 0 and deploy:report should report results', async () => { // deploy all metadata to the org so that we can run tests await testkit.deploy({ args: '--sourcepath force-app' }); - // running tests requires a special permission in the 'dreamhouse' permission set - await testkit.assignPermissionSet({ args: '--permsetname dreamhouse' }); const classes = path.join('foo-bar', 'app', 'classes'); const checkOnly = (await testkit.deploy({ - args: `--sourcepath ${classes} --testlevel RunLocalTests --checkonly --ignoreerrors`, - })) as { id: string; result: DeployCommandResult }; + args: `--sourcepath ${classes} --testlevel RunAllTestsInOrg --checkonly --ignoreerrors --wait 0`, + })) as { result: DeployCommandResult }; + + // quick deploy won't work unless the checkonly has finished successfully + const waitResult = (await testkit.deployReport({ + args: `--wait 60 --jobid ${checkOnly.result.id}`, + })) as unknown as { status: number; result: DeployReportCommandResult }; + + expect(waitResult.status, JSON.stringify(waitResult)).to.equal(0); const quickDeploy = (await testkit.deploy({ args: `--validateddeployrequestid ${checkOnly.result.id}`, - })) as { id: string; result: DeployCommandResult }; - const fileResponse = get(quickDeploy, 'result.deployedSource') as FileResponse[]; + })) as { result: DeployCommandResult }; expect(quickDeploy.result.status).to.equal('Succeeded'); - await testkit.expect.filesToBeDeployedViaResult(testkit.packageGlobs, [], fileResponse); + await testkit.expect.filesToBeDeployedViaResult(testkit.packageGlobs, [], quickDeploy.result.deployedSource); }); }); }); diff --git a/test/nuts/REST/deploy.nut.ts b/test/nuts/REST/deploy.nut.ts index 66ceb32cd..53d652d23 100644 --- a/test/nuts/REST/deploy.nut.ts +++ b/test/nuts/REST/deploy.nut.ts @@ -10,8 +10,9 @@ import { SourceTestkit } from '@salesforce/source-testkit'; import { get } from '@salesforce/ts-types'; import { FileResponse } from '@salesforce/source-deploy-retrieve'; import { expect } from 'chai'; +import { DeployReportCommandResult } from '../../../lib/formatters/deployReportResultFormatter'; import { DeployCommandResult } from '../../../lib/formatters/deployResultFormatter'; -const EXECUTABLE = path.join(process.cwd(), 'bin', 'run'); +const EXECUTABLE = path.join(process.cwd(), 'bin', 'dev'); const repo = { name: 'dreamhouse-lwc', @@ -124,11 +125,18 @@ context(`REST Deploy NUTs [name: ${repo.name}] [exec: ${EXECUTABLE} ]`, () => { const checkOnly = (await testkit.deploy({ args: '--sourcepath force-app/main/default/classes --testlevel RunLocalTests --checkonly --ignoreerrors --wait 0', - })) as { id: string; result: DeployCommandResult }; + })) as { result: DeployCommandResult }; + + // quick deploy won't work unless the checkonly has finished successfully + const waitResult = (await testkit.deployReport({ + args: `--wait 60 --jobid ${checkOnly.result.id}`, + })) as unknown as { status: number; result: DeployReportCommandResult }; + + expect(waitResult.status, JSON.stringify(waitResult)).to.equal(0); const quickDeploy = (await testkit.deploy({ args: `--validateddeployrequestid ${checkOnly.result.id}`, - })) as { id: string; result: DeployCommandResult }; + })) as { result: DeployCommandResult }; const fileResponse = get(quickDeploy, 'result.deployedSource') as FileResponse[]; expect(quickDeploy.result.status).to.equal('Succeeded'); diff --git a/test/nuts/delete.nut.ts b/test/nuts/delete.nut.ts index e2255074c..745927665 100644 --- a/test/nuts/delete.nut.ts +++ b/test/nuts/delete.nut.ts @@ -7,7 +7,6 @@ import * as fs from 'fs'; import * as path from 'path'; -import * as os from 'os'; import { expect } from 'chai'; import { execCmd } from '@salesforce/cli-plugins-testkit'; import { SourceTestkit } from '@salesforce/source-testkit'; @@ -16,7 +15,6 @@ import { FileResponse } from '@salesforce/source-deploy-retrieve'; import { isNameObsolete } from './shared/isNameObsolete'; describe('source:delete NUTs', () => { - const executable = path.join(process.cwd(), 'bin', 'run'); let testkit: SourceTestkit; const queryOrgAndFS = async (name: string, fsPath: string): Promise => { @@ -31,18 +29,18 @@ describe('source:delete NUTs', () => { const apexName = 'myApexClass'; const output = path.join('force-app', 'main', 'default', 'classes'); const pathToClass = path.join(testkit.projectDir, output, `${apexName}.cls`); - execCmd(`force:apex:class:create --classname ${apexName} --outputdir ${output}`); - execCmd(`force:source:deploy -m ApexClass:${apexName}`); + execCmd(`force:apex:class:create --classname ${apexName} --outputdir ${output}`, { ensureExitCode: 0 }); + execCmd(`force:source:deploy -m ApexClass:${apexName}`, { ensureExitCode: 0 }); return { apexName, output, pathToClass }; }; before(async () => { testkit = await SourceTestkit.create({ nut: __filename, - executable: os.platform() === 'win32' ? executable.replace(/\\/g, '\\\\') : executable, + executable: path.join(process.cwd(), 'bin', 'dev'), repository: 'https://github.com/trailheadapps/dreamhouse-lwc.git', }); - execCmd('force:source:deploy --sourcepath force-app'); + execCmd('force:source:deploy --sourcepath force-app', { ensureExitCode: 0 }); }); after(async () => { diff --git a/test/nuts/deployDestructive.nut.ts b/test/nuts/deployDestructive.nut.ts index 1fc0f53bc..10efb0975 100644 --- a/test/nuts/deployDestructive.nut.ts +++ b/test/nuts/deployDestructive.nut.ts @@ -6,36 +6,36 @@ */ import * as path from 'path'; -import * as os from 'os'; import { expect } from 'chai'; import { execCmd } from '@salesforce/cli-plugins-testkit'; import { SourceTestkit } from '@salesforce/source-testkit'; import { isNameObsolete } from './shared/isNameObsolete'; describe('source:deploy --destructive NUTs', () => { - const executable = path.join(process.cwd(), 'bin', 'run'); let testkit: SourceTestkit; const createApexClass = (apexName = 'myApexClass') => { // create and deploy an ApexClass that can be deleted without dependency issues const output = path.join('force-app', 'main', 'default', 'classes'); const pathToClass = path.join(testkit.projectDir, output, `${apexName}.cls`); - execCmd(`force:apex:class:create --classname ${apexName} --outputdir ${output}`); - execCmd(`force:source:deploy -m ApexClass:${apexName}`); + execCmd(`force:apex:class:create --classname ${apexName} --outputdir ${output}`, { ensureExitCode: 0 }); + execCmd(`force:source:deploy -m ApexClass:${apexName}`, { ensureExitCode: 0 }); return { apexName, output, pathToClass }; }; const createManifest = (metadata: string, manifesttype: string) => { - execCmd(`force:source:manifest:create --metadata ${metadata} --manifesttype ${manifesttype}`); + execCmd(`force:source:manifest:create --metadata ${metadata} --manifesttype ${manifesttype}`, { + ensureExitCode: 0, + }); }; before(async () => { testkit = await SourceTestkit.create({ nut: __filename, - executable: os.platform() === 'win32' ? executable.replace(/\\/g, '\\\\') : executable, + executable: path.join(process.cwd(), 'bin', 'dev'), repository: 'https://github.com/trailheadapps/dreamhouse-lwc.git', }); - execCmd('force:source:deploy --sourcepath force-app'); + execCmd('force:source:deploy --sourcepath force-app', { ensureExitCode: 0 }); }); after(async () => { diff --git a/test/nuts/mdapi.nut.ts b/test/nuts/mdapi.nut.ts index 9636ac7ef..af0e2c233 100644 --- a/test/nuts/mdapi.nut.ts +++ b/test/nuts/mdapi.nut.ts @@ -11,7 +11,7 @@ import { exec } from 'shelljs'; import { expect } from 'chai'; import { execCmd, TestSession } from '@salesforce/cli-plugins-testkit'; import { ComponentSet, SourceComponent } from '@salesforce/source-deploy-retrieve'; -import { DescribeMetadataResult } from 'jsforce'; +import { DescribeMetadataResult } from 'jsforce/api/metadata'; import { create as createArchive } from 'archiver'; import { RetrieveCommandAsyncResult, RetrieveCommandResult } from 'src/formatters/mdapi/retrieveResultFormatter'; import { ConvertCommandResult } from '../../src/formatters/mdapi/convertResultFormatter'; @@ -427,9 +427,12 @@ describe('mdapi NUTs', () => { describe('Test stash', () => { describe('Deploy zip and report using soap with non default username', () => { it('should deploy zip file', () => { - execCmd('force:mdapi:deploy --zipfile mdapiOut.zip --json --soapdeploy -u nonDefaultOrg', { - ensureExitCode: 0, - }); + execCmd( + 'force:mdapi:deploy --zipfile mdapiOut.zip --json --soapdeploy -u nonDefaultOrg --testlevel RunAllTestsInOrg', + { + ensureExitCode: 0, + } + ); }); it('async report from stash', () => { @@ -463,7 +466,7 @@ describe('mdapi NUTs', () => { // has the basic table output expect(reportCommandResponse).to.include('Deployed Source'); // check for coverage/junit output - const reportFiles = fs.readdirSync('resultsdir'); + const reportFiles = fs.readdirSync(path.join(session.project.dir, 'resultsdir')); expect(reportFiles).to.include('coverage'); expect(reportFiles).to.include('junit'); }); diff --git a/test/nuts/seeds/convert.seed.ts b/test/nuts/seeds/convert.seed.ts index f43b9dfca..7f8b7ad22 100644 --- a/test/nuts/seeds/convert.seed.ts +++ b/test/nuts/seeds/convert.seed.ts @@ -4,12 +4,11 @@ * Licensed under the BSD 3-Clause license. * For full license text, see LICENSE.txt file in the repo root or https://opensource.org/licenses/BSD-3-Clause */ - +import * as fs from 'fs'; import * as path from 'path'; import * as shelljs from 'shelljs'; import { getString } from '@salesforce/ts-types'; import { SourceTestkit } from '@salesforce/source-testkit'; -import { fs } from '@salesforce/core'; import { Result } from '@salesforce/source-testkit/lib/types'; import { TEST_REPOS_MAP } from '../testMatrix'; @@ -110,7 +109,7 @@ context('Convert NUTs [name: %REPO_NAME%] [exec: %EXECUTABLE%]', () => { id: string; result: { id: string }; }>; - testkit.expect.errorToHaveName(convert, 'Error'); + testkit.expect.errorToHaveName(convert, 'SfError'); }); }); @@ -142,7 +141,7 @@ context('Convert NUTs [name: %REPO_NAME%] [exec: %EXECUTABLE%]', () => { id: string; result: { id: string }; }>; - const expectedError = testkit.isLocalExecutable() ? 'SfdxError' : 'UnsupportedType'; + const expectedError = testkit.isLocalExecutable() ? 'SfError' : 'UnsupportedType'; testkit.expect.errorToHaveName(convert, expectedError); }); }); @@ -176,7 +175,7 @@ context('Convert NUTs [name: %REPO_NAME%] [exec: %EXECUTABLE%]', () => { id: string; result: { id: string }; }>; - const expectedError = testkit.isLocalExecutable() ? 'SfdxError' : 'SourcePathInvalid'; + const expectedError = testkit.isLocalExecutable() ? 'SfError' : 'SourcePathInvalid'; testkit.expect.errorToHaveName(convert, expectedError); }); }); diff --git a/test/nuts/seeds/deploy.async.seed.ts b/test/nuts/seeds/deploy.async.seed.ts index 725c441b8..472253292 100644 --- a/test/nuts/seeds/deploy.async.seed.ts +++ b/test/nuts/seeds/deploy.async.seed.ts @@ -40,14 +40,14 @@ context('Async Deploy NUTs [name: %REPO_NAME%] [exec: %EXECUTABLE%]', () => { } }); - describe.skip('async deploy', () => { + describe('async deploy', () => { it('should return an id immediately when --wait is set to 0 and deploy:report should report results', async () => { // delete the lwc test stubs which will cause errors with the source tracking/globbing await testkit.deleteGlobs(['force-app/test/**/*']); - const deploy = (await testkit.deploy({ + const deploy = await testkit.deploy({ args: `--sourcepath ${testkit.packageNames.join(',')} --wait 0`, - })) as Result<{ id: string; result: { id: string } }>; + }); // test the stashed deploy id const report = (await testkit.deployReport({ args: '--coverageformatters clover --junit', @@ -75,9 +75,9 @@ context('Async Deploy NUTs [name: %REPO_NAME%] [exec: %EXECUTABLE%]', () => { it('should return an id immediately when --wait is set to 0 and deploy:cancel should cancel the deploy', async () => { await testkit.deleteGlobs(['force-app/test/**/*']); - const deploy = (await testkit.deploy({ + const deploy = await testkit.deploy({ args: `--sourcepath ${testkit.packageNames.join(',')} --wait 0`, - })) as Result<{ id: string; result: { id: string } }>; + }); testkit.expect.toHaveProperty(deploy.result, 'id'); const cancel = execCmd( diff --git a/test/nuts/seeds/deploy.manifest.seed.ts b/test/nuts/seeds/deploy.manifest.seed.ts index d4a0b796d..fae7f788d 100644 --- a/test/nuts/seeds/deploy.manifest.seed.ts +++ b/test/nuts/seeds/deploy.manifest.seed.ts @@ -26,7 +26,9 @@ context('Deploy manifest NUTs [name: %REPO_NAME%] [exec: %EXECUTABLE%]', () => { }); // some deploys reference other metadata not included in the deploy, if it's not already in the org it will fail await testkit.deploy({ args: `--sourcepath ${testkit.packageNames.join(',')}` }); - await testkit.assignPermissionSet({ args: '--permsetname dreamhouse' }); + if (REPO.gitUrl.includes('dreamhouse')) { + await testkit.assignPermissionSet({ args: '--permsetname dreamhouse' }); + } }); after(async () => { @@ -55,7 +57,7 @@ context('Deploy manifest NUTs [name: %REPO_NAME%] [exec: %EXECUTABLE%]', () => { it('should throw an error if the package.xml is not valid', async () => { const deploy = await testkit.deploy({ args: '--manifest DOES_NOT_EXIST.xml', exitCode: 1 }); - const expectedError = testkit.isLocalExecutable() ? 'Error' : 'InvalidManifestError'; + const expectedError = testkit.isLocalExecutable() ? 'SfError' : 'InvalidManifestError'; testkit.expect.errorToHaveName(deploy, expectedError); }); }); diff --git a/test/nuts/seeds/deploy.metadata.seed.ts b/test/nuts/seeds/deploy.metadata.seed.ts index ff81fb644..c1ee190b4 100644 --- a/test/nuts/seeds/deploy.metadata.seed.ts +++ b/test/nuts/seeds/deploy.metadata.seed.ts @@ -25,7 +25,10 @@ context('Deploy metadata NUTs [name: %REPO_NAME%] [exec: %EXECUTABLE%]', () => { }); // some deploys reference other metadata not included in the deploy, if it's not already in the org it will fail await testkit.deploy({ args: `--sourcepath ${testkit.packageNames.join(',')}` }); - await testkit.assignPermissionSet({ args: '--permsetname dreamhouse' }); + // permset is only present in dreamhouse, not mpd + if (REPO.gitUrl.includes('dreamhouse')) { + await testkit.assignPermissionSet({ args: '--permsetname dreamhouse' }); + } }); after(async () => { @@ -50,7 +53,7 @@ context('Deploy metadata NUTs [name: %REPO_NAME%] [exec: %EXECUTABLE%]', () => { it('should throw an error if the metadata is not valid', async () => { const deploy = await testkit.deploy({ args: '--metadata DOES_NOT_EXIST', exitCode: 1 }); - const expectedError = testkit.isLocalExecutable() ? 'SfdxError' : 'UnsupportedType'; + const expectedError = testkit.isLocalExecutable() ? 'SfError' : 'UnsupportedType'; testkit.expect.errorToHaveName(deploy, expectedError); }); diff --git a/test/nuts/seeds/deploy.quick.seed.ts b/test/nuts/seeds/deploy.quick.seed.ts index 51981aa30..adca637e7 100644 --- a/test/nuts/seeds/deploy.quick.seed.ts +++ b/test/nuts/seeds/deploy.quick.seed.ts @@ -6,7 +6,6 @@ */ import { SourceTestkit } from '@salesforce/source-testkit'; -import { Result } from '@salesforce/source-testkit/lib/types'; import { get } from '@salesforce/ts-types'; import { FileResponse } from '@salesforce/source-deploy-retrieve'; import { TEST_REPOS_MAP } from '../testMatrix'; @@ -24,11 +23,6 @@ context('Quick Deploy NUTs [name: %REPO_NAME%] [exec: %EXECUTABLE%]', () => { executable: EXECUTABLE, nut: __filename, }); - - // - // *** REMOVE THIS DEPLOY WHEN --checkonly SERVER BUG IS FIXED *** 2/23/2022 - // - await testkit.deploy({ args: `--sourcepath ${testkit.packageNames.join(',')}` }); }); after(async () => { @@ -44,15 +38,15 @@ context('Quick Deploy NUTs [name: %REPO_NAME%] [exec: %EXECUTABLE%]', () => { it('should deploy validated (checkonly) deploy', async () => { // delete the lwc test stubs which will cause errors with the source tracking/globbing await testkit.deleteGlobs(['force-app/test/**/*']); - const checkOnly = (await testkit.deploy({ + const checkOnly = await testkit.deploy({ args: `--sourcepath ${testkit.packageNames.join(',')} --testlevel RunLocalTests --checkonly --ignoreerrors`, - })) as Result<{ id: string; result: { id: string } }>; + }); testkit.expect.toHaveProperty(checkOnly.result, 'id'); await testkit.expect.filesToNotBeDeployed(testkit.packageGlobs); - const quickDeploy = (await testkit.deploy({ + const quickDeploy = await testkit.deploy({ args: `--validateddeployrequestid ${checkOnly.result.id}`, - })) as Result<{ id: string; result: { id: string } }>; + }); testkit.expect.toHavePropertyAndValue(quickDeploy.result, 'status', 'Succeeded'); const fileResponse = get(quickDeploy, 'result.deployedSource') as FileResponse[]; diff --git a/test/nuts/seeds/deploy.sourcepath.seed.ts b/test/nuts/seeds/deploy.sourcepath.seed.ts index 01ba3d27e..2f0e7b299 100644 --- a/test/nuts/seeds/deploy.sourcepath.seed.ts +++ b/test/nuts/seeds/deploy.sourcepath.seed.ts @@ -49,7 +49,7 @@ context('Deploy sourcepath NUTs [name: %REPO_NAME%] [exec: %EXECUTABLE%]', () => it('should throw an error if the sourcepath is not valid', async () => { const deploy = await testkit.deploy({ args: '--sourcepath DOES_NOT_EXIST', exitCode: 1 }); - const expectedError = testkit.isLocalExecutable() ? 'SfdxError' : 'SourcePathInvalid'; + const expectedError = testkit.isLocalExecutable() ? 'SfError' : 'SourcePathInvalid'; testkit.expect.errorToHaveName(deploy, expectedError); }); }); diff --git a/test/nuts/seeds/retrieve.manifest.seed.ts b/test/nuts/seeds/retrieve.manifest.seed.ts index b740c4591..ace71e715 100644 --- a/test/nuts/seeds/retrieve.manifest.seed.ts +++ b/test/nuts/seeds/retrieve.manifest.seed.ts @@ -58,7 +58,7 @@ context('Retrieve manifest NUTs [name: %REPO_NAME%] [exec: %EXECUTABLE%]', () => args: '--manifest DOES_NOT_EXIST.xml', exitCode: 1, })) as JsonMap; - const expectedError = testkit.isLocalExecutable() ? 'Error' : 'InvalidManifestError'; + const expectedError = testkit.isLocalExecutable() ? 'SfError' : 'InvalidManifestError'; testkit.expect.errorToHaveName(retrieve, expectedError); }); }); diff --git a/test/nuts/seeds/retrieve.metadata.seed.ts b/test/nuts/seeds/retrieve.metadata.seed.ts index 2e3c303ad..e00666347 100644 --- a/test/nuts/seeds/retrieve.metadata.seed.ts +++ b/test/nuts/seeds/retrieve.metadata.seed.ts @@ -72,7 +72,7 @@ context('Retrieve metadata NUTs [name: %REPO_NAME%] [exec: %EXECUTABLE%]', () => it('should throw an error if the metadata is not valid', async () => { const retrieve = (await testkit.retrieve({ args: '--metadata DOES_NOT_EXIST', exitCode: 1 })) as JsonMap; - const expectedError = testkit.isLocalExecutable() ? 'SfdxError' : 'UnsupportedType'; + const expectedError = testkit.isLocalExecutable() ? 'SfError' : 'UnsupportedType'; testkit.expect.errorToHaveName(retrieve, expectedError); }); }); diff --git a/test/nuts/seeds/retrieve.sourcepath.seed.ts b/test/nuts/seeds/retrieve.sourcepath.seed.ts index ff8eaa477..0a1b31e9b 100644 --- a/test/nuts/seeds/retrieve.sourcepath.seed.ts +++ b/test/nuts/seeds/retrieve.sourcepath.seed.ts @@ -49,7 +49,7 @@ context('Retrieve Sourcepath NUTs [name: %REPO_NAME%] [exec: %EXECUTABLE%]', () it('should throw an error if the sourcepath is not valid', async () => { const retrieve = (await testkit.retrieve({ args: '--sourcepath DOES_NOT_EXIST', exitCode: 1 })) as JsonMap; - const expectedError = testkit.isLocalExecutable() ? 'SfdxError' : 'UnexpectedFileFound'; + const expectedError = testkit.isLocalExecutable() ? 'SfError' : 'UnexpectedFileFound'; testkit.expect.errorToHaveName(retrieve, expectedError); }); }); diff --git a/test/nuts/testMatrix.ts b/test/nuts/testMatrix.ts index ad0cc524a..2b2248fd9 100644 --- a/test/nuts/testMatrix.ts +++ b/test/nuts/testMatrix.ts @@ -16,7 +16,7 @@ const env = new Env(); */ export const EXECUTABLES = [ { - path: path.join(process.cwd(), 'bin', 'run'), // path to the plugin's bin/run executable + path: path.join(process.cwd(), 'bin', 'dev'), // path to the plugin's executable skip: !env.getBoolean('PLUGIN_SOURCE_TEST_BIN_RUN', true), }, ]; diff --git a/test/nuts/trackingCommands/basics.nut.ts b/test/nuts/trackingCommands/basics.nut.ts index a16cb27fc..b8610cd70 100644 --- a/test/nuts/trackingCommands/basics.nut.ts +++ b/test/nuts/trackingCommands/basics.nut.ts @@ -14,6 +14,7 @@ import { ComponentStatus, FileResponse } from '@salesforce/source-deploy-retriev import { PushResponse } from '../../../src/formatters/source/pushResultFormatter'; import { StatusResult } from '../../../src/formatters/source/statusFormatter'; import { PullResponse } from '../../../src/formatters/source/pullFormatter'; +import { itemsInEBikesPush } from './consts'; const filterIgnored = (r: StatusResult): boolean => r.ignored !== true; @@ -48,14 +49,14 @@ describe('end-to-end-test for tracking with an org (single packageDir)', () => { expect(result.every((row) => row.type && row.fullName)).to.equal(true); }); it('pushes the initial metadata to the org', () => { - const result = execCmd('force:source:push --json', { - ensureExitCode: 0, - }).jsonOutput.result.pushedSource; - expect(result).to.be.an.instanceof(Array); - expect(result, JSON.stringify(result)).to.have.lengthOf(230); + const resp = execCmd('force:source:push --json'); + expect(resp.jsonOutput?.status, JSON.stringify(resp)).to.equal(0); + const pushedSource = resp.jsonOutput.result.pushedSource; + expect(pushedSource).to.be.an.instanceof(Array); + expect(pushedSource, JSON.stringify(pushedSource)).to.have.lengthOf(itemsInEBikesPush); expect( - result.every((r) => r.state !== ComponentStatus.Failed), - JSON.stringify(result.filter((r) => r.state === ComponentStatus.Failed)) + pushedSource.every((r) => r.state !== ComponentStatus.Failed), + JSON.stringify(pushedSource.filter((r) => r.state === ComponentStatus.Failed)) ).to.equal(true); }); it('sees no local changes (all were committed from push), but profile updated in remote', () => { @@ -153,7 +154,8 @@ describe('end-to-end-test for tracking with an org (single packageDir)', () => { const failure = execCmd(`force:source:status -u ${hubUsername} --remote --json`, { ensureExitCode: 1, }).jsonOutput as unknown as { name: string }; - expect(failure.name).to.equal('NonSourceTrackedOrgError'); + // command5 is removing `Error` from the end of the error names. + expect(failure.name).to.include('NonSourceTrackedOrg'); }); describe('push failures', () => { diff --git a/test/nuts/trackingCommands/conflicts.nut.ts b/test/nuts/trackingCommands/conflicts.nut.ts index 5bfa71baa..a849ff70d 100644 --- a/test/nuts/trackingCommands/conflicts.nut.ts +++ b/test/nuts/trackingCommands/conflicts.nut.ts @@ -18,6 +18,7 @@ import { ComponentStatus } from '@salesforce/source-deploy-retrieve'; import { PushResponse } from '../../../src/formatters/source/pushResultFormatter'; import { StatusResult } from '../../../src/formatters/source/statusFormatter'; import { PullResponse } from '../../../src/formatters/source/pullFormatter'; +import { itemsInEBikesPush } from './consts'; let session: TestSession; describe('conflict detection and resolution', () => { @@ -36,14 +37,14 @@ describe('conflict detection and resolution', () => { }); it('pushes to initiate the remote', () => { - // This would go in setupCommands but we want it to use the bin/run version - const pushResult = execCmd('force:source:push --json', { - ensureExitCode: 0, - }).jsonOutput.result.pushedSource; - expect(pushResult, JSON.stringify(pushResult)).to.have.lengthOf(230); + // This would go in setupCommands but we want it to use the bin/dev version + const pushResult = execCmd('force:source:push --json'); + expect(pushResult.jsonOutput?.status, JSON.stringify(pushResult)).equals(0); + const pushedSource = pushResult.jsonOutput.result.pushedSource; + expect(pushedSource, JSON.stringify(pushedSource)).to.have.lengthOf(itemsInEBikesPush); expect( - pushResult.every((r) => r.state !== ComponentStatus.Failed), - JSON.stringify(pushResult.filter((r) => r.state === ComponentStatus.Failed)) + pushedSource.every((r) => r.state !== ComponentStatus.Failed), + JSON.stringify(pushedSource.filter((r) => r.state === ComponentStatus.Failed)) ).to.equal(true); }); diff --git a/test/nuts/trackingCommands/consts.ts b/test/nuts/trackingCommands/consts.ts new file mode 100644 index 000000000..a6cc87f0d --- /dev/null +++ b/test/nuts/trackingCommands/consts.ts @@ -0,0 +1,7 @@ +/* + * Copyright (c) 2020, salesforce.com, inc. + * All rights reserved. + * Licensed under the BSD 3-Clause license. + * For full license text, see LICENSE.txt file in the repo root or https://opensource.org/licenses/BSD-3-Clause + */ +export const itemsInEBikesPush = 232; diff --git a/test/nuts/trackingCommands/lwc.nut.ts b/test/nuts/trackingCommands/lwc.nut.ts index 1becba35b..ff2287918 100644 --- a/test/nuts/trackingCommands/lwc.nut.ts +++ b/test/nuts/trackingCommands/lwc.nut.ts @@ -37,9 +37,8 @@ describe('lwc', () => { }); it('pushes the repo to get source tracking started', () => { - execCmd('force:source:push --json', { - ensureExitCode: 0, - }); + const resp = execCmd('force:source:push --json'); + expect(resp.jsonOutput?.status, JSON.stringify(resp)).equals(0); }); it('sees lwc css changes in local status', async () => { diff --git a/test/nuts/trackingCommands/mpd-sequential.nut.ts b/test/nuts/trackingCommands/mpd-sequential.nut.ts index 8d68859f5..b73c5fe80 100644 --- a/test/nuts/trackingCommands/mpd-sequential.nut.ts +++ b/test/nuts/trackingCommands/mpd-sequential.nut.ts @@ -6,7 +6,8 @@ */ import * as path from 'path'; -import { AuthInfo, Connection, fs } from '@salesforce/core'; +import * as fs from 'fs'; +import { AuthInfo, Connection } from '@salesforce/core'; import { expect } from 'chai'; import { execCmd, TestSession } from '@salesforce/cli-plugins-testkit'; import { PushResponse } from '../../../src/formatters/source/pushResultFormatter'; @@ -24,14 +25,16 @@ describe('multiple pkgDirs deployed sequentially', () => { }); // set `pushPackageDirectoriesSequentially` - const originalProject = (await fs.readJson(path.join(session.project.dir, 'sfdx-project.json'))) as Record< - string, - unknown - >; - await fs.writeJson(path.join(session.project.dir, 'sfdx-project.json'), { - ...originalProject, - pushPackageDirectoriesSequentially: true, - }); + const originalProject = JSON.parse( + await fs.promises.readFile(path.join(session.project.dir, 'sfdx-project.json'), 'utf8') + ) as Record; + await fs.promises.writeFile( + path.join(session.project.dir, 'sfdx-project.json'), + JSON.stringify({ + ...originalProject, + pushPackageDirectoriesSequentially: true, + }) + ); conn = await Connection.create({ authInfo: await AuthInfo.create({ diff --git a/test/nuts/trackingCommands/remoteChanges.nut.ts b/test/nuts/trackingCommands/remoteChanges.nut.ts index b9bedbbc7..261356ff6 100644 --- a/test/nuts/trackingCommands/remoteChanges.nut.ts +++ b/test/nuts/trackingCommands/remoteChanges.nut.ts @@ -19,6 +19,7 @@ import { ComponentStatus } from '@salesforce/source-deploy-retrieve'; import { PushResponse } from '../../../src/formatters/source/pushResultFormatter'; import { StatusResult } from '../../../src/formatters/source/statusFormatter'; import { PullResponse } from '../../../src/formatters/source/pullFormatter'; +import { itemsInEBikesPush } from './consts'; let session: TestSession; let conn: Connection; @@ -47,13 +48,13 @@ describe('remote changes', () => { describe('remote changes: delete', () => { it('pushes to initiate the remote', () => { - const pushResult = execCmd('force:source:push --json', { - ensureExitCode: 0, - }).jsonOutput.result.pushedSource; - expect(pushResult, JSON.stringify(pushResult)).to.have.lengthOf(230); + const pushResult = execCmd('force:source:push --json'); + expect(pushResult.jsonOutput?.status, JSON.stringify(pushResult)).equals(0); + const pushedSource = pushResult.jsonOutput.result.pushedSource; + expect(pushedSource, JSON.stringify(pushedSource)).to.have.lengthOf(itemsInEBikesPush); expect( - pushResult.every((r) => r.state !== ComponentStatus.Failed), - JSON.stringify(pushResult) + pushedSource.every((r) => r.state !== ComponentStatus.Failed), + JSON.stringify(pushedSource.filter((r) => r.state === ComponentStatus.Failed)) ).to.equal(true); }); diff --git a/test/nuts/trackingCommands/resetClear.nut.ts b/test/nuts/trackingCommands/resetClear.nut.ts index e106ed2f2..a5940611b 100644 --- a/test/nuts/trackingCommands/resetClear.nut.ts +++ b/test/nuts/trackingCommands/resetClear.nut.ts @@ -46,7 +46,7 @@ describe('reset and clear', () => { setupCommands: [`sfdx force:org:create -d 1 -s -f ${path.join('config', 'project-scratch-def.json')}`], }); orgId = (session.setup[0] as { result: { orgId: string } }).result?.orgId; - trackingFileFolder = path.join(session?.project.dir, '.sfdx', 'orgs', orgId); + trackingFileFolder = path.join(session?.project.dir, '.sf', 'orgs', orgId); conn = await Connection.create({ authInfo: await AuthInfo.create({ username: (session.setup[0] as { result: { username: string } }).result?.username, diff --git a/test/tsconfig.json b/test/tsconfig.json index 9d7255d87..d7912bcca 100644 --- a/test/tsconfig.json +++ b/test/tsconfig.json @@ -5,9 +5,7 @@ "skipLibCheck": true, "baseUrl": "..", "paths": { - "@salesforce/kit": ["node_modules/@salesforce/kit"], - "@salesforce/source-deploy-retrieve": ["node_modules/@salesforce/source-deploy-retrieve"], - "@salesforce/core": ["node_modules/@salesforce/core"] + "@salesforce/kit": ["node_modules/@salesforce/kit"] } } } diff --git a/tsconfig.json b/tsconfig.json index 27a31fd07..97bbdc1c8 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -5,10 +5,7 @@ "rootDir": "src", "baseUrl": ".", "paths": { - "@oclif/config": ["node_modules/@oclif/config"], - "@salesforce/kit": ["node_modules/@salesforce/kit"], - "@salesforce/source-deploy-retrieve": ["node_modules/@salesforce/source-deploy-retrieve"], - "@salesforce/core": ["node_modules/@salesforce/core"] + "@salesforce/kit": ["node_modules/@salesforce/kit"] }, "skipLibCheck": true }, diff --git a/yarn.lock b/yarn.lock index 8706cb8cb..0223465d9 100644 --- a/yarn.lock +++ b/yarn.lock @@ -159,6 +159,21 @@ resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.16.12.tgz#9474794f9a650cf5e2f892444227f98e28cdf8b6" integrity sha512-VfaV15po8RiZssrkPweyvbGVSe4x2y+aciFCgn0n0/SJMR22cwofRV1mtnJQYcSB1wUTaA/X1LnA3es66MCO5A== +"@babel/runtime-corejs3@^7.12.5": + version "7.17.9" + resolved "https://registry.yarnpkg.com/@babel/runtime-corejs3/-/runtime-corejs3-7.17.9.tgz#3d02d0161f0fbf3ada8e88159375af97690f4055" + integrity sha512-WxYHHUWF2uZ7Hp1K+D1xQgbgkGUfA+5UPOegEXGt2Y5SMog/rYCVaifLZDbw8UkNXozEqqrZTy6bglL7xTaCOw== + dependencies: + core-js-pure "^3.20.2" + regenerator-runtime "^0.13.4" + +"@babel/runtime@^7.12.5": + version "7.17.9" + resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.17.9.tgz#d19fbf802d01a8cb6cf053a64e472d42c434ba72" + integrity sha512-lSiBBvodq29uShpWGNbgFdKYNiFDo5/HIYsaCEY9ff4sb10x9jizo2+pRrSyF4jKZCXqgzuqBOQKbUm90gQwJg== + dependencies: + regenerator-runtime "^0.13.4" + "@babel/template@^7.16.7": version "7.16.7" resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.16.7.tgz#8d126c8701fde4d66b264b3eba3d96f07666d155" @@ -426,6 +441,11 @@ minimatch "^3.0.4" strip-json-comments "^3.1.1" +"@gar/promisify@^1.0.1", "@gar/promisify@^1.1.3": + version "1.1.3" + resolved "https://registry.yarnpkg.com/@gar/promisify/-/promisify-1.1.3.tgz#555193ab2e3bb3b6adc3d551c9c030d9e860daf6" + integrity sha512-k2Ty1JcVojjJFwrg/ThKi2ujJ7XNLYaFGNB/bWT9wGR+oSMJHMa5w+CUq6p/pVrKeNNgA7pCqEcjSnHVoqJQFw== + "@humanwhocodes/config-array@^0.5.0": version "0.5.0" resolved "https://registry.yarnpkg.com/@humanwhocodes/config-array/-/config-array-0.5.0.tgz#1407967d4c6eecd7388f83acf1eaf4d0c6e58ef9" @@ -440,6 +460,11 @@ resolved "https://registry.yarnpkg.com/@humanwhocodes/object-schema/-/object-schema-1.2.1.tgz#b520529ec21d8e5945a1851dfd1c32e94e39ff45" integrity sha512-ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA== +"@isaacs/string-locale-compare@^1.1.0": + version "1.1.0" + resolved "https://registry.yarnpkg.com/@isaacs/string-locale-compare/-/string-locale-compare-1.1.0.tgz#291c227e93fd407a96ecd59879a35809120e432b" + integrity sha512-SQ7Kzhh9+D+ZW9MA0zkYv3VXhIDNx+LzM6EJ+/65I3QY+enU6Itte7E5XX7EWrqLW2FN4n06GWzBnPoC3th2aQ== + "@istanbuljs/load-nyc-config@^1.0.0": version "1.1.0" resolved "https://registry.yarnpkg.com/@istanbuljs/load-nyc-config/-/load-nyc-config-1.1.0.tgz#fd3db1d59ecf7cf121e80650bb86712f9b55eced" @@ -490,6 +515,163 @@ "@nodelib/fs.scandir" "2.1.5" fastq "^1.6.0" +"@npmcli/arborist@^4.0.4": + version "4.3.1" + resolved "https://registry.yarnpkg.com/@npmcli/arborist/-/arborist-4.3.1.tgz#a08cddce3339882f688c1dea1651f6971e781c44" + integrity sha512-yMRgZVDpwWjplorzt9SFSaakWx6QIK248Nw4ZFgkrAy/GvJaFRaSZzE6nD7JBK5r8g/+PTxFq5Wj/sfciE7x+A== + dependencies: + "@isaacs/string-locale-compare" "^1.1.0" + "@npmcli/installed-package-contents" "^1.0.7" + "@npmcli/map-workspaces" "^2.0.0" + "@npmcli/metavuln-calculator" "^2.0.0" + "@npmcli/move-file" "^1.1.0" + "@npmcli/name-from-folder" "^1.0.1" + "@npmcli/node-gyp" "^1.0.3" + "@npmcli/package-json" "^1.0.1" + "@npmcli/run-script" "^2.0.0" + bin-links "^3.0.0" + cacache "^15.0.3" + common-ancestor-path "^1.0.1" + json-parse-even-better-errors "^2.3.1" + json-stringify-nice "^1.1.4" + mkdirp "^1.0.4" + mkdirp-infer-owner "^2.0.0" + npm-install-checks "^4.0.0" + npm-package-arg "^8.1.5" + npm-pick-manifest "^6.1.0" + npm-registry-fetch "^12.0.1" + pacote "^12.0.2" + parse-conflict-json "^2.0.1" + proc-log "^1.0.0" + promise-all-reject-late "^1.0.0" + promise-call-limit "^1.0.1" + read-package-json-fast "^2.0.2" + readdir-scoped-modules "^1.1.0" + rimraf "^3.0.2" + semver "^7.3.5" + ssri "^8.0.1" + treeverse "^1.0.4" + walk-up-path "^1.0.0" + +"@npmcli/fs@^1.0.0": + version "1.1.1" + resolved "https://registry.yarnpkg.com/@npmcli/fs/-/fs-1.1.1.tgz#72f719fe935e687c56a4faecf3c03d06ba593257" + integrity sha512-8KG5RD0GVP4ydEzRn/I4BNDuxDtqVbOdm8675T49OIG/NGhaK0pjPX7ZcDlvKYbA+ulvVK3ztfcF4uBdOxuJbQ== + dependencies: + "@gar/promisify" "^1.0.1" + semver "^7.3.5" + +"@npmcli/fs@^2.1.0": + version "2.1.0" + resolved "https://registry.yarnpkg.com/@npmcli/fs/-/fs-2.1.0.tgz#f2a21c28386e299d1a9fae8051d35ad180e33109" + integrity sha512-DmfBvNXGaetMxj9LTp8NAN9vEidXURrf5ZTslQzEAi/6GbW+4yjaLFQc6Tue5cpZ9Frlk4OBo/Snf1Bh/S7qTQ== + dependencies: + "@gar/promisify" "^1.1.3" + semver "^7.3.5" + +"@npmcli/git@^2.1.0": + version "2.1.0" + resolved "https://registry.yarnpkg.com/@npmcli/git/-/git-2.1.0.tgz#2fbd77e147530247d37f325930d457b3ebe894f6" + integrity sha512-/hBFX/QG1b+N7PZBFs0bi+evgRZcK9nWBxQKZkGoXUT5hJSwl5c4d7y8/hm+NQZRPhQ67RzFaj5UM9YeyKoryw== + dependencies: + "@npmcli/promise-spawn" "^1.3.2" + lru-cache "^6.0.0" + mkdirp "^1.0.4" + npm-pick-manifest "^6.1.1" + promise-inflight "^1.0.1" + promise-retry "^2.0.1" + semver "^7.3.5" + which "^2.0.2" + +"@npmcli/installed-package-contents@^1.0.6", "@npmcli/installed-package-contents@^1.0.7": + version "1.0.7" + resolved "https://registry.yarnpkg.com/@npmcli/installed-package-contents/-/installed-package-contents-1.0.7.tgz#ab7408c6147911b970a8abe261ce512232a3f4fa" + integrity sha512-9rufe0wnJusCQoLpV9ZPKIVP55itrM5BxOXs10DmdbRfgWtHy1LDyskbwRnBghuB0PrF7pNPOqREVtpz4HqzKw== + dependencies: + npm-bundled "^1.1.1" + npm-normalize-package-bin "^1.0.1" + +"@npmcli/map-workspaces@^2.0.0": + version "2.0.3" + resolved "https://registry.yarnpkg.com/@npmcli/map-workspaces/-/map-workspaces-2.0.3.tgz#2d3c75119ee53246e9aa75bc469a55281cd5f08f" + integrity sha512-X6suAun5QyupNM8iHkNPh0AHdRC2rb1W+MTdMvvA/2ixgmqZwlq5cGUBgmKHUHT2LgrkKJMAXbfAoTxOigpK8Q== + dependencies: + "@npmcli/name-from-folder" "^1.0.1" + glob "^8.0.1" + minimatch "^5.0.1" + read-package-json-fast "^2.0.3" + +"@npmcli/metavuln-calculator@^2.0.0": + version "2.0.0" + resolved "https://registry.yarnpkg.com/@npmcli/metavuln-calculator/-/metavuln-calculator-2.0.0.tgz#70937b8b5a5cad5c588c8a7b38c4a8bd6f62c84c" + integrity sha512-VVW+JhWCKRwCTE+0xvD6p3uV4WpqocNYYtzyvenqL/u1Q3Xx6fGTJ+6UoIoii07fbuEO9U3IIyuGY0CYHDv1sg== + dependencies: + cacache "^15.0.5" + json-parse-even-better-errors "^2.3.1" + pacote "^12.0.0" + semver "^7.3.2" + +"@npmcli/move-file@^1.0.1", "@npmcli/move-file@^1.1.0": + version "1.1.2" + resolved "https://registry.yarnpkg.com/@npmcli/move-file/-/move-file-1.1.2.tgz#1a82c3e372f7cae9253eb66d72543d6b8685c674" + integrity sha512-1SUf/Cg2GzGDyaf15aR9St9TWlb+XvbZXWpDx8YKs7MLzMH/BCeopv+y9vzrzgkfykCGuWOlSu3mZhj2+FQcrg== + dependencies: + mkdirp "^1.0.4" + rimraf "^3.0.2" + +"@npmcli/move-file@^2.0.0": + version "2.0.0" + resolved "https://registry.yarnpkg.com/@npmcli/move-file/-/move-file-2.0.0.tgz#417f585016081a0184cef3e38902cd917a9bbd02" + integrity sha512-UR6D5f4KEGWJV6BGPH3Qb2EtgH+t+1XQ1Tt85c7qicN6cezzuHPdZwwAxqZr4JLtnQu0LZsTza/5gmNmSl8XLg== + dependencies: + mkdirp "^1.0.4" + rimraf "^3.0.2" + +"@npmcli/name-from-folder@^1.0.1": + version "1.0.1" + resolved "https://registry.yarnpkg.com/@npmcli/name-from-folder/-/name-from-folder-1.0.1.tgz#77ecd0a4fcb772ba6fe927e2e2e155fbec2e6b1a" + integrity sha512-qq3oEfcLFwNfEYOQ8HLimRGKlD8WSeGEdtUa7hmzpR8Sa7haL1KVQrvgO6wqMjhWFFVjgtrh1gIxDz+P8sjUaA== + +"@npmcli/node-gyp@^1.0.2", "@npmcli/node-gyp@^1.0.3": + version "1.0.3" + resolved "https://registry.yarnpkg.com/@npmcli/node-gyp/-/node-gyp-1.0.3.tgz#a912e637418ffc5f2db375e93b85837691a43a33" + integrity sha512-fnkhw+fmX65kiLqk6E3BFLXNC26rUhK90zVwe2yncPliVT/Qos3xjhTLE59Df8KnPlcwIERXKVlU1bXoUQ+liA== + +"@npmcli/package-json@^1.0.1": + version "1.0.1" + resolved "https://registry.yarnpkg.com/@npmcli/package-json/-/package-json-1.0.1.tgz#1ed42f00febe5293c3502fd0ef785647355f6e89" + integrity sha512-y6jnu76E9C23osz8gEMBayZmaZ69vFOIk8vR1FJL/wbEJ54+9aVG9rLTjQKSXfgYZEr50nw1txBBFfBZZe+bYg== + dependencies: + json-parse-even-better-errors "^2.3.1" + +"@npmcli/promise-spawn@^1.2.0", "@npmcli/promise-spawn@^1.3.2": + version "1.3.2" + resolved "https://registry.yarnpkg.com/@npmcli/promise-spawn/-/promise-spawn-1.3.2.tgz#42d4e56a8e9274fba180dabc0aea6e38f29274f5" + integrity sha512-QyAGYo/Fbj4MXeGdJcFzZ+FkDkomfRBrPM+9QYJSg+PxgAUL+LU3FneQk37rKR2/zjqkCV1BLHccX98wRXG3Sg== + dependencies: + infer-owner "^1.0.4" + +"@npmcli/run-script@^2.0.0": + version "2.0.0" + resolved "https://registry.yarnpkg.com/@npmcli/run-script/-/run-script-2.0.0.tgz#9949c0cab415b17aaac279646db4f027d6f1e743" + integrity sha512-fSan/Pu11xS/TdaTpTB0MRn9guwGU8dye+x56mEVgBEd/QsybBbYcAL0phPXi8SGWFEChkQd6M9qL4y6VOpFig== + dependencies: + "@npmcli/node-gyp" "^1.0.2" + "@npmcli/promise-spawn" "^1.3.2" + node-gyp "^8.2.0" + read-package-json-fast "^2.0.1" + +"@oclif/color@^1.0.0": + version "1.0.1" + resolved "https://registry.yarnpkg.com/@oclif/color/-/color-1.0.1.tgz#20ab9205e0924c6388918a88874e1f4b32df9970" + integrity sha512-qjYr+izgWdIVOroiBKqTzQgc1r5Wd9QB1J7yGM2EeelqhBARiiVLRZL45vhV4zdyTRdDkZS0EBzFwQap+nliLA== + dependencies: + ansi-styles "^4.2.1" + chalk "^4.1.0" + strip-ansi "^6.0.1" + supports-color "^8.1.1" + tslib "^2" + "@oclif/command@^1", "@oclif/command@^1.5.13", "@oclif/command@^1.5.17", "@oclif/command@^1.8.1", "@oclif/command@^1.8.14", "@oclif/command@^1.8.15", "@oclif/command@^1.8.3": version "1.8.16" resolved "https://registry.yarnpkg.com/@oclif/command/-/command-1.8.16.tgz#bea46f81b2061b47e1cda318a0b923e62ca4cc0c" @@ -514,7 +696,7 @@ is-wsl "^2.1.1" tslib "^2.0.0" -"@oclif/config@^1", "@oclif/config@^1.17.1", "@oclif/config@^1.18.1", "@oclif/config@^1.18.2", "@oclif/config@^1.18.3": +"@oclif/config@^1", "@oclif/config@^1.17.1", "@oclif/config@^1.18.2": version "1.18.3" resolved "https://registry.yarnpkg.com/@oclif/config/-/config-1.18.3.tgz#ddfc144fdab66b1658c2f1b3478fa7fbfd317e79" integrity sha512-sBpko86IrTscc39EvHUhL+c++81BVTsIZ3ETu/vG+cCdi0N6vb2DoahR67A9FI2CGnxRRHjnTfa3m6LulwNATA== @@ -526,10 +708,10 @@ is-wsl "^2.1.1" tslib "^2.3.1" -"@oclif/core@^1.3.4": - version "1.7.0" - resolved "https://registry.yarnpkg.com/@oclif/core/-/core-1.7.0.tgz#3b763b53eafa9afbb13cf7cdfeac0f8ddd8ab1af" - integrity sha512-I4q4qgtnNG7ef4sBDrJhwADdi7RExQV7LnflnXaWZZDiUoqF9AdOjC4jjx40MK0rRrCehCUtPNZBcr3WmxuS4Q== +"@oclif/core@^1.0.8", "@oclif/core@^1.2.1", "@oclif/core@^1.3.1", "@oclif/core@^1.3.4", "@oclif/core@^1.3.6", "@oclif/core@^1.6.3", "@oclif/core@^1.6.4", "@oclif/core@^1.7.0", "@oclif/core@^1.9.0": + version "1.9.0" + resolved "https://registry.yarnpkg.com/@oclif/core/-/core-1.9.0.tgz#bb2a7820a9176f28921f449c0f577d39c15e74d0" + integrity sha512-duvlaRQf4JM+mKuwwos1DNa/Q9x6tnF3khV5RU0fy5hhETF7THlTmxioKlIvKMyQDVpySqtZXZ0OKHeCi2EWuQ== dependencies: "@oclif/linewrap" "^1.0.0" "@oclif/screen" "^3.0.2" @@ -539,7 +721,7 @@ chalk "^4.1.2" clean-stack "^3.0.1" cli-progress "^3.10.0" - debug "^4.3.3" + debug "^4.3.4" ejs "^3.1.6" fs-extra "^9.1.0" get-package-type "^0.1.0" @@ -548,11 +730,10 @@ indent-string "^4.0.0" is-wsl "^2.2.0" js-yaml "^3.14.1" - lodash "^4.17.21" natural-orderby "^2.0.3" object-treeify "^1.1.33" password-prompt "^1.1.2" - semver "^7.3.5" + semver "^7.3.7" string-width "^4.2.3" strip-ansi "^6.0.1" supports-color "^8.1.1" @@ -682,6 +863,36 @@ widest-line "^3.1.0" wrap-ansi "^6.2.0" +"@oclif/plugin-help@^5.1.11", "@oclif/plugin-help@^5.1.12": + version "5.1.12" + resolved "https://registry.yarnpkg.com/@oclif/plugin-help/-/plugin-help-5.1.12.tgz#24a18631eb9b22cb55e1a3b8e4f6039fd42727e6" + integrity sha512-HvH/RubJxqCinP0vUWQLTOboT+SfjfL8h40s+PymkWaldIcXlpoRaJX50vz+SjZIs7uewZwEk8fzLqpF/BWXlg== + dependencies: + "@oclif/core" "^1.3.6" + +"@oclif/plugin-not-found@^2.3.1": + version "2.3.1" + resolved "https://registry.yarnpkg.com/@oclif/plugin-not-found/-/plugin-not-found-2.3.1.tgz#8fe1019fdeeb77be055314662bb9180808222e80" + integrity sha512-AeNBw+zSkRpePmpXO8xlL072VF2/R2yK3qsVs/JF26Yw1w77TWuRTdFR+hFotJtFCJ4QYqhNtKSjdryCO9AXsA== + dependencies: + "@oclif/color" "^1.0.0" + "@oclif/core" "^1.2.1" + fast-levenshtein "^3.0.0" + lodash "^4.17.21" + +"@oclif/plugin-warn-if-update-available@^2.0.4": + version "2.0.4" + resolved "https://registry.yarnpkg.com/@oclif/plugin-warn-if-update-available/-/plugin-warn-if-update-available-2.0.4.tgz#3d509ca2394cccf65e6622be812d7be4065a60aa" + integrity sha512-9dprC1CWPjesg0Vf/rDSQH2tzJXhP1ow84cb2My1kj6e6ESulPKpctiCFSZ1WaCQFfq+crKhzlNoP/vRaXNUAg== + dependencies: + "@oclif/core" "^1.0.8" + chalk "^4.1.0" + debug "^4.1.0" + fs-extra "^9.0.1" + http-call "^5.2.2" + lodash "^4.17.21" + semver "^7.3.2" + "@oclif/screen@^1.0.3", "@oclif/screen@^1.0.4": version "1.0.4" resolved "https://registry.yarnpkg.com/@oclif/screen/-/screen-1.0.4.tgz#b740f68609dfae8aa71c3a6cab15d816407ba493" @@ -699,6 +910,115 @@ dependencies: fancy-test "^1.4.10" +"@oclif/test@^2.1.0": + version "2.1.0" + resolved "https://registry.yarnpkg.com/@oclif/test/-/test-2.1.0.tgz#e5a0ba619c890770782e48c82d18f5921e2d2b9f" + integrity sha512-o+JTv3k28aMUxywJUlJY1/DORLqumoZFRII492phOmtXM16rD6Luy3z1qinT4BvEtPj2BzOPd2whr/VdYszaYw== + dependencies: + "@oclif/core" "^1.3.1" + fancy-test "^2.0.0" + +"@octokit/auth-token@^2.4.4": + version "2.5.0" + resolved "https://registry.yarnpkg.com/@octokit/auth-token/-/auth-token-2.5.0.tgz#27c37ea26c205f28443402477ffd261311f21e36" + integrity sha512-r5FVUJCOLl19AxiuZD2VRZ/ORjp/4IN98Of6YJoJOkY75CIBuYfmiNHGrDwXr+aLGG55igl9QrxX3hbiXlLb+g== + dependencies: + "@octokit/types" "^6.0.3" + +"@octokit/core@^3.5.1": + version "3.6.0" + resolved "https://registry.yarnpkg.com/@octokit/core/-/core-3.6.0.tgz#3376cb9f3008d9b3d110370d90e0a1fcd5fe6085" + integrity sha512-7RKRKuA4xTjMhY+eG3jthb3hlZCsOwg3rztWh75Xc+ShDWOfDDATWbeZpAHBNRpm4Tv9WgBMOy1zEJYXG6NJ7Q== + dependencies: + "@octokit/auth-token" "^2.4.4" + "@octokit/graphql" "^4.5.8" + "@octokit/request" "^5.6.3" + "@octokit/request-error" "^2.0.5" + "@octokit/types" "^6.0.3" + before-after-hook "^2.2.0" + universal-user-agent "^6.0.0" + +"@octokit/endpoint@^6.0.1": + version "6.0.12" + resolved "https://registry.yarnpkg.com/@octokit/endpoint/-/endpoint-6.0.12.tgz#3b4d47a4b0e79b1027fb8d75d4221928b2d05658" + integrity sha512-lF3puPwkQWGfkMClXb4k/eUT/nZKQfxinRWJrdZaJO85Dqwo/G0yOC434Jr2ojwafWJMYqFGFa5ms4jJUgujdA== + dependencies: + "@octokit/types" "^6.0.3" + is-plain-object "^5.0.0" + universal-user-agent "^6.0.0" + +"@octokit/graphql@^4.5.8": + version "4.8.0" + resolved "https://registry.yarnpkg.com/@octokit/graphql/-/graphql-4.8.0.tgz#664d9b11c0e12112cbf78e10f49a05959aa22cc3" + integrity sha512-0gv+qLSBLKF0z8TKaSKTsS39scVKF9dbMxJpj3U0vC7wjNWFuIpL/z76Qe2fiuCbDRcJSavkXsVtMS6/dtQQsg== + dependencies: + "@octokit/request" "^5.6.0" + "@octokit/types" "^6.0.3" + universal-user-agent "^6.0.0" + +"@octokit/openapi-types@^11.2.0": + version "11.2.0" + resolved "https://registry.yarnpkg.com/@octokit/openapi-types/-/openapi-types-11.2.0.tgz#b38d7fc3736d52a1e96b230c1ccd4a58a2f400a6" + integrity sha512-PBsVO+15KSlGmiI8QAzaqvsNlZlrDlyAJYcrXBCvVUxCp7VnXjkwPoFHgjEJXx3WF9BAwkA6nfCUA7i9sODzKA== + +"@octokit/plugin-paginate-rest@^2.16.8": + version "2.17.0" + resolved "https://registry.yarnpkg.com/@octokit/plugin-paginate-rest/-/plugin-paginate-rest-2.17.0.tgz#32e9c7cab2a374421d3d0de239102287d791bce7" + integrity sha512-tzMbrbnam2Mt4AhuyCHvpRkS0oZ5MvwwcQPYGtMv4tUa5kkzG58SVB0fcsLulOZQeRnOgdkZWkRUiyBlh0Bkyw== + dependencies: + "@octokit/types" "^6.34.0" + +"@octokit/plugin-request-log@^1.0.4": + version "1.0.4" + resolved "https://registry.yarnpkg.com/@octokit/plugin-request-log/-/plugin-request-log-1.0.4.tgz#5e50ed7083a613816b1e4a28aeec5fb7f1462e85" + integrity sha512-mLUsMkgP7K/cnFEw07kWqXGF5LKrOkD+lhCrKvPHXWDywAwuDUeDwWBpc69XK3pNX0uKiVt8g5z96PJ6z9xCFA== + +"@octokit/plugin-rest-endpoint-methods@^5.12.0": + version "5.13.0" + resolved "https://registry.yarnpkg.com/@octokit/plugin-rest-endpoint-methods/-/plugin-rest-endpoint-methods-5.13.0.tgz#8c46109021a3412233f6f50d28786f8e552427ba" + integrity sha512-uJjMTkN1KaOIgNtUPMtIXDOjx6dGYysdIFhgA52x4xSadQCz3b/zJexvITDVpANnfKPW/+E0xkOvLntqMYpviA== + dependencies: + "@octokit/types" "^6.34.0" + deprecation "^2.3.1" + +"@octokit/request-error@^2.0.5", "@octokit/request-error@^2.1.0": + version "2.1.0" + resolved "https://registry.yarnpkg.com/@octokit/request-error/-/request-error-2.1.0.tgz#9e150357831bfc788d13a4fd4b1913d60c74d677" + integrity sha512-1VIvgXxs9WHSjicsRwq8PlR2LR2x6DwsJAaFgzdi0JfJoGSO8mYI/cHJQ+9FbN21aa+DrgNLnwObmyeSC8Rmpg== + dependencies: + "@octokit/types" "^6.0.3" + deprecation "^2.0.0" + once "^1.4.0" + +"@octokit/request@^5.6.0", "@octokit/request@^5.6.3": + version "5.6.3" + resolved "https://registry.yarnpkg.com/@octokit/request/-/request-5.6.3.tgz#19a022515a5bba965ac06c9d1334514eb50c48b0" + integrity sha512-bFJl0I1KVc9jYTe9tdGGpAMPy32dLBXXo1dS/YwSCTL/2nd9XeHsY616RE3HPXDVk+a+dBuzyz5YdlXwcDTr2A== + dependencies: + "@octokit/endpoint" "^6.0.1" + "@octokit/request-error" "^2.1.0" + "@octokit/types" "^6.16.1" + is-plain-object "^5.0.0" + node-fetch "^2.6.7" + universal-user-agent "^6.0.0" + +"@octokit/rest@^18.0.6": + version "18.12.0" + resolved "https://registry.yarnpkg.com/@octokit/rest/-/rest-18.12.0.tgz#f06bc4952fc87130308d810ca9d00e79f6988881" + integrity sha512-gDPiOHlyGavxr72y0guQEhLsemgVjwRePayJ+FcKc2SJqKUbxbkvf5kAZEWA/MKvsfYlQAMVzNJE3ezQcxMJ2Q== + dependencies: + "@octokit/core" "^3.5.1" + "@octokit/plugin-paginate-rest" "^2.16.8" + "@octokit/plugin-request-log" "^1.0.4" + "@octokit/plugin-rest-endpoint-methods" "^5.12.0" + +"@octokit/types@^6.0.3", "@octokit/types@^6.16.1", "@octokit/types@^6.34.0": + version "6.34.0" + resolved "https://registry.yarnpkg.com/@octokit/types/-/types-6.34.0.tgz#c6021333334d1ecfb5d370a8798162ddf1ae8218" + integrity sha512-s1zLBjWhdEI2zwaoSgyOFoKSl109CUcVBCc7biPJ3aAf6LGLU6szDvi31JPU7bxfla2lqfhjbbg/5DdFNxOwHw== + dependencies: + "@octokit/openapi-types" "^11.2.0" + "@salesforce/apex-node@^0.13.0": version "0.13.0" resolved "https://registry.yarnpkg.com/@salesforce/apex-node/-/apex-node-0.13.0.tgz#bec0b46c1420f087b185c7414f48bb12f7e4edde" @@ -723,27 +1043,13 @@ mv "~2" safe-json-stringify "~1" -"@salesforce/cli-plugins-testkit@^1.2.0": - version "1.5.12" - resolved "https://registry.npmjs.org/@salesforce/cli-plugins-testkit/-/cli-plugins-testkit-1.5.12.tgz#e52631814a6cfba5ed08eeb065b214c36acd5597" - integrity sha512-GtEXgyUkF+begT49u4BsliEtDG/siGtE4ErTql7y36pptyGjsLAIWxX+0Iu1yVZzlxA4EmXMSCte/SD0iDDD4w== - dependencies: - "@salesforce/core" "^2.24.0" - "@salesforce/kit" "^1.5.13" - "@salesforce/ts-types" "^1.5.17" - archiver "^5.2.0" - debug "^4.3.1" - shelljs "^0.8.4" - strip-ansi "6.0.1" - ts-retry-promise "^0.6.0" - -"@salesforce/cli-plugins-testkit@^1.5.28": - version "1.5.28" - resolved "https://registry.yarnpkg.com/@salesforce/cli-plugins-testkit/-/cli-plugins-testkit-1.5.28.tgz#3c3ed8e99fc6365f149d4c5f2690b02166661d4b" - integrity sha512-BC/M24sg7IjiE/5aD7RazOVWNVG8kStYF3ze/zvKGIdRGjTjgBDwYR7LkT4VWIqH0y48ohSc9aQc0kJ3HsiC2Q== +"@salesforce/cli-plugins-testkit@^2.2.0": + version "2.2.0" + resolved "https://registry.yarnpkg.com/@salesforce/cli-plugins-testkit/-/cli-plugins-testkit-2.2.0.tgz#ead6cf3652a595b8b1915be939dc82e6b2a02be9" + integrity sha512-dKPAiElzOirELP2aGHQdkENxKDrEjypJfQUHvbPCKBX1rjDah0utrKSEAbNkTIGzaZrV+TxZhcy/AghtD69EGQ== dependencies: - "@salesforce/core" "^2.24.0" - "@salesforce/kit" "^1.5.13" + "@salesforce/core" "^3.20.1" + "@salesforce/kit" "^1.5.42" "@salesforce/ts-types" "^1.5.17" archiver "^5.2.0" debug "^4.3.1" @@ -767,7 +1073,7 @@ chalk "^2.4.2" cli-ux "^4.9.3" -"@salesforce/command@^4.1.5", "@salesforce/command@^4.2.0", "@salesforce/command@^4.2.2": +"@salesforce/command@^4.1.5": version "4.2.2" resolved "https://registry.yarnpkg.com/@salesforce/command/-/command-4.2.2.tgz#2d1c301d771a6a6aac3cf25f14f18e829bf37b1d" integrity sha512-2QEtPIMaeRyUEnLmPHJ1PhfKDJBupfQS5T4nG8rXpK2yOznBu48aPWaWCYErrxyC0bPa5eoFACeyPWz1k9QMog== @@ -783,31 +1089,23 @@ chalk "^2.4.2" cli-ux "^4.9.3" -"@salesforce/core@2.28.0": - version "2.28.0" - resolved "https://registry.yarnpkg.com/@salesforce/core/-/core-2.28.0.tgz#2fb3d7be0dfac8505332f558b7dd4274afd34901" - integrity sha512-CFw2xloL3UwuvLm+0nK588kFVGPRZFmUzeUBYFCIz+34CJShc1B7yN+anPlZcHWgT12Ih9yzKYaki0BjCeIgKQ== - dependencies: - "@salesforce/bunyan" "^2.0.0" - "@salesforce/kit" "^1.5.0" - "@salesforce/schemas" "^1.0.1" - "@salesforce/ts-types" "^1.5.13" - "@types/graceful-fs" "^4.1.5" - "@types/jsforce" "^1.9.29" - "@types/mkdirp" "^1.0.1" - debug "^3.1.0" - graceful-fs "^4.2.4" - jsen "0.6.6" - jsforce "^1.10.1" - jsonwebtoken "8.5.0" - mkdirp "1.0.4" - sfdx-faye "^1.0.9" - ts-retry-promise "^0.6.0" +"@salesforce/command@^5.1.2": + version "5.1.2" + resolved "https://registry.yarnpkg.com/@salesforce/command/-/command-5.1.2.tgz#934fa36679d8160512c4402705d0b8947a8b9d47" + integrity sha512-WbZlR1v/DYkO9Px5nBEexNrRK+aV9apC4rywyW92FTGrrNL9k6vjrf38JI18UuKuePFXzkQHUaz1/f99sC1bWA== + dependencies: + "@oclif/core" "^1.7.0" + "@oclif/plugin-help" "^5.1.11" + "@oclif/test" "^2.1.0" + "@salesforce/core" "^3.15.3" + "@salesforce/kit" "^1.5.34" + "@salesforce/ts-types" "^1.5.20" + chalk "^2.4.2" -"@salesforce/core@^2.1.4", "@salesforce/core@^2.20.11", "@salesforce/core@^2.24.0", "@salesforce/core@^2.29.0", "@salesforce/core@^2.3.0", "@salesforce/core@^2.31.0", "@salesforce/core@^2.33.1", "@salesforce/core@^2.35.0": - version "2.36.0" - resolved "https://registry.yarnpkg.com/@salesforce/core/-/core-2.36.0.tgz#eadade3d663f0a2e11d0cc9f9097c528c182997d" - integrity sha512-VsKt7SXArxrOelaJl5Ez21Pmtdp2eU6qimqZ5clxnNaZDZKOySDPYnKHu7AYCt1LUNFN9cfsX8K5yOHxS+wT+w== +"@salesforce/core@^2.1.4", "@salesforce/core@^2.29.0", "@salesforce/core@^2.3.0", "@salesforce/core@^2.35.0": + version "2.37.1" + resolved "https://registry.yarnpkg.com/@salesforce/core/-/core-2.37.1.tgz#bfb6634e068278c7761d694a15e09a680b407137" + integrity sha512-Jyppt6fc8uEBQgfD2uIvZlUVSTSkhgU4i+N0B4mQJ+0yeAu5foiGJnn7u6/GPkpLSgof8IZKC6f4crsi/9xyLA== dependencies: "@salesforce/bunyan" "^2.0.0" "@salesforce/kit" "^1.5.17" @@ -816,24 +1114,44 @@ "@types/graceful-fs" "^4.1.5" "@types/jsforce" "^1.9.41" "@types/mkdirp" "^1.0.1" + ajv "^8.11.0" archiver "^5.3.0" debug "^3.1.0" faye "^1.4.0" graceful-fs "^4.2.4" js2xmlparser "^4.0.1" - jsen "0.6.6" jsforce "^1.11.0" jsonwebtoken "8.5.0" mkdirp "1.0.4" semver "^7.3.5" ts-retry-promise "^0.6.0" -"@salesforce/dev-config@^3.0.0": - version "3.0.0" - resolved "https://registry.yarnpkg.com/@salesforce/dev-config/-/dev-config-3.0.0.tgz#a87e2cc310011a3364fc0a5d6c5550daa3192642" - integrity sha512-0ipbWqyDqaJ35Eg37rPYhymBEvvF8Zu8kpvDI08qEplt055cvSZ9At+w8tvrbVbr6KA0vlZbrXm5WyNEr9XChw== +"@salesforce/core@^3.11.0", "@salesforce/core@^3.15.3", "@salesforce/core@^3.15.5", "@salesforce/core@^3.18.2", "@salesforce/core@^3.19.0", "@salesforce/core@^3.20.1": + version "3.20.1" + resolved "https://registry.yarnpkg.com/@salesforce/core/-/core-3.20.1.tgz#2f293a84eb793ce549ee42045877b82b9cf5e8d0" + integrity sha512-lOy+qJ9YxwUmvKG9eAvnWJn1yOHvd4G/3vuvUTXugj9G8JTqUyPwKFmWgIS2FSEBWkRIhDQnEIXbgrM6/ytC4A== + dependencies: + "@salesforce/bunyan" "^2.0.0" + "@salesforce/kit" "^1.5.41" + "@salesforce/schemas" "^1.1.0" + "@salesforce/ts-types" "^1.5.20" + "@types/graceful-fs" "^4.1.5" + "@types/mkdirp" "^1.0.2" + "@types/semver" "^7.3.9" + ajv "^8.11.0" + archiver "^5.3.0" + change-case "^4.1.2" + debug "^3.2.7" + faye "^1.4.0" + form-data "^4.0.0" + graceful-fs "^4.2.9" + js2xmlparser "^4.0.1" + jsforce "2.0.0-beta.10" + jsonwebtoken "8.5.1" + mkdirp "1.0.4" + ts-retry-promise "^0.6.0" -"@salesforce/dev-config@^3.0.1": +"@salesforce/dev-config@^3.0.0", "@salesforce/dev-config@^3.0.1": version "3.0.1" resolved "https://registry.yarnpkg.com/@salesforce/dev-config/-/dev-config-3.0.1.tgz#631a952abfd69e7cdb0fb312ba4b1656ae632b90" integrity sha512-hkH8g7/bQZvtOfKTb3AmTPo1KopUli31legtb84nF9Y6mKj27TRzWUvIRuaRRd86ma19C7lPA4ycUjydX4QCcQ== @@ -878,10 +1196,10 @@ typedoc-plugin-missing-exports "0.22.6" typescript "^4.1.3" -"@salesforce/kit@^1.2.0", "@salesforce/kit@^1.4.5", "@salesforce/kit@^1.5.0", "@salesforce/kit@^1.5.13", "@salesforce/kit@^1.5.17", "@salesforce/kit@^1.5.18", "@salesforce/kit@^1.5.32": - version "1.5.33" - resolved "https://registry.yarnpkg.com/@salesforce/kit/-/kit-1.5.33.tgz#d3b947e23b2917778d03ea8bf6413892fe8ff332" - integrity sha512-CrrfalLDlr6dLyaON7HHu5GK+nwhz0Q3zYkBccMds20liRbGzozbUaX9uVZ6J1pDECaaPxtrZTpv1ljdKP2D6A== +"@salesforce/kit@^1.2.0", "@salesforce/kit@^1.5.17", "@salesforce/kit@^1.5.34", "@salesforce/kit@^1.5.38", "@salesforce/kit@^1.5.41", "@salesforce/kit@^1.5.42": + version "1.5.42" + resolved "https://registry.yarnpkg.com/@salesforce/kit/-/kit-1.5.42.tgz#2c9f5fe9908723a70b65181526c5199e6bb943c5" + integrity sha512-40QiPR+bg3iOC2lqCKwVO0iPw29lHCS5KzUZFiTOeu8HDu5SCgDhGc1d1Bj8KK/ZYDrAcNTZ8ObrlQFnme3fdQ== dependencies: "@salesforce/ts-types" "^1.5.20" shx "^0.3.3" @@ -902,25 +1220,26 @@ shelljs "^0.8.4" tslib "^1" -"@salesforce/plugin-config@^1.3.30": - version "1.3.30" - resolved "https://registry.yarnpkg.com/@salesforce/plugin-config/-/plugin-config-1.3.30.tgz#2268c776811d1ee847546ae62f2fb6f3810c46f8" - integrity sha512-eIp/T9Y8+u2EGwqJtmwZbcX8+vqcXSw4uLma1ym3pbGjH42WlL7GnRACc4av9BDHrsWC2ILC5juSYV3ldonrJA== +"@salesforce/plugin-config@^2.3.2": + version "2.3.2" + resolved "https://registry.yarnpkg.com/@salesforce/plugin-config/-/plugin-config-2.3.2.tgz#382b34762bda8dfe84840b5656e9a7f35c3548a9" + integrity sha512-KRVxJOxcjHx8cMxSC8UsYhpVwcK9pkIBJO+AjKr0fuXnMXi9KkEhV9yyQJcDbQMm2N9kg2OXEGmiIdTLzuBZGg== dependencies: - "@oclif/config" "^1.18.1" - "@salesforce/command" "^4.2.0" - "@salesforce/core" "^2.31.0" + "@oclif/core" "^1.6.3" + "@salesforce/core" "^3.11.0" + "@salesforce/sf-plugins-core" "^1.9.0" + chalk "^4.1.1" tslib "^2" -"@salesforce/plugin-user@^1.7.1": - version "1.7.1" - resolved "https://registry.yarnpkg.com/@salesforce/plugin-user/-/plugin-user-1.7.1.tgz#6fdffaa51bf012e5518f35384e3837ba6c3e88fb" - integrity sha512-nM0j/AqtJYV9VH67DSQ/TkXlB3J1SxlngOH8byzyPWTAhbrNDFxo44Up7nsiLYyrdMrKrmJ3eOWjDm9rKRFUtA== +"@salesforce/plugin-user@^2.0.2": + version "2.0.2" + resolved "https://registry.yarnpkg.com/@salesforce/plugin-user/-/plugin-user-2.0.2.tgz#6f2726deb65043aed4f1f6b9f4fbcaef18b46d0c" + integrity sha512-QeNmXnOpCOwW8mClkB4S8+NytC1MfQw+NeioU/aaGmCIRHCCeGOGwjWQ64pq78oh9cjKbR+LHxdIgwStx8iaXw== dependencies: - "@oclif/config" "^1.18.1" - "@salesforce/command" "^4.2.0" - "@salesforce/core" "^2.31.0" - "@salesforce/kit" "^1.5.18" + "@oclif/core" "^1.7.0" + "@salesforce/command" "^5.1.2" + "@salesforce/core" "^3.18.2" + "@salesforce/kit" "^1.5.38" tslib "^2" "@salesforce/prettier-config@^0.0.2": @@ -928,84 +1247,65 @@ resolved "https://registry.yarnpkg.com/@salesforce/prettier-config/-/prettier-config-0.0.2.tgz#ded39bf7cb75238edc9db6dd093649111350f8bc" integrity sha512-KExM355BLbxCW6siGBV7oUOotXvvVp0tAWERgzUkM2FcMb9fWrjwXDrIHc8V0UdDlA3UXtFltDWgN+Yqi+BA/g== -"@salesforce/schemas@^1.0.1": - version "1.1.0" - resolved "https://registry.yarnpkg.com/@salesforce/schemas/-/schemas-1.1.0.tgz#bbf94a11ee036f2b0ec6ba82306cd9565a6ba26b" - integrity sha512-6D7DvE6nFxpLyyTnrOIbbAeCJw2r/EpinFAcMh6gU0gA/CGfSbwV/8uR3uHLYL2zCyCZLH8jJ4dZ3BzCMqc+Eg== - -"@salesforce/source-deploy-retrieve@^4.0.2": - version "4.5.12" - resolved "https://registry.yarnpkg.com/@salesforce/source-deploy-retrieve/-/source-deploy-retrieve-4.5.12.tgz#37595df53122b65e442930a0646a2c5d346cf7eb" - integrity sha512-mbVLpvJhyyztXDnOhiQTHQjBFxmDmNSBmXaWxsfcFjoBX1UmFgbKP6s/gzCFws7X2T8//tQ1hHjKYzl1WMLf5g== - dependencies: - "@salesforce/core" "2.28.0" - "@salesforce/kit" "^1.5.0" - "@salesforce/ts-types" "^1.4.2" - archiver "^5.3.0" - fast-xml-parser "^3.17.4" - graceful-fs "^4.2.8" - ignore "^5.1.8" - mime "2.4.6" - unzipper "0.10.11" - xmldom-sfdx-encoding "^0.1.29" +"@salesforce/schemas@^1.0.1", "@salesforce/schemas@^1.1.0": + version "1.2.0" + resolved "https://registry.yarnpkg.com/@salesforce/schemas/-/schemas-1.2.0.tgz#3c7ed492e3ee5d9d9fb24a32b5c574893f6648db" + integrity sha512-76oYf/9Rsn6Yl+awrTQvLaQuRDNX7F3X9ksRiw53OCJdydIF05buX6XLzN0WDWpkCg/asw+lZMuAzbDVS0tBmg== -"@salesforce/source-deploy-retrieve@^5.12.12": - version "5.12.12" - resolved "https://registry.yarnpkg.com/@salesforce/source-deploy-retrieve/-/source-deploy-retrieve-5.12.12.tgz#3425ccb100a1f17f0dd7f8153af25a003bf9982d" - integrity sha512-XND/uJn7n0m38aJJ60MKy8alUP6Vg7WILm9NNb2Xh4Cu2agPpTOxru6pn32UKdNbjMMaxD7NmrAIk58eHm6sWw== +"@salesforce/sf-plugins-core@^1.9.0": + version "1.12.3" + resolved "https://registry.yarnpkg.com/@salesforce/sf-plugins-core/-/sf-plugins-core-1.12.3.tgz#9cc230d5e2ad712993feb5ec9970fcc48f862e0f" + integrity sha512-p2UfuKNeW6t7l+//RPjecIFwcV4lu4DoQMeruFCKinlBoQ8g2aUbNrzAX8uRzeTwGaye9eEmb3J6EAcxoU/6xg== dependencies: - "@salesforce/core" "^2.35.0" - "@salesforce/kit" "^1.5.32" - "@salesforce/ts-types" "^1.4.2" - archiver "^5.3.0" - fast-xml-parser "^3.17.4" - graceful-fs "^4.2.8" - ignore "^5.1.8" - mime "2.6.0" - unzipper "0.10.11" - xmldom-sfdx-encoding "^0.1.29" + "@oclif/core" "^1.7.0" + "@salesforce/core" "^3.15.5" + "@salesforce/kit" "^1.5.41" + "@salesforce/ts-types" "^1.5.20" + chalk "^4" + inquirer "^8.2.0" -"@salesforce/source-deploy-retrieve@^5.12.14": - version "5.12.14" - resolved "https://registry.yarnpkg.com/@salesforce/source-deploy-retrieve/-/source-deploy-retrieve-5.12.14.tgz#1c63e5caf8ed53a37561b603c019424c00e77823" - integrity sha512-AYavRb8CoHonaFeOjvWSCLfvC833dywkYQoEaShoKeSMF36hgJegIdX383+4alOxUavAiuwPFOy3yVEIR8FmsQ== +"@salesforce/source-deploy-retrieve@^6.0.1", "@salesforce/source-deploy-retrieve@^6.0.2", "@salesforce/source-deploy-retrieve@^6.0.3": + version "6.0.3" + resolved "https://registry.yarnpkg.com/@salesforce/source-deploy-retrieve/-/source-deploy-retrieve-6.0.3.tgz#d0517d2e5db65420971bce0151faeb7a82d0fd39" + integrity sha512-eFUor8D0AZ5lzkP7tpl7ZwIbGKpZETyjfvQlGCnvkqAxh32DyiLlZ/rCxVNw8u7PuxELVcgcdIwGsBaUUAB+4g== dependencies: - "@salesforce/core" "^2.35.0" - "@salesforce/kit" "^1.5.32" - "@salesforce/ts-types" "^1.4.2" + "@salesforce/core" "^3.19.0" + "@salesforce/kit" "^1.5.41" + "@salesforce/ts-types" "^1.5.20" archiver "^5.3.0" fast-xml-parser "^3.17.4" + got "^11.8.2" graceful-fs "^4.2.8" ignore "^5.1.8" mime "2.6.0" unzipper "0.10.11" xmldom-sfdx-encoding "^0.1.29" -"@salesforce/source-testkit@^0.0.16": - version "0.0.16" - resolved "https://registry.yarnpkg.com/@salesforce/source-testkit/-/source-testkit-0.0.16.tgz#e5d800e65cfdccd5586ae6c10dbef0a768770102" - integrity sha512-JhFPOIWNRCiQXDSRpx6/cqK0a24RHoFBXP99upHMF10nyTGFgGQOent+OLP5UCDNrVJ6TnTudbTCDZMj8FNffQ== +"@salesforce/source-testkit@^1.2.0": + version "1.2.0" + resolved "https://registry.yarnpkg.com/@salesforce/source-testkit/-/source-testkit-1.2.0.tgz#4d633593415a7e3add6bda83d119acdf52373a77" + integrity sha512-5Dy7FeKH5AQlwN2sgpR2N26TpdPsOPrKtVhhcbKEpI71zPlzeYv3u6kLOjU9Ish4VQvGT+cNm2w264u2L/YDrw== dependencies: - "@salesforce/cli-plugins-testkit" "^1.2.0" - "@salesforce/core" "^2.20.11" - "@salesforce/kit" "^1.4.5" - "@salesforce/source-deploy-retrieve" "^4.0.2" - "@salesforce/ts-types" "^1.5.5" + "@salesforce/cli-plugins-testkit" "^2.2.0" + "@salesforce/core" "^3.20.1" + "@salesforce/kit" "^1.5.42" + "@salesforce/source-deploy-retrieve" "^6.0.2" + "@salesforce/ts-types" "^1.5.20" archiver "^5.2.0" chai-each "^0.0.1" debug "^4.3.1" shelljs "^0.8.4" sinon "^10.0.0" - strip-ansi "^6.0.0" + strip-ansi "^7.0.1" -"@salesforce/source-tracking@^1.4.2": - version "1.4.2" - resolved "https://registry.yarnpkg.com/@salesforce/source-tracking/-/source-tracking-1.4.2.tgz#312f03dfe996b3e680be8014aa66655fb499cd6f" - integrity sha512-BIVLyoa5JRfEFCMTfoPBZ4S5Sz4ky1gVu7mRoebBol0PUHnyj7MG0n0UoRhNM/VcWJcoqGueO16hVaW6/BKCqw== +"@salesforce/source-tracking@^2.0.0": + version "2.0.0" + resolved "https://registry.yarnpkg.com/@salesforce/source-tracking/-/source-tracking-2.0.0.tgz#161082a73392cbbe934127d851c2be5860a2a713" + integrity sha512-Luq327bpBKViFP6Zk21FcS0TdOUPlRLwPUFmNGZf2DhnRfv5UaQkzgOXG32fq3t56Mo1e1WYLS4IvyJum8srzg== dependencies: - "@salesforce/core" "^2.33.1" + "@salesforce/core" "^3.19.0" "@salesforce/kit" "^1.5.17" - "@salesforce/source-deploy-retrieve" "^5.12.12" + "@salesforce/source-deploy-retrieve" "^6.0.1" graceful-fs "^4.2.9" isomorphic-git "1.17.0" ts-retry-promise "^0.6.0" @@ -1019,7 +1319,7 @@ sinon "^5.1.1" tslib "^2.2.0" -"@salesforce/ts-types@^1.2.0", "@salesforce/ts-types@^1.4.2", "@salesforce/ts-types@^1.5.13", "@salesforce/ts-types@^1.5.17", "@salesforce/ts-types@^1.5.20", "@salesforce/ts-types@^1.5.5": +"@salesforce/ts-types@^1.2.0", "@salesforce/ts-types@^1.5.17", "@salesforce/ts-types@^1.5.20": version "1.5.20" resolved "https://registry.yarnpkg.com/@salesforce/ts-types/-/ts-types-1.5.20.tgz#f6875a710ceca48223b240026a14af6d3b39882f" integrity sha512-Ov6um4CWd63EvkRavkHG0J/P9XYL55sdkDWPMr7+AIgqh5flHxDRz09/C4e9M94aX30rzJxW4TVX6EBf4Cu2BQ== @@ -1111,6 +1411,11 @@ resolved "https://registry.yarnpkg.com/@tootallnate/once/-/once-1.1.2.tgz#ccb91445360179a04e7fe6aff78c00ffc1eeaf82" integrity sha512-RbzJvlNzmRq5c3O09UipeuXno4tA1FE6ikOjxZK0tuxVv3412l64l5t1W5pj4+rJq9vpkm/kwiR07aZXnsKPxw== +"@tootallnate/once@2": + version "2.0.0" + resolved "https://registry.yarnpkg.com/@tootallnate/once/-/once-2.0.0.tgz#f544a148d3ab35801c1f633a7441fd87c2e484bf" + integrity sha512-XCuKFP5PS55gnMVu3dty8KPatLqUoy/ZYzDzAGCQ8JNFCkLXzmI7vNHCR+XpbZaMWQK/vQubr7PkYq8g470J/A== + "@tsconfig/node10@^1.0.7": version "1.0.8" resolved "https://registry.yarnpkg.com/@tsconfig/node10/-/node10-1.0.8.tgz#c1e4e80d6f964fbecb3359c43bd48b40f7cadad9" @@ -1160,6 +1465,11 @@ dependencies: "@types/ms" "*" +"@types/expect@^1.20.4": + version "1.20.4" + resolved "https://registry.yarnpkg.com/@types/expect/-/expect-1.20.4.tgz#8288e51737bf7e3ab5d7c77bfa695883745264e5" + integrity sha512-Q5Vn3yjTDyCMV50TB6VRIbQNxSE4OmZR86VSbGaNpfUolm0iePBB4KdEEHmxoY5sT2+2DIvXW0rvMDP2nHZ4Mg== + "@types/glob@*", "@types/glob@^7.1.1": version "7.2.0" resolved "https://registry.yarnpkg.com/@types/glob/-/glob-7.2.0.tgz#bc1b5bf3aa92f25bd5dd39f35c57361bdce5b2eb" @@ -1180,19 +1490,14 @@ resolved "https://registry.yarnpkg.com/@types/http-cache-semantics/-/http-cache-semantics-4.0.1.tgz#0ea7b61496902b95890dc4c3a116b60cb8dae812" integrity sha512-SZs7ekbP8CN0txVG2xVRH6EgKmEm31BOxA07vkFaETzZz1xh+cbt8BcI0slpymvwhx5dlFnQG2rTlPVQn+iRPQ== -"@types/jsforce@^1.9.29", "@types/jsforce@^1.9.39", "@types/jsforce@^1.9.41": +"@types/jsforce@^1.9.41": version "1.9.42" resolved "https://registry.yarnpkg.com/@types/jsforce/-/jsforce-1.9.42.tgz#3b860f0283b32809b9639456a78eba04aed51325" integrity sha512-Ht5gIROhqGn5L5g0GEC7ADOWXI04yFRmxYqJxAAcpQ2II424tlu/I1LSbce5ckc97tb9BtTYMd9I+kRrvThp0w== dependencies: "@types/node" "*" -"@types/json-schema@^7.0.7": - version "7.0.9" - resolved "https://registry.yarnpkg.com/@types/json-schema/-/json-schema-7.0.9.tgz#97edc9037ea0c38585320b28964dde3b39e4660d" - integrity sha512-qcUXuemtEu+E5wZSJHNxUXeCZhAfXKQ41D+duX+VYPde7xyEVZci+/oXKJL13tnRs9lR2pr4fod59GT6/X1/yQ== - -"@types/json-schema@^7.0.9": +"@types/json-schema@^7.0.7", "@types/json-schema@^7.0.9": version "7.0.11" resolved "https://registry.yarnpkg.com/@types/json-schema/-/json-schema-7.0.11.tgz#d421b6c527a3037f7c84433fd2c4229e016863d3" integrity sha512-wOuvG1SN4Us4rez+tylwwwCV1psiNVOkJeM3AUWUNWg/jDQY2+HE/444y5gc+jBmRqASOm2Oeh5c1axHobwRKQ== @@ -1224,7 +1529,7 @@ resolved "https://registry.yarnpkg.com/@types/minimist/-/minimist-1.2.2.tgz#ee771e2ba4b3dc5b372935d549fd9617bf345b8c" integrity sha512-jhuKLIRrhvCPLqwPcx6INqmKeiA5EWrsCOPhrlFSrbrmU4ZMPjj5Ul/oLCMDO98XRUIwVm78xICz4EPCektzeQ== -"@types/mkdirp@^1.0.1": +"@types/mkdirp@^1.0.1", "@types/mkdirp@^1.0.2": version "1.0.2" resolved "https://registry.yarnpkg.com/@types/mkdirp/-/mkdirp-1.0.2.tgz#8d0bad7aa793abe551860be1f7ae7f3198c16666" integrity sha512-o0K1tSO0Dx5X6xlU5F1D6625FawhC3dU3iqr25lluNv/+/QIVH8RLNEiVokgIZo+mz+87w/3Mkg/VvQS+J51fQ== @@ -1246,6 +1551,11 @@ resolved "https://registry.yarnpkg.com/@types/node/-/node-17.0.13.tgz#5ed7ed7c662948335fcad6c412bb42d99ea754e3" integrity sha512-Y86MAxASe25hNzlDbsviXl8jQHb0RDvKt4c40ZJQ1Don0AAL0STLZSs4N+6gLEO55pedy7r2cLwS+ZDxPm/2Bw== +"@types/node@^12.19.9": + version "12.20.52" + resolved "https://registry.yarnpkg.com/@types/node/-/node-12.20.52.tgz#2fd2dc6bfa185601b15457398d4ba1ef27f81251" + integrity sha512-cfkwWw72849SNYp3Zx0IcIs25vABmFh73xicxhCkTcvtZQeIez15PpwQN8fY3RD7gv1Wrxlc9MEtfMORZDEsGw== + "@types/node@^15.6.1": version "15.14.9" resolved "https://registry.yarnpkg.com/@types/node/-/node-15.14.9.tgz#bc43c990c3c9be7281868bbc7b8fdd6e2b57adfa" @@ -1275,6 +1585,11 @@ dependencies: "@types/node" "*" +"@types/semver@^7.3.9": + version "7.3.9" + resolved "https://registry.yarnpkg.com/@types/semver/-/semver-7.3.9.tgz#152c6c20a7688c30b967ec1841d31ace569863fc" + integrity sha512-L/TMpyURfBkf+o/526Zb6kd/tchUP3iBDEPjqjb+U2MAJhVRxxrmr2fwpe08E7QsV7YLcpq0tUaQ9O9x97ZIxQ== + "@types/shelljs@^0.8.11": version "0.8.11" resolved "https://registry.yarnpkg.com/@types/shelljs/-/shelljs-0.8.11.tgz#17a5696c825974e96828e96e89585d685646fcb8" @@ -1295,6 +1610,14 @@ resolved "https://registry.yarnpkg.com/@types/sinonjs__fake-timers/-/sinonjs__fake-timers-8.1.2.tgz#bf2e02a3dbd4aecaf95942ecd99b7402e03fad5e" integrity sha512-9GcLXF0/v3t80caGs5p2rRfkB+a8VBGLJZVih6CNFkx8IZ994wiKKLSRs9nuFwk1HevWs/1mnUmkApGrSGsShA== +"@types/vinyl@^2.0.4": + version "2.0.6" + resolved "https://registry.yarnpkg.com/@types/vinyl/-/vinyl-2.0.6.tgz#b2d134603557a7c3d2b5d3dc23863ea2b5eb29b0" + integrity sha512-ayJ0iOCDNHnKpKTgBG6Q6JOnHTj9zFta+3j2b8Ejza0e4cvRyMn0ZoLEmbPrTHe5YYRlDYPvPWVdV4cTaRyH7g== + dependencies: + "@types/expect" "^1.20.4" + "@types/node" "*" + "@typescript-eslint/eslint-plugin@^4.33.0": version "4.33.0" resolved "https://registry.yarnpkg.com/@typescript-eslint/eslint-plugin/-/eslint-plugin-4.33.0.tgz#c24dc7c8069c7706bc40d99f6fa87edcb2005276" @@ -1378,6 +1701,18 @@ JSONStream@^1.0.4, JSONStream@^1.2.1, JSONStream@^1.3.5: jsonparse "^1.2.0" through ">=2.2.7 <3" +abbrev@1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/abbrev/-/abbrev-1.1.1.tgz#f8f2c887ad10bf67f634f005b6987fed3179aac8" + integrity sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q== + +abort-controller@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/abort-controller/-/abort-controller-3.0.0.tgz#eaf54d53b62bae4138e809ca225c8439a6efb392" + integrity sha512-h8lQ8tacZYnR3vNQTgibj+tODHI5/+l06Au2Pcriv/Gmet0eaj4TwWH41sO9wnHDiQsEj19q0drzdWdeAHtweg== + dependencies: + event-target-shim "^5.0.0" + acorn-jsx@^5.3.1: version "5.3.2" resolved "https://registry.yarnpkg.com/acorn-jsx/-/acorn-jsx-5.3.2.tgz#7ed5bb55908b3b2f1bc55c6af1653bada7f07937" @@ -1405,6 +1740,15 @@ agent-base@6, agent-base@^6.0.0, agent-base@^6.0.2: dependencies: debug "4" +agentkeepalive@^4.1.3, agentkeepalive@^4.2.1: + version "4.2.1" + resolved "https://registry.yarnpkg.com/agentkeepalive/-/agentkeepalive-4.2.1.tgz#a7975cbb9f83b367f06c90cc51ff28fe7d499717" + integrity sha512-Zn4cw2NEqd+9fiSVWMscnjyQ1a8Yfoc5oBajLeo5w+YBHgDUcEBY2hS4YpTz6iN5f/2zQiktcuM6tS8x1p9dpA== + dependencies: + debug "^4.1.0" + depd "^1.1.2" + humanize-ms "^1.2.1" + aggregate-error@^3.0.0: version "3.1.0" resolved "https://registry.yarnpkg.com/aggregate-error/-/aggregate-error-3.1.0.tgz#92670ff50f5359bdb7a3e0d40d0ec30c5737687a" @@ -1423,10 +1767,10 @@ ajv@^6.10.0, ajv@^6.12.3, ajv@^6.12.4, ajv@^6.12.6: json-schema-traverse "^0.4.1" uri-js "^4.2.2" -ajv@^8.0.1: - version "8.9.0" - resolved "https://registry.yarnpkg.com/ajv/-/ajv-8.9.0.tgz#738019146638824dea25edcf299dcba1b0e7eb18" - integrity sha512-qOKJyNj/h+OWx7s5DePL6Zu1KeM9jPZhwBqs+7DzP6bGOvqzVCSf0xueYmVuaC/oQ/VtS2zLMLHdQFbkka+XDQ== +ajv@^8.0.1, ajv@^8.11.0: + version "8.11.0" + resolved "https://registry.yarnpkg.com/ajv/-/ajv-8.11.0.tgz#977e91dd96ca669f54a11e23e378e33b884a565f" + integrity sha512-wGgprdCvMalC0BztXvitD2hC04YffAvtsUn93JbGXYLAtCUO4xd17mCCZQxUOItiBwZvJScWo8NIvQMQ71rdpg== dependencies: fast-deep-equal "^3.1.1" json-schema-traverse "^1.0.0" @@ -1450,6 +1794,11 @@ ansi-escapes@^4.2.1, ansi-escapes@^4.3.0, ansi-escapes@^4.3.2: dependencies: type-fest "^0.21.3" +ansi-regex@^2.0.0: + version "2.1.1" + resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-2.1.1.tgz#c3b33ab5ee360d86e0e628f0468ae7ef27d654df" + integrity sha512-TIGnTpdo+E3+pCyAluZvtED5p5wCqLdezCyhPZzKPcxvFplEt4i+W7OONCKgeZFT3+y5NZZfOOS/Bdcanm1MYA== + ansi-regex@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-3.0.0.tgz#ed0317c322064f79466c02966bddb605ab37d998" @@ -1470,25 +1819,25 @@ ansi-regex@^6.0.1: resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-6.0.1.tgz#3183e38fae9a65d7cb5e53945cd5897d0260a06a" integrity sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA== -ansi-styles@^3.2.0, ansi-styles@^3.2.1: +ansi-styles@^2.2.1: + version "2.2.1" + resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-2.2.1.tgz#b432dd3358b634cf75e1e4664368240533c1ddbe" + integrity sha512-kmCevFghRiWM7HB5zTPULl4r9bVFSWjz62MhqizDGUrq2NWuNMQyuv4tHHoKJHs69M/MF64lEcHdYIocrdWQYA== + +ansi-styles@^3.0.0, ansi-styles@^3.2.0, ansi-styles@^3.2.1: version "3.2.1" resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-3.2.1.tgz#41fbb20243e50b12be0f04b8dedbf07520ce841d" integrity sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA== dependencies: color-convert "^1.9.0" -ansi-styles@^4.0.0, ansi-styles@^4.1.0, ansi-styles@^4.2.0, ansi-styles@^4.3.0: +ansi-styles@^4.0.0, ansi-styles@^4.1.0, ansi-styles@^4.2.0, ansi-styles@^4.2.1, ansi-styles@^4.3.0: version "4.3.0" resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-4.3.0.tgz#edd803628ae71c04c85ae7a0906edad34b648937" integrity sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg== dependencies: color-convert "^2.0.1" -ansi-styles@^6.0.0: - version "6.1.0" - resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-6.1.0.tgz#87313c102b8118abd57371afab34618bf7350ed3" - integrity sha512-VbqNsoz55SYGczauuup0MFUyXNQviSpFTj1RQtFzmQLk18qbVSpTFFGMT293rmDaQuKCT6InmbuEyUne4mTuxQ== - ansicolors@~0.3.2: version "0.3.2" resolved "https://registry.yarnpkg.com/ansicolors/-/ansicolors-0.3.2.tgz#665597de86a9ffe3aa9bfbe6cae5c6ea426b4979" @@ -1509,6 +1858,11 @@ append-transform@^2.0.0: dependencies: default-require-extensions "^3.0.0" +"aproba@^1.0.3 || ^2.0.0": + version "2.0.0" + resolved "https://registry.yarnpkg.com/aproba/-/aproba-2.0.0.tgz#52520b8ae5b569215b354efc0caa3fe1e45a8adc" + integrity sha512-lYe4Gx7QT+MKGbDsA+Z+he/Wtef0BiwDOlK/XkBrdfsh9J/jPPXbX0tE9x9cl27Tmu5gg3QUbUrQYa/y+KOHPQ== + archiver-utils@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/archiver-utils/-/archiver-utils-2.1.0.tgz#e8a460e94b693c3e3da182a098ca6285ba9249e2" @@ -1543,6 +1897,22 @@ archy@^1.0.0: resolved "https://registry.yarnpkg.com/archy/-/archy-1.0.0.tgz#f9c8c13757cc1dd7bc379ac77b2c62a5c2868c40" integrity sha1-+cjBN1fMHde8N5rHeyxipcKGjEA= +are-we-there-yet@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/are-we-there-yet/-/are-we-there-yet-2.0.0.tgz#372e0e7bd279d8e94c653aaa1f67200884bf3e1c" + integrity sha512-Ci/qENmwHnsYo9xKIcUJN5LeDKdJ6R1Z1j9V/J5wyq8nh/mYPEpIKJbBZXtZjG04HiK7zV/p6Vs9952MrMeUIw== + dependencies: + delegates "^1.0.0" + readable-stream "^3.6.0" + +are-we-there-yet@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/are-we-there-yet/-/are-we-there-yet-3.0.0.tgz#ba20bd6b553e31d62fc8c31bd23d22b95734390d" + integrity sha512-0GWpv50YSOcLXaN6/FAKY3vfRbllXWV2xvfA/oKJF8pzFhWXPV+yjhJXDBbjscDYowv7Yw1A3uigpzn5iEGTyw== + dependencies: + delegates "^1.0.0" + readable-stream "^3.6.0" + arg@^4.1.0: version "4.1.3" resolved "https://registry.yarnpkg.com/arg/-/arg-4.1.3.tgz#269fc7ad5b8e42cb63c896d5666017261c144089" @@ -1642,7 +2012,7 @@ arrify@^2.0.1: resolved "https://registry.yarnpkg.com/arrify/-/arrify-2.0.1.tgz#c9655e9331e0abcd588d2a7cad7e9956f66701fa" integrity sha512-3duEwti880xqi4eAMN8AyR4a0ByT90zoYdLlevfrvU43vb0YZwZVfxOgxWrLXXXpyugL0hNZc9G6BiB5B3nUug== -asap@*, asap@~2.0.3, asap@~2.0.6: +asap@*, asap@^2.0.0, asap@~2.0.3: version "2.0.6" resolved "https://registry.yarnpkg.com/asap/-/asap-2.0.6.tgz#e50347611d7e690943208bbdafebcbc2fb866d46" integrity sha1-5QNHYR1+aQlDIIu9r+vLwvuGbUY= @@ -1657,7 +2027,7 @@ asn1@~0.2.3: assert-plus@1.0.0, assert-plus@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/assert-plus/-/assert-plus-1.0.0.tgz#f12e0f3c5d77b0b1cdd9146942e4e96c1e4dd525" - integrity sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU= + integrity sha512-NfJ4UzBCcQGLDlQq7nHxH+tv3kyZ0hHQqF5BO6J7tNJeP5do1llPr8dZ8zHonfhAu0PHAdMkSo+8o0wxg9lZWw== assertion-error@^1.1.0: version "1.1.0" @@ -1718,10 +2088,25 @@ atob@^2.1.2: resolved "https://registry.yarnpkg.com/atob/-/atob-2.1.2.tgz#6d9517eb9e030d2436666651e86bd9f6f13533c9" integrity sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg== +aws-sdk@^2.1069.0: + version "2.1138.0" + resolved "https://registry.yarnpkg.com/aws-sdk/-/aws-sdk-2.1138.0.tgz#5975e028807a327e0900075de6a054fdd939a1f0" + integrity sha512-81Bs7qVf1/NrZBDCVIPpynODNN8fvXLdbsK024VITKFjts6DpvWjWPCsRYvEtaksF6uypMx5D02nTYJ8RiXq9w== + dependencies: + buffer "4.9.2" + events "1.1.1" + ieee754 "1.1.13" + jmespath "0.16.0" + querystring "0.2.0" + sax "1.2.1" + url "0.10.3" + uuid "3.3.2" + xml2js "0.4.19" + aws-sign2@~0.7.0: version "0.7.0" resolved "https://registry.yarnpkg.com/aws-sign2/-/aws-sign2-0.7.0.tgz#b46e890934a9591f2d2f6f86d7e6a9f1b3fe76a8" - integrity sha1-tG6JCTSpWR8tL2+G1+ap8bP+dqg= + integrity sha512-08kcGqnYf/YmjoRhfxyu+CLxBjUtHLXLXX/vUfx9l2LYzG3c1m61nrpyFUZI6zeS+Li/wWMMidD9KgrqtGq3mA== aws4@^1.8.0: version "1.11.0" @@ -1740,7 +2125,7 @@ balanced-match@^1.0.0: resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-1.0.2.tgz#e83e3a7e3f300b34cb9d87f615fa0cbf357690ee" integrity sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw== -base64-js@^1.3.1: +base64-js@^1.0.2, base64-js@^1.3.1: version "1.5.1" resolved "https://registry.yarnpkg.com/base64-js/-/base64-js-1.5.1.tgz#1b1b440160a5bf7ad40b650f095963481903930a" integrity sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA== @@ -1750,6 +2135,11 @@ base64-url@^2.2.0: resolved "https://registry.yarnpkg.com/base64-url/-/base64-url-2.3.3.tgz#645b71455c75109511f27d98450327e455f488ec" integrity sha512-dLMhIsK7OplcDauDH/tZLvK7JmUZK3A7KiQpjNzsBrM6Etw7hzNI1tLEywqJk9NnwkgWuFKSlx/IUO7vF6Mo8Q== +base64url@^3.0.1: + version "3.0.1" + resolved "https://registry.yarnpkg.com/base64url/-/base64url-3.0.1.tgz#6399d572e2bc3f90a9a8b22d5dbb0a32d33f788d" + integrity sha512-ir1UPr3dkwexU7FdV8qBBbNDRUhMmIekYMFZfi+C/sLNnRESKPl23nB9b2pltqfOQNnGzsDdId90AEtG5tCx4A== + base@^0.11.1: version "0.11.2" resolved "https://registry.yarnpkg.com/base/-/base-0.11.2.tgz#7bde5ced145b6d551a90db87f83c558b4eb48a8f" @@ -1766,15 +2156,32 @@ base@^0.11.1: bcrypt-pbkdf@^1.0.0: version "1.0.2" resolved "https://registry.yarnpkg.com/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz#a4301d389b6a43f9b67ff3ca11a3f6637e360e9e" - integrity sha1-pDAdOJtqQ/m2f/PKEaP2Y342Dp4= + integrity sha512-qeFIXtP4MSoi6NLqO12WfqARWWuCKi2Rn/9hJLEmtB5yTNr9DqFWkJRCf2qShWzPeAMRnOgCrq0sg/KLv5ES9w== dependencies: tweetnacl "^0.14.3" +before-after-hook@^2.2.0: + version "2.2.2" + resolved "https://registry.yarnpkg.com/before-after-hook/-/before-after-hook-2.2.2.tgz#a6e8ca41028d90ee2c24222f201c90956091613e" + integrity sha512-3pZEU3NT5BFUo/AD5ERPWOgQOCZITni6iavr5AUw5AUwQjMlI0kzu5btnyD39AF0gUEsDPwJT+oY1ORBJijPjQ== + big-integer@^1.6.17: version "1.6.51" resolved "https://registry.yarnpkg.com/big-integer/-/big-integer-1.6.51.tgz#0df92a5d9880560d3ff2d5fd20245c889d130686" integrity sha512-GPEid2Y9QU1Exl1rpO9B2IPJGHPSupF5GnVIP0blYvNOMer2bTvSWs1jGOUg04hTmu67nmLsQ9TBo1puaotBHg== +bin-links@^3.0.0: + version "3.0.1" + resolved "https://registry.yarnpkg.com/bin-links/-/bin-links-3.0.1.tgz#cc70ffb481988b22c527d3e6e454787876987a49" + integrity sha512-9vx+ypzVhASvHTS6K+YSGf7nwQdANoz7v6MTC0aCtYnOEZ87YvMf81aY737EZnGZdpbRM3sfWjO9oWkKmuIvyQ== + dependencies: + cmd-shim "^5.0.0" + mkdirp-infer-owner "^2.0.0" + npm-normalize-package-bin "^1.0.0" + read-cmd-shim "^3.0.0" + rimraf "^3.0.0" + write-file-atomic "^4.0.0" + binary-extensions@^2.0.0: version "2.2.0" resolved "https://registry.yarnpkg.com/binary-extensions/-/binary-extensions-2.2.0.tgz#75f502eeaf9ffde42fc98829645be4ea76bd9e2d" @@ -1793,7 +2200,12 @@ binaryextensions@^2.1.2: resolved "https://registry.yarnpkg.com/binaryextensions/-/binaryextensions-2.3.0.tgz#1d269cbf7e6243ea886aa41453c3651ccbe13c22" integrity sha512-nAihlQsYGyc5Bwq6+EsubvANYGExeJKHDO3RjnvwU042fawQTQfM3Kxn7IHUXQOz4bzfwsGYYHGSvXyW4zOGLg== -bl@^4.0.3: +binaryextensions@^4.15.0, binaryextensions@^4.16.0: + version "4.18.0" + resolved "https://registry.yarnpkg.com/binaryextensions/-/binaryextensions-4.18.0.tgz#22aeada2d14de062c60e8ca59a504a5636a76ceb" + integrity sha512-PQu3Kyv9dM4FnwB7XGj1+HucW+ShvJzJqjuw1JkKVs1mWdwOKVcRjOi+pV9X52A0tNvrPCsPkbFFQb+wE1EAXw== + +bl@^4.0.3, bl@^4.1.0: version "4.1.0" resolved "https://registry.yarnpkg.com/bl/-/bl-4.1.0.tgz#451535264182bec2fbbc83a62ab98cf11d9f7b3a" integrity sha512-1W07cM9gS6DcLperZfFSj+bWLtaPGSOHWhPiGzXmvVJbRLdG82sH/Kn8EtW1VqWVA54AKf2h5k5BbnIbwF3h6w== @@ -1881,6 +2293,15 @@ buffer-indexof-polyfill@~1.0.0: resolved "https://registry.yarnpkg.com/buffer-indexof-polyfill/-/buffer-indexof-polyfill-1.0.2.tgz#d2732135c5999c64b277fcf9b1abe3498254729c" integrity sha512-I7wzHwA3t1/lwXQh+A5PbNvJxgfo5r3xulgpYDB5zckTu/Z9oUK9biouBKQUjEqzaz3HnAT6TYoovmE+GqSf7A== +buffer@4.9.2: + version "4.9.2" + resolved "https://registry.yarnpkg.com/buffer/-/buffer-4.9.2.tgz#230ead344002988644841ab0244af8c44bbe3ef8" + integrity sha512-xq+q3SRMOxGivLhBNaUdC64hDTQwejJ+H0T/NB1XMtTVEwNTrfFF3gAxiyW0Bu/xWEGhjVKgUcMhCrUy2+uCWg== + dependencies: + base64-js "^1.0.2" + ieee754 "^1.1.4" + isarray "^1.0.0" + buffer@^5.5.0: version "5.7.1" resolved "https://registry.yarnpkg.com/buffer/-/buffer-5.7.1.tgz#ba62e7c13133053582197160851a8f648e99eed0" @@ -1894,11 +2315,64 @@ buffers@~0.1.1: resolved "https://registry.yarnpkg.com/buffers/-/buffers-0.1.1.tgz#b24579c3bed4d6d396aeee6d9a8ae7f5482ab7bb" integrity sha1-skV5w77U1tOWru5tmorn9Ugqt7s= +builtins@^1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/builtins/-/builtins-1.0.3.tgz#cb94faeb61c8696451db36534e1422f94f0aee88" + integrity sha512-uYBjakWipfaO/bXI7E8rq6kpwHRZK5cNYrUv2OzZSI/FvmdMyXJ2tG9dKcjEC5YHmHpUAwsargWIZNWdxb/bnQ== + bytes@3.1.2: version "3.1.2" resolved "https://registry.yarnpkg.com/bytes/-/bytes-3.1.2.tgz#8b0beeb98605adf1b128fa4386403c009e0221a5" integrity sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg== +cacache@^15.0.3, cacache@^15.0.5, cacache@^15.2.0: + version "15.3.0" + resolved "https://registry.yarnpkg.com/cacache/-/cacache-15.3.0.tgz#dc85380fb2f556fe3dda4c719bfa0ec875a7f1eb" + integrity sha512-VVdYzXEn+cnbXpFgWs5hTT7OScegHVmLhJIR8Ufqk3iFD6A6j5iSX1KuBTfNEv4tdJWE2PzA6IVFtcLC7fN9wQ== + dependencies: + "@npmcli/fs" "^1.0.0" + "@npmcli/move-file" "^1.0.1" + chownr "^2.0.0" + fs-minipass "^2.0.0" + glob "^7.1.4" + infer-owner "^1.0.4" + lru-cache "^6.0.0" + minipass "^3.1.1" + minipass-collect "^1.0.2" + minipass-flush "^1.0.5" + minipass-pipeline "^1.2.2" + mkdirp "^1.0.3" + p-map "^4.0.0" + promise-inflight "^1.0.1" + rimraf "^3.0.2" + ssri "^8.0.1" + tar "^6.0.2" + unique-filename "^1.1.1" + +cacache@^16.1.0: + version "16.1.0" + resolved "https://registry.yarnpkg.com/cacache/-/cacache-16.1.0.tgz#87a6bae558a511c9cb2a13768073e240ca76153a" + integrity sha512-Pk4aQkwCW82A4jGKFvcGkQFqZcMspfP9YWq9Pr87/ldDvlWf718zeI6KWCdKt/jeihu6BytHRUicJPB1K2k8EQ== + dependencies: + "@npmcli/fs" "^2.1.0" + "@npmcli/move-file" "^2.0.0" + chownr "^2.0.0" + fs-minipass "^2.1.0" + glob "^8.0.1" + infer-owner "^1.0.4" + lru-cache "^7.7.1" + minipass "^3.1.6" + minipass-collect "^1.0.2" + minipass-flush "^1.0.5" + minipass-pipeline "^1.2.4" + mkdirp "^1.0.4" + p-map "^4.0.0" + promise-inflight "^1.0.1" + rimraf "^3.0.2" + ssri "^9.0.0" + tar "^6.1.11" + unique-filename "^1.1.1" + cache-base@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/cache-base/-/cache-base-1.0.1.tgz#0a7f46416831c8b662ee36fe4e7c59d76f666ab2" @@ -1965,6 +2439,14 @@ callsites@^3.0.0: resolved "https://registry.yarnpkg.com/callsites/-/callsites-3.1.0.tgz#b3630abd8943432f54b3f0519238e33cd7df2f73" integrity sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ== +camel-case@^4.1.2: + version "4.1.2" + resolved "https://registry.yarnpkg.com/camel-case/-/camel-case-4.1.2.tgz#9728072a954f805228225a6deea6b38461e1bd5a" + integrity sha512-gxGWBrTT1JuMx6R+o5PTXMmUnhnVzLQ9SNutD4YqKtI6ap897t3tKECYla6gCWEkplXnlNybEkZg9GEGxKFCgw== + dependencies: + pascal-case "^3.1.2" + tslib "^2.0.3" + camelcase-keys@^6.2.2: version "6.2.2" resolved "https://registry.yarnpkg.com/camelcase-keys/-/camelcase-keys-6.2.2.tgz#5e755d6ba51aa223ec7d3d52f25778210f9dc3c0" @@ -1989,6 +2471,15 @@ caniuse-lite@^1.0.30001286: resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001304.tgz#38af55ed3fc8220cb13e35e6e7309c8c65a05559" integrity sha512-bdsfZd6K6ap87AGqSHJP/s1V+U6Z5lyrcbBu3ovbCCf8cSYpwTtGrCBObMpJqwxfTbLW6YTIdbb1jEeTelcpYQ== +capital-case@^1.0.4: + version "1.0.4" + resolved "https://registry.yarnpkg.com/capital-case/-/capital-case-1.0.4.tgz#9d130292353c9249f6b00fa5852bee38a717e669" + integrity sha512-ds37W8CytHgwnhGGTi88pcPyR15qoNkOpYwmMMfnWqqWgESapLqvDx6huFjQ5vqWSn2Z06173XNA7LtMOeUh1A== + dependencies: + no-case "^3.0.4" + tslib "^2.0.3" + upper-case-first "^2.0.2" + capture-stack-trace@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/capture-stack-trace/-/capture-stack-trace-1.0.1.tgz#a6c0bbe1f38f3aa0b92238ecb6ff42c344d4135d" @@ -2005,7 +2496,7 @@ cardinal@^2.1.1: caseless@~0.12.0: version "0.12.0" resolved "https://registry.yarnpkg.com/caseless/-/caseless-0.12.0.tgz#1b681c21ff84033c826543090689420d187151dc" - integrity sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw= + integrity sha512-4tYFyifaFfGacoiObjJegolkwSU4xQNGbVgUiNYVUxbQ2x2lUsFvY4hVgVzGiIe6WLOPqycWXA40l+PWsxthUw== chai-each@^0.0.1: version "0.0.1" @@ -2032,6 +2523,17 @@ chainsaw@~0.1.0: dependencies: traverse ">=0.3.0 <0.4" +chalk@^1.0.0: + version "1.1.3" + resolved "https://registry.yarnpkg.com/chalk/-/chalk-1.1.3.tgz#a8115c55e4a702fe4d150abd3872822a7e09fc98" + integrity sha512-U3lRVLMSlsCfjqYPbLyVv11M9CPW4I728d6TCKMAOJueEeB9/8o+eSsMnxPJD+Q+K909sdESg7C+tIkoH6on1A== + dependencies: + ansi-styles "^2.2.1" + escape-string-regexp "^1.0.2" + has-ansi "^2.0.0" + strip-ansi "^3.0.0" + supports-color "^2.0.0" + chalk@^2.0.0, chalk@^2.0.1, chalk@^2.4.1, chalk@^2.4.2: version "2.4.2" resolved "https://registry.yarnpkg.com/chalk/-/chalk-2.4.2.tgz#cd42541677a54333cf541a49108c1432b44c9424" @@ -2049,7 +2551,7 @@ chalk@^3.0.0: ansi-styles "^4.1.0" supports-color "^7.1.0" -chalk@^4.0.0, chalk@^4.1.0, chalk@^4.1.2: +chalk@^4, chalk@^4.0.0, chalk@^4.1.0, chalk@^4.1.1, chalk@^4.1.2: version "4.1.2" resolved "https://registry.yarnpkg.com/chalk/-/chalk-4.1.2.tgz#aac4e2b7734a740867aeb16bf02aad556a1e7a01" integrity sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA== @@ -2057,6 +2559,24 @@ chalk@^4.0.0, chalk@^4.1.0, chalk@^4.1.2: ansi-styles "^4.1.0" supports-color "^7.1.0" +change-case@^4.1.2: + version "4.1.2" + resolved "https://registry.yarnpkg.com/change-case/-/change-case-4.1.2.tgz#fedfc5f136045e2398c0410ee441f95704641e12" + integrity sha512-bSxY2ws9OtviILG1EiY5K7NNxkqg/JnRnFxLtKQ96JaviiIxi7djMrSd0ECT9AC+lttClmYwKw53BWpOMblo7A== + dependencies: + camel-case "^4.1.2" + capital-case "^1.0.4" + constant-case "^3.0.4" + dot-case "^3.0.4" + header-case "^2.0.4" + no-case "^3.0.4" + param-case "^3.0.4" + pascal-case "^3.1.2" + path-case "^3.0.4" + sentence-case "^3.0.4" + snake-case "^3.0.4" + tslib "^2.0.3" + chardet@^0.7.0: version "0.7.0" resolved "https://registry.yarnpkg.com/chardet/-/chardet-0.7.0.tgz#90094849f0937f2eedc2425d0d28a9e5f0cbad9e" @@ -2087,6 +2607,11 @@ chownr@^1.1.1: resolved "https://registry.yarnpkg.com/chownr/-/chownr-1.1.4.tgz#6fc9d7b42d32a583596337666e7d08084da2cc6b" integrity sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg== +chownr@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/chownr/-/chownr-2.0.0.tgz#15bfbe53d2eab4cf70f18a8cd68ebe5b3cb1dece" + integrity sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ== + ci-info@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/ci-info/-/ci-info-2.0.0.tgz#67a9e964be31a51e15e5010d58e6f12834002f46" @@ -2119,6 +2644,11 @@ clean-stack@^3.0.0, clean-stack@^3.0.1: dependencies: escape-string-regexp "4.0.0" +cli-boxes@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/cli-boxes/-/cli-boxes-1.0.0.tgz#4fa917c3e59c94a004cd61f8ee509da651687143" + integrity sha512-3Fo5wu8Ytle8q9iCzS4D2MWVL2X7JVWRiS1BnXbTFDhS9c/REkM9vd1AmabsoZoY5/dGi5TT9iKL8Kb6DeBRQg== + cli-cursor@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/cli-cursor/-/cli-cursor-2.1.0.tgz#b35dac376479facc3e94747d41d0d0f5238ffcb5" @@ -2140,6 +2670,11 @@ cli-progress@^3.10.0, cli-progress@^3.4.0: dependencies: string-width "^4.2.0" +cli-spinners@^2.5.0: + version "2.6.1" + resolved "https://registry.yarnpkg.com/cli-spinners/-/cli-spinners-2.6.1.tgz#adc954ebe281c37a6319bfa401e6dd2488ffb70d" + integrity sha512-x/5fWmGMnbKQAaNwN+UZlV79qBLM9JFnJuJ03gIi5whrob0xV0ofNVHy9DhwGdsMJQc2OKv0oGmLzvaqvAVv+g== + cli-table@^0.3.1: version "0.3.11" resolved "https://registry.yarnpkg.com/cli-table/-/cli-table-0.3.11.tgz#ac69cdecbe81dccdba4889b9a18b7da312a9d3ee" @@ -2155,15 +2690,7 @@ cli-truncate@^2.1.0: slice-ansi "^3.0.0" string-width "^4.2.0" -cli-truncate@^3.1.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/cli-truncate/-/cli-truncate-3.1.0.tgz#3f23ab12535e3d73e839bb43e73c9de487db1389" - integrity sha512-wfOBkjXteqSnI59oPcJkcPl/ZmwvMMOj340qUIY1SKZCv0B9Cf4D4fAucRkIKQmsIuYK3x1rrgU7MeGRruiuiA== - dependencies: - slice-ansi "^5.0.0" - string-width "^5.0.0" - -cli-ux@5.6.7, cli-ux@^5.6.3: +cli-ux@5.6.7: version "5.6.7" resolved "https://registry.yarnpkg.com/cli-ux/-/cli-ux-5.6.7.tgz#32ef9e6cb2b457be834280cc799028a11c8235a8" integrity sha512-dsKAurMNyFDnO6X1TiiRNiVbL90XReLKcvIq4H777NMqXGBxBws23ag8ubCJE97vVZEgWG2eSUhsyLf63Jv8+g== @@ -2276,6 +2803,11 @@ clone-stats@^1.0.0: resolved "https://registry.yarnpkg.com/clone-stats/-/clone-stats-1.0.0.tgz#b3782dff8bb5474e18b9b6bf0fdfe782f8777680" integrity sha1-s3gt/4u1R04Yuba/D9/ngvh3doA= +clone@^1.0.2: + version "1.0.4" + resolved "https://registry.yarnpkg.com/clone/-/clone-1.0.4.tgz#da309cc263df15994c688ca902179ca3c7cd7c7e" + integrity sha1-2jCcwmPfFZlMaIypAheco8fNfH4= + clone@^2.1.1: version "2.1.2" resolved "https://registry.yarnpkg.com/clone/-/clone-2.1.2.tgz#1b7f4b9f591f1e8f83670401600345a02887435f" @@ -2290,13 +2822,25 @@ cloneable-readable@^1.0.0: process-nextick-args "^2.0.0" readable-stream "^2.3.5" +cmd-shim@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/cmd-shim/-/cmd-shim-5.0.0.tgz#8d0aaa1a6b0708630694c4dbde070ed94c707724" + integrity sha512-qkCtZ59BidfEwHltnJwkyVZn+XQojdAySM1D1gSeh11Z4pW1Kpolkyo53L5noc0nrxmIvyFwTmJRo4xs7FFLPw== + dependencies: + mkdirp-infer-owner "^2.0.0" + co-prompt@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/co-prompt/-/co-prompt-1.0.0.tgz#fb370e9edac48576b27a732fe5d7f21d9fc6e6f6" - integrity sha1-+zcOntrEhXayenMv5dfyHZ/G5vY= + integrity sha512-uKmEbjDnL9SJTb+TNfIFsATe1F3IsNsR7KDGUG1hq7ColkMV0MSn7dg3eKVS+3wwtyvVqrgfIwi39NOJiknO7Q== dependencies: keypress "~0.2.1" +code-point-at@^1.0.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/code-point-at/-/code-point-at-1.1.0.tgz#0d070b4d043a5bea33a2f1a40e2edb3d9a4ccf77" + integrity sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c= + coffeescript@^1.10.0: version "1.12.7" resolved "https://registry.yarnpkg.com/coffeescript/-/coffeescript-1.12.7.tgz#e57ee4c4867cf7f606bfc4a0f2d550c0981ddd27" @@ -2334,6 +2878,11 @@ color-name@~1.1.4: resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.4.tgz#c2a09a87acbde69543de6f63fa3995c826c536a2" integrity sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA== +color-support@^1.1.2, color-support@^1.1.3: + version "1.1.3" + resolved "https://registry.yarnpkg.com/color-support/-/color-support-1.1.3.tgz#93834379a1cc9a0c61f82f52f0d04322251bd5a2" + integrity sha512-qiBjkpbMLO/HL68y+lh4q0/O1MZFj2RX6X/KmMa3+gJD3z+WwI1ZzDHysvqHGS3mP6mznPckpXmw1nI9cJjyRg== + colorette@^2.0.16: version "2.0.16" resolved "https://registry.yarnpkg.com/colorette/-/colorette-2.0.16.tgz#713b9af84fdb000139f04546bd4a93f62a5085da" @@ -2344,24 +2893,34 @@ colors@1.0.3: resolved "https://registry.yarnpkg.com/colors/-/colors-1.0.3.tgz#0433f44d809680fdeb60ed260f1b0c262e82a40b" integrity sha1-BDP0TYCWgP3rYO0mDxsMJi6CpAs= -combined-stream@^1.0.6, combined-stream@~1.0.6: +combined-stream@^1.0.6, combined-stream@^1.0.8, combined-stream@~1.0.6: version "1.0.8" resolved "https://registry.yarnpkg.com/combined-stream/-/combined-stream-1.0.8.tgz#c3d45a8b34fd730631a110a8a2520682b31d5a7f" integrity sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg== dependencies: delayed-stream "~1.0.0" +commander@7.1.0: + version "7.1.0" + resolved "https://registry.yarnpkg.com/commander/-/commander-7.1.0.tgz#f2eaecf131f10e36e07d894698226e36ae0eb5ff" + integrity sha512-pRxBna3MJe6HKnBGsDyMv8ETbptw3axEdYHoqNh7gu5oDcew8fs0xnivZGm06Ogk8zGAJ9VX+OPEr2GXEQK4dg== + commander@^2.9.0: version "2.20.3" resolved "https://registry.yarnpkg.com/commander/-/commander-2.20.3.tgz#fd485e84c03eb4881c20722ba48035e8531aeb33" integrity sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ== +commander@^4.0.1: + version "4.1.1" + resolved "https://registry.yarnpkg.com/commander/-/commander-4.1.1.tgz#9fd602bd936294e9e9ef46a3f4d6964044b18068" + integrity sha512-NOKm8xhkzAjzFx8B2v5OAHT+u5pRQc2UCa2Vq9jYL/31o2wi9mxBA7LIFs3sV5VSC49z6pEhfbMULvShKj26WA== + commander@^6.2.0: version "6.2.1" resolved "https://registry.yarnpkg.com/commander/-/commander-6.2.1.tgz#0792eb682dfbc325999bb2b84fddddba110ac73c" integrity sha512-U7VdrJFnJgo4xjrHpTzu0yrHPGImdsmD95ZlgYSEajAn2JKzDhDTPG9kBTefmObL2w/ngeZnilk+OV9CG3d7UA== -commander@^8.2.0, commander@^8.3.0: +commander@^8.2.0: version "8.3.0" resolved "https://registry.yarnpkg.com/commander/-/commander-8.3.0.tgz#4837ea1b2da67b9c616a67afbb0fafee567bca66" integrity sha512-OkTL9umf+He2DZkUq8f8J9of7yL6RJKI24dVITBmNfZBmri9zYZQrKkuXiKhyfPSu8tUhnVBB1iKXevvnlR4Ww== @@ -2391,6 +2950,11 @@ commitizen@^4.0.3: strip-bom "4.0.0" strip-json-comments "3.0.1" +common-ancestor-path@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/common-ancestor-path/-/common-ancestor-path-1.0.1.tgz#4f7d2d1394d91b7abdf51871c62f71eadb0182a7" + integrity sha512-L3sHRo1pXXEqX8VU28kfgUY+YGsk09hPqZiZmLacNib6XNTCM8ubYeT7ryXQw8asB1sKgcU5lkB7ONug08aB8w== + commondir@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/commondir/-/commondir-1.0.1.tgz#ddd800da0c66127393cca5950ea968a3aaf1253b" @@ -2429,6 +2993,35 @@ concat-map@0.0.1: resolved "https://registry.yarnpkg.com/concat-map/-/concat-map-0.0.1.tgz#d8a96bd77fd68df7793a73036a3ba0d5405d477b" integrity sha1-2Klr13/Wjfd5OnMDajug1UBdR3s= +concurrently@^7.0.0: + version "7.2.0" + resolved "https://registry.yarnpkg.com/concurrently/-/concurrently-7.2.0.tgz#4d9b4d1e527b8a8cb101bc2aee317e09496fad43" + integrity sha512-4KIVY5HopDRhN3ndAgfFOLsMk1PZUPgghlgTMZ5Pb5aTrqYg86RcZaIZC2Cz+qpZ9DsX36WHGjvWnXPqdnblhw== + dependencies: + chalk "^4.1.0" + date-fns "^2.16.1" + lodash "^4.17.21" + rxjs "^6.6.3" + shell-quote "^1.7.3" + spawn-command "^0.0.2-1" + supports-color "^8.1.0" + tree-kill "^1.2.2" + yargs "^17.3.1" + +console-control-strings@^1.0.0, console-control-strings@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/console-control-strings/-/console-control-strings-1.1.0.tgz#3d7cf4464db6446ea644bf4b39507f9851008e8e" + integrity sha1-PXz0Rk22RG6mRL9LOVB/mFEAjo4= + +constant-case@^3.0.4: + version "3.0.4" + resolved "https://registry.yarnpkg.com/constant-case/-/constant-case-3.0.4.tgz#3b84a9aeaf4cf31ec45e6bf5de91bdfb0589faf1" + integrity sha512-I2hSBi7Vvs7BEuJDr5dDHfzb/Ruj3FyvFyh7KLilAjNQw3Be+xgqUBA2W6scVEcL0hL1dwPRtIqEPVUCKkSsyQ== + dependencies: + no-case "^3.0.4" + tslib "^2.0.3" + upper-case "^2.0.2" + content-type@^1.0.4: version "1.0.4" resolved "https://registry.yarnpkg.com/content-type/-/content-type-1.0.4.tgz#e138cc75e040c727b1966fe5e5f8c9aee256fe3b" @@ -2480,10 +3073,20 @@ copy-descriptor@^0.1.0: resolved "https://registry.yarnpkg.com/copy-descriptor/-/copy-descriptor-0.1.1.tgz#676f6eb3c39997c2ee1ac3a924fd6124748f578d" integrity sha1-Z29us8OZl8LuGsOpJP1hJHSPV40= +core-js-pure@^3.20.2: + version "3.22.5" + resolved "https://registry.yarnpkg.com/core-js-pure/-/core-js-pure-3.22.5.tgz#bdee0ed2f9b78f2862cda4338a07b13a49b6c9a9" + integrity sha512-8xo9R00iYD7TcV7OrC98GwxiUEAabVWO3dix+uyWjnYrx9fyASLlIX+f/3p5dW5qByaP2bcZ8X/T47s55et/tA== + +core-js@^3.6.4: + version "3.22.5" + resolved "https://registry.yarnpkg.com/core-js/-/core-js-3.22.5.tgz#a5f5a58e663d5c0ebb4e680cd7be37536fb2a9cf" + integrity sha512-VP/xYuvJ0MJWRAobcmQ8F2H6Bsn+s7zqAAjFaHGBMc5AQm7zaelhD1LGduFn2EehEcQcU+br6t+fwbpQ5d1ZWA== + core-util-is@1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/core-util-is/-/core-util-is-1.0.2.tgz#b5fd54220aa2bc5ab57aab7140c940754503c1a7" - integrity sha1-tf1UIgqivFq1eqtxQMlAdUUDwac= + integrity sha512-3lqz5YjWTYnW6dlDa5TLaTCcShfar1e40rmcJVwCBJC6mWlFuj0eCHIElmG1g5kyuJ/GD+8Wn4FFCcz4gJPfaQ== core-util-is@~1.0.0: version "1.0.3" @@ -2564,14 +3167,14 @@ cross-spawn@^7.0.0, cross-spawn@^7.0.1, cross-spawn@^7.0.2, cross-spawn@^7.0.3: shebang-command "^2.0.0" which "^2.0.1" -csprng@*, csprng@~0.1.2: +csprng@*: version "0.1.2" resolved "https://registry.yarnpkg.com/csprng/-/csprng-0.1.2.tgz#4bc68f12fa368d252a59841cbaca974b18ab45e2" integrity sha1-S8aPEvo2jSUqWYQcusqXSxirReI= dependencies: sequin "*" -csv-parse@^4.10.1: +csv-parse@^4.10.1, csv-parse@^4.8.2: version "4.16.3" resolved "https://registry.yarnpkg.com/csv-parse/-/csv-parse-4.16.3.tgz#7ca624d517212ebc520a36873c3478fa66efbaf7" integrity sha512-cO1I/zmz4w2dcKHVvpCr7JVRu8/FymG5OEpmvsZYlccYolPBLoVGKUHgNoc4ZGkFeFlWGEDmMyBM+TTqRdW/wg== @@ -2579,10 +3182,15 @@ csv-parse@^4.10.1: csv-stringify@^1.0.4: version "1.1.2" resolved "https://registry.yarnpkg.com/csv-stringify/-/csv-stringify-1.1.2.tgz#77a41526581bce3380f12b00d7c5bbac70c82b58" - integrity sha1-d6QVJlgbzjOA8SsA18W7rHDIK1g= + integrity sha512-3NmNhhd+AkYs5YtM1GEh01VR6PKj6qch2ayfQaltx5xpcAdThjnbbI5eT8CzRVpXfGKAxnmrSYLsNl/4f3eWiw== dependencies: lodash.get "~4.4.2" +csv-stringify@^5.3.4: + version "5.6.5" + resolved "https://registry.yarnpkg.com/csv-stringify/-/csv-stringify-5.6.5.tgz#c6d74badda4b49a79bf4e72f91cce1e33b94de00" + integrity sha512-PjiQ659aQ+fUTQqSrd1XEDnOr52jh30RBurfzkscaE2tPaFsDH5wOAHJiw8XAHphRknCwMUE9KRayc4K/NbO8A== + cz-conventional-changelog@3.2.0: version "3.2.0" resolved "https://registry.yarnpkg.com/cz-conventional-changelog/-/cz-conventional-changelog-3.2.0.tgz#6aef1f892d64113343d7e455529089ac9f20e477" @@ -2624,7 +3232,7 @@ dargs@^7.0.0: dashdash@^1.12.0: version "1.14.1" resolved "https://registry.yarnpkg.com/dashdash/-/dashdash-1.14.1.tgz#853cfa0f7cbe2fed5de20326b8dd581035f6e2f0" - integrity sha1-hTz6D3y+L+1d4gMmuN1YEDX24vA= + integrity sha512-jRFi8UDGo6j+odZiEpjazZaWqEal3w/basFjQHQEwVtZJGDpxbH1MeYluwCS8Xq5wmLJooDlMgvVarmWfGM44g== dependencies: assert-plus "^1.0.0" @@ -2633,11 +3241,21 @@ data-uri-to-buffer@3: resolved "https://registry.yarnpkg.com/data-uri-to-buffer/-/data-uri-to-buffer-3.0.1.tgz#594b8973938c5bc2c33046535785341abc4f3636" integrity sha512-WboRycPNsVw3B3TL559F7kuBUM4d8CgMEvk6xEJlOp7OBPjt6G7z8WMWlD2rOFZLk6OYfFIUGsCOWzcQH9K2og== +date-fns@^2.16.1: + version "2.28.0" + resolved "https://registry.yarnpkg.com/date-fns/-/date-fns-2.28.0.tgz#9570d656f5fc13143e50c975a3b6bbeb46cd08b2" + integrity sha512-8d35hViGYx/QH0icHYCeLmsLmMUheMmTyV9Fcm6gvNwdw31yXXH+O85sOBJ+OLnLQMKZowvpKb6FgMIQjcpvQw== + dateformat@^3.0.3: version "3.0.3" resolved "https://registry.yarnpkg.com/dateformat/-/dateformat-3.0.3.tgz#a6e37499a4d9a9cf85ef5872044d62901c9889ae" integrity sha512-jyCETtSl3VMZMWeRo7iY1FL19ges1t55hMo5yaam4Jrsm5EPL89UQkoQRyiI+Yf4k8r2ZpdngkV8hr1lIdjb3Q== +dateformat@^4.5.0: + version "4.6.3" + resolved "https://registry.yarnpkg.com/dateformat/-/dateformat-4.6.3.tgz#556fa6497e5217fedb78821424f8a1c22fa3f4b5" + integrity sha512-2P0p0pFGzHS5EMnhdxQi7aJN+iMheud0UhG4dlE1DLAlvL8JHjJJTX/CSm4JXwV0Ka5nGk3zC5mcb5bUQUxxMA== + dayjs-plugin-utc@^0.1.2: version "0.1.2" resolved "https://registry.yarnpkg.com/dayjs-plugin-utc/-/dayjs-plugin-utc-0.1.2.tgz#48e552407024143922d6499a40f6c765f8c93d03" @@ -2648,7 +3266,7 @@ dayjs@^1.8.16: resolved "https://registry.yarnpkg.com/dayjs/-/dayjs-1.10.7.tgz#2cf5f91add28116748440866a0a1d26f3a6ce468" integrity sha512-P6twpd70BcPK34K26uJ1KT3wlhpuOAPoMwJzpsIWUxHZ7wpmbdZL/hQqBDfz7hGurYSa5PhzdhDHtt319hL3ig== -debug@4, debug@^4.0.1, debug@^4.1.0, debug@^4.1.1, debug@^4.2.0, debug@^4.3.1, debug@^4.3.2, debug@^4.3.3: +debug@4, debug@^4.0.1, debug@^4.1.0, debug@^4.1.1, debug@^4.2.0, debug@^4.3.1, debug@^4.3.2, debug@^4.3.3, debug@^4.3.4: version "4.3.4" resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.4.tgz#1319f6579357f2338d3337d2cdd4914bb5dcc865" integrity sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ== @@ -2676,6 +3294,11 @@ debug@^3.1.0, debug@^3.2.7: dependencies: ms "^2.1.1" +debuglog@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/debuglog/-/debuglog-1.0.1.tgz#aa24ffb9ac3df9a2351837cfb2d279360cd78492" + integrity sha1-qiT/uaw9+aI1GDfPstJ5NgzXhJI= + decamelize-keys@^1.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/decamelize-keys/-/decamelize-keys-1.1.0.tgz#d171a87933252807eb3cb61dc1c1445d078df2d9" @@ -2735,6 +3358,13 @@ default-require-extensions@^3.0.0: dependencies: strip-bom "^4.0.0" +defaults@^1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/defaults/-/defaults-1.0.3.tgz#c656051e9817d9ff08ed881477f3fe4019f3ef7d" + integrity sha1-xlYFHpgX2f8I7YgUd/P+QBnz730= + dependencies: + clone "^1.0.2" + defer-to-connect@^2.0.0: version "2.0.1" resolved "https://registry.yarnpkg.com/defer-to-connect/-/defer-to-connect-2.0.1.tgz#8016bdb4143e4632b77a3449c6236277de520587" @@ -2789,11 +3419,26 @@ delayed-stream@~1.0.0: resolved "https://registry.yarnpkg.com/delayed-stream/-/delayed-stream-1.0.0.tgz#df3ae199acadfb7d440aaae0b29e2272b24ec619" integrity sha1-3zrhmayt+31ECqrgsp4icrJOxhk= +delegates@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/delegates/-/delegates-1.0.0.tgz#84c6e159b81904fdca59a0ef44cd870d31250f9a" + integrity sha1-hMbhWbgZBP3KWaDvRM2HDTElD5o= + depd@2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/depd/-/depd-2.0.0.tgz#b696163cc757560d09cf22cc8fad1571b79e76df" integrity sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw== +depd@^1.1.2: + version "1.1.2" + resolved "https://registry.yarnpkg.com/depd/-/depd-1.1.2.tgz#9bcd52e14c097763e749b274c4346ed2e560b5a9" + integrity sha1-m81S4UwJd2PnSbJ0xDRu0uVgtak= + +deprecation@^2.0.0, deprecation@^2.3.1: + version "2.3.1" + resolved "https://registry.yarnpkg.com/deprecation/-/deprecation-2.3.1.tgz#6368cbdb40abf3373b525ac87e4a260c3a700919" + integrity sha512-xmHIy4F3scKVwMsQ4WnVaS8bHOx0DmVwRywosKhaILI0ywMDWPtBSku2HNxRvF7jtwDRsoEwYQSfbxj8b7RlJQ== + detect-conflict@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/detect-conflict/-/detect-conflict-1.0.1.tgz#088657a66a961c05019db7c4230883b1c6b4176e" @@ -2814,6 +3459,14 @@ detect-indent@^6.0.0: resolved "https://registry.yarnpkg.com/detect-indent/-/detect-indent-6.1.0.tgz#592485ebbbf6b3b1ab2be175c8393d04ca0d57e6" integrity sha512-reYkTUJAZb9gUuZ2RvVCNhVHdg62RHnJ7WJl8ftMi4diZ6NWlciOzQN88pUhSELEwflJht4oQDv0F0BMlwaYtA== +dezalgo@^1.0.0: + version "1.0.4" + resolved "https://registry.yarnpkg.com/dezalgo/-/dezalgo-1.0.4.tgz#751235260469084c132157dfa857f386d4c33d81" + integrity sha512-rXSP0bf+5n0Qonsb+SVVfNfIsimO4HEtmnIpPHY8Q1UCzKlQrDMfdobr8nJOOsRgWCyMRqeSBQzmWUMq7zvVig== + dependencies: + asap "^2.0.0" + wrappy "1" + diff3@0.0.3: version "0.0.3" resolved "https://registry.yarnpkg.com/diff3/-/diff3-0.0.3.tgz#d4e5c3a4cdf4e5fe1211ab42e693fcb4321580fc" @@ -2870,6 +3523,14 @@ doctrine@^3.0.0: dependencies: esutils "^2.0.2" +dot-case@^3.0.4: + version "3.0.4" + resolved "https://registry.yarnpkg.com/dot-case/-/dot-case-3.0.4.tgz#9b2b670d00a431667a8a75ba29cd1b98809ce751" + integrity sha512-Kv5nKlh6yRrdrGvxeJ2e5y2eRUpkUosIW4A2AS38zwSz27zu7ufDwQPi5Jhs3XAlGNetl3bmnGhQsMtkKJnj3w== + dependencies: + no-case "^3.0.4" + tslib "^2.0.3" + dot-prop@^5.1.0: version "5.3.0" resolved "https://registry.yarnpkg.com/dot-prop/-/dot-prop-5.3.0.tgz#90ccce708cd9cd82cc4dc8c3ddd9abdd55b20e88" @@ -2905,15 +3566,10 @@ duplexer3@^0.1.4: resolved "https://registry.yarnpkg.com/duplexer3/-/duplexer3-0.1.4.tgz#ee01dd1cac0ed3cbc7fdbea37dc0a8f1ce002ce2" integrity sha1-7gHdHKwO08vH/b6jfcCo8c4ALOI= -eastasianwidth@^0.2.0: - version "0.2.0" - resolved "https://registry.yarnpkg.com/eastasianwidth/-/eastasianwidth-0.2.0.tgz#696ce2ec0aa0e6ea93a397ffcf24aa7840c827cb" - integrity sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA== - ecc-jsbn@~0.1.1: version "0.1.2" resolved "https://registry.yarnpkg.com/ecc-jsbn/-/ecc-jsbn-0.1.2.tgz#3a83a904e54353287874c564b7549386849a98c9" - integrity sha1-OoOpBOVDUyh4dMVkt1SThoSamMk= + integrity sha512-eh9O+hwRHNbG4BLTjEl3nw044CkGm5X6LoaCf7LPp7UU8Qrt47JYNi6nPX8xjW97TKGKm1ouctg0QSpZe9qrnw== dependencies: jsbn "~0.1.0" safer-buffer "^2.1.0" @@ -2960,10 +3616,12 @@ emoji-regex@^8.0.0: resolved "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-8.0.0.tgz#e818fd69ce5ccfcb404594f842963bf53164cc37" integrity sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A== -emoji-regex@^9.2.2: - version "9.2.2" - resolved "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-9.2.2.tgz#840c8803b0d8047f4ff0cf963176b32d4ef3ed72" - integrity sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg== +encoding@^0.1.12, encoding@^0.1.13: + version "0.1.13" + resolved "https://registry.yarnpkg.com/encoding/-/encoding-0.1.13.tgz#56574afdd791f54a8e9b2785c0582a2d26210fa9" + integrity sha512-ETBauow1T35Y/WZMkio9jiM0Z5xjHHmJ4XmjZOq1l/dXz3lr2sRn87nJy20RupqSh1F2m3HHPSp8ShIPQJrJ3A== + dependencies: + iconv-lite "^0.6.2" end-of-stream@^1.1.0, end-of-stream@^1.4.1: version "1.4.4" @@ -2979,6 +3637,16 @@ enquirer@^2.3.5, enquirer@^2.3.6: dependencies: ansi-colors "^4.1.1" +env-paths@^2.2.0: + version "2.2.1" + resolved "https://registry.yarnpkg.com/env-paths/-/env-paths-2.2.1.tgz#420399d416ce1fbe9bc0a07c62fa68d67fd0f8f2" + integrity sha512-+h1lkLKhZMTYjog1VEpJNG7NZJWcuc2DDk/qsqSTRRCOXiLjeQ1d1/udrUGhqMxUgAlwKNZ0cf2uqan5GLuS2A== + +err-code@^2.0.2: + version "2.0.3" + resolved "https://registry.yarnpkg.com/err-code/-/err-code-2.0.3.tgz#23c2f3b756ffdfc608d30e27c9a941024807e7f9" + integrity sha512-2bmlRpNKBxT/CRmPOlyISQpNj+qSeYvcym/uT0Jx2bMOlKLtSy1ZmLuVxSEKKyor/N5yhvp/ZiG1oE3DEYMSFA== + errlop@^2.0.0: version "2.2.0" resolved "https://registry.yarnpkg.com/errlop/-/errlop-2.2.0.tgz#1ff383f8f917ae328bebb802d6ca69666a42d21b" @@ -2991,6 +3659,11 @@ error-ex@^1.3.1: dependencies: is-arrayish "^0.2.1" +error@^10.4.0: + version "10.4.0" + resolved "https://registry.yarnpkg.com/error/-/error-10.4.0.tgz#6fcf0fd64bceb1e750f8ed9a3dd880f00e46a487" + integrity sha512-YxIFEJuhgcICugOUvRx5th0UM+ActZ9sjY0QJmeVwsQdvosZ7kYzc9QqS0Da3R5iUmgU5meGIxh0xBeZpMVeLw== + error@^7.0.2: version "7.2.1" resolved "https://registry.yarnpkg.com/error/-/error-7.2.1.tgz#eab21a4689b5f684fc83da84a0e390de82d94894" @@ -3301,6 +3974,21 @@ esutils@^2.0.2: resolved "https://registry.yarnpkg.com/esutils/-/esutils-2.0.3.tgz#74d2eb4de0b8da1293711910d50775b9b710ef64" integrity sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g== +event-target-shim@^5.0.0: + version "5.0.1" + resolved "https://registry.yarnpkg.com/event-target-shim/-/event-target-shim-5.0.1.tgz#5d4d3ebdf9583d63a5333ce2deb7480ab2b05789" + integrity sha512-i/2XbnSz/uxRCU6+NdVJgKWDTM427+MqYbkQzD321DuCQJUqOuJKIA0IM2+W2xtYHdKOmZ4dR6fExsd4SXL+WQ== + +eventemitter3@^4.0.4: + version "4.0.7" + resolved "https://registry.yarnpkg.com/eventemitter3/-/eventemitter3-4.0.7.tgz#2de9b68f6528d5644ef5c59526a1b4a07306169f" + integrity sha512-8guHBZCwKnFhYdHr2ysuRWErTwhoN2X8XELRlrRwpmfeY2jjuUN4taQMsULKUVo1K4DvZl+0pgfyoysHxvmvEw== + +events@1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/events/-/events-1.1.1.tgz#9ebdb7635ad099c70dcc4c2a1f5004288e8bd924" + integrity sha1-nr23Y1rQmccNzEwqH1AEKI6L2SQ= + execa@^0.10.0: version "0.10.0" resolved "https://registry.yarnpkg.com/execa/-/execa-0.10.0.tgz#ff456a8f53f90f8eccc71a96d11bdfc7f082cb50" @@ -3329,7 +4017,7 @@ execa@^4.0.0, execa@^4.1.0: signal-exit "^3.0.2" strip-final-newline "^2.0.0" -execa@^5.0.0, execa@^5.1.1: +execa@^5.0.0: version "5.1.1" resolved "https://registry.yarnpkg.com/execa/-/execa-5.1.1.tgz#f80ad9cbf4298f7bd1d4c9555c21e93741c411dd" integrity sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg== @@ -3425,7 +4113,7 @@ extract-stack@^2.0.0: extsprintf@1.3.0: version "1.3.0" resolved "https://registry.yarnpkg.com/extsprintf/-/extsprintf-1.3.0.tgz#96918440e3041a7a414f8c52e3c574eb3c3e1e05" - integrity sha1-lpGEQOMEGnpBT4xS48V06zw+HgU= + integrity sha512-11Ndz7Nv+mvAC1j0ktTa7fAb0vLyGGX+rMHNBYQviQDGU0Hw7lhctJANqbPhu9nV9/izT/IntTgZ7Im/9LJs9g== extsprintf@^1.2.0: version "1.4.1" @@ -3446,6 +4134,20 @@ fancy-test@^1.4.10: nock "^13.0.0" stdout-stderr "^0.1.9" +fancy-test@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/fancy-test/-/fancy-test-2.0.0.tgz#f1477ae4190820318816914aabe273c0a0dbd597" + integrity sha512-SFb2D/VX9SV+wNYXO1IIh1wyxUC1GS0mYCFJOWD1ia7MPj9yE2G8jaPkw4t/pg0Sj7/YJP56OzMY4nAuJSOugQ== + dependencies: + "@types/chai" "*" + "@types/lodash" "*" + "@types/node" "*" + "@types/sinon" "*" + lodash "^4.17.13" + mock-stdin "^1.0.0" + nock "^13.0.0" + stdout-stderr "^0.1.9" + fast-deep-equal@^3.1.1, fast-deep-equal@^3.1.3: version "3.1.3" resolved "https://registry.yarnpkg.com/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz#3a7d56b559d6cbc3eb512325244e619a65c6c525" @@ -3489,6 +4191,13 @@ fast-levenshtein@^2.0.6, fast-levenshtein@~2.0.6: resolved "https://registry.yarnpkg.com/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz#3d8a5c66883a16a30ca8643e851f19baa7797917" integrity sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc= +fast-levenshtein@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/fast-levenshtein/-/fast-levenshtein-3.0.0.tgz#37b899ae47e1090e40e3fd2318e4d5f0142ca912" + integrity sha512-hKKNajm46uNmTlhHSyZkmToAc56uZJwYq7yrciZjqOxnlfQwERDQJmHPUp7m1m9wx8vgOe8IaCKZ5Kv2k1DdCQ== + dependencies: + fastest-levenshtein "^1.0.7" + fast-xml-parser@^3.17.4: version "3.21.1" resolved "https://registry.yarnpkg.com/fast-xml-parser/-/fast-xml-parser-3.21.1.tgz#152a1d51d445380f7046b304672dd55d15c9e736" @@ -3496,6 +4205,11 @@ fast-xml-parser@^3.17.4: dependencies: strnum "^1.0.4" +fastest-levenshtein@^1.0.7: + version "1.0.12" + resolved "https://registry.yarnpkg.com/fastest-levenshtein/-/fastest-levenshtein-1.0.12.tgz#9990f7d3a88cc5a9ffd1f1745745251700d497e2" + integrity sha512-On2N+BpYJ15xIC974QNVuYGMOlEVt4s0EOI3wwMqOmK1fdDY+FN/zltPV8vosq4ad4c/gJ1KHScUn/6AWIgiow== + fastq@^1.6.0: version "1.13.0" resolved "https://registry.yarnpkg.com/fastq/-/fastq-1.13.0.tgz#616760f88a7526bdfc596b7cab8c18938c36b98c" @@ -3510,13 +4224,6 @@ faye-websocket@>=0.9.1: dependencies: websocket-driver ">=0.5.1" -faye-websocket@~0.9.1: - version "0.9.4" - resolved "https://registry.yarnpkg.com/faye-websocket/-/faye-websocket-0.9.4.tgz#885934c79effb0409549e0c0a3801ed17a40cdad" - integrity sha1-iFk0x57/sECVSeDAo4Ae0XpAza0= - dependencies: - websocket-driver ">=0.5.1" - faye@1.4.0, faye@^1.4.0: version "1.4.0" resolved "https://registry.yarnpkg.com/faye/-/faye-1.4.0.tgz#01d3d26ed5642c1cb203eed358afb1c1444b8669" @@ -3638,6 +4345,14 @@ find-versions@^4.0.0: dependencies: semver-regex "^3.1.2" +find-yarn-workspace-root2@1.2.16: + version "1.2.16" + resolved "https://registry.yarnpkg.com/find-yarn-workspace-root2/-/find-yarn-workspace-root2-1.2.16.tgz#60287009dd2f324f59646bdb4b7610a6b301c2a9" + integrity sha512-hr6hb1w8ePMpPVUK39S4RlwJzi+xPLuVuG8XlwXU3KD5Yn3qgBWVfy3AzNlDhWvE1EORCE65/Qm26rFQt3VLVA== + dependencies: + micromatch "^4.0.2" + pkg-dir "^4.2.0" + find-yarn-workspace-root@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/find-yarn-workspace-root/-/find-yarn-workspace-root-2.0.0.tgz#f47fb8d239c900eb78179aa81b66673eac88f7bd" @@ -3701,7 +4416,16 @@ foreground-child@^2.0.0: forever-agent@~0.6.1: version "0.6.1" resolved "https://registry.yarnpkg.com/forever-agent/-/forever-agent-0.6.1.tgz#fbc71f0c41adeb37f96c577ad1ed42d8fdacca91" - integrity sha1-+8cfDEGt6zf5bFd60e1C2P2sypE= + integrity sha512-j0KLYPhm6zeac4lz3oJ3o65qvgQCcPubiyotZrXqEaG4hNagNYO8qdlUrX5vwqv9ohqeT/Z3j6+yW067yWWdUw== + +form-data@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/form-data/-/form-data-4.0.0.tgz#93919daeaf361ee529584b9b31664dc12c9fa452" + integrity sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww== + dependencies: + asynckit "^0.4.0" + combined-stream "^1.0.8" + mime-types "^2.1.12" form-data@~2.3.2: version "2.3.3" @@ -3765,7 +4489,7 @@ fs-extra@^7.0.0: jsonfile "^4.0.0" universalify "^0.1.0" -fs-extra@^9.1.0: +fs-extra@^9.0.1, fs-extra@^9.1.0: version "9.1.0" resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-9.1.0.tgz#5954460c764a8da2094ba3554bf839e6b9a7c86d" integrity sha512-hcg3ZmepS30/7BSFqRvoo3DOMQu7IjqxO5nCDt+zM9XWjb33Wg7ziNT+Qvqbuc3+gWpzO02JubVyk2G4Zvo1OQ== @@ -3775,6 +4499,13 @@ fs-extra@^9.1.0: jsonfile "^6.0.1" universalify "^2.0.0" +fs-minipass@^2.0.0, fs-minipass@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/fs-minipass/-/fs-minipass-2.1.0.tgz#7f5036fdbf12c63c169190cbe4199c852271f9fb" + integrity sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg== + dependencies: + minipass "^3.0.0" + fs.realpath@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/fs.realpath/-/fs.realpath-1.0.0.tgz#1504ad2523158caa40db4a2787cb01411994ea4f" @@ -3813,6 +4544,35 @@ functional-red-black-tree@^1.0.1: resolved "https://registry.yarnpkg.com/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz#1b0ab3bd553b2a0d6399d29c0e3ea0b252078327" integrity sha1-GwqzvVU7Kg1jmdKcDj6gslIHgyc= +gauge@^3.0.0: + version "3.0.2" + resolved "https://registry.yarnpkg.com/gauge/-/gauge-3.0.2.tgz#03bf4441c044383908bcfa0656ad91803259b395" + integrity sha512-+5J6MS/5XksCuXq++uFRsnUd7Ovu1XenbeuIuNRJxYWjgQbPuFhT14lAvsWfqfAmnwluf1OwMjz39HjfLPci0Q== + dependencies: + aproba "^1.0.3 || ^2.0.0" + color-support "^1.1.2" + console-control-strings "^1.0.0" + has-unicode "^2.0.1" + object-assign "^4.1.1" + signal-exit "^3.0.0" + string-width "^4.2.3" + strip-ansi "^6.0.1" + wide-align "^1.1.2" + +gauge@^4.0.3: + version "4.0.4" + resolved "https://registry.yarnpkg.com/gauge/-/gauge-4.0.4.tgz#52ff0652f2bbf607a989793d53b751bef2328dce" + integrity sha512-f9m+BEN5jkg6a0fZjleidjN51VE1X+mPFQ2DJ0uv1V39oCLCbsGe6yjbBnp7eK7z/+GAon99a3nHuqbuuthyPg== + dependencies: + aproba "^1.0.3 || ^2.0.0" + color-support "^1.1.3" + console-control-strings "^1.1.0" + has-unicode "^2.0.1" + signal-exit "^3.0.7" + string-width "^4.2.3" + strip-ansi "^6.0.1" + wide-align "^1.1.5" + gensync@^1.0.0-beta.2: version "1.0.0-beta.2" resolved "https://registry.yarnpkg.com/gensync/-/gensync-1.0.0-beta.2.tgz#32a6ee76c3d7f52d46b2b1ae5d93fea8580a25e0" @@ -3847,6 +4607,11 @@ get-package-type@^0.1.0: resolved "https://registry.yarnpkg.com/get-package-type/-/get-package-type-0.1.0.tgz#8de2d803cff44df3bc6c456e6668b36c3926e11a" integrity sha512-pjzuKtY64GYfWizNAJ0fr9VqttZkNiK2iS430LtIHzjBEr6bX8Am2zm4sW4Ro5wjWW5cAlRL1qAMTcXbjNAO2Q== +get-stdin@^4.0.1: + version "4.0.1" + resolved "https://registry.yarnpkg.com/get-stdin/-/get-stdin-4.0.1.tgz#b968c6b0a04384324902e8bf1a5df32579a450fe" + integrity sha1-uWjGsKBDhDJJAui/Gl3zJXmkUP4= + get-stdin@^6.0.0: version "6.0.0" resolved "https://registry.yarnpkg.com/get-stdin/-/get-stdin-6.0.0.tgz#9e09bf712b360ab9225e812048f71fde9c89657b" @@ -3897,7 +4662,7 @@ get-value@^2.0.3, get-value@^2.0.6: getpass@^0.1.1: version "0.1.7" resolved "https://registry.yarnpkg.com/getpass/-/getpass-0.1.7.tgz#5eff8e3e684d569ae4cb2b1282604e8ba62149fa" - integrity sha1-Xv+OPmhNVprkyysSgmBOi6YhSfo= + integrity sha512-0fzj9JxOLfJ+XGLhR8ze3unN0KZCgZwiSSDz168VERjK8Wl8kVSdcu2kspd4s4wtAa1y/qrVRiAA0WclVsu0ng== dependencies: assert-plus "^1.0.0" @@ -3920,7 +4685,7 @@ git-raw-commits@^2.0.0: split2 "^3.0.0" through2 "^4.0.0" -github-slugger@^1.2.1: +github-slugger@^1.2.1, github-slugger@^1.4.0: version "1.4.0" resolved "https://registry.yarnpkg.com/github-slugger/-/github-slugger-1.4.0.tgz#206eb96cdb22ee56fdc53a28d5a302338463444e" integrity sha512-w0dzqw/nt51xMVmlaV1+JRzN+oCa1KfcgGEWhxUG16wbdA+Xnt/yoFO8Z8x/V82ZcZ0wy6ln9QDup5avbhiDhQ== @@ -3932,6 +4697,13 @@ github-username@^3.0.0: dependencies: gh-got "^5.0.0" +github-username@^6.0.0: + version "6.0.0" + resolved "https://registry.yarnpkg.com/github-username/-/github-username-6.0.0.tgz#d543eced7295102996cd8e4e19050ebdcbe60658" + integrity sha512-7TTrRjxblSI5l6adk9zd+cV5d6i1OrJSo3Vr9xdGqFLBQo0mz5P9eIfKCDJ7eekVGGFLbce0qbPSnktXV2BjDQ== + dependencies: + "@octokit/rest" "^18.0.6" + glob-parent@^3.1.0: version "3.1.0" resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-3.1.0.tgz#9e6af6299d8d3bd2bd40430832bd113df906c5ae" @@ -3987,7 +4759,7 @@ glob@^6.0.1: once "^1.3.0" path-is-absolute "^1.0.0" -glob@^8.0.3: +glob@^8.0.1, glob@^8.0.3: version "8.0.3" resolved "https://registry.yarnpkg.com/glob/-/glob-8.0.3.tgz#415c6eb2deed9e502c68fa44a272e6da6eeca42e" integrity sha512-ull455NHSHI/Y1FqGaaYFaLGkNMMJbavMrEGFXG/PGrg6y7sutWHUHrz6gy6WEBH6akM1M414dWKCNs+IhKdiQ== @@ -4090,7 +4862,7 @@ globby@^9.2.0: pify "^4.0.1" slash "^2.0.0" -got@^11.8.3: +got@^11.8.2, got@^11.8.3: version "11.8.3" resolved "https://registry.yarnpkg.com/got/-/got-11.8.3.tgz#f496c8fdda5d729a90b4905d2b07dbd148170770" integrity sha512-7gtQ5KiPh1RtGS9/Jbv1ofDpBFuq42gyfEib+ejaRBJuj/3tQFeR5+gw57e4ipaU8c/rCjvX6fkQz2lyDlGAOg== @@ -4124,10 +4896,10 @@ got@^6.2.0: unzip-response "^2.0.1" url-parse-lax "^1.0.0" -graceful-fs@^4.1.15, graceful-fs@^4.1.2, graceful-fs@^4.1.6, graceful-fs@^4.2.0, graceful-fs@^4.2.2, graceful-fs@^4.2.4, graceful-fs@^4.2.8, graceful-fs@^4.2.9: - version "4.2.9" - resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.2.9.tgz#041b05df45755e587a24942279b9d113146e1c96" - integrity sha512-NtNxqUcXgpW2iMrfqSfR73Glt39K+BLwWsPs94yR63v45T0Wbej7eRmL5cWfwEgqXnmjQp3zaJTshdRW/qC2ZQ== +graceful-fs@^4.1.15, graceful-fs@^4.1.2, graceful-fs@^4.1.5, graceful-fs@^4.1.6, graceful-fs@^4.2.0, graceful-fs@^4.2.2, graceful-fs@^4.2.4, graceful-fs@^4.2.6, graceful-fs@^4.2.8, graceful-fs@^4.2.9: + version "4.2.10" + resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.2.10.tgz#147d3a006da4ca3ce14728c7aefc287c367d7a6c" + integrity sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA== grouped-queue@^0.3.3: version "0.3.3" @@ -4143,6 +4915,11 @@ grouped-queue@^1.1.0: dependencies: lodash "^4.17.15" +grouped-queue@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/grouped-queue/-/grouped-queue-2.0.0.tgz#a2c6713f2171e45db2c300a3a9d7c119d694dac8" + integrity sha512-/PiFUa7WIsl48dUeCvhIHnwNmAAzlI/eHoJl0vu3nsFA366JleY7Ff8EVTplZu5kO0MIdZjKTTnzItL61ahbnw== + growl@1.10.5: version "1.10.5" resolved "https://registry.yarnpkg.com/growl/-/growl-1.10.5.tgz#f2735dc2283674fa67478b10181059355c369e5e" @@ -4163,7 +4940,7 @@ handlebars@4.7.7: har-schema@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/har-schema/-/har-schema-2.0.0.tgz#a94c2224ebcac04782a0d9035521f24735b7ec92" - integrity sha1-qUwiJOvKwEeCoNkDVSHyRzW37JI= + integrity sha512-Oqluz6zhGX8cyRaTQlFMPw80bSJVG2x/cFb8ZPhUILGgHka9SsokCCOQgpveePerqidZOrT14ipqfJb7ILcW5Q== har-validator@~5.1.3: version "5.1.5" @@ -4178,6 +4955,13 @@ hard-rejection@^2.1.0: resolved "https://registry.yarnpkg.com/hard-rejection/-/hard-rejection-2.1.0.tgz#1c6eda5c1685c63942766d79bb40ae773cecd883" integrity sha512-VIZB+ibDhx7ObhAe7OVtoEbuP4h/MuOTHJ+J8h/eBXotJYl0fBgR72xDFCKgIh22OJZIOVNxBMWuhAr10r8HdA== +has-ansi@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/has-ansi/-/has-ansi-2.0.0.tgz#34f5049ce1ecdf2b0649af3ef24e45ed35416d91" + integrity sha1-NPUEnOHs3ysGSa8+8k5F7TVBbZE= + dependencies: + ansi-regex "^2.0.0" + has-bigints@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/has-bigints/-/has-bigints-1.0.1.tgz#64fe6acb020673e3b78db035a5af69aa9d07b113" @@ -4210,6 +4994,11 @@ has-tostringtag@^1.0.0: dependencies: has-symbols "^1.0.2" +has-unicode@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/has-unicode/-/has-unicode-2.0.1.tgz#e0e6fe6a28cf51138855e086d1691e771de2a8b9" + integrity sha1-4Ob+aijPUROIVeCG0Wkedx3iqLk= + has-value@^0.3.1: version "0.3.1" resolved "https://registry.yarnpkg.com/has-value/-/has-value-0.3.1.tgz#7b1f58bada62ca827ec0a2078025654845995e1f" @@ -4261,6 +5050,14 @@ he@1.2.0: resolved "https://registry.yarnpkg.com/he/-/he-1.2.0.tgz#84ae65fa7eafb165fddb61566ae14baf05664f0f" integrity sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw== +header-case@^2.0.4: + version "2.0.4" + resolved "https://registry.yarnpkg.com/header-case/-/header-case-2.0.4.tgz#5a42e63b55177349cf405beb8d775acabb92c063" + integrity sha512-H/vuk5TEEVZwrR0lp2zed9OCo1uAILMlx0JEMgC26rzyJJ3N1v6XkwHHXJQdR2doSjcGPM6OKPYoJgf0plJ11Q== + dependencies: + capital-case "^1.0.4" + tslib "^2.0.3" + homedir-polyfill@^1.0.1: version "1.0.3" resolved "https://registry.yarnpkg.com/homedir-polyfill/-/homedir-polyfill-1.0.3.tgz#743298cef4e5af3e194161fbadcc2151d3a058e8" @@ -4285,12 +5082,12 @@ html-escaper@^2.0.0: resolved "https://registry.yarnpkg.com/html-escaper/-/html-escaper-2.0.2.tgz#dfd60027da36a36dfcbe236262c00a5822681453" integrity sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg== -http-cache-semantics@^4.0.0: +http-cache-semantics@^4.0.0, http-cache-semantics@^4.1.0: version "4.1.0" resolved "https://registry.yarnpkg.com/http-cache-semantics/-/http-cache-semantics-4.1.0.tgz#49e91c5cbf36c9b94bcfcd71c23d5249ec74e390" integrity sha512-carPklcUh7ROWRK7Cv27RPtdhYhUsela/ue5/jKzjegVvXDqM2ILE9Q2BGn9JZJh1g87cp56su/FgQSzcWS8cQ== -http-call@^5.1.2: +http-call@^5.1.2, http-call@^5.2.2: version "5.3.0" resolved "https://registry.yarnpkg.com/http-call/-/http-call-5.3.0.tgz#4ded815b13f423de176eb0942d69c43b25b148db" integrity sha512-ahwimsC23ICE4kPl9xTBjKB4inbRaeLyZeRunC/1Jy/Z6X8tv22MEAjK+KBOMSVLaqXPTTmd8638waVIKLGx2w== @@ -4327,10 +5124,19 @@ http-proxy-agent@^4.0.0, http-proxy-agent@^4.0.1: agent-base "6" debug "4" +http-proxy-agent@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/http-proxy-agent/-/http-proxy-agent-5.0.0.tgz#5129800203520d434f142bc78ff3c170800f2b43" + integrity sha512-n2hY8YdoRE1i7r6M0w9DIw5GgZN0G25P8zLCRQ8rjXtTU3vsNFBI/vWK/UIeE6g5MUUz6avwAPXmL6Fy9D/90w== + dependencies: + "@tootallnate/once" "2" + agent-base "6" + debug "4" + http-signature@~1.2.0: version "1.2.0" resolved "https://registry.yarnpkg.com/http-signature/-/http-signature-1.2.0.tgz#9aecd925114772f3d95b65a60abb8f7c18fbace1" - integrity sha1-muzZJRFHcvPZW2WmCruPfBj7rOE= + integrity sha512-CAbnr6Rz4CYQkLYUtSNXxQPUH2gK8f3iWexVlsnMeD+GjlsQ0Xsy1cOX+mN3dtxYomRy21CiOzU8Uhw6OwncEQ== dependencies: assert-plus "^1.0.0" jsprim "^1.2.2" @@ -4362,6 +5168,13 @@ human-signals@^2.1.0: resolved "https://registry.yarnpkg.com/human-signals/-/human-signals-2.1.0.tgz#dc91fcba42e4d06e4abaed33b3e7a3c02f514ea0" integrity sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw== +humanize-ms@^1.2.1: + version "1.2.1" + resolved "https://registry.yarnpkg.com/humanize-ms/-/humanize-ms-1.2.1.tgz#c46e3159a293f6b896da29316d8b6fe8bb79bbed" + integrity sha1-xG4xWaKT9riW2ikxbYtv6Lt5u+0= + dependencies: + ms "^2.0.0" + husky@^4.2.5: version "4.3.8" resolved "https://registry.yarnpkg.com/husky/-/husky-4.3.8.tgz#31144060be963fd6850e5cc8f019a1dfe194296d" @@ -4395,11 +5208,30 @@ iconv-lite@0.4.24, iconv-lite@^0.4.24: dependencies: safer-buffer ">= 2.1.2 < 3" -ieee754@^1.1.13: +iconv-lite@^0.6.2: + version "0.6.3" + resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.6.3.tgz#a52f80bf38da1952eb5c681790719871a1a72501" + integrity sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw== + dependencies: + safer-buffer ">= 2.1.2 < 3.0.0" + +ieee754@1.1.13: + version "1.1.13" + resolved "https://registry.yarnpkg.com/ieee754/-/ieee754-1.1.13.tgz#ec168558e95aa181fd87d37f55c32bbcb6708b84" + integrity sha512-4vf7I2LYV/HaWerSo3XmlMkp5eZ83i+/CDluXi/IGTs/O1sejBNhTtnxzmRZfvOUqj7lZjqHkeTvpgSFDlWZTg== + +ieee754@^1.1.13, ieee754@^1.1.4: version "1.2.1" resolved "https://registry.yarnpkg.com/ieee754/-/ieee754-1.2.1.tgz#8eb7a10a63fff25d15a57b001586d177d1b0d352" integrity sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA== +ignore-walk@^4.0.1: + version "4.0.1" + resolved "https://registry.yarnpkg.com/ignore-walk/-/ignore-walk-4.0.1.tgz#fc840e8346cf88a3a9380c5b17933cd8f4d39fa3" + integrity sha512-rzDQLaW4jQbh2YrOFlJdCtX8qgJTehFRYiUB2r1osqTeDzV/3+Jh8fz1oAPzUThf3iku8Ds4IDqawI5d8mUiQw== + dependencies: + minimatch "^3.0.4" + ignore@^3.3.5: version "3.3.10" resolved "https://registry.yarnpkg.com/ignore/-/ignore-3.3.10.tgz#0a97fb876986e8081c631160f8f9f389157f0043" @@ -4438,6 +5270,11 @@ indent-string@^4.0.0: resolved "https://registry.yarnpkg.com/indent-string/-/indent-string-4.0.0.tgz#624f8f4497d619b2d9768531d58f4122854d7251" integrity sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg== +infer-owner@^1.0.4: + version "1.0.4" + resolved "https://registry.yarnpkg.com/infer-owner/-/infer-owner-1.0.4.tgz#c4cefcaa8e51051c2a40ba2ce8a3d27295af9467" + integrity sha512-IClj+Xz94+d7irH5qRyfJonOdfTzuDaifE6ZPWfx0N0+/ATZCbuTPq2prFl526urkQd90WyUKIh1DfBQ2hMz9A== + inflight@^1.0.4: version "1.0.6" resolved "https://registry.yarnpkg.com/inflight/-/inflight-1.0.6.tgz#49bd6331d7d02d0c09bc910a1075ba8165b56df9" @@ -4475,7 +5312,7 @@ inquirer@6.5.2, inquirer@^6.0.0: strip-ansi "^5.1.0" through "^2.3.6" -inquirer@^7.1.0: +inquirer@^7.0.0, inquirer@^7.1.0: version "7.3.3" resolved "https://registry.yarnpkg.com/inquirer/-/inquirer-7.3.3.tgz#04d176b2af04afc157a83fd7c100e98ee0aad003" integrity sha512-JG3eIAj5V9CwcGvuOmoo6LB9kbAYT8HXffUl6memuszlwDC/qvFAJw49XJ5NROSFNPxp3iQg1GqkFhaY/CR0IA== @@ -4494,6 +5331,27 @@ inquirer@^7.1.0: strip-ansi "^6.0.0" through "^2.3.6" +inquirer@^8.0.0, inquirer@^8.2.0: + version "8.2.4" + resolved "https://registry.yarnpkg.com/inquirer/-/inquirer-8.2.4.tgz#ddbfe86ca2f67649a67daa6f1051c128f684f0b4" + integrity sha512-nn4F01dxU8VeKfq192IjLsxu0/OmMZ4Lg3xKAns148rCaXP6ntAoEkVYZThWjwON8AlzdZZi6oqnhNbxUG9hVg== + dependencies: + ansi-escapes "^4.2.1" + chalk "^4.1.1" + cli-cursor "^3.1.0" + cli-width "^3.0.0" + external-editor "^3.0.3" + 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 "^7.0.0" + internal-slot@^1.0.3: version "1.0.3" resolved "https://registry.yarnpkg.com/internal-slot/-/internal-slot-1.0.3.tgz#7347e307deeea2faac2ac6205d4bc7d34967f59c" @@ -4632,6 +5490,13 @@ is-extglob@^2.1.0, is-extglob@^2.1.1: resolved "https://registry.yarnpkg.com/is-extglob/-/is-extglob-2.1.1.tgz#a88c02535791f02ed37c76a1b9ea9773c833f8c2" integrity sha1-qIwCU1eR8C7TfHahueqXc8gz+MI= +is-fullwidth-code-point@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz#ef9e31386f031a7f0d643af82fde50c457ef00cb" + integrity sha1-754xOG8DGn8NZDr4L95QxFfvAMs= + dependencies: + number-is-nan "^1.0.0" + is-fullwidth-code-point@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz#a3b30a5c4f199183167aaab93beefae3ddfb654f" @@ -4642,11 +5507,6 @@ is-fullwidth-code-point@^3.0.0: resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz#f116f8064fe90b3f7844a38997c0b75051269f1d" integrity sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg== -is-fullwidth-code-point@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-4.0.0.tgz#fae3167c729e7463f8461ce512b080a49268aa88" - integrity sha512-O4L094N2/dZ7xqVdrXhh9r1KODPJpFms8B5sGdJLPy664AgvXsreZUyCQQNItZRDlYug4xStLjNp/sz3HvBowQ== - is-glob@^3.1.0: version "3.1.0" resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-3.1.0.tgz#7ba5ae24217804ac70707b96922567486cc3e84a" @@ -4661,6 +5521,16 @@ is-glob@^4.0.0, is-glob@^4.0.1, is-glob@^4.0.3, is-glob@~4.0.1: dependencies: is-extglob "^2.1.1" +is-interactive@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/is-interactive/-/is-interactive-1.0.0.tgz#cea6e6ae5c870a7b0a0004070b7b587e0252912e" + integrity sha512-2HvIEKRoqS62guEC+qBjpvRubdX910WCMuJTZ+I9yvqKU2/12eSL549HMwtabb4oupdj2sMP50k+XJfB/8JE6w== + +is-lambda@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/is-lambda/-/is-lambda-1.0.1.tgz#3d9877899e6a53efc0160504cde15f82e6f061d5" + integrity sha1-PZh3iZ5qU+/AFgUEzeFfgubwYdU= + is-negative-zero@^2.0.1: version "2.0.2" resolved "https://registry.yarnpkg.com/is-negative-zero/-/is-negative-zero-2.0.2.tgz#7bf6f03a28003b8b3965de3ac26f664d765f3150" @@ -4712,6 +5582,11 @@ is-plain-object@^2.0.3, is-plain-object@^2.0.4: dependencies: isobject "^3.0.1" +is-plain-object@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/is-plain-object/-/is-plain-object-5.0.0.tgz#4427f50ab3429e9025ea7d52e9043a9ef4159344" + integrity sha512-VRSzKkbMm5jMDoKLbltAkFQ5Qr7VDiTFGXxYFXXowVj387GeGNOCsOH6Msy00SGZ3Fp84b1Naa1psqgcCIEP5Q== + is-redirect@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/is-redirect/-/is-redirect-1.0.0.tgz#1d03dded53bd8db0f30c26e4f95d36fc7c87dc24" @@ -4742,6 +5617,13 @@ is-scoped@^1.0.0: dependencies: scoped-regex "^1.0.0" +is-scoped@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/is-scoped/-/is-scoped-2.1.0.tgz#fef0713772658bdf5bee418608267ddae6d3566d" + integrity sha512-Cv4OpPTHAK9kHYzkzCrof3VJh7H/PrG2MBUMvvJebaaUMbqhm0YAtXnvh0I3Hnj2tMZWwrRROWLSgfJrKqWmlQ== + dependencies: + scoped-regex "^2.0.0" + is-shared-array-buffer@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/is-shared-array-buffer/-/is-shared-array-buffer-1.0.1.tgz#97b0c85fbdacb59c9c446fe653b82cf2b5b7cfe6" @@ -4781,7 +5663,7 @@ is-text-path@^1.0.1: is-typedarray@^1.0.0, is-typedarray@~1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/is-typedarray/-/is-typedarray-1.0.0.tgz#e479c80858df0c1b11ddda6940f96011fcda4a9a" - integrity sha1-5HnICFjfDBsR3dppQPlgEfzaSpo= + integrity sha512-cyA56iCMHAh5CdzjJIa4aohJyeO1YbwLi3Jc35MmRU6poroFjIGZzUzupGiRPOjgHg9TLu43xbpwXk523fMxKA== is-unicode-supported@^0.1.0: version "0.1.0" @@ -4822,15 +5704,15 @@ isarray@0.0.1: resolved "https://registry.yarnpkg.com/isarray/-/isarray-0.0.1.tgz#8a18acfca9a8f4177e09abfc6038939b05d1eedf" integrity sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8= -isarray@1.0.0, isarray@~1.0.0: +isarray@1.0.0, isarray@^1.0.0, isarray@~1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/isarray/-/isarray-1.0.0.tgz#bb935d48582cba168c06834957a54a3e07124f11" integrity sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE= -isbinaryfile@^4.0.0: - version "4.0.8" - resolved "https://registry.yarnpkg.com/isbinaryfile/-/isbinaryfile-4.0.8.tgz#5d34b94865bd4946633ecc78a026fc76c5b11fcf" - integrity sha512-53h6XFniq77YdW+spoRrebh0mnmTxRPTlcuIArO57lmMdq4uBKFKaeTjnb92oYWrSn/LVL+LT+Hap2tFQj8V+w== +isbinaryfile@^4.0.0, isbinaryfile@^4.0.8: + version "4.0.10" + resolved "https://registry.yarnpkg.com/isbinaryfile/-/isbinaryfile-4.0.10.tgz#0c5b5e30c2557a2f06febd37b7322946aaee42b3" + integrity sha512-iHrqe5shvBUcFbmZq9zOQHBoeOhZJu6RQGrDpBgenUm/Am+F3JM2MgQj+rK3Z601fzrL5gLZWtAPH2OBaSVcyw== isexe@^2.0.0: version "2.0.0" @@ -4869,7 +5751,7 @@ isomorphic-git@1.17.0: isstream@~0.1.2: version "0.1.2" resolved "https://registry.yarnpkg.com/isstream/-/isstream-0.1.2.tgz#47e63f7af55afa6f92e1500e690eb8b8529c099a" - integrity sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo= + integrity sha512-Yljz7ffyPbrLpLngrMtZ7NduUgVvi6wG9RJ9IUcyCd59YQ911PBJphODUcbOVbqYfxe1wuYf/LJ8PauMRwsM/g== istanbul-lib-coverage@^3.0.0, istanbul-lib-coverage@^3.0.0-alpha.1, istanbul-lib-coverage@^3.2.0: version "3.2.0" @@ -4924,15 +5806,7 @@ istanbul-lib-source-maps@^4.0.0: istanbul-lib-coverage "^3.0.0" source-map "^0.6.1" -istanbul-reports@^3.0.2: - version "3.1.3" - resolved "https://registry.yarnpkg.com/istanbul-reports/-/istanbul-reports-3.1.3.tgz#4bcae3103b94518117930d51283690960b50d3c2" - integrity sha512-x9LtDVtfm/t1GFiLl3NffC7hz+I1ragvgX1P/Lg1NlIagifZDKUkuuaAxH/qpwj2IuEfD8G2Bs/UKp+sZ/pKkg== - dependencies: - html-escaper "^2.0.0" - istanbul-lib-report "^3.0.0" - -istanbul-reports@^3.1.4: +istanbul-reports@^3.0.2, istanbul-reports@^3.1.4: version "3.1.4" resolved "https://registry.yarnpkg.com/istanbul-reports/-/istanbul-reports-3.1.4.tgz#1b6f068ecbc6c331040aab5741991273e609e40c" integrity sha512-r1/DshN4KSE7xWEknZLLLLDn5CJybV3nw01VTkp6D5jzLuELlcbudfj/eSQFvrKsJuTVCGnePO7ho82Nw9zzfw== @@ -4959,6 +5833,11 @@ jake@^10.6.1: filelist "^1.0.1" minimatch "^3.0.4" +jmespath@0.16.0: + version "0.16.0" + resolved "https://registry.yarnpkg.com/jmespath/-/jmespath-0.16.0.tgz#b15b0a85dfd4d930d43e69ed605943c802785076" + integrity sha512-9FzQjJ7MATs1tSpnco1K6ayiYE3figslrXA72G2HQ/n76RzvYlofyi5QM+iX4YRs/pu3yzxlVQSST23+dMDknw== + js-tokens@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-4.0.0.tgz#19203fb59991df98e3a287050d4647cdeaf32499" @@ -4971,7 +5850,7 @@ js-yaml@4.1.0: dependencies: argparse "^2.0.1" -js-yaml@^3.13.1, js-yaml@^3.14.1: +js-yaml@^3.13.0, js-yaml@^3.13.1, js-yaml@^3.14.1: version "3.14.1" resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-3.14.1.tgz#dae812fdb3825fa306609a8717383c50c36a0537" integrity sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g== @@ -4989,7 +5868,7 @@ js2xmlparser@^4.0.1: jsbn@~0.1.0: version "0.1.1" resolved "https://registry.yarnpkg.com/jsbn/-/jsbn-0.1.1.tgz#a5e654c2e5a2deb5f201d96cefbca80c0ef2f513" - integrity sha1-peZUwuWi3rXyAdls77yoDA7y9RM= + integrity sha512-UVU9dibq2JcFWxQPA6KCqj5O42VOmAY3zQUfEKxU0KpTGXwNoCjkX1e13eHNvw/xPynt6pU0rZ1htjWTNTSXsg== jsdoc-type-pratt-parser@1.0.4: version "1.0.4" @@ -5001,17 +5880,38 @@ jsdoc-type-pratt-parser@^1.0.4: resolved "https://registry.yarnpkg.com/jsdoc-type-pratt-parser/-/jsdoc-type-pratt-parser-1.2.0.tgz#3482a3833b74a88c95a6ba7253f0c0de3b77b9f5" integrity sha512-4STjeF14jp4bqha44nKMY1OUI6d2/g6uclHWUCZ7B4DoLzaB5bmpTkQrpqU+vSVzMD0LsKAOskcnI3I3VfIpmg== -jsen@0.6.6: - version "0.6.6" - resolved "https://registry.yarnpkg.com/jsen/-/jsen-0.6.6.tgz#0240c18cf11350ac021456f48a7eb13bd67e0420" - integrity sha1-AkDBjPETUKwCFFb0in6xO9Z+BCA= - jsesc@^2.5.1: version "2.5.2" resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-2.5.2.tgz#80564d2e483dacf6e8ef209650a67df3f0c283a4" integrity sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA== -jsforce@^1.10.1, jsforce@^1.11.0: +jsforce@2.0.0-beta.10: + version "2.0.0-beta.10" + resolved "https://registry.yarnpkg.com/jsforce/-/jsforce-2.0.0-beta.10.tgz#c33fee5dd01c96d121235cffb8fee1458a35423e" + integrity sha512-AFigJHQocj8t36Eu+9XffoKoC2FO4/uMDMg08TfTXgvIp53lzvnQJoQrhEnwnKReof4tO2d+7j+d1QyiOa2yGg== + dependencies: + "@babel/runtime" "^7.12.5" + "@babel/runtime-corejs3" "^7.12.5" + "@types/node" "^12.19.9" + abort-controller "^3.0.0" + base64url "^3.0.1" + commander "^4.0.1" + core-js "^3.6.4" + csv-parse "^4.8.2" + csv-stringify "^5.3.4" + faye "^1.4.0" + form-data "^4.0.0" + fs-extra "^8.1.0" + https-proxy-agent "^5.0.0" + inquirer "^7.0.0" + multistream "^3.1.0" + node-fetch "^2.6.1" + open "^7.0.0" + regenerator-runtime "^0.13.3" + strip-ansi "^6.0.0" + xml2js "^0.4.22" + +jsforce@^1.11.0: version "1.11.0" resolved "https://registry.yarnpkg.com/jsforce/-/jsforce-1.11.0.tgz#7e853b82c534f1fe8e18f432a344bae81881a133" integrity sha512-vYNXJXXdz9ZQNdfRqq/MCJ/zU7JGA7iEduwafQDzChR9FeqXgTNfHTppLVbw9mIniKkQZemmxSOtl7N04lj/5Q== @@ -5042,7 +5942,7 @@ json-parse-better-errors@^1.0.1: resolved "https://registry.yarnpkg.com/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz#bb867cfb3450e69107c131d1c514bab3dc8bcaa9" integrity sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw== -json-parse-even-better-errors@^2.3.0: +json-parse-even-better-errors@^2.3.0, json-parse-even-better-errors@^2.3.1: version "2.3.1" resolved "https://registry.yarnpkg.com/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz#7c47805a94319928e05777405dc12e1f7a4ee02d" integrity sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w== @@ -5067,10 +5967,15 @@ json-stable-stringify-without-jsonify@^1.0.1: resolved "https://registry.yarnpkg.com/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz#9db7b59496ad3f3cfef30a75142d2d930ad72651" integrity sha1-nbe1lJatPzz+8wp1FC0tkwrXJlE= +json-stringify-nice@^1.1.4: + version "1.1.4" + resolved "https://registry.yarnpkg.com/json-stringify-nice/-/json-stringify-nice-1.1.4.tgz#2c937962b80181d3f317dd39aa323e14f5a60a67" + integrity sha512-5Z5RFW63yxReJ7vANgW6eZFGWaQvnPE3WNmZoOJrSkGju2etKA2L5rrOa1sm877TVTFt57A80BH1bArcmlLfPw== + json-stringify-safe@^5.0.1, json-stringify-safe@~5.0.1: version "5.0.1" resolved "https://registry.yarnpkg.com/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz#1296a2d58fd45f19a0f6ce01d65701e2c735b6eb" - integrity sha1-Epai1Y/UXxmg9s4B1lcB4sc1tus= + integrity sha512-ZClg6AaYvamvYEE82d3Iyd3vSSIjQ+odgjaTzRuO3s7toCdFKczob2i0zCh7JE8kWn17yvAWhUVxvqGwUalsRA== json5@^1.0.1: version "1.0.1" @@ -5079,14 +5984,7 @@ json5@^1.0.1: dependencies: minimist "^1.2.0" -json5@^2.1.2: - version "2.2.0" - resolved "https://registry.yarnpkg.com/json5/-/json5-2.2.0.tgz#2dfefe720c6ba525d9ebd909950f0515316c89a3" - integrity sha512-f+8cldu7X/y7RAJurMEJmdoKXGB/X550w2Nr3tTbezL6RwEE/iMcm+tZnXeoZtKuOq6ft8+CqzEkrIgx1fPoQA== - dependencies: - minimist "^1.2.5" - -json5@^2.2.0: +json5@^2.1.2, json5@^2.2.0: version "2.2.1" resolved "https://registry.yarnpkg.com/json5/-/json5-2.2.1.tgz#655d50ed1e6f95ad1a3caababd2b0efda10b395c" integrity sha512-1hqLFMSrGHRHxav9q9gNjJ5EXznIxGVO09xQRrwplcS8qs28pZ8s8hupZAmqDwZUmVZ2Qb2jnyPOWcDH8m8dlA== @@ -5112,7 +6010,7 @@ jsonfile@^6.0.1: optionalDependencies: graceful-fs "^4.1.6" -jsonparse@^1.2.0: +jsonparse@^1.2.0, jsonparse@^1.3.1: version "1.3.1" resolved "https://registry.yarnpkg.com/jsonparse/-/jsonparse-1.3.1.tgz#3f4dae4a91fac315f71062f8521cc239f1366280" integrity sha1-P02uSpH6wxX3EGL4UhzCOfE2YoA= @@ -5133,6 +6031,22 @@ jsonwebtoken@8.5.0: ms "^2.1.1" semver "^5.6.0" +jsonwebtoken@8.5.1: + version "8.5.1" + resolved "https://registry.yarnpkg.com/jsonwebtoken/-/jsonwebtoken-8.5.1.tgz#00e71e0b8df54c2121a1f26137df2280673bcc0d" + integrity sha512-XjwVfRS6jTMsqYs0EsuJ4LGxXV14zQybNd4L2r0UvbVnSF9Af8x7p5MzbJ90Ioz/9TI41/hTCvznF/loiSzn8w== + dependencies: + jws "^3.2.2" + lodash.includes "^4.3.0" + lodash.isboolean "^3.0.3" + lodash.isinteger "^4.0.4" + lodash.isnumber "^3.0.3" + lodash.isplainobject "^4.0.6" + lodash.isstring "^4.0.1" + lodash.once "^4.0.0" + ms "^2.1.1" + semver "^5.6.0" + jsprim@^1.2.2: version "1.4.2" resolved "https://registry.yarnpkg.com/jsprim/-/jsprim-1.4.2.tgz#712c65533a15c878ba59e9ed5f0e26d5b77c5feb" @@ -5143,11 +6057,21 @@ jsprim@^1.2.2: json-schema "0.4.0" verror "1.10.0" +just-diff-apply@^5.2.0: + version "5.2.0" + resolved "https://registry.yarnpkg.com/just-diff-apply/-/just-diff-apply-5.2.0.tgz#15da3888ab3acecc14ce9a067f2d7589c653cb89" + integrity sha512-unjtin7rnng0KUpE4RPWwTl8iwWiZuyZqOQ+vm8orV6aIXX8mHN8zlKCPPbOycfDNuLh2PBazbFhNoDJv4S/FA== + just-diff@^3.1.1: version "3.1.1" resolved "https://registry.yarnpkg.com/just-diff/-/just-diff-3.1.1.tgz#d50c597c6fd4776495308c63bdee1b6839082647" integrity sha512-sdMWKjRq8qWZEjDcVA6llnUT8RDEBIfOiGpYFPYa9u+2c39JCsejktSP7mj5eRid5EIvTzIpQ2kDOCw1Nq9BjQ== +just-diff@^5.0.1: + version "5.0.2" + resolved "https://registry.yarnpkg.com/just-diff/-/just-diff-5.0.2.tgz#68854c94280c37d28cb266d8f29bdd2cd29f003e" + integrity sha512-uGd6F+eIZ4T95EinP8ubINGkbEy3jrgBym+6LjW+ja1UG1WQIcEcQ6FLeyXtVJZglk+bj7fvEn+Cu2LBxkgiYQ== + just-extend@^4.0.2: version "4.2.1" resolved "https://registry.yarnpkg.com/just-extend/-/just-extend-4.2.1.tgz#ef5e589afb61e5d66b24eca749409a8939a8c744" @@ -5162,7 +6086,7 @@ jwa@^1.4.1: ecdsa-sig-formatter "1.0.11" safe-buffer "^5.0.1" -jws@^3.2.1: +jws@^3.2.1, jws@^3.2.2: version "3.2.2" resolved "https://registry.yarnpkg.com/jws/-/jws-3.2.2.tgz#001099f3639468c9414000e99995fa52fb478304" integrity sha512-YHlZCB6lMTllWDtSPHz/ZXTsi8S00usEV6v1tjq8tOUZzw7DpSDWVXjXDre6ed1w/pd495ODpHZYSdkRTsa0HA== @@ -5173,7 +6097,7 @@ jws@^3.2.1: keypress@~0.2.1: version "0.2.1" resolved "https://registry.yarnpkg.com/keypress/-/keypress-0.2.1.tgz#1e80454250018dbad4c3fe94497d6e67b6269c77" - integrity sha1-HoBFQlABjbrUw/6USX1uZ7YmnHc= + integrity sha512-HjorDJFNhnM4SicvaUXac0X77NiskggxJdesG72+O5zBKpSqKFCrqmndKVqpu3pFqkla0St6uGk8Ju0sCurrmg== keyv@^4.0.0: version "4.1.1" @@ -5236,11 +6160,6 @@ levn@~0.3.0: prelude-ls "~1.1.2" type-check "~0.3.2" -lilconfig@2.0.4: - version "2.0.4" - resolved "https://registry.yarnpkg.com/lilconfig/-/lilconfig-2.0.4.tgz#f4507d043d7058b380b6a8f5cb7bcd4b34cee082" - integrity sha512-bfTIN7lEsiooCocSISTWXkiWJkRqtL9wYtYy+8EK3Y41qh3mpwPU0ycTOgjdY9ErwXCc8QyrQp82bdL0Xkm9yA== - lines-and-columns@^1.1.6: version "1.2.4" resolved "https://registry.yarnpkg.com/lines-and-columns/-/lines-and-columns-1.2.4.tgz#eca284f75d2965079309dc0ad9255abb2ebc1632" @@ -5267,26 +6186,6 @@ lint-staged@^10.2.2: string-argv "0.3.1" stringify-object "^3.3.0" -lint-staged@^12.3.2: - version "12.4.1" - resolved "https://registry.yarnpkg.com/lint-staged/-/lint-staged-12.4.1.tgz#63fa27bfc8a33515f6902f63f6670864f1fb233c" - integrity sha512-PTXgzpflrQ+pODQTG116QNB+Q6uUTDg5B5HqGvNhoQSGt8Qy+MA/6zSnR8n38+sxP5TapzeQGTvoKni0KRS8Vg== - dependencies: - cli-truncate "^3.1.0" - colorette "^2.0.16" - commander "^8.3.0" - debug "^4.3.3" - execa "^5.1.1" - lilconfig "2.0.4" - listr2 "^4.0.1" - micromatch "^4.0.4" - normalize-path "^3.0.0" - object-inspect "^1.12.0" - pidtree "^0.5.0" - string-argv "^0.3.1" - supports-color "^9.2.1" - yaml "^1.10.2" - listenercount@~1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/listenercount/-/listenercount-1.0.1.tgz#84c8a72ab59c4725321480c975e6508342e70937" @@ -5306,20 +6205,6 @@ listr2@^3.2.2: through "^2.3.8" wrap-ansi "^7.0.0" -listr2@^4.0.1: - version "4.0.2" - resolved "https://registry.yarnpkg.com/listr2/-/listr2-4.0.2.tgz#04d66f8c8694a14920d7df08ebe01568948fb500" - integrity sha512-YcgwfCWpvPbj9FLUGqvdFvd3hrFWKpOeuXznRgfWEJ7RNr8b/IKKIKZABHx3aU+4CWN/iSAFFSReziQG6vTeIA== - dependencies: - cli-truncate "^2.1.0" - colorette "^2.0.16" - log-update "^4.0.0" - p-map "^4.0.0" - rfdc "^1.3.0" - rxjs "^7.5.2" - through "^2.3.8" - wrap-ansi "^7.0.0" - load-json-file@^6.2.0: version "6.2.0" resolved "https://registry.yarnpkg.com/load-json-file/-/load-json-file-6.2.0.tgz#5c7770b42cafa97074ca2848707c61662f4251a1" @@ -5330,6 +6215,16 @@ load-json-file@^6.2.0: strip-bom "^4.0.0" type-fest "^0.6.0" +load-yaml-file@^0.2.0: + version "0.2.0" + resolved "https://registry.yarnpkg.com/load-yaml-file/-/load-yaml-file-0.2.0.tgz#af854edaf2bea89346c07549122753c07372f64d" + integrity sha512-OfCBkGEw4nN6JLtgRidPX6QxjBQGQf72q3si2uvqyFEMbycSFFHwAZeXx6cJgFM9wmLrf9zBwCP3Ivqa+LLZPw== + dependencies: + graceful-fs "^4.1.5" + js-yaml "^3.13.0" + pify "^4.0.1" + strip-bom "^3.0.0" + locate-path@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-2.0.0.tgz#2b568b265eec944c6d9c0de9c3dbbbca0354cd8e" @@ -5388,7 +6283,7 @@ lodash.flattendeep@^4.4.0: lodash.get@^4, lodash.get@^4.4.2, lodash.get@~4.4.2: version "4.4.2" resolved "https://registry.yarnpkg.com/lodash.get/-/lodash.get-4.4.2.tgz#2d177f652fa31e939b4438d5341499dfa3825e99" - integrity sha1-LRd/ZS+jHpObRDjVNBSZ36OCXpk= + integrity sha512-z+Uw/vLuy6gQe8cfaFWD7p0wVv8fJl3mbzXh33RS+0oW2wvUqiRXiQ69gLWSLpgB5/6sU+r6BlQR0MBILadqTQ== lodash.includes@^4.3.0: version "4.3.0" @@ -5470,7 +6365,7 @@ lodash@^4.17.10, lodash@^4.17.11, lodash@^4.17.12, lodash@^4.17.13, lodash@^4.17 resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.21.tgz#679591c564c3bffaae8454cf0b3df370c3d6911c" integrity sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg== -log-symbols@4.1.0, log-symbols@^4.0.0: +log-symbols@4.1.0, log-symbols@^4.0.0, log-symbols@^4.1.0: version "4.1.0" resolved "https://registry.yarnpkg.com/log-symbols/-/log-symbols-4.1.0.tgz#3fbdbb95b4683ac9fc785111e792e558d4abd503" integrity sha512-8XPvpAA8uyhfteu8pIvQxpJZ7SYYdpUivZpGy6sFsBuKRY/7rQGavedeB8aK+Zkyq6upMFVL/9AW6vOYzfRyLg== @@ -5519,6 +6414,13 @@ loupe@^2.3.1: dependencies: get-func-name "^2.0.0" +lower-case@^2.0.2: + version "2.0.2" + resolved "https://registry.yarnpkg.com/lower-case/-/lower-case-2.0.2.tgz#6fa237c63dbdc4a82ca0fd882e4722dc5e634e28" + integrity sha512-7fm3l3NAF9WfN6W3JOmf5drwpVqX78JtoGJ3A6W0a6ZnldM41w2fV5D490psKFTpMds8TJse/eHLFFsNHHjHgg== + dependencies: + tslib "^2.0.3" + lowercase-keys@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/lowercase-keys/-/lowercase-keys-1.0.1.tgz#6f9e30b47084d971a7c820ff15a6c5167b74c26f" @@ -5543,6 +6445,11 @@ lru-cache@^6.0.0: dependencies: yallist "^4.0.0" +lru-cache@^7.7.1: + version "7.10.1" + resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-7.10.1.tgz#db577f42a94c168f676b638d15da8fb073448cab" + integrity sha512-BQuhQxPuRl79J5zSXRP+uNzPOyZw2oFI9JLRQ80XswSvg21KMKNtQza9eF42rfI/3Z40RvzBdXgziEkudzjo8A== + lunr@^2.3.9: version "2.3.9" resolved "https://registry.yarnpkg.com/lunr/-/lunr-2.3.9.tgz#18b123142832337dd6e964df1a5a7707b25d35e1" @@ -5560,6 +6467,50 @@ make-error@^1, make-error@^1.1.1: resolved "https://registry.yarnpkg.com/make-error/-/make-error-1.3.6.tgz#2eb2e37ea9b67c4891f684a1394799af484cf7a2" integrity sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw== +make-fetch-happen@^10.0.1: + version "10.1.4" + resolved "https://registry.yarnpkg.com/make-fetch-happen/-/make-fetch-happen-10.1.4.tgz#b68a64367d2c402f24edc48308ff193d11fc2618" + integrity sha512-hU1w68PqfH7FdMgjbiziJoACY0edlbIZ0CyKnpcEruVdCjsUrN+qoenOCIayNqVBK7toSWwbDxvQlrhH0gjRdg== + dependencies: + agentkeepalive "^4.2.1" + cacache "^16.1.0" + http-cache-semantics "^4.1.0" + http-proxy-agent "^5.0.0" + https-proxy-agent "^5.0.0" + is-lambda "^1.0.1" + lru-cache "^7.7.1" + minipass "^3.1.6" + minipass-collect "^1.0.2" + minipass-fetch "^2.0.3" + minipass-flush "^1.0.5" + minipass-pipeline "^1.2.4" + negotiator "^0.6.3" + promise-retry "^2.0.1" + socks-proxy-agent "^6.1.1" + ssri "^9.0.0" + +make-fetch-happen@^9.1.0: + version "9.1.0" + resolved "https://registry.yarnpkg.com/make-fetch-happen/-/make-fetch-happen-9.1.0.tgz#53085a09e7971433e6765f7971bf63f4e05cb968" + integrity sha512-+zopwDy7DNknmwPQplem5lAZX/eCOzSvSNNcSKm5eVwTkOBzoktEfXsa9L23J/GIRhxRsaxzkPEhrJEpE2F4Gg== + dependencies: + agentkeepalive "^4.1.3" + cacache "^15.2.0" + http-cache-semantics "^4.1.0" + http-proxy-agent "^4.0.1" + https-proxy-agent "^5.0.0" + is-lambda "^1.0.1" + lru-cache "^6.0.0" + minipass "^3.1.3" + minipass-collect "^1.0.2" + minipass-fetch "^1.3.2" + minipass-flush "^1.0.5" + minipass-pipeline "^1.2.4" + negotiator "^0.6.2" + promise-retry "^2.0.1" + socks-proxy-agent "^6.0.0" + ssri "^8.0.0" + map-cache@^0.2.2: version "0.2.2" resolved "https://registry.yarnpkg.com/map-cache/-/map-cache-0.2.2.tgz#c32abd0bd6525d9b051645bb4f26ac5dc98a0dbf" @@ -5621,6 +6572,22 @@ mem-fs-editor@^7.0.1: through2 "^3.0.2" vinyl "^2.2.1" +"mem-fs-editor@^8.1.2 || ^9.0.0": + version "9.4.0" + resolved "https://registry.yarnpkg.com/mem-fs-editor/-/mem-fs-editor-9.4.0.tgz#0cc1cf61350e33c25fc364c97fb0551eb32b8c9b" + integrity sha512-HSSOLSVRrsDdui9I6i96dDtG+oAez/4EB2g4cjSrNhgNQ3M+L57/+22NuPdORSoxvOHjIg/xeOE+C0wwF91D2g== + dependencies: + binaryextensions "^4.16.0" + commondir "^1.0.1" + deep-extend "^0.6.0" + ejs "^3.1.6" + globby "^11.0.3" + isbinaryfile "^4.0.8" + minimatch "^3.0.4" + multimatch "^5.0.0" + normalize-path "^3.0.0" + textextensions "^5.13.0" + mem-fs@^1.1.0: version "1.2.0" resolved "https://registry.yarnpkg.com/mem-fs/-/mem-fs-1.2.0.tgz#5f29b2d02a5875cd14cd836c388385892d556cde" @@ -5630,6 +6597,16 @@ mem-fs@^1.1.0: vinyl "^2.0.1" vinyl-file "^3.0.0" +"mem-fs@^1.2.0 || ^2.0.0": + version "2.2.1" + resolved "https://registry.yarnpkg.com/mem-fs/-/mem-fs-2.2.1.tgz#c87bc8a53fb17971b129d4bcd59a9149fb78c5b1" + integrity sha512-yiAivd4xFOH/WXlUi6v/nKopBh1QLzwjFi36NK88cGt/PRXI8WeBASqY+YSjIVWvQTx3hR8zHKDBMV6hWmglNA== + dependencies: + "@types/node" "^15.6.1" + "@types/vinyl" "^2.0.4" + vinyl "^2.0.1" + vinyl-file "^3.0.0" + meow@^8.0.0: version "8.1.2" resolved "https://registry.yarnpkg.com/meow/-/meow-8.1.2.tgz#bcbe45bda0ee1729d350c03cffc8395a36c4e897" @@ -5689,22 +6666,17 @@ micromatch@^4.0.2, micromatch@^4.0.4: braces "^3.0.1" picomatch "^2.2.3" -mime-db@1.51.0: - version "1.51.0" - resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.51.0.tgz#d9ff62451859b18342d960850dc3cfb77e63fb0c" - integrity sha512-5y8A56jg7XVQx2mbv1lu49NR4dokRnhZYTtL+KGfaa27uq4pSTXkwQkFJl4pkRMyNFz/EtYDSkiiEHx3F7UN6g== +mime-db@1.52.0: + version "1.52.0" + resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.52.0.tgz#bbabcdc02859f4987301c856e3387ce5ec43bf70" + integrity sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg== mime-types@^2.1.12, mime-types@~2.1.19: - version "2.1.34" - resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.34.tgz#5a712f9ec1503511a945803640fafe09d3793c24" - integrity sha512-6cP692WwGIs9XXdOO4++N+7qjqv0rqxxVvJ3VHPh/Sc9mVZcQP+ZGhkKiTvWMQRr2tbHkJP/Yn7Y0npb3ZBs4A== + version "2.1.35" + resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.35.tgz#381a871b62a734450660ae3deee44813f70d959a" + integrity sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw== dependencies: - mime-db "1.51.0" - -mime@2.4.6: - version "2.4.6" - resolved "https://registry.yarnpkg.com/mime/-/mime-2.4.6.tgz#e5b407c90db442f2beb5b162373d07b69affa4d1" - integrity sha512-RZKhC3EmpBchfTGBVb8fb+RL2cWyw/32lshnsETttkBAyAUXSGHxbEJWWRXc751DrIxG1q04b8QwMbAwkRPpUA== + mime-db "1.52.0" mime@2.6.0: version "2.6.0" @@ -5766,12 +6738,12 @@ minimist-options@4.1.0: is-plain-obj "^1.1.0" kind-of "^6.0.3" -minimist@1.2.5, minimist@^1.2.0, minimist@^1.2.3, minimist@^1.2.5: +minimist@1.2.5: version "1.2.5" resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.5.tgz#67d66014b66a6a8aaa0c083c5fd58df4e4e97602" integrity sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw== -minimist@^1.2.6: +minimist@^1.1.0, minimist@^1.2.0, minimist@^1.2.3, minimist@^1.2.5, minimist@^1.2.6: version "1.2.6" resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.6.tgz#8637a5b759ea0d6e98702cfb3a9283323c93af44" integrity sha512-Jsjnk4bw3YJqYzbdyBiNsPWHPfO++UGG749Cxs6peCu5Xg4nrena6OVxOYxrQTqww0Jmwt+Ref8rggumkTLz9Q== @@ -5783,6 +6755,79 @@ minimisted@^2.0.0: dependencies: minimist "^1.2.5" +minipass-collect@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/minipass-collect/-/minipass-collect-1.0.2.tgz#22b813bf745dc6edba2576b940022ad6edc8c617" + integrity sha512-6T6lH0H8OG9kITm/Jm6tdooIbogG9e0tLgpY6mphXSm/A9u8Nq1ryBG+Qspiub9LjWlBPsPS3tWQ/Botq4FdxA== + dependencies: + minipass "^3.0.0" + +minipass-fetch@^1.3.2, minipass-fetch@^1.4.1: + version "1.4.1" + resolved "https://registry.yarnpkg.com/minipass-fetch/-/minipass-fetch-1.4.1.tgz#d75e0091daac1b0ffd7e9d41629faff7d0c1f1b6" + integrity sha512-CGH1eblLq26Y15+Azk7ey4xh0J/XfJfrCox5LDJiKqI2Q2iwOLOKrlmIaODiSQS8d18jalF6y2K2ePUm0CmShw== + dependencies: + minipass "^3.1.0" + minipass-sized "^1.0.3" + minizlib "^2.0.0" + optionalDependencies: + encoding "^0.1.12" + +minipass-fetch@^2.0.3: + version "2.1.0" + resolved "https://registry.yarnpkg.com/minipass-fetch/-/minipass-fetch-2.1.0.tgz#ca1754a5f857a3be99a9271277246ac0b44c3ff8" + integrity sha512-H9U4UVBGXEyyWJnqYDCLp1PwD8XIkJ4akNHp1aGVI+2Ym7wQMlxDKi4IB4JbmyU+pl9pEs/cVrK6cOuvmbK4Sg== + dependencies: + minipass "^3.1.6" + minipass-sized "^1.0.3" + minizlib "^2.1.2" + optionalDependencies: + encoding "^0.1.13" + +minipass-flush@^1.0.5: + version "1.0.5" + resolved "https://registry.yarnpkg.com/minipass-flush/-/minipass-flush-1.0.5.tgz#82e7135d7e89a50ffe64610a787953c4c4cbb373" + integrity sha512-JmQSYYpPUqX5Jyn1mXaRwOda1uQ8HP5KAT/oDSLCzt1BYRhQU0/hDtsB1ufZfEEzMZ9aAVmsBw8+FWsIXlClWw== + dependencies: + minipass "^3.0.0" + +minipass-json-stream@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/minipass-json-stream/-/minipass-json-stream-1.0.1.tgz#7edbb92588fbfc2ff1db2fc10397acb7b6b44aa7" + integrity sha512-ODqY18UZt/I8k+b7rl2AENgbWE8IDYam+undIJONvigAz8KR5GWblsFTEfQs0WODsjbSXWlm+JHEv8Gr6Tfdbg== + dependencies: + jsonparse "^1.3.1" + minipass "^3.0.0" + +minipass-pipeline@^1.2.2, minipass-pipeline@^1.2.4: + version "1.2.4" + resolved "https://registry.yarnpkg.com/minipass-pipeline/-/minipass-pipeline-1.2.4.tgz#68472f79711c084657c067c5c6ad93cddea8214c" + integrity sha512-xuIq7cIOt09RPRJ19gdi4b+RiNvDFYe5JH+ggNvBqGqpQXcru3PcRmOZuHBKWK1Txf9+cQ+HMVN4d6z46LZP7A== + dependencies: + minipass "^3.0.0" + +minipass-sized@^1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/minipass-sized/-/minipass-sized-1.0.3.tgz#70ee5a7c5052070afacfbc22977ea79def353b70" + integrity sha512-MbkQQ2CTiBMlA2Dm/5cY+9SWFEN8pzzOXi6rlM5Xxq0Yqbda5ZQy9sU75a673FE9ZK0Zsbr6Y5iP6u9nktfg2g== + dependencies: + minipass "^3.0.0" + +minipass@^3.0.0, minipass@^3.1.0, minipass@^3.1.1, minipass@^3.1.3, minipass@^3.1.6: + version "3.1.6" + resolved "https://registry.yarnpkg.com/minipass/-/minipass-3.1.6.tgz#3b8150aa688a711a1521af5e8779c1d3bb4f45ee" + integrity sha512-rty5kpw9/z8SX9dmxblFA6edItUmwJgMeYDZRrwlIVN27i8gysGbznJwUggw2V/FVqFSDdWy040ZPS811DYAqQ== + dependencies: + yallist "^4.0.0" + +minizlib@^2.0.0, minizlib@^2.1.1, minizlib@^2.1.2: + version "2.1.2" + resolved "https://registry.yarnpkg.com/minizlib/-/minizlib-2.1.2.tgz#e90d3466ba209b932451508a11ce3d3632145931" + integrity sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg== + dependencies: + minipass "^3.0.0" + yallist "^4.0.0" + mixin-deep@^1.2.0: version "1.3.2" resolved "https://registry.yarnpkg.com/mixin-deep/-/mixin-deep-1.3.2.tgz#1120b43dc359a785dce65b55b82e257ccf479566" @@ -5796,7 +6841,16 @@ mkdirp-classic@^0.5.2: resolved "https://registry.yarnpkg.com/mkdirp-classic/-/mkdirp-classic-0.5.3.tgz#fa10c9115cc6d8865be221ba47ee9bed78601113" integrity sha512-gKLcREMhtuZRwRAfqP3RFW+TK4JqApVBtOIftVgjuABpAtpxhPGaDcfvbhNvD0B8iD1oUr/txX35NjcaY6Ns/A== -mkdirp@1.0.4, mkdirp@^1.0.0: +mkdirp-infer-owner@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/mkdirp-infer-owner/-/mkdirp-infer-owner-2.0.0.tgz#55d3b368e7d89065c38f32fd38e638f0ab61d316" + integrity sha512-sdqtiFt3lkOaYvTXSRIUjkIdPTcxgv5+fgqYE/5qgwdw12cOrAuzzgzvVExIkH/ul1oeHN3bCLOWSG3XOqbKKw== + dependencies: + chownr "^2.0.0" + infer-owner "^1.0.4" + mkdirp "^1.0.3" + +mkdirp@1.0.4, mkdirp@^1.0.0, mkdirp@^1.0.3, mkdirp@^1.0.4: version "1.0.4" resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-1.0.4.tgz#3eb5ed62622756d79a5f0e2a221dfebad75c2f7e" integrity sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw== @@ -5863,7 +6917,7 @@ ms@2.1.2: resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.2.tgz#d09d1f357b443f493382a8eb3ccd183872ae6009" integrity sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w== -ms@2.1.3, ms@^2.1.1: +ms@2.1.3, ms@^2.0.0, ms@^2.1.1: version "2.1.3" resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.3.tgz#574c8138ce1d2b5861f0b44579dbadd60c6615b2" integrity sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA== @@ -5879,6 +6933,17 @@ multimatch@^4.0.0: arrify "^2.0.1" minimatch "^3.0.4" +multimatch@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/multimatch/-/multimatch-5.0.0.tgz#932b800963cea7a31a033328fa1e0c3a1874dbe6" + integrity sha512-ypMKuglUrZUD99Tk2bUQ+xNQj43lPEfAeX2o9cTteAmShXy2VHDJpuwu1o0xqoKCt9jLVAvwyFKdLTPXKAfJyA== + dependencies: + "@types/minimatch" "^3.0.3" + array-differ "^3.0.0" + array-union "^2.1.0" + arrify "^2.0.1" + minimatch "^3.0.4" + multistream@^2.0.5: version "2.1.1" resolved "https://registry.yarnpkg.com/multistream/-/multistream-2.1.1.tgz#629d3a29bd76623489980d04519a2c365948148c" @@ -5887,6 +6952,14 @@ multistream@^2.0.5: inherits "^2.0.1" readable-stream "^2.0.5" +multistream@^3.1.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/multistream/-/multistream-3.1.0.tgz#49c382bc0bb355e34d15ba3a9fc1cf0f66b9fded" + integrity sha512-zBgD3kn8izQAN/TaL1PCMv15vYpf+Vcrsfub06njuYVYlzUldzpopTlrEZ53pZVEbfn3Shtv7vRFoOv6LOV87Q== + dependencies: + inherits "^2.0.1" + readable-stream "^3.4.0" + mute-stream@0.0.7: version "0.0.7" resolved "https://registry.yarnpkg.com/mute-stream/-/mute-stream-0.0.7.tgz#3075ce93bc21b8fab43e1bc4da7e8115ed1e7bab" @@ -5948,6 +7021,11 @@ ncp@~2.0.0: resolved "https://registry.yarnpkg.com/ncp/-/ncp-2.0.0.tgz#195a21d6c46e361d2fb1281ba38b91e9df7bdbb3" integrity sha1-GVoh1sRuNh0vsSgbo4uR6d9727M= +negotiator@^0.6.2, negotiator@^0.6.3: + version "0.6.3" + resolved "https://registry.yarnpkg.com/negotiator/-/negotiator-0.6.3.tgz#58e323a72fedc0d6f9cd4d31fe49f51479590ccd" + integrity sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg== + neo-async@^2.6.0: version "2.6.2" resolved "https://registry.yarnpkg.com/neo-async/-/neo-async-2.6.2.tgz#b4aafb93e3aeb2d8174ca53cf163ab7d7308305f" @@ -5996,6 +7074,14 @@ nise@^5.0.1, nise@^5.1.0: just-extend "^4.0.2" path-to-regexp "^1.7.0" +no-case@^3.0.4: + version "3.0.4" + resolved "https://registry.yarnpkg.com/no-case/-/no-case-3.0.4.tgz#d361fd5c9800f558551a8369fc0dcd4662b6124d" + integrity sha512-fgAN3jGAh+RoxUGZHTSOLJIqUc2wmoBwGR4tbpNAKmmovFoWq0OdRkb0VkldReO2a2iBT/OEulG9XSUc10r3zg== + dependencies: + lower-case "^2.0.2" + tslib "^2.0.3" + nock@^13.0.0: version "13.2.2" resolved "https://registry.yarnpkg.com/nock/-/nock-13.2.2.tgz#29a6942250278209c2b3e7a38310f703581b21fa" @@ -6006,13 +7092,29 @@ nock@^13.0.0: lodash.set "^4.3.2" propagate "^2.0.0" -node-fetch@^2.6.0: +node-fetch@^2.6.0, node-fetch@^2.6.1, node-fetch@^2.6.7: version "2.6.7" resolved "https://registry.yarnpkg.com/node-fetch/-/node-fetch-2.6.7.tgz#24de9fba827e3b4ae44dc8b20256a379160052ad" integrity sha512-ZjMPFEfVx5j+y2yF35Kzx5sF7kDzxuDj6ziH4FFbOp87zKDZNx8yExJIb05OGF4Nlt9IHFIMBkRl41VdvcNdbQ== dependencies: whatwg-url "^5.0.0" +node-gyp@^8.2.0: + version "8.4.1" + resolved "https://registry.yarnpkg.com/node-gyp/-/node-gyp-8.4.1.tgz#3d49308fc31f768180957d6b5746845fbd429937" + integrity sha512-olTJRgUtAb/hOXG0E93wZDs5YiJlgbXxTwQAFHyNlRsXQnYzUaF2aGgujZbw+hR8aF4ZG/rST57bWMWD16jr9w== + dependencies: + env-paths "^2.2.0" + glob "^7.1.4" + graceful-fs "^4.2.6" + make-fetch-happen "^9.1.0" + nopt "^5.0.0" + npmlog "^6.0.0" + rimraf "^3.0.2" + semver "^7.3.5" + tar "^6.1.2" + which "^2.0.2" + node-preload@^0.2.1: version "0.2.1" resolved "https://registry.yarnpkg.com/node-preload/-/node-preload-0.2.1.tgz#c03043bb327f417a18fee7ab7ee57b408a144301" @@ -6025,6 +7127,13 @@ node-releases@^2.0.1: resolved "https://registry.yarnpkg.com/node-releases/-/node-releases-2.0.1.tgz#3d1d395f204f1f2f29a54358b9fb678765ad2fc5" integrity sha512-CqyzN6z7Q6aMeF/ktcMVTzhAHCEpf8SOarwpzpf8pNBY2k5/oM34UHldUwp8VKI7uxct2HxSRdJjBaZeESzcxA== +nopt@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/nopt/-/nopt-5.0.0.tgz#530942bb58a512fccafe53fe210f13a25355dc88" + integrity sha512-Tbj67rffqceeLpcRXrT7vKAN8CwfPeIBgM7E6iBkmKLV7bEMwpGgYLGv0jACUsECaa/vuxP0IjEont6umdMgtQ== + dependencies: + abbrev "1" + normalize-package-data@^2.5.0: version "2.5.0" resolved "https://registry.yarnpkg.com/normalize-package-data/-/normalize-package-data-2.5.0.tgz#e66db1838b200c1dfc233225d12cb36520e234a8" @@ -6035,7 +7144,7 @@ normalize-package-data@^2.5.0: semver "2 || 3 || 4 || 5" validate-npm-package-license "^3.0.1" -normalize-package-data@^3.0.0: +normalize-package-data@^3.0.0, normalize-package-data@^3.0.3: version "3.0.3" resolved "https://registry.yarnpkg.com/normalize-package-data/-/normalize-package-data-3.0.3.tgz#dbcc3e2da59509a0983422884cd172eefdfa525e" integrity sha512-p2W1sgqij3zMMyRC067Dg16bfzVH+w7hyegmpIvZ4JNjqtGOVAIvLmjBx3yP7YTe9vKJgkoNOPjwQGogDoMXFA== @@ -6067,6 +7176,66 @@ npm-api@^1.0.0: node-fetch "^2.6.0" paged-request "^2.0.1" +npm-bundled@^1.1.1: + version "1.1.2" + resolved "https://registry.yarnpkg.com/npm-bundled/-/npm-bundled-1.1.2.tgz#944c78789bd739035b70baa2ca5cc32b8d860bc1" + integrity sha512-x5DHup0SuyQcmL3s7Rx/YQ8sbw/Hzg0rj48eN0dV7hf5cmQq5PXIeioroH3raV1QC1yh3uTYuMThvEQF3iKgGQ== + dependencies: + npm-normalize-package-bin "^1.0.1" + +npm-install-checks@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/npm-install-checks/-/npm-install-checks-4.0.0.tgz#a37facc763a2fde0497ef2c6d0ac7c3fbe00d7b4" + integrity sha512-09OmyDkNLYwqKPOnbI8exiOZU2GVVmQp7tgez2BPi5OZC8M82elDAps7sxC4l//uSUtotWqoEIDwjRvWH4qz8w== + dependencies: + semver "^7.1.1" + +npm-normalize-package-bin@^1.0.0, npm-normalize-package-bin@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/npm-normalize-package-bin/-/npm-normalize-package-bin-1.0.1.tgz#6e79a41f23fd235c0623218228da7d9c23b8f6e2" + integrity sha512-EPfafl6JL5/rU+ot6P3gRSCpPDW5VmIzX959Ob1+ySFUuuYHWHekXpwdUZcKP5C+DS4GEtdJluwBjnsNDl+fSA== + +npm-package-arg@^8.0.1, npm-package-arg@^8.1.2, npm-package-arg@^8.1.5: + version "8.1.5" + resolved "https://registry.yarnpkg.com/npm-package-arg/-/npm-package-arg-8.1.5.tgz#3369b2d5fe8fdc674baa7f1786514ddc15466e44" + integrity sha512-LhgZrg0n0VgvzVdSm1oiZworPbTxYHUJCgtsJW8mGvlDpxTM1vSJc3m5QZeUkhAHIzbz3VCHd/R4osi1L1Tg/Q== + dependencies: + hosted-git-info "^4.0.1" + semver "^7.3.4" + validate-npm-package-name "^3.0.0" + +npm-packlist@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/npm-packlist/-/npm-packlist-3.0.0.tgz#0370df5cfc2fcc8f79b8f42b37798dd9ee32c2a9" + integrity sha512-L/cbzmutAwII5glUcf2DBRNY/d0TFd4e/FnaZigJV6JD85RHZXJFGwCndjMWiiViiWSsWt3tiOLpI3ByTnIdFQ== + dependencies: + glob "^7.1.6" + ignore-walk "^4.0.1" + npm-bundled "^1.1.1" + npm-normalize-package-bin "^1.0.1" + +npm-pick-manifest@^6.0.0, npm-pick-manifest@^6.1.0, npm-pick-manifest@^6.1.1: + version "6.1.1" + resolved "https://registry.yarnpkg.com/npm-pick-manifest/-/npm-pick-manifest-6.1.1.tgz#7b5484ca2c908565f43b7f27644f36bb816f5148" + integrity sha512-dBsdBtORT84S8V8UTad1WlUyKIY9iMsAmqxHbLdeEeBNMLQDlDWWra3wYUx9EBEIiG/YwAy0XyNHDd2goAsfuA== + dependencies: + npm-install-checks "^4.0.0" + npm-normalize-package-bin "^1.0.1" + npm-package-arg "^8.1.2" + semver "^7.3.4" + +npm-registry-fetch@^12.0.0, npm-registry-fetch@^12.0.1: + version "12.0.2" + resolved "https://registry.yarnpkg.com/npm-registry-fetch/-/npm-registry-fetch-12.0.2.tgz#ae583bb3c902a60dae43675b5e33b5b1f6159f1e" + integrity sha512-Df5QT3RaJnXYuOwtXBXS9BWs+tHH2olvkCLh6jcR/b/u3DvPMlp3J0TvvYwplPKxHMOwfg287PYih9QqaVFoKA== + dependencies: + make-fetch-happen "^10.0.1" + minipass "^3.1.6" + minipass-fetch "^1.4.1" + minipass-json-stream "^1.0.1" + minizlib "^2.1.2" + npm-package-arg "^8.1.5" + npm-run-path@^2.0.0: version "2.0.2" resolved "https://registry.yarnpkg.com/npm-run-path/-/npm-run-path-2.0.2.tgz#35a9232dfa35d7067b4cb2ddf2357b1871536c5f" @@ -6081,6 +7250,31 @@ npm-run-path@^4.0.0, npm-run-path@^4.0.1: dependencies: path-key "^3.0.0" +npmlog@^5.0.1: + version "5.0.1" + resolved "https://registry.yarnpkg.com/npmlog/-/npmlog-5.0.1.tgz#f06678e80e29419ad67ab964e0fa69959c1eb8b0" + integrity sha512-AqZtDUWOMKs1G/8lwylVjrdYgqA4d9nu8hc+0gzRxlDb1I10+FHBGMXs6aiQHFdCUUlqH99MUMuLfzWDNDtfxw== + dependencies: + are-we-there-yet "^2.0.0" + console-control-strings "^1.1.0" + gauge "^3.0.0" + set-blocking "^2.0.0" + +npmlog@^6.0.0: + version "6.0.2" + resolved "https://registry.yarnpkg.com/npmlog/-/npmlog-6.0.2.tgz#c8166017a42f2dea92d6453168dd865186a70830" + integrity sha512-/vBvz5Jfr9dT/aFWd0FIRf+T/Q2WBsLENygUaFUqstqsycmZAP/t5BvFJTK0viFmSUxiUKTUplWy5vt+rvKIxg== + dependencies: + are-we-there-yet "^3.0.0" + console-control-strings "^1.1.0" + gauge "^4.0.3" + set-blocking "^2.0.0" + +number-is-nan@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/number-is-nan/-/number-is-nan-1.0.1.tgz#097b602b53422a522c1afb8790318336941a011d" + integrity sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0= + nyc@^15.1.0: version "15.1.0" resolved "https://registry.yarnpkg.com/nyc/-/nyc-15.1.0.tgz#1335dae12ddc87b6e249d5a1994ca4bdaea75f02" @@ -6119,6 +7313,11 @@ oauth-sign@~0.9.0: resolved "https://registry.yarnpkg.com/oauth-sign/-/oauth-sign-0.9.0.tgz#47a7b016baa68b5fa0ecf3dee08a85c679ac6455" integrity sha512-fexhUFFPTGV8ybAtSIGbV6gOkSv8UtRbDBnAyLQw4QPKkgNlsH2ByPGtMUqdWkos6YCRmAqViwgZrJc/mRDzZQ== +object-assign@^4.1.1: + version "4.1.1" + resolved "https://registry.yarnpkg.com/object-assign/-/object-assign-4.1.1.tgz#2109adc7965887cfc05cbbd442cac8bfbb360863" + integrity sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM= + object-copy@^0.1.0: version "0.1.0" resolved "https://registry.yarnpkg.com/object-copy/-/object-copy-0.1.0.tgz#7e7d858b781bd7c991a41ba975ed3812754e998c" @@ -6128,7 +7327,7 @@ object-copy@^0.1.0: define-property "^0.2.5" kind-of "^3.0.3" -object-inspect@^1.11.0, object-inspect@^1.12.0, object-inspect@^1.9.0: +object-inspect@^1.11.0, object-inspect@^1.9.0: version "1.12.0" resolved "https://registry.yarnpkg.com/object-inspect/-/object-inspect-1.12.0.tgz#6e2c120e868fd1fd18cb4f18c31741d0d6e776f0" integrity sha512-Ho2z80bVIvJloH+YzRmpZVQe87+qASmBUKZDWgx9cu+KDrX2ZDH/3tMy+gXbZETVGs2M8YdxObOh7XAtim9Y0g== @@ -6176,6 +7375,30 @@ object.values@^1.1.5: define-properties "^1.1.3" es-abstract "^1.19.1" +oclif@^3.0.1: + version "3.0.1" + resolved "https://registry.yarnpkg.com/oclif/-/oclif-3.0.1.tgz#f10bd702b4b2b22f849d57951882e0bd8aa9246c" + integrity sha512-DZZ53DFbDBai6doGTyVCkYWYBj9u+pXStZf8LMV5ttyr9vY9YL/d8kFpYk5OrUz8PuU81JU2Jo3ZV+4QzZFfug== + dependencies: + "@oclif/core" "^1.6.4" + "@oclif/plugin-help" "^5.1.12" + "@oclif/plugin-not-found" "^2.3.1" + "@oclif/plugin-warn-if-update-available" "^2.0.4" + aws-sdk "^2.1069.0" + concurrently "^7.0.0" + debug "^4.3.3" + find-yarn-workspace-root "^2.0.0" + fs-extra "^8.1" + github-slugger "^1.4.0" + lodash "^4.17.21" + normalize-package-data "^3.0.3" + qqjs "^0.3.11" + semver "^7.3.5" + tslib "^2.3.1" + yeoman-environment "^3.9.1" + yeoman-generator "^5.6.1" + yosay "^2.0.2" + once@^1.3.0, once@^1.3.1, once@^1.4.0: version "1.4.0" resolved "https://registry.yarnpkg.com/once/-/once-1.4.0.tgz#583b1aa775961d4b113ac17d9c50baef9dd76bd1" @@ -6197,6 +7420,14 @@ onetime@^5.1.0, onetime@^5.1.2: dependencies: mimic-fn "^2.1.0" +open@^7.0.0: + version "7.4.2" + resolved "https://registry.yarnpkg.com/open/-/open-7.4.2.tgz#b8147e26dcf3e426316c730089fd71edd29c2321" + integrity sha512-MVHddDVweXZF3awtlAS+6pgKLlm/JgxZ90+/NBurBoQctVOOB/zDdVjcyPzQ+0laDGbsWgrRkflI65sQeOgT9Q== + dependencies: + is-docker "^2.0.0" + is-wsl "^2.1.1" + open@^8.4.0: version "8.4.0" resolved "https://registry.yarnpkg.com/open/-/open-8.4.0.tgz#345321ae18f8138f82565a910fdc6b39e8c244f8" @@ -6242,6 +7473,21 @@ optionator@^0.9.1: type-check "^0.4.0" word-wrap "^1.2.3" +ora@^5.4.1: + version "5.4.1" + resolved "https://registry.yarnpkg.com/ora/-/ora-5.4.1.tgz#1b2678426af4ac4a509008e5e4ac9e9959db9e18" + 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" + os-tmpdir@~1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/os-tmpdir/-/os-tmpdir-1.0.2.tgz#bbe67406c79aa85c5cfec766fe5734555dfa1274" @@ -6320,6 +7566,29 @@ p-map@^4.0.0: dependencies: aggregate-error "^3.0.0" +p-queue@^6.6.2: + version "6.6.2" + resolved "https://registry.yarnpkg.com/p-queue/-/p-queue-6.6.2.tgz#2068a9dcf8e67dd0ec3e7a2bcb76810faa85e426" + integrity sha512-RwFpb72c/BhQLEXIZ5K2e+AhgNVmIejGlTgiB9MzZ0e93GRvqZ7uSi0dvRF7/XIXDeNkra2fNHBxTyPDGySpjQ== + dependencies: + eventemitter3 "^4.0.4" + p-timeout "^3.2.0" + +p-timeout@^3.2.0: + version "3.2.0" + resolved "https://registry.yarnpkg.com/p-timeout/-/p-timeout-3.2.0.tgz#c7e17abc971d2a7962ef83626b35d635acf23dfe" + integrity sha512-rhIwUycgwwKcP9yTOOFK/AKsAopjjCakVqLHePO3CC6Mir1Z99xT+R63jZxAT5lFZLa2inS5h+ZS2GvR99/FBg== + dependencies: + p-finally "^1.0.0" + +p-transform@^1.3.0: + version "1.3.0" + resolved "https://registry.yarnpkg.com/p-transform/-/p-transform-1.3.0.tgz#2da960ba92c6a56efbe75cbd1edf3ea7b3191049" + integrity sha512-UJKdSzgd3KOnXXAtqN5+/eeHcvTn1hBkesEmElVgvO/NAYcxAvmjzIGmnNd3Tb/gRAvMBdNRFD4qAWdHxY6QXg== + dependencies: + debug "^4.3.2" + p-queue "^6.6.2" + p-try@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/p-try/-/p-try-1.0.0.tgz#cbc79cdbaf8fd4228e13f621f2b1a237c1b207b3" @@ -6364,6 +7633,36 @@ package-hash@^4.0.0: lodash.flattendeep "^4.4.0" release-zalgo "^1.0.0" +pacote@^12.0.0, pacote@^12.0.2: + version "12.0.3" + resolved "https://registry.yarnpkg.com/pacote/-/pacote-12.0.3.tgz#b6f25868deb810e7e0ddf001be88da2bcaca57c7" + integrity sha512-CdYEl03JDrRO3x18uHjBYA9TyoW8gy+ThVcypcDkxPtKlw76e4ejhYB6i9lJ+/cebbjpqPW/CijjqxwDTts8Ow== + dependencies: + "@npmcli/git" "^2.1.0" + "@npmcli/installed-package-contents" "^1.0.6" + "@npmcli/promise-spawn" "^1.2.0" + "@npmcli/run-script" "^2.0.0" + cacache "^15.0.5" + chownr "^2.0.0" + fs-minipass "^2.1.0" + infer-owner "^1.0.4" + minipass "^3.1.3" + mkdirp "^1.0.3" + npm-package-arg "^8.0.1" + npm-packlist "^3.0.0" + npm-pick-manifest "^6.0.0" + npm-registry-fetch "^12.0.0" + promise-retry "^2.0.1" + read-package-json-fast "^2.0.1" + rimraf "^3.0.2" + ssri "^8.0.1" + tar "^6.1.0" + +pad-component@0.0.1: + version "0.0.1" + resolved "https://registry.yarnpkg.com/pad-component/-/pad-component-0.0.1.tgz#ad1f22ce1bf0fdc0d6ddd908af17f351a404b8ac" + integrity sha1-rR8izhvw/cDW3dkIrxfzUaQEuKw= + paged-request@^2.0.1: version "2.0.2" resolved "https://registry.yarnpkg.com/paged-request/-/paged-request-2.0.2.tgz#4d621a08b8d6bee4440a0a92112354eeece5b5b0" @@ -6376,6 +7675,14 @@ pako@^1.0.10: resolved "https://registry.yarnpkg.com/pako/-/pako-1.0.11.tgz#6c9599d340d54dfd3946380252a35705a6b992bf" integrity sha512-4hLB8Py4zZce5s4yd9XzopqwVv/yGNhV1Bl8NTmCq1763HeK2+EwVTv+leGeL13Dnh2wfbqowVPXCIO0z4taYw== +param-case@^3.0.4: + version "3.0.4" + resolved "https://registry.yarnpkg.com/param-case/-/param-case-3.0.4.tgz#7d17fe4aa12bde34d4a77d91acfb6219caad01c5" + integrity sha512-RXlj7zCYokReqWpOPH9oYivUzLYZ5vAPIfEmCTNViosC78F8F0H9y7T7gG2M39ymgutxF5gcFEsyZQSph9Bp3A== + dependencies: + dot-case "^3.0.4" + tslib "^2.0.3" + parent-module@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/parent-module/-/parent-module-1.0.1.tgz#691d2709e78c79fae3a156622452d00762caaaa2" @@ -6383,6 +7690,15 @@ parent-module@^1.0.0: dependencies: callsites "^3.0.0" +parse-conflict-json@^2.0.1: + version "2.0.2" + resolved "https://registry.yarnpkg.com/parse-conflict-json/-/parse-conflict-json-2.0.2.tgz#3d05bc8ffe07d39600dc6436c6aefe382033d323" + integrity sha512-jDbRGb00TAPFsKWCpZZOT93SxVP9nONOSgES3AevqRq/CHvavEBvKAjxX9p5Y5F0RZLxH9Ufd9+RwtCsa+lFDA== + dependencies: + json-parse-even-better-errors "^2.3.1" + just-diff "^5.0.1" + just-diff-apply "^5.2.0" + parse-json@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/parse-json/-/parse-json-4.0.0.tgz#be35f5425be1f7f6c747184f98a788cb99477ee0" @@ -6406,6 +7722,14 @@ parse-passwd@^1.0.0: resolved "https://registry.yarnpkg.com/parse-passwd/-/parse-passwd-1.0.0.tgz#6d5b934a456993b23d37f40a382d6f1666a8e5c6" integrity sha1-bVuTSkVpk7I9N/QKOC1vFmao5cY= +pascal-case@^3.1.2: + version "3.1.2" + resolved "https://registry.yarnpkg.com/pascal-case/-/pascal-case-3.1.2.tgz#b48e0ef2b98e205e7c1dae747d0b1508237660eb" + integrity sha512-uWlGT3YSnK9x3BQJaOdcZwrnV6hPpd8jFH1/ucpiLRPh/2zCVJKS19E4GvYHvaCcACn3foXZ0cLB9Wrx1KGe5g== + dependencies: + no-case "^3.0.4" + tslib "^2.0.3" + pascalcase@^0.1.1: version "0.1.1" resolved "https://registry.yarnpkg.com/pascalcase/-/pascalcase-0.1.1.tgz#b363e55e8006ca6fe21784d2db22bd15d7917f14" @@ -6419,6 +7743,14 @@ password-prompt@^1.0.7, password-prompt@^1.1.2: ansi-escapes "^3.1.0" cross-spawn "^6.0.5" +path-case@^3.0.4: + version "3.0.4" + resolved "https://registry.yarnpkg.com/path-case/-/path-case-3.0.4.tgz#9168645334eb942658375c56f80b4c0cb5f82c6f" + integrity sha512-qO4qCFjXqVTrcbPt/hQfhTQ+VhFsqNKOPtytgNKkKxSoEp3XPUQ8ObFuePylOIok5gjn69ry8XiULxCwot3Wfg== + dependencies: + dot-case "^3.0.4" + tslib "^2.0.3" + path-dirname@^1.0.0: version "1.0.2" resolved "https://registry.yarnpkg.com/path-dirname/-/path-dirname-1.0.2.tgz#cc33d24d525e099a5388c0336c6e32b9160609e0" @@ -6481,7 +7813,7 @@ pathval@^1.1.1: performance-now@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/performance-now/-/performance-now-2.1.0.tgz#6309f4e0e5fa913ec1c69307ae364b4b377c9e7b" - integrity sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns= + integrity sha512-7EAHlyLHI56VEIdK57uwHdHKIaAGbnXPiw0yWbarQZOKaKpvUIgW0jWRVLiatnM+XXlSwsanIBH/hzGMJulMow== picocolors@^1.0.0: version "1.0.0" @@ -6493,11 +7825,6 @@ picomatch@^2.0.4, picomatch@^2.2.1, picomatch@^2.2.3: resolved "https://registry.yarnpkg.com/picomatch/-/picomatch-2.3.1.tgz#3ba3833733646d9d3e4995946c1365a67fb07a42" integrity sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA== -pidtree@^0.5.0: - version "0.5.0" - resolved "https://registry.yarnpkg.com/pidtree/-/pidtree-0.5.0.tgz#ad5fbc1de78b8a5f99d6fbdd4f6e4eee21d1aca1" - integrity sha512-9nxspIM7OpZuhBxPg73Zvyq7j1QMPMPsGKTqRc2XOaFQauDvoNz9fM1Wdkjmeo7l9GXOZiRs97sPkuayl39wjA== - pify@^2.3.0: version "2.3.0" resolved "https://registry.yarnpkg.com/pify/-/pify-2.3.0.tgz#ed141a6ac043a849ea588498e7dca8b15330e90c" @@ -6539,6 +7866,16 @@ posix-character-classes@^0.1.0: resolved "https://registry.yarnpkg.com/posix-character-classes/-/posix-character-classes-0.1.1.tgz#01eac0fe3b5af71a2a6c02feabb8c1fef7e00eab" integrity sha1-AerA/jta9xoqbAL+q7jB/vfgDqs= +preferred-pm@^3.0.3: + version "3.0.3" + resolved "https://registry.yarnpkg.com/preferred-pm/-/preferred-pm-3.0.3.tgz#1b6338000371e3edbce52ef2e4f65eb2e73586d6" + integrity sha512-+wZgbxNES/KlJs9q40F/1sfOd/j7f1O9JaHcW5Dsn3aUUOZg3L2bjpVUcKV2jvtElYfoTuQiNeMfQJ4kwUAhCQ== + dependencies: + find-up "^5.0.0" + find-yarn-workspace-root2 "1.2.16" + path-exists "^4.0.0" + which-pm "2.0.0" + prelude-ls@^1.2.1: version "1.2.1" resolved "https://registry.yarnpkg.com/prelude-ls/-/prelude-ls-1.2.1.tgz#debc6489d7a6e6b0e7611888cec880337d316396" @@ -6566,7 +7903,7 @@ prettier@^2.0.5, prettier@^2.5.1: resolved "https://registry.yarnpkg.com/prettier/-/prettier-2.6.2.tgz#e26d71a18a74c3d0f0597f55f01fb6c06c206032" integrity sha512-PkUpF+qoXTqhOeWL9fu7As8LXsIUZ1WYaJiY/a7McAQzxjk82OF0tibkFXVCDImZtWxbvojFjerkiLb0/q8mew== -pretty-bytes@^5.2.0: +pretty-bytes@^5.2.0, pretty-bytes@^5.3.0: version "5.6.0" resolved "https://registry.yarnpkg.com/pretty-bytes/-/pretty-bytes-5.6.0.tgz#356256f643804773c82f64723fe78c92c62beaeb" integrity sha512-FFw039TmrBqFK8ma/7OL3sDz/VytdtJr044/QUJtH0wK9lb9jLq9tJyIxUwtQJHwar2BqtiA4iCWSwo9JLkzFg== @@ -6588,6 +7925,11 @@ printj@~1.3.1: resolved "https://registry.yarnpkg.com/printj/-/printj-1.3.1.tgz#9af6b1d55647a1587ac44f4c1654a4b95b8e12cb" integrity sha512-GA3TdL8szPK4AQ2YnOe/b+Y1jUFwmmGMMK/qbY7VcE3Z7FU8JstbKiKRzO6CIiAKPhTO8m01NoQ0V5f3jc4OGg== +proc-log@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/proc-log/-/proc-log-1.0.0.tgz#0d927307401f69ed79341e83a0b2c9a13395eb77" + integrity sha512-aCk8AO51s+4JyuYGg3Q/a6gnrlDO09NpVWePtjp7xwphcoQ04x5WAfCyugcsbLooWcMJ87CLkD4+604IckEdhg== + process-nextick-args@^2.0.0, process-nextick-args@~2.0.0: version "2.0.1" resolved "https://registry.yarnpkg.com/process-nextick-args/-/process-nextick-args-2.0.1.tgz#7820d9b16120cc55ca9ae7792680ae7dba6d7fe2" @@ -6605,6 +7947,29 @@ progress@^2.0.0: resolved "https://registry.yarnpkg.com/progress/-/progress-2.0.3.tgz#7e8cf8d8f5b8f239c1bc68beb4eb78567d572ef8" integrity sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA== +promise-all-reject-late@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/promise-all-reject-late/-/promise-all-reject-late-1.0.1.tgz#f8ebf13483e5ca91ad809ccc2fcf25f26f8643c2" + integrity sha512-vuf0Lf0lOxyQREH7GDIOUMLS7kz+gs8i6B+Yi8dC68a2sychGrHTJYghMBD6k7eUcH0H5P73EckCA48xijWqXw== + +promise-call-limit@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/promise-call-limit/-/promise-call-limit-1.0.1.tgz#4bdee03aeb85674385ca934da7114e9bcd3c6e24" + integrity sha512-3+hgaa19jzCGLuSCbieeRsu5C2joKfYn8pY6JAuXFRVfF4IO+L7UPpFWNTeWT9pM7uhskvbPPd/oEOktCn317Q== + +promise-inflight@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/promise-inflight/-/promise-inflight-1.0.1.tgz#98472870bf228132fcbdd868129bad12c3c029e3" + integrity sha1-mEcocL8igTL8vdhoEputEsPAKeM= + +promise-retry@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/promise-retry/-/promise-retry-2.0.1.tgz#ff747a13620ab57ba688f5fc67855410c370da22" + integrity sha512-y+WKFlBR8BGXnsNlIHFGPZmyDf3DFMoLhaflAnyZgV6rG6xu+JwesTo2Q9R6XwYmtmwAFCkAk3e35jEdoeh/3g== + dependencies: + err-code "^2.0.2" + retry "^0.12.0" + promise@^7.1.1: version "7.3.1" resolved "https://registry.yarnpkg.com/promise/-/promise-7.3.1.tgz#064b72602b18f90f29192b8b1bc418ffd1ebd3bf" @@ -6636,7 +8001,7 @@ proxy-from-env@^1.0.0, proxy-from-env@^1.1.0: resolved "https://registry.yarnpkg.com/proxy-from-env/-/proxy-from-env-1.1.0.tgz#e102f16ca355424865755d2c9e8ea4f24d58c3e2" integrity sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg== -psl@^1.1.24, psl@^1.1.28, psl@^1.1.33: +psl@^1.1.28, psl@^1.1.33: version "1.8.0" resolved "https://registry.yarnpkg.com/psl/-/psl-1.8.0.tgz#9326f8bcfb013adcc005fdff056acce020e51c24" integrity sha512-RIdOzyoavK+hA18OGGWDqUTsCLhtA7IcZ/6NCs4fFJaHBDab+pDDmDIByWFRQJq2Cd7r1OoQxBGKOaztq+hjIQ== @@ -6649,10 +8014,10 @@ pump@^3.0.0: end-of-stream "^1.1.0" once "^1.3.1" -punycode@^1.4.1: - version "1.4.1" - resolved "https://registry.yarnpkg.com/punycode/-/punycode-1.4.1.tgz#c0d5a63b2718800ad8e1eb0fa5269c84dd41845e" - integrity sha1-wNWmOycYgArY4esPpSachN1BhF4= +punycode@1.3.2: + version "1.3.2" + resolved "https://registry.yarnpkg.com/punycode/-/punycode-1.3.2.tgz#9653a036fb7c1ee42342f2325cceefea3926c48d" + integrity sha1-llOgNvt8HuQjQvIyXM7v6jkmxI0= punycode@^2.1.0, punycode@^2.1.1: version "2.1.1" @@ -6664,7 +8029,7 @@ q@^1.5.1: resolved "https://registry.yarnpkg.com/q/-/q-1.5.1.tgz#7e32f75b41381291d04611f1bf14109ac00651d7" integrity sha1-fjL3W0E4EpHQRhHxvxQQmsAGUdc= -qqjs@^0.3.10: +qqjs@^0.3.10, qqjs@^0.3.11: version "0.3.11" resolved "https://registry.yarnpkg.com/qqjs/-/qqjs-0.3.11.tgz#795b9f7d00807d75c391b1241b5be3077143d9ea" integrity sha512-pB2X5AduTl78J+xRSxQiEmga1jQV0j43jOPs/MTgTLApGFEOn6NgdE2dEjp7nvDtjkIOZbvFIojAiYUx6ep3zg== @@ -6688,6 +8053,11 @@ qs@~6.5.2: resolved "https://registry.yarnpkg.com/qs/-/qs-6.5.3.tgz#3aeeffc91967ef6e35c0e488ef46fb296ab76aad" integrity sha512-qxXIEh4pCGfHICj1mAJQ2/2XVZkjCDTcEgfoSQxc/fYivUZxTkk7L3bDBJSoNrEzXI17oUO5Dp07ktqE5KzczA== +querystring@0.2.0: + version "0.2.0" + resolved "https://registry.yarnpkg.com/querystring/-/querystring-0.2.0.tgz#b209849203bb25df820da756e747005878521620" + integrity sha1-sgmEkgO7Jd+CDadW50cAWHhSFiA= + queue-microtask@^1.2.2: version "1.2.3" resolved "https://registry.yarnpkg.com/queue-microtask/-/queue-microtask-1.2.3.tgz#4929228bbc724dfac43e0efb058caf7b6cfb6243" @@ -6728,6 +8098,19 @@ read-chunk@^3.2.0: pify "^4.0.1" with-open-file "^0.1.6" +read-cmd-shim@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/read-cmd-shim/-/read-cmd-shim-3.0.0.tgz#62b8c638225c61e6cc607f8f4b779f3b8238f155" + integrity sha512-KQDVjGqhZk92PPNRj9ZEXEuqg8bUobSKRw+q0YQ3TKI5xkce7bUJobL4Z/OtiEbAAv70yEpYIXp4iQ9L8oPVog== + +read-package-json-fast@^2.0.1, read-package-json-fast@^2.0.2, read-package-json-fast@^2.0.3: + version "2.0.3" + resolved "https://registry.yarnpkg.com/read-package-json-fast/-/read-package-json-fast-2.0.3.tgz#323ca529630da82cb34b36cc0b996693c98c2b83" + integrity sha512-W/BKtbL+dUjTuRL2vziuYhp76s5HZ9qQhd/dKfWIZveD0O40453QNyZhC0e63lqZrAQ4jiOapVoeJ7JrszenQQ== + dependencies: + json-parse-even-better-errors "^2.3.0" + npm-normalize-package-bin "^1.0.1" + read-pkg-up@^5.0.0: version "5.0.0" resolved "https://registry.yarnpkg.com/read-pkg-up/-/read-pkg-up-5.0.0.tgz#b6a6741cb144ed3610554f40162aa07a6db621b8" @@ -6794,6 +8177,16 @@ readdir-glob@^1.0.0: dependencies: minimatch "^3.0.4" +readdir-scoped-modules@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/readdir-scoped-modules/-/readdir-scoped-modules-1.1.0.tgz#8d45407b4f870a0dcaebc0e28670d18e74514309" + integrity sha512-asaikDeqAQg7JifRsZn1NJZXo9E+VwlyCfbkZhwyISinqk5zNS6266HS5kah6P0SaQKGF6SkNnZVHUzHFYxYDw== + dependencies: + debuglog "^1.0.1" + dezalgo "^1.0.0" + graceful-fs "^4.1.2" + once "^1.3.0" + readdirp@~3.6.0: version "3.6.0" resolved "https://registry.yarnpkg.com/readdirp/-/readdirp-3.6.0.tgz#74a370bd857116e245b29cc97340cd431a02a6c7" @@ -6823,6 +8216,11 @@ redeyed@~2.1.0: dependencies: esprima "~4.0.0" +regenerator-runtime@^0.13.3, regenerator-runtime@^0.13.4: + version "0.13.9" + resolved "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.13.9.tgz#8925742a98ffd90814988d7566ad30ca3b263b52" + integrity sha512-p3VT+cOEgxFsRRA9X4lkI1E+k2/CtnKtU4gcxyaCUreilL/vqI6CdZ3wxVUx3UOUg+gnUOQQcRI7BmSI656MYA== + regex-not@^1.0.0, regex-not@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/regex-not/-/regex-not-1.0.2.tgz#1f4ece27e00b0b65e0247a6810e6a85d83a5752c" @@ -6981,6 +8379,11 @@ ret@~0.1.10: resolved "https://registry.yarnpkg.com/ret/-/ret-0.1.15.tgz#b8a4825d5bdb1fc3f6f53c2bc33f81388681c7bc" integrity sha512-TTlYpa+OL+vMMNG24xSlQGEJ3B/RzEfUlLct7b5G/ytav+wPrplCpVMFuwzXbkecJrb6IYo1iFb0S9v37754mg== +retry@^0.12.0: + version "0.12.0" + resolved "https://registry.yarnpkg.com/retry/-/retry-0.12.0.tgz#1b42a6266a21f07421d1b0b54b7dc167b01c013b" + integrity sha1-G0KmJmoh8HQh0bC1S33BZ7AcATs= + reusify@^1.0.4: version "1.0.4" resolved "https://registry.yarnpkg.com/reusify/-/reusify-1.0.4.tgz#90da382b1e126efc02146e90845a88db12925d76" @@ -7024,17 +8427,17 @@ run-parallel@^1.1.9: dependencies: queue-microtask "^1.2.2" -rxjs@^6.4.0, rxjs@^6.6.0: +rxjs@^6.4.0, rxjs@^6.6.0, rxjs@^6.6.3: version "6.6.7" resolved "https://registry.yarnpkg.com/rxjs/-/rxjs-6.6.7.tgz#90ac018acabf491bf65044235d5863c4dab804c9" integrity sha512-hTdwr+7yYNIT5n4AMYp85KA6yw2Va0FLa3Rguvbpa4W3I5xynaBZo41cM3XM+4Q6fRMj3sBYIR1VAmZMXYJvRQ== dependencies: tslib "^1.9.0" -rxjs@^7.5.1, rxjs@^7.5.2: - version "7.5.2" - resolved "https://registry.yarnpkg.com/rxjs/-/rxjs-7.5.2.tgz#11e4a3a1dfad85dbf7fb6e33cbba17668497490b" - integrity sha512-PwDt186XaL3QN5qXj/H9DGyHhP3/RYYgZZwqBv9Tv8rsAaiwFH1IsJJlcgD37J7UW5a6O67qX0KWKS3/pu0m4w== +rxjs@^7.5.1, rxjs@^7.5.5: + version "7.5.5" + resolved "https://registry.yarnpkg.com/rxjs/-/rxjs-7.5.5.tgz#2ebad89af0f560f460ad5cc4213219e1f7dd4e9f" + integrity sha512-sy+H0pQofO95VDmFLzyaw9xNJU4KTRSwQIGM6+iG3SypAtCiLDzpeG8sJrNCWn2Up9km+KhkvTdbkrdy+yzZdw== dependencies: tslib "^2.1.0" @@ -7065,7 +8468,7 @@ safe-stable-stringify@^2.2.0: resolved "https://registry.yarnpkg.com/safe-stable-stringify/-/safe-stable-stringify-2.3.1.tgz#ab67cbe1fe7d40603ca641c5e765cb942d04fc73" integrity sha512-kYBSfT+troD9cDA85VDnHZ1rpHC50O0g1e6WlGHVCz/g+JS+9WKLj+XwFYyR8UbrZN8ll9HUpDAAddY58MGisg== -"safer-buffer@>= 2.1.2 < 3", safer-buffer@^2.0.2, safer-buffer@^2.1.0, safer-buffer@~2.1.0: +"safer-buffer@>= 2.1.2 < 3", "safer-buffer@>= 2.1.2 < 3.0.0", safer-buffer@^2.0.2, safer-buffer@^2.1.0, safer-buffer@~2.1.0: version "2.1.2" resolved "https://registry.yarnpkg.com/safer-buffer/-/safer-buffer-2.1.2.tgz#44fa161b0187b9549dd84bb91802f9bd8385cd6a" integrity sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg== @@ -7092,6 +8495,11 @@ samsam@1.3.0: resolved "https://registry.yarnpkg.com/samsam/-/samsam-1.3.0.tgz#8d1d9350e25622da30de3e44ba692b5221ab7c50" integrity sha512-1HwIYD/8UlOtFS3QO3w7ey+SdSDFE4HRNLZoZRYVQefrOY3l17epswImeB1ijgJFQJodIaHcwkp3r/myBjFVbg== +sax@1.2.1: + version "1.2.1" + resolved "https://registry.yarnpkg.com/sax/-/sax-1.2.1.tgz#7b8e656190b228e81a66aea748480d828cd2d37a" + integrity sha1-e45lYZCyKOgaZq6nSEgNgozS03o= + sax@>=0.6.0: version "1.2.4" resolved "https://registry.yarnpkg.com/sax/-/sax-1.2.4.tgz#2816234e2378bddc4e5354fab5caa895df7100d9" @@ -7102,6 +8510,11 @@ scoped-regex@^1.0.0: resolved "https://registry.yarnpkg.com/scoped-regex/-/scoped-regex-1.0.0.tgz#a346bb1acd4207ae70bd7c0c7ca9e566b6baddb8" integrity sha1-o0a7Gs1CB65wvXwMfKnlZra63bg= +scoped-regex@^2.0.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/scoped-regex/-/scoped-regex-2.1.0.tgz#7b9be845d81fd9d21d1ec97c61a0b7cf86d2015f" + integrity sha512-g3WxHrqSWCZHGHlSrF51VXFdjImhwvH8ZO/pryFH56Qi0cDsZfylQa/t0jCzVQFNbNvM00HfHjkDPEuarKDSWQ== + semver-compare@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/semver-compare/-/semver-compare-1.0.0.tgz#0dee216a1c941ab37e9efb1788f6afc5ff5537fc" @@ -7117,7 +8530,7 @@ semver-regex@^3.1.2: resolved "https://registry.yarnpkg.com/semver/-/semver-5.7.1.tgz#a954f931aeba508d307bbf069eff0c01c96116f7" integrity sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ== -semver@7.3.5, semver@^7.1.3, semver@^7.2.1, semver@^7.3.2, semver@^7.3.4, semver@^7.3.5: +semver@7.3.5: version "7.3.5" resolved "https://registry.yarnpkg.com/semver/-/semver-7.3.5.tgz#0b621c879348d8998e4b0e4be94b3f12e6018ef7" integrity sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ== @@ -7129,6 +8542,22 @@ semver@^6.0.0, semver@^6.3.0: resolved "https://registry.yarnpkg.com/semver/-/semver-6.3.0.tgz#ee0a64c8af5e8ceea67687b133761e1becbd1d3d" integrity sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw== +semver@^7.1.1, semver@^7.1.3, semver@^7.2.1, semver@^7.3.2, semver@^7.3.4, semver@^7.3.5, semver@^7.3.7: + version "7.3.7" + resolved "https://registry.yarnpkg.com/semver/-/semver-7.3.7.tgz#12c5b649afdbf9049707796e22a4028814ce523f" + integrity sha512-QlYTucUYOews+WeEujDoEGziz4K6c47V/Bd+LjSSYcA94p+DmINdf7ncaUinThfvZyu13lN9OY1XDxt8C0Tw0g== + dependencies: + lru-cache "^6.0.0" + +sentence-case@^3.0.4: + version "3.0.4" + resolved "https://registry.yarnpkg.com/sentence-case/-/sentence-case-3.0.4.tgz#3645a7b8c117c787fde8702056225bb62a45131f" + integrity sha512-8LS0JInaQMCRoQ7YUytAo/xUu5W2XnQxV2HI/6uM6U7CITS1RqPElr30V6uIqyMKM9lJGRVFy5/4CuzcixNYSg== + dependencies: + no-case "^3.0.4" + tslib "^2.0.3" + upper-case-first "^2.0.2" + sequin@*: version "0.1.1" resolved "https://registry.yarnpkg.com/sequin/-/sequin-0.1.1.tgz#5c2d389d66a383734eaafbc45edeb2c1cb1be701" @@ -7173,17 +8602,6 @@ setprototypeof@1.2.0: resolved "https://registry.yarnpkg.com/setprototypeof/-/setprototypeof-1.2.0.tgz#66c9a24a73f9fc28cbe66b09fed3d33dcaf1b424" integrity sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw== -sfdx-faye@^1.0.9: - version "1.0.9" - resolved "https://registry.yarnpkg.com/sfdx-faye/-/sfdx-faye-1.0.9.tgz#24e678ddb783d7085f3e40a2c155ac367416be26" - integrity sha512-/p0Ifvhh9rVYj6YmYOBU+psQsP+9RrNrUU4lr1p+HhZhTgnviMIabcgKZUN12S69zUpl0YagpFdMhmxKGkf+5g== - dependencies: - asap "~2.0.6" - csprng "~0.1.2" - faye-websocket "~0.9.1" - tough-cookie "~2.4.3" - tunnel-agent "~0.6.0" - sha.js@^2.4.9: version "2.4.11" resolved "https://registry.yarnpkg.com/sha.js/-/sha.js-2.4.11.tgz#37a5cf0b81ecbc6943de109ba2960d1b26584ae7" @@ -7223,6 +8641,11 @@ shebang-regex@^3.0.0: resolved "https://registry.yarnpkg.com/shebang-regex/-/shebang-regex-3.0.0.tgz#ae16f1644d873ecad843b0307b143362d4c42172" integrity sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A== +shell-quote@^1.7.3: + version "1.7.3" + resolved "https://registry.yarnpkg.com/shell-quote/-/shell-quote-1.7.3.tgz#aa40edac170445b9a431e17bb62c0b881b9c4123" + integrity sha512-Vpfqwm4EnqGdlsBFNmHhxhElJYrdfcxPThu+ryKS5J8L/fhAwLazFZtq+S+TWZ9ANj2piSQLGj6NQg+lKPmxrw== + shelljs@^0.8.3, shelljs@^0.8.4, shelljs@^0.8.5, shelljs@~0.8.4: version "0.8.5" resolved "https://registry.yarnpkg.com/shelljs/-/shelljs-0.8.5.tgz#de055408d8361bed66c669d2f000538ced8ee20c" @@ -7258,10 +8681,10 @@ side-channel@^1.0.4: get-intrinsic "^1.0.2" object-inspect "^1.9.0" -signal-exit@^3.0.0, signal-exit@^3.0.2, signal-exit@^3.0.3: - version "3.0.6" - resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.6.tgz#24e630c4b0f03fea446a2bd299e62b4a6ca8d0af" - integrity sha512-sDl4qMFpijcGw22U5w63KmD3cZJfBuFlVNbVMKje2keoKML7X2UzWbc4XrmEbDwg0NXJc3yv4/ox7b+JWb57kQ== +signal-exit@^3.0.0, signal-exit@^3.0.2, signal-exit@^3.0.3, signal-exit@^3.0.7: + version "3.0.7" + resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.7.tgz#a9a1767f8af84155114eaabd73f99273c8f59ad9" + integrity sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ== simple-concat@^1.0.0: version "1.0.1" @@ -7359,19 +8782,19 @@ slice-ansi@^4.0.0: astral-regex "^2.0.0" is-fullwidth-code-point "^3.0.0" -slice-ansi@^5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/slice-ansi/-/slice-ansi-5.0.0.tgz#b73063c57aa96f9cd881654b15294d95d285c42a" - integrity sha512-FC+lgizVPfie0kkhqUScwRu1O/lF6NOgJmlCgK+/LYxDCTk8sGelYaHDhFcDN+Sn3Cv+3VSa4Byeo+IMCzpMgQ== - dependencies: - ansi-styles "^6.0.0" - is-fullwidth-code-point "^4.0.0" - smart-buffer@^4.2.0: version "4.2.0" resolved "https://registry.yarnpkg.com/smart-buffer/-/smart-buffer-4.2.0.tgz#6e1d71fa4f18c05f7d0ff216dd16a481d0e8d9ae" integrity sha512-94hK0Hh8rPqQl2xXc3HsaBoOXKV20MToPkcXvwbISWLEs+64sBq5kFgn2kJDHb1Pry9yrP0dxrCI9RRci7RXKg== +snake-case@^3.0.4: + version "3.0.4" + resolved "https://registry.yarnpkg.com/snake-case/-/snake-case-3.0.4.tgz#4f2bbd568e9935abdfd593f34c691dadb49c452c" + integrity sha512-LAOh4z89bGQvl9pFfNF8V146i7o7/CqFPbqzYgP+yYzDIDeS9HaNFtXABamRW+AQzEVODcvE79ljJ+8a9YSdMg== + dependencies: + dot-case "^3.0.4" + tslib "^2.0.3" + snapdragon-node@^2.0.1: version "2.1.1" resolved "https://registry.yarnpkg.com/snapdragon-node/-/snapdragon-node-2.1.1.tgz#6c175f86ff14bdb0724563e8f3c1b021a286853b" @@ -7411,7 +8834,16 @@ socks-proxy-agent@5, socks-proxy-agent@^5.0.0: debug "4" socks "^2.3.3" -socks@^2.3.3: +socks-proxy-agent@^6.0.0, socks-proxy-agent@^6.1.1: + version "6.2.0" + resolved "https://registry.yarnpkg.com/socks-proxy-agent/-/socks-proxy-agent-6.2.0.tgz#f6b5229cc0cbd6f2f202d9695f09d871e951c85e" + integrity sha512-wWqJhjb32Q6GsrUqzuFkukxb/zzide5quXYcMVpIjxalDBBYy2nqKCFQ/9+Ie4dvOYSQdOk3hUlZSdzZOd3zMQ== + dependencies: + agent-base "^6.0.2" + debug "^4.3.3" + socks "^2.6.2" + +socks@^2.3.3, socks@^2.6.2: version "2.6.2" resolved "https://registry.yarnpkg.com/socks/-/socks-2.6.2.tgz#ec042d7960073d40d94268ff3bb727dc685f111a" integrity sha512-zDZhHhZRY9PxRruRMR7kMhnf3I8hDs4S3f9RecfnGxvcBHQcKcIH/oUcEWffsfl1XxdYlA7nnlGbbTvPz9D8gA== @@ -7419,7 +8851,7 @@ socks@^2.3.3: ip "^1.1.5" smart-buffer "^4.2.0" -sort-keys@^4.0.0: +sort-keys@^4.0.0, sort-keys@^4.2.0: version "4.2.0" resolved "https://registry.yarnpkg.com/sort-keys/-/sort-keys-4.2.0.tgz#6b7638cee42c506fff8c1cecde7376d21315be18" integrity sha512-aUYIEU/UviqPgc8mHR6IW1EGxkAXpeRETYcrzg8cLAvUPZcpAlleSXHV2mY7G12GphSH6Gzv+4MMVSSkbdteHg== @@ -7460,6 +8892,11 @@ source-map@^0.6.0, source-map@^0.6.1, source-map@~0.6.1: resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.6.1.tgz#74722af32e9614e9c287a8d0bbde48b5e2f1a263" integrity sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g== +spawn-command@^0.0.2-1: + version "0.0.2-1" + resolved "https://registry.yarnpkg.com/spawn-command/-/spawn-command-0.0.2-1.tgz#62f5e9466981c1b796dc5929937e11c9c6921bd0" + integrity sha1-YvXpRmmBwbeW3Fkpk34RycaSG9A= + spawn-wrap@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/spawn-wrap/-/spawn-wrap-2.0.0.tgz#103685b8b8f9b79771318827aa78650a610d457e" @@ -7532,6 +8969,20 @@ sshpk@^1.7.0: safer-buffer "^2.0.2" tweetnacl "~0.14.0" +ssri@^8.0.0, ssri@^8.0.1: + version "8.0.1" + resolved "https://registry.yarnpkg.com/ssri/-/ssri-8.0.1.tgz#638e4e439e2ffbd2cd289776d5ca457c4f51a2af" + integrity sha512-97qShzy1AiyxvPNIkLWoGua7xoQzzPjQ0HAH4B0rWKo7SZ6USuPcrUiAFrws0UH8RrbWmgq3LMTObhPIHbbBeQ== + dependencies: + minipass "^3.1.1" + +ssri@^9.0.0: + version "9.0.0" + resolved "https://registry.yarnpkg.com/ssri/-/ssri-9.0.0.tgz#70ad90e339eb910f1a7ff1dcf4afc268326c4547" + integrity sha512-Y1Z6J8UYnexKFN1R/hxUaYoY2LVdKEzziPmVAFKiKX8fiwvCJTVzn/xYE9TEWod5OVyNfIHHuVfIEuBClL/uJQ== + dependencies: + minipass "^3.1.1" + static-extend@^0.1.1: version "0.1.2" resolved "https://registry.yarnpkg.com/static-extend/-/static-extend-0.1.2.tgz#60809c39cbff55337226fd5e0b520f341f1fb5c6" @@ -7553,7 +9004,7 @@ stdout-stderr@^0.1.9: debug "^4.1.1" strip-ansi "^6.0.0" -string-argv@0.3.1, string-argv@^0.3.1: +string-argv@0.3.1: version "0.3.1" resolved "https://registry.yarnpkg.com/string-argv/-/string-argv-0.3.1.tgz#95e2fbec0427ae19184935f816d74aaa4c5c19da" integrity sha512-a1uQGz7IyVy9YwhqjZIZu1c8JO8dNIe20xBmSS6qu9kv++k3JGzCVmprbNN5Kn+BgzD5E7YYwg1CcjuJMRNsvg== @@ -7563,7 +9014,25 @@ string-template@~0.2.1: resolved "https://registry.yarnpkg.com/string-template/-/string-template-0.2.1.tgz#42932e598a352d01fc22ec3367d9d84eec6c9add" integrity sha1-QpMuWYo1LQH8IuwzZ9nYTuxsmt0= -string-width@^2.1.0, string-width@^2.1.1: +string-width@^1.0.1: + version "1.0.2" + resolved "https://registry.yarnpkg.com/string-width/-/string-width-1.0.2.tgz#118bdf5b8cdc51a2a7e70d211e07e2b0b9b107d3" + integrity sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M= + dependencies: + code-point-at "^1.0.0" + is-fullwidth-code-point "^1.0.0" + strip-ansi "^3.0.0" + +"string-width@^1.0.2 || 2 || 3 || 4", string-width@^4.0.0, string-width@^4.1.0, string-width@^4.2.0, string-width@^4.2.3: + version "4.2.3" + resolved "https://registry.yarnpkg.com/string-width/-/string-width-4.2.3.tgz#269c7117d27b05ad2e536830a8ec895ef9c6d010" + 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" + +string-width@^2.0.0, string-width@^2.1.0, string-width@^2.1.1: version "2.1.1" resolved "https://registry.yarnpkg.com/string-width/-/string-width-2.1.1.tgz#ab93f27a8dc13d28cac815c462143a6d9012ae9e" integrity sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw== @@ -7580,24 +9049,6 @@ string-width@^3.0.0: is-fullwidth-code-point "^2.0.0" strip-ansi "^5.1.0" -string-width@^4.0.0, string-width@^4.1.0, string-width@^4.2.0, string-width@^4.2.3: - version "4.2.3" - resolved "https://registry.yarnpkg.com/string-width/-/string-width-4.2.3.tgz#269c7117d27b05ad2e536830a8ec895ef9c6d010" - 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" - -string-width@^5.0.0: - version "5.1.0" - resolved "https://registry.yarnpkg.com/string-width/-/string-width-5.1.0.tgz#5ab00980cfb29f43e736b113a120a73a0fb569d3" - integrity sha512-7x54QnN21P+XL/v8SuNKvfgsUre6PXpN7mc77N3HlZv+f1SBRGmjxtOud2Z6FZ8DmdkD/IdjCaf9XXbnqmTZGQ== - dependencies: - eastasianwidth "^0.2.0" - emoji-regex "^9.2.2" - strip-ansi "^7.0.1" - string.prototype.trimend@^1.0.4: version "1.0.4" resolved "https://registry.yarnpkg.com/string.prototype.trimend/-/string.prototype.trimend-1.0.4.tgz#e75ae90c2942c63504686c18b287b4a0b1a45f80" @@ -7649,6 +9100,13 @@ strip-ansi@6.0.1, strip-ansi@^6.0.0, strip-ansi@^6.0.1: dependencies: ansi-regex "^5.0.1" +strip-ansi@^3.0.0, strip-ansi@^3.0.1: + version "3.0.1" + resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-3.0.1.tgz#6a385fb8853d952d5ff05d0e8aaf94278dc63dcf" + integrity sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8= + dependencies: + ansi-regex "^2.0.0" + strip-ansi@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-4.0.0.tgz#a8479022eb1ac368a871389b635262c505ee368f" @@ -7741,6 +9199,11 @@ supports-color@8.1.1, supports-color@^8.1.0, supports-color@^8.1.1: dependencies: has-flag "^4.0.0" +supports-color@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-2.0.0.tgz#535d045ce6b6363fa40117084629995e9df324c7" + integrity sha1-U10EXOa2Nj+kARcIRimZXp3zJMc= + supports-color@^5.0.0, supports-color@^5.3.0, supports-color@^5.4.0, supports-color@^5.5.0: version "5.5.0" resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-5.5.0.tgz#e2e69a44ac8772f78a1ec0b35b689df6530efc8f" @@ -7755,11 +9218,6 @@ supports-color@^7.0.0, supports-color@^7.1.0, supports-color@^7.2.0: dependencies: has-flag "^4.0.0" -supports-color@^9.2.1: - version "9.2.1" - resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-9.2.1.tgz#599dc9d45acf74c6176e0d880bab1d7d718fe891" - integrity sha512-Obv7ycoCTG51N7y175StI9BlAXrmgZrFhZOb0/PyjHBher/NmsdBgbbQ1Inhq+gIhz6+7Gb+jWF2Vqi7Mf1xnQ== - supports-hyperlinks@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/supports-hyperlinks/-/supports-hyperlinks-1.0.1.tgz#71daedf36cc1060ac5100c351bb3da48c29c0ef7" @@ -7792,6 +9250,14 @@ table@^6.0.9: string-width "^4.2.3" strip-ansi "^6.0.1" +taketalk@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/taketalk/-/taketalk-1.0.0.tgz#b4d4f0deed206ae7df775b129ea2ca6de52f26dd" + integrity sha1-tNTw3u0gauffd1sSnqLKbeUvJt0= + dependencies: + get-stdin "^4.0.1" + minimist "^1.1.0" + tar-fs@^2.0.0: version "2.1.1" resolved "https://registry.yarnpkg.com/tar-fs/-/tar-fs-2.1.1.tgz#489a15ab85f1f0befabb370b7de4f9eb5cbe8784" @@ -7813,6 +9279,18 @@ tar-stream@^2.1.4, tar-stream@^2.2.0: inherits "^2.0.3" readable-stream "^3.1.1" +tar@^6.0.2, tar@^6.1.0, tar@^6.1.11, tar@^6.1.2: + version "6.1.11" + resolved "https://registry.yarnpkg.com/tar/-/tar-6.1.11.tgz#6760a38f003afa1b2ffd0ffe9e9abbd0eab3d621" + integrity sha512-an/KZQzQUkZCkuoAA64hM92X0Urb6VpRhAFllDzz44U2mcD5scmT3zBc4VgVpkugF580+DQn8eAFSyoQt0tznA== + dependencies: + chownr "^2.0.0" + fs-minipass "^2.0.0" + minipass "^3.0.0" + minizlib "^2.1.1" + mkdirp "^1.0.3" + yallist "^4.0.0" + test-exclude@^6.0.0: version "6.0.0" resolved "https://registry.yarnpkg.com/test-exclude/-/test-exclude-6.0.0.tgz#04a8698661d805ea6fa293b6cb9e63ac044ef15e" @@ -7837,6 +9315,11 @@ textextensions@^2.5.0: resolved "https://registry.yarnpkg.com/textextensions/-/textextensions-2.6.0.tgz#d7e4ab13fe54e32e08873be40d51b74229b00fc4" integrity sha512-49WtAWS+tcsy93dRt6P0P3AMD2m5PvXRhuEA0kaXos5ZLlujtYmpmFsB+QvWUSxE1ZsstmYXfQ7L40+EcQgpAQ== +textextensions@^5.12.0, textextensions@^5.13.0: + version "5.15.0" + resolved "https://registry.yarnpkg.com/textextensions/-/textextensions-5.15.0.tgz#4bb3296ad6fc111cf4b39c589dd028d8aaaf7060" + integrity sha512-MeqZRHLuaGamUXGuVn2ivtU3LA3mLCCIO5kUGoohTCoGmCBg/+8yPhWVX9WSl9telvVd8erftjFk9Fwb2dD6rw== + through2@^3.0.0, through2@^3.0.1, through2@^3.0.2: version "3.0.2" resolved "https://registry.yarnpkg.com/through2/-/through2-3.0.2.tgz#99f88931cfc761ec7678b41d5d7336b5b6a07bf4" @@ -7927,14 +9410,6 @@ tough-cookie@*: punycode "^2.1.1" universalify "^0.1.2" -tough-cookie@~2.4.3: - version "2.4.3" - resolved "https://registry.yarnpkg.com/tough-cookie/-/tough-cookie-2.4.3.tgz#53f36da3f47783b0925afa06ff9f3b165280f781" - integrity sha512-Q5srk/4vDM54WJsJio3XNn6K2sCG+CQ8G5Wz6bZhRZoAe/+TxjWB/GlFAnYEbkYVlON9FMk/fE3h2RLpPXo4lQ== - dependencies: - psl "^1.1.24" - punycode "^1.4.1" - tough-cookie@~2.5.0: version "2.5.0" resolved "https://registry.yarnpkg.com/tough-cookie/-/tough-cookie-2.5.0.tgz#cd9fb2a0aa1d5a12b473bd9fb96fa3dcff65ade2" @@ -7953,11 +9428,21 @@ tr46@~0.0.3: resolved "https://registry.yarnpkg.com/traverse/-/traverse-0.3.9.tgz#717b8f220cc0bb7b44e40514c22b2e8bbc70d8b9" integrity sha1-cXuPIgzAu3tE5AUUwisui7xw2Lk= +tree-kill@^1.2.2: + version "1.2.2" + resolved "https://registry.yarnpkg.com/tree-kill/-/tree-kill-1.2.2.tgz#4ca09a9092c88b73a7cdc5e8a01b507b0790a0cc" + integrity sha512-L0Orpi8qGpRG//Nd+H90vFB+3iHnue1zSSGmNOOCh1GLJ7rUKVwV2HvijphGQS2UmhUZewS9VgvxYIdgr+fG1A== + treeify@^1.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/treeify/-/treeify-1.1.0.tgz#4e31c6a463accd0943879f30667c4fdaff411bb8" integrity sha512-1m4RA7xVAJrSGrrXGs0L3YTwyvBs2S8PbRHaLZAkFw7JR8oIFwYtysxlBZhYIa7xSyiYJKZ3iGrrk55cGA3i9A== +treeverse@^1.0.4: + version "1.0.4" + resolved "https://registry.yarnpkg.com/treeverse/-/treeverse-1.0.4.tgz#a6b0ebf98a1bca6846ddc7ecbc900df08cb9cd5f" + integrity sha512-whw60l7r+8ZU8Tu/Uc2yxtc4ZTZbR/PF3u1IPNKGQ6p8EICLb3Z2lAgoqw9bqYd8IkgnsaOcLzYHFckjqNsf0g== + trim-newlines@^3.0.0: version "3.0.1" resolved "https://registry.yarnpkg.com/trim-newlines/-/trim-newlines-3.0.1.tgz#260a5d962d8b752425b32f3a7db0dcacd176c144" @@ -8038,7 +9523,7 @@ tsutils@^3.21.0: dependencies: tslib "^1.8.1" -tunnel-agent@*, tunnel-agent@^0.6.0, tunnel-agent@~0.6.0: +tunnel-agent@*, tunnel-agent@^0.6.0: version "0.6.0" resolved "https://registry.yarnpkg.com/tunnel-agent/-/tunnel-agent-0.6.0.tgz#27a5dea06b36b04a0a9966774b290868f0fc40fd" integrity sha1-J6XeoGs2sEoKmWZ3SykIaPD8QP0= @@ -8152,6 +9637,25 @@ union-value@^1.0.0: is-extendable "^0.1.1" set-value "^2.0.1" +unique-filename@^1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/unique-filename/-/unique-filename-1.1.1.tgz#1d69769369ada0583103a1e6ae87681b56573230" + integrity sha512-Vmp0jIp2ln35UTXuryvjzkjGdRyf9b2lTXuSYUiPmzRcl3FDtYqAwOnTJkAngD9SWhnoJzDbTKwaOrZ+STtxNQ== + dependencies: + unique-slug "^2.0.0" + +unique-slug@^2.0.0: + version "2.0.2" + resolved "https://registry.yarnpkg.com/unique-slug/-/unique-slug-2.0.2.tgz#baabce91083fc64e945b0f3ad613e264f7cd4e6c" + integrity sha512-zoWr9ObaxALD3DOPfjPSqxt4fnZiWblxHIgeWqW8x7UqDzEtHEQLzji2cuJYQFCU6KmoJikOYAZlrTHHebjx2w== + dependencies: + imurmurhash "^0.1.4" + +universal-user-agent@^6.0.0: + version "6.0.0" + resolved "https://registry.yarnpkg.com/universal-user-agent/-/universal-user-agent-6.0.0.tgz#3381f8503b251c0d9cd21bc1de939ec9df5480ee" + integrity sha512-isyNax3wXoKaulPDZWHQqbmIx1k2tb9fb3GGDBRxCscfYV2Ch7WxPArBsFEG8s/safwXTT7H4QGhaIkTp9447w== + universalify@^0.1.0, universalify@^0.1.2: version "0.1.2" resolved "https://registry.yarnpkg.com/universalify/-/universalify-0.1.2.tgz#b646f69be3942dabcecc9d6639c80dc105efaa66" @@ -8180,6 +9684,11 @@ untildify@^3.0.3: resolved "https://registry.yarnpkg.com/untildify/-/untildify-3.0.3.tgz#1e7b42b140bcfd922b22e70ca1265bfe3634c7c9" integrity sha512-iSk/J8efr8uPT/Z4eSUywnqyrQU7DSdMfdqK4iWEaUVVmcP5JcnpRqmVMwcwcnmI1ATFNgC5V90u09tBynNFKA== +untildify@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/untildify/-/untildify-4.0.0.tgz#2bc947b953652487e4600949fb091e3ae8cd919b" + integrity sha512-KK8xQ1mkzZeg9inewmFVDNkg3l5LUhoq9kN6iWYB/CC9YMG8HA+c1Q8HwDe6dEX7kErrEVNVBO3fWsVq5iDgtw== + unzip-response@^2.0.1: version "2.0.1" resolved "https://registry.yarnpkg.com/unzip-response/-/unzip-response-2.0.1.tgz#d2f0f737d16b0615e72a6935ed04214572d56f97" @@ -8201,6 +9710,20 @@ unzipper@0.10.11: readable-stream "~2.3.6" setimmediate "~1.0.4" +upper-case-first@^2.0.2: + version "2.0.2" + resolved "https://registry.yarnpkg.com/upper-case-first/-/upper-case-first-2.0.2.tgz#992c3273f882abd19d1e02894cc147117f844324" + integrity sha512-514ppYHBaKwfJRK/pNC6c/OxfGa0obSnAl106u97Ed0I625Nin96KAjttZF6ZL3e1XLtphxnqrOi9iWgm+u+bg== + dependencies: + tslib "^2.0.3" + +upper-case@^2.0.2: + version "2.0.2" + resolved "https://registry.yarnpkg.com/upper-case/-/upper-case-2.0.2.tgz#d89810823faab1df1549b7d97a76f8662bae6f7a" + integrity sha512-KgdgDGJt2TpuwBUIjgG6lzw2GWFRCW9Qkfkiv0DxqHHLYJHmtmdUIKcZd8rHgFSjopVTlw6ggzCm1b8MFQwikg== + dependencies: + tslib "^2.0.3" + uri-js@^4.2.2: version "4.4.1" resolved "https://registry.yarnpkg.com/uri-js/-/uri-js-4.4.1.tgz#9b1a52595225859e55f669d928f88c6c57f2a77e" @@ -8220,6 +9743,14 @@ url-parse-lax@^1.0.0: dependencies: prepend-http "^1.0.1" +url@0.10.3: + version "0.10.3" + resolved "https://registry.yarnpkg.com/url/-/url-0.10.3.tgz#021e4d9c7705f21bbf37d03ceb58767402774c64" + integrity sha1-Ah5NnHcF8hu/N9A861h2dAJ3TGQ= + dependencies: + punycode "1.3.2" + querystring "0.2.0" + use@^3.1.0: version "3.1.1" resolved "https://registry.yarnpkg.com/use/-/use-3.1.1.tgz#d50c8cac79a19fbc20f2911f56eb973f4e10070f" @@ -8230,6 +9761,11 @@ util-deprecate@^1.0.1, util-deprecate@~1.0.1: resolved "https://registry.yarnpkg.com/util-deprecate/-/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf" integrity sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8= +uuid@3.3.2: + version "3.3.2" + resolved "https://registry.yarnpkg.com/uuid/-/uuid-3.3.2.tgz#1b4af4955eb3077c501c23872fc6513811587131" + integrity sha512-yXJmeNaw3DnnKAOKJE51sL/ZaYfWJRl1pK9dr19YFCu0ObS231AB1/LbqTKRAQ5kw8A90rA6fr4riOUpTZvQZA== + uuid@^3.3.2, uuid@^3.3.3: version "3.4.0" resolved "https://registry.yarnpkg.com/uuid/-/uuid-3.4.0.tgz#b23e4358afa8a202fe7a100af1f5f883f02007ee" @@ -8253,6 +9789,13 @@ validate-npm-package-license@^3.0.1: spdx-correct "^3.0.0" spdx-expression-parse "^3.0.0" +validate-npm-package-name@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/validate-npm-package-name/-/validate-npm-package-name-3.0.0.tgz#5fa912d81eb7d0c74afc140de7317f0ca7df437e" + integrity sha1-X6kS2B630MdK/BQN5zF/DKffQ34= + dependencies: + builtins "^1.0.3" + verror@1.10.0: version "1.10.0" resolved "https://registry.yarnpkg.com/verror/-/verror-1.10.0.tgz#3a105ca17053af55d6e270c1f8288682e18da400" @@ -8303,6 +9846,18 @@ vscode-textmate@5.2.0: resolved "https://registry.yarnpkg.com/vscode-textmate/-/vscode-textmate-5.2.0.tgz#01f01760a391e8222fe4f33fbccbd1ad71aed74e" integrity sha512-Uw5ooOQxRASHgu6C7GVvUxisKXfSgW4oFlO+aa+PAkgmH89O3CXxEEzNRNtHSqtXFTl0nAC1uYj0GMSH27uwtQ== +walk-up-path@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/walk-up-path/-/walk-up-path-1.0.0.tgz#d4745e893dd5fd0dbb58dd0a4c6a33d9c9fec53e" + integrity sha512-hwj/qMDUEjCU5h0xr90KGCf0tg0/LgJbmOWgrWKYlcJZM7XvquvUJZ0G/HMGr7F7OQMOUuPHWP9JpriinkAlkg== + +wcwidth@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/wcwidth/-/wcwidth-1.0.1.tgz#f0b0dcf915bc5ff1528afadb2c0e17b532da2fe8" + integrity sha1-8LDc+RW8X/FSivrbLA4XtTLaL+g= + dependencies: + defaults "^1.0.3" + webidl-conversions@^3.0.0: version "3.0.1" resolved "https://registry.yarnpkg.com/webidl-conversions/-/webidl-conversions-3.0.1.tgz#24534275e2a7bc6be7bc86611cc16ae0a5654871" @@ -8351,7 +9906,15 @@ which-pm-runs@^1.0.0: resolved "https://registry.yarnpkg.com/which-pm-runs/-/which-pm-runs-1.0.0.tgz#670b3afbc552e0b55df6b7780ca74615f23ad1cb" integrity sha1-Zws6+8VS4LVd9rd4DKdGFfI60cs= -which@2.0.2, which@^2.0.1: +which-pm@2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/which-pm/-/which-pm-2.0.0.tgz#8245609ecfe64bf751d0eef2f376d83bf1ddb7ae" + integrity sha512-Lhs9Pmyph0p5n5Z3mVnN0yWcbQYUAD7rbQUiMsQxOJ3T57k7RFe35SUwWMf7dsbDZks1uOmw4AecB/JMDj3v/w== + dependencies: + load-yaml-file "^0.2.0" + path-exists "^4.0.0" + +which@2.0.2, which@^2.0.1, which@^2.0.2: version "2.0.2" resolved "https://registry.yarnpkg.com/which/-/which-2.0.2.tgz#7c6a8dd0a636a0327e10b59c9286eee93f3f51b1" integrity sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA== @@ -8365,6 +9928,13 @@ which@^1.2.14, which@^1.2.9: dependencies: isexe "^2.0.0" +wide-align@^1.1.2, wide-align@^1.1.5: + version "1.1.5" + resolved "https://registry.yarnpkg.com/wide-align/-/wide-align-1.1.5.tgz#df1d4c206854369ecf3c9a4898f1b23fbd9d15d3" + integrity sha512-eDMORYaPNZ4sQIuuYPDHdQvf4gyCF9rEEV/yPxGfwPkRodwEgiMUUXTx/dex+Me0wxx53S+NgUHaP7y3MGlDmg== + dependencies: + string-width "^1.0.2 || 2 || 3 || 4" + widest-line@^2.0.1: version "2.0.1" resolved "https://registry.yarnpkg.com/widest-line/-/widest-line-2.0.1.tgz#7438764730ec7ef4381ce4df82fb98a53142a3fc" @@ -8403,6 +9973,14 @@ workerpool@6.2.0: resolved "https://registry.yarnpkg.com/workerpool/-/workerpool-6.2.0.tgz#827d93c9ba23ee2019c3ffaff5c27fccea289e8b" integrity sha512-Rsk5qQHJ9eowMH28Jwhe8HEbmdYDX4lwoMWshiCXugjtHqMD9ZbiqSDLxcsfdqsETPzVUtX5s1Z5kStiIM6l4A== +wrap-ansi@^2.0.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-2.1.0.tgz#d8fc3d284dd05794fe84973caecdd1cf824fdd85" + integrity sha1-2Pw9KE3QV5T+hJc8rs3Rz4JP3YU= + dependencies: + string-width "^1.0.1" + strip-ansi "^3.0.1" + wrap-ansi@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-4.0.0.tgz#b3570d7c70156159a2d42be5cc942e957f7b1131" @@ -8445,6 +10023,14 @@ write-file-atomic@^3.0.0: signal-exit "^3.0.2" typedarray-to-buffer "^3.1.5" +write-file-atomic@^4.0.0: + version "4.0.1" + resolved "https://registry.yarnpkg.com/write-file-atomic/-/write-file-atomic-4.0.1.tgz#9faa33a964c1c85ff6f849b80b42a88c2c537c8f" + integrity sha512-nSKUxgAbyioruk6hU87QzVbY279oYT6uiwgDoujth2ju4mJ+TZau7SQBhtbTmUyuNYTuXnSyRn66FV0+eCgcrQ== + dependencies: + imurmurhash "^0.1.4" + signal-exit "^3.0.7" + write-json-file@^4.1.1: version "4.3.0" resolved "https://registry.yarnpkg.com/write-json-file/-/write-json-file-4.3.0.tgz#908493d6fd23225344af324016e4ca8f702dd12d" @@ -8457,7 +10043,15 @@ write-json-file@^4.1.1: sort-keys "^4.0.0" write-file-atomic "^3.0.0" -xml2js@^0.4.16: +xml2js@0.4.19: + version "0.4.19" + resolved "https://registry.yarnpkg.com/xml2js/-/xml2js-0.4.19.tgz#686c20f213209e94abf0d1bcf1efaa291c7827a7" + integrity sha512-esZnJZJOiJR9wWKMyuvSE1y6Dq5LCuJanqhxslH2bxM6duahNZ+HMpCLhBQGZkbX6xRf8x1Y2eJlgt2q3qo49Q== + dependencies: + sax ">=0.6.0" + xmlbuilder "~9.0.1" + +xml2js@^0.4.16, xml2js@^0.4.22: version "0.4.23" resolved "https://registry.yarnpkg.com/xml2js/-/xml2js-0.4.23.tgz#a0c69516752421eb2ac758ee4d4ccf58843eac66" integrity sha512-ySPiMjM0+pLDftHgXY4By0uswI3SPKLDw/i3UXbnO8M/p28zqexCUoPmQFrYD+/1BzhGJSs2i1ERWKJAtiLrug== @@ -8470,6 +10064,11 @@ xmlbuilder@~11.0.0: resolved "https://registry.yarnpkg.com/xmlbuilder/-/xmlbuilder-11.0.1.tgz#be9bae1c8a046e76b31127726347d0ad7002beb3" integrity sha512-fDlsI/kFEx7gLvbecc0/ohLG50fugQp8ryHzMTuW9vSa1GJ0XYWKnhsUx7oie3G98+r56aTQIUB4kht42R3JvA== +xmlbuilder@~9.0.1: + version "9.0.7" + resolved "https://registry.yarnpkg.com/xmlbuilder/-/xmlbuilder-9.0.7.tgz#132ee63d2ec5565c557e20f4c22df9aca686b10d" + integrity sha1-Ey7mPS7FVlxVfiD0wi35rKaGsQ0= + xmlcreate@^2.0.4: version "2.0.4" resolved "https://registry.yarnpkg.com/xmlcreate/-/xmlcreate-2.0.4.tgz#0c5ab0f99cdd02a81065fa9cd8f8ae87624889be" @@ -8505,7 +10104,7 @@ yallist@^4.0.0: resolved "https://registry.yarnpkg.com/yallist/-/yallist-4.0.0.tgz#9bb92790d9c0effec63be73519e11a35019a3a72" integrity sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A== -yaml@^1.10.0, yaml@^1.10.2: +yaml@^1.10.0: version "1.10.2" resolved "https://registry.yarnpkg.com/yaml/-/yaml-1.10.2.tgz#2301c5ffbf12b467de8da2333a459e29e7920e4b" integrity sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg== @@ -8573,10 +10172,10 @@ yargs@^15.0.2: y18n "^4.0.0" yargs-parser "^18.1.2" -yargs@^17.0.0: - version "17.3.1" - resolved "https://registry.yarnpkg.com/yargs/-/yargs-17.3.1.tgz#da56b28f32e2fd45aefb402ed9c26f42be4c07b9" - integrity sha512-WUANQeVgjLbNsEmGk20f+nlHgOqzRFpiGWVaBrYGYIGANIIu3lWjoyi0fNlFmJkvfhCZ6BXINe7/W2O2bV4iaA== +yargs@^17.0.0, yargs@^17.3.1: + version "17.5.1" + resolved "https://registry.yarnpkg.com/yargs/-/yargs-17.5.1.tgz#e109900cab6fcb7fd44b1d8249166feb0b36e58e" + integrity sha512-t6YAJcxDkNX7NFYiVtKvWUz8l+PaKTLiL63mJYWR2GnHq2gjEWISzsLp9wg3aY36dY1j+gfIEL3pIF+XlJJfbA== dependencies: cliui "^7.0.2" escalade "^3.1.1" @@ -8632,6 +10231,47 @@ yeoman-environment@^2.3.4, yeoman-environment@^2.9.5: untildify "^3.0.3" yeoman-generator "^4.8.2" +yeoman-environment@^3.9.1: + version "3.9.1" + resolved "https://registry.yarnpkg.com/yeoman-environment/-/yeoman-environment-3.9.1.tgz#21912bdee4b1d302a5c25a7d31338fa092ea7116" + integrity sha512-IdRnbQt/DSOSnao0oD9c+or1X2UrL+fx9eC0O7Lq/MGZV68nhv9k77MqG+hEAySPSlyCpocVlhfQwV62hczk5Q== + dependencies: + "@npmcli/arborist" "^4.0.4" + are-we-there-yet "^2.0.0" + arrify "^2.0.1" + binaryextensions "^4.15.0" + chalk "^4.1.0" + cli-table "^0.3.1" + commander "7.1.0" + dateformat "^4.5.0" + debug "^4.1.1" + diff "^5.0.0" + error "^10.4.0" + escape-string-regexp "^4.0.0" + execa "^5.0.0" + find-up "^5.0.0" + globby "^11.0.1" + grouped-queue "^2.0.0" + inquirer "^8.0.0" + is-scoped "^2.1.0" + lodash "^4.17.10" + log-symbols "^4.0.0" + mem-fs "^1.2.0 || ^2.0.0" + mem-fs-editor "^8.1.2 || ^9.0.0" + minimatch "^3.0.4" + npmlog "^5.0.1" + p-queue "^6.6.2" + p-transform "^1.3.0" + pacote "^12.0.2" + preferred-pm "^3.0.3" + pretty-bytes "^5.3.0" + semver "^7.1.3" + slash "^3.0.0" + strip-ansi "^6.0.0" + text-table "^0.2.0" + textextensions "^5.12.0" + untildify "^4.0.0" + yeoman-generator@4.0.1: version "4.0.1" resolved "https://registry.yarnpkg.com/yeoman-generator/-/yeoman-generator-4.0.1.tgz#6454056e451ebdfe4ac69927343ae37086bbecb0" @@ -8697,6 +10337,25 @@ yeoman-generator@^4.8.2: grouped-queue "^1.1.0" yeoman-environment "^2.9.5" +yeoman-generator@^5.6.1: + version "5.6.1" + resolved "https://registry.yarnpkg.com/yeoman-generator/-/yeoman-generator-5.6.1.tgz#850fd266a5ab26d9d1cb9c46ad646f06eade4a1d" + integrity sha512-XllgFvmDEwoPMq2rKtL4/N52WlINJW6a3I3XtlCrMb3/dqO5dW0nPNgR0L3IIUIdf9y1EHb1ZFMs2Qp3ZEEFxg== + dependencies: + chalk "^4.1.0" + dargs "^7.0.0" + debug "^4.1.1" + execa "^4.1.0" + github-username "^6.0.0" + lodash "^4.17.11" + minimist "^1.2.5" + read-pkg-up "^7.0.1" + run-async "^2.0.0" + semver "^7.2.1" + shelljs "^0.8.5" + sort-keys "^4.2.0" + text-table "^0.2.0" + yn@3.1.1: version "3.1.1" resolved "https://registry.yarnpkg.com/yn/-/yn-3.1.1.tgz#1e87401a09d767c1d5eab26a6e4c185182d2eb50" @@ -8707,6 +10366,21 @@ yocto-queue@^0.1.0: resolved "https://registry.yarnpkg.com/yocto-queue/-/yocto-queue-0.1.0.tgz#0294eb3dee05028d31ee1a5fa2c556a6aaf10a1b" integrity sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q== +yosay@^2.0.2: + version "2.0.2" + resolved "https://registry.yarnpkg.com/yosay/-/yosay-2.0.2.tgz#a7017e764cd88d64a1ae64812201de5b157adf6d" + integrity sha512-avX6nz2esp7IMXGag4gu6OyQBsMh/SEn+ZybGu3yKPlOTE6z9qJrzG/0X5vCq/e0rPFy0CUYCze0G5hL310ibA== + dependencies: + ansi-regex "^2.0.0" + ansi-styles "^3.0.0" + chalk "^1.0.0" + cli-boxes "^1.0.0" + pad-component "0.0.1" + string-width "^2.0.0" + strip-ansi "^3.0.0" + taketalk "^1.0.0" + wrap-ansi "^2.0.0" + zip-stream@^4.1.0: version "4.1.0" resolved "https://registry.yarnpkg.com/zip-stream/-/zip-stream-4.1.0.tgz#51dd326571544e36aa3f756430b313576dc8fc79"