From 919e03a93ff7516aa62289c3c36b938f6cbf333a Mon Sep 17 00:00:00 2001 From: svc-cli-bot <113140650+svc-cli-bot@users.noreply.github.com> Date: Mon, 6 Nov 2023 10:43:54 -0600 Subject: [PATCH] refactor: devScripts update (#799) * chore: updates from devScripts * chore: linter changes * chore: enum comparison (lint) --------- Co-authored-by: mshanemc --- package.json | 24 +- src/commands/project/delete/source.ts | 4 +- src/commands/project/deploy/quick.ts | 6 +- src/commands/project/deploy/report.ts | 4 +- src/commands/project/deploy/resume.ts | 4 +- src/commands/project/retrieve/start.ts | 5 +- src/configMeta.ts | 2 +- src/formatters/deployResultFormatter.ts | 10 +- src/utils/deploy.ts | 4 +- test/nuts/retrieve/partialBundleDelete.nut.ts | 5 +- test/nuts/tracking/basics.nut.ts | 17 +- test/nuts/tracking/lwc.nut.ts | 5 +- yarn.lock | 398 ++++++++---------- 13 files changed, 204 insertions(+), 284 deletions(-) diff --git a/package.json b/package.json index 771017fc..dfcc1054 100644 --- a/package.json +++ b/package.json @@ -19,44 +19,24 @@ "devDependencies": { "@oclif/plugin-command-snapshot": "^4.0.12", "@salesforce/cli-plugins-testkit": "^4.4.12", - "@salesforce/dev-config": "^4.1.0", - "@salesforce/dev-scripts": "^5.12.2", + "@salesforce/dev-scripts": "^6.0.3", "@salesforce/plugin-command-reference": "^3.0.40", "@salesforce/plugin-settings": "^1.4.37", "@salesforce/plugin-source": "^2.10.30", "@salesforce/plugin-templates": "^55.5.17", "@salesforce/plugin-user": "^2.3.32", - "@salesforce/prettier-config": "^0.0.3", "@salesforce/source-testkit": "^2.1.60", "@salesforce/ts-sinon": "1.4.15", "@salesforce/ts-types": "^2.0.8", "@swc/core": "1.3.39", "@types/shelljs": "^0.8.14", - "@typescript-eslint/eslint-plugin": "^5.62.0", - "@typescript-eslint/parser": "^5.62.0", - "chai": "^4.3.10", "cross-env": "^7.0.3", - "eslint": "^8.52.0", - "eslint-config-prettier": "^8.10.0", - "eslint-config-salesforce": "^2.0.1", - "eslint-config-salesforce-license": "^0.2.0", - "eslint-config-salesforce-typescript": "^2.0.0", - "eslint-plugin-header": "^3.1.1", - "eslint-plugin-import": "^2.28.0", - "eslint-plugin-jsdoc": "^46.8.2", "eslint-plugin-sf-plugin": "^1.16.13", - "husky": "^7.0.4", "jsforce": "^2.0.0-beta.28", - "mocha": "^10.1.0", - "nyc": "^15.1.0", "oclif": "^3.16.0", - "prettier": "^2.8.8", - "pretty-quick": "^3.1.3", "shx": "0.3.4", - "sinon": "11.1.2", "ts-node": "^10.9.1", - "typescript": "^5.2.2", - "wireit": "^0.14.1" + "typescript": "^5.2.2" }, "config": {}, "engines": { diff --git a/src/commands/project/delete/source.ts b/src/commands/project/delete/source.ts index 6546136e..08843c3b 100644 --- a/src/commands/project/delete/source.ts +++ b/src/commands/project/delete/source.ts @@ -32,7 +32,7 @@ import { SfCommand, } from '@salesforce/sf-plugins-core'; import * as chalk from 'chalk'; -import { DeleteSourceJson, isSourceComponent } from '../../../utils/types'; +import { API, DeleteSourceJson, isSourceComponent } from '../../../utils/types'; import { getPackageDirs, getSourceApiVersion } from '../../../utils/project'; import { resolveApi, validateTests } from '../../../utils/deploy'; import { DeployResultFormatter } from '../../../formatters/deployResultFormatter'; @@ -230,7 +230,7 @@ export class Source extends SfCommand { // fire predeploy event for the delete await Lifecycle.getInstance().emit('predeploy', this.components); - this.isRest = (await resolveApi()) === 'REST'; + this.isRest = (await resolveApi()) === API['REST']; this.log(`*** Deleting with ${this.isRest ? 'REST' : 'SOAP'} API ***`); const deploy = await this.componentSet.deploy({ diff --git a/src/commands/project/deploy/quick.ts b/src/commands/project/deploy/quick.ts index e6fd2600..d95b76a7 100644 --- a/src/commands/project/deploy/quick.ts +++ b/src/commands/project/deploy/quick.ts @@ -15,7 +15,7 @@ import { DeployCache } from '../../../utils/deployCache'; import { DEPLOY_STATUS_CODES_DESCRIPTIONS } from '../../../utils/errorCodes'; import { AsyncDeployResultFormatter } from '../../../formatters/asyncDeployResultFormatter'; import { DeployResultFormatter } from '../../../formatters/deployResultFormatter'; -import { DeployResultJson } from '../../../utils/types'; +import { API, DeployResultJson } from '../../../utils/types'; Messages.importMessagesDirectory(__dirname); const messages = Messages.loadMessages('@salesforce/plugin-deploy-retrieve', 'deploy.metadata.quick'); @@ -94,11 +94,11 @@ export default class DeployMetadataQuick extends SfCommand { usernameOrConnection: org.getConnection(flags['api-version']), id: jobId, apiOptions: { - rest: api === 'REST', + rest: api === API['REST'], }, }); // This is the ID of the deploy (of the validated metadata) - const deployId = await mdapiDeploy.deployRecentValidation(api === 'REST'); + const deployId = await mdapiDeploy.deployRecentValidation(api === API['REST']); this.log(`Deploy ID: ${bold(deployId)}`); if (flags.async) { diff --git a/src/commands/project/deploy/report.ts b/src/commands/project/deploy/report.ts index 85b23a3a..6e660994 100644 --- a/src/commands/project/deploy/report.ts +++ b/src/commands/project/deploy/report.ts @@ -12,7 +12,7 @@ import { buildComponentSet } from '../../../utils/deploy'; import { DeployProgress } from '../../../utils/progressBar'; import { DeployCache } from '../../../utils/deployCache'; import { DeployReportResultFormatter } from '../../../formatters/deployReportResultFormatter'; -import { DeployResultJson } from '../../../utils/types'; +import { API, DeployResultJson } from '../../../utils/types'; import { coverageFormattersFlag } from '../../../utils/flags'; Messages.importMessagesDirectory(__dirname); @@ -100,7 +100,7 @@ export default class DeployMetadataReport extends SfCommand { id: jobId, components: componentSet, apiOptions: { - rest: deployOpts.api === 'REST', + rest: deployOpts.api === API['REST'], }, }); diff --git a/src/commands/project/deploy/resume.ts b/src/commands/project/deploy/resume.ts index 97bc61a2..9c621d22 100644 --- a/src/commands/project/deploy/resume.ts +++ b/src/commands/project/deploy/resume.ts @@ -12,7 +12,7 @@ import { DeployResult, MetadataApiDeploy } from '@salesforce/source-deploy-retri import { Duration } from '@salesforce/kit'; import { DeployResultFormatter } from '../../../formatters/deployResultFormatter'; import { DeployProgress } from '../../../utils/progressBar'; -import { DeployResultJson } from '../../../utils/types'; +import { API, DeployResultJson } from '../../../utils/types'; import { buildComponentSet, determineExitCode, executeDeploy, isNotResumable } from '../../../utils/deploy'; import { DeployCache } from '../../../utils/deployCache'; import { DEPLOY_STATUS_CODES_DESCRIPTIONS } from '../../../utils/errorCodes'; @@ -100,7 +100,7 @@ export default class DeployMetadataResume extends SfCommand { id: jobId, components: componentSet, apiOptions: { - rest: deployOpts.api === 'REST', + rest: deployOpts.api === API['REST'], }, }); const deployStatus = await mdapiDeploy.checkStatus(); diff --git a/src/commands/project/retrieve/start.ts b/src/commands/project/retrieve/start.ts index af94b857..d12adb15 100644 --- a/src/commands/project/retrieve/start.ts +++ b/src/commands/project/retrieve/start.ts @@ -19,6 +19,7 @@ import { FileResponse, MetadataApiRetrieveStatus, RegistryAccess, + RequestStatus, } from '@salesforce/source-deploy-retrieve'; import { SfCommand, toHelpSection, Flags, Ux } from '@salesforce/sf-plugins-core'; import { getString } from '@salesforce/ts-types'; @@ -170,7 +171,7 @@ export default class RetrieveMetadata extends SfCommand { flags, format ); - if (flags.manifest || flags.metadata) { + if (Boolean(flags.manifest) || Boolean(flags.metadata)) { const access = new RegistryAccess(); if (wantsToRetrieveCustomFields(componentSetFromNonDeletes, access)) { this.warn(messages.getMessage('wantsToRetrieveCustomFields')); @@ -239,7 +240,7 @@ export default class RetrieveMetadata extends SfCommand { // in the case where we didn't retrieve anything, check if we have any deletes if ( !this.retrieveResult.response.status || - this.retrieveResult.response.status === 'Succeeded' || + this.retrieveResult.response.status === RequestStatus['Succeeded'] || fileResponsesFromDelete.length !== 0 ) { await formatter.display(); diff --git a/src/configMeta.ts b/src/configMeta.ts index 73a12832..1f2336f8 100644 --- a/src/configMeta.ts +++ b/src/configMeta.ts @@ -23,7 +23,7 @@ export default [ description: messages.getMessage(ConfigVars.ORG_METADATA_REST_DEPLOY), hidden: true, input: { - validator: (value: ConfigValue): boolean => value != null && ['true', 'false'].includes(value.toString()), + validator: (value: ConfigValue): boolean => typeof value === 'string' && ['true', 'false'].includes(value), failedMessage: messages.getMessage('error.invalidBooleanConfigValue'), }, }, diff --git a/src/formatters/deployResultFormatter.ts b/src/formatters/deployResultFormatter.ts index 54ac1d4d..55a60e62 100644 --- a/src/formatters/deployResultFormatter.ts +++ b/src/formatters/deployResultFormatter.ts @@ -8,7 +8,7 @@ import * as path from 'node:path'; import { EOL } from 'node:os'; import * as fs from 'node:fs'; import { ux } from '@oclif/core'; -import { DeployResult, FileResponse, RequestStatus } from '@salesforce/source-deploy-retrieve'; +import { ComponentStatus, DeployResult, FileResponse, RequestStatus } from '@salesforce/source-deploy-retrieve'; import { Org, SfError, Lifecycle } from '@salesforce/core'; import { Duration, ensureArray, sortBy } from '@salesforce/kit'; import { @@ -63,7 +63,7 @@ export class DeployResultFormatter extends TestResultsFormatter implements Forma // only generate reports if test results are presented if ( (!this.result.response?.numberTestsTotal && !this.flags['test-level']) || - this.flags['test-level'] === 'NoTestRun' + this.flags['test-level'] === TestLevel['NoTestRun'] ) { const testsWarn = ( this.coverageOptions.reportFormats?.length ? ['`--coverage-formatters` was specified but no tests ran.'] : [] @@ -93,7 +93,7 @@ export class DeployResultFormatter extends TestResultsFormatter implements Forma componentFailures: this.result.response.details.componentFailures, runTestResult: this.result.response.details.runTestResult, }, - files: this.absoluteFiles.filter((f) => f.state === 'Failed'), + files: this.absoluteFiles.filter(isSdrFailure), }; } else { return { @@ -239,7 +239,7 @@ export class DeployResultFormatter extends TestResultsFormatter implements Forma } private displaySuccesses(): void { - const successes = this.relativeFiles.filter((f) => f.state !== 'Failed'); + const successes = this.relativeFiles.filter(isSdrSuccess); if (!successes.length || this.result.response.status === RequestStatus.Failed) return; @@ -287,7 +287,7 @@ export class DeployResultFormatter extends TestResultsFormatter implements Forma } private displayDeletes(): void { - const deletions = this.relativeFiles.filter(isSdrSuccess).filter((f) => f.state === 'Deleted'); + const deletions = this.relativeFiles.filter(isSdrSuccess).filter((f) => f.state === ComponentStatus['Deleted']); if (!deletions.length) return; diff --git a/src/utils/deploy.ts b/src/utils/deploy.ts index 697ffb87..33701bae 100644 --- a/src/utils/deploy.ts +++ b/src/utils/deploy.ts @@ -154,7 +154,7 @@ export async function executeDeploy( }); componentSet = await buildComponentSet(opts, stl); if (componentSet.size === 0) { - if (opts['source-dir'] || opts.manifest || opts.metadata || throwOnEmpty) { + if (Boolean(opts['source-dir']) ?? Boolean(opts.manifest) ?? Boolean(opts.metadata) ?? throwOnEmpty) { // the user specified something to deploy, but there isn't anything throw new SfError( deployMessages.getMessage('error.nothingToDeploy'), @@ -232,7 +232,7 @@ export const isNotResumable = (status?: RequestStatus): boolean => const buildApiOptions = (opts: Partial): MetadataApiDeployOptions['apiOptions'] => ({ checkOnly: opts['dry-run'] ?? false, ignoreWarnings: opts['ignore-warnings'] ?? false, - rest: opts.api === 'REST', + rest: opts.api === API['REST'], rollbackOnError: !opts['ignore-errors'] || false, ...(opts.tests ? { runTests: opts.tests } : {}), ...(opts['test-level'] ? { testLevel: opts['test-level'] } : {}), diff --git a/test/nuts/retrieve/partialBundleDelete.nut.ts b/test/nuts/retrieve/partialBundleDelete.nut.ts index db4f31cd..ebd2b285 100644 --- a/test/nuts/retrieve/partialBundleDelete.nut.ts +++ b/test/nuts/retrieve/partialBundleDelete.nut.ts @@ -15,6 +15,7 @@ import { ComponentSet, ComponentSetBuilder, ComponentSetOptions, + ComponentStatus, MetadataApiRetrieve, RetrieveSetOptions, } from '@salesforce/source-deploy-retrieve'; @@ -148,7 +149,7 @@ describe('Partial Bundle Delete Retrieves', () => { expect(files).to.be.an('array').with.length.greaterThan(0); // find the deleted entry for testFile.css - const deletedFileResponse = files.find((fr) => fr.state === 'Deleted'); + const deletedFileResponse = files.find((fr) => fr.state === ComponentStatus['Deleted']); expect(deletedFileResponse).to.deep.equal({ fullName: 'pageTemplate_2_7_3', type: 'AuraDefinitionBundle', @@ -181,7 +182,7 @@ describe('Partial Bundle Delete Retrieves', () => { assert(files); expect(files).to.be.an('array').with.length.greaterThan(0); // find the deleted entry for testFile.css - const deletedFileResponse = files.find((fr) => fr.state === 'Deleted'); + const deletedFileResponse = files.find((fr) => fr.state === ComponentStatus['Deleted']); expect(deletedFileResponse).to.deep.equal({ fullName: 'propertyTile', type: 'LightningComponentBundle', diff --git a/test/nuts/tracking/basics.nut.ts b/test/nuts/tracking/basics.nut.ts index 82061251..7de1dd55 100644 --- a/test/nuts/tracking/basics.nut.ts +++ b/test/nuts/tracking/basics.nut.ts @@ -11,7 +11,7 @@ import { expect, assert } from 'chai'; import { execCmd, TestSession } from '@salesforce/cli-plugins-testkit'; import { ComponentStatus } from '@salesforce/source-deploy-retrieve'; import { StatusResult } from '@salesforce/plugin-source/lib/formatters/source/statusFormatter'; -import { DeployResultJson, RetrieveResultJson } from '../../../src/utils/types'; +import { DeployResultJson, RetrieveResultJson, isSdrFailure } from '../../../src/utils/types'; import { PreviewResult } from '../../../src/utils/previewOutput'; import { eBikesDeployResultCount } from './constants'; const filterIgnored = (r: StatusResult): boolean => r.ignored !== true; @@ -269,15 +269,12 @@ describe('end-to-end-test for tracking with an org (single packageDir)', () => { }).jsonOutput; assert(failure && 'status' in failure); expect(failure).to.have.property('status', 1); - expect( - failure.result.files.every((r) => r.type === 'ApexClass' && r.state === 'Failed' && r.problemType === 'Error') - ).to.equal(true); - failure.result.files.forEach((f) => { - if (f.state === 'Failed') { - expect(f.lineNumber).to.exist; - expect(f.columnNumber).to.exist; - expect(f.error).to.be.a('string'); - } + const failureFiles = failure.result.files.filter(isSdrFailure); + expect(failureFiles.every((r) => r.type === 'ApexClass' && r.problemType === 'Error')).to.equal(true); + failureFiles.forEach((f) => { + expect(f.lineNumber).to.exist; + expect(f.columnNumber).to.exist; + expect(f.error).to.be.a('string'); }); }); describe('classes that failed to deploy are still in local status', () => { diff --git a/test/nuts/tracking/lwc.nut.ts b/test/nuts/tracking/lwc.nut.ts index 6ed545f2..d73bcf93 100644 --- a/test/nuts/tracking/lwc.nut.ts +++ b/test/nuts/tracking/lwc.nut.ts @@ -10,6 +10,7 @@ import * as fs from 'node:fs'; import { assert, expect } from 'chai'; import { execCmd, TestSession } from '@salesforce/cli-plugins-testkit'; import { StatusResult } from '@salesforce/plugin-source/lib/formatters/source/statusFormatter'; +import { ComponentStatus } from '@salesforce/source-deploy-retrieve'; import { PreviewResult } from '../../../src/utils/previewOutput'; import { DeployResultJson } from '../../../src/utils/types'; @@ -130,7 +131,7 @@ describe('lwc', () => { // expect(bundleMembers, JSON.stringify(bundleMembers)).to.have.length(4); // expect(bundleMembers.filter((r) => r.state === 'Deleted')).to.have.length(1); expect(bundleMembers, JSON.stringify(bundleMembers)).to.have.length(3); - expect(bundleMembers?.filter((r) => r.state === 'Changed')).to.have.length(3); + expect(bundleMembers?.filter((r) => r.state === ComponentStatus['Changed'])).to.have.length(3); }); it('sees no local changes', () => { @@ -181,7 +182,7 @@ describe('lwc', () => { const bundleMembers = result?.filter((r) => r.fullName === 'heroDetails'); expect(bundleMembers).to.have.length(3); expect( - bundleMembers?.every((r) => r.state === 'Deleted'), + bundleMembers?.every((r) => r.state === ComponentStatus['Deleted']), JSON.stringify(bundleMembers, undefined, 2) ).to.be.true; }); diff --git a/yarn.lock b/yarn.lock index 4b7f79dd..b2511724 100644 --- a/yarn.lock +++ b/yarn.lock @@ -129,10 +129,10 @@ resolved "https://registry.yarnpkg.com/@babel/helper-string-parser/-/helper-string-parser-7.22.5.tgz#533f36457a25814cf1df6488523ad547d784a99f" integrity sha512-mM4COjgZox8U+JcXQwPijIZLElkgEpO5rsERVDJTc2qfCDfERyob6k5WegS14SX18IIjv+XD+GrqNumY5JRCDw== -"@babel/helper-validator-identifier@^7.22.5": - version "7.22.5" - resolved "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.22.5.tgz#9544ef6a33999343c8740fa51350f30eeaaaf193" - integrity sha512-aJXu+6lErq8ltp+JhkJUfk1MTGyuA4v7f3pA+BJ5HLfNC6nAQ0Cpi9uOquUj8Hehg0aUiHzWQbOVJGao6ztBAQ== +"@babel/helper-validator-identifier@^7.22.20", "@babel/helper-validator-identifier@^7.22.5": + version "7.22.20" + resolved "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.22.20.tgz#c4ae002c61d2879e724581d96665583dbc1dc0e0" + integrity sha512-Y4OZ+ytlatR8AI+8KZfKuL5urKp7qey08ha31L8b3BwewJAoJamTzyvxPR/5D+KkdJCGPq/+8TukHBlY10FX9A== "@babel/helper-validator-option@^7.22.5": version "7.22.5" @@ -379,15 +379,6 @@ dependencies: "@jridgewell/trace-mapping" "0.3.9" -"@es-joy/jsdoccomment@~0.38.0": - version "0.38.0" - resolved "https://registry.yarnpkg.com/@es-joy/jsdoccomment/-/jsdoccomment-0.38.0.tgz#2e74f8d824b4a4ec831eaabd4c3548fb11eae5cd" - integrity sha512-TFac4Bnv0ZYNkEeDnOWHQhaS1elWlvOCQxH06iHeu5iffs+hCaLVIZJwF+FqksQi68R4i66Pu+4DfFGvble+Uw== - dependencies: - comment-parser "1.3.1" - esquery "^1.5.0" - jsdoc-type-pratt-parser "~4.0.0" - "@es-joy/jsdoccomment@~0.40.1": version "0.40.1" resolved "https://registry.yarnpkg.com/@es-joy/jsdoccomment/-/jsdoccomment-0.40.1.tgz#13acd77fb372ed1c83b7355edd865a3b370c9ec4" @@ -404,10 +395,10 @@ dependencies: eslint-visitor-keys "^3.3.0" -"@eslint-community/regexpp@^4.4.0", "@eslint-community/regexpp@^4.6.1": - version "4.9.1" - resolved "https://registry.yarnpkg.com/@eslint-community/regexpp/-/regexpp-4.9.1.tgz#449dfa81a57a1d755b09aa58d826c1262e4283b4" - integrity sha512-Y27x+MBLjXa+0JWDhykM3+JE+il3kHKAEqabfEWq3SDhZjLYb6/BHL/JKFnH3fe207JaXkyDo685Oc2Glt6ifA== +"@eslint-community/regexpp@^4.5.1", "@eslint-community/regexpp@^4.6.1": + version "4.10.0" + resolved "https://registry.yarnpkg.com/@eslint-community/regexpp/-/regexpp-4.10.0.tgz#548f6de556857c8bb73bbee70c35dc82a2e74d63" + integrity sha512-Cu96Sd2By9mCNTx2iyKOmq10v22jUVQv0lQnlGNy16oE9589yE+QADPbrMGCkA51cKZSg3Pu/aTJVTGfL/qjUA== "@eslint/eslintrc@^2.1.2": version "2.1.2" @@ -989,45 +980,37 @@ semver "^7.5.4" ts-retry-promise "^0.7.1" -"@salesforce/dev-config@^4.0.1", "@salesforce/dev-config@^4.1.0": +"@salesforce/dev-config@^4.0.1": version "4.1.0" resolved "https://registry.yarnpkg.com/@salesforce/dev-config/-/dev-config-4.1.0.tgz#e529576466d074e7a5f1441236510fef123da01e" integrity sha512-2iDDepiIwjXHS5IVY7pwv8jMo4xWosJ7p/UTj+lllpB/gnJiYLhjJPE4Z3FCGFKyvfg5jGaimCd8Ca6bLGsCQA== -"@salesforce/dev-scripts@^5.12.2": - version "5.12.2" - resolved "https://registry.yarnpkg.com/@salesforce/dev-scripts/-/dev-scripts-5.12.2.tgz#2008349169912c2569538f75484f45948de461fe" - integrity sha512-VZkk5bsTzsjHZjxlPrCiBMne/ep4IG3gBuID3LxlXzFTRS8Ulxi28jRrOzQ+ig8l8trgFfnqw64zuE6NOxe3lA== +"@salesforce/dev-scripts@^6.0.3": + version "6.0.3" + resolved "https://registry.yarnpkg.com/@salesforce/dev-scripts/-/dev-scripts-6.0.3.tgz#6cf4504fd0ec8b4685e729b26685eed60f9c8b26" + integrity sha512-WLl1N07oNeRywdypwUrebX/kCkSm3IzmAQpUt4q4Sk8r4vTWv5b6F0pHLv0pGS8/QWNJT7xWGZDF1lgJBHOsmA== dependencies: "@commitlint/cli" "^17.1.2" "@commitlint/config-conventional" "^17.1.0" "@salesforce/dev-config" "^4.0.1" "@salesforce/prettier-config" "^0.0.3" "@types/chai" "^4.2.11" - "@types/mocha" "^9.0.0" - "@types/node" "^15.6.1" - "@types/sinon" "10.0.11" + "@types/mocha" "^10.0.3" + "@types/node" "^18" + "@types/sinon" "^10.0.20" chai "^4.3.10" chalk "^4.0.0" cosmiconfig "^7.0.0" - eslint "^8.52.0" - eslint-config-prettier "^8.8.0" - eslint-config-salesforce "^2.0.1" - eslint-config-salesforce-license "^0.2.0" - eslint-config-salesforce-typescript "^2.0.0" - eslint-plugin-header "^3.1.1" - eslint-plugin-import "^2.27.5" - eslint-plugin-jsdoc "^46.8.2" - eslint-plugin-prefer-arrow "^1.2.1" + eslint-config-salesforce-typescript "^3.0.1" husky "^7.0.4" - mocha "^9.1.3" + mocha "^10.2.0" nyc "^15.1.0" - prettier "^2.7.1" + prettier "^2.8.8" pretty-quick "^3.1.0" shelljs "~0.8.4" sinon "10.0.0" source-map-support "~0.5.19" - ts-node "^10.0.0" + ts-node "^10.9.1" typedoc "0.23.16" typedoc-plugin-missing-exports "0.23.0" typescript "^4.9.5" @@ -1228,7 +1211,7 @@ resolved "https://registry.yarnpkg.com/@sindresorhus/is/-/is-4.6.0.tgz#3c7c9c46e678feefe7a2e5bb609d3dbd665ffb3f" integrity sha512-t09vSN3MdfsyCHoFcTRCH/iUtG7OJ0CsjzB8cjAmKc/va/kIgeDI/TxsigdncE/4be734m0cvIYwNaV4i2XqAw== -"@sinonjs/commons@^1", "@sinonjs/commons@^1.3.0", "@sinonjs/commons@^1.6.0", "@sinonjs/commons@^1.7.0", "@sinonjs/commons@^1.8.1", "@sinonjs/commons@^1.8.3": +"@sinonjs/commons@^1", "@sinonjs/commons@^1.3.0", "@sinonjs/commons@^1.6.0", "@sinonjs/commons@^1.7.0", "@sinonjs/commons@^1.8.1": version "1.8.6" resolved "https://registry.yarnpkg.com/@sinonjs/commons/-/commons-1.8.6.tgz#80c516a4dc264c2a69115e7578d62581ff455ed9" integrity sha512-Ky+XkAkqPZSm3NLBeUng77EBQl3cmeJhITaGHdYH8kjVB+aun3S4XBRti2zt17mtt0mIUDiNxYeoJm6drVvBJQ== @@ -1263,7 +1246,7 @@ dependencies: "@sinonjs/commons" "^1.7.0" -"@sinonjs/fake-timers@^7.0.4", "@sinonjs/fake-timers@^7.1.2": +"@sinonjs/fake-timers@^7.0.4": version "7.1.2" resolved "https://registry.yarnpkg.com/@sinonjs/fake-timers/-/fake-timers-7.1.2.tgz#2524eae70c4910edccf99b2f4e6efc5894aff7b5" integrity sha512-iQADsW4LBMISqZ6Ci1dupJL9pprqwcVFTcOsEmQOEhW+KLCVn/Y4Jrvg2k19fIHCp+iFprriYPTdRcQR8NbUPg== @@ -1303,7 +1286,7 @@ lodash.get "^4.4.2" type-detect "^4.0.8" -"@sinonjs/samsam@^6.0.1", "@sinonjs/samsam@^6.0.2": +"@sinonjs/samsam@^6.0.1": version "6.1.3" resolved "https://registry.yarnpkg.com/@sinonjs/samsam/-/samsam-6.1.3.tgz#4e30bcd4700336363302a7d72cbec9b9ab87b104" integrity sha512-nhOb2dWPeb1sd3IQXL/dVPnKHDOAFfvichtBf4xV00/rU1QbPCQqKMbvIheIjqwVjh7qIgf2AHTHi391yMOMpQ== @@ -1497,10 +1480,10 @@ dependencies: "@types/istanbul-lib-report" "*" -"@types/json-schema@^7.0.11", "@types/json-schema@^7.0.9": - version "7.0.12" - resolved "https://registry.yarnpkg.com/@types/json-schema/-/json-schema-7.0.12.tgz#d70faba7039d5fca54c83c7dbab41051d2b6f6cb" - integrity sha512-Hr5Jfhc9eYOQNPYO5WLDq/n4jqijdHNlDXjuAQkkt+mWdQR+XJToOHrsD4cPaMXpn6KO7y2+wM8AZEs8VpBLVA== +"@types/json-schema@^7.0.11", "@types/json-schema@^7.0.12", "@types/json-schema@^7.0.9": + version "7.0.14" + resolved "https://registry.yarnpkg.com/@types/json-schema/-/json-schema-7.0.14.tgz#74a97a5573980802f32c8e47b663530ab3b6b7d1" + integrity sha512-U3PUjAudAdJBeC2pgN8uTIKgxrb4nlDF3SF0++EldXQvQBGkpFZMSnwQiIoDU77tv45VgNkl/L4ouD+rEomujw== "@types/json5@^0.0.29": version "0.0.29" @@ -1529,10 +1512,10 @@ resolved "https://registry.yarnpkg.com/@types/minimist/-/minimist-1.2.2.tgz#ee771e2ba4b3dc5b372935d549fd9617bf345b8c" integrity sha512-jhuKLIRrhvCPLqwPcx6INqmKeiA5EWrsCOPhrlFSrbrmU4ZMPjj5Ul/oLCMDO98XRUIwVm78xICz4EPCektzeQ== -"@types/mocha@^9.0.0": - version "9.1.1" - resolved "https://registry.yarnpkg.com/@types/mocha/-/mocha-9.1.1.tgz#e7c4f1001eefa4b8afbd1eee27a237fee3bf29c4" - integrity sha512-Z61JK7DKDtdKTWwLeElSEBcWGRLY8g95ic5FoQqI9CMx0ns/Ghep3B4DfcEimiKMvtamNVULVNKEsiwV3aQmXw== +"@types/mocha@^10.0.3": + version "10.0.3" + resolved "https://registry.yarnpkg.com/@types/mocha/-/mocha-10.0.3.tgz#4804fe9cd39da26eb62fa65c15ea77615a187812" + integrity sha512-RsOPImTriV/OE4A9qKjMtk2MnXiuLLbcO3nCXK+kvq4nr0iMfFgpjaX3MPLb6f7+EL1FGSelYvuJMV6REH+ZPQ== "@types/node@*": version "20.3.1" @@ -1544,11 +1527,18 @@ resolved "https://registry.yarnpkg.com/@types/node/-/node-12.20.55.tgz#c329cbd434c42164f846b909bd6f85b5537f6240" integrity sha512-J8xLz7q2OFulZ2cyGTLE1TbbZcjpno7FaN6zdJNrgAdrJ+DZzh/uFR6YrTb4C+nXakvud8Q4+rbhoIWlYQbUFQ== -"@types/node@^15.6.1", "@types/node@^15.6.2": +"@types/node@^15.6.2": version "15.14.9" resolved "https://registry.yarnpkg.com/@types/node/-/node-15.14.9.tgz#bc43c990c3c9be7281868bbc7b8fdd6e2b57adfa" integrity sha512-qjd88DrCxupx/kJD5yQgZdcYKZKSIGBVDIBE1/LTGcNm3d2Np/jxojkdePDdfnBHJc5W7vSMpbJ1aB7p/Py69A== +"@types/node@^18": + version "18.18.8" + resolved "https://registry.yarnpkg.com/@types/node/-/node-18.18.8.tgz#2b285361f2357c8c8578ec86b5d097c7f464cfd6" + integrity sha512-OLGBaaK5V3VRBS1bAkMVP2/W9B+H8meUfl866OrMNQqt7wDgdpWPp5o6gmIc9pB+lIQHSq4ZL8ypeH1vPxcPaQ== + dependencies: + undici-types "~5.26.4" + "@types/normalize-package-data@^2.4.0": version "2.4.1" resolved "https://registry.yarnpkg.com/@types/normalize-package-data/-/normalize-package-data-2.4.1.tgz#d3357479a0fdfdd5907fe67e17e0a85c906e1301" @@ -1566,10 +1556,10 @@ dependencies: "@types/node" "*" -"@types/semver@^7.3.12", "@types/semver@^7.5.3": - version "7.5.3" - resolved "https://registry.yarnpkg.com/@types/semver/-/semver-7.5.3.tgz#9a726e116beb26c24f1ccd6850201e1246122e04" - integrity sha512-OxepLK9EuNEIPxWNME+C6WwbRAOOI2o2BaQEGzz5Lu2e4Z5eDnEo+/aVEDMIXywoJitJ7xWd641wrGLZdtwRyw== +"@types/semver@^7.3.12", "@types/semver@^7.5.0", "@types/semver@^7.5.3": + version "7.5.4" + resolved "https://registry.yarnpkg.com/@types/semver/-/semver-7.5.4.tgz#0a41252ad431c473158b22f9bfb9a63df7541cff" + integrity sha512-MMzuxN3GdFwskAnb6fz0orFvhfqi752yjaXylr0Rp4oDg5H0Zn1IuyRhDVvYOwAXoJirx2xuS16I3WjxnAIHiQ== "@types/shelljs@^0.8.14": version "0.8.14" @@ -1579,10 +1569,10 @@ "@types/glob" "~7.2.0" "@types/node" "*" -"@types/sinon@10.0.11": - version "10.0.11" - resolved "https://registry.yarnpkg.com/@types/sinon/-/sinon-10.0.11.tgz#8245827b05d3fc57a6601bd35aee1f7ad330fc42" - integrity sha512-dmZsHlBsKUtBpHriNjlK0ndlvEh8dcb9uV9Afsbt89QIyydpC7NcR+nWlAhASfy3GHnxTl4FX/aKE7XZUt/B4g== +"@types/sinon@^10.0.20": + version "10.0.20" + resolved "https://registry.yarnpkg.com/@types/sinon/-/sinon-10.0.20.tgz#f1585debf4c0d99f9938f4111e5479fb74865146" + integrity sha512-2APKKruFNCAZgx3daAyACGzWuJ028VVCUDk6o2rw/Z4PXT0ogwdV4KUegW0MwVs0Zu59auPXbbuBJHF12Sx1Eg== dependencies: "@types/sinonjs__fake-timers" "*" @@ -1599,30 +1589,32 @@ "@types/expect" "^1.20.4" "@types/node" "*" -"@typescript-eslint/eslint-plugin@^5.62.0": - version "5.62.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/eslint-plugin/-/eslint-plugin-5.62.0.tgz#aeef0328d172b9e37d9bab6dbc13b87ed88977db" - integrity sha512-TiZzBSJja/LbhNPvk6yc0JrX9XqhQ0hdh6M2svYfsHGejaKFIAGd9MQ+ERIMzLGlN/kZoYIgdxFV0PuljTKXag== +"@typescript-eslint/eslint-plugin@^6.9.1": + version "6.9.1" + resolved "https://registry.yarnpkg.com/@typescript-eslint/eslint-plugin/-/eslint-plugin-6.9.1.tgz#d8ce497dc0ed42066e195c8ecc40d45c7b1254f4" + integrity sha512-w0tiiRc9I4S5XSXXrMHOWgHgxbrBn1Ro+PmiYhSg2ZVdxrAJtQgzU5o2m1BfP6UOn7Vxcc6152vFjQfmZR4xEg== dependencies: - "@eslint-community/regexpp" "^4.4.0" - "@typescript-eslint/scope-manager" "5.62.0" - "@typescript-eslint/type-utils" "5.62.0" - "@typescript-eslint/utils" "5.62.0" + "@eslint-community/regexpp" "^4.5.1" + "@typescript-eslint/scope-manager" "6.9.1" + "@typescript-eslint/type-utils" "6.9.1" + "@typescript-eslint/utils" "6.9.1" + "@typescript-eslint/visitor-keys" "6.9.1" debug "^4.3.4" graphemer "^1.4.0" - ignore "^5.2.0" - natural-compare-lite "^1.4.0" - semver "^7.3.7" - tsutils "^3.21.0" + ignore "^5.2.4" + natural-compare "^1.4.0" + semver "^7.5.4" + ts-api-utils "^1.0.1" -"@typescript-eslint/parser@^5.62.0": - version "5.62.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/parser/-/parser-5.62.0.tgz#1b63d082d849a2fcae8a569248fbe2ee1b8a56c7" - integrity sha512-VlJEV0fOQ7BExOsHYAGrgbEiZoi8D+Bl2+f6V2RrXerRSylnp+ZBHmPvaIa8cz0Ajx7WO7Z5RqfgYg7ED1nRhA== +"@typescript-eslint/parser@^6.9.1": + version "6.9.1" + resolved "https://registry.yarnpkg.com/@typescript-eslint/parser/-/parser-6.9.1.tgz#4f685f672f8b9580beb38d5fb99d52fc3e34f7a3" + integrity sha512-C7AK2wn43GSaCUZ9do6Ksgi2g3mwFkMO3Cis96kzmgudoVaKyt62yNzJOktP0HDLb/iO2O0n2lBOzJgr6Q/cyg== dependencies: - "@typescript-eslint/scope-manager" "5.62.0" - "@typescript-eslint/types" "5.62.0" - "@typescript-eslint/typescript-estree" "5.62.0" + "@typescript-eslint/scope-manager" "6.9.1" + "@typescript-eslint/types" "6.9.1" + "@typescript-eslint/typescript-estree" "6.9.1" + "@typescript-eslint/visitor-keys" "6.9.1" debug "^4.3.4" "@typescript-eslint/scope-manager@5.62.0": @@ -1633,21 +1625,34 @@ "@typescript-eslint/types" "5.62.0" "@typescript-eslint/visitor-keys" "5.62.0" -"@typescript-eslint/type-utils@5.62.0": - version "5.62.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/type-utils/-/type-utils-5.62.0.tgz#286f0389c41681376cdad96b309cedd17d70346a" - integrity sha512-xsSQreu+VnfbqQpW5vnCJdq1Z3Q0U31qiWmRhr98ONQmcp/yhiPJFPq8MXiJVLiksmOKSjIldZzkebzHuCGzew== +"@typescript-eslint/scope-manager@6.9.1": + version "6.9.1" + resolved "https://registry.yarnpkg.com/@typescript-eslint/scope-manager/-/scope-manager-6.9.1.tgz#e96afeb9a68ad1cd816dba233351f61e13956b75" + integrity sha512-38IxvKB6NAne3g/+MyXMs2Cda/Sz+CEpmm+KLGEM8hx/CvnSRuw51i8ukfwB/B/sESdeTGet1NH1Wj7I0YXswg== dependencies: - "@typescript-eslint/typescript-estree" "5.62.0" - "@typescript-eslint/utils" "5.62.0" + "@typescript-eslint/types" "6.9.1" + "@typescript-eslint/visitor-keys" "6.9.1" + +"@typescript-eslint/type-utils@6.9.1": + version "6.9.1" + resolved "https://registry.yarnpkg.com/@typescript-eslint/type-utils/-/type-utils-6.9.1.tgz#efd5db20ed35a74d3c7d8fba51b830ecba09ce32" + integrity sha512-eh2oHaUKCK58qIeYp19F5V5TbpM52680sB4zNSz29VBQPTWIlE/hCj5P5B1AChxECe/fmZlspAWFuRniep1Skg== + dependencies: + "@typescript-eslint/typescript-estree" "6.9.1" + "@typescript-eslint/utils" "6.9.1" debug "^4.3.4" - tsutils "^3.21.0" + ts-api-utils "^1.0.1" "@typescript-eslint/types@5.62.0": version "5.62.0" resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-5.62.0.tgz#258607e60effa309f067608931c3df6fed41fd2f" integrity sha512-87NVngcbVXUahrRTqIK27gD2t5Cu1yuCXxbLcFtCzZGlfyVWWh8mLHkoxzjsB6DDNnvdL+fW8MiwPEJyGJQDgQ== +"@typescript-eslint/types@6.9.1": + version "6.9.1" + resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-6.9.1.tgz#a6cfc20db0fcedcb2f397ea728ef583e0ee72459" + integrity sha512-BUGslGOb14zUHOUmDB2FfT6SI1CcZEJYfF3qFwBeUrU6srJfzANonwRYHDpLBuzbq3HaoF2XL2hcr01c8f8OaQ== + "@typescript-eslint/typescript-estree@5.62.0": version "5.62.0" resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-5.62.0.tgz#7d17794b77fabcac615d6a48fb143330d962eb9b" @@ -1661,7 +1666,33 @@ semver "^7.3.7" tsutils "^3.21.0" -"@typescript-eslint/utils@5.62.0", "@typescript-eslint/utils@^5.59.11": +"@typescript-eslint/typescript-estree@6.9.1": + version "6.9.1" + resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-6.9.1.tgz#8c77910a49a04f0607ba94d78772da07dab275ad" + integrity sha512-U+mUylTHfcqeO7mLWVQ5W/tMLXqVpRv61wm9ZtfE5egz7gtnmqVIw9ryh0mgIlkKk9rZLY3UHygsBSdB9/ftyw== + dependencies: + "@typescript-eslint/types" "6.9.1" + "@typescript-eslint/visitor-keys" "6.9.1" + debug "^4.3.4" + globby "^11.1.0" + is-glob "^4.0.3" + semver "^7.5.4" + ts-api-utils "^1.0.1" + +"@typescript-eslint/utils@6.9.1": + version "6.9.1" + resolved "https://registry.yarnpkg.com/@typescript-eslint/utils/-/utils-6.9.1.tgz#763da41281ef0d16974517b5f0d02d85897a1c1e" + integrity sha512-L1T0A5nFdQrMVunpZgzqPL6y2wVreSyHhKGZryS6jrEN7bD9NplVAyMryUhXsQ4TWLnZmxc2ekar/lSGIlprCA== + dependencies: + "@eslint-community/eslint-utils" "^4.4.0" + "@types/json-schema" "^7.0.12" + "@types/semver" "^7.5.0" + "@typescript-eslint/scope-manager" "6.9.1" + "@typescript-eslint/types" "6.9.1" + "@typescript-eslint/typescript-estree" "6.9.1" + semver "^7.5.4" + +"@typescript-eslint/utils@^5.59.11": version "5.62.0" resolved "https://registry.yarnpkg.com/@typescript-eslint/utils/-/utils-5.62.0.tgz#141e809c71636e4a75daa39faed2fb5f4b10df86" integrity sha512-n8oxjeb5aIbPFEtmQxQYOLI0i9n5ySBEY/ZEHHZqKQSFnxio1rv6dthascc9dLuwrL0RC5mPCxB7vnAVGAYWAQ== @@ -1683,10 +1714,13 @@ "@typescript-eslint/types" "5.62.0" eslint-visitor-keys "^3.3.0" -"@ungap/promise-all-settled@1.1.2": - version "1.1.2" - resolved "https://registry.yarnpkg.com/@ungap/promise-all-settled/-/promise-all-settled-1.1.2.tgz#aa58042711d6e3275dd37dc597e5d31e8c290a44" - integrity sha512-sL/cEvJWAnClXw0wHk85/2L0G6Sj8UB0Ctc1TEMbKSsmpRosqhwj9gWgFRZSrBr2f9tiXISwNhCPmlfqUqyb9Q== +"@typescript-eslint/visitor-keys@6.9.1": + version "6.9.1" + resolved "https://registry.yarnpkg.com/@typescript-eslint/visitor-keys/-/visitor-keys-6.9.1.tgz#6753a9225a0ba00459b15d6456b9c2780b66707d" + integrity sha512-MUaPUe/QRLEffARsmNfmpghuQkW436DvESW+h+M52w0coICHRfD6Np9/K6PdACwnrq1HmuLl+cSPZaJmeVPkSw== + dependencies: + "@typescript-eslint/types" "6.9.1" + eslint-visitor-keys "^3.4.1" "@ungap/structured-clone@^1.2.0": version "1.2.0" @@ -2049,12 +2083,7 @@ async-retry@^1.3.3: dependencies: retry "0.13.1" -async@^3.2.3: - version "3.2.4" - resolved "https://registry.yarnpkg.com/async/-/async-3.2.4.tgz#2d22e00f8cddeb5fde5dd33522b56d1cf569a81c" - integrity sha512-iAB+JbDEGXhyIUavoDl9WP/Jj106Kz9DEn1DPgYw5ruDn0e3Wgi3sKFm55sASdGBNOQB8F59d9qQ7deqrHA8wQ== - -async@^3.2.4: +async@^3.2.3, async@^3.2.4: version "3.2.5" resolved "https://registry.yarnpkg.com/async/-/async-3.2.5.tgz#ebd52a8fdaf7a2289a24df399f8d8485c8a46b66" integrity sha512-baNZyqaaLhyLVKm/DlvdW051MSgO6b8eVfIezl9E5PqWxFgzLm/wQntEW4zOytVburDEr0JlALEpdOFwvErLsg== @@ -2686,11 +2715,6 @@ commander@^9.4.1: resolved "https://registry.yarnpkg.com/commander/-/commander-9.5.0.tgz#bc08d1eb5cedf7ccb797a96199d41c7bc3e60d30" integrity sha512-KRs7WVDKg86PWiuAqhDrAQnTXZKraVcCc6vFdL14qrZ/DcWwuRo7VoiYXalXO7S5GKpqYiVEwCbgFDfxNHKJBQ== -comment-parser@1.3.1: - version "1.3.1" - resolved "https://registry.yarnpkg.com/comment-parser/-/comment-parser-1.3.1.tgz#3d7ea3adaf9345594aedee6563f422348f165c1b" - integrity sha512-B52sN2VNghyq5ofvUsqZjmk6YkihBX5vMSChmSK9v4ShjKf3Vk5Xcmgpw4o+iIgtrnM/u5FiMpz9VKb8lpBveA== - comment-parser@1.4.0: version "1.4.0" resolved "https://registry.yarnpkg.com/comment-parser/-/comment-parser-1.4.0.tgz#0f8c560f59698193854f12884c20c0e39a26d32c" @@ -2929,13 +2953,6 @@ debug@4, debug@4.3.4, debug@^4.1.0, debug@^4.1.1, debug@^4.3.1, debug@^4.3.2, de dependencies: ms "2.1.2" -debug@4.3.3: - version "4.3.3" - resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.3.tgz#04266e0b70a98d4462e6e288e38259213332b664" - integrity sha512-/zxw5+vh1Tfv+4Qn7a5nsbcJKPaSvCDhojn6FEl9vupwK2VCSDtEiEtqr8DFtzYFOdz63LBkxec7DYuc2jon6Q== - dependencies: - ms "2.1.2" - debug@^3.2.7: version "3.2.7" resolved "https://registry.yarnpkg.com/debug/-/debug-3.2.7.tgz#72580b7e9145fb39b6676f9c5e5fb100b934179a" @@ -3295,31 +3312,33 @@ escodegen@^2.1.0: optionalDependencies: source-map "~0.6.1" -eslint-config-prettier@^8.10.0, eslint-config-prettier@^8.8.0: - version "8.10.0" - resolved "https://registry.yarnpkg.com/eslint-config-prettier/-/eslint-config-prettier-8.10.0.tgz#3a06a662130807e2502fc3ff8b4143d8a0658e11" - integrity sha512-SM8AMJdeQqRYT9O9zguiruQZaN7+z+E4eAP9oiLNGKMtomwaB1E9dcgUD6ZAn/eQAb52USbvezbiljfZUhbJcg== +eslint-config-prettier@^9.0.0: + version "9.0.0" + resolved "https://registry.yarnpkg.com/eslint-config-prettier/-/eslint-config-prettier-9.0.0.tgz#eb25485946dd0c66cd216a46232dc05451518d1f" + integrity sha512-IcJsTkJae2S35pRsRAwoCE+925rJJStOdkKnLVgtE+tEpqU0EVVM7OqrwxqgptKdX29NUwC82I5pXsGFIgSevw== eslint-config-salesforce-license@^0.2.0: version "0.2.0" resolved "https://registry.yarnpkg.com/eslint-config-salesforce-license/-/eslint-config-salesforce-license-0.2.0.tgz#323193f1aa15dd33fbf108d25fc1210afc11065e" integrity sha512-DJdBvgj82Erum82YMe+YvG/o6ukna3UA++lRl0HSTldj0VlBl3Q8hzCp97nRXZHra6JH1I912yievZzklXDw6w== -eslint-config-salesforce-typescript@^2.0.0: - version "2.0.1" - resolved "https://registry.yarnpkg.com/eslint-config-salesforce-typescript/-/eslint-config-salesforce-typescript-2.0.1.tgz#31e89fb58994071901c343ad29cdd7fca3cb3d65" - integrity sha512-3gmTUi3AU3P/84UM7twqR+dkZkSVm+u/yqMKbx/iaBSuFI8lAoALv7xTaOaoJO+4DCvJo+CmsJX7h71H9eUSRw== +eslint-config-salesforce-typescript@^3.0.1: + version "3.0.2" + resolved "https://registry.yarnpkg.com/eslint-config-salesforce-typescript/-/eslint-config-salesforce-typescript-3.0.2.tgz#25e9e8797a109828a63a3893a15613c8ecefa1bf" + integrity sha512-3eNN2dKojedhxbsOGocXaU+83XoeOzc8pCiDjOvlUc7B9IYTgv7UwOgmIIoESmuHKcvsCDDFDttfLCSOCOaRtQ== dependencies: - "@typescript-eslint/eslint-plugin" "^5.62.0" - "@typescript-eslint/parser" "^5.62.0" - eslint-config-prettier "^8.10.0" + "@typescript-eslint/eslint-plugin" "^6.9.1" + "@typescript-eslint/parser" "^6.9.1" + eslint "^8.52.0" + eslint-config-prettier "^9.0.0" eslint-config-salesforce "^2.0.2" eslint-config-salesforce-license "^0.2.0" + eslint-plugin-header "^3.1.1" eslint-plugin-import "^2.29.0" - eslint-plugin-jsdoc "^43.0.5" - eslint-plugin-unicorn "^48.0.1" + eslint-plugin-jsdoc "^46.8.2" + eslint-plugin-unicorn "^49.0.0" -eslint-config-salesforce@^2.0.1, eslint-config-salesforce@^2.0.2: +eslint-config-salesforce@^2.0.2: version "2.0.2" resolved "https://registry.yarnpkg.com/eslint-config-salesforce/-/eslint-config-salesforce-2.0.2.tgz#38eb2d8eb2824c66967ed9b45bc92082eba2f225" integrity sha512-3jbrI+QFu/KaQbPYIBxItB3okqUtA4EBCGiR6s2kcUMIZBLBBGAURW0k62f9WAv1EagR3eUoO0m9ru7LTj2F5Q== @@ -3345,7 +3364,7 @@ eslint-plugin-header@^3.1.1: resolved "https://registry.yarnpkg.com/eslint-plugin-header/-/eslint-plugin-header-3.1.1.tgz#6ce512432d57675265fac47292b50d1eff11acd6" integrity sha512-9vlKxuJ4qf793CmeeSrZUvVClw6amtpghq3CuWcB5cUNnWHQhgcqy5eF8oVKFk1G3Y/CbchGfEaw3wiIJaNmVg== -eslint-plugin-import@^2.27.5, eslint-plugin-import@^2.28.0, eslint-plugin-import@^2.29.0: +eslint-plugin-import@^2.29.0: version "2.29.0" resolved "https://registry.yarnpkg.com/eslint-plugin-import/-/eslint-plugin-import-2.29.0.tgz#8133232e4329ee344f2f612885ac3073b0b7e155" integrity sha512-QPOO5NO6Odv5lpoTkddtutccQjysJuFxoPS7fAHO+9m9udNHvTCPSAMW9zGAYj8lAIdr40I8yPCdUYrncXtrwg== @@ -3368,20 +3387,6 @@ eslint-plugin-import@^2.27.5, eslint-plugin-import@^2.28.0, eslint-plugin-import semver "^6.3.1" tsconfig-paths "^3.14.2" -eslint-plugin-jsdoc@^43.0.5: - version "43.2.0" - resolved "https://registry.yarnpkg.com/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-43.2.0.tgz#9d0df2329100a6956635f26211d0723c3ff91f15" - integrity sha512-Hst7XUfqh28UmPD52oTXmjaRN3d0KrmOZdgtp4h9/VHUJD3Evoo82ZGXi1TtRDWgWhvqDIRI63O49H0eH7NrZQ== - dependencies: - "@es-joy/jsdoccomment" "~0.38.0" - are-docs-informative "^0.0.2" - comment-parser "1.3.1" - debug "^4.3.4" - escape-string-regexp "^4.0.0" - esquery "^1.5.0" - semver "^7.5.0" - spdx-expression-parse "^3.0.1" - eslint-plugin-jsdoc@^46.8.2: version "46.8.2" resolved "https://registry.yarnpkg.com/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-46.8.2.tgz#3e6b1c93e91e38fe01874d45da121b56393c54a5" @@ -3397,11 +3402,6 @@ eslint-plugin-jsdoc@^46.8.2: semver "^7.5.4" spdx-expression-parse "^3.0.1" -eslint-plugin-prefer-arrow@^1.2.1: - version "1.2.3" - resolved "https://registry.yarnpkg.com/eslint-plugin-prefer-arrow/-/eslint-plugin-prefer-arrow-1.2.3.tgz#e7fbb3fa4cd84ff1015b9c51ad86550e55041041" - integrity sha512-J9I5PKCOJretVuiZRGvPQxCbllxGAV/viI20JO3LYblAodofBxyMnZAJ+WGeClHgANnSJberTNoFWWjrWKBuXQ== - eslint-plugin-sf-plugin@^1.16.13: version "1.16.13" resolved "https://registry.yarnpkg.com/eslint-plugin-sf-plugin/-/eslint-plugin-sf-plugin-1.16.13.tgz#e3ba9ee0014c96b414af67c6aa9e8578451a01fd" @@ -3410,12 +3410,12 @@ eslint-plugin-sf-plugin@^1.16.13: "@salesforce/core" "^5.3.14" "@typescript-eslint/utils" "^5.59.11" -eslint-plugin-unicorn@^48.0.1: - version "48.0.1" - resolved "https://registry.yarnpkg.com/eslint-plugin-unicorn/-/eslint-plugin-unicorn-48.0.1.tgz#a6573bc1687ae8db7121fdd8f92394b6549a6959" - integrity sha512-FW+4r20myG/DqFcCSzoumaddKBicIPeFnTrifon2mWIzlfyvzwyqZjqVP7m4Cqr/ZYisS2aiLghkUWaPg6vtCw== +eslint-plugin-unicorn@^49.0.0: + version "49.0.0" + resolved "https://registry.yarnpkg.com/eslint-plugin-unicorn/-/eslint-plugin-unicorn-49.0.0.tgz#4449ea954d7e1455eec8518f9417d7021b245fa8" + integrity sha512-0fHEa/8Pih5cmzFW5L7xMEfUTvI9WKeQtjmKpTUmY+BiFCDxkxrTdnURJOHKykhtwIeyYsxnecbGvDCml++z4Q== dependencies: - "@babel/helper-validator-identifier" "^7.22.5" + "@babel/helper-validator-identifier" "^7.22.20" "@eslint-community/eslint-utils" "^4.4.0" ci-info "^3.8.0" clean-regexp "^1.0.0" @@ -3423,7 +3423,6 @@ eslint-plugin-unicorn@^48.0.1: indent-string "^4.0.0" is-builtin-module "^3.2.1" jsesc "^3.0.2" - lodash "^4.17.21" pluralize "^8.0.0" read-pkg-up "^7.0.1" regexp-tree "^0.1.27" @@ -4145,11 +4144,6 @@ grouped-queue@^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" - integrity sha512-qBr4OuELkhPenW6goKVXiv47US3clb3/IbuWF9KNKEijAy9oeHxU9IgzjvJhHkUzhaj7rOUD7+YGWqUjLp5oSA== - handlebars@^4.7.8: version "4.7.8" resolved "https://registry.yarnpkg.com/handlebars/-/handlebars-4.7.8.tgz#41c42c18b1be2365439188c77c6afae71c0cd9e9" @@ -5563,13 +5557,6 @@ min-indent@^1.0.0: resolved "https://registry.yarnpkg.com/min-indent/-/min-indent-1.0.1.tgz#a63f681673b30571fbe8bc25686ae746eefa9869" integrity sha512-I9jwMn07Sy/IwOj3zVkVik2JTvgpaykDZEigL6Rx6N9LbMywwUSMtxET+7lVoDLLd3O3IXwJwvuuns8UB/HeAg== -minimatch@4.2.1: - version "4.2.1" - resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-4.2.1.tgz#40d9d511a46bdc4e563c22c3080cde9c0d8299b4" - integrity sha512-9Uq1ChtSZO+Mxa/CL1eGizn2vRn3MlLgzhT0Iz8zaY8NdvxvB0d5QdPFmCKf7JKA9Lerx5vRrnwO03jsSfGG9g== - dependencies: - brace-expansion "^1.1.7" - minimatch@5.0.1: version "5.0.1" resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-5.0.1.tgz#fb9022f7528125187c92bd9e9b6366be1cf3415b" @@ -5734,7 +5721,7 @@ mkdirp@^1.0.3, mkdirp@^1.0.4: resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-1.0.4.tgz#3eb5ed62622756d79a5f0e2a221dfebad75c2f7e" integrity sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw== -mocha@^10.1.0: +mocha@^10.2.0: version "10.2.0" resolved "https://registry.yarnpkg.com/mocha/-/mocha-10.2.0.tgz#1fd4a7c32ba5ac372e03a17eef435bd00e5c68b8" integrity sha512-IDY7fl/BecMwFHzoqF2sg/SHHANeBoMMXFlS9r0OXKDssYE1M5O43wUY/9BVPeIvfH2zmEbBfseqN9gBQZzXkg== @@ -5761,36 +5748,6 @@ mocha@^10.1.0: yargs-parser "20.2.4" yargs-unparser "2.0.0" -mocha@^9.1.3: - version "9.2.2" - resolved "https://registry.yarnpkg.com/mocha/-/mocha-9.2.2.tgz#d70db46bdb93ca57402c809333e5a84977a88fb9" - integrity sha512-L6XC3EdwT6YrIk0yXpavvLkn8h+EU+Y5UcCHKECyMbdUIxyMuZj4bX4U9e1nvnvUUvQVsV2VHQr5zLdcUkhW/g== - dependencies: - "@ungap/promise-all-settled" "1.1.2" - ansi-colors "4.1.1" - browser-stdout "1.3.1" - chokidar "3.5.3" - debug "4.3.3" - diff "5.0.0" - escape-string-regexp "4.0.0" - find-up "5.0.0" - glob "7.2.0" - growl "1.10.5" - he "1.2.0" - js-yaml "4.1.0" - log-symbols "4.1.0" - minimatch "4.2.1" - ms "2.1.3" - nanoid "3.3.1" - serialize-javascript "6.0.0" - strip-json-comments "3.1.1" - supports-color "8.1.1" - which "2.0.2" - workerpool "6.2.0" - yargs "16.2.0" - yargs-parser "20.2.4" - yargs-unparser "2.0.0" - mri@^1.1.5: version "1.2.0" resolved "https://registry.yarnpkg.com/mri/-/mri-1.2.0.tgz#6721480fec2a11a4889861115a48b6cbe7cc8f0b" @@ -5841,21 +5798,11 @@ mute-stream@0.0.8: resolved "https://registry.yarnpkg.com/mute-stream/-/mute-stream-0.0.8.tgz#1630c42b2251ff81e2a283de96a5497ea92e5e0d" integrity sha512-nnbWWOkoWyUsTjKrhgD0dcz22mdkSnpYqbEjIm2nhwhuxlSkpywJmBo8h0ZqJdkp73mb90SssHkN4rsRaBAfAA== -nanoid@3.3.1: - version "3.3.1" - resolved "https://registry.yarnpkg.com/nanoid/-/nanoid-3.3.1.tgz#6347a18cac88af88f58af0b3594b723d5e99bb35" - integrity sha512-n6Vs/3KGyxPQd6uO0eH4Bv0ojGSUvuLlIHtC3Y0kEO23YRge8H9x1GCzLn28YX0H66pMkxuaeESFq4tKISKwdw== - nanoid@3.3.3: version "3.3.3" resolved "https://registry.yarnpkg.com/nanoid/-/nanoid-3.3.3.tgz#fd8e8b7aa761fe807dba2d1b98fb7241bb724a25" integrity sha512-p1sjXuopFs0xg+fPASzQ28agW1oHD7xDsd9Xkf3T15H3c/cifrFHVwrh74PdoklAPi+i7MdRsE47vm2r6JoB+w== -natural-compare-lite@^1.4.0: - version "1.4.0" - resolved "https://registry.yarnpkg.com/natural-compare-lite/-/natural-compare-lite-1.4.0.tgz#17b09581988979fddafe0201e931ba933c96cbb4" - integrity sha512-Tj+HTDSJJKaZnfiuw+iaF9skdPpTo2GtEly5JHnWV/hfv2Qj/9RKsGISQtLh2ox3l5EAGw487hnBee0sIJ6v2g== - natural-compare@^1.4.0: version "1.4.0" resolved "https://registry.yarnpkg.com/natural-compare/-/natural-compare-1.4.0.tgz#4abebfeed7541f2c27acfb29bdbbd15c8d5ba4f7" @@ -5908,7 +5855,7 @@ nise@^4.1.0: just-extend "^4.0.2" path-to-regexp "^1.7.0" -nise@^5.0.1, nise@^5.1.0: +nise@^5.0.1: version "5.1.4" resolved "https://registry.yarnpkg.com/nise/-/nise-5.1.4.tgz#491ce7e7307d4ec546f5a659b2efe94a18b4bbc0" integrity sha512-8+Ib8rRJ4L0o3kfmyVCL7gzrohyDe0cMFTBa2d364yIrEGMEoetznKJx899YxjybU6bL9SQkYPSBBs1gyYs8Xg== @@ -6739,7 +6686,7 @@ prelude-ls@^1.2.1: resolved "https://registry.yarnpkg.com/prelude-ls/-/prelude-ls-1.2.1.tgz#debc6489d7a6e6b0e7611888cec880337d316396" integrity sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g== -prettier@^2.7.1, prettier@^2.8.8: +prettier@^2.8.8: version "2.8.8" resolved "https://registry.yarnpkg.com/prettier/-/prettier-2.8.8.tgz#e8c5d7e98a4305ffe3de2e1fc4aca1a71c28b1da" integrity sha512-tdN8qQGvNjw4CHbY+XXk0JgCXn9QiF21a55rBe5LJAU+kDyC4WQn4+awm2Xfk2lQMk5fKup9XgzTZtGkjBdP9Q== @@ -6749,7 +6696,7 @@ pretty-bytes@^5.3.0: resolved "https://registry.yarnpkg.com/pretty-bytes/-/pretty-bytes-5.6.0.tgz#356256f643804773c82f64723fe78c92c62beaeb" integrity sha512-FFw039TmrBqFK8ma/7OL3sDz/VytdtJr044/QUJtH0wK9lb9jLq9tJyIxUwtQJHwar2BqtiA4iCWSwo9JLkzFg== -pretty-quick@^3.1.0, pretty-quick@^3.1.3: +pretty-quick@^3.1.0: version "3.1.3" resolved "https://registry.yarnpkg.com/pretty-quick/-/pretty-quick-3.1.3.tgz#15281108c0ddf446675157ca40240099157b638e" integrity sha512-kOCi2FJabvuh1as9enxYmrnBC6tVMoVOenMaBqRfsvBHB0cbpYHjdQEpSglpASDFEXVwplpcGR4CLEaisYAFcA== @@ -7281,7 +7228,7 @@ semver@^6.0.0, semver@^6.3.0, semver@^6.3.1: resolved "https://registry.yarnpkg.com/semver/-/semver-6.3.1.tgz#556d2ef8689146e46dcea4bfdd095f3434dffcb4" integrity sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA== -semver@^7.0.0, 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, semver@^7.3.8, semver@^7.5.0, semver@^7.5.3, semver@^7.5.4: +semver@^7.0.0, 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, semver@^7.3.8, semver@^7.5.3, semver@^7.5.4: version "7.5.4" resolved "https://registry.yarnpkg.com/semver/-/semver-7.5.4.tgz#483986ec4ed38e1c6c48c34894a9182dbff68a6e" integrity sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA== @@ -7456,18 +7403,6 @@ sinon@10.0.0: nise "^4.1.0" supports-color "^7.1.0" -sinon@11.1.2: - version "11.1.2" - resolved "https://registry.yarnpkg.com/sinon/-/sinon-11.1.2.tgz#9e78850c747241d5c59d1614d8f9cbe8840e8674" - integrity sha512-59237HChms4kg7/sXhiRcUzdSkKuydDeTiamT/jesUVHshBgL8XAmhgFo0GfK6RruMDM/iRSij1EybmMog9cJw== - dependencies: - "@sinonjs/commons" "^1.8.3" - "@sinonjs/fake-timers" "^7.1.2" - "@sinonjs/samsam" "^6.0.2" - diff "^5.0.0" - nise "^5.1.0" - supports-color "^7.2.0" - sinon@^10.0.0: version "10.0.1" resolved "https://registry.yarnpkg.com/sinon/-/sinon-10.0.1.tgz#0d1a13ecb86f658d15984f84273e57745b1f4c57" @@ -7804,7 +7739,7 @@ supports-color@^5.3.0, supports-color@^5.4.0: dependencies: has-flag "^3.0.0" -supports-color@^7.0.0, supports-color@^7.1.0, supports-color@^7.2.0: +supports-color@^7.0.0, supports-color@^7.1.0: version "7.2.0" resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-7.2.0.tgz#1b7dcdcb32b8138801b3e478ba6a51caa89648da" integrity sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw== @@ -7939,6 +7874,11 @@ trim-newlines@^3.0.0: resolved "https://registry.yarnpkg.com/trim-newlines/-/trim-newlines-3.0.1.tgz#260a5d962d8b752425b32f3a7db0dcacd176c144" integrity sha512-c1PTsA3tYrIsLGkJkzHF+w9F2EyxfXGo4UyJc4pFL++FMjnq0HJS69T3M7d//gKrFKwy429bouPescbjecU+Zw== +ts-api-utils@^1.0.1: + version "1.0.3" + resolved "https://registry.yarnpkg.com/ts-api-utils/-/ts-api-utils-1.0.3.tgz#f12c1c781d04427313dbac808f453f050e54a331" + integrity sha512-wNMeqtMz5NtwpT/UZGY5alT+VoKdSsOOP/kqHFcUW1P/VRhH2wJ48+DN2WwUliNbQ976ETwDL0Ifd2VVvgonvg== + ts-json-schema-generator@^1.2.0: version "1.2.0" resolved "https://registry.yarnpkg.com/ts-json-schema-generator/-/ts-json-schema-generator-1.2.0.tgz#5ccce26c7475ff60a034885bff6bd38e574fb073" @@ -7952,7 +7892,7 @@ ts-json-schema-generator@^1.2.0: safe-stable-stringify "^2.4.1" typescript "~4.9.3" -ts-node@^10.0.0, ts-node@^10.8.1, ts-node@^10.9.1: +ts-node@^10.8.1, ts-node@^10.9.1: version "10.9.1" resolved "https://registry.yarnpkg.com/ts-node/-/ts-node-10.9.1.tgz#e73de9102958af9e1f0b168a6ff320e25adcff4b" integrity sha512-NtVysVPkxxrwFGUUxGYhfux8k78pQB3JqYBXlLRZgdGUqTO5wU/UyHop5p70iEbGhB7q5KmiZiU0Y3KlJrScEw== @@ -8142,6 +8082,11 @@ unbox-primitive@^1.0.2: has-symbols "^1.0.3" which-boxed-primitive "^1.0.2" +undici-types@~5.26.4: + version "5.26.5" + resolved "https://registry.yarnpkg.com/undici-types/-/undici-types-5.26.5.tgz#bcd539893d00b56e964fd2657a4866b221a65617" + integrity sha512-JlCMO+ehdEIKqlFxk6IfVoAUVmgz7cU7zD/h9XZ0qzeosSHmUJVOzSQvvYSYWXkFXC+IfLKSIffhv0sVZup6pA== + unique-filename@^1.1.1: version "1.1.1" resolved "https://registry.yarnpkg.com/unique-filename/-/unique-filename-1.1.1.tgz#1d69769369ada0583103a1e6ae87681b56573230" @@ -8414,13 +8359,6 @@ which-typed-array@^1.1.11, which-typed-array@^1.1.13, which-typed-array@^1.1.2: gopd "^1.0.1" has-tostringtag "^1.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== - dependencies: - isexe "^2.0.0" - which@^1.2.9: version "1.3.1" resolved "https://registry.yarnpkg.com/which/-/which-1.3.1.tgz#a45043d54f5805316da8d62f9f50918d3da70b0a" @@ -8428,6 +8366,13 @@ which@^1.2.9: dependencies: isexe "^2.0.0" +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== + dependencies: + isexe "^2.0.0" + which@^3.0.0: version "3.0.1" resolved "https://registry.yarnpkg.com/which/-/which-3.0.1.tgz#89f1cd0c23f629a8105ffe69b8172791c87b4be1" @@ -8465,11 +8410,6 @@ wordwrap@^1.0.0: resolved "https://registry.yarnpkg.com/wordwrap/-/wordwrap-1.0.0.tgz#27584810891456a4171c8d0226441ade90cbcaeb" integrity sha512-gvVzJFlPycKc5dZN4yPkP8w7Dc37BtP1yczEneOb4uq34pXZcvrtRTmWV8W+Ume+XCxKgbjM+nevkyFPMybd4Q== -workerpool@6.2.0: - version "6.2.0" - resolved "https://registry.yarnpkg.com/workerpool/-/workerpool-6.2.0.tgz#827d93c9ba23ee2019c3ffaff5c27fccea289e8b" - integrity sha512-Rsk5qQHJ9eowMH28Jwhe8HEbmdYDX4lwoMWshiCXugjtHqMD9ZbiqSDLxcsfdqsETPzVUtX5s1Z5kStiIM6l4A== - workerpool@6.2.1: version "6.2.1" resolved "https://registry.yarnpkg.com/workerpool/-/workerpool-6.2.1.tgz#46fc150c17d826b86a008e5a4508656777e9c343"