Skip to content

Commit 0063f5a

Browse files
committed
feat: add options for list command
search options: * --archive (default) * --pre-release (alias as --beta) filter options: * --all-lifecycles * --lts output options: * --version-only (alias as --versions) * --minor-version-only (alias as --minor-versions)
1 parent 0972ed1 commit 0063f5a

File tree

1 file changed

+10
-8
lines changed

1 file changed

+10
-8
lines changed

src/cli.ts

Lines changed: 10 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -40,30 +40,32 @@ new Command()
4040
.example("unity-changeset list --lts --latest-patch", "List changesets of the latest patch versions (LTS only).")
4141
// Search options.
4242
.group("Search options")
43-
.option("--all", "Search all changesets (alpha/beta included)", { conflicts: ["beta"] })
44-
.option("--beta", "Search only pre-release (alpha/beta) changesets", { conflicts: ["all"] })
43+
.option("--archive", "Search archived changesets (default, alpha/beta not included)")
44+
.option("--all", "Search all changesets (alpha/beta included)", { conflicts: ["archive", "pre-release"] })
45+
.option("--pre-release, --beta", "Search only pre-release (alpha/beta) changesets", { conflicts: ["archive", "all"] })
4546
// Filter options.
4647
.group("Filter options")
4748
.option("--min <version>", "Minimum version (included)")
4849
.option("--max <version>", "Maximum version (included)")
4950
.option("--grep <regex>", "Regular expression (e.g. '20(18|19).4.*')")
5051
.option("--latest-lifecycle", "Only the latest lifecycle (default)")
5152
.option("--all-lifecycles", "All lifecycles", { conflicts: ["latest-lifecycle"] })
53+
.option("--lts", "Only the LTS versions", { conflicts: ["pre-release"] })
5254
// Group options.
5355
.group("Group options")
5456
.option("--latest-patch", "The latest patch versions only")
5557
.option("--oldest-patch", "The oldest patch versions in lateat lifecycle only", { conflicts: ["latest-patch"] })
5658
// Output options.
5759
.group("Output options")
58-
.option("--versions", "Outputs only the version (no changesets)")
59-
.option("--minor-versions", "Outputs only the minor version (no changesets)", { conflicts: ["version-only"] })
60+
.option("--version-only, --versions", "Outputs only the version (no changesets)")
61+
.option("--minor-version-only, --minor-versions", "Outputs only the minor version (no changesets)", { conflicts: ["version-only"] })
6062
.option("--json", "Output in json format")
6163
.option("--pretty-json", "Output in pretty json format")
6264
.action((options) => {
6365
// Search mode.
6466
const searchMode = options.all
6567
? SearchMode.All
66-
: options.beta
68+
: options.preRelease
6769
? SearchMode.PreRelease
6870
: SearchMode.Archived;
6971

@@ -82,13 +84,13 @@ new Command()
8284
allLifecycles: (options.allLifecycles && !options.latestLifecycle)
8385
? true
8486
: false,
85-
lts: false,
87+
lts: options.lts || false,
8688
};
8789

8890
// Output mode.
89-
const outputMode = options.versions
91+
const outputMode = options.versionOnly
9092
? OutputMode.VersionOnly
91-
: options.minorVersions
93+
: options.minorVersionOnly
9294
? OutputMode.MinorVersionOnly
9395
: OutputMode.Changeset;
9496

0 commit comments

Comments
 (0)