fork-version 4.1.9 → 5.0.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.
Files changed (81) hide show
  1. package/CHANGELOG.md +19 -0
  2. package/dist/cli.d.ts +1 -1
  3. package/dist/cli.js +54 -193
  4. package/dist/commands/inspect.d.ts +9 -0
  5. package/dist/commands/inspect.js +41 -0
  6. package/dist/commands/main.d.ts +16 -0
  7. package/dist/commands/main.js +30 -0
  8. package/dist/commands/validate-config.d.ts +6 -0
  9. package/dist/commands/validate-config.js +11 -0
  10. package/dist/commit-parser/commit-parser.d.ts +114 -0
  11. package/dist/commit-parser/commit-parser.js +327 -0
  12. package/dist/commit-parser/filter-reverted-commits.d.ts +17 -0
  13. package/dist/commit-parser/filter-reverted-commits.js +34 -0
  14. package/dist/commit-parser/options.d.ts +74 -0
  15. package/dist/commit-parser/options.js +70 -0
  16. package/dist/commit-parser/parser-error.js +14 -0
  17. package/dist/commit-parser/types.d.ts +53 -0
  18. package/dist/config/changelog-preset-config.js +41 -0
  19. package/dist/config/cli-arguments.d.ts +109 -0
  20. package/dist/config/cli-arguments.js +141 -0
  21. package/dist/config/defaults.js +38 -0
  22. package/dist/config/define-config.d.ts +9 -0
  23. package/dist/config/define-config.js +9 -0
  24. package/dist/config/load-config.js +45 -0
  25. package/dist/config/merge-files.js +12 -0
  26. package/dist/config/schema.d.ts +50 -0
  27. package/dist/config/schema.js +61 -0
  28. package/dist/config/types.d.ts +279 -0
  29. package/dist/config/user-config.d.ts +6 -0
  30. package/dist/config/user-config.js +50 -0
  31. package/dist/detect-git-host/detect-git-host.js +35 -0
  32. package/dist/detect-git-host/host-azure-devops.js +28 -0
  33. package/dist/detect-git-host/host-bitbucket.js +28 -0
  34. package/dist/detect-git-host/host-github.js +32 -0
  35. package/dist/detect-git-host/host-gitlab.js +48 -0
  36. package/dist/files/arm-bicep.js +44 -0
  37. package/dist/files/file-manager.d.ts +47 -0
  38. package/dist/files/file-manager.js +65 -0
  39. package/dist/files/install-shield-ism.js +59 -0
  40. package/dist/files/json-package.js +68 -0
  41. package/dist/files/ms-build-project.js +59 -0
  42. package/dist/files/plain-text.js +35 -0
  43. package/dist/files/yaml-package.js +61 -0
  44. package/dist/index.d.ts +21 -646
  45. package/dist/index.js +19 -10
  46. package/dist/process/changelog.d.ts +7 -0
  47. package/dist/process/changelog.js +69 -0
  48. package/dist/process/commit.d.ts +9 -0
  49. package/dist/process/commit.js +22 -0
  50. package/dist/process/get-commits.d.ts +14 -0
  51. package/dist/process/get-commits.js +25 -0
  52. package/dist/process/get-current-version.d.ts +13 -0
  53. package/dist/process/get-current-version.js +35 -0
  54. package/dist/process/get-next-version.d.ts +21 -0
  55. package/dist/process/get-next-version.js +72 -0
  56. package/dist/process/tag.d.ts +8 -0
  57. package/dist/process/tag.js +15 -0
  58. package/dist/services/git.d.ts +141 -0
  59. package/dist/services/git.js +236 -0
  60. package/dist/services/logger.d.ts +18 -0
  61. package/dist/services/logger.js +35 -0
  62. package/dist/utils/clean-tag.js +21 -0
  63. package/dist/utils/escape-regex.js +17 -0
  64. package/dist/utils/file-state.js +19 -0
  65. package/dist/utils/format-commit-message.js +13 -0
  66. package/dist/utils/parse-regexp-string.js +31 -0
  67. package/dist/utils/release-type.js +47 -0
  68. package/dist/utils/trim-string-array.js +20 -0
  69. package/package.json +11 -29
  70. package/dist/chunk-KRGBUNRK.cjs +0 -2264
  71. package/dist/chunk-KRGBUNRK.cjs.map +0 -1
  72. package/dist/chunk-X4NB24VR.js +0 -2220
  73. package/dist/chunk-X4NB24VR.js.map +0 -1
  74. package/dist/cli.cjs +0 -205
  75. package/dist/cli.cjs.map +0 -1
  76. package/dist/cli.d.cts +0 -1
  77. package/dist/cli.js.map +0 -1
  78. package/dist/index.cjs +0 -80
  79. package/dist/index.cjs.map +0 -1
  80. package/dist/index.d.cts +0 -646
  81. package/dist/index.js.map +0 -1
@@ -0,0 +1,109 @@
1
+ import * as _$meow from "meow";
2
+
3
+ //#region src/config/cli-arguments.d.ts
4
+ declare function getCliArguments(): _$meow.Result<{
5
+ /** @deprecated Set the `inspect-version` command instead. */inspectVersion: {
6
+ type: "boolean";
7
+ };
8
+ files: {
9
+ type: "string";
10
+ isMultiple: true;
11
+ aliases: string[];
12
+ shortFlag: string;
13
+ };
14
+ glob: {
15
+ type: "string";
16
+ shortFlag: string;
17
+ };
18
+ path: {
19
+ type: "string";
20
+ shortFlag: string;
21
+ };
22
+ changelog: {
23
+ type: "string";
24
+ };
25
+ header: {
26
+ type: "string";
27
+ };
28
+ tagPrefix: {
29
+ type: "string";
30
+ };
31
+ preRelease: {
32
+ type: "boolean";
33
+ };
34
+ preReleaseTag: {
35
+ type: "string";
36
+ };
37
+ currentVersion: {
38
+ type: "string";
39
+ };
40
+ nextVersion: {
41
+ type: "string";
42
+ };
43
+ releaseAs: {
44
+ type: "string";
45
+ choices: string[];
46
+ };
47
+ allowMultipleVersions: {
48
+ type: "boolean";
49
+ };
50
+ commitAll: {
51
+ type: "boolean";
52
+ };
53
+ changelogAll: {
54
+ type: "boolean";
55
+ };
56
+ debug: {
57
+ type: "boolean";
58
+ };
59
+ dryRun: {
60
+ type: "boolean";
61
+ };
62
+ silent: {
63
+ type: "boolean";
64
+ };
65
+ gitTagFallback: {
66
+ type: "boolean";
67
+ };
68
+ sign: {
69
+ type: "boolean";
70
+ };
71
+ verify: {
72
+ type: "boolean";
73
+ };
74
+ asJson: {
75
+ type: "boolean";
76
+ };
77
+ skipBump: {
78
+ type: "boolean";
79
+ };
80
+ skipChangelog: {
81
+ type: "boolean";
82
+ };
83
+ skipCommit: {
84
+ type: "boolean";
85
+ };
86
+ skipTag: {
87
+ type: "boolean";
88
+ };
89
+ commitUrlFormat: {
90
+ type: "string";
91
+ };
92
+ compareUrlFormat: {
93
+ type: "string";
94
+ };
95
+ issueUrlFormat: {
96
+ type: "string";
97
+ };
98
+ userUrlFormat: {
99
+ type: "string";
100
+ };
101
+ releaseCommitMessageFormat: {
102
+ type: "string";
103
+ };
104
+ releaseMessageSuffix: {
105
+ type: "string";
106
+ };
107
+ }>;
108
+ //#endregion
109
+ export { getCliArguments };
@@ -0,0 +1,141 @@
1
+ import meow from "meow";
2
+ //#region src/config/cli-arguments.ts
3
+ const helperText = `Usage:
4
+ $ fork-version [command?] [options?]
5
+
6
+ Commands:
7
+ main Bumps the version, update files, generate changelog, commit, and tag. [Default when no command is provided]
8
+ inspect Print the current version and git tag, then exits.
9
+ inspect-version Print the current version then exits.
10
+ inspect-tag Print the current git tag then exits.
11
+ validate-config Validates the configuration and exits.
12
+
13
+ General Options:
14
+ --version Show the current version of Fork-Version and exit.
15
+ --help Show this help message and exit.
16
+
17
+ Location Options:
18
+ --file, -F List of the files to be updated. [Default: ["bower.json", "deno.json", "deno.jsonc", "jsr.json", "jsr.jsonc", "manifest.json", "npm-shrinkwrap.json", "package-lock.json", "package.json"]]
19
+ --glob, -G Glob pattern to match files to be updated.
20
+ --path, -P The path Fork-Version will run from. [Default: process.cwd()]
21
+
22
+ Options:
23
+ --changelog Name of the changelog file. [Default: "CHANGELOG.md"]
24
+ --header The header text for the changelog.
25
+ --tag-prefix Specify a prefix for the created tag. [Default: "v"]
26
+ --pre-release Mark this release as a pre-release.
27
+ --pre-release-tag Mark this release with a tagged pre-release. [Example: "alpha", "beta", "rc"]
28
+ --current-version If set, Fork-Version will use this version instead of trying to determine one.
29
+ --next-version If set, Fork-Version will attempt to update to this version, instead of incrementing using "conventional-commit".
30
+ --release-as Release as increments the version by the specified level. [Choices: "major", "minor", "patch"]
31
+
32
+ Flags:
33
+ --allow-multiple-versions Don't throw an error if multiple versions are found in the given files. [Default: true]
34
+ --commit-all Commit all changes, not just files updated by Fork-Version.
35
+ --changelog-all If this flag is set, all default commit types will be added to the changelog.
36
+ --debug Output debug information.
37
+ --dry-run No output will be written to disk or committed.
38
+ --silent Run without logging to the terminal.
39
+ --git-tag-fallback If unable to find a version in the given files, fallback and attempt to use the latest git tag. [Default: true]
40
+ --sign If true, git will sign the commit with the systems GPG key.
41
+ --verify If true, git will run user defined git hooks before committing.
42
+ --as-json Output the result as JSON.
43
+
44
+ To negate a flag you can prefix it with "no-", for example "--no-git-tag-fallback" will not fallback to the latest git tag.
45
+
46
+ Skip Steps:
47
+ --skip-bump Skip the version bump step.
48
+ --skip-changelog Skip updating the changelog.
49
+ --skip-commit Skip committing the changes.
50
+ --skip-tag Skip tagging the commit.
51
+
52
+ Conventional Changelog Overrides:
53
+ --commit-url-format Override the default commit URL format.
54
+ --compare-url-format Override the default compare URL format.
55
+ --issue-url-format Override the default issue URL format.
56
+ --user-url-format Override the default user URL format.
57
+ --release-commit-message-format Override the default release commit message format.
58
+ --release-message-suffix Add a suffix to the end of the release message.
59
+
60
+ Exit Codes:
61
+ 0: Success
62
+ 1: General Error
63
+ 2: Unknown Command
64
+ 3: Config File Validation Error
65
+
66
+ Examples:
67
+ $ fork-version
68
+ Run fork-version in the current directory with default options.
69
+
70
+ $ fork-version --path ./packages/my-package
71
+ Run fork-version in the "./packages/my-package" directory.
72
+
73
+ $ fork-version --file package.json --file MyApi.csproj
74
+ Run fork-version and update the "package.json" and "MyApi.csproj" files.
75
+
76
+ $ fork-version --glob "*/package.json"
77
+ Run fork-version and update all "package.json" files in subdirectories.
78
+
79
+ $ fork-version inspect-version
80
+ Prints the current version and exits.`;
81
+ function getCliArguments() {
82
+ return meow(helperText, {
83
+ importMeta: import.meta,
84
+ booleanDefault: void 0,
85
+ helpIndent: 0,
86
+ flags: {
87
+ inspectVersion: { type: "boolean" },
88
+ files: {
89
+ type: "string",
90
+ isMultiple: true,
91
+ aliases: ["file"],
92
+ shortFlag: "F"
93
+ },
94
+ glob: {
95
+ type: "string",
96
+ shortFlag: "G"
97
+ },
98
+ path: {
99
+ type: "string",
100
+ shortFlag: "P"
101
+ },
102
+ changelog: { type: "string" },
103
+ header: { type: "string" },
104
+ tagPrefix: { type: "string" },
105
+ preRelease: { type: "boolean" },
106
+ preReleaseTag: { type: "string" },
107
+ currentVersion: { type: "string" },
108
+ nextVersion: { type: "string" },
109
+ releaseAs: {
110
+ type: "string",
111
+ choices: [
112
+ "major",
113
+ "minor",
114
+ "patch"
115
+ ]
116
+ },
117
+ allowMultipleVersions: { type: "boolean" },
118
+ commitAll: { type: "boolean" },
119
+ changelogAll: { type: "boolean" },
120
+ debug: { type: "boolean" },
121
+ dryRun: { type: "boolean" },
122
+ silent: { type: "boolean" },
123
+ gitTagFallback: { type: "boolean" },
124
+ sign: { type: "boolean" },
125
+ verify: { type: "boolean" },
126
+ asJson: { type: "boolean" },
127
+ skipBump: { type: "boolean" },
128
+ skipChangelog: { type: "boolean" },
129
+ skipCommit: { type: "boolean" },
130
+ skipTag: { type: "boolean" },
131
+ commitUrlFormat: { type: "string" },
132
+ compareUrlFormat: { type: "string" },
133
+ issueUrlFormat: { type: "string" },
134
+ userUrlFormat: { type: "string" },
135
+ releaseCommitMessageFormat: { type: "string" },
136
+ releaseMessageSuffix: { type: "string" }
137
+ }
138
+ });
139
+ }
140
+ //#endregion
141
+ export { getCliArguments };
@@ -0,0 +1,38 @@
1
+ //#region src/config/defaults.ts
2
+ const DEFAULT_CONFIG = {
3
+ command: "main",
4
+ files: [
5
+ "package.json",
6
+ "package-lock.json",
7
+ "npm-shrinkwrap.json",
8
+ "jsr.json",
9
+ "jsr.jsonc",
10
+ "deno.json",
11
+ "deno.jsonc",
12
+ "manifest.json",
13
+ "bower.json"
14
+ ],
15
+ path: process.cwd(),
16
+ changelog: "CHANGELOG.md",
17
+ header: `# Changelog
18
+
19
+ All notable changes to this project will be documented in this file. See [fork-version](https://github.com/eglavin/fork-version) for commit guidelines.
20
+ `,
21
+ tagPrefix: "v",
22
+ allowMultipleVersions: true,
23
+ commitAll: false,
24
+ changelogAll: false,
25
+ debug: false,
26
+ dryRun: false,
27
+ silent: false,
28
+ gitTagFallback: true,
29
+ sign: false,
30
+ verify: false,
31
+ asJson: false,
32
+ skipBump: false,
33
+ skipChangelog: false,
34
+ skipCommit: false,
35
+ skipTag: false
36
+ };
37
+ //#endregion
38
+ export { DEFAULT_CONFIG };
@@ -0,0 +1,9 @@
1
+ import { Config } from "./types.js";
2
+
3
+ //#region src/config/define-config.d.ts
4
+ /**
5
+ * [Fork-Version - Config Properties](https://github.com/eglavin/fork-version/blob/main/README.md#config-properties)
6
+ */
7
+ declare function defineConfig(config: Config): Config;
8
+ //#endregion
9
+ export { defineConfig };
@@ -0,0 +1,9 @@
1
+ //#region src/config/define-config.ts
2
+ /**
3
+ * [Fork-Version - Config Properties](https://github.com/eglavin/fork-version/blob/main/README.md#config-properties)
4
+ */
5
+ function defineConfig(config) {
6
+ return config;
7
+ }
8
+ //#endregion
9
+ export { defineConfig };
@@ -0,0 +1,45 @@
1
+ import { ForkConfigSchema } from "./schema.js";
2
+ import { parse } from "node:path";
3
+ import { readFileSync } from "node:fs";
4
+ import JoyCon from "joycon";
5
+ import { bundleRequire } from "bundle-require";
6
+ //#region src/config/load-config.ts
7
+ /**
8
+ * Name of the key in the package.json file that contains the users configuration.
9
+ */
10
+ const PACKAGE_JSON_CONFIG_KEY = "fork-version";
11
+ async function loadConfigFile(cwd) {
12
+ const configFilePath = await new JoyCon({
13
+ cwd,
14
+ packageKey: PACKAGE_JSON_CONFIG_KEY,
15
+ stopDir: parse(cwd).root
16
+ }).resolve([
17
+ "fork.config.ts",
18
+ "fork.config.js",
19
+ "fork.config.cjs",
20
+ "fork.config.mjs",
21
+ "fork.config.json",
22
+ "package.json"
23
+ ]);
24
+ if (!configFilePath) return {};
25
+ if (configFilePath.endsWith("json")) {
26
+ const fileContent = JSON.parse(readFileSync(configFilePath).toString());
27
+ if (configFilePath.endsWith("package.json")) {
28
+ if (fileContent[PACKAGE_JSON_CONFIG_KEY] && typeof fileContent[PACKAGE_JSON_CONFIG_KEY] === "object") {
29
+ const parsed = ForkConfigSchema.partial().safeParse(fileContent[PACKAGE_JSON_CONFIG_KEY]);
30
+ if (!parsed.success) throw new Error(`Validation error in: ${configFilePath}`, { cause: parsed.error });
31
+ return parsed.data;
32
+ }
33
+ return {};
34
+ }
35
+ const parsed = ForkConfigSchema.partial().safeParse(fileContent);
36
+ if (!parsed.success) throw new Error(`Validation error in: ${configFilePath}`, { cause: parsed.error });
37
+ return parsed.data;
38
+ }
39
+ const fileContent = await bundleRequire({ filepath: configFilePath });
40
+ const parsed = ForkConfigSchema.partial().safeParse(fileContent.mod.default || fileContent.mod);
41
+ if (!parsed.success) throw new Error(`Validation error in: ${configFilePath}`, { cause: parsed.error });
42
+ return parsed.data;
43
+ }
44
+ //#endregion
45
+ export { loadConfigFile };
@@ -0,0 +1,12 @@
1
+ import { DEFAULT_CONFIG } from "./defaults.js";
2
+ //#region src/config/merge-files.ts
3
+ function mergeFiles(configFiles, cliFiles, globResults) {
4
+ const listOfFiles = /* @__PURE__ */ new Set();
5
+ if (Array.isArray(configFiles)) configFiles.forEach((file) => listOfFiles.add(file));
6
+ if (Array.isArray(cliFiles)) cliFiles.forEach((file) => listOfFiles.add(file));
7
+ globResults.forEach((file) => listOfFiles.add(file));
8
+ if (listOfFiles.size) return Array.from(listOfFiles);
9
+ return DEFAULT_CONFIG.files;
10
+ }
11
+ //#endregion
12
+ export { mergeFiles };
@@ -0,0 +1,50 @@
1
+ import { z } from "zod";
2
+
3
+ //#region src/config/schema.d.ts
4
+ declare const ForkConfigSchema: z.ZodObject<{
5
+ command: z.ZodLiteral<"main" | "inspect" | "inspect-version" | "inspect-tag" | "validate-config">;
6
+ inspectVersion: z.ZodOptional<z.ZodBoolean>;
7
+ files: z.ZodArray<z.ZodString>;
8
+ glob: z.ZodOptional<z.ZodString>;
9
+ path: z.ZodString;
10
+ changelog: z.ZodString;
11
+ header: z.ZodString;
12
+ tagPrefix: z.ZodString;
13
+ preRelease: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodBoolean]>>;
14
+ currentVersion: z.ZodOptional<z.ZodString>;
15
+ nextVersion: z.ZodOptional<z.ZodString>;
16
+ releaseAs: z.ZodOptional<z.ZodUnion<readonly [z.ZodLiteral<"major">, z.ZodLiteral<"minor">, z.ZodLiteral<"patch">]>>;
17
+ allowMultipleVersions: z.ZodBoolean;
18
+ commitAll: z.ZodBoolean;
19
+ changelogAll: z.ZodBoolean;
20
+ debug: z.ZodBoolean;
21
+ dryRun: z.ZodBoolean;
22
+ silent: z.ZodBoolean;
23
+ gitTagFallback: z.ZodBoolean;
24
+ sign: z.ZodBoolean;
25
+ verify: z.ZodBoolean;
26
+ asJson: z.ZodBoolean;
27
+ skipBump: z.ZodBoolean;
28
+ skipChangelog: z.ZodBoolean;
29
+ skipCommit: z.ZodBoolean;
30
+ skipTag: z.ZodBoolean;
31
+ detectedGitHost: z.ZodOptional<z.ZodString>;
32
+ changelogPresetConfig: z.ZodOptional<z.ZodObject<{
33
+ types: z.ZodOptional<z.ZodArray<z.ZodObject<{
34
+ type: z.ZodString;
35
+ scope: z.ZodOptional<z.ZodString>;
36
+ section: z.ZodOptional<z.ZodString>;
37
+ hidden: z.ZodOptional<z.ZodBoolean>;
38
+ }, z.core.$strip>>>;
39
+ commitUrlFormat: z.ZodOptional<z.ZodString>;
40
+ compareUrlFormat: z.ZodOptional<z.ZodString>;
41
+ issueUrlFormat: z.ZodOptional<z.ZodString>;
42
+ userUrlFormat: z.ZodOptional<z.ZodString>;
43
+ releaseCommitMessageFormat: z.ZodOptional<z.ZodString>;
44
+ issuePrefixes: z.ZodOptional<z.ZodArray<z.ZodString>>;
45
+ }, z.core.$strip>>;
46
+ releaseMessageSuffix: z.ZodOptional<z.ZodString>;
47
+ commitParserOptions: z.ZodOptional<z.ZodObject<{}, z.core.$loose>>;
48
+ }, z.core.$strip>;
49
+ //#endregion
50
+ export { ForkConfigSchema };
@@ -0,0 +1,61 @@
1
+ import { z } from "zod";
2
+ //#region src/config/schema.ts
3
+ const ChangelogPresetConfigTypeSchema = z.object({
4
+ type: z.string().describe("The type of commit message, such as \"feat\", \"fix\", \"chore\"."),
5
+ scope: z.string().optional().describe("The scope of the commit message."),
6
+ section: z.string().optional().describe("The section of the `CHANGELOG` the commit should show up in."),
7
+ hidden: z.boolean().optional().describe("Should show in the generated changelog message?")
8
+ });
9
+ const ChangelogPresetConfigSchema = z.object({
10
+ types: z.array(ChangelogPresetConfigTypeSchema).describe("List of explicitly supported commit message types."),
11
+ commitUrlFormat: z.string().describe("A URL representing a specific commit at a hash."),
12
+ compareUrlFormat: z.string().describe("A URL representing the comparison between two git SHAs."),
13
+ issueUrlFormat: z.string().describe("A URL representing the issue format."),
14
+ userUrlFormat: z.string().describe("A URL representing a user's profile on GitHub, Gitlab, etc."),
15
+ releaseCommitMessageFormat: z.string().describe("A string to be used to format the auto-generated release commit message."),
16
+ issuePrefixes: z.array(z.string()).describe("List of prefixes used to detect references to issues.")
17
+ });
18
+ const ForkConfigSchema = z.object({
19
+ command: z.literal([
20
+ "main",
21
+ "inspect",
22
+ "inspect-version",
23
+ "inspect-tag",
24
+ "validate-config"
25
+ ]).describe("The command to run. Can be one of: main, inspect, inspect-version, inspect-tag, validate-config. Defaults to main."),
26
+ inspectVersion: z.boolean().optional().describe("If set, Fork-Version will print the current version and exit."),
27
+ files: z.array(z.string()).describe("List of the files to be updated."),
28
+ glob: z.string().optional().describe("Glob pattern to match files to be updated."),
29
+ path: z.string().describe("The path Fork-Version will run from. Defaults to \"process.cwd()\"."),
30
+ changelog: z.string().describe("Name of the changelog file. Defaults to \"CHANGELOG.md\"."),
31
+ header: z.string().describe("The header text for the changelog."),
32
+ tagPrefix: z.string().describe("Specify a prefix for the created tag. Defaults to \"v\"."),
33
+ preRelease: z.string().or(z.boolean()).optional().describe("Make a pre-release with optional label if given value is a string."),
34
+ currentVersion: z.string().optional().describe("If set, Fork-Version will use this version instead of trying to determine one."),
35
+ nextVersion: z.string().optional().describe("If set, Fork-Version will attempt to update to this version, instead of incrementing using \"conventional-commit\"."),
36
+ releaseAs: z.union([
37
+ z.literal("major"),
38
+ z.literal("minor"),
39
+ z.literal("patch")
40
+ ]).optional().describe("Release as increments the version by the specified level. Overrides the default behaviour of \"conventional-commit\"."),
41
+ allowMultipleVersions: z.boolean().describe("Don't throw an error if multiple versions are found in the given files."),
42
+ commitAll: z.boolean().describe("Commit all changes, not just files updated by Fork-Version."),
43
+ changelogAll: z.boolean().describe("If this flag is set, all default commit types will be added to the changelog, not just `feat` and `fix`."),
44
+ debug: z.boolean().describe("Output debug information."),
45
+ dryRun: z.boolean().describe("No output will be written to disk or committed."),
46
+ silent: z.boolean().describe("Run without logging to the terminal."),
47
+ gitTagFallback: z.boolean().describe("If unable to find a version in the given files, fallback and attempt to use the latest git tag. Defaults to true."),
48
+ sign: z.boolean().describe("If true, git will sign the commit with the systems GPG key."),
49
+ verify: z.boolean().describe("If true, git will run user defined git hooks before committing."),
50
+ asJson: z.boolean().describe("Print inspected output as a parsable json string."),
51
+ skipBump: z.boolean().describe("Skip the bump step."),
52
+ skipChangelog: z.boolean().describe("Skip the changelog step."),
53
+ skipCommit: z.boolean().describe("Skip the commit step."),
54
+ skipTag: z.boolean().describe("Skip the tag step."),
55
+ detectedGitHost: z.string().optional().describe("The detected git host, such as GitHub, GitLab, Bitbucket, Azure Devops, or undefined if unknown or not detected."),
56
+ changelogPresetConfig: ChangelogPresetConfigSchema.partial().optional().describe("Override the default \"conventional-changelog-conventionalcommits\" preset configuration."),
57
+ releaseMessageSuffix: z.string().optional().describe("Add a suffix to the release commit message."),
58
+ commitParserOptions: z.looseObject({}).optional().describe("Options to pass to commits parser.")
59
+ });
60
+ //#endregion
61
+ export { ChangelogPresetConfigSchema, ChangelogPresetConfigTypeSchema, ForkConfigSchema };