ts-repo-utils 10.1.3 → 10.1.4

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.
@@ -14,7 +14,7 @@ import '@sindresorhus/is';
14
14
 
15
15
  const cmdDef = cmd.command({
16
16
  name: "assert-repo-is-clean-cli",
17
- version: "10.1.3",
17
+ version: "10.1.4",
18
18
  args: {
19
19
  silent: cmd.flag({
20
20
  long: "silent",
@@ -1 +1 @@
1
- {"version":3,"file":"assert-repo-is-clean.mjs","sources":["../../src/cmd/assert-repo-is-clean.mts"],"sourcesContent":["#!/usr/bin/env node\n\nimport * as cmd from 'cmd-ts';\nimport { assertRepoIsClean } from '../functions/index.mjs';\n\nconst cmdDef = cmd.command({\n name: 'assert-repo-is-clean-cli',\n version: '10.1.3',\n args: {\n silent: cmd.flag({\n long: 'silent',\n type: cmd.optional(cmd.boolean),\n description: 'If true, suppresses output messages (default: false)',\n }),\n },\n handler: (args) => {\n main(args).catch((error: unknown) => {\n console.error('An error occurred:', error);\n\n process.exit(1);\n });\n },\n});\n\nconst main = async (args: Readonly<{ silent?: boolean }>): Promise<void> => {\n await assertRepoIsClean({ silent: args.silent });\n};\n\nawait cmd.run(cmdDef, process.argv.slice(2));\n"],"names":[],"mappings":";;;;;;;;;;;;;;AAKA,MAAM,MAAA,GAAS,IAAI,OAAA,CAAQ;AAAA,EACzB,IAAA,EAAM,0BAAA;AAAA,EACN,OAAA,EAAS,QAAA;AAAA,EACT,IAAA,EAAM;AAAA,IACJ,MAAA,EAAQ,IAAI,IAAA,CAAK;AAAA,MACf,IAAA,EAAM,QAAA;AAAA,MACN,IAAA,EAAM,GAAA,CAAI,QAAA,CAAS,GAAA,CAAI,OAAO,CAAA;AAAA,MAC9B,WAAA,EAAa;AAAA,KACd;AAAA,GACH;AAAA,EACA,OAAA,EAAS,CAAC,IAAA,KAAS;AACjB,IAAA,IAAA,CAAK,IAAI,CAAA,CAAE,KAAA,CAAM,CAAC,KAAA,KAAmB;AACnC,MAAA,OAAA,CAAQ,KAAA,CAAM,sBAAsB,KAAK,CAAA;AAEzC,MAAA,OAAA,CAAQ,KAAK,CAAC,CAAA;AAAA,IAChB,CAAC,CAAA;AAAA,EACH;AACF,CAAC,CAAA;AAED,MAAM,IAAA,GAAO,OAAO,IAAA,KAAwD;AAC1E,EAAA,MAAM,iBAAA,CAAkB,EAAE,MAAA,EAAQ,IAAA,CAAK,QAAQ,CAAA;AACjD,CAAA;AAEA,MAAM,IAAI,GAAA,CAAI,MAAA,EAAQ,QAAQ,IAAA,CAAK,KAAA,CAAM,CAAC,CAAC,CAAA"}
1
+ {"version":3,"file":"assert-repo-is-clean.mjs","sources":["../../src/cmd/assert-repo-is-clean.mts"],"sourcesContent":["#!/usr/bin/env node\n\nimport * as cmd from 'cmd-ts';\nimport { assertRepoIsClean } from '../functions/index.mjs';\n\nconst cmdDef = cmd.command({\n name: 'assert-repo-is-clean-cli',\n version: '10.1.4',\n args: {\n silent: cmd.flag({\n long: 'silent',\n type: cmd.optional(cmd.boolean),\n description: 'If true, suppresses output messages (default: false)',\n }),\n },\n handler: (args) => {\n main(args).catch((error: unknown) => {\n console.error('An error occurred:', error);\n\n process.exit(1);\n });\n },\n});\n\nconst main = async (args: Readonly<{ silent?: boolean }>): Promise<void> => {\n await assertRepoIsClean({ silent: args.silent });\n};\n\nawait cmd.run(cmdDef, process.argv.slice(2));\n"],"names":[],"mappings":";;;;;;;;;;;;;;AAKA,MAAM,MAAA,GAAS,IAAI,OAAA,CAAQ;AAAA,EACzB,IAAA,EAAM,0BAAA;AAAA,EACN,OAAA,EAAS,QAAA;AAAA,EACT,IAAA,EAAM;AAAA,IACJ,MAAA,EAAQ,IAAI,IAAA,CAAK;AAAA,MACf,IAAA,EAAM,QAAA;AAAA,MACN,IAAA,EAAM,GAAA,CAAI,QAAA,CAAS,GAAA,CAAI,OAAO,CAAA;AAAA,MAC9B,WAAA,EAAa;AAAA,KACd;AAAA,GACH;AAAA,EACA,OAAA,EAAS,CAAC,IAAA,KAAS;AACjB,IAAA,IAAA,CAAK,IAAI,CAAA,CAAE,KAAA,CAAM,CAAC,KAAA,KAAmB;AACnC,MAAA,OAAA,CAAQ,KAAA,CAAM,sBAAsB,KAAK,CAAA;AAEzC,MAAA,OAAA,CAAQ,KAAK,CAAC,CAAA;AAAA,IAChB,CAAC,CAAA;AAAA,EACH;AACF,CAAC,CAAA;AAED,MAAM,IAAA,GAAO,OAAO,IAAA,KAAwD;AAC1E,EAAA,MAAM,iBAAA,CAAkB,EAAE,MAAA,EAAQ,IAAA,CAAK,QAAQ,CAAA;AACjD,CAAA;AAEA,MAAM,IAAI,GAAA,CAAI,MAAA,EAAQ,QAAQ,IAAA,CAAK,KAAA,CAAM,CAAC,CAAC,CAAA"}
@@ -14,7 +14,7 @@ import '@sindresorhus/is';
14
14
 
15
15
  const cmdDef = cmd.command({
16
16
  name: "check-should-run-type-checks-cli",
17
- version: "10.1.3",
17
+ version: "10.1.4",
18
18
  args: {
19
19
  pathsIgnore: cmd.multioption({
20
20
  long: "paths-ignore",
@@ -1 +1 @@
1
- {"version":3,"file":"check-should-run-type-checks.mjs","sources":["../../src/cmd/check-should-run-type-checks.mts"],"sourcesContent":["#!/usr/bin/env node\n\nimport * as cmd from 'cmd-ts';\nimport { checkShouldRunTypeChecks } from '../functions/index.mjs';\n\nconst cmdDef = cmd.command({\n name: 'check-should-run-type-checks-cli',\n version: '10.1.3',\n args: {\n pathsIgnore: cmd.multioption({\n long: 'paths-ignore',\n type: cmd.optional(cmd.array(cmd.string)),\n description:\n 'Patterns to ignore when checking if type checks should run. Supports exact file matches, directory prefixes (ending with \"/\"), and file extensions (starting with \"**.\")',\n }),\n baseBranch: cmd.option({\n long: 'base-branch',\n type: cmd.optional(cmd.string),\n description:\n 'Base branch to compare against for determining changed files. Defaults to \"origin/main\"',\n }),\n },\n handler: (args) => {\n main(args).catch((error: unknown) => {\n console.error('An error occurred:', error);\n\n process.exit(1);\n });\n },\n});\n\nconst main = async (\n args: Readonly<{\n pathsIgnore?: readonly string[];\n baseBranch?: string;\n }>,\n): Promise<void> => {\n await checkShouldRunTypeChecks({\n pathsIgnore: args.pathsIgnore,\n baseBranch: args.baseBranch,\n });\n};\n\nawait cmd.run(cmdDef, process.argv.slice(2));\n"],"names":[],"mappings":";;;;;;;;;;;;;;AAKA,MAAM,MAAA,GAAS,IAAI,OAAA,CAAQ;AAAA,EACzB,IAAA,EAAM,kCAAA;AAAA,EACN,OAAA,EAAS,QAAA;AAAA,EACT,IAAA,EAAM;AAAA,IACJ,WAAA,EAAa,IAAI,WAAA,CAAY;AAAA,MAC3B,IAAA,EAAM,cAAA;AAAA,MACN,MAAM,GAAA,CAAI,QAAA,CAAS,IAAI,KAAA,CAAM,GAAA,CAAI,MAAM,CAAC,CAAA;AAAA,MACxC,WAAA,EACE;AAAA,KACH,CAAA;AAAA,IACD,UAAA,EAAY,IAAI,MAAA,CAAO;AAAA,MACrB,IAAA,EAAM,aAAA;AAAA,MACN,IAAA,EAAM,GAAA,CAAI,QAAA,CAAS,GAAA,CAAI,MAAM,CAAA;AAAA,MAC7B,WAAA,EACE;AAAA,KACH;AAAA,GACH;AAAA,EACA,OAAA,EAAS,CAAC,IAAA,KAAS;AACjB,IAAA,IAAA,CAAK,IAAI,CAAA,CAAE,KAAA,CAAM,CAAC,KAAA,KAAmB;AACnC,MAAA,OAAA,CAAQ,KAAA,CAAM,sBAAsB,KAAK,CAAA;AAEzC,MAAA,OAAA,CAAQ,KAAK,CAAC,CAAA;AAAA,IAChB,CAAC,CAAA;AAAA,EACH;AACF,CAAC,CAAA;AAED,MAAM,IAAA,GAAO,OACX,IAAA,KAIkB;AAClB,EAAA,MAAM,wBAAA,CAAyB;AAAA,IAC7B,aAAa,IAAA,CAAK,WAAA;AAAA,IAClB,YAAY,IAAA,CAAK;AAAA,GAClB,CAAA;AACH,CAAA;AAEA,MAAM,IAAI,GAAA,CAAI,MAAA,EAAQ,QAAQ,IAAA,CAAK,KAAA,CAAM,CAAC,CAAC,CAAA"}
1
+ {"version":3,"file":"check-should-run-type-checks.mjs","sources":["../../src/cmd/check-should-run-type-checks.mts"],"sourcesContent":["#!/usr/bin/env node\n\nimport * as cmd from 'cmd-ts';\nimport { checkShouldRunTypeChecks } from '../functions/index.mjs';\n\nconst cmdDef = cmd.command({\n name: 'check-should-run-type-checks-cli',\n version: '10.1.4',\n args: {\n pathsIgnore: cmd.multioption({\n long: 'paths-ignore',\n type: cmd.optional(cmd.array(cmd.string)),\n description:\n 'Patterns to ignore when checking if type checks should run. Supports exact file matches, directory prefixes (ending with \"/\"), and file extensions (starting with \"**.\")',\n }),\n baseBranch: cmd.option({\n long: 'base-branch',\n type: cmd.optional(cmd.string),\n description:\n 'Base branch to compare against for determining changed files. Defaults to \"origin/main\"',\n }),\n },\n handler: (args) => {\n main(args).catch((error: unknown) => {\n console.error('An error occurred:', error);\n\n process.exit(1);\n });\n },\n});\n\nconst main = async (\n args: Readonly<{\n pathsIgnore?: readonly string[];\n baseBranch?: string;\n }>,\n): Promise<void> => {\n await checkShouldRunTypeChecks({\n pathsIgnore: args.pathsIgnore,\n baseBranch: args.baseBranch,\n });\n};\n\nawait cmd.run(cmdDef, process.argv.slice(2));\n"],"names":[],"mappings":";;;;;;;;;;;;;;AAKA,MAAM,MAAA,GAAS,IAAI,OAAA,CAAQ;AAAA,EACzB,IAAA,EAAM,kCAAA;AAAA,EACN,OAAA,EAAS,QAAA;AAAA,EACT,IAAA,EAAM;AAAA,IACJ,WAAA,EAAa,IAAI,WAAA,CAAY;AAAA,MAC3B,IAAA,EAAM,cAAA;AAAA,MACN,MAAM,GAAA,CAAI,QAAA,CAAS,IAAI,KAAA,CAAM,GAAA,CAAI,MAAM,CAAC,CAAA;AAAA,MACxC,WAAA,EACE;AAAA,KACH,CAAA;AAAA,IACD,UAAA,EAAY,IAAI,MAAA,CAAO;AAAA,MACrB,IAAA,EAAM,aAAA;AAAA,MACN,IAAA,EAAM,GAAA,CAAI,QAAA,CAAS,GAAA,CAAI,MAAM,CAAA;AAAA,MAC7B,WAAA,EACE;AAAA,KACH;AAAA,GACH;AAAA,EACA,OAAA,EAAS,CAAC,IAAA,KAAS;AACjB,IAAA,IAAA,CAAK,IAAI,CAAA,CAAE,KAAA,CAAM,CAAC,KAAA,KAAmB;AACnC,MAAA,OAAA,CAAQ,KAAA,CAAM,sBAAsB,KAAK,CAAA;AAEzC,MAAA,OAAA,CAAQ,KAAK,CAAC,CAAA;AAAA,IAChB,CAAC,CAAA;AAAA,EACH;AACF,CAAC,CAAA;AAED,MAAM,IAAA,GAAO,OACX,IAAA,KAIkB;AAClB,EAAA,MAAM,wBAAA,CAAyB;AAAA,IAC7B,aAAa,IAAA,CAAK,WAAA;AAAA,IAClB,YAAY,IAAA,CAAK;AAAA,GAClB,CAAA;AACH,CAAA;AAEA,MAAM,IAAI,GAAA,CAAI,MAAA,EAAQ,QAAQ,IAAA,CAAK,KAAA,CAAM,CAAC,CAAC,CAAA"}
@@ -13,7 +13,7 @@ import '@sindresorhus/is';
13
13
 
14
14
  const cmdDef = cmd.command({
15
15
  name: "format-diff-from-cli",
16
- version: "10.1.3",
16
+ version: "10.1.4",
17
17
  args: {
18
18
  base: cmd.positional({
19
19
  type: cmd.string,
@@ -1 +1 @@
1
- {"version":3,"file":"format-diff-from.mjs","sources":["../../src/cmd/format-diff-from.mts"],"sourcesContent":["#!/usr/bin/env node\n\nimport * as cmd from 'cmd-ts';\nimport { Result } from 'ts-data-forge';\nimport { formatDiffFrom } from '../functions/index.mjs';\n\nconst cmdDef = cmd.command({\n name: 'format-diff-from-cli',\n version: '10.1.3',\n args: {\n base: cmd.positional({\n type: cmd.string,\n displayName: 'base',\n description: 'Base branch name or commit hash to compare against',\n }),\n excludeUntracked: cmd.flag({\n long: 'exclude-untracked',\n type: cmd.optional(cmd.boolean),\n description:\n 'Exclude untracked files in addition to diff files (default: false)',\n }),\n excludeModified: cmd.flag({\n long: 'exclude-modified',\n type: cmd.optional(cmd.boolean),\n description:\n 'Exclude modified files in addition to diff files (default: false)',\n }),\n excludeStaged: cmd.flag({\n long: 'exclude-staged',\n type: cmd.optional(cmd.boolean),\n description:\n 'Exclude staged files in addition to diff files (default: false)',\n }),\n ignoreUnknown: cmd.flag({\n long: 'ignore-unknown',\n type: cmd.optional(cmd.boolean),\n description: 'Ignore unknown files (default: true)',\n }),\n silent: cmd.flag({\n long: 'silent',\n type: cmd.optional(cmd.boolean),\n description: 'If true, suppresses output messages (default: false)',\n }),\n cwd: cmd.option({\n long: 'cwd',\n type: cmd.optional(cmd.string),\n description:\n 'If provided, only files within this directory are formatted. Relative paths are resolved against the current working directory (process.cwd()), not the git repository root.',\n }),\n },\n handler: (args) => {\n main({\n base: args.base,\n excludeUntracked: args.excludeUntracked ?? false,\n excludeModified: args.excludeModified ?? false,\n excludeStaged: args.excludeStaged ?? false,\n ignoreUnknown: args.ignoreUnknown ?? true,\n silent: args.silent ?? false,\n cwd: args.cwd,\n }).catch((error: unknown) => {\n console.error('An error occurred:', error);\n\n process.exit(1);\n });\n },\n});\n\nconst main = async (\n args: Readonly<{\n base: string;\n excludeUntracked: boolean;\n excludeModified: boolean;\n excludeStaged: boolean;\n ignoreUnknown: boolean;\n silent: boolean;\n cwd: string | undefined;\n }>,\n): Promise<void> => {\n const result = await formatDiffFrom(args.base, {\n includeUntracked: !args.excludeUntracked,\n includeModified: !args.excludeModified,\n includeStaged: !args.excludeStaged,\n ignoreUnknown: args.ignoreUnknown,\n silent: args.silent,\n cwd: args.cwd,\n });\n\n if (Result.isErr(result)) {\n process.exit(1);\n }\n};\n\nawait cmd.run(cmdDef, process.argv.slice(2));\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"format-diff-from.mjs","sources":["../../src/cmd/format-diff-from.mts"],"sourcesContent":["#!/usr/bin/env node\n\nimport * as cmd from 'cmd-ts';\nimport { Result } from 'ts-data-forge';\nimport { formatDiffFrom } from '../functions/index.mjs';\n\nconst cmdDef = cmd.command({\n name: 'format-diff-from-cli',\n version: '10.1.4',\n args: {\n base: cmd.positional({\n type: cmd.string,\n displayName: 'base',\n description: 'Base branch name or commit hash to compare against',\n }),\n excludeUntracked: cmd.flag({\n long: 'exclude-untracked',\n type: cmd.optional(cmd.boolean),\n description:\n 'Exclude untracked files in addition to diff files (default: false)',\n }),\n excludeModified: cmd.flag({\n long: 'exclude-modified',\n type: cmd.optional(cmd.boolean),\n description:\n 'Exclude modified files in addition to diff files (default: false)',\n }),\n excludeStaged: cmd.flag({\n long: 'exclude-staged',\n type: cmd.optional(cmd.boolean),\n description:\n 'Exclude staged files in addition to diff files (default: false)',\n }),\n ignoreUnknown: cmd.flag({\n long: 'ignore-unknown',\n type: cmd.optional(cmd.boolean),\n description: 'Ignore unknown files (default: true)',\n }),\n silent: cmd.flag({\n long: 'silent',\n type: cmd.optional(cmd.boolean),\n description: 'If true, suppresses output messages (default: false)',\n }),\n cwd: cmd.option({\n long: 'cwd',\n type: cmd.optional(cmd.string),\n description:\n 'If provided, only files within this directory are formatted. Relative paths are resolved against the current working directory (process.cwd()), not the git repository root.',\n }),\n },\n handler: (args) => {\n main({\n base: args.base,\n excludeUntracked: args.excludeUntracked ?? false,\n excludeModified: args.excludeModified ?? false,\n excludeStaged: args.excludeStaged ?? false,\n ignoreUnknown: args.ignoreUnknown ?? true,\n silent: args.silent ?? false,\n cwd: args.cwd,\n }).catch((error: unknown) => {\n console.error('An error occurred:', error);\n\n process.exit(1);\n });\n },\n});\n\nconst main = async (\n args: Readonly<{\n base: string;\n excludeUntracked: boolean;\n excludeModified: boolean;\n excludeStaged: boolean;\n ignoreUnknown: boolean;\n silent: boolean;\n cwd: string | undefined;\n }>,\n): Promise<void> => {\n const result = await formatDiffFrom(args.base, {\n includeUntracked: !args.excludeUntracked,\n includeModified: !args.excludeModified,\n includeStaged: !args.excludeStaged,\n ignoreUnknown: args.ignoreUnknown,\n silent: args.silent,\n cwd: args.cwd,\n });\n\n if (Result.isErr(result)) {\n process.exit(1);\n }\n};\n\nawait cmd.run(cmdDef, process.argv.slice(2));\n"],"names":[],"mappings":"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"}
@@ -13,7 +13,7 @@ import '@sindresorhus/is';
13
13
 
14
14
  const cmdDef = cmd.command({
15
15
  name: "format-uncommitted-cli",
16
- version: "10.1.3",
16
+ version: "10.1.4",
17
17
  args: {
18
18
  excludeUntracked: cmd.flag({
19
19
  long: "exclude-untracked",
@@ -1 +1 @@
1
- {"version":3,"file":"format-uncommitted.mjs","sources":["../../src/cmd/format-uncommitted.mts"],"sourcesContent":["#!/usr/bin/env node\n\nimport * as cmd from 'cmd-ts';\nimport { Result } from 'ts-data-forge';\nimport { formatUncommittedFiles } from '../functions/index.mjs';\n\nconst cmdDef = cmd.command({\n name: 'format-uncommitted-cli',\n version: '10.1.3',\n args: {\n excludeUntracked: cmd.flag({\n long: 'exclude-untracked',\n type: cmd.optional(cmd.boolean),\n description:\n 'Exclude untracked files in addition to diff files (default: false)',\n }),\n excludeModified: cmd.flag({\n long: 'exclude-modified',\n type: cmd.optional(cmd.boolean),\n description:\n 'Exclude modified files in addition to diff files (default: false)',\n }),\n excludeStaged: cmd.flag({\n long: 'exclude-staged',\n type: cmd.optional(cmd.boolean),\n description:\n 'Exclude staged files in addition to diff files (default: false)',\n }),\n ignoreUnknown: cmd.flag({\n long: 'ignore-unknown',\n type: cmd.optional(cmd.boolean),\n description: 'Ignore unknown files (default: true)',\n }),\n silent: cmd.flag({\n long: 'silent',\n type: cmd.optional(cmd.boolean),\n description: 'If true, suppresses output messages (default: false)',\n }),\n cwd: cmd.option({\n long: 'cwd',\n type: cmd.optional(cmd.string),\n description:\n 'If provided, only files within this directory are formatted. Relative paths are resolved against the current working directory (process.cwd()), not the git repository root.',\n }),\n },\n handler: (args) => {\n main({\n excludeUntracked: args.excludeUntracked ?? false,\n excludeModified: args.excludeModified ?? false,\n excludeStaged: args.excludeStaged ?? false,\n ignoreUnknown: args.ignoreUnknown ?? true,\n silent: args.silent ?? false,\n cwd: args.cwd,\n }).catch((error: unknown) => {\n console.error('An error occurred:', error);\n\n process.exit(1);\n });\n },\n});\n\nconst main = async (\n args: Readonly<{\n excludeUntracked: boolean;\n excludeModified: boolean;\n excludeStaged: boolean;\n ignoreUnknown: boolean;\n silent: boolean;\n cwd: string | undefined;\n }>,\n): Promise<void> => {\n const result = await formatUncommittedFiles({\n untracked: !args.excludeUntracked,\n modified: !args.excludeModified,\n staged: !args.excludeStaged,\n ignoreUnknown: args.ignoreUnknown,\n silent: args.silent,\n cwd: args.cwd,\n });\n\n if (Result.isErr(result)) {\n process.exit(1);\n }\n};\n\nawait cmd.run(cmdDef, process.argv.slice(2));\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"format-uncommitted.mjs","sources":["../../src/cmd/format-uncommitted.mts"],"sourcesContent":["#!/usr/bin/env node\n\nimport * as cmd from 'cmd-ts';\nimport { Result } from 'ts-data-forge';\nimport { formatUncommittedFiles } from '../functions/index.mjs';\n\nconst cmdDef = cmd.command({\n name: 'format-uncommitted-cli',\n version: '10.1.4',\n args: {\n excludeUntracked: cmd.flag({\n long: 'exclude-untracked',\n type: cmd.optional(cmd.boolean),\n description:\n 'Exclude untracked files in addition to diff files (default: false)',\n }),\n excludeModified: cmd.flag({\n long: 'exclude-modified',\n type: cmd.optional(cmd.boolean),\n description:\n 'Exclude modified files in addition to diff files (default: false)',\n }),\n excludeStaged: cmd.flag({\n long: 'exclude-staged',\n type: cmd.optional(cmd.boolean),\n description:\n 'Exclude staged files in addition to diff files (default: false)',\n }),\n ignoreUnknown: cmd.flag({\n long: 'ignore-unknown',\n type: cmd.optional(cmd.boolean),\n description: 'Ignore unknown files (default: true)',\n }),\n silent: cmd.flag({\n long: 'silent',\n type: cmd.optional(cmd.boolean),\n description: 'If true, suppresses output messages (default: false)',\n }),\n cwd: cmd.option({\n long: 'cwd',\n type: cmd.optional(cmd.string),\n description:\n 'If provided, only files within this directory are formatted. Relative paths are resolved against the current working directory (process.cwd()), not the git repository root.',\n }),\n },\n handler: (args) => {\n main({\n excludeUntracked: args.excludeUntracked ?? false,\n excludeModified: args.excludeModified ?? false,\n excludeStaged: args.excludeStaged ?? false,\n ignoreUnknown: args.ignoreUnknown ?? true,\n silent: args.silent ?? false,\n cwd: args.cwd,\n }).catch((error: unknown) => {\n console.error('An error occurred:', error);\n\n process.exit(1);\n });\n },\n});\n\nconst main = async (\n args: Readonly<{\n excludeUntracked: boolean;\n excludeModified: boolean;\n excludeStaged: boolean;\n ignoreUnknown: boolean;\n silent: boolean;\n cwd: string | undefined;\n }>,\n): Promise<void> => {\n const result = await formatUncommittedFiles({\n untracked: !args.excludeUntracked,\n modified: !args.excludeModified,\n staged: !args.excludeStaged,\n ignoreUnknown: args.ignoreUnknown,\n silent: args.silent,\n cwd: args.cwd,\n });\n\n if (Result.isErr(result)) {\n process.exit(1);\n }\n};\n\nawait cmd.run(cmdDef, process.argv.slice(2));\n"],"names":[],"mappings":"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"}
@@ -35,7 +35,7 @@ const nonEmptyArray = (t, commandName) => cmd.extendType(
35
35
  );
36
36
  const cmdDef = cmd.command({
37
37
  name: "gen-index-ts-cli",
38
- version: "10.1.3",
38
+ version: "10.1.4",
39
39
  args: {
40
40
  // required args
41
41
  targetDirectory: cmd.positional({
@@ -1 +1 @@
1
- {"version":3,"file":"gen-index-ts.mjs","sources":["../../src/cmd/gen-index-ts.mts"],"sourcesContent":["#!/usr/bin/env node\n\n/* transformer-ignore convert-to-readonly */\n\nimport * as cmd from 'cmd-ts';\n// eslint-disable-next-line import-x/no-internal-modules\nimport { type InputOf, type OutputOf } from 'cmd-ts/dist/esm/from.js';\nimport { expectType } from 'ts-data-forge';\nimport { type NonEmptyArray } from 'ts-type-forge';\nimport { genIndex } from '../functions/index.mjs';\n\ntype Ext = `.${string}`;\n\nconst extensionType = cmd.extendType(cmd.string, {\n from: (s) => {\n if (!s.startsWith('.')) {\n throw new Error(`ext should start with '.'`);\n }\n\n // eslint-disable-next-line total-functions/no-unsafe-type-assertion\n return Promise.resolve(s as Ext);\n },\n});\n\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nconst nonEmptyArray = <T extends cmd.Type<any, any>>(\n t: T,\n commandName: string,\n): cmd.Type<readonly InputOf<T>[], NonEmptyArray<OutputOf<T>>> =>\n cmd.extendType(\n // eslint-disable-next-line total-functions/no-unsafe-type-assertion\n cmd.array(t) as cmd.Type<readonly InputOf<T>[], OutputOf<T>[]>,\n {\n from: (arr) => {\n if (arr.length === 0) {\n throw new Error(\n `No value provided for --${commandName}. At least one value is required.`,\n );\n }\n\n // eslint-disable-next-line total-functions/no-unsafe-type-assertion\n return Promise.resolve(arr as unknown as NonEmptyArray<OutputOf<T>>);\n },\n },\n );\n\nconst cmdDef = cmd.command({\n name: 'gen-index-ts-cli',\n version: '10.1.3',\n args: {\n // required args\n targetDirectory: cmd.positional({\n type: cmd.string,\n displayName: 'target-directory',\n description:\n 'Directory where the index file will be generated (Comma-separated list can be used)',\n }),\n\n targetExtensions: cmd.multioption({\n long: 'target-ext',\n type: nonEmptyArray(extensionType, 'target-ext'),\n description: 'File extensions to include in the index file',\n }),\n indexFileExtension: cmd.option({\n long: 'index-ext',\n type: extensionType,\n description: 'Extension of the index file to be generated',\n }),\n exportStatementExtension: cmd.option({\n long: 'export-ext',\n type: cmd.union([\n extensionType,\n cmd.extendType(cmd.string, {\n from: (s) => {\n if (s !== 'none') {\n throw new Error(\n `export-ext should be 'none' or a valid extension`,\n );\n }\n\n return Promise.resolve('none' as const);\n },\n }),\n ]),\n description: 'Extension of the export statements in the index file',\n }),\n\n // optional args\n exclude: cmd.multioption({\n long: 'exclude',\n type: cmd.optional(cmd.array(cmd.string)),\n description:\n 'Glob patterns of files to exclude from the index file (e.g., \"*.d.mts\", \"*.test.mts\")',\n }),\n formatCommand: cmd.option({\n long: 'fmt',\n type: cmd.optional(cmd.string),\n description:\n 'Command to format after generating the index file (e.g., \"npm run fmt\")',\n }),\n silent: cmd.flag({\n long: 'silent',\n type: cmd.optional(cmd.boolean),\n description: 'If true, suppresses output messages (default: false)',\n }),\n minDepth: cmd.option({\n long: 'min-depth',\n type: cmd.optional(cmd.number),\n description: 'Minimum depth to start generating index files (default: 0)',\n }),\n },\n handler: (args) => {\n expectType<typeof args.targetDirectory, string>('=');\n\n expectType<typeof args.targetExtensions, NonEmptyArray<Ext>>('=');\n\n expectType<typeof args.exportStatementExtension, Ext | 'none'>('=');\n\n expectType<typeof args.indexFileExtension, Ext>('=');\n\n expectType<typeof args.exclude, string[] | undefined>('=');\n\n expectType<typeof args.formatCommand, string | undefined>('=');\n\n expectType<typeof args.silent, boolean | undefined>('=');\n\n expectType<typeof args.minDepth, number | undefined>('=');\n\n main(args).catch((error: unknown) => {\n console.error('An error occurred:', error);\n\n process.exit(1);\n });\n },\n});\n\nconst main = async ({\n targetDirectory,\n targetExtensions,\n exportStatementExtension,\n indexFileExtension,\n exclude,\n formatCommand,\n silent,\n minDepth,\n}: Readonly<{\n targetDirectory: string;\n targetExtensions: readonly Ext[];\n exportStatementExtension: Ext | 'none';\n indexFileExtension: Ext;\n exclude?: readonly string[] | undefined;\n formatCommand?: string | undefined;\n silent?: boolean | undefined;\n minDepth?: number | undefined;\n}>): Promise<void> => {\n await genIndex({\n targetDirectory: targetDirectory.includes(',')\n ? targetDirectory.split(',').map((dir) => dir.trim())\n : targetDirectory,\n exportStatementExtension,\n targetExtensions,\n exclude,\n indexFileExtension,\n formatCommand,\n silent,\n minDepth,\n });\n};\n\nawait cmd.run(cmdDef, process.argv.slice(2));\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"gen-index-ts.mjs","sources":["../../src/cmd/gen-index-ts.mts"],"sourcesContent":["#!/usr/bin/env node\n\n/* transformer-ignore convert-to-readonly */\n\nimport * as cmd from 'cmd-ts';\n// eslint-disable-next-line import-x/no-internal-modules\nimport { type InputOf, type OutputOf } from 'cmd-ts/dist/esm/from.js';\nimport { expectType } from 'ts-data-forge';\nimport { type NonEmptyArray } from 'ts-type-forge';\nimport { genIndex } from '../functions/index.mjs';\n\ntype Ext = `.${string}`;\n\nconst extensionType = cmd.extendType(cmd.string, {\n from: (s) => {\n if (!s.startsWith('.')) {\n throw new Error(`ext should start with '.'`);\n }\n\n // eslint-disable-next-line total-functions/no-unsafe-type-assertion\n return Promise.resolve(s as Ext);\n },\n});\n\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nconst nonEmptyArray = <T extends cmd.Type<any, any>>(\n t: T,\n commandName: string,\n): cmd.Type<readonly InputOf<T>[], NonEmptyArray<OutputOf<T>>> =>\n cmd.extendType(\n // eslint-disable-next-line total-functions/no-unsafe-type-assertion\n cmd.array(t) as cmd.Type<readonly InputOf<T>[], OutputOf<T>[]>,\n {\n from: (arr) => {\n if (arr.length === 0) {\n throw new Error(\n `No value provided for --${commandName}. At least one value is required.`,\n );\n }\n\n // eslint-disable-next-line total-functions/no-unsafe-type-assertion\n return Promise.resolve(arr as unknown as NonEmptyArray<OutputOf<T>>);\n },\n },\n );\n\nconst cmdDef = cmd.command({\n name: 'gen-index-ts-cli',\n version: '10.1.4',\n args: {\n // required args\n targetDirectory: cmd.positional({\n type: cmd.string,\n displayName: 'target-directory',\n description:\n 'Directory where the index file will be generated (Comma-separated list can be used)',\n }),\n\n targetExtensions: cmd.multioption({\n long: 'target-ext',\n type: nonEmptyArray(extensionType, 'target-ext'),\n description: 'File extensions to include in the index file',\n }),\n indexFileExtension: cmd.option({\n long: 'index-ext',\n type: extensionType,\n description: 'Extension of the index file to be generated',\n }),\n exportStatementExtension: cmd.option({\n long: 'export-ext',\n type: cmd.union([\n extensionType,\n cmd.extendType(cmd.string, {\n from: (s) => {\n if (s !== 'none') {\n throw new Error(\n `export-ext should be 'none' or a valid extension`,\n );\n }\n\n return Promise.resolve('none' as const);\n },\n }),\n ]),\n description: 'Extension of the export statements in the index file',\n }),\n\n // optional args\n exclude: cmd.multioption({\n long: 'exclude',\n type: cmd.optional(cmd.array(cmd.string)),\n description:\n 'Glob patterns of files to exclude from the index file (e.g., \"*.d.mts\", \"*.test.mts\")',\n }),\n formatCommand: cmd.option({\n long: 'fmt',\n type: cmd.optional(cmd.string),\n description:\n 'Command to format after generating the index file (e.g., \"npm run fmt\")',\n }),\n silent: cmd.flag({\n long: 'silent',\n type: cmd.optional(cmd.boolean),\n description: 'If true, suppresses output messages (default: false)',\n }),\n minDepth: cmd.option({\n long: 'min-depth',\n type: cmd.optional(cmd.number),\n description: 'Minimum depth to start generating index files (default: 0)',\n }),\n },\n handler: (args) => {\n expectType<typeof args.targetDirectory, string>('=');\n\n expectType<typeof args.targetExtensions, NonEmptyArray<Ext>>('=');\n\n expectType<typeof args.exportStatementExtension, Ext | 'none'>('=');\n\n expectType<typeof args.indexFileExtension, Ext>('=');\n\n expectType<typeof args.exclude, string[] | undefined>('=');\n\n expectType<typeof args.formatCommand, string | undefined>('=');\n\n expectType<typeof args.silent, boolean | undefined>('=');\n\n expectType<typeof args.minDepth, number | undefined>('=');\n\n main(args).catch((error: unknown) => {\n console.error('An error occurred:', error);\n\n process.exit(1);\n });\n },\n});\n\nconst main = async ({\n targetDirectory,\n targetExtensions,\n exportStatementExtension,\n indexFileExtension,\n exclude,\n formatCommand,\n silent,\n minDepth,\n}: Readonly<{\n targetDirectory: string;\n targetExtensions: readonly Ext[];\n exportStatementExtension: Ext | 'none';\n indexFileExtension: Ext;\n exclude?: readonly string[] | undefined;\n formatCommand?: string | undefined;\n silent?: boolean | undefined;\n minDepth?: number | undefined;\n}>): Promise<void> => {\n await genIndex({\n targetDirectory: targetDirectory.includes(',')\n ? targetDirectory.split(',').map((dir) => dir.trim())\n : targetDirectory,\n exportStatementExtension,\n targetExtensions,\n exclude,\n indexFileExtension,\n formatCommand,\n silent,\n minDepth,\n });\n};\n\nawait cmd.run(cmdDef, process.argv.slice(2));\n"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "ts-repo-utils",
3
- "version": "10.1.3",
3
+ "version": "10.1.4",
4
4
  "private": false,
5
5
  "keywords": [
6
6
  "typescript"
@@ -114,7 +114,7 @@
114
114
  "@semantic-release/npm": "13.1.5",
115
115
  "@semantic-release/release-notes-generator": "14.1.1",
116
116
  "@types/node": "25.9.1",
117
- "@vitest/coverage-v8": "4.1.5",
117
+ "@vitest/coverage-v8": "4.1.10",
118
118
  "@vitest/ui": "4.1.5",
119
119
  "conventional-changelog-conventionalcommits": "9.3.1",
120
120
  "cspell": "10.0.1",
@@ -126,7 +126,7 @@
126
126
  "jiti": "2.7.0",
127
127
  "markdownlint": "0.40.0",
128
128
  "markdownlint-cli2": "0.22.1",
129
- "npm-run-all2": "8.0.4",
129
+ "npm-run-all2": "9.0.2",
130
130
  "prettier": "3.8.3",
131
131
  "prettier-plugin-organize-imports": "4.3.0",
132
132
  "prettier-plugin-packagejson": "3.0.2",
@@ -5,7 +5,7 @@ import { assertRepoIsClean } from '../functions/index.mjs';
5
5
 
6
6
  const cmdDef = cmd.command({
7
7
  name: 'assert-repo-is-clean-cli',
8
- version: '10.1.3',
8
+ version: '10.1.4',
9
9
  args: {
10
10
  silent: cmd.flag({
11
11
  long: 'silent',
@@ -5,7 +5,7 @@ import { checkShouldRunTypeChecks } from '../functions/index.mjs';
5
5
 
6
6
  const cmdDef = cmd.command({
7
7
  name: 'check-should-run-type-checks-cli',
8
- version: '10.1.3',
8
+ version: '10.1.4',
9
9
  args: {
10
10
  pathsIgnore: cmd.multioption({
11
11
  long: 'paths-ignore',
@@ -6,7 +6,7 @@ import { formatDiffFrom } from '../functions/index.mjs';
6
6
 
7
7
  const cmdDef = cmd.command({
8
8
  name: 'format-diff-from-cli',
9
- version: '10.1.3',
9
+ version: '10.1.4',
10
10
  args: {
11
11
  base: cmd.positional({
12
12
  type: cmd.string,
@@ -6,7 +6,7 @@ import { formatUncommittedFiles } from '../functions/index.mjs';
6
6
 
7
7
  const cmdDef = cmd.command({
8
8
  name: 'format-uncommitted-cli',
9
- version: '10.1.3',
9
+ version: '10.1.4',
10
10
  args: {
11
11
  excludeUntracked: cmd.flag({
12
12
  long: 'exclude-untracked',
@@ -46,7 +46,7 @@ const nonEmptyArray = <T extends cmd.Type<any, any>>(
46
46
 
47
47
  const cmdDef = cmd.command({
48
48
  name: 'gen-index-ts-cli',
49
- version: '10.1.3',
49
+ version: '10.1.4',
50
50
  args: {
51
51
  // required args
52
52
  targetDirectory: cmd.positional({