sfdx-hardis 6.14.4-beta202512080425.0 → 6.14.5-alpha202512081801.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +10 -0
- package/lib/common/ticketProvider/index.d.ts +6 -0
- package/lib/common/ticketProvider/jiraProvider.d.ts +3 -24
- package/lib/common/ticketProvider/jiraProvider.js +70 -17
- package/lib/common/ticketProvider/jiraProvider.js.map +1 -1
- package/oclif.lock +28 -292
- package/oclif.manifest.json +502 -502
- package/package.json +6 -5
- package/yarn.lock +13799 -0
package/oclif.manifest.json
CHANGED
|
@@ -7924,245 +7924,6 @@
|
|
|
7924
7924
|
"limits:monitor:org:hardis"
|
|
7925
7925
|
]
|
|
7926
7926
|
},
|
|
7927
|
-
"hardis:org:refresh:after-refresh": {
|
|
7928
|
-
"aliases": [],
|
|
7929
|
-
"args": {},
|
|
7930
|
-
"description": "\n## Command Behavior\n\n**Restores all previously backed-up Connected Apps (including Consumer Secrets), certificates, custom settings, records and other metadata to a Salesforce org after a sandbox refresh.**\n\nThis command is the second step in the sandbox refresh process. It scans the backup folder created before the refresh, allows interactive or flag-driven selection of items to restore, and automates cleanup and redeployment to the refreshed org while preserving credentials and configuration.\n\nKey functionalities:\n\n- **Choose a backup to restore:** Lets you pick the saved sandbox project that contains the artifacts to restore.\n- **Select which items to restore:** Finds Connected App XMLs, certificates, custom settings and other artifacts and lets you pick what to restore (or restore all).\n- **Safety checks and validation:** Confirms files exist and prompts before making changes to the target org.\n- **Prepare org for restore:** Optionally cleans up existing Connected Apps so saved apps can be re-deployed without conflict.\n- **Redeploy saved artifacts:** Restores Connected Apps (with saved secrets), certificates, SAML SSO configs, custom settings and other metadata.\n- **Handle SAML configs:** Cleans and updates SAML XML files and helps you choose certificates to wire into restored configs.\n- **Restore records:** Optionally runs data import from selected SFDMU workspaces to restore record data.\n- **Reporting & persistence:** Sends restore reports and can update project config to record what was restored.\n\nThis command is part of [sfdx-hardis Sandbox Refresh](https://sfdx-hardis.cloudity.com/salesforce-sandbox-refresh/) and is intended to be run after a sandbox refresh to re-apply saved metadata, credentials and data.\n\n<details markdown=\"1\">\n<summary>Technical explanations</summary>\n\n- **Backup Folder Handling:** Reads the immediate subfolders of `scripts/sandbox-refresh/` and validates the chosen project contains the expected `manifest/` and `force-app` layout.\n- **Metadata & Deployment APIs:** Uses `sf project deploy start --manifest` for package-based deploys, `sf project deploy start --metadata-dir` for MDAPI artifacts (certificates), and utility functions for Connected App deployment that preserve consumer secrets.\n- **SAML Handling:** Queries active certificates via tooling API, updates SAML XML files, and deploys using `sf project deploy start -m SamlSsoConfig`.\n- **Records Handling:** Uses interactive selection of SFDMU workspaces and runs data import utilities to restore records.\n- **Error Handling & Summary:** Aggregates results, logs success/warnings/errors, and returns a structured result indicating which items were restored and any failures.\n\n</details>\n",
|
|
7931
|
-
"examples": [
|
|
7932
|
-
"$ sf hardis:org:refresh:after-refresh",
|
|
7933
|
-
"$ sf hardis:org:refresh:after-refresh --name \"MyConnectedApp\" // Process specific app, no selection prompt",
|
|
7934
|
-
"$ sf hardis:org:refresh:after-refresh --name \"App1,App2,App3\" // Process multiple apps, no selection prompt",
|
|
7935
|
-
"$ sf hardis:org:refresh:after-refresh --all // Process all apps, no selection prompt",
|
|
7936
|
-
"$ sf hardis:org:refresh:after-refresh --target-org myDevOrg"
|
|
7937
|
-
],
|
|
7938
|
-
"flags": {
|
|
7939
|
-
"json": {
|
|
7940
|
-
"description": "Format output as json.",
|
|
7941
|
-
"helpGroup": "GLOBAL",
|
|
7942
|
-
"name": "json",
|
|
7943
|
-
"allowNo": false,
|
|
7944
|
-
"type": "boolean"
|
|
7945
|
-
},
|
|
7946
|
-
"flags-dir": {
|
|
7947
|
-
"helpGroup": "GLOBAL",
|
|
7948
|
-
"name": "flags-dir",
|
|
7949
|
-
"summary": "Import flag values from a directory.",
|
|
7950
|
-
"hasDynamicHelp": false,
|
|
7951
|
-
"multiple": false,
|
|
7952
|
-
"type": "option"
|
|
7953
|
-
},
|
|
7954
|
-
"target-org": {
|
|
7955
|
-
"char": "o",
|
|
7956
|
-
"name": "target-org",
|
|
7957
|
-
"noCacheDefault": true,
|
|
7958
|
-
"required": true,
|
|
7959
|
-
"summary": "Username or alias of the target org. Not required if the `target-org` configuration variable is already set.",
|
|
7960
|
-
"hasDynamicHelp": true,
|
|
7961
|
-
"multiple": false,
|
|
7962
|
-
"type": "option"
|
|
7963
|
-
},
|
|
7964
|
-
"name": {
|
|
7965
|
-
"char": "n",
|
|
7966
|
-
"description": "Connected App name(s) to process (bypasses selection prompt). For multiple apps, separate with commas (e.g., \"App1,App2\")",
|
|
7967
|
-
"name": "name",
|
|
7968
|
-
"summary": "Filter according to Name criteria",
|
|
7969
|
-
"hasDynamicHelp": false,
|
|
7970
|
-
"multiple": false,
|
|
7971
|
-
"type": "option"
|
|
7972
|
-
},
|
|
7973
|
-
"all": {
|
|
7974
|
-
"char": "a",
|
|
7975
|
-
"description": "If set, all Connected Apps from the local repository will be processed. Takes precedence over --name if both are specified.",
|
|
7976
|
-
"name": "all",
|
|
7977
|
-
"summary": "Process all Connected Apps without selection prompt",
|
|
7978
|
-
"allowNo": false,
|
|
7979
|
-
"type": "boolean"
|
|
7980
|
-
},
|
|
7981
|
-
"websocket": {
|
|
7982
|
-
"description": "WebSocket host:port for VS Code SFDX Hardis UI integration",
|
|
7983
|
-
"name": "websocket",
|
|
7984
|
-
"summary": "Websocket host:port for VsCode SFDX Hardis UI integration",
|
|
7985
|
-
"hasDynamicHelp": false,
|
|
7986
|
-
"multiple": false,
|
|
7987
|
-
"type": "option"
|
|
7988
|
-
},
|
|
7989
|
-
"skipauth": {
|
|
7990
|
-
"description": "Skip authentication check when a default username is required",
|
|
7991
|
-
"name": "skipauth",
|
|
7992
|
-
"summary": "Skip authentication check when a default username is required",
|
|
7993
|
-
"allowNo": false,
|
|
7994
|
-
"type": "boolean"
|
|
7995
|
-
}
|
|
7996
|
-
},
|
|
7997
|
-
"hasDynamicHelp": true,
|
|
7998
|
-
"hiddenAliases": [],
|
|
7999
|
-
"id": "hardis:org:refresh:after-refresh",
|
|
8000
|
-
"pluginAlias": "sfdx-hardis",
|
|
8001
|
-
"pluginName": "sfdx-hardis",
|
|
8002
|
-
"pluginType": "core",
|
|
8003
|
-
"strict": true,
|
|
8004
|
-
"enableJsonFlag": true,
|
|
8005
|
-
"title": "Restore Connected Apps after org refresh",
|
|
8006
|
-
"requiresProject": true,
|
|
8007
|
-
"isESM": true,
|
|
8008
|
-
"relativePath": [
|
|
8009
|
-
"lib",
|
|
8010
|
-
"commands",
|
|
8011
|
-
"hardis",
|
|
8012
|
-
"org",
|
|
8013
|
-
"refresh",
|
|
8014
|
-
"after-refresh.js"
|
|
8015
|
-
],
|
|
8016
|
-
"aliasPermutations": [],
|
|
8017
|
-
"permutations": [
|
|
8018
|
-
"hardis:org:refresh:after-refresh",
|
|
8019
|
-
"org:hardis:refresh:after-refresh",
|
|
8020
|
-
"org:refresh:hardis:after-refresh",
|
|
8021
|
-
"org:refresh:after-refresh:hardis",
|
|
8022
|
-
"hardis:refresh:org:after-refresh",
|
|
8023
|
-
"refresh:hardis:org:after-refresh",
|
|
8024
|
-
"refresh:org:hardis:after-refresh",
|
|
8025
|
-
"refresh:org:after-refresh:hardis",
|
|
8026
|
-
"hardis:refresh:after-refresh:org",
|
|
8027
|
-
"refresh:hardis:after-refresh:org",
|
|
8028
|
-
"refresh:after-refresh:hardis:org",
|
|
8029
|
-
"refresh:after-refresh:org:hardis",
|
|
8030
|
-
"hardis:org:after-refresh:refresh",
|
|
8031
|
-
"org:hardis:after-refresh:refresh",
|
|
8032
|
-
"org:after-refresh:hardis:refresh",
|
|
8033
|
-
"org:after-refresh:refresh:hardis",
|
|
8034
|
-
"hardis:after-refresh:org:refresh",
|
|
8035
|
-
"after-refresh:hardis:org:refresh",
|
|
8036
|
-
"after-refresh:org:hardis:refresh",
|
|
8037
|
-
"after-refresh:org:refresh:hardis",
|
|
8038
|
-
"hardis:after-refresh:refresh:org",
|
|
8039
|
-
"after-refresh:hardis:refresh:org",
|
|
8040
|
-
"after-refresh:refresh:hardis:org",
|
|
8041
|
-
"after-refresh:refresh:org:hardis"
|
|
8042
|
-
]
|
|
8043
|
-
},
|
|
8044
|
-
"hardis:org:refresh:before-refresh": {
|
|
8045
|
-
"aliases": [],
|
|
8046
|
-
"args": {},
|
|
8047
|
-
"description": "\n## Command Behavior\n\n**Backs up all Connected Apps (including Consumer Secrets), certificates, custom settings, records and other metadata from a Salesforce org before a sandbox refresh, enabling full restoration after the refresh.**\n\nThis command prepares a complete backup prior to a sandbox refresh. It creates a dedicated project under `scripts/sandbox-refresh/<sandbox-folder>`, retrieves metadata and data, attempts to capture Connected App consumer secrets, and can optionally delete the apps so they can be reuploaded after the refresh.\n\nKey functionalities:\n\n- **Create a save project:** Generates a dedicated project folder to store all artifacts for the sandbox backup.\n- **Find and select Connected Apps:** Lists Connected Apps in the org and lets you pick specific apps, use a name filter, or process all apps.\n- **Save metadata for restore:** Builds a manifest and retrieves the metadata types you choose so they can be restored after the refresh.\n- **Capture Consumer Secrets:** Attempts to capture Connected App consumer secrets automatically (opens a browser session when possible) and falls back to a short manual prompt when needed.\n- **Collect certificates:** Saves certificate files and their definitions so they can be redeployed later.\n- **Export custom settings & records:** Lets you pick custom settings to export as JSON and optionally export records using configured data workspaces.\n- **Persist choices & report:** Stores your backup choices in project config and sends report files for traceability.\n- **Optional cleanup:** Can delete backed-up Connected Apps from the org so they can be re-uploaded cleanly after the refresh.\n- **Interactive safety checks:** Prompts you to confirm package contents and other potentially destructive actions; sensible defaults are chosen where appropriate.\n\nThis command is part of [sfdx-hardis Sandbox Refresh](https://sfdx-hardis.cloudity.com/salesforce-sandbox-refresh/) and is intended to be run before a sandbox refresh so that all credentials, certificates, metadata and data can be restored afterwards.\n\n<details markdown=\"1\">\n<summary>Technical explanations</summary>\n\n- **Salesforce CLI Integration:** Uses `sf org list metadata`, `sf project retrieve start`, `sf project generate`, `sf project deploy start`, and `sf data tree export`/`import` where applicable.\n- **Metadata Handling:** Writes and reads package XML files under the generated project (`manifest/`), copies MDAPI certificate artifacts into `force-app/main/default/certs`, and produces `package-metadata-to-restore.xml` for post-refresh deployment.\n- **Consumer Secret Handling:** Uses `puppeteer-core` with an executable path from `getChromeExecutablePath()` (env var `PUPPETEER_EXECUTABLE_PATH` may be required). Falls back to manual prompt when browser automation cannot be used.\n- **Data & Records:** Exports custom settings to JSON and supports exporting records through SFDMU workspaces chosen interactively.\n- **Config & Reporting:** Updates project/user config under `config/.sfdx-hardis.yml#refreshSandboxConfig` and reports artifacts to the WebSocket client.\n- **Error Handling:** Provides clear error messages and a summary response object indicating success/failure and which secrets were captured.\n\n</details>\n",
|
|
8048
|
-
"examples": [
|
|
8049
|
-
"$ sf hardis:org:refresh:before-refresh",
|
|
8050
|
-
"$ sf hardis:org:refresh:before-refresh --name \"MyConnectedApp\"",
|
|
8051
|
-
"$ sf hardis:org:refresh:before-refresh --name \"App1,App2,App3\"",
|
|
8052
|
-
"$ sf hardis:org:refresh:before-refresh --all",
|
|
8053
|
-
"$ sf hardis:org:refresh:before-refresh --delete"
|
|
8054
|
-
],
|
|
8055
|
-
"flags": {
|
|
8056
|
-
"json": {
|
|
8057
|
-
"description": "Format output as json.",
|
|
8058
|
-
"helpGroup": "GLOBAL",
|
|
8059
|
-
"name": "json",
|
|
8060
|
-
"allowNo": false,
|
|
8061
|
-
"type": "boolean"
|
|
8062
|
-
},
|
|
8063
|
-
"flags-dir": {
|
|
8064
|
-
"helpGroup": "GLOBAL",
|
|
8065
|
-
"name": "flags-dir",
|
|
8066
|
-
"summary": "Import flag values from a directory.",
|
|
8067
|
-
"hasDynamicHelp": false,
|
|
8068
|
-
"multiple": false,
|
|
8069
|
-
"type": "option"
|
|
8070
|
-
},
|
|
8071
|
-
"target-org": {
|
|
8072
|
-
"char": "o",
|
|
8073
|
-
"name": "target-org",
|
|
8074
|
-
"noCacheDefault": true,
|
|
8075
|
-
"required": true,
|
|
8076
|
-
"summary": "Username or alias of the target org. Not required if the `target-org` configuration variable is already set.",
|
|
8077
|
-
"hasDynamicHelp": true,
|
|
8078
|
-
"multiple": false,
|
|
8079
|
-
"type": "option"
|
|
8080
|
-
},
|
|
8081
|
-
"delete": {
|
|
8082
|
-
"char": "d",
|
|
8083
|
-
"description": "By default, Connected Apps are not deleted from the org after saving. Set this flag to force their deletion so they will be able to be reuploaded again after refreshing the org.",
|
|
8084
|
-
"name": "delete",
|
|
8085
|
-
"summary": "Delete Connected Apps from org after saving",
|
|
8086
|
-
"allowNo": false,
|
|
8087
|
-
"type": "boolean"
|
|
8088
|
-
},
|
|
8089
|
-
"name": {
|
|
8090
|
-
"char": "n",
|
|
8091
|
-
"description": "Connected App name(s) to process. For multiple apps, separate with commas (e.g., \"App1,App2\")",
|
|
8092
|
-
"name": "name",
|
|
8093
|
-
"summary": "Filter according to Name criteria",
|
|
8094
|
-
"hasDynamicHelp": false,
|
|
8095
|
-
"multiple": false,
|
|
8096
|
-
"type": "option"
|
|
8097
|
-
},
|
|
8098
|
-
"all": {
|
|
8099
|
-
"char": "a",
|
|
8100
|
-
"description": "If set, all Connected Apps from the org will be processed. Takes precedence over --name if both are specified.",
|
|
8101
|
-
"name": "all",
|
|
8102
|
-
"summary": "Process all Connected Apps without selection prompt",
|
|
8103
|
-
"allowNo": false,
|
|
8104
|
-
"type": "boolean"
|
|
8105
|
-
},
|
|
8106
|
-
"websocket": {
|
|
8107
|
-
"description": "Websocket host:port for VsCode SFDX Hardis UI integration",
|
|
8108
|
-
"name": "websocket",
|
|
8109
|
-
"hasDynamicHelp": false,
|
|
8110
|
-
"multiple": false,
|
|
8111
|
-
"type": "option"
|
|
8112
|
-
},
|
|
8113
|
-
"skipauth": {
|
|
8114
|
-
"description": "Skip authentication check when a default username is required",
|
|
8115
|
-
"name": "skipauth",
|
|
8116
|
-
"allowNo": false,
|
|
8117
|
-
"type": "boolean"
|
|
8118
|
-
}
|
|
8119
|
-
},
|
|
8120
|
-
"hasDynamicHelp": true,
|
|
8121
|
-
"hiddenAliases": [],
|
|
8122
|
-
"id": "hardis:org:refresh:before-refresh",
|
|
8123
|
-
"pluginAlias": "sfdx-hardis",
|
|
8124
|
-
"pluginName": "sfdx-hardis",
|
|
8125
|
-
"pluginType": "core",
|
|
8126
|
-
"strict": true,
|
|
8127
|
-
"enableJsonFlag": true,
|
|
8128
|
-
"requiresProject": true,
|
|
8129
|
-
"isESM": true,
|
|
8130
|
-
"relativePath": [
|
|
8131
|
-
"lib",
|
|
8132
|
-
"commands",
|
|
8133
|
-
"hardis",
|
|
8134
|
-
"org",
|
|
8135
|
-
"refresh",
|
|
8136
|
-
"before-refresh.js"
|
|
8137
|
-
],
|
|
8138
|
-
"aliasPermutations": [],
|
|
8139
|
-
"permutations": [
|
|
8140
|
-
"hardis:org:refresh:before-refresh",
|
|
8141
|
-
"org:hardis:refresh:before-refresh",
|
|
8142
|
-
"org:refresh:hardis:before-refresh",
|
|
8143
|
-
"org:refresh:before-refresh:hardis",
|
|
8144
|
-
"hardis:refresh:org:before-refresh",
|
|
8145
|
-
"refresh:hardis:org:before-refresh",
|
|
8146
|
-
"refresh:org:hardis:before-refresh",
|
|
8147
|
-
"refresh:org:before-refresh:hardis",
|
|
8148
|
-
"hardis:refresh:before-refresh:org",
|
|
8149
|
-
"refresh:hardis:before-refresh:org",
|
|
8150
|
-
"refresh:before-refresh:hardis:org",
|
|
8151
|
-
"refresh:before-refresh:org:hardis",
|
|
8152
|
-
"hardis:org:before-refresh:refresh",
|
|
8153
|
-
"org:hardis:before-refresh:refresh",
|
|
8154
|
-
"org:before-refresh:hardis:refresh",
|
|
8155
|
-
"org:before-refresh:refresh:hardis",
|
|
8156
|
-
"hardis:before-refresh:org:refresh",
|
|
8157
|
-
"before-refresh:hardis:org:refresh",
|
|
8158
|
-
"before-refresh:org:hardis:refresh",
|
|
8159
|
-
"before-refresh:org:refresh:hardis",
|
|
8160
|
-
"hardis:before-refresh:refresh:org",
|
|
8161
|
-
"before-refresh:hardis:refresh:org",
|
|
8162
|
-
"before-refresh:refresh:hardis:org",
|
|
8163
|
-
"before-refresh:refresh:org:hardis"
|
|
8164
|
-
]
|
|
8165
|
-
},
|
|
8166
7927
|
"hardis:org:purge:apexlog": {
|
|
8167
7928
|
"aliases": [],
|
|
8168
7929
|
"args": {},
|
|
@@ -8463,10 +8224,264 @@
|
|
|
8463
8224
|
"multiple": false,
|
|
8464
8225
|
"type": "option"
|
|
8465
8226
|
},
|
|
8466
|
-
"debug": {
|
|
8467
|
-
"char": "d",
|
|
8468
|
-
"description": "Activate debug mode (more logs)",
|
|
8469
|
-
"name": "debug",
|
|
8227
|
+
"debug": {
|
|
8228
|
+
"char": "d",
|
|
8229
|
+
"description": "Activate debug mode (more logs)",
|
|
8230
|
+
"name": "debug",
|
|
8231
|
+
"allowNo": false,
|
|
8232
|
+
"type": "boolean"
|
|
8233
|
+
},
|
|
8234
|
+
"websocket": {
|
|
8235
|
+
"description": "Websocket host:port for VsCode SFDX Hardis UI integration",
|
|
8236
|
+
"name": "websocket",
|
|
8237
|
+
"hasDynamicHelp": false,
|
|
8238
|
+
"multiple": false,
|
|
8239
|
+
"type": "option"
|
|
8240
|
+
},
|
|
8241
|
+
"skipauth": {
|
|
8242
|
+
"description": "Skip authentication check when a default username is required",
|
|
8243
|
+
"name": "skipauth",
|
|
8244
|
+
"allowNo": false,
|
|
8245
|
+
"type": "boolean"
|
|
8246
|
+
},
|
|
8247
|
+
"target-org": {
|
|
8248
|
+
"aliases": [
|
|
8249
|
+
"targetusername",
|
|
8250
|
+
"u"
|
|
8251
|
+
],
|
|
8252
|
+
"char": "o",
|
|
8253
|
+
"deprecateAliases": true,
|
|
8254
|
+
"name": "target-org",
|
|
8255
|
+
"noCacheDefault": true,
|
|
8256
|
+
"required": true,
|
|
8257
|
+
"summary": "Username or alias of the target org. Not required if the `target-org` configuration variable is already set.",
|
|
8258
|
+
"hasDynamicHelp": true,
|
|
8259
|
+
"multiple": false,
|
|
8260
|
+
"type": "option"
|
|
8261
|
+
}
|
|
8262
|
+
},
|
|
8263
|
+
"hasDynamicHelp": true,
|
|
8264
|
+
"hiddenAliases": [],
|
|
8265
|
+
"id": "hardis:org:purge:profile",
|
|
8266
|
+
"pluginAlias": "sfdx-hardis",
|
|
8267
|
+
"pluginName": "sfdx-hardis",
|
|
8268
|
+
"pluginType": "core",
|
|
8269
|
+
"strict": true,
|
|
8270
|
+
"enableJsonFlag": true,
|
|
8271
|
+
"title": "Remove PS attributes from Profile",
|
|
8272
|
+
"isESM": true,
|
|
8273
|
+
"relativePath": [
|
|
8274
|
+
"lib",
|
|
8275
|
+
"commands",
|
|
8276
|
+
"hardis",
|
|
8277
|
+
"org",
|
|
8278
|
+
"purge",
|
|
8279
|
+
"profile.js"
|
|
8280
|
+
],
|
|
8281
|
+
"aliasPermutations": [],
|
|
8282
|
+
"permutations": [
|
|
8283
|
+
"hardis:org:purge:profile",
|
|
8284
|
+
"org:hardis:purge:profile",
|
|
8285
|
+
"org:purge:hardis:profile",
|
|
8286
|
+
"org:purge:profile:hardis",
|
|
8287
|
+
"hardis:purge:org:profile",
|
|
8288
|
+
"purge:hardis:org:profile",
|
|
8289
|
+
"purge:org:hardis:profile",
|
|
8290
|
+
"purge:org:profile:hardis",
|
|
8291
|
+
"hardis:purge:profile:org",
|
|
8292
|
+
"purge:hardis:profile:org",
|
|
8293
|
+
"purge:profile:hardis:org",
|
|
8294
|
+
"purge:profile:org:hardis",
|
|
8295
|
+
"hardis:org:profile:purge",
|
|
8296
|
+
"org:hardis:profile:purge",
|
|
8297
|
+
"org:profile:hardis:purge",
|
|
8298
|
+
"org:profile:purge:hardis",
|
|
8299
|
+
"hardis:profile:org:purge",
|
|
8300
|
+
"profile:hardis:org:purge",
|
|
8301
|
+
"profile:org:hardis:purge",
|
|
8302
|
+
"profile:org:purge:hardis",
|
|
8303
|
+
"hardis:profile:purge:org",
|
|
8304
|
+
"profile:hardis:purge:org",
|
|
8305
|
+
"profile:purge:hardis:org",
|
|
8306
|
+
"profile:purge:org:hardis"
|
|
8307
|
+
]
|
|
8308
|
+
},
|
|
8309
|
+
"hardis:org:refresh:after-refresh": {
|
|
8310
|
+
"aliases": [],
|
|
8311
|
+
"args": {},
|
|
8312
|
+
"description": "\n## Command Behavior\n\n**Restores all previously backed-up Connected Apps (including Consumer Secrets), certificates, custom settings, records and other metadata to a Salesforce org after a sandbox refresh.**\n\nThis command is the second step in the sandbox refresh process. It scans the backup folder created before the refresh, allows interactive or flag-driven selection of items to restore, and automates cleanup and redeployment to the refreshed org while preserving credentials and configuration.\n\nKey functionalities:\n\n- **Choose a backup to restore:** Lets you pick the saved sandbox project that contains the artifacts to restore.\n- **Select which items to restore:** Finds Connected App XMLs, certificates, custom settings and other artifacts and lets you pick what to restore (or restore all).\n- **Safety checks and validation:** Confirms files exist and prompts before making changes to the target org.\n- **Prepare org for restore:** Optionally cleans up existing Connected Apps so saved apps can be re-deployed without conflict.\n- **Redeploy saved artifacts:** Restores Connected Apps (with saved secrets), certificates, SAML SSO configs, custom settings and other metadata.\n- **Handle SAML configs:** Cleans and updates SAML XML files and helps you choose certificates to wire into restored configs.\n- **Restore records:** Optionally runs data import from selected SFDMU workspaces to restore record data.\n- **Reporting & persistence:** Sends restore reports and can update project config to record what was restored.\n\nThis command is part of [sfdx-hardis Sandbox Refresh](https://sfdx-hardis.cloudity.com/salesforce-sandbox-refresh/) and is intended to be run after a sandbox refresh to re-apply saved metadata, credentials and data.\n\n<details markdown=\"1\">\n<summary>Technical explanations</summary>\n\n- **Backup Folder Handling:** Reads the immediate subfolders of `scripts/sandbox-refresh/` and validates the chosen project contains the expected `manifest/` and `force-app` layout.\n- **Metadata & Deployment APIs:** Uses `sf project deploy start --manifest` for package-based deploys, `sf project deploy start --metadata-dir` for MDAPI artifacts (certificates), and utility functions for Connected App deployment that preserve consumer secrets.\n- **SAML Handling:** Queries active certificates via tooling API, updates SAML XML files, and deploys using `sf project deploy start -m SamlSsoConfig`.\n- **Records Handling:** Uses interactive selection of SFDMU workspaces and runs data import utilities to restore records.\n- **Error Handling & Summary:** Aggregates results, logs success/warnings/errors, and returns a structured result indicating which items were restored and any failures.\n\n</details>\n",
|
|
8313
|
+
"examples": [
|
|
8314
|
+
"$ sf hardis:org:refresh:after-refresh",
|
|
8315
|
+
"$ sf hardis:org:refresh:after-refresh --name \"MyConnectedApp\" // Process specific app, no selection prompt",
|
|
8316
|
+
"$ sf hardis:org:refresh:after-refresh --name \"App1,App2,App3\" // Process multiple apps, no selection prompt",
|
|
8317
|
+
"$ sf hardis:org:refresh:after-refresh --all // Process all apps, no selection prompt",
|
|
8318
|
+
"$ sf hardis:org:refresh:after-refresh --target-org myDevOrg"
|
|
8319
|
+
],
|
|
8320
|
+
"flags": {
|
|
8321
|
+
"json": {
|
|
8322
|
+
"description": "Format output as json.",
|
|
8323
|
+
"helpGroup": "GLOBAL",
|
|
8324
|
+
"name": "json",
|
|
8325
|
+
"allowNo": false,
|
|
8326
|
+
"type": "boolean"
|
|
8327
|
+
},
|
|
8328
|
+
"flags-dir": {
|
|
8329
|
+
"helpGroup": "GLOBAL",
|
|
8330
|
+
"name": "flags-dir",
|
|
8331
|
+
"summary": "Import flag values from a directory.",
|
|
8332
|
+
"hasDynamicHelp": false,
|
|
8333
|
+
"multiple": false,
|
|
8334
|
+
"type": "option"
|
|
8335
|
+
},
|
|
8336
|
+
"target-org": {
|
|
8337
|
+
"char": "o",
|
|
8338
|
+
"name": "target-org",
|
|
8339
|
+
"noCacheDefault": true,
|
|
8340
|
+
"required": true,
|
|
8341
|
+
"summary": "Username or alias of the target org. Not required if the `target-org` configuration variable is already set.",
|
|
8342
|
+
"hasDynamicHelp": true,
|
|
8343
|
+
"multiple": false,
|
|
8344
|
+
"type": "option"
|
|
8345
|
+
},
|
|
8346
|
+
"name": {
|
|
8347
|
+
"char": "n",
|
|
8348
|
+
"description": "Connected App name(s) to process (bypasses selection prompt). For multiple apps, separate with commas (e.g., \"App1,App2\")",
|
|
8349
|
+
"name": "name",
|
|
8350
|
+
"summary": "Filter according to Name criteria",
|
|
8351
|
+
"hasDynamicHelp": false,
|
|
8352
|
+
"multiple": false,
|
|
8353
|
+
"type": "option"
|
|
8354
|
+
},
|
|
8355
|
+
"all": {
|
|
8356
|
+
"char": "a",
|
|
8357
|
+
"description": "If set, all Connected Apps from the local repository will be processed. Takes precedence over --name if both are specified.",
|
|
8358
|
+
"name": "all",
|
|
8359
|
+
"summary": "Process all Connected Apps without selection prompt",
|
|
8360
|
+
"allowNo": false,
|
|
8361
|
+
"type": "boolean"
|
|
8362
|
+
},
|
|
8363
|
+
"websocket": {
|
|
8364
|
+
"description": "WebSocket host:port for VS Code SFDX Hardis UI integration",
|
|
8365
|
+
"name": "websocket",
|
|
8366
|
+
"summary": "Websocket host:port for VsCode SFDX Hardis UI integration",
|
|
8367
|
+
"hasDynamicHelp": false,
|
|
8368
|
+
"multiple": false,
|
|
8369
|
+
"type": "option"
|
|
8370
|
+
},
|
|
8371
|
+
"skipauth": {
|
|
8372
|
+
"description": "Skip authentication check when a default username is required",
|
|
8373
|
+
"name": "skipauth",
|
|
8374
|
+
"summary": "Skip authentication check when a default username is required",
|
|
8375
|
+
"allowNo": false,
|
|
8376
|
+
"type": "boolean"
|
|
8377
|
+
}
|
|
8378
|
+
},
|
|
8379
|
+
"hasDynamicHelp": true,
|
|
8380
|
+
"hiddenAliases": [],
|
|
8381
|
+
"id": "hardis:org:refresh:after-refresh",
|
|
8382
|
+
"pluginAlias": "sfdx-hardis",
|
|
8383
|
+
"pluginName": "sfdx-hardis",
|
|
8384
|
+
"pluginType": "core",
|
|
8385
|
+
"strict": true,
|
|
8386
|
+
"enableJsonFlag": true,
|
|
8387
|
+
"title": "Restore Connected Apps after org refresh",
|
|
8388
|
+
"requiresProject": true,
|
|
8389
|
+
"isESM": true,
|
|
8390
|
+
"relativePath": [
|
|
8391
|
+
"lib",
|
|
8392
|
+
"commands",
|
|
8393
|
+
"hardis",
|
|
8394
|
+
"org",
|
|
8395
|
+
"refresh",
|
|
8396
|
+
"after-refresh.js"
|
|
8397
|
+
],
|
|
8398
|
+
"aliasPermutations": [],
|
|
8399
|
+
"permutations": [
|
|
8400
|
+
"hardis:org:refresh:after-refresh",
|
|
8401
|
+
"org:hardis:refresh:after-refresh",
|
|
8402
|
+
"org:refresh:hardis:after-refresh",
|
|
8403
|
+
"org:refresh:after-refresh:hardis",
|
|
8404
|
+
"hardis:refresh:org:after-refresh",
|
|
8405
|
+
"refresh:hardis:org:after-refresh",
|
|
8406
|
+
"refresh:org:hardis:after-refresh",
|
|
8407
|
+
"refresh:org:after-refresh:hardis",
|
|
8408
|
+
"hardis:refresh:after-refresh:org",
|
|
8409
|
+
"refresh:hardis:after-refresh:org",
|
|
8410
|
+
"refresh:after-refresh:hardis:org",
|
|
8411
|
+
"refresh:after-refresh:org:hardis",
|
|
8412
|
+
"hardis:org:after-refresh:refresh",
|
|
8413
|
+
"org:hardis:after-refresh:refresh",
|
|
8414
|
+
"org:after-refresh:hardis:refresh",
|
|
8415
|
+
"org:after-refresh:refresh:hardis",
|
|
8416
|
+
"hardis:after-refresh:org:refresh",
|
|
8417
|
+
"after-refresh:hardis:org:refresh",
|
|
8418
|
+
"after-refresh:org:hardis:refresh",
|
|
8419
|
+
"after-refresh:org:refresh:hardis",
|
|
8420
|
+
"hardis:after-refresh:refresh:org",
|
|
8421
|
+
"after-refresh:hardis:refresh:org",
|
|
8422
|
+
"after-refresh:refresh:hardis:org",
|
|
8423
|
+
"after-refresh:refresh:org:hardis"
|
|
8424
|
+
]
|
|
8425
|
+
},
|
|
8426
|
+
"hardis:org:refresh:before-refresh": {
|
|
8427
|
+
"aliases": [],
|
|
8428
|
+
"args": {},
|
|
8429
|
+
"description": "\n## Command Behavior\n\n**Backs up all Connected Apps (including Consumer Secrets), certificates, custom settings, records and other metadata from a Salesforce org before a sandbox refresh, enabling full restoration after the refresh.**\n\nThis command prepares a complete backup prior to a sandbox refresh. It creates a dedicated project under `scripts/sandbox-refresh/<sandbox-folder>`, retrieves metadata and data, attempts to capture Connected App consumer secrets, and can optionally delete the apps so they can be reuploaded after the refresh.\n\nKey functionalities:\n\n- **Create a save project:** Generates a dedicated project folder to store all artifacts for the sandbox backup.\n- **Find and select Connected Apps:** Lists Connected Apps in the org and lets you pick specific apps, use a name filter, or process all apps.\n- **Save metadata for restore:** Builds a manifest and retrieves the metadata types you choose so they can be restored after the refresh.\n- **Capture Consumer Secrets:** Attempts to capture Connected App consumer secrets automatically (opens a browser session when possible) and falls back to a short manual prompt when needed.\n- **Collect certificates:** Saves certificate files and their definitions so they can be redeployed later.\n- **Export custom settings & records:** Lets you pick custom settings to export as JSON and optionally export records using configured data workspaces.\n- **Persist choices & report:** Stores your backup choices in project config and sends report files for traceability.\n- **Optional cleanup:** Can delete backed-up Connected Apps from the org so they can be re-uploaded cleanly after the refresh.\n- **Interactive safety checks:** Prompts you to confirm package contents and other potentially destructive actions; sensible defaults are chosen where appropriate.\n\nThis command is part of [sfdx-hardis Sandbox Refresh](https://sfdx-hardis.cloudity.com/salesforce-sandbox-refresh/) and is intended to be run before a sandbox refresh so that all credentials, certificates, metadata and data can be restored afterwards.\n\n<details markdown=\"1\">\n<summary>Technical explanations</summary>\n\n- **Salesforce CLI Integration:** Uses `sf org list metadata`, `sf project retrieve start`, `sf project generate`, `sf project deploy start`, and `sf data tree export`/`import` where applicable.\n- **Metadata Handling:** Writes and reads package XML files under the generated project (`manifest/`), copies MDAPI certificate artifacts into `force-app/main/default/certs`, and produces `package-metadata-to-restore.xml` for post-refresh deployment.\n- **Consumer Secret Handling:** Uses `puppeteer-core` with an executable path from `getChromeExecutablePath()` (env var `PUPPETEER_EXECUTABLE_PATH` may be required). Falls back to manual prompt when browser automation cannot be used.\n- **Data & Records:** Exports custom settings to JSON and supports exporting records through SFDMU workspaces chosen interactively.\n- **Config & Reporting:** Updates project/user config under `config/.sfdx-hardis.yml#refreshSandboxConfig` and reports artifacts to the WebSocket client.\n- **Error Handling:** Provides clear error messages and a summary response object indicating success/failure and which secrets were captured.\n\n</details>\n",
|
|
8430
|
+
"examples": [
|
|
8431
|
+
"$ sf hardis:org:refresh:before-refresh",
|
|
8432
|
+
"$ sf hardis:org:refresh:before-refresh --name \"MyConnectedApp\"",
|
|
8433
|
+
"$ sf hardis:org:refresh:before-refresh --name \"App1,App2,App3\"",
|
|
8434
|
+
"$ sf hardis:org:refresh:before-refresh --all",
|
|
8435
|
+
"$ sf hardis:org:refresh:before-refresh --delete"
|
|
8436
|
+
],
|
|
8437
|
+
"flags": {
|
|
8438
|
+
"json": {
|
|
8439
|
+
"description": "Format output as json.",
|
|
8440
|
+
"helpGroup": "GLOBAL",
|
|
8441
|
+
"name": "json",
|
|
8442
|
+
"allowNo": false,
|
|
8443
|
+
"type": "boolean"
|
|
8444
|
+
},
|
|
8445
|
+
"flags-dir": {
|
|
8446
|
+
"helpGroup": "GLOBAL",
|
|
8447
|
+
"name": "flags-dir",
|
|
8448
|
+
"summary": "Import flag values from a directory.",
|
|
8449
|
+
"hasDynamicHelp": false,
|
|
8450
|
+
"multiple": false,
|
|
8451
|
+
"type": "option"
|
|
8452
|
+
},
|
|
8453
|
+
"target-org": {
|
|
8454
|
+
"char": "o",
|
|
8455
|
+
"name": "target-org",
|
|
8456
|
+
"noCacheDefault": true,
|
|
8457
|
+
"required": true,
|
|
8458
|
+
"summary": "Username or alias of the target org. Not required if the `target-org` configuration variable is already set.",
|
|
8459
|
+
"hasDynamicHelp": true,
|
|
8460
|
+
"multiple": false,
|
|
8461
|
+
"type": "option"
|
|
8462
|
+
},
|
|
8463
|
+
"delete": {
|
|
8464
|
+
"char": "d",
|
|
8465
|
+
"description": "By default, Connected Apps are not deleted from the org after saving. Set this flag to force their deletion so they will be able to be reuploaded again after refreshing the org.",
|
|
8466
|
+
"name": "delete",
|
|
8467
|
+
"summary": "Delete Connected Apps from org after saving",
|
|
8468
|
+
"allowNo": false,
|
|
8469
|
+
"type": "boolean"
|
|
8470
|
+
},
|
|
8471
|
+
"name": {
|
|
8472
|
+
"char": "n",
|
|
8473
|
+
"description": "Connected App name(s) to process. For multiple apps, separate with commas (e.g., \"App1,App2\")",
|
|
8474
|
+
"name": "name",
|
|
8475
|
+
"summary": "Filter according to Name criteria",
|
|
8476
|
+
"hasDynamicHelp": false,
|
|
8477
|
+
"multiple": false,
|
|
8478
|
+
"type": "option"
|
|
8479
|
+
},
|
|
8480
|
+
"all": {
|
|
8481
|
+
"char": "a",
|
|
8482
|
+
"description": "If set, all Connected Apps from the org will be processed. Takes precedence over --name if both are specified.",
|
|
8483
|
+
"name": "all",
|
|
8484
|
+
"summary": "Process all Connected Apps without selection prompt",
|
|
8470
8485
|
"allowNo": false,
|
|
8471
8486
|
"type": "boolean"
|
|
8472
8487
|
},
|
|
@@ -8482,67 +8497,52 @@
|
|
|
8482
8497
|
"name": "skipauth",
|
|
8483
8498
|
"allowNo": false,
|
|
8484
8499
|
"type": "boolean"
|
|
8485
|
-
},
|
|
8486
|
-
"target-org": {
|
|
8487
|
-
"aliases": [
|
|
8488
|
-
"targetusername",
|
|
8489
|
-
"u"
|
|
8490
|
-
],
|
|
8491
|
-
"char": "o",
|
|
8492
|
-
"deprecateAliases": true,
|
|
8493
|
-
"name": "target-org",
|
|
8494
|
-
"noCacheDefault": true,
|
|
8495
|
-
"required": true,
|
|
8496
|
-
"summary": "Username or alias of the target org. Not required if the `target-org` configuration variable is already set.",
|
|
8497
|
-
"hasDynamicHelp": true,
|
|
8498
|
-
"multiple": false,
|
|
8499
|
-
"type": "option"
|
|
8500
8500
|
}
|
|
8501
8501
|
},
|
|
8502
8502
|
"hasDynamicHelp": true,
|
|
8503
8503
|
"hiddenAliases": [],
|
|
8504
|
-
"id": "hardis:org:
|
|
8504
|
+
"id": "hardis:org:refresh:before-refresh",
|
|
8505
8505
|
"pluginAlias": "sfdx-hardis",
|
|
8506
8506
|
"pluginName": "sfdx-hardis",
|
|
8507
8507
|
"pluginType": "core",
|
|
8508
8508
|
"strict": true,
|
|
8509
8509
|
"enableJsonFlag": true,
|
|
8510
|
-
"
|
|
8510
|
+
"requiresProject": true,
|
|
8511
8511
|
"isESM": true,
|
|
8512
8512
|
"relativePath": [
|
|
8513
8513
|
"lib",
|
|
8514
8514
|
"commands",
|
|
8515
8515
|
"hardis",
|
|
8516
8516
|
"org",
|
|
8517
|
-
"
|
|
8518
|
-
"
|
|
8517
|
+
"refresh",
|
|
8518
|
+
"before-refresh.js"
|
|
8519
8519
|
],
|
|
8520
8520
|
"aliasPermutations": [],
|
|
8521
8521
|
"permutations": [
|
|
8522
|
-
"hardis:org:
|
|
8523
|
-
"org:hardis:
|
|
8524
|
-
"org:
|
|
8525
|
-
"org:
|
|
8526
|
-
"hardis:
|
|
8527
|
-
"
|
|
8528
|
-
"
|
|
8529
|
-
"
|
|
8530
|
-
"hardis:
|
|
8531
|
-
"
|
|
8532
|
-
"
|
|
8533
|
-
"
|
|
8534
|
-
"hardis:org:
|
|
8535
|
-
"org:hardis:
|
|
8536
|
-
"org:
|
|
8537
|
-
"org:
|
|
8538
|
-
"hardis:
|
|
8539
|
-
"
|
|
8540
|
-
"
|
|
8541
|
-
"
|
|
8542
|
-
"hardis:
|
|
8543
|
-
"
|
|
8544
|
-
"
|
|
8545
|
-
"
|
|
8522
|
+
"hardis:org:refresh:before-refresh",
|
|
8523
|
+
"org:hardis:refresh:before-refresh",
|
|
8524
|
+
"org:refresh:hardis:before-refresh",
|
|
8525
|
+
"org:refresh:before-refresh:hardis",
|
|
8526
|
+
"hardis:refresh:org:before-refresh",
|
|
8527
|
+
"refresh:hardis:org:before-refresh",
|
|
8528
|
+
"refresh:org:hardis:before-refresh",
|
|
8529
|
+
"refresh:org:before-refresh:hardis",
|
|
8530
|
+
"hardis:refresh:before-refresh:org",
|
|
8531
|
+
"refresh:hardis:before-refresh:org",
|
|
8532
|
+
"refresh:before-refresh:hardis:org",
|
|
8533
|
+
"refresh:before-refresh:org:hardis",
|
|
8534
|
+
"hardis:org:before-refresh:refresh",
|
|
8535
|
+
"org:hardis:before-refresh:refresh",
|
|
8536
|
+
"org:before-refresh:hardis:refresh",
|
|
8537
|
+
"org:before-refresh:refresh:hardis",
|
|
8538
|
+
"hardis:before-refresh:org:refresh",
|
|
8539
|
+
"before-refresh:hardis:org:refresh",
|
|
8540
|
+
"before-refresh:org:hardis:refresh",
|
|
8541
|
+
"before-refresh:org:refresh:hardis",
|
|
8542
|
+
"hardis:before-refresh:refresh:org",
|
|
8543
|
+
"before-refresh:hardis:refresh:org",
|
|
8544
|
+
"before-refresh:refresh:hardis:org",
|
|
8545
|
+
"before-refresh:refresh:org:hardis"
|
|
8546
8546
|
]
|
|
8547
8547
|
},
|
|
8548
8548
|
"hardis:org:retrieve:packageconfig": {
|
|
@@ -11757,6 +11757,221 @@
|
|
|
11757
11757
|
"xml:clean:project:hardis"
|
|
11758
11758
|
]
|
|
11759
11759
|
},
|
|
11760
|
+
"hardis:project:fix:profiletabs": {
|
|
11761
|
+
"aliases": [],
|
|
11762
|
+
"args": {},
|
|
11763
|
+
"description": "\n## Command Behavior\n\n**Interactively updates tab visibility settings in Salesforce profiles, addressing a common issue where tab visibilities are not correctly retrieved by `sf project retrieve start`.**\n\nThis command provides a user-friendly interface to manage tab settings within your profile XML files, ensuring that your local project accurately reflects the intended tab configurations in your Salesforce org.\n\nKey functionalities:\n\n- **Interactive Tab Selection:** Displays a multi-select menu of all available tabs in your org, allowing you to choose which tabs to update.\n- **Visibility Control:** Lets you set the visibility for the selected tabs to either `DefaultOn` (Visible) or `Hidden`.\n- **Profile Selection:** Presents a multi-select menu of all .profile-meta.xml files in your project, allowing you to apply the tab visibility changes to specific profiles.\n- **XML Updates:** Modifies the <tabVisibilities> section of the selected profile XML files to reflect the chosen tab settings. If a tab visibility setting already exists for a selected tab, it will be updated; otherwise, a new one will be added.\n- **Sorted Output:** The <tabVisibilities> in the updated profile XML files are sorted alphabetically for consistency and readability.\n\n<details markdown=\"1\">\n<summary>Technical explanations</summary>\n\nThe command's technical implementation involves:\n\n- **SOQL Queries (Tooling API):** It queries the `TabDefinition` object using `soqlQueryTooling` to retrieve a list of all available tabs in the target org.\n- **File Discovery:** Uses `glob` to find all .profile-meta.xml files within the specified project path.\n- **Interactive Prompts:** Leverages the `prompts` library to create interactive menus for selecting tabs, visibility settings, and profiles.\n- **XML Parsing and Manipulation:** Uses `parseXmlFile` to read the content of profile XML files and `writeXmlFile` to write the modified content back. It manipulates the `tabVisibilities` array within the parsed XML to add or update tab settings.\n- **Array Sorting:** Employs the `sort-array` library to sort the `tabVisibilities` alphabetically by tab name.\n- **Logging:** Provides feedback to the user about which profiles have been updated and a summary of the changes.\n</details>\n",
|
|
11764
|
+
"examples": [
|
|
11765
|
+
"$ sf hardis:project:fix:profiletabs"
|
|
11766
|
+
],
|
|
11767
|
+
"flags": {
|
|
11768
|
+
"json": {
|
|
11769
|
+
"description": "Format output as json.",
|
|
11770
|
+
"helpGroup": "GLOBAL",
|
|
11771
|
+
"name": "json",
|
|
11772
|
+
"allowNo": false,
|
|
11773
|
+
"type": "boolean"
|
|
11774
|
+
},
|
|
11775
|
+
"flags-dir": {
|
|
11776
|
+
"helpGroup": "GLOBAL",
|
|
11777
|
+
"name": "flags-dir",
|
|
11778
|
+
"summary": "Import flag values from a directory.",
|
|
11779
|
+
"hasDynamicHelp": false,
|
|
11780
|
+
"multiple": false,
|
|
11781
|
+
"type": "option"
|
|
11782
|
+
},
|
|
11783
|
+
"path": {
|
|
11784
|
+
"char": "p",
|
|
11785
|
+
"description": "Root folder",
|
|
11786
|
+
"name": "path",
|
|
11787
|
+
"default": "/home/runner/work/sfdx-hardis/sfdx-hardis",
|
|
11788
|
+
"hasDynamicHelp": false,
|
|
11789
|
+
"multiple": false,
|
|
11790
|
+
"type": "option"
|
|
11791
|
+
},
|
|
11792
|
+
"debug": {
|
|
11793
|
+
"char": "d",
|
|
11794
|
+
"description": "Activate debug mode (more logs)",
|
|
11795
|
+
"name": "debug",
|
|
11796
|
+
"allowNo": false,
|
|
11797
|
+
"type": "boolean"
|
|
11798
|
+
},
|
|
11799
|
+
"websocket": {
|
|
11800
|
+
"description": "Websocket host:port for VsCode SFDX Hardis UI integration",
|
|
11801
|
+
"name": "websocket",
|
|
11802
|
+
"hasDynamicHelp": false,
|
|
11803
|
+
"multiple": false,
|
|
11804
|
+
"type": "option"
|
|
11805
|
+
},
|
|
11806
|
+
"skipauth": {
|
|
11807
|
+
"description": "Skip authentication check when a default username is required",
|
|
11808
|
+
"name": "skipauth",
|
|
11809
|
+
"allowNo": false,
|
|
11810
|
+
"type": "boolean"
|
|
11811
|
+
},
|
|
11812
|
+
"target-org": {
|
|
11813
|
+
"aliases": [
|
|
11814
|
+
"targetusername",
|
|
11815
|
+
"u"
|
|
11816
|
+
],
|
|
11817
|
+
"char": "o",
|
|
11818
|
+
"deprecateAliases": true,
|
|
11819
|
+
"name": "target-org",
|
|
11820
|
+
"noCacheDefault": true,
|
|
11821
|
+
"required": true,
|
|
11822
|
+
"summary": "Username or alias of the target org. Not required if the `target-org` configuration variable is already set.",
|
|
11823
|
+
"hasDynamicHelp": true,
|
|
11824
|
+
"multiple": false,
|
|
11825
|
+
"type": "option"
|
|
11826
|
+
}
|
|
11827
|
+
},
|
|
11828
|
+
"hasDynamicHelp": true,
|
|
11829
|
+
"hiddenAliases": [],
|
|
11830
|
+
"id": "hardis:project:fix:profiletabs",
|
|
11831
|
+
"pluginAlias": "sfdx-hardis",
|
|
11832
|
+
"pluginName": "sfdx-hardis",
|
|
11833
|
+
"pluginType": "core",
|
|
11834
|
+
"strict": true,
|
|
11835
|
+
"enableJsonFlag": true,
|
|
11836
|
+
"title": "Fix profiles to add tabs that are not retrieved by SF CLI",
|
|
11837
|
+
"requiresProject": true,
|
|
11838
|
+
"isESM": true,
|
|
11839
|
+
"relativePath": [
|
|
11840
|
+
"lib",
|
|
11841
|
+
"commands",
|
|
11842
|
+
"hardis",
|
|
11843
|
+
"project",
|
|
11844
|
+
"fix",
|
|
11845
|
+
"profiletabs.js"
|
|
11846
|
+
],
|
|
11847
|
+
"aliasPermutations": [],
|
|
11848
|
+
"permutations": [
|
|
11849
|
+
"hardis:project:fix:profiletabs",
|
|
11850
|
+
"project:hardis:fix:profiletabs",
|
|
11851
|
+
"project:fix:hardis:profiletabs",
|
|
11852
|
+
"project:fix:profiletabs:hardis",
|
|
11853
|
+
"hardis:fix:project:profiletabs",
|
|
11854
|
+
"fix:hardis:project:profiletabs",
|
|
11855
|
+
"fix:project:hardis:profiletabs",
|
|
11856
|
+
"fix:project:profiletabs:hardis",
|
|
11857
|
+
"hardis:fix:profiletabs:project",
|
|
11858
|
+
"fix:hardis:profiletabs:project",
|
|
11859
|
+
"fix:profiletabs:hardis:project",
|
|
11860
|
+
"fix:profiletabs:project:hardis",
|
|
11861
|
+
"hardis:project:profiletabs:fix",
|
|
11862
|
+
"project:hardis:profiletabs:fix",
|
|
11863
|
+
"project:profiletabs:hardis:fix",
|
|
11864
|
+
"project:profiletabs:fix:hardis",
|
|
11865
|
+
"hardis:profiletabs:project:fix",
|
|
11866
|
+
"profiletabs:hardis:project:fix",
|
|
11867
|
+
"profiletabs:project:hardis:fix",
|
|
11868
|
+
"profiletabs:project:fix:hardis",
|
|
11869
|
+
"hardis:profiletabs:fix:project",
|
|
11870
|
+
"profiletabs:hardis:fix:project",
|
|
11871
|
+
"profiletabs:fix:hardis:project",
|
|
11872
|
+
"profiletabs:fix:project:hardis"
|
|
11873
|
+
]
|
|
11874
|
+
},
|
|
11875
|
+
"hardis:project:fix:v53flexipages": {
|
|
11876
|
+
"aliases": [],
|
|
11877
|
+
"args": {},
|
|
11878
|
+
"description": "\n## Command Behavior\n\n**Fixes Salesforce FlexiPages for compatibility with API Version 53.0 (Winter '22 release) by adding missing identifiers to component instances.**\n\nSalesforce introduced a change in API Version 53.0 that requires `identifier` tags within `componentInstance` and `fieldInstance` elements in FlexiPage metadata. If these identifiers are missing, deployments to orgs with API version 53.0 or higher will fail. This command automates the process of adding these missing identifiers, ensuring your FlexiPages remain deployable.\n\nKey functionalities:\n\n- **Targeted FlexiPage Processing:** Scans all .flexipage-meta.xml files within the specified root folder (defaults to current working directory).\n- **Identifier Injection:** Inserts a unique `identifier` tag (e.g., `SFDX_HARDIS_REPLACEMENT_ID`) into `componentInstance` and `fieldInstance` elements that lack one.\n\n**Important Note:** After running this command, ensure you update your `apiVersion` to `53.0` (or higher) in your `package.xml` and `sfdx-project.json` files.\n\n<details markdown=\"1\">\n<summary>Technical explanations</summary>\n\nThe command's technical implementation involves:\n\n- **File Discovery:** Uses `glob` to find all .flexipage-meta.xml files.\n- **Content Reading:** Reads the XML content of each FlexiPage file.\n- **Regular Expression Replacement:** Employs a set of regular expressions to identify specific XML patterns (componentName.../componentName.../componentInstance, componentName.../componentName.../visibilityRule, fieldItem.../fieldItem.../fieldInstance) that are missing the `identifier` tag.\n- **Dynamic ID Generation:** For each match, it generates a unique identifier (e.g., `sfdxHardisIdX`) and injects it into the XML structure.\n- **File Writing:** If changes are made, the modified XML content is written back to the FlexiPage file using `fs.writeFile`.\n- **Logging:** Provides messages about which FlexiPages are being processed and a summary of the total number of identifiers added.\n</details>\n",
|
|
11879
|
+
"examples": [
|
|
11880
|
+
"$ sf hardis:project:fix:v53flexipages"
|
|
11881
|
+
],
|
|
11882
|
+
"flags": {
|
|
11883
|
+
"json": {
|
|
11884
|
+
"description": "Format output as json.",
|
|
11885
|
+
"helpGroup": "GLOBAL",
|
|
11886
|
+
"name": "json",
|
|
11887
|
+
"allowNo": false,
|
|
11888
|
+
"type": "boolean"
|
|
11889
|
+
},
|
|
11890
|
+
"flags-dir": {
|
|
11891
|
+
"helpGroup": "GLOBAL",
|
|
11892
|
+
"name": "flags-dir",
|
|
11893
|
+
"summary": "Import flag values from a directory.",
|
|
11894
|
+
"hasDynamicHelp": false,
|
|
11895
|
+
"multiple": false,
|
|
11896
|
+
"type": "option"
|
|
11897
|
+
},
|
|
11898
|
+
"path": {
|
|
11899
|
+
"char": "p",
|
|
11900
|
+
"description": "Root folder",
|
|
11901
|
+
"name": "path",
|
|
11902
|
+
"default": "/home/runner/work/sfdx-hardis/sfdx-hardis",
|
|
11903
|
+
"hasDynamicHelp": false,
|
|
11904
|
+
"multiple": false,
|
|
11905
|
+
"type": "option"
|
|
11906
|
+
},
|
|
11907
|
+
"debug": {
|
|
11908
|
+
"char": "d",
|
|
11909
|
+
"description": "Activate debug mode (more logs)",
|
|
11910
|
+
"name": "debug",
|
|
11911
|
+
"allowNo": false,
|
|
11912
|
+
"type": "boolean"
|
|
11913
|
+
},
|
|
11914
|
+
"websocket": {
|
|
11915
|
+
"description": "Websocket host:port for VsCode SFDX Hardis UI integration",
|
|
11916
|
+
"name": "websocket",
|
|
11917
|
+
"hasDynamicHelp": false,
|
|
11918
|
+
"multiple": false,
|
|
11919
|
+
"type": "option"
|
|
11920
|
+
},
|
|
11921
|
+
"skipauth": {
|
|
11922
|
+
"description": "Skip authentication check when a default username is required",
|
|
11923
|
+
"name": "skipauth",
|
|
11924
|
+
"allowNo": false,
|
|
11925
|
+
"type": "boolean"
|
|
11926
|
+
}
|
|
11927
|
+
},
|
|
11928
|
+
"hasDynamicHelp": false,
|
|
11929
|
+
"hiddenAliases": [],
|
|
11930
|
+
"id": "hardis:project:fix:v53flexipages",
|
|
11931
|
+
"pluginAlias": "sfdx-hardis",
|
|
11932
|
+
"pluginName": "sfdx-hardis",
|
|
11933
|
+
"pluginType": "core",
|
|
11934
|
+
"strict": true,
|
|
11935
|
+
"enableJsonFlag": true,
|
|
11936
|
+
"title": "Fix flexipages for v53",
|
|
11937
|
+
"requiresProject": true,
|
|
11938
|
+
"isESM": true,
|
|
11939
|
+
"relativePath": [
|
|
11940
|
+
"lib",
|
|
11941
|
+
"commands",
|
|
11942
|
+
"hardis",
|
|
11943
|
+
"project",
|
|
11944
|
+
"fix",
|
|
11945
|
+
"v53flexipages.js"
|
|
11946
|
+
],
|
|
11947
|
+
"aliasPermutations": [],
|
|
11948
|
+
"permutations": [
|
|
11949
|
+
"hardis:project:fix:v53flexipages",
|
|
11950
|
+
"project:hardis:fix:v53flexipages",
|
|
11951
|
+
"project:fix:hardis:v53flexipages",
|
|
11952
|
+
"project:fix:v53flexipages:hardis",
|
|
11953
|
+
"hardis:fix:project:v53flexipages",
|
|
11954
|
+
"fix:hardis:project:v53flexipages",
|
|
11955
|
+
"fix:project:hardis:v53flexipages",
|
|
11956
|
+
"fix:project:v53flexipages:hardis",
|
|
11957
|
+
"hardis:fix:v53flexipages:project",
|
|
11958
|
+
"fix:hardis:v53flexipages:project",
|
|
11959
|
+
"fix:v53flexipages:hardis:project",
|
|
11960
|
+
"fix:v53flexipages:project:hardis",
|
|
11961
|
+
"hardis:project:v53flexipages:fix",
|
|
11962
|
+
"project:hardis:v53flexipages:fix",
|
|
11963
|
+
"project:v53flexipages:hardis:fix",
|
|
11964
|
+
"project:v53flexipages:fix:hardis",
|
|
11965
|
+
"hardis:v53flexipages:project:fix",
|
|
11966
|
+
"v53flexipages:hardis:project:fix",
|
|
11967
|
+
"v53flexipages:project:hardis:fix",
|
|
11968
|
+
"v53flexipages:project:fix:hardis",
|
|
11969
|
+
"hardis:v53flexipages:fix:project",
|
|
11970
|
+
"v53flexipages:hardis:fix:project",
|
|
11971
|
+
"v53flexipages:fix:hardis:project",
|
|
11972
|
+
"v53flexipages:fix:project:hardis"
|
|
11973
|
+
]
|
|
11974
|
+
},
|
|
11760
11975
|
"hardis:project:deploy:notify": {
|
|
11761
11976
|
"aliases": [],
|
|
11762
11977
|
"args": {},
|
|
@@ -12931,221 +13146,6 @@
|
|
|
12931
13146
|
"validate:deploy:project:hardis"
|
|
12932
13147
|
]
|
|
12933
13148
|
},
|
|
12934
|
-
"hardis:project:fix:profiletabs": {
|
|
12935
|
-
"aliases": [],
|
|
12936
|
-
"args": {},
|
|
12937
|
-
"description": "\n## Command Behavior\n\n**Interactively updates tab visibility settings in Salesforce profiles, addressing a common issue where tab visibilities are not correctly retrieved by `sf project retrieve start`.**\n\nThis command provides a user-friendly interface to manage tab settings within your profile XML files, ensuring that your local project accurately reflects the intended tab configurations in your Salesforce org.\n\nKey functionalities:\n\n- **Interactive Tab Selection:** Displays a multi-select menu of all available tabs in your org, allowing you to choose which tabs to update.\n- **Visibility Control:** Lets you set the visibility for the selected tabs to either `DefaultOn` (Visible) or `Hidden`.\n- **Profile Selection:** Presents a multi-select menu of all .profile-meta.xml files in your project, allowing you to apply the tab visibility changes to specific profiles.\n- **XML Updates:** Modifies the <tabVisibilities> section of the selected profile XML files to reflect the chosen tab settings. If a tab visibility setting already exists for a selected tab, it will be updated; otherwise, a new one will be added.\n- **Sorted Output:** The <tabVisibilities> in the updated profile XML files are sorted alphabetically for consistency and readability.\n\n<details markdown=\"1\">\n<summary>Technical explanations</summary>\n\nThe command's technical implementation involves:\n\n- **SOQL Queries (Tooling API):** It queries the `TabDefinition` object using `soqlQueryTooling` to retrieve a list of all available tabs in the target org.\n- **File Discovery:** Uses `glob` to find all .profile-meta.xml files within the specified project path.\n- **Interactive Prompts:** Leverages the `prompts` library to create interactive menus for selecting tabs, visibility settings, and profiles.\n- **XML Parsing and Manipulation:** Uses `parseXmlFile` to read the content of profile XML files and `writeXmlFile` to write the modified content back. It manipulates the `tabVisibilities` array within the parsed XML to add or update tab settings.\n- **Array Sorting:** Employs the `sort-array` library to sort the `tabVisibilities` alphabetically by tab name.\n- **Logging:** Provides feedback to the user about which profiles have been updated and a summary of the changes.\n</details>\n",
|
|
12938
|
-
"examples": [
|
|
12939
|
-
"$ sf hardis:project:fix:profiletabs"
|
|
12940
|
-
],
|
|
12941
|
-
"flags": {
|
|
12942
|
-
"json": {
|
|
12943
|
-
"description": "Format output as json.",
|
|
12944
|
-
"helpGroup": "GLOBAL",
|
|
12945
|
-
"name": "json",
|
|
12946
|
-
"allowNo": false,
|
|
12947
|
-
"type": "boolean"
|
|
12948
|
-
},
|
|
12949
|
-
"flags-dir": {
|
|
12950
|
-
"helpGroup": "GLOBAL",
|
|
12951
|
-
"name": "flags-dir",
|
|
12952
|
-
"summary": "Import flag values from a directory.",
|
|
12953
|
-
"hasDynamicHelp": false,
|
|
12954
|
-
"multiple": false,
|
|
12955
|
-
"type": "option"
|
|
12956
|
-
},
|
|
12957
|
-
"path": {
|
|
12958
|
-
"char": "p",
|
|
12959
|
-
"description": "Root folder",
|
|
12960
|
-
"name": "path",
|
|
12961
|
-
"default": "/home/runner/work/sfdx-hardis/sfdx-hardis",
|
|
12962
|
-
"hasDynamicHelp": false,
|
|
12963
|
-
"multiple": false,
|
|
12964
|
-
"type": "option"
|
|
12965
|
-
},
|
|
12966
|
-
"debug": {
|
|
12967
|
-
"char": "d",
|
|
12968
|
-
"description": "Activate debug mode (more logs)",
|
|
12969
|
-
"name": "debug",
|
|
12970
|
-
"allowNo": false,
|
|
12971
|
-
"type": "boolean"
|
|
12972
|
-
},
|
|
12973
|
-
"websocket": {
|
|
12974
|
-
"description": "Websocket host:port for VsCode SFDX Hardis UI integration",
|
|
12975
|
-
"name": "websocket",
|
|
12976
|
-
"hasDynamicHelp": false,
|
|
12977
|
-
"multiple": false,
|
|
12978
|
-
"type": "option"
|
|
12979
|
-
},
|
|
12980
|
-
"skipauth": {
|
|
12981
|
-
"description": "Skip authentication check when a default username is required",
|
|
12982
|
-
"name": "skipauth",
|
|
12983
|
-
"allowNo": false,
|
|
12984
|
-
"type": "boolean"
|
|
12985
|
-
},
|
|
12986
|
-
"target-org": {
|
|
12987
|
-
"aliases": [
|
|
12988
|
-
"targetusername",
|
|
12989
|
-
"u"
|
|
12990
|
-
],
|
|
12991
|
-
"char": "o",
|
|
12992
|
-
"deprecateAliases": true,
|
|
12993
|
-
"name": "target-org",
|
|
12994
|
-
"noCacheDefault": true,
|
|
12995
|
-
"required": true,
|
|
12996
|
-
"summary": "Username or alias of the target org. Not required if the `target-org` configuration variable is already set.",
|
|
12997
|
-
"hasDynamicHelp": true,
|
|
12998
|
-
"multiple": false,
|
|
12999
|
-
"type": "option"
|
|
13000
|
-
}
|
|
13001
|
-
},
|
|
13002
|
-
"hasDynamicHelp": true,
|
|
13003
|
-
"hiddenAliases": [],
|
|
13004
|
-
"id": "hardis:project:fix:profiletabs",
|
|
13005
|
-
"pluginAlias": "sfdx-hardis",
|
|
13006
|
-
"pluginName": "sfdx-hardis",
|
|
13007
|
-
"pluginType": "core",
|
|
13008
|
-
"strict": true,
|
|
13009
|
-
"enableJsonFlag": true,
|
|
13010
|
-
"title": "Fix profiles to add tabs that are not retrieved by SF CLI",
|
|
13011
|
-
"requiresProject": true,
|
|
13012
|
-
"isESM": true,
|
|
13013
|
-
"relativePath": [
|
|
13014
|
-
"lib",
|
|
13015
|
-
"commands",
|
|
13016
|
-
"hardis",
|
|
13017
|
-
"project",
|
|
13018
|
-
"fix",
|
|
13019
|
-
"profiletabs.js"
|
|
13020
|
-
],
|
|
13021
|
-
"aliasPermutations": [],
|
|
13022
|
-
"permutations": [
|
|
13023
|
-
"hardis:project:fix:profiletabs",
|
|
13024
|
-
"project:hardis:fix:profiletabs",
|
|
13025
|
-
"project:fix:hardis:profiletabs",
|
|
13026
|
-
"project:fix:profiletabs:hardis",
|
|
13027
|
-
"hardis:fix:project:profiletabs",
|
|
13028
|
-
"fix:hardis:project:profiletabs",
|
|
13029
|
-
"fix:project:hardis:profiletabs",
|
|
13030
|
-
"fix:project:profiletabs:hardis",
|
|
13031
|
-
"hardis:fix:profiletabs:project",
|
|
13032
|
-
"fix:hardis:profiletabs:project",
|
|
13033
|
-
"fix:profiletabs:hardis:project",
|
|
13034
|
-
"fix:profiletabs:project:hardis",
|
|
13035
|
-
"hardis:project:profiletabs:fix",
|
|
13036
|
-
"project:hardis:profiletabs:fix",
|
|
13037
|
-
"project:profiletabs:hardis:fix",
|
|
13038
|
-
"project:profiletabs:fix:hardis",
|
|
13039
|
-
"hardis:profiletabs:project:fix",
|
|
13040
|
-
"profiletabs:hardis:project:fix",
|
|
13041
|
-
"profiletabs:project:hardis:fix",
|
|
13042
|
-
"profiletabs:project:fix:hardis",
|
|
13043
|
-
"hardis:profiletabs:fix:project",
|
|
13044
|
-
"profiletabs:hardis:fix:project",
|
|
13045
|
-
"profiletabs:fix:hardis:project",
|
|
13046
|
-
"profiletabs:fix:project:hardis"
|
|
13047
|
-
]
|
|
13048
|
-
},
|
|
13049
|
-
"hardis:project:fix:v53flexipages": {
|
|
13050
|
-
"aliases": [],
|
|
13051
|
-
"args": {},
|
|
13052
|
-
"description": "\n## Command Behavior\n\n**Fixes Salesforce FlexiPages for compatibility with API Version 53.0 (Winter '22 release) by adding missing identifiers to component instances.**\n\nSalesforce introduced a change in API Version 53.0 that requires `identifier` tags within `componentInstance` and `fieldInstance` elements in FlexiPage metadata. If these identifiers are missing, deployments to orgs with API version 53.0 or higher will fail. This command automates the process of adding these missing identifiers, ensuring your FlexiPages remain deployable.\n\nKey functionalities:\n\n- **Targeted FlexiPage Processing:** Scans all .flexipage-meta.xml files within the specified root folder (defaults to current working directory).\n- **Identifier Injection:** Inserts a unique `identifier` tag (e.g., `SFDX_HARDIS_REPLACEMENT_ID`) into `componentInstance` and `fieldInstance` elements that lack one.\n\n**Important Note:** After running this command, ensure you update your `apiVersion` to `53.0` (or higher) in your `package.xml` and `sfdx-project.json` files.\n\n<details markdown=\"1\">\n<summary>Technical explanations</summary>\n\nThe command's technical implementation involves:\n\n- **File Discovery:** Uses `glob` to find all .flexipage-meta.xml files.\n- **Content Reading:** Reads the XML content of each FlexiPage file.\n- **Regular Expression Replacement:** Employs a set of regular expressions to identify specific XML patterns (componentName.../componentName.../componentInstance, componentName.../componentName.../visibilityRule, fieldItem.../fieldItem.../fieldInstance) that are missing the `identifier` tag.\n- **Dynamic ID Generation:** For each match, it generates a unique identifier (e.g., `sfdxHardisIdX`) and injects it into the XML structure.\n- **File Writing:** If changes are made, the modified XML content is written back to the FlexiPage file using `fs.writeFile`.\n- **Logging:** Provides messages about which FlexiPages are being processed and a summary of the total number of identifiers added.\n</details>\n",
|
|
13053
|
-
"examples": [
|
|
13054
|
-
"$ sf hardis:project:fix:v53flexipages"
|
|
13055
|
-
],
|
|
13056
|
-
"flags": {
|
|
13057
|
-
"json": {
|
|
13058
|
-
"description": "Format output as json.",
|
|
13059
|
-
"helpGroup": "GLOBAL",
|
|
13060
|
-
"name": "json",
|
|
13061
|
-
"allowNo": false,
|
|
13062
|
-
"type": "boolean"
|
|
13063
|
-
},
|
|
13064
|
-
"flags-dir": {
|
|
13065
|
-
"helpGroup": "GLOBAL",
|
|
13066
|
-
"name": "flags-dir",
|
|
13067
|
-
"summary": "Import flag values from a directory.",
|
|
13068
|
-
"hasDynamicHelp": false,
|
|
13069
|
-
"multiple": false,
|
|
13070
|
-
"type": "option"
|
|
13071
|
-
},
|
|
13072
|
-
"path": {
|
|
13073
|
-
"char": "p",
|
|
13074
|
-
"description": "Root folder",
|
|
13075
|
-
"name": "path",
|
|
13076
|
-
"default": "/home/runner/work/sfdx-hardis/sfdx-hardis",
|
|
13077
|
-
"hasDynamicHelp": false,
|
|
13078
|
-
"multiple": false,
|
|
13079
|
-
"type": "option"
|
|
13080
|
-
},
|
|
13081
|
-
"debug": {
|
|
13082
|
-
"char": "d",
|
|
13083
|
-
"description": "Activate debug mode (more logs)",
|
|
13084
|
-
"name": "debug",
|
|
13085
|
-
"allowNo": false,
|
|
13086
|
-
"type": "boolean"
|
|
13087
|
-
},
|
|
13088
|
-
"websocket": {
|
|
13089
|
-
"description": "Websocket host:port for VsCode SFDX Hardis UI integration",
|
|
13090
|
-
"name": "websocket",
|
|
13091
|
-
"hasDynamicHelp": false,
|
|
13092
|
-
"multiple": false,
|
|
13093
|
-
"type": "option"
|
|
13094
|
-
},
|
|
13095
|
-
"skipauth": {
|
|
13096
|
-
"description": "Skip authentication check when a default username is required",
|
|
13097
|
-
"name": "skipauth",
|
|
13098
|
-
"allowNo": false,
|
|
13099
|
-
"type": "boolean"
|
|
13100
|
-
}
|
|
13101
|
-
},
|
|
13102
|
-
"hasDynamicHelp": false,
|
|
13103
|
-
"hiddenAliases": [],
|
|
13104
|
-
"id": "hardis:project:fix:v53flexipages",
|
|
13105
|
-
"pluginAlias": "sfdx-hardis",
|
|
13106
|
-
"pluginName": "sfdx-hardis",
|
|
13107
|
-
"pluginType": "core",
|
|
13108
|
-
"strict": true,
|
|
13109
|
-
"enableJsonFlag": true,
|
|
13110
|
-
"title": "Fix flexipages for v53",
|
|
13111
|
-
"requiresProject": true,
|
|
13112
|
-
"isESM": true,
|
|
13113
|
-
"relativePath": [
|
|
13114
|
-
"lib",
|
|
13115
|
-
"commands",
|
|
13116
|
-
"hardis",
|
|
13117
|
-
"project",
|
|
13118
|
-
"fix",
|
|
13119
|
-
"v53flexipages.js"
|
|
13120
|
-
],
|
|
13121
|
-
"aliasPermutations": [],
|
|
13122
|
-
"permutations": [
|
|
13123
|
-
"hardis:project:fix:v53flexipages",
|
|
13124
|
-
"project:hardis:fix:v53flexipages",
|
|
13125
|
-
"project:fix:hardis:v53flexipages",
|
|
13126
|
-
"project:fix:v53flexipages:hardis",
|
|
13127
|
-
"hardis:fix:project:v53flexipages",
|
|
13128
|
-
"fix:hardis:project:v53flexipages",
|
|
13129
|
-
"fix:project:hardis:v53flexipages",
|
|
13130
|
-
"fix:project:v53flexipages:hardis",
|
|
13131
|
-
"hardis:fix:v53flexipages:project",
|
|
13132
|
-
"fix:hardis:v53flexipages:project",
|
|
13133
|
-
"fix:v53flexipages:hardis:project",
|
|
13134
|
-
"fix:v53flexipages:project:hardis",
|
|
13135
|
-
"hardis:project:v53flexipages:fix",
|
|
13136
|
-
"project:hardis:v53flexipages:fix",
|
|
13137
|
-
"project:v53flexipages:hardis:fix",
|
|
13138
|
-
"project:v53flexipages:fix:hardis",
|
|
13139
|
-
"hardis:v53flexipages:project:fix",
|
|
13140
|
-
"v53flexipages:hardis:project:fix",
|
|
13141
|
-
"v53flexipages:project:hardis:fix",
|
|
13142
|
-
"v53flexipages:project:fix:hardis",
|
|
13143
|
-
"hardis:v53flexipages:fix:project",
|
|
13144
|
-
"v53flexipages:hardis:fix:project",
|
|
13145
|
-
"v53flexipages:fix:hardis:project",
|
|
13146
|
-
"v53flexipages:fix:project:hardis"
|
|
13147
|
-
]
|
|
13148
|
-
},
|
|
13149
13149
|
"hardis:project:generate:bypass": {
|
|
13150
13150
|
"aliases": [],
|
|
13151
13151
|
"args": {},
|
|
@@ -15719,5 +15719,5 @@
|
|
|
15719
15719
|
]
|
|
15720
15720
|
}
|
|
15721
15721
|
},
|
|
15722
|
-
"version": "6.14.
|
|
15722
|
+
"version": "6.14.5-alpha202512081801.0"
|
|
15723
15723
|
}
|