diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index b65150fb..32eb1bfe 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -17,6 +17,27 @@ jobs: needs: linux-unit-tests uses: salesforcecli/github-workflows/.github/workflows/unitTestsWindows.yml@main + integration: + needs: linux-unit-tests + strategy: + matrix: + os: [ubuntu-latest, windows-latest] + node_version: [lts/*, latest] + exclude: + - os: windows-latest + node_version: lts/* + fail-fast: false + runs-on: ${{ matrix.os }} + steps: + - uses: actions/checkout@v4 + - uses: actions/setup-node@v4 + with: + node-version: ${{ matrix.node_version }} + cache: yarn + - uses: salesforcecli/github-workflows/.github/actions/yarnInstallWithRetries@main + - run: yarn build + - run: yarn test:integration + external-nuts-deploy-retrieve: name: external-nuts-deploy-retrieve needs: linux-unit-tests @@ -38,7 +59,7 @@ jobs: with: packageName: '@salesforce/sf-plugins-core' externalProjectGitUrl: 'https://github.com/salesforcecli/plugin-deploy-retrieve' - preBuildCommands: 'shx rm -rf node_modules/@oclif/core; shx rm -rf node_modules/@salesforce/kit; shx rm -rf node_modules/@salesforce/core; shx rm -rf node_modules/@salesforce/ts-types; shx rm -rf node_modules/@salesforce/cli-plugins-testkit' + preBuildCommands: 'shx rm -rf node_modules/@oclif/core node_modules/@salesforce/kit node_modules/@salesforce/core node_modules/@salesforce/ts-types node_modules/@salesforce/cli-plugins-testkit' command: ${{ matrix.command }} os: ${{ matrix.os }} secrets: inherit @@ -67,7 +88,7 @@ jobs: with: packageName: '@salesforce/sf-plugins-core' externalProjectGitUrl: 'https://github.com/salesforcecli/${{matrix.repo}}' - preBuildCommands: 'shx rm -rf node_modules/@oclif/core; shx rm -rf node_modules/@salesforce/kit; shx rm -rf node_modules/@salesforce/core; shx rm -rf node_modules/@salesforce/ts-types' + preBuildCommands: 'shx rm -rf node_modules/@oclif/core node_modules/@salesforce/kit node_modules/@salesforce/core node_modules/@salesforce/ts-types' command: yarn test:nuts os: ${{ matrix.os }} secrets: inherit diff --git a/CHANGELOG.md b/CHANGELOG.md index 76d5f2fd..c7ff5dfb 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,2019 +1,1357 @@ ## [9.1.1](https://github.com/salesforcecli/sf-plugins-core/compare/9.1.0...9.1.1) (2024-06-01) - ### Bug Fixes -* **deps:** major-version-inquirers, exit-code typing ([#561](https://github.com/salesforcecli/sf-plugins-core/issues/561)) ([91333cb](https://github.com/salesforcecli/sf-plugins-core/commit/91333cb39ed0683fb3835acd069e92374cfde6cd)) - - +- **deps:** major-version-inquirers, exit-code typing ([#561](https://github.com/salesforcecli/sf-plugins-core/issues/561)) ([91333cb](https://github.com/salesforcecli/sf-plugins-core/commit/91333cb39ed0683fb3835acd069e92374cfde6cd)) # [9.1.0](https://github.com/salesforcecli/sf-plugins-core/compare/9.0.14...9.1.0) (2024-05-30) - ### Features -* add a default summary for optional orgs ([#560](https://github.com/salesforcecli/sf-plugins-core/issues/560)) ([8793406](https://github.com/salesforcecli/sf-plugins-core/commit/8793406075e6d753dd5137a5c7d1cbe759572c54)) - - +- add a default summary for optional orgs ([#560](https://github.com/salesforcecli/sf-plugins-core/issues/560)) ([8793406](https://github.com/salesforcecli/sf-plugins-core/commit/8793406075e6d753dd5137a5c7d1cbe759572c54)) ## [9.0.14](https://github.com/salesforcecli/sf-plugins-core/compare/9.0.13...9.0.14) (2024-05-26) - ### Bug Fixes -* **deps:** bump @salesforce/core from 7.3.8 to 7.3.9 ([b9f2198](https://github.com/salesforcecli/sf-plugins-core/commit/b9f2198749404b86b4d4011049754ea609736731)) - - +- **deps:** bump @salesforce/core from 7.3.8 to 7.3.9 ([b9f2198](https://github.com/salesforcecli/sf-plugins-core/commit/b9f2198749404b86b4d4011049754ea609736731)) ## [9.0.13](https://github.com/salesforcecli/sf-plugins-core/compare/9.0.12...9.0.13) (2024-05-26) - ### Bug Fixes -* **deps:** bump @salesforce/kit from 3.1.1 to 3.1.2 ([d0d50b1](https://github.com/salesforcecli/sf-plugins-core/commit/d0d50b1869f989b8f454fb097bce4c6c5835087d)) - - +- **deps:** bump @salesforce/kit from 3.1.1 to 3.1.2 ([d0d50b1](https://github.com/salesforcecli/sf-plugins-core/commit/d0d50b1869f989b8f454fb097bce4c6c5835087d)) ## [9.0.12](https://github.com/salesforcecli/sf-plugins-core/compare/9.0.11...9.0.12) (2024-05-20) - ### Bug Fixes -* propagate data from original error ([#553](https://github.com/salesforcecli/sf-plugins-core/issues/553)) ([e5df6e6](https://github.com/salesforcecli/sf-plugins-core/commit/e5df6e66b51bf75f2bb41a39d2578b63dfc45efb)) - - +- propagate data from original error ([#553](https://github.com/salesforcecli/sf-plugins-core/issues/553)) ([e5df6e6](https://github.com/salesforcecli/sf-plugins-core/commit/e5df6e66b51bf75f2bb41a39d2578b63dfc45efb)) ## [9.0.11](https://github.com/salesforcecli/sf-plugins-core/compare/9.0.10...9.0.11) (2024-05-19) - ### Bug Fixes -* **deps:** bump @salesforce/core from 7.3.6 to 7.3.8 ([40ad682](https://github.com/salesforcecli/sf-plugins-core/commit/40ad6823a442d5778401e70b90f2684bf351f155)) - - +- **deps:** bump @salesforce/core from 7.3.6 to 7.3.8 ([40ad682](https://github.com/salesforcecli/sf-plugins-core/commit/40ad6823a442d5778401e70b90f2684bf351f155)) ## [9.0.10](https://github.com/salesforcecli/sf-plugins-core/compare/9.0.9...9.0.10) (2024-05-12) - ### Bug Fixes -* **deps:** bump @salesforce/core from 7.3.3 to 7.3.6 ([a5a936a](https://github.com/salesforcecli/sf-plugins-core/commit/a5a936aa6643b2124ccfcbfc4cdfd89151b07261)) - - +- **deps:** bump @salesforce/core from 7.3.3 to 7.3.6 ([a5a936a](https://github.com/salesforcecli/sf-plugins-core/commit/a5a936aa6643b2124ccfcbfc4cdfd89151b07261)) ## [9.0.9](https://github.com/salesforcecli/sf-plugins-core/compare/9.0.8...9.0.9) (2024-05-12) - ### Bug Fixes -* **deps:** bump @salesforce/kit from 3.1.0 to 3.1.1 ([48d2a8c](https://github.com/salesforcecli/sf-plugins-core/commit/48d2a8c18616ae385e57b76026bcdc085a8c82f8)) - - +- **deps:** bump @salesforce/kit from 3.1.0 to 3.1.1 ([48d2a8c](https://github.com/salesforcecli/sf-plugins-core/commit/48d2a8c18616ae385e57b76026bcdc085a8c82f8)) ## [9.0.8](https://github.com/salesforcecli/sf-plugins-core/compare/9.0.7...9.0.8) (2024-05-12) - ### Bug Fixes -* **deps:** bump @oclif/core from 3.26.5 to 3.26.6 ([b7a9e82](https://github.com/salesforcecli/sf-plugins-core/commit/b7a9e8267f91c2df7cbb824931f7106e061c15da)) - - +- **deps:** bump @oclif/core from 3.26.5 to 3.26.6 ([b7a9e82](https://github.com/salesforcecli/sf-plugins-core/commit/b7a9e8267f91c2df7cbb824931f7106e061c15da)) ## [9.0.7](https://github.com/salesforcecli/sf-plugins-core/compare/9.0.6...9.0.7) (2024-05-01) - ### Bug Fixes -* **deps:** bump @oclif/core from 3.26.3 to 3.26.5 ([fde30fc](https://github.com/salesforcecli/sf-plugins-core/commit/fde30fc37a3d7f46249e580af252901ed2af59a3)) - - +- **deps:** bump @oclif/core from 3.26.3 to 3.26.5 ([fde30fc](https://github.com/salesforcecli/sf-plugins-core/commit/fde30fc37a3d7f46249e580af252901ed2af59a3)) ## [9.0.6](https://github.com/salesforcecli/sf-plugins-core/compare/9.0.5...9.0.6) (2024-04-30) - ### Bug Fixes -* bump core version ([5d5f921](https://github.com/salesforcecli/sf-plugins-core/commit/5d5f92166618c2b0fbacca63dcda70ad8323e2c8)) - - +- bump core version ([5d5f921](https://github.com/salesforcecli/sf-plugins-core/commit/5d5f92166618c2b0fbacca63dcda70ad8323e2c8)) ## [9.0.5](https://github.com/salesforcecli/sf-plugins-core/compare/9.0.4...9.0.5) (2024-04-21) - ### Bug Fixes -* **deps:** bump @salesforce/core from 7.2.0 to 7.3.0 ([2fcbbcb](https://github.com/salesforcecli/sf-plugins-core/commit/2fcbbcbba658e0bfc7abf71870c6d5c8ded4f0b0)) - - +- **deps:** bump @salesforce/core from 7.2.0 to 7.3.0 ([2fcbbcb](https://github.com/salesforcecli/sf-plugins-core/commit/2fcbbcbba658e0bfc7abf71870c6d5c8ded4f0b0)) ## [9.0.4](https://github.com/salesforcecli/sf-plugins-core/compare/9.0.3...9.0.4) (2024-04-17) - ### Bug Fixes -* pass command id to sfCommandError event ([6a069af](https://github.com/salesforcecli/sf-plugins-core/commit/6a069af5d88456b6c3ea822973ec20af1dd8f1c8)) - - +- pass command id to sfCommandError event ([6a069af](https://github.com/salesforcecli/sf-plugins-core/commit/6a069af5d88456b6c3ea822973ec20af1dd8f1c8)) ## [9.0.3](https://github.com/salesforcecli/sf-plugins-core/compare/9.0.2...9.0.3) (2024-04-17) - ### Bug Fixes -* **deps:** updates from devScripts ([#536](https://github.com/salesforcecli/sf-plugins-core/issues/536)) ([918f4c5](https://github.com/salesforcecli/sf-plugins-core/commit/918f4c5506a75d155d129c0674cc44b6da89ef79)) - - +- **deps:** updates from devScripts ([#536](https://github.com/salesforcecli/sf-plugins-core/issues/536)) ([918f4c5](https://github.com/salesforcecli/sf-plugins-core/commit/918f4c5506a75d155d129c0674cc44b6da89ef79)) ## [9.0.2](https://github.com/salesforcecli/sf-plugins-core/compare/9.0.1...9.0.2) (2024-04-14) - ### Bug Fixes -* **deps:** bump @salesforce/core from 7.0.0 to 7.2.0 ([16a502c](https://github.com/salesforcecli/sf-plugins-core/commit/16a502cab546abda960a06c26c31ccadfb8f5603)) - - +- **deps:** bump @salesforce/core from 7.0.0 to 7.2.0 ([16a502c](https://github.com/salesforcecli/sf-plugins-core/commit/16a502cab546abda960a06c26c31ccadfb8f5603)) ## [9.0.1](https://github.com/salesforcecli/sf-plugins-core/compare/9.0.0...9.0.1) (2024-04-11) - ### Bug Fixes -* extract handler transform for ut, handle undefined ([#530](https://github.com/salesforcecli/sf-plugins-core/issues/530)) ([7eb46a8](https://github.com/salesforcecli/sf-plugins-core/commit/7eb46a8d45f3663f4e28f57a070ac3f82a5ac156)) - - +- extract handler transform for ut, handle undefined ([#530](https://github.com/salesforcecli/sf-plugins-core/issues/530)) ([7eb46a8](https://github.com/salesforcecli/sf-plugins-core/commit/7eb46a8d45f3663f4e28f57a070ac3f82a5ac156)) # [9.0.0](https://github.com/salesforcecli/sf-plugins-core/compare/8.0.4...9.0.0) (2024-04-10) - -* feat!: jsforce-node (#529) ([8255b52](https://github.com/salesforcecli/sf-plugins-core/commit/8255b523efe70779d94746c644c08e211632ecad)), closes [#529](https://github.com/salesforcecli/sf-plugins-core/issues/529) - +- feat!: jsforce-node (#529) ([8255b52](https://github.com/salesforcecli/sf-plugins-core/commit/8255b523efe70779d94746c644c08e211632ecad)), closes [#529](https://github.com/salesforcecli/sf-plugins-core/issues/529) ### BREAKING CHANGES -* core7, jsforce-node - - +- core7, jsforce-node ## [8.0.4](https://github.com/salesforcecli/sf-plugins-core/compare/8.0.3...8.0.4) (2024-04-07) - ### Bug Fixes -* **deps:** bump @salesforce/core from 6.7.3 to 6.7.6 ([4ea81b6](https://github.com/salesforcecli/sf-plugins-core/commit/4ea81b62d2d72d1441744cc0a5443830e04b37d1)) - - +- **deps:** bump @salesforce/core from 6.7.3 to 6.7.6 ([4ea81b6](https://github.com/salesforcecli/sf-plugins-core/commit/4ea81b62d2d72d1441744cc0a5443830e04b37d1)) ## [8.0.3](https://github.com/salesforcecli/sf-plugins-core/compare/8.0.2...8.0.3) (2024-03-31) - ### Bug Fixes -* **deps:** bump @salesforce/kit from 3.0.15 to 3.1.0 ([aa5166b](https://github.com/salesforcecli/sf-plugins-core/commit/aa5166b67e9e59547f7da1eb9c64d7b28c36e38b)) - - +- **deps:** bump @salesforce/kit from 3.0.15 to 3.1.0 ([aa5166b](https://github.com/salesforcecli/sf-plugins-core/commit/aa5166b67e9e59547f7da1eb9c64d7b28c36e38b)) ## [8.0.2](https://github.com/salesforcecli/sf-plugins-core/compare/8.0.1...8.0.2) (2024-03-26) - ### Bug Fixes -* **deps:** bump @oclif/core from 3.23.0 to 3.26.0 ([09ac64c](https://github.com/salesforcecli/sf-plugins-core/commit/09ac64c6831207a83bd871f5b6602e7e7349ccff)) - - +- **deps:** bump @oclif/core from 3.23.0 to 3.26.0 ([09ac64c](https://github.com/salesforcecli/sf-plugins-core/commit/09ac64c6831207a83bd871f5b6602e7e7349ccff)) ## [8.0.1](https://github.com/salesforcecli/sf-plugins-core/compare/8.0.0...8.0.1) (2024-03-25) - ### Bug Fixes -* **deps:** bump @salesforce/core from 6.7.0 to 6.7.3 ([e09fc6a](https://github.com/salesforcecli/sf-plugins-core/commit/e09fc6a3cb01dba035c56bc126d9f31d99d94cc7)) - - +- **deps:** bump @salesforce/core from 6.7.0 to 6.7.3 ([e09fc6a](https://github.com/salesforcecli/sf-plugins-core/commit/e09fc6a3cb01dba035c56bc126d9f31d99d94cc7)) # [8.0.0](https://github.com/salesforcecli/sf-plugins-core/compare/7.1.16...8.0.0) (2024-03-22) - -* feat!: add flags-dir base flag (#519) ([c8fd443](https://github.com/salesforcecli/sf-plugins-core/commit/c8fd44358a2ab39d49f8eb4f90f1631708179719)), closes [#519](https://github.com/salesforcecli/sf-plugins-core/issues/519) - +- feat!: add flags-dir base flag (#519) ([c8fd443](https://github.com/salesforcecli/sf-plugins-core/commit/c8fd44358a2ab39d49f8eb4f90f1631708179719)), closes [#519](https://github.com/salesforcecli/sf-plugins-core/issues/519) ### BREAKING CHANGES -* SfCommand.baseFlags may cause compilation errors - - +- SfCommand.baseFlags may cause compilation errors ## [7.1.16](https://github.com/salesforcecli/sf-plugins-core/compare/7.1.15...7.1.16) (2024-03-19) - ### Bug Fixes -* set defaultHelp on duration flag ([85a502a](https://github.com/salesforcecli/sf-plugins-core/commit/85a502af1494dc21f7c119be384ba573f4099c9c)) - - +- set defaultHelp on duration flag ([85a502a](https://github.com/salesforcecli/sf-plugins-core/commit/85a502af1494dc21f7c119be384ba573f4099c9c)) ## [7.1.15](https://github.com/salesforcecli/sf-plugins-core/compare/7.1.14...7.1.15) (2024-03-10) - ### Bug Fixes -* **deps:** bump @oclif/core from 3.19.6 to 3.23.0 ([1d8370a](https://github.com/salesforcecli/sf-plugins-core/commit/1d8370a9c9c2ef9b45aba38b8bea8d34fca1a7f9)) - - +- **deps:** bump @oclif/core from 3.19.6 to 3.23.0 ([1d8370a](https://github.com/salesforcecli/sf-plugins-core/commit/1d8370a9c9c2ef9b45aba38b8bea8d34fca1a7f9)) ## [7.1.14](https://github.com/salesforcecli/sf-plugins-core/compare/7.1.13...7.1.14) (2024-02-27) - ### Bug Fixes -* bump core to 6.6.0 ([58d2760](https://github.com/salesforcecli/sf-plugins-core/commit/58d2760481139a10b6b83e18c4fa9b42c8a8dcd5)) - - +- bump core to 6.6.0 ([58d2760](https://github.com/salesforcecli/sf-plugins-core/commit/58d2760481139a10b6b83e18c4fa9b42c8a8dcd5)) ## [7.1.13](https://github.com/salesforcecli/sf-plugins-core/compare/7.1.12...7.1.13) (2024-02-25) - ### Bug Fixes -* **deps:** bump @salesforce/core from 6.5.4 to 6.5.6 ([655048a](https://github.com/salesforcecli/sf-plugins-core/commit/655048aa7000a520307fc7ac826bdabe8c242d38)) - - +- **deps:** bump @salesforce/core from 6.5.4 to 6.5.6 ([655048a](https://github.com/salesforcecli/sf-plugins-core/commit/655048aa7000a520307fc7ac826bdabe8c242d38)) ## [7.1.12](https://github.com/salesforcecli/sf-plugins-core/compare/7.1.11...7.1.12) (2024-02-25) - ### Bug Fixes -* **deps:** bump @oclif/core from 3.19.2 to 3.19.6 ([2a134d1](https://github.com/salesforcecli/sf-plugins-core/commit/2a134d18ce18f96badf14dba042b2a1010ad843d)) - - +- **deps:** bump @oclif/core from 3.19.2 to 3.19.6 ([2a134d1](https://github.com/salesforcecli/sf-plugins-core/commit/2a134d18ce18f96badf14dba042b2a1010ad843d)) ## [7.1.11](https://github.com/salesforcecli/sf-plugins-core/compare/7.1.10...7.1.11) (2024-02-18) - ### Bug Fixes -* **deps:** bump @salesforce/core from 6.5.2 to 6.5.4 ([583997d](https://github.com/salesforcecli/sf-plugins-core/commit/583997d0ac117fefee276fd5792b49fe9aa7bb0c)) - - +- **deps:** bump @salesforce/core from 6.5.2 to 6.5.4 ([583997d](https://github.com/salesforcecli/sf-plugins-core/commit/583997d0ac117fefee276fd5792b49fe9aa7bb0c)) ## [7.1.10](https://github.com/salesforcecli/sf-plugins-core/compare/7.1.9...7.1.10) (2024-02-18) - ### Bug Fixes -* **deps:** bump @oclif/core from 3.19.1 to 3.19.2 ([2b624c6](https://github.com/salesforcecli/sf-plugins-core/commit/2b624c664315647934574af3592987b7836f3d13)) - - +- **deps:** bump @oclif/core from 3.19.1 to 3.19.2 ([2b624c6](https://github.com/salesforcecli/sf-plugins-core/commit/2b624c664315647934574af3592987b7836f3d13)) ## [7.1.9](https://github.com/salesforcecli/sf-plugins-core/compare/7.1.8...7.1.9) (2024-02-06) - ### Bug Fixes -* bump oclif/core ([#497](https://github.com/salesforcecli/sf-plugins-core/issues/497)) ([ebba3ac](https://github.com/salesforcecli/sf-plugins-core/commit/ebba3ac983a3b3e9de78a39aa6355f723a935bd5)), closes [/github.com/oclif/core/blob/main/CHANGELOG.md#3191-2024-02-06](https://github.com//github.com/oclif/core/blob/main/CHANGELOG.md/issues/3191-2024-02-06) - - +- bump oclif/core ([#497](https://github.com/salesforcecli/sf-plugins-core/issues/497)) ([ebba3ac](https://github.com/salesforcecli/sf-plugins-core/commit/ebba3ac983a3b3e9de78a39aa6355f723a935bd5)), closes [/github.com/oclif/core/blob/main/CHANGELOG.md#3191-2024-02-06](https://github.com//github.com/oclif/core/blob/main/CHANGELOG.md/issues/3191-2024-02-06) ## [7.1.8](https://github.com/salesforcecli/sf-plugins-core/compare/7.1.7...7.1.8) (2024-02-05) - ### Bug Fixes -* **deps:** bump @inquirer/confirm from 2.0.15 to 2.0.17 ([fcbb1c1](https://github.com/salesforcecli/sf-plugins-core/commit/fcbb1c1c750b9387acc89cab74190285647e4b14)) - - +- **deps:** bump @inquirer/confirm from 2.0.15 to 2.0.17 ([fcbb1c1](https://github.com/salesforcecli/sf-plugins-core/commit/fcbb1c1c750b9387acc89cab74190285647e4b14)) ## [7.1.7](https://github.com/salesforcecli/sf-plugins-core/compare/7.1.6...7.1.7) (2024-02-04) - ### Bug Fixes -* **deps:** bump @inquirer/password from 1.1.14 to 1.1.16 ([5700f4c](https://github.com/salesforcecli/sf-plugins-core/commit/5700f4ce1dd1f6f459325d1277be154cb8a8279c)) - - +- **deps:** bump @inquirer/password from 1.1.14 to 1.1.16 ([5700f4c](https://github.com/salesforcecli/sf-plugins-core/commit/5700f4ce1dd1f6f459325d1277be154cb8a8279c)) ## [7.1.6](https://github.com/salesforcecli/sf-plugins-core/compare/7.1.5...7.1.6) (2024-02-04) - ### Bug Fixes -* **deps:** bump @salesforce/core from 6.5.0 to 6.5.2 ([bcaad18](https://github.com/salesforcecli/sf-plugins-core/commit/bcaad1861656728f5d08a05e5889f375b339f6f6)) - - +- **deps:** bump @salesforce/core from 6.5.0 to 6.5.2 ([bcaad18](https://github.com/salesforcecli/sf-plugins-core/commit/bcaad1861656728f5d08a05e5889f375b339f6f6)) ## [7.1.5](https://github.com/salesforcecli/sf-plugins-core/compare/7.1.4...7.1.5) (2024-02-04) - ### Bug Fixes -* **deps:** bump @oclif/core from 3.18.1 to 3.18.2 ([3d66c60](https://github.com/salesforcecli/sf-plugins-core/commit/3d66c6063cb70c1e90675eb2ebd5a724e251d713)) - - +- **deps:** bump @oclif/core from 3.18.1 to 3.18.2 ([3d66c60](https://github.com/salesforcecli/sf-plugins-core/commit/3d66c6063cb70c1e90675eb2ebd5a724e251d713)) ## [7.1.4](https://github.com/salesforcecli/sf-plugins-core/compare/7.1.3...7.1.4) (2024-01-22) - ### Bug Fixes -* bump version of core to 6.5.0 ([1127b33](https://github.com/salesforcecli/sf-plugins-core/commit/1127b333decc35ee71e165e5d6f22d99e77f2610)) - - +- bump version of core to 6.5.0 ([1127b33](https://github.com/salesforcecli/sf-plugins-core/commit/1127b333decc35ee71e165e5d6f22d99e77f2610)) ## [7.1.3](https://github.com/salesforcecli/sf-plugins-core/compare/7.1.2...7.1.3) (2024-01-14) - ### Bug Fixes -* **deps:** bump @oclif/core from 3.16.0 to 3.18.1 ([4eb6d1e](https://github.com/salesforcecli/sf-plugins-core/commit/4eb6d1e349ab8bf39927fd6fedde1f918f981e31)) - - +- **deps:** bump @oclif/core from 3.16.0 to 3.18.1 ([4eb6d1e](https://github.com/salesforcecli/sf-plugins-core/commit/4eb6d1e349ab8bf39927fd6fedde1f918f981e31)) ## [7.1.2](https://github.com/salesforcecli/sf-plugins-core/compare/7.1.1...7.1.2) (2024-01-14) - ### Bug Fixes -* **deps:** bump @salesforce/core from 6.4.6 to 6.4.7 ([9e92dce](https://github.com/salesforcecli/sf-plugins-core/commit/9e92dceae70ca37ae30ed0f182cb97cf70513894)) - - +- **deps:** bump @salesforce/core from 6.4.6 to 6.4.7 ([9e92dce](https://github.com/salesforcecli/sf-plugins-core/commit/9e92dceae70ca37ae30ed0f182cb97cf70513894)) ## [7.1.1](https://github.com/salesforcecli/sf-plugins-core/compare/7.1.0...7.1.1) (2024-01-09) - ### Bug Fixes -* bump to latest core lib ([74241bf](https://github.com/salesforcecli/sf-plugins-core/commit/74241bf1fdbeaf7b23fc03e716135cf6a4561400)) - - +- bump to latest core lib ([74241bf](https://github.com/salesforcecli/sf-plugins-core/commit/74241bf1fdbeaf7b23fc03e716135cf6a4561400)) # [7.1.0](https://github.com/salesforcecli/sf-plugins-core/compare/7.0.0...7.1.0) (2024-01-09) - ### Features -* oclif error code handling ([61582b5](https://github.com/salesforcecli/sf-plugins-core/commit/61582b5612204eafc3fa75b23ad4190a22f40ee0)) - - +- oclif error code handling ([61582b5](https://github.com/salesforcecli/sf-plugins-core/commit/61582b5612204eafc3fa75b23ad4190a22f40ee0)) # [7.0.0](https://github.com/salesforcecli/sf-plugins-core/compare/5.0.13...7.0.0) (2024-01-05) - -* feat!: use current inquirer (#479) ([77e33ab](https://github.com/salesforcecli/sf-plugins-core/commit/77e33ab1a0a88389895f882653036ace4d20db80)), closes [#479](https://github.com/salesforcecli/sf-plugins-core/issues/479) - +- feat!: use current inquirer (#479) ([77e33ab](https://github.com/salesforcecli/sf-plugins-core/commit/77e33ab1a0a88389895f882653036ace4d20db80)), closes [#479](https://github.com/salesforcecli/sf-plugins-core/issues/479) ### BREAKING CHANGES -* ESM-only -* removes cross-cloud hooks (deployer, deauthorizer, etc) -* removes Prompter module -* remove option to barrel-import from Ux - -* refactor: changes from live code review with Mike +- ESM-only +- removes cross-cloud hooks (deployer, deauthorizer, etc) +- removes Prompter module +- remove option to barrel-import from Ux -* chore: bump oclif/core +- refactor: changes from live code review with Mike -* refactor: handing process error from QA +- chore: bump oclif/core -* refactor: rename prompt stub for consistency +- refactor: handing process error from QA -* docs: prompts +- refactor: rename prompt stub for consistency -* chore: correct chalk types for esm/v5 +- docs: prompts -* chore(release): 5.0.14-dev.0 [skip ci] +- chore: correct chalk types for esm/v5 -* refactor: move prompts to ux and export +- chore(release): 5.0.14-dev.0 [skip ci] -* test: add plugin-settings for xnuts +- refactor: move prompts to ux and export -* chore(release): 5.0.14-dev.1 [skip ci] +- test: add plugin-settings for xnuts -* refactor: restore exported namespace merge +- chore(release): 5.0.14-dev.1 [skip ci] -* chore(release): 5.0.14-dev.2 [skip ci] +- refactor: restore exported namespace merge -* docs: migration doc +- chore(release): 5.0.14-dev.2 [skip ci] -* docs: pr feedback - -* chore: set major version +- docs: migration doc +- docs: pr feedback +- chore: set major version ## [5.0.13](https://github.com/salesforcecli/sf-plugins-core/compare/5.0.12...5.0.13) (2023-12-24) - ### Bug Fixes -* **deps:** bump @oclif/core from 3.15.0 to 3.15.1 ([4bffa1e](https://github.com/salesforcecli/sf-plugins-core/commit/4bffa1e21f048f23edaf8200f8df2af2932751f0)) - - +- **deps:** bump @oclif/core from 3.15.0 to 3.15.1 ([4bffa1e](https://github.com/salesforcecli/sf-plugins-core/commit/4bffa1e21f048f23edaf8200f8df2af2932751f0)) ## [5.0.12](https://github.com/salesforcecli/sf-plugins-core/compare/5.0.11...5.0.12) (2023-12-17) - ### Bug Fixes -* **deps:** bump @oclif/core from 3.14.1 to 3.15.0 ([9ebc68b](https://github.com/salesforcecli/sf-plugins-core/commit/9ebc68bbf48ffff0f5e1df5d03a941399dbb84b9)) - - +- **deps:** bump @oclif/core from 3.14.1 to 3.15.0 ([9ebc68b](https://github.com/salesforcecli/sf-plugins-core/commit/9ebc68bbf48ffff0f5e1df5d03a941399dbb84b9)) ## [5.0.11](https://github.com/salesforcecli/sf-plugins-core/compare/5.0.10...5.0.11) (2023-12-17) - ### Bug Fixes -* **deps:** bump @salesforce/core from 6.2.2 to 6.4.1 ([2dbb56f](https://github.com/salesforcecli/sf-plugins-core/commit/2dbb56f27cffbae304ad3989d1b3b4177f80fa4d)) - - +- **deps:** bump @salesforce/core from 6.2.2 to 6.4.1 ([2dbb56f](https://github.com/salesforcecli/sf-plugins-core/commit/2dbb56f27cffbae304ad3989d1b3b4177f80fa4d)) ## [5.0.10](https://github.com/salesforcecli/sf-plugins-core/compare/5.0.9...5.0.10) (2023-12-14) - ### Bug Fixes -* allow zero default duration flags ([#470](https://github.com/salesforcecli/sf-plugins-core/issues/470)) ([fdc04b8](https://github.com/salesforcecli/sf-plugins-core/commit/fdc04b88bf45567b1b6476f807989a8b39936ed1)) - - +- allow zero default duration flags ([#470](https://github.com/salesforcecli/sf-plugins-core/issues/470)) ([fdc04b8](https://github.com/salesforcecli/sf-plugins-core/commit/fdc04b88bf45567b1b6476f807989a8b39936ed1)) ## [5.0.9](https://github.com/salesforcecli/sf-plugins-core/compare/5.0.8...5.0.9) (2023-12-14) - ### Bug Fixes -* check oclif exit code first ([#466](https://github.com/salesforcecli/sf-plugins-core/issues/466)) ([6ac36aa](https://github.com/salesforcecli/sf-plugins-core/commit/6ac36aacaaf67b6222c91584c367ef3c49c01069)) - - +- check oclif exit code first ([#466](https://github.com/salesforcecli/sf-plugins-core/issues/466)) ([6ac36aa](https://github.com/salesforcecli/sf-plugins-core/commit/6ac36aacaaf67b6222c91584c367ef3c49c01069)) ## [5.0.8](https://github.com/salesforcecli/sf-plugins-core/compare/5.0.7...5.0.8) (2023-12-09) - ### Bug Fixes -* **deps:** bump @oclif/core from 3.12.0 to 3.14.1 ([07586fd](https://github.com/salesforcecli/sf-plugins-core/commit/07586fda0b8e22a8f5c1b93a3d4f9708e22a62e0)) - - +- **deps:** bump @oclif/core from 3.12.0 to 3.14.1 ([07586fd](https://github.com/salesforcecli/sf-plugins-core/commit/07586fda0b8e22a8f5c1b93a3d4f9708e22a62e0)) ## [5.0.7](https://github.com/salesforcecli/sf-plugins-core/compare/5.0.6...5.0.7) (2023-12-07) - ### Bug Fixes -* preserve oclif exit code ([#460](https://github.com/salesforcecli/sf-plugins-core/issues/460)) ([8a3c370](https://github.com/salesforcecli/sf-plugins-core/commit/8a3c370096f970b7bac8e8dabe1384bc1239a441)) - - +- preserve oclif exit code ([#460](https://github.com/salesforcecli/sf-plugins-core/issues/460)) ([8a3c370](https://github.com/salesforcecli/sf-plugins-core/commit/8a3c370096f970b7bac8e8dabe1384bc1239a441)) ## [5.0.6](https://github.com/salesforcecli/sf-plugins-core/compare/5.0.5...5.0.6) (2023-12-06) - ### Bug Fixes -* **deps:** bump @salesforce/core from 6.2.0 to 6.2.2 ([#463](https://github.com/salesforcecli/sf-plugins-core/issues/463)) ([50ec705](https://github.com/salesforcecli/sf-plugins-core/commit/50ec7058542e22f3a167fcf41f848350618a5795)) - - +- **deps:** bump @salesforce/core from 6.2.0 to 6.2.2 ([#463](https://github.com/salesforcecli/sf-plugins-core/issues/463)) ([50ec705](https://github.com/salesforcecli/sf-plugins-core/commit/50ec7058542e22f3a167fcf41f848350618a5795)) ## [5.0.5](https://github.com/salesforcecli/sf-plugins-core/compare/5.0.4...5.0.5) (2023-12-01) - ### Bug Fixes -* **deps:** bump @oclif/core from 3.11.0 to 3.12.0 ([eb7289d](https://github.com/salesforcecli/sf-plugins-core/commit/eb7289ddbb4f60a1cdffe176badb58e14eb20cf3)) - - +- **deps:** bump @oclif/core from 3.11.0 to 3.12.0 ([eb7289d](https://github.com/salesforcecli/sf-plugins-core/commit/eb7289ddbb4f60a1cdffe176badb58e14eb20cf3)) ## [5.0.4](https://github.com/salesforcecli/sf-plugins-core/compare/5.0.3...5.0.4) (2023-11-26) - ### Bug Fixes -* **deps:** bump @salesforce/core from 6.1.3 to 6.2.0 ([23ee019](https://github.com/salesforcecli/sf-plugins-core/commit/23ee019ace63b3d6bf4c1752fd93d5cba78ec002)) - - +- **deps:** bump @salesforce/core from 6.1.3 to 6.2.0 ([23ee019](https://github.com/salesforcecli/sf-plugins-core/commit/23ee019ace63b3d6bf4c1752fd93d5cba78ec002)) ## [5.0.3](https://github.com/salesforcecli/sf-plugins-core/compare/5.0.2...5.0.3) (2023-11-21) - ### Bug Fixes -* docs about required flags that read from config ([#455](https://github.com/salesforcecli/sf-plugins-core/issues/455)) ([ca7b8d5](https://github.com/salesforcecli/sf-plugins-core/commit/ca7b8d52251665fba661a4412cff0a14001c1066)) - - +- docs about required flags that read from config ([#455](https://github.com/salesforcecli/sf-plugins-core/issues/455)) ([ca7b8d5](https://github.com/salesforcecli/sf-plugins-core/commit/ca7b8d52251665fba661a4412cff0a14001c1066)) ## [5.0.2](https://github.com/salesforcecli/sf-plugins-core/compare/5.0.1...5.0.2) (2023-11-19) - ### Bug Fixes -* **deps:** bump @salesforce/core from 6.1.0 to 6.1.3 ([6b2edde](https://github.com/salesforcecli/sf-plugins-core/commit/6b2eddeeae28291bc179e3f3f881475b78d52b58)) - - +- **deps:** bump @salesforce/core from 6.1.0 to 6.1.3 ([6b2edde](https://github.com/salesforcecli/sf-plugins-core/commit/6b2eddeeae28291bc179e3f3f881475b78d52b58)) ## [5.0.1](https://github.com/salesforcecli/sf-plugins-core/compare/4.1.3...5.0.1) (2023-11-15) - - ## [4.1.3](https://github.com/salesforcecli/sf-plugins-core/compare/4.1.2...4.1.3) (2023-11-15) - - ## [4.1.2](https://github.com/salesforcecli/sf-plugins-core/compare/4.1.1...4.1.2) (2023-11-13) - ### Bug Fixes -* **perf:** 2 fs ops in parallel ([#446](https://github.com/salesforcecli/sf-plugins-core/issues/446)) ([a6aa122](https://github.com/salesforcecli/sf-plugins-core/commit/a6aa12229e229a7bdc537187a7fa90bf5afaf4bc)) - - +- **perf:** 2 fs ops in parallel ([#446](https://github.com/salesforcecli/sf-plugins-core/issues/446)) ([a6aa122](https://github.com/salesforcecli/sf-plugins-core/commit/a6aa12229e229a7bdc537187a7fa90bf5afaf4bc)) ## [4.1.1](https://github.com/salesforcecli/sf-plugins-core/compare/4.1.0...4.1.1) (2023-11-10) - ### Bug Fixes -* add ctrl+c 130 listener ([#445](https://github.com/salesforcecli/sf-plugins-core/issues/445)) ([6b005cb](https://github.com/salesforcecli/sf-plugins-core/commit/6b005cb91c54956d44b9f0e8d6b895308c267118)) - - +- add ctrl+c 130 listener ([#445](https://github.com/salesforcecli/sf-plugins-core/issues/445)) ([6b005cb](https://github.com/salesforcecli/sf-plugins-core/commit/6b005cb91c54956d44b9f0e8d6b895308c267118)) # [4.1.0](https://github.com/salesforcecli/sf-plugins-core/compare/4.0.0...4.1.0) (2023-11-09) - ### Features -* export inquirer Separator ([#443](https://github.com/salesforcecli/sf-plugins-core/issues/443)) ([cb58076](https://github.com/salesforcecli/sf-plugins-core/commit/cb58076f8dcc7c2d8b273a450e9dfafa06d76426)) - - +- export inquirer Separator ([#443](https://github.com/salesforcecli/sf-plugins-core/issues/443)) ([cb58076](https://github.com/salesforcecli/sf-plugins-core/commit/cb58076f8dcc7c2d8b273a450e9dfafa06d76426)) # [4.0.0](https://github.com/salesforcecli/sf-plugins-core/compare/3.1.28...4.0.0) (2023-10-04) - - ## [3.1.28](https://github.com/salesforcecli/sf-plugins-core/compare/3.1.27...3.1.28) (2023-10-02) - ### Bug Fixes -* stop spinners on caught error ([c3242a7](https://github.com/salesforcecli/sf-plugins-core/commit/c3242a7127a2721eea60edad29f3ad72261a96e6)) - - +- stop spinners on caught error ([c3242a7](https://github.com/salesforcecli/sf-plugins-core/commit/c3242a7127a2721eea60edad29f3ad72261a96e6)) ## [3.1.27](https://github.com/salesforcecli/sf-plugins-core/compare/3.1.26...3.1.27) (2023-10-01) - ### Bug Fixes -* **deps:** bump @salesforce/kit from 3.0.11 to 3.0.13 ([2789a38](https://github.com/salesforcecli/sf-plugins-core/commit/2789a38bfefdec0edc6469d241a4e2eebbbcfdce)) - - +- **deps:** bump @salesforce/kit from 3.0.11 to 3.0.13 ([2789a38](https://github.com/salesforcecli/sf-plugins-core/commit/2789a38bfefdec0edc6469d241a4e2eebbbcfdce)) ## [3.1.26](https://github.com/salesforcecli/sf-plugins-core/compare/3.1.25...3.1.26) (2023-10-01) - ### Bug Fixes -* **deps:** bump @salesforce/core from 5.2.10 to 5.3.1 ([a8ddfae](https://github.com/salesforcecli/sf-plugins-core/commit/a8ddfaeb26af68cb64ba2ffd32a37a2036e28ce2)) - - +- **deps:** bump @salesforce/core from 5.2.10 to 5.3.1 ([a8ddfae](https://github.com/salesforcecli/sf-plugins-core/commit/a8ddfaeb26af68cb64ba2ffd32a37a2036e28ce2)) ## [3.1.25](https://github.com/salesforcecli/sf-plugins-core/compare/3.1.24...3.1.25) (2023-09-28) - ### Bug Fixes -* **deps:** bump get-func-name from 2.0.0 to 2.0.2 ([7437cf0](https://github.com/salesforcecli/sf-plugins-core/commit/7437cf0ead86fc40cf1eed1b95859f22c683cf38)) - - +- **deps:** bump get-func-name from 2.0.0 to 2.0.2 ([7437cf0](https://github.com/salesforcecli/sf-plugins-core/commit/7437cf0ead86fc40cf1eed1b95859f22c683cf38)) ## [3.1.24](https://github.com/salesforcecli/sf-plugins-core/compare/3.1.23...3.1.24) (2023-09-24) - ### Bug Fixes -* **deps:** bump @salesforce/core from 5.2.9 to 5.2.10 ([dcabda3](https://github.com/salesforcecli/sf-plugins-core/commit/dcabda3e3573883ae6396e961528602020931442)) - - +- **deps:** bump @salesforce/core from 5.2.9 to 5.2.10 ([dcabda3](https://github.com/salesforcecli/sf-plugins-core/commit/dcabda3e3573883ae6396e961528602020931442)) ## [3.1.23](https://github.com/salesforcecli/sf-plugins-core/compare/3.1.22...3.1.23) (2023-09-17) - ### Bug Fixes -* **deps:** bump @salesforce/core from 5.2.7 to 5.2.9 ([143aa88](https://github.com/salesforcecli/sf-plugins-core/commit/143aa88f2821b6f6bc40e437347fdd653368e3f3)) - - +- **deps:** bump @salesforce/core from 5.2.7 to 5.2.9 ([143aa88](https://github.com/salesforcecli/sf-plugins-core/commit/143aa88f2821b6f6bc40e437347fdd653368e3f3)) ## [3.1.22](https://github.com/salesforcecli/sf-plugins-core/compare/3.1.21...3.1.22) (2023-09-03) - ### Bug Fixes -* **deps:** bump @salesforce/core from 5.2.1 to 5.2.6 ([3de9cb1](https://github.com/salesforcecli/sf-plugins-core/commit/3de9cb1401a23e139d505e566555df1393b29272)) - - +- **deps:** bump @salesforce/core from 5.2.1 to 5.2.6 ([3de9cb1](https://github.com/salesforcecli/sf-plugins-core/commit/3de9cb1401a23e139d505e566555df1393b29272)) ## [3.1.21](https://github.com/salesforcecli/sf-plugins-core/compare/3.1.20...3.1.21) (2023-09-03) - ### Bug Fixes -* **deps:** bump @oclif/core from 2.12.0 to 2.15.0 ([45a069c](https://github.com/salesforcecli/sf-plugins-core/commit/45a069c2e5f4e41c18069de99eec8656917a6ef3)) - - +- **deps:** bump @oclif/core from 2.12.0 to 2.15.0 ([45a069c](https://github.com/salesforcecli/sf-plugins-core/commit/45a069c2e5f4e41c18069de99eec8656917a6ef3)) ## [3.1.20](https://github.com/salesforcecli/sf-plugins-core/compare/3.1.19...3.1.20) (2023-08-29) - ### Bug Fixes -* **deps:** bump @salesforce/kit from 3.0.9 to 3.0.11 ([903d3f9](https://github.com/salesforcecli/sf-plugins-core/commit/903d3f99206bfd987d6f36b4d67f534fab15a48c)) - - +- **deps:** bump @salesforce/kit from 3.0.9 to 3.0.11 ([903d3f9](https://github.com/salesforcecli/sf-plugins-core/commit/903d3f99206bfd987d6f36b4d67f534fab15a48c)) ## [3.1.19](https://github.com/salesforcecli/sf-plugins-core/compare/3.1.18...3.1.19) (2023-08-28) - ### Bug Fixes -* bump oclif/core ([d1e15a8](https://github.com/salesforcecli/sf-plugins-core/commit/d1e15a8eb1cf68abdbe7abb72b3bbd3b97dde5e8)) - - +- bump oclif/core ([d1e15a8](https://github.com/salesforcecli/sf-plugins-core/commit/d1e15a8eb1cf68abdbe7abb72b3bbd3b97dde5e8)) ## [3.1.18](https://github.com/salesforcecli/sf-plugins-core/compare/3.1.17...3.1.18) (2023-08-23) - ### Bug Fixes -* use getPluginsList to prep for oclif/core v3 ([#377](https://github.com/salesforcecli/sf-plugins-core/issues/377)) ([716f4f8](https://github.com/salesforcecli/sf-plugins-core/commit/716f4f8f615cad1d5ede54b4ba458c2517bf8297)) - - +- use getPluginsList to prep for oclif/core v3 ([#377](https://github.com/salesforcecli/sf-plugins-core/issues/377)) ([716f4f8](https://github.com/salesforcecli/sf-plugins-core/commit/716f4f8f615cad1d5ede54b4ba458c2517bf8297)) ## [3.1.17](https://github.com/salesforcecli/sf-plugins-core/compare/3.1.16...3.1.17) (2023-08-20) - ### Bug Fixes -* **deps:** bump @salesforce/ts-types from 2.0.6 to 2.0.7 ([1f572f2](https://github.com/salesforcecli/sf-plugins-core/commit/1f572f240a4220f723dfff4efb09612069a13079)) - - +- **deps:** bump @salesforce/ts-types from 2.0.6 to 2.0.7 ([1f572f2](https://github.com/salesforcecli/sf-plugins-core/commit/1f572f240a4220f723dfff4efb09612069a13079)) ## [3.1.16](https://github.com/salesforcecli/sf-plugins-core/compare/3.1.15...3.1.16) (2023-08-20) - ### Bug Fixes -* **deps:** bump @salesforce/core from 5.2.0 to 5.2.1 ([bf2ba9d](https://github.com/salesforcecli/sf-plugins-core/commit/bf2ba9d930c6bc64bcb8b40cf037efae4d462e21)) - - +- **deps:** bump @salesforce/core from 5.2.0 to 5.2.1 ([bf2ba9d](https://github.com/salesforcecli/sf-plugins-core/commit/bf2ba9d930c6bc64bcb8b40cf037efae4d462e21)) ## [3.1.15](https://github.com/salesforcecli/sf-plugins-core/compare/3.1.14...3.1.15) (2023-08-13) - ### Bug Fixes -* **deps:** bump @salesforce/kit from 3.0.8 to 3.0.9 ([f620678](https://github.com/salesforcecli/sf-plugins-core/commit/f620678e90a099f3f2febe2501ab8ac58035ab01)) - - +- **deps:** bump @salesforce/kit from 3.0.8 to 3.0.9 ([f620678](https://github.com/salesforcecli/sf-plugins-core/commit/f620678e90a099f3f2febe2501ab8ac58035ab01)) ## [3.1.14](https://github.com/salesforcecli/sf-plugins-core/compare/3.1.13...3.1.14) (2023-08-04) - - ## [3.1.13-dev.0](https://github.com/salesforcecli/sf-plugins-core/compare/3.1.12...3.1.13-dev.0) (2023-07-27) - ### Bug Fixes -* bump sfdx-core to v5 ([74a7a85](https://github.com/salesforcecli/sf-plugins-core/commit/74a7a855910af0d27b2f2f745d59b76f493cbb77)) - - +- bump sfdx-core to v5 ([74a7a85](https://github.com/salesforcecli/sf-plugins-core/commit/74a7a855910af0d27b2f2f745d59b76f493cbb77)) ## [3.1.13](https://github.com/salesforcecli/sf-plugins-core/compare/3.1.13-dev.0...3.1.13) (2023-07-31) - ### Bug Fixes -* **deps:** bump @oclif/core from 2.9.4 to 2.11.1 ([8189e89](https://github.com/salesforcecli/sf-plugins-core/commit/8189e8910844c58825a0926589348794d6af52b3)) - - +- **deps:** bump @oclif/core from 2.9.4 to 2.11.1 ([8189e89](https://github.com/salesforcecli/sf-plugins-core/commit/8189e8910844c58825a0926589348794d6af52b3)) ## [3.1.13-dev.0](https://github.com/salesforcecli/sf-plugins-core/compare/3.1.12...3.1.13-dev.0) (2023-07-27) - ### Bug Fixes -* bump sfdx-core to v5 ([74a7a85](https://github.com/salesforcecli/sf-plugins-core/commit/74a7a855910af0d27b2f2f745d59b76f493cbb77)) - - +- bump sfdx-core to v5 ([74a7a85](https://github.com/salesforcecli/sf-plugins-core/commit/74a7a855910af0d27b2f2f745d59b76f493cbb77)) ## [3.1.12](https://github.com/salesforcecli/sf-plugins-core/compare/3.1.11...3.1.12) (2023-07-23) - ### Bug Fixes -* **deps:** bump @oclif/core from 2.9.3 to 2.9.4 ([4b88222](https://github.com/salesforcecli/sf-plugins-core/commit/4b882229e193c105bb7874e1d36f6b1e141fe06b)) - - +- **deps:** bump @oclif/core from 2.9.3 to 2.9.4 ([4b88222](https://github.com/salesforcecli/sf-plugins-core/commit/4b882229e193c105bb7874e1d36f6b1e141fe06b)) ## [3.1.11](https://github.com/salesforcecli/sf-plugins-core/compare/3.1.10...3.1.11) (2023-07-23) - ### Bug Fixes -* **deps:** bump @salesforce/kit from 3.0.5 to 3.0.6 ([03713bc](https://github.com/salesforcecli/sf-plugins-core/commit/03713bc171d5f2212b389e4c41ac0b572dc940d7)) - - +- **deps:** bump @salesforce/kit from 3.0.5 to 3.0.6 ([03713bc](https://github.com/salesforcecli/sf-plugins-core/commit/03713bc171d5f2212b389e4c41ac0b572dc940d7)) ## [3.1.10](https://github.com/salesforcecli/sf-plugins-core/compare/3.1.9...3.1.10) (2023-07-18) - ### Bug Fixes -* **deps:** bump @salesforce/core from 4.3.10 to 4.3.11 ([4661225](https://github.com/salesforcecli/sf-plugins-core/commit/4661225549588806131cab76c701ef01fa63b0f0)) - - +- **deps:** bump @salesforce/core from 4.3.10 to 4.3.11 ([4661225](https://github.com/salesforcecli/sf-plugins-core/commit/4661225549588806131cab76c701ef01fa63b0f0)) ## [3.1.9](https://github.com/salesforcecli/sf-plugins-core/compare/3.1.8...3.1.9) (2023-07-17) - ### Bug Fixes -* **deps:** remove hooks docs, add docs for stubUx functions, bump deps ([#347](https://github.com/salesforcecli/sf-plugins-core/issues/347)) ([765fc17](https://github.com/salesforcecli/sf-plugins-core/commit/765fc1759c8ca20c92d8b1e88686e4d0fdc5296f)) - - +- **deps:** remove hooks docs, add docs for stubUx functions, bump deps ([#347](https://github.com/salesforcecli/sf-plugins-core/issues/347)) ([765fc17](https://github.com/salesforcecli/sf-plugins-core/commit/765fc1759c8ca20c92d8b1e88686e4d0fdc5296f)) ## [3.1.8](https://github.com/salesforcecli/sf-plugins-core/compare/3.1.7...3.1.8) (2023-07-16) - ### Bug Fixes -* **deps:** bump @oclif/core from 2.8.11 to 2.9.3 ([8c4d954](https://github.com/salesforcecli/sf-plugins-core/commit/8c4d954a005e19ef0f1fa6244c61c57f57c6431d)) +- **deps:** bump @oclif/core from 2.8.11 to 2.9.3 ([8c4d954](https://github.com/salesforcecli/sf-plugins-core/commit/8c4d954a005e19ef0f1fa6244c61c57f57c6431d)) +## [3.1.7](https://github.com/salesforcecli/sf-plugins-core/compare/3.1.6...3.1.7) (2023-07-11) +### Bug Fixes -## [3.1.7](https://github.com/salesforcecli/sf-plugins-core/compare/3.1.6...3.1.7) (2023-07-11) +- **deps:** bump semver from 5.7.1 to 5.7.2 ([103c4b9](https://github.com/salesforcecli/sf-plugins-core/commit/103c4b94d5c217bb26cad4b9e6279aa9d2a91b68)) +## [3.1.6](https://github.com/salesforcecli/sf-plugins-core/compare/3.1.5...3.1.6) (2023-07-09) ### Bug Fixes -* **deps:** bump semver from 5.7.1 to 5.7.2 ([103c4b9](https://github.com/salesforcecli/sf-plugins-core/commit/103c4b94d5c217bb26cad4b9e6279aa9d2a91b68)) +- **deps:** bump @salesforce/core from 4.3.2 to 4.3.8 ([f600baf](https://github.com/salesforcecli/sf-plugins-core/commit/f600baf48925ce91c6e27969e48c3907ac7e7b43)) +## [3.1.5](https://github.com/salesforcecli/sf-plugins-core/compare/3.1.4...3.1.5) (2023-07-09) +### Bug Fixes -## [3.1.6](https://github.com/salesforcecli/sf-plugins-core/compare/3.1.5...3.1.6) (2023-07-09) +- **deps:** bump @salesforce/kit from 3.0.3 to 3.0.4 ([8793632](https://github.com/salesforcecli/sf-plugins-core/commit/879363260f5b1cb80ea56a1a1fd455201fe96c66)) +## [3.1.4](https://github.com/salesforcecli/sf-plugins-core/compare/3.1.3...3.1.4) (2023-07-03) ### Bug Fixes -* **deps:** bump @salesforce/core from 4.3.2 to 4.3.8 ([f600baf](https://github.com/salesforcecli/sf-plugins-core/commit/f600baf48925ce91c6e27969e48c3907ac7e7b43)) +- **deps:** bump @oclif/core from 2.8.7 to 2.8.11 ([78059e7](https://github.com/salesforcecli/sf-plugins-core/commit/78059e7c08afbf0d0173c65914d9ccabc50914e9)) +## [3.1.3](https://github.com/salesforcecli/sf-plugins-core/compare/3.1.2...3.1.3) (2023-06-25) +### Bug Fixes -## [3.1.5](https://github.com/salesforcecli/sf-plugins-core/compare/3.1.4...3.1.5) (2023-07-09) +- **deps:** bump @salesforce/core from 4.3.1 to 4.3.2 ([e6f08a3](https://github.com/salesforcecli/sf-plugins-core/commit/e6f08a3676837f28098a7dcb4c53fbf6fb03f5f8)) +## [3.1.2](https://github.com/salesforcecli/sf-plugins-core/compare/3.1.1...3.1.2) (2023-06-18) ### Bug Fixes -* **deps:** bump @salesforce/kit from 3.0.3 to 3.0.4 ([8793632](https://github.com/salesforcecli/sf-plugins-core/commit/879363260f5b1cb80ea56a1a1fd455201fe96c66)) +- **deps:** bump @oclif/core from 2.8.6 to 2.8.7 ([d30f819](https://github.com/salesforcecli/sf-plugins-core/commit/d30f819f1478c9fcaeb5ea25804f2694c04c817a)) +## [3.1.1](https://github.com/salesforcecli/sf-plugins-core/compare/3.1.0...3.1.1) (2023-06-18) +### Bug Fixes -## [3.1.4](https://github.com/salesforcecli/sf-plugins-core/compare/3.1.3...3.1.4) (2023-07-03) +- **deps:** bump @salesforce/core from 4.3.0 to 4.3.1 ([636d890](https://github.com/salesforcecli/sf-plugins-core/commit/636d890c79ef2addee4cb4fa1c7d4b3ca381595d)) +# [3.1.0](https://github.com/salesforcecli/sf-plugins-core/compare/3.0.4...3.1.0) (2023-06-13) ### Bug Fixes -* **deps:** bump @oclif/core from 2.8.7 to 2.8.11 ([78059e7](https://github.com/salesforcecli/sf-plugins-core/commit/78059e7c08afbf0d0173c65914d9ccabc50914e9)) - - - -## [3.1.3](https://github.com/salesforcecli/sf-plugins-core/compare/3.1.2...3.1.3) (2023-06-25) - - -### Bug Fixes - -* **deps:** bump @salesforce/core from 4.3.1 to 4.3.2 ([e6f08a3](https://github.com/salesforcecli/sf-plugins-core/commit/e6f08a3676837f28098a7dcb4c53fbf6fb03f5f8)) - - - -## [3.1.2](https://github.com/salesforcecli/sf-plugins-core/compare/3.1.1...3.1.2) (2023-06-18) - - -### Bug Fixes - -* **deps:** bump @oclif/core from 2.8.6 to 2.8.7 ([d30f819](https://github.com/salesforcecli/sf-plugins-core/commit/d30f819f1478c9fcaeb5ea25804f2694c04c817a)) - - - -## [3.1.1](https://github.com/salesforcecli/sf-plugins-core/compare/3.1.0...3.1.1) (2023-06-18) - - -### Bug Fixes - -* **deps:** bump @salesforce/core from 4.3.0 to 4.3.1 ([636d890](https://github.com/salesforcecli/sf-plugins-core/commit/636d890c79ef2addee4cb4fa1c7d4b3ca381595d)) - - - -# [3.1.0](https://github.com/salesforcecli/sf-plugins-core/compare/3.0.4...3.1.0) (2023-06-13) - - -### Bug Fixes - -* bump versions of kit and core ([0dfdabd](https://github.com/salesforcecli/sf-plugins-core/commit/0dfdabdd00905a6d9022a20be6007882a07e90f2)) - +- bump versions of kit and core ([0dfdabd](https://github.com/salesforcecli/sf-plugins-core/commit/0dfdabdd00905a6d9022a20be6007882a07e90f2)) ### Features -* smarter progress defaults, including noTTY ([2ce7882](https://github.com/salesforcecli/sf-plugins-core/commit/2ce7882d0eb0d300321866227793f5cbffc33016)) - - +- smarter progress defaults, including noTTY ([2ce7882](https://github.com/salesforcecli/sf-plugins-core/commit/2ce7882d0eb0d300321866227793f5cbffc33016)) ## [3.0.4](https://github.com/salesforcecli/sf-plugins-core/compare/3.0.3...3.0.4) (2023-06-08) - ### Bug Fixes -* don't truncate tables by default ([2115fe7](https://github.com/salesforcecli/sf-plugins-core/commit/2115fe78b0d9180bf442082b2853fb72c0aa74b7)) - - +- don't truncate tables by default ([2115fe7](https://github.com/salesforcecli/sf-plugins-core/commit/2115fe78b0d9180bf442082b2853fb72c0aa74b7)) ## [3.0.3](https://github.com/salesforcecli/sf-plugins-core/compare/3.0.2...3.0.3) (2023-06-06) - ### Bug Fixes -* **deps:** bump @salesforce/core from 4.1.0 to 4.1.2 ([415a06a](https://github.com/salesforcecli/sf-plugins-core/commit/415a06a29fbe31ccbbafeefc654bfb381000eb5a)) - - +- **deps:** bump @salesforce/core from 4.1.0 to 4.1.2 ([415a06a](https://github.com/salesforcecli/sf-plugins-core/commit/415a06a29fbe31ccbbafeefc654bfb381000eb5a)) ## [3.0.2](https://github.com/salesforcecli/sf-plugins-core/compare/3.0.1...3.0.2) (2023-05-30) - - ## [3.0.1](https://github.com/salesforcecli/sf-plugins-core/compare/2.4.3...3.0.1) (2023-05-22) - - ## [2.4.3](https://github.com/salesforcecli/sf-plugins-core/compare/2.4.2...2.4.3) (2023-05-14) - ### Bug Fixes -* **deps:** bump @salesforce/core from 3.36.0 to 3.36.1 ([aac76cd](https://github.com/salesforcecli/sf-plugins-core/commit/aac76cda0cd0c4cfa3ddea3675bc41928f09e132)) - - +- **deps:** bump @salesforce/core from 3.36.0 to 3.36.1 ([aac76cd](https://github.com/salesforcecli/sf-plugins-core/commit/aac76cda0cd0c4cfa3ddea3675bc41928f09e132)) ## [2.4.2](https://github.com/salesforcecli/sf-plugins-core/compare/2.4.1...2.4.2) (2023-05-04) - ### Bug Fixes -* sf flag default values don't always appear in help text ([#288](https://github.com/salesforcecli/sf-plugins-core/issues/288)) ([cf4f915](https://github.com/salesforcecli/sf-plugins-core/commit/cf4f915ee835f4b959a9107d1c61ab44cb0096b3)) - - +- sf flag default values don't always appear in help text ([#288](https://github.com/salesforcecli/sf-plugins-core/issues/288)) ([cf4f915](https://github.com/salesforcecli/sf-plugins-core/commit/cf4f915ee835f4b959a9107d1c61ab44cb0096b3)) ## [2.4.1](https://github.com/salesforcecli/sf-plugins-core/compare/2.4.0...2.4.1) (2023-05-04) - ### Bug Fixes -* nicer error messages for duration min/max violations ([9ec87e6](https://github.com/salesforcecli/sf-plugins-core/commit/9ec87e633c7b00fab6e1f1b946ecde15035ccb41)) - - +- nicer error messages for duration min/max violations ([9ec87e6](https://github.com/salesforcecli/sf-plugins-core/commit/9ec87e633c7b00fab6e1f1b946ecde15035ccb41)) # [2.4.0](https://github.com/salesforcecli/sf-plugins-core/compare/2.3.0...2.4.0) (2023-04-28) - ### Bug Fixes -* support setting json = true via env ([a02f269](https://github.com/salesforcecli/sf-plugins-core/commit/a02f2698d9d8fd650ecf33bfb311403fb9c71a11)) - +- support setting json = true via env ([a02f269](https://github.com/salesforcecli/sf-plugins-core/commit/a02f2698d9d8fd650ecf33bfb311403fb9c71a11)) ### Features -* support json env in any case ([a6d02bf](https://github.com/salesforcecli/sf-plugins-core/commit/a6d02bf57820b0b70da8de5281017d370c7907a3)) - - +- support json env in any case ([a6d02bf](https://github.com/salesforcecli/sf-plugins-core/commit/a6d02bf57820b0b70da8de5281017d370c7907a3)) # [2.3.0](https://github.com/salesforcecli/sf-plugins-core/compare/2.2.11...2.3.0) (2023-04-28) - ### Features -* one config aggregator ([#274](https://github.com/salesforcecli/sf-plugins-core/issues/274)) ([169805a](https://github.com/salesforcecli/sf-plugins-core/commit/169805ab6491a807477bfb8688dbd5845c8508c4)) - - +- one config aggregator ([#274](https://github.com/salesforcecli/sf-plugins-core/issues/274)) ([169805a](https://github.com/salesforcecli/sf-plugins-core/commit/169805ab6491a807477bfb8688dbd5845c8508c4)) ## [2.2.11](https://github.com/salesforcecli/sf-plugins-core/compare/2.2.10...2.2.11) (2023-04-27) - ### Bug Fixes -* add more error properties to support push errors ([b39ada3](https://github.com/salesforcecli/sf-plugins-core/commit/b39ada36d2df142f18363951f38c84758ed9bb6e)) - - +- add more error properties to support push errors ([b39ada3](https://github.com/salesforcecli/sf-plugins-core/commit/b39ada36d2df142f18363951f38c84758ed9bb6e)) ## [2.2.10](https://github.com/salesforcecli/sf-plugins-core/compare/2.2.9...2.2.10) (2023-04-24) - ### Bug Fixes -* emit sfCommandError event ([#240](https://github.com/salesforcecli/sf-plugins-core/issues/240)) ([ac385c0](https://github.com/salesforcecli/sf-plugins-core/commit/ac385c0bc16da5c50e53a8d39f582e592f5a1ed3)) - - +- emit sfCommandError event ([#240](https://github.com/salesforcecli/sf-plugins-core/issues/240)) ([ac385c0](https://github.com/salesforcecli/sf-plugins-core/commit/ac385c0bc16da5c50e53a8d39f582e592f5a1ed3)) ## [2.2.9](https://github.com/salesforcecli/sf-plugins-core/compare/2.2.8...2.2.9) (2023-04-19) - - ## [2.2.6-beta.5](https://github.com/salesforcecli/sf-plugins-core/compare/2.2.6-beta.4...2.2.6-beta.5) (2023-03-29) - ### Bug Fixes -* onRelease flow needs dist tag ([59e02a6](https://github.com/salesforcecli/sf-plugins-core/commit/59e02a606ba68bf00697d10340dac40c8557f0b0)) - - +- onRelease flow needs dist tag ([59e02a6](https://github.com/salesforcecli/sf-plugins-core/commit/59e02a606ba68bf00697d10340dac40c8557f0b0)) ## [2.2.6-beta.4](https://github.com/salesforcecli/sf-plugins-core/compare/2.2.6-beta.3...2.2.6-beta.4) (2023-03-29) - ### Bug Fixes -* use context.options ([9d55ab6](https://github.com/salesforcecli/sf-plugins-core/commit/9d55ab65cec49c493b11fc6c595527dab3023ec1)) - - +- use context.options ([9d55ab6](https://github.com/salesforcecli/sf-plugins-core/commit/9d55ab65cec49c493b11fc6c595527dab3023ec1)) ## [2.2.6-beta.3](https://github.com/salesforcecli/sf-plugins-core/compare/2.2.6-beta.2...2.2.6-beta.3) (2023-03-29) - ### Bug Fixes -* bump core ([256ddc9](https://github.com/salesforcecli/sf-plugins-core/commit/256ddc92c861c2220e94d10573911c7a72efc8b8)) - - +- bump core ([256ddc9](https://github.com/salesforcecli/sf-plugins-core/commit/256ddc92c861c2220e94d10573911c7a72efc8b8)) ## [2.2.6-beta.2](https://github.com/salesforcecli/sf-plugins-core/compare/2.2.5...2.2.6-beta.2) (2023-03-29) - ### Bug Fixes -* use ability to omit default and defaultHelp from manifest ([ad6be7c](https://github.com/salesforcecli/sf-plugins-core/commit/ad6be7cff5d5d8b3317ee7e104502ac44c106f18)) - - +- use ability to omit default and defaultHelp from manifest ([ad6be7c](https://github.com/salesforcecli/sf-plugins-core/commit/ad6be7cff5d5d8b3317ee7e104502ac44c106f18)) ## [2.2.8](https://github.com/salesforcecli/sf-plugins-core/compare/2.2.7...2.2.8) (2023-04-16) - ### Bug Fixes -* **deps:** bump @oclif/core from 2.8.0 to 2.8.2 ([fa99f51](https://github.com/salesforcecli/sf-plugins-core/commit/fa99f514b7de1f0ecf5896dc93cbe96cdf4a36db)) - - +- **deps:** bump @oclif/core from 2.8.0 to 2.8.2 ([fa99f51](https://github.com/salesforcecli/sf-plugins-core/commit/fa99f514b7de1f0ecf5896dc93cbe96cdf4a36db)) ## [2.2.7](https://github.com/salesforcecli/sf-plugins-core/compare/2.2.6...2.2.7) (2023-04-02) - ### Bug Fixes -* **deps:** bump @salesforce/core from 3.34.1 to 3.34.6 ([efbc49d](https://github.com/salesforcecli/sf-plugins-core/commit/efbc49d4c46be8f9486299342f8796bb902676c5)) - - +- **deps:** bump @salesforce/core from 3.34.1 to 3.34.6 ([efbc49d](https://github.com/salesforcecli/sf-plugins-core/commit/efbc49d4c46be8f9486299342f8796bb902676c5)) ## [2.2.6](https://github.com/salesforcecli/sf-plugins-core/compare/2.2.6-beta.5...2.2.6) (2023-04-02) - ### Bug Fixes -* **deps:** bump @oclif/core from 2.7.1 to 2.8.0 ([580c9c7](https://github.com/salesforcecli/sf-plugins-core/commit/580c9c74f6cfd99004f2f6df0ed497cdaeadbb6c)) - - +- **deps:** bump @oclif/core from 2.7.1 to 2.8.0 ([580c9c7](https://github.com/salesforcecli/sf-plugins-core/commit/580c9c74f6cfd99004f2f6df0ed497cdaeadbb6c)) ## [2.2.6-beta.5](https://github.com/salesforcecli/sf-plugins-core/compare/2.2.6-beta.4...2.2.6-beta.5) (2023-03-29) - ### Bug Fixes -* onRelease flow needs dist tag ([59e02a6](https://github.com/salesforcecli/sf-plugins-core/commit/59e02a606ba68bf00697d10340dac40c8557f0b0)) - - +- onRelease flow needs dist tag ([59e02a6](https://github.com/salesforcecli/sf-plugins-core/commit/59e02a606ba68bf00697d10340dac40c8557f0b0)) ## [2.2.6-beta.4](https://github.com/salesforcecli/sf-plugins-core/compare/2.2.6-beta.3...2.2.6-beta.4) (2023-03-29) - ### Bug Fixes -* use context.options ([9d55ab6](https://github.com/salesforcecli/sf-plugins-core/commit/9d55ab65cec49c493b11fc6c595527dab3023ec1)) - - +- use context.options ([9d55ab6](https://github.com/salesforcecli/sf-plugins-core/commit/9d55ab65cec49c493b11fc6c595527dab3023ec1)) ## [2.2.6-beta.3](https://github.com/salesforcecli/sf-plugins-core/compare/2.2.6-beta.2...2.2.6-beta.3) (2023-03-29) - ### Bug Fixes -* bump core ([256ddc9](https://github.com/salesforcecli/sf-plugins-core/commit/256ddc92c861c2220e94d10573911c7a72efc8b8)) - - +- bump core ([256ddc9](https://github.com/salesforcecli/sf-plugins-core/commit/256ddc92c861c2220e94d10573911c7a72efc8b8)) ## [2.2.6-beta.2](https://github.com/salesforcecli/sf-plugins-core/compare/2.2.5...2.2.6-beta.2) (2023-03-29) - ### Bug Fixes -* use ability to omit default and defaultHelp from manifest ([ad6be7c](https://github.com/salesforcecli/sf-plugins-core/commit/ad6be7cff5d5d8b3317ee7e104502ac44c106f18)) - - +- use ability to omit default and defaultHelp from manifest ([ad6be7c](https://github.com/salesforcecli/sf-plugins-core/commit/ad6be7cff5d5d8b3317ee7e104502ac44c106f18)) ## [2.2.5](https://github.com/salesforcecli/sf-plugins-core/compare/2.2.4...2.2.5) (2023-03-19) - ### Bug Fixes -* **deps:** bump @salesforce/core from 3.33.5 to 3.34.1 ([b17fbe2](https://github.com/salesforcecli/sf-plugins-core/commit/b17fbe2c6dbe4143a80c05dda7768f703882c628)) - - +- **deps:** bump @salesforce/core from 3.33.5 to 3.34.1 ([b17fbe2](https://github.com/salesforcecli/sf-plugins-core/commit/b17fbe2c6dbe4143a80c05dda7768f703882c628)) ## [2.2.4](https://github.com/salesforcecli/sf-plugins-core/compare/2.2.3...2.2.4) (2023-03-01) - ### Bug Fixes -* add skipOclifErrorHandling to errors thrown from SfCommand.catch ([#234](https://github.com/salesforcecli/sf-plugins-core/issues/234)) ([82660ef](https://github.com/salesforcecli/sf-plugins-core/commit/82660efe0bbeea085ec4549c7a2407eee87154d5)) - - +- add skipOclifErrorHandling to errors thrown from SfCommand.catch ([#234](https://github.com/salesforcecli/sf-plugins-core/issues/234)) ([82660ef](https://github.com/salesforcecli/sf-plugins-core/commit/82660efe0bbeea085ec4549c7a2407eee87154d5)) ## [2.2.3](https://github.com/salesforcecli/sf-plugins-core/compare/2.2.2...2.2.3) (2023-02-24) - ### Bug Fixes -* add logJson stub ([5f84c48](https://github.com/salesforcecli/sf-plugins-core/commit/5f84c489f3365df71a6bc89fe7cdfa3129b38dc4)) - - +- add logJson stub ([5f84c48](https://github.com/salesforcecli/sf-plugins-core/commit/5f84c489f3365df71a6bc89fe7cdfa3129b38dc4)) ## [2.2.2](https://github.com/salesforcecli/sf-plugins-core/compare/2.2.1...2.2.2) (2023-02-23) - ### Bug Fixes -* throw SfError from catch ([#230](https://github.com/salesforcecli/sf-plugins-core/issues/230)) ([1eb1c17](https://github.com/salesforcecli/sf-plugins-core/commit/1eb1c1715ceef59ee424677a351607ae0568b513)) - - +- throw SfError from catch ([#230](https://github.com/salesforcecli/sf-plugins-core/issues/230)) ([1eb1c17](https://github.com/salesforcecli/sf-plugins-core/commit/1eb1c1715ceef59ee424677a351607ae0568b513)) ## [2.2.1](https://github.com/salesforcecli/sf-plugins-core/compare/2.2.0...2.2.1) (2023-02-21) - ### Bug Fixes -* throw from catch ([#229](https://github.com/salesforcecli/sf-plugins-core/issues/229)) ([6dcb16f](https://github.com/salesforcecli/sf-plugins-core/commit/6dcb16f5cc662a07fb2217ffc5401c7ff7a14d61)) - - +- throw from catch ([#229](https://github.com/salesforcecli/sf-plugins-core/issues/229)) ([6dcb16f](https://github.com/salesforcecli/sf-plugins-core/commit/6dcb16f5cc662a07fb2217ffc5401c7ff7a14d61)) # [2.2.0](https://github.com/salesforcecli/sf-plugins-core/compare/2.1.3...2.2.0) (2023-02-20) - ### Features -* export Spinner and remove console.error ([#223](https://github.com/salesforcecli/sf-plugins-core/issues/223)) ([04475a0](https://github.com/salesforcecli/sf-plugins-core/commit/04475a0792bd8393be1885c22ccdefcf90740193)) - - +- export Spinner and remove console.error ([#223](https://github.com/salesforcecli/sf-plugins-core/issues/223)) ([04475a0](https://github.com/salesforcecli/sf-plugins-core/commit/04475a0792bd8393be1885c22ccdefcf90740193)) ## [2.1.3](https://github.com/salesforcecli/sf-plugins-core/compare/2.1.2...2.1.3) (2023-02-20) - ### Bug Fixes -* _run type ([#227](https://github.com/salesforcecli/sf-plugins-core/issues/227)) ([5b01252](https://github.com/salesforcecli/sf-plugins-core/commit/5b012527c020829f891f029fe77779e75a6e665f)) - - +- \_run type ([#227](https://github.com/salesforcecli/sf-plugins-core/issues/227)) ([5b01252](https://github.com/salesforcecli/sf-plugins-core/commit/5b012527c020829f891f029fe77779e75a6e665f)) ## [2.1.2](https://github.com/salesforcecli/sf-plugins-core/compare/2.1.1...2.1.2) (2023-02-13) - ### Bug Fixes -* dont allow hooks to exit process ([#217](https://github.com/salesforcecli/sf-plugins-core/issues/217)) ([928f89d](https://github.com/salesforcecli/sf-plugins-core/commit/928f89dce4ba85a2dd8b59d78a6823e7b22cf83d)) - - +- dont allow hooks to exit process ([#217](https://github.com/salesforcecli/sf-plugins-core/issues/217)) ([928f89d](https://github.com/salesforcecli/sf-plugins-core/commit/928f89dce4ba85a2dd8b59d78a6823e7b22cf83d)) ## [2.1.1](https://github.com/salesforcecli/sf-plugins-core/compare/2.1.0...2.1.1) (2023-02-10) - ### Bug Fixes -* warnings to stderr ([fb0c56a](https://github.com/salesforcecli/sf-plugins-core/commit/fb0c56a51474a9cca7e923e34a0fd0e7ffc3d683)) - - +- warnings to stderr ([fb0c56a](https://github.com/salesforcecli/sf-plugins-core/commit/fb0c56a51474a9cca7e923e34a0fd0e7ffc3d683)) # [2.1.0](https://github.com/salesforcecli/sf-plugins-core/compare/2.0.2...2.1.0) (2023-02-09) - ### Features -* add default answer param to confirm ([#215](https://github.com/salesforcecli/sf-plugins-core/issues/215)) ([dc40d45](https://github.com/salesforcecli/sf-plugins-core/commit/dc40d45a51e0d153981123e2a435896a7855bc93)) - - +- add default answer param to confirm ([#215](https://github.com/salesforcecli/sf-plugins-core/issues/215)) ([dc40d45](https://github.com/salesforcecli/sf-plugins-core/commit/dc40d45a51e0d153981123e2a435896a7855bc93)) ## [2.0.2](https://github.com/salesforcecli/sf-plugins-core/compare/2.0.1...2.0.2) (2023-02-07) - ### Bug Fixes -* **deps:** bump oclif core for multi-flag fix ([#213](https://github.com/salesforcecli/sf-plugins-core/issues/213)) ([6b3156a](https://github.com/salesforcecli/sf-plugins-core/commit/6b3156a9683e1a8c6eb05d87154c3850f993e483)) - - +- **deps:** bump oclif core for multi-flag fix ([#213](https://github.com/salesforcecli/sf-plugins-core/issues/213)) ([6b3156a](https://github.com/salesforcecli/sf-plugins-core/commit/6b3156a9683e1a8c6eb05d87154c3850f993e483)) ## [2.0.1](https://github.com/salesforcecli/sf-plugins-core/compare/1.22.3...2.0.1) (2023-01-30) - - ## [1.22.3](https://github.com/salesforcecli/sf-plugins-core/compare/1.22.2...1.22.3) (2023-01-29) - ### Bug Fixes -* **deps:** bump @salesforce/core from 3.32.12 to 3.33.1 ([b3a0792](https://github.com/salesforcecli/sf-plugins-core/commit/b3a0792c6cddb5dd7eca2f0435861be3107d2aed)) - - +- **deps:** bump @salesforce/core from 3.32.12 to 3.33.1 ([b3a0792](https://github.com/salesforcecli/sf-plugins-core/commit/b3a0792c6cddb5dd7eca2f0435861be3107d2aed)) ## [1.22.2](https://github.com/salesforcecli/sf-plugins-core/compare/1.22.1...1.22.2) (2023-01-22) - ### Bug Fixes -* **deps:** bump @salesforce/kit from 1.8.0 to 1.8.3 ([0d671c5](https://github.com/salesforcecli/sf-plugins-core/commit/0d671c5582934984b8fd05d1a715d283f6859652)) - - +- **deps:** bump @salesforce/kit from 1.8.0 to 1.8.3 ([0d671c5](https://github.com/salesforcecli/sf-plugins-core/commit/0d671c5582934984b8fd05d1a715d283f6859652)) ## [1.22.1](https://github.com/salesforcecli/sf-plugins-core/compare/1.22.0...1.22.1) (2023-01-13) - ### Bug Fixes -* no default hub with default org ([c59d264](https://github.com/salesforcecli/sf-plugins-core/commit/c59d26414f5fdd16433431935f69688e8b42479a)) - - +- no default hub with default org ([c59d264](https://github.com/salesforcecli/sf-plugins-core/commit/c59d26414f5fdd16433431935f69688e8b42479a)) # [1.22.0](https://github.com/salesforcecli/sf-plugins-core/compare/1.21.8...1.22.0) (2023-01-10) - ### Features -* optional devhub flag (and deprecated equivalent) ([8458fc3](https://github.com/salesforcecli/sf-plugins-core/commit/8458fc3ea1a2ed055d6e9c59e4d9e43da0efbf91)) - - +- optional devhub flag (and deprecated equivalent) ([8458fc3](https://github.com/salesforcecli/sf-plugins-core/commit/8458fc3ea1a2ed055d6e9c59e4d9e43da0efbf91)) ## [1.21.8](https://github.com/salesforcecli/sf-plugins-core/compare/1.21.7...1.21.8) (2023-01-10) - ### Bug Fixes -* allowed optional properties on Deployers ([941abda](https://github.com/salesforcecli/sf-plugins-core/commit/941abdaa7b8391ad78ce537d6ae5c561adff2938)) -* revert pr [#33](https://github.com/salesforcecli/sf-plugins-core/issues/33) (caused downstream type problems) ([1cc7e07](https://github.com/salesforcecli/sf-plugins-core/commit/1cc7e0738de190805cccd5404674df2b6ab5a7de)) - - +- allowed optional properties on Deployers ([941abda](https://github.com/salesforcecli/sf-plugins-core/commit/941abdaa7b8391ad78ce537d6ae5c561adff2938)) +- revert pr [#33](https://github.com/salesforcecli/sf-plugins-core/issues/33) (caused downstream type problems) ([1cc7e07](https://github.com/salesforcecli/sf-plugins-core/commit/1cc7e0738de190805cccd5404674df2b6ab5a7de)) ## [1.21.7](https://github.com/salesforcecli/sf-plugins-core/compare/1.21.6...1.21.7) (2023-01-09) - ### Bug Fixes -* add ‘both’ type to id flag ([e58a70f](https://github.com/salesforcecli/sf-plugins-core/commit/e58a70fb7e692f9b91ce39915f6483afda613748)) - - +- add ‘both’ type to id flag ([e58a70f](https://github.com/salesforcecli/sf-plugins-core/commit/e58a70fb7e692f9b91ce39915f6483afda613748)) ## [1.21.6](https://github.com/salesforcecli/sf-plugins-core/compare/1.21.5...1.21.6) (2023-01-07) - ### Bug Fixes -* **deps:** bump json5 from 1.0.1 to 1.0.2 ([3e72202](https://github.com/salesforcecli/sf-plugins-core/commit/3e72202da74572423b3bae2200009fc7ede163e5)) - - +- **deps:** bump json5 from 1.0.1 to 1.0.2 ([3e72202](https://github.com/salesforcecli/sf-plugins-core/commit/3e72202da74572423b3bae2200009fc7ede163e5)) ## [1.21.5](https://github.com/salesforcecli/sf-plugins-core/compare/1.21.4...1.21.5) (2023-01-01) - ### Bug Fixes -* **deps:** bump @salesforce/core from 3.32.9 to 3.32.12 ([13c9722](https://github.com/salesforcecli/sf-plugins-core/commit/13c9722f1fc01d63bd27d6465831b36753e5ba72)) - - +- **deps:** bump @salesforce/core from 3.32.9 to 3.32.12 ([13c9722](https://github.com/salesforcecli/sf-plugins-core/commit/13c9722f1fc01d63bd27d6465831b36753e5ba72)) ## [1.21.4](https://github.com/salesforcecli/sf-plugins-core/compare/1.21.3...1.21.4) (2023-01-01) - ### Bug Fixes -* **deps:** bump @oclif/core from 1.22.0 to 1.23.1 ([d6a0869](https://github.com/salesforcecli/sf-plugins-core/commit/d6a086994575165848f7c1500876fa6fdb7d9e56)) - - +- **deps:** bump @oclif/core from 1.22.0 to 1.23.1 ([d6a0869](https://github.com/salesforcecli/sf-plugins-core/commit/d6a086994575165848f7c1500876fa6fdb7d9e56)) ## [1.21.3](https://github.com/salesforcecli/sf-plugins-core/compare/1.21.2...1.21.3) (2022-12-19) - ### Bug Fixes -* get good typing for array flags ([1e6ae3f](https://github.com/salesforcecli/sf-plugins-core/commit/1e6ae3f63be9452e2035f88ae715d1e2457ee9dc)) -* required flags use `required` for oclif types ([40147b7](https://github.com/salesforcecli/sf-plugins-core/commit/40147b7f92b8f371ae357f8d8213a0cf9eb4c3c0)) -* required prop on compatibility ([87401b9](https://github.com/salesforcecli/sf-plugins-core/commit/87401b90dcaf72bfa1a8d276d164fa0b5a94cbd0)) - - +- get good typing for array flags ([1e6ae3f](https://github.com/salesforcecli/sf-plugins-core/commit/1e6ae3f63be9452e2035f88ae715d1e2457ee9dc)) +- required flags use `required` for oclif types ([40147b7](https://github.com/salesforcecli/sf-plugins-core/commit/40147b7f92b8f371ae357f8d8213a0cf9eb4c3c0)) +- required prop on compatibility ([87401b9](https://github.com/salesforcecli/sf-plugins-core/commit/87401b90dcaf72bfa1a8d276d164fa0b5a94cbd0)) ## [1.21.2](https://github.com/salesforcecli/sf-plugins-core/compare/1.21.1...1.21.2) (2022-12-18) - ### Bug Fixes -* **deps:** bump @oclif/core from 1.21.0 to 1.22.0 ([4416a6e](https://github.com/salesforcecli/sf-plugins-core/commit/4416a6e60ebeb868cc30d33d99a0a5c5dbf23246)) - - +- **deps:** bump @oclif/core from 1.21.0 to 1.22.0 ([4416a6e](https://github.com/salesforcecli/sf-plugins-core/commit/4416a6e60ebeb868cc30d33d99a0a5c5dbf23246)) ## [1.21.1](https://github.com/salesforcecli/sf-plugins-core/compare/1.21.0...1.21.1) (2022-12-14) - ### Bug Fixes -* **deps:** bump @salesforce/core from 3.32.6 to 3.32.9 ([8ba261d](https://github.com/salesforcecli/sf-plugins-core/commit/8ba261de6079facf0321743852910a2e6f9903f3)) - - +- **deps:** bump @salesforce/core from 3.32.6 to 3.32.9 ([8ba261d](https://github.com/salesforcecli/sf-plugins-core/commit/8ba261de6079facf0321743852910a2e6f9903f3)) # [1.21.0](https://github.com/salesforcecli/sf-plugins-core/compare/1.20.0...1.21.0) (2022-12-07) - ### Features -* add array style flag for backward compatibility ([#155](https://github.com/salesforcecli/sf-plugins-core/issues/155)) ([b1844a4](https://github.com/salesforcecli/sf-plugins-core/commit/b1844a495d2adb289b90c0e46f86553a335345e0)) - - +- add array style flag for backward compatibility ([#155](https://github.com/salesforcecli/sf-plugins-core/issues/155)) ([b1844a4](https://github.com/salesforcecli/sf-plugins-core/commit/b1844a495d2adb289b90c0e46f86553a335345e0)) # [1.20.0](https://github.com/salesforcecli/sf-plugins-core/compare/1.19.3...1.20.0) (2022-12-07) - ### Features -* prompter.confirm can require a positive answer([#157](https://github.com/salesforcecli/sf-plugins-core/issues/157)) ([05571a0](https://github.com/salesforcecli/sf-plugins-core/commit/05571a0f9c5111b8bbbcfcd0cdcf3854a5afa1b3)) - - +- prompter.confirm can require a positive answer([#157](https://github.com/salesforcecli/sf-plugins-core/issues/157)) ([05571a0](https://github.com/salesforcecli/sf-plugins-core/commit/05571a0f9c5111b8bbbcfcd0cdcf3854a5afa1b3)) ## [1.19.3](https://github.com/salesforcecli/sf-plugins-core/compare/1.19.2...1.19.3) (2022-12-07) - ### Bug Fixes -* update loglevel warn msg to mention env var ([#156](https://github.com/salesforcecli/sf-plugins-core/issues/156)) ([758c813](https://github.com/salesforcecli/sf-plugins-core/commit/758c813a0870c2289bda841cb1ad898ae11ada7f)) - - +- update loglevel warn msg to mention env var ([#156](https://github.com/salesforcecli/sf-plugins-core/issues/156)) ([758c813](https://github.com/salesforcecli/sf-plugins-core/commit/758c813a0870c2289bda841cb1ad898ae11ada7f)) ## [1.19.2](https://github.com/salesforcecli/sf-plugins-core/compare/1.19.1...1.19.2) (2022-12-06) - - ## [1.19.1](https://github.com/salesforcecli/sf-plugins-core/compare/1.19.0...1.19.1) (2022-12-04) - ### Bug Fixes -* **deps:** bump @salesforce/core from 3.32.1 to 3.32.6 ([2c9846c](https://github.com/salesforcecli/sf-plugins-core/commit/2c9846c55ed9dca275652dde3fef9c98df9aa499)) - - +- **deps:** bump @salesforce/core from 3.32.1 to 3.32.6 ([2c9846c](https://github.com/salesforcecli/sf-plugins-core/commit/2c9846c55ed9dca275652dde3fef9c98df9aa499)) # [1.19.0](https://github.com/salesforcecli/sf-plugins-core/compare/1.18.1...1.19.0) (2022-11-22) - ### Features -* subscribe existing hooks to matching events ([4e85ebe](https://github.com/salesforcecli/sf-plugins-core/commit/4e85ebe6d728760fbabf26a4c921a320e5a16f38)) - - +- subscribe existing hooks to matching events ([4e85ebe](https://github.com/salesforcecli/sf-plugins-core/commit/4e85ebe6d728760fbabf26a4c921a320e5a16f38)) ## [1.18.1](https://github.com/salesforcecli/sf-plugins-core/compare/1.18.0...1.18.1) (2022-11-18) - ### Bug Fixes -* add `summary` field to org flags ([#137](https://github.com/salesforcecli/sf-plugins-core/issues/137)) ([936dea0](https://github.com/salesforcecli/sf-plugins-core/commit/936dea0ce583c19eec12ec738896884974050c86)) - - +- add `summary` field to org flags ([#137](https://github.com/salesforcecli/sf-plugins-core/issues/137)) ([936dea0](https://github.com/salesforcecli/sf-plugins-core/commit/936dea0ce583c19eec12ec738896884974050c86)) # [1.18.0](https://github.com/salesforcecli/sf-plugins-core/compare/1.17.7...1.18.0) (2022-11-17) - ### Bug Fixes -* use -o for target-org ([1706d9c](https://github.com/salesforcecli/sf-plugins-core/commit/1706d9c108d5d96ea13147202547dab12701a12b)) -* use o for target-org, not e ([e082eeb](https://github.com/salesforcecli/sf-plugins-core/commit/e082eeb0a24ac016b1be928b9c63cf2802d189d2)) - +- use -o for target-org ([1706d9c](https://github.com/salesforcecli/sf-plugins-core/commit/1706d9c108d5d96ea13147202547dab12701a12b)) +- use o for target-org, not e ([e082eeb](https://github.com/salesforcecli/sf-plugins-core/commit/e082eeb0a24ac016b1be928b9c63cf2802d189d2)) ### Features -* deprecated org flags ([449b1cf](https://github.com/salesforcecli/sf-plugins-core/commit/449b1cfa28da0126948ff5f7e5ffa14f05338a3b)) -* use sfdx's apiversion and loglevel flags ([77f5bd5](https://github.com/salesforcecli/sf-plugins-core/commit/77f5bd56cd5d78e158f256912591f31218b402c1)) - - +- deprecated org flags ([449b1cf](https://github.com/salesforcecli/sf-plugins-core/commit/449b1cfa28da0126948ff5f7e5ffa14f05338a3b)) +- use sfdx's apiversion and loglevel flags ([77f5bd5](https://github.com/salesforcecli/sf-plugins-core/commit/77f5bd56cd5d78e158f256912591f31218b402c1)) ## [1.17.7](https://github.com/salesforcecli/sf-plugins-core/compare/1.17.6...1.17.7) (2022-11-17) - ### Bug Fixes -* **deps:** bump @salesforce/core from 3.31.16 to 3.31.19 ([124a8a4](https://github.com/salesforcecli/sf-plugins-core/commit/124a8a484398c28c152ba786a8b30f0c21acf14c)) - - +- **deps:** bump @salesforce/core from 3.31.16 to 3.31.19 ([124a8a4](https://github.com/salesforcecli/sf-plugins-core/commit/124a8a484398c28c152ba786a8b30f0c21acf14c)) ## [1.17.6](https://github.com/salesforcecli/sf-plugins-core/compare/1.17.5...1.17.6) (2022-11-13) - ### Bug Fixes -* **deps:** bump @salesforce/ts-types from 1.7.0 to 1.7.1 ([517db39](https://github.com/salesforcecli/sf-plugins-core/commit/517db39723a28bee5001aa2fc4152d52fab42a06)) - - +- **deps:** bump @salesforce/ts-types from 1.7.0 to 1.7.1 ([517db39](https://github.com/salesforcecli/sf-plugins-core/commit/517db39723a28bee5001aa2fc4152d52fab42a06)) ## [1.17.5](https://github.com/salesforcecli/sf-plugins-core/compare/1.17.4...1.17.5) (2022-11-13) - ### Bug Fixes -* **deps:** bump @oclif/core from 1.20.0 to 1.20.4 ([4fe73b4](https://github.com/salesforcecli/sf-plugins-core/commit/4fe73b466db85c4caa54348900860d6c287bcf45)) - - +- **deps:** bump @oclif/core from 1.20.0 to 1.20.4 ([4fe73b4](https://github.com/salesforcecli/sf-plugins-core/commit/4fe73b466db85c4caa54348900860d6c287bcf45)) ## [1.17.4](https://github.com/salesforcecli/sf-plugins-core/compare/1.17.3...1.17.4) (2022-11-02) - ### Bug Fixes -* **deps:** bump @oclif/core from 1.19.1 to 1.20.0 ([73bb83e](https://github.com/salesforcecli/sf-plugins-core/commit/73bb83e1054d4929fd3b6f7e68df942ab52ad1f1)) - - +- **deps:** bump @oclif/core from 1.19.1 to 1.20.0 ([73bb83e](https://github.com/salesforcecli/sf-plugins-core/commit/73bb83e1054d4929fd3b6f7e68df942ab52ad1f1)) ## [1.17.3](https://github.com/salesforcecli/sf-plugins-core/compare/1.17.2...1.17.3) (2022-10-30) - ### Bug Fixes -* **deps:** bump inquirer from 8.2.4 to 8.2.5 ([446b1e4](https://github.com/salesforcecli/sf-plugins-core/commit/446b1e40cffa91b2b8dfa457d10616aa065ca4af)) - - +- **deps:** bump inquirer from 8.2.4 to 8.2.5 ([446b1e4](https://github.com/salesforcecli/sf-plugins-core/commit/446b1e40cffa91b2b8dfa457d10616aa065ca4af)) ## [1.17.2](https://github.com/salesforcecli/sf-plugins-core/compare/1.17.1...1.17.2) (2022-10-30) - ### Bug Fixes -* **deps:** bump @salesforce/kit from 1.7.0 to 1.7.1 ([b25e3e8](https://github.com/salesforcecli/sf-plugins-core/commit/b25e3e8f07c515f1b07025f60b5367eee6b5208a)) - - +- **deps:** bump @salesforce/kit from 1.7.0 to 1.7.1 ([b25e3e8](https://github.com/salesforcecli/sf-plugins-core/commit/b25e3e8f07c515f1b07025f60b5367eee6b5208a)) ## [1.17.1](https://github.com/salesforcecli/sf-plugins-core/compare/1.17.0...1.17.1) (2022-10-26) - ### Bug Fixes -* **deps:** bump @oclif/core from 1.19.0 to 1.19.1 ([efb5d51](https://github.com/salesforcecli/sf-plugins-core/commit/efb5d5156a266306beba5efdb689865805c8b53b)) - - +- **deps:** bump @oclif/core from 1.19.0 to 1.19.1 ([efb5d51](https://github.com/salesforcecli/sf-plugins-core/commit/efb5d5156a266306beba5efdb689865805c8b53b)) # [1.17.0](https://github.com/salesforcecli/sf-plugins-core/compare/1.16.1...1.17.0) (2022-10-20) - ### Features -* improve Ux options ([#113](https://github.com/salesforcecli/sf-plugins-core/issues/113)) ([fc91673](https://github.com/salesforcecli/sf-plugins-core/commit/fc91673f6e0bff71e4a05e2a53ab7eb434e20c58)) - - +- improve Ux options ([#113](https://github.com/salesforcecli/sf-plugins-core/issues/113)) ([fc91673](https://github.com/salesforcecli/sf-plugins-core/commit/fc91673f6e0bff71e4a05e2a53ab7eb434e20c58)) ## [1.16.1](https://github.com/salesforcecli/sf-plugins-core/compare/1.16.0...1.16.1) (2022-10-20) - ### Bug Fixes -* **deps:** bump @salesforce/core from 3.30.9 to 3.31.16 ([4dc2d53](https://github.com/salesforcecli/sf-plugins-core/commit/4dc2d5303e63e775a4237823759f5929e47eb00d)) - - +- **deps:** bump @salesforce/core from 3.30.9 to 3.31.16 ([4dc2d53](https://github.com/salesforcecli/sf-plugins-core/commit/4dc2d5303e63e775a4237823759f5929e47eb00d)) # [1.16.0](https://github.com/salesforcecli/sf-plugins-core/compare/1.15.2...1.16.0) (2022-10-20) - ### Features -* export Ux and add configAggregator to SfCommand ([#106](https://github.com/salesforcecli/sf-plugins-core/issues/106)) ([9c03d8d](https://github.com/salesforcecli/sf-plugins-core/commit/9c03d8d569deab77e2e80d47e62b6b76e09f4d20)) - - +- export Ux and add configAggregator to SfCommand ([#106](https://github.com/salesforcecli/sf-plugins-core/issues/106)) ([9c03d8d](https://github.com/salesforcecli/sf-plugins-core/commit/9c03d8d569deab77e2e80d47e62b6b76e09f4d20)) ## [1.15.2](https://github.com/salesforcecli/sf-plugins-core/compare/1.15.1...1.15.2) (2022-10-15) - ### Bug Fixes -* **deps:** bump @salesforce/kit from 1.5.44 to 1.7.0 ([3561000](https://github.com/salesforcecli/sf-plugins-core/commit/3561000058a131b147baaeeaaae337078fb96020)) - - +- **deps:** bump @salesforce/kit from 1.5.44 to 1.7.0 ([3561000](https://github.com/salesforcecli/sf-plugins-core/commit/3561000058a131b147baaeeaaae337078fb96020)) ## [1.15.1](https://github.com/salesforcecli/sf-plugins-core/compare/1.15.0...1.15.1) (2022-10-13) - ### Bug Fixes -* parse varargs response type ([35b1aa9](https://github.com/salesforcecli/sf-plugins-core/commit/35b1aa9a7a17b246f8508a2b89e9eaa143824581)) - - +- parse varargs response type ([35b1aa9](https://github.com/salesforcecli/sf-plugins-core/commit/35b1aa9a7a17b246f8508a2b89e9eaa143824581)) # [1.15.0](https://github.com/salesforcecli/sf-plugins-core/compare/v1.14.1...1.15.0) (2022-10-11) - ### Features -* support varargs ([6a24106](https://github.com/salesforcecli/sf-plugins-core/commit/6a241069791fe98f861e6011b47696dd86b746e7)) - - +- support varargs ([6a24106](https://github.com/salesforcecli/sf-plugins-core/commit/6a241069791fe98f861e6011b47696dd86b746e7)) ## [1.14.1](https://github.com/salesforcecli/sf-plugins-core/compare/v1.13.2...v1.14.1) (2022-08-23) - ### Features -* update custom flag definitions ([828daac](https://github.com/salesforcecli/sf-plugins-core/commit/828daac881124e7f1ef75a2efbcbd0de4a71bb3c)) - - +- update custom flag definitions ([828daac](https://github.com/salesforcecli/sf-plugins-core/commit/828daac881124e7f1ef75a2efbcbd0de4a71bb3c)) ## [1.13.2](https://github.com/salesforcecli/sf-plugins-core/compare/v1.13.1...v1.13.2) (2022-08-09) - ### Bug Fixes -* add function overloads to custom flags ([12c1178](https://github.com/salesforcecli/sf-plugins-core/commit/12c117837a08bc8cf8eff41832f95a19d3386b18)) -* compile errors ([3782a70](https://github.com/salesforcecli/sf-plugins-core/commit/3782a703b7b0eddbc3d47a7dcbdf33272bdfd6fc)) - - +- add function overloads to custom flags ([12c1178](https://github.com/salesforcecli/sf-plugins-core/commit/12c117837a08bc8cf8eff41832f95a19d3386b18)) +- compile errors ([3782a70](https://github.com/salesforcecli/sf-plugins-core/commit/3782a703b7b0eddbc3d47a7dcbdf33272bdfd6fc)) ## [1.13.1](https://github.com/salesforcecli/sf-plugins-core/compare/v1.13.0...v1.13.1) (2022-08-03) - ### Bug Fixes -* add number to deploy function return type ([ac9457b](https://github.com/salesforcecli/sf-plugins-core/commit/ac9457b78ab1242090fc4322ec266e8d0157cb6f)) - - +- add number to deploy function return type ([ac9457b](https://github.com/salesforcecli/sf-plugins-core/commit/ac9457b78ab1242090fc4322ec266e8d0157cb6f)) # [1.13.0](https://github.com/salesforcecli/sf-plugins-core/compare/v1.12.3...v1.13.0) (2022-06-09) - ### Bug Fixes -* error can't be spread ([30930b7](https://github.com/salesforcecli/sf-plugins-core/commit/30930b74ff5e6b59116228d547362a284ad98388)) - +- error can't be spread ([30930b7](https://github.com/salesforcecli/sf-plugins-core/commit/30930b74ff5e6b59116228d547362a284ad98388)) ### Features -* catch method supports base and SfError ([2b9a038](https://github.com/salesforcecli/sf-plugins-core/commit/2b9a038713c77e1230e21f5cc6f8ae2a6aaab5be)) - - +- catch method supports base and SfError ([2b9a038](https://github.com/salesforcecli/sf-plugins-core/commit/2b9a038713c77e1230e21f5cc6f8ae2a6aaab5be)) ## [1.12.3](https://github.com/salesforcecli/sf-plugins-core/compare/v1.12.2...v1.12.3) (2022-05-04) - ### Bug Fixes -* prevent multiple starts of progress bar ([8ec788c](https://github.com/salesforcecli/sf-plugins-core/commit/8ec788cfda452d2c227631fde64e01786f6f6a49)) -* stop using once ([970fb80](https://github.com/salesforcecli/sf-plugins-core/commit/970fb808ad14a8d8bce0daabd78854c4a046e621)) - - +- prevent multiple starts of progress bar ([8ec788c](https://github.com/salesforcecli/sf-plugins-core/commit/8ec788cfda452d2c227631fde64e01786f6f6a49)) +- stop using once ([970fb80](https://github.com/salesforcecli/sf-plugins-core/commit/970fb808ad14a8d8bce0daabd78854c4a046e621)) ## [1.12.2](https://github.com/salesforcecli/sf-plugins-core/compare/v1.12.1...v1.12.2) (2022-05-03) - ### Bug Fixes -* update error message ([182cfa3](https://github.com/salesforcecli/sf-plugins-core/commit/182cfa30beb4e7fe052a0453d141e19ba7129647)) - - +- update error message ([182cfa3](https://github.com/salesforcecli/sf-plugins-core/commit/182cfa30beb4e7fe052a0453d141e19ba7129647)) ## [1.12.1](https://github.com/salesforcecli/sf-plugins-core/compare/v1.12.0...v1.12.1) (2022-04-20) - ### Bug Fixes -* update config vars ([0c557b5](https://github.com/salesforcecli/sf-plugins-core/commit/0c557b59f6b833a6fe2812d9a765a2f006f57b01)) - - +- update config vars ([0c557b5](https://github.com/salesforcecli/sf-plugins-core/commit/0c557b59f6b833a6fe2812d9a765a2f006f57b01)) # [1.12.0](https://github.com/salesforcecli/sf-plugins-core/compare/v1.11.3...v1.12.0) (2022-04-18) - ### Features -* adjusting message colors for accessibility ([6f873da](https://github.com/salesforcecli/sf-plugins-core/commit/6f873daf2e05c2ec0b52b357b15333a3b68e106e)) - - +- adjusting message colors for accessibility ([6f873da](https://github.com/salesforcecli/sf-plugins-core/commit/6f873daf2e05c2ec0b52b357b15333a3b68e106e)) ## [1.11.3](https://github.com/salesforcecli/sf-plugins-core/compare/v1.11.2...v1.11.3) (2022-04-12) - ### Bug Fixes -* need await in order for the catch to be effective ([2805578](https://github.com/salesforcecli/sf-plugins-core/commit/28055783503177667620528b6246b252ff10cb7f)) - - +- need await in order for the catch to be effective ([2805578](https://github.com/salesforcecli/sf-plugins-core/commit/28055783503177667620528b6246b252ff10cb7f)) ## [1.11.2](https://github.com/salesforcecli/sf-plugins-core/compare/v1.11.1...v1.11.2) (2022-04-11) - ### Bug Fixes -* optional orgs can be undefined ([412629d](https://github.com/salesforcecli/sf-plugins-core/commit/412629de689d7d73b7c2b0673b8e9b373cc957bc)) -* throw if input provided but no org found ([10be468](https://github.com/salesforcecli/sf-plugins-core/commit/10be468c0c3e164fed171c947dbe437b2325605c)) - - +- optional orgs can be undefined ([412629d](https://github.com/salesforcecli/sf-plugins-core/commit/412629de689d7d73b7c2b0673b8e9b373cc957bc)) +- throw if input provided but no org found ([10be468](https://github.com/salesforcecli/sf-plugins-core/commit/10be468c0c3e164fed171c947dbe437b2325605c)) ## [1.11.1](https://github.com/salesforcecli/sf-plugins-core/compare/v1.11.0...v1.11.1) (2022-04-07) - ### Bug Fixes -* adjust message formats ([5b62ced](https://github.com/salesforcecli/sf-plugins-core/commit/5b62cedeb522c08dcce01159a22060be72c1bf62)) - - +- adjust message formats ([5b62ced](https://github.com/salesforcecli/sf-plugins-core/commit/5b62cedeb522c08dcce01159a22060be72c1bf62)) # [1.11.0](https://github.com/salesforcecli/sf-plugins-core/compare/v1.10.0...v1.11.0) (2022-03-31) - ### Features -* support error codes help section ([4852a4f](https://github.com/salesforcecli/sf-plugins-core/commit/4852a4f75bcc744febf276293ed5bf45080436e6)) - - +- support error codes help section ([4852a4f](https://github.com/salesforcecli/sf-plugins-core/commit/4852a4f75bcc744febf276293ed5bf45080436e6)) # [1.10.0](https://github.com/salesforcecli/sf-plugins-core/compare/v1.9.0...v1.10.0) (2022-03-31) - ### Features -* warn users when using a beta command ([2cf26f2](https://github.com/salesforcecli/sf-plugins-core/commit/2cf26f2d363a40b0739f082bfe4aedd62fd4531f)) - - +- warn users when using a beta command ([2cf26f2](https://github.com/salesforcecli/sf-plugins-core/commit/2cf26f2d363a40b0739f082bfe4aedd62fd4531f)) # [1.9.0](https://github.com/salesforcecli/sf-plugins-core/compare/v1.8.1...v1.9.0) (2022-03-24) - ### Features -* explain what a valid api version looks like ([4c5669a](https://github.com/salesforcecli/sf-plugins-core/commit/4c5669a969ef79eae1d4aec76f6cb20df92aae5e)) - - +- explain what a valid api version looks like ([4c5669a](https://github.com/salesforcecli/sf-plugins-core/commit/4c5669a969ef79eae1d4aec76f6cb20df92aae5e)) ## [1.8.1](https://github.com/salesforcecli/sf-plugins-core/compare/v1.8.0...v1.8.1) (2022-03-24) - ### Bug Fixes -* log errors to stderr ([9958d8e](https://github.com/salesforcecli/sf-plugins-core/commit/9958d8e49cf1fbe514026491d8d095651d1cb88b)) - - +- log errors to stderr ([9958d8e](https://github.com/salesforcecli/sf-plugins-core/commit/9958d8e49cf1fbe514026491d8d095651d1cb88b)) # [1.8.0](https://github.com/salesforcecli/sf-plugins-core/compare/v1.7.2...v1.8.0) (2022-03-17) - ### Bug Fixes -* better checking of hub ([8c92bfe](https://github.com/salesforcecli/sf-plugins-core/commit/8c92bfed8f0600ff03489abbb253b5b95c95128a)) -* no unused, respects timeout ([c41c43e](https://github.com/salesforcecli/sf-plugins-core/commit/c41c43e5c480dc1dd914a86ec8c97a8af41369a1)) -* use OptionFlag interface so that exactlyOne can be used ([0e65453](https://github.com/salesforcecli/sf-plugins-core/commit/0e65453dacb68a90f4af2387e571edbd4077ba1b)) - +- better checking of hub ([8c92bfe](https://github.com/salesforcecli/sf-plugins-core/commit/8c92bfed8f0600ff03489abbb253b5b95c95128a)) +- no unused, respects timeout ([c41c43e](https://github.com/salesforcecli/sf-plugins-core/commit/c41c43e5c480dc1dd914a86ec8c97a8af41369a1)) +- use OptionFlag interface so that exactlyOne can be used ([0e65453](https://github.com/salesforcecli/sf-plugins-core/commit/0e65453dacb68a90f4af2387e571edbd4077ba1b)) ### Features -* confirms are timed ([9c89ee9](https://github.com/salesforcecli/sf-plugins-core/commit/9c89ee99901c7abefc11a811e8e4dda0c704ed1c)) -* simplified confirm prompts ([ddf1364](https://github.com/salesforcecli/sf-plugins-core/commit/ddf1364a48fb384bd0ad66bc310a35abcef20d68)) - - +- confirms are timed ([9c89ee9](https://github.com/salesforcecli/sf-plugins-core/commit/9c89ee99901c7abefc11a811e8e4dda0c704ed1c)) +- simplified confirm prompts ([ddf1364](https://github.com/salesforcecli/sf-plugins-core/commit/ddf1364a48fb384bd0ad66bc310a35abcef20d68)) ## [1.7.2](https://github.com/salesforcecli/sf-plugins-core/compare/v1.7.1...v1.7.2) (2022-03-15) - ### Bug Fixes -* need to pass ms to timedPrompt function ([f285e07](https://github.com/salesforcecli/sf-plugins-core/commit/f285e07525937798d0251da69c86c05cc683edfd)) - - +- need to pass ms to timedPrompt function ([f285e07](https://github.com/salesforcecli/sf-plugins-core/commit/f285e07525937798d0251da69c86c05cc683edfd)) ## [1.7.1](https://github.com/salesforcecli/sf-plugins-core/compare/v1.7.0...v1.7.1) (2022-03-11) - ### Bug Fixes -* add oclif enum to exports ([71ee6ac](https://github.com/salesforcecli/sf-plugins-core/commit/71ee6ac7942790ffc519512ade67330614ada51b)) -* expose timed prompt in command class ([3b056c6](https://github.com/salesforcecli/sf-plugins-core/commit/3b056c668d3379ada6f85e2e5b5f6da76c1a3223)) - - +- add oclif enum to exports ([71ee6ac](https://github.com/salesforcecli/sf-plugins-core/commit/71ee6ac7942790ffc519512ade67330614ada51b)) +- expose timed prompt in command class ([3b056c6](https://github.com/salesforcecli/sf-plugins-core/commit/3b056c668d3379ada6f85e2e5b5f6da76c1a3223)) # [1.7.0](https://github.com/salesforcecli/sf-plugins-core/compare/v1.6.1...v1.7.0) (2022-03-11) - ### Features -* suppress progress bar output with env vars ([d2e8a84](https://github.com/salesforcecli/sf-plugins-core/commit/d2e8a849d7ca93b3dba538a26ce5f9ab7f858984)) - - +- suppress progress bar output with env vars ([d2e8a84](https://github.com/salesforcecli/sf-plugins-core/commit/d2e8a849d7ca93b3dba538a26ce5f9ab7f858984)) ## [1.6.1](https://github.com/salesforcecli/sf-plugins-core/compare/v1.6.0...v1.6.1) (2022-03-09) - ### Bug Fixes -* erturn error - dont throw ([0ea70bc](https://github.com/salesforcecli/sf-plugins-core/commit/0ea70bc12cecd380a907323eba84ddb9d5a44e08)) - - +- erturn error - dont throw ([0ea70bc](https://github.com/salesforcecli/sf-plugins-core/commit/0ea70bc12cecd380a907323eba84ddb9d5a44e08)) # [1.6.0](https://github.com/salesforcecli/sf-plugins-core/compare/v1.5.3...v1.6.0) (2022-03-08) - ### Features -* add timedPrompt method ([ea9e98c](https://github.com/salesforcecli/sf-plugins-core/commit/ea9e98c5bffdfc1e917d61006a91f4dba1f808f3)) - - +- add timedPrompt method ([ea9e98c](https://github.com/salesforcecli/sf-plugins-core/commit/ea9e98c5bffdfc1e917d61006a91f4dba1f808f3)) ## [1.5.3](https://github.com/salesforcecli/sf-plugins-core/compare/v1.5.2...v1.5.3) (2022-03-08) - ### Bug Fixes -* expose styledHeader as func in sf command ([fd2dc48](https://github.com/salesforcecli/sf-plugins-core/commit/fd2dc48444be224a884c3b56d5604f4b854f1c0e)) - - +- expose styledHeader as func in sf command ([fd2dc48](https://github.com/salesforcecli/sf-plugins-core/commit/fd2dc48444be224a884c3b56d5604f4b854f1c0e)) ## [1.5.2](https://github.com/salesforcecli/sf-plugins-core/compare/v1.5.1...v1.5.2) (2022-03-07) - ### Bug Fixes -* add styled header function to sf command ([5cc0e8b](https://github.com/salesforcecli/sf-plugins-core/commit/5cc0e8bf60774918c2ebaf2ba5b465f3dd6caf15)) -* retrhow ([eaebd44](https://github.com/salesforcecli/sf-plugins-core/commit/eaebd44d0028cedab92173ed30050757602d2c28)) - - +- add styled header function to sf command ([5cc0e8b](https://github.com/salesforcecli/sf-plugins-core/commit/5cc0e8bf60774918c2ebaf2ba5b465f3dd6caf15)) +- retrhow ([eaebd44](https://github.com/salesforcecli/sf-plugins-core/commit/eaebd44d0028cedab92173ed30050757602d2c28)) ## [1.5.1](https://github.com/salesforcecli/sf-plugins-core/compare/v1.5.0...v1.5.1) (2022-03-07) - - # [1.5.0](https://github.com/salesforcecli/sf-plugins-core/compare/v1.4.1...v1.5.0) (2022-03-03) - ### Features -* friendly default help for org flags ([f4d55b3](https://github.com/salesforcecli/sf-plugins-core/commit/f4d55b30c08e988c0231b97acce8ba2bc9733a06)) - - +- friendly default help for org flags ([f4d55b3](https://github.com/salesforcecli/sf-plugins-core/commit/f4d55b30c08e988c0231b97acce8ba2bc9733a06)) ## [1.4.1](https://github.com/salesforcecli/sf-plugins-core/compare/v1.4.0...v1.4.1) (2022-03-02) - ### Bug Fixes -* make toHelpSection types more friendly ([add364b](https://github.com/salesforcecli/sf-plugins-core/commit/add364b6be532dae6fb49f62164dad486b186347)) - - +- make toHelpSection types more friendly ([add364b](https://github.com/salesforcecli/sf-plugins-core/commit/add364b6be532dae6fb49f62164dad486b186347)) # [1.4.0](https://github.com/salesforcecli/sf-plugins-core/compare/v1.3.0...v1.4.0) (2022-03-02) - ### Bug Fixes -* error keys support createError ([f094c49](https://github.com/salesforcecli/sf-plugins-core/commit/f094c49f1ec1063fb05cdc74e1aab88e7ceb7f13)) -* error message doesn't take params ([5d917bf](https://github.com/salesforcecli/sf-plugins-core/commit/5d917bf100d41077d2eaabcd89c41fa049ef6f21)) -* wrong error name ([1b3bbbe](https://github.com/salesforcecli/sf-plugins-core/commit/1b3bbbeae9f3e888faf438fe8d1f4bfd6bdac2c9)) - +- error keys support createError ([f094c49](https://github.com/salesforcecli/sf-plugins-core/commit/f094c49f1ec1063fb05cdc74e1aab88e7ceb7f13)) +- error message doesn't take params ([5d917bf](https://github.com/salesforcecli/sf-plugins-core/commit/5d917bf100d41077d2eaabcd89c41fa049ef6f21)) +- wrong error name ([1b3bbbe](https://github.com/salesforcecli/sf-plugins-core/commit/1b3bbbeae9f3e888faf438fe8d1f4bfd6bdac2c9)) ### Features -* common salesforce flags ([00ab4fc](https://github.com/salesforcecli/sf-plugins-core/commit/00ab4fc94d268b44dccb6a2de02fe4f720ff0fc0)) -* debugging ([cc3fd1e](https://github.com/salesforcecli/sf-plugins-core/commit/cc3fd1e46134c08a4d76e79c74605e90e09abbb3)) -* duration flag ([b11eaab](https://github.com/salesforcecli/sf-plugins-core/commit/b11eaabb0050961094f412d85c2bbbf4b183cd40)) - - +- common salesforce flags ([00ab4fc](https://github.com/salesforcecli/sf-plugins-core/commit/00ab4fc94d268b44dccb6a2de02fe4f720ff0fc0)) +- debugging ([cc3fd1e](https://github.com/salesforcecli/sf-plugins-core/commit/cc3fd1e46134c08a4d76e79c74605e90e09abbb3)) +- duration flag ([b11eaab](https://github.com/salesforcecli/sf-plugins-core/commit/b11eaabb0050961094f412d85c2bbbf4b183cd40)) # [1.3.0](https://github.com/salesforcecli/sf-plugins-core/compare/v1.2.1...v1.3.0) (2022-02-23) - ### Features -* add requiresProject property ([5ff0cf3](https://github.com/salesforcecli/sf-plugins-core/commit/5ff0cf34fffe896e1ed312585705ff13436e58cf)) - - +- add requiresProject property ([5ff0cf3](https://github.com/salesforcecli/sf-plugins-core/commit/5ff0cf34fffe896e1ed312585705ff13436e58cf)) ## [1.2.1](https://github.com/salesforcecli/sf-plugins-core/compare/v1.2.0...v1.2.1) (2022-01-27) - ### Bug Fixes -* protect against non-existent bar ([2d0dc37](https://github.com/salesforcecli/sf-plugins-core/commit/2d0dc37ce7fedfee4413ae91299de11c8cd9db93)) - - +- protect against non-existent bar ([2d0dc37](https://github.com/salesforcecli/sf-plugins-core/commit/2d0dc37ce7fedfee4413ae91299de11c8cd9db93)) # [1.2.0](https://github.com/salesforcecli/sf-plugins-core/compare/v1.1.0...v1.2.0) (2022-01-27) - ### Features -* expose ux methods in SfCommand ([8e58a93](https://github.com/salesforcecli/sf-plugins-core/commit/8e58a93a942d5a0305a77a82e938f778c59fcd16)) - - +- expose ux methods in SfCommand ([8e58a93](https://github.com/salesforcecli/sf-plugins-core/commit/8e58a93a942d5a0305a77a82e938f778c59fcd16)) # [1.1.0](https://github.com/salesforcecli/sf-plugins-core/compare/v1.0.5...v1.1.0) (2022-01-03) - ### Bug Fixes -* add status method ([9cf2069](https://github.com/salesforcecli/sf-plugins-core/commit/9cf20694d76e2509785b7c8faa4bd63ab190707e)) -* make status a getter/setter ([441c55a](https://github.com/salesforcecli/sf-plugins-core/commit/441c55acd3d811664213e9801a8bcc270e3aca7b)) - +- add status method ([9cf2069](https://github.com/salesforcecli/sf-plugins-core/commit/9cf20694d76e2509785b7c8faa4bd63ab190707e)) +- make status a getter/setter ([441c55a](https://github.com/salesforcecli/sf-plugins-core/commit/441c55acd3d811664213e9801a8bcc270e3aca7b)) ### Features -* add spinner methods ([f209f8f](https://github.com/salesforcecli/sf-plugins-core/commit/f209f8f4e6736b9de91e37f865d66b5356e5abec)) - - +- add spinner methods ([f209f8f](https://github.com/salesforcecli/sf-plugins-core/commit/f209f8f4e6736b9de91e37f865d66b5356e5abec)) ## [1.0.5](https://github.com/salesforcecli/sf-plugins-core/compare/v1.0.4...v1.0.5) (2021-12-16) - ### Bug Fixes -* bump dependencies ([4f78d8c](https://github.com/salesforcecli/sf-plugins-core/commit/4f78d8c940aab41bb406c45a9df98f686e626d28)) - - +- bump dependencies ([4f78d8c](https://github.com/salesforcecli/sf-plugins-core/commit/4f78d8c940aab41bb406c45a9df98f686e626d28)) ## [1.0.4](https://github.com/salesforcecli/sf-plugins-core/compare/v1.0.3...v1.0.4) (2021-10-13) - ### Bug Fixes -* bump module versions ([abdf5e3](https://github.com/salesforcecli/sf-plugins-core/commit/abdf5e37205b464a36393ca1887ce90a7c1ba302)) - - +- bump module versions ([abdf5e3](https://github.com/salesforcecli/sf-plugins-core/commit/abdf5e37205b464a36393ca1887ce90a7c1ba302)) ## [1.0.3](https://github.com/salesforcecli/sf-plugins-core/compare/v1.0.2...v1.0.3) (2021-10-12) - - ## [1.0.2](https://github.com/salesforcecli/sf-plugins-core/compare/v1.0.1...v1.0.2) (2021-10-11) - ### Bug Fixes -* bump oclif and sfdx-core versions ([3d38a70](https://github.com/salesforcecli/sf-plugins-core/commit/3d38a70dcad79aa151529bf51d281f68fe92a3ce)) - - +- bump oclif and sfdx-core versions ([3d38a70](https://github.com/salesforcecli/sf-plugins-core/commit/3d38a70dcad79aa151529bf51d281f68fe92a3ce)) ## [1.0.1](https://github.com/salesforcecli/sf-plugins-core/compare/v1.0.0...v1.0.1) (2021-10-06) - ### Bug Fixes -* update inquirer ([067bbfb](https://github.com/salesforcecli/sf-plugins-core/commit/067bbfbbfcd271ae25260e6b83452093b1fe4deb)) - - +- update inquirer ([067bbfb](https://github.com/salesforcecli/sf-plugins-core/commit/067bbfbbfcd271ae25260e6b83452093b1fe4deb)) # [1.0.0](https://github.com/salesforcecli/sf-plugins-core/compare/v0.0.28...v1.0.0) (2021-09-29) - - ## [0.0.28](https://github.com/salesforcecli/sf-plugins-core/compare/v0.0.27...v0.0.28) (2021-09-29) - ### Bug Fixes -* allow empty message in logSensitive ([5b8edf5](https://github.com/salesforcecli/sf-plugins-core/commit/5b8edf509647887500d9e71b506939b3cc6945d9)) - - +- allow empty message in logSensitive ([5b8edf5](https://github.com/salesforcecli/sf-plugins-core/commit/5b8edf509647887500d9e71b506939b3cc6945d9)) ## [0.0.27](https://github.com/salesforcecli/sf-plugins-core/compare/v0.0.26...v0.0.27) (2021-09-29) - ### Bug Fixes -* publish messages ([91a6aa6](https://github.com/salesforcecli/sf-plugins-core/commit/91a6aa6c396f9b33049407820d0b8bd9caaa30f4)) - - +- publish messages ([91a6aa6](https://github.com/salesforcecli/sf-plugins-core/commit/91a6aa6c396f9b33049407820d0b8bd9caaa30f4)) ## [0.0.26](https://github.com/salesforcecli/sf-plugins-core/compare/v0.0.25...v0.0.26) (2021-09-29) - ### Features -* logSensitive, capture warnings ([a8b3e76](https://github.com/salesforcecli/sf-plugins-core/commit/a8b3e76ff20806b136ee606797b84a70c8f5a528)) - - +- logSensitive, capture warnings ([a8b3e76](https://github.com/salesforcecli/sf-plugins-core/commit/a8b3e76ff20806b136ee606797b84a70c8f5a528)) ## [0.0.25](https://github.com/salesforcecli/sf-plugins-core/compare/v0.0.24...v0.0.25) (2021-09-21) - ### Bug Fixes -* add envirnment type to env list ([8f020df](https://github.com/salesforcecli/sf-plugins-core/commit/8f020dfc8695be19a7fd1f4b811b8c2b8c321418)) - - +- add envirnment type to env list ([8f020df](https://github.com/salesforcecli/sf-plugins-core/commit/8f020dfc8695be19a7fd1f4b811b8c2b8c321418)) ## [0.0.24](https://github.com/salesforcecli/sf-plugins-core/compare/v0.0.23...v0.0.24) (2021-09-16) - ### Bug Fixes -* allow null for EnvDisplay ([0868d3f](https://github.com/salesforcecli/sf-plugins-core/commit/0868d3f0ed23e28c53ce11cb447e41b9b0144ac1)) - - +- allow null for EnvDisplay ([0868d3f](https://github.com/salesforcecli/sf-plugins-core/commit/0868d3f0ed23e28c53ce11cb447e41b9b0144ac1)) ## [0.0.23](https://github.com/salesforcecli/sf-plugins-core/compare/v0.0.22...v0.0.23) (2021-09-15) - ### Bug Fixes -* update to latest oclif/core and enable json flag ([b486ef1](https://github.com/salesforcecli/sf-plugins-core/commit/b486ef173b27ba465cc8fddf53e3a53d339f8734)) - - +- update to latest oclif/core and enable json flag ([b486ef1](https://github.com/salesforcecli/sf-plugins-core/commit/b486ef173b27ba465cc8fddf53e3a53d339f8734)) ## [0.0.22](https://github.com/salesforcecli/sf-plugins-core/compare/v0.0.21...v0.0.22) (2021-09-15) - ### Bug Fixes -* bump oclif/core ([c7a07f7](https://github.com/salesforcecli/sf-plugins-core/commit/c7a07f7671699197f3db93ec750e009eb9dfd56f)) - - +- bump oclif/core ([c7a07f7](https://github.com/salesforcecli/sf-plugins-core/commit/c7a07f7671699197f3db93ec750e009eb9dfd56f)) ## [0.0.21](https://github.com/salesforcecli/sf-plugins-core/compare/v0.0.20...v0.0.21) (2021-09-14) - ### Bug Fixes -* move sf command to this repo ([968f80f](https://github.com/salesforcecli/sf-plugins-core/commit/968f80f0b8aecd0d47fe8d428c605117828f886f)) - - +- move sf command to this repo ([968f80f](https://github.com/salesforcecli/sf-plugins-core/commit/968f80f0b8aecd0d47fe8d428c605117828f886f)) ## [0.0.20](https://github.com/salesforcecli/sf-plugins-core/compare/v0.0.19...v0.0.20) (2021-09-14) - - ## [0.0.19](https://github.com/salesforcecli/sf-plugins-core/compare/v0.0.18...v0.0.19) (2021-09-13) - ### Features -* add logout hook ([4a4d79b](https://github.com/salesforcecli/sf-plugins-core/commit/4a4d79bcd9f2017e70f75967bb0661ae3eb4aa4a)) - - +- add logout hook ([4a4d79b](https://github.com/salesforcecli/sf-plugins-core/commit/4a4d79bcd9f2017e70f75967bb0661ae3eb4aa4a)) ## [0.0.18](https://github.com/salesforcecli/sf-plugins-core/compare/v0.0.17...v0.0.18) (2021-09-10) - ### Bug Fixes -* missed export ([63086ae](https://github.com/salesforcecli/sf-plugins-core/commit/63086aee3dc26c6f674c0bad8054205ed3992597)) - - +- missed export ([63086ae](https://github.com/salesforcecli/sf-plugins-core/commit/63086aee3dc26c6f674c0bad8054205ed3992597)) ## [0.0.17](https://github.com/salesforcecli/sf-plugins-core/compare/v0.0.16...v0.0.17) (2021-09-10) - ### Features -* add help section helper function ([379d14f](https://github.com/salesforcecli/sf-plugins-core/commit/379d14f45eedc46736f64bb5c37a7f906e235d4c)) - - +- add help section helper function ([379d14f](https://github.com/salesforcecli/sf-plugins-core/commit/379d14f45eedc46736f64bb5c37a7f906e235d4c)) ## [0.0.16](https://github.com/salesforcecli/sf-plugins-core/compare/v0.0.15...v0.0.16) (2021-09-08) - ### Bug Fixes -* bump oclif/core ([1cd3df6](https://github.com/salesforcecli/sf-plugins-core/commit/1cd3df66dde4d1e5386221e892aa01a7d504261c)) - - +- bump oclif/core ([1cd3df6](https://github.com/salesforcecli/sf-plugins-core/commit/1cd3df66dde4d1e5386221e892aa01a7d504261c)) ## [0.0.15](https://github.com/salesforcecli/sf-plugins-core/compare/v0.0.14...v0.0.15) (2021-08-31) - ### Bug Fixes -* improve jsdocs ([e3e3784](https://github.com/salesforcecli/sf-plugins-core/commit/e3e3784954fc2d6b06f96459c824cf77795a9de9)) -* improve jsdocs ([aefdd06](https://github.com/salesforcecli/sf-plugins-core/commit/aefdd06b164d413b3f3c4d51b36dea475efcc3ef)) - - +- improve jsdocs ([e3e3784](https://github.com/salesforcecli/sf-plugins-core/commit/e3e3784954fc2d6b06f96459c824cf77795a9de9)) +- improve jsdocs ([aefdd06](https://github.com/salesforcecli/sf-plugins-core/commit/aefdd06b164d413b3f3c4d51b36dea475efcc3ef)) ## [0.0.14](https://github.com/salesforcecli/sf-plugins-core/compare/v0.0.13...v0.0.14) (2021-08-31) - ### Bug Fixes -* improve env types ([e7a7c1d](https://github.com/salesforcecli/sf-plugins-core/commit/e7a7c1df001d02b60c31bcbe5abe4ab31d5faf8d)) - - +- improve env types ([e7a7c1d](https://github.com/salesforcecli/sf-plugins-core/commit/e7a7c1df001d02b60c31bcbe5abe4ab31d5faf8d)) ## [0.0.13](https://github.com/salesforcecli/sf-plugins-core/compare/v0.0.12...v0.0.13) (2021-08-30) - ### Bug Fixes -* update exports ([548ab46](https://github.com/salesforcecli/sf-plugins-core/commit/548ab4646bd1e2d79dbda0609551e6f805b69d09)) - - +- update exports ([548ab46](https://github.com/salesforcecli/sf-plugins-core/commit/548ab4646bd1e2d79dbda0609551e6f805b69d09)) ## [0.0.12](https://github.com/salesforcecli/sf-plugins-core/compare/v0.0.11...v0.0.12) (2021-08-30) - ### Features -* support env display ([446af15](https://github.com/salesforcecli/sf-plugins-core/commit/446af15385ed57e7d5ebd40c4a4964b2bf326e16)) - - +- support env display ([446af15](https://github.com/salesforcecli/sf-plugins-core/commit/446af15385ed57e7d5ebd40c4a4964b2bf326e16)) ## [0.0.11](https://github.com/salesforcecli/sf-plugins-core/compare/v0.0.10...v0.0.11) (2021-08-30) - ### Features -* rename to sf-plugins-core ([e51d6aa](https://github.com/salesforcecli/sf-plugins-core/commit/e51d6aa6879c085ae9efac990d6d406a79615088)) - - +- rename to sf-plugins-core ([e51d6aa](https://github.com/salesforcecli/sf-plugins-core/commit/e51d6aa6879c085ae9efac990d6d406a79615088)) ## [0.0.10](https://github.com/salesforcecli/sf-plugins-core/compare/v0.0.9...v0.0.10) (2021-08-10) - ### Bug Fixes -* correct header to data column alignment ([a6d1baf](https://github.com/salesforcecli/sf-plugins-core/commit/a6d1bafd098443dcb4381f03fd7283594d263c8d)) - - +- correct header to data column alignment ([a6d1baf](https://github.com/salesforcecli/sf-plugins-core/commit/a6d1bafd098443dcb4381f03fd7283594d263c8d)) ## [0.0.9](https://github.com/salesforcecli/sf-plugins-core/compare/v0.0.8...v0.0.9) (2021-07-15) - ### Bug Fixes -* rename ProjectDeployOptions to DeployOptions ([eafefcf](https://github.com/salesforcecli/sf-plugins-core/commit/eafefcfb55f73e96e2b0b08bb3129b6aa0fb6571)) - - +- rename ProjectDeployOptions to DeployOptions ([eafefcf](https://github.com/salesforcecli/sf-plugins-core/commit/eafefcfb55f73e96e2b0b08bb3129b6aa0fb6571)) ## [0.0.8](https://github.com/salesforcecli/sf-plugins-core/compare/v0.0.7...v0.0.8) (2021-07-15) - - ## [0.0.7](https://github.com/salesforcecli/sf-plugins-core/compare/v0.0.6...v0.0.7) (2021-07-01) - ### Features -* support deploy file ([99b4a81](https://github.com/salesforcecli/sf-plugins-core/commit/99b4a81b1a844714233a30679ae267c6866ba4a2)) - - +- support deploy file ([99b4a81](https://github.com/salesforcecli/sf-plugins-core/commit/99b4a81b1a844714233a30679ae267c6866ba4a2)) ## [0.0.6](https://github.com/salesforcecli/sf-plugins-core/compare/v0.0.5...v0.0.6) (2021-06-28) - ### Bug Fixes -* allow empty log message ([1272215](https://github.com/salesforcecli/sf-plugins-core/commit/1272215b62a35e89072df2f02c1bab6c2999e056)) - - +- allow empty log message ([1272215](https://github.com/salesforcecli/sf-plugins-core/commit/1272215b62a35e89072df2f02c1bab6c2999e056)) ## [0.0.5](https://github.com/salesforcecli/sf-plugins-core/compare/v0.0.4...v0.0.5) (2021-06-28) - ### Features -* add Prompter class ([7f7861f](https://github.com/salesforcecli/sf-plugins-core/commit/7f7861f68dc74d815a1bf2d668edd719496524ff)) - - +- add Prompter class ([7f7861f](https://github.com/salesforcecli/sf-plugins-core/commit/7f7861f68dc74d815a1bf2d668edd719496524ff)) ## [0.0.4](https://github.com/salesforcecli/sf-plugins-core/compare/v0.0.3...v0.0.4) (2021-06-28) - ### Bug Fixes -* update Options type ([f24a800](https://github.com/salesforcecli/sf-plugins-core/commit/f24a800409e026605f08717cd572e89afcdf35d0)) - - +- update Options type ([f24a800](https://github.com/salesforcecli/sf-plugins-core/commit/f24a800409e026605f08717cd572e89afcdf35d0)) ## [0.0.3](https://github.com/salesforcecli/sf-plugins-core/compare/v0.0.2...v0.0.3) (2021-06-28) - ### Features -* add Deployables class ([0405a6b](https://github.com/salesforcecli/sf-plugins-core/commit/0405a6bdc78cf44237e1bd51efb2199c275678ca)) - - +- add Deployables class ([0405a6b](https://github.com/salesforcecli/sf-plugins-core/commit/0405a6bdc78cf44237e1bd51efb2199c275678ca)) ## [0.0.2](https://github.com/salesforcecli/sf-plugins-core/compare/v0.0.1...v0.0.2) (2021-06-24) - - ## [0.0.1](https://github.com/salesforcecli/sf-plugins-core/compare/fbfee1eb223c67ead31dfd6da65ed6d55c83015d...v0.0.1) (2021-06-24) - ### Features -* deployer interface ([fbfee1e](https://github.com/salesforcecli/sf-plugins-core/commit/fbfee1eb223c67ead31dfd6da65ed6d55c83015d)) - - - +- deployer interface ([fbfee1e](https://github.com/salesforcecli/sf-plugins-core/commit/fbfee1eb223c67ead31dfd6da65ed6d55c83015d)) diff --git a/package.json b/package.json index a5abfddf..a7ff2709 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "@salesforce/sf-plugins-core", - "version": "9.1.1", + "version": "10.0.0-beta.1", "description": "Utils for writing Salesforce CLI plugins", "main": "lib/exported", "types": "lib/exported.d.ts", @@ -20,6 +20,7 @@ "prepack": "sf-prepack", "prepare": "sf-install", "test": "wireit", + "test:integration": "mocha test/**/*.integration.ts --timeout 30000", "test:only": "wireit" }, "exports": { @@ -45,15 +46,21 @@ "dependencies": { "@inquirer/confirm": "^3.1.9", "@inquirer/password": "^2.1.9", - "@oclif/core": "^3.26.6", - "@salesforce/core": "^7.3.9", + "@oclif/core": "^4", + "@salesforce/core": "^7.3.10", "@salesforce/kit": "^3.1.2", "@salesforce/ts-types": "^2.0.9", - "chalk": "^5.3.0" + "ansis": "^3.1.1", + "cli-progress": "^3.12.0", + "natural-orderby": "^3.0.2", + "slice-ansi": "^7.1.0", + "string-width": "^7.1.0", + "terminal-link": "^3.0.0" }, "devDependencies": { "@inquirer/type": "^1.3.3", "@salesforce/dev-scripts": "^9.1.2", + "@types/cli-progress": "^3.11.5", "eslint-plugin-sf-plugin": "^1.18.5", "ts-node": "^10.9.2", "typescript": "^5.4.5" diff --git a/src/errorFormatting.ts b/src/errorFormatting.ts index 1573299e..8ba9137b 100644 --- a/src/errorFormatting.ts +++ b/src/errorFormatting.ts @@ -6,7 +6,7 @@ */ import { Mode, Messages, envVars } from '@salesforce/core'; -import type { ChalkInstance } from 'chalk'; +import type { Ansis } from 'ansis'; import { StandardColors } from './ux/standardColors.js'; import { SfCommandError } from './types.js'; @@ -31,7 +31,7 @@ const messages = Messages.loadMessages('@salesforce/sf-plugins-core', 'messages' */ export const formatActions = ( actions: string[], - options: { actionColor: ChalkInstance } = { actionColor: StandardColors.info } + options: { actionColor: Ansis } = { actionColor: StandardColors.info } ): string[] => actions.length ? [ diff --git a/src/errorHandling.ts b/src/errorHandling.ts index 5ff15490..4beb9602 100644 --- a/src/errorHandling.ts +++ b/src/errorHandling.ts @@ -6,7 +6,7 @@ */ import { SfError } from '@salesforce/core'; -import { OclifError } from '@oclif/core/lib/interfaces/errors.js'; +import { CLIError } from '@oclif/core/errors'; import { SfCommandError } from './types.js'; import { removeEmpty } from './util.js'; @@ -89,5 +89,5 @@ export const errorToSfCommandError = ( }); /** custom typeGuard for handling the fact the SfCommand doesn't know about oclif error structure */ -const isOclifError = (e: T): e is T & OclifError => +const isOclifError = (e: T): e is T & CLIError => 'oclif' in e ? true : false; diff --git a/src/sfCommand.ts b/src/sfCommand.ts index 62f72876..71daec4d 100644 --- a/src/sfCommand.ts +++ b/src/sfCommand.ts @@ -256,7 +256,7 @@ export abstract class SfCommand extends Command { * @param obj The JSON to log. */ public styledJSON(obj: AnyJson): void { - this.ux.styledJSON(obj); + this.ux.styledJSON(obj, this.config.theme?.json); } /** @@ -283,7 +283,7 @@ export abstract class SfCommand extends Command { // If `--json` is enabled, then the ux instance on the class will disable output, which // means that the logJson method will not output anything. So, we need to create a new // instance of the ux class that does not have output disabled in order to log the json. - new Ux().styledJSON(json as AnyJson); + new Ux().styledJSON(json as AnyJson, this.config.theme?.json); } /** diff --git a/src/ux/progress.ts b/src/ux/progress.ts index c575f3ca..b7170a4a 100644 --- a/src/ux/progress.ts +++ b/src/ux/progress.ts @@ -5,10 +5,14 @@ * For full license text, see LICENSE.txt file in the repo root or https://opensource.org/licenses/BSD-3-Clause */ -import * as util from 'node:util'; -import { ux } from '@oclif/core'; +import util from 'node:util'; +import { Options, SingleBar } from 'cli-progress'; import { UxBase } from './base.js'; +function progress(options: Options = {}): Progress.Bar { + return new SingleBar({ noTTYOutput: Boolean(process.env.TERM === 'dumb' || !process.stdin.isTTY), ...options }); +} + /** * Class for display a progress bar to the console. Will automatically be suppressed if the --json flag is present. */ @@ -50,10 +54,10 @@ export class Progress extends UxBase { this.maybeNoop(() => { const { title, ...rest } = { ...Progress.DEFAULT_OPTIONS, ...options }; - this.bar = ux.progress({ + this.bar = progress({ ...rest, format: util.format(rest.format, title), - }) as Progress.Bar; + }); this.bar.setTotal(total); this.bar.start(total, 0); diff --git a/src/ux/standardColors.ts b/src/ux/standardColors.ts index 08d254c8..bd2f8ce3 100644 --- a/src/ux/standardColors.ts +++ b/src/ux/standardColors.ts @@ -5,11 +5,11 @@ * For full license text, see LICENSE.txt file in the repo root or https://opensource.org/licenses/BSD-3-Clause */ -import chalk from 'chalk'; +import ansis from 'ansis'; export const StandardColors = { - error: chalk.bold.red, - warning: chalk.bold.yellow, - info: chalk.dim, - success: chalk.bold.green, + error: ansis.bold.red, + warning: ansis.bold.yellow, + info: ansis.dim, + success: ansis.bold.green, }; diff --git a/src/ux/styledObject.ts b/src/ux/styledObject.ts new file mode 100644 index 00000000..0c4d1398 --- /dev/null +++ b/src/ux/styledObject.ts @@ -0,0 +1,53 @@ +/* + * Copyright (c) 2023, 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 + */ +import { inspect } from 'node:util'; +import ansis from 'ansis'; +import { AnyJson } from '@salesforce/ts-types'; + +function prettyPrint(obj: AnyJson): string { + if (!obj) return inspect(obj); + if (typeof obj === 'string') return obj; + if (typeof obj === 'number') return obj.toString(); + if (typeof obj === 'boolean') return obj.toString(); + if (typeof obj === 'object') { + return Object.entries(obj) + .map(([key, value]) => `${key}: ${inspect(value)}`) + .join(', '); + } + + return inspect(obj); +} + +export default function styledObject(obj: AnyJson, keys?: string[]): string { + if (!obj) return inspect(obj); + if (typeof obj === 'string') return obj; + if (typeof obj === 'number') return obj.toString(); + if (typeof obj === 'boolean') return obj.toString(); + + const output: string[] = []; + const keyLengths = Object.keys(obj).map((key) => key.toString().length); + const maxKeyLength = Math.max(...keyLengths) + 2; + + const logKeyValue = (key: string, value: AnyJson): string => + `${ansis.blue(key)}:` + ' '.repeat(maxKeyLength - key.length - 1) + prettyPrint(value); + + for (const [key, value] of Object.entries(obj)) { + if (keys && !keys.includes(key)) continue; + if (Array.isArray(value)) { + if (value.length > 0) { + output.push(logKeyValue(key, value[0])); + for (const e of value.slice(1)) { + output.push(' '.repeat(maxKeyLength) + prettyPrint(e)); + } + } + } else if (value !== null && value !== undefined) { + output.push(logKeyValue(key, value)); + } + } + + return output.join('\n'); +} diff --git a/src/ux/table.ts b/src/ux/table.ts new file mode 100644 index 00000000..d30a5995 --- /dev/null +++ b/src/ux/table.ts @@ -0,0 +1,323 @@ +/* + * Copyright (c) 2023, 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 + */ +import { inspect } from 'node:util'; +import ansis from 'ansis'; +import { orderBy } from 'natural-orderby'; +import sliceAnsi from 'slice-ansi'; +import sw from 'string-width'; +import { ux } from '@oclif/core'; + +function sumBy(arr: T[], fn: (i: T) => number): number { + return arr.reduce((sum, i) => sum + fn(i), 0); +} + +function capitalize(s: string): string { + return s ? s.charAt(0).toUpperCase() + s.slice(1).toLowerCase() : ''; +} + +function termwidth(stream: NodeJS.WriteStream): number { + if (!stream.isTTY) { + return 80; + } + + const [width] = stream.getWindowSize(); + if (width < 1) { + return 80; + } + + if (width < 40) { + return 40; + } + + return width; +} + +const stdtermwidth = + typeof process.env.OCLIF_COLUMNS === 'string' + ? Number.parseInt(process.env.OCLIF_COLUMNS, 10) + : termwidth(process.stdout); + +class Table> { + private columns: Array & { key: string; maxWidth?: number; width?: number }>; + + private options: Options & { printLine: (s: unknown) => void }; + + private data: Array>; + + public constructor(data: T[], columns: Columns, options: Options = {}) { + // assign columns + this.columns = Object.entries(columns).map(([key, col]) => { + const extended = col.extended ?? false; + // turn null and undefined into empty strings by default + const get = col.get ?? ((row: Record): unknown => row[key] ?? ''); + const header = typeof col.header === 'string' ? col.header : capitalize(key.replaceAll('_', ' ')); + const minWidth = Math.max(col.minWidth ?? 0, sw(header) + 1); + + return { + extended, + get, + header, + key, + minWidth, + }; + }); + + // assign options + // eslint-disable-next-line @typescript-eslint/unbound-method + const { columns: cols, extended, filter, printLine, sort, title } = options; + this.options = { + columns: cols, + extended, + filter, + 'no-header': options['no-header'] ?? false, + 'no-truncate': options['no-truncate'] ?? false, + printLine: printLine ?? ((s: string): void => ux.stdout(s)), + rowStart: ' ', + sort, + title, + }; + + // build table rows from input array data + let rows = data.map((d) => + Object.fromEntries( + this.columns.map((col) => { + let val = col.get(d); + if (typeof val !== 'string') val = inspect(val, { breakLength: Number.POSITIVE_INFINITY }); + return [col.key, val]; + }) + ) + ); + + // filter rows + if (this.options.filter) { + // eslint-disable-next-line prefer-const + let [header, regex] = this.options.filter.split('='); + const isNot = header.startsWith('-'); + if (isNot) header = header.slice(1); + const col = this.findColumnFromHeader(header); + if (!col || !regex) throw new Error('Filter flag has an invalid value'); + rows = rows.filter((d) => { + const re = new RegExp(regex); + const val = d[col.key] as string; + const match = val.match(re); + return isNot ? !match : match; + }); + } + + // sort rows + if (this.options.sort) { + const sorters = this.options.sort.split(','); + const sortHeaders = sorters.map((k) => (k.startsWith('-') ? k.slice(1) : k)); + const sortKeys = this.filterColumnsFromHeaders(sortHeaders).map( + (c) => + (v: Record): unknown => + v[c.key] + ); + const sortKeysOrder = sorters.map((k) => (k.startsWith('-') ? 'desc' : 'asc')); + rows = orderBy(rows, sortKeys, sortKeysOrder); + } + + // and filter columns + if (this.options.columns) { + const filters = this.options.columns.split(','); + this.columns = this.filterColumnsFromHeaders(filters); + } else if (!this.options.extended) { + // show extended columns/properties + this.columns = this.columns.filter((c) => !c.extended); + } + + this.data = rows; + } + + public display(): void { + const { data, options } = this; + // column truncation + // + // find max width for each column + const columns = this.columns.map((c) => { + const maxWidth = Math.max(sw('.'.padEnd(c.minWidth - 1)), sw(c.header), getWidestColumnWith(data, c.key)) + 1; + return { + ...c, + maxWidth, + width: maxWidth, + }; + }); + + // terminal width + const maxWidth = stdtermwidth - 2; + // truncation logic + const maybeShorten = (): void => { + // don't shorten if full mode + if (options['no-truncate'] ?? (!process.stdout.isTTY && !process.env.CLI_UX_SKIP_TTY_CHECK)) return; + + // don't shorten if there is enough screen width + const dataMaxWidth = sumBy(columns, (c) => c.width); + const overWidth = dataMaxWidth - maxWidth; + if (overWidth <= 0) return; + + // not enough room, short all columns to minWidth + for (const col of columns) { + col.width = col.minWidth; + } + + // if sum(minWidth's) is greater than term width + // nothing can be done so + // display all as minWidth + const dataMinWidth = sumBy(columns, (c) => c.minWidth); + if (dataMinWidth >= maxWidth) return; + + // some wiggle room left, add it back to "needy" columns + let wiggleRoom = maxWidth - dataMinWidth; + const needyCols = columns + .map((c) => ({ key: c.key, needs: c.maxWidth - c.width })) + .sort((a, b) => a.needs - b.needs); + for (const { key, needs } of needyCols) { + if (!needs) continue; + const col = columns.find((c) => key === c.key); + if (!col) continue; + if (wiggleRoom > needs) { + col.width = col.width + needs; + wiggleRoom -= needs; + } else if (wiggleRoom) { + col.width = col.width + wiggleRoom; + wiggleRoom = 0; + } + } + }; + + maybeShorten(); + + // print table title + if (options.title) { + options.printLine(options.title); + // print title divider + options.printLine( + ''.padEnd( + columns.reduce((sum, col) => sum + col.width, 1), + '=' + ) + ); + // TODO: avoid mutating the passed in options to prevent sideeffects where this table changes the options to other tables + options.rowStart = '| '; + } + + // print headers + if (!options['no-header']) { + let headers = options.rowStart; + for (const col of columns) { + const header = col.header; + headers += header.padEnd(col.width); + } + + if (headers) options.printLine(ansis.bold(headers)); + + // print header dividers + let dividers = options.rowStart; + for (const col of columns) { + const divider = ''.padEnd(col.width - 1, '─') + ' '; + dividers += divider.padEnd(col.width); + } + + if (dividers) options.printLine(ansis.bold(dividers)); + } + + // print rows + for (const row of data) { + // find max number of lines + // for all cells in a row + // with multi-line strings + let numOfLines = 1; + for (const col of columns) { + const d = row[col.key] as string; + const lines = d.split('\n').length; + if (lines > numOfLines) numOfLines = lines; + } + + // eslint-disable-next-line unicorn/no-new-array + const linesIndexess = [...new Array(numOfLines).keys()]; + + // print row + // including multi-lines + for (const i of linesIndexess) { + let l = options.rowStart; + for (const col of columns) { + const width = col.width; + let d = row[col.key] as string; + d = d.split('\n')[i] || ''; + const visualWidth = sw(d); + const colorWidth = d.length - visualWidth; + let cell = d.padEnd(width + colorWidth); + if (cell.length - colorWidth > width || visualWidth === width) { + // truncate the cell, preserving ANSI escape sequences, and keeping + // into account the width of fullwidth unicode characters + cell = sliceAnsi(cell, 0, width - 2) + '… '; + // pad with spaces; this is necessary in case the original string + // contained fullwidth characters which cannot be split + cell += ' '.repeat(width - sw(cell)); + } + + l += cell; + } + + options.printLine(l); + } + } + } + + private filterColumnsFromHeaders( + filters: string[] + ): Array & { key: string; maxWidth?: number; width?: number }> { + const cols: Array & { key: string; maxWidth?: number; width?: number }> = []; + for (const f of [...new Set(filters)]) { + const c = this.columns.find((i) => i.header.toLowerCase() === f.toLowerCase()); + if (c) cols.push(c); + } + + return cols; + } + + private findColumnFromHeader( + header: string + ): (Column & { key: string; maxWidth?: number; width?: number }) | undefined { + return this.columns.find((c) => c.header.toLowerCase() === header.toLowerCase()); + } +} + +export function table>(data: T[], columns: Columns, options: Options = {}): void { + new Table(data, columns, options).display(); +} + +export type Column> = { + extended: boolean; + header: string; + minWidth: number; + get(row: T): unknown; +}; + +export type Columns> = { [key: string]: Partial> }; + +export type Options = { + columns?: string; + extended?: boolean; + filter?: string; + 'no-header'?: boolean; + 'no-truncate'?: boolean; + rowStart?: string; + sort?: string; + title?: string; + printLine?(s: unknown): void; +}; + +const getWidestColumnWith = (data: Array>, columnKey: string): number => + data.reduce((previous, current) => { + const d = current[columnKey]; + if (typeof d !== 'string') return previous; + // convert multi-line cell to single longest line + // for width calculations + const manyLines = d.split('\n'); + return Math.max(previous, manyLines.length > 1 ? Math.max(...manyLines.map((r: string) => sw(r))) : sw(d)); + }, 0); diff --git a/src/ux/ux.ts b/src/ux/ux.ts index bfaa9ac1..18dca523 100644 --- a/src/ux/ux.ts +++ b/src/ux/ux.ts @@ -5,10 +5,14 @@ * For full license text, see LICENSE.txt file in the repo root or https://opensource.org/licenses/BSD-3-Clause */ +import ansis from 'ansis'; import { ux } from '@oclif/core'; import { AnyJson } from '@salesforce/ts-types'; +import terminalLink from 'terminal-link'; import { UxBase } from './base.js'; import { Spinner } from './spinner.js'; +import { table, Columns as TableColumns, Options as TableOptions } from './table.js'; +import styledObject from './styledObject.js'; /** * UX methods for plugins. Automatically suppress console output if outputEnabled is set to false. @@ -43,7 +47,17 @@ export class Ux extends UxBase { * @param args Args to be used for formatting. */ public log(message?: string, ...args: string[]): void { - this.maybeNoop(() => ux.log(message, ...args)); + this.maybeNoop(() => ux.stdout(message, ...args)); + } + + /** + * Log a message to stderr. This will be automatically suppressed if output is disabled. + * + * @param message Message to log. Formatting is supported. + * @param args Args to be used for formatting. + */ + public logToStderr(message?: string, ...args: string[]): void { + this.maybeNoop(() => ux.stderr(message, ...args)); } /** @@ -63,7 +77,7 @@ export class Ux extends UxBase { * @param options Options for how the table should be displayed */ public table(data: T[], columns: Ux.Table.Columns, options?: Ux.Table.Options): void { - this.maybeNoop(() => ux.table(data, columns, { 'no-truncate': true, ...options })); + this.maybeNoop(() => table(data, columns, { 'no-truncate': true, ...options })); } /** @@ -74,7 +88,7 @@ export class Ux extends UxBase { * @param params */ public url(text: string, uri: string, params = {}): void { - this.maybeNoop(() => ux.url(text, uri, params)); + this.maybeNoop(() => ux.stdout(terminalLink(text, uri, { fallback: () => uri, ...params }))); } /** @@ -82,8 +96,20 @@ export class Ux extends UxBase { * * @param obj JSON to display */ - public styledJSON(obj: AnyJson): void { - this.maybeNoop(() => ux.styledJSON(obj)); + public styledJSON(obj: AnyJson, theme?: Record): void { + // Default theme if sf's theme.json does not have the json property set. This will allow us + // to ship sf-plugins-core before the theme.json is updated. + const defaultTheme = { + key: 'blueBright', + string: 'greenBright', + number: 'blue', + boolean: 'redBright', + null: 'blackBright', + }; + + const mergedTheme = { ...defaultTheme, ...theme }; + + this.maybeNoop(() => ux.stdout(ux.colorizeJson(obj, { theme: mergedTheme }))); } /** @@ -93,7 +119,7 @@ export class Ux extends UxBase { * @param keys Keys of object to display */ public styledObject(obj: AnyJson, keys?: string[]): void { - this.maybeNoop(() => ux.styledObject(obj, keys)); + this.maybeNoop(() => ux.stdout(styledObject(obj, keys))); } /** @@ -102,14 +128,14 @@ export class Ux extends UxBase { * @param text header to display */ public styledHeader(text: string): void { - this.maybeNoop(() => ux.styledHeader(text)); + this.maybeNoop(() => ux.stdout(ansis.dim('=== ') + ansis.bold(text) + '\n')); } } export namespace Ux { export namespace Table { export type Data = Record; - export type Columns = ux.Table.table.Columns; - export type Options = ux.Table.table.Options; + export type Columns = TableColumns; + export type Options = TableOptions; } } diff --git a/test/integration/ux/table.integration.ts b/test/integration/ux/table.integration.ts new file mode 100644 index 00000000..ce342efe --- /dev/null +++ b/test/integration/ux/table.integration.ts @@ -0,0 +1,47 @@ +/* + * Copyright (c) 2023, 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 + */ +import { expect } from 'chai'; +import stripAnsi from 'strip-ansi'; +import { table } from '../../../src/ux/table.js'; + +describe('table', () => { + let output = ''; + function printLine(line: string) { + output += stripAnsi(line) + '\n'; + } + + afterEach(() => { + output = ''; + }); + + it('does not exceed stack depth on very tall tables', () => { + const data = Array.from({ length: 150_000 }).fill({ id: '123', name: 'foo', value: 'bar' }) as Array< + Record + >; + const tallColumns = { + id: { header: 'ID' }, + name: {}, + value: { header: 'TEST' }, + }; + + table(data, tallColumns, { printLine }); + expect(output).to.include('ID'); + }); + + // skip because it's too slow + it.skip('does not exceed stack depth on very tall, wide tables', () => { + const columnsLength = 100; + const row = Object.fromEntries(Array.from({ length: columnsLength }).map((_, i) => [`col${i}`, 'foo'])); + const data = Array.from({ length: 150_000 }).fill(row) as Array>; + const bigColumns = Object.fromEntries( + Array.from({ length: columnsLength }).map((_, i) => [`col${i}`, { header: `col${i}`.toUpperCase() }]) + ); + + table(data, bigColumns, { printLine }); + expect(output).to.include('COL1'); + }); +}); diff --git a/test/tsconfig.json b/test/tsconfig.json index 069e5027..72c1d88a 100644 --- a/test/tsconfig.json +++ b/test/tsconfig.json @@ -1,6 +1,6 @@ { "extends": "@salesforce/dev-config/tsconfig-test-strict-esm", - "include": ["unit/**/*.ts", "../node_modules/@types/**/*.d.ts"], + "include": ["unit/**/*.ts", "../node_modules/@types/**/*.d.ts", "integration/**/*.ts"], "compilerOptions": { "noEmit": true, "skipLibCheck": true diff --git a/test/unit/sfCommand.test.ts b/test/unit/sfCommand.test.ts index 4dd3d5a6..39108e97 100644 --- a/test/unit/sfCommand.test.ts +++ b/test/unit/sfCommand.test.ts @@ -9,7 +9,7 @@ import { Lifecycle } from '@salesforce/core'; import { TestContext } from '@salesforce/core/testSetup'; import { assert, expect } from 'chai'; import { SfError } from '@salesforce/core'; -import { Config } from '@oclif/core/lib/interfaces'; +import { Config } from '@oclif/core/interfaces'; import { SfCommand } from '../../src/sfCommand.js'; import { StandardColors } from '../../src/ux/standardColors.js'; import { stubSfCommandUx, stubSpinner } from '../../src/stubUx.js'; diff --git a/test/unit/ux/object.test.ts b/test/unit/ux/object.test.ts new file mode 100644 index 00000000..069bc51b --- /dev/null +++ b/test/unit/ux/object.test.ts @@ -0,0 +1,68 @@ +/* + * Copyright (c) 2023, 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 + */ +import { expect } from 'chai'; +import stripAnsi from 'strip-ansi'; +import styledObject from '../../../src/ux/styledObject.js'; + +describe('styledObject', () => { + it('should handle simple object', () => { + const result = styledObject({ foo: 1, bar: 2 }); + expect(stripAnsi(result)).to.equal('foo: 1\nbar: 2'); + }); + + it('should handle object with select keys', () => { + const result = styledObject({ foo: 1, bar: 2 }, ['foo']); + expect(stripAnsi(result)).to.equal('foo: 1'); + }); + + it('should handle deeply nested object', () => { + const result = styledObject({ foo: { bar: { baz: 1 } } }); + expect(stripAnsi(result)).to.equal('foo: bar: { baz: 1 }'); + }); + + it('should handle deeply nested objects with arrays', () => { + const result = styledObject({ foo: { bar: [{ baz: 1 }, { baz: 2 }] } }); + expect(stripAnsi(result)).to.equal('foo: bar: [ { baz: 1 }, { baz: 2 } ]'); + }); + + it('should show array input as table', () => { + const result = styledObject([ + { foo: 1, bar: 1 }, + { foo: 2, bar: 2 }, + { foo: 3, bar: 3 }, + ]); + expect(stripAnsi(result)).to.equal(`0: foo: 1, bar: 1 +1: foo: 2, bar: 2 +2: foo: 3, bar: 3`); + }); + + it('should handle nulls', () => { + const result = styledObject([{ foo: 1, bar: 1 }, null, { foo: 3, bar: 3 }]); + expect(stripAnsi(result)).to.equal(`0: foo: 1, bar: 1 +2: foo: 3, bar: 3`); + }); + + it('should handle null input', () => { + const result = styledObject(null); + expect(stripAnsi(result)).to.equal('null'); + }); + + it('should handle string input', () => { + const result = styledObject('foo'); + expect(stripAnsi(result)).to.equal('foo'); + }); + + it('should handle number input', () => { + const result = styledObject(1); + expect(stripAnsi(result)).to.equal('1'); + }); + + it('should handle boolean input', () => { + const result = styledObject(true); + expect(stripAnsi(result)).to.equal('true'); + }); +}); diff --git a/test/unit/ux/table.test.ts b/test/unit/ux/table.test.ts new file mode 100644 index 00000000..15adaa20 --- /dev/null +++ b/test/unit/ux/table.test.ts @@ -0,0 +1,186 @@ +/* + * Copyright (c) 2023, 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 + */ +import { expect } from 'chai'; +import stripAnsi from 'strip-ansi'; +import { table } from '../../../src/ux/table.js'; + +/* eslint-disable camelcase */ +const apps = [ + { + build_stack: { + id: '123', + name: 'heroku-16', + }, + created_at: '2000-01-01T22:34:46Z', + id: '123', + git_url: 'https://git.heroku.com/supertable-test-1.git', + name: 'supertable-test-1', + owner: { + email: 'example@heroku.com', + id: '1', + }, + region: { id: '123', name: 'us' }, + released_at: '2000-01-01T22:34:46Z', + stack: { + id: '123', + name: 'heroku-16', + }, + updated_at: '2000-01-01T22:34:46Z', + web_url: 'https://supertable-test-1.herokuapp.com/', + }, + { + build_stack: { + id: '321', + name: 'heroku-16', + }, + created_at: '2000-01-01T22:34:46Z', + id: '321', + git_url: 'https://git.heroku.com/phishing-demo.git', + name: 'supertable-test-2', + owner: { + email: 'example@heroku.com', + id: '1', + }, + region: { id: '321', name: 'us' }, + released_at: '2000-01-01T22:34:46Z', + stack: { + id: '321', + name: 'heroku-16', + }, + updated_at: '2000-01-01T22:34:46Z', + web_url: 'https://supertable-test-2.herokuapp.com/', + }, +]; + +const columns = { + id: { header: 'ID' }, + name: {}, + web_url: { extended: true }, + // eslint-disable-next-line @typescript-eslint/no-unsafe-return, @typescript-eslint/no-unsafe-member-access + stack: { extended: true, get: (r: any) => r.stack?.name }, +}; + +const ws = ' '; +const extendedHeader = `ID Name${ws.padEnd(14)}Web url${ws.padEnd(34)}Stack${ws.padEnd(5)}`; + +describe('table', () => { + let output = ''; + function printLine(line: string) { + output += stripAnsi(line) + '\n'; + } + + afterEach(() => { + output = ''; + }); + + it('should display a table', () => { + table(apps, columns, { printLine }); + expect(output).to.equal(` ID Name${ws.padEnd(14)} + ─── ─────────────────${ws} + 123 supertable-test-1${ws} + 321 supertable-test-2${ws}\n`); + }); + + describe('columns', () => { + it('should user header value for id', () => { + table(apps, columns, { printLine }); + expect(output.slice(1, 3)).to.equal('ID'); + }); + + it('should show extended columns and use get() for value', () => { + table(apps, columns, { printLine, extended: true }); + expect(output).to.equal(`${ws}${extendedHeader} + ─── ───────────────── ──────────────────────────────────────── ─────────${ws} + 123 supertable-test-1 https://supertable-test-1.herokuapp.com/ heroku-16${ws} + 321 supertable-test-2 https://supertable-test-2.herokuapp.com/ heroku-16${ws}\n`); + }); + }); + + it('should omit nulls and undefined by default', () => { + const data = [{ a: 1, b: '2', c: null, d: undefined }]; + table(data, { a: {}, b: {}, c: {}, d: {} }, { printLine }); + expect(output).to.include('1'); + expect(output).to.include('2'); + expect(output).to.not.include('null'); + expect(output).to.not.include('undefined'); + }); + + describe('options', () => { + it('should show extended columns', () => { + table(apps, columns, { printLine, extended: true }); + expect(output).to.contain(extendedHeader); + }); + + it('should show title with divider', () => { + table(apps, columns, { printLine, title: 'testing' }); + expect(output).to.equal(`testing +======================= +| ID Name${ws.padEnd(14)} +| ─── ─────────────────${ws} +| 123 supertable-test-1${ws} +| 321 supertable-test-2${ws}\n`); + }); + + it('should skip header', () => { + table(apps, columns, { printLine, 'no-header': true }); + expect(output).to.equal(` 123 supertable-test-1${ws} + 321 supertable-test-2${ws}\n`); + }); + + it('should only display given columns', () => { + table(apps, columns, { printLine, columns: 'id' }); + expect(output).to.equal(` ID${ws}${ws} + ───${ws} + 123${ws} + 321${ws}\n`); + }); + + it('should sort by property', () => { + table(apps, columns, { printLine, sort: '-name' }); + expect(output).to.equal(` ID Name${ws.padEnd(14)} + ─── ─────────────────${ws} + 321 supertable-test-2${ws} + 123 supertable-test-1${ws}\n`); + }); + + it('should filter by property and value (partial string match)', () => { + table(apps, columns, { printLine, filter: 'id=123' }); + expect(output).to.equal(` ID Name${ws.padEnd(14)} + ─── ─────────────────${ws} + 123 supertable-test-1${ws}\n`); + }); + }); + + describe('edge cases', () => { + it('ignores header case', () => { + table(apps, columns, { columns: 'iD,Name', filter: 'nAMe=supertable-test', sort: '-ID', printLine }); + expect(output).to.equal(` ID Name${ws.padEnd(14)} + ─── ─────────────────${ws} + 321 supertable-test-2${ws} + 123 supertable-test-1${ws}\n`); + }); + + it('displays multiline cell', () => { + const app3 = { + build_stack: { + name: 'heroku-16', + }, + id: '456', + name: 'supertable-test\n3', + web_url: 'https://supertable-test-1.herokuapp.com/', + }; + + table([...apps, app3], columns, { sort: '-ID', printLine }); + expect(output).to.equal(` ID Name${ws.padEnd(14)} + ─── ─────────────────${ws} + 456 supertable-test${ws.padEnd(3)} + 3${ws.padEnd(17)} + 321 supertable-test-2${ws} + 123 supertable-test-1${ws}\n`); + }); + }); +}); diff --git a/test/unit/ux/ux.test.ts b/test/unit/ux/ux.test.ts index ff70c3cf..2b592ea9 100644 --- a/test/unit/ux/ux.test.ts +++ b/test/unit/ux/ux.test.ts @@ -12,11 +12,11 @@ import { Ux } from '../../../src/ux/ux.js'; describe('Ux', () => { let sandbox: sinon.SinonSandbox; - let infoStub: sinon.SinonStub; + let stdoutStub: sinon.SinonStub; beforeEach(() => { sandbox = sinon.createSandbox(); - infoStub = sandbox.stub(coreUx, 'info').callsFake(() => {}); + stdoutStub = sandbox.stub(coreUx, 'stdout').callsFake(() => {}); }); afterEach(() => { @@ -26,8 +26,8 @@ describe('Ux', () => { describe('table', () => { it('should log a table', () => { const ux = new Ux(); - ux.table([{ key: 'foo', value: 'bar' }], { key: {}, value: {} }, { printLine: coreUx.info }); - expect(infoStub.args).to.deep.equal([ + ux.table([{ key: 'foo', value: 'bar' }], { key: {}, value: {} }); + expect(stdoutStub.args).to.deep.equal([ ['\u001b[1m Key Value \u001b[22m'], ['\u001b[1m ─── ───── \u001b[22m'], [' foo bar '], @@ -37,7 +37,7 @@ describe('Ux', () => { it('should not log anything if output is not enabled', () => { const ux = new Ux({ jsonEnabled: true }); ux.table([{ key: 'foo', value: 'bar' }], { key: {}, value: {} }); - expect(infoStub.callCount).to.equal(0); + expect(stdoutStub.callCount).to.equal(0); }); }); @@ -45,13 +45,13 @@ describe('Ux', () => { it('should log a url', () => { const ux = new Ux(); ux.url('Salesforce', 'https://developer.salesforce.com/'); - expect(infoStub.firstCall.args).to.deep.equal(['https://developer.salesforce.com/']); + expect(stdoutStub.firstCall.args).to.deep.equal(['https://developer.salesforce.com/']); }); it('should not log anything if output is not enabled', () => { const ux = new Ux({ jsonEnabled: true }); ux.url('Salesforce', 'https://developer.salesforce.com/'); - expect(infoStub.callCount).to.equal(0); + expect(stdoutStub.callCount).to.equal(0); }); }); @@ -59,15 +59,13 @@ describe('Ux', () => { it('should log stylized json', () => { const ux = new Ux(); ux.styledJSON({ foo: 'bar' }); - expect(infoStub.firstCall.args).to.deep.equal([ - '\x1B[97m{\x1B[39m\n \x1B[94m"foo"\x1B[39m\x1B[93m:\x1B[39m \x1B[92m"bar"\x1B[39m\n\x1B[97m}\x1B[39m', - ]); + expect(stdoutStub.firstCall.args).to.deep.equal(['{\n \u001b[94m"foo"\u001b[39m: \u001b[92m"bar"\u001b[39m\n}']); }); it('should not log anything if output is not enabled', () => { const ux = new Ux({ jsonEnabled: true }); ux.styledJSON({ foo: 'bar' }); - expect(infoStub.callCount).to.equal(0); + expect(stdoutStub.callCount).to.equal(0); }); }); @@ -75,13 +73,13 @@ describe('Ux', () => { it('should log stylized object', () => { const ux = new Ux(); ux.styledObject({ foo: 'bar' }); - expect(infoStub.firstCall.args).to.deep.equal(['\u001b[34mfoo\u001b[39m: bar']); + expect(stdoutStub.firstCall.args).to.deep.equal(['\u001b[34mfoo\u001b[39m: bar']); }); it('should not log anything if output is not enabled', () => { const ux = new Ux({ jsonEnabled: true }); ux.styledObject({ foo: 'bar' }); - expect(infoStub.callCount).to.equal(0); + expect(stdoutStub.callCount).to.equal(0); }); }); @@ -89,13 +87,15 @@ describe('Ux', () => { it('should log stylized header', () => { const ux = new Ux(); ux.styledHeader('A Stylized Header'); - expect(infoStub.firstCall.args).to.deep.equal(['\u001b[2m=== \u001b[22m\u001b[1mA Stylized Header\u001b[22m\n']); + expect(stdoutStub.firstCall.args).to.deep.equal([ + '\u001b[2m=== \u001b[22m\u001b[1mA Stylized Header\u001b[22m\n', + ]); }); it('should not log anything if output is not enabled', () => { const ux = new Ux({ jsonEnabled: true }); ux.styledHeader('A Stylized Header'); - expect(infoStub.callCount).to.equal(0); + expect(stdoutStub.callCount).to.equal(0); }); }); }); diff --git a/yarn.lock b/yarn.lock index e0c2c8eb..a71dbd48 100644 --- a/yarn.lock +++ b/yarn.lock @@ -586,36 +586,25 @@ "@nodelib/fs.scandir" "2.1.5" fastq "^1.6.0" -"@oclif/core@^3.26.6": - version "3.26.6" - resolved "https://registry.yarnpkg.com/@oclif/core/-/core-3.26.6.tgz#f371868cfa0fe150a6547e6af98b359065d2f971" - integrity sha512-+FiTw1IPuJTF9tSAlTsY8bGK4sgthehjz7c2SvYdgQncTkxI2xvUch/8QpjNYGLEmUneNygvYMRBax2KJcLccA== +"@oclif/core@^4": + version "4.0.0" + resolved "https://registry.yarnpkg.com/@oclif/core/-/core-4.0.0.tgz#c47783c9803cb440e3fd325157437400765eae3f" + integrity sha512-BMWGvJrzn5PnG60gTNFEvaBT0jvGNiJCKN4aJBYP6E7Bq/Y5XPnxPrkj7ZZs/Jsd1oVn6K/JRmF6gWpv72DOew== dependencies: - "@types/cli-progress" "^3.11.5" ansi-escapes "^4.3.2" - ansi-styles "^4.3.0" - cardinal "^2.1.1" - chalk "^4.1.2" + ansis "^3.1.1" clean-stack "^3.0.1" - cli-progress "^3.12.0" - color "^4.2.3" - debug "^4.3.4" + cli-spinners "^2.9.2" + cosmiconfig "^9.0.0" + debug "^4.3.5" ejs "^3.1.10" get-package-type "^0.1.0" globby "^11.1.0" - hyperlinker "^1.0.0" indent-string "^4.0.0" is-wsl "^2.2.0" - js-yaml "^3.14.1" minimatch "^9.0.4" - natural-orderby "^2.0.3" - object-treeify "^1.1.33" - password-prompt "^1.1.3" - slice-ansi "^4.0.0" string-width "^4.2.3" - strip-ansi "^6.0.1" - supports-color "^8.1.1" - supports-hyperlinks "^2.2.0" + supports-color "^8" widest-line "^3.1.0" wordwrap "^1.0.0" wrap-ansi "^7.0.0" @@ -625,16 +614,16 @@ resolved "https://registry.yarnpkg.com/@pkgjs/parseargs/-/parseargs-0.11.0.tgz#a77ea742fab25775145434eb1d2328cf5013ac33" integrity sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg== -"@salesforce/core@^7.3.9": - version "7.3.9" - resolved "https://registry.yarnpkg.com/@salesforce/core/-/core-7.3.9.tgz#8abe2b3e2393989d11e92b7a6b96043fc9d5b9c8" - integrity sha512-eJqDiA5b7wU50Ee/xjmGzSnHrNVJ8S77B7enfX30gm7gxU3i3M3QeBdiV6XAOPLSIL96DseofP6Tv6c+rljlKA== +"@salesforce/core@^7.3.10", "@salesforce/core@^7.3.9": + version "7.3.10" + resolved "https://registry.yarnpkg.com/@salesforce/core/-/core-7.3.10.tgz#83da85c4e93ca625e2c13118aad9c1df2931bc0f" + integrity sha512-kEKoqkmhWNoiucAE3Ylv6FpC4iVgk4aE0dmcwSmNrMjxSbtjQJGUybprfO/itrLJv+56eM7/4FARQQ2gDbRzQQ== dependencies: "@jsforce/jsforce-node" "^3.2.0" "@salesforce/kit" "^3.1.1" "@salesforce/schemas" "^1.9.0" "@salesforce/ts-types" "^2.0.9" - ajv "^8.13.0" + ajv "^8.15.0" change-case "^4.1.2" faye "^1.4.0" form-data "^4.0.0" @@ -642,11 +631,11 @@ jsonwebtoken "9.0.2" jszip "3.10.1" pino "^8.21.0" - pino-abstract-transport "^1.1.0" + pino-abstract-transport "^1.2.0" pino-pretty "^10.3.1" proper-lockfile "^4.1.2" semver "^7.6.2" - ts-retry-promise "^0.7.1" + ts-retry-promise "^0.8.1" "@salesforce/dev-config@^4.1.0": version "4.1.0" @@ -810,9 +799,9 @@ undici-types "~5.26.4" "@types/node@^18.15.3", "@types/node@^18.19.32": - version "18.19.33" - resolved "https://registry.yarnpkg.com/@types/node/-/node-18.19.33.tgz#98cd286a1b8a5e11aa06623210240bcc28e95c48" - integrity sha512-NR9+KrpSajr2qBVp/Yt5TU/rp+b5Mayi3+OlMlcg2cVCfRmcG5PWZ7S4+MG9PZ5gWBoc9Pd0BKSRViuBCRPu0A== + version "18.19.34" + resolved "https://registry.yarnpkg.com/@types/node/-/node-18.19.34.tgz#c3fae2bbbdb94b4a52fe2d229d0dccce02ef3d27" + integrity sha512-eXF4pfBNV5DAMKGbI02NnDtWrQ40hAN558/2vvS4gMpMIxaf6JmD7YjnZbq0Q9TDSSkKBamime8ewRoomHdt4g== dependencies: undici-types "~5.26.4" @@ -996,10 +985,10 @@ ajv@^6.12.4: json-schema-traverse "^0.4.1" uri-js "^4.2.2" -ajv@^8.11.0, ajv@^8.13.0: - version "8.13.0" - resolved "https://registry.yarnpkg.com/ajv/-/ajv-8.13.0.tgz#a3939eaec9fb80d217ddf0c3376948c023f28c91" - integrity sha512-PRA911Blj99jR5RMeTunVbNXMF6Lp4vZXnk5GQjcnUWUTsrXtekg/pnmFFI2u/I36Y/2bITGS30GZCXei6uNkA== +ajv@^8.11.0, ajv@^8.15.0: + version "8.16.0" + resolved "https://registry.yarnpkg.com/ajv/-/ajv-8.16.0.tgz#22e2a92b94f005f7e0f9c9d39652ef0b8f6f0cb4" + integrity sha512-F0twR8U1ZU67JIEtekUcLkXkoO5mMMmgGD8sK/xUFzJ805jxHQl92hImFAqqXMyMYjSPOyUPAwHYhB72g5sTXw== dependencies: fast-deep-equal "^3.1.3" json-schema-traverse "^1.0.0" @@ -1018,6 +1007,13 @@ ansi-escapes@^4.3.2: dependencies: type-fest "^0.21.3" +ansi-escapes@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/ansi-escapes/-/ansi-escapes-5.0.0.tgz#b6a0caf0eef0c41af190e9a749e0c00ec04bb2a6" + integrity sha512-5GFMVX8HqE/TB+FuBJGuO5XG0WrsA6ptUqoODaT/n9mmUaZFkqnBueB4leqGBCmrUHnCnC4PCZTCd0E7QQ83bA== + dependencies: + type-fest "^1.0.2" + ansi-regex@^5.0.1: version "5.0.1" resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-5.0.1.tgz#082cb2c89c9fe8659a311a53bd6a4dc5301db304" @@ -1040,22 +1036,22 @@ ansi-styles@^3.2.1: dependencies: color-convert "^1.9.0" -ansi-styles@^4.0.0, ansi-styles@^4.1.0, ansi-styles@^4.3.0: +ansi-styles@^4.0.0, ansi-styles@^4.1.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.1.0: +ansi-styles@^6.1.0, ansi-styles@^6.2.1: version "6.2.1" resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-6.2.1.tgz#0e62320cf99c21afff3b3012192546aacbfb05c5" integrity sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug== -ansicolors@~0.3.2: - version "0.3.2" - resolved "https://registry.yarnpkg.com/ansicolors/-/ansicolors-0.3.2.tgz#665597de86a9ffe3aa9bfbe6cae5c6ea426b4979" - integrity sha512-QXu7BPrP29VllRxH8GwB7x5iX5qWKAAMLqKQGWTeLWVlNHNOpVMJ91dsxQAIWXpjuW5wqvxu3Jd/nRjrJ+0pqg== +ansis@^3.1.1: + version "3.1.1" + resolved "https://registry.yarnpkg.com/ansis/-/ansis-3.1.1.tgz#3e155f10362575dbfe1c298295a8d8fe4ebe140f" + integrity sha512-91DBlFEMcOgzaHhMQP4SaknYUZ3zKfroLfAQT4rHBdJW1lFgDeFQphtkDQ7jOtutDObROmDxQ/6an/j5D1Bprw== anymatch@~3.1.2: version "3.1.3" @@ -1187,15 +1183,10 @@ assertion-error@^1.1.0: resolved "https://registry.yarnpkg.com/assertion-error/-/assertion-error-1.1.0.tgz#e60b6b0e8f301bd97e5375215bda406c85118c0b" integrity sha512-jgsaNduz+ndvGyFt3uSuWqvy4lCnIJiovtouQN5JZHOKCS2QuhEdbcQHFhVksz2N2U9hXJo8odG7ETyWlEeuDw== -astral-regex@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/astral-regex/-/astral-regex-2.0.0.tgz#483143c567aeed4785759c0865786dc77d7d2e31" - integrity sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ== - 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== + version "3.2.5" + resolved "https://registry.yarnpkg.com/async/-/async-3.2.5.tgz#ebd52a8fdaf7a2289a24df399f8d8485c8a46b66" + integrity sha512-baNZyqaaLhyLVKm/DlvdW051MSgO6b8eVfIezl9E5PqWxFgzLm/wQntEW4zOytVburDEr0JlALEpdOFwvErLsg== asynckit@^0.4.0: version "0.4.0" @@ -1357,14 +1348,6 @@ capital-case@^1.0.4: tslib "^2.0.3" upper-case-first "^2.0.2" -cardinal@^2.1.1: - version "2.1.1" - resolved "https://registry.yarnpkg.com/cardinal/-/cardinal-2.1.1.tgz#7cc1055d822d212954d07b085dea251cc7bc5505" - integrity sha512-JSr5eOgoEymtYHBjNWyjrMqet9Am2miJhlfKNdqLp6zoeAh0KN5dRAcxlecj5mAJrmQomgiOBj35xHLrFjqBpw== - dependencies: - ansicolors "~0.3.2" - redeyed "~2.1.0" - chai@^4.3.10: version "4.3.10" resolved "https://registry.yarnpkg.com/chai/-/chai-4.3.10.tgz#d784cec635e3b7e2ffb66446a63b4e33bd390384" @@ -1395,7 +1378,7 @@ chalk@^4.0.0, chalk@^4.0.2, chalk@^4.1.0, chalk@^4.1.2: ansi-styles "^4.1.0" supports-color "^7.1.0" -chalk@^5.0.0, chalk@^5.3.0: +chalk@^5.0.0: version "5.3.0" resolved "https://registry.yarnpkg.com/chalk/-/chalk-5.3.0.tgz#67c20a7ebef70e7f3970a01f90fa210cb6860385" integrity sha512-dLitG79d+GV1Nb/VYcCDFivJeK1hiukt9QjRNVOsUtTy1rR1YJsmpGGTZ3qJos+uw7WmWF4wUwBd9jxjocFC2w== @@ -1527,27 +1510,11 @@ color-name@1.1.3: resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.3.tgz#a7d0558bd89c42f795dd42328f740831ca53bc25" integrity sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw== -color-name@^1.0.0, color-name@~1.1.4: +color-name@~1.1.4: version "1.1.4" resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.4.tgz#c2a09a87acbde69543de6f63fa3995c826c536a2" integrity sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA== -color-string@^1.9.0: - version "1.9.1" - resolved "https://registry.yarnpkg.com/color-string/-/color-string-1.9.1.tgz#4467f9146f036f855b764dfb5bf8582bf342c7a4" - integrity sha512-shrVawQFojnZv6xM40anx4CkoDP+fZsw/ZerEMsW/pyzsRbElpsL/DBVW7q3ExxwusdNXI3lXpuhEZkzs8p5Eg== - dependencies: - color-name "^1.0.0" - simple-swizzle "^0.2.2" - -color@^4.2.3: - version "4.2.3" - resolved "https://registry.yarnpkg.com/color/-/color-4.2.3.tgz#d781ecb5e57224ee43ea9627560107c0e0c6463a" - integrity sha512-1rXeuUUiGGrykh+CeBdu5Ie7OJwinCgQY0bc7GCRxy5xVHy+moaqkpL/jqQq0MtQOeYcrqEz4abc5f0KtU7W4A== - dependencies: - color-convert "^2.0.1" - color-string "^1.9.0" - colorette@^2.0.7: version "2.0.20" resolved "https://registry.yarnpkg.com/colorette/-/colorette-2.0.20.tgz#9eb793e6833067f7235902fcd3b09917a000a95a" @@ -1651,6 +1618,16 @@ cosmiconfig@^8.0.0, cosmiconfig@^8.3.6: parse-json "^5.2.0" path-type "^4.0.0" +cosmiconfig@^9.0.0: + version "9.0.0" + resolved "https://registry.yarnpkg.com/cosmiconfig/-/cosmiconfig-9.0.0.tgz#34c3fc58287b915f3ae905ab6dc3de258b55ad9d" + integrity sha512-itvL5h8RETACmOTFc4UfIyB2RfEHi71Ax6E/PivVxq9NseKbOWpeyHEOIbmAw1rs8Ak0VursQNww7lf7YtUwzg== + dependencies: + env-paths "^2.2.1" + import-fresh "^3.3.0" + js-yaml "^4.1.0" + parse-json "^5.2.0" + create-require@^1.1.0: version "1.1.1" resolved "https://registry.yarnpkg.com/create-require/-/create-require-1.1.1.tgz#c1d7e8f1e5f6cfc9ff65f9cd352d37348756c333" @@ -1673,14 +1650,14 @@ csprng@*: sequin "*" csv-parse@^5.5.2: - version "5.5.5" - resolved "https://registry.yarnpkg.com/csv-parse/-/csv-parse-5.5.5.tgz#68a271a9092877b830541805e14c8a80e6a22517" - integrity sha512-erCk7tyU3yLWAhk6wvKxnyPtftuy/6Ak622gOO7BCJ05+TYffnPCJF905wmOQm+BpkX54OdAl8pveJwUdpnCXQ== + version "5.5.6" + resolved "https://registry.yarnpkg.com/csv-parse/-/csv-parse-5.5.6.tgz#0d726d58a60416361358eec291a9f93abe0b6b1a" + integrity sha512-uNpm30m/AGSkLxxy7d9yRXpJQFrZzVWLFBkS+6ngPcZkw/5k3L/jjFuj7tVnEpRn+QgmiXr21nDlhCiUK4ij2A== csv-stringify@^6.4.4: - version "6.4.6" - resolved "https://registry.yarnpkg.com/csv-stringify/-/csv-stringify-6.4.6.tgz#9ccf87cb8b017c96673a9fa061768c8ba83e8b98" - integrity sha512-h2V2XZ3uOTLilF5dPIptgUfN/o2ia/80Ie0Lly18LAnw5s8Eb7kt8rfxSUy24AztJZas9f6DPZpVlzDUtFt/ag== + version "6.5.0" + resolved "https://registry.yarnpkg.com/csv-stringify/-/csv-stringify-6.5.0.tgz#7b1491893c917e018a97de9bf9604e23b88647c2" + integrity sha512-edlXFVKcUx7r8Vx5zQucsuMg4wb/xT6qyz+Sr1vnLrdXqlLD1+UKyWNyZ9zn6mUW1ewmGxrpVwAcChGF0HQ/2Q== dargs@^7.0.0: version "7.0.0" @@ -1692,7 +1669,14 @@ dateformat@^4.6.3: resolved "https://registry.yarnpkg.com/dateformat/-/dateformat-4.6.3.tgz#556fa6497e5217fedb78821424f8a1c22fa3f4b5" integrity sha512-2P0p0pFGzHS5EMnhdxQi7aJN+iMheud0UhG4dlE1DLAlvL8JHjJJTX/CSm4JXwV0Ka5nGk3zC5mcb5bUQUxxMA== -debug@4, debug@4.3.4, debug@^4.1.0, debug@^4.1.1, debug@^4.3.1, debug@^4.3.2, debug@^4.3.4: +debug@4, debug@^4.1.0, debug@^4.1.1, debug@^4.3.1, debug@^4.3.2, debug@^4.3.4, debug@^4.3.5: + version "4.3.5" + resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.5.tgz#e83444eceb9fedd4a1da56d671ae2446a01a6e1e" + integrity sha512-pt0bNEmneDIvdL1Xsd9oDQ/wrQRkXDT4AUWlNZNPKvW5x/jyO9VFXkJUP07vQ2upmw5PlaITaPKc31jK13V+jg== + dependencies: + ms "2.1.2" + +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== @@ -1865,6 +1849,11 @@ electron-to-chromium@^1.4.668: resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.4.715.tgz#bb16bcf2a3537962fccfa746b5c98c5f7404ff46" integrity sha512-XzWNH4ZSa9BwVUQSDorPWAUQ5WGuYz7zJUNpNif40zFCiCl20t8zgylmreNmn26h5kiyw2lg7RfTmeMBsDklqg== +emoji-regex@^10.3.0: + version "10.3.0" + resolved "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-10.3.0.tgz#76998b9268409eb3dae3de989254d456e70cfe23" + integrity sha512-QpLs9D9v9kArv4lfDEgg1X/gN5XLnf/A6l9cs8SPZLRZR3ZkY9+kwIQTxm+fsSej5UMYGE8fdoaZVIBlqG0XTw== + emoji-regex@^8.0.0: version "8.0.0" resolved "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-8.0.0.tgz#e818fd69ce5ccfcb404594f842963bf53164cc37" @@ -1887,6 +1876,11 @@ entities@^4.2.0, entities@^4.5.0: resolved "https://registry.yarnpkg.com/entities/-/entities-4.5.0.tgz#5d268ea5e7113ec74c4d033b79ea5a35a488fb48" integrity sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw== +env-paths@^2.2.1: + version "2.2.1" + resolved "https://registry.yarnpkg.com/env-paths/-/env-paths-2.2.1.tgz#420399d416ce1fbe9bc0a07c62fa68d67fd0f8f2" + integrity sha512-+h1lkLKhZMTYjog1VEpJNG7NZJWcuc2DDk/qsqSTRRCOXiLjeQ1d1/udrUGhqMxUgAlwKNZ0cf2uqan5GLuS2A== + error-ex@^1.3.1: version "1.3.2" resolved "https://registry.yarnpkg.com/error-ex/-/error-ex-1.3.2.tgz#b4ac40648107fdcdcfae242f428bea8a14d4f1bf" @@ -2175,7 +2169,7 @@ espree@^9.6.0, espree@^9.6.1: acorn-jsx "^5.3.2" eslint-visitor-keys "^3.4.1" -esprima@^4.0.0, esprima@~4.0.0: +esprima@^4.0.0: version "4.0.1" resolved "https://registry.yarnpkg.com/esprima/-/esprima-4.0.1.tgz#13b04cdb3e6c5d19df91ab6987a8695619b0aa71" integrity sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A== @@ -2250,9 +2244,9 @@ extend@^3.0.2: integrity sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g== fast-copy@^3.0.0: - version "3.0.1" - resolved "https://registry.yarnpkg.com/fast-copy/-/fast-copy-3.0.1.tgz#9e89ef498b8c04c1cd76b33b8e14271658a732aa" - integrity sha512-Knr7NOtK3HWRYGtHoJrjkaWepqT8thIVGAwt0p0aUs1zqkAzXZV4vo9fFNwyb5fcqK1GKYFYxldQdIDVKhUAfA== + version "3.0.2" + resolved "https://registry.yarnpkg.com/fast-copy/-/fast-copy-3.0.2.tgz#59c68f59ccbcac82050ba992e0d5c389097c9d35" + integrity sha512-dl0O9Vhju8IrcLndv2eU4ldt1ftXMqqfgN4H1cpmGV7P6jeB9FwpN9a2c8DPGE1Ys88rNUJVYDHq73CGAGOPfQ== fast-deep-equal@^3.1.1, fast-deep-equal@^3.1.3: version "3.1.3" @@ -2260,9 +2254,9 @@ fast-deep-equal@^3.1.1, fast-deep-equal@^3.1.3: integrity sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q== fast-glob@^3.2.11, fast-glob@^3.2.9: - version "3.3.1" - resolved "https://registry.yarnpkg.com/fast-glob/-/fast-glob-3.3.1.tgz#784b4e897340f3dbbef17413b3f11acf03c874c4" - integrity sha512-kNFPyjhh5cKjrUltxs+wFx+ZkbRaxxmZ+X0ZU31SOsxCEtP9VPgtq2teZw1DebupL5GmDaNQ6yKMMVcM41iqDg== + version "3.3.2" + resolved "https://registry.yarnpkg.com/fast-glob/-/fast-glob-3.3.2.tgz#a904501e57cfdd2ffcded45e99a54fef55e46129" + integrity sha512-oX2ruAFQwf/Orj8m737Y5adxDQO0LAB7/S5MnxCdTNDd4p6BsyIVsv9JQsATbTSq8KHRpLwIHbVlUNatxd+1Ow== dependencies: "@nodelib/fs.stat" "^2.0.2" "@nodelib/fs.walk" "^1.2.3" @@ -2281,9 +2275,9 @@ fast-levenshtein@^2.0.6: integrity sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw== fast-redact@^3.1.1: - version "3.3.0" - resolved "https://registry.yarnpkg.com/fast-redact/-/fast-redact-3.3.0.tgz#7c83ce3a7be4898241a46560d51de10f653f7634" - integrity sha512-6T5V1QK1u4oF+ATxs1lWUmlEk6P2T9HqJG3e2DnHOdVgZy2rFJBoEnrIedcTXlkAHU/zKC+7KETJ+KGGKwxgMQ== + version "3.5.0" + resolved "https://registry.yarnpkg.com/fast-redact/-/fast-redact-3.5.0.tgz#e9ea02f7e57d0cd8438180083e93077e496285e4" + integrity sha512-dwsoQlS7h9hMeYUq1W++23NDcBLV4KqONnITDV9DjfS3q1SgDGVrBdvvTLUotWtPSD7asWDV9/CmsZPy8Hf70A== fast-safe-stringify@^2.1.1: version "2.1.1" @@ -2291,9 +2285,9 @@ fast-safe-stringify@^2.1.1: integrity sha512-W+KJc2dmILlPplD/H4K9l9LcAHAfPtP6BY84uVLXQ6Evcz9Lcg33Y2z1IVblT6xdY54PXYVHEv+0Wpq8Io6zkA== fastq@^1.6.0: - version "1.15.0" - resolved "https://registry.yarnpkg.com/fastq/-/fastq-1.15.0.tgz#d04d07c6a2a68fe4599fea8d2e103a937fae6b3a" - integrity sha512-wBrocU2LCXXa+lWBt8RoIRD89Fi8OdABODa/kEnyeyjS5aZO5/GNvI5sEINADqP/h8M29UHTHUb53sUu5Ihqdw== + version "1.17.1" + resolved "https://registry.yarnpkg.com/fastq/-/fastq-1.17.1.tgz#2a523f07a4e7b1e81a42b91b8bf2254107753b47" + integrity sha512-sRVD3lWVIXWg6By68ZN7vho9a1pQcN/WBFaAAsDDFzlJjvoGx0P8z7V1t72grFJfJhu3YPZBuu25f7Kaw2jN1w== dependencies: reusify "^1.0.4" @@ -2485,6 +2479,11 @@ get-caller-file@^2.0.1, get-caller-file@^2.0.5: resolved "https://registry.yarnpkg.com/get-caller-file/-/get-caller-file-2.0.5.tgz#4f94412a82db32f36e3b0b9741f8a97feb031f7e" integrity sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg== +get-east-asian-width@^1.0.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/get-east-asian-width/-/get-east-asian-width-1.2.0.tgz#5e6ebd9baee6fb8b7b6bd505221065f0cd91f64e" + integrity sha512-2nk+7SIVb14QrgXFHcm84tD4bKQz0RxPuMT8Ag5KPOq7J5fEmAg0UbXdTOSHqNuHSU28k55qnceesxXRZGzKWA== + get-func-name@^2.0.1, get-func-name@^2.0.2: version "2.0.2" resolved "https://registry.yarnpkg.com/get-func-name/-/get-func-name-2.0.2.tgz#0d7cf20cd13fda808669ffa88f4ffc7a3943fc41" @@ -2786,11 +2785,6 @@ husky@^7.0.4: resolved "https://registry.yarnpkg.com/husky/-/husky-7.0.4.tgz#242048245dc49c8fb1bf0cc7cfb98dd722531535" integrity sha512-vbaCKN2QLtP/vD4yvs6iz6hBEo6wkSzs8HpRah1Z6aGmF2KW5PdYuAd7uX5a+OyBZHBhd+TFLqgjUgytQr4RvQ== -hyperlinker@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/hyperlinker/-/hyperlinker-1.0.0.tgz#23dc9e38a206b208ee49bc2d6c8ef47027df0c0e" - integrity sha512-Ty8UblRWFEcfSuIaajM34LdPXIhbs1ajEX/BBPv24J+enSVaEVY63xQ6lTO9VRYS5LAoghIG0IDJ+p+IPzKUQQ== - ieee754@^1.2.1: version "1.2.1" resolved "https://registry.yarnpkg.com/ieee754/-/ieee754-1.2.1.tgz#8eb7a10a63fff25d15a57b001586d177d1b0d352" @@ -2870,11 +2864,6 @@ is-arrayish@^0.2.1: resolved "https://registry.yarnpkg.com/is-arrayish/-/is-arrayish-0.2.1.tgz#77c99840527aa8ecb1a8ba697b80645a7a926a9d" integrity sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg== -is-arrayish@^0.3.1: - version "0.3.2" - resolved "https://registry.yarnpkg.com/is-arrayish/-/is-arrayish-0.3.2.tgz#4574a2ae56f7ab206896fb431eaeed066fdf8f03" - integrity sha512-eVRqCvVlZbuw3GrM63ovNSNAeA1K16kaR/LRY/92w0zxQ5/1YzwblUX652i4Xs9RwAGjW9d9y6X88t8OaAJfWQ== - is-bigint@^1.0.1: version "1.0.4" resolved "https://registry.yarnpkg.com/is-bigint/-/is-bigint-1.0.4.tgz#08147a1875bc2b32005d41ccd8291dffc6691df3" @@ -2938,6 +2927,13 @@ 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@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-5.0.0.tgz#9609efced7c2f97da7b60145ef481c787c7ba704" + integrity sha512-OVa3u9kkBbw7b8Xw5F9P+D/T9X+Z4+JruYVNapTjPYZYUznQ5YfWeFkOj606XYYW8yugTfC8Pj0hYqvi4ryAhA== + dependencies: + get-east-asian-width "^1.0.0" + is-glob@^4.0.0, is-glob@^4.0.1, is-glob@^4.0.3, is-glob@~4.0.1: version "4.0.3" resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-4.0.3.tgz#64f61e42cbbb2eec2071a9dac0b28ba1e65d5084" @@ -3175,7 +3171,7 @@ js-yaml@4.1.0, js-yaml@^4.1.0: dependencies: argparse "^2.0.1" -js-yaml@^3.13.1, js-yaml@^3.14.1: +js-yaml@^3.13.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== @@ -3731,10 +3727,10 @@ natural-compare@^1.4.0: resolved "https://registry.yarnpkg.com/natural-compare/-/natural-compare-1.4.0.tgz#4abebfeed7541f2c27acfb29bdbbd15c8d5ba4f7" integrity sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw== -natural-orderby@^2.0.3: - version "2.0.3" - resolved "https://registry.yarnpkg.com/natural-orderby/-/natural-orderby-2.0.3.tgz#8623bc518ba162f8ff1cdb8941d74deb0fdcc016" - integrity sha512-p7KTHxU0CUrcOXe62Zfrb5Z13nLvPhSWR/so3kFulUQU0sgUll2Z0LwpsLN351eOOD+hRGu/F1g+6xDfPeD++Q== +natural-orderby@^3.0.2: + version "3.0.2" + resolved "https://registry.yarnpkg.com/natural-orderby/-/natural-orderby-3.0.2.tgz#1b874d685fbd68beab2c6e7d14f298e03d631ec3" + integrity sha512-x7ZdOwBxZCEm9MM7+eQCjkrNLrW3rkBKNHVr78zbtqnMGVNlnDi6C/eUEYgxHNrcbu0ymvjzcwIL/6H1iHri9g== nise@^4.1.0: version "4.1.0" @@ -3849,11 +3845,6 @@ object-keys@^1.1.1: resolved "https://registry.yarnpkg.com/object-keys/-/object-keys-1.1.1.tgz#1c47f272df277f3b1daf061677d9c82e2322c60e" integrity sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA== -object-treeify@^1.1.33: - version "1.1.33" - resolved "https://registry.yarnpkg.com/object-treeify/-/object-treeify-1.1.33.tgz#f06fece986830a3cba78ddd32d4c11d1f76cdf40" - integrity sha512-EFVjAYfzWqWsBMRHPMAXLCDIJnpMhdWAqR7xG6M6a2cs6PMFpl/+Z20w9zDW4vkxOFfddegBKq9Rehd0bxWE7A== - object.assign@^4.1.4: version "4.1.4" resolved "https://registry.yarnpkg.com/object.assign/-/object.assign-4.1.4.tgz#9673c7c7c351ab8c4d0b516f4343ebf4dfb7799f" @@ -3893,9 +3884,9 @@ object.values@^1.1.7: es-abstract "^1.22.1" on-exit-leak-free@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/on-exit-leak-free/-/on-exit-leak-free-2.1.0.tgz#5c703c968f7e7f851885f6459bf8a8a57edc9cc4" - integrity sha512-VuCaZZAjReZ3vUwgOB8LxAosIurDiAW0s13rI1YwmaP++jvcxP77AWoQvenZebpCA2m8WC1/EosPYPMjnRAp/w== + version "2.1.2" + resolved "https://registry.yarnpkg.com/on-exit-leak-free/-/on-exit-leak-free-2.1.2.tgz#fed195c9ebddb7d9e4c3842f93f281ac8dadd3b8" + integrity sha512-0eJJY6hXLGf1udHwfNftBqH+g73EU4B504nZeKpz1sYRKafAghwxEJunB2O7rDZkL4PGfsMVnTXZ2EjibbqcsA== once@^1.3.0, once@^1.3.1, once@^1.4.0: version "1.4.0" @@ -4011,14 +4002,6 @@ pascal-case@^3.1.2: no-case "^3.0.4" tslib "^2.0.3" -password-prompt@^1.1.3: - version "1.1.3" - resolved "https://registry.yarnpkg.com/password-prompt/-/password-prompt-1.1.3.tgz#05e539f4e7ca4d6c865d479313f10eb9db63ee5f" - integrity sha512-HkrjG2aJlvF0t2BMH0e2LB/EHf3Lcq3fNMzy4GYHcQblAvOl+QQji1Lx7WRBMqpVK8p+KR7bCg7oqAMXtdgqyw== - dependencies: - ansi-escapes "^4.3.2" - cross-spawn "^7.0.3" - path-case@^3.0.4: version "3.0.4" resolved "https://registry.yarnpkg.com/path-case/-/path-case-3.0.4.tgz#9168645334eb942658375c56f80b4c0cb5f82c6f" @@ -4087,7 +4070,7 @@ picomatch@^3.0.1: resolved "https://registry.yarnpkg.com/picomatch/-/picomatch-3.0.1.tgz#817033161def55ec9638567a2f3bbc876b3e7516" integrity sha512-I3EurrIQMlRc9IaAZnqRR044Phh2DXY+55o7uJ0V+hYZAcQYSuFWsc9q5PvyDHUSCe1Qxn/iBz+78s86zWnGag== -pino-abstract-transport@^1.0.0, pino-abstract-transport@^1.1.0, pino-abstract-transport@^1.2.0: +pino-abstract-transport@^1.0.0, pino-abstract-transport@^1.2.0: version "1.2.0" resolved "https://registry.yarnpkg.com/pino-abstract-transport/-/pino-abstract-transport-1.2.0.tgz#97f9f2631931e242da531b5c66d3079c12c9d1b5" integrity sha512-Guhh8EZfPCfH+PMXAb6rKOjGQEoy0xlAIn+irODG5kgfYV+BQ0rGYYWTIel3P5mmyXqkYkPmdIkywsn6QKUR1Q== @@ -4217,9 +4200,9 @@ pump@^3.0.0: once "^1.3.1" punycode@^2.1.0, punycode@^2.1.1: - version "2.3.0" - resolved "https://registry.yarnpkg.com/punycode/-/punycode-2.3.0.tgz#f67fa67c94da8f4d0cfff981aee4118064199b8f" - integrity sha512-rRV+zQD8tVFys26lAGR9WUuS4iUAngJScM+ZRSKtvl5tKeZ2t5bvdNFdNHBW9FWR4guGHlgmsZ1G7BSm2wTbuA== + version "2.3.1" + resolved "https://registry.yarnpkg.com/punycode/-/punycode-2.3.1.tgz#027422e2faec0b25e1549c3e1bd8309b9133b6e5" + integrity sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg== q@^1.5.1: version "1.5.1" @@ -4282,9 +4265,9 @@ readable-stream@3, readable-stream@^3.0.0, readable-stream@^3.4.0: util-deprecate "^1.0.1" readable-stream@^4.0.0: - version "4.4.2" - resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-4.4.2.tgz#e6aced27ad3b9d726d8308515b9a1b98dc1b9d13" - integrity sha512-Lk/fICSyIhodxy1IDK2HazkeGjSmezAWX2egdtJnYhtzKEsBPJowlI6F6LPb5tqIQILrMbx22S5o3GuJavPusA== + version "4.5.2" + resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-4.5.2.tgz#9e7fc4c45099baeed934bff6eb97ba6cf2729e09" + integrity sha512-yjavECdqeZ3GLXNgRXgeQEdz9fvDDkNKyHnbHRFtOr7/LcfgBcmct7t/ET+HaCTqfh06OzoAxrkN/IfjJBVe+g== dependencies: abort-controller "^3.0.0" buffer "^6.0.3" @@ -4332,13 +4315,6 @@ redent@^3.0.0: indent-string "^4.0.0" strip-indent "^3.0.0" -redeyed@~2.1.0: - version "2.1.1" - resolved "https://registry.yarnpkg.com/redeyed/-/redeyed-2.1.1.tgz#8984b5815d99cb220469c99eeeffe38913e6cc0b" - integrity sha512-FNpGGo1DycYAdnrKFxCMmKYgo/mILAqtRYbkdQD8Ep/Hk2PQ5+aEAEx+IU713RTDmuBaH0c8P5ZozurNu5ObRQ== - dependencies: - esprima "~4.0.0" - regexp-tree@^0.1.27: version "0.1.27" resolved "https://registry.yarnpkg.com/regexp-tree/-/regexp-tree-0.1.27.tgz#2198f0ef54518ffa743fe74d983b56ffd631b6cd" @@ -4472,9 +4448,9 @@ safe-stable-stringify@^2.3.1: integrity sha512-e2bDA2WJT0wxseVd4lsDP4+3ONX6HpMXQa1ZhFQ7SU+GjvORCmShbCMltrtIDfkYhVHrOcPtj+KhmDBdPdZD1g== sax@>=0.6.0: - version "1.2.4" - resolved "https://registry.yarnpkg.com/sax/-/sax-1.2.4.tgz#2816234e2378bddc4e5354fab5caa895df7100d9" - integrity sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw== + version "1.4.1" + resolved "https://registry.yarnpkg.com/sax/-/sax-1.4.1.tgz#44cc8988377f126304d3b3fc1010c733b929ef0f" + integrity sha512-+aWOz7yVScEGoKNd4PA10LZ8sk0A/z5+nXQG5giUO5rprX9jgYsTdov9qCchZiPIZezbZH+jRut8nPodFAX4Jg== secure-json-parse@^2.4.0: version "2.7.0" @@ -4608,13 +4584,6 @@ signal-exit@^4.0.1, signal-exit@^4.1.0: resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-4.1.0.tgz#952188c1cbd546070e2dd20d0f41c0ae0530cb04" integrity sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw== -simple-swizzle@^0.2.2: - version "0.2.2" - resolved "https://registry.yarnpkg.com/simple-swizzle/-/simple-swizzle-0.2.2.tgz#a4da6b635ffcccca33f70d17cb92592de95e557a" - integrity sha512-JA//kQgZtbuY83m+xT+tXJkmJncGMTFT+C+g2h2R9uxkYIrE2yy9sgmcLhCnw57/WSD+Eh3J97FPEDFnbXnDUg== - dependencies: - is-arrayish "^0.3.1" - sinon@10.0.0: version "10.0.0" resolved "https://registry.yarnpkg.com/sinon/-/sinon-10.0.0.tgz#52279f97e35646ff73d23207d0307977c9b81430" @@ -4632,14 +4601,13 @@ slash@^3.0.0: resolved "https://registry.yarnpkg.com/slash/-/slash-3.0.0.tgz#6539be870c165adbd5240220dbe361f1bc4d4634" integrity sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q== -slice-ansi@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/slice-ansi/-/slice-ansi-4.0.0.tgz#500e8dd0fd55b05815086255b3195adf2a45fe6b" - integrity sha512-qMCMfhY040cVHT43K9BFygqYbUPFZKHOg7K73mtTWJRb8pyP3fzf4Ixd5SzdEJQ6MRUg/WBnOLxghZtKKurENQ== +slice-ansi@^7.1.0: + version "7.1.0" + resolved "https://registry.yarnpkg.com/slice-ansi/-/slice-ansi-7.1.0.tgz#cd6b4655e298a8d1bdeb04250a433094b347b9a9" + integrity sha512-bSiSngZ/jWeX93BqeIAbImyTbEihizcwNjFoRUIY/T1wWQsfsm2Vw1agPKylXvQTU7iASGdHhyqRlqQzfz+Htg== dependencies: - ansi-styles "^4.0.0" - astral-regex "^2.0.0" - is-fullwidth-code-point "^3.0.0" + ansi-styles "^6.2.1" + is-fullwidth-code-point "^5.0.0" snake-case@^3.0.4: version "3.0.4" @@ -4650,9 +4618,9 @@ snake-case@^3.0.4: tslib "^2.0.3" sonic-boom@^3.0.0, sonic-boom@^3.7.0: - version "3.7.0" - resolved "https://registry.yarnpkg.com/sonic-boom/-/sonic-boom-3.7.0.tgz#b4b7b8049a912986f4a92c51d4660b721b11f2f2" - integrity sha512-IudtNvSqA/ObjN97tfgNmOKyDOs4dNcg4cUUsHDebqsgb8wGBBwb31LIgShNO8fye0dFI52X1+tFoKKI6Rq1Gg== + version "3.8.1" + resolved "https://registry.yarnpkg.com/sonic-boom/-/sonic-boom-3.8.1.tgz#d5ba8c4e26d6176c9a1d14d549d9ff579a163422" + integrity sha512-y4Z8LCDBuum+PBP3lSV7RHrXscqksve/bi0as7mhwVnBW+/wUqKT/2Kb7um8yqcFy0duYbbPxzt89Zy2nOCaxg== dependencies: atomic-sleep "^1.0.0" @@ -4737,16 +4705,7 @@ srcset@^5.0.0: resolved "https://registry.yarnpkg.com/srcset/-/srcset-5.0.0.tgz#9df6c3961b5b44a02532ce6ae4544832609e2e3f" integrity sha512-SqEZaAEhe0A6ETEa9O1IhSPC7MdvehZtCnTR0AftXk3QhY2UNgb+NApFOUPZILXk/YTDfFxMTNJOBpzrJsEdIA== -"string-width-cjs@npm:string-width@^4.2.0": - 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@^4.0.0, string-width@^4.1.0, string-width@^4.2.0, string-width@^4.2.3: +"string-width-cjs@npm:string-width@^4.2.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== @@ -4764,6 +4723,15 @@ string-width@^5.0.1, string-width@^5.1.2: emoji-regex "^9.2.2" strip-ansi "^7.0.1" +string-width@^7.1.0: + version "7.1.0" + resolved "https://registry.yarnpkg.com/string-width/-/string-width-7.1.0.tgz#d994252935224729ea3719c49f7206dc9c46550a" + integrity sha512-SEIJCWiX7Kg4c129n48aDRwLbFb2LJmXXFrWBG4NGaRtMQ3myKPKbwrD1BKqQn74oCoNMBVrfDEr5M9YxCsrkw== + dependencies: + emoji-regex "^10.3.0" + get-east-asian-width "^1.0.0" + strip-ansi "^7.1.0" + string.prototype.trim@^1.2.8: version "1.2.8" resolved "https://registry.yarnpkg.com/string.prototype.trim/-/string.prototype.trim-1.2.8.tgz#f9ac6f8af4bd55ddfa8895e6aea92a96395393bd" @@ -4805,21 +4773,14 @@ string_decoder@~1.1.1: dependencies: safe-buffer "~5.1.0" -"strip-ansi-cjs@npm:strip-ansi@^6.0.1": +"strip-ansi-cjs@npm:strip-ansi@^6.0.1", strip-ansi@^6.0.0, strip-ansi@^6.0.1: version "6.0.1" resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-6.0.1.tgz#9e26c63d30f53443e9489495b2105d37b67a85d9" integrity sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A== dependencies: ansi-regex "^5.0.1" -strip-ansi@^6.0.0, strip-ansi@^6.0.1: - version "6.0.1" - resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-6.0.1.tgz#9e26c63d30f53443e9489495b2105d37b67a85d9" - integrity sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A== - dependencies: - ansi-regex "^5.0.1" - -strip-ansi@^7.0.1: +strip-ansi@^7.0.1, strip-ansi@^7.1.0: version "7.1.0" resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-7.1.0.tgz#d5b6568ca689d8561370b0707685d22434faff45" integrity sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ== @@ -4853,7 +4814,7 @@ strip-json-comments@3.1.1, strip-json-comments@^3.1.1: resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-3.1.1.tgz#31f1281b3832630434831c310c01cccda8cbe006" integrity sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig== -supports-color@8.1.1, supports-color@^8.1.1: +supports-color@8.1.1, supports-color@^8: version "8.1.1" resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-8.1.1.tgz#cd6fc17e28500cff56c1b86c0a7fd4a54a73005c" integrity sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q== @@ -4887,6 +4848,14 @@ supports-preserve-symlinks-flag@^1.0.0: resolved "https://registry.yarnpkg.com/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz#6eda4bd344a3c94aea376d4cc31bc77311039e09" integrity sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w== +terminal-link@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/terminal-link/-/terminal-link-3.0.0.tgz#91c82a66b52fc1684123297ce384429faf72ac5c" + integrity sha512-flFL3m4wuixmf6IfhFJd1YPiLiMuxEc8uHRM1buzIeZPm22Au2pDqBJQgdo7n1WfPU1ONFGv7YDwpFBmHGF6lg== + dependencies: + ansi-escapes "^5.0.0" + supports-hyperlinks "^2.2.0" + test-exclude@^6.0.0: version "6.0.0" resolved "https://registry.yarnpkg.com/test-exclude/-/test-exclude-6.0.0.tgz#04a8698661d805ea6fa293b6cb9e63ac044ef15e" @@ -4938,9 +4907,9 @@ to-regex-range@^5.0.1: is-number "^7.0.0" tough-cookie@*: - version "4.1.3" - resolved "https://registry.yarnpkg.com/tough-cookie/-/tough-cookie-4.1.3.tgz#97b9adb0728b42280aa3d814b6b999b2ff0318bf" - integrity sha512-aX/y5pVRkfRnfmuX+OdbSdXvPe6ieKX/G2s7e98f4poJHnqH3281gDPm/metm6E/WRamfx7WC4HUqkWHfQHprw== + version "4.1.4" + resolved "https://registry.yarnpkg.com/tough-cookie/-/tough-cookie-4.1.4.tgz#945f1461b45b5a8c76821c33ea49c3ac192c1b36" + integrity sha512-Loo5UUvLD9ScZ6jh8beX1T6sO1w2/MpCRpEP7V280GKMVUQ0Jzar2U3UJPsrdbziLEMMhu3Ujnq//rhiFuIeag== dependencies: psl "^1.1.33" punycode "^2.1.1" @@ -4981,10 +4950,10 @@ ts-node@^10.8.1, ts-node@^10.9.2: v8-compile-cache-lib "^3.0.1" yn "3.1.1" -ts-retry-promise@^0.7.1: - version "0.7.1" - resolved "https://registry.yarnpkg.com/ts-retry-promise/-/ts-retry-promise-0.7.1.tgz#176d6eee6415f07b6c7c286d3657355e284a6906" - integrity sha512-NhHOCZ2AQORvH42hOPO5UZxShlcuiRtm7P2jIq2L2RY3PBxw2mLnUsEdHrIslVBFya1v5aZmrR55lWkzo13LrQ== +ts-retry-promise@^0.8.1: + version "0.8.1" + resolved "https://registry.yarnpkg.com/ts-retry-promise/-/ts-retry-promise-0.8.1.tgz#ba90eb07cb03677fcbf78fe38e94c9183927e154" + integrity sha512-+AHPUmAhr5bSRRK5CurE9kNH8gZlEHnCgusZ0zy2bjfatUBDX0h6vGQjiT0YrGwSDwRZmU+bapeX6mj55FOPvg== tsconfig-paths@^3.15.0: version "3.15.0" @@ -4997,9 +4966,9 @@ tsconfig-paths@^3.15.0: strip-bom "^3.0.0" tslib@^2.0.3, tslib@^2.6.2: - version "2.6.2" - resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.6.2.tgz#703ac29425e7b37cd6fd456e92404d46d1f3e4ae" - integrity sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q== + version "2.6.3" + resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.6.3.tgz#0438f810ad7a9edcde7a241c3d80db693c8cbfe0" + integrity sha512-xNvxJEOUiWPGhUuUdQgAJPKOOJfGnIyKySOc09XkKsgdUV/3E2zvwZYdejjmRgPCgcym1juLH3226yA7sEFJKQ== tunnel-agent@*: version "0.6.0" @@ -5045,6 +5014,11 @@ type-fest@^0.8.0, type-fest@^0.8.1: resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.8.1.tgz#09e249ebde851d3b1e48d27c105444667f17b83d" integrity sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA== +type-fest@^1.0.2: + version "1.4.0" + resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-1.4.0.tgz#e9fb813fe3bf1744ec359d55d1affefa76f14be1" + integrity sha512-yGSza74xk0UG8k+pLh5oeoYirvIiWo5t0/o3zHHAO2tRDiZcxWP7fywNlXhqb6/r6sWvwi+RsyQMWhVLe4BVuA== + typed-array-buffer@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/typed-array-buffer/-/typed-array-buffer-1.0.0.tgz#18de3e7ed7974b0a729d3feecb94338d1472cd60" @@ -5300,7 +5274,7 @@ workerpool@6.2.1: resolved "https://registry.yarnpkg.com/workerpool/-/workerpool-6.2.1.tgz#46fc150c17d826b86a008e5a4508656777e9c343" integrity sha512-ILEIE97kDZvF9Wb9f6h5aXK4swSlKGUcOEGiIYb2OOu/IrDU9iwj0fD//SsA6E5ibwJxpEvhullJY4Sl4GcpAw== -"wrap-ansi-cjs@npm:wrap-ansi@^7.0.0": +"wrap-ansi-cjs@npm:wrap-ansi@^7.0.0", wrap-ansi@^7.0.0: version "7.0.0" resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-7.0.0.tgz#67e145cff510a6a6984bdf1152911d69d2eb9e43" integrity sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q== @@ -5318,15 +5292,6 @@ wrap-ansi@^6.2.0: string-width "^4.1.0" strip-ansi "^6.0.0" -wrap-ansi@^7.0.0: - version "7.0.0" - resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-7.0.0.tgz#67e145cff510a6a6984bdf1152911d69d2eb9e43" - integrity sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q== - dependencies: - ansi-styles "^4.0.0" - string-width "^4.1.0" - strip-ansi "^6.0.0" - wrap-ansi@^8.1.0: version "8.1.0" resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-8.1.0.tgz#56dc22368ee570face1b49819975d9b9a5ead214"