sf-decomposer 6.34.0 → 6.36.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 +14 -0
- package/README.md +126 -19
- package/lib/commands/decomposer/decompose.d.ts +3 -2
- package/lib/commands/decomposer/decompose.js +66 -16
- package/lib/commands/decomposer/decompose.js.map +1 -1
- package/lib/commands/decomposer/recompose.d.ts +1 -0
- package/lib/commands/decomposer/recompose.js +43 -5
- package/lib/commands/decomposer/recompose.js.map +1 -1
- package/lib/commands/decomposer/verify.d.ts +2 -2
- package/lib/commands/decomposer/verify.js +49 -13
- package/lib/commands/decomposer/verify.js.map +1 -1
- package/lib/core/decomposeMetadataTypes.js +7 -2
- package/lib/core/decomposeMetadataTypes.js.map +1 -1
- package/lib/helpers/configOverrides.d.ts +14 -2
- package/lib/helpers/configOverrides.js +48 -1
- package/lib/helpers/configOverrides.js.map +1 -1
- package/lib/helpers/types.d.ts +4 -0
- package/lib/hooks/prerun.js +3 -0
- package/lib/hooks/prerun.js.map +1 -1
- package/lib/hooks/scopedPostRetrieve.js +4 -0
- package/lib/hooks/scopedPostRetrieve.js.map +1 -1
- package/lib/service/core/updateGitattributes.d.ts +2 -0
- package/lib/service/core/updateGitattributes.js +42 -0
- package/lib/service/core/updateGitattributes.js.map +1 -0
- package/messages/decomposer.decompose.md +6 -2
- package/messages/decomposer.recompose.md +5 -1
- package/messages/decomposer.verify.md +2 -2
- package/oclif.manifest.json +28 -13
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -5,6 +5,20 @@
|
|
|
5
5
|
|
|
6
6
|
All notable changes to this project will be documented in this file. See [standard-version](https://github.com/conventional-changelog/standard-version) for commit guidelines.
|
|
7
7
|
|
|
8
|
+
## [6.36.0](https://github.com/mcarvin8/sf-decomposer/compare/v6.35.0...v6.36.0) (2026-06-30)
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
### Features
|
|
12
|
+
|
|
13
|
+
* full config read for CLI commands and hook skip flags ([#511](https://github.com/mcarvin8/sf-decomposer/issues/511)) ([945ace0](https://github.com/mcarvin8/sf-decomposer/commit/945ace0e0a8228ad10dead6f0e9e5be212de975b))
|
|
14
|
+
|
|
15
|
+
## [6.35.0](https://github.com/mcarvin8/sf-decomposer/compare/v6.34.0...v6.35.0) (2026-06-30)
|
|
16
|
+
|
|
17
|
+
|
|
18
|
+
### Features
|
|
19
|
+
|
|
20
|
+
* add --update-gitattributes flag to decompose command ([#509](https://github.com/mcarvin8/sf-decomposer/issues/509)) ([21899f3](https://github.com/mcarvin8/sf-decomposer/commit/21899f377b06eea6cd312b8d43a83d6072df3a17))
|
|
21
|
+
|
|
8
22
|
## [6.34.0](https://github.com/mcarvin8/sf-decomposer/compare/v6.33.2...v6.34.0) (2026-06-30)
|
|
9
23
|
|
|
10
24
|
|
package/README.md
CHANGED
|
@@ -27,6 +27,7 @@ A Salesforce CLI plugin that **decomposes** large metadata XML files into smalle
|
|
|
27
27
|
- [Manifest-scoped Runs](#manifest-scoped-runs)
|
|
28
28
|
- [Per-Type & Per-Component Overrides](CONFIGURATION.md)
|
|
29
29
|
- [Ignore Files](#ignore-files)
|
|
30
|
+
- [Using with sfdx-git-delta](#using-with-sfdx-git-delta)
|
|
30
31
|
- [Troubleshooting](#troubleshooting)
|
|
31
32
|
- [Built With](#built-with)
|
|
32
33
|
- [Migrating from Salesforce Native Decomposition](#migrating-from-salesforce-native-decomposition)
|
|
@@ -86,18 +87,21 @@ Add `.sfdecomposer.config.json` to your project root. Copy and customize one of
|
|
|
86
87
|
- [Basic sample](https://raw.githubusercontent.com/mcarvin8/sf-decomposer/main/examples/.sfdecomposer.config.json) — one format and strategy for all types
|
|
87
88
|
- [Sample with overrides](https://raw.githubusercontent.com/mcarvin8/sf-decomposer/main/examples/.sfdecomposer.config.overrides.json) — vary format/strategy per metadata type or component
|
|
88
89
|
|
|
89
|
-
| Option | Required | Description
|
|
90
|
-
|
|
91
|
-
| `metadataSuffixes` | Conditional | Comma-separated metadata suffixes to decompose/recompose. Required unless `manifest` is set; when both are set, run is scoped to the intersection.
|
|
92
|
-
| `manifest` | Conditional | Path (relative to project root) to a `package.xml` manifest. When set, only listed components are decomposed/recomposed.
|
|
93
|
-
| `ignorePackageDirectories` | No | Comma-separated package directories to skip.
|
|
94
|
-
| `prePurge` | No | Remove existing decomposed files before decomposing (default: false).
|
|
95
|
-
| `postPurge` | No | After decompose: remove originals; after recompose: remove decomposed files (default: false).
|
|
96
|
-
| `decomposedFormat` | No | `xml`, `json`, `json5`, or `yaml` (default: xml).
|
|
97
|
-
| `strategy` | No | `unique-id` \| `grouped-by-tag` (default: unique-id).
|
|
98
|
-
| `decomposeNestedPermissions` | No | With `grouped-by-tag`, set `true` to further decompose permission set and muting permission set object/field permissions.
|
|
99
|
-
| `updateForceignore` | No | Set `true` to automatically add decomposed file paths to `.forceignore` after each hook-triggered decomposition (default: false).
|
|
100
|
-
| `
|
|
90
|
+
| Option | Required | Description |
|
|
91
|
+
|------------------------------|-------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
|
|
92
|
+
| `metadataSuffixes` | Conditional | Comma-separated metadata suffixes to decompose/recompose. Required unless `manifest` is set; when both are set, run is scoped to the intersection. |
|
|
93
|
+
| `manifest` | Conditional | Path (relative to project root) to a `package.xml` manifest. When set, only listed components are decomposed/recomposed. |
|
|
94
|
+
| `ignorePackageDirectories` | No | Comma-separated package directories to skip. |
|
|
95
|
+
| `prePurge` | No | Remove existing decomposed files before decomposing (default: false). |
|
|
96
|
+
| `postPurge` | No | After decompose: remove originals; after recompose: remove decomposed files (default: false). |
|
|
97
|
+
| `decomposedFormat` | No | `xml`, `json`, `json5`, or `yaml` (default: xml). |
|
|
98
|
+
| `strategy` | No | `unique-id` \| `grouped-by-tag` (default: unique-id). |
|
|
99
|
+
| `decomposeNestedPermissions` | No | With `grouped-by-tag`, set `true` to further decompose permission set and muting permission set object/field permissions. |
|
|
100
|
+
| `updateForceignore` | No | Set `true` to automatically add decomposed file paths to `.forceignore` after each hook-triggered decomposition (default: false). |
|
|
101
|
+
| `updateGitattributes` | No | Set `true` to automatically add root metadata file patterns to `.gitattributes` after each hook-triggered decomposition (default: false). |
|
|
102
|
+
| `skipPrerunHook` | No | Set `true` to skip the automatic recompose that fires before `sf project deploy start/validate` (default: false). Useful when you recompose manually in a pre-commit hook and don't want a second recompose at deploy time. |
|
|
103
|
+
| `skipPostRetrieveHook` | No | Set `true` to skip the automatic decompose that fires after `sf project retrieve start` (default: false). |
|
|
104
|
+
| `overrides` | No | Array of per-type and/or per-component overrides. See [CONFIGURATION.md](CONFIGURATION.md). |
|
|
101
105
|
|
|
102
106
|
---
|
|
103
107
|
|
|
@@ -157,14 +161,15 @@ FLAGS
|
|
|
157
161
|
--prepurge Remove existing decomposed files before decomposing [default: false]
|
|
158
162
|
--postpurge Remove original metadata files after decomposing [default: false]
|
|
159
163
|
-p, --decompose-nested-permissions With grouped-by-tag, further decompose permission set and muting permission set object/field permissions
|
|
160
|
-
-c, --config Load
|
|
164
|
+
-c, --config Load all settings from .sfdecomposer.config.json in the repo root. Supplies metadataSuffixes, manifest, and all run-wide options; CLI flags take precedence. Makes -m and -x optional when the config defines them. [default: false]
|
|
161
165
|
--update-forceignore Automatically add decomposed file paths to .forceignore after successful decomposition [default: false]
|
|
166
|
+
--update-gitattributes Automatically add root metadata file patterns to .gitattributes after successful decomposition [default: false]
|
|
162
167
|
|
|
163
168
|
GLOBAL FLAGS
|
|
164
169
|
--json Output as JSON.
|
|
165
170
|
```
|
|
166
171
|
|
|
167
|
-
> At least one of `--metadata-type
|
|
172
|
+
> At least one of `--metadata-type`, `--manifest`, or `--config` (with `metadataSuffixes` or `manifest` in the config) is required.
|
|
168
173
|
|
|
169
174
|
**Examples**
|
|
170
175
|
|
|
@@ -183,6 +188,9 @@ sf decomposer decompose -x "manifest/package.xml" --prepurge
|
|
|
183
188
|
|
|
184
189
|
# Restrict a manifest run to a single metadata type
|
|
185
190
|
sf decomposer decompose -x "manifest/package.xml" -m "permissionset"
|
|
191
|
+
|
|
192
|
+
# Use config file for all options (no CLI flags needed)
|
|
193
|
+
sf decomposer decompose --config
|
|
186
194
|
```
|
|
187
195
|
|
|
188
196
|
#### sf decomposer recompose
|
|
@@ -191,19 +199,20 @@ Recomposes decomposed files into deployment-compatible metadata.
|
|
|
191
199
|
|
|
192
200
|
```
|
|
193
201
|
USAGE
|
|
194
|
-
$ sf decomposer recompose [-m <value>] [-x <value>] [-i <value>] [--postpurge --json]
|
|
202
|
+
$ sf decomposer recompose [-m <value>] [-x <value>] [-i <value>] [-c --postpurge --json]
|
|
195
203
|
|
|
196
204
|
FLAGS
|
|
197
|
-
-m, --metadata-type=<value> Metadata suffix to process (e.g. flow, labels). Repeatable. Optional when --manifest is provided.
|
|
205
|
+
-m, --metadata-type=<value> Metadata suffix to process (e.g. flow, labels). Repeatable. Optional when --manifest or --config is provided.
|
|
198
206
|
-x, --manifest=<value> Path to a package.xml manifest. When provided, only the components listed in the manifest are recomposed.
|
|
199
207
|
-i, --ignore-package-directory=<value> Package directory to skip. Repeatable.
|
|
200
208
|
--postpurge Remove decomposed files after recomposing [default: false]
|
|
209
|
+
-c, --config Load all settings from .sfdecomposer.config.json in the repo root. Supplies metadataSuffixes, manifest, and postPurge; CLI flags take precedence. Makes -m and -x optional when the config defines them. [default: false]
|
|
201
210
|
|
|
202
211
|
GLOBAL FLAGS
|
|
203
212
|
--json Output as JSON.
|
|
204
213
|
```
|
|
205
214
|
|
|
206
|
-
> At least one of `--metadata-type
|
|
215
|
+
> At least one of `--metadata-type`, `--manifest`, or `--config` (with `metadataSuffixes` or `manifest` in the config) is required.
|
|
207
216
|
|
|
208
217
|
**Examples**
|
|
209
218
|
|
|
@@ -214,6 +223,9 @@ sf decomposer recompose -m "flow" -i "force-app"
|
|
|
214
223
|
# Recompose only the components listed in a deploy manifest before deploying
|
|
215
224
|
sf decomposer recompose -x "manifest/package.xml"
|
|
216
225
|
sf project deploy start -x "manifest/package.xml"
|
|
226
|
+
|
|
227
|
+
# Use config file for all options (no CLI flags needed)
|
|
228
|
+
sf decomposer recompose --config
|
|
217
229
|
```
|
|
218
230
|
|
|
219
231
|
#### sf decomposer verify
|
|
@@ -231,13 +243,13 @@ FLAGS
|
|
|
231
243
|
-i, --ignore-package-directory=<value> Package directory to skip. Repeatable.
|
|
232
244
|
-s, --strategy=<value> unique-id | grouped-by-tag [default: unique-id]
|
|
233
245
|
-p, --decompose-nested-permissions With grouped-by-tag, further decompose permission set and muting permission set object/field permissions.
|
|
234
|
-
-c, --config Load
|
|
246
|
+
-c, --config Load all settings from .sfdecomposer.config.json in the repo root. Supplies metadataSuffixes, manifest, and all run-wide options; CLI flags take precedence. Makes -m and -x optional when the config defines them. [default: false]
|
|
235
247
|
|
|
236
248
|
GLOBAL FLAGS
|
|
237
249
|
--json Output as JSON.
|
|
238
250
|
```
|
|
239
251
|
|
|
240
|
-
> At least one of `--metadata-type
|
|
252
|
+
> At least one of `--metadata-type`, `--manifest`, or `--config` (with `metadataSuffixes` or `manifest` in the config) is required.
|
|
241
253
|
|
|
242
254
|
**Examples**
|
|
243
255
|
|
|
@@ -506,6 +518,101 @@ Optional. Ignore recomposed metadata so it isn't committed. See the [sample .git
|
|
|
506
518
|
|
|
507
519
|
---
|
|
508
520
|
|
|
521
|
+
### Using with sfdx-git-delta
|
|
522
|
+
|
|
523
|
+
[sfdx-git-delta](https://github.com/scolladon/sfdx-git-delta) (sgd) detects changed metadata by comparing git refs. It finds changes by looking for root-level metadata files — e.g. `flows/MyFlow.flow-meta.xml` — matching patterns from the Salesforce metadata registry.
|
|
524
|
+
|
|
525
|
+
sf-decomposer is compatible with sgd as long as those root files are present in git at the point sgd runs.
|
|
526
|
+
|
|
527
|
+
#### Recommended: keep root files in git and recompose before commit
|
|
528
|
+
|
|
529
|
+
For `sfdx-git-delta` to detect a change, the root metadata file must be updated in git. Keeping root files in the repository is not enough by itself: if you edit decomposed files but commit without recomposing, the root file will remain unchanged, and sgd may not detect the metadata change.
|
|
530
|
+
|
|
531
|
+
Without `--postpurge`, the original root metadata file stays in the repo alongside the decomposed pieces. After recomposition, the root file is updated and sgd detects the change normally. No extra sgd configuration is needed.
|
|
532
|
+
|
|
533
|
+
#### Recommended sgd config and pre-commit setup
|
|
534
|
+
|
|
535
|
+
Add the following to `.sfdecomposer.config.json`:
|
|
536
|
+
|
|
537
|
+
```json
|
|
538
|
+
{
|
|
539
|
+
"metadataSuffixes": "flow,permissionset",
|
|
540
|
+
"postPurge": false,
|
|
541
|
+
"decomposedFormat": "xml",
|
|
542
|
+
"skipPrerunHook": true
|
|
543
|
+
}
|
|
544
|
+
```
|
|
545
|
+
|
|
546
|
+
- **`postPurge: false`** — keeps root files in git so sgd can detect changes.
|
|
547
|
+
- **`skipPrerunHook: true`** — disables the automatic recompose that fires before `sf project deploy start`. Since root files are already recomposed at commit time (by the pre-commit hook below), the prerun hook would just repeat that work redundantly. Skipping it also avoids a full-workspace recompose when sgd has already scoped the deploy to a subset of components.
|
|
548
|
+
|
|
549
|
+
Install the bundled pre-commit hook (copy and make executable):
|
|
550
|
+
|
|
551
|
+
```bash
|
|
552
|
+
cp examples/pre-commit .husky/pre-commit
|
|
553
|
+
# or for a plain git hook:
|
|
554
|
+
cp examples/pre-commit .git/hooks/pre-commit && chmod +x .git/hooks/pre-commit
|
|
555
|
+
```
|
|
556
|
+
|
|
557
|
+
The hook runs `sf decomposer recompose --config`, then stages the updated root files so they are included in the commit. sgd then sees the updated root files when it compares refs in CI.
|
|
558
|
+
|
|
559
|
+
> **Note:** With `skipPrerunHook: true`, any `sf project deploy start` that runs without going through the pre-commit hook first (e.g., an emergency manual deploy) will not auto-recompose. In that case, run `sf decomposer recompose --config` manually before deploying.
|
|
560
|
+
|
|
561
|
+
Use one of these workflows depending on your setup:
|
|
562
|
+
|
|
563
|
+
- **Pre-commit hook (recommended):** Install `examples/pre-commit` as described above. The hook recomposes automatically before every commit.
|
|
564
|
+
- **Manual:** Run `sf decomposer recompose --config` before each `git commit`.
|
|
565
|
+
|
|
566
|
+
**Suppressing diff noise on root files.** Keeping root files in git means `git diff` and GitHub PR views show both the root file and the decomposed pieces. Pass `--update-gitattributes` on your first `sf decomposer decompose` run to suppress that noise automatically:
|
|
567
|
+
|
|
568
|
+
```bash
|
|
569
|
+
sf decomposer decompose -m "flow" -m "permissionset" --update-gitattributes
|
|
570
|
+
```
|
|
571
|
+
|
|
572
|
+
This appends patterns like the following to `.gitattributes`, creating the file if it doesn't exist:
|
|
573
|
+
|
|
574
|
+
```gitattributes
|
|
575
|
+
**/flows/*.flow-meta.xml -diff linguist-generated=true
|
|
576
|
+
**/permissionsets/*.permissionset-meta.xml -diff linguist-generated=true
|
|
577
|
+
```
|
|
578
|
+
|
|
579
|
+
- `-diff` — `git diff` / `git show` skip textual content for these files
|
|
580
|
+
- `linguist-generated=true` — GitHub collapses the file in PR diff views; the file is still expandable
|
|
581
|
+
|
|
582
|
+
Git still tracks the root files, so sgd works. The root files become invisible noise during code review. You can also set `updateGitattributes: true` in `.sfdecomposer.config.json` to apply this automatically after every hook-triggered decomposition.
|
|
583
|
+
|
|
584
|
+
#### If you use `--postpurge`
|
|
585
|
+
|
|
586
|
+
`--postpurge` removes the root metadata file after decomposing. Only the decomposed pieces remain in git. sgd cannot detect changes to these nested files — they do not match the registry's file patterns.
|
|
587
|
+
|
|
588
|
+
**For CI pipelines**, explicitly recompose into a temporary commit before running sgd, then continue without pushing the commit (CI runners are ephemeral):
|
|
589
|
+
|
|
590
|
+
```bash
|
|
591
|
+
sf decomposer recompose -m "flow" -m "permissionset"
|
|
592
|
+
git add -A && git commit -m "ci: recompose for sgd" --no-verify
|
|
593
|
+
|
|
594
|
+
sf sgd source delta --from "$PREV_DEPLOYMENT_SHA" --to HEAD --output ./delta
|
|
595
|
+
sf project deploy start --source-dir ./delta
|
|
596
|
+
# temporary commit is discarded when the runner tears down
|
|
597
|
+
```
|
|
598
|
+
|
|
599
|
+
#### Incompatibility: `--postpurge` + sgd + prerun hook
|
|
600
|
+
|
|
601
|
+
The sf-decomposer prerun hook recomposes automatically when `sf project deploy start` fires — but that happens **after** sgd has already produced its delta. sgd runs on the committed (decomposed-only) state and cannot identify the changed components.
|
|
602
|
+
|
|
603
|
+
If you use the prerun hook, do not combine it with `--postpurge` and sgd. The compatible combinations are:
|
|
604
|
+
|
|
605
|
+
| Setup | Works? |
|
|
606
|
+
|-------------------------------------------------------------------|--------------------------------------------------------------------------------|
|
|
607
|
+
| No `--postpurge` + sgd + hook | ✅ Root files in git; hook recompose at deploy is harmless (redundant but safe) |
|
|
608
|
+
| No `--postpurge` + sgd + pre-commit hook + `skipPrerunHook: true` | ✅ Recomposed before commit; deploy hook skipped intentionally |
|
|
609
|
+
| No `--postpurge` + sgd, no hook | ✅ Recompose manually before commit |
|
|
610
|
+
| `--postpurge` + hook, no sgd | ✅ Full deploy; hook recomposes at deploy time |
|
|
611
|
+
| `--postpurge` + sgd + CI recompose commit, no hook | ✅ Explicit recompose step before sgd |
|
|
612
|
+
| `--postpurge` + sgd + hook | ❌ sgd runs before hook; delta is wrong |
|
|
613
|
+
|
|
614
|
+
---
|
|
615
|
+
|
|
509
616
|
### Troubleshooting
|
|
510
617
|
|
|
511
618
|
#### Missing sfdx-project.json
|
|
@@ -9,12 +9,13 @@ export default class DecomposerDecompose extends SfCommand<DecomposerResult> {
|
|
|
9
9
|
manifest: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
10
10
|
prepurge: import("@oclif/core/interfaces").BooleanFlag<boolean>;
|
|
11
11
|
postpurge: import("@oclif/core/interfaces").BooleanFlag<boolean>;
|
|
12
|
-
format: import("@oclif/core/interfaces").OptionFlag<string, import("@oclif/core/interfaces").CustomOptions>;
|
|
12
|
+
format: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
13
13
|
'ignore-package-directory': import("@oclif/core/interfaces").OptionFlag<string[] | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
14
|
-
strategy: import("@oclif/core/interfaces").OptionFlag<string, import("@oclif/core/interfaces").CustomOptions>;
|
|
14
|
+
strategy: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
15
15
|
'decompose-nested-permissions': import("@oclif/core/interfaces").BooleanFlag<boolean>;
|
|
16
16
|
config: import("@oclif/core/interfaces").BooleanFlag<boolean>;
|
|
17
17
|
'update-forceignore': import("@oclif/core/interfaces").BooleanFlag<boolean>;
|
|
18
|
+
'update-gitattributes': import("@oclif/core/interfaces").BooleanFlag<boolean>;
|
|
18
19
|
};
|
|
19
20
|
run(): Promise<DecomposerResult>;
|
|
20
21
|
}
|
|
@@ -1,9 +1,12 @@
|
|
|
1
1
|
'use strict';
|
|
2
|
+
import { access } from 'node:fs/promises';
|
|
3
|
+
import { resolve } from 'node:path';
|
|
2
4
|
import { Messages } from '@salesforce/core';
|
|
3
5
|
import { Flags, SfCommand } from '@salesforce/sf-plugins-core';
|
|
4
6
|
import { decomposeMetadataTypes } from '../../core/decomposeMetadataTypes.js';
|
|
5
|
-
import {
|
|
7
|
+
import { loadConfigFile, parseConfigSuffixes, resolveDefaultConfigPath } from '../../helpers/configOverrides.js';
|
|
6
8
|
import { DECOMPOSED_FILE_TYPES, DECOMPOSED_STRATEGIES } from '../../helpers/constants.js';
|
|
9
|
+
import { getRepoRoot } from '../../service/core/getRepoRoot.js';
|
|
7
10
|
Messages.importMessagesDirectoryFromMetaUrl(import.meta.url);
|
|
8
11
|
const messages = Messages.loadMessages('sf-decomposer', 'decomposer.decompose');
|
|
9
12
|
export default class DecomposerDecompose extends SfCommand {
|
|
@@ -36,10 +39,10 @@ export default class DecomposerDecompose extends SfCommand {
|
|
|
36
39
|
format: Flags.string({
|
|
37
40
|
summary: messages.getMessage('flags.format.summary'),
|
|
38
41
|
char: 'f',
|
|
39
|
-
required:
|
|
42
|
+
required: false,
|
|
40
43
|
multiple: false,
|
|
41
|
-
default: 'xml',
|
|
42
44
|
options: DECOMPOSED_FILE_TYPES,
|
|
45
|
+
defaultHelp: async () => 'xml',
|
|
43
46
|
}),
|
|
44
47
|
'ignore-package-directory': Flags.directory({
|
|
45
48
|
summary: messages.getMessage('flags.ignore-package-directory.summary'),
|
|
@@ -50,10 +53,10 @@ export default class DecomposerDecompose extends SfCommand {
|
|
|
50
53
|
strategy: Flags.string({
|
|
51
54
|
summary: messages.getMessage('flags.strategy.summary'),
|
|
52
55
|
char: 's',
|
|
53
|
-
required:
|
|
56
|
+
required: false,
|
|
54
57
|
multiple: false,
|
|
55
|
-
default: 'unique-id',
|
|
56
58
|
options: DECOMPOSED_STRATEGIES,
|
|
59
|
+
defaultHelp: async () => 'unique-id',
|
|
57
60
|
}),
|
|
58
61
|
'decompose-nested-permissions': Flags.boolean({
|
|
59
62
|
summary: messages.getMessage('flags.decompose-nested-permissions.summary'),
|
|
@@ -72,24 +75,71 @@ export default class DecomposerDecompose extends SfCommand {
|
|
|
72
75
|
required: false,
|
|
73
76
|
default: false,
|
|
74
77
|
}),
|
|
78
|
+
'update-gitattributes': Flags.boolean({
|
|
79
|
+
summary: messages.getMessage('flags.update-gitattributes.summary'),
|
|
80
|
+
required: false,
|
|
81
|
+
default: false,
|
|
82
|
+
}),
|
|
75
83
|
};
|
|
76
84
|
async run() {
|
|
77
85
|
const { flags } = await this.parse(DecomposerDecompose);
|
|
78
|
-
|
|
86
|
+
let metadataTypes = flags['metadata-type'];
|
|
87
|
+
let manifest = flags['manifest'];
|
|
88
|
+
let ignoreDirs = flags['ignore-package-directory'];
|
|
89
|
+
let format = flags['format'] ?? 'xml';
|
|
90
|
+
let strategy = flags['strategy'] ?? 'unique-id';
|
|
91
|
+
let prepurge = flags['prepurge'];
|
|
92
|
+
let postpurge = flags['postpurge'];
|
|
93
|
+
let decomposeNestedPerms = flags['decompose-nested-permissions'];
|
|
94
|
+
let updateForceignore = flags['update-forceignore'];
|
|
95
|
+
let updateGitattributes = flags['update-gitattributes'];
|
|
96
|
+
let overrides;
|
|
97
|
+
if (flags['config']) {
|
|
98
|
+
const config = await loadConfigFile(await resolveDefaultConfigPath());
|
|
99
|
+
metadataTypes ??= parseConfigSuffixes(config.metadataSuffixes);
|
|
100
|
+
const configManifest = !flags['manifest'] ? config.manifest : undefined;
|
|
101
|
+
manifest ??= config.manifest;
|
|
102
|
+
ignoreDirs ??= parseConfigSuffixes(config.ignorePackageDirectories);
|
|
103
|
+
format = flags['format'] ?? config.decomposedFormat ?? 'xml';
|
|
104
|
+
strategy = flags['strategy'] ?? config.strategy ?? 'unique-id';
|
|
105
|
+
prepurge = flags['prepurge'] || (config.prePurge ?? false);
|
|
106
|
+
postpurge = flags['postpurge'] || (config.postPurge ?? false);
|
|
107
|
+
decomposeNestedPerms = flags['decompose-nested-permissions'] || (config.decomposeNestedPermissions ?? false);
|
|
108
|
+
updateForceignore = flags['update-forceignore'] || (config.updateForceignore ?? false);
|
|
109
|
+
updateGitattributes = flags['update-gitattributes'] || (config.updateGitattributes ?? false);
|
|
110
|
+
overrides = config.overrides;
|
|
111
|
+
if (configManifest) {
|
|
112
|
+
const { repoRoot } = await getRepoRoot();
|
|
113
|
+
try {
|
|
114
|
+
await access(resolve(repoRoot ?? process.cwd(), configManifest));
|
|
115
|
+
}
|
|
116
|
+
catch (err) {
|
|
117
|
+
if (metadataTypes?.length) {
|
|
118
|
+
this.warn(`Config manifest "${configManifest}" not found on disk. Falling back to metadataSuffixes from config.`);
|
|
119
|
+
manifest = undefined;
|
|
120
|
+
}
|
|
121
|
+
else {
|
|
122
|
+
throw new Error(`Config manifest "${configManifest}" not found on disk and no metadataSuffixes are defined in the config. ` +
|
|
123
|
+
'Ensure the manifest exists before running this command, or add metadataSuffixes to the config as a fallback.', { cause: err });
|
|
124
|
+
}
|
|
125
|
+
}
|
|
126
|
+
}
|
|
127
|
+
}
|
|
128
|
+
if (!metadataTypes?.length && !manifest) {
|
|
79
129
|
throw messages.createError('error.missingMetadataOrManifest');
|
|
80
130
|
}
|
|
81
|
-
const overrides = flags['config'] ? await loadOverridesFromConfig(await resolveDefaultConfigPath()) : undefined;
|
|
82
131
|
return decomposeMetadataTypes({
|
|
83
|
-
metadataTypes
|
|
84
|
-
prepurge
|
|
85
|
-
postpurge
|
|
86
|
-
format
|
|
87
|
-
ignoreDirs
|
|
88
|
-
strategy
|
|
89
|
-
decomposeNestedPerms
|
|
90
|
-
manifest
|
|
132
|
+
metadataTypes,
|
|
133
|
+
prepurge,
|
|
134
|
+
postpurge,
|
|
135
|
+
format,
|
|
136
|
+
ignoreDirs,
|
|
137
|
+
strategy,
|
|
138
|
+
decomposeNestedPerms,
|
|
139
|
+
manifest,
|
|
91
140
|
overrides,
|
|
92
|
-
updateForceignore
|
|
141
|
+
updateForceignore,
|
|
142
|
+
updateGitattributes,
|
|
93
143
|
log: this.log.bind(this),
|
|
94
144
|
});
|
|
95
145
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"decompose.js","sourceRoot":"","sources":["../../../src/commands/decomposer/decompose.ts"],"names":[],"mappings":"AAAA,YAAY,CAAC;AAEb,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAC5C,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,6BAA6B,CAAC;AAC/D,OAAO,EAAE,sBAAsB,EAAE,MAAM,sCAAsC,CAAC;AAC9E,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"decompose.js","sourceRoot":"","sources":["../../../src/commands/decomposer/decompose.ts"],"names":[],"mappings":"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"}
|
|
@@ -9,6 +9,7 @@ export default class DecomposerRecompose extends SfCommand<DecomposerResult> {
|
|
|
9
9
|
manifest: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
10
10
|
postpurge: import("@oclif/core/interfaces").BooleanFlag<boolean>;
|
|
11
11
|
'ignore-package-directory': import("@oclif/core/interfaces").OptionFlag<string[] | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
12
|
+
config: import("@oclif/core/interfaces").BooleanFlag<boolean>;
|
|
12
13
|
};
|
|
13
14
|
run(): Promise<DecomposerResult>;
|
|
14
15
|
}
|
|
@@ -1,7 +1,11 @@
|
|
|
1
1
|
'use strict';
|
|
2
|
+
import { access } from 'node:fs/promises';
|
|
3
|
+
import { resolve } from 'node:path';
|
|
2
4
|
import { Messages } from '@salesforce/core';
|
|
3
5
|
import { Flags, SfCommand } from '@salesforce/sf-plugins-core';
|
|
4
6
|
import { recomposeMetadataTypes } from '../../core/recomposeMetadataTypes.js';
|
|
7
|
+
import { loadConfigFile, parseConfigSuffixes, resolveDefaultConfigPath } from '../../helpers/configOverrides.js';
|
|
8
|
+
import { getRepoRoot } from '../../service/core/getRepoRoot.js';
|
|
5
9
|
Messages.importMessagesDirectoryFromMetaUrl(import.meta.url);
|
|
6
10
|
const messages = Messages.loadMessages('sf-decomposer', 'decomposer.recompose');
|
|
7
11
|
export default class DecomposerRecompose extends SfCommand {
|
|
@@ -32,17 +36,51 @@ export default class DecomposerRecompose extends SfCommand {
|
|
|
32
36
|
required: false,
|
|
33
37
|
multiple: true,
|
|
34
38
|
}),
|
|
39
|
+
config: Flags.boolean({
|
|
40
|
+
summary: messages.getMessage('flags.config.summary'),
|
|
41
|
+
char: 'c',
|
|
42
|
+
required: false,
|
|
43
|
+
default: false,
|
|
44
|
+
}),
|
|
35
45
|
};
|
|
36
46
|
async run() {
|
|
37
47
|
const { flags } = await this.parse(DecomposerRecompose);
|
|
38
|
-
|
|
48
|
+
let metadataTypes = flags['metadata-type'];
|
|
49
|
+
let manifest = flags['manifest'];
|
|
50
|
+
let ignoreDirs = flags['ignore-package-directory'];
|
|
51
|
+
let postpurge = flags['postpurge'];
|
|
52
|
+
if (flags['config']) {
|
|
53
|
+
const config = await loadConfigFile(await resolveDefaultConfigPath());
|
|
54
|
+
metadataTypes ??= parseConfigSuffixes(config.metadataSuffixes);
|
|
55
|
+
const configManifest = !flags['manifest'] ? config.manifest : undefined;
|
|
56
|
+
manifest ??= config.manifest;
|
|
57
|
+
ignoreDirs ??= parseConfigSuffixes(config.ignorePackageDirectories);
|
|
58
|
+
postpurge = flags['postpurge'] || (config.postPurge ?? false);
|
|
59
|
+
if (configManifest) {
|
|
60
|
+
const { repoRoot } = await getRepoRoot();
|
|
61
|
+
try {
|
|
62
|
+
await access(resolve(repoRoot ?? process.cwd(), configManifest));
|
|
63
|
+
}
|
|
64
|
+
catch (err) {
|
|
65
|
+
if (metadataTypes?.length) {
|
|
66
|
+
this.warn(`Config manifest "${configManifest}" not found on disk. Falling back to metadataSuffixes from config.`);
|
|
67
|
+
manifest = undefined;
|
|
68
|
+
}
|
|
69
|
+
else {
|
|
70
|
+
throw new Error(`Config manifest "${configManifest}" not found on disk and no metadataSuffixes are defined in the config. ` +
|
|
71
|
+
'Ensure the manifest exists before running this command, or add metadataSuffixes to the config as a fallback.', { cause: err });
|
|
72
|
+
}
|
|
73
|
+
}
|
|
74
|
+
}
|
|
75
|
+
}
|
|
76
|
+
if (!metadataTypes?.length && !manifest) {
|
|
39
77
|
throw messages.createError('error.missingMetadataOrManifest');
|
|
40
78
|
}
|
|
41
79
|
return recomposeMetadataTypes({
|
|
42
|
-
metadataTypes
|
|
43
|
-
postpurge
|
|
44
|
-
ignoreDirs
|
|
45
|
-
manifest
|
|
80
|
+
metadataTypes,
|
|
81
|
+
postpurge,
|
|
82
|
+
ignoreDirs,
|
|
83
|
+
manifest,
|
|
46
84
|
log: this.log.bind(this),
|
|
47
85
|
});
|
|
48
86
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"recompose.js","sourceRoot":"","sources":["../../../src/commands/decomposer/recompose.ts"],"names":[],"mappings":"AAAA,YAAY,CAAC;AAEb,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAC5C,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,6BAA6B,CAAC;AAE/D,OAAO,EAAE,sBAAsB,EAAE,MAAM,sCAAsC,CAAC;
|
|
1
|
+
{"version":3,"file":"recompose.js","sourceRoot":"","sources":["../../../src/commands/decomposer/recompose.ts"],"names":[],"mappings":"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"}
|
|
@@ -7,9 +7,9 @@ export default class DecomposerVerify extends SfCommand<VerifyResult> {
|
|
|
7
7
|
static readonly flags: {
|
|
8
8
|
'metadata-type': import("@oclif/core/interfaces").OptionFlag<string[] | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
9
9
|
manifest: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
10
|
-
format: import("@oclif/core/interfaces").OptionFlag<string, import("@oclif/core/interfaces").CustomOptions>;
|
|
10
|
+
format: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
11
11
|
'ignore-package-directory': import("@oclif/core/interfaces").OptionFlag<string[] | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
12
|
-
strategy: import("@oclif/core/interfaces").OptionFlag<string, import("@oclif/core/interfaces").CustomOptions>;
|
|
12
|
+
strategy: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
13
13
|
'decompose-nested-permissions': import("@oclif/core/interfaces").BooleanFlag<boolean>;
|
|
14
14
|
config: import("@oclif/core/interfaces").BooleanFlag<boolean>;
|
|
15
15
|
};
|
|
@@ -1,9 +1,12 @@
|
|
|
1
1
|
'use strict';
|
|
2
|
+
import { access } from 'node:fs/promises';
|
|
3
|
+
import { resolve } from 'node:path';
|
|
2
4
|
import { Messages } from '@salesforce/core';
|
|
3
5
|
import { Flags, SfCommand } from '@salesforce/sf-plugins-core';
|
|
4
6
|
import { verifyMetadataTypes } from '../../core/verifyMetadataTypes.js';
|
|
5
|
-
import {
|
|
7
|
+
import { loadConfigFile, parseConfigSuffixes, resolveDefaultConfigPath } from '../../helpers/configOverrides.js';
|
|
6
8
|
import { DECOMPOSED_FILE_TYPES, DECOMPOSED_STRATEGIES } from '../../helpers/constants.js';
|
|
9
|
+
import { getRepoRoot } from '../../service/core/getRepoRoot.js';
|
|
7
10
|
Messages.importMessagesDirectoryFromMetaUrl(import.meta.url);
|
|
8
11
|
const messages = Messages.loadMessages('sf-decomposer', 'decomposer.verify');
|
|
9
12
|
export default class DecomposerVerify extends SfCommand {
|
|
@@ -26,10 +29,10 @@ export default class DecomposerVerify extends SfCommand {
|
|
|
26
29
|
format: Flags.string({
|
|
27
30
|
summary: messages.getMessage('flags.format.summary'),
|
|
28
31
|
char: 'f',
|
|
29
|
-
required:
|
|
32
|
+
required: false,
|
|
30
33
|
multiple: false,
|
|
31
|
-
default: 'xml',
|
|
32
34
|
options: DECOMPOSED_FILE_TYPES,
|
|
35
|
+
defaultHelp: async () => 'xml',
|
|
33
36
|
}),
|
|
34
37
|
'ignore-package-directory': Flags.directory({
|
|
35
38
|
summary: messages.getMessage('flags.ignore-package-directory.summary'),
|
|
@@ -40,10 +43,10 @@ export default class DecomposerVerify extends SfCommand {
|
|
|
40
43
|
strategy: Flags.string({
|
|
41
44
|
summary: messages.getMessage('flags.strategy.summary'),
|
|
42
45
|
char: 's',
|
|
43
|
-
required:
|
|
46
|
+
required: false,
|
|
44
47
|
multiple: false,
|
|
45
|
-
default: 'unique-id',
|
|
46
48
|
options: DECOMPOSED_STRATEGIES,
|
|
49
|
+
defaultHelp: async () => 'unique-id',
|
|
47
50
|
}),
|
|
48
51
|
'decompose-nested-permissions': Flags.boolean({
|
|
49
52
|
summary: messages.getMessage('flags.decompose-nested-permissions.summary'),
|
|
@@ -60,17 +63,50 @@ export default class DecomposerVerify extends SfCommand {
|
|
|
60
63
|
};
|
|
61
64
|
async run() {
|
|
62
65
|
const { flags } = await this.parse(DecomposerVerify);
|
|
63
|
-
|
|
66
|
+
let metadataTypes = flags['metadata-type'];
|
|
67
|
+
let manifest = flags['manifest'];
|
|
68
|
+
let ignoreDirs = flags['ignore-package-directory'];
|
|
69
|
+
let format = flags['format'] ?? 'xml';
|
|
70
|
+
let strategy = flags['strategy'] ?? 'unique-id';
|
|
71
|
+
let decomposeNestedPerms = flags['decompose-nested-permissions'];
|
|
72
|
+
let overrides;
|
|
73
|
+
if (flags['config']) {
|
|
74
|
+
const config = await loadConfigFile(await resolveDefaultConfigPath());
|
|
75
|
+
metadataTypes ??= parseConfigSuffixes(config.metadataSuffixes);
|
|
76
|
+
const configManifest = !flags['manifest'] ? config.manifest : undefined;
|
|
77
|
+
manifest ??= config.manifest;
|
|
78
|
+
ignoreDirs ??= parseConfigSuffixes(config.ignorePackageDirectories);
|
|
79
|
+
format = flags['format'] ?? config.decomposedFormat ?? 'xml';
|
|
80
|
+
strategy = flags['strategy'] ?? config.strategy ?? 'unique-id';
|
|
81
|
+
decomposeNestedPerms = flags['decompose-nested-permissions'] || (config.decomposeNestedPermissions ?? false);
|
|
82
|
+
overrides = config.overrides;
|
|
83
|
+
if (configManifest) {
|
|
84
|
+
const { repoRoot } = await getRepoRoot();
|
|
85
|
+
try {
|
|
86
|
+
await access(resolve(repoRoot ?? process.cwd(), configManifest));
|
|
87
|
+
}
|
|
88
|
+
catch (err) {
|
|
89
|
+
if (metadataTypes?.length) {
|
|
90
|
+
this.warn(`Config manifest "${configManifest}" not found on disk. Falling back to metadataSuffixes from config.`);
|
|
91
|
+
manifest = undefined;
|
|
92
|
+
}
|
|
93
|
+
else {
|
|
94
|
+
throw new Error(`Config manifest "${configManifest}" not found on disk and no metadataSuffixes are defined in the config. ` +
|
|
95
|
+
'Ensure the manifest exists before running this command, or add metadataSuffixes to the config as a fallback.', { cause: err });
|
|
96
|
+
}
|
|
97
|
+
}
|
|
98
|
+
}
|
|
99
|
+
}
|
|
100
|
+
if (!metadataTypes?.length && !manifest) {
|
|
64
101
|
throw messages.createError('error.missingMetadataOrManifest');
|
|
65
102
|
}
|
|
66
|
-
const overrides = flags['config'] ? await loadOverridesFromConfig(await resolveDefaultConfigPath()) : undefined;
|
|
67
103
|
const result = await verifyMetadataTypes({
|
|
68
|
-
metadataTypes
|
|
69
|
-
format
|
|
70
|
-
ignoreDirs
|
|
71
|
-
strategy
|
|
72
|
-
decomposeNestedPerms
|
|
73
|
-
manifest
|
|
104
|
+
metadataTypes,
|
|
105
|
+
format,
|
|
106
|
+
ignoreDirs,
|
|
107
|
+
strategy,
|
|
108
|
+
decomposeNestedPerms,
|
|
109
|
+
manifest,
|
|
74
110
|
overrides,
|
|
75
111
|
log: this.log.bind(this),
|
|
76
112
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"verify.js","sourceRoot":"","sources":["../../../src/commands/decomposer/verify.ts"],"names":[],"mappings":"AAAA,YAAY,CAAC;AAEb,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAC5C,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,6BAA6B,CAAC;AAC/D,OAAO,EAAE,mBAAmB,EAAE,MAAM,mCAAmC,CAAC;AACxE,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"verify.js","sourceRoot":"","sources":["../../../src/commands/decomposer/verify.ts"],"names":[],"mappings":"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"}
|
|
@@ -6,9 +6,10 @@ import { pLimit } from '../helpers/pLimit.js';
|
|
|
6
6
|
import { getRegistryValuesBySuffix } from '../metadata/getRegistryValuesBySuffix.js';
|
|
7
7
|
import { parseManifest } from '../metadata/parseManifest.js';
|
|
8
8
|
import { updateForceignoreFile } from '../service/core/updateForceignore.js';
|
|
9
|
+
import { updateGitattributesFile } from '../service/core/updateGitattributes.js';
|
|
9
10
|
import { decomposeFileHandler } from '../service/decompose/decomposeFileHandler.js';
|
|
10
11
|
export async function decomposeMetadataTypes(options) {
|
|
11
|
-
const { metadataTypes, prepurge, postpurge, format, ignoreDirs, strategy, decomposeNestedPerms, manifest, overrides, updateForceignore, log, repoRoot, } = options;
|
|
12
|
+
const { metadataTypes, prepurge, postpurge, format, ignoreDirs, strategy, decomposeNestedPerms, manifest, overrides, updateForceignore, updateGitattributes, log, repoRoot, } = options;
|
|
12
13
|
let manifestFilter;
|
|
13
14
|
let effectiveTypes;
|
|
14
15
|
if (manifest) {
|
|
@@ -67,7 +68,7 @@ export async function decomposeMetadataTypes(options) {
|
|
|
67
68
|
}
|
|
68
69
|
await decomposeFileHandler(metaAttributes, typeResolved, ignorePath, overrides, manifestXmlPaths);
|
|
69
70
|
processed.push(metadataType);
|
|
70
|
-
if (updateForceignore) {
|
|
71
|
+
if (updateForceignore || updateGitattributes) {
|
|
71
72
|
processedMeta.push({
|
|
72
73
|
directoryName: basename(metaAttributes.metadataPaths[0]),
|
|
73
74
|
metaSuffix: metaAttributes.metaSuffix,
|
|
@@ -82,6 +83,10 @@ export async function decomposeMetadataTypes(options) {
|
|
|
82
83
|
await updateForceignoreFile(processedMeta, effectiveRepoRoot);
|
|
83
84
|
log('Updated .forceignore with decomposed file paths.');
|
|
84
85
|
}
|
|
86
|
+
if (updateGitattributes && processedMeta.length > 0 && effectiveRepoRoot) {
|
|
87
|
+
await updateGitattributesFile(processedMeta, effectiveRepoRoot);
|
|
88
|
+
log('Updated .gitattributes with root metadata file patterns.');
|
|
89
|
+
}
|
|
85
90
|
return { metadata: processed };
|
|
86
91
|
}
|
|
87
92
|
//# sourceMappingURL=decomposeMetadataTypes.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"decomposeMetadataTypes.js","sourceRoot":"","sources":["../../src/core/decomposeMetadataTypes.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"decomposeMetadataTypes.js","sourceRoot":"","sources":["../../src/core/decomposeMetadataTypes.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { DecomposerOverride } from './types.js';
|
|
1
|
+
import { ConfigFile, DecomposerOverride } from './types.js';
|
|
2
2
|
/**
|
|
3
3
|
* Resolve the absolute path of the default `.sfdecomposer.config.json`, located in the
|
|
4
4
|
* repo root (the nearest ancestor directory that contains `sfdx-project.json`). Throws
|
|
@@ -32,9 +32,21 @@ export type ResolvedDecomposeTypeOptions = {
|
|
|
32
32
|
*/
|
|
33
33
|
sidecarElements?: string;
|
|
34
34
|
};
|
|
35
|
+
/**
|
|
36
|
+
* Load and parse the full `.sfdecomposer.config.json` file. Validates the `overrides` array
|
|
37
|
+
* when present. Throws when the file cannot be read or parsed.
|
|
38
|
+
*/
|
|
39
|
+
export declare function loadConfigFile(configPath: string): Promise<ConfigFile>;
|
|
40
|
+
/**
|
|
41
|
+
* Split a comma-separated config string (e.g. `metadataSuffixes`, `ignorePackageDirectories`)
|
|
42
|
+
* into a trimmed string array. Returns `undefined` when the value is absent, empty, or the
|
|
43
|
+
* sentinel `"."` (which the hooks interpret as "all types, no filter").
|
|
44
|
+
*/
|
|
45
|
+
export declare function parseConfigSuffixes(value: string | undefined): string[] | undefined;
|
|
35
46
|
/**
|
|
36
47
|
* Load and validate the `overrides` array from a `.sfdecomposer.config.json` file.
|
|
37
|
-
* Returns an empty array
|
|
48
|
+
* Returns an empty array when the file is missing or unreadable. Throws on invalid JSON
|
|
49
|
+
* or a malformed `overrides` array (same contract as before `loadConfigFile` was added).
|
|
38
50
|
*/
|
|
39
51
|
export declare function loadOverridesFromConfig(configPath: string): Promise<DecomposerOverride[]>;
|
|
40
52
|
/**
|
|
@@ -31,9 +31,56 @@ export async function resolveDefaultConfigPath() {
|
|
|
31
31
|
// key (silently ignored).
|
|
32
32
|
const FORBIDDEN_OVERRIDE_KEYS = new Set(['manifest', 'metadataSuffixes', 'ignorePackageDirectories']);
|
|
33
33
|
const SPLIT_TAGS_MODES = new Set(['split', 'group']);
|
|
34
|
+
/**
|
|
35
|
+
* Load and parse the full `.sfdecomposer.config.json` file. Validates the `overrides` array
|
|
36
|
+
* when present. Throws when the file cannot be read or parsed.
|
|
37
|
+
*/
|
|
38
|
+
export async function loadConfigFile(configPath) {
|
|
39
|
+
let raw;
|
|
40
|
+
try {
|
|
41
|
+
// Stryker disable next-line StringLiteral: JSON.parse(Buffer) defaults to UTF-8 decoding
|
|
42
|
+
raw = await readFile(configPath, 'utf-8');
|
|
43
|
+
}
|
|
44
|
+
catch (err) {
|
|
45
|
+
/* istanbul ignore next -- @preserve */
|
|
46
|
+
const message = err instanceof Error ? err.message : String(err);
|
|
47
|
+
throw new Error(`Cannot read ${configPath}: ${message}`, { cause: err });
|
|
48
|
+
}
|
|
49
|
+
let parsed;
|
|
50
|
+
try {
|
|
51
|
+
parsed = JSON.parse(raw);
|
|
52
|
+
}
|
|
53
|
+
catch (err) {
|
|
54
|
+
/* istanbul ignore next -- @preserve: JSON.parse always throws SyntaxError instances. */
|
|
55
|
+
const message = err instanceof Error ? err.message : String(err);
|
|
56
|
+
throw new Error(`Failed to parse ${configPath}: ${message}`, { cause: err });
|
|
57
|
+
}
|
|
58
|
+
if (parsed.overrides !== undefined) {
|
|
59
|
+
if (!Array.isArray(parsed.overrides)) {
|
|
60
|
+
throw new Error(`"overrides" in ${configPath} must be an array.`);
|
|
61
|
+
}
|
|
62
|
+
validateOverrides(parsed.overrides);
|
|
63
|
+
}
|
|
64
|
+
return parsed;
|
|
65
|
+
}
|
|
66
|
+
/**
|
|
67
|
+
* Split a comma-separated config string (e.g. `metadataSuffixes`, `ignorePackageDirectories`)
|
|
68
|
+
* into a trimmed string array. Returns `undefined` when the value is absent, empty, or the
|
|
69
|
+
* sentinel `"."` (which the hooks interpret as "all types, no filter").
|
|
70
|
+
*/
|
|
71
|
+
export function parseConfigSuffixes(value) {
|
|
72
|
+
if (!value || value.trim() === '' || value.trim() === '.')
|
|
73
|
+
return undefined;
|
|
74
|
+
const parts = value
|
|
75
|
+
.split(',')
|
|
76
|
+
.map((s) => s.trim())
|
|
77
|
+
.filter((s) => s.length > 0);
|
|
78
|
+
return parts.length > 0 ? parts : undefined;
|
|
79
|
+
}
|
|
34
80
|
/**
|
|
35
81
|
* Load and validate the `overrides` array from a `.sfdecomposer.config.json` file.
|
|
36
|
-
* Returns an empty array
|
|
82
|
+
* Returns an empty array when the file is missing or unreadable. Throws on invalid JSON
|
|
83
|
+
* or a malformed `overrides` array (same contract as before `loadConfigFile` was added).
|
|
37
84
|
*/
|
|
38
85
|
export async function loadOverridesFromConfig(configPath) {
|
|
39
86
|
let raw;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"configOverrides.js","sourceRoot":"","sources":["../../src/helpers/configOverrides.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"configOverrides.js","sourceRoot":"","sources":["../../src/helpers/configOverrides.ts"],"names":[],"mappings":"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"}
|
package/lib/helpers/types.d.ts
CHANGED
|
@@ -57,8 +57,11 @@ export type ConfigFile = {
|
|
|
57
57
|
strategy: string;
|
|
58
58
|
decomposeNestedPermissions: boolean;
|
|
59
59
|
updateForceignore?: boolean;
|
|
60
|
+
updateGitattributes?: boolean;
|
|
60
61
|
manifest?: string;
|
|
61
62
|
overrides?: DecomposerOverride[];
|
|
63
|
+
skipPrerunHook?: boolean;
|
|
64
|
+
skipPostRetrieveHook?: boolean;
|
|
62
65
|
};
|
|
63
66
|
export type SfdxProject = {
|
|
64
67
|
packageDirectories: Array<{
|
|
@@ -90,6 +93,7 @@ export type DecomposeOptions = {
|
|
|
90
93
|
manifest?: string;
|
|
91
94
|
overrides?: DecomposerOverride[];
|
|
92
95
|
updateForceignore?: boolean;
|
|
96
|
+
updateGitattributes?: boolean;
|
|
93
97
|
log: (msg: string) => void;
|
|
94
98
|
repoRoot?: string;
|
|
95
99
|
};
|
package/lib/hooks/prerun.js
CHANGED
package/lib/hooks/prerun.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"prerun.js","sourceRoot":"","sources":["../../src/hooks/prerun.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"prerun.js","sourceRoot":"","sources":["../../src/hooks/prerun.ts"],"names":[],"mappings":"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"}
|
|
@@ -32,6 +32,7 @@ function buildDecomposeOptions(configFile, log) {
|
|
|
32
32
|
strategy: configFile.strategy || 'unique-id',
|
|
33
33
|
decomposeNestedPerms: configFile.decomposeNestedPermissions || false,
|
|
34
34
|
updateForceignore: configFile.updateForceignore ?? false,
|
|
35
|
+
updateGitattributes: configFile.updateGitattributes ?? false,
|
|
35
36
|
manifest: manifest.trim() !== '' ? manifest.trim() : undefined,
|
|
36
37
|
overrides: configFile.overrides,
|
|
37
38
|
log,
|
|
@@ -54,6 +55,9 @@ export const scopedPostRetrieve = async function (options) {
|
|
|
54
55
|
catch (_error) {
|
|
55
56
|
return;
|
|
56
57
|
}
|
|
58
|
+
if (configFile.skipPostRetrieveHook) {
|
|
59
|
+
return;
|
|
60
|
+
}
|
|
57
61
|
const decomposeOptions = buildDecomposeOptions(configFile, (msg) => {
|
|
58
62
|
this.log(msg);
|
|
59
63
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"scopedPostRetrieve.js","sourceRoot":"","sources":["../../src/hooks/scopedPostRetrieve.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"scopedPostRetrieve.js","sourceRoot":"","sources":["../../src/hooks/scopedPostRetrieve.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
import { readFile, writeFile } from 'node:fs/promises';
|
|
3
|
+
import { join } from 'node:path';
|
|
4
|
+
const ATTRS = '-diff linguist-generated=true';
|
|
5
|
+
function buildPatterns(directoryName, metaSuffix) {
|
|
6
|
+
if (metaSuffix === 'labels') {
|
|
7
|
+
return [`**/labels/CustomLabels.labels-meta.xml ${ATTRS}`];
|
|
8
|
+
}
|
|
9
|
+
if (metaSuffix === 'bot') {
|
|
10
|
+
return [`**/${directoryName}/*/*.bot-meta.xml ${ATTRS}`, `**/${directoryName}/*/*.botVersion-meta.xml ${ATTRS}`];
|
|
11
|
+
}
|
|
12
|
+
return [`**/${directoryName}/*.${metaSuffix}-meta.xml ${ATTRS}`];
|
|
13
|
+
}
|
|
14
|
+
export async function updateGitattributesFile(processedMeta, repoRoot) {
|
|
15
|
+
const gitattributesPath = join(repoRoot, '.gitattributes');
|
|
16
|
+
let existingContent = '';
|
|
17
|
+
try {
|
|
18
|
+
existingContent = await readFile(gitattributesPath, 'utf-8');
|
|
19
|
+
}
|
|
20
|
+
catch {
|
|
21
|
+
// .gitattributes doesn't exist yet; start fresh
|
|
22
|
+
}
|
|
23
|
+
// Stryker disable next-line ArrayDeclaration -- empty-array fallback; ["Stryker was here"] is observationally equivalent since no real pattern matches that sentinel
|
|
24
|
+
const existingLines = existingContent ? existingContent.split('\n') : [];
|
|
25
|
+
const existingSet = new Set(existingLines.map((l) => l.trim()));
|
|
26
|
+
const toAdd = [];
|
|
27
|
+
for (const { directoryName, metaSuffix } of processedMeta) {
|
|
28
|
+
for (const pattern of buildPatterns(directoryName, metaSuffix)) {
|
|
29
|
+
if (!existingSet.has(pattern)) {
|
|
30
|
+
toAdd.push(pattern);
|
|
31
|
+
existingSet.add(pattern);
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
if (toAdd.length === 0)
|
|
36
|
+
return;
|
|
37
|
+
const trimmedContent = existingContent.trimEnd();
|
|
38
|
+
const content = (trimmedContent ? trimmedContent + '\n' : '') + toAdd.join('\n') + '\n';
|
|
39
|
+
// Stryker disable next-line StringLiteral -- encoding sentinel "" is not a meaningful substitution; Node behaviour with invalid encoding is environment-specific
|
|
40
|
+
await writeFile(gitattributesPath, content, 'utf-8');
|
|
41
|
+
}
|
|
42
|
+
//# sourceMappingURL=updateGitattributes.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"updateGitattributes.js","sourceRoot":"","sources":["../../../src/service/core/updateGitattributes.ts"],"names":[],"mappings":"AAAA,YAAY,CAAC;AAEb,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AACvD,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAIjC,MAAM,KAAK,GAAG,+BAA+B,CAAC;AAE9C,SAAS,aAAa,CAAC,aAAqB,EAAE,UAAkB;IAC9D,IAAI,UAAU,KAAK,QAAQ,EAAE,CAAC;QAC5B,OAAO,CAAC,0CAA0C,KAAK,EAAE,CAAC,CAAC;IAC7D,CAAC;IACD,IAAI,UAAU,KAAK,KAAK,EAAE,CAAC;QACzB,OAAO,CAAC,MAAM,aAAa,qBAAqB,KAAK,EAAE,EAAE,MAAM,aAAa,4BAA4B,KAAK,EAAE,CAAC,CAAC;IACnH,CAAC;IACD,OAAO,CAAC,MAAM,aAAa,MAAM,UAAU,aAAa,KAAK,EAAE,CAAC,CAAC;AACnE,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,uBAAuB,CAAC,aAA8B,EAAE,QAAgB;IAC5F,MAAM,iBAAiB,GAAG,IAAI,CAAC,QAAQ,EAAE,gBAAgB,CAAC,CAAC;IAE3D,IAAI,eAAe,GAAG,EAAE,CAAC;IACzB,IAAI,CAAC;QACH,eAAe,GAAG,MAAM,QAAQ,CAAC,iBAAiB,EAAE,OAAO,CAAC,CAAC;IAC/D,CAAC;IAAC,MAAM,CAAC;QACP,gDAAgD;IAClD,CAAC;IAED,qKAAqK;IACrK,MAAM,aAAa,GAAG,eAAe,CAAC,CAAC,CAAC,eAAe,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IACzE,MAAM,WAAW,GAAG,IAAI,GAAG,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;IAEhE,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,KAAK,MAAM,EAAE,aAAa,EAAE,UAAU,EAAE,IAAI,aAAa,EAAE,CAAC;QAC1D,KAAK,MAAM,OAAO,IAAI,aAAa,CAAC,aAAa,EAAE,UAAU,CAAC,EAAE,CAAC;YAC/D,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC;gBAC9B,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;gBACpB,WAAW,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;YAC3B,CAAC;QACH,CAAC;IACH,CAAC;IAED,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO;IAE/B,MAAM,cAAc,GAAG,eAAe,CAAC,OAAO,EAAE,CAAC;IACjD,MAAM,OAAO,GAAG,CAAC,cAAc,CAAC,CAAC,CAAC,cAAc,GAAG,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;IACxF,iKAAiK;IACjK,MAAM,SAAS,CAAC,iBAAiB,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;AACvD,CAAC"}
|
|
@@ -50,12 +50,16 @@ Additionally decompose object and field permissions on a permission set when str
|
|
|
50
50
|
|
|
51
51
|
# flags.config.summary
|
|
52
52
|
|
|
53
|
-
Load
|
|
53
|
+
Load all settings from .sfdecomposer.config.json in the repo root. When set, all top-level fields (metadataSuffixes, manifest, prePurge, postPurge, decomposedFormat, strategy, ignorePackageDirectories, decomposeNestedPermissions, updateForceignore, updateGitattributes) and the "overrides" array are applied. Explicit CLI flags take precedence over config values. Makes --metadata-type and --manifest optional when either is defined in the config.
|
|
54
54
|
|
|
55
55
|
# flags.update-forceignore.summary
|
|
56
56
|
|
|
57
57
|
Automatically add decomposed file paths to .forceignore after successful decomposition.
|
|
58
58
|
|
|
59
|
+
# flags.update-gitattributes.summary
|
|
60
|
+
|
|
61
|
+
Automatically add root metadata file patterns to .gitattributes after successful decomposition, suppressing noisy diffs on recomposed files while keeping them tracked for tools like sfdx-git-delta.
|
|
62
|
+
|
|
59
63
|
# error.missingMetadataOrManifest
|
|
60
64
|
|
|
61
|
-
Either --metadata-type (-m) or --manifest (-x) must be provided.
|
|
65
|
+
Either --metadata-type (-m) or --manifest (-x) must be provided, or use --config (-c) with a config file that specifies metadataSuffixes or manifest.
|
|
@@ -31,6 +31,10 @@ Purge the decomposed files after recomposing them.
|
|
|
31
31
|
|
|
32
32
|
Ignore a package directory.
|
|
33
33
|
|
|
34
|
+
# flags.config.summary
|
|
35
|
+
|
|
36
|
+
Load all settings from .sfdecomposer.config.json in the repo root. When set, top-level fields (metadataSuffixes, manifest, postPurge, ignorePackageDirectories) are applied. Explicit CLI flags take precedence over config values. Makes --metadata-type and --manifest optional when either is defined in the config.
|
|
37
|
+
|
|
34
38
|
# error.missingMetadataOrManifest
|
|
35
39
|
|
|
36
|
-
Either --metadata-type (-m) or --manifest (-x) must be provided.
|
|
40
|
+
Either --metadata-type (-m) or --manifest (-x) must be provided, or use --config (-c) with a config file that specifies metadataSuffixes or manifest.
|
|
@@ -46,11 +46,11 @@ Additionally decompose object and field permissions on a permission set when str
|
|
|
46
46
|
|
|
47
47
|
# flags.config.summary
|
|
48
48
|
|
|
49
|
-
Load
|
|
49
|
+
Load all settings from .sfdecomposer.config.json in the repo root. When set, all top-level fields (metadataSuffixes, manifest, decomposedFormat, strategy, ignorePackageDirectories, decomposeNestedPermissions) and the "overrides" array are applied. Explicit CLI flags take precedence over config values. Makes --metadata-type and --manifest optional when either is defined in the config.
|
|
50
50
|
|
|
51
51
|
# error.missingMetadataOrManifest
|
|
52
52
|
|
|
53
|
-
Either --metadata-type (-m) or --manifest (-x) must be provided.
|
|
53
|
+
Either --metadata-type (-m) or --manifest (-x) must be provided, or use --config (-c) with a config file that specifies metadataSuffixes or manifest.
|
|
54
54
|
|
|
55
55
|
# error.driftDetected
|
|
56
56
|
|
package/oclif.manifest.json
CHANGED
|
@@ -62,10 +62,10 @@
|
|
|
62
62
|
"format": {
|
|
63
63
|
"char": "f",
|
|
64
64
|
"name": "format",
|
|
65
|
-
"required":
|
|
65
|
+
"required": false,
|
|
66
66
|
"summary": "File format for the decomposed files.",
|
|
67
67
|
"default": "xml",
|
|
68
|
-
"hasDynamicHelp":
|
|
68
|
+
"hasDynamicHelp": true,
|
|
69
69
|
"multiple": false,
|
|
70
70
|
"options": [
|
|
71
71
|
"xml",
|
|
@@ -87,10 +87,10 @@
|
|
|
87
87
|
"strategy": {
|
|
88
88
|
"char": "s",
|
|
89
89
|
"name": "strategy",
|
|
90
|
-
"required":
|
|
90
|
+
"required": false,
|
|
91
91
|
"summary": "Strategy to follow when decomposing files.",
|
|
92
92
|
"default": "unique-id",
|
|
93
|
-
"hasDynamicHelp":
|
|
93
|
+
"hasDynamicHelp": true,
|
|
94
94
|
"multiple": false,
|
|
95
95
|
"options": [
|
|
96
96
|
"unique-id",
|
|
@@ -110,7 +110,7 @@
|
|
|
110
110
|
"char": "c",
|
|
111
111
|
"name": "config",
|
|
112
112
|
"required": false,
|
|
113
|
-
"summary": "Load
|
|
113
|
+
"summary": "Load all settings from .sfdecomposer.config.json in the repo root. When set, all top-level fields (metadataSuffixes, manifest, prePurge, postPurge, decomposedFormat, strategy, ignorePackageDirectories, decomposeNestedPermissions, updateForceignore, updateGitattributes) and the \"overrides\" array are applied. Explicit CLI flags take precedence over config values. Makes --metadata-type and --manifest optional when either is defined in the config.",
|
|
114
114
|
"allowNo": false,
|
|
115
115
|
"type": "boolean"
|
|
116
116
|
},
|
|
@@ -120,9 +120,16 @@
|
|
|
120
120
|
"summary": "Automatically add decomposed file paths to .forceignore after successful decomposition.",
|
|
121
121
|
"allowNo": false,
|
|
122
122
|
"type": "boolean"
|
|
123
|
+
},
|
|
124
|
+
"update-gitattributes": {
|
|
125
|
+
"name": "update-gitattributes",
|
|
126
|
+
"required": false,
|
|
127
|
+
"summary": "Automatically add root metadata file patterns to .gitattributes after successful decomposition, suppressing noisy diffs on recomposed files while keeping them tracked for tools like sfdx-git-delta.",
|
|
128
|
+
"allowNo": false,
|
|
129
|
+
"type": "boolean"
|
|
123
130
|
}
|
|
124
131
|
},
|
|
125
|
-
"hasDynamicHelp":
|
|
132
|
+
"hasDynamicHelp": true,
|
|
126
133
|
"hiddenAliases": [],
|
|
127
134
|
"id": "decomposer:decompose",
|
|
128
135
|
"pluginAlias": "sf-decomposer",
|
|
@@ -203,6 +210,14 @@
|
|
|
203
210
|
"hasDynamicHelp": false,
|
|
204
211
|
"multiple": true,
|
|
205
212
|
"type": "option"
|
|
213
|
+
},
|
|
214
|
+
"config": {
|
|
215
|
+
"char": "c",
|
|
216
|
+
"name": "config",
|
|
217
|
+
"required": false,
|
|
218
|
+
"summary": "Load all settings from .sfdecomposer.config.json in the repo root. When set, top-level fields (metadataSuffixes, manifest, postPurge, ignorePackageDirectories) are applied. Explicit CLI flags take precedence over config values. Makes --metadata-type and --manifest optional when either is defined in the config.",
|
|
219
|
+
"allowNo": false,
|
|
220
|
+
"type": "boolean"
|
|
206
221
|
}
|
|
207
222
|
},
|
|
208
223
|
"hasDynamicHelp": false,
|
|
@@ -273,10 +288,10 @@
|
|
|
273
288
|
"format": {
|
|
274
289
|
"char": "f",
|
|
275
290
|
"name": "format",
|
|
276
|
-
"required":
|
|
291
|
+
"required": false,
|
|
277
292
|
"summary": "File format to decompose into for the round-trip check.",
|
|
278
293
|
"default": "xml",
|
|
279
|
-
"hasDynamicHelp":
|
|
294
|
+
"hasDynamicHelp": true,
|
|
280
295
|
"multiple": false,
|
|
281
296
|
"options": [
|
|
282
297
|
"xml",
|
|
@@ -298,10 +313,10 @@
|
|
|
298
313
|
"strategy": {
|
|
299
314
|
"char": "s",
|
|
300
315
|
"name": "strategy",
|
|
301
|
-
"required":
|
|
316
|
+
"required": false,
|
|
302
317
|
"summary": "Strategy to follow when decomposing files for the round-trip check.",
|
|
303
318
|
"default": "unique-id",
|
|
304
|
-
"hasDynamicHelp":
|
|
319
|
+
"hasDynamicHelp": true,
|
|
305
320
|
"multiple": false,
|
|
306
321
|
"options": [
|
|
307
322
|
"unique-id",
|
|
@@ -321,12 +336,12 @@
|
|
|
321
336
|
"char": "c",
|
|
322
337
|
"name": "config",
|
|
323
338
|
"required": false,
|
|
324
|
-
"summary": "Load
|
|
339
|
+
"summary": "Load all settings from .sfdecomposer.config.json in the repo root. When set, all top-level fields (metadataSuffixes, manifest, decomposedFormat, strategy, ignorePackageDirectories, decomposeNestedPermissions) and the \"overrides\" array are applied. Explicit CLI flags take precedence over config values. Makes --metadata-type and --manifest optional when either is defined in the config.",
|
|
325
340
|
"allowNo": false,
|
|
326
341
|
"type": "boolean"
|
|
327
342
|
}
|
|
328
343
|
},
|
|
329
|
-
"hasDynamicHelp":
|
|
344
|
+
"hasDynamicHelp": true,
|
|
330
345
|
"hiddenAliases": [],
|
|
331
346
|
"id": "decomposer:verify",
|
|
332
347
|
"pluginAlias": "sf-decomposer",
|
|
@@ -349,5 +364,5 @@
|
|
|
349
364
|
]
|
|
350
365
|
}
|
|
351
366
|
},
|
|
352
|
-
"version": "6.
|
|
367
|
+
"version": "6.36.0"
|
|
353
368
|
}
|
package/package.json
CHANGED