diff --git a/messages/scratchorg_poolFetch.json b/messages/scratchorg_poolFetch.json index 373c41ec..b33e9dc9 100644 --- a/messages/scratchorg_poolFetch.json +++ b/messages/scratchorg_poolFetch.json @@ -2,5 +2,7 @@ "commandDescription": "Gets an active/unused scratch org from the scratch org pool", "tagDescription": "(required) tag used to identify the scratch org pool", "mypoolDescription": "Filter the tag for any additions created by the executor of the command", + "aliasDescription":"Fetch and set an alias for the org", + "setdefaultusernameDescription": "set the authenticated org as the default username that all commands run against", "sendToUserDescription": "Send the credentials of the fetched scratchorg to another DevHub user, Useful for situations when pool is only limited to certain users" } diff --git a/messages/source_pmd.json b/messages/source_pmd.json index 7315c1ef..f67777e3 100644 --- a/messages/source_pmd.json +++ b/messages/source_pmd.json @@ -1,10 +1,17 @@ { - "commandDescription": "This command is a wrapper around PMD ( downloads PMD for the first time) with some predefined defaults, such as ruleset, output format, output file. The command is to be run from the project directory", + "commandDescription": "This command is a wrapper around PMD ( downloads PMD for the first time) with some predefined defaults, such as ruleset, output format, output file.", "javaHomeFlagDescription": "The command will try to locate the javahome path to execute PMD automatically, set this flag to override it to another javahome path", "directoryFlagDescription": "[default: Default project directory as mentioned in sfdx-project.json] Override this to set a different directory in the project folder", - "rulesetFlagDescription": "[default: [sfpowerkit](https://github.com/Accenture/sfpowerkit/blob/main/resources/pmd-ruleset.xml)] The comma separated pmd ruleset that will be utilzied for analyzing the apex classes, Checkout https://pmd.github.io/latest/pmd_userdocs_making_rulesets.html to create your own ruleset", + "rulesetsFlagDescription": "[default: [sfpowerkit](https://github.com/Accenture/sfpowerkit/blob/main/resources/pmd-ruleset.xml)] The comma separated pmd ruleset that will be utilzied for analyzing the apex classes, Checkout https://pmd.github.io/latest/pmd_userdocs_making_rulesets.html to create your own ruleset", + "rulesetFlagDescription": "DEPRECATED: use --rulesets instead", "formatFlagDescription": "[default: text] The format for the pmd output, Possible values are available at https://pmd.github.io/latest/pmd_userdocs_cli_reference.html#available-report-formats", - "reportFlagDescription": "[default: pmd-output] The path to where the output of the analysis should be written", - "supressoutputFlagDescription": "[default: false] Supress the ouptut of the analysis to be displayed in the console", - "versionFlagDescription": "[default: 6.30.0] The version of the pmd to be utilized for the analysis, this version will be downloaded to sfpowerkit's cache directory" + "filelistFlagDescription": "Path to file containing a comma delimited list of files to analyze.", + "reportFlagDescription": "DEPRECATED: [default: pmd-output] use --reportfile instead.", + "reportfileFlagDescription": "[default: pmd-output] The path to where the output of the analysis should be written", + "versionFlagDescription": "[default: 6.34.0] The version of the pmd to be utilized for the analysis, this version will be downloaded to sfpowerkit's cache directory", + "minimumpriorityFlagDescription": "Rule priority threshold; rules with lower priority than configured here won't be used.", + "shortnamesFlagDescription": "Prints shortened filenames in the report.", + "showsuppressedFlagDescription": "Causes the suppressed rule violations to be added to the report.", + "suppressmarkerFlagDescription": "[default: NOPMD] Specifies the comment token that marks lines which PMD should ignore.", + "failonviolationFlagDescription": "[default: true] By default PMD exits with status 4 if violations are found. Disable this feature with -failOnViolation false to exit with 0 instead and just output the report." } diff --git a/npm-shrinkwrap.json b/npm-shrinkwrap.json index 59b3ce27..0fd9d4e3 100644 --- a/npm-shrinkwrap.json +++ b/npm-shrinkwrap.json @@ -1,6 +1,6 @@ { "name": "sfpowerkit", - "version": "2.8.7", + "version": "3.1.6", "lockfileVersion": 1, "requires": true, "dependencies": { @@ -362,125 +362,36 @@ } }, "@oclif/dev-cli": { - "version": "1.22.2", - "resolved": "https://registry.npmjs.org/@oclif/dev-cli/-/dev-cli-1.22.2.tgz", - "integrity": "sha512-c7633R37RxrQIpwqPKxjNRm6/jb1yuG8fd16hmNz9Nw+/MUhEtQtKHSCe9ScH8n5M06l6LEo4ldk9LEGtpaWwA==", + "version": "1.26.0", + "resolved": "https://registry.npmjs.org/@oclif/dev-cli/-/dev-cli-1.26.0.tgz", + "integrity": "sha512-272udZP+bG4qahoAcpWcMTJKiA+V42kRMqQM7n4tgW35brYb2UP5kK+p08PpF8sgSfRTV8MoJVJG9ax5kY82PA==", "dev": true, "requires": { - "@oclif/command": "^1.5.13", - "@oclif/config": "^1.12.12", - "@oclif/errors": "^1.2.2", - "@oclif/plugin-help": "^2.1.6", + "@oclif/command": "^1.8.0", + "@oclif/config": "^1.17.0", + "@oclif/errors": "^1.3.3", + "@oclif/plugin-help": "^3.2.0", "cli-ux": "^5.2.1", "debug": "^4.1.1", - "fs-extra": "^7.0.1", + "find-yarn-workspace-root": "^2.0.0", + "fs-extra": "^8.1", "github-slugger": "^1.2.1", "lodash": "^4.17.11", - "normalize-package-data": "^2.5.0", + "normalize-package-data": "^3.0.0", "qqjs": "^0.3.10", - "tslib": "^1.9.3" + "tslib": "^2.0.3" }, "dependencies": { - "@oclif/plugin-help": { - "version": "2.2.3", - "resolved": "https://registry.npmjs.org/@oclif/plugin-help/-/plugin-help-2.2.3.tgz", - "integrity": "sha512-bGHUdo5e7DjPJ0vTeRBMIrfqTRDBfyR5w0MP41u0n3r7YG5p14lvMmiCXxi6WDaP2Hw5nqx3PnkAIntCKZZN7g==", - "dev": true, - "requires": { - "@oclif/command": "^1.5.13", - "chalk": "^2.4.1", - "indent-string": "^4.0.0", - "lodash.template": "^4.4.0", - "string-width": "^3.0.0", - "strip-ansi": "^5.0.0", - "widest-line": "^2.0.1", - "wrap-ansi": "^4.0.0" - } - }, - "ansi-regex": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz", - "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==", - "dev": true - }, - "emoji-regex": { - "version": "7.0.3", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz", - "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==", - "dev": true - }, "fs-extra": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-7.0.1.tgz", - "integrity": "sha512-YJDaCJZEnBmcbw13fvdAM9AwNOJwOzrE4pqMqBq5nFiEqXUqHwlK4B+3pUw6JNvfSPtX05xFHtYy/1ni01eGCw==", + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-8.1.0.tgz", + "integrity": "sha512-yhlQgA6mnOJUKOsRUFsgJdQCvkKhcz8tlZG5HBQfReYZy46OwLcY+Zia0mtdHsOo9y/hP+CxMN0TU9QxoOtG4g==", "dev": true, "requires": { - "graceful-fs": "^4.1.2", + "graceful-fs": "^4.2.0", "jsonfile": "^4.0.0", "universalify": "^0.1.0" } - }, - "string-width": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz", - "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==", - "dev": true, - "requires": { - "emoji-regex": "^7.0.1", - "is-fullwidth-code-point": "^2.0.0", - "strip-ansi": "^5.1.0" - } - }, - "strip-ansi": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", - "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", - "dev": true, - "requires": { - "ansi-regex": "^4.1.0" - } - }, - "tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", - "dev": true - }, - "widest-line": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/widest-line/-/widest-line-2.0.1.tgz", - "integrity": "sha512-Ba5m9/Fa4Xt9eb2ELXt77JxVDV8w7qQrH0zS/TWSJdLyAwQjWoOzpzj5lwVftDz6n/EOu3tNACS84v509qwnJA==", - "dev": true, - "requires": { - "string-width": "^2.1.1" - }, - "dependencies": { - "ansi-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", - "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", - "dev": true - }, - "string-width": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", - "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", - "dev": true, - "requires": { - "is-fullwidth-code-point": "^2.0.0", - "strip-ansi": "^4.0.0" - } - }, - "strip-ansi": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", - "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", - "dev": true, - "requires": { - "ansi-regex": "^3.0.0" - } - } - } } } }, @@ -561,19 +472,52 @@ } }, "@oclif/plugin-help": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/@oclif/plugin-help/-/plugin-help-3.2.0.tgz", - "integrity": "sha512-7jxtpwVWAVbp1r46ZnTK/uF+FeZc6y4p1XcGaIUuPAp7wx6NJhIRN/iMT9UfNFX/Cz7mq+OyJz+E+i0zrik86g==", + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/@oclif/plugin-help/-/plugin-help-3.2.2.tgz", + "integrity": "sha512-SPZ8U8PBYK0n4srFjCLedk0jWU4QlxgEYLCXIBShJgOwPhTTQknkUlsEwaMIevvCU4iCQZhfMX+D8Pz5GZjFgA==", "requires": { "@oclif/command": "^1.5.20", "@oclif/config": "^1.15.1", - "chalk": "^2.4.1", + "@oclif/errors": "^1.2.2", + "chalk": "^4.1.0", "indent-string": "^4.0.0", "lodash.template": "^4.4.0", "string-width": "^4.2.0", "strip-ansi": "^6.0.0", "widest-line": "^3.1.0", "wrap-ansi": "^4.0.0" + }, + "dependencies": { + "ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "requires": { + "color-convert": "^2.0.1" + } + }, + "chalk": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.1.tgz", + "integrity": "sha512-diHzdDKxcU+bAsUboHLPEDQiw0qEe0qd7SYUn3HgcFlWgbDcfLGswOHYeGrHKzG9z6UYf01d9VFMfZxPM1xZSg==", + "requires": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + } + }, + "color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "requires": { + "color-name": "~1.1.4" + } + }, + "color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" + } } }, "@oclif/screen": { @@ -582,9 +526,9 @@ "integrity": "sha512-60CHpq+eqnTxLZQ4PGHYNwUX572hgpMHGPtTWMjdTMsAvlm69lZV/4ly6O3sAYkomo4NggGcomrDpBe34rxUqw==" }, "@oclif/test": { - "version": "1.2.7", - "resolved": "https://registry.npmjs.org/@oclif/test/-/test-1.2.7.tgz", - "integrity": "sha512-1I8KQkOgScw18mr0zcly/OJjDW+kZnnmGXELaVBF69EZVzVgjE+Mz3EU1W29wf2rB7e8BqqtNrHzzoFu4oDuTw==", + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/@oclif/test/-/test-1.2.8.tgz", + "integrity": "sha512-HCh0qPge1JCqTEw4s2ScnicEZd4Ro4/0VvdjpsfCiX6fuDV53fRZ2uqLTgxKGHrVoqOZnVrRZHyhFyEsFGs+zQ==", "requires": { "fancy-test": "^1.4.3" } @@ -764,12 +708,12 @@ } }, "@salesforce/core": { - "version": "2.20.4", - "resolved": "https://registry.npmjs.org/@salesforce/core/-/core-2.20.4.tgz", - "integrity": "sha512-S8KKaJbnQu/jGQjjY+HmdRDqxKBOmZ1TtlWPyHPiLrcNTCABJOmEex0RiGJ7VJ0on94GoGHi+n+0gbNLKVxyxQ==", + "version": "2.20.10", + "resolved": "https://registry.npmjs.org/@salesforce/core/-/core-2.20.10.tgz", + "integrity": "sha512-ogER5ieNlmHlBt0SfVC0XLHtPtH/WaBAFtsZitHMLV/Zyv0PHwP+5xpSygMmSDzuLZjRooXikH9dFu0z8WEjJw==", "requires": { "@salesforce/bunyan": "^2.0.0", - "@salesforce/kit": "^1.4.3", + "@salesforce/kit": "^1.5.0", "@salesforce/schemas": "^1.0.1", "@salesforce/ts-types": "^1.0.0", "@types/graceful-fs": "^4.1.3", @@ -785,9 +729,9 @@ }, "dependencies": { "@salesforce/kit": { - "version": "1.4.5", - "resolved": "https://registry.npmjs.org/@salesforce/kit/-/kit-1.4.5.tgz", - "integrity": "sha512-EPR9BkbdLPr//CB9IXVPUyM0ANEvadlH7yfI1p1xA9lxzSakJk7w2CEds+8VDaJ9nlY60jjSWR8TpJWuPqU6dA==", + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/@salesforce/kit/-/kit-1.5.0.tgz", + "integrity": "sha512-Op7Q6bLfzMccX1fbW3/xiNb94/9a8mTTm+EcxsPPFQOwxRWt12uj2htDYZFUgEvVzBWu8V82Vo+g90NG+pvHXA==", "requires": { "@salesforce/ts-types": "^1.5.5", "tslib": "^1.10.0" @@ -819,9 +763,9 @@ } }, "@salesforce/dev-config": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/@salesforce/dev-config/-/dev-config-2.0.0.tgz", - "integrity": "sha512-CwPeiNrH7bULxjr7RmvStR3uPWu3aMl35mQrUNip2pTMvXQ4QmcDowWqx5MSaLj03JIQaoxnt6g8qWlhyOmxUQ==", + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/@salesforce/dev-config/-/dev-config-2.1.0.tgz", + "integrity": "sha512-I+zrptt8zI1jbP3TVA6g7i3quuh71tPky8gwCsXaQ2X9ea1xbeAslN4YjWfgqbY5SaxJhqP979oxFADlH+OehQ==", "dev": true }, "@salesforce/kit": { @@ -840,65 +784,108 @@ } } }, - "@salesforce/plugin-analytics": { - "version": "1.12.1", - "resolved": "https://registry.npmjs.org/@salesforce/plugin-analytics/-/plugin-analytics-1.12.1.tgz", - "integrity": "sha512-JI/PZ7HvgtIPHVqL+eBM4qB1xYxnufj99OCdMOzMWjQt4qaUunKkFmGsQlw3W14g0spBvVc1rT83OsSgXJlV1A==", + "@salesforce/plugin-telemetry": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/@salesforce/plugin-telemetry/-/plugin-telemetry-1.2.2.tgz", + "integrity": "sha512-NkHyrktBAgD7dYehYQTFYPHVoiH9WHmyP5sFBF+qvnfIPSDr0M6QS5iJQGtKiVd8S0qgRrMgAGiFUhT23V4O2Q==", "requires": { - "@oclif/command": "^1.6.0", - "@oclif/errors": "^1.2.2", - "@oclif/parser": "^3.8.4", - "@salesforce/command": "^3.0.0", - "@salesforce/core": "^2.1.6", - "@salesforce/kit": "^1.2.1", - "@salesforce/telemetry": "^2.0.2", - "@salesforce/ts-types": "^1.2.0", - "debug": "4.1.1", - "fs-extra": "7.0.1", - "tslib": "1.10.0" + "@oclif/config": "^1", + "@salesforce/command": "^3.0.3", + "@salesforce/core": "^2.24.0", + "@salesforce/telemetry": "^2.0.4", + "tslib": "^2" }, "dependencies": { + "@salesforce/core": { + "version": "2.24.0", + "resolved": "https://registry.npmjs.org/@salesforce/core/-/core-2.24.0.tgz", + "integrity": "sha512-bdN9RNeS/8msA8U+F/6GEEteGNeE/uwc/av9nFSL0u+jyzA9llKnqKcuuAKa8YKuS1WHYfWs4mDNXST1gj+c1A==", + "requires": { + "@salesforce/bunyan": "^2.0.0", + "@salesforce/kit": "^1.5.0", + "@salesforce/schemas": "^1.0.1", + "@salesforce/ts-types": "^1.5.13", + "debug": "^3.1.0", + "graceful-fs": "^4.2.4", + "jsen": "0.6.6", + "jsforce": "^1.10.1", + "jsonwebtoken": "8.5.0", + "mkdirp": "1.0.4", + "sfdx-faye": "^1.0.9" + } + }, + "@salesforce/kit": { + "version": "1.5.14", + "resolved": "https://registry.npmjs.org/@salesforce/kit/-/kit-1.5.14.tgz", + "integrity": "sha512-vGzNltfWo7wtaDR0Drgf3nAMWsJ5ZheM4LODfFZeorsFk4Xj8J6hPJWuMcYUT07yCenECQalOjT0SU3p77QgYA==", + "requires": { + "@salesforce/ts-types": "^1.5.13", + "tslib": "^2.2.0" + }, + "dependencies": { + "tslib": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.3.0.tgz", + "integrity": "sha512-N82ooyxVNm6h1riLCoyS9e3fuJ3AMG2zIZs2Gd1ATcSFjSA23Q0fzjjZeh0jbJvWVDZ0cJT8yaNNaaXHzueNjg==" + } + } + }, + "@salesforce/ts-types": { + "version": "1.5.17", + "resolved": "https://registry.npmjs.org/@salesforce/ts-types/-/ts-types-1.5.17.tgz", + "integrity": "sha512-zyF1+4EacGsIWtfntbq7PvxjB2XABz33RzKfOhot15JC4tFiQaSFPtNb8d6hj7BkQSjo2Zs3qEeLJwRFcpaEIQ==", + "requires": { + "tslib": "^2.2.0" + }, + "dependencies": { + "tslib": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.3.0.tgz", + "integrity": "sha512-N82ooyxVNm6h1riLCoyS9e3fuJ3AMG2zIZs2Gd1ATcSFjSA23Q0fzjjZeh0jbJvWVDZ0cJT8yaNNaaXHzueNjg==" + } + } + }, "debug": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", - "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", + "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", "requires": { "ms": "^2.1.1" } }, - "fs-extra": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-7.0.1.tgz", - "integrity": "sha512-YJDaCJZEnBmcbw13fvdAM9AwNOJwOzrE4pqMqBq5nFiEqXUqHwlK4B+3pUw6JNvfSPtX05xFHtYy/1ni01eGCw==", + "jsforce": { + "version": "1.10.1", + "resolved": "https://registry.npmjs.org/jsforce/-/jsforce-1.10.1.tgz", + "integrity": "sha512-rv+UpBR9n/sWdgLhyPOJuKgT9ZKngypYf9XOHoXVRpSllvTFCjn+M3H81Nu1oYjPH9JKXVS8hL1dmmq8+kOAJg==", "requires": { - "graceful-fs": "^4.1.2", - "jsonfile": "^4.0.0", - "universalify": "^0.1.0" + "base64-url": "^2.2.0", + "co-prompt": "^1.0.0", + "coffeescript": "^1.10.0", + "commander": "^2.9.0", + "csv-parse": "^4.10.1", + "csv-stringify": "^1.0.4", + "faye": "^1.2.0", + "inherits": "^2.0.1", + "lodash": "^4.17.19", + "multistream": "^2.0.5", + "opn": "^5.3.0", + "promise": "^7.1.1", + "readable-stream": "^2.1.0", + "request": "^2.72.0", + "xml2js": "^0.4.16" } - }, - "tslib": { - "version": "1.10.0", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.10.0.tgz", - "integrity": "sha512-qOebF53frne81cf0S9B41ByenJ3/IuH8yJKngAX35CmiZySA0khhkovshKK+jGCaMnVomla7gVlIcc3EvKPbTQ==" } } }, "@salesforce/plugin-user": { - "version": "1.0.9", - "resolved": "https://registry.npmjs.org/@salesforce/plugin-user/-/plugin-user-1.0.9.tgz", - "integrity": "sha512-SaTrFwhLxOknfKMj8MGGzigTLpCMAC9coprS2jWCwGucnzGzWRRsU0A0xZSv0dy++nP8ncKH+/OWk7Ig2vKbNA==", + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/@salesforce/plugin-user/-/plugin-user-1.2.8.tgz", + "integrity": "sha512-X+kpUHe60OXYxCUPT8AM5tBjuxAwEOmF9iwWXiFGcWo1xuf9FlgTwlmar9A6PqUrF1CIU3Taz5gGbF6YrDHAwQ==", "requires": { "@oclif/config": "^1.17.0", - "@salesforce/command": "^3.0.4", - "@salesforce/core": "^2.15.2", - "tslib": "^1" - }, - "dependencies": { - "tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" - } + "@salesforce/command": "^3.1.0", + "@salesforce/core": "^2.20.5", + "tslib": "^2" } }, "@salesforce/schemas": { @@ -907,31 +894,31 @@ "integrity": "sha512-ND9JF3yAZQMIK51uC8RHN5w7NYLivTlcTaH2Udw51oyKlzeWUTYwtsNe534t+zPBSo98+mVJwk53WwEsEUe8iw==" }, "@salesforce/source-deploy-retrieve": { - "version": "1.1.15", - "resolved": "https://registry.npmjs.org/@salesforce/source-deploy-retrieve/-/source-deploy-retrieve-1.1.15.tgz", - "integrity": "sha512-gmBJyND4kqd5M4ICtaGXlUps02r9WrI/zmzAmdvufKeW9ElKxKKFP+KYfh6XSjNFI3ea9hA48ZUQHUZrOr2lrQ==", + "version": "1.1.24", + "resolved": "https://registry.npmjs.org/@salesforce/source-deploy-retrieve/-/source-deploy-retrieve-1.1.24.tgz", + "integrity": "sha512-L/t/353lf9FctGxAzV+a2VxvSTeeSrUh7cVdtbczzAdVAz94GeDTq118Qy2kgsHdAx2CjXuQamBOECYyERSp8Q==", "requires": { - "@salesforce/core": "2.11.0", + "@salesforce/core": "2.13.0", "archiver": "4.0.1", "fast-xml-parser": "^3.17.4", "gitignore-parser": "0.0.2", "ignore": "^5.1.8", "mime": "2.4.6", - "unzipper": "0.10.0", + "unzipper": "0.10.11", "xmldom-sfdx-encoding": "^0.1.29" }, "dependencies": { "@salesforce/core": { - "version": "2.11.0", - "resolved": "https://registry.npmjs.org/@salesforce/core/-/core-2.11.0.tgz", - "integrity": "sha512-xxt56g7viF93SRQ+OGk/AykM4BufHF4dc6OJC4sxlJ5+aLRwBZFci52XlS0L4aJ91nvgk9HNRUiLQ0QNQywXTw==", + "version": "2.13.0", + "resolved": "https://registry.npmjs.org/@salesforce/core/-/core-2.13.0.tgz", + "integrity": "sha512-lPijkej9cBix3QztRDa4YYbGJcLkrc+wNDE+bgOxI9VxTpoNuclOGkaKsqqE6HUItCS7p5iJTcK0gEJ2Xl81lA==", "requires": { "@salesforce/bunyan": "^2.0.0", - "@salesforce/kit": "^1.2.2", + "@salesforce/kit": "^1.3.2", "@salesforce/schemas": "^1.0.1", "@salesforce/ts-types": "^1.0.0", "@types/graceful-fs": "^4.1.3", - "@types/jsforce": "1.9.2", + "@types/jsforce": "1.9.23", "debug": "^3.1.0", "graceful-fs": "^4.2.4", "jsen": "0.6.6", @@ -941,11 +928,6 @@ "sfdx-faye": "^1.0.9" } }, - "@types/jsforce": { - "version": "1.9.2", - "resolved": "https://registry.npmjs.org/@types/jsforce/-/jsforce-1.9.2.tgz", - "integrity": "sha512-ZRRPNf/e44QnFI8VEsPxzrM/+Y5vx/HGsMI8qE4JvBHDkSfoFWAdZ93uW6Oh3sHmcoShexcoTH9gufihTgYBLQ==" - }, "archiver": { "version": "4.0.1", "resolved": "https://registry.npmjs.org/archiver/-/archiver-4.0.1.tgz", @@ -980,11 +962,6 @@ "lodash": "^4.17.14" } }, - "bluebird": { - "version": "3.4.7", - "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.4.7.tgz", - "integrity": "sha1-9y12C+Cbf3bQjtj66Ysomo0F+rM=" - }, "compress-commons": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/compress-commons/-/compress-commons-3.0.0.tgz", @@ -1052,22 +1029,6 @@ "resolved": "https://registry.npmjs.org/mime/-/mime-2.4.6.tgz", "integrity": "sha512-RZKhC3EmpBchfTGBVb8fb+RL2cWyw/32lshnsETttkBAyAUXSGHxbEJWWRXc751DrIxG1q04b8QwMbAwkRPpUA==" }, - "unzipper": { - "version": "0.10.0", - "resolved": "https://registry.npmjs.org/unzipper/-/unzipper-0.10.0.tgz", - "integrity": "sha512-Vi1fHl+isVKXAiDloz8ykI+DJ9pIzDFhwxbd6ceC8XltYQfoKPhswX3yRsccXnA8tP8LPAxZO1bVWVtGE/VHaQ==", - "requires": { - "big-integer": "^1.6.17", - "binary": "~0.3.0", - "bluebird": "~3.4.1", - "buffer-indexof-polyfill": "~1.0.0", - "duplexer2": "~0.1.4", - "fstream": "^1.0.12", - "listenercount": "~1.0.1", - "readable-stream": "~2.3.6", - "setimmediate": "~1.0.4" - } - }, "zip-stream": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/zip-stream/-/zip-stream-3.0.1.tgz", @@ -1124,37 +1085,25 @@ "integrity": "sha512-ONhaKPIufzzrlNbqtWFFd+jlnemX6lJAgq9ZeiZtS7I1PIf/la7CW4m83rTXRnVnsMbW2k56pGYu7AUFJD9Pow==" }, "@sinonjs/commons": { - "version": "1.8.1", - "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-1.8.1.tgz", - "integrity": "sha512-892K+kWUUi3cl+LlqEWIDrhvLgdL79tECi8JZUyq6IviKy/DNhuzCRlbHUjxK89f4ypPMMaFnFuR9Ie6DoIMsw==", - "dev": true, + "version": "1.8.3", + "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-1.8.3.tgz", + "integrity": "sha512-xkNcLAn/wZaX14RPlwizcKicDk9G3F8m2nU3L7Ukm5zBgTwiT0wsoFAHx9Jq56fJA1z/7uKGtCRu16sOUCLIHQ==", "requires": { "type-detect": "4.0.8" } }, "@sinonjs/fake-timers": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/@sinonjs/fake-timers/-/fake-timers-6.0.1.tgz", - "integrity": "sha512-MZPUxrmFubI36XS1DI3qmI0YdN1gks62JtFZvxR67ljjSNCeK6U08Zx4msEWOXuofgqUt6zPHSi1H9fbjR/NRA==", - "dev": true, + "version": "7.0.5", + "resolved": "https://registry.npmjs.org/@sinonjs/fake-timers/-/fake-timers-7.0.5.tgz", + "integrity": "sha512-fUt6b15bjV/VW93UP5opNXJxdwZSbK1EdiwnhN7XrQrcpaOhMJpZ/CjwFpM3THpxwA+YviBUJKSuEqKlCK5alw==", "requires": { "@sinonjs/commons": "^1.7.0" } }, - "@sinonjs/formatio": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/@sinonjs/formatio/-/formatio-5.0.1.tgz", - "integrity": "sha512-KaiQ5pBf1MpS09MuA0kp6KBQt2JUOQycqVG1NZXvzeaXe5LGFqAKueIS0bw4w0P9r7KuBSVdUk5QjXsUdu2CxQ==", - "dev": true, - "requires": { - "@sinonjs/commons": "^1", - "@sinonjs/samsam": "^5.0.2" - } - }, "@sinonjs/samsam": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/@sinonjs/samsam/-/samsam-5.3.0.tgz", - "integrity": "sha512-hXpcfx3aq+ETVBwPlRFICld5EnrkexXuXDwqUNhDdr5L8VjvMeSRwyOa0qL7XFmR+jVWR4rUZtnxlG7RX72sBg==", + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/@sinonjs/samsam/-/samsam-5.3.1.tgz", + "integrity": "sha512-1Hc0b1TtyfBu8ixF/tpfSHTVWKwCBLY4QJbkgnE7HcwyvT2xArDxb4K7dMgqRm3szI+LJbzmW/s4xxEhv6hwDg==", "dev": true, "requires": { "@sinonjs/commons": "^1.6.0", @@ -1190,9 +1139,9 @@ "dev": true }, "@types/chai": { - "version": "4.2.14", - "resolved": "https://registry.npmjs.org/@types/chai/-/chai-4.2.14.tgz", - "integrity": "sha512-G+ITQPXkwTrslfG5L/BksmbLUA0M1iybEsmCWPqzSxsRRhJZimBKJkoMi8fr/CPygPTj4zO5pJH7I2/cm9M7SQ==" + "version": "4.2.16", + "resolved": "https://registry.npmjs.org/@types/chai/-/chai-4.2.16.tgz", + "integrity": "sha512-vI5iOAsez9+roLS3M3+Xx7w+WRuDtSmF8bQkrbcIJ2sC1PcDgVoA0WGpa+bIrJ+y8zqY2oi//fUctkxtIcXJCw==" }, "@types/diff-match-patch": { "version": "1.0.32", @@ -1201,9 +1150,9 @@ "dev": true }, "@types/fs-extra": { - "version": "9.0.4", - "resolved": "https://registry.npmjs.org/@types/fs-extra/-/fs-extra-9.0.4.tgz", - "integrity": "sha512-50GO5ez44lxK5MDH90DYHFFfqxH7+fTqEEnvguQRzJ/tY9qFrMSHLiYHite+F3SNmf7+LHC1eMXojuD+E3Qcyg==", + "version": "9.0.11", + "resolved": "https://registry.npmjs.org/@types/fs-extra/-/fs-extra-9.0.11.tgz", + "integrity": "sha512-mZsifGG4QeQ7hlkhO56u7zt/ycBgGxSVsFI/6lGTU34VtwkiqrrSDgw0+ygs8kFGWcXnFQWMrzF2h7TtDFNixA==", "dev": true, "requires": { "@types/node": "*" @@ -1236,9 +1185,9 @@ } }, "@types/lodash": { - "version": "4.14.165", - "resolved": "https://registry.npmjs.org/@types/lodash/-/lodash-4.14.165.tgz", - "integrity": "sha512-tjSSOTHhI5mCHTy/OOXYIhi2Wt1qcbHmuXD1Ha7q70CgI/I71afO4XtLb/cVexki1oVYchpul/TOuu3Arcdxrg==" + "version": "4.14.168", + "resolved": "https://registry.npmjs.org/@types/lodash/-/lodash-4.14.168.tgz", + "integrity": "sha512-oVfRvqHV/V6D1yifJbVRU3TMp8OT6o6BG+U9MkwuJ3U8/CsDHvalRpsxBqivn71ztOFZBTfJMvETbqHiaNSj7Q==" }, "@types/minimatch": { "version": "3.0.3", @@ -1255,9 +1204,9 @@ } }, "@types/mocha": { - "version": "8.0.4", - "resolved": "https://registry.npmjs.org/@types/mocha/-/mocha-8.0.4.tgz", - "integrity": "sha512-M4BwiTJjHmLq6kjON7ZoI2JMlBvpY3BYSdiP6s/qCT3jb1s9/DeJF0JELpAxiVSIxXDzfNKe+r7yedMIoLbknQ==", + "version": "8.2.2", + "resolved": "https://registry.npmjs.org/@types/mocha/-/mocha-8.2.2.tgz", + "integrity": "sha512-Lwh0lzzqT5Pqh6z61P3c3P5nm6fzQK/MMHl9UKeneAeInVflBSz1O2EkX6gM6xfJd7FBXBY5purtLx7fUiZ7Hw==", "dev": true }, "@types/node": { @@ -1265,23 +1214,27 @@ "resolved": "https://registry.npmjs.org/@types/node/-/node-14.14.7.tgz", "integrity": "sha512-Zw1vhUSQZYw+7u5dAwNbIA9TuTotpzY/OF7sJM9FqPOF3SPjKnxrjoTktXDZgUjybf4cWVBP7O8wvKdSaGHweg==" }, - "@types/parse-json": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/@types/parse-json/-/parse-json-4.0.0.tgz", - "integrity": "sha512-//oorEZjL6sbPcKUaCdIGlIUeH26mgzimjBB77G6XRgnDl/L5wOnpyBGRe/Mmf5CVW3PwEBE1NjiMZ/ssFh4wA==", - "dev": true - }, "@types/pino": { - "version": "6.3.3", - "resolved": "https://registry.npmjs.org/@types/pino/-/pino-6.3.3.tgz", - "integrity": "sha512-YtT58N7Tt7B7f5B/upuq694p4eT4icM9TuhgYeKhm+dnF0Ahm7q5YJp1i7vC2mBMdWgH1IvOa2XK6rhUjBv0GQ==", + "version": "6.3.7", + "resolved": "https://registry.npmjs.org/@types/pino/-/pino-6.3.7.tgz", + "integrity": "sha512-v7FdDXVEL0Zx1zcCf0cJZMojChnF+O0ujDKV1UdocsLuUhENjdtNIaanCZK1zRELp35x//bI2/IHtYUK0vmRvw==", "dev": true, "requires": { "@types/node": "*", + "@types/pino-pretty": "*", "@types/pino-std-serializers": "*", "@types/sonic-boom": "*" } }, + "@types/pino-pretty": { + "version": "4.7.0", + "resolved": "https://registry.npmjs.org/@types/pino-pretty/-/pino-pretty-4.7.0.tgz", + "integrity": "sha512-fIZ+VXf9gJoJR4tiiM7G+j/bZkPoZEfFGzA4d8tAWCTpTVyvVaBwnmdLs3wEXYpMjw8eXulrOzNCjmGHT3FgHw==", + "dev": true, + "requires": { + "@types/pino": "*" + } + }, "@types/pino-std-serializers": { "version": "2.4.1", "resolved": "https://registry.npmjs.org/@types/pino-std-serializers/-/pino-std-serializers-2.4.1.tgz", @@ -1317,9 +1270,9 @@ } }, "@types/request-promise": { - "version": "4.1.46", - "resolved": "https://registry.npmjs.org/@types/request-promise/-/request-promise-4.1.46.tgz", - "integrity": "sha512-3Thpj2Va5m0ji3spaCk8YKrjkZyZc6RqUVOphA0n/Xet66AW/AiOAs5vfXhQIL5NmkaO7Jnun7Nl9NEjJ2zBaw==", + "version": "4.1.47", + "resolved": "https://registry.npmjs.org/@types/request-promise/-/request-promise-4.1.47.tgz", + "integrity": "sha512-eRSZhAS8SMsrWOM8vbhxFGVZhTbWSJvaRKyufJTdIf4gscUouQvOBlfotPSPHbMR3S7kfkyKbhb1SWPmQdy3KQ==", "dev": true, "requires": { "@types/bluebird": "*", @@ -1343,18 +1296,13 @@ } }, "@types/sinon": { - "version": "9.0.9", - "resolved": "https://registry.npmjs.org/@types/sinon/-/sinon-9.0.9.tgz", - "integrity": "sha512-z/y8maYOQyYLyqaOB+dYQ6i0pxKLOsfwCmHmn4T7jS/SDHicIslr37oE3Dg8SCqKrKeBy6Lemu7do2yy+unLrw==", + "version": "10.0.0", + "resolved": "https://registry.npmjs.org/@types/sinon/-/sinon-10.0.0.tgz", + "integrity": "sha512-jDZ55oCKxqlDmoTBBbBBEx+N8ZraUVhggMZ9T5t+6/Dh8/4NiOjSUfpLrPiEwxQDlAe3wpAkoXhWvE6LibtsMQ==", "requires": { - "@types/sinonjs__fake-timers": "*" + "@sinonjs/fake-timers": "^7.0.4" } }, - "@types/sinonjs__fake-timers": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/@types/sinonjs__fake-timers/-/sinonjs__fake-timers-6.0.2.tgz", - "integrity": "sha512-dIPoZ3g5gcx9zZEszaxLSVTvMReD3xxyyDnQUjA6IYDG9Ba2AV0otMPs+77sG9ojB4Qr2N2Vk5RnKeuA0X/0bg==" - }, "@types/sonic-boom": { "version": "0.7.0", "resolved": "https://registry.npmjs.org/@types/sonic-boom/-/sonic-boom-0.7.0.tgz", @@ -1437,9 +1385,9 @@ "integrity": "sha512-WPQDt1B74OfPv/IMS2ekXAKkTZIHl88uMetg6q3OTqgFxZ/dxDXI0EWLyZid/1Pe6hTftyg5N7gel5wNAGxXyQ==" }, "anymatch": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.1.tgz", - "integrity": "sha512-mM8522psRCqzV+6LhomX5wgp25YVibjh8Wj23I5RPkPppSVSjyKD2A2mBJmWGa+KN7f2D6LNh9jkBCeyLktzjg==", + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.2.tgz", + "integrity": "sha512-P43ePfOAIupkguHUycrc4qJ9kz8ZiuOUijaETwX7THt0Y/GNK7v0aa8rY816xWjZ7rJdA5XdMcpVFTKMq+RvWg==", "dev": true, "requires": { "normalize-path": "^3.0.0", @@ -1447,9 +1395,9 @@ } }, "apex-parser": { - "version": "2.6.1", - "resolved": "https://registry.npmjs.org/apex-parser/-/apex-parser-2.6.1.tgz", - "integrity": "sha512-cSGtO6djOYbmhJcpsAG0Ss13j+flLegPqfld8TELSVQPEK6AdDfXl0OWTqFkfEUpcTOagoxnW6Zs9ZGby7/EVQ==", + "version": "2.8.0", + "resolved": "https://registry.npmjs.org/apex-parser/-/apex-parser-2.8.0.tgz", + "integrity": "sha512-LwxDmuRWhtfN+aSjSFOjx+23YNKUwoNMXbD507kQdaesrPSZc/AubUcAs/x8pykECs82JVTt9yzLVG6ncd2cPw==", "requires": { "antlr4ts": "^0.5.0-alpha.3", "node-dir": "^0.1.17" @@ -1465,28 +1413,28 @@ } }, "applicationinsights": { - "version": "1.8.8", - "resolved": "https://registry.npmjs.org/applicationinsights/-/applicationinsights-1.8.8.tgz", - "integrity": "sha512-B43D4t/taGP5quGviVSdFWqarhIlzyGSi5mfngjbXpR2Ed3VrikJGIr1i5UtGzvwWqEbfIF6i298GvjFaB8RFA==", + "version": "1.8.10", + "resolved": "https://registry.npmjs.org/applicationinsights/-/applicationinsights-1.8.10.tgz", + "integrity": "sha512-ZLDA7mShh4mP2Z/HlFolmvhBPX1LfnbIWXrselyYVA7EKjHhri1fZzpu2EiWAmfbRxNBY6fRjoPJWbx5giKy4A==", "requires": { "cls-hooked": "^4.2.2", "continuation-local-storage": "^3.2.1", "diagnostic-channel": "0.3.1", - "diagnostic-channel-publishers": "0.4.2" + "diagnostic-channel-publishers": "0.4.4" } }, "archiver": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/archiver/-/archiver-5.2.0.tgz", - "integrity": "sha512-QEAKlgQuAtUxKeZB9w5/ggKXh21bZS+dzzuQ0RPBC20qtDCbTyzqmisoeJP46MP39fg4B4IcyvR+yeyEBdblsQ==", + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/archiver/-/archiver-5.3.0.tgz", + "integrity": "sha512-iUw+oDwK0fgNpvveEsdQ0Ase6IIKztBJU2U0E9MzszMfmVVUyv1QJhS2ITW9ZCqx8dktAxVAjWWkKehuZE8OPg==", "requires": { "archiver-utils": "^2.1.0", "async": "^3.2.0", "buffer-crc32": "^0.2.1", "readable-stream": "^3.6.0", "readdir-glob": "^1.0.0", - "tar-stream": "^2.1.4", - "zip-stream": "^4.0.4" + "tar-stream": "^2.2.0", + "zip-stream": "^4.1.0" }, "dependencies": { "readable-stream": { @@ -1498,6 +1446,18 @@ "string_decoder": "^1.1.1", "util-deprecate": "^1.0.1" } + }, + "tar-stream": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/tar-stream/-/tar-stream-2.2.0.tgz", + "integrity": "sha512-ujeqbceABgwMZxEJnk2HDY2DlnUZ+9oEcb1KzTVfYHio0UE6dG71n60d8D2I4qNvleWrrXpmjpt7vZeF1LnMZQ==", + "requires": { + "bl": "^4.0.3", + "end-of-stream": "^1.4.1", + "fs-constants": "^1.0.0", + "inherits": "^2.0.3", + "readable-stream": "^3.1.1" + } } } }, @@ -1702,9 +1662,9 @@ } }, "binary-extensions": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.1.0.tgz", - "integrity": "sha512-1Yj8h9Q+QDF5FzhMs/c9+6UntbD5MkRfRwac8DoEm9ZfUBZ7tZ55YcGVAzEe4bXsdQHEk+s9S5wsOKVdZrw0tQ==", + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz", + "integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==", "dev": true }, "bl": { @@ -1848,12 +1808,6 @@ "write-file-atomic": "^3.0.0" } }, - "callsites": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", - "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", - "dev": true - }, "camelcase": { "version": "5.3.1", "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", @@ -1966,14 +1920,14 @@ } }, "chokidar": { - "version": "3.4.3", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.4.3.tgz", - "integrity": "sha512-DtM3g7juCXQxFVSNPNByEC2+NImtBuxQQvWlHunpJIS5Ocr0lG306cC7FCi7cEA0fzmybPUIl4txBIobk1gGOQ==", + "version": "3.5.1", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.1.tgz", + "integrity": "sha512-9+s+Od+W0VJJzawDma/gvBNQqkTiqYTWLuZoyAsivsI4AaWTCzHG06/TMjsf1cYe9Cb97UCEhjz7HvnPk2p/tw==", "dev": true, "requires": { "anymatch": "~3.1.1", "braces": "~3.0.2", - "fsevents": "~2.1.2", + "fsevents": "~2.3.1", "glob-parent": "~5.1.0", "is-binary-path": "~2.1.0", "is-glob": "~4.0.1", @@ -1987,12 +1941,6 @@ "integrity": "sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg==", "dev": true }, - "ci-info": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-2.0.0.tgz", - "integrity": "sha512-5tK7EtrZ0N+OLFMthtqOj4fI2Jeb88C4CAZPu25LDVUgXJ0A3Js4PMGqrn0JU1W0Mh1/Z8wZzYPxqUrXeBboCQ==", - "dev": true - }, "clean-stack": { "version": "2.2.0", "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-2.2.0.tgz", @@ -2254,16 +2202,10 @@ "integrity": "sha1-3dgA2gxmEnOTzKWVDqloo6rxJTs=", "dev": true }, - "compare-versions": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/compare-versions/-/compare-versions-3.6.0.tgz", - "integrity": "sha512-W6Af2Iw1z4CB7q4uU4hv646dW9GQuBM+YpC0UvUCWSD8w90SJjp+ujJuXaEMtAXBtSqGfMPuFOVn4/+FlaqfBA==", - "dev": true - }, "compress-commons": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/compress-commons/-/compress-commons-4.0.2.tgz", - "integrity": "sha512-qhd32a9xgzmpfoga1VQEiLEwdKZ6Plnpx5UCgIsf89FSolyJ7WnifY4Gtjgv5WR6hWAyRaHxC5MiEhU/38U70A==", + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/compress-commons/-/compress-commons-4.1.0.tgz", + "integrity": "sha512-ofaaLqfraD1YRTkrRKPCrGJ1pFeDG/MVCkVVV2FNGeWquSlqw5wOrwOfPQ1xF2u+blpeWASie5EubHz+vsNIgA==", "requires": { "buffer-crc32": "^0.2.13", "crc32-stream": "^4.0.1", @@ -2325,33 +2267,6 @@ "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=" }, - "cosmiconfig": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-7.0.0.tgz", - "integrity": "sha512-pondGvTuVYDk++upghXJabWzL6Kxu6f26ljFw64Swq9v6sQPUL3EUlVDV56diOjpCayKihL6hVe8exIACU4XcA==", - "dev": true, - "requires": { - "@types/parse-json": "^4.0.0", - "import-fresh": "^3.2.1", - "parse-json": "^5.0.0", - "path-type": "^4.0.0", - "yaml": "^1.10.0" - }, - "dependencies": { - "parse-json": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.1.0.tgz", - "integrity": "sha512-+mi/lmVVNKFNVyLXV31ERiy2CY5E1/F6QtJFEzoChPRwwngMNXRDQ9GJ5WdE2Z2P4AujsOi0/+2qHID68KwfIQ==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.0.0", - "error-ex": "^1.3.1", - "json-parse-even-better-errors": "^2.3.0", - "lines-and-columns": "^1.1.6" - } - } - } - }, "crc": { "version": "3.8.0", "resolved": "https://registry.npmjs.org/crc/-/crc-3.8.0.tgz", @@ -2370,9 +2285,9 @@ } }, "crc32-stream": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/crc32-stream/-/crc32-stream-4.0.1.tgz", - "integrity": "sha512-FN5V+weeO/8JaXsamelVYO1PHyeCsuL3HcG4cqsj0ceARcocxalaShCsohZMSAF+db7UYFwBy1rARK/0oFItUw==", + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/crc32-stream/-/crc32-stream-4.0.2.tgz", + "integrity": "sha512-DxFZ/Hk473b/muq1VJ///PMNLj0ZMnzye9thBpmjpJKCc5eMgB95aK8zCGrGfQ90cWo561Te6HK9D+j4KPdM6w==", "requires": { "crc-32": "^1.2.0", "readable-stream": "^3.4.0" @@ -2444,9 +2359,9 @@ } }, "dateformat": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/dateformat/-/dateformat-3.0.3.tgz", - "integrity": "sha512-jyCETtSl3VMZMWeRo7iY1FL19ges1t55hMo5yaam4Jrsm5EPL89UQkoQRyiI+Yf4k8r2ZpdngkV8hr1lIdjb3Q==" + "version": "4.5.1", + "resolved": "https://registry.npmjs.org/dateformat/-/dateformat-4.5.1.tgz", + "integrity": "sha512-OD0TZ+B7yP7ZgpJf5K2DIbj3FZvFvxgFUuaqA/V5zTjAtAAXZ1E8bktHxmAGs4x5b7PflqA9LeQ84Og7wYtF7Q==" }, "dayjs": { "version": "1.9.6", @@ -2522,9 +2437,9 @@ } }, "diagnostic-channel-publishers": { - "version": "0.4.2", - "resolved": "https://registry.npmjs.org/diagnostic-channel-publishers/-/diagnostic-channel-publishers-0.4.2.tgz", - "integrity": "sha512-gbt5BVjwTV1wnng0Xi766DVrRxSeGECAX8Qrig7tKCDfXW2SbK7bKY6A3tgGjk5BB50aXgVXIsbtQiYIkt57Mg==" + "version": "0.4.4", + "resolved": "https://registry.npmjs.org/diagnostic-channel-publishers/-/diagnostic-channel-publishers-0.4.4.tgz", + "integrity": "sha512-l126t01d2ZS9EreskvEtZPrcgstuvH3rbKy82oUhUrVmBaGx4hO9wECdl3cvZbKDYjMF3QJDB5z5dL9yWAjvZQ==" }, "diff": { "version": "5.0.0", @@ -2624,6 +2539,12 @@ "integrity": "sha512-Um/+FxMr9CISWh0bi5Zv0iOD+4cFh5qLeks1qhAopKVAJw3drgKbKySikp7wGhDL0HPeaja0P5ULZrxLkniUVg==", "dev": true }, + "escalade": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz", + "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==", + "dev": true + }, "escape-string-regexp": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", @@ -2709,9 +2630,9 @@ "integrity": "sha1-lpGEQOMEGnpBT4xS48V06zw+HgU=" }, "fancy-test": { - "version": "1.4.9", - "resolved": "https://registry.npmjs.org/fancy-test/-/fancy-test-1.4.9.tgz", - "integrity": "sha512-Tro3lkXPX438G3t2N9BDgD3ac5iUhNnxIE8tg/KL6z7eZ5GOCexs7fDEMacduqvJWPvsRlmyQ69V1jiTVcqkXQ==", + "version": "1.4.10", + "resolved": "https://registry.npmjs.org/fancy-test/-/fancy-test-1.4.10.tgz", + "integrity": "sha512-AaUX6wKS7D5OP2YK2q5G7c8PGx2lgoyLUD7Bbg8z323sb9aebBqzb9UN6phzI73UgO/ViihmNfOxF3kdfZLhew==", "requires": { "@types/chai": "*", "@types/lodash": "*", @@ -2719,6 +2640,7 @@ "@types/sinon": "*", "lodash": "^4.17.13", "mock-stdin": "^1.0.0", + "nock": "^13.0.0", "stdout-stderr": "^0.1.9" } }, @@ -2756,9 +2678,9 @@ "integrity": "sha512-Utm6CdzT+6xsDk2m8S6uL8VHxNwI6Jub+e9NYTcAms28T84pTa25GJQV9j0CY0N1rM8hK4x6grpF2BQf+2qwVA==" }, "fast-xml-parser": { - "version": "3.17.6", - "resolved": "https://registry.npmjs.org/fast-xml-parser/-/fast-xml-parser-3.17.6.tgz", - "integrity": "sha512-40WHI/5d2MOzf1sD2bSaTXlPn1lueJLAX6j1xH5dSAr6tNeut8B9ktEL6sjAK9yVON4uNj9//axOdBJUuruCzw==" + "version": "3.19.0", + "resolved": "https://registry.npmjs.org/fast-xml-parser/-/fast-xml-parser-3.19.0.tgz", + "integrity": "sha512-4pXwmBplsCPv8FOY1WRakF970TjNGnGnfbOnLqjlYvMiF1SR3yOHyxMR/YCXpPTOspNF5gwudqktIP4VsWkvBg==" }, "fastq": { "version": "1.10.0", @@ -2833,13 +2755,13 @@ "path-exists": "^4.0.0" } }, - "find-versions": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/find-versions/-/find-versions-3.2.0.tgz", - "integrity": "sha512-P8WRou2S+oe222TOCHitLy8zj+SIsVJh52VP4lvXkaFVnOFFdoWv1H1Jjvel1aI6NCFOAaeAVm8qrI0odiLcww==", + "find-yarn-workspace-root": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/find-yarn-workspace-root/-/find-yarn-workspace-root-2.0.0.tgz", + "integrity": "sha512-1IMnbjt4KzsQfnhnzNd8wUEgXZ44IzZaZmnLYx7D5FZlaHt2gW20Cri8Q+E/t5tIj4+epTBub+2Zxu/vNILzqQ==", "dev": true, "requires": { - "semver-regex": "^2.0.0" + "micromatch": "^4.0.2" } }, "flat": { @@ -2936,9 +2858,9 @@ "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=" }, "fsevents": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.1.3.tgz", - "integrity": "sha512-Auw9a4AxqWpa9GUfj370BMPzzyncfBABW8Mab7BGWBYDj4Isgq+cDKtx0i6u9jcX9pQDnswsaaOTgTmA5pEjuQ==", + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz", + "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==", "dev": true, "optional": true }, @@ -3049,9 +2971,9 @@ } }, "glob-parent": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.1.tgz", - "integrity": "sha512-FnI+VGOpnlGHWZxthPGR+QhR78fuiK0sNLkHQv+bL9fQi57lNNdquIbna/WrfROrolq8GK5Ek6BiMwqL/voRYQ==", + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", + "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", "requires": { "is-glob": "^4.0.1" } @@ -3063,9 +2985,9 @@ "dev": true }, "globby": { - "version": "11.0.1", - "resolved": "https://registry.npmjs.org/globby/-/globby-11.0.1.tgz", - "integrity": "sha512-iH9RmgwCmUJHi2z5o2l3eTtGBtXek1OYlHrbcxOYugyHLmAsZrPj43OtHThd62Buh/Vv6VyCBD2bdyWcGNQqoQ==", + "version": "11.0.3", + "resolved": "https://registry.npmjs.org/globby/-/globby-11.0.3.tgz", + "integrity": "sha512-ffdmosjA807y7+lA1NM0jELARVmYul/715xiILEjo3hBLPTcirgQNnXECn5g3mtR8TOLCVbkfua1Hpen25/Xcg==", "requires": { "array-union": "^2.1.0", "dir-glob": "^3.0.1", @@ -3253,10 +3175,30 @@ "integrity": "sha512-zZ6T5WcuBMIUVh49iPQS9t977t7C0l7OtHrpeMb5uk48JdflRX0NSFvCekfYNmGQETnLq9W/isMyHl69kxGi8g==" }, "hosted-git-info": { - "version": "2.8.8", - "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.8.tgz", - "integrity": "sha512-f/wzC2QaWBs7t9IYqB4T3sR1xviIViXJRJTWBlx2Gf3g0Xi5vI7Yy4koXQ1c9OYDGHN9sBy1DQ2AB8fqZBWhUg==", - "dev": true + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-4.0.2.tgz", + "integrity": "sha512-c9OGXbZ3guC/xOlCg1Ci/VgWlwsqDv1yMQL1CWqXDL0hDjXuNcq0zuR4xqPSuasI3kqFDhqSyTjREz5gzq0fXg==", + "dev": true, + "requires": { + "lru-cache": "^6.0.0" + }, + "dependencies": { + "lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "dev": true, + "requires": { + "yallist": "^4.0.0" + } + }, + "yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true + } + } }, "html-escaper": { "version": "2.0.2", @@ -3279,85 +3221,37 @@ "debug": "^4.1.1", "is-retry-allowed": "^1.1.0", "is-stream": "^2.0.0", - "parse-json": "^4.0.0", - "tunnel-agent": "^0.6.0" - } - }, - "http-parser-js": { - "version": "0.5.2", - "resolved": "https://registry.npmjs.org/http-parser-js/-/http-parser-js-0.5.2.tgz", - "integrity": "sha512-opCO9ASqg5Wy2FNo7A0sxy71yGbbkJJXLdgMK04Tcypw9jr2MgWbyubb0+WdmDmGnFflO7fRbqbaihh/ENDlRQ==" - }, - "http-signature": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/http-signature/-/http-signature-1.2.0.tgz", - "integrity": "sha1-muzZJRFHcvPZW2WmCruPfBj7rOE=", - "requires": { - "assert-plus": "^1.0.0", - "jsprim": "^1.2.2", - "sshpk": "^1.7.0" - } - }, - "human-signals": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-1.1.1.tgz", - "integrity": "sha512-SEQu7vl8KjNL2eoGBLF3+wAjpsNfA9XMlXAYj/3EdaNfAlxKthD1xjEQfGOUhllCGGJVNY34bRr6lPINhNjyZw==", - "dev": true - }, - "husky": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/husky/-/husky-4.3.0.tgz", - "integrity": "sha512-tTMeLCLqSBqnflBZnlVDhpaIMucSGaYyX6855jM4AguGeWCeSzNdb1mfyWduTZ3pe3SJVvVWGL0jO1iKZVPfTA==", - "dev": true, - "requires": { - "chalk": "^4.0.0", - "ci-info": "^2.0.0", - "compare-versions": "^3.6.0", - "cosmiconfig": "^7.0.0", - "find-versions": "^3.2.0", - "opencollective-postinstall": "^2.0.2", - "pkg-dir": "^4.2.0", - "please-upgrade-node": "^3.2.0", - "slash": "^3.0.0", - "which-pm-runs": "^1.0.0" - }, - "dependencies": { - "ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "requires": { - "color-convert": "^2.0.1" - } - }, - "chalk": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.0.tgz", - "integrity": "sha512-qwx12AxXe2Q5xQ43Ac//I6v5aXTipYrSESdOgzrN+9XjgEpyjpKuvSGaN4qE93f7TQTlerQQ8S+EQ0EyDoVL1A==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - } + "parse-json": "^4.0.0", + "tunnel-agent": "^0.6.0" + } + }, + "http-parser-js": { + "version": "0.5.2", + "resolved": "https://registry.npmjs.org/http-parser-js/-/http-parser-js-0.5.2.tgz", + "integrity": "sha512-opCO9ASqg5Wy2FNo7A0sxy71yGbbkJJXLdgMK04Tcypw9jr2MgWbyubb0+WdmDmGnFflO7fRbqbaihh/ENDlRQ==" + }, + "http-signature": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/http-signature/-/http-signature-1.2.0.tgz", + "integrity": "sha1-muzZJRFHcvPZW2WmCruPfBj7rOE=", + "requires": { + "assert-plus": "^1.0.0", + "jsprim": "^1.2.2", + "sshpk": "^1.7.0" } }, + "human-signals": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-1.1.1.tgz", + "integrity": "sha512-SEQu7vl8KjNL2eoGBLF3+wAjpsNfA9XMlXAYj/3EdaNfAlxKthD1xjEQfGOUhllCGGJVNY34bRr6lPINhNjyZw==", + "dev": true + }, + "husky": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/husky/-/husky-6.0.0.tgz", + "integrity": "sha512-SQS2gDTB7tBN486QSoKPKQItZw97BMOd+Kdb6ghfpBc0yXyzrddI0oDV5MkDAbuB4X2mO3/nj60TRMcYxwzZeQ==", + "dev": true + }, "hyperlinker": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/hyperlinker/-/hyperlinker-1.0.0.tgz", @@ -3373,16 +3267,6 @@ "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.1.8.tgz", "integrity": "sha512-BMpfD7PpiETpBl/A6S498BaIJ6Y/ABT93ETbby2fP00v4EbvPBXWEoaR1UBPKs3iR53pJY7EtZk5KACI57i1Uw==" }, - "import-fresh": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.2.2.tgz", - "integrity": "sha512-cTPNrlvJT6twpYy+YmKUKrTSjWFs3bjYjAhCwm+z4EOCubZxAuO+hHpRN64TqjEaYSHs7tJAE0w1CKMGmsG/lw==", - "dev": true, - "requires": { - "parent-module": "^1.0.0", - "resolve-from": "^4.0.0" - } - }, "imurmurhash": { "version": "0.1.4", "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", @@ -3773,9 +3657,9 @@ } }, "just-extend": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/just-extend/-/just-extend-4.1.1.tgz", - "integrity": "sha512-aWgeGFW67BP3e5181Ep1Fv2v8z//iBJfrvyTnq8wG86vEESwmonn1zPBJ0VfmT9CJq2FIT0VsETtrNFm2a+SHA==", + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/just-extend/-/just-extend-4.2.1.tgz", + "integrity": "sha512-g3UB796vUFIY90VIv/WX3L2c8CS2MdWUww3CNrYmqza1Fg0DURc2K/O4YrnklBdQarSJ/y8JnJYDGc+1iumQjg==", "dev": true }, "jwa": { @@ -3855,9 +3739,9 @@ }, "dependencies": { "parse-json": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.1.0.tgz", - "integrity": "sha512-+mi/lmVVNKFNVyLXV31ERiy2CY5E1/F6QtJFEzoChPRwwngMNXRDQ9GJ5WdE2Z2P4AujsOi0/+2qHID68KwfIQ==", + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz", + "integrity": "sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==", "dev": true, "requires": { "@babel/code-frame": "^7.0.0", @@ -3883,9 +3767,9 @@ } }, "lodash": { - "version": "4.17.20", - "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.20.tgz", - "integrity": "sha512-PlhdFcillOINfeV7Ni6oF1TAEayyZBoZ8bcshTHqOYJYlrqzRK5hagpagky5o4HfCzzd1TRkXPMFq6cKk9rGmA==" + "version": "4.17.21", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", + "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==" }, "lodash._reinterpolate": { "version": "3.0.0", @@ -3953,6 +3837,11 @@ "resolved": "https://registry.npmjs.org/lodash.once/-/lodash.once-4.1.1.tgz", "integrity": "sha1-DdOXEhPHxW34gJd9UEyI+0cal6w=" }, + "lodash.set": { + "version": "4.3.2", + "resolved": "https://registry.npmjs.org/lodash.set/-/lodash.set-4.3.2.tgz", + "integrity": "sha1-2HV7HagH3eJIFrDWqEvqGnYjCyM=" + }, "lodash.template": { "version": "4.5.0", "resolved": "https://registry.npmjs.org/lodash.template/-/lodash.template-4.5.0.tgz", @@ -3994,9 +3883,9 @@ } }, "chalk": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.0.tgz", - "integrity": "sha512-qwx12AxXe2Q5xQ43Ac//I6v5aXTipYrSESdOgzrN+9XjgEpyjpKuvSGaN4qE93f7TQTlerQQ8S+EQ0EyDoVL1A==", + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.1.tgz", + "integrity": "sha512-diHzdDKxcU+bAsUboHLPEDQiw0qEe0qd7SYUn3HgcFlWgbDcfLGswOHYeGrHKzG9z6UYf01d9VFMfZxPM1xZSg==", "dev": true, "requires": { "ansi-styles": "^4.1.0", @@ -4130,67 +4019,96 @@ "dev": true }, "mocha": { - "version": "8.2.1", - "resolved": "https://registry.npmjs.org/mocha/-/mocha-8.2.1.tgz", - "integrity": "sha512-cuLBVfyFfFqbNR0uUKbDGXKGk+UDFe6aR4os78XIrMQpZl/nv7JYHcvP5MFIAb374b2zFXsdgEGwmzMtP0Xg8w==", + "version": "8.3.2", + "resolved": "https://registry.npmjs.org/mocha/-/mocha-8.3.2.tgz", + "integrity": "sha512-UdmISwr/5w+uXLPKspgoV7/RXZwKRTiTjJ2/AC5ZiEztIoOYdfKb19+9jNmEInzx5pBsCyJQzarAxqIGBNYJhg==", "dev": true, "requires": { "@ungap/promise-all-settled": "1.1.2", "ansi-colors": "4.1.1", "browser-stdout": "1.3.1", - "chokidar": "3.4.3", - "debug": "4.2.0", - "diff": "4.0.2", + "chokidar": "3.5.1", + "debug": "4.3.1", + "diff": "5.0.0", "escape-string-regexp": "4.0.0", "find-up": "5.0.0", "glob": "7.1.6", "growl": "1.10.5", "he": "1.2.0", - "js-yaml": "3.14.0", + "js-yaml": "4.0.0", "log-symbols": "4.0.0", "minimatch": "3.0.4", - "ms": "2.1.2", - "nanoid": "3.1.12", + "ms": "2.1.3", + "nanoid": "3.1.20", "serialize-javascript": "5.0.1", "strip-json-comments": "3.1.1", - "supports-color": "7.2.0", + "supports-color": "8.1.1", "which": "2.0.2", "wide-align": "1.1.3", - "workerpool": "6.0.2", - "yargs": "13.3.2", - "yargs-parser": "13.1.2", + "workerpool": "6.1.0", + "yargs": "16.2.0", + "yargs-parser": "20.2.4", "yargs-unparser": "2.0.0" }, "dependencies": { - "ansi-regex": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz", - "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==", + "ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "requires": { + "color-convert": "^2.0.1" + } + }, + "argparse": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", + "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", "dev": true }, "cliui": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-5.0.0.tgz", - "integrity": "sha512-PYeGSEmmHM6zvoef2w8TPzlrnNpXIjTipYK780YswmIP9vjxmd6Y2a3CB2Ks6/AU8NHjZugXvo8w3oWM2qnwXA==", + "version": "7.0.4", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz", + "integrity": "sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==", "dev": true, "requires": { - "string-width": "^3.1.0", - "strip-ansi": "^5.2.0", - "wrap-ansi": "^5.1.0" + "string-width": "^4.2.0", + "strip-ansi": "^6.0.0", + "wrap-ansi": "^7.0.0" } }, - "diff": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/diff/-/diff-4.0.2.tgz", - "integrity": "sha512-58lmxKSA4BNyLz+HHMUzlOEpg09FV+ev6ZMe3vJihgdxzgcwZ8VoEEPmALCZG9LmqfVoNMMKpttIYTVG6uDY7A==", - "dev": true + "color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "requires": { + "color-name": "~1.1.4" + } }, - "emoji-regex": { - "version": "7.0.3", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz", - "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==", + "color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", "dev": true }, + "debug": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.1.tgz", + "integrity": "sha512-doEwdvm4PCeK4K3RQN2ZC2BYUBaxwLARCqZmMjtF8a51J2Rb0xpVloFRnCODwqjpwnAoao4pelN8l3RJdv3gRQ==", + "dev": true, + "requires": { + "ms": "2.1.2" + }, + "dependencies": { + "ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "dev": true + } + } + }, "find-up": { "version": "5.0.0", "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", @@ -4201,6 +4119,15 @@ "path-exists": "^4.0.0" } }, + "js-yaml": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.0.0.tgz", + "integrity": "sha512-pqon0s+4ScYUvX30wxQi3PogGFAlUyH0awepWvwkj4jD4v+ova3RiYw8bmA6x2rDrEaj8i/oWKoRxpVNW+Re8Q==", + "dev": true, + "requires": { + "argparse": "^2.0.1" + } + }, "locate-path": { "version": "6.0.0", "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", @@ -4210,6 +4137,12 @@ "p-locate": "^5.0.0" } }, + "ms": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", + "dev": true + }, "p-limit": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", @@ -4228,98 +4161,45 @@ "p-limit": "^3.0.2" } }, - "string-width": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz", - "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==", - "dev": true, - "requires": { - "emoji-regex": "^7.0.1", - "is-fullwidth-code-point": "^2.0.0", - "strip-ansi": "^5.1.0" - } - }, - "strip-ansi": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", - "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", + "supports-color": { + "version": "8.1.1", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", + "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", "dev": true, "requires": { - "ansi-regex": "^4.1.0" + "has-flag": "^4.0.0" } }, "wrap-ansi": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-5.1.0.tgz", - "integrity": "sha512-QC1/iN/2/RPVJ5jYK8BGttj5z83LmSKmvbvrXPNCLZSEb32KKVDJDl/MOt2N01qU2H/FkzEa9PKto1BqDjtd7Q==", + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", + "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", "dev": true, "requires": { - "ansi-styles": "^3.2.0", - "string-width": "^3.0.0", - "strip-ansi": "^5.0.0" + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" } }, + "y18n": { + "version": "5.0.8", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", + "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==", + "dev": true + }, "yargs": { - "version": "13.3.2", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-13.3.2.tgz", - "integrity": "sha512-AX3Zw5iPruN5ie6xGRIDgqkT+ZhnRlZMLMHAs8tg7nRruy2Nb+i5o9bwghAogtM08q1dpr2LVoS8KSTMYpWXUw==", + "version": "16.2.0", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz", + "integrity": "sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==", "dev": true, "requires": { - "cliui": "^5.0.0", - "find-up": "^3.0.0", - "get-caller-file": "^2.0.1", + "cliui": "^7.0.2", + "escalade": "^3.1.1", + "get-caller-file": "^2.0.5", "require-directory": "^2.1.1", - "require-main-filename": "^2.0.0", - "set-blocking": "^2.0.0", - "string-width": "^3.0.0", - "which-module": "^2.0.0", - "y18n": "^4.0.0", - "yargs-parser": "^13.1.2" - }, - "dependencies": { - "find-up": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", - "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", - "dev": true, - "requires": { - "locate-path": "^3.0.0" - } - }, - "locate-path": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", - "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", - "dev": true, - "requires": { - "p-locate": "^3.0.0", - "path-exists": "^3.0.0" - } - }, - "p-limit": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", - "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", - "dev": true, - "requires": { - "p-try": "^2.0.0" - } - }, - "p-locate": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", - "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", - "dev": true, - "requires": { - "p-limit": "^2.0.0" - } - }, - "path-exists": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", - "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=", - "dev": true - } + "string-width": "^4.2.0", + "y18n": "^5.0.5", + "yargs-parser": "^20.2.2" } } } @@ -4418,9 +4298,9 @@ "optional": true }, "nanoid": { - "version": "3.1.12", - "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.1.12.tgz", - "integrity": "sha512-1qstj9z5+x491jfiC4Nelk+f8XBad7LN20PmyWINJEMRSf3wcAjAWysw1qaA8z6NSKe2sjq1hRSDpBH5paCb6A==", + "version": "3.1.20", + "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.1.20.tgz", + "integrity": "sha512-a1cQNyczgKbLX9jwbS/+d7W8fX/RfgYR7lVWwWOGIPNgK2m0MWvrGF6/m4kk6U3QcFMnZf3RIhL0v2Jgh/0Uxw==", "dev": true }, "natural-orderby": { @@ -4464,9 +4344,9 @@ "integrity": "sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ==" }, "nise": { - "version": "4.0.4", - "resolved": "https://registry.npmjs.org/nise/-/nise-4.0.4.tgz", - "integrity": "sha512-bTTRUNlemx6deJa+ZyoCUTRvH3liK5+N6VQZ4NIw90AgDXY6iPnsqplNFf6STcj+ePk0H/xqxnP75Lr0J0Fq3A==", + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/nise/-/nise-4.1.0.tgz", + "integrity": "sha512-eQMEmGN/8arp0xsvGoQ+B1qvSkR73B1nWSCh7nOt5neMCtwcQVYQGdzQMhcNscktTsWB54xnlSQFzOAPJD8nXA==", "dev": true, "requires": { "@sinonjs/commons": "^1.7.0", @@ -4474,6 +4354,28 @@ "@sinonjs/text-encoding": "^0.7.1", "just-extend": "^4.0.2", "path-to-regexp": "^1.7.0" + }, + "dependencies": { + "@sinonjs/fake-timers": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/@sinonjs/fake-timers/-/fake-timers-6.0.1.tgz", + "integrity": "sha512-MZPUxrmFubI36XS1DI3qmI0YdN1gks62JtFZvxR67ljjSNCeK6U08Zx4msEWOXuofgqUt6zPHSi1H9fbjR/NRA==", + "dev": true, + "requires": { + "@sinonjs/commons": "^1.7.0" + } + } + } + }, + "nock": { + "version": "13.0.11", + "resolved": "https://registry.npmjs.org/nock/-/nock-13.0.11.tgz", + "integrity": "sha512-sKZltNkkWblkqqPAsjYW0bm3s9DcHRPiMOyKO/PkfJ+ANHZ2+LA2PLe22r4lLrKgXaiSaDQwW3qGsJFtIpQIeQ==", + "requires": { + "debug": "^4.1.0", + "json-stringify-safe": "^5.0.1", + "lodash.set": "^4.3.2", + "propagate": "^2.0.0" } }, "node-cache": { @@ -4507,15 +4409,51 @@ "integrity": "sha512-ma6oU4Sk0qOoKEAymVoTvk8EdXEobdS7m/mAGhDJ8Rouugho48crHBORAmy5BoOcv8wraPM6xumapQp5hl4iIQ==" }, "normalize-package-data": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz", - "integrity": "sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==", + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-3.0.2.tgz", + "integrity": "sha512-6CdZocmfGaKnIHPVFhJJZ3GuR8SsLKvDANFp47Jmy51aKIr8akjAWTSxtpI+MBgBFdSMRyo4hMpDlT6dTffgZg==", "dev": true, "requires": { - "hosted-git-info": "^2.1.4", - "resolve": "^1.10.0", - "semver": "2 || 3 || 4 || 5", + "hosted-git-info": "^4.0.1", + "resolve": "^1.20.0", + "semver": "^7.3.4", "validate-npm-package-license": "^3.0.1" + }, + "dependencies": { + "lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "dev": true, + "requires": { + "yallist": "^4.0.0" + } + }, + "resolve": { + "version": "1.20.0", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.20.0.tgz", + "integrity": "sha512-wENBPt4ySzg4ybFQW2TT1zMQucPK95HSh/nq2CFTZVOGut2+pQvSsgtda4d26YrYcr067wjbmzOG8byDPBX63A==", + "dev": true, + "requires": { + "is-core-module": "^2.2.0", + "path-parse": "^1.0.6" + } + }, + "semver": { + "version": "7.3.5", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz", + "integrity": "sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ==", + "dev": true, + "requires": { + "lru-cache": "^6.0.0" + } + }, + "yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true + } } }, "normalize-path": { @@ -4632,20 +4570,14 @@ } }, "open": { - "version": "7.3.1", - "resolved": "https://registry.npmjs.org/open/-/open-7.3.1.tgz", - "integrity": "sha512-f2wt9DCBKKjlFbjzGb8MOAW8LH8F0mrs1zc7KTjAJ9PZNQbfenzWbNP1VZJvw6ICMG9r14Ah6yfwPn7T7i646A==", + "version": "7.4.2", + "resolved": "https://registry.npmjs.org/open/-/open-7.4.2.tgz", + "integrity": "sha512-MVHddDVweXZF3awtlAS+6pgKLlm/JgxZ90+/NBurBoQctVOOB/zDdVjcyPzQ+0laDGbsWgrRkflI65sQeOgT9Q==", "requires": { "is-docker": "^2.0.0", "is-wsl": "^2.1.1" } }, - "opencollective-postinstall": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/opencollective-postinstall/-/opencollective-postinstall-2.0.3.tgz", - "integrity": "sha512-8AV/sCtuzUeTo8gQK5qDZzARrulB3egtLzFgteqB2tcT4Mw7B8Kt7JcDHmltjz6FOAHsvTevk70gZEbhM4ZS9Q==", - "dev": true - }, "opn": { "version": "5.5.0", "resolved": "https://registry.npmjs.org/opn/-/opn-5.5.0.tgz", @@ -4731,15 +4663,6 @@ "release-zalgo": "^1.0.0" } }, - "parent-module": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", - "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==", - "dev": true, - "requires": { - "callsites": "^3.0.0" - } - }, "parse-json": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-4.0.0.tgz", @@ -4859,27 +4782,27 @@ "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=" }, "pino": { - "version": "6.11.0", - "resolved": "https://registry.npmjs.org/pino/-/pino-6.11.0.tgz", - "integrity": "sha512-VPqEE2sU1z6wqkTtr7DdTktayTNE/JgeuWjfXh9g/TI6X7venzv4gaoU24/jSywf6bBeDfZRHWEeO/6f8bNppA==", + "version": "6.11.3", + "resolved": "https://registry.npmjs.org/pino/-/pino-6.11.3.tgz", + "integrity": "sha512-drPtqkkSf0ufx2gaea3TryFiBHdNIdXKf5LN0hTM82SXI4xVIve2wLwNg92e1MT6m3jASLu6VO7eGY6+mmGeyw==", "requires": { "fast-redact": "^3.0.0", "fast-safe-stringify": "^2.0.7", "flatstr": "^1.0.12", "pino-std-serializers": "^3.1.0", - "quick-format-unescaped": "^4.0.1", + "quick-format-unescaped": "^4.0.3", "sonic-boom": "^1.0.2" } }, "pino-pretty": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/pino-pretty/-/pino-pretty-4.3.0.tgz", - "integrity": "sha512-uEc9SUCCGVEs0goZvyznKXBHtI1PNjGgqHviJHxOCEFEWZN6Z/IQKv5pO9gSdm/b+WfX+/dfheWhtZUyScqjlQ==", + "version": "4.7.1", + "resolved": "https://registry.npmjs.org/pino-pretty/-/pino-pretty-4.7.1.tgz", + "integrity": "sha512-ILE5YBpur88FlZ0cr1BNqVjgG9fOoK+md3peqmcs7AC6oq7SNiaJioIcrykMxfNsuygMYjUJtvAcARRE9aRc9w==", "requires": { "@hapi/bourne": "^2.0.0", "args": "^5.0.1", "chalk": "^4.0.0", - "dateformat": "^3.0.3", + "dateformat": "^4.5.1", "fast-safe-stringify": "^2.0.7", "jmespath": "^0.15.0", "joycon": "^2.2.5", @@ -4898,9 +4821,9 @@ } }, "chalk": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.0.tgz", - "integrity": "sha512-qwx12AxXe2Q5xQ43Ac//I6v5aXTipYrSESdOgzrN+9XjgEpyjpKuvSGaN4qE93f7TQTlerQQ8S+EQ0EyDoVL1A==", + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.1.tgz", + "integrity": "sha512-diHzdDKxcU+bAsUboHLPEDQiw0qEe0qd7SYUn3HgcFlWgbDcfLGswOHYeGrHKzG9z6UYf01d9VFMfZxPM1xZSg==", "requires": { "ansi-styles": "^4.1.0", "supports-color": "^7.1.0" @@ -4945,15 +4868,6 @@ "find-up": "^4.0.0" } }, - "please-upgrade-node": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/please-upgrade-node/-/please-upgrade-node-3.2.0.tgz", - "integrity": "sha512-gQR3WpIgNIKwBMVLkpMUeR3e1/E1y42bqDQZfql+kDeXd8COYfM8PQA4X6y7a8u9Ua9FHmsrrmirW2vHs45hWg==", - "dev": true, - "requires": { - "semver-compare": "^1.0.0" - } - }, "prepend-http": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/prepend-http/-/prepend-http-2.0.0.tgz", @@ -5088,6 +5002,11 @@ "resolved": "https://registry.npmjs.org/promise-polyfill/-/promise-polyfill-6.1.0.tgz", "integrity": "sha1-36lpQ+qcEh/KTem1hoyznTRy4Fc=" }, + "propagate": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/propagate/-/propagate-2.0.1.tgz", + "integrity": "sha512-vGrhOavPSTz4QVNuBNdcNXePNdNMaO1xj9yBeH1ScQPjk/rhg9sSlCXPhMkFuaNNW/syTvYqsnbIJxMBfRbbag==" + }, "pseudomap": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/pseudomap/-/pseudomap-1.0.2.tgz", @@ -5187,9 +5106,9 @@ } }, "quick-format-unescaped": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/quick-format-unescaped/-/quick-format-unescaped-4.0.1.tgz", - "integrity": "sha512-RyYpQ6Q5/drsJyOhrWHYMWTedvjTIat+FTwv0K4yoUxzvekw2aRHMQJLlnvt8UantkZg2++bEzD9EdxXqkWf4A==" + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/quick-format-unescaped/-/quick-format-unescaped-4.0.3.tgz", + "integrity": "sha512-MaL/oqh02mhEo5m5J2rwsVL23Iw2PEaGVHgT2vFt8AAsr0lfvQA5dpXo9TPu0rz7tSBdUPgkbam0j/fj5ZM8yg==" }, "randombytes": { "version": "2.1.0", @@ -5266,9 +5185,9 @@ "integrity": "sha1-wkvOKig62tW8P1jg1IJJuSN52O8=" }, "replace": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/replace/-/replace-1.2.0.tgz", - "integrity": "sha512-e3AP5GkRk+N/Qm1MUBaMhEHr4X3sHNI44a8m4ww6/qShJphTsStxSezbYtFNTFGCXZtWrwz4McVvCEwBv+ebAw==", + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/replace/-/replace-1.2.1.tgz", + "integrity": "sha512-KZCBe/tPanwBlbjSMQby4l+zjSiFi3CLEP/6VLClnRYgJ46DZ5u9tmA6ceWeFS8coaUnU4ZdGNb/puUGMHNSRg==", "requires": { "chalk": "2.4.2", "minimatch": "3.0.4", @@ -5362,12 +5281,6 @@ "path-parse": "^1.0.6" } }, - "resolve-from": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", - "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", - "dev": true - }, "responselike": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/responselike/-/responselike-1.0.2.tgz", @@ -5417,19 +5330,19 @@ "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==" }, "salesforce-alm": { - "version": "50.14.0", - "resolved": "https://registry.npmjs.org/salesforce-alm/-/salesforce-alm-50.14.0.tgz", - "integrity": "sha512-EVAtkXemzoSP2k0BxOOq80lTkFmmutJURdc0QdexdsZP3dqsbgCVp0eRTHYhrtqmyryH5tXkzqaU6598w1c9HQ==", + "version": "52.0.2", + "resolved": "https://registry.npmjs.org/salesforce-alm/-/salesforce-alm-52.0.2.tgz", + "integrity": "sha512-3RJMc9bdkrFPTXqnk/EnliWdMpVrnSpCAoxxfFte5h8HeouAyJ/YqQjEuc6mnSXwRPDthiQPXND2n7J6PLI7dA==", "requires": { "@oclif/config": "^1.14.0", "@oclif/errors": "^1.2.2", "@oclif/plugin-help": "^2.2.3", - "@salesforce/command": "^3.0.5", - "@salesforce/core": "^2.15.5", - "@salesforce/kit": "^1.3.2", - "@salesforce/plugin-analytics": "^1.12.0", + "@salesforce/command": "^3.1.0", + "@salesforce/core": "^2.24.0", + "@salesforce/kit": "^1.5.13", + "@salesforce/plugin-telemetry": "^1.2.2", "@salesforce/source-deploy-retrieve": "^1.1.11", - "@salesforce/ts-types": "~1.2.1", + "@salesforce/ts-types": "^1.5.17", "adm-zip": "^0.4.13", "ansi-styles": "^3.2.1", "archiver": "^1.0.1", @@ -5437,11 +5350,9 @@ "bunyan-sfdx-no-dtrace": "^1.8.2", "chalk": "^2.4.2", "cli-ux": "^5.4.4", - "csv-parse": "^4.6.5", "debug": "^3.2.6", "fast-xml-parser": "^3.17.4", "fs-extra": "^4.0.3", - "gitignore-parser": "^0.0.2", "glob": "^7.1.6", "heroku-cli-util": "^8.0.12", "js2xmlparser": "^3.0.0", @@ -5481,26 +5392,45 @@ } }, "@salesforce/core": { - "version": "2.16.0", - "resolved": "https://registry.npmjs.org/@salesforce/core/-/core-2.16.0.tgz", - "integrity": "sha512-jZWDOMBGiuKRCBD7UqSHjhpC1e4xVOW6cwURf6Z2LTFzPYHAbv10g+qIOW39Ruit8KloKvpU+v4tZixTPx+0lg==", + "version": "2.24.0", + "resolved": "https://registry.npmjs.org/@salesforce/core/-/core-2.24.0.tgz", + "integrity": "sha512-bdN9RNeS/8msA8U+F/6GEEteGNeE/uwc/av9nFSL0u+jyzA9llKnqKcuuAKa8YKuS1WHYfWs4mDNXST1gj+c1A==", "requires": { "@salesforce/bunyan": "^2.0.0", - "@salesforce/kit": "^1.3.3", + "@salesforce/kit": "^1.5.0", "@salesforce/schemas": "^1.0.1", - "@salesforce/ts-types": "^1.0.0", - "@types/graceful-fs": "^4.1.3", - "@types/jsforce": "1.9.23", - "@types/mkdirp": "1.0.0", + "@salesforce/ts-types": "^1.5.13", "debug": "^3.1.0", "graceful-fs": "^4.2.4", "jsen": "0.6.6", - "jsforce": "^1.10.0", + "jsforce": "^1.10.1", "jsonwebtoken": "8.5.0", "mkdirp": "1.0.4", "sfdx-faye": "^1.0.9" }, "dependencies": { + "jsforce": { + "version": "1.10.1", + "resolved": "https://registry.npmjs.org/jsforce/-/jsforce-1.10.1.tgz", + "integrity": "sha512-rv+UpBR9n/sWdgLhyPOJuKgT9ZKngypYf9XOHoXVRpSllvTFCjn+M3H81Nu1oYjPH9JKXVS8hL1dmmq8+kOAJg==", + "requires": { + "base64-url": "^2.2.0", + "co-prompt": "^1.0.0", + "coffeescript": "^1.10.0", + "commander": "^2.9.0", + "csv-parse": "^4.10.1", + "csv-stringify": "^1.0.4", + "faye": "^1.2.0", + "inherits": "^2.0.1", + "lodash": "^4.17.19", + "multistream": "^2.0.5", + "opn": "^5.3.0", + "promise": "^7.1.1", + "readable-stream": "^2.1.0", + "request": "^2.72.0", + "xml2js": "^0.4.16" + } + }, "jsonwebtoken": { "version": "8.5.0", "resolved": "https://registry.npmjs.org/jsonwebtoken/-/jsonwebtoken-8.5.0.tgz", @@ -5525,12 +5455,21 @@ } } }, + "@salesforce/kit": { + "version": "1.5.14", + "resolved": "https://registry.npmjs.org/@salesforce/kit/-/kit-1.5.14.tgz", + "integrity": "sha512-vGzNltfWo7wtaDR0Drgf3nAMWsJ5ZheM4LODfFZeorsFk4Xj8J6hPJWuMcYUT07yCenECQalOjT0SU3p77QgYA==", + "requires": { + "@salesforce/ts-types": "^1.5.13", + "tslib": "^2.2.0" + } + }, "@salesforce/ts-types": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/@salesforce/ts-types/-/ts-types-1.2.2.tgz", - "integrity": "sha512-inTkNP5jwJTbKqmBv6Cku/ezU6+ErYbUH4YorDfgZ/wDCsdLc9UyPGKGMO8aZ78vvyUTYWEiDxWlMqb1QXEfEw==", + "version": "1.5.17", + "resolved": "https://registry.npmjs.org/@salesforce/ts-types/-/ts-types-1.5.17.tgz", + "integrity": "sha512-zyF1+4EacGsIWtfntbq7PvxjB2XABz33RzKfOhot15JC4tFiQaSFPtNb8d6hj7BkQSjo2Zs3qEeLJwRFcpaEIQ==", "requires": { - "tslib": "^1.10.0" + "tslib": "^2.2.0" } }, "ansi-regex": { @@ -5704,9 +5643,9 @@ } }, "tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.3.0.tgz", + "integrity": "sha512-N82ooyxVNm6h1riLCoyS9e3fuJ3AMG2zIZs2Gd1ATcSFjSA23Q0fzjjZeh0jbJvWVDZ0cJT8yaNNaaXHzueNjg==" }, "widest-line": { "version": "2.0.1", @@ -5777,18 +5716,6 @@ "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==" }, - "semver-compare": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/semver-compare/-/semver-compare-1.0.0.tgz", - "integrity": "sha1-De4hahyUGrN+nvsXiPavxf9VN/w=", - "dev": true - }, - "semver-regex": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/semver-regex/-/semver-regex-2.0.0.tgz", - "integrity": "sha512-mUdIBBvdn0PLOeP3TEkMH7HHeUP3GjsXCwKarjv/kGmUFOYg1VqEemKhoQpWMu6X2I8kHeuVdGibLGkVK+/5Qw==", - "dev": true - }, "sequin": { "version": "0.1.1", "resolved": "https://registry.npmjs.org/sequin/-/sequin-0.1.1.tgz", @@ -5875,9 +5802,9 @@ "integrity": "sha512-VUJ49FC8U1OxwZLxIbTTrDvLnf/6TDgxZcK8wxR8zs13xpx7xbG60ndBlhNrFi2EMuFRoeDoJO7wthSLq42EjA==" }, "simple-git": { - "version": "2.31.0", - "resolved": "https://registry.npmjs.org/simple-git/-/simple-git-2.31.0.tgz", - "integrity": "sha512-/+rmE7dYZMbRAfEmn8EUIOwlM2G7UdzpkC60KF86YAfXGnmGtsPrKsym0hKvLBdFLLW019C+aZld1+6iIVy5xA==", + "version": "2.38.0", + "resolved": "https://registry.npmjs.org/simple-git/-/simple-git-2.38.0.tgz", + "integrity": "sha512-CORjrfirWMEGbJAxaXDH/PjZVOeATeG2bkafM9DsLVcFkbF9sXQGIIpEI6FeyXpvUsFK69T/pa4+4FKY9TUJMQ==", "requires": { "@kwsites/file-exists": "^1.1.1", "@kwsites/promise-deferred": "^1.1.1", @@ -5895,20 +5822,28 @@ } }, "sinon": { - "version": "9.2.1", - "resolved": "https://registry.npmjs.org/sinon/-/sinon-9.2.1.tgz", - "integrity": "sha512-naPfsamB5KEE1aiioaoqJ6MEhdUs/2vtI5w1hPAXX/UwvoPjXcwh1m5HiKx0HGgKR8lQSoFIgY5jM6KK8VrS9w==", + "version": "10.0.0", + "resolved": "https://registry.npmjs.org/sinon/-/sinon-10.0.0.tgz", + "integrity": "sha512-XAn5DxtGVJBlBWYrcYKEhWCz7FLwZGdyvANRyK06419hyEpdT0dMc5A8Vcxg5SCGHc40CsqoKsc1bt1CbJPfNw==", "dev": true, "requires": { "@sinonjs/commons": "^1.8.1", "@sinonjs/fake-timers": "^6.0.1", - "@sinonjs/formatio": "^5.0.1", - "@sinonjs/samsam": "^5.2.0", + "@sinonjs/samsam": "^5.3.1", "diff": "^4.0.2", - "nise": "^4.0.4", + "nise": "^4.1.0", "supports-color": "^7.1.0" }, "dependencies": { + "@sinonjs/fake-timers": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/@sinonjs/fake-timers/-/fake-timers-6.0.1.tgz", + "integrity": "sha512-MZPUxrmFubI36XS1DI3qmI0YdN1gks62JtFZvxR67ljjSNCeK6U08Zx4msEWOXuofgqUt6zPHSi1H9fbjR/NRA==", + "dev": true, + "requires": { + "@sinonjs/commons": "^1.7.0" + } + }, "diff": { "version": "4.0.2", "resolved": "https://registry.npmjs.org/diff/-/diff-4.0.2.tgz", @@ -5923,18 +5858,18 @@ "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==" }, "sonic-boom": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/sonic-boom/-/sonic-boom-1.3.0.tgz", - "integrity": "sha512-4nX6OYvOYr6R76xfQKi6cZpTO3YSWe/vd+QdIfoH0lBy0MnPkeAbb2rRWgmgADkXUeCKPwO1FZAKlAVWAadELw==", + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/sonic-boom/-/sonic-boom-1.4.1.tgz", + "integrity": "sha512-LRHh/A8tpW7ru89lrlkU4AszXt1dbwSjVWguGrmlxE7tawVmDBlI1PILMkXAxJTwqhgsEeTHzj36D5CmHgQmNg==", "requires": { "atomic-sleep": "^1.0.0", "flatstr": "^1.0.12" } }, "sort-keys": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/sort-keys/-/sort-keys-4.1.0.tgz", - "integrity": "sha512-/sRdxzkkPFUYiCrTr/2t+104nDc9AgDmEpeVYuvOWYQe3Djk1GWO6lVw3Vx2jfh1SsR0eehhd1nvFYlzt5e99w==", + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/sort-keys/-/sort-keys-4.2.0.tgz", + "integrity": "sha512-aUYIEU/UviqPgc8mHR6IW1EGxkAXpeRETYcrzg8cLAvUPZcpAlleSXHV2mY7G12GphSH6Gzv+4MMVSSkbdteHg==", "dev": true, "requires": { "is-plain-obj": "^2.0.0" @@ -6003,9 +5938,9 @@ } }, "spdx-license-ids": { - "version": "3.0.6", - "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.6.tgz", - "integrity": "sha512-+orQK83kyMva3WyPf59k1+Y525csj5JejicWut55zeTWANuN17qSiSLUXWtzHeNWORSvT7GLDJ/E/XiIWoXBTw==", + "version": "3.0.7", + "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.7.tgz", + "integrity": "sha512-U+MTEOO0AiDzxwFvoa4JVnMV6mZlJKk2sBLt90s7G0Gd0Mlknc7kxEn3nuDPNZRta7O2uy8oLcZLVT+4sqNZHQ==", "dev": true }, "split2": { @@ -6326,8 +6261,7 @@ "type-detect": { "version": "4.0.8", "resolved": "https://registry.npmjs.org/type-detect/-/type-detect-4.0.8.tgz", - "integrity": "sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g==", - "dev": true + "integrity": "sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g==" }, "type-fest": { "version": "0.11.0", @@ -6482,12 +6416,6 @@ "resolved": "https://registry.npmjs.org/which-module/-/which-module-2.0.0.tgz", "integrity": "sha1-2e8H3Od7mQK4o6j6SzHD4/fm6Ho=" }, - "which-pm-runs": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/which-pm-runs/-/which-pm-runs-1.0.0.tgz", - "integrity": "sha1-Zws6+8VS4LVd9rd4DKdGFfI60cs=", - "dev": true - }, "wide-align": { "version": "1.1.3", "resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.3.tgz", @@ -6538,9 +6466,9 @@ "integrity": "sha1-ugZWKbepJRMOFXeRCM9UCZDpjRs=" }, "workerpool": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/workerpool/-/workerpool-6.0.2.tgz", - "integrity": "sha512-DSNyvOpFKrNusaaUwk+ej6cBj1bmhLcBfj80elGk+ZIo5JSkq+unB1dLKEOcNfJDZgjGICfhQ0Q5TbP0PvF4+Q==", + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/workerpool/-/workerpool-6.1.0.tgz", + "integrity": "sha512-toV7q9rWNYha963Pl/qyeZ6wG+3nnsyvolaNUS8+R5Wtw6qJPTxIlOP1ZSvcGhEJw+l3HMMmtiNo9Gl61G4GVg==", "dev": true }, "wrap-ansi": { @@ -6651,21 +6579,15 @@ "integrity": "sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==" }, "y18n": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.0.tgz", - "integrity": "sha512-r9S/ZyXu/Xu9q1tYlpsLIsa3EeLXXk0VwlxqTcFRfg9EhMW+17kbt9G0NrgCmhGb5vT2hyhJZLfDGx+7+5Uj/w==" + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.3.tgz", + "integrity": "sha512-JKhqTOwSrqNA1NY5lSztJ1GrBiUodLMmIZuLiDaMRJ+itFd+ABVE8XBjOvIWL+rSqNDC74LCSFmlb/U4UZ4hJQ==" }, "yallist": { "version": "2.1.2", "resolved": "https://registry.npmjs.org/yallist/-/yallist-2.1.2.tgz", "integrity": "sha1-HBH5IY8HYImkfdUS+TxmmaaoHVI=" }, - "yaml": { - "version": "1.10.0", - "resolved": "https://registry.npmjs.org/yaml/-/yaml-1.10.0.tgz", - "integrity": "sha512-yr2icI4glYaNG+KWONODapy2/jDdMSDnrONSjblABjD9B4Z5LgiircSt8m8sRZFNi08kG9Sm0uSHtEmP3zaEGg==", - "dev": true - }, "yargs": { "version": "15.4.1", "resolved": "https://registry.npmjs.org/yargs/-/yargs-15.4.1.tgz", @@ -6696,14 +6618,10 @@ } }, "yargs-parser": { - "version": "13.1.2", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-13.1.2.tgz", - "integrity": "sha512-3lbsNRf/j+A4QuSZfDRA7HRSfWrzO0YjqTJd5kjAq37Zep1CEgaYmrH9Q3GwPiB9cHyd1Y1UwggGhJGoxipbzg==", - "dev": true, - "requires": { - "camelcase": "^5.0.0", - "decamelize": "^1.2.0" - } + "version": "20.2.4", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.4.tgz", + "integrity": "sha512-WOkpgNhPTlE73h4VFAFsOnomJVaovO8VqLDzy5saChRBFQFBoMYirowyW+Q9HB4HFF4Z7VZTiG3iSzJJA29yRA==", + "dev": true }, "yargs-unparser": { "version": "2.0.0", @@ -6743,12 +6661,12 @@ "dev": true }, "zip-stream": { - "version": "4.0.4", - "resolved": "https://registry.npmjs.org/zip-stream/-/zip-stream-4.0.4.tgz", - "integrity": "sha512-a65wQ3h5gcQ/nQGWV1mSZCEzCML6EK/vyVPcrPNynySP1j3VBbQKh3nhC8CbORb+jfl2vXvh56Ul5odP1bAHqw==", + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/zip-stream/-/zip-stream-4.1.0.tgz", + "integrity": "sha512-zshzwQW7gG7hjpBlgeQP9RuyPGNxvJdzR8SUM3QhxCnLjWN2E7j3dOvpeDcQoETfHx0urRS7EtmVToql7YpU4A==", "requires": { "archiver-utils": "^2.1.0", - "compress-commons": "^4.0.2", + "compress-commons": "^4.1.0", "readable-stream": "^3.6.0" }, "dependencies": { diff --git a/oclif.manifest.json b/oclif.manifest.json index f378ffa1..306f7ed5 100644 --- a/oclif.manifest.json +++ b/oclif.manifest.json @@ -1,3569 +1 @@ -{ - "version": "2.8.7", - "commands": { - "sfpowerkit:auth:login": { - "id": "sfpowerkit:auth:login", - "description": "Login to an org using a username/password", - "usage": "<%= command.id %> -u -p [-s ] [-r ] [-a ] [--json] [--loglevel trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL]", - "pluginName": "sfpowerkit", - "pluginType": "core", - "aliases": [], - "examples": [ - "$ sfdx sfpowerkit:auth:login -u azlam@sfdc.com -p Xasdax2w2 -a prod\n Authorized to azlam@sfdc.com\n " - ], - "flags": { - "json": { - "name": "json", - "type": "boolean", - "description": "format output as json", - "allowNo": false - }, - "loglevel": { - "name": "loglevel", - "type": "option", - "description": "logging level for this command invocation", - "required": false, - "helpValue": "(trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL)", - "options": [ - "trace", - "debug", - "info", - "warn", - "error", - "fatal", - "TRACE", - "DEBUG", - "INFO", - "WARN", - "ERROR", - "FATAL" - ], - "default": "warn" - }, - "username": { - "name": "username", - "type": "option", - "char": "u", - "description": "Username for the org", - "required": true - }, - "password": { - "name": "password", - "type": "option", - "char": "p", - "description": "Password for the org", - "required": true - }, - "securitytoken": { - "name": "securitytoken", - "type": "option", - "char": "s", - "description": "Security Token for the org", - "required": false - }, - "url": { - "name": "url", - "type": "option", - "char": "r", - "description": "URL of the instance to be authenticated, Defaults to Test URL", - "required": false - }, - "alias": { - "name": "alias", - "type": "option", - "char": "a", - "description": "Alias ofthe org", - "required": false - } - }, - "args": [] - }, - "sfpowerkit:org:cleartestresult": { - "id": "sfpowerkit:org:cleartestresult", - "description": "This command helps to clear any test results and code coverage in the org to get fresh and enhanced coverage everytime", - "usage": "<%= command.id %> [-u ] [--apiversion ] [--json] [--loglevel trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL]", - "pluginName": "sfpowerkit", - "pluginType": "core", - "aliases": [], - "examples": [ - "$ sfdx sfpowerkit:org:cleartestresult -u myOrg@example.com" - ], - "flags": { - "json": { - "name": "json", - "type": "boolean", - "description": "format output as json", - "allowNo": false - }, - "loglevel": { - "name": "loglevel", - "type": "option", - "description": "logging level for this command invocation", - "required": false, - "helpValue": "(trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL)", - "options": [ - "trace", - "debug", - "info", - "warn", - "error", - "fatal", - "TRACE", - "DEBUG", - "INFO", - "WARN", - "ERROR", - "FATAL" - ], - "default": "warn" - }, - "targetusername": { - "name": "targetusername", - "type": "option", - "char": "u", - "description": "username or alias for the target org; overrides default target org" - }, - "apiversion": { - "name": "apiversion", - "type": "option", - "description": "override the api version used for api requests made by this command" - } - }, - "args": [] - }, - "sfpowerkit:org:destruct": { - "id": "sfpowerkit:org:destruct", - "description": "This is a helper command to ease the deployment of destructiveChanges.xml. The command will create the empty package.xml and package the passed destructive manifest and deploy it to the org", - "usage": "<%= command.id %> [-m ] [-u ] [--apiversion ] [--json] [--loglevel trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL]", - "pluginName": "sfpowerkit", - "pluginType": "core", - "aliases": [], - "examples": [ - "$ sfdx sfpowerkit:org:destruct -m destructiveChanges.xml -u prod@prod3.com" - ], - "flags": { - "json": { - "name": "json", - "type": "boolean", - "description": "format output as json", - "allowNo": false - }, - "loglevel": { - "name": "loglevel", - "type": "option", - "description": "logging level for this command invocation", - "required": false, - "helpValue": "(trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL)", - "options": [ - "trace", - "debug", - "info", - "warn", - "error", - "fatal", - "TRACE", - "DEBUG", - "INFO", - "WARN", - "ERROR", - "FATAL" - ], - "default": "info" - }, - "targetusername": { - "name": "targetusername", - "type": "option", - "char": "u", - "description": "username or alias for the target org; overrides default target org" - }, - "apiversion": { - "name": "apiversion", - "type": "option", - "description": "override the api version used for api requests made by this command" - }, - "manifest": { - "name": "manifest", - "type": "option", - "char": "m", - "description": "The path to xml containing the members that need to be destructed,follow the instructions here to create such a file https://developer.salesforce.com/docs/atlas.en-us.daas.meta/daas/daas_destructive_changes.htm", - "required": false - } - }, - "args": [] - }, - "sfpowerkit:org:healthcheck": { - "id": "sfpowerkit:org:healthcheck", - "description": "Gets the health details of an org", - "usage": "<%= command.id %> [-u ] [--apiversion ] [--json] [--loglevel trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL]", - "pluginName": "sfpowerkit", - "pluginType": "core", - "aliases": [], - "examples": [ - "$ sfdx sfpowerkit:org:healthcheck -u myOrg@example.com\n Successfully Retrived the healthstatus of the org\n " - ], - "flags": { - "json": { - "name": "json", - "type": "boolean", - "description": "format output as json", - "allowNo": false - }, - "loglevel": { - "name": "loglevel", - "type": "option", - "description": "logging level for this command invocation", - "required": false, - "helpValue": "(trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL)", - "options": [ - "trace", - "debug", - "info", - "warn", - "error", - "fatal", - "TRACE", - "DEBUG", - "INFO", - "WARN", - "ERROR", - "FATAL" - ], - "default": "warn" - }, - "targetusername": { - "name": "targetusername", - "type": "option", - "char": "u", - "description": "username or alias for the target org; overrides default target org" - }, - "apiversion": { - "name": "apiversion", - "type": "option", - "description": "override the api version used for api requests made by this command" - } - }, - "args": [] - }, - "sfpowerkit:org:orgcoverage": { - "id": "sfpowerkit:org:orgcoverage", - "description": "Gets the apex test coverage details of an org", - "usage": "<%= command.id %> [-d ] [-f json|csv] [-u ] [--apiversion ] [--json] [--loglevel trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL]", - "pluginName": "sfpowerkit", - "pluginType": "core", - "aliases": [], - "examples": [ - "$ sfdx sfpowerkit:org:orgcoverage -u myOrg@example.com\n sfdx sfpowerkit:org:orgcoverage -u myOrg@example.com -d testResult -f csv\n sfdx sfpowerkit:org:orgcoverage -u myOrg@example.com -d testResult -f json\n\n\n Successfully Retrieved the Apex Test Coverage of the org XXXX\n coverage:85\n ID PACKAGE NAME TYPE PERCENTAGE COMMENTS UNCOVERED LINES\n ─────── ──────── ────────────────── ──────── ────────── ─────────────────────────────────── ──────────────────\n 01pxxxx core sampleController ApexClass 100%\n 01pxxxx core sampletriggerHandler ApexClass 80% Looks fine but target more than 85% 62;76;77;\n 01pxxxx consumer sampleHelper ApexClass 72% Action required 62;76;77;78;98;130;131\n 01qxxxx consumer sampleTrigger ApexTrigger 100%\n Output testResult/output.csv is generated successfully\n " - ], - "flags": { - "json": { - "name": "json", - "type": "boolean", - "description": "format output as json", - "allowNo": false - }, - "loglevel": { - "name": "loglevel", - "type": "option", - "description": "logging level for this command invocation", - "required": false, - "helpValue": "(trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL)", - "options": [ - "trace", - "debug", - "info", - "warn", - "error", - "fatal", - "TRACE", - "DEBUG", - "INFO", - "WARN", - "ERROR", - "FATAL" - ], - "default": "warn" - }, - "targetusername": { - "name": "targetusername", - "type": "option", - "char": "u", - "description": "username or alias for the target org; overrides default target org" - }, - "apiversion": { - "name": "apiversion", - "type": "option", - "description": "override the api version used for api requests made by this command" - }, - "output": { - "name": "output", - "type": "option", - "char": "d", - "description": " The output dir where the output will be created", - "required": false - }, - "format": { - "name": "format", - "type": "option", - "char": "f", - "description": " The format for the test result output, Possible values are json/csv", - "required": false, - "helpValue": "(json|csv)", - "options": ["json", "csv"] - } - }, - "args": [] - }, - "sfpowerkit:org:relaxiprange": { - "id": "sfpowerkit:org:relaxiprange", - "description": "This command sets or removes ip range in Network access to relax security setting for a particular salesforce environment", - "usage": "<%= command.id %> [-r ] [--all] [--none] [-u ] [--apiversion ] [--json] [--loglevel trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL]", - "pluginName": "sfpowerkit", - "pluginType": "core", - "aliases": [], - "examples": [ - "sfdx sfpowerkit:org:relaxiprange -u sandbox -r \"122.0.0.0-122.255.255.255,49.0.0.0-49.255.255.255\"", - "sfdx sfpowerkit:org:relaxiprange -u sandbox --all", - "sfdx sfpowerkit:org:relaxiprange -u sandbox --none" - ], - "flags": { - "json": { - "name": "json", - "type": "boolean", - "description": "format output as json", - "allowNo": false - }, - "loglevel": { - "name": "loglevel", - "type": "option", - "description": "logging level for this command invocation", - "required": false, - "helpValue": "(trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL)", - "options": [ - "trace", - "debug", - "info", - "warn", - "error", - "fatal", - "TRACE", - "DEBUG", - "INFO", - "WARN", - "ERROR", - "FATAL" - ], - "default": "info" - }, - "targetusername": { - "name": "targetusername", - "type": "option", - "char": "u", - "description": "username or alias for the target org; overrides default target org" - }, - "apiversion": { - "name": "apiversion", - "type": "option", - "description": "override the api version used for api requests made by this command" - }, - "range": { - "name": "range", - "type": "option", - "char": "r", - "description": "List of ip range with comma separated. eg, 122.0.0.0-122.255.255.255,49.0.0.0-49.255.255.255", - "required": false - }, - "all": { - "name": "all", - "type": "boolean", - "description": "Relax full iprange 0.0.0.0-255.255.255.255 in the target org", - "required": false, - "allowNo": false - }, - "none": { - "name": "none", - "type": "boolean", - "description": "Remove any existing iprange relaxations in the target org", - "required": false, - "allowNo": false - } - }, - "args": [] - }, - "sfpowerkit:package:applypatch": { - "id": "sfpowerkit:package:applypatch", - "description": "Retrieves and applies the patch, Useful after a package upgrade in a CD Environment", - "usage": "<%= command.id %> -n [-u ] [--apiversion ] [--json] [--loglevel trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL]", - "pluginName": "sfpowerkit", - "pluginType": "core", - "aliases": [], - "examples": [ - "$ sfdx sfpowerkit:package:applypatch -n customer_picklist -u sandbox" - ], - "flags": { - "json": { - "name": "json", - "type": "boolean", - "description": "format output as json", - "allowNo": false - }, - "loglevel": { - "name": "loglevel", - "type": "option", - "description": "logging level for this command invocation", - "required": false, - "helpValue": "(trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL)", - "options": [ - "trace", - "debug", - "info", - "warn", - "error", - "fatal", - "TRACE", - "DEBUG", - "INFO", - "WARN", - "ERROR", - "FATAL" - ], - "default": "info" - }, - "targetusername": { - "name": "targetusername", - "type": "option", - "char": "u", - "description": "username or alias for the target org; overrides default target org" - }, - "apiversion": { - "name": "apiversion", - "type": "option", - "description": "override the api version used for api requests made by this command" - }, - "name": { - "name": "name", - "type": "option", - "char": "n", - "description": "Name of the static resource to be patched", - "required": true - } - }, - "args": [] - }, - "sfpowerkit:package:valid": { - "id": "sfpowerkit:package:valid", - "description": "Validates a package to check whether it only contains valid metadata as per metadata coverage", - "usage": "<%= command.id %> [-n ] [-b ] [--apiversion ] [--json] [--loglevel trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL]", - "pluginName": "sfpowerkit", - "pluginType": "core", - "aliases": [], - "examples": [ - "$ sfdx sfpowerkit:package:valid -n testPackage\n Now analyzing testPackage\nConverting package testPackage\nElements supported included in your package testPackage\n[\n \"AuraDefinitionBundle\",\n \"CustomApplication\",\n \"ApexClass\",\n \"ContentAsset\",\n \"WorkflowRule\"\n]\n " - ], - "flags": { - "json": { - "name": "json", - "type": "boolean", - "description": "format output as json", - "allowNo": false - }, - "loglevel": { - "name": "loglevel", - "type": "option", - "description": "loglevel to execute the command", - "required": false, - "helpValue": "(trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL)", - "options": [ - "trace", - "debug", - "info", - "warn", - "error", - "fatal", - "TRACE", - "DEBUG", - "INFO", - "WARN", - "ERROR", - "FATAL" - ], - "default": "info" - }, - "package": { - "name": "package", - "type": "option", - "char": "n", - "description": "the package to analyze", - "required": false - }, - "bypass": { - "name": "bypass", - "type": "option", - "char": "b", - "description": "metadatatypes to skip the package validation check", - "required": false - }, - "apiversion": { - "name": "apiversion", - "type": "option", - "description": "metadata API version to use for validation" - } - }, - "args": [] - }, - "sfpowerkit:pool:create": { - "id": "sfpowerkit:pool:create", - "description": "Creates a pool of prebuilt scratchorgs, which can the be consumed by users or CI", - "usage": "<%= command.id %> -f [-b ] [-v ] [--apiversion ] [--json] [--loglevel trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL]", - "pluginName": "sfpowerkit", - "pluginType": "core", - "aliases": [], - "examples": [ - "$ sfdx sfpowerkit:pool:create -f config\\core_poolconfig.json", - "$ sfdx sfpowerkit:pool:create -f config\\core_poolconfig.json -v devhub" - ], - "flags": { - "json": { - "name": "json", - "type": "boolean", - "description": "format output as json", - "allowNo": false - }, - "loglevel": { - "name": "loglevel", - "type": "option", - "description": "logging level for this command invocation", - "required": false, - "helpValue": "(trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL)", - "options": [ - "trace", - "debug", - "info", - "warn", - "error", - "fatal", - "TRACE", - "DEBUG", - "INFO", - "WARN", - "ERROR", - "FATAL" - ], - "default": "info" - }, - "targetdevhubusername": { - "name": "targetdevhubusername", - "type": "option", - "char": "v", - "description": "username or alias for the dev hub org; overrides default dev hub org" - }, - "apiversion": { - "name": "apiversion", - "type": "option", - "description": "override the api version used for api requests made by this command" - }, - "configfilepath": { - "name": "configfilepath", - "type": "option", - "char": "f", - "description": "Relative Path to the pool configuration json file. The schema of the file could be found in the Wiki", - "required": true - }, - "batchsize": { - "name": "batchsize", - "type": "option", - "char": "b", - "description": "Number of scratch org to be created in a single batch", - "required": false, - "default": 10 - } - }, - "args": [] - }, - "sfpowerkit:pool:delete": { - "id": "sfpowerkit:pool:delete", - "description": "Deletes the pooled scratch orgs from the Scratch Org Pool", - "usage": "<%= command.id %> -t [-m] [-i | -a] [-v ] [--apiversion ] [--json] [--loglevel trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL]", - "pluginName": "sfpowerkit", - "pluginType": "core", - "aliases": [], - "examples": [ - "$ sfdx sfpowerkit:pool:delete -t core ", - "$ sfdx sfpowerkit:pool:delete -t core -v devhub", - "$ sfdx sfpowerkit:pool:delete -t core -v devhub -m", - "$ sfdx sfpowerkit:pool:delete -t core -v devhub -m -a" - ], - "flags": { - "json": { - "name": "json", - "type": "boolean", - "description": "format output as json", - "allowNo": false - }, - "loglevel": { - "name": "loglevel", - "type": "option", - "description": "logging level for this command invocation", - "required": false, - "helpValue": "(trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL)", - "options": [ - "trace", - "debug", - "info", - "warn", - "error", - "fatal", - "TRACE", - "DEBUG", - "INFO", - "WARN", - "ERROR", - "FATAL" - ], - "default": "info" - }, - "targetdevhubusername": { - "name": "targetdevhubusername", - "type": "option", - "char": "v", - "description": "username or alias for the dev hub org; overrides default dev hub org" - }, - "apiversion": { - "name": "apiversion", - "type": "option", - "description": "override the api version used for api requests made by this command" - }, - "tag": { - "name": "tag", - "type": "option", - "char": "t", - "description": "tag used to identify the scratch org pool", - "required": true - }, - "mypool": { - "name": "mypool", - "type": "boolean", - "char": "m", - "description": "Filter only Scratch orgs created by current user in the pool", - "required": false, - "allowNo": false - }, - "allscratchorgs": { - "name": "allscratchorgs", - "type": "boolean", - "char": "a", - "description": "Deletes all used and unused Scratch orgs from pool by the tag", - "required": false, - "allowNo": false - }, - "inprogressonly": { - "name": "inprogressonly", - "type": "boolean", - "char": "i", - "description": "Deletes all In Progress Scratch orgs from pool by the tag", - "required": false, - "allowNo": false - } - }, - "args": [] - }, - "sfpowerkit:pool:fetch": { - "id": "sfpowerkit:pool:fetch", - "description": "Gets an active/unused scratch org from the scratch org pool", - "usage": "<%= command.id %> -t [-m] [-s ] [-v ] [--apiversion ] [--json] [--loglevel trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL]", - "pluginName": "sfpowerkit", - "pluginType": "core", - "aliases": [], - "examples": [ - "$ sfdx sfpowerkit:pool:fetch -t core ", - "$ sfdx sfpowerkit:pool:fetch -t core -v devhub", - "$ sfdx sfpowerkit:pool:fetch -t core -v devhub -m", - "$ sfdx sfpowerkit:pool:fetch -t core -v devhub -s testuser@test.com" - ], - "flags": { - "json": { - "name": "json", - "type": "boolean", - "description": "format output as json", - "allowNo": false - }, - "loglevel": { - "name": "loglevel", - "type": "option", - "description": "logging level for this command invocation", - "required": false, - "helpValue": "(trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL)", - "options": [ - "trace", - "debug", - "info", - "warn", - "error", - "fatal", - "TRACE", - "DEBUG", - "INFO", - "WARN", - "ERROR", - "FATAL" - ], - "default": "info" - }, - "targetdevhubusername": { - "name": "targetdevhubusername", - "type": "option", - "char": "v", - "description": "username or alias for the dev hub org; overrides default dev hub org" - }, - "apiversion": { - "name": "apiversion", - "type": "option", - "description": "override the api version used for api requests made by this command" - }, - "tag": { - "name": "tag", - "type": "option", - "char": "t", - "description": "(required) tag used to identify the scratch org pool", - "required": true - }, - "mypool": { - "name": "mypool", - "type": "boolean", - "char": "m", - "description": "Filter the tag for any additions created by the executor of the command", - "required": false, - "allowNo": false - }, - "sendtouser": { - "name": "sendtouser", - "type": "option", - "char": "s", - "description": "Send the credentials of the fetched scratchorg to another DevHub user, Useful for situations when pool is only limited to certain users", - "required": false - } - }, - "args": [] - }, - "sfpowerkit:pool:list": { - "id": "sfpowerkit:pool:list", - "description": "Retrieves a list of active scratch org and details from any pool. If this command is run with -m|--mypool, the command will retrieve the passwords for the pool created by the user who is executing the command.", - "usage": "<%= command.id %> [-t ] [-m] [-a] [-v ] [--apiversion ] [--json] [--loglevel trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL]", - "pluginName": "sfpowerkit", - "pluginType": "core", - "aliases": [], - "examples": [ - "$ sfdx sfpowerkit:pool:list -t core ", - "$ sfdx sfpowerkit:pool:list -t core -v devhub", - "$ sfdx sfpowerkit:pool:list -t core -v devhub -m", - "$ sfdx sfpowerkit:pool:list -t core -v devhub -m -a" - ], - "flags": { - "json": { - "name": "json", - "type": "boolean", - "description": "format output as json", - "allowNo": false - }, - "loglevel": { - "name": "loglevel", - "type": "option", - "description": "logging level for this command invocation", - "required": false, - "helpValue": "(trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL)", - "options": [ - "trace", - "debug", - "info", - "warn", - "error", - "fatal", - "TRACE", - "DEBUG", - "INFO", - "WARN", - "ERROR", - "FATAL" - ], - "default": "info" - }, - "targetdevhubusername": { - "name": "targetdevhubusername", - "type": "option", - "char": "v", - "description": "username or alias for the dev hub org; overrides default dev hub org" - }, - "apiversion": { - "name": "apiversion", - "type": "option", - "description": "override the api version used for api requests made by this command" - }, - "tag": { - "name": "tag", - "type": "option", - "char": "t", - "description": "tag used to identify the scratch org pool", - "required": false - }, - "mypool": { - "name": "mypool", - "type": "boolean", - "char": "m", - "description": "Filter the tag for any additions created by the executor of the command", - "required": false, - "allowNo": false - }, - "allscratchorgs": { - "name": "allscratchorgs", - "type": "boolean", - "char": "a", - "description": "Gets all used and unused Scratch orgs from pool", - "required": false, - "allowNo": false - } - }, - "args": [] - }, - "sfpowerkit:project:diff": { - "id": "sfpowerkit:project:diff", - "description": "Generate a delta 'changeset' between two diff commits so that the incremental changes can be deployed to the target org.To be used for an org based deployment and the size of the metadata is large that the project cannot not be deployed in a single attempt./nThis command works with a source format based repository only. Utilize the command during a transition phase where an org is transformed to a modular architecture composing of multiple projects.", - "usage": "<%= command.id %> -r -d [-t ] [-x] [-b ] [-p ] [--apiversion ] [--json] [--loglevel trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL]", - "pluginName": "sfpowerkit", - "pluginType": "core", - "aliases": [], - "examples": [ - "$ sfdx sfpowerkit:project:diff --diffFile DiffFileName --encoding EncodingOfFile --output OutputFolder", - "$ sfdx sfpowerkit:project:diff --revisionfrom revisionfrom --revisionto revisionto --output OutputFolder\n " - ], - "flags": { - "json": { - "name": "json", - "type": "boolean", - "description": "format output as json", - "allowNo": false - }, - "loglevel": { - "name": "loglevel", - "type": "option", - "description": "logging level for this command invocation", - "required": false, - "helpValue": "(trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL)", - "options": [ - "trace", - "debug", - "info", - "warn", - "error", - "fatal", - "TRACE", - "DEBUG", - "INFO", - "WARN", - "ERROR", - "FATAL" - ], - "default": "info" - }, - "revisionfrom": { - "name": "revisionfrom", - "type": "option", - "char": "r", - "description": "Base revision from where diff is to be generated, required if diff file is ommited", - "required": true - }, - "revisionto": { - "name": "revisionto", - "type": "option", - "char": "t", - "description": " [default:HEAD] Target revision to generate the diff ", - "required": false - }, - "output": { - "name": "output", - "type": "option", - "char": "d", - "description": " The output dir where the incremental project will be created", - "required": true - }, - "generatedestructive": { - "name": "generatedestructive", - "type": "boolean", - "char": "x", - "description": "If set to true, the command will also generate a destructiveChangePost.xml file in the output folder.", - "required": false, - "allowNo": false - }, - "bypass": { - "name": "bypass", - "type": "option", - "char": "b", - "description": "[EXPERIMENTAL] Ignore comma seperated paths from the diff being generated, the diff command doesnt generate a diff on the following paths", - "required": false - }, - "packagedirectories": { - "name": "packagedirectories", - "type": "option", - "char": "p", - "description": "[EXPERIMENTAL] Run diff only on specific paths, also generate a sfdx-project.json to support the corresponding package directory", - "required": false - }, - "apiversion": { - "name": "apiversion", - "type": "option", - "description": "override the api version used for api requests made by this command" - } - }, - "args": [] - }, - "sfpowerkit:project:orgdiff": { - "id": "sfpowerkit:project:orgdiff", - "description": "Compare source file again the salesforce and display differences. Can optionally add diff conflict markers on file to let the developer accept or rejest changes manually using a git merge tool.", - "usage": "<%= command.id %> -f [-c] [-o json|csv] [-u ] [--apiversion ] [--json] [--loglevel trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL]", - "pluginName": "sfpowerkit", - "pluginType": "core", - "aliases": [], - "examples": [ - "$ sfdx sfpowerkit:project:orgdiff --filesorfolders directory --noconflictmarkers --targetusername sandbox", - "$ sfdx sfpowerkit:project:orgdiff -f fileName --targetusername sandbox" - ], - "flags": { - "json": { - "name": "json", - "type": "boolean", - "description": "format output as json", - "allowNo": false - }, - "loglevel": { - "name": "loglevel", - "type": "option", - "description": "logging level for this command invocation", - "required": false, - "helpValue": "(trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL)", - "options": [ - "trace", - "debug", - "info", - "warn", - "error", - "fatal", - "TRACE", - "DEBUG", - "INFO", - "WARN", - "ERROR", - "FATAL" - ], - "default": "info" - }, - "targetusername": { - "name": "targetusername", - "type": "option", - "char": "u", - "description": "username or alias for the target org; overrides default target org" - }, - "apiversion": { - "name": "apiversion", - "type": "option", - "description": "override the api version used for api requests made by this command" - }, - "filesorfolders": { - "name": "filesorfolders", - "type": "option", - "char": "f", - "description": "List of fils or folder to compare. Should be only Apex classes, trigger, Aura Components, Lightning Web Components or any unsplitted metadata.", - "required": true - }, - "noconflictmarkers": { - "name": "noconflictmarkers", - "type": "boolean", - "char": "c", - "description": "If set to true, the command will not add diff conflict marker to each compared file.", - "required": false, - "allowNo": false - }, - "outputformat": { - "name": "outputformat", - "type": "option", - "char": "o", - "description": " [default: json]The format for the diff output, Possible values are json/csv.", - "required": false, - "helpValue": "(json|csv)", - "options": ["json", "csv"] - } - }, - "args": [] - }, - "sfpowerkit:source:pmd": { - "id": "sfpowerkit:source:pmd", - "description": "This command is a wrapper around PMD ( downloads PMD for the first time) with some predefined defaults, such as ruleset, output format, output file. The command is to be run from the project directory", - "usage": "<%= command.id %> [-d ] [-r ] [-f ] [-o ] [--javahome ] [--supressoutput] [--version ] [--json] [--loglevel trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL]", - "pluginName": "sfpowerkit", - "pluginType": "core", - "aliases": [], - "examples": ["$ sfdx sfpowerkit:source:pmd"], - "flags": { - "json": { - "name": "json", - "type": "boolean", - "description": "format output as json", - "allowNo": false - }, - "loglevel": { - "name": "loglevel", - "type": "option", - "description": "logging level for this command invocation", - "required": false, - "helpValue": "(trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL)", - "options": [ - "trace", - "debug", - "info", - "warn", - "error", - "fatal", - "TRACE", - "DEBUG", - "INFO", - "WARN", - "ERROR", - "FATAL" - ], - "default": "info" - }, - "directory": { - "name": "directory", - "type": "option", - "char": "d", - "description": "[default: Default project directory as mentioned in sfdx-project.json] Override this to set a different directory in the project folder", - "required": false - }, - "ruleset": { - "name": "ruleset", - "type": "option", - "char": "r", - "description": "[default: [sfpowerkit](https://github.com/Accenture/sfpowerkit/blob/main/resources/pmd-ruleset.xml)] The comma separated pmd ruleset that will be utilzied for analyzing the apex classes, Checkout https://pmd.github.io/latest/pmd_userdocs_making_rulesets.html to create your own ruleset", - "required": false - }, - "format": { - "name": "format", - "type": "option", - "char": "f", - "description": "[default: text] The format for the pmd output, Possible values are available at https://pmd.github.io/latest/pmd_userdocs_cli_reference.html#available-report-formats", - "required": false, - "default": "text" - }, - "report": { - "name": "report", - "type": "option", - "char": "o", - "description": "[default: pmd-output] The path to where the output of the analysis should be written", - "required": false, - "default": "pmd-output" - }, - "javahome": { - "name": "javahome", - "type": "option", - "description": "The command will try to locate the javahome path to execute PMD automatically, set this flag to override it to another javahome path", - "required": false - }, - "supressoutput": { - "name": "supressoutput", - "type": "boolean", - "description": "[default: false] Supress the ouptut of the analysis to be displayed in the console", - "required": false, - "allowNo": false - }, - "version": { - "name": "version", - "type": "option", - "description": "[default: 6.30.0] The version of the pmd to be utilized for the analysis, this version will be downloaded to sfpowerkit's cache directory", - "required": false, - "default": "6.30.0" - } - }, - "args": [] - }, - "sfpowerkit:dependency:tree:package": { - "id": "sfpowerkit:dependency:tree:package", - "description": "This command is used to compute the dependency tree details of an unlocked package", - "usage": "<%= command.id %> -n -o [-p] [-s] [-f json|csv] [-u ] [--apiversion ] [--json] [--loglevel trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL]", - "pluginName": "sfpowerkit", - "pluginType": "core", - "aliases": [], - "examples": [ - "$ sfdx sfpowerkit:dependency:tree:package -u MyScratchOrg -n 04txxxxxxxxxx -o outputdir -f json", - "$ sfdx sfpowerkit:dependency:tree:package -u MyScratchOrg -n 04txxxxxxxxxx -o outputdir -f csv", - "$ sfdx sfpowerkit:dependency:tree:package -u MyScratchOrg -n 04txxxxxxxxxx -o outputdir -f csv -p", - "$ sfdx sfpowerkit:dependency:tree:package -u MyScratchOrg -n 04txxxxxxxxxx -o outputdir -f csv -s" - ], - "flags": { - "json": { - "name": "json", - "type": "boolean", - "description": "format output as json", - "allowNo": false - }, - "loglevel": { - "name": "loglevel", - "type": "option", - "description": "[default: info] logging level for this command invocation", - "required": false, - "helpValue": "(trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL)", - "options": [ - "trace", - "debug", - "info", - "warn", - "error", - "fatal", - "TRACE", - "DEBUG", - "INFO", - "WARN", - "ERROR", - "FATAL" - ], - "default": "info" - }, - "targetusername": { - "name": "targetusername", - "type": "option", - "char": "u", - "description": "username or alias for the target org; overrides default target org" - }, - "apiversion": { - "name": "apiversion", - "type": "option", - "description": "override the api version used for api requests made by this command" - }, - "package": { - "name": "package", - "type": "option", - "char": "n", - "description": "package name, package version id, subscriber id that is installed in the org", - "required": true - }, - "packagefilter": { - "name": "packagefilter", - "type": "boolean", - "char": "p", - "description": "output result will filter only dependent packages", - "required": false, - "allowNo": false - }, - "showall": { - "name": "showall", - "type": "boolean", - "char": "s", - "description": "Indclude all items with/without dependency in the result", - "required": false, - "allowNo": false - }, - "format": { - "name": "format", - "type": "option", - "char": "f", - "description": "format of the output file to create", - "required": false, - "helpValue": "(json|csv)", - "options": ["json", "csv"], - "default": "json" - }, - "output": { - "name": "output", - "type": "option", - "char": "o", - "description": "path to create the output", - "required": true - } - }, - "args": [] - }, - "sfpowerkit:org:connectedapp:create": { - "id": "sfpowerkit:org:connectedapp:create", - "description": " Creates a connected app in the target org for JWT based authentication, Please note it only creates Connected App with All users may self authorize option, You would need to manually edit the policies to enable admin users are pre-approved and add your profile to this connected app", - "usage": "<%= command.id %> -n -c -e [-u ] [--apiversion ] [--json] [--loglevel trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL]", - "pluginName": "sfpowerkit", - "pluginType": "core", - "aliases": [], - "examples": [ - "$ sfdx sfpowerkit:org:connectedapp:create -u myOrg@example.com -n AzurePipelines -c id_rsa -e azlam.salamm@invalid.com\n Created Connected App AzurePipelines in Target Org\n " - ], - "flags": { - "json": { - "name": "json", - "type": "boolean", - "description": "format output as json", - "allowNo": false - }, - "loglevel": { - "name": "loglevel", - "type": "option", - "description": "logging level for this command invocation", - "required": false, - "helpValue": "(trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL)", - "options": [ - "trace", - "debug", - "info", - "warn", - "error", - "fatal", - "TRACE", - "DEBUG", - "INFO", - "WARN", - "ERROR", - "FATAL" - ], - "default": "info" - }, - "targetusername": { - "name": "targetusername", - "type": "option", - "char": "u", - "description": "username or alias for the target org; overrides default target org" - }, - "apiversion": { - "name": "apiversion", - "type": "option", - "description": "override the api version used for api requests made by this command" - }, - "name": { - "name": "name", - "type": "option", - "char": "n", - "description": "Name of the connected app to be created", - "required": true - }, - "pathtocertificate": { - "name": "pathtocertificate", - "type": "option", - "char": "c", - "description": "Filepath to the private certificate for the connected app to be created", - "required": true - }, - "email": { - "name": "email", - "type": "option", - "char": "e", - "description": "Email of the connected app to be created", - "required": true - } - }, - "args": [] - }, - "sfpowerkit:org:connectedapp:retrieve": { - "id": "sfpowerkit:org:connectedapp:retrieve", - "description": "Retrieves the consumer key for a connected app, Useful after a sandbox refresh in a CD Environment", - "usage": "<%= command.id %> -n [-u ] [--apiversion ] [--json] [--loglevel trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL]", - "pluginName": "sfpowerkit", - "pluginType": "core", - "aliases": [], - "examples": [ - "$ sfdx sfpowerkit:org:connectedapp:retrieve -n AzurePipelines -u azlam@sfdc.com \n Retrived AzurePipelines Consumer Key : XSD21Sd23123w21321\n " - ], - "flags": { - "json": { - "name": "json", - "type": "boolean", - "description": "format output as json", - "allowNo": false - }, - "loglevel": { - "name": "loglevel", - "type": "option", - "description": "logging level for this command invocation", - "required": false, - "helpValue": "(trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL)", - "options": [ - "trace", - "debug", - "info", - "warn", - "error", - "fatal", - "TRACE", - "DEBUG", - "INFO", - "WARN", - "ERROR", - "FATAL" - ], - "default": "warn" - }, - "targetusername": { - "name": "targetusername", - "type": "option", - "char": "u", - "description": "username or alias for the target org; overrides default target org" - }, - "apiversion": { - "name": "apiversion", - "type": "option", - "description": "override the api version used for api requests made by this command" - }, - "name": { - "name": "name", - "type": "option", - "char": "n", - "description": "Name of the connected app to be retreived", - "required": true - } - }, - "args": [] - }, - "sfpowerkit:org:duplicaterule:activate": { - "id": "sfpowerkit:org:duplicaterule:activate", - "description": "Activates a duplicate rule in the target org", - "usage": "<%= command.id %> -n [-u ] [--apiversion ] [--json] [--loglevel trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL]", - "pluginName": "sfpowerkit", - "pluginType": "core", - "aliases": [], - "examples": [ - "$ sfdx sfpowerkit:org:duplicaterule:Activate -n Account.CRM_Account_Rule_1 -u sandbox\n Polling for Retrieval Status\n Retrieved Duplicate Rule with label : CRM Account Rule 2\n Preparing Activation\n Deploying Activated Rule with ID 0Af4Y000003OdTWSA0\n Polling for Deployment Status\n Polling for Deployment Status\n Duplicate Rule CRM Account Rule 2 Activated\n " - ], - "flags": { - "json": { - "name": "json", - "type": "boolean", - "description": "format output as json", - "allowNo": false - }, - "loglevel": { - "name": "loglevel", - "type": "option", - "description": "logging level for this command invocation", - "required": false, - "helpValue": "(trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL)", - "options": [ - "trace", - "debug", - "info", - "warn", - "error", - "fatal", - "TRACE", - "DEBUG", - "INFO", - "WARN", - "ERROR", - "FATAL" - ], - "default": "info" - }, - "targetusername": { - "name": "targetusername", - "type": "option", - "char": "u", - "description": "username or alias for the target org; overrides default target org" - }, - "apiversion": { - "name": "apiversion", - "type": "option", - "description": "override the api version used for api requests made by this command" - }, - "name": { - "name": "name", - "type": "option", - "char": "n", - "description": "Name of the duplicate rule", - "required": true - } - }, - "args": [] - }, - "sfpowerkit:org:duplicaterule:deactivate": { - "id": "sfpowerkit:org:duplicaterule:deactivate", - "description": "Deactivates a duplicate rule in the target org", - "usage": "<%= command.id %> -n [-u ] [--apiversion ] [--json] [--loglevel trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL]", - "pluginName": "sfpowerkit", - "pluginType": "core", - "aliases": [], - "examples": [ - "$ sfdx sfpowerkit:org:duplicaterule:deactivate -n Account.CRM_Account_Rule_1 -u sandbox\n Polling for Retrieval Status\n Retrieved Duplicate Rule with label : CRM Account Rule 2\n Preparing Deactivation\n Deploying Deactivated Rule with ID 0Af4Y000003OdTWSA0\n Polling for Deployment Status\n Polling for Deployment Status\n Duplicate Rule CRM Account Rule 2 deactivated\n " - ], - "flags": { - "json": { - "name": "json", - "type": "boolean", - "description": "format output as json", - "allowNo": false - }, - "loglevel": { - "name": "loglevel", - "type": "option", - "description": "logging level for this command invocation", - "required": false, - "helpValue": "(trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL)", - "options": [ - "trace", - "debug", - "info", - "warn", - "error", - "fatal", - "TRACE", - "DEBUG", - "INFO", - "WARN", - "ERROR", - "FATAL" - ], - "default": "info" - }, - "targetusername": { - "name": "targetusername", - "type": "option", - "char": "u", - "description": "username or alias for the target org; overrides default target org" - }, - "apiversion": { - "name": "apiversion", - "type": "option", - "description": "override the api version used for api requests made by this command" - }, - "name": { - "name": "name", - "type": "option", - "char": "n", - "description": "Name of the duplicate rule", - "required": true - } - }, - "args": [] - }, - "sfpowerkit:org:manifest:build": { - "id": "sfpowerkit:org:manifest:build", - "description": "Generate a complete manifest of all the metadata from the specified org. Once the manifest is generated use source:retrieve or mdapi:retrieve to retrieve the metadata.", - "usage": "<%= command.id %> [-q ] [-e ] [-i ] [-x] [-c] [-o ] [-u ] [--apiversion ] [--json] [--loglevel trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL]", - "pluginName": "sfpowerkit", - "pluginType": "core", - "aliases": [], - "examples": [ - "$ sfdx sfpowerkit:org:manifest:build --targetusername myOrg@example.com -o package.xml", - "$ sfdx sfpowerkit:org:manifest:build --targetusername myOrg@example.com -o package.xml -e 'ApexClass,CustomObject,Report'", - "$ sfdx sfpowerkit:org:manifest:build --targetusername myOrg@example.com -o package.xml -i 'ApexClass:sampleclass,CustomObject:Account'" - ], - "flags": { - "json": { - "name": "json", - "type": "boolean", - "description": "format output as json", - "allowNo": false - }, - "loglevel": { - "name": "loglevel", - "type": "option", - "description": "logging level for this command invocation", - "required": false, - "helpValue": "(trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL)", - "options": [ - "trace", - "debug", - "info", - "warn", - "error", - "fatal", - "TRACE", - "DEBUG", - "INFO", - "WARN", - "ERROR", - "FATAL" - ], - "default": "warn" - }, - "targetusername": { - "name": "targetusername", - "type": "option", - "char": "u", - "description": "username or alias for the target org; overrides default target org" - }, - "apiversion": { - "name": "apiversion", - "type": "option", - "description": "override the api version used for api requests made by this command" - }, - "quickfilter": { - "name": "quickfilter", - "type": "option", - "char": "q", - "description": "[deprecated] comma separated values of metadata type, member or file names to be excluded while building the manifest" - }, - "excludefilter": { - "name": "excludefilter", - "type": "option", - "char": "e", - "description": "comma separated values of metadata type, member or file names to be excluded while building the manifest" - }, - "includefilter": { - "name": "includefilter", - "type": "option", - "char": "i", - "description": "comma separated values of metadata type, member or file names to be included while building the manifest" - }, - "excludemanaged": { - "name": "excludemanaged", - "type": "boolean", - "char": "x", - "description": "exclude managed packages components from the manifest", - "allowNo": false - }, - "includechilds": { - "name": "includechilds", - "type": "boolean", - "char": "c", - "description": "Set to true to include child Metadata in the generated package.xml.", - "allowNo": false - }, - "outputfile": { - "name": "outputfile", - "type": "option", - "char": "o", - "description": "The output path where the manifest file will be created" - } - }, - "args": [{ "name": "file" }] - }, - "sfpowerkit:org:matchingrule:activate": { - "id": "sfpowerkit:org:matchingrule:activate", - "description": "Activates a matching rule in the target org", - "usage": "<%= command.id %> -n [-u ] [--apiversion ] [--json] [--loglevel trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL]", - "pluginName": "sfpowerkit", - "pluginType": "core", - "aliases": [], - "examples": [ - "$ sfdx sfpowerkit:org:matchingrules:activate -n Account -u sandbox\n Polling for Retrieval Status\n Retrieved Matching Rule for Object : Account\n Preparing Activation\n Deploying Activated Rule with ID 0Af4Y000003OdTWSA0\n Polling for Deployment Status\n Polling for Deployment Status\n Matching Rule for Account activated\n " - ], - "flags": { - "json": { - "name": "json", - "type": "boolean", - "description": "format output as json", - "allowNo": false - }, - "loglevel": { - "name": "loglevel", - "type": "option", - "description": "logging level for this command invocation", - "required": false, - "helpValue": "(trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL)", - "options": [ - "trace", - "debug", - "info", - "warn", - "error", - "fatal", - "TRACE", - "DEBUG", - "INFO", - "WARN", - "ERROR", - "FATAL" - ], - "default": "info" - }, - "targetusername": { - "name": "targetusername", - "type": "option", - "char": "u", - "description": "username or alias for the target org; overrides default target org" - }, - "apiversion": { - "name": "apiversion", - "type": "option", - "description": "override the api version used for api requests made by this command" - }, - "name": { - "name": "name", - "type": "option", - "char": "n", - "description": "Name of the object that has the matching rule", - "required": true - } - }, - "args": [] - }, - "sfpowerkit:org:matchingrule:deactivate": { - "id": "sfpowerkit:org:matchingrule:deactivate", - "description": "Deactivates a matching rule in the target org", - "usage": "<%= command.id %> -n [-u ] [--apiversion ] [--json] [--loglevel trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL]", - "pluginName": "sfpowerkit", - "pluginType": "core", - "aliases": [], - "examples": [ - "$ sfdx sfpowerkit:org:matchingrules:deactivate -n Account -u sandbox\n Polling for Retrieval Status\n Retrieved Matching Rule for Object : Account\n Preparing Deactivation\n Deploying Deactivated Rule with ID 0Af4Y000003OdTWSA0\n Polling for Deployment Status\n Polling for Deployment Status\n Matching Rule for Account deactivated\n " - ], - "flags": { - "json": { - "name": "json", - "type": "boolean", - "description": "format output as json", - "allowNo": false - }, - "loglevel": { - "name": "loglevel", - "type": "option", - "description": "logging level for this command invocation", - "required": false, - "helpValue": "(trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL)", - "options": [ - "trace", - "debug", - "info", - "warn", - "error", - "fatal", - "TRACE", - "DEBUG", - "INFO", - "WARN", - "ERROR", - "FATAL" - ], - "default": "info" - }, - "targetusername": { - "name": "targetusername", - "type": "option", - "char": "u", - "description": "username or alias for the target org; overrides default target org" - }, - "apiversion": { - "name": "apiversion", - "type": "option", - "description": "override the api version used for api requests made by this command" - }, - "name": { - "name": "name", - "type": "option", - "char": "n", - "description": "Name of the object that has the matching rule", - "required": true - } - }, - "args": [] - }, - "sfpowerkit:org:orgwideemail:create": { - "id": "sfpowerkit:org:orgwideemail:create", - "description": "This command is deprecated, Please update your workflows..Create an orgWide Email Address", - "usage": "<%= command.id %> -e -n [-p] [-u ] [--apiversion ] [--json] [--loglevel trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL]", - "pluginName": "sfpowerkit", - "pluginType": "core", - "aliases": [], - "examples": [ - "sfdx sfpowerkit:org:orgwideemail:create -e testuser@test.com -u scratch1 -n \"Test Address\" -p\n Creating email azlam.abdulsalam@accenture.com\n Org wide email created with Id 0D2210000004DidCAE\n Run the folowing command to verify it\n sfdx sfpowerkit:org:orgwideemail:verify -i 0D2210000004DidCAE -u test-jkomdylblorj@example.com " - ], - "flags": { - "json": { - "name": "json", - "type": "boolean", - "description": "format output as json", - "allowNo": false - }, - "loglevel": { - "name": "loglevel", - "type": "option", - "description": "logging level for this command invocation", - "required": false, - "helpValue": "(trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL)", - "options": [ - "trace", - "debug", - "info", - "warn", - "error", - "fatal", - "TRACE", - "DEBUG", - "INFO", - "WARN", - "ERROR", - "FATAL" - ], - "default": "warn" - }, - "targetusername": { - "name": "targetusername", - "type": "option", - "char": "u", - "description": "username or alias for the target org; overrides default target org" - }, - "apiversion": { - "name": "apiversion", - "type": "option", - "description": "override the api version used for api requests made by this command" - }, - "address": { - "name": "address", - "type": "option", - "char": "e", - "description": "Org Wide address email", - "required": true - }, - "displayname": { - "name": "displayname", - "type": "option", - "char": "n", - "description": "Org Wide address display name", - "required": true - }, - "allprofile": { - "name": "allprofile", - "type": "boolean", - "char": "p", - "description": "Allow for all profile", - "required": false, - "allowNo": false - } - }, - "args": [] - }, - "sfpowerkit:org:orgwideemail:verify": { - "id": "sfpowerkit:org:orgwideemail:verify", - "description": "This command is deprecated, Please update your workflows..Verify an already created orgWide Email Address", - "usage": "<%= command.id %> -i [-u ] [--apiversion ] [--json] [--loglevel trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL]", - "pluginName": "sfpowerkit", - "pluginType": "core", - "aliases": [], - "examples": [ - "$ sfdx sfpowerkit:org:orgwideemail:verify --username scratchOrg --emailid orgwideemailid\n " - ], - "flags": { - "json": { - "name": "json", - "type": "boolean", - "description": "format output as json", - "allowNo": false - }, - "loglevel": { - "name": "loglevel", - "type": "option", - "description": "logging level for this command invocation", - "required": false, - "helpValue": "(trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL)", - "options": [ - "trace", - "debug", - "info", - "warn", - "error", - "fatal", - "TRACE", - "DEBUG", - "INFO", - "WARN", - "ERROR", - "FATAL" - ], - "default": "warn" - }, - "targetusername": { - "name": "targetusername", - "type": "option", - "char": "u", - "description": "username or alias for the target org; overrides default target org" - }, - "apiversion": { - "name": "apiversion", - "type": "option", - "description": "override the api version used for api requests made by this command" - }, - "emailid": { - "name": "emailid", - "type": "option", - "char": "i", - "description": "Id of the Org Wide address email to verify", - "required": true - } - }, - "args": [] - }, - "sfpowerkit:org:profile:diff": { - "id": "sfpowerkit:org:profile:diff", - "description": "Compare profiles from project against target org or between two orgs (source and target)", - "usage": "<%= command.id %> [-p ] [-s ] [-d ] [-u ] [--apiversion ] [--json] [--loglevel trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL]", - "pluginName": "sfpowerkit", - "pluginType": "core", - "aliases": [], - "examples": [ - "$ sfdx sfpowerkit:org:profile:diff --profilelist profilenames --targetusername username (Compare liste profiles path against target org)", - "$ sfdx sfpowerkit:org:profile:diff --targetusername username (compare all profile in the project against the target org)", - "$ sfdx sfpowerkit:org:profile:diff --sourceusername sourcealias --targetusername username (compare all profile in the source org against the target org)" - ], - "flags": { - "json": { - "name": "json", - "type": "boolean", - "description": "format output as json", - "allowNo": false - }, - "loglevel": { - "name": "loglevel", - "type": "option", - "description": "logging level for this command invocation", - "required": false, - "helpValue": "(trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL)", - "options": [ - "trace", - "debug", - "info", - "warn", - "error", - "fatal", - "TRACE", - "DEBUG", - "INFO", - "WARN", - "ERROR", - "FATAL" - ], - "default": "info" - }, - "targetusername": { - "name": "targetusername", - "type": "option", - "char": "u", - "description": "username or alias for the target org; overrides default target org" - }, - "apiversion": { - "name": "apiversion", - "type": "option", - "description": "override the api version used for api requests made by this command" - }, - "profilelist": { - "name": "profilelist", - "type": "option", - "char": "p", - "description": "List of profiles to compare, comma separated profile names. If not provided and no sourceusername is provided, all profiles from the source folder will be processed.", - "required": false - }, - "sourceusername": { - "name": "sourceusername", - "type": "option", - "char": "s", - "description": "Source org. If no profile is provided in the profilelist parameter, all the profile from this org will be fetched", - "required": false - }, - "output": { - "name": "output", - "type": "option", - "char": "d", - "description": "Output folder. Provide the output folder if comparing profiles from source org.", - "required": false - } - }, - "args": [] - }, - "sfpowerkit:org:sandbox:create": { - "id": "sfpowerkit:org:sandbox:create", - "description": "Creates a sandbox using the tooling api, ensure the user has the required permissions before using this command", - "usage": "<%= command.id %> -n -d -l [-a ] [-f ] [-v ] [--apiversion ] [--json] [--loglevel trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL]", - "pluginName": "sfpowerkit", - "pluginType": "core", - "aliases": [], - "examples": [ - "$ sfdx sfpowerkit:org:sandbox:create -d Testsandbox -f sitSandbox -n test2 -v myOrg@example.com", - "$ sfdx sfpowerkit:org:sandbox:create -d Testsandbox -l DEVELOPER -n test2 -v myOrg@example.com" - ], - "flags": { - "json": { - "name": "json", - "type": "boolean", - "description": "format output as json", - "allowNo": false - }, - "loglevel": { - "name": "loglevel", - "type": "option", - "description": "logging level for this command invocation", - "required": false, - "helpValue": "(trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL)", - "options": [ - "trace", - "debug", - "info", - "warn", - "error", - "fatal", - "TRACE", - "DEBUG", - "INFO", - "WARN", - "ERROR", - "FATAL" - ], - "default": "warn" - }, - "targetdevhubusername": { - "name": "targetdevhubusername", - "type": "option", - "char": "v", - "description": "username or alias for the dev hub org; overrides default dev hub org" - }, - "apiversion": { - "name": "apiversion", - "type": "option", - "description": "override the api version used for api requests made by this command" - }, - "name": { - "name": "name", - "type": "option", - "char": "n", - "description": "Name of the sandbox", - "required": true - }, - "description": { - "name": "description", - "type": "option", - "char": "d", - "description": "Description of the sandbox", - "required": true - }, - "licensetype": { - "name": "licensetype", - "type": "option", - "char": "l", - "description": "Type of the sandbox. Valid values are DEVELOPER,DEVELOPER_PRO,PARTIAL,FULL. Provide this if the sandbox is to be created from Production", - "required": true, - "options": ["DEVELOPER", "DEVELOPER_PRO", "PARTIAL", "FULL"] - }, - "apexclass": { - "name": "apexclass", - "type": "option", - "char": "a", - "description": "A reference to the ID of an Apex class that runs after each copy of the sandbox", - "required": false, - "default": "" - }, - "clonefrom": { - "name": "clonefrom", - "type": "option", - "char": "f", - "description": "A reference to the ID of a SandboxInfo that serves as the source org for a cloned sandbox.", - "required": false, - "default": "" - } - }, - "args": [] - }, - "sfpowerkit:org:sandbox:info": { - "id": "sfpowerkit:org:sandbox:info", - "description": "Gets the status of a sandbox", - "usage": "<%= command.id %> -n [-s] [-v ] [--apiversion ] [--json] [--loglevel trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL]", - "pluginName": "sfpowerkit", - "pluginType": "core", - "aliases": [], - "examples": [ - "$ sfdx sfpowerkit:org:sandbox:info -n test2 -v produser@example.com \n Successfully Enqueued Refresh of Sandbox\n " - ], - "flags": { - "json": { - "name": "json", - "type": "boolean", - "description": "format output as json", - "allowNo": false - }, - "loglevel": { - "name": "loglevel", - "type": "option", - "description": "logging level for this command invocation", - "required": false, - "helpValue": "(trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL)", - "options": [ - "trace", - "debug", - "info", - "warn", - "error", - "fatal", - "TRACE", - "DEBUG", - "INFO", - "WARN", - "ERROR", - "FATAL" - ], - "default": "warn" - }, - "targetdevhubusername": { - "name": "targetdevhubusername", - "type": "option", - "char": "v", - "description": "username or alias for the dev hub org; overrides default dev hub org" - }, - "apiversion": { - "name": "apiversion", - "type": "option", - "description": "override the api version used for api requests made by this command" - }, - "name": { - "name": "name", - "type": "option", - "char": "n", - "description": "Name of the sandbox", - "required": true - }, - "showonlylatest": { - "name": "showonlylatest", - "type": "boolean", - "char": "s", - "description": "Shows only the latest info of the sandbox record", - "required": false, - "allowNo": false - } - }, - "args": [] - }, - "sfpowerkit:org:sandbox:refresh": { - "id": "sfpowerkit:org:sandbox:refresh", - "description": "Refresh a sandbox using the tooling api, ensure the user has the required permissions before using this command", - "usage": "<%= command.id %> -n [-f ] [-l ] [-v ] [--apiversion ] [--json] [--loglevel trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL]", - "pluginName": "sfpowerkit", - "pluginType": "core", - "aliases": [], - "examples": [ - "$ sfdx sfpowerkit:org:sandbox:refresh -n test2 -f sitSandbox -v myOrg@example.com", - "$ sfdx sfpowerkit:org:sandbox:refresh -n test2 -l DEVELOPER -v myOrg@example.com" - ], - "flags": { - "json": { - "name": "json", - "type": "boolean", - "description": "format output as json", - "allowNo": false - }, - "loglevel": { - "name": "loglevel", - "type": "option", - "description": "logging level for this command invocation", - "required": false, - "helpValue": "(trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL)", - "options": [ - "trace", - "debug", - "info", - "warn", - "error", - "fatal", - "TRACE", - "DEBUG", - "INFO", - "WARN", - "ERROR", - "FATAL" - ], - "default": "warn" - }, - "targetdevhubusername": { - "name": "targetdevhubusername", - "type": "option", - "char": "v", - "description": "username or alias for the dev hub org; overrides default dev hub org" - }, - "apiversion": { - "name": "apiversion", - "type": "option", - "description": "override the api version used for api requests made by this command" - }, - "name": { - "name": "name", - "type": "option", - "char": "n", - "description": "Name of the sandbox", - "required": true - }, - "clonefrom": { - "name": "clonefrom", - "type": "option", - "char": "f", - "description": "Name of the SandboxInfo that serves as the source org for a cloned sandbox.", - "required": false, - "default": "" - }, - "licensetype": { - "name": "licensetype", - "type": "option", - "char": "l", - "description": "Type of the sandbox. Valid values are DEVELOPER,DEVELOPER_PRO,PARTIAL,FULL, Provide this if the sandbox is to be rereshed from Production", - "required": false, - "options": ["DEVELOPER", "DEVELOPER_PRO", "PARTIAL", "FULL"] - } - }, - "args": [] - }, - "sfpowerkit:org:scratchorg:delete": { - "id": "sfpowerkit:org:scratchorg:delete", - "description": "Deletes the active count of scratch org by given usermame/email in a devhub", - "usage": "<%= command.id %> [-e | -u ] [-v ] [--apiversion ] [--json] [--loglevel trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL]", - "pluginName": "sfpowerkit", - "pluginType": "core", - "aliases": [], - "examples": [ - "$ sfdx sfpowerkit:org:scratchorg:delete -e xyz@kyz.com -v devhub", - "$ sfdx sfpowerkit:org:scratchorg:delete -u xyz@kyz.com -v devhub" - ], - "flags": { - "json": { - "name": "json", - "type": "boolean", - "description": "format output as json", - "allowNo": false - }, - "loglevel": { - "name": "loglevel", - "type": "option", - "description": "logging level for this command invocation", - "required": false, - "helpValue": "(trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL)", - "options": [ - "trace", - "debug", - "info", - "warn", - "error", - "fatal", - "TRACE", - "DEBUG", - "INFO", - "WARN", - "ERROR", - "FATAL" - ], - "default": "warn" - }, - "targetdevhubusername": { - "name": "targetdevhubusername", - "type": "option", - "char": "v", - "description": "username or alias for the dev hub org; overrides default dev hub org" - }, - "apiversion": { - "name": "apiversion", - "type": "option", - "description": "override the api version used for api requests made by this command" - }, - "email": { - "name": "email", - "type": "option", - "char": "e", - "description": "Email of the user account that has created the scratch org", - "required": false - }, - "username": { - "name": "username", - "type": "option", - "char": "u", - "description": "Username of the scratch org to be deleted", - "required": false - } - }, - "args": [] - }, - "sfpowerkit:org:scratchorg:usage": { - "id": "sfpowerkit:org:scratchorg:usage", - "description": "Gets the active count of scratch org by users in a devhub", - "usage": "<%= command.id %> [-v ] [--apiversion ] [--json] [--loglevel trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL]", - "pluginName": "sfpowerkit", - "pluginType": "core", - "aliases": [], - "examples": [ - "$ sfdx sfpowerkit:org:scratchorg:usage -v devhub\n Active Scratch Orgs Remaining: 42 out of 100\n Daily Scratch Orgs Remaining: 171 out of 200\n\n SCRATCH_ORGS_USED NAME\n ───────────────── ─────────────────\n 2 XYZ@KYZ.COM\n 2 JFK@KYZ.COM\n Total number of records retrieved: 4.\n " - ], - "flags": { - "json": { - "name": "json", - "type": "boolean", - "description": "format output as json", - "allowNo": false - }, - "loglevel": { - "name": "loglevel", - "type": "option", - "description": "logging level for this command invocation", - "required": false, - "helpValue": "(trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL)", - "options": [ - "trace", - "debug", - "info", - "warn", - "error", - "fatal", - "TRACE", - "DEBUG", - "INFO", - "WARN", - "ERROR", - "FATAL" - ], - "default": "warn" - }, - "targetdevhubusername": { - "name": "targetdevhubusername", - "type": "option", - "char": "v", - "description": "username or alias for the dev hub org; overrides default dev hub org" - }, - "apiversion": { - "name": "apiversion", - "type": "option", - "description": "override the api version used for api requests made by this command" - } - }, - "args": [] - }, - "sfpowerkit:org:trigger:activate": { - "id": "sfpowerkit:org:trigger:activate", - "description": "Activates a trigger in the target org", - "usage": "<%= command.id %> -n [-u ] [--apiversion ] [--json] [--loglevel trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL]", - "pluginName": "sfpowerkit", - "pluginType": "core", - "aliases": [], - "examples": [ - "$ sfdx sfpowerkit:org:trigger:activate -n AccountTrigger -u sandbox\n Polling for Retrieval Status\n Preparing Activation\n Deploying Activated ApexTrigger with ID 0Af4Y000003Q7GySAK\n Polling for Deployment Status\n Polling for Deployment Status\n ApexTrigger AccountTrigger Activated\n " - ], - "flags": { - "json": { - "name": "json", - "type": "boolean", - "description": "format output as json", - "allowNo": false - }, - "loglevel": { - "name": "loglevel", - "type": "option", - "description": "logging level for this command invocation", - "required": false, - "helpValue": "(trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL)", - "options": [ - "trace", - "debug", - "info", - "warn", - "error", - "fatal", - "TRACE", - "DEBUG", - "INFO", - "WARN", - "ERROR", - "FATAL" - ], - "default": "info" - }, - "targetusername": { - "name": "targetusername", - "type": "option", - "char": "u", - "description": "username or alias for the target org; overrides default target org" - }, - "apiversion": { - "name": "apiversion", - "type": "option", - "description": "override the api version used for api requests made by this command" - }, - "name": { - "name": "name", - "type": "option", - "char": "n", - "description": "Name of the trigger that has to be activated", - "required": true - } - }, - "args": [] - }, - "sfpowerkit:org:trigger:deactivate": { - "id": "sfpowerkit:org:trigger:deactivate", - "description": "Deactivates a trigger in the target org", - "usage": "<%= command.id %> -n [-u ] [--apiversion ] [--json] [--loglevel trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL]", - "pluginName": "sfpowerkit", - "pluginType": "core", - "aliases": [], - "examples": [ - "$ sfdx sfpowerkit:org:trigger:deactivate -n AccountTrigger -u sandbox\n Polling for Retrieval Status\n Preparing Deactivation\n Deploying Deactivated ApexTrigger with ID 0Af4Y000003Q7GySAK\n Polling for Deployment Status\n Polling for Deployment Status\n ApexTrigger AccountTrigger deactivated\n " - ], - "flags": { - "json": { - "name": "json", - "type": "boolean", - "description": "format output as json", - "allowNo": false - }, - "loglevel": { - "name": "loglevel", - "type": "option", - "description": "logging level for this command invocation", - "required": false, - "helpValue": "(trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL)", - "options": [ - "trace", - "debug", - "info", - "warn", - "error", - "fatal", - "TRACE", - "DEBUG", - "INFO", - "WARN", - "ERROR", - "FATAL" - ], - "default": "info" - }, - "targetusername": { - "name": "targetusername", - "type": "option", - "char": "u", - "description": "username or alias for the target org; overrides default target org" - }, - "apiversion": { - "name": "apiversion", - "type": "option", - "description": "override the api version used for api requests made by this command" - }, - "name": { - "name": "name", - "type": "option", - "char": "n", - "description": "Name of the trigger that has to be deactivated", - "required": true - } - }, - "args": [] - }, - "sfpowerkit:package:dependencies:install": { - "id": "sfpowerkit:package:dependencies:install", - "description": "Install dependencies of a package", - "usage": "<%= command.id %> [-p ] [-k ] [-b ] [-t ] [-w ] [-r] [-o] [-a] [--usedependencyvalidatedpackages] [-f ] [-v ] [-u ] [--apiversion ] [--json] [--loglevel trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL]", - "pluginName": "sfpowerkit", - "pluginType": "core", - "aliases": [], - "examples": [ - "$ sfdx sfpowerkit:package:dependencies:install -u MyScratchOrg -v MyDevHub -k \"MyPackage1:Key MyPackage3:Key\" -b \"DEV\"" - ], - "flags": { - "json": { - "name": "json", - "type": "boolean", - "description": "format output as json", - "allowNo": false - }, - "loglevel": { - "name": "loglevel", - "type": "option", - "description": "logging level for this command invocation", - "required": false, - "helpValue": "(trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL)", - "options": [ - "trace", - "debug", - "info", - "warn", - "error", - "fatal", - "TRACE", - "DEBUG", - "INFO", - "WARN", - "ERROR", - "FATAL" - ], - "default": "info" - }, - "targetdevhubusername": { - "name": "targetdevhubusername", - "type": "option", - "char": "v", - "description": "username or alias for the dev hub org; overrides default dev hub org" - }, - "targetusername": { - "name": "targetusername", - "type": "option", - "char": "u", - "description": "username or alias for the target org; overrides default target org" - }, - "apiversion": { - "name": "apiversion", - "type": "option", - "description": "override the api version used for api requests made by this command" - }, - "individualpackage": { - "name": "individualpackage", - "type": "option", - "char": "p", - "description": "Installs a specific package especially for upgrade scenario", - "required": false - }, - "installationkeys": { - "name": "installationkeys", - "type": "option", - "char": "k", - "description": "installation key for key-protected packages (format is packagename:key --> core:key nCino:key vlocity:key to allow some packages without installation key)", - "required": false - }, - "branch": { - "name": "branch", - "type": "option", - "char": "b", - "description": "the package version’s branch (format is packagename:branchname --> core:branchname consumer:branchname packageN:branchname)", - "required": false - }, - "tag": { - "name": "tag", - "type": "option", - "char": "t", - "description": "the package version’s tag (format is packagename:tag --> core:tag consumer:tag packageN:tag)", - "required": false - }, - "wait": { - "name": "wait", - "type": "option", - "char": "w", - "description": "number of minutes to wait for installation status (also used for publishwait). Default is 10", - "required": false - }, - "noprompt": { - "name": "noprompt", - "type": "boolean", - "char": "r", - "description": "allow Remote Site Settings and Content Security Policy websites to send or receive data without confirmation", - "required": false, - "allowNo": false - }, - "updateall": { - "name": "updateall", - "type": "boolean", - "char": "o", - "description": "update all packages even if they are installed in the target org", - "required": false, - "allowNo": false - }, - "apexcompileonlypackage": { - "name": "apexcompileonlypackage", - "type": "boolean", - "char": "a", - "description": "compile the apex only in the package, by default only the compilation of the apex in the entire org is triggered", - "required": false, - "allowNo": false - }, - "usedependencyvalidatedpackages": { - "name": "usedependencyvalidatedpackages", - "type": "boolean", - "description": "use dependency validated packages that matches the version number schema provide", - "required": false, - "allowNo": false - }, - "filterpaths": { - "name": "filterpaths", - "type": "option", - "char": "f", - "description": "in a mono repo project, filter packageDirectories using path and install dependent packages only for the specified path", - "required": false - } - }, - "args": [] - }, - "sfpowerkit:package:dependencies:list": { - "id": "sfpowerkit:package:dependencies:list", - "description": "List the dependencies of each package. The command also resolves the .LATEST to the buildversion number that is available in DevHub, and has an additional option to only list validated dependencies of a given package. This is useful during a CI package build process, to list the exact version numbers the package was built on.", - "usage": "<%= command.id %> [-p ] [-w] [--usedependencyvalidatedpackages] [-v ] [--apiversion ] [--json] [--loglevel trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL]", - "pluginName": "sfpowerkit", - "pluginType": "core", - "aliases": [], - "examples": [ - "$ sfdx sfpowerkit:package:dependencies:list -v MyDevHub -s src/dreamhouse", - "$ sfdx sfpowerkit:package:dependencies:list -v MyDevHub --updateproject", - "$ sfdx sfpowerkit:package:dependencies:list -v MyDevHub -s --usedependencyvalidatedpackages" - ], - "flags": { - "json": { - "name": "json", - "type": "boolean", - "description": "format output as json", - "allowNo": false - }, - "loglevel": { - "name": "loglevel", - "type": "option", - "description": "logging level for this command invocation", - "required": false, - "helpValue": "(trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL)", - "options": [ - "trace", - "debug", - "info", - "warn", - "error", - "fatal", - "TRACE", - "DEBUG", - "INFO", - "WARN", - "ERROR", - "FATAL" - ], - "default": "warn" - }, - "targetdevhubusername": { - "name": "targetdevhubusername", - "type": "option", - "char": "v", - "description": "username or alias for the dev hub org; overrides default dev hub org" - }, - "apiversion": { - "name": "apiversion", - "type": "option", - "description": "override the api version used for api requests made by this command" - }, - "filterpaths": { - "name": "filterpaths", - "type": "option", - "char": "p", - "description": "filter packageDirectories using path to get dependent packages details only for the specified path", - "required": false - }, - "updateproject": { - "name": "updateproject", - "type": "boolean", - "char": "w", - "description": "overwrite the sfdx-project.json with resolved dependencies (replace .LATEST)", - "required": false, - "allowNo": false - }, - "usedependencyvalidatedpackages": { - "name": "usedependencyvalidatedpackages", - "type": "boolean", - "description": "use dependency validated packages that matches the version number schema provide", - "required": false, - "allowNo": false - } - }, - "args": [] - }, - "sfpowerkit:package:version:codecoverage": { - "id": "sfpowerkit:package:version:codecoverage", - "description": "This command is used to get the apex test coverage details of an unlocked package", - "usage": "<%= command.id %> [-p ] [-n ] [-i ] [-v ] [--apiversion ] [--json] [--loglevel trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL]", - "pluginName": "sfpowerkit", - "pluginType": "core", - "aliases": [], - "examples": [ - "$ sfdx sfpowerkit:package:version:codecoverage -v myOrg@example.com -i 04tXXXXXXXXXXXXXXX \n", - "$ sfdx sfpowerkit:package:version:codecoverage -v myOrg@example.com -i 04tXXXXXXXXXXXXXXX,04tXXXXXXXXXXXXXXX,04tXXXXXXXXXXXXXXX \n", - "$ sfdx sfpowerkit:package:version:codecoverage -v myOrg@example.com -p core -n 1.2.0.45 \n", - "$ sfdx sfpowerkit:package:version:codecoverage -v myOrg@example.com -p 0HoXXXXXXXXXXXXXXX -n 1.2.0.45" - ], - "flags": { - "json": { - "name": "json", - "type": "boolean", - "description": "format output as json", - "allowNo": false - }, - "loglevel": { - "name": "loglevel", - "type": "option", - "description": "[default: info] logging level for this command invocation", - "required": false, - "helpValue": "(trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL)", - "options": [ - "trace", - "debug", - "info", - "warn", - "error", - "fatal", - "TRACE", - "DEBUG", - "INFO", - "WARN", - "ERROR", - "FATAL" - ], - "default": "info" - }, - "targetdevhubusername": { - "name": "targetdevhubusername", - "type": "option", - "char": "v", - "description": "username or alias for the dev hub org; overrides default dev hub org" - }, - "apiversion": { - "name": "apiversion", - "type": "option", - "description": "API version" - }, - "package": { - "name": "package", - "type": "option", - "char": "p", - "description": "Name of the unlocked package to check the code coverage, packageVersionNumber is required when packageName is used", - "required": false - }, - "versionnumber": { - "name": "versionnumber", - "type": "option", - "char": "n", - "description": "The complete version number format is major.minor.patch (Beta build)—for example, 1.2.0 (Beta 5), packageName is required when packageVersionNumber is used", - "required": false - }, - "versionid": { - "name": "versionid", - "type": "option", - "char": "i", - "description": "Package version Id to check the code coverage", - "required": false - } - }, - "args": [] - }, - "sfpowerkit:package:version:info": { - "id": "sfpowerkit:package:version:info", - "description": "This command is list all the installed (managed/unmanaged) packages in an org", - "usage": "<%= command.id %> [-v ] [-u ] [--apiversion ] [--json] [--loglevel trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL]", - "pluginName": "sfpowerkit", - "pluginType": "core", - "aliases": [], - "examples": [ - "$ sfdx sfpowerkit:package:version:info -u myOrg@example.com " - ], - "flags": { - "json": { - "name": "json", - "type": "boolean", - "description": "format output as json", - "allowNo": false - }, - "loglevel": { - "name": "loglevel", - "type": "option", - "description": "[default: info] logging level for this command invocation", - "required": false, - "helpValue": "(trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL)", - "options": [ - "trace", - "debug", - "info", - "warn", - "error", - "fatal", - "TRACE", - "DEBUG", - "INFO", - "WARN", - "ERROR", - "FATAL" - ], - "default": "info" - }, - "targetdevhubusername": { - "name": "targetdevhubusername", - "type": "option", - "char": "v", - "description": "username or alias for the dev hub org; overrides default dev hub org" - }, - "targetusername": { - "name": "targetusername", - "type": "option", - "char": "u", - "description": "username or alias for the target org; overrides default target org" - }, - "apiversion": { - "name": "apiversion", - "type": "option", - "description": "API version" - } - }, - "args": [] - }, - "sfpowerkit:project:datamodel:diff": { - "id": "sfpowerkit:project:datamodel:diff", - "description": "Provides an audit history of the metadata change between two commit ID's for data model ( CustomFields, RecordTypes, BusinessProcess)", - "usage": "<%= command.id %> -r [-t ] [-p ] [-d ] [--csv] [--json] [--loglevel trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL]", - "pluginName": "sfpowerkit", - "pluginType": "core", - "aliases": [], - "examples": [ - "$ sfdx sfpowerkit:project:datamodel:diff --revisionfrom revisionfrom --revisionto revisionto --csv" - ], - "flags": { - "json": { - "name": "json", - "type": "boolean", - "description": "format output as json", - "allowNo": false - }, - "loglevel": { - "name": "loglevel", - "type": "option", - "description": "logging level for this command invocation", - "required": false, - "helpValue": "(trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL)", - "options": [ - "trace", - "debug", - "info", - "warn", - "error", - "fatal", - "TRACE", - "DEBUG", - "INFO", - "WARN", - "ERROR", - "FATAL" - ], - "default": "info" - }, - "revisionfrom": { - "name": "revisionfrom", - "type": "option", - "char": "r", - "description": "Base revision from which to generate the diff", - "required": true - }, - "revisionto": { - "name": "revisionto", - "type": "option", - "char": "t", - "description": "Target revision from which to generate the diff", - "required": false, - "default": "HEAD" - }, - "packagedirectories": { - "name": "packagedirectories", - "type": "option", - "char": "p", - "description": "Run diff only for specified package directories", - "required": false - }, - "outputdir": { - "name": "outputdir", - "type": "option", - "char": "d", - "description": "Directory to output the results", - "required": false - }, - "csv": { - "name": "csv", - "type": "boolean", - "description": "Output to csv file", - "required": false, - "allowNo": false - } - }, - "args": [] - }, - "sfpowerkit:project:manifest:diff": { - "id": "sfpowerkit:project:manifest:diff", - "description": "run diff between two package.xml and get the difference", - "usage": "<%= command.id %> -s -t -d [-f json|csv|xml] [--apiversion ] [--json] [--loglevel trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL]", - "pluginName": "sfpowerkit", - "pluginType": "core", - "aliases": [], - "examples": [ - "$ sfdx sfpowerkit:project:manifest:diff -s source/package.xml -t target/package.xml -d output" - ], - "flags": { - "json": { - "name": "json", - "type": "boolean", - "description": "format output as json", - "allowNo": false - }, - "loglevel": { - "name": "loglevel", - "type": "option", - "description": "[default: info] logging level for this command invocation", - "required": false, - "helpValue": "(trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL)", - "options": [ - "trace", - "debug", - "info", - "warn", - "error", - "fatal", - "TRACE", - "DEBUG", - "INFO", - "WARN", - "ERROR", - "FATAL" - ], - "default": "info" - }, - "sourcepath": { - "name": "sourcepath", - "type": "option", - "char": "s", - "description": "Paths to the source package.xml file", - "required": true - }, - "targetpath": { - "name": "targetpath", - "type": "option", - "char": "t", - "description": "Paths to the target package.xml file", - "required": true - }, - "output": { - "name": "output", - "type": "option", - "char": "d", - "description": "path to the diff output package.xml", - "required": true - }, - "apiversion": { - "name": "apiversion", - "type": "option", - "description": "The api version to be used create package.xml" - }, - "format": { - "name": "format", - "type": "option", - "char": "f", - "description": "[default: json] The format for the output, Possible values are json/csv/xml", - "required": false, - "helpValue": "(json|csv|xml)", - "options": ["json", "csv", "xml"], - "default": "json" - } - }, - "args": [] - }, - "sfpowerkit:project:manifest:merge": { - "id": "sfpowerkit:project:manifest:merge", - "description": "Merge multiple package.xml into single collective package.xml", - "usage": "<%= command.id %> -p -d [--apiversion ] [--json] [--loglevel trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL]", - "pluginName": "sfpowerkit", - "pluginType": "core", - "aliases": [], - "examples": [ - "$ sfdx sfpowerkit:project:manifest:merge -p project1/path/to/package.xml -d result/package.xml\n$ sfdx sfpowerkit:project:manifest:merge -p project1/path/to/package.xml,project2/path/to/package.xml -d result/package.xml" - ], - "flags": { - "json": { - "name": "json", - "type": "boolean", - "description": "format output as json", - "allowNo": false - }, - "loglevel": { - "name": "loglevel", - "type": "option", - "description": "[default: info] logging level for this command invocation", - "required": false, - "helpValue": "(trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL)", - "options": [ - "trace", - "debug", - "info", - "warn", - "error", - "fatal", - "TRACE", - "DEBUG", - "INFO", - "WARN", - "ERROR", - "FATAL" - ], - "default": "info" - }, - "path": { - "name": "path", - "type": "option", - "char": "p", - "description": "Paths to the package.xml file", - "required": true - }, - "manifest": { - "name": "manifest", - "type": "option", - "char": "d", - "description": "output path to create collective package.xml", - "required": true - }, - "apiversion": { - "name": "apiversion", - "type": "option", - "description": "The api version to be used create package.xml" - } - }, - "args": [] - }, - "sfpowerkit:source:apextest:list": { - "id": "sfpowerkit:source:apextest:list", - "description": "This command helps to get list of all apex text classes located in source path", - "usage": "<%= command.id %> -p [--resultasstring] [--json] [--loglevel trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL]", - "pluginName": "sfpowerkit", - "pluginType": "core", - "aliases": [], - "examples": ["$ sfdx sfpowerkit:source:apextest:list -p force-app"], - "flags": { - "json": { - "name": "json", - "type": "boolean", - "description": "format output as json", - "allowNo": false - }, - "loglevel": { - "name": "loglevel", - "type": "option", - "description": "[default: info] logging level for this command invocation", - "required": false, - "helpValue": "(trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL)", - "options": [ - "trace", - "debug", - "info", - "warn", - "error", - "fatal", - "TRACE", - "DEBUG", - "INFO", - "WARN", - "ERROR", - "FATAL" - ], - "default": "info" - }, - "path": { - "name": "path", - "type": "option", - "char": "p", - "description": "Source path to get all the apex test", - "required": true - }, - "resultasstring": { - "name": "resultasstring", - "type": "boolean", - "description": "Use this flag to get comma separated list of apex test as a string", - "required": false, - "allowNo": false - } - }, - "args": [] - }, - "sfpowerkit:source:apextestsuite:convert": { - "id": "sfpowerkit:source:apextestsuite:convert", - "description": "Converts an apex test suite to its consituent apex classes as a single line separated by commas, so that it can be used for metadata api deployment", - "usage": "<%= command.id %> -n [--json] [--loglevel trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL]", - "pluginName": "sfpowerkit", - "pluginType": "core", - "aliases": [], - "examples": [ - "$ sfdx sfpowerkit:source:apextestsuite:convert -n MyApexTestSuite \n \"ABC2,ABC1Test\" \n " - ], - "flags": { - "json": { - "name": "json", - "type": "boolean", - "description": "format output as json", - "allowNo": false - }, - "loglevel": { - "name": "loglevel", - "type": "option", - "description": "logging level for this command invocation", - "required": false, - "helpValue": "(trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL)", - "options": [ - "trace", - "debug", - "info", - "warn", - "error", - "fatal", - "TRACE", - "DEBUG", - "INFO", - "WARN", - "ERROR", - "FATAL" - ], - "default": "info" - }, - "name": { - "name": "name", - "type": "option", - "char": "n", - "description": "The name of the apextestsuite (the file name minus the apex test suite)", - "required": true - } - }, - "args": [] - }, - "sfpowerkit:source:customlabel:buildmanifest": { - "id": "sfpowerkit:source:customlabel:buildmanifest", - "description": "This Command is used to build package.xml with all customlabels as members rather than wildcard *. sfdx force:source:convert creates a package.xml with customlabels wildcard, this command helps to update the package.xml with list of label names.", - "usage": "<%= command.id %> -p -x [--apiversion ] [--json] [--loglevel trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL]", - "pluginName": "sfpowerkit", - "pluginType": "core", - "aliases": [], - "examples": [ - "$ sfdx sfpowerkit:source:customlabel:buildmanifest -p project1/path/to/customlabelfile.xml -x mdapiout/package.xml\n$ sfdx sfpowerkit:source:customlabel:buildmanifest -p project1/path/to/customlabelfile.xml,project2/path/to/customlabelfile.xml -x mdapiout/package.xml" - ], - "flags": { - "json": { - "name": "json", - "type": "boolean", - "description": "format output as json", - "allowNo": false - }, - "loglevel": { - "name": "loglevel", - "type": "option", - "description": "[default: info] logging level for this command invocation", - "required": false, - "helpValue": "(trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL)", - "options": [ - "trace", - "debug", - "info", - "warn", - "error", - "fatal", - "TRACE", - "DEBUG", - "INFO", - "WARN", - "ERROR", - "FATAL" - ], - "default": "info" - }, - "path": { - "name": "path", - "type": "option", - "char": "p", - "description": "Path to the CustomLabels.labels-meta.xml file", - "required": true - }, - "manifest": { - "name": "manifest", - "type": "option", - "char": "x", - "description": "path to existing package.xml file or create new package.xml", - "required": true - }, - "apiversion": { - "name": "apiversion", - "type": "option", - "description": "The api version to be used create package.xml" - } - }, - "args": [] - }, - "sfpowerkit:source:customlabel:create": { - "id": "sfpowerkit:source:customlabel:create", - "description": "Custom Labels are org wide, hence when the metadata is pulled down from scratch org, the entire custom label metadata file is updated in a package repo. This command is a helper command to create customlabel with pacakage names prepended for easy reconcilation.", - "usage": "<%= command.id %> -n -v -s [-c ] [-l ] [-p ] [--package ] [-i] [-u ] [--apiversion ] [--json] [--loglevel trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL]", - "pluginName": "sfpowerkit", - "pluginType": "core", - "aliases": [], - "examples": [ - "$ sfdx sfpowerkit:source:customlabel:create -u fancyScratchOrg1 -n FlashError -v \"Memory leaks aren't for the faint hearted\" -s \"A flashing error --package core\"\n Deployed CustomLabel FlashError in target org with core_ prefix, You may now pull and utilize the customlabel:reconcile command\n " - ], - "flags": { - "json": { - "name": "json", - "type": "boolean", - "description": "format output as json", - "allowNo": false - }, - "loglevel": { - "name": "loglevel", - "type": "option", - "description": "logging level for this command invocation", - "required": false, - "helpValue": "(trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL)", - "options": [ - "trace", - "debug", - "info", - "warn", - "error", - "fatal", - "TRACE", - "DEBUG", - "INFO", - "WARN", - "ERROR", - "FATAL" - ], - "default": "info" - }, - "targetusername": { - "name": "targetusername", - "type": "option", - "char": "u", - "description": "username or alias for the target org; overrides default target org" - }, - "apiversion": { - "name": "apiversion", - "type": "option", - "description": "override the api version used for api requests made by this command" - }, - "fullname": { - "name": "fullname", - "type": "option", - "char": "n", - "description": "Name of the custom label (API Name)", - "required": true - }, - "value": { - "name": "value", - "type": "option", - "char": "v", - "description": "Value of the custom label", - "required": true - }, - "categories": { - "name": "categories", - "type": "option", - "char": "c", - "description": "Comma Separated Category Values", - "required": false - }, - "language": { - "name": "language", - "type": "option", - "char": "l", - "description": "Language of the custom label (Default: en_US)", - "required": false - }, - "protected": { - "name": "protected", - "type": "option", - "char": "p", - "description": "Protected State of the custom label (Default: false)", - "required": false - }, - "shortdescription": { - "name": "shortdescription", - "type": "option", - "char": "s", - "description": "Short Description of the custom label", - "required": true - }, - "package": { - "name": "package", - "type": "option", - "description": "The name of the package that needs to be appended", - "required": false - }, - "ignorepackage": { - "name": "ignorepackage", - "type": "boolean", - "char": "i", - "description": "Ignores the addition of the package into the fullname (API Name)", - "allowNo": false - } - }, - "args": [] - }, - "sfpowerkit:source:customlabel:reconcile": { - "id": "sfpowerkit:source:customlabel:reconcile", - "description": "Custom Labels are org wide, hence when the metadata is pulled down from scratch org, the entire custom label metadata file is updated in a package repo, This command reconcile the updated custom labels to include only the labels that have the API name starting with package name or created using the custom label create command", - "usage": "<%= command.id %> -d -p [--json] [--loglevel trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL]", - "pluginName": "sfpowerkit", - "pluginType": "core", - "aliases": [], - "examples": [ - "$ sfdx sfpowerkit:source:customlabel:reconcile -d path/to/customlabelfile.xml -p core\n Cleaned The Custom Labels\n" - ], - "flags": { - "json": { - "name": "json", - "type": "boolean", - "description": "format output as json", - "allowNo": false - }, - "loglevel": { - "name": "loglevel", - "type": "option", - "description": "logging level for this command invocation", - "required": false, - "helpValue": "(trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL)", - "options": [ - "trace", - "debug", - "info", - "warn", - "error", - "fatal", - "TRACE", - "DEBUG", - "INFO", - "WARN", - "ERROR", - "FATAL" - ], - "default": "warn" - }, - "path": { - "name": "path", - "type": "option", - "char": "d", - "description": "Path to the CustomLabels.labels-meta.xml file", - "required": true - }, - "project": { - "name": "project", - "type": "option", - "char": "p", - "description": "The name of the package that needs to be reconciled", - "required": true - } - }, - "args": [] - }, - "sfpowerkit:source:picklist:generatepatch": { - "id": "sfpowerkit:source:picklist:generatepatch", - "description": "Search picklist fields inside project and create a static resource file with picklist fields, used to solve the picklist upgrade issue in dx unlock package https://trailblazer.salesforce.com/issues_view?id=a1p3A0000003Uk2QAE", - "usage": "<%= command.id %> [-p ] [--json] [--loglevel trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL]", - "pluginName": "sfpowerkit", - "pluginType": "core", - "aliases": [], - "examples": [ - "$ sfdx sfpowerkit:source:picklist:generatepatch -p sfpowerkit_test" - ], - "flags": { - "json": { - "name": "json", - "type": "boolean", - "description": "format output as json", - "allowNo": false - }, - "loglevel": { - "name": "loglevel", - "type": "option", - "description": "[default: info] logging level for this command invocation", - "required": false, - "helpValue": "(trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL)", - "options": [ - "trace", - "debug", - "info", - "warn", - "error", - "fatal", - "TRACE", - "DEBUG", - "INFO", - "WARN", - "ERROR", - "FATAL" - ], - "default": "info" - }, - "package": { - "name": "package", - "type": "option", - "char": "p", - "description": "Name of the package to generate the picklist patch", - "required": false - } - }, - "args": [] - }, - "sfpowerkit:source:profile:merge": { - "id": "sfpowerkit:source:profile:merge", - "description": "This command is used in the lower environments such as ScratchOrgs , Development / System Testing Sandboxes, inorder to apply the changes made in the environment to retrieved profile, so that it can be deployed to the higher environments", - "usage": "<%= command.id %> [-f ] [-n ] [-m ] [-d] [-u ] [--apiversion ] [--json] [--loglevel trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL]", - "pluginName": "sfpowerkit", - "pluginType": "core", - "aliases": [], - "examples": [ - "$ sfdx sfpowerkit:source:profile:merge -u sandbox", - "$ sfdx sfpowerkit:source:profile:merge -f force-app -n \"My Profile\" -r -u sandbox", - "$ sfdx sfpowerkit:source:profile:merge -f \"module1, module2, module3\" -n \"My Profile1, My profile2\" -u sandbox" - ], - "flags": { - "json": { - "name": "json", - "type": "boolean", - "description": "format output as json", - "allowNo": false - }, - "loglevel": { - "name": "loglevel", - "type": "option", - "description": "logging level for this command invocation", - "required": false, - "helpValue": "(trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL)", - "options": [ - "trace", - "debug", - "info", - "warn", - "error", - "fatal", - "TRACE", - "DEBUG", - "INFO", - "WARN", - "ERROR", - "FATAL" - ], - "default": "info" - }, - "targetusername": { - "name": "targetusername", - "type": "option", - "char": "u", - "description": "username or alias for the target org; overrides default target org" - }, - "apiversion": { - "name": "apiversion", - "type": "option", - "description": "override the api version used for api requests made by this command" - }, - "folder": { - "name": "folder", - "type": "option", - "char": "f", - "description": "comma separated list of folders to scan for profiles. If ommited, the folders in the packageDirectories configuration will be used.", - "required": false - }, - "profilelist": { - "name": "profilelist", - "type": "option", - "char": "n", - "description": "comma separated list of profiles. If ommited, all the profiles found in the folder(s) will be merged", - "required": false - }, - "metadata": { - "name": "metadata", - "type": "option", - "char": "m", - "description": "comma separated list of metadata for which the permissions will be retrieved.", - "required": false - }, - "delete": { - "name": "delete", - "type": "boolean", - "char": "d", - "description": "set this flag to delete profile files that does not exist in the org.", - "required": false, - "allowNo": false - } - }, - "args": [] - }, - "sfpowerkit:source:profile:reconcile": { - "id": "sfpowerkit:source:profile:reconcile", - "description": "This command is used in the lower environments such as ScratchOrgs , Development / System Testing Sandboxes, where a retrieved profile from production has to be cleaned up only for the metadata that is contained in the environment or base it only as per the metadata that is contained in the packaging directory.", - "usage": "<%= command.id %> [-f ] [-n ] [-d ] [-s] [-u ] [--json] [--loglevel trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL]", - "pluginName": "sfpowerkit", - "pluginType": "core", - "aliases": [], - "examples": [ - "$ sfdx sfpowerkit:source:profile:reconcile --folder force-app -d destfolder -s", - "$ sfdx sfpowerkit:source:profile:reconcile --folder force-app,module2,module3 -u sandbox -d destfolder", - "$ sfdx sfpowerkit:source:profile:reconcile -u myscratchorg -d destfolder" - ], - "flags": { - "json": { - "name": "json", - "type": "boolean", - "description": "format output as json", - "allowNo": false - }, - "loglevel": { - "name": "loglevel", - "type": "option", - "description": "logging level for this command invocation", - "required": false, - "helpValue": "(trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL)", - "options": [ - "trace", - "debug", - "info", - "warn", - "error", - "fatal", - "TRACE", - "DEBUG", - "INFO", - "WARN", - "ERROR", - "FATAL" - ], - "default": "info" - }, - "folder": { - "name": "folder", - "type": "option", - "char": "f", - "description": "path to the folder which contains the profiles to be reconciled,if project contain multiple package directories, please provide a comma seperated list, if omitted, all the package directories will be checked for profiles", - "required": false - }, - "profilelist": { - "name": "profilelist", - "type": "option", - "char": "n", - "description": "list of profiles to be reconciled. If ommited, all the profiles components will be reconciled.", - "required": false - }, - "destfolder": { - "name": "destfolder", - "type": "option", - "char": "d", - "description": " the destination folder for reconciled profiles, if omitted existing profiles will be reconciled and will be rewritten in the current location", - "required": false - }, - "sourceonly": { - "name": "sourceonly", - "type": "boolean", - "char": "s", - "description": "set this flag to reconcile profiles only against component available in the project only. Configure ignored perissions in sfdx-project.json file in the array plugins->sfpowerkit->ignoredPermissions.", - "required": false, - "allowNo": false - }, - "targetorg": { - "name": "targetorg", - "type": "option", - "char": "u", - "description": " org against which profiles will be reconciled. this parameter can be ommited if sourceonly flag is set.", - "required": false - } - }, - "args": [] - }, - "sfpowerkit:source:profile:retrieve": { - "id": "sfpowerkit:source:profile:retrieve", - "description": "Retrieve profiles from the salesforce org with all its associated permissions. Common use case for this command is to migrate profile changes from a integration environment to other higher environments [overcomes SFDX CLI Profile retrieve issue where it doesnt fetch the full profile unless the entire metadata is present in source], or retrieving profiles from production to lower environments for testing.", - "usage": "<%= command.id %> [-f ] [-n ] [-d] [-u ] [--apiversion ] [--json] [--loglevel trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL]", - "pluginName": "sfpowerkit", - "pluginType": "core", - "aliases": [], - "examples": [ - "$ sfdx sfpowerkit:source:profile:retrieve -u prod", - "$ sfdx sfpowerkit:source:profile:retrieve -f force-app -n \"My Profile\" -u prod", - "$ sfdx sfpowerkit:source:profile:retrieve -f \"module1, module2, module3\" -n \"My Profile1, My profile2\" -u prod" - ], - "flags": { - "json": { - "name": "json", - "type": "boolean", - "description": "format output as json", - "allowNo": false - }, - "loglevel": { - "name": "loglevel", - "type": "option", - "description": "logging level for this command invocation", - "required": false, - "helpValue": "(trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL)", - "options": [ - "trace", - "debug", - "info", - "warn", - "error", - "fatal", - "TRACE", - "DEBUG", - "INFO", - "WARN", - "ERROR", - "FATAL" - ], - "default": "info" - }, - "targetusername": { - "name": "targetusername", - "type": "option", - "char": "u", - "description": "username or alias for the target org; overrides default target org" - }, - "apiversion": { - "name": "apiversion", - "type": "option", - "description": "override the api version used for api requests made by this command" - }, - "folder": { - "name": "folder", - "type": "option", - "char": "f", - "description": "retrieve only updated versions of profiles found in this directory, If ignored, all profiles will be retrieved.", - "required": false - }, - "profilelist": { - "name": "profilelist", - "type": "option", - "char": "n", - "description": "comma separated list of profiles to be retrieved. Use it for selectively retrieving an existing profile or retrieving a new profile", - "required": false - }, - "delete": { - "name": "delete", - "type": "boolean", - "char": "d", - "description": "set this flag to delete profile files that does not exist in the org, when retrieving in bulk", - "required": false, - "allowNo": false - } - }, - "args": [] - }, - "sfpowerkit:user:password:generate": { - "id": "sfpowerkit:user:password:generate", - "description": "Generates password for a given user in a salesforce org.", - "usage": "<%= command.id %> [-u ] [--apiversion ] [--json] [--loglevel trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL]", - "pluginName": "sfpowerkit", - "pluginType": "core", - "aliases": [], - "examples": ["$ sfdx sfpowerkit:user:password:generate -u sandbox1"], - "flags": { - "json": { - "name": "json", - "type": "boolean", - "description": "format output as json", - "allowNo": false - }, - "loglevel": { - "name": "loglevel", - "type": "option", - "description": "logging level for this command invocation", - "required": false, - "helpValue": "(trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL)", - "options": [ - "trace", - "debug", - "info", - "warn", - "error", - "fatal", - "TRACE", - "DEBUG", - "INFO", - "WARN", - "ERROR", - "FATAL" - ], - "default": "info" - }, - "targetusername": { - "name": "targetusername", - "type": "option", - "char": "u", - "description": "username or alias for the target org; overrides default target org" - }, - "apiversion": { - "name": "apiversion", - "type": "option", - "description": "override the api version used for api requests made by this command" - } - }, - "args": [] - } - } -} +{"version":"3.1.6","commands":{"sfpowerkit:auth:login":{"id":"sfpowerkit:auth:login","description":"Login to an org using a username/password","usage":"<%= command.id %> -u -p [-s ] [-r ] [-a ] [--json] [--loglevel trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL]","pluginName":"sfpowerkit","pluginType":"core","aliases":[],"examples":["$ sfdx sfpowerkit:auth:login -u azlam@sfdc.com -p Xasdax2w2 -a prod\n Authorized to azlam@sfdc.com\n "],"flags":{"json":{"name":"json","type":"boolean","description":"format output as json","allowNo":false},"loglevel":{"name":"loglevel","type":"option","description":"logging level for this command invocation","required":false,"helpValue":"(trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL)","options":["trace","debug","info","warn","error","fatal","TRACE","DEBUG","INFO","WARN","ERROR","FATAL"],"default":"warn"},"username":{"name":"username","type":"option","char":"u","description":"Username for the org","required":true},"password":{"name":"password","type":"option","char":"p","description":"Password for the org","required":true},"securitytoken":{"name":"securitytoken","type":"option","char":"s","description":"Security Token for the org","required":false},"url":{"name":"url","type":"option","char":"r","description":"URL of the instance to be authenticated, Defaults to Test URL","required":false},"alias":{"name":"alias","type":"option","char":"a","description":"Alias ofthe org","required":false}},"args":[]},"sfpowerkit:org:cleartestresult":{"id":"sfpowerkit:org:cleartestresult","description":"This command helps to clear any test results and code coverage in the org to get fresh and enhanced coverage everytime","usage":"<%= command.id %> [-u ] [--apiversion ] [--json] [--loglevel trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL]","pluginName":"sfpowerkit","pluginType":"core","aliases":[],"examples":["$ sfdx sfpowerkit:org:cleartestresult -u myOrg@example.com"],"flags":{"json":{"name":"json","type":"boolean","description":"format output as json","allowNo":false},"loglevel":{"name":"loglevel","type":"option","description":"logging level for this command invocation","required":false,"helpValue":"(trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL)","options":["trace","debug","info","warn","error","fatal","TRACE","DEBUG","INFO","WARN","ERROR","FATAL"],"default":"warn"},"targetusername":{"name":"targetusername","type":"option","char":"u","description":"username or alias for the target org; overrides default target org"},"apiversion":{"name":"apiversion","type":"option","description":"override the api version used for api requests made by this command"}},"args":[]},"sfpowerkit:org:destruct":{"id":"sfpowerkit:org:destruct","description":"This is a helper command to ease the deployment of destructiveChanges.xml. The command will create the empty package.xml and package the passed destructive manifest and deploy it to the org","usage":"<%= command.id %> [-m ] [-u ] [--apiversion ] [--json] [--loglevel trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL]","pluginName":"sfpowerkit","pluginType":"core","aliases":[],"examples":["$ sfdx sfpowerkit:org:destruct -m destructiveChanges.xml -u prod@prod3.com"],"flags":{"json":{"name":"json","type":"boolean","description":"format output as json","allowNo":false},"loglevel":{"name":"loglevel","type":"option","description":"logging level for this command invocation","required":false,"helpValue":"(trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL)","options":["trace","debug","info","warn","error","fatal","TRACE","DEBUG","INFO","WARN","ERROR","FATAL"],"default":"info"},"targetusername":{"name":"targetusername","type":"option","char":"u","description":"username or alias for the target org; overrides default target org"},"apiversion":{"name":"apiversion","type":"option","description":"override the api version used for api requests made by this command"},"manifest":{"name":"manifest","type":"option","char":"m","description":"The path to xml containing the members that need to be destructed,follow the instructions here to create such a file https://developer.salesforce.com/docs/atlas.en-us.daas.meta/daas/daas_destructive_changes.htm","required":false}},"args":[]},"sfpowerkit:org:healthcheck":{"id":"sfpowerkit:org:healthcheck","description":"Gets the health details of an org","usage":"<%= command.id %> [-u ] [--apiversion ] [--json] [--loglevel trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL]","pluginName":"sfpowerkit","pluginType":"core","aliases":[],"examples":["$ sfdx sfpowerkit:org:healthcheck -u myOrg@example.com\n Successfully Retrived the healthstatus of the org\n "],"flags":{"json":{"name":"json","type":"boolean","description":"format output as json","allowNo":false},"loglevel":{"name":"loglevel","type":"option","description":"logging level for this command invocation","required":false,"helpValue":"(trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL)","options":["trace","debug","info","warn","error","fatal","TRACE","DEBUG","INFO","WARN","ERROR","FATAL"],"default":"warn"},"targetusername":{"name":"targetusername","type":"option","char":"u","description":"username or alias for the target org; overrides default target org"},"apiversion":{"name":"apiversion","type":"option","description":"override the api version used for api requests made by this command"}},"args":[]},"sfpowerkit:org:orgcoverage":{"id":"sfpowerkit:org:orgcoverage","description":"Gets the apex test coverage details of an org","usage":"<%= command.id %> [-d ] [-f json|csv] [-u ] [--apiversion ] [--json] [--loglevel trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL]","pluginName":"sfpowerkit","pluginType":"core","aliases":[],"examples":["$ sfdx sfpowerkit:org:orgcoverage -u myOrg@example.com\n sfdx sfpowerkit:org:orgcoverage -u myOrg@example.com -d testResult -f csv\n sfdx sfpowerkit:org:orgcoverage -u myOrg@example.com -d testResult -f json\n\n\n Successfully Retrieved the Apex Test Coverage of the org XXXX\n coverage:85\n ID PACKAGE NAME TYPE PERCENTAGE COMMENTS UNCOVERED LINES\n ─────── ──────── ────────────────── ──────── ────────── ─────────────────────────────────── ──────────────────\n 01pxxxx core sampleController ApexClass 100%\n 01pxxxx core sampletriggerHandler ApexClass 80% Looks fine but target more than 85% 62;76;77;\n 01pxxxx consumer sampleHelper ApexClass 72% Action required 62;76;77;78;98;130;131\n 01qxxxx consumer sampleTrigger ApexTrigger 100%\n Output testResult/output.csv is generated successfully\n "],"flags":{"json":{"name":"json","type":"boolean","description":"format output as json","allowNo":false},"loglevel":{"name":"loglevel","type":"option","description":"logging level for this command invocation","required":false,"helpValue":"(trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL)","options":["trace","debug","info","warn","error","fatal","TRACE","DEBUG","INFO","WARN","ERROR","FATAL"],"default":"warn"},"targetusername":{"name":"targetusername","type":"option","char":"u","description":"username or alias for the target org; overrides default target org"},"apiversion":{"name":"apiversion","type":"option","description":"override the api version used for api requests made by this command"},"output":{"name":"output","type":"option","char":"d","description":" The output dir where the output will be created","required":false},"format":{"name":"format","type":"option","char":"f","description":" The format for the test result output, Possible values are json/csv","required":false,"helpValue":"(json|csv)","options":["json","csv"]}},"args":[]},"sfpowerkit:org:relaxiprange":{"id":"sfpowerkit:org:relaxiprange","description":"This command sets or removes ip range in Network access to relax security setting for a particular salesforce environment","usage":"<%= command.id %> [-r ] [--all] [--none] [-u ] [--apiversion ] [--json] [--loglevel trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL]","pluginName":"sfpowerkit","pluginType":"core","aliases":[],"examples":["sfdx sfpowerkit:org:relaxiprange -u sandbox -r \"122.0.0.0-122.255.255.255,49.0.0.0-49.255.255.255\"","sfdx sfpowerkit:org:relaxiprange -u sandbox --all","sfdx sfpowerkit:org:relaxiprange -u sandbox --none"],"flags":{"json":{"name":"json","type":"boolean","description":"format output as json","allowNo":false},"loglevel":{"name":"loglevel","type":"option","description":"logging level for this command invocation","required":false,"helpValue":"(trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL)","options":["trace","debug","info","warn","error","fatal","TRACE","DEBUG","INFO","WARN","ERROR","FATAL"],"default":"info"},"targetusername":{"name":"targetusername","type":"option","char":"u","description":"username or alias for the target org; overrides default target org"},"apiversion":{"name":"apiversion","type":"option","description":"override the api version used for api requests made by this command"},"range":{"name":"range","type":"option","char":"r","description":"List of ip range with comma separated. eg, 122.0.0.0-122.255.255.255,49.0.0.0-49.255.255.255","required":false},"all":{"name":"all","type":"boolean","description":"Relax full iprange 0.0.0.0-255.255.255.255 in the target org","required":false,"allowNo":false},"none":{"name":"none","type":"boolean","description":"Remove any existing iprange relaxations in the target org","required":false,"allowNo":false}},"args":[]},"sfpowerkit:package:applypatch":{"id":"sfpowerkit:package:applypatch","description":"Retrieves and applies the patch, Useful after a package upgrade in a CD Environment","usage":"<%= command.id %> -n [-u ] [--apiversion ] [--json] [--loglevel trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL]","pluginName":"sfpowerkit","pluginType":"core","aliases":[],"examples":["$ sfdx sfpowerkit:package:applypatch -n customer_picklist -u sandbox"],"flags":{"json":{"name":"json","type":"boolean","description":"format output as json","allowNo":false},"loglevel":{"name":"loglevel","type":"option","description":"logging level for this command invocation","required":false,"helpValue":"(trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL)","options":["trace","debug","info","warn","error","fatal","TRACE","DEBUG","INFO","WARN","ERROR","FATAL"],"default":"info"},"targetusername":{"name":"targetusername","type":"option","char":"u","description":"username or alias for the target org; overrides default target org"},"apiversion":{"name":"apiversion","type":"option","description":"override the api version used for api requests made by this command"},"name":{"name":"name","type":"option","char":"n","description":"Name of the static resource to be patched","required":true}},"args":[]},"sfpowerkit:package:valid":{"id":"sfpowerkit:package:valid","description":"Validates a package to check whether it only contains valid metadata as per metadata coverage","usage":"<%= command.id %> [-n ] [-b ] [--apiversion ] [--json] [--loglevel trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL]","pluginName":"sfpowerkit","pluginType":"core","aliases":[],"examples":["$ sfdx sfpowerkit:package:valid -n testPackage\n Now analyzing testPackage\nConverting package testPackage\nElements supported included in your package testPackage\n[\n \"AuraDefinitionBundle\",\n \"CustomApplication\",\n \"ApexClass\",\n \"ContentAsset\",\n \"WorkflowRule\"\n]\n "],"flags":{"json":{"name":"json","type":"boolean","description":"format output as json","allowNo":false},"loglevel":{"name":"loglevel","type":"option","description":"loglevel to execute the command","required":false,"helpValue":"(trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL)","options":["trace","debug","info","warn","error","fatal","TRACE","DEBUG","INFO","WARN","ERROR","FATAL"],"default":"info"},"package":{"name":"package","type":"option","char":"n","description":"the package to analyze","required":false},"bypass":{"name":"bypass","type":"option","char":"b","description":"metadatatypes to skip the package validation check","required":false},"apiversion":{"name":"apiversion","type":"option","description":"metadata API version to use for validation"}},"args":[]},"sfpowerkit:pool:create":{"id":"sfpowerkit:pool:create","description":"Creates a pool of prebuilt scratchorgs, which can the be consumed by users or CI","usage":"<%= command.id %> -f [-b ] [-v ] [--apiversion ] [--json] [--loglevel trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL]","pluginName":"sfpowerkit","pluginType":"core","aliases":[],"examples":["$ sfdx sfpowerkit:pool:create -f config\\core_poolconfig.json","$ sfdx sfpowerkit:pool:create -f config\\core_poolconfig.json -v devhub"],"flags":{"json":{"name":"json","type":"boolean","description":"format output as json","allowNo":false},"loglevel":{"name":"loglevel","type":"option","description":"logging level for this command invocation","required":false,"helpValue":"(trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL)","options":["trace","debug","info","warn","error","fatal","TRACE","DEBUG","INFO","WARN","ERROR","FATAL"],"default":"info"},"targetdevhubusername":{"name":"targetdevhubusername","type":"option","char":"v","description":"username or alias for the dev hub org; overrides default dev hub org"},"apiversion":{"name":"apiversion","type":"option","description":"override the api version used for api requests made by this command"},"configfilepath":{"name":"configfilepath","type":"option","char":"f","description":"Relative Path to the pool configuration json file. The schema of the file could be found in the Wiki","required":true},"batchsize":{"name":"batchsize","type":"option","char":"b","description":"Number of scratch org to be created in a single batch","required":false,"default":10}},"args":[]},"sfpowerkit:pool:delete":{"id":"sfpowerkit:pool:delete","description":"Deletes the pooled scratch orgs from the Scratch Org Pool","usage":"<%= command.id %> -t [-m] [-i | -a] [-v ] [--apiversion ] [--json] [--loglevel trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL]","pluginName":"sfpowerkit","pluginType":"core","aliases":[],"examples":["$ sfdx sfpowerkit:pool:delete -t core ","$ sfdx sfpowerkit:pool:delete -t core -v devhub","$ sfdx sfpowerkit:pool:delete -t core -v devhub -m","$ sfdx sfpowerkit:pool:delete -t core -v devhub -m -a"],"flags":{"json":{"name":"json","type":"boolean","description":"format output as json","allowNo":false},"loglevel":{"name":"loglevel","type":"option","description":"logging level for this command invocation","required":false,"helpValue":"(trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL)","options":["trace","debug","info","warn","error","fatal","TRACE","DEBUG","INFO","WARN","ERROR","FATAL"],"default":"info"},"targetdevhubusername":{"name":"targetdevhubusername","type":"option","char":"v","description":"username or alias for the dev hub org; overrides default dev hub org"},"apiversion":{"name":"apiversion","type":"option","description":"override the api version used for api requests made by this command"},"tag":{"name":"tag","type":"option","char":"t","description":"tag used to identify the scratch org pool","required":true},"mypool":{"name":"mypool","type":"boolean","char":"m","description":"Filter only Scratch orgs created by current user in the pool","required":false,"allowNo":false},"allscratchorgs":{"name":"allscratchorgs","type":"boolean","char":"a","description":"Deletes all used and unused Scratch orgs from pool by the tag","required":false,"allowNo":false},"inprogressonly":{"name":"inprogressonly","type":"boolean","char":"i","description":"Deletes all In Progress Scratch orgs from pool by the tag","required":false,"allowNo":false}},"args":[]},"sfpowerkit:pool:fetch":{"id":"sfpowerkit:pool:fetch","description":"Gets an active/unused scratch org from the scratch org pool","usage":"<%= command.id %> -t [-m] [-a ] [-s ] [-d] [-v ] [--apiversion ] [--json] [--loglevel trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL]","pluginName":"sfpowerkit","pluginType":"core","aliases":[],"examples":["$ sfdx sfpowerkit:pool:fetch -t core ","$ sfdx sfpowerkit:pool:fetch -t core -v devhub","$ sfdx sfpowerkit:pool:fetch -t core -v devhub -m","$ sfdx sfpowerkit:pool:fetch -t core -v devhub -s testuser@test.com"],"flags":{"json":{"name":"json","type":"boolean","description":"format output as json","allowNo":false},"loglevel":{"name":"loglevel","type":"option","description":"logging level for this command invocation","required":false,"helpValue":"(trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL)","options":["trace","debug","info","warn","error","fatal","TRACE","DEBUG","INFO","WARN","ERROR","FATAL"],"default":"info"},"targetdevhubusername":{"name":"targetdevhubusername","type":"option","char":"v","description":"username or alias for the dev hub org; overrides default dev hub org"},"apiversion":{"name":"apiversion","type":"option","description":"override the api version used for api requests made by this command"},"tag":{"name":"tag","type":"option","char":"t","description":"(required) tag used to identify the scratch org pool","required":true},"mypool":{"name":"mypool","type":"boolean","char":"m","description":"Filter the tag for any additions created by the executor of the command","required":false,"allowNo":false},"alias":{"name":"alias","type":"option","char":"a","description":"Fetch and set an alias for the org","required":false},"sendtouser":{"name":"sendtouser","type":"option","char":"s","description":"Send the credentials of the fetched scratchorg to another DevHub user, Useful for situations when pool is only limited to certain users","required":false},"setdefaultusername":{"name":"setdefaultusername","type":"boolean","char":"d","description":"set the authenticated org as the default username that all commands run against","required":false,"allowNo":false}},"args":[]},"sfpowerkit:pool:list":{"id":"sfpowerkit:pool:list","description":"Retrieves a list of active scratch org and details from any pool. If this command is run with -m|--mypool, the command will retrieve the passwords for the pool created by the user who is executing the command.","usage":"<%= command.id %> [-t ] [-m] [-a] [-v ] [--apiversion ] [--json] [--loglevel trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL]","pluginName":"sfpowerkit","pluginType":"core","aliases":[],"examples":["$ sfdx sfpowerkit:pool:list -t core ","$ sfdx sfpowerkit:pool:list -t core -v devhub","$ sfdx sfpowerkit:pool:list -t core -v devhub -m","$ sfdx sfpowerkit:pool:list -t core -v devhub -m -a"],"flags":{"json":{"name":"json","type":"boolean","description":"format output as json","allowNo":false},"loglevel":{"name":"loglevel","type":"option","description":"logging level for this command invocation","required":false,"helpValue":"(trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL)","options":["trace","debug","info","warn","error","fatal","TRACE","DEBUG","INFO","WARN","ERROR","FATAL"],"default":"info"},"targetdevhubusername":{"name":"targetdevhubusername","type":"option","char":"v","description":"username or alias for the dev hub org; overrides default dev hub org"},"apiversion":{"name":"apiversion","type":"option","description":"override the api version used for api requests made by this command"},"tag":{"name":"tag","type":"option","char":"t","description":"tag used to identify the scratch org pool","required":false},"mypool":{"name":"mypool","type":"boolean","char":"m","description":"Filter the tag for any additions created by the executor of the command","required":false,"allowNo":false},"allscratchorgs":{"name":"allscratchorgs","type":"boolean","char":"a","description":"Gets all used and unused Scratch orgs from pool","required":false,"allowNo":false}},"args":[]},"sfpowerkit:project:diff":{"id":"sfpowerkit:project:diff","description":"Generate a delta 'changeset' between two diff commits so that the incremental changes can be deployed to the target org.To be used for an org based deployment and the size of the metadata is large that the project cannot not be deployed in a single attempt./nThis command works with a source format based repository only. Utilize the command during a transition phase where an org is transformed to a modular architecture composing of multiple projects.","usage":"<%= command.id %> -r -d [-t ] [-x] [-b ] [-p ] [--apiversion ] [--json] [--loglevel trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL]","pluginName":"sfpowerkit","pluginType":"core","aliases":[],"examples":["$ sfdx sfpowerkit:project:diff --diffFile DiffFileName --encoding EncodingOfFile --output OutputFolder","$ sfdx sfpowerkit:project:diff --revisionfrom revisionfrom --revisionto revisionto --output OutputFolder\n "],"flags":{"json":{"name":"json","type":"boolean","description":"format output as json","allowNo":false},"loglevel":{"name":"loglevel","type":"option","description":"logging level for this command invocation","required":false,"helpValue":"(trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL)","options":["trace","debug","info","warn","error","fatal","TRACE","DEBUG","INFO","WARN","ERROR","FATAL"],"default":"info"},"revisionfrom":{"name":"revisionfrom","type":"option","char":"r","description":"Base revision from where diff is to be generated, required if diff file is ommited","required":true},"revisionto":{"name":"revisionto","type":"option","char":"t","description":" [default:HEAD] Target revision to generate the diff ","required":false},"output":{"name":"output","type":"option","char":"d","description":" The output dir where the incremental project will be created","required":true},"generatedestructive":{"name":"generatedestructive","type":"boolean","char":"x","description":"If set to true, the command will also generate a destructiveChangePost.xml file in the output folder.","required":false,"allowNo":false},"bypass":{"name":"bypass","type":"option","char":"b","description":"[EXPERIMENTAL] Ignore comma seperated paths from the diff being generated, the diff command doesnt generate a diff on the following paths","required":false},"packagedirectories":{"name":"packagedirectories","type":"option","char":"p","description":"[EXPERIMENTAL] Run diff only on specific paths, also generate a sfdx-project.json to support the corresponding package directory","required":false},"apiversion":{"name":"apiversion","type":"option","description":"override the api version used for api requests made by this command"}},"args":[]},"sfpowerkit:project:orgdiff":{"id":"sfpowerkit:project:orgdiff","description":"Compare source file again the salesforce and display differences. Can optionally add diff conflict markers on file to let the developer accept or rejest changes manually using a git merge tool.","usage":"<%= command.id %> -f [-c] [-o json|csv] [-u ] [--apiversion ] [--json] [--loglevel trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL]","pluginName":"sfpowerkit","pluginType":"core","aliases":[],"examples":["$ sfdx sfpowerkit:project:orgdiff --filesorfolders directory --noconflictmarkers --targetusername sandbox","$ sfdx sfpowerkit:project:orgdiff -f fileName --targetusername sandbox"],"flags":{"json":{"name":"json","type":"boolean","description":"format output as json","allowNo":false},"loglevel":{"name":"loglevel","type":"option","description":"logging level for this command invocation","required":false,"helpValue":"(trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL)","options":["trace","debug","info","warn","error","fatal","TRACE","DEBUG","INFO","WARN","ERROR","FATAL"],"default":"info"},"targetusername":{"name":"targetusername","type":"option","char":"u","description":"username or alias for the target org; overrides default target org"},"apiversion":{"name":"apiversion","type":"option","description":"override the api version used for api requests made by this command"},"filesorfolders":{"name":"filesorfolders","type":"option","char":"f","description":"List of fils or folder to compare. Should be only Apex classes, trigger, Aura Components, Lightning Web Components or any unsplitted metadata.","required":true},"noconflictmarkers":{"name":"noconflictmarkers","type":"boolean","char":"c","description":"If set to true, the command will not add diff conflict marker to each compared file.","required":false,"allowNo":false},"outputformat":{"name":"outputformat","type":"option","char":"o","description":" [default: json]The format for the diff output, Possible values are json/csv.","required":false,"helpValue":"(json|csv)","options":["json","csv"]}},"args":[]},"sfpowerkit:source:pmd":{"id":"sfpowerkit:source:pmd","description":"This command is a wrapper around PMD ( downloads PMD for the first time) with some predefined defaults, such as ruleset, output format, output file.","usage":"<%= command.id %> [-d | --filelist ] [-r | -R ] [-f ] [--report | -o ] [--javahome ] [--failonviolation] [--minimumpriority ] [--shortnames] [--showsuppressed] [--suppressmarker ] [--version ] [--json] [--loglevel trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL]","pluginName":"sfpowerkit","pluginType":"core","aliases":[],"examples":["$ sfdx sfpowerkit:source:pmd"],"flags":{"json":{"name":"json","type":"boolean","description":"format output as json","allowNo":false},"loglevel":{"name":"loglevel","type":"option","description":"logging level for this command invocation","required":false,"helpValue":"(trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL)","options":["trace","debug","info","warn","error","fatal","TRACE","DEBUG","INFO","WARN","ERROR","FATAL"],"default":"warn"},"directory":{"name":"directory","type":"option","char":"d","description":"[default: Default project directory as mentioned in sfdx-project.json] Override this to set a different directory in the project folder","required":false},"ruleset":{"name":"ruleset","type":"option","char":"r","description":"DEPRECATED: use --rulesets instead","required":false},"rulesets":{"name":"rulesets","type":"option","char":"R","description":"[default: [sfpowerkit](https://github.com/Accenture/sfpowerkit/blob/main/resources/pmd-ruleset.xml)] The comma separated pmd ruleset that will be utilzied for analyzing the apex classes, Checkout https://pmd.github.io/latest/pmd_userdocs_making_rulesets.html to create your own ruleset","required":false},"format":{"name":"format","type":"option","char":"f","description":"[default: text] The format for the pmd output, Possible values are available at https://pmd.github.io/latest/pmd_userdocs_cli_reference.html#available-report-formats","required":false,"default":"text"},"filelist":{"name":"filelist","type":"option","description":"Path to file containing a comma delimited list of files to analyze.","required":false},"report":{"name":"report","type":"option","description":"DEPRECATED: [default: pmd-output] use --reportfile instead.","required":false},"reportfile":{"name":"reportfile","type":"option","char":"o","description":"[default: pmd-output] The path to where the output of the analysis should be written","required":false},"javahome":{"name":"javahome","type":"option","description":"The command will try to locate the javahome path to execute PMD automatically, set this flag to override it to another javahome path","required":false},"failonviolation":{"name":"failonviolation","type":"boolean","description":"[default: true] By default PMD exits with status 4 if violations are found. Disable this feature with -failOnViolation false to exit with 0 instead and just output the report.","required":false,"allowNo":true},"minimumpriority":{"name":"minimumpriority","type":"option","description":"Rule priority threshold; rules with lower priority than configured here won't be used.","required":false},"shortnames":{"name":"shortnames","type":"boolean","description":"Prints shortened filenames in the report.","required":false,"allowNo":true},"showsuppressed":{"name":"showsuppressed","type":"boolean","description":"Causes the suppressed rule violations to be added to the report.","required":false,"allowNo":true},"suppressmarker":{"name":"suppressmarker","type":"option","description":"[default: NOPMD] Specifies the comment token that marks lines which PMD should ignore.","required":false},"version":{"name":"version","type":"option","description":"[default: 6.34.0] The version of the pmd to be utilized for the analysis, this version will be downloaded to sfpowerkit's cache directory","required":false,"default":"6.34.0"}},"args":[]},"sfpowerkit:dependency:tree:package":{"id":"sfpowerkit:dependency:tree:package","description":"This command is used to compute the dependency tree details of an unlocked package","usage":"<%= command.id %> -n -o [-p] [-s] [-f json|csv] [-u ] [--apiversion ] [--json] [--loglevel trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL]","pluginName":"sfpowerkit","pluginType":"core","aliases":[],"examples":["$ sfdx sfpowerkit:dependency:tree:package -u MyScratchOrg -n 04txxxxxxxxxx -o outputdir -f json","$ sfdx sfpowerkit:dependency:tree:package -u MyScratchOrg -n 04txxxxxxxxxx -o outputdir -f csv","$ sfdx sfpowerkit:dependency:tree:package -u MyScratchOrg -n 04txxxxxxxxxx -o outputdir -f csv -p","$ sfdx sfpowerkit:dependency:tree:package -u MyScratchOrg -n 04txxxxxxxxxx -o outputdir -f csv -s"],"flags":{"json":{"name":"json","type":"boolean","description":"format output as json","allowNo":false},"loglevel":{"name":"loglevel","type":"option","description":"[default: info] logging level for this command invocation","required":false,"helpValue":"(trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL)","options":["trace","debug","info","warn","error","fatal","TRACE","DEBUG","INFO","WARN","ERROR","FATAL"],"default":"info"},"targetusername":{"name":"targetusername","type":"option","char":"u","description":"username or alias for the target org; overrides default target org"},"apiversion":{"name":"apiversion","type":"option","description":"override the api version used for api requests made by this command"},"package":{"name":"package","type":"option","char":"n","description":"package name, package version id, subscriber id that is installed in the org","required":true},"packagefilter":{"name":"packagefilter","type":"boolean","char":"p","description":"output result will filter only dependent packages","required":false,"allowNo":false},"showall":{"name":"showall","type":"boolean","char":"s","description":"Indclude all items with/without dependency in the result","required":false,"allowNo":false},"format":{"name":"format","type":"option","char":"f","description":"format of the output file to create","required":false,"helpValue":"(json|csv)","options":["json","csv"],"default":"json"},"output":{"name":"output","type":"option","char":"o","description":"path to create the output","required":true}},"args":[]},"sfpowerkit:org:connectedapp:create":{"id":"sfpowerkit:org:connectedapp:create","description":" Creates a connected app in the target org for JWT based authentication, Please note it only creates Connected App with All users may self authorize option, You would need to manually edit the policies to enable admin users are pre-approved and add your profile to this connected app","usage":"<%= command.id %> -n -c -e [-u ] [--apiversion ] [--json] [--loglevel trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL]","pluginName":"sfpowerkit","pluginType":"core","aliases":[],"examples":["$ sfdx sfpowerkit:org:connectedapp:create -u myOrg@example.com -n AzurePipelines -c id_rsa -e azlam.salamm@invalid.com\n Created Connected App AzurePipelines in Target Org\n "],"flags":{"json":{"name":"json","type":"boolean","description":"format output as json","allowNo":false},"loglevel":{"name":"loglevel","type":"option","description":"logging level for this command invocation","required":false,"helpValue":"(trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL)","options":["trace","debug","info","warn","error","fatal","TRACE","DEBUG","INFO","WARN","ERROR","FATAL"],"default":"info"},"targetusername":{"name":"targetusername","type":"option","char":"u","description":"username or alias for the target org; overrides default target org"},"apiversion":{"name":"apiversion","type":"option","description":"override the api version used for api requests made by this command"},"name":{"name":"name","type":"option","char":"n","description":"Name of the connected app to be created","required":true},"pathtocertificate":{"name":"pathtocertificate","type":"option","char":"c","description":"Filepath to the private certificate for the connected app to be created","required":true},"email":{"name":"email","type":"option","char":"e","description":"Email of the connected app to be created","required":true}},"args":[]},"sfpowerkit:org:connectedapp:retrieve":{"id":"sfpowerkit:org:connectedapp:retrieve","description":"Retrieves the consumer key for a connected app, Useful after a sandbox refresh in a CD Environment","usage":"<%= command.id %> -n [-u ] [--apiversion ] [--json] [--loglevel trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL]","pluginName":"sfpowerkit","pluginType":"core","aliases":[],"examples":["$ sfdx sfpowerkit:org:connectedapp:retrieve -n AzurePipelines -u azlam@sfdc.com \n Retrived AzurePipelines Consumer Key : XSD21Sd23123w21321\n "],"flags":{"json":{"name":"json","type":"boolean","description":"format output as json","allowNo":false},"loglevel":{"name":"loglevel","type":"option","description":"logging level for this command invocation","required":false,"helpValue":"(trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL)","options":["trace","debug","info","warn","error","fatal","TRACE","DEBUG","INFO","WARN","ERROR","FATAL"],"default":"warn"},"targetusername":{"name":"targetusername","type":"option","char":"u","description":"username or alias for the target org; overrides default target org"},"apiversion":{"name":"apiversion","type":"option","description":"override the api version used for api requests made by this command"},"name":{"name":"name","type":"option","char":"n","description":"Name of the connected app to be retreived","required":true}},"args":[]},"sfpowerkit:org:duplicaterule:activate":{"id":"sfpowerkit:org:duplicaterule:activate","description":"Activates a duplicate rule in the target org","usage":"<%= command.id %> -n [-u ] [--apiversion ] [--json] [--loglevel trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL]","pluginName":"sfpowerkit","pluginType":"core","aliases":[],"examples":["$ sfdx sfpowerkit:org:duplicaterule:Activate -n Account.CRM_Account_Rule_1 -u sandbox\n Polling for Retrieval Status\n Retrieved Duplicate Rule with label : CRM Account Rule 2\n Preparing Activation\n Deploying Activated Rule with ID 0Af4Y000003OdTWSA0\n Polling for Deployment Status\n Polling for Deployment Status\n Duplicate Rule CRM Account Rule 2 Activated\n "],"flags":{"json":{"name":"json","type":"boolean","description":"format output as json","allowNo":false},"loglevel":{"name":"loglevel","type":"option","description":"logging level for this command invocation","required":false,"helpValue":"(trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL)","options":["trace","debug","info","warn","error","fatal","TRACE","DEBUG","INFO","WARN","ERROR","FATAL"],"default":"info"},"targetusername":{"name":"targetusername","type":"option","char":"u","description":"username or alias for the target org; overrides default target org"},"apiversion":{"name":"apiversion","type":"option","description":"override the api version used for api requests made by this command"},"name":{"name":"name","type":"option","char":"n","description":"Name of the duplicate rule","required":true}},"args":[]},"sfpowerkit:org:duplicaterule:deactivate":{"id":"sfpowerkit:org:duplicaterule:deactivate","description":"Deactivates a duplicate rule in the target org","usage":"<%= command.id %> -n [-u ] [--apiversion ] [--json] [--loglevel trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL]","pluginName":"sfpowerkit","pluginType":"core","aliases":[],"examples":["$ sfdx sfpowerkit:org:duplicaterule:deactivate -n Account.CRM_Account_Rule_1 -u sandbox\n Polling for Retrieval Status\n Retrieved Duplicate Rule with label : CRM Account Rule 2\n Preparing Deactivation\n Deploying Deactivated Rule with ID 0Af4Y000003OdTWSA0\n Polling for Deployment Status\n Polling for Deployment Status\n Duplicate Rule CRM Account Rule 2 deactivated\n "],"flags":{"json":{"name":"json","type":"boolean","description":"format output as json","allowNo":false},"loglevel":{"name":"loglevel","type":"option","description":"logging level for this command invocation","required":false,"helpValue":"(trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL)","options":["trace","debug","info","warn","error","fatal","TRACE","DEBUG","INFO","WARN","ERROR","FATAL"],"default":"info"},"targetusername":{"name":"targetusername","type":"option","char":"u","description":"username or alias for the target org; overrides default target org"},"apiversion":{"name":"apiversion","type":"option","description":"override the api version used for api requests made by this command"},"name":{"name":"name","type":"option","char":"n","description":"Name of the duplicate rule","required":true}},"args":[]},"sfpowerkit:org:manifest:build":{"id":"sfpowerkit:org:manifest:build","description":"Generate a complete manifest of all the metadata from the specified org. Once the manifest is generated use source:retrieve or mdapi:retrieve to retrieve the metadata.","usage":"<%= command.id %> [-q ] [-e ] [-i ] [-x] [-c] [-o ] [-u ] [--apiversion ] [--json] [--loglevel trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL]","pluginName":"sfpowerkit","pluginType":"core","aliases":[],"examples":["$ sfdx sfpowerkit:org:manifest:build --targetusername myOrg@example.com -o package.xml","$ sfdx sfpowerkit:org:manifest:build --targetusername myOrg@example.com -o package.xml -e 'ApexClass,CustomObject,Report'","$ sfdx sfpowerkit:org:manifest:build --targetusername myOrg@example.com -o package.xml -i 'ApexClass:sampleclass,CustomObject:Account'"],"flags":{"json":{"name":"json","type":"boolean","description":"format output as json","allowNo":false},"loglevel":{"name":"loglevel","type":"option","description":"logging level for this command invocation","required":false,"helpValue":"(trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL)","options":["trace","debug","info","warn","error","fatal","TRACE","DEBUG","INFO","WARN","ERROR","FATAL"],"default":"warn"},"targetusername":{"name":"targetusername","type":"option","char":"u","description":"username or alias for the target org; overrides default target org"},"apiversion":{"name":"apiversion","type":"option","description":"override the api version used for api requests made by this command"},"quickfilter":{"name":"quickfilter","type":"option","char":"q","description":"[deprecated] comma separated values of metadata type, member or file names to be excluded while building the manifest"},"excludefilter":{"name":"excludefilter","type":"option","char":"e","description":"comma separated values of metadata type, member or file names to be excluded while building the manifest"},"includefilter":{"name":"includefilter","type":"option","char":"i","description":"comma separated values of metadata type, member or file names to be included while building the manifest"},"excludemanaged":{"name":"excludemanaged","type":"boolean","char":"x","description":"exclude managed packages components from the manifest","allowNo":false},"includechilds":{"name":"includechilds","type":"boolean","char":"c","description":"Set to true to include child Metadata in the generated package.xml.","allowNo":false},"outputfile":{"name":"outputfile","type":"option","char":"o","description":"The output path where the manifest file will be created"}},"args":[{"name":"file"}]},"sfpowerkit:org:matchingrule:activate":{"id":"sfpowerkit:org:matchingrule:activate","description":"Activates a matching rule in the target org","usage":"<%= command.id %> -n [-u ] [--apiversion ] [--json] [--loglevel trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL]","pluginName":"sfpowerkit","pluginType":"core","aliases":[],"examples":["$ sfdx sfpowerkit:org:matchingrules:activate -n Account -u sandbox\n Polling for Retrieval Status\n Retrieved Matching Rule for Object : Account\n Preparing Activation\n Deploying Activated Rule with ID 0Af4Y000003OdTWSA0\n Polling for Deployment Status\n Polling for Deployment Status\n Matching Rule for Account activated\n "],"flags":{"json":{"name":"json","type":"boolean","description":"format output as json","allowNo":false},"loglevel":{"name":"loglevel","type":"option","description":"logging level for this command invocation","required":false,"helpValue":"(trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL)","options":["trace","debug","info","warn","error","fatal","TRACE","DEBUG","INFO","WARN","ERROR","FATAL"],"default":"info"},"targetusername":{"name":"targetusername","type":"option","char":"u","description":"username or alias for the target org; overrides default target org"},"apiversion":{"name":"apiversion","type":"option","description":"override the api version used for api requests made by this command"},"name":{"name":"name","type":"option","char":"n","description":"Name of the object that has the matching rule","required":true}},"args":[]},"sfpowerkit:org:matchingrule:deactivate":{"id":"sfpowerkit:org:matchingrule:deactivate","description":"Deactivates a matching rule in the target org","usage":"<%= command.id %> -n [-u ] [--apiversion ] [--json] [--loglevel trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL]","pluginName":"sfpowerkit","pluginType":"core","aliases":[],"examples":["$ sfdx sfpowerkit:org:matchingrules:deactivate -n Account -u sandbox\n Polling for Retrieval Status\n Retrieved Matching Rule for Object : Account\n Preparing Deactivation\n Deploying Deactivated Rule with ID 0Af4Y000003OdTWSA0\n Polling for Deployment Status\n Polling for Deployment Status\n Matching Rule for Account deactivated\n "],"flags":{"json":{"name":"json","type":"boolean","description":"format output as json","allowNo":false},"loglevel":{"name":"loglevel","type":"option","description":"logging level for this command invocation","required":false,"helpValue":"(trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL)","options":["trace","debug","info","warn","error","fatal","TRACE","DEBUG","INFO","WARN","ERROR","FATAL"],"default":"info"},"targetusername":{"name":"targetusername","type":"option","char":"u","description":"username or alias for the target org; overrides default target org"},"apiversion":{"name":"apiversion","type":"option","description":"override the api version used for api requests made by this command"},"name":{"name":"name","type":"option","char":"n","description":"Name of the object that has the matching rule","required":true}},"args":[]},"sfpowerkit:org:orgwideemail:create":{"id":"sfpowerkit:org:orgwideemail:create","description":"This command is deprecated, Please update your workflows..Create an orgWide Email Address","usage":"<%= command.id %> -e -n [-p] [-u ] [--apiversion ] [--json] [--loglevel trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL]","pluginName":"sfpowerkit","pluginType":"core","aliases":[],"examples":["sfdx sfpowerkit:org:orgwideemail:create -e testuser@test.com -u scratch1 -n \"Test Address\" -p\n Creating email azlam.abdulsalam@accenture.com\n Org wide email created with Id 0D2210000004DidCAE\n Run the folowing command to verify it\n sfdx sfpowerkit:org:orgwideemail:verify -i 0D2210000004DidCAE -u test-jkomdylblorj@example.com "],"flags":{"json":{"name":"json","type":"boolean","description":"format output as json","allowNo":false},"loglevel":{"name":"loglevel","type":"option","description":"logging level for this command invocation","required":false,"helpValue":"(trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL)","options":["trace","debug","info","warn","error","fatal","TRACE","DEBUG","INFO","WARN","ERROR","FATAL"],"default":"warn"},"targetusername":{"name":"targetusername","type":"option","char":"u","description":"username or alias for the target org; overrides default target org"},"apiversion":{"name":"apiversion","type":"option","description":"override the api version used for api requests made by this command"},"address":{"name":"address","type":"option","char":"e","description":"Org Wide address email","required":true},"displayname":{"name":"displayname","type":"option","char":"n","description":"Org Wide address display name","required":true},"allprofile":{"name":"allprofile","type":"boolean","char":"p","description":"Allow for all profile","required":false,"allowNo":false}},"args":[]},"sfpowerkit:org:orgwideemail:verify":{"id":"sfpowerkit:org:orgwideemail:verify","description":"This command is deprecated, Please update your workflows..Verify an already created orgWide Email Address","usage":"<%= command.id %> -i [-u ] [--apiversion ] [--json] [--loglevel trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL]","pluginName":"sfpowerkit","pluginType":"core","aliases":[],"examples":["$ sfdx sfpowerkit:org:orgwideemail:verify --username scratchOrg --emailid orgwideemailid\n "],"flags":{"json":{"name":"json","type":"boolean","description":"format output as json","allowNo":false},"loglevel":{"name":"loglevel","type":"option","description":"logging level for this command invocation","required":false,"helpValue":"(trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL)","options":["trace","debug","info","warn","error","fatal","TRACE","DEBUG","INFO","WARN","ERROR","FATAL"],"default":"warn"},"targetusername":{"name":"targetusername","type":"option","char":"u","description":"username or alias for the target org; overrides default target org"},"apiversion":{"name":"apiversion","type":"option","description":"override the api version used for api requests made by this command"},"emailid":{"name":"emailid","type":"option","char":"i","description":"Id of the Org Wide address email to verify","required":true}},"args":[]},"sfpowerkit:org:profile:diff":{"id":"sfpowerkit:org:profile:diff","description":"Compare profiles from project against target org or between two orgs (source and target)","usage":"<%= command.id %> [-p ] [-s ] [-d ] [-u ] [--apiversion ] [--json] [--loglevel trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL]","pluginName":"sfpowerkit","pluginType":"core","aliases":[],"examples":["$ sfdx sfpowerkit:org:profile:diff --profilelist profilenames --targetusername username (Compare liste profiles path against target org)","$ sfdx sfpowerkit:org:profile:diff --targetusername username (compare all profile in the project against the target org)","$ sfdx sfpowerkit:org:profile:diff --sourceusername sourcealias --targetusername username (compare all profile in the source org against the target org)"],"flags":{"json":{"name":"json","type":"boolean","description":"format output as json","allowNo":false},"loglevel":{"name":"loglevel","type":"option","description":"logging level for this command invocation","required":false,"helpValue":"(trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL)","options":["trace","debug","info","warn","error","fatal","TRACE","DEBUG","INFO","WARN","ERROR","FATAL"],"default":"info"},"targetusername":{"name":"targetusername","type":"option","char":"u","description":"username or alias for the target org; overrides default target org"},"apiversion":{"name":"apiversion","type":"option","description":"override the api version used for api requests made by this command"},"profilelist":{"name":"profilelist","type":"option","char":"p","description":"List of profiles to compare, comma separated profile names. If not provided and no sourceusername is provided, all profiles from the source folder will be processed.","required":false},"sourceusername":{"name":"sourceusername","type":"option","char":"s","description":"Source org. If no profile is provided in the profilelist parameter, all the profile from this org will be fetched","required":false},"output":{"name":"output","type":"option","char":"d","description":"Output folder. Provide the output folder if comparing profiles from source org.","required":false}},"args":[]},"sfpowerkit:org:sandbox:create":{"id":"sfpowerkit:org:sandbox:create","description":"Creates a sandbox using the tooling api, ensure the user has the required permissions before using this command","usage":"<%= command.id %> -n -d -l [-a ] [-f ] [-v ] [--apiversion ] [--json] [--loglevel trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL]","pluginName":"sfpowerkit","pluginType":"core","aliases":[],"examples":["$ sfdx sfpowerkit:org:sandbox:create -d Testsandbox -f sitSandbox -n test2 -v myOrg@example.com","$ sfdx sfpowerkit:org:sandbox:create -d Testsandbox -l DEVELOPER -n test2 -v myOrg@example.com"],"flags":{"json":{"name":"json","type":"boolean","description":"format output as json","allowNo":false},"loglevel":{"name":"loglevel","type":"option","description":"logging level for this command invocation","required":false,"helpValue":"(trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL)","options":["trace","debug","info","warn","error","fatal","TRACE","DEBUG","INFO","WARN","ERROR","FATAL"],"default":"warn"},"targetdevhubusername":{"name":"targetdevhubusername","type":"option","char":"v","description":"username or alias for the dev hub org; overrides default dev hub org"},"apiversion":{"name":"apiversion","type":"option","description":"override the api version used for api requests made by this command"},"name":{"name":"name","type":"option","char":"n","description":"Name of the sandbox","required":true},"description":{"name":"description","type":"option","char":"d","description":"Description of the sandbox","required":true},"licensetype":{"name":"licensetype","type":"option","char":"l","description":"Type of the sandbox. Valid values are DEVELOPER,DEVELOPER_PRO,PARTIAL,FULL. Provide this if the sandbox is to be created from Production","required":true,"options":["DEVELOPER","DEVELOPER_PRO","PARTIAL","FULL"]},"apexclass":{"name":"apexclass","type":"option","char":"a","description":"A reference to the ID of an Apex class that runs after each copy of the sandbox","required":false,"default":""},"clonefrom":{"name":"clonefrom","type":"option","char":"f","description":"A reference to the ID of a SandboxInfo that serves as the source org for a cloned sandbox.","required":false,"default":""}},"args":[]},"sfpowerkit:org:sandbox:info":{"id":"sfpowerkit:org:sandbox:info","description":"Gets the status of a sandbox","usage":"<%= command.id %> -n [-s] [-v ] [--apiversion ] [--json] [--loglevel trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL]","pluginName":"sfpowerkit","pluginType":"core","aliases":[],"examples":["$ sfdx sfpowerkit:org:sandbox:info -n test2 -v produser@example.com \n Successfully Enqueued Refresh of Sandbox\n "],"flags":{"json":{"name":"json","type":"boolean","description":"format output as json","allowNo":false},"loglevel":{"name":"loglevel","type":"option","description":"logging level for this command invocation","required":false,"helpValue":"(trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL)","options":["trace","debug","info","warn","error","fatal","TRACE","DEBUG","INFO","WARN","ERROR","FATAL"],"default":"warn"},"targetdevhubusername":{"name":"targetdevhubusername","type":"option","char":"v","description":"username or alias for the dev hub org; overrides default dev hub org"},"apiversion":{"name":"apiversion","type":"option","description":"override the api version used for api requests made by this command"},"name":{"name":"name","type":"option","char":"n","description":"Name of the sandbox","required":true},"showonlylatest":{"name":"showonlylatest","type":"boolean","char":"s","description":"Shows only the latest info of the sandbox record","required":false,"allowNo":false}},"args":[]},"sfpowerkit:org:sandbox:refresh":{"id":"sfpowerkit:org:sandbox:refresh","description":"Refresh a sandbox using the tooling api, ensure the user has the required permissions before using this command","usage":"<%= command.id %> -n [-f ] [-l ] [-v ] [--apiversion ] [--json] [--loglevel trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL]","pluginName":"sfpowerkit","pluginType":"core","aliases":[],"examples":["$ sfdx sfpowerkit:org:sandbox:refresh -n test2 -f sitSandbox -v myOrg@example.com","$ sfdx sfpowerkit:org:sandbox:refresh -n test2 -l DEVELOPER -v myOrg@example.com"],"flags":{"json":{"name":"json","type":"boolean","description":"format output as json","allowNo":false},"loglevel":{"name":"loglevel","type":"option","description":"logging level for this command invocation","required":false,"helpValue":"(trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL)","options":["trace","debug","info","warn","error","fatal","TRACE","DEBUG","INFO","WARN","ERROR","FATAL"],"default":"warn"},"targetdevhubusername":{"name":"targetdevhubusername","type":"option","char":"v","description":"username or alias for the dev hub org; overrides default dev hub org"},"apiversion":{"name":"apiversion","type":"option","description":"override the api version used for api requests made by this command"},"name":{"name":"name","type":"option","char":"n","description":"Name of the sandbox","required":true},"clonefrom":{"name":"clonefrom","type":"option","char":"f","description":"Name of the SandboxInfo that serves as the source org for a cloned sandbox.","required":false,"default":""},"licensetype":{"name":"licensetype","type":"option","char":"l","description":"Type of the sandbox. Valid values are DEVELOPER,DEVELOPER_PRO,PARTIAL,FULL, Provide this if the sandbox is to be rereshed from Production","required":false,"options":["DEVELOPER","DEVELOPER_PRO","PARTIAL","FULL"]}},"args":[]},"sfpowerkit:org:scratchorg:delete":{"id":"sfpowerkit:org:scratchorg:delete","description":"Deletes the active count of scratch org by given usermame/email in a devhub","usage":"<%= command.id %> [-e | -u ] [-v ] [--apiversion ] [--json] [--loglevel trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL]","pluginName":"sfpowerkit","pluginType":"core","aliases":[],"examples":["$ sfdx sfpowerkit:org:scratchorg:delete -e xyz@kyz.com -v devhub","$ sfdx sfpowerkit:org:scratchorg:delete -u xyz@kyz.com -v devhub"],"flags":{"json":{"name":"json","type":"boolean","description":"format output as json","allowNo":false},"loglevel":{"name":"loglevel","type":"option","description":"logging level for this command invocation","required":false,"helpValue":"(trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL)","options":["trace","debug","info","warn","error","fatal","TRACE","DEBUG","INFO","WARN","ERROR","FATAL"],"default":"warn"},"targetdevhubusername":{"name":"targetdevhubusername","type":"option","char":"v","description":"username or alias for the dev hub org; overrides default dev hub org"},"apiversion":{"name":"apiversion","type":"option","description":"override the api version used for api requests made by this command"},"email":{"name":"email","type":"option","char":"e","description":"Email of the user account that has created the scratch org","required":false},"username":{"name":"username","type":"option","char":"u","description":"Username of the scratch org to be deleted","required":false}},"args":[]},"sfpowerkit:org:scratchorg:usage":{"id":"sfpowerkit:org:scratchorg:usage","description":"Gets the active count of scratch org by users in a devhub","usage":"<%= command.id %> [-v ] [--apiversion ] [--json] [--loglevel trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL]","pluginName":"sfpowerkit","pluginType":"core","aliases":[],"examples":["$ sfdx sfpowerkit:org:scratchorg:usage -v devhub\n Active Scratch Orgs Remaining: 42 out of 100\n Daily Scratch Orgs Remaining: 171 out of 200\n\n SCRATCH_ORGS_USED NAME\n ───────────────── ─────────────────\n 2 XYZ@KYZ.COM\n 2 JFK@KYZ.COM\n Total number of records retrieved: 4.\n "],"flags":{"json":{"name":"json","type":"boolean","description":"format output as json","allowNo":false},"loglevel":{"name":"loglevel","type":"option","description":"logging level for this command invocation","required":false,"helpValue":"(trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL)","options":["trace","debug","info","warn","error","fatal","TRACE","DEBUG","INFO","WARN","ERROR","FATAL"],"default":"warn"},"targetdevhubusername":{"name":"targetdevhubusername","type":"option","char":"v","description":"username or alias for the dev hub org; overrides default dev hub org"},"apiversion":{"name":"apiversion","type":"option","description":"override the api version used for api requests made by this command"}},"args":[]},"sfpowerkit:org:trigger:activate":{"id":"sfpowerkit:org:trigger:activate","description":"Activates a trigger in the target org","usage":"<%= command.id %> -n [-u ] [--apiversion ] [--json] [--loglevel trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL]","pluginName":"sfpowerkit","pluginType":"core","aliases":[],"examples":["$ sfdx sfpowerkit:org:trigger:activate -n AccountTrigger -u sandbox\n Polling for Retrieval Status\n Preparing Activation\n Deploying Activated ApexTrigger with ID 0Af4Y000003Q7GySAK\n Polling for Deployment Status\n Polling for Deployment Status\n ApexTrigger AccountTrigger Activated\n "],"flags":{"json":{"name":"json","type":"boolean","description":"format output as json","allowNo":false},"loglevel":{"name":"loglevel","type":"option","description":"logging level for this command invocation","required":false,"helpValue":"(trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL)","options":["trace","debug","info","warn","error","fatal","TRACE","DEBUG","INFO","WARN","ERROR","FATAL"],"default":"info"},"targetusername":{"name":"targetusername","type":"option","char":"u","description":"username or alias for the target org; overrides default target org"},"apiversion":{"name":"apiversion","type":"option","description":"override the api version used for api requests made by this command"},"name":{"name":"name","type":"option","char":"n","description":"Name of the trigger that has to be activated","required":true}},"args":[]},"sfpowerkit:org:trigger:deactivate":{"id":"sfpowerkit:org:trigger:deactivate","description":"Deactivates a trigger in the target org","usage":"<%= command.id %> -n [-u ] [--apiversion ] [--json] [--loglevel trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL]","pluginName":"sfpowerkit","pluginType":"core","aliases":[],"examples":["$ sfdx sfpowerkit:org:trigger:deactivate -n AccountTrigger -u sandbox\n Polling for Retrieval Status\n Preparing Deactivation\n Deploying Deactivated ApexTrigger with ID 0Af4Y000003Q7GySAK\n Polling for Deployment Status\n Polling for Deployment Status\n ApexTrigger AccountTrigger deactivated\n "],"flags":{"json":{"name":"json","type":"boolean","description":"format output as json","allowNo":false},"loglevel":{"name":"loglevel","type":"option","description":"logging level for this command invocation","required":false,"helpValue":"(trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL)","options":["trace","debug","info","warn","error","fatal","TRACE","DEBUG","INFO","WARN","ERROR","FATAL"],"default":"info"},"targetusername":{"name":"targetusername","type":"option","char":"u","description":"username or alias for the target org; overrides default target org"},"apiversion":{"name":"apiversion","type":"option","description":"override the api version used for api requests made by this command"},"name":{"name":"name","type":"option","char":"n","description":"Name of the trigger that has to be deactivated","required":true}},"args":[]},"sfpowerkit:package:dependencies:install":{"id":"sfpowerkit:package:dependencies:install","description":"Install dependencies of a package","usage":"<%= command.id %> [-p ] [-k ] [-b ] [-t ] [-w ] [-r] [-o] [-a] [--usedependencyvalidatedpackages] [-f ] [-v ] [-u ] [--apiversion ] [--json] [--loglevel trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL]","pluginName":"sfpowerkit","pluginType":"core","aliases":[],"examples":["$ sfdx sfpowerkit:package:dependencies:install -u MyScratchOrg -v MyDevHub -k \"MyPackage1:Key MyPackage3:Key\" -b \"DEV\""],"flags":{"json":{"name":"json","type":"boolean","description":"format output as json","allowNo":false},"loglevel":{"name":"loglevel","type":"option","description":"logging level for this command invocation","required":false,"helpValue":"(trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL)","options":["trace","debug","info","warn","error","fatal","TRACE","DEBUG","INFO","WARN","ERROR","FATAL"],"default":"info"},"targetdevhubusername":{"name":"targetdevhubusername","type":"option","char":"v","description":"username or alias for the dev hub org; overrides default dev hub org"},"targetusername":{"name":"targetusername","type":"option","char":"u","description":"username or alias for the target org; overrides default target org"},"apiversion":{"name":"apiversion","type":"option","description":"override the api version used for api requests made by this command"},"individualpackage":{"name":"individualpackage","type":"option","char":"p","description":"Installs a specific package especially for upgrade scenario","required":false},"installationkeys":{"name":"installationkeys","type":"option","char":"k","description":"installation key for key-protected packages (format is packagename:key --> core:key nCino:key vlocity:key to allow some packages without installation key)","required":false},"branch":{"name":"branch","type":"option","char":"b","description":"the package version’s branch (format is packagename:branchname --> core:branchname consumer:branchname packageN:branchname)","required":false},"tag":{"name":"tag","type":"option","char":"t","description":"the package version’s tag (format is packagename:tag --> core:tag consumer:tag packageN:tag)","required":false},"wait":{"name":"wait","type":"option","char":"w","description":"number of minutes to wait for installation status (also used for publishwait). Default is 10","required":false},"noprompt":{"name":"noprompt","type":"boolean","char":"r","description":"allow Remote Site Settings and Content Security Policy websites to send or receive data without confirmation","required":false,"allowNo":false},"updateall":{"name":"updateall","type":"boolean","char":"o","description":"update all packages even if they are installed in the target org","required":false,"allowNo":false},"apexcompileonlypackage":{"name":"apexcompileonlypackage","type":"boolean","char":"a","description":"compile the apex only in the package, by default only the compilation of the apex in the entire org is triggered","required":false,"allowNo":false},"usedependencyvalidatedpackages":{"name":"usedependencyvalidatedpackages","type":"boolean","description":"use dependency validated packages that matches the version number schema provide","required":false,"allowNo":false},"filterpaths":{"name":"filterpaths","type":"option","char":"f","description":"in a mono repo project, filter packageDirectories using path and install dependent packages only for the specified path","required":false}},"args":[]},"sfpowerkit:package:dependencies:list":{"id":"sfpowerkit:package:dependencies:list","description":"List the dependencies of each package. The command also resolves the .LATEST to the buildversion number that is available in DevHub, and has an additional option to only list validated dependencies of a given package. This is useful during a CI package build process, to list the exact version numbers the package was built on.","usage":"<%= command.id %> [-p ] [-w] [--usedependencyvalidatedpackages] [-v ] [--apiversion ] [--json] [--loglevel trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL]","pluginName":"sfpowerkit","pluginType":"core","aliases":[],"examples":["$ sfdx sfpowerkit:package:dependencies:list -v MyDevHub -s src/dreamhouse","$ sfdx sfpowerkit:package:dependencies:list -v MyDevHub --updateproject","$ sfdx sfpowerkit:package:dependencies:list -v MyDevHub -s --usedependencyvalidatedpackages"],"flags":{"json":{"name":"json","type":"boolean","description":"format output as json","allowNo":false},"loglevel":{"name":"loglevel","type":"option","description":"logging level for this command invocation","required":false,"helpValue":"(trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL)","options":["trace","debug","info","warn","error","fatal","TRACE","DEBUG","INFO","WARN","ERROR","FATAL"],"default":"warn"},"targetdevhubusername":{"name":"targetdevhubusername","type":"option","char":"v","description":"username or alias for the dev hub org; overrides default dev hub org"},"apiversion":{"name":"apiversion","type":"option","description":"override the api version used for api requests made by this command"},"filterpaths":{"name":"filterpaths","type":"option","char":"p","description":"filter packageDirectories using path to get dependent packages details only for the specified path","required":false},"updateproject":{"name":"updateproject","type":"boolean","char":"w","description":"overwrite the sfdx-project.json with resolved dependencies (replace .LATEST)","required":false,"allowNo":false},"usedependencyvalidatedpackages":{"name":"usedependencyvalidatedpackages","type":"boolean","description":"use dependency validated packages that matches the version number schema provide","required":false,"allowNo":false}},"args":[]},"sfpowerkit:package:version:codecoverage":{"id":"sfpowerkit:package:version:codecoverage","description":"This command is used to get the apex test coverage details of an unlocked package","usage":"<%= command.id %> [-p ] [-n ] [-i ] [-v ] [--apiversion ] [--json] [--loglevel trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL]","pluginName":"sfpowerkit","pluginType":"core","aliases":[],"examples":["$ sfdx sfpowerkit:package:version:codecoverage -v myOrg@example.com -i 04tXXXXXXXXXXXXXXX \n","$ sfdx sfpowerkit:package:version:codecoverage -v myOrg@example.com -i 04tXXXXXXXXXXXXXXX,04tXXXXXXXXXXXXXXX,04tXXXXXXXXXXXXXXX \n","$ sfdx sfpowerkit:package:version:codecoverage -v myOrg@example.com -p core -n 1.2.0.45 \n","$ sfdx sfpowerkit:package:version:codecoverage -v myOrg@example.com -p 0HoXXXXXXXXXXXXXXX -n 1.2.0.45"],"flags":{"json":{"name":"json","type":"boolean","description":"format output as json","allowNo":false},"loglevel":{"name":"loglevel","type":"option","description":"[default: info] logging level for this command invocation","required":false,"helpValue":"(trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL)","options":["trace","debug","info","warn","error","fatal","TRACE","DEBUG","INFO","WARN","ERROR","FATAL"],"default":"info"},"targetdevhubusername":{"name":"targetdevhubusername","type":"option","char":"v","description":"username or alias for the dev hub org; overrides default dev hub org"},"apiversion":{"name":"apiversion","type":"option","description":"API version"},"package":{"name":"package","type":"option","char":"p","description":"Name of the unlocked package to check the code coverage, packageVersionNumber is required when packageName is used","required":false},"versionnumber":{"name":"versionnumber","type":"option","char":"n","description":"The complete version number format is major.minor.patch (Beta build)—for example, 1.2.0 (Beta 5), packageName is required when packageVersionNumber is used","required":false},"versionid":{"name":"versionid","type":"option","char":"i","description":"Package version Id to check the code coverage","required":false}},"args":[]},"sfpowerkit:package:version:info":{"id":"sfpowerkit:package:version:info","description":"This command is list all the installed (managed/unmanaged) packages in an org","usage":"<%= command.id %> [-v ] [-u ] [--apiversion ] [--json] [--loglevel trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL]","pluginName":"sfpowerkit","pluginType":"core","aliases":[],"examples":["$ sfdx sfpowerkit:package:version:info -u myOrg@example.com "],"flags":{"json":{"name":"json","type":"boolean","description":"format output as json","allowNo":false},"loglevel":{"name":"loglevel","type":"option","description":"[default: info] logging level for this command invocation","required":false,"helpValue":"(trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL)","options":["trace","debug","info","warn","error","fatal","TRACE","DEBUG","INFO","WARN","ERROR","FATAL"],"default":"info"},"targetdevhubusername":{"name":"targetdevhubusername","type":"option","char":"v","description":"username or alias for the dev hub org; overrides default dev hub org"},"targetusername":{"name":"targetusername","type":"option","char":"u","description":"username or alias for the target org; overrides default target org"},"apiversion":{"name":"apiversion","type":"option","description":"API version"}},"args":[]},"sfpowerkit:project:datamodel:diff":{"id":"sfpowerkit:project:datamodel:diff","description":"Provides an audit history of the metadata change between two commit ID's for data model ( CustomFields, RecordTypes, BusinessProcess)","usage":"<%= command.id %> -r [-t ] [-p ] [-d ] [--csv] [--json] [--loglevel trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL]","pluginName":"sfpowerkit","pluginType":"core","aliases":[],"examples":["$ sfdx sfpowerkit:project:datamodel:diff --revisionfrom revisionfrom --revisionto revisionto --csv"],"flags":{"json":{"name":"json","type":"boolean","description":"format output as json","allowNo":false},"loglevel":{"name":"loglevel","type":"option","description":"logging level for this command invocation","required":false,"helpValue":"(trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL)","options":["trace","debug","info","warn","error","fatal","TRACE","DEBUG","INFO","WARN","ERROR","FATAL"],"default":"info"},"revisionfrom":{"name":"revisionfrom","type":"option","char":"r","description":"Base revision from which to generate the diff","required":true},"revisionto":{"name":"revisionto","type":"option","char":"t","description":"Target revision from which to generate the diff","required":false,"default":"HEAD"},"packagedirectories":{"name":"packagedirectories","type":"option","char":"p","description":"Run diff only for specified package directories","required":false},"outputdir":{"name":"outputdir","type":"option","char":"d","description":"Directory to output the results","required":false},"csv":{"name":"csv","type":"boolean","description":"Output to csv file","required":false,"allowNo":false}},"args":[]},"sfpowerkit:project:manifest:diff":{"id":"sfpowerkit:project:manifest:diff","description":"run diff between two package.xml and get the difference","usage":"<%= command.id %> -s -t -d [-f json|csv|xml] [--apiversion ] [--json] [--loglevel trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL]","pluginName":"sfpowerkit","pluginType":"core","aliases":[],"examples":["$ sfdx sfpowerkit:project:manifest:diff -s source/package.xml -t target/package.xml -d output"],"flags":{"json":{"name":"json","type":"boolean","description":"format output as json","allowNo":false},"loglevel":{"name":"loglevel","type":"option","description":"[default: info] logging level for this command invocation","required":false,"helpValue":"(trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL)","options":["trace","debug","info","warn","error","fatal","TRACE","DEBUG","INFO","WARN","ERROR","FATAL"],"default":"info"},"sourcepath":{"name":"sourcepath","type":"option","char":"s","description":"Paths to the source package.xml file","required":true},"targetpath":{"name":"targetpath","type":"option","char":"t","description":"Paths to the target package.xml file","required":true},"output":{"name":"output","type":"option","char":"d","description":"path to the diff output package.xml","required":true},"apiversion":{"name":"apiversion","type":"option","description":"The api version to be used create package.xml"},"format":{"name":"format","type":"option","char":"f","description":"[default: json] The format for the output, Possible values are json/csv/xml","required":false,"helpValue":"(json|csv|xml)","options":["json","csv","xml"],"default":"json"}},"args":[]},"sfpowerkit:project:manifest:merge":{"id":"sfpowerkit:project:manifest:merge","description":"Merge multiple package.xml into single collective package.xml","usage":"<%= command.id %> -p -d [--apiversion ] [--json] [--loglevel trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL]","pluginName":"sfpowerkit","pluginType":"core","aliases":[],"examples":["$ sfdx sfpowerkit:project:manifest:merge -p project1/path/to/package.xml -d result/package.xml\n$ sfdx sfpowerkit:project:manifest:merge -p project1/path/to/package.xml,project2/path/to/package.xml -d result/package.xml"],"flags":{"json":{"name":"json","type":"boolean","description":"format output as json","allowNo":false},"loglevel":{"name":"loglevel","type":"option","description":"[default: info] logging level for this command invocation","required":false,"helpValue":"(trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL)","options":["trace","debug","info","warn","error","fatal","TRACE","DEBUG","INFO","WARN","ERROR","FATAL"],"default":"info"},"path":{"name":"path","type":"option","char":"p","description":"Paths to the package.xml file","required":true},"manifest":{"name":"manifest","type":"option","char":"d","description":"output path to create collective package.xml","required":true},"apiversion":{"name":"apiversion","type":"option","description":"The api version to be used create package.xml"}},"args":[]},"sfpowerkit:source:apextest:list":{"id":"sfpowerkit:source:apextest:list","description":"This command helps to get list of all apex text classes located in source path","usage":"<%= command.id %> -p [--resultasstring] [--json] [--loglevel trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL]","pluginName":"sfpowerkit","pluginType":"core","aliases":[],"examples":["$ sfdx sfpowerkit:source:apextest:list -p force-app"],"flags":{"json":{"name":"json","type":"boolean","description":"format output as json","allowNo":false},"loglevel":{"name":"loglevel","type":"option","description":"[default: info] logging level for this command invocation","required":false,"helpValue":"(trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL)","options":["trace","debug","info","warn","error","fatal","TRACE","DEBUG","INFO","WARN","ERROR","FATAL"],"default":"info"},"path":{"name":"path","type":"option","char":"p","description":"Source path to get all the apex test","required":true},"resultasstring":{"name":"resultasstring","type":"boolean","description":"Use this flag to get comma separated list of apex test as a string","required":false,"allowNo":false}},"args":[]},"sfpowerkit:source:apextestsuite:convert":{"id":"sfpowerkit:source:apextestsuite:convert","description":"Converts an apex test suite to its consituent apex classes as a single line separated by commas, so that it can be used for metadata api deployment","usage":"<%= command.id %> -n [--json] [--loglevel trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL]","pluginName":"sfpowerkit","pluginType":"core","aliases":[],"examples":["$ sfdx sfpowerkit:source:apextestsuite:convert -n MyApexTestSuite \n \"ABC2,ABC1Test\" \n "],"flags":{"json":{"name":"json","type":"boolean","description":"format output as json","allowNo":false},"loglevel":{"name":"loglevel","type":"option","description":"logging level for this command invocation","required":false,"helpValue":"(trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL)","options":["trace","debug","info","warn","error","fatal","TRACE","DEBUG","INFO","WARN","ERROR","FATAL"],"default":"info"},"name":{"name":"name","type":"option","char":"n","description":"The name of the apextestsuite (the file name minus the apex test suite)","required":true}},"args":[]},"sfpowerkit:source:customlabel:buildmanifest":{"id":"sfpowerkit:source:customlabel:buildmanifest","description":"This Command is used to build package.xml with all customlabels as members rather than wildcard *. sfdx force:source:convert creates a package.xml with customlabels wildcard, this command helps to update the package.xml with list of label names.","usage":"<%= command.id %> -p -x [--apiversion ] [--json] [--loglevel trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL]","pluginName":"sfpowerkit","pluginType":"core","aliases":[],"examples":["$ sfdx sfpowerkit:source:customlabel:buildmanifest -p project1/path/to/customlabelfile.xml -x mdapiout/package.xml\n$ sfdx sfpowerkit:source:customlabel:buildmanifest -p project1/path/to/customlabelfile.xml,project2/path/to/customlabelfile.xml -x mdapiout/package.xml"],"flags":{"json":{"name":"json","type":"boolean","description":"format output as json","allowNo":false},"loglevel":{"name":"loglevel","type":"option","description":"[default: info] logging level for this command invocation","required":false,"helpValue":"(trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL)","options":["trace","debug","info","warn","error","fatal","TRACE","DEBUG","INFO","WARN","ERROR","FATAL"],"default":"info"},"path":{"name":"path","type":"option","char":"p","description":"Path to the CustomLabels.labels-meta.xml file","required":true},"manifest":{"name":"manifest","type":"option","char":"x","description":"path to existing package.xml file or create new package.xml","required":true},"apiversion":{"name":"apiversion","type":"option","description":"The api version to be used create package.xml"}},"args":[]},"sfpowerkit:source:customlabel:create":{"id":"sfpowerkit:source:customlabel:create","description":"Custom Labels are org wide, hence when the metadata is pulled down from scratch org, the entire custom label metadata file is updated in a package repo. This command is a helper command to create customlabel with pacakage names prepended for easy reconcilation.","usage":"<%= command.id %> -n -v -s [-c ] [-l ] [-p ] [--package ] [-i] [-u ] [--apiversion ] [--json] [--loglevel trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL]","pluginName":"sfpowerkit","pluginType":"core","aliases":[],"examples":["$ sfdx sfpowerkit:source:customlabel:create -u fancyScratchOrg1 -n FlashError -v \"Memory leaks aren't for the faint hearted\" -s \"A flashing error --package core\"\n Deployed CustomLabel FlashError in target org with core_ prefix, You may now pull and utilize the customlabel:reconcile command\n "],"flags":{"json":{"name":"json","type":"boolean","description":"format output as json","allowNo":false},"loglevel":{"name":"loglevel","type":"option","description":"logging level for this command invocation","required":false,"helpValue":"(trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL)","options":["trace","debug","info","warn","error","fatal","TRACE","DEBUG","INFO","WARN","ERROR","FATAL"],"default":"info"},"targetusername":{"name":"targetusername","type":"option","char":"u","description":"username or alias for the target org; overrides default target org"},"apiversion":{"name":"apiversion","type":"option","description":"override the api version used for api requests made by this command"},"fullname":{"name":"fullname","type":"option","char":"n","description":"Name of the custom label (API Name)","required":true},"value":{"name":"value","type":"option","char":"v","description":"Value of the custom label","required":true},"categories":{"name":"categories","type":"option","char":"c","description":"Comma Separated Category Values","required":false},"language":{"name":"language","type":"option","char":"l","description":"Language of the custom label (Default: en_US)","required":false},"protected":{"name":"protected","type":"option","char":"p","description":"Protected State of the custom label (Default: false)","required":false},"shortdescription":{"name":"shortdescription","type":"option","char":"s","description":"Short Description of the custom label","required":true},"package":{"name":"package","type":"option","description":"The name of the package that needs to be appended","required":false},"ignorepackage":{"name":"ignorepackage","type":"boolean","char":"i","description":"Ignores the addition of the package into the fullname (API Name)","allowNo":false}},"args":[]},"sfpowerkit:source:customlabel:reconcile":{"id":"sfpowerkit:source:customlabel:reconcile","description":"Custom Labels are org wide, hence when the metadata is pulled down from scratch org, the entire custom label metadata file is updated in a package repo, This command reconcile the updated custom labels to include only the labels that have the API name starting with package name or created using the custom label create command","usage":"<%= command.id %> -d -p [--json] [--loglevel trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL]","pluginName":"sfpowerkit","pluginType":"core","aliases":[],"examples":["$ sfdx sfpowerkit:source:customlabel:reconcile -d path/to/customlabelfile.xml -p core\n Cleaned The Custom Labels\n"],"flags":{"json":{"name":"json","type":"boolean","description":"format output as json","allowNo":false},"loglevel":{"name":"loglevel","type":"option","description":"logging level for this command invocation","required":false,"helpValue":"(trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL)","options":["trace","debug","info","warn","error","fatal","TRACE","DEBUG","INFO","WARN","ERROR","FATAL"],"default":"warn"},"path":{"name":"path","type":"option","char":"d","description":"Path to the CustomLabels.labels-meta.xml file","required":true},"project":{"name":"project","type":"option","char":"p","description":"The name of the package that needs to be reconciled","required":true}},"args":[]},"sfpowerkit:source:picklist:generatepatch":{"id":"sfpowerkit:source:picklist:generatepatch","description":"Search picklist fields inside project and create a static resource file with picklist fields, used to solve the picklist upgrade issue in dx unlock package https://trailblazer.salesforce.com/issues_view?id=a1p3A0000003Uk2QAE","usage":"<%= command.id %> [-p ] [--json] [--loglevel trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL]","pluginName":"sfpowerkit","pluginType":"core","aliases":[],"examples":["$ sfdx sfpowerkit:source:picklist:generatepatch -p sfpowerkit_test"],"flags":{"json":{"name":"json","type":"boolean","description":"format output as json","allowNo":false},"loglevel":{"name":"loglevel","type":"option","description":"[default: info] logging level for this command invocation","required":false,"helpValue":"(trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL)","options":["trace","debug","info","warn","error","fatal","TRACE","DEBUG","INFO","WARN","ERROR","FATAL"],"default":"info"},"package":{"name":"package","type":"option","char":"p","description":"Name of the package to generate the picklist patch","required":false}},"args":[]},"sfpowerkit:source:profile:merge":{"id":"sfpowerkit:source:profile:merge","description":"This command is used in the lower environments such as ScratchOrgs , Development / System Testing Sandboxes, inorder to apply the changes made in the environment to retrieved profile, so that it can be deployed to the higher environments","usage":"<%= command.id %> [-f ] [-n ] [-m ] [-d] [-u ] [--apiversion ] [--json] [--loglevel trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL]","pluginName":"sfpowerkit","pluginType":"core","aliases":[],"examples":["$ sfdx sfpowerkit:source:profile:merge -u sandbox","$ sfdx sfpowerkit:source:profile:merge -f force-app -n \"My Profile\" -r -u sandbox","$ sfdx sfpowerkit:source:profile:merge -f \"module1, module2, module3\" -n \"My Profile1, My profile2\" -u sandbox"],"flags":{"json":{"name":"json","type":"boolean","description":"format output as json","allowNo":false},"loglevel":{"name":"loglevel","type":"option","description":"logging level for this command invocation","required":false,"helpValue":"(trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL)","options":["trace","debug","info","warn","error","fatal","TRACE","DEBUG","INFO","WARN","ERROR","FATAL"],"default":"info"},"targetusername":{"name":"targetusername","type":"option","char":"u","description":"username or alias for the target org; overrides default target org"},"apiversion":{"name":"apiversion","type":"option","description":"override the api version used for api requests made by this command"},"folder":{"name":"folder","type":"option","char":"f","description":"comma separated list of folders to scan for profiles. If ommited, the folders in the packageDirectories configuration will be used.","required":false},"profilelist":{"name":"profilelist","type":"option","char":"n","description":"comma separated list of profiles. If ommited, all the profiles found in the folder(s) will be merged","required":false},"metadata":{"name":"metadata","type":"option","char":"m","description":"comma separated list of metadata for which the permissions will be retrieved.","required":false},"delete":{"name":"delete","type":"boolean","char":"d","description":"set this flag to delete profile files that does not exist in the org.","required":false,"allowNo":false}},"args":[]},"sfpowerkit:source:profile:reconcile":{"id":"sfpowerkit:source:profile:reconcile","description":"This command is used in the lower environments such as ScratchOrgs , Development / System Testing Sandboxes, where a retrieved profile from production has to be cleaned up only for the metadata that is contained in the environment or base it only as per the metadata that is contained in the packaging directory.","usage":"<%= command.id %> [-f ] [-n ] [-d ] [-s] [-u ] [--json] [--loglevel trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL]","pluginName":"sfpowerkit","pluginType":"core","aliases":[],"examples":["$ sfdx sfpowerkit:source:profile:reconcile --folder force-app -d destfolder -s","$ sfdx sfpowerkit:source:profile:reconcile --folder force-app,module2,module3 -u sandbox -d destfolder","$ sfdx sfpowerkit:source:profile:reconcile -u myscratchorg -d destfolder"],"flags":{"json":{"name":"json","type":"boolean","description":"format output as json","allowNo":false},"loglevel":{"name":"loglevel","type":"option","description":"logging level for this command invocation","required":false,"helpValue":"(trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL)","options":["trace","debug","info","warn","error","fatal","TRACE","DEBUG","INFO","WARN","ERROR","FATAL"],"default":"info"},"folder":{"name":"folder","type":"option","char":"f","description":"path to the folder which contains the profiles to be reconciled,if project contain multiple package directories, please provide a comma seperated list, if omitted, all the package directories will be checked for profiles","required":false},"profilelist":{"name":"profilelist","type":"option","char":"n","description":"list of profiles to be reconciled. If ommited, all the profiles components will be reconciled.","required":false},"destfolder":{"name":"destfolder","type":"option","char":"d","description":" the destination folder for reconciled profiles, if omitted existing profiles will be reconciled and will be rewritten in the current location","required":false},"sourceonly":{"name":"sourceonly","type":"boolean","char":"s","description":"set this flag to reconcile profiles only against component available in the project only. Configure ignored perissions in sfdx-project.json file in the array plugins->sfpowerkit->ignoredPermissions.","required":false,"allowNo":false},"targetorg":{"name":"targetorg","type":"option","char":"u","description":" org against which profiles will be reconciled. this parameter can be ommited if sourceonly flag is set.","required":false}},"args":[]},"sfpowerkit:source:profile:retrieve":{"id":"sfpowerkit:source:profile:retrieve","description":"Retrieve profiles from the salesforce org with all its associated permissions. Common use case for this command is to migrate profile changes from a integration environment to other higher environments [overcomes SFDX CLI Profile retrieve issue where it doesnt fetch the full profile unless the entire metadata is present in source], or retrieving profiles from production to lower environments for testing.","usage":"<%= command.id %> [-f ] [-n ] [-d] [-u ] [--apiversion ] [--json] [--loglevel trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL]","pluginName":"sfpowerkit","pluginType":"core","aliases":[],"examples":["$ sfdx sfpowerkit:source:profile:retrieve -u prod","$ sfdx sfpowerkit:source:profile:retrieve -f force-app -n \"My Profile\" -u prod","$ sfdx sfpowerkit:source:profile:retrieve -f \"module1, module2, module3\" -n \"My Profile1, My profile2\" -u prod"],"flags":{"json":{"name":"json","type":"boolean","description":"format output as json","allowNo":false},"loglevel":{"name":"loglevel","type":"option","description":"logging level for this command invocation","required":false,"helpValue":"(trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL)","options":["trace","debug","info","warn","error","fatal","TRACE","DEBUG","INFO","WARN","ERROR","FATAL"],"default":"info"},"targetusername":{"name":"targetusername","type":"option","char":"u","description":"username or alias for the target org; overrides default target org"},"apiversion":{"name":"apiversion","type":"option","description":"override the api version used for api requests made by this command"},"folder":{"name":"folder","type":"option","char":"f","description":"retrieve only updated versions of profiles found in this directory, If ignored, all profiles will be retrieved.","required":false},"profilelist":{"name":"profilelist","type":"option","char":"n","description":"comma separated list of profiles to be retrieved. Use it for selectively retrieving an existing profile or retrieving a new profile","required":false},"delete":{"name":"delete","type":"boolean","char":"d","description":"set this flag to delete profile files that does not exist in the org, when retrieving in bulk","required":false,"allowNo":false}},"args":[]},"sfpowerkit:user:password:generate":{"id":"sfpowerkit:user:password:generate","description":"Generates password for a given user in a salesforce org.","usage":"<%= command.id %> [-u ] [--apiversion ] [--json] [--loglevel trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL]","pluginName":"sfpowerkit","pluginType":"core","aliases":[],"examples":["$ sfdx sfpowerkit:user:password:generate -u sandbox1"],"flags":{"json":{"name":"json","type":"boolean","description":"format output as json","allowNo":false},"loglevel":{"name":"loglevel","type":"option","description":"logging level for this command invocation","required":false,"helpValue":"(trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL)","options":["trace","debug","info","warn","error","fatal","TRACE","DEBUG","INFO","WARN","ERROR","FATAL"],"default":"info"},"targetusername":{"name":"targetusername","type":"option","char":"u","description":"username or alias for the target org; overrides default target org"},"apiversion":{"name":"apiversion","type":"option","description":"override the api version used for api requests made by this command"}},"args":[]}}} \ No newline at end of file diff --git a/package.json b/package.json index 05b7193d..a92ffa41 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "sfpowerkit", - "version": "2.8.7", + "version": "3.1.6", "author": { "name": "DXatScale", "email": "dxatscale@accenture.com" @@ -28,11 +28,11 @@ "bugs": "https://github.com/accenture/sfpowerkit/issues", "dependencies": { "@salesforce/command": "^3.1.0", - "@salesforce/core": "^2.20.4", - "@salesforce/plugin-user": "1.0.9", + "@salesforce/core": "^2.20.10", + "@salesforce/plugin-user": "1.2.8", "@types/jsforce": "^1.9.23", - "apex-parser": "^2.6.1", - "archiver": "5.2.0", + "apex-parser": "^2.8.0", + "archiver": "5.3.0", "async-retry": "^1.3.1", "axios": "0.21.1", "bottleneck": "^2.19.5", @@ -49,12 +49,12 @@ "ignore": "^5.1.8", "nested-object-diff": "^1.1.0", "node-cache": "^5.1.2", - "pino": "^6.11.0", - "pino-pretty": "^4.3.0", + "pino": "^6.11.3", + "pino-pretty": "^4.7.1", "request": "^2.88.2", "request-promise-native": "^1.0.9", - "salesforce-alm": "50.14.0", - "simple-git": "2.31.0", + "salesforce-alm": "52.0.2", + "simple-git": "2.38.0", "ts-node": "^9.1.1", "tslib": "2.1.0", "unzip-stream": "0.3.1", @@ -63,28 +63,28 @@ "xml2js": "^0.4.23" }, "devDependencies": { - "@oclif/dev-cli": "^1.22.2", - "@oclif/plugin-help": "^3.2.0", - "@oclif/test": "^1.2.7", - "@salesforce/dev-config": "^2.0.0", + "@oclif/dev-cli": "^1.26.0", + "@oclif/plugin-help": "^3.2.2", + "@oclif/test": "^1.2.8", + "@salesforce/dev-config": "^2.1.0", "@types/async-retry": "^1.4.2", - "@types/chai": "^4.2.14", + "@types/chai": "^4.2.16", "@types/diff-match-patch": "^1.0.32", - "@types/fs-extra": "^9.0.4", - "@types/mocha": "^8.0.4", + "@types/fs-extra": "^9.0.11", + "@types/mocha": "^8.2.2", "@types/node": "^14.14.7", - "@types/pino": "^6.3.3", - "@types/request-promise": "^4.1.46", + "@types/pino": "^6.3.7", + "@types/request-promise": "^4.1.47", "@types/rimraf": "^3.0.0", "chai": "^4", - "globby": "^11.0.1", - "husky": "^4.3.0", - "mocha": "^8.2.1", + "globby": "^11.0.3", + "husky": "^6.0.0", + "mocha": "^8.3.2", "nyc": "^15.1.0", "prettier": "^2.1.2", "pretty-quick": "^3.1.0", "rimraf": "^3.0.2", - "sinon": "^9.2.1", + "sinon": "^10.0.0", "typescript": "^4.0.5" }, "engines": { diff --git a/resources/metadata.json b/resources/metadata.json index 61705246..ab8980ab 100644 --- a/resources/metadata.json +++ b/resources/metadata.json @@ -1,5 +1,32 @@ { "types": { + "WorkforceEngagementSettings": { + "details": [ + { + "url": "https://developer.salesforce.com/docs/atlas.en-us.api_meta.meta/api_meta/meta_workforceengagementsettings.htm", + "name": "Metadata API Documentation" + } + ], + "scratchDefinitions": { + "professional": "{\"orgName\":\"Sample Org\",\"edition\":\"professional\",\"features\":[\"SERVICEWORKFORCEMANAGEMENT\"]}", + "group": "{\"orgName\":\"Sample Org\",\"edition\":\"group\",\"features\":[\"SERVICEWORKFORCEMANAGEMENT\"]}", + "enterprise": "{\"orgName\":\"Sample Org\",\"edition\":\"enterprise\",\"features\":[\"SERVICEWORKFORCEMANAGEMENT\"]}", + "developer": "{\"orgName\":\"Sample Org\",\"edition\":\"developer\",\"features\":[\"SERVICEWORKFORCEMANAGEMENT\"]}" + }, + "knownIssues": null, + "channels": { + "unlockedPackagingWithoutNamespace": false, + "unlockedPackagingWithNamespace": false, + "toolingApi": false, + "sourceTracking": true, + "metadataApi": true, + "managedPackaging": false, + "classicUnmanagedPackaging": false, + "classicManagedPackaging": false, + "changeSets": false, + "apexMetadataApi": false + } + }, "WorkflowTask": { "details": [ { @@ -351,8 +378,8 @@ } ], "scratchDefinitions": { - "enterprise": "{\"orgName\":\"Sample Org\",\"edition\":\"enterprise\",\"features\":[\"B2BCOMMERCE\",\"COMMUNITIES\"],\"settings\":{\"communitiesSettings\":{\"enableNetworksEnabled\":true}}}", - "developer": "{\"orgName\":\"Sample Org\",\"edition\":\"developer\",\"features\":[\"B2BCOMMERCE\",\"COMMUNITIES\"],\"settings\":{\"communitiesSettings\":{\"enableNetworksEnabled\":true}}}" + "enterprise": "{\"orgName\":\"Sample Org\",\"edition\":\"enterprise\",\"features\":[\"B2CCOMMERCEGMV\",\"COMMUNITIES\"],\"settings\":{\"communitiesSettings\":{\"enableNetworksEnabled\":true},\"commerceSettings\":{\"commerceEnabled\":true}}}", + "developer": "{\"orgName\":\"Sample Org\",\"edition\":\"developer\",\"features\":[\"COMMUNITIES\"],\"settings\":{\"communitiesSettings\":{\"enableNetworksEnabled\":true},\"commerceSettings\":{\"commerceEnabled\":true}}}" }, "knownIssues": null, "channels": { @@ -484,10 +511,10 @@ } ], "scratchDefinitions": { - "professional": "{\"orgName\":\"Sample Org\",\"edition\":\"professional\",\"features\":[\"ANALYTICSAPPEMBEDDED\"],\"settings\":{\"analyticsSettings\":{\"enableInsights\":true}}}", - "group": "{\"orgName\":\"Sample Org\",\"edition\":\"group\",\"features\":[\"ANALYTICSAPPEMBEDDED\"],\"settings\":{\"analyticsSettings\":{\"enableInsights\":true}}}", - "enterprise": "{\"orgName\":\"Sample Org\",\"edition\":\"enterprise\",\"features\":[\"ANALYTICSAPPEMBEDDED\"],\"settings\":{\"analyticsSettings\":{\"enableInsights\":true}}}", - "developer": "{\"orgName\":\"Sample Org\",\"edition\":\"developer\",\"features\":[\"ANALYTICSAPPEMBEDDED\"],\"settings\":{\"analyticsSettings\":{\"enableInsights\":true}}}" + "professional": "{\"orgName\":\"Sample Org\",\"edition\":\"professional\",\"features\":[\"ANALYTICSAPPEMBEDDED\"]}", + "group": "{\"orgName\":\"Sample Org\",\"edition\":\"group\",\"features\":[\"ANALYTICSAPPEMBEDDED\"]}", + "enterprise": "{\"orgName\":\"Sample Org\",\"edition\":\"enterprise\",\"features\":[\"ANALYTICSAPPEMBEDDED\"]}", + "developer": "{\"orgName\":\"Sample Org\",\"edition\":\"developer\",\"features\":[\"ANALYTICSAPPEMBEDDED\"]}" }, "knownIssues": null, "channels": { @@ -565,10 +592,37 @@ } ], "scratchDefinitions": { - "professional": "{\"orgName\":\"Sample Org\",\"edition\":\"professional\",\"features\":[\"ANALYTICSAPPEMBEDDED\"],\"settings\":{\"analyticsSettings\":{\"enableInsights\":true}}}", - "group": "{\"orgName\":\"Sample Org\",\"edition\":\"group\",\"features\":[\"ANALYTICSAPPEMBEDDED\"],\"settings\":{\"analyticsSettings\":{\"enableInsights\":true}}}", - "enterprise": "{\"orgName\":\"Sample Org\",\"edition\":\"enterprise\",\"features\":[\"ANALYTICSAPPEMBEDDED\"],\"settings\":{\"analyticsSettings\":{\"enableInsights\":true}}}", - "developer": "{\"orgName\":\"Sample Org\",\"edition\":\"developer\",\"features\":[\"ANALYTICSAPPEMBEDDED\"],\"settings\":{\"analyticsSettings\":{\"enableInsights\":true}}}" + "professional": "{\"orgName\":\"Sample Org\",\"edition\":\"professional\",\"features\":[\"ANALYTICSAPPEMBEDDED\"]}", + "group": "{\"orgName\":\"Sample Org\",\"edition\":\"group\",\"features\":[\"ANALYTICSAPPEMBEDDED\"]}", + "enterprise": "{\"orgName\":\"Sample Org\",\"edition\":\"enterprise\",\"features\":[\"ANALYTICSAPPEMBEDDED\"]}", + "developer": "{\"orgName\":\"Sample Org\",\"edition\":\"developer\",\"features\":[\"ANALYTICSAPPEMBEDDED\"]}" + }, + "knownIssues": null, + "channels": { + "unlockedPackagingWithoutNamespace": true, + "unlockedPackagingWithNamespace": true, + "toolingApi": false, + "sourceTracking": true, + "metadataApi": true, + "managedPackaging": true, + "classicUnmanagedPackaging": true, + "classicManagedPackaging": true, + "changeSets": true, + "apexMetadataApi": false + } + }, + "WaveComponent": { + "details": [ + { + "url": "https://developer.salesforce.com/docs/atlas.en-us.api_meta.meta/api_meta/meta_wavecomponent.htm", + "name": "Metadata API Documentation" + } + ], + "scratchDefinitions": { + "professional": "{\"orgName\":\"Sample Org\",\"edition\":\"professional\",\"features\":[\"ANALYTICSAPPEMBEDDED\"]}", + "group": "{\"orgName\":\"Sample Org\",\"edition\":\"group\",\"features\":[\"ANALYTICSAPPEMBEDDED\"]}", + "enterprise": "{\"orgName\":\"Sample Org\",\"edition\":\"enterprise\",\"features\":[\"ANALYTICSAPPEMBEDDED\"]}", + "developer": "{\"orgName\":\"Sample Org\",\"edition\":\"developer\",\"features\":[\"ANALYTICSAPPEMBEDDED\"]}" }, "knownIssues": null, "channels": { @@ -592,10 +646,10 @@ } ], "scratchDefinitions": { - "professional": "{\"orgName\":\"Sample Org\",\"edition\":\"professional\",\"features\":[\"ANALYTICSAPPEMBEDDED\"],\"settings\":{\"analyticsSettings\":{\"enableInsights\":true}}}", - "group": "{\"orgName\":\"Sample Org\",\"edition\":\"group\",\"features\":[\"ANALYTICSAPPEMBEDDED\"],\"settings\":{\"analyticsSettings\":{\"enableInsights\":true}}}", - "enterprise": "{\"orgName\":\"Sample Org\",\"edition\":\"enterprise\",\"features\":[\"ANALYTICSAPPEMBEDDED\"],\"settings\":{\"analyticsSettings\":{\"enableInsights\":true}}}", - "developer": "{\"orgName\":\"Sample Org\",\"edition\":\"developer\",\"features\":[\"ANALYTICSAPPEMBEDDED\"],\"settings\":{\"analyticsSettings\":{\"enableInsights\":true}}}" + "professional": "{\"orgName\":\"Sample Org\",\"edition\":\"professional\",\"features\":[\"ANALYTICSAPPEMBEDDED\"]}", + "group": "{\"orgName\":\"Sample Org\",\"edition\":\"group\",\"features\":[\"ANALYTICSAPPEMBEDDED\"]}", + "enterprise": "{\"orgName\":\"Sample Org\",\"edition\":\"enterprise\",\"features\":[\"ANALYTICSAPPEMBEDDED\"]}", + "developer": "{\"orgName\":\"Sample Org\",\"edition\":\"developer\",\"features\":[\"ANALYTICSAPPEMBEDDED\"]}" }, "knownIssues": null, "channels": { @@ -855,10 +909,10 @@ } ], "scratchDefinitions": { - "professional": "{\"orgName\":\"Sample Org\",\"edition\":\"professional\",\"features\":[\"FINANCIALSERVICESUSER:1\"]}", - "group": "{\"orgName\":\"Sample Org\",\"edition\":\"group\",\"features\":[\"FINANCIALSERVICESUSER:1\"]}", - "enterprise": "{\"orgName\":\"Sample Org\",\"edition\":\"enterprise\",\"features\":[\"FINANCIALSERVICESUSER:1\"]}", - "developer": "{\"orgName\":\"Sample Org\",\"edition\":\"developer\",\"features\":[\"FINANCIALSERVICESUSER:1\"]}" + "professional": "{\"orgName\":\"Sample Org\",\"edition\":\"professional\",\"features\":[\"HEALTHCLOUDUSER\"]}", + "group": "{\"orgName\":\"Sample Org\",\"edition\":\"group\",\"features\":[\"HEALTHCLOUDUSER\"]}", + "enterprise": "{\"orgName\":\"Sample Org\",\"edition\":\"enterprise\",\"features\":[\"HEALTHCLOUDUSER\"]}", + "developer": "{\"orgName\":\"Sample Org\",\"edition\":\"developer\",\"features\":[\"HEALTHCLOUDUSER\"]}" }, "knownIssues": null, "channels": { @@ -1387,7 +1441,7 @@ } ], "channels": { - "unlockedPackagingWithoutNamespace": false, + "unlockedPackagingWithoutNamespace": true, "unlockedPackagingWithNamespace": false, "toolingApi": true, "sourceTracking": true, @@ -1541,19 +1595,14 @@ "name": "Metadata API Documentation" } ], - "scratchDefinitions": { - "professional": "{\"orgName\":\"Sample Org\",\"edition\":\"professional\"}", - "group": "{\"orgName\":\"Sample Org\",\"edition\":\"group\"}", - "enterprise": "{\"orgName\":\"Sample Org\",\"edition\":\"enterprise\"}", - "developer": "{\"orgName\":\"Sample Org\",\"edition\":\"developer\"}" - }, + "scratchDefinitions": null, "knownIssues": null, "channels": { "unlockedPackagingWithoutNamespace": false, "unlockedPackagingWithNamespace": false, "toolingApi": false, - "sourceTracking": true, - "metadataApi": true, + "sourceTracking": false, + "metadataApi": false, "managedPackaging": false, "classicUnmanagedPackaging": false, "classicManagedPackaging": false, @@ -1661,7 +1710,7 @@ "scratchDefinitions": { "professional": "{\"orgName\":\"Sample Org\",\"edition\":\"professional\",\"features\":[\"CUSTOMERCOMMUNITY\"]}", "group": "{\"orgName\":\"Sample Org\",\"edition\":\"group\",\"features\":[\"CUSTOMERCOMMUNITY\"]}", - "enterprise": "{\"orgName\":\"Sample Org\",\"edition\":\"enterprise\",\"features\":[\"CUSTOMERCOMMUNITY\"]}", + "enterprise": "{\"orgName\":\"Sample Org\",\"edition\":\"enterprise\",\"features\":[\"B2CCOMMERCEGMV\"]}", "developer": "{\"orgName\":\"Sample Org\",\"edition\":\"developer\"}" }, "knownIssues": null, @@ -1927,6 +1976,60 @@ "apexMetadataApi": false } }, + "ServiceAISetupField": { + "details": [ + { + "url": "https://developer.salesforce.com/docs/atlas.en-us.api_meta.meta/api_meta/meta_serviceaisetupfield.htm", + "name": "Metadata API Documentation" + } + ], + "scratchDefinitions": { + "professional": "{\"orgName\":\"Sample Org\",\"edition\":\"professional\",\"settings\":{\"botSettings\":{\"enableBots\":true}}}", + "group": "{\"orgName\":\"Sample Org\",\"edition\":\"group\",\"settings\":{\"botSettings\":{\"enableBots\":true}}}", + "enterprise": "{\"orgName\":\"Sample Org\",\"edition\":\"enterprise\",\"settings\":{\"botSettings\":{\"enableBots\":true}}}", + "developer": "{\"orgName\":\"Sample Org\",\"edition\":\"developer\",\"settings\":{\"botSettings\":{\"enableBots\":true}}}" + }, + "knownIssues": null, + "channels": { + "unlockedPackagingWithoutNamespace": true, + "unlockedPackagingWithNamespace": true, + "toolingApi": true, + "sourceTracking": true, + "metadataApi": true, + "managedPackaging": false, + "classicUnmanagedPackaging": false, + "classicManagedPackaging": false, + "changeSets": false, + "apexMetadataApi": false + } + }, + "ServiceAISetupDefinition": { + "details": [ + { + "url": "https://developer.salesforce.com/docs/atlas.en-us.api_meta.meta/api_meta/meta_serviceaisetupdefinition.htm", + "name": "Metadata API Documentation" + } + ], + "scratchDefinitions": { + "professional": "{\"orgName\":\"Sample Org\",\"edition\":\"professional\",\"settings\":{\"botSettings\":{\"enableBots\":true}}}", + "group": "{\"orgName\":\"Sample Org\",\"edition\":\"group\",\"settings\":{\"botSettings\":{\"enableBots\":true}}}", + "enterprise": "{\"orgName\":\"Sample Org\",\"edition\":\"enterprise\",\"settings\":{\"botSettings\":{\"enableBots\":true}}}", + "developer": "{\"orgName\":\"Sample Org\",\"edition\":\"developer\",\"settings\":{\"botSettings\":{\"enableBots\":true}}}" + }, + "knownIssues": null, + "channels": { + "unlockedPackagingWithoutNamespace": true, + "unlockedPackagingWithNamespace": true, + "toolingApi": true, + "sourceTracking": true, + "metadataApi": true, + "managedPackaging": false, + "classicUnmanagedPackaging": false, + "classicManagedPackaging": false, + "changeSets": false, + "apexMetadataApi": false + } + }, "SecuritySettings": { "details": [ { @@ -2030,6 +2133,33 @@ "apexMetadataApi": false } }, + "SchedulingRule": { + "details": [ + { + "url": "https://developer.salesforce.com/docs/atlas.en-us.api_meta.meta/api_meta/meta_schedulingrule.htm", + "name": "Metadata API Documentation" + } + ], + "scratchDefinitions": { + "professional": "{\"orgName\":\"Sample Org\",\"edition\":\"professional\",\"features\":[\"SERVICEWORKFORCEMANAGEMENT\"],\"settings\":{\"workforceEngagementSettings\":{\"enableWorkforceEngagement\":true}}}", + "group": "{\"orgName\":\"Sample Org\",\"edition\":\"group\",\"features\":[\"SERVICEWORKFORCEMANAGEMENT\"],\"settings\":{\"workforceEngagementSettings\":{\"enableWorkforceEngagement\":true}}}", + "enterprise": "{\"orgName\":\"Sample Org\",\"edition\":\"enterprise\",\"features\":[\"SERVICEWORKFORCEMANAGEMENT\"],\"settings\":{\"workforceEngagementSettings\":{\"enableWorkforceEngagement\":true}}}", + "developer": "{\"orgName\":\"Sample Org\",\"edition\":\"developer\",\"features\":[\"SERVICEWORKFORCEMANAGEMENT\"],\"settings\":{\"workforceEngagementSettings\":{\"enableWorkforceEngagement\":true}}}" + }, + "knownIssues": null, + "channels": { + "unlockedPackagingWithoutNamespace": true, + "unlockedPackagingWithNamespace": true, + "toolingApi": true, + "sourceTracking": true, + "metadataApi": true, + "managedPackaging": false, + "classicUnmanagedPackaging": false, + "classicManagedPackaging": false, + "changeSets": false, + "apexMetadataApi": false + } + }, "SamlSsoConfig": { "details": [ { @@ -2092,10 +2222,10 @@ } ], "scratchDefinitions": { - "professional": "{\"orgName\":\"Sample Org\",\"edition\":\"professional\",\"features\":[\"EINSTEINVISITS\"],\"settings\":{\"industriesManufacturingSettings\":{\"enableIndManufacturing\":true}}}", - "group": "{\"orgName\":\"Sample Org\",\"edition\":\"group\",\"features\":[\"EINSTEINVISITS\"],\"settings\":{\"industriesManufacturingSettings\":{\"enableIndManufacturing\":true}}}", - "enterprise": "{\"orgName\":\"Sample Org\",\"edition\":\"enterprise\",\"features\":[\"EINSTEINVISITS\"],\"settings\":{\"industriesManufacturingSettings\":{\"enableIndManufacturing\":true}}}", - "developer": "{\"orgName\":\"Sample Org\",\"edition\":\"developer\",\"features\":[\"EINSTEINVISITS\"],\"settings\":{\"industriesManufacturingSettings\":{\"enableIndManufacturing\":true}}}" + "professional": "{\"orgName\":\"Sample Org\",\"edition\":\"professional\",\"features\":[\"CONSUMERGOODS\"],\"settings\":{\"industriesManufacturingSettings\":{\"enableIndManufacturing\":true}}}", + "group": "{\"orgName\":\"Sample Org\",\"edition\":\"group\",\"features\":[\"CONSUMERGOODS\"],\"settings\":{\"industriesManufacturingSettings\":{\"enableIndManufacturing\":true}}}", + "enterprise": "{\"orgName\":\"Sample Org\",\"edition\":\"enterprise\",\"features\":[\"CONSUMERGOODS\"],\"settings\":{\"industriesManufacturingSettings\":{\"enableIndManufacturing\":true}}}", + "developer": "{\"orgName\":\"Sample Org\",\"edition\":\"developer\",\"features\":[\"CONSUMERGOODS\"],\"settings\":{\"industriesManufacturingSettings\":{\"enableIndManufacturing\":true}}}" }, "knownIssues": null, "channels": { @@ -2317,6 +2447,33 @@ "apexMetadataApi": false } }, + "RelatedRecordAssocCriteria": { + "details": [ + { + "url": "https://developer.salesforce.com/docs/atlas.en-us.api_meta.meta/api_meta/meta_relatedrecordassoccriteria.htm", + "name": "Metadata API Documentation" + } + ], + "scratchDefinitions": { + "professional": "{\"orgName\":\"Sample Org\",\"edition\":\"professional\",\"features\":[\"ASSOCIATIONENGINE\"]}", + "group": "{\"orgName\":\"Sample Org\",\"edition\":\"group\",\"features\":[\"ASSOCIATIONENGINE\"]}", + "enterprise": "{\"orgName\":\"Sample Org\",\"edition\":\"enterprise\",\"features\":[\"ASSOCIATIONENGINE\"]}", + "developer": "{\"orgName\":\"Sample Org\",\"edition\":\"developer\",\"features\":[\"ASSOCIATIONENGINE\"]}" + }, + "knownIssues": null, + "channels": { + "unlockedPackagingWithoutNamespace": true, + "unlockedPackagingWithNamespace": true, + "toolingApi": true, + "sourceTracking": true, + "metadataApi": true, + "managedPackaging": false, + "classicUnmanagedPackaging": true, + "classicManagedPackaging": true, + "changeSets": true, + "apexMetadataApi": false + } + }, "RedirectWhitelistUrl": { "details": [ { @@ -2507,6 +2664,33 @@ "apexMetadataApi": false } }, + "RealTimeEventSettings": { + "details": [ + { + "url": "https://developer.salesforce.com/docs/atlas.en-us.api_meta.meta/api_meta/meta_realtimeeventsettings.htm", + "name": "Metadata API Documentation" + } + ], + "scratchDefinitions": { + "professional": "{\"orgName\":\"Sample Org\",\"edition\":\"professional\",\"features\":[\"API\"]}", + "group": "{\"orgName\":\"Sample Org\",\"edition\":\"group\",\"features\":[\"API\"]}", + "enterprise": "{\"orgName\":\"Sample Org\",\"edition\":\"enterprise\"}", + "developer": "{\"orgName\":\"Sample Org\",\"edition\":\"developer\"}" + }, + "knownIssues": null, + "channels": { + "unlockedPackagingWithoutNamespace": false, + "unlockedPackagingWithNamespace": false, + "toolingApi": false, + "sourceTracking": true, + "metadataApi": true, + "managedPackaging": false, + "classicUnmanagedPackaging": false, + "classicManagedPackaging": false, + "changeSets": false, + "apexMetadataApi": false + } + }, "QuoteSettings": { "details": [ { @@ -2568,10 +2752,10 @@ } ], "scratchDefinitions": { - "professional": "{\"orgName\":\"Sample Org\",\"edition\":\"professional\",\"features\":[\"LWCCUSTOMQUICKACTIONS\"]}", - "group": "{\"orgName\":\"Sample Org\",\"edition\":\"group\",\"features\":[\"LWCCUSTOMQUICKACTIONS\"]}", - "enterprise": "{\"orgName\":\"Sample Org\",\"edition\":\"enterprise\",\"features\":[\"LWCCUSTOMQUICKACTIONS\"]}", - "developer": "{\"orgName\":\"Sample Org\",\"edition\":\"developer\",\"features\":[\"LWCCUSTOMQUICKACTIONS\"]}" + "professional": "{\"orgName\":\"Sample Org\",\"edition\":\"professional\",\"features\":[\"LWCQUICKACTIONSCREATING\"]}", + "group": "{\"orgName\":\"Sample Org\",\"edition\":\"group\",\"features\":[\"LWCQUICKACTIONSCREATING\"]}", + "enterprise": "{\"orgName\":\"Sample Org\",\"edition\":\"enterprise\",\"features\":[\"LWCQUICKACTIONSCREATING\"]}", + "developer": "{\"orgName\":\"Sample Org\",\"edition\":\"developer\",\"features\":[\"LWCQUICKACTIONSCREATING\"]}" }, "knownIssues": [ { @@ -2750,7 +2934,7 @@ ], "scratchDefinitions": { "professional": "{\"orgName\":\"Sample Org\",\"edition\":\"professional\"}", - "group": "{\"orgName\":\"Sample Org\",\"edition\":\"group\"}", + "group": "{\"orgName\":\"Sample Org\",\"edition\":\"group\",\"features\":[\"FLOWSITES\"]}", "enterprise": "{\"orgName\":\"Sample Org\",\"edition\":\"enterprise\"}", "developer": "{\"orgName\":\"Sample Org\",\"edition\":\"developer\"}" }, @@ -3020,6 +3204,33 @@ "apexMetadataApi": false } }, + "PlatformEventSubscriberConfig": { + "details": [ + { + "url": "https://developer.salesforce.com/docs/atlas.en-us.api_meta.meta/api_meta/meta_platformeventsubscriberconfig.htm", + "name": "Metadata API Documentation" + } + ], + "scratchDefinitions": { + "professional": "{\"orgName\":\"Sample Org\",\"edition\":\"professional\",\"features\":[\"API\"]}", + "group": "{\"orgName\":\"Sample Org\",\"edition\":\"group\",\"features\":[\"API\"]}", + "enterprise": "{\"orgName\":\"Sample Org\",\"edition\":\"enterprise\"}", + "developer": "{\"orgName\":\"Sample Org\",\"edition\":\"developer\"}" + }, + "knownIssues": null, + "channels": { + "unlockedPackagingWithoutNamespace": true, + "unlockedPackagingWithNamespace": true, + "toolingApi": true, + "sourceTracking": true, + "metadataApi": true, + "managedPackaging": false, + "classicUnmanagedPackaging": true, + "classicManagedPackaging": true, + "changeSets": true, + "apexMetadataApi": false + } + }, "PlatformEventChannelMember": { "details": [ { @@ -3028,19 +3239,19 @@ } ], "scratchDefinitions": { - "professional": "{\"orgName\":\"Sample Org\",\"edition\":\"professional\",\"features\":[\"C360SHADOWORGFEATURE\",\"CDCENABLEENRICHMENT\"]}", - "group": "{\"orgName\":\"Sample Org\",\"edition\":\"group\",\"features\":[\"C360SHADOWORGFEATURE\",\"CDCENABLEENRICHMENT\"]}", - "enterprise": "{\"orgName\":\"Sample Org\",\"edition\":\"enterprise\",\"features\":[\"CDCENABLEENRICHMENT\"]}", - "developer": "{\"orgName\":\"Sample Org\",\"edition\":\"developer\",\"features\":[\"CDCENABLEENRICHMENT\"]}" + "professional": "{\"orgName\":\"Sample Org\",\"edition\":\"professional\",\"features\":[\"C360SHADOWORGFEATURE\"]}", + "group": "{\"orgName\":\"Sample Org\",\"edition\":\"group\",\"features\":[\"C360SHADOWORGFEATURE\"]}", + "enterprise": "{\"orgName\":\"Sample Org\",\"edition\":\"enterprise\"}", + "developer": "{\"orgName\":\"Sample Org\",\"edition\":\"developer\"}" }, "knownIssues": null, "channels": { - "unlockedPackagingWithoutNamespace": false, - "unlockedPackagingWithNamespace": false, + "unlockedPackagingWithoutNamespace": true, + "unlockedPackagingWithNamespace": true, "toolingApi": true, "sourceTracking": true, "metadataApi": true, - "managedPackaging": false, + "managedPackaging": true, "classicUnmanagedPackaging": true, "classicManagedPackaging": true, "changeSets": true, @@ -3062,12 +3273,12 @@ }, "knownIssues": null, "channels": { - "unlockedPackagingWithoutNamespace": false, - "unlockedPackagingWithNamespace": false, + "unlockedPackagingWithoutNamespace": true, + "unlockedPackagingWithNamespace": true, "toolingApi": true, "sourceTracking": true, "metadataApi": true, - "managedPackaging": false, + "managedPackaging": true, "classicUnmanagedPackaging": true, "classicManagedPackaging": true, "changeSets": true, @@ -3410,10 +3621,10 @@ } ], "scratchDefinitions": { - "professional": "{\"orgName\":\"Sample Org\",\"edition\":\"professional\",\"features\":[\"FINANCIALSERVICESUSER:1\"]}", - "group": "{\"orgName\":\"Sample Org\",\"edition\":\"group\",\"features\":[\"FINANCIALSERVICESUSER:1\"]}", - "enterprise": "{\"orgName\":\"Sample Org\",\"edition\":\"enterprise\",\"features\":[\"FINANCIALSERVICESUSER:1\"]}", - "developer": "{\"orgName\":\"Sample Org\",\"edition\":\"developer\",\"features\":[\"FINANCIALSERVICESUSER:1\"]}" + "professional": "{\"orgName\":\"Sample Org\",\"edition\":\"professional\",\"features\":[\"ASSOCIATIONENGINE\"]}", + "group": "{\"orgName\":\"Sample Org\",\"edition\":\"group\",\"features\":[\"ASSOCIATIONENGINE\"]}", + "enterprise": "{\"orgName\":\"Sample Org\",\"edition\":\"enterprise\",\"features\":[\"ASSOCIATIONENGINE\"]}", + "developer": "{\"orgName\":\"Sample Org\",\"edition\":\"developer\",\"features\":[\"ASSOCIATIONENGINE\"]}" }, "knownIssues": null, "channels": { @@ -3659,8 +3870,8 @@ "scratchDefinitions": { "professional": "{\"orgName\":\"Sample Org\",\"edition\":\"professional\",\"features\":[\"ORDERMANAGEMENT\"]}", "group": "{\"orgName\":\"Sample Org\",\"edition\":\"group\",\"features\":[\"ORDERMANAGEMENT\"]}", - "enterprise": "{\"orgName\":\"Sample Org\",\"edition\":\"enterprise\",\"features\":[\"ORDERMANAGEMENT\"]}", - "developer": "{\"orgName\":\"Sample Org\",\"edition\":\"developer\",\"features\":[\"ORDERMANAGEMENT\"]}" + "enterprise": "{\"orgName\":\"Sample Org\",\"edition\":\"enterprise\",\"features\":[\"B2CCOMMERCEGMV\"]}", + "developer": "{\"orgName\":\"Sample Org\",\"edition\":\"developer\",\"features\":[\"B2CCOMMERCEGMV\"]}" }, "knownIssues": null, "channels": { @@ -3822,68 +4033,151 @@ "apexMetadataApi": false } }, - "ObjectSourceTargetMap": { + "OcrTemplate": { "details": [ { - "url": "https://developer.salesforce.com/docs/atlas.en-us.api_meta.meta/api_meta/meta_objectsourcetargetmap.htm", + "url": "https://developer.salesforce.com/docs/atlas.en-us.api_meta.meta/api_meta/meta_ocrtemplate.htm", "name": "Metadata API Documentation" } ], "scratchDefinitions": { - "enterprise": "{\"orgName\":\"Sample Org\",\"edition\":\"enterprise\",\"features\":[\"CUSTOMERDATAPLATFORM\"]}" + "professional": "{\"orgName\":\"Sample Org\",\"edition\":\"professional\",\"features\":[\"EINSTEINDOCREADER\"],\"settings\":{\"industriesSettings\":{\"enableEinsteinDocReader\":true}}}", + "group": "{\"orgName\":\"Sample Org\",\"edition\":\"group\",\"features\":[\"EINSTEINDOCREADER\"],\"settings\":{\"industriesSettings\":{\"enableEinsteinDocReader\":true}}}", + "enterprise": "{\"orgName\":\"Sample Org\",\"edition\":\"enterprise\",\"features\":[\"EINSTEINDOCREADER\"],\"settings\":{\"industriesSettings\":{\"enableEinsteinDocReader\":true}}}", + "developer": "{\"orgName\":\"Sample Org\",\"edition\":\"developer\",\"features\":[\"EINSTEINDOCREADER\"],\"settings\":{\"industriesSettings\":{\"enableEinsteinDocReader\":true}}}" }, "knownIssues": null, "channels": { "unlockedPackagingWithoutNamespace": true, "unlockedPackagingWithNamespace": true, - "toolingApi": false, - "sourceTracking": false, + "toolingApi": true, + "sourceTracking": true, "metadataApi": true, "managedPackaging": false, - "classicUnmanagedPackaging": false, - "classicManagedPackaging": false, - "changeSets": false, + "classicUnmanagedPackaging": true, + "classicManagedPackaging": true, + "changeSets": true, "apexMetadataApi": false } }, - "ObjectLinkingSettings": { + "OcrSampleDocument": { "details": [ { - "url": "https://developer.salesforce.com/docs/atlas.en-us.api_meta.meta/api_meta/meta_objectlinkingsettings.htm", + "url": "https://developer.salesforce.com/docs/atlas.en-us.api_meta.meta/api_meta/meta_ocrsampledocument.htm", "name": "Metadata API Documentation" } ], "scratchDefinitions": { - "professional": "{\"orgName\":\"Sample Org\",\"edition\":\"professional\"}", - "group": "{\"orgName\":\"Sample Org\",\"edition\":\"group\"}", - "enterprise": "{\"orgName\":\"Sample Org\",\"edition\":\"enterprise\"}", - "developer": "{\"orgName\":\"Sample Org\",\"edition\":\"developer\"}" + "professional": "{\"orgName\":\"Sample Org\",\"edition\":\"professional\",\"features\":[\"EINSTEINDOCREADER\"],\"settings\":{\"industriesSettings\":{\"enableEinsteinDocReader\":true}}}", + "group": "{\"orgName\":\"Sample Org\",\"edition\":\"group\",\"features\":[\"EINSTEINDOCREADER\"],\"settings\":{\"industriesSettings\":{\"enableEinsteinDocReader\":true}}}", + "enterprise": "{\"orgName\":\"Sample Org\",\"edition\":\"enterprise\",\"features\":[\"EINSTEINDOCREADER\"],\"settings\":{\"industriesSettings\":{\"enableEinsteinDocReader\":true}}}", + "developer": "{\"orgName\":\"Sample Org\",\"edition\":\"developer\",\"features\":[\"EINSTEINDOCREADER\"],\"settings\":{\"industriesSettings\":{\"enableEinsteinDocReader\":true}}}" }, "knownIssues": null, "channels": { - "unlockedPackagingWithoutNamespace": false, - "unlockedPackagingWithNamespace": false, - "toolingApi": false, + "unlockedPackagingWithoutNamespace": true, + "unlockedPackagingWithNamespace": true, + "toolingApi": true, "sourceTracking": true, "metadataApi": true, "managedPackaging": false, - "classicUnmanagedPackaging": false, - "classicManagedPackaging": false, - "changeSets": false, + "classicUnmanagedPackaging": true, + "classicManagedPackaging": true, + "changeSets": true, "apexMetadataApi": false } }, - "OauthCustomScope": { + "ObjectSourceTargetMap": { "details": [ { - "url": "https://developer.salesforce.com/docs/atlas.en-us.api_meta.meta/api_meta/meta_oauthcustomscope.htm", + "url": "https://developer.salesforce.com/docs/atlas.en-us.api_meta.meta/api_meta/meta_objectsourcetargetmap.htm", "name": "Metadata API Documentation" } ], "scratchDefinitions": { - "professional": "{\"orgName\":\"Sample Org\",\"edition\":\"professional\"}", - "group": "{\"orgName\":\"Sample Org\",\"edition\":\"group\"}", - "enterprise": "{\"orgName\":\"Sample Org\",\"edition\":\"enterprise\"}", + "professional": "{\"orgName\":\"Sample Org\",\"edition\":\"professional\",\"features\":[\"CUSTOMERDATAPLATFORM\"]}", + "enterprise": "{\"orgName\":\"Sample Org\",\"edition\":\"enterprise\",\"features\":[\"CUSTOMERDATAPLATFORM\"]}", + "developer": "{\"orgName\":\"Sample Org\",\"edition\":\"developer\",\"features\":[\"CUSTOMERDATAPLATFORM\"]}" + }, + "knownIssues": null, + "channels": { + "unlockedPackagingWithoutNamespace": true, + "unlockedPackagingWithNamespace": true, + "toolingApi": false, + "sourceTracking": true, + "metadataApi": true, + "managedPackaging": true, + "classicUnmanagedPackaging": false, + "classicManagedPackaging": false, + "changeSets": false, + "apexMetadataApi": false + } + }, + "ObjectLinkingSettings": { + "details": [ + { + "url": "https://developer.salesforce.com/docs/atlas.en-us.api_meta.meta/api_meta/meta_objectlinkingsettings.htm", + "name": "Metadata API Documentation" + } + ], + "scratchDefinitions": { + "professional": "{\"orgName\":\"Sample Org\",\"edition\":\"professional\"}", + "group": "{\"orgName\":\"Sample Org\",\"edition\":\"group\"}", + "enterprise": "{\"orgName\":\"Sample Org\",\"edition\":\"enterprise\"}", + "developer": "{\"orgName\":\"Sample Org\",\"edition\":\"developer\"}" + }, + "knownIssues": null, + "channels": { + "unlockedPackagingWithoutNamespace": false, + "unlockedPackagingWithNamespace": false, + "toolingApi": false, + "sourceTracking": true, + "metadataApi": true, + "managedPackaging": false, + "classicUnmanagedPackaging": false, + "classicManagedPackaging": false, + "changeSets": false, + "apexMetadataApi": false + } + }, + "ObjectHierarchyRelationship": { + "details": [ + { + "url": "https://developer.salesforce.com/docs/atlas.en-us.api_meta.meta/api_meta/meta_objecthierarchyrelationship.htm", + "name": "Metadata API Documentation" + } + ], + "scratchDefinitions": { + "professional": "{\"orgName\":\"Sample Org\",\"edition\":\"professional\",\"features\":[\"INDUSTRIESMFGREBATES\"],\"settings\":{\"industriesSettings\":{\"enableIndustriesRebates\":true}}}", + "group": "{\"orgName\":\"Sample Org\",\"edition\":\"group\",\"features\":[\"INDUSTRIESMFGREBATES\"],\"settings\":{\"industriesSettings\":{\"enableIndustriesRebates\":true}}}", + "enterprise": "{\"orgName\":\"Sample Org\",\"edition\":\"enterprise\",\"features\":[\"INDUSTRIESMFGREBATES\"],\"settings\":{\"industriesSettings\":{\"enableIndustriesRebates\":true}}}", + "developer": "{\"orgName\":\"Sample Org\",\"edition\":\"developer\",\"features\":[\"INDUSTRIESMFGREBATES\"],\"settings\":{\"industriesSettings\":{\"enableIndustriesRebates\":true}}}" + }, + "knownIssues": null, + "channels": { + "unlockedPackagingWithoutNamespace": true, + "unlockedPackagingWithNamespace": true, + "toolingApi": true, + "sourceTracking": true, + "metadataApi": true, + "managedPackaging": false, + "classicUnmanagedPackaging": false, + "classicManagedPackaging": false, + "changeSets": false, + "apexMetadataApi": false + } + }, + "OauthCustomScope": { + "details": [ + { + "url": "https://developer.salesforce.com/docs/atlas.en-us.api_meta.meta/api_meta/meta_oauthcustomscope.htm", + "name": "Metadata API Documentation" + } + ], + "scratchDefinitions": { + "professional": "{\"orgName\":\"Sample Org\",\"edition\":\"professional\"}", + "group": "{\"orgName\":\"Sample Org\",\"edition\":\"group\"}", + "enterprise": "{\"orgName\":\"Sample Org\",\"edition\":\"enterprise\"}", "developer": "{\"orgName\":\"Sample Org\",\"edition\":\"developer\"}" }, "knownIssues": null, @@ -4269,6 +4563,58 @@ "apexMetadataApi": false } }, + "MktDataTranObject": { + "details": [ + { + "url": "https://developer.salesforce.com/docs/atlas.en-us.api_meta.meta/api_meta/meta_mktdatatranobject.htm", + "name": "Metadata API Documentation" + } + ], + "scratchDefinitions": { + "professional": "{\"orgName\":\"Sample Org\",\"edition\":\"professional\",\"features\":[\"CUSTOMERDATAPLATFORM\"]}", + "enterprise": "{\"orgName\":\"Sample Org\",\"edition\":\"enterprise\",\"features\":[\"CUSTOMERDATAPLATFORM\"]}", + "developer": "{\"orgName\":\"Sample Org\",\"edition\":\"developer\",\"features\":[\"CUSTOMERDATAPLATFORM\"]}" + }, + "knownIssues": null, + "channels": { + "unlockedPackagingWithoutNamespace": true, + "unlockedPackagingWithNamespace": true, + "toolingApi": true, + "sourceTracking": true, + "metadataApi": true, + "managedPackaging": true, + "classicUnmanagedPackaging": false, + "classicManagedPackaging": false, + "changeSets": false, + "apexMetadataApi": false + } + }, + "MktCalcInsightObjectDef": { + "details": [ + { + "url": "https://developer.salesforce.com/docs/atlas.en-us.api_meta.meta/api_meta/meta_mktcalcinsightobjectdef.htm", + "name": "Metadata API Documentation" + } + ], + "scratchDefinitions": { + "professional": "{\"orgName\":\"Sample Org\",\"edition\":\"professional\",\"features\":[\"CUSTOMERDATAPLATFORM\"]}", + "enterprise": "{\"orgName\":\"Sample Org\",\"edition\":\"enterprise\",\"features\":[\"CUSTOMERDATAPLATFORM\"]}", + "developer": "{\"orgName\":\"Sample Org\",\"edition\":\"developer\",\"features\":[\"CUSTOMERDATAPLATFORM\"]}" + }, + "knownIssues": null, + "channels": { + "unlockedPackagingWithoutNamespace": true, + "unlockedPackagingWithNamespace": true, + "toolingApi": false, + "sourceTracking": true, + "metadataApi": true, + "managedPackaging": false, + "classicUnmanagedPackaging": true, + "classicManagedPackaging": true, + "changeSets": true, + "apexMetadataApi": false + } + }, "MilestoneType": { "details": [ { @@ -4296,6 +4642,28 @@ "apexMetadataApi": false } }, + "MeetingsSettings": { + "details": [ + { + "url": "https://developer.salesforce.com/docs/atlas.en-us.api_meta.meta/api_meta/meta_meetingssettings.htm", + "name": "Metadata API Documentation" + } + ], + "scratchDefinitions": null, + "knownIssues": null, + "channels": { + "unlockedPackagingWithoutNamespace": false, + "unlockedPackagingWithNamespace": false, + "toolingApi": false, + "sourceTracking": false, + "metadataApi": false, + "managedPackaging": false, + "classicUnmanagedPackaging": false, + "classicManagedPackaging": false, + "changeSets": false, + "apexMetadataApi": false + } + }, "MatchingRules": { "details": [ { @@ -4478,7 +4846,7 @@ "unlockedPackagingWithoutNamespace": true, "unlockedPackagingWithNamespace": false, "toolingApi": true, - "sourceTracking": true, + "sourceTracking": false, "metadataApi": true, "managedPackaging": false, "classicUnmanagedPackaging": true, @@ -4487,6 +4855,33 @@ "apexMetadataApi": false } }, + "MailMergeSettings": { + "details": [ + { + "url": "https://developer.salesforce.com/docs/atlas.en-us.api_meta.meta/api_meta/meta_mailmergesettings.htm", + "name": "Metadata API Documentation" + } + ], + "scratchDefinitions": { + "professional": "{\"orgName\":\"Sample Org\",\"edition\":\"professional\"}", + "group": "{\"orgName\":\"Sample Org\",\"edition\":\"group\"}", + "enterprise": "{\"orgName\":\"Sample Org\",\"edition\":\"enterprise\"}", + "developer": "{\"orgName\":\"Sample Org\",\"edition\":\"developer\"}" + }, + "knownIssues": null, + "channels": { + "unlockedPackagingWithoutNamespace": false, + "unlockedPackagingWithNamespace": false, + "toolingApi": false, + "sourceTracking": true, + "metadataApi": true, + "managedPackaging": false, + "classicUnmanagedPackaging": false, + "classicManagedPackaging": false, + "changeSets": false, + "apexMetadataApi": false + } + }, "MacroSettings": { "details": [ { @@ -4514,6 +4909,60 @@ "apexMetadataApi": false } }, + "MLPredictionDefinition": { + "details": [ + { + "url": "https://developer.salesforce.com/docs/atlas.en-us.api_meta.meta/api_meta/meta_mlpredictiondefinition.htm", + "name": "Metadata API Documentation" + } + ], + "scratchDefinitions": { + "professional": "{\"orgName\":\"Sample Org\",\"edition\":\"professional\",\"features\":[\"AIREPLYRECOMMENDATIONS\"]}", + "group": "{\"orgName\":\"Sample Org\",\"edition\":\"group\",\"features\":[\"AIREPLYRECOMMENDATIONS\"]}", + "enterprise": "{\"orgName\":\"Sample Org\",\"edition\":\"enterprise\",\"features\":[\"AIREPLYRECOMMENDATIONS\"]}", + "developer": "{\"orgName\":\"Sample Org\",\"edition\":\"developer\",\"features\":[\"AIREPLYRECOMMENDATIONS\"]}" + }, + "knownIssues": null, + "channels": { + "unlockedPackagingWithoutNamespace": true, + "unlockedPackagingWithNamespace": true, + "toolingApi": true, + "sourceTracking": true, + "metadataApi": true, + "managedPackaging": false, + "classicUnmanagedPackaging": true, + "classicManagedPackaging": true, + "changeSets": true, + "apexMetadataApi": false + } + }, + "MLDataDefinition": { + "details": [ + { + "url": "https://developer.salesforce.com/docs/atlas.en-us.api_meta.meta/api_meta/meta_mldatadefinition.htm", + "name": "Metadata API Documentation" + } + ], + "scratchDefinitions": { + "professional": "{\"orgName\":\"Sample Org\",\"edition\":\"professional\",\"features\":[\"AIREPLYRECOMMENDATIONS\"]}", + "group": "{\"orgName\":\"Sample Org\",\"edition\":\"group\",\"features\":[\"AIREPLYRECOMMENDATIONS\"]}", + "enterprise": "{\"orgName\":\"Sample Org\",\"edition\":\"enterprise\",\"features\":[\"AIREPLYRECOMMENDATIONS\"]}", + "developer": "{\"orgName\":\"Sample Org\",\"edition\":\"developer\",\"features\":[\"AIREPLYRECOMMENDATIONS\"]}" + }, + "knownIssues": null, + "channels": { + "unlockedPackagingWithoutNamespace": true, + "unlockedPackagingWithNamespace": true, + "toolingApi": true, + "sourceTracking": true, + "metadataApi": true, + "managedPackaging": false, + "classicUnmanagedPackaging": true, + "classicManagedPackaging": true, + "changeSets": true, + "apexMetadataApi": false + } + }, "LoginFlow": { "details": [ { @@ -5207,10 +5656,10 @@ } ], "scratchDefinitions": { - "professional": "{\"orgName\":\"Sample Org\",\"edition\":\"professional\",\"features\":[\"IASPILOT\"]}", - "group": "{\"orgName\":\"Sample Org\",\"edition\":\"group\",\"features\":[\"IASPILOT\"]}", - "enterprise": "{\"orgName\":\"Sample Org\",\"edition\":\"enterprise\",\"features\":[\"IASPILOT\"]}", - "developer": "{\"orgName\":\"Sample Org\",\"edition\":\"developer\",\"features\":[\"IASPILOT\"]}" + "professional": "{\"orgName\":\"Sample Org\",\"edition\":\"professional\",\"features\":[\"OMNICHANNELINVENTORY\"]}", + "group": "{\"orgName\":\"Sample Org\",\"edition\":\"group\",\"features\":[\"OMNICHANNELINVENTORY\"]}", + "enterprise": "{\"orgName\":\"Sample Org\",\"edition\":\"enterprise\",\"features\":[\"OMNICHANNELINVENTORY\"]}", + "developer": "{\"orgName\":\"Sample Org\",\"edition\":\"developer\",\"features\":[\"OMNICHANNELINVENTORY\"]}" }, "knownIssues": null, "channels": { @@ -5226,6 +5675,32 @@ "apexMetadataApi": false } }, + "InternalOrganization": { + "details": [ + { + "url": "https://developer.salesforce.com/docs/atlas.en-us.api_meta.meta/api_meta/meta_internalorganization.htm", + "name": "Metadata API Documentation" + } + ], + "scratchDefinitions": { + "professional": "{\"orgName\":\"Sample Org\",\"edition\":\"professional\",\"features\":[\"CUSTOMERDATAPLATFORM\"]}", + "enterprise": "{\"orgName\":\"Sample Org\",\"edition\":\"enterprise\",\"features\":[\"CUSTOMERDATAPLATFORM\"]}", + "developer": "{\"orgName\":\"Sample Org\",\"edition\":\"developer\",\"features\":[\"CUSTOMERDATAPLATFORM\"]}" + }, + "knownIssues": null, + "channels": { + "unlockedPackagingWithoutNamespace": true, + "unlockedPackagingWithNamespace": true, + "toolingApi": true, + "sourceTracking": true, + "metadataApi": true, + "managedPackaging": false, + "classicUnmanagedPackaging": false, + "classicManagedPackaging": false, + "changeSets": false, + "apexMetadataApi": false + } + }, "IntegrationHubSettingsType": { "details": [ { @@ -5512,10 +5987,10 @@ } ], "scratchDefinitions": { - "professional": "{\"orgName\":\"Sample Org\",\"edition\":\"professional\",\"features\":[\"FINANCIALSERVICESUSER:1\"]}", - "group": "{\"orgName\":\"Sample Org\",\"edition\":\"group\",\"features\":[\"FINANCIALSERVICESUSER:1\"]}", - "enterprise": "{\"orgName\":\"Sample Org\",\"edition\":\"enterprise\",\"features\":[\"FINANCIALSERVICESUSER:1\"]}", - "developer": "{\"orgName\":\"Sample Org\",\"edition\":\"developer\",\"features\":[\"FINANCIALSERVICESUSER:1\"]}" + "professional": "{\"orgName\":\"Sample Org\",\"edition\":\"professional\",\"features\":[\"ASSOCIATIONENGINE\"]}", + "group": "{\"orgName\":\"Sample Org\",\"edition\":\"group\",\"features\":[\"ASSOCIATIONENGINE\"]}", + "enterprise": "{\"orgName\":\"Sample Org\",\"edition\":\"enterprise\",\"features\":[\"ASSOCIATIONENGINE\"]}", + "developer": "{\"orgName\":\"Sample Org\",\"edition\":\"developer\",\"features\":[\"ASSOCIATIONENGINE\"]}" }, "knownIssues": null, "channels": { @@ -5531,10 +6006,10 @@ "apexMetadataApi": false } }, - "HomePageLayout": { + "IPAddressRange": { "details": [ { - "url": "https://developer.salesforce.com/docs/atlas.en-us.api_meta.meta/api_meta/meta_homepagelayouts.htm", + "url": "https://developer.salesforce.com/docs/atlas.en-us.api_meta.meta/api_meta/meta_ipaddressrange.htm", "name": "Metadata API Documentation" } ], @@ -5546,22 +6021,22 @@ }, "knownIssues": null, "channels": { - "unlockedPackagingWithoutNamespace": true, - "unlockedPackagingWithNamespace": true, + "unlockedPackagingWithoutNamespace": false, + "unlockedPackagingWithNamespace": false, "toolingApi": true, "sourceTracking": true, "metadataApi": true, - "managedPackaging": true, - "classicUnmanagedPackaging": true, - "classicManagedPackaging": true, - "changeSets": true, + "managedPackaging": false, + "classicUnmanagedPackaging": false, + "classicManagedPackaging": false, + "changeSets": false, "apexMetadataApi": false } }, - "HomePageComponent": { + "HomePageLayout": { "details": [ { - "url": "https://developer.salesforce.com/docs/atlas.en-us.api_meta.meta/api_meta/meta_homepagecomponent.htm", + "url": "https://developer.salesforce.com/docs/atlas.en-us.api_meta.meta/api_meta/meta_homepagelayouts.htm", "name": "Metadata API Documentation" } ], @@ -5585,10 +6060,37 @@ "apexMetadataApi": false } }, - "HighVelocitySalesSettings": { + "HomePageComponent": { "details": [ { - "url": "https://developer.salesforce.com/docs/atlas.en-us.api_meta.meta/api_meta/meta_highvelocitysalessettings.htm", + "url": "https://developer.salesforce.com/docs/atlas.en-us.api_meta.meta/api_meta/meta_homepagecomponent.htm", + "name": "Metadata API Documentation" + } + ], + "scratchDefinitions": { + "professional": "{\"orgName\":\"Sample Org\",\"edition\":\"professional\"}", + "group": "{\"orgName\":\"Sample Org\",\"edition\":\"group\"}", + "enterprise": "{\"orgName\":\"Sample Org\",\"edition\":\"enterprise\"}", + "developer": "{\"orgName\":\"Sample Org\",\"edition\":\"developer\"}" + }, + "knownIssues": null, + "channels": { + "unlockedPackagingWithoutNamespace": true, + "unlockedPackagingWithNamespace": true, + "toolingApi": true, + "sourceTracking": true, + "metadataApi": true, + "managedPackaging": true, + "classicUnmanagedPackaging": true, + "classicManagedPackaging": true, + "changeSets": true, + "apexMetadataApi": false + } + }, + "HighVelocitySalesSettings": { + "details": [ + { + "url": "https://developer.salesforce.com/docs/atlas.en-us.api_meta.meta/api_meta/meta_highvelocitysalessettings.htm", "name": "Metadata API Documentation" } ], @@ -5775,23 +6277,18 @@ "name": "Metadata API Documentation" } ], - "scratchDefinitions": { - "professional": "{\"orgName\":\"Sample Org\",\"edition\":\"professional\",\"features\":[\"FUNCTIONS\"]}", - "group": "{\"orgName\":\"Sample Org\",\"edition\":\"group\",\"features\":[\"FUNCTIONS\"]}", - "enterprise": "{\"orgName\":\"Sample Org\",\"edition\":\"enterprise\",\"features\":[\"FUNCTIONS\"]}", - "developer": "{\"orgName\":\"Sample Org\",\"edition\":\"developer\",\"features\":[\"FUNCTIONS\"]}" - }, + "scratchDefinitions": null, "knownIssues": null, "channels": { - "unlockedPackagingWithoutNamespace": true, - "unlockedPackagingWithNamespace": true, + "unlockedPackagingWithoutNamespace": false, + "unlockedPackagingWithNamespace": false, "toolingApi": false, - "sourceTracking": true, + "sourceTracking": false, "metadataApi": true, - "managedPackaging": true, - "classicUnmanagedPackaging": true, - "classicManagedPackaging": true, - "changeSets": true, + "managedPackaging": false, + "classicUnmanagedPackaging": false, + "classicManagedPackaging": false, + "changeSets": false, "apexMetadataApi": false } }, @@ -5872,6 +6369,84 @@ "apexMetadataApi": false } }, + "ForecastingTypeSource": { + "details": [ + { + "url": "https://developer.salesforce.com/docs/atlas.en-us.api_meta.meta/api_meta/meta_forecastingtypesource.htm", + "name": "Metadata API Documentation" + } + ], + "scratchDefinitions": { + "professional": "{\"orgName\":\"Sample Org\",\"edition\":\"professional\",\"settings\":{\"forecastingSettings\":{\"enableForecasts\":true}}}", + "enterprise": "{\"orgName\":\"Sample Org\",\"edition\":\"enterprise\",\"settings\":{\"forecastingSettings\":{\"enableForecasts\":true}}}", + "developer": "{\"orgName\":\"Sample Org\",\"edition\":\"developer\",\"settings\":{\"forecastingSettings\":{\"enableForecasts\":true}}}" + }, + "knownIssues": null, + "channels": { + "unlockedPackagingWithoutNamespace": false, + "unlockedPackagingWithNamespace": false, + "toolingApi": true, + "sourceTracking": true, + "metadataApi": true, + "managedPackaging": false, + "classicUnmanagedPackaging": false, + "classicManagedPackaging": false, + "changeSets": false, + "apexMetadataApi": false + } + }, + "ForecastingType": { + "details": [ + { + "url": "https://developer.salesforce.com/docs/atlas.en-us.api_meta.meta/api_meta/meta_forecastingtype.htm", + "name": "Metadata API Documentation" + } + ], + "scratchDefinitions": { + "professional": "{\"orgName\":\"Sample Org\",\"edition\":\"professional\",\"settings\":{\"forecastingSettings\":{\"enableForecasts\":true}}}", + "enterprise": "{\"orgName\":\"Sample Org\",\"edition\":\"enterprise\",\"settings\":{\"forecastingSettings\":{\"enableForecasts\":true}}}", + "developer": "{\"orgName\":\"Sample Org\",\"edition\":\"developer\",\"settings\":{\"forecastingSettings\":{\"enableForecasts\":true}}}" + }, + "knownIssues": null, + "channels": { + "unlockedPackagingWithoutNamespace": true, + "unlockedPackagingWithNamespace": true, + "toolingApi": true, + "sourceTracking": true, + "metadataApi": true, + "managedPackaging": false, + "classicUnmanagedPackaging": false, + "classicManagedPackaging": false, + "changeSets": false, + "apexMetadataApi": false + } + }, + "ForecastingSourceDefinition": { + "details": [ + { + "url": "https://developer.salesforce.com/docs/atlas.en-us.api_meta.meta/api_meta/meta_forecastingsourcedefinition.htm", + "name": "Metadata API Documentation" + } + ], + "scratchDefinitions": { + "professional": "{\"orgName\":\"Sample Org\",\"edition\":\"professional\",\"settings\":{\"forecastingSettings\":{\"enableForecasts\":true}}}", + "enterprise": "{\"orgName\":\"Sample Org\",\"edition\":\"enterprise\",\"settings\":{\"forecastingSettings\":{\"enableForecasts\":true}}}", + "developer": "{\"orgName\":\"Sample Org\",\"edition\":\"developer\",\"settings\":{\"forecastingSettings\":{\"enableForecasts\":true}}}" + }, + "knownIssues": null, + "channels": { + "unlockedPackagingWithoutNamespace": false, + "unlockedPackagingWithNamespace": false, + "toolingApi": true, + "sourceTracking": true, + "metadataApi": true, + "managedPackaging": false, + "classicUnmanagedPackaging": false, + "classicManagedPackaging": false, + "changeSets": false, + "apexMetadataApi": false + } + }, "ForecastingSettings": { "details": [ { @@ -6114,16 +6689,18 @@ } ], "scratchDefinitions": { - "enterprise": "{\"orgName\":\"Sample Org\",\"edition\":\"enterprise\",\"features\":[\"CUSTOMERDATAPLATFORM\"]}" + "professional": "{\"orgName\":\"Sample Org\",\"edition\":\"professional\",\"features\":[\"CUSTOMERDATAPLATFORM\"]}", + "enterprise": "{\"orgName\":\"Sample Org\",\"edition\":\"enterprise\",\"features\":[\"CUSTOMERDATAPLATFORM\"]}", + "developer": "{\"orgName\":\"Sample Org\",\"edition\":\"developer\",\"features\":[\"CUSTOMERDATAPLATFORM\"]}" }, "knownIssues": null, "channels": { "unlockedPackagingWithoutNamespace": true, "unlockedPackagingWithNamespace": true, "toolingApi": false, - "sourceTracking": false, + "sourceTracking": true, "metadataApi": true, - "managedPackaging": false, + "managedPackaging": true, "classicUnmanagedPackaging": false, "classicManagedPackaging": false, "changeSets": false, @@ -6211,6 +6788,33 @@ "apexMetadataApi": false } }, + "FieldRestrictionRule": { + "details": [ + { + "url": "https://developer.salesforce.com/docs/atlas.en-us.api_meta.meta/api_meta/meta_fieldrestrictionrule.htm", + "name": "Metadata API Documentation" + } + ], + "scratchDefinitions": { + "professional": "{\"orgName\":\"Sample Org\",\"edition\":\"professional\",\"features\":[\"EMPLOYEEEXPERIENCE\"]}", + "group": "{\"orgName\":\"Sample Org\",\"edition\":\"group\",\"features\":[\"EMPLOYEEEXPERIENCE\"]}", + "enterprise": "{\"orgName\":\"Sample Org\",\"edition\":\"enterprise\",\"features\":[\"EMPLOYEEEXPERIENCE\"]}", + "developer": "{\"orgName\":\"Sample Org\",\"edition\":\"developer\",\"features\":[\"EMPLOYEEEXPERIENCE\"]}" + }, + "knownIssues": null, + "channels": { + "unlockedPackagingWithoutNamespace": true, + "unlockedPackagingWithNamespace": true, + "toolingApi": true, + "sourceTracking": true, + "metadataApi": true, + "managedPackaging": false, + "classicUnmanagedPackaging": false, + "classicManagedPackaging": false, + "changeSets": false, + "apexMetadataApi": false + } + }, "FeedFieldHistory": { "details": [ { @@ -6374,10 +6978,10 @@ } ], "scratchDefinitions": { - "professional": "{\"orgName\":\"Sample Org\",\"edition\":\"professional\"}", - "group": "{\"orgName\":\"Sample Org\",\"edition\":\"group\"}", - "enterprise": "{\"orgName\":\"Sample Org\",\"edition\":\"enterprise\"}", - "developer": "{\"orgName\":\"Sample Org\",\"edition\":\"developer\"}" + "professional": "{\"orgName\":\"Sample Org\",\"edition\":\"professional\",\"features\":[\"PLATFORMCONNECT:3\"]}", + "group": "{\"orgName\":\"Sample Org\",\"edition\":\"group\",\"features\":[\"PLATFORMCONNECT:3\"]}", + "enterprise": "{\"orgName\":\"Sample Org\",\"edition\":\"enterprise\",\"features\":[\"PLATFORMCONNECT:3\"]}", + "developer": "{\"orgName\":\"Sample Org\",\"edition\":\"developer\",\"features\":[\"PLATFORMCONNECT:3\"]}" }, "knownIssues": [ { @@ -6393,7 +6997,7 @@ "channels": { "unlockedPackagingWithoutNamespace": true, "unlockedPackagingWithNamespace": true, - "toolingApi": false, + "toolingApi": true, "sourceTracking": true, "metadataApi": true, "managedPackaging": true, @@ -6403,6 +7007,59 @@ "apexMetadataApi": false } }, + "ExternalDataConnector": { + "details": [ + { + "url": "https://developer.salesforce.com/docs/atlas.en-us.api_meta.meta/api_meta/meta_externaldataconnector.htm", + "name": "Metadata API Documentation" + } + ], + "scratchDefinitions": { + "professional": "{\"orgName\":\"Sample Org\",\"edition\":\"professional\",\"features\":[\"CUSTOMERDATAPLATFORM\"]}", + "enterprise": "{\"orgName\":\"Sample Org\",\"edition\":\"enterprise\",\"features\":[\"CUSTOMERDATAPLATFORM\"]}", + "developer": "{\"orgName\":\"Sample Org\",\"edition\":\"developer\",\"features\":[\"CUSTOMERDATAPLATFORM\"]}" + }, + "knownIssues": null, + "channels": { + "unlockedPackagingWithoutNamespace": true, + "unlockedPackagingWithNamespace": true, + "toolingApi": false, + "sourceTracking": true, + "metadataApi": true, + "managedPackaging": true, + "classicUnmanagedPackaging": false, + "classicManagedPackaging": false, + "changeSets": false, + "apexMetadataApi": false + } + }, + "ExternalAIModel": { + "details": [ + { + "url": "https://developer.salesforce.com/docs/atlas.en-us.api_meta.meta/api_meta/meta_externalaimodel.htm", + "name": "Metadata API Documentation" + } + ], + "scratchDefinitions": { + "professional": "{\"orgName\":\"Sample Org\",\"edition\":\"professional\",\"settings\":{\"botSettings\":{\"enableBots\":true}}}", + "group": "{\"orgName\":\"Sample Org\",\"edition\":\"group\",\"settings\":{\"botSettings\":{\"enableBots\":true}}}", + "enterprise": "{\"orgName\":\"Sample Org\",\"edition\":\"enterprise\",\"settings\":{\"botSettings\":{\"enableBots\":true}}}", + "developer": "{\"orgName\":\"Sample Org\",\"edition\":\"developer\",\"settings\":{\"botSettings\":{\"enableBots\":true}}}" + }, + "knownIssues": null, + "channels": { + "unlockedPackagingWithoutNamespace": true, + "unlockedPackagingWithNamespace": true, + "toolingApi": true, + "sourceTracking": true, + "metadataApi": true, + "managedPackaging": false, + "classicUnmanagedPackaging": false, + "classicManagedPackaging": false, + "changeSets": false, + "apexMetadataApi": false + } + }, "ExperienceBundleSettings": { "details": [ { @@ -6438,8 +7095,8 @@ } ], "scratchDefinitions": { - "enterprise": "{\"orgName\":\"Sample Org\",\"edition\":\"enterprise\",\"features\":[\"COMMUNITIES\"],\"settings\":{\"experienceBundleSettings\":{\"enableExperienceBundleMetadata\":true},\"communitiesSettings\":{\"enableNetworksEnabled\":true}}}", - "developer": "{\"orgName\":\"Sample Org\",\"edition\":\"developer\",\"features\":[\"COMMUNITIES\"],\"settings\":{\"experienceBundleSettings\":{\"enableExperienceBundleMetadata\":true},\"communitiesSettings\":{\"enableNetworksEnabled\":true}}}" + "enterprise": "{\"orgName\":\"Sample Org\",\"edition\":\"enterprise\",\"features\":[\"COMMUNITIES\"],\"settings\":{\"communitiesSettings\":{\"enableNetworksEnabled\":true}}}", + "developer": "{\"orgName\":\"Sample Org\",\"edition\":\"developer\",\"features\":[\"COMMUNITIES\"],\"settings\":{\"communitiesSettings\":{\"enableNetworksEnabled\":true}}}" }, "knownIssues": null, "channels": { @@ -6617,12 +7274,12 @@ }, "knownIssues": null, "channels": { - "unlockedPackagingWithoutNamespace": false, - "unlockedPackagingWithNamespace": false, + "unlockedPackagingWithoutNamespace": true, + "unlockedPackagingWithNamespace": true, "toolingApi": true, "sourceTracking": true, "metadataApi": true, - "managedPackaging": false, + "managedPackaging": true, "classicUnmanagedPackaging": true, "classicManagedPackaging": true, "changeSets": true, @@ -6759,21 +7416,53 @@ "apexMetadataApi": false } }, - "EmbeddedServiceMenuSettings": { + "EmployeeUserSettings": { "details": [ { - "url": "https://developer.salesforce.com/docs/atlas.en-us.api_meta.meta/api_meta/meta_embeddedservicemenusettings.htm", + "url": "https://developer.salesforce.com/docs/atlas.en-us.api_meta.meta/api_meta/meta_employeeusersettings.htm", "name": "Metadata API Documentation" } ], - "scratchDefinitions": null, + "scratchDefinitions": { + "professional": "{\"orgName\":\"Sample Org\",\"edition\":\"professional\"}", + "group": "{\"orgName\":\"Sample Org\",\"edition\":\"group\"}", + "enterprise": "{\"orgName\":\"Sample Org\",\"edition\":\"enterprise\"}", + "developer": "{\"orgName\":\"Sample Org\",\"edition\":\"developer\"}" + }, "knownIssues": null, "channels": { "unlockedPackagingWithoutNamespace": false, "unlockedPackagingWithNamespace": false, "toolingApi": false, - "sourceTracking": false, - "metadataApi": false, + "sourceTracking": true, + "metadataApi": true, + "managedPackaging": false, + "classicUnmanagedPackaging": false, + "classicManagedPackaging": false, + "changeSets": false, + "apexMetadataApi": false + } + }, + "EmployeeFieldAccessSettings": { + "details": [ + { + "url": "https://developer.salesforce.com/docs/atlas.en-us.api_meta.meta/api_meta/meta_employeefieldaccesssettings.htm", + "name": "Metadata API Documentation" + } + ], + "scratchDefinitions": { + "professional": "{\"orgName\":\"Sample Org\",\"edition\":\"professional\"}", + "group": "{\"orgName\":\"Sample Org\",\"edition\":\"group\"}", + "enterprise": "{\"orgName\":\"Sample Org\",\"edition\":\"enterprise\"}", + "developer": "{\"orgName\":\"Sample Org\",\"edition\":\"developer\"}" + }, + "knownIssues": null, + "channels": { + "unlockedPackagingWithoutNamespace": false, + "unlockedPackagingWithNamespace": false, + "toolingApi": false, + "sourceTracking": true, + "metadataApi": true, "managedPackaging": false, "classicUnmanagedPackaging": false, "classicManagedPackaging": false, @@ -6781,6 +7470,33 @@ "apexMetadataApi": false } }, + "EmbeddedServiceMenuSettings": { + "details": [ + { + "url": "https://developer.salesforce.com/docs/atlas.en-us.api_meta.meta/api_meta/meta_embeddedservicemenusettings.htm", + "name": "Metadata API Documentation" + } + ], + "scratchDefinitions": { + "professional": "{\"orgName\":\"Sample Org\",\"edition\":\"professional\",\"features\":[\"SITEFORCECONTRIBUTOR\"]}", + "group": "{\"orgName\":\"Sample Org\",\"edition\":\"group\",\"features\":[\"SITEFORCECONTRIBUTOR\"]}", + "enterprise": "{\"orgName\":\"Sample Org\",\"edition\":\"enterprise\"}", + "developer": "{\"orgName\":\"Sample Org\",\"edition\":\"developer\"}" + }, + "knownIssues": null, + "channels": { + "unlockedPackagingWithoutNamespace": true, + "unlockedPackagingWithNamespace": true, + "toolingApi": true, + "sourceTracking": true, + "metadataApi": true, + "managedPackaging": false, + "classicUnmanagedPackaging": true, + "classicManagedPackaging": true, + "changeSets": true, + "apexMetadataApi": false + } + }, "EmbeddedServiceLiveAgent": { "details": [ { @@ -6874,12 +7590,7 @@ "name": "Metadata API Documentation" } ], - "scratchDefinitions": { - "professional": "{\"orgName\":\"Sample Org\",\"edition\":\"professional\",\"features\":[\"ENABLEWAITLIST\",\"SITEFORCECONTRIBUTOR\"]}", - "group": "{\"orgName\":\"Sample Org\",\"edition\":\"group\",\"features\":[\"ENABLEWAITLIST\",\"FLOWSITES\",\"SITEFORCECONTRIBUTOR\"]}", - "enterprise": "{\"orgName\":\"Sample Org\",\"edition\":\"enterprise\",\"features\":[\"ENABLEWAITLIST\"]}", - "developer": "{\"orgName\":\"Sample Org\",\"edition\":\"developer\"}" - }, + "scratchDefinitions": null, "knownIssues": null, "channels": { "unlockedPackagingWithoutNamespace": true, @@ -6948,6 +7659,33 @@ "apexMetadataApi": false } }, + "EmailTemplateFolder": { + "details": [ + { + "url": "https://developer.salesforce.com/docs/atlas.en-us.api_meta.meta/api_meta/meta_emailtemplatefolder.htm", + "name": "Metadata API Documentation" + } + ], + "scratchDefinitions": { + "professional": "{\"orgName\":\"Sample Org\",\"edition\":\"professional\"}", + "group": "{\"orgName\":\"Sample Org\",\"edition\":\"group\"}", + "enterprise": "{\"orgName\":\"Sample Org\",\"edition\":\"enterprise\"}", + "developer": "{\"orgName\":\"Sample Org\",\"edition\":\"developer\"}" + }, + "knownIssues": null, + "channels": { + "unlockedPackagingWithoutNamespace": true, + "unlockedPackagingWithNamespace": true, + "toolingApi": false, + "sourceTracking": true, + "metadataApi": true, + "managedPackaging": true, + "classicUnmanagedPackaging": true, + "classicManagedPackaging": true, + "changeSets": true, + "apexMetadataApi": false + } + }, "EmailTemplate": { "details": [ { @@ -7110,6 +7848,33 @@ "apexMetadataApi": false } }, + "EinsteinAgentSettings": { + "details": [ + { + "url": "https://developer.salesforce.com/docs/atlas.en-us.api_meta.meta/api_meta/meta_einsteinagentsettings.htm", + "name": "Metadata API Documentation" + } + ], + "scratchDefinitions": { + "professional": "{\"orgName\":\"Sample Org\",\"edition\":\"professional\",\"features\":[\"CASECLASSIFICATION\",\"CASEWRAPUP\"]}", + "group": "{\"orgName\":\"Sample Org\",\"edition\":\"group\",\"features\":[\"CASECLASSIFICATION\",\"CASEWRAPUP\"]}", + "enterprise": "{\"orgName\":\"Sample Org\",\"edition\":\"enterprise\",\"features\":[\"CASECLASSIFICATION\",\"CASEWRAPUP\"]}", + "developer": "{\"orgName\":\"Sample Org\",\"edition\":\"developer\",\"features\":[\"CASECLASSIFICATION\",\"CASEWRAPUP\"]}" + }, + "knownIssues": null, + "channels": { + "unlockedPackagingWithoutNamespace": false, + "unlockedPackagingWithNamespace": false, + "toolingApi": false, + "sourceTracking": true, + "metadataApi": true, + "managedPackaging": false, + "classicUnmanagedPackaging": false, + "classicManagedPackaging": false, + "changeSets": false, + "apexMetadataApi": false + } + }, "EclairGeoData": { "details": [ { @@ -7243,6 +8008,33 @@ "apexMetadataApi": false } }, + "DocumentGenerationSetting": { + "details": [ + { + "url": "https://developer.salesforce.com/docs/atlas.en-us.api_meta.meta/api_meta/meta_documentgenerationsetting.htm", + "name": "Metadata API Documentation" + } + ], + "scratchDefinitions": { + "professional": "{\"orgName\":\"Sample Org\",\"edition\":\"professional\",\"features\":[\"DOCGEN\"]}", + "group": "{\"orgName\":\"Sample Org\",\"edition\":\"group\",\"features\":[\"DOCGEN\"]}", + "enterprise": "{\"orgName\":\"Sample Org\",\"edition\":\"enterprise\",\"features\":[\"DOCGEN\"]}", + "developer": "{\"orgName\":\"Sample Org\",\"edition\":\"developer\",\"features\":[\"DOCGEN\"]}" + }, + "knownIssues": null, + "channels": { + "unlockedPackagingWithoutNamespace": true, + "unlockedPackagingWithNamespace": true, + "toolingApi": true, + "sourceTracking": true, + "metadataApi": true, + "managedPackaging": true, + "classicUnmanagedPackaging": true, + "classicManagedPackaging": true, + "changeSets": true, + "apexMetadataApi": false + } + }, "DocumentFolder": { "details": [ { @@ -7351,6 +8143,60 @@ "apexMetadataApi": false } }, + "DiscoveryGoal": { + "details": [ + { + "url": "https://developer.salesforce.com/docs/atlas.en-us.api_meta.meta/api_meta/meta_discoverygoal.htm", + "name": "Metadata API Documentation" + } + ], + "scratchDefinitions": { + "professional": "{\"orgName\":\"Sample Org\",\"edition\":\"professional\",\"features\":[\"CGANALYTICS\"]}", + "group": "{\"orgName\":\"Sample Org\",\"edition\":\"group\",\"features\":[\"CGANALYTICS\"]}", + "enterprise": "{\"orgName\":\"Sample Org\",\"edition\":\"enterprise\",\"features\":[\"CGANALYTICS\"]}", + "developer": "{\"orgName\":\"Sample Org\",\"edition\":\"developer\",\"features\":[\"CGANALYTICS\"]}" + }, + "knownIssues": null, + "channels": { + "unlockedPackagingWithoutNamespace": true, + "unlockedPackagingWithNamespace": true, + "toolingApi": false, + "sourceTracking": true, + "metadataApi": true, + "managedPackaging": true, + "classicUnmanagedPackaging": true, + "classicManagedPackaging": true, + "changeSets": true, + "apexMetadataApi": false + } + }, + "DiscoveryAIModel": { + "details": [ + { + "url": "https://developer.salesforce.com/docs/atlas.en-us.api_meta.meta/api_meta/meta_discoveryaimodel.htm", + "name": "Metadata API Documentation" + } + ], + "scratchDefinitions": { + "professional": "{\"orgName\":\"Sample Org\",\"edition\":\"professional\",\"features\":[\"CGANALYTICS\"]}", + "group": "{\"orgName\":\"Sample Org\",\"edition\":\"group\",\"features\":[\"CGANALYTICS\"]}", + "enterprise": "{\"orgName\":\"Sample Org\",\"edition\":\"enterprise\",\"features\":[\"CGANALYTICS\"]}", + "developer": "{\"orgName\":\"Sample Org\",\"edition\":\"developer\",\"features\":[\"CGANALYTICS\"]}" + }, + "knownIssues": null, + "channels": { + "unlockedPackagingWithoutNamespace": true, + "unlockedPackagingWithNamespace": true, + "toolingApi": false, + "sourceTracking": true, + "metadataApi": true, + "managedPackaging": true, + "classicUnmanagedPackaging": true, + "classicManagedPackaging": true, + "changeSets": true, + "apexMetadataApi": false + } + }, "DevHubSettings": { "details": [ { @@ -7438,10 +8284,10 @@ } ], "scratchDefinitions": { - "professional": "{\"orgName\":\"Sample Org\",\"edition\":\"professional\",\"features\":[\"DECISIONTABLE\"]}", - "group": "{\"orgName\":\"Sample Org\",\"edition\":\"group\",\"features\":[\"DECISIONTABLE\"]}", - "enterprise": "{\"orgName\":\"Sample Org\",\"edition\":\"enterprise\",\"features\":[\"DECISIONTABLE\"]}", - "developer": "{\"orgName\":\"Sample Org\",\"edition\":\"developer\",\"features\":[\"DECISIONTABLE\"]}" + "professional": "{\"orgName\":\"Sample Org\",\"edition\":\"professional\",\"features\":[\"B2BLOYALTYMANAGEMENT\"]}", + "group": "{\"orgName\":\"Sample Org\",\"edition\":\"group\",\"features\":[\"B2BLOYALTYMANAGEMENT\"]}", + "enterprise": "{\"orgName\":\"Sample Org\",\"edition\":\"enterprise\",\"features\":[\"B2BLOYALTYMANAGEMENT\"]}", + "developer": "{\"orgName\":\"Sample Org\",\"edition\":\"developer\",\"features\":[\"B2BLOYALTYMANAGEMENT\"]}" }, "knownIssues": null, "channels": { @@ -7465,10 +8311,10 @@ } ], "scratchDefinitions": { - "professional": "{\"orgName\":\"Sample Org\",\"edition\":\"professional\",\"features\":[\"DECISIONTABLE\"]}", - "group": "{\"orgName\":\"Sample Org\",\"edition\":\"group\",\"features\":[\"DECISIONTABLE\"]}", - "enterprise": "{\"orgName\":\"Sample Org\",\"edition\":\"enterprise\",\"features\":[\"DECISIONTABLE\"]}", - "developer": "{\"orgName\":\"Sample Org\",\"edition\":\"developer\",\"features\":[\"DECISIONTABLE\"]}" + "professional": "{\"orgName\":\"Sample Org\",\"edition\":\"professional\",\"features\":[\"B2BLOYALTYMANAGEMENT\"]}", + "group": "{\"orgName\":\"Sample Org\",\"edition\":\"group\",\"features\":[\"B2BLOYALTYMANAGEMENT\"]}", + "enterprise": "{\"orgName\":\"Sample Org\",\"edition\":\"enterprise\",\"features\":[\"B2BLOYALTYMANAGEMENT\"]}", + "developer": "{\"orgName\":\"Sample Org\",\"edition\":\"developer\",\"features\":[\"B2BLOYALTYMANAGEMENT\"]}" }, "knownIssues": null, "channels": { @@ -7528,6 +8374,32 @@ "apexMetadataApi": false } }, + "DataStreamDefinition": { + "details": [ + { + "url": "https://developer.salesforce.com/docs/atlas.en-us.api_meta.meta/api_meta/meta_datastreamdefinition.htm", + "name": "Metadata API Documentation" + } + ], + "scratchDefinitions": { + "professional": "{\"orgName\":\"Sample Org\",\"edition\":\"professional\",\"features\":[\"CUSTOMERDATAPLATFORM\"]}", + "enterprise": "{\"orgName\":\"Sample Org\",\"edition\":\"enterprise\",\"features\":[\"CUSTOMERDATAPLATFORM\"]}", + "developer": "{\"orgName\":\"Sample Org\",\"edition\":\"developer\",\"features\":[\"CUSTOMERDATAPLATFORM\"]}" + }, + "knownIssues": null, + "channels": { + "unlockedPackagingWithoutNamespace": true, + "unlockedPackagingWithNamespace": true, + "toolingApi": true, + "sourceTracking": true, + "metadataApi": true, + "managedPackaging": true, + "classicUnmanagedPackaging": true, + "classicManagedPackaging": true, + "changeSets": true, + "apexMetadataApi": false + } + }, "DataSourceObject": { "details": [ { @@ -7536,16 +8408,44 @@ } ], "scratchDefinitions": { - "enterprise": "{\"orgName\":\"Sample Org\",\"edition\":\"enterprise\",\"features\":[\"CUSTOMERDATAPLATFORM\"]}" + "professional": "{\"orgName\":\"Sample Org\",\"edition\":\"professional\",\"features\":[\"CUSTOMERDATAPLATFORM\"]}", + "enterprise": "{\"orgName\":\"Sample Org\",\"edition\":\"enterprise\",\"features\":[\"CUSTOMERDATAPLATFORM\"]}", + "developer": "{\"orgName\":\"Sample Org\",\"edition\":\"developer\",\"features\":[\"CUSTOMERDATAPLATFORM\"]}" }, "knownIssues": null, "channels": { "unlockedPackagingWithoutNamespace": true, "unlockedPackagingWithNamespace": true, "toolingApi": true, - "sourceTracking": false, + "sourceTracking": true, "metadataApi": true, - "managedPackaging": false, + "managedPackaging": true, + "classicUnmanagedPackaging": false, + "classicManagedPackaging": false, + "changeSets": false, + "apexMetadataApi": false + } + }, + "DataSource": { + "details": [ + { + "url": "https://developer.salesforce.com/docs/atlas.en-us.api_meta.meta/api_meta/meta_datasource.htm", + "name": "Metadata API Documentation" + } + ], + "scratchDefinitions": { + "professional": "{\"orgName\":\"Sample Org\",\"edition\":\"professional\",\"features\":[\"CUSTOMERDATAPLATFORM\"]}", + "enterprise": "{\"orgName\":\"Sample Org\",\"edition\":\"enterprise\",\"features\":[\"CUSTOMERDATAPLATFORM\"]}", + "developer": "{\"orgName\":\"Sample Org\",\"edition\":\"developer\",\"features\":[\"CUSTOMERDATAPLATFORM\"]}" + }, + "knownIssues": null, + "channels": { + "unlockedPackagingWithoutNamespace": true, + "unlockedPackagingWithNamespace": true, + "toolingApi": true, + "sourceTracking": true, + "metadataApi": true, + "managedPackaging": true, "classicUnmanagedPackaging": false, "classicManagedPackaging": false, "changeSets": false, @@ -7601,6 +8501,32 @@ "apexMetadataApi": false } }, + "DataConnectorS3": { + "details": [ + { + "url": "https://developer.salesforce.com/docs/atlas.en-us.api_meta.meta/api_meta/meta_dataconnectors3.htm", + "name": "Metadata API Documentation" + } + ], + "scratchDefinitions": { + "professional": "{\"orgName\":\"Sample Org\",\"edition\":\"professional\",\"features\":[\"CUSTOMERDATAPLATFORM\"]}", + "enterprise": "{\"orgName\":\"Sample Org\",\"edition\":\"enterprise\",\"features\":[\"CUSTOMERDATAPLATFORM\"]}", + "developer": "{\"orgName\":\"Sample Org\",\"edition\":\"developer\",\"features\":[\"CUSTOMERDATAPLATFORM\"]}" + }, + "knownIssues": null, + "channels": { + "unlockedPackagingWithoutNamespace": true, + "unlockedPackagingWithNamespace": true, + "toolingApi": true, + "sourceTracking": true, + "metadataApi": true, + "managedPackaging": true, + "classicUnmanagedPackaging": false, + "classicManagedPackaging": false, + "changeSets": false, + "apexMetadataApi": false + } + }, "DataCategoryGroup": { "details": [ { @@ -7907,10 +8833,9 @@ } ], "scratchDefinitions": { - "professional": "{\"orgName\":\"Sample Org\",\"edition\":\"professional\",\"features\":[\"FIELDAUDITTRAIL\"]}", - "group": "{\"orgName\":\"Sample Org\",\"edition\":\"group\",\"features\":[\"FIELDAUDITTRAIL\"]}", - "enterprise": "{\"orgName\":\"Sample Org\",\"edition\":\"enterprise\",\"features\":[\"FIELDAUDITTRAIL\"]}", - "developer": "{\"orgName\":\"Sample Org\",\"edition\":\"developer\",\"features\":[\"FIELDAUDITTRAIL\"]}" + "professional": "{\"orgName\":\"Sample Org\",\"edition\":\"professional\",\"features\":[\"CUSTOMERDATAPLATFORM\",\"FIELDAUDITTRAIL\"]}", + "enterprise": "{\"orgName\":\"Sample Org\",\"edition\":\"enterprise\",\"features\":[\"CUSTOMERDATAPLATFORM\",\"FIELDAUDITTRAIL\"]}", + "developer": "{\"orgName\":\"Sample Org\",\"edition\":\"developer\",\"features\":[\"CUSTOMERDATAPLATFORM\",\"FIELDAUDITTRAIL\"]}" }, "knownIssues": [ { @@ -8356,6 +9281,53 @@ "apexMetadataApi": false } }, + "ConversationVendorInfo": { + "details": [ + { + "url": "https://developer.salesforce.com/docs/atlas.en-us.api_meta.meta/api_meta/meta_conversationvendorinfo.htm", + "name": "Metadata API Documentation" + } + ], + "scratchDefinitions": { + "enterprise": "{\"orgName\":\"Sample Org\",\"edition\":\"enterprise\",\"features\":[\"SERVICECLOUDVOICEPARTNERTELEPHONY\"]}", + "developer": "{\"orgName\":\"Sample Org\",\"edition\":\"developer\",\"features\":[\"SERVICECLOUDVOICEPARTNERTELEPHONY\"]}" + }, + "knownIssues": null, + "channels": { + "unlockedPackagingWithoutNamespace": true, + "unlockedPackagingWithNamespace": true, + "toolingApi": true, + "sourceTracking": true, + "metadataApi": true, + "managedPackaging": true, + "classicUnmanagedPackaging": true, + "classicManagedPackaging": true, + "changeSets": true, + "apexMetadataApi": false + } + }, + "ConversationVendorFieldDef": { + "details": [ + { + "url": "https://developer.salesforce.com/docs/atlas.en-us.api_meta.meta/api_meta/meta_conversationvendorfielddef.htm", + "name": "Metadata API Documentation" + } + ], + "scratchDefinitions": null, + "knownIssues": null, + "channels": { + "unlockedPackagingWithoutNamespace": false, + "unlockedPackagingWithNamespace": false, + "toolingApi": false, + "sourceTracking": false, + "metadataApi": false, + "managedPackaging": false, + "classicUnmanagedPackaging": false, + "classicManagedPackaging": false, + "changeSets": false, + "apexMetadataApi": false + } + }, "ContractSettings": { "details": [ { @@ -8658,6 +9630,33 @@ "apexMetadataApi": false } }, + "CommerceSettings": { + "details": [ + { + "url": "https://developer.salesforce.com/docs/atlas.en-us.api_meta.meta/api_meta/meta_commercesettings.htm", + "name": "Metadata API Documentation" + } + ], + "scratchDefinitions": { + "professional": "{\"orgName\":\"Sample Org\",\"edition\":\"professional\"}", + "group": "{\"orgName\":\"Sample Org\",\"edition\":\"group\"}", + "enterprise": "{\"orgName\":\"Sample Org\",\"edition\":\"enterprise\"}", + "developer": "{\"orgName\":\"Sample Org\",\"edition\":\"developer\"}" + }, + "knownIssues": null, + "channels": { + "unlockedPackagingWithoutNamespace": false, + "unlockedPackagingWithNamespace": false, + "toolingApi": false, + "sourceTracking": true, + "metadataApi": true, + "managedPackaging": false, + "classicUnmanagedPackaging": false, + "classicManagedPackaging": false, + "changeSets": false, + "apexMetadataApi": false + } + }, "CommandAction": { "details": [ { @@ -8962,19 +9961,14 @@ "name": "Metadata API Documentation" } ], - "scratchDefinitions": { - "professional": "{\"orgName\":\"Sample Org\",\"edition\":\"professional\",\"features\":[\"CASECLASSIFICATION\"]}", - "group": "{\"orgName\":\"Sample Org\",\"edition\":\"group\",\"features\":[\"CASECLASSIFICATION\"]}", - "enterprise": "{\"orgName\":\"Sample Org\",\"edition\":\"enterprise\",\"features\":[\"CASECLASSIFICATION\"]}", - "developer": "{\"orgName\":\"Sample Org\",\"edition\":\"developer\",\"features\":[\"CASECLASSIFICATION\"]}" - }, + "scratchDefinitions": null, "knownIssues": null, "channels": { "unlockedPackagingWithoutNamespace": false, "unlockedPackagingWithNamespace": false, "toolingApi": false, - "sourceTracking": true, - "metadataApi": true, + "sourceTracking": false, + "metadataApi": false, "managedPackaging": false, "classicUnmanagedPackaging": false, "classicManagedPackaging": false, @@ -9171,6 +10165,33 @@ "apexMetadataApi": false } }, + "CallCenterRoutingMap": { + "details": [ + { + "url": "https://developer.salesforce.com/docs/atlas.en-us.api_meta.meta/api_meta/meta_callcenterroutingmap.htm", + "name": "Metadata API Documentation" + } + ], + "scratchDefinitions": { + "professional": "{\"orgName\":\"Sample Org\",\"edition\":\"professional\",\"features\":[\"SCRT2CONVERSATION\",\"SERVICECLOUDVOICEBYOTWITHOMNIFLOW2\"],\"settings\":{\"serviceCloudVoiceSettings\":{\"enableServiceCloudVoice\":true}}}", + "group": "{\"orgName\":\"Sample Org\",\"edition\":\"group\",\"features\":[\"SCRT2CONVERSATION\",\"SERVICECLOUDVOICEBYOTWITHOMNIFLOW2\"],\"settings\":{\"serviceCloudVoiceSettings\":{\"enableServiceCloudVoice\":true}}}", + "enterprise": "{\"orgName\":\"Sample Org\",\"edition\":\"enterprise\",\"features\":[\"SERVICECLOUDVOICEBYOTWITHOMNIFLOW2\",\"SERVICECLOUDVOICEPARTNERTELEPHONY\"],\"settings\":{\"serviceCloudVoiceSettings\":{\"enableSCVExternalTelephony\":true}}}", + "developer": "{\"orgName\":\"Sample Org\",\"edition\":\"developer\",\"features\":[\"SERVICECLOUDVOICEBYOTWITHOMNIFLOW2\",\"SERVICECLOUDVOICEPARTNERTELEPHONY\"],\"settings\":{\"serviceCloudVoiceSettings\":{\"enableSCVExternalTelephony\":true}}}" + }, + "knownIssues": null, + "channels": { + "unlockedPackagingWithoutNamespace": false, + "unlockedPackagingWithNamespace": false, + "toolingApi": false, + "sourceTracking": true, + "metadataApi": true, + "managedPackaging": false, + "classicUnmanagedPackaging": false, + "classicManagedPackaging": false, + "changeSets": false, + "apexMetadataApi": false + } + }, "CallCenter": { "details": [ { @@ -9230,14 +10251,16 @@ } ], "scratchDefinitions": { - "enterprise": "{\"orgName\":\"Sample Org\",\"edition\":\"enterprise\",\"features\":[\"SURVEYADVANCEDFEATURES\"],\"settings\":{\"surveySettings\":{\"enableSurvey\":true,\"enableIndustriesCxmEnabled\":true}}}", - "developer": "{\"orgName\":\"Sample Org\",\"edition\":\"developer\",\"features\":[\"SURVEYADVANCEDFEATURES\"],\"settings\":{\"surveySettings\":{\"enableSurvey\":true,\"enableIndustriesCxmEnabled\":true}}}" + "professional": "{\"orgName\":\"Sample Org\",\"edition\":\"professional\",\"features\":[\"CONTACTTRACINGFOREMPLOYEES\",\"SALESFORCEFEEDBACKMANAGEMENTSTARTER\"],\"settings\":{\"surveySettings\":{\"enableSurvey\":true}}}", + "group": "{\"orgName\":\"Sample Org\",\"edition\":\"group\",\"features\":[\"CONTACTTRACINGFOREMPLOYEES\",\"SALESFORCEFEEDBACKMANAGEMENTSTARTER\"],\"settings\":{\"surveySettings\":{\"enableSurvey\":true}}}", + "enterprise": "{\"orgName\":\"Sample Org\",\"edition\":\"enterprise\",\"features\":[\"SALESFORCEFEEDBACKMANAGEMENTSTARTER\"],\"settings\":{\"surveySettings\":{\"enableSurvey\":true}}}", + "developer": "{\"orgName\":\"Sample Org\",\"edition\":\"developer\",\"features\":[\"SALESFORCEFEEDBACKMANAGEMENTSTARTER\"],\"settings\":{\"surveySettings\":{\"enableSurvey\":true}}}" }, "knownIssues": null, "channels": { "unlockedPackagingWithoutNamespace": true, "unlockedPackagingWithNamespace": true, - "toolingApi": false, + "toolingApi": true, "sourceTracking": true, "metadataApi": true, "managedPackaging": false, @@ -9311,6 +10334,33 @@ "apexMetadataApi": false } }, + "BriefcaseDefinition": { + "details": [ + { + "url": "https://developer.salesforce.com/docs/atlas.en-us.api_meta.meta/api_meta/meta_briefcasedefinition.htm", + "name": "Metadata API Documentation" + } + ], + "scratchDefinitions": { + "professional": "{\"orgName\":\"Sample Org\",\"edition\":\"professional\",\"features\":[\"FIELDSERVICE:1\"],\"settings\":{\"fieldServiceSettings\":{\"fieldServiceOrgPref\":true}}}", + "group": "{\"orgName\":\"Sample Org\",\"edition\":\"group\",\"features\":[\"FIELDSERVICE:1\"],\"settings\":{\"fieldServiceSettings\":{\"fieldServiceOrgPref\":true}}}", + "enterprise": "{\"orgName\":\"Sample Org\",\"edition\":\"enterprise\",\"features\":[\"FIELDSERVICE:1\"],\"settings\":{\"fieldServiceSettings\":{\"fieldServiceOrgPref\":true}}}", + "developer": "{\"orgName\":\"Sample Org\",\"edition\":\"developer\"}" + }, + "knownIssues": null, + "channels": { + "unlockedPackagingWithoutNamespace": true, + "unlockedPackagingWithNamespace": true, + "toolingApi": true, + "sourceTracking": true, + "metadataApi": true, + "managedPackaging": true, + "classicUnmanagedPackaging": true, + "classicManagedPackaging": true, + "changeSets": true, + "apexMetadataApi": false + } + }, "BrandingSet": { "details": [ { @@ -9338,6 +10388,33 @@ "apexMetadataApi": false } }, + "BranchManagementSettings": { + "details": [ + { + "url": "https://developer.salesforce.com/docs/atlas.en-us.api_meta.meta/api_meta/meta_branchmanagementsettings.htm", + "name": "Metadata API Documentation" + } + ], + "scratchDefinitions": { + "professional": "{\"orgName\":\"Sample Org\",\"edition\":\"professional\",\"features\":[\"ASSOCIATIONENGINE\"]}", + "group": "{\"orgName\":\"Sample Org\",\"edition\":\"group\",\"features\":[\"ASSOCIATIONENGINE\"]}", + "enterprise": "{\"orgName\":\"Sample Org\",\"edition\":\"enterprise\",\"features\":[\"ASSOCIATIONENGINE\"]}", + "developer": "{\"orgName\":\"Sample Org\",\"edition\":\"developer\",\"features\":[\"ASSOCIATIONENGINE\"]}" + }, + "knownIssues": null, + "channels": { + "unlockedPackagingWithoutNamespace": false, + "unlockedPackagingWithNamespace": false, + "toolingApi": false, + "sourceTracking": true, + "metadataApi": true, + "managedPackaging": false, + "classicUnmanagedPackaging": false, + "classicManagedPackaging": false, + "changeSets": false, + "apexMetadataApi": false + } + }, "BotVersion": { "details": [ { @@ -9491,6 +10568,33 @@ "apexMetadataApi": false } }, + "BenefitAction": { + "details": [ + { + "url": "https://developer.salesforce.com/docs/atlas.en-us.api_meta.meta/api_meta/meta_benefitaction.htm", + "name": "Metadata API Documentation" + } + ], + "scratchDefinitions": { + "professional": "{\"orgName\":\"Sample Org\",\"edition\":\"professional\",\"features\":[\"B2BLOYALTYMANAGEMENT\"]}", + "group": "{\"orgName\":\"Sample Org\",\"edition\":\"group\",\"features\":[\"B2BLOYALTYMANAGEMENT\"]}", + "enterprise": "{\"orgName\":\"Sample Org\",\"edition\":\"enterprise\",\"features\":[\"B2BLOYALTYMANAGEMENT\"]}", + "developer": "{\"orgName\":\"Sample Org\",\"edition\":\"developer\",\"features\":[\"B2BLOYALTYMANAGEMENT\"]}" + }, + "knownIssues": null, + "channels": { + "unlockedPackagingWithoutNamespace": true, + "unlockedPackagingWithNamespace": true, + "toolingApi": true, + "sourceTracking": true, + "metadataApi": true, + "managedPackaging": true, + "classicUnmanagedPackaging": true, + "classicManagedPackaging": true, + "changeSets": true, + "apexMetadataApi": false + } + }, "BatchProcessJobDefinition": { "details": [ { @@ -9499,10 +10603,10 @@ } ], "scratchDefinitions": { - "professional": "{\"orgName\":\"Sample Org\",\"edition\":\"professional\",\"features\":[\"BATCHMANAGEMENT\"]}", - "group": "{\"orgName\":\"Sample Org\",\"edition\":\"group\",\"features\":[\"BATCHMANAGEMENT\"]}", - "enterprise": "{\"orgName\":\"Sample Org\",\"edition\":\"enterprise\",\"features\":[\"BATCHMANAGEMENT\"]}", - "developer": "{\"orgName\":\"Sample Org\",\"edition\":\"developer\",\"features\":[\"BATCHMANAGEMENT\"]}" + "professional": "{\"orgName\":\"Sample Org\",\"edition\":\"professional\",\"features\":[\"B2BLOYALTYMANAGEMENT\"]}", + "group": "{\"orgName\":\"Sample Org\",\"edition\":\"group\",\"features\":[\"B2BLOYALTYMANAGEMENT\"]}", + "enterprise": "{\"orgName\":\"Sample Org\",\"edition\":\"enterprise\",\"features\":[\"B2BLOYALTYMANAGEMENT\"]}", + "developer": "{\"orgName\":\"Sample Org\",\"edition\":\"developer\",\"features\":[\"B2BLOYALTYMANAGEMENT\"]}" }, "knownIssues": null, "channels": { @@ -9931,10 +11035,10 @@ } ], "scratchDefinitions": { - "professional": "{\"orgName\":\"Sample Org\",\"edition\":\"professional\",\"features\":[\"ENABLEWAITLIST\"]}", - "group": "{\"orgName\":\"Sample Org\",\"edition\":\"group\",\"features\":[\"ENABLEWAITLIST\"]}", - "enterprise": "{\"orgName\":\"Sample Org\",\"edition\":\"enterprise\",\"features\":[\"ENABLEWAITLIST\"]}", - "developer": "{\"orgName\":\"Sample Org\",\"edition\":\"developer\",\"features\":[\"ENABLEWAITLIST\"]}" + "professional": "{\"orgName\":\"Sample Org\",\"edition\":\"professional\",\"features\":[\"ENABLEQUEUE\"]}", + "group": "{\"orgName\":\"Sample Org\",\"edition\":\"group\",\"features\":[\"ENABLEQUEUE\"]}", + "enterprise": "{\"orgName\":\"Sample Org\",\"edition\":\"enterprise\",\"features\":[\"ENABLEQUEUE\"]}", + "developer": "{\"orgName\":\"Sample Org\",\"edition\":\"developer\",\"features\":[\"ENABLEQUEUE\"]}" }, "knownIssues": null, "channels": { @@ -10438,6 +11542,60 @@ "apexMetadataApi": false } }, + "AdvAcctForecastPeriodGroup": { + "details": [ + { + "url": "https://developer.salesforce.com/docs/atlas.en-us.api_meta.meta/api_meta/meta_advacctforecastperiodgroup.htm", + "name": "Metadata API Documentation" + } + ], + "scratchDefinitions": { + "professional": "{\"orgName\":\"Sample Org\",\"edition\":\"professional\",\"features\":[\"INDUSTRIESMFGADVNCDACCFRCSTPILOT\"],\"settings\":{\"industriesManufacturingSettings\":{\"enableIndustriesMfgAdvForecast\":true}}}", + "group": "{\"orgName\":\"Sample Org\",\"edition\":\"group\",\"features\":[\"INDUSTRIESMFGADVNCDACCFRCSTPILOT\"],\"settings\":{\"industriesManufacturingSettings\":{\"enableIndustriesMfgAdvForecast\":true}}}", + "enterprise": "{\"orgName\":\"Sample Org\",\"edition\":\"enterprise\",\"features\":[\"INDUSTRIESMFGADVNCDACCFRCSTPILOT\"],\"settings\":{\"industriesManufacturingSettings\":{\"enableIndustriesMfgAdvForecast\":true}}}", + "developer": "{\"orgName\":\"Sample Org\",\"edition\":\"developer\",\"features\":[\"INDUSTRIESMFGADVNCDACCFRCSTPILOT\"],\"settings\":{\"industriesManufacturingSettings\":{\"enableIndustriesMfgAdvForecast\":true}}}" + }, + "knownIssues": null, + "channels": { + "unlockedPackagingWithoutNamespace": true, + "unlockedPackagingWithNamespace": true, + "toolingApi": true, + "sourceTracking": true, + "metadataApi": true, + "managedPackaging": false, + "classicUnmanagedPackaging": false, + "classicManagedPackaging": false, + "changeSets": false, + "apexMetadataApi": false + } + }, + "AdvAccountForecastSet": { + "details": [ + { + "url": "https://developer.salesforce.com/docs/atlas.en-us.api_meta.meta/api_meta/meta_advaccountforecastset.htm", + "name": "Metadata API Documentation" + } + ], + "scratchDefinitions": { + "professional": "{\"orgName\":\"Sample Org\",\"edition\":\"professional\",\"features\":[\"INDUSTRIESMFGADVNCDACCFRCSTPILOT\"],\"settings\":{\"industriesManufacturingSettings\":{\"enableIndustriesMfgAdvForecast\":true}}}", + "group": "{\"orgName\":\"Sample Org\",\"edition\":\"group\",\"features\":[\"INDUSTRIESMFGADVNCDACCFRCSTPILOT\"],\"settings\":{\"industriesManufacturingSettings\":{\"enableIndustriesMfgAdvForecast\":true}}}", + "enterprise": "{\"orgName\":\"Sample Org\",\"edition\":\"enterprise\",\"features\":[\"INDUSTRIESMFGADVNCDACCFRCSTPILOT\"],\"settings\":{\"industriesManufacturingSettings\":{\"enableIndustriesMfgAdvForecast\":true}}}", + "developer": "{\"orgName\":\"Sample Org\",\"edition\":\"developer\",\"features\":[\"INDUSTRIESMFGADVNCDACCFRCSTPILOT\"],\"settings\":{\"industriesManufacturingSettings\":{\"enableIndustriesMfgAdvForecast\":true}}}" + }, + "knownIssues": null, + "channels": { + "unlockedPackagingWithoutNamespace": true, + "unlockedPackagingWithNamespace": true, + "toolingApi": true, + "sourceTracking": true, + "metadataApi": true, + "managedPackaging": false, + "classicUnmanagedPackaging": false, + "classicManagedPackaging": false, + "changeSets": false, + "apexMetadataApi": false + } + }, "AddressSettings": { "details": [ { @@ -10711,10 +11869,10 @@ } ], "scratchDefinitions": { - "professional": "{\"orgName\":\"Sample Org\",\"edition\":\"professional\",\"features\":[\"HEALTHCLOUDUSER\"],\"settings\":{\"industriesManufacturingSettings\":{\"enableIndustriesMfgAccountForecast\":true}}}", - "group": "{\"orgName\":\"Sample Org\",\"edition\":\"group\",\"features\":[\"HEALTHCLOUDUSER\"],\"settings\":{\"industriesManufacturingSettings\":{\"enableIndustriesMfgAccountForecast\":true}}}", - "enterprise": "{\"orgName\":\"Sample Org\",\"edition\":\"enterprise\",\"features\":[\"HEALTHCLOUDUSER\"],\"settings\":{\"industriesManufacturingSettings\":{\"enableIndustriesMfgAccountForecast\":true}}}", - "developer": "{\"orgName\":\"Sample Org\",\"edition\":\"developer\",\"features\":[\"HEALTHCLOUDUSER\"],\"settings\":{\"industriesManufacturingSettings\":{\"enableIndustriesMfgAccountForecast\":true}}}" + "professional": "{\"orgName\":\"Sample Org\",\"edition\":\"professional\",\"features\":[\"CONSUMERGOODS\"],\"settings\":{\"industriesManufacturingSettings\":{\"enableIndustriesMfgAccountForecast\":true}}}", + "group": "{\"orgName\":\"Sample Org\",\"edition\":\"group\",\"features\":[\"CONSUMERGOODS\"],\"settings\":{\"industriesManufacturingSettings\":{\"enableIndustriesMfgAccountForecast\":true}}}", + "enterprise": "{\"orgName\":\"Sample Org\",\"edition\":\"enterprise\",\"features\":[\"CONSUMERGOODS\"],\"settings\":{\"industriesManufacturingSettings\":{\"enableIndustriesMfgAccountForecast\":true}}}", + "developer": "{\"orgName\":\"Sample Org\",\"edition\":\"developer\",\"features\":[\"CONSUMERGOODS\"],\"settings\":{\"industriesManufacturingSettings\":{\"enableIndustriesMfgAccountForecast\":true}}}" }, "knownIssues": null, "channels": { @@ -10738,10 +11896,10 @@ } ], "scratchDefinitions": { - "professional": "{\"orgName\":\"Sample Org\",\"edition\":\"professional\",\"features\":[\"ACCESSCONTROLPOLICIESPILOT\"]}", - "group": "{\"orgName\":\"Sample Org\",\"edition\":\"group\",\"features\":[\"ACCESSCONTROLPOLICIESPILOT\"]}", - "enterprise": "{\"orgName\":\"Sample Org\",\"edition\":\"enterprise\",\"features\":[\"ACCESSCONTROLPOLICIESPILOT\"]}", - "developer": "{\"orgName\":\"Sample Org\",\"edition\":\"developer\",\"features\":[\"ACCESSCONTROLPOLICIESPILOT\"]}" + "professional": "{\"orgName\":\"Sample Org\",\"edition\":\"professional\",\"features\":[\"EMPLOYEEEXPERIENCE\"]}", + "group": "{\"orgName\":\"Sample Org\",\"edition\":\"group\",\"features\":[\"EMPLOYEEEXPERIENCE\"]}", + "enterprise": "{\"orgName\":\"Sample Org\",\"edition\":\"enterprise\",\"features\":[\"EMPLOYEEEXPERIENCE\"]}", + "developer": "{\"orgName\":\"Sample Org\",\"edition\":\"developer\",\"features\":[\"EMPLOYEEEXPERIENCE\"]}" }, "knownIssues": null, "channels": { @@ -10827,11 +11985,61 @@ "changeSets": false, "apexMetadataApi": false } + }, + "AIApplicationConfig": { + "details": [ + { + "url": "https://developer.salesforce.com/docs/atlas.en-us.api_meta.meta/api_meta/meta_aiapplicationconfig.htm", + "name": "Metadata API Documentation" + } + ], + "scratchDefinitions": { + "professional": "{\"orgName\":\"Sample Org\",\"edition\":\"professional\",\"features\":[\"AIREPLYRECOMMENDATIONS\"]}", + "group": "{\"orgName\":\"Sample Org\",\"edition\":\"group\",\"features\":[\"AIREPLYRECOMMENDATIONS\"]}", + "enterprise": "{\"orgName\":\"Sample Org\",\"edition\":\"enterprise\",\"features\":[\"AIREPLYRECOMMENDATIONS\"]}", + "developer": "{\"orgName\":\"Sample Org\",\"edition\":\"developer\",\"features\":[\"AIREPLYRECOMMENDATIONS\"]}" + }, + "knownIssues": null, + "channels": { + "unlockedPackagingWithoutNamespace": true, + "unlockedPackagingWithNamespace": true, + "toolingApi": true, + "sourceTracking": true, + "metadataApi": true, + "managedPackaging": true, + "classicUnmanagedPackaging": true, + "classicManagedPackaging": true, + "changeSets": true, + "apexMetadataApi": false + } + }, + "AIApplication": { + "details": [ + { + "url": "https://developer.salesforce.com/docs/atlas.en-us.api_meta.meta/api_meta/meta_aiapplication.htm", + "name": "Metadata API Documentation" + } + ], + "scratchDefinitions": { + "professional": "{\"orgName\":\"Sample Org\",\"edition\":\"professional\",\"features\":[\"AIREPLYRECOMMENDATIONS\"]}", + "group": "{\"orgName\":\"Sample Org\",\"edition\":\"group\",\"features\":[\"AIREPLYRECOMMENDATIONS\"]}", + "enterprise": "{\"orgName\":\"Sample Org\",\"edition\":\"enterprise\",\"features\":[\"AIREPLYRECOMMENDATIONS\"]}", + "developer": "{\"orgName\":\"Sample Org\",\"edition\":\"developer\",\"features\":[\"AIREPLYRECOMMENDATIONS\"]}" + }, + "knownIssues": null, + "channels": { + "unlockedPackagingWithoutNamespace": true, + "unlockedPackagingWithNamespace": true, + "toolingApi": true, + "sourceTracking": true, + "metadataApi": true, + "managedPackaging": true, + "classicUnmanagedPackaging": true, + "classicManagedPackaging": true, + "changeSets": true, + "apexMetadataApi": false + } } }, - "versions": { - "selected": 50, - "max": 50, - "min": 43 - } + "versions": { "selected": 52, "max": 52, "min": 43 } } diff --git a/resources/pmd-ruleset.xml b/resources/pmd-ruleset.xml index f19df308..94f786eb 100644 --- a/resources/pmd-ruleset.xml +++ b/resources/pmd-ruleset.xml @@ -63,14 +63,19 @@ - + 3 - - - - - + + 3 + + + 3 + + + 3 + + 1 @@ -122,6 +127,12 @@ + + 1 + + + 1 + 1 @@ -147,13 +158,7 @@ 1 - - 2 - - - 2 - - + 2 @@ -163,7 +168,7 @@ 5 - + 1 diff --git a/schemas/pool/so_pool_config.schema.json b/schemas/pool/so_pool_config.schema.json new file mode 100644 index 00000000..9a0fd1b0 --- /dev/null +++ b/schemas/pool/so_pool_config.schema.json @@ -0,0 +1,109 @@ +{ + "$schema": "http://json-schema.org/draft-07/schema#", + "type": "object", + "properties": { + "pool": { + "type": "object", + "properties": { + "expiry": { + "description": "Number of days after which the pooled scratch org will expire", + "type": "integer" + }, + "config_file_path": { + "description": "(Required) Path to the scratch org definition file", + "type": "string" + }, + "script_file_path": { + "description": "Path to the Script file", + "type": "string" + }, + "tag": { + "description": "(Required) Identifier for the pool created", + "type": "string" + } + }, + "required": [ + "expiry", + "config_file_path", + "tag" + ] + }, + "poolUsers": { + "type": "array", + "items": [ + { + "type": "object", + "properties": { + "max_allocation": { + "type": "integer" + }, + "min_allocation": { + "type": "integer" + }, + "username": { + "type": "string" + }, + "expiry": { + "type": "integer" + }, + "priority": { + "type": "integer" + } + }, + "required": [ + "max_allocation", + "min_allocation", + "username", + "expiry", + "priority" + ] + } + ] + }, + "relax_ip_ranges": { + "type": "array", + "items": [ + { + "type": "object", + "properties": { + "start": { + "type": "string" + }, + "end": { + "type": "string" + } + }, + "required": [ + "start", + "end" + ] + }, + { + "type": "object", + "properties": { + "start": { + "type": "string" + }, + "end": { + "type": "string" + } + }, + "required": [ + "start", + "end" + ] + } + ] + }, + "max_allocation": { + "type": "integer" + } + }, + "oneOf": [ + { "required": ["poolUsers"] }, + { "required": ["relax_ip_ranges"] } + ], + "required": [ + "pool" + ] +} \ No newline at end of file diff --git a/src/commands/sfpowerkit/package/dependencies/install.ts b/src/commands/sfpowerkit/package/dependencies/install.ts index 6452916a..acaa8a24 100644 --- a/src/commands/sfpowerkit/package/dependencies/install.ts +++ b/src/commands/sfpowerkit/package/dependencies/install.ts @@ -7,7 +7,6 @@ import { SfdxProject } from "@salesforce/core"; import { loadSFDX } from "../../../../sfdxnode/GetNodeWrapper"; import { sfdx } from "../../../..//sfdxnode/parallel"; import { SFPowerkit, LoggerLevel } from "../../../../sfpowerkit"; -import { isNullOrUndefined } from "util"; import { get18DigitSalesforceId } from "./../../../../utils/get18DigitSalesforceId"; let retry = require("async-retry"); @@ -152,8 +151,7 @@ export default class Install extends SfdxCommand { ); } - if (isNullOrUndefined(installedpackages) || installedpackages.length == 0) { - this.flags.updateall = true; + if (!installedpackages || installedpackages.length == 0) { installedpackages = []; } @@ -237,6 +235,8 @@ export default class Install extends SfdxCommand { versionNumber; } = await this.getPackageVersionDetails(packageName, versionNumber); + + packageInfo.packageVersionId = packageVersionDetail.versionId; packageInfo.versionNumber = packageVersionDetail.versionNumber; @@ -398,12 +398,16 @@ export default class Install extends SfdxCommand { // Keeping original name so that it can be used in error message if needed let packageName = name; + + // TODO: Some stuff are duplicated here, some code don't need to be executed for every package // First look if it's an alias if (packageAliasesMap[packageName]) { packageName = packageAliasesMap[packageName]; } + + if (packageName.startsWith(packageVersionIdPrefix)) { // Package2VersionId is set directly packageDetail = { @@ -417,13 +421,14 @@ export default class Install extends SfdxCommand { // Get Package version id from package + versionNumber const vers = version.split("."); + this.validateVersionNumber(name,vers) let query = "Select SubscriberPackageVersionId, IsPasswordProtected, IsReleased, MajorVersion, MinorVersion, PatchVersion,BuildNumber "; query += "from Package2Version "; query += `where Package2Id='${packageName}' and MajorVersion=${vers[0]} and MinorVersion=${vers[1]} and PatchVersion=${vers[2]} `; // If Build Number isn't set to LATEST, look for the exact Package Version - if (vers[3] !== "LATEST") { + if (vers.length === 4 && vers[3] !== "LATEST" && typeof(vers[3]) === 'number') { query += `and BuildNumber=${vers[3]} `; } else if (this.flags.usedependencyvalidatedpackages) { query += `and ValidationSkipped = false `; @@ -447,7 +452,7 @@ export default class Install extends SfdxCommand { if (resultPackageId.size === 0) { // Query returned no result - const errorMessage = `Unable to find SubscriberPackageVersionId for dependent package ${name}`; + const errorMessage = `Unable to find version id for dependent package ${name}, Did you create a version of the package yet?`; throw new core.SfdxError(errorMessage); } else { let versionId = resultPackageId.records[0].SubscriberPackageVersionId; @@ -455,9 +460,22 @@ export default class Install extends SfdxCommand { packageDetail = { versionId: versionId, versionNumber: versionNumber }; } } + else + { + const errorMessage = `Unable to find package Id of the package ${name}, Are you missing the package in packageAliases?`; + throw new core.SfdxError(errorMessage); + } return packageDetail; } + private validateVersionNumber(packageName,versionParts){ + if(!(versionParts.length > 1)){ + throw new core.SfdxError(`Invalid dependency version number ${versionParts.join('.')} for package ${packageName}. Valid format is 1.0.0.1 (or) 1.0.0.LATEST`); + } + else if((versionParts.length === 4 && versionParts[3] === 'NEXT')){ + throw new core.SfdxError(`Invalid dependency version number ${versionParts.join('.')} for package ${packageName}, NEXT is not allowed. Valid format is 1.0.0.1 (or) 1.0.0.LATEST`); + } + } private async getInstalledPackages(targetOrg: string) { let packages = []; diff --git a/src/commands/sfpowerkit/package/dependencies/list.ts b/src/commands/sfpowerkit/package/dependencies/list.ts index 48511ec4..56fd451e 100644 --- a/src/commands/sfpowerkit/package/dependencies/list.ts +++ b/src/commands/sfpowerkit/package/dependencies/list.ts @@ -138,13 +138,14 @@ export default class List extends SfdxCommand { // Get Package version id from package + versionNumber const vers = dependency.versionNumber.split("."); + this.validateVersionNumber(dependency.package,vers) let query = "Select SubscriberPackageVersionId, IsPasswordProtected, IsReleased, MajorVersion, MinorVersion, PatchVersion,BuildNumber "; query += "from Package2Version "; query += `where Package2Id='${packageId}' and MajorVersion=${vers[0]} and MinorVersion=${vers[1]} and PatchVersion=${vers[2]} `; // If Build Number isn't set to LATEST, look for the exact Package Version - if (vers[3] !== "LATEST") { + if (vers.length === 4 && vers[3] !== "LATEST" && typeof(vers[3]) === 'number') { query += `and BuildNumber=${vers[3]} `; } else if (this.flags.usedependencyvalidatedpackages) { query += `and ValidationSkipped = false `; @@ -171,4 +172,12 @@ export default class List extends SfdxCommand { } } } + private validateVersionNumber(packageName,versionParts){ + if(!(versionParts.length > 1)){ + throw new core.SfdxError(`Invalid dependency version number ${versionParts.join('.')} for package ${packageName}. Valid format is 1.0.0.1 (or) 1.0.0.LATEST`); + } + else if((versionParts.length === 4 && versionParts[3] === 'NEXT')){ + throw new core.SfdxError(`Invalid dependency version number ${versionParts.join('.')} for package ${packageName}, NEXT is not allowed. Valid format is 1.0.0.1 (or) 1.0.0.LATEST`); + } + } } diff --git a/src/commands/sfpowerkit/pool/fetch.ts b/src/commands/sfpowerkit/pool/fetch.ts index 4b0f65fb..1ad8f8d5 100644 --- a/src/commands/sfpowerkit/pool/fetch.ts +++ b/src/commands/sfpowerkit/pool/fetch.ts @@ -36,11 +36,21 @@ export default class Fetch extends SfdxCommand { description: messages.getMessage("mypoolDescription"), required: false, }), + alias: flags.string({ + char: "a", + description: messages.getMessage("aliasDescription"), + required: false, + }), sendtouser: flags.string({ char: "s", description: messages.getMessage("sendToUserDescription"), required: false, }), + setdefaultusername: flags.boolean({ + char: "d", + description: messages.getMessage("setdefaultusernameDescription"), + required: false, + }), loglevel: flags.enum({ description: "logging level for this command invocation", default: "info", @@ -75,7 +85,9 @@ export default class Fetch extends SfdxCommand { this.hubOrg, this.flags.tag, this.flags.mypool, - this.flags.sendtouser + this.flags.sendtouser, + this.flags.alias, + this.flags.setdefaultusername ); let result = await fetchImpl.execute(); @@ -89,6 +101,8 @@ export default class Fetch extends SfdxCommand { } } this.ux.table(list, ["key", "value"]); + + fetchImpl.loginToScratchOrgIfSfdxAuthURLExists(result); } if (!this.flags.sendtouser) return result as AnyJson; diff --git a/src/commands/sfpowerkit/source/pmd.ts b/src/commands/sfpowerkit/source/pmd.ts index 7afc64ea..def845a0 100644 --- a/src/commands/sfpowerkit/source/pmd.ts +++ b/src/commands/sfpowerkit/source/pmd.ts @@ -1,12 +1,9 @@ import { core, SfdxCommand, FlagsConfig, flags } from "@salesforce/command"; import findJavaHome from "find-java-home"; -import { spawn } from "child_process"; +import { spawnSync } from "child_process"; import FileUtils from "../../../utils/fileutils"; -import { SFPowerkit, LoggerLevel } from "../../../sfpowerkit"; import { extract } from "../../../utils/extract"; -import { isNullOrUndefined } from "util"; -import * as xml2js from "xml2js"; -import { SfdxError } from "@salesforce/core"; +import { SfdxError, Logger, SfdxProject } from "@salesforce/core"; const request = require("request"); const fs = require("fs"); @@ -23,18 +20,26 @@ export default class Pmd extends SfdxCommand { public static description = messages.getMessage("commandDescription"); public static examples = [`$ sfdx sfpowerkit:source:pmd`]; - protected static flagsConfig: FlagsConfig = { - directory: flags.string({ + directory: flags.directory({ required: false, char: "d", description: messages.getMessage("directoryFlagDescription"), + exclusive: ['filelist'], }), ruleset: flags.string({ required: false, char: "r", description: messages.getMessage("rulesetFlagDescription"), + exclusive: ['rulesets'], + }), + + rulesets: flags.string({ + required: false, + char: "R", + description: messages.getMessage("rulesetsFlagDescription"), + exclusive: ['ruleset'], }), format: flags.string({ @@ -43,169 +48,181 @@ export default class Pmd extends SfdxCommand { default: "text", description: messages.getMessage("formatFlagDescription"), }), + + filelist: flags.filepath({ + required: false, + description: messages.getMessage("filelistFlagDescription"), + exclusive: ['directory'], + }), + report: flags.filepath({ required: false, - char: "o", - default: "pmd-output", description: messages.getMessage("reportFlagDescription"), + exclusive: ["reportfile"], }), + + reportfile: flags.filepath({ + required: false, + char: "o", + description: messages.getMessage("reportfileFlagDescription"), + exclusive: ["report"], + }), + javahome: flags.string({ required: false, description: messages.getMessage("javaHomeFlagDescription"), }), - supressoutput: flags.boolean({ + + failonviolation: flags.boolean({ + required: false, + description: messages.getMessage("failonviolationFlagDescription"), + default: true, + allowNo: true, + }), + + minimumpriority: flags.integer({ + required: false, + description: messages.getMessage("minimumpriorityFlagDescription"), + }), + + shortnames: flags.boolean({ required: false, + description: messages.getMessage("shortnamesFlagDescription"), default: false, - description: messages.getMessage("supressoutputFlagDescription"), + allowNo: true, }), - version: flags.string({ + + showsuppressed: flags.boolean({ required: false, - default: "6.30.0", - description: messages.getMessage("versionFlagDescription"), + description: messages.getMessage("showsuppressedFlagDescription"), + default: false, + allowNo: true, + }), + + suppressmarker: flags.string({ + required: false, + description: messages.getMessage("suppressmarkerFlagDescription"), }), - loglevel: flags.enum({ - description: "logging level for this command invocation", - default: "info", + + version: flags.string({ required: false, - options: [ - "trace", - "debug", - "info", - "warn", - "error", - "fatal", - "TRACE", - "DEBUG", - "INFO", - "WARN", - "ERROR", - "FATAL", - ], + default: "6.34.0", + description: messages.getMessage("versionFlagDescription"), }), }; // Set this to true if your command requires a project workspace; 'requiresProject' is false by default // protected static requiresProject = true; - private javahome; + protected initLoggerAndUx(): Promise { + this.logger = new Logger({ + name: this.statics.name, + streams: [ + { + stream: process.stderr, + level: Logger.getRoot().getLevel(), + } + ] + }); + return super.initLoggerAndUx(); + } public async run(): Promise { - SFPowerkit.setLogLevel(this.flags.loglevel, this.flags.json); - - if (isNullOrUndefined(this.flags.javahome)) { - this.javahome = await this.findJavaHomeAsync(); - SFPowerkit.log(`Found Java Home at ${this.javahome}`, LoggerLevel.INFO); + // setup result display + this.result.display = function() { + if (typeof this.data === "string") { + process.stdout.write(this.data); + } else { + process.stdout.write(JSON.stringify(this.data, null, 2)); + } } //Download PMD - let cache_directory = FileUtils.getGlobalCacheDir(); - let pmd_cache_directory = path.join(cache_directory, "pmd"); - - if ( - !fs.existsSync( - path.join(pmd_cache_directory, `pmd-bin-${this.flags.version}`) - ) - ) { - SFPowerkit.log("Initiating Download of PMD", LoggerLevel.INFO); - if (!fs.existsSync(pmd_cache_directory)) - fs.mkdirSync(pmd_cache_directory); - await this.downloadPMD(this.flags.version, pmd_cache_directory); - SFPowerkit.log(`Downloaded PMD ${this.flags.version}`, LoggerLevel.INFO); + const cacheDirectory = FileUtils.getGlobalCacheDir(); + const pmdCacheDirectory = path.join(cacheDirectory, "pmd"); + const pmdHome = path.join(pmdCacheDirectory, `pmd-bin-${this.flags.version}`) + + if (!fs.existsSync(pmdHome)) { + this.logger.info(`Initiating Download of PMD version ${this.flags.version}`); + if (!fs.existsSync(pmdCacheDirectory)) + fs.mkdirSync(pmdCacheDirectory); + await this.downloadPMD(this.flags.version, pmdCacheDirectory); + this.logger.info(`Downloaded PMD ${this.flags.version}`); await extract( - path.join(pmd_cache_directory, "pmd.zip"), - pmd_cache_directory + path.join(pmdCacheDirectory, "pmd.zip"), + pmdCacheDirectory ); - SFPowerkit.log(`Extracted PMD ${this.flags.version}`, LoggerLevel.INFO); + this.logger.info(`Extracted PMD ${this.flags.version}`); } - const pmdClassPath = path.join( - pmd_cache_directory, - `pmd-bin-${this.flags.version}`, - "lib", - "*" - ); + this.logger.info(`Using PMD release ${this.flags.version}`); - const pmdOutputPath = path.join( - pmd_cache_directory, - `pmd-bin-${this.flags.version}`, - "sf-pmd-output.xml" - ); + const javaHome = await this.getJavaHome(); + this.logger.info(`Java Home set to "${javaHome}"`); - //Directory to be scanned - let packageDirectory = isNullOrUndefined(this.flags.directory) - ? await SFPowerkit.getDefaultFolder() - : this.flags.directory; + const pmdOptions = await this.commandOptions(pmdHome); + this.logger.debug(`PMD command line: ${pmdOptions.join(" ")}`); - let ruleset = this.getvalidatedRuleSet(this.flags.ruleset); + const pmdCmd = spawnSync( + path.join(javaHome, "bin", "java"), + pmdOptions, + ); - SFPowerkit.log(`PMD release ${this.flags.version}`, LoggerLevel.INFO); - SFPowerkit.log(`Now analyzing ${packageDirectory}`, LoggerLevel.INFO); + if (pmdCmd.status === null) { + if (pmdCmd.signal) { + // PMD was interrupted by a signal + const err = new SfdxError(`PMD was interrupted by signal "${pmdCmd.signal}"`); + err.exitCode = 255; + throw err; + } - let dir = path.parse(this.flags.report).dir; - if (!fs.existsSync(dir)) { - FileUtils.mkDirByPathSync(dir); + const err = new SfdxError(`Could not run PMD: "${pmdCmd.error}"`); + err.exitCode = 1; + throw err; } - const pmdCmd = spawn(path.join(this.javahome, "bin", "java"), [ - "-cp", - pmdClassPath, - "net.sourceforge.pmd.PMD", - "-l", - "apex", - "-d", - packageDirectory, - "-R", - ruleset, - "-f", - "xml", - "-r", - pmdOutputPath, - ]); - - const pmdCmdForConsoleLogging = spawn( - path.join(this.javahome, "bin", "java"), - [ - "-cp", - pmdClassPath, - "net.sourceforge.pmd.PMD", - "-l", - "apex", - "-d", - packageDirectory, - "-R", - ruleset, - "-f", - this.flags.format, - "-r", - this.flags.report, - ] - ); - - //capture pmd errors - let pmd_error; - let pmd_output; - pmdCmd.stderr.on("data", (data) => { - pmd_error = data; - }); - pmdCmd.stdout.on("data", (data) => { - pmd_output = data; - }); + if (pmdCmd.status === 1) { + const err = new SfdxError(pmdCmd.stderr.toString()); + err.exitCode = 1; + throw err; + } - pmdCmd.on("close", (code) => { - if (code == 4 || code == 0) { - this.parseXmlReport(pmdOutputPath, packageDirectory); + process.exitCode = pmdCmd.status; - if (!this.flags.supressoutput) { - let violations = fs.readFileSync(this.flags.report).toString(); - SFPowerkit.log(violations, LoggerLevel.INFO); - } - } else if (code == 1) { - SFPowerkit.log("PMD Exited with some exceptions ", LoggerLevel.INFO); - SFPowerkit.log(pmd_error.toString(), LoggerLevel.ERROR); + if (this.flags.format === "json" + || this.flags.format === "sarif") { + try { + // try to return an object instead of a plain string + return JSON.parse(pmdCmd.stdout.toString()); + } catch (_) { + return pmdCmd.stdout.toString(); } - }); + } + + return pmdCmd.stdout.toString(); } - private getvalidatedRuleSet(ruleset) { + + /** + * Return the rulests to be used by PMD. + * Substitute the "sfpowerkit" ruleset with the path + * to the ruleset file. The other rulesets are unchanged. + * If the given rulesets param is empty, return the sfpowerkit + * ruleset path. + * + * Since rulesets can also be found in PMD's classpath, + * we let PMD validate the ruleset. + * + * @param rulesets the selected rulesets + * @return the updated ruleset string + * + */ + private rulesets():string { + // handle ruleset flag deprecation + if (this.flags.ruleset && !this.flags.rulesets) { + this.ux.warn("--ruleset has been deprecated and will be removed in a future version. Use --rulesets instead."); + this.flags.rulesets = this.flags.ruleset; + } // end: handle ruleset flag deprecation + //Default Ruleset const sfpowerkitRuleSet = path.join( __dirname, @@ -217,100 +234,135 @@ export default class Pmd extends SfdxCommand { "pmd-ruleset.xml" ); - if (!ruleset || ruleset.toLowerCase() === "sfpowerkit") { + if (!this.flags.rulesets) { return sfpowerkitRuleSet; - } else { - let ruleArray = []; - for (let rulePath of ruleset.split(",")) { - if (rulePath.toLowerCase() === "sfpowerkit") { - ruleArray.push(sfpowerkitRuleSet); - } else { - if (!fs.existsSync(path.resolve(rulePath))) { - throw new SfdxError( - `The given rulesheet ${rulePath} cannot be found` - ); - } - ruleArray.push(rulePath); - } + } + + const rules = this.flags.rulesets.split(','); + for (let i = 0; i < rules.length; i++) { + const rule = rules[i]; + if (rule.toLowerCase() === "sfpowerkit") { + rules[i] = sfpowerkitRuleSet; } - return ruleArray.join(","); } + return rules.join(","); } - private async findJavaHomeAsync(): Promise { + /** + * Returns the java home path. + * If the flag `--javahome` was provided, + * its value is returned. Otherwise this method + * call "findJavaHome" + * + * @return the Java home path + */ + private getJavaHome(): Promise { + if (this.flags.javahome) { + return Promise.resolve(this.flags.javahome); + } + return new Promise((resolve, reject): void => { findJavaHome({ allowJre: true }, (err, res) => { if (err) { return reject(err); } - return resolve(res); + resolve(res); }); }); } - private async downloadPMD( - npm_package_pmd_version: string, - pmd_chache_directory: any - ) { - let file = fs.createWriteStream(path.join(pmd_chache_directory, "pmd.zip")); + private downloadPMD(pmdVersion: string, cacheDirectory: any): Promise { + let file = fs.createWriteStream(path.join(cacheDirectory, "pmd.zip")); - await new Promise((resolve, reject) => { - let stream = request({ - /* Here you should specify the exact link to the file you are trying to download */ - uri: `https://github.com/pmd/pmd/releases/download/pmd_releases%2F${npm_package_pmd_version}/pmd-bin-${npm_package_pmd_version}.zip`, + return new Promise((resolve, reject) => { + request({ + uri: `https://github.com/pmd/pmd/releases/download/pmd_releases%2F${pmdVersion}/pmd-bin-${pmdVersion}.zip`, }) .pipe(file) .on("finish", () => { resolve(); }) - .on("error", (error) => { + .on("error", error => { reject(error); }); - }).catch((error) => { - SFPowerkit.log(`Unable to download: ${error}`, LoggerLevel.ERROR); }); } - protected parseXmlReport( - xmlReport: string, - moduleName: string - ): [number, number] { - let fileCount = 0; - let violationCount = 0; - - let reportContent: string = fs.readFileSync(xmlReport, "utf-8"); - xml2js.parseString(reportContent, (err, data) => { - // If the file is not XML, or is not from PMD, return immediately - if (!data || !data.pmd) { - SFPowerkit.log( - `Empty or unrecognized PMD xml report ${xmlReport}`, - LoggerLevel.ERROR - ); - return null; - } + /** + * returns the full path of the default package. + * + * @returns the full path of the default package + */ + private async getDefaultPackagePath():Promise { + if (!this.project) { + this.project = await SfdxProject.resolve(); + } + return this.project.getDefaultPackage().fullPath; + } - if (!data.pmd.file || data.pmd.file.length === 0) { - // No files with violations, return now that it has been marked for upload - SFPowerkit.log( - `A PMD report was found for module '${moduleName}' but it contains no violations`, - LoggerLevel.INFO - ); - return null; - } + /** + * Returns the PMD command line options which matches this + * command flags. + * + * @param pmdHome PMD install dir path + * @return the PMD command line options + */ + private async commandOptions(pmdHome:string):Promise { + const pmdClassPath = path.join(pmdHome, "lib", "*"); + + const pmdOptions = [ + "-classpath", + pmdClassPath, + "net.sourceforge.pmd.PMD", + "-language", + "apex", + "-rulesets", + this.rulesets(), + "-format", + this.flags.format, + "-failOnViolation", + this.flags.failonviolation ? "true" : "false", + ]; + + if (this.flags.reportfile) { + pmdOptions.push("-reportfile"); + pmdOptions.push(this.flags.reportfile); + } else if (this.flags.report) { + this.ux.warn("--report is deprecated and will be removed in a future version. User --reportfile instead"); + pmdOptions.push("-reportfile"); + pmdOptions.push(this.flags.report); + } - data.pmd.file.forEach((file: any) => { - if (file.violation) { - fileCount++; - violationCount += file.violation.length; - } - }); + if (!this.flags.filelist && !this.flags.directory) { + // use default package dir + pmdOptions.push("-dir"); + pmdOptions.push(await this.getDefaultPackagePath()); + } else if (this.flags.filelist) { + pmdOptions.push("-filelist"); + pmdOptions.push(this.flags.filelist); + } else if (this.flags.directory) { + pmdOptions.push("-dir"); + pmdOptions.push(this.flags.directory); + } - SFPowerkit.log( - `PMD analyzation complete for module '${moduleName}' containing ${violationCount} issues, Report available at ${this.flags.report}`, - LoggerLevel.INFO - ); - }); + if (this.flags.minimumpriority) { + pmdOptions.push("-minimumpriority"); + pmdOptions.push(this.flags.minimumpriority); + } + + if (this.flags.shortnames) { + pmdOptions.push("-shortnames"); + } + + if (this.flags.showsuppressed) { + pmdOptions.push("-showsuppressed"); + } + + if (this.flags.suppressmarker) { + pmdOptions.push("-suppressmarker"); + pmdOptions.push(this.flags.suppressmarker); + } - return [violationCount, fileCount]; + return pmdOptions; } } diff --git a/src/impl/metadata/metadataFiles.ts b/src/impl/metadata/metadataFiles.ts index 97d90be4..2af28ea9 100644 --- a/src/impl/metadata/metadataFiles.ts +++ b/src/impl/metadata/metadataFiles.ts @@ -3,7 +3,7 @@ import { MetadataInfo, METADATA_INFO, MetadataDescribe, - SOURCE_EXTENSION_REGEX + SOURCE_EXTENSION_REGEX, } from "./metadataInfo"; import FileUtils from "../../utils/fileutils"; import * as _ from "lodash"; @@ -137,7 +137,7 @@ export default class MetadataFiles { var metadataFiles: string[] = FileUtils.getAllFilesSync(srcFolder); let keys = Object.keys(METADATA_INFO); if (Array.isArray(metadataFiles) && metadataFiles.length > 0) { - metadataFiles.forEach(metadataFile => { + metadataFiles.forEach((metadataFile) => { let found = false; for (let i = 0; i < keys.length; i++) { @@ -166,6 +166,11 @@ export default class MetadataFiles { if (METADATA_INFO[keys[i]].isChildComponent) { let fileParts = metadataFile.split(SEP); let parentName = fileParts[fileParts.length - 3]; + if (keys[i] === "CustomField" && parentName === "Activity") { + //Add Activity fiels on Task and Event for reconcile + METADATA_INFO[keys[i]].components.push("Task." + name); + METADATA_INFO[keys[i]].components.push("Event." + name); + } name = parentName + "." + name; } @@ -196,7 +201,7 @@ export default class MetadataFiles { } }); } else { - keys.forEach(key => { + keys.forEach((key) => { if (_.isNil(METADATA_INFO[key].files)) { METADATA_INFO[key].files = []; METADATA_INFO[key].components = []; @@ -214,7 +219,7 @@ export default class MetadataFiles { if (!packageDirectories || packageDirectories.length == 0) { return false; } - const moduleFolder = packageDirectories.find(packageFolder => { + const moduleFolder = packageDirectories.find((packageFolder) => { let packageFolderNormalized = path.relative("", packageFolder); return filePath.startsWith(packageFolderNormalized); }); diff --git a/src/impl/metadata/retriever/metadataRetriever.ts b/src/impl/metadata/retriever/metadataRetriever.ts index f00b83bb..0e14e88e 100644 --- a/src/impl/metadata/retriever/metadataRetriever.ts +++ b/src/impl/metadata/retriever/metadataRetriever.ts @@ -96,6 +96,9 @@ export default class MetadataRetriever { if (items === undefined || items === null) { items = []; } + if(!Array.isArray(items)){ + items=[items]; + } return items; } diff --git a/src/impl/pool/scratchorg/poolCreateImpl.ts b/src/impl/pool/scratchorg/poolCreateImpl.ts index 4809ffce..6f2e6128 100644 --- a/src/impl/pool/scratchorg/poolCreateImpl.ts +++ b/src/impl/pool/scratchorg/poolCreateImpl.ts @@ -10,6 +10,7 @@ import FileUtils from "../../../utils/fileutils"; import * as path from "path"; import * as rimraf from "rimraf"; import { SfdxApi } from "../../../sfdxnode/types"; +import Ajv from "ajv"; export default class PoolCreateImpl { private hubConn: Connection; @@ -25,6 +26,31 @@ export default class PoolCreateImpl { private scriptExecutorWrappedForBottleneck; private ipRangeRelaxerWrappedForBottleneck; + private validateSoPoolConfig( + soPoolConfig: PoolConfig + ): void { + + let schema = fs.readJSONSync( + path.join(__dirname, "..", "..", "..", "..", "schemas", "pool", "so_pool_config.schema.json"), + {encoding: "UTF-8"} + ); + + let validator = new Ajv({allErrors: true}).compile(schema); + let validationResult = validator(soPoolConfig); + + if (!validationResult) { + let errorMsg: string = + `SO Pool Config does not meet schema requirements, ` + + `found ${validator.errors.length} validation errors:\n`; + + validator.errors.forEach((error,errorNum) => { + errorMsg += `\n${errorNum+1}: ${error.schemaPath}: ${error.message} ${JSON.stringify(error.params, null, 4)}`; + }); + + throw new Error(errorMsg); + } + } + public constructor( private poolconfigFilePath: string, private hubOrg: Org, @@ -42,6 +68,7 @@ export default class PoolCreateImpl { this.ipRangeRelaxerWrappedForBottleneck = this.limiter.wrap( this.ipRangeRelaxer ); + } public async poolScratchOrgs(): Promise { @@ -81,6 +108,8 @@ export default class PoolCreateImpl { fs.readFileSync(this.poolconfigFilePath).toString() ); + this.validateSoPoolConfig(this.poolConfig) + //Validate Inputs if (isNullOrUndefined(this.poolConfig.pool.config_file_path)) { SFPowerkit.log( @@ -200,6 +229,7 @@ export default class PoolCreateImpl { ? "Available" : "", Password__c: scratchOrg.password, + SfdxAuthUrl__c: scratchOrg.sfdxAuthUrl, }, this.hubOrg ); @@ -337,18 +367,28 @@ export default class PoolCreateImpl { private async generateScratchOrgs() { //Generate Scratch Orgs - for (let poolUser of this.poolConfig.poolUsers) { - let count = 1; + let soCount=1; + for (let [index,poolUser] of this.poolConfig.poolUsers.entries()) { + let userCount = 1; poolUser.scratchOrgs = new Array(); for (let i = 0; i < poolUser.to_allocate; i++) { SFPowerkit.log( - `Creating Scratch Org ${count} of ${this.totalToBeAllocated}..`, + `Creating Scratch Org ${soCount}/${this.totalToBeAllocated}`, LoggerLevel.INFO ); + if(this.poolConfig.pool.user_mode) + { + SFPowerkit.log( + `Scratch Org allocation:${poolUser.username} alias:${soCount} count:${userCount}/${poolUser.to_allocate}`, + LoggerLevel.INFO + ); + + } + try { let scratchOrg: ScratchOrg = await ScratchOrgUtils.createScratchOrg( this.sfdx, - count, + soCount, poolUser.username, this.poolConfig.pool.config_file_path, poolUser.expiry ? poolUser.expiry : this.poolConfig.pool.expiry, @@ -358,11 +398,12 @@ export default class PoolCreateImpl { this.totalAllocated++; } catch (error) { SFPowerkit.log( - `Unable to provision scratch org ${count} . Due to following Error: ${error.message}`, + `Unable to provision scratch org ${soCount} . Due to following Error: ${error.message}`, LoggerLevel.INFO ); } - count++; + soCount++; + userCount++; } await ScratchOrgUtils.getScratchOrgRecordId( @@ -672,6 +713,7 @@ export default class PoolCreateImpl { ? "Available" : "", Password__c: scratchOrg.password, + SfdxAuthUrl__c: scratchOrg.sfdxAuthUrl, }, this.hubOrg ).then( diff --git a/src/impl/pool/scratchorg/poolFetchImpl.ts b/src/impl/pool/scratchorg/poolFetchImpl.ts index 1c9fd09d..fc9c945b 100644 --- a/src/impl/pool/scratchorg/poolFetchImpl.ts +++ b/src/impl/pool/scratchorg/poolFetchImpl.ts @@ -1,23 +1,30 @@ -import { Connection, LoggerLevel, Org, SfdxError } from "@salesforce/core"; +import { Connection, fs, LoggerLevel, Org, SfdxError } from "@salesforce/core"; import { SFPowerkit } from "../../../sfpowerkit"; import ScratchOrgUtils, { ScratchOrg } from "../../../utils/scratchOrgUtils"; import { getUserEmail } from "../../../utils/getUserDetails"; +import child_process = require("child_process"); export default class PoolFetchImpl { private hubOrg: Org; private tag: string; private mypool: boolean; private sendToUser: string; + private alias: string; + private setdefaultusername:boolean; public constructor( hubOrg: Org, tag: string, mypool: boolean, - sendToUser: string + sendToUser: string, + alias: string, + setdefaultusername:boolean ) { this.hubOrg = hubOrg; this.tag = tag; this.mypool = mypool; this.sendToUser = sendToUser; + this.alias = alias; + this.setdefaultusername = setdefaultusername; } public async execute(): Promise { @@ -79,6 +86,7 @@ export default class PoolFetchImpl { soDetail.username = element.SignupUsername; soDetail.password = element.Password__c; soDetail.expityDate = element.ExpirationDate; + soDetail.sfdxAuthUrl = element.SfdxAuthUrl__c; soDetail.status = "Assigned"; break; @@ -116,4 +124,63 @@ export default class PoolFetchImpl { return soDetail; } + + public loginToScratchOrgIfSfdxAuthURLExists(soDetail: ScratchOrg) { + if (soDetail.sfdxAuthUrl) { + + if (!this.isValidSfdxAuthUrl(soDetail.sfdxAuthUrl)) { + return; + } + + let soLogin: any = {}; + soLogin.sfdxAuthUrl = soDetail.sfdxAuthUrl; + fs.writeFileSync("soAuth.json", JSON.stringify(soLogin)); + + SFPowerkit.log( + `Initiating Auto Login for Scratch Org with ${soDetail.username}`, + LoggerLevel.INFO + ); + + let authURLStoreCommand:string = `sfdx auth:sfdxurl:store -f soAuth.json`; + + if(this.alias) + authURLStoreCommand+=` -a ${this.alias}`; + if(this.setdefaultusername) + authURLStoreCommand+=` --setdefaultusername`; + + child_process.execSync( + authURLStoreCommand, + { encoding: "utf8", stdio: "inherit" } + );; + + fs.unlinkSync("soAuth.json"); + + + //Run shape list to reassign this org to the pool + child_process.execSync(`sfdx force:org:shape:list`, { + encoding: "utf8", + stdio: "pipe", + }); + + } + } + + + private isValidSfdxAuthUrl(sfdxAuthUrl: string): boolean { + if (sfdxAuthUrl.match(/force:\/\/(?[a-zA-Z0-9._]+)@.+/)) { + return true; + } else { + let match = sfdxAuthUrl.match(/force:\/\/(?[a-zA-Z]+):(?[a-zA-Z0-9]*):(?[a-zA-Z0-9._]+)@.+/) + + if (match !== null) { + if (match.groups.refreshToken === "undefined") { + return false; + } else { + return true; + } + } else { + return false; + } + } + } } diff --git a/src/utils/scratchOrgUtils.ts b/src/utils/scratchOrgUtils.ts index a65f412b..32589b45 100644 --- a/src/utils/scratchOrgUtils.ts +++ b/src/utils/scratchOrgUtils.ts @@ -1,4 +1,4 @@ -import { LoggerLevel, Org } from "@salesforce/core"; +import { LoggerLevel, Org, AuthInfo } from "@salesforce/core"; let request = require("request-promise-native"); import { SFPowerkit } from "../sfpowerkit"; import { SfdxApi } from "../sfdxnode/types"; @@ -10,6 +10,8 @@ const ORDER_BY_FILTER = " ORDER BY CreatedDate ASC"; export default class ScratchOrgUtils { public static isNewVersionCompatible: boolean = false; private static isVersionCompatibilityChecked: boolean = false; + private static sfdxAuthUrlFieldExists: boolean = false; + public static async checkForNewVersionCompatible(hubOrg: Org) { let conn = hubOrg.getConnection(); @@ -23,6 +25,11 @@ export default class ScratchOrgUtils { .describe(); if (describeResult) { for (const field of describeResult.fields) { + if(field.name === "SfdxAuthUrl__c") + { + this.sfdxAuthUrlFieldExists=true; + } + if ( field.name === "Allocation_status__c" && field.picklistValues.length === 4 @@ -32,7 +39,6 @@ export default class ScratchOrgUtils { availableValues.push(picklistValue.value); } } - break; } } } @@ -187,6 +193,21 @@ export default class ScratchOrgUtils { scratchOrg.password = passwordData.password; + //Get Sfdx Auth URL + try + { + const authInfo = await AuthInfo.create({ username: scratchOrg.username }); + scratchOrg.sfdxAuthUrl = authInfo.getSfdxAuthUrl(); + } + catch(error) + { + SFPowerkit.log( + `Unable to fetch authURL for ${scratchOrg.username}. Only Scratch Orgs created from DevHub using authenticated using auth:sfdxurl or auth:web will have access token and enabled for autoLogin`, + LoggerLevel.INFO + ); + } + + if (!passwordData.password) { throw new Error("Unable to setup password to scratch org"); } else { @@ -281,6 +302,13 @@ export default class ScratchOrgUtils { hubOrg: Org ): Promise { let hubConn = hubOrg.getConnection(); + + + if (!this.sfdxAuthUrlFieldExists) { + delete soInfo.SfdxAuthUrl__c; + SFPowerkit.log("Removed sfdxAuthUrl info as SfdxAuthUrl__c field is not found on Org", LoggerLevel.TRACE); + } + SFPowerkit.log(JSON.stringify(soInfo), LoggerLevel.TRACE); return await retry( async (bail) => { @@ -315,11 +343,21 @@ export default class ScratchOrgUtils { async (bail) => { let query; + if(this.sfdxAuthUrlFieldExists) + { + if (!isNullOrUndefined(tag)) + query = `SELECT Pooltag__c, Id, CreatedDate, ScratchOrg, ExpirationDate, SignupUsername, SignupEmail, Password__c, Allocation_status__c,LoginUrl,SfdxAuthUrl__c FROM ScratchOrgInfo WHERE Pooltag__c = '${tag}' AND Status = 'Active' `; + else + query = `SELECT Pooltag__c, Id, CreatedDate, ScratchOrg, ExpirationDate, SignupUsername, SignupEmail, Password__c, Allocation_status__c,LoginUrl,SfdxAuthUrl__c FROM ScratchOrgInfo WHERE Pooltag__c != null AND Status = 'Active' `; + + } + else + { if (!isNullOrUndefined(tag)) query = `SELECT Pooltag__c, Id, CreatedDate, ScratchOrg, ExpirationDate, SignupUsername, SignupEmail, Password__c, Allocation_status__c,LoginUrl FROM ScratchOrgInfo WHERE Pooltag__c = '${tag}' AND Status = 'Active' `; else query = `SELECT Pooltag__c, Id, CreatedDate, ScratchOrg, ExpirationDate, SignupUsername, SignupEmail, Password__c, Allocation_status__c,LoginUrl FROM ScratchOrgInfo WHERE Pooltag__c != null AND Status = 'Active' `; - + } if (isMyPool) { query = query + ` AND createdby.username = '${hubOrg.getUsername()}' `; @@ -479,4 +517,5 @@ export interface ScratchOrg { accessToken?: string; instanceURL?: string; status?: string; + sfdxAuthUrl?: string; } diff --git a/src_saleforce_packages/scratchorgpool/README.md b/src_saleforce_packages/scratchorgpool/README.md index 871d60a1..d7e40445 100644 --- a/src_saleforce_packages/scratchorgpool/README.md +++ b/src_saleforce_packages/scratchorgpool/README.md @@ -5,13 +5,13 @@ Deploy the following additions to standard object "ScratchOrgInfo" such as a cus ## Installing the Unlocked package to your DevHub from URL 1. Login to your DevHub -2. Click [here](https://login.salesforce.com/packaging/installPackage.apexp?p0=04t1P000000gOkXQAU) to install the **sfpower-scratchorg-pool** unlocked package into your DevHub. +2. Click [here](https://login.salesforce.com/packaging/installPackage.apexp?p0=04t1P000000gOqzQAE) to install the **sfpower-scratchorg-pool** unlocked package into your DevHub. 3. Select **Install for Admin Only** ## Installing the Unlocked package to your DevHub from CLI ``` -sfdx force:package:install -p 04t1P000000gOkXQAU -u Devhub -r -a package -s AdminsOnly -w 30 +sfdx force:package:install -p 04t1P000000gOqzQAE -u Devhub -r -a package -s AdminsOnly -w 30 ``` ## Deploy the app to your DevHub from CLI diff --git a/src_saleforce_packages/scratchorgpool/force-app/main/default/objects/ScratchOrgInfo/fields/SfdxAuthUrl__c.field-meta.xml b/src_saleforce_packages/scratchorgpool/force-app/main/default/objects/ScratchOrgInfo/fields/SfdxAuthUrl__c.field-meta.xml new file mode 100644 index 00000000..cc5cc085 --- /dev/null +++ b/src_saleforce_packages/scratchorgpool/force-app/main/default/objects/ScratchOrgInfo/fields/SfdxAuthUrl__c.field-meta.xml @@ -0,0 +1,11 @@ + + + SfdxAuthUrl__c + false + + 255 + false + false + Text + false + diff --git a/src_saleforce_packages/scratchorgpool/sfdx-project.json b/src_saleforce_packages/scratchorgpool/sfdx-project.json index 33480f7c..91edd17c 100644 --- a/src_saleforce_packages/scratchorgpool/sfdx-project.json +++ b/src_saleforce_packages/scratchorgpool/sfdx-project.json @@ -1,18 +1,19 @@ { - "packageDirectories": [ - { - "path": "force-app", - "default": true, - "package": "sfpower-scratchorg-pool", - "versionName": "sfpower-pool 1.0.0", - "versionNumber": "1.0.0.NEXT" + "packageDirectories": [ + { + "path": "force-app", + "default": true, + "package": "sfpower-scratchorg-pool", + "versionName": "sfpower-pool 1.1.0", + "versionNumber": "1.1.0.NEXT" + } + ], + "namespace": "", + "sfdcLoginUrl": "https://login.salesforce.com", + "sourceApiVersion": "51.0", + "packageAliases": { + "sfpower-scratchorg-pool": "0Ho1P000000blK7SAI", + "sfpower-scratchorg-pool@1.0.0-1": "04t1P000000gOkXQAU", + "sfpower-scratchorg-pool@1.1.0-1": "04t1P000000gOqzQAE" } - ], - "namespace": "", - "sfdcLoginUrl": "https://login.salesforce.com", - "sourceApiVersion": "51.0", - "packageAliases": { - "sfpower-scratchorg-pool": "0Ho1P000000blK7SAI", - "sfpower-scratchorg-pool@1.0.0-1": "04t1P000000gOkXQAU" - } -} +} \ No newline at end of file