@storm-software/git-tools 2.124.85 → 2.125.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 (118) hide show
  1. package/README.md +1 -1
  2. package/bin/chunk-3IBASKZ6.cjs +16 -0
  3. package/bin/chunk-3IBASKZ6.cjs.map +1 -0
  4. package/bin/chunk-6FITE6HP.js +52 -0
  5. package/bin/chunk-6FITE6HP.js.map +1 -0
  6. package/bin/chunk-C7APS633.cjs +19 -0
  7. package/bin/chunk-C7APS633.cjs.map +1 -0
  8. package/bin/{chunk-ZBLIE7F7.cjs → chunk-DFXXNV3C.cjs} +2 -3
  9. package/bin/chunk-DFXXNV3C.cjs.map +1 -0
  10. package/bin/chunk-EI723ABQ.cjs +59 -0
  11. package/bin/chunk-EI723ABQ.cjs.map +1 -0
  12. package/bin/{chunk-Q3DQKTOI.js → chunk-HBLWPOJV.js} +5 -5
  13. package/bin/chunk-HBLWPOJV.js.map +1 -0
  14. package/bin/chunk-IA2Z3BAB.cjs +18 -0
  15. package/bin/chunk-IA2Z3BAB.cjs.map +1 -0
  16. package/bin/chunk-JE32WMBP.js +17 -0
  17. package/bin/chunk-JE32WMBP.js.map +1 -0
  18. package/bin/chunk-LHPUN2YZ.js +22 -0
  19. package/bin/chunk-LHPUN2YZ.js.map +1 -0
  20. package/bin/chunk-N7J3ORRT.js +14 -0
  21. package/bin/chunk-N7J3ORRT.js.map +1 -0
  22. package/bin/chunk-ROGUZ46T.js +22 -0
  23. package/bin/chunk-ROGUZ46T.js.map +1 -0
  24. package/bin/chunk-RZZ5UCVV.js +22 -0
  25. package/bin/chunk-RZZ5UCVV.js.map +1 -0
  26. package/bin/{chunk-WQI3QHPS.js → chunk-S3E6UR4Y.js} +3 -3
  27. package/bin/chunk-S3E6UR4Y.js.map +1 -0
  28. package/bin/chunk-S7Z6YPPG.js +16 -0
  29. package/bin/chunk-S7Z6YPPG.js.map +1 -0
  30. package/bin/chunk-XHWHVOBP.cjs +24 -0
  31. package/bin/chunk-XHWHVOBP.cjs.map +1 -0
  32. package/bin/{chunk-AU5PZKTN.cjs → chunk-YHZNDNCW.cjs} +5 -5
  33. package/bin/chunk-YHZNDNCW.cjs.map +1 -0
  34. package/bin/chunk-Z64XNZ43.cjs +24 -0
  35. package/bin/chunk-Z64XNZ43.cjs.map +1 -0
  36. package/bin/chunk-ZW2KYP2Z.cjs +24 -0
  37. package/bin/chunk-ZW2KYP2Z.cjs.map +1 -0
  38. package/bin/git.cjs +206 -84
  39. package/bin/git.cjs.map +1 -1
  40. package/bin/git.js +129 -7
  41. package/bin/git.js.map +1 -1
  42. package/bin/post-checkout.cjs +9 -21
  43. package/bin/post-checkout.cjs.map +1 -1
  44. package/bin/post-checkout.js +5 -17
  45. package/bin/post-checkout.js.map +1 -1
  46. package/bin/post-commit.cjs +9 -21
  47. package/bin/post-commit.cjs.map +1 -1
  48. package/bin/post-commit.js +5 -17
  49. package/bin/post-commit.js.map +1 -1
  50. package/bin/post-merge.cjs +9 -21
  51. package/bin/post-merge.cjs.map +1 -1
  52. package/bin/post-merge.js +5 -17
  53. package/bin/post-merge.js.map +1 -1
  54. package/bin/pre-commit.cjs +8 -16
  55. package/bin/pre-commit.cjs.map +1 -1
  56. package/bin/pre-commit.js +4 -12
  57. package/bin/pre-commit.js.map +1 -1
  58. package/bin/pre-install.cjs +8 -13
  59. package/bin/pre-install.cjs.map +1 -1
  60. package/bin/pre-install.js +4 -9
  61. package/bin/pre-install.js.map +1 -1
  62. package/bin/pre-push.cjs +9 -72
  63. package/bin/pre-push.cjs.map +1 -1
  64. package/bin/pre-push.js +5 -63
  65. package/bin/pre-push.js.map +1 -1
  66. package/bin/prepare.cjs +8 -11
  67. package/bin/prepare.cjs.map +1 -1
  68. package/bin/prepare.js +4 -7
  69. package/bin/prepare.js.map +1 -1
  70. package/bin/version-warning.cjs +7 -7
  71. package/bin/version-warning.js +2 -2
  72. package/dist/chunk-2NF67ZEY.js +14 -0
  73. package/dist/chunk-5DVCH44C.cjs +22 -0
  74. package/dist/{chunk-NY53WLGC.cjs → chunk-7ZSL4J35.cjs} +9 -9
  75. package/dist/chunk-AU2RMJUK.js +20 -0
  76. package/dist/chunk-BUQYMEBK.cjs +17 -0
  77. package/dist/chunk-C6MBULOZ.js +15 -0
  78. package/dist/chunk-DMVL4OYZ.cjs +14 -0
  79. package/dist/chunk-ENL3GCXS.cjs +2 -0
  80. package/dist/chunk-F2HQMRJH.cjs +16 -0
  81. package/dist/chunk-FJL2V56E.cjs +24 -0
  82. package/dist/chunk-GTOCMU46.cjs +57 -0
  83. package/dist/chunk-HMHOHK22.js +17 -0
  84. package/dist/{chunk-VVJA5N2W.js → chunk-HVTQXN3A.js} +3 -285
  85. package/dist/chunk-JOPN56T4.js +22 -0
  86. package/dist/chunk-LSTKPCAN.cjs +22 -0
  87. package/dist/chunk-Q47SPRY7.js +1 -0
  88. package/dist/chunk-QCNDIFYQ.cjs +20 -0
  89. package/dist/chunk-RK75BACO.js +50 -0
  90. package/dist/{chunk-EMYFDYKP.cjs → chunk-RQ67RJVN.cjs} +13 -296
  91. package/dist/chunk-SIFTTG22.cjs +303 -0
  92. package/dist/chunk-UQMGLURT.js +20 -0
  93. package/dist/{chunk-JCEVFJCA.js → chunk-USTER7R2.js} +2 -2
  94. package/dist/chunk-X7F62ZNF.js +290 -0
  95. package/dist/chunk-YUE6ZNKC.js +12 -0
  96. package/dist/chunk-Z4CPTYLS.cjs +22 -0
  97. package/dist/chunk-ZKDVZXHI.js +20 -0
  98. package/dist/commit/minimal.cjs +4 -4
  99. package/dist/commit/minimal.js +2 -2
  100. package/dist/commit/monorepo.cjs +5 -5
  101. package/dist/commit/monorepo.js +3 -3
  102. package/dist/index.cjs +51 -12
  103. package/dist/index.d.cts +8 -0
  104. package/dist/index.d.ts +8 -0
  105. package/dist/index.js +15 -4
  106. package/dist/lefthook/minimal.yml +69 -0
  107. package/dist/lefthook/recommended.yml +60 -0
  108. package/dist/lefthook/strict.yml +32 -0
  109. package/dist/release/config.cjs +13 -11
  110. package/dist/release/config.js +6 -4
  111. package/package.json +79 -65
  112. package/bin/chunk-AU5PZKTN.cjs.map +0 -1
  113. package/bin/chunk-Q3DQKTOI.js.map +0 -1
  114. package/bin/chunk-WQI3QHPS.js.map +0 -1
  115. package/bin/chunk-ZBLIE7F7.cjs.map +0 -1
  116. package/dist/lefthook/config.yml +0 -119
  117. package/dist/{chunk-F7OO6L26.cjs → chunk-CT6VGZZS.cjs} +1 -1
  118. package/dist/{chunk-KZRVQ5RZ.js → chunk-WCAKLYL2.js} +1 -1
package/bin/git.cjs CHANGED
@@ -1,9 +1,16 @@
1
1
  #!/usr/bin/env node
2
2
  'use strict';
3
3
 
4
- require('./chunk-AU5PZKTN.cjs');
4
+ var chunkZW2KYP2Z_cjs = require('./chunk-ZW2KYP2Z.cjs');
5
+ var chunkXHWHVOBP_cjs = require('./chunk-XHWHVOBP.cjs');
6
+ var chunkZ64XNZ43_cjs = require('./chunk-Z64XNZ43.cjs');
7
+ var chunkC7APS633_cjs = require('./chunk-C7APS633.cjs');
8
+ require('./chunk-IA2Z3BAB.cjs');
9
+ var chunkEI723ABQ_cjs = require('./chunk-EI723ABQ.cjs');
10
+ require('./chunk-YHZNDNCW.cjs');
11
+ var chunk3IBASKZ6_cjs = require('./chunk-3IBASKZ6.cjs');
5
12
  var chunkFH5OSXAJ_cjs = require('./chunk-FH5OSXAJ.cjs');
6
- var chunkZBLIE7F7_cjs = require('./chunk-ZBLIE7F7.cjs');
13
+ var chunkDFXXNV3C_cjs = require('./chunk-DFXXNV3C.cjs');
7
14
  var TOML = require('@ltd/j-toml');
8
15
  var commander = require('commander');
9
16
  require('@inquirer/checkbox');
@@ -402,9 +409,9 @@ function getRuleFromScopeEnum(scopeEnum) {
402
409
 
403
410
  // ../conventional-changelog/src/index.ts
404
411
  async function createPreset(variant = "monorepo") {
405
- const workspaceConfig = await chunkZBLIE7F7_cjs.getWorkspaceConfig();
412
+ const workspaceConfig = await chunkDFXXNV3C_cjs.getWorkspaceConfig();
406
413
  if (variant === "minimal") {
407
- return chunkZBLIE7F7_cjs.defu(
414
+ return chunkDFXXNV3C_cjs.defu(
408
415
  await createBasePreset__default.default({ ...COMMIT_CONFIGS.minimal.changelogs.props }),
409
416
  {
410
417
  ...COMMIT_CONFIGS.minimal,
@@ -418,7 +425,7 @@ async function createPreset(variant = "monorepo") {
418
425
  );
419
426
  }
420
427
  const nxScopes = await getNxScopes({ config: workspaceConfig });
421
- return chunkZBLIE7F7_cjs.defu(
428
+ return chunkDFXXNV3C_cjs.defu(
422
429
  await createBasePreset__default.default({
423
430
  ...COMMIT_CONFIGS.monorepo.changelogs.props,
424
431
  scope: nxScopes
@@ -982,7 +989,7 @@ async function lint(message, config5) {
982
989
  // src/commitlint/run.ts
983
990
  var COMMIT_EDITMSG_PATH = ".git/COMMIT_EDITMSG";
984
991
  async function runCommitLint(workspaceConfig, options) {
985
- chunkZBLIE7F7_cjs.writeInfo(
992
+ chunkDFXXNV3C_cjs.writeInfo(
986
993
  "\u{1F4DD} Validating git commit message aligns with the Storm Software specification",
987
994
  workspaceConfig
988
995
  );
@@ -990,7 +997,7 @@ async function runCommitLint(workspaceConfig, options) {
990
997
  if (options.message && options.message !== COMMIT_EDITMSG_PATH) {
991
998
  commitMessage = options.message;
992
999
  } else {
993
- const commitFile = chunkZBLIE7F7_cjs.joinPaths(
1000
+ const commitFile = chunkDFXXNV3C_cjs.joinPaths(
994
1001
  workspaceConfig.workspaceRoot,
995
1002
  options.file || options.message || COMMIT_EDITMSG_PATH
996
1003
  );
@@ -1007,17 +1014,17 @@ async function runCommitLint(workspaceConfig, options) {
1007
1014
  if (upstreamRemote) {
1008
1015
  const upstreamRemoteIdentifier = upstreamRemote.split(" ")[0]?.trim();
1009
1016
  if (!upstreamRemoteIdentifier) {
1010
- chunkZBLIE7F7_cjs.writeWarning(
1017
+ chunkDFXXNV3C_cjs.writeWarning(
1011
1018
  `No upstream remote found for ${workspaceConfig.name}.git. Skipping comparison.`,
1012
1019
  workspaceConfig
1013
1020
  );
1014
1021
  return;
1015
1022
  }
1016
- chunkZBLIE7F7_cjs.writeDebug(`Comparing against remote ${upstreamRemoteIdentifier}`);
1023
+ chunkDFXXNV3C_cjs.writeDebug(`Comparing against remote ${upstreamRemoteIdentifier}`);
1017
1024
  const currentBranch = childProcess__default.default.execSync("git branch --show-current").toString().trim();
1018
1025
  gitLogCmd = gitLogCmd + ` ${currentBranch} ^${upstreamRemoteIdentifier}/main`;
1019
1026
  } else {
1020
- chunkZBLIE7F7_cjs.writeWarning(
1027
+ chunkDFXXNV3C_cjs.writeWarning(
1021
1028
  `No upstream remote found for ${workspaceConfig.name}.git. Skipping comparison against upstream main.`,
1022
1029
  workspaceConfig
1023
1030
  );
@@ -1025,7 +1032,7 @@ async function runCommitLint(workspaceConfig, options) {
1025
1032
  }
1026
1033
  commitMessage = childProcess__default.default.execSync(gitLogCmd).toString().trim();
1027
1034
  if (!commitMessage) {
1028
- chunkZBLIE7F7_cjs.writeWarning(
1035
+ chunkDFXXNV3C_cjs.writeWarning(
1029
1036
  "No commits found. Skipping commit message validation.",
1030
1037
  workspaceConfig
1031
1038
  );
@@ -1035,7 +1042,7 @@ async function runCommitLint(workspaceConfig, options) {
1035
1042
  const preset = await createPreset(workspaceConfig.variant);
1036
1043
  const report = await lint(commitMessage, preset);
1037
1044
  if (!preset.commitlint.regex.test(commitMessage) || report.errors.length || report.warnings.length) {
1038
- chunkZBLIE7F7_cjs.writeSuccess(
1045
+ chunkDFXXNV3C_cjs.writeSuccess(
1039
1046
  `Commit was processing completed successfully!`,
1040
1047
  workspaceConfig
1041
1048
  );
@@ -1247,7 +1254,7 @@ async function createState(workspaceConfig, configPath) {
1247
1254
  const project = projectConfigurations.projects[scope];
1248
1255
  if (project) {
1249
1256
  let description = `${project.name} - ${project.root}`;
1250
- const packageJsonPath = chunkZBLIE7F7_cjs.joinPaths(project.root, "package.json");
1257
+ const packageJsonPath = chunkDFXXNV3C_cjs.joinPaths(project.root, "package.json");
1251
1258
  if (fs$1.existsSync(packageJsonPath)) {
1252
1259
  const packageJsonFile = await fs.readFile(packageJsonPath, "utf8");
1253
1260
  const packageJson = JSON.parse(packageJsonFile);
@@ -1321,20 +1328,20 @@ ${closedIssueEmoji}${config5.settings.closedIssueMessage}${issues}`;
1321
1328
 
1322
1329
  // src/commit/run.ts
1323
1330
  async function runCommit(commitizenFile, dryRun = false) {
1324
- const workspaceConfig = await chunkZBLIE7F7_cjs.getWorkspaceConfig();
1331
+ const workspaceConfig = await chunkDFXXNV3C_cjs.getWorkspaceConfig();
1325
1332
  const state = await createState(workspaceConfig);
1326
1333
  if (dryRun) {
1327
- chunkZBLIE7F7_cjs.writeInfo("Running in dry mode.", workspaceConfig);
1334
+ chunkDFXXNV3C_cjs.writeInfo("Running in dry mode.", workspaceConfig);
1328
1335
  }
1329
1336
  console.log(chalkTemplate__default.default`
1330
1337
  {bold.#999999 ----------------------------------------}
1331
1338
 
1332
- {bold.#FFFFFF ${chunkZBLIE7F7_cjs.brandIcon(workspaceConfig)} Storm Software Git-Tools - Commit}
1339
+ {bold.#FFFFFF ${chunkDFXXNV3C_cjs.brandIcon(workspaceConfig)} Storm Software Git-Tools - Commit}
1333
1340
  {#CCCCCC Please provide the requested details below...}
1334
1341
  `);
1335
1342
  state.answers = await askQuestions(state);
1336
1343
  const message = formatCommitMessage(state, workspaceConfig);
1337
- const commitMsgFile = chunkZBLIE7F7_cjs.joinPaths(getGitDir(), "COMMIT_EDITMSG");
1344
+ const commitMsgFile = chunkDFXXNV3C_cjs.joinPaths(getGitDir(), "COMMIT_EDITMSG");
1338
1345
  console.log(chalkTemplate__default.default`
1339
1346
  {bold.#999999 ----------------------------------------}
1340
1347
 
@@ -1347,11 +1354,11 @@ async function runCommit(commitizenFile, dryRun = false) {
1347
1354
  commandItems.push(...["--file", commitMsgFile]);
1348
1355
  const command = shellescape__default.default(commandItems);
1349
1356
  if (dryRun) {
1350
- chunkZBLIE7F7_cjs.writeDebug(
1357
+ chunkDFXXNV3C_cjs.writeDebug(
1351
1358
  `Skipping execution [dry-run]: ${command.replace(commitMsgFile, ".git/COMMIT_EDITMSG")}`,
1352
1359
  workspaceConfig
1353
1360
  );
1354
- chunkZBLIE7F7_cjs.writeDebug(`Message [dry-run]: ${message}`, workspaceConfig);
1361
+ chunkDFXXNV3C_cjs.writeDebug(`Message [dry-run]: ${message}`, workspaceConfig);
1355
1362
  } else {
1356
1363
  await fs__default.default.writeFile(commitMsgFile, message);
1357
1364
  chunkFH5OSXAJ_cjs.run(workspaceConfig, command);
@@ -2392,7 +2399,7 @@ async function generateChangelogContent(releaseVersion, filepath, newContent, cu
2392
2399
  const header = await prettier.format(
2393
2400
  `![${(typeof workspaceConfig?.release.banner === "string" ? workspaceConfig.organization ? titleCase(
2394
2401
  typeof workspaceConfig.organization === "string" ? workspaceConfig.organization : workspaceConfig.organization.name
2395
- ) : void 0 : workspaceConfig?.release.banner.alt) || "Branded release banner image"}](${bannerUrl || chunkZBLIE7F7_cjs.STORM_DEFAULT_RELEASE_BANNER})
2402
+ ) : void 0 : workspaceConfig?.release.banner.alt) || "Branded release banner image"}](${bannerUrl || chunkDFXXNV3C_cjs.STORM_DEFAULT_RELEASE_BANNER})
2396
2403
 
2397
2404
  # Changelog ${project || workspaceConfig?.name ? "for" : ""}${workspaceConfig?.name ? ` ${titleCase(workspaceConfig.name)}` : ""}${project ? `${workspaceConfig?.name ? " -" : ""} ${titleCase(project)}` : ""}
2398
2405
 
@@ -2568,12 +2575,12 @@ async function generateChangelogForProjects({
2568
2575
  projectChangelogs
2569
2576
  )) {
2570
2577
  if (!projectGraph.nodes[projectName]?.data.root) {
2571
- chunkZBLIE7F7_cjs.writeWarning(
2578
+ chunkDFXXNV3C_cjs.writeWarning(
2572
2579
  `A changelog was generated for ${projectName}, but it could not be found in the project graph. Skipping writing changelog file.`,
2573
2580
  workspaceConfig
2574
2581
  );
2575
2582
  } else if (projectChangelog.contents) {
2576
- const filePath = chunkZBLIE7F7_cjs.joinPaths(
2583
+ const filePath = chunkDFXXNV3C_cjs.joinPaths(
2577
2584
  projectGraph.nodes[projectName].data.root,
2578
2585
  "CHANGELOG.md"
2579
2586
  );
@@ -2581,7 +2588,7 @@ async function generateChangelogForProjects({
2581
2588
  if (fs$1.existsSync(filePath)) {
2582
2589
  currentContent = await fs.readFile(filePath, "utf8");
2583
2590
  }
2584
- chunkZBLIE7F7_cjs.writeDebug(
2591
+ chunkDFXXNV3C_cjs.writeDebug(
2585
2592
  `\u270D\uFE0F Writing changelog for project ${projectName} to ${filePath}`,
2586
2593
  workspaceConfig
2587
2594
  );
@@ -2804,7 +2811,7 @@ var StormGithubRemoteReleaseClient = class extends github.GithubRemoteReleaseCli
2804
2811
  }
2805
2812
  async createOrUpdateRelease(releaseVersion, changelogContents, latestCommit, { dryRun }) {
2806
2813
  if (!this.workspaceConfig) {
2807
- this.workspaceConfig = await chunkZBLIE7F7_cjs.getWorkspaceConfig();
2814
+ this.workspaceConfig = await chunkDFXXNV3C_cjs.getWorkspaceConfig();
2808
2815
  }
2809
2816
  const name = releaseVersion.gitTag.includes("@") ? releaseVersion.gitTag.replace(new RegExp(`^@${this.workspaceConfig.name}/`), "").replace(/@.*$/, "") : releaseVersion.gitTag;
2810
2817
  return super.createOrUpdateRelease(
@@ -3005,7 +3012,7 @@ var StormChangelogRenderer = class extends DefaultChangelogRenderer__default.def
3005
3012
  }
3006
3013
  async render() {
3007
3014
  if (!this.workspaceConfig) {
3008
- this.workspaceConfig = await chunkZBLIE7F7_cjs.getWorkspaceConfig();
3015
+ this.workspaceConfig = await chunkDFXXNV3C_cjs.getWorkspaceConfig();
3009
3016
  }
3010
3017
  return super.render();
3011
3018
  }
@@ -3261,7 +3268,7 @@ var DEFAULT_RELEASE_CONFIG = {
3261
3268
  function getReleaseGroupConfig(releaseConfig, workspaceConfig) {
3262
3269
  return !releaseConfig?.groups || Object.keys(releaseConfig.groups).length === 0 ? {} : Object.fromEntries(
3263
3270
  Object.entries(releaseConfig.groups).map(([name, group]) => {
3264
- const config5 = chunkZBLIE7F7_cjs.defu(
3271
+ const config5 = chunkDFXXNV3C_cjs.defu(
3265
3272
  {
3266
3273
  ...omit(DEFAULT_RELEASE_GROUP_CONFIG, ["changelog", "version"]),
3267
3274
  ...group
@@ -3284,13 +3291,13 @@ function getReleaseGroupConfig(releaseConfig, workspaceConfig) {
3284
3291
  );
3285
3292
  if (workspaceConfig?.workspaceRoot) {
3286
3293
  if (config5.changelog?.renderer && typeof config5.changelog?.renderer === "string" && config5.changelog?.renderer?.toString().startsWith("./")) {
3287
- config5.changelog.renderer = chunkZBLIE7F7_cjs.joinPaths(
3294
+ config5.changelog.renderer = chunkDFXXNV3C_cjs.joinPaths(
3288
3295
  workspaceConfig.workspaceRoot,
3289
3296
  config5.changelog.renderer
3290
3297
  );
3291
3298
  }
3292
3299
  if (config5.version?.versionActions && config5.version.versionActions.startsWith("./")) {
3293
- config5.version.versionActions = chunkZBLIE7F7_cjs.joinPaths(
3300
+ config5.version.versionActions = chunkDFXXNV3C_cjs.joinPaths(
3294
3301
  workspaceConfig.workspaceRoot,
3295
3302
  config5.version?.versionActions
3296
3303
  );
@@ -3305,7 +3312,7 @@ function getReleaseGroupConfig(releaseConfig, workspaceConfig) {
3305
3312
  var StormReleaseClient = class _StormReleaseClient extends release.ReleaseClient {
3306
3313
  static async create(releaseConfig = {}, ignoreNxJsonConfig = false, workspaceConfig) {
3307
3314
  if (!workspaceConfig) {
3308
- workspaceConfig = await chunkZBLIE7F7_cjs.getWorkspaceConfig();
3315
+ workspaceConfig = await chunkDFXXNV3C_cjs.getWorkspaceConfig();
3309
3316
  }
3310
3317
  let projectGraph;
3311
3318
  try {
@@ -3358,10 +3365,10 @@ var StormReleaseClient = class _StormReleaseClient extends release.ReleaseClient
3358
3365
  */
3359
3366
  constructor(projectGraph, releaseConfig, ignoreNxJsonConfig, workspaceConfig) {
3360
3367
  let nxJson$1;
3361
- if (!ignoreNxJsonConfig && fs$1.existsSync(chunkZBLIE7F7_cjs.joinPaths(workspaceConfig.workspaceRoot, "nx.json"))) {
3368
+ if (!ignoreNxJsonConfig && fs$1.existsSync(chunkDFXXNV3C_cjs.joinPaths(workspaceConfig.workspaceRoot, "nx.json"))) {
3362
3369
  nxJson$1 = nxJson.readNxJson();
3363
3370
  }
3364
- const config5 = chunkZBLIE7F7_cjs.defu(
3371
+ const config5 = chunkDFXXNV3C_cjs.defu(
3365
3372
  {
3366
3373
  changelog: {
3367
3374
  renderOptions: {
@@ -3383,11 +3390,11 @@ var StormReleaseClient = class _StormReleaseClient extends release.ReleaseClient
3383
3390
  omit(DEFAULT_RELEASE_CONFIG, ["groups"])
3384
3391
  );
3385
3392
  super(config5, true);
3386
- chunkZBLIE7F7_cjs.writeDebug(
3393
+ chunkDFXXNV3C_cjs.writeDebug(
3387
3394
  "Executing release with the following configuration",
3388
3395
  workspaceConfig
3389
3396
  );
3390
- chunkZBLIE7F7_cjs.writeDebug(config5, workspaceConfig);
3397
+ chunkDFXXNV3C_cjs.writeDebug(config5, workspaceConfig);
3391
3398
  this.projectGraph = projectGraph;
3392
3399
  this.config = config5;
3393
3400
  this.workspaceConfig = workspaceConfig;
@@ -3531,7 +3538,7 @@ var StormReleaseClient = class _StormReleaseClient extends release.ReleaseClient
3531
3538
  })),
3532
3539
  this.config.conventionalCommits
3533
3540
  );
3534
- chunkZBLIE7F7_cjs.writeDebug(
3541
+ chunkDFXXNV3C_cjs.writeDebug(
3535
3542
  `Running changelog generation for the ${releaseGroup.name} release group`,
3536
3543
  this.workspaceConfig
3537
3544
  );
@@ -3602,7 +3609,7 @@ var StormReleaseClient = class _StormReleaseClient extends release.ReleaseClient
3602
3609
  })),
3603
3610
  this.config.conventionalCommits
3604
3611
  );
3605
- chunkZBLIE7F7_cjs.writeDebug(
3612
+ chunkDFXXNV3C_cjs.writeDebug(
3606
3613
  `Running changelog generation for the ${releaseGroup.name} release group`,
3607
3614
  this.workspaceConfig
3608
3615
  );
@@ -3631,7 +3638,7 @@ var StormReleaseClient = class _StormReleaseClient extends release.ReleaseClient
3631
3638
  }
3632
3639
  }
3633
3640
  }
3634
- chunkZBLIE7F7_cjs.writeDebug(
3641
+ chunkDFXXNV3C_cjs.writeDebug(
3635
3642
  `Generated changelogs for ${Object.keys(allProjectChangelogs).length} projects:
3636
3643
  ${Object.keys(allProjectChangelogs).map((p) => ` - ${p}`).join("\n")}
3637
3644
  `,
@@ -3660,7 +3667,7 @@ ${Object.keys(allProjectChangelogs).map((p) => ` - ${p}`).join("\n")}
3660
3667
  );
3661
3668
  const changes = this.tree.listChanges();
3662
3669
  if (!changes.length) {
3663
- chunkZBLIE7F7_cjs.writeWarning(
3670
+ chunkDFXXNV3C_cjs.writeWarning(
3664
3671
  "No changes were detected for any changelog files, so no changelog entries will be generated.",
3665
3672
  this.workspaceConfig
3666
3673
  );
@@ -3682,7 +3689,7 @@ ${Object.keys(allProjectChangelogs).map((p) => ` - ${p}`).join("\n")}
3682
3689
  gitCommitArgs: options.gitCommitArgs || this.config.changelog?.git?.commitArgs
3683
3690
  });
3684
3691
  latestCommit = await git.getCommitHash("HEAD");
3685
- chunkZBLIE7F7_cjs.writeDebug(
3692
+ chunkDFXXNV3C_cjs.writeDebug(
3686
3693
  `Creating git tags: ${gitTagValues.join(", ")}`,
3687
3694
  this.workspaceConfig
3688
3695
  );
@@ -3695,7 +3702,7 @@ ${Object.keys(allProjectChangelogs).map((p) => ` - ${p}`).join("\n")}
3695
3702
  verbose: options.verbose
3696
3703
  });
3697
3704
  }
3698
- chunkZBLIE7F7_cjs.writeDebug(
3705
+ chunkDFXXNV3C_cjs.writeDebug(
3699
3706
  `Pushing to git remote "${options.gitRemote ?? "origin"}"`,
3700
3707
  this.workspaceConfig
3701
3708
  );
@@ -3727,7 +3734,7 @@ var runRelease = async (config5, {
3727
3734
  throw new Error("The `GITHUB_ACTOR` environment variable is not set.");
3728
3735
  }
3729
3736
  if (!await isUserAnOrganizationMember(process.env.GITHUB_ACTOR, config5)) {
3730
- chunkZBLIE7F7_cjs.writeFatal(
3737
+ chunkDFXXNV3C_cjs.writeFatal(
3731
3738
  "You must be a member of the Storm Software organization to run the release process.",
3732
3739
  config5
3733
3740
  );
@@ -3744,26 +3751,26 @@ var runRelease = async (config5, {
3744
3751
  process.env.NODE_AUTH_TOKEN = process.env.NPM_TOKEN;
3745
3752
  process.env.NPM_AUTH_TOKEN = process.env.NPM_TOKEN;
3746
3753
  process.env.NPM_CONFIG_PROVENANCE = "true";
3747
- chunkZBLIE7F7_cjs.writeDebug("Creating Storm release client...", config5);
3754
+ chunkDFXXNV3C_cjs.writeDebug("Creating Storm release client...", config5);
3748
3755
  const releaseClient = await StormReleaseClient.create(
3749
3756
  releaseConfig,
3750
3757
  ignoreNxJsonConfig,
3751
3758
  config5
3752
3759
  );
3753
- chunkZBLIE7F7_cjs.writeDebug("Reading in the workspaces release configuration", config5);
3760
+ chunkDFXXNV3C_cjs.writeDebug("Reading in the workspaces release configuration", config5);
3754
3761
  const to = head || process.env.NX_HEAD;
3755
3762
  const from = base || process.env.NX_BASE;
3756
- chunkZBLIE7F7_cjs.writeDebug(
3763
+ chunkDFXXNV3C_cjs.writeDebug(
3757
3764
  `Using the following Git SHAs to determine the release content:
3758
3765
  - From: ${from}
3759
3766
  - To: ${to}
3760
3767
  `,
3761
3768
  config5
3762
3769
  );
3763
- chunkZBLIE7F7_cjs.writeDebug("Determining the current release versions...", config5);
3770
+ chunkDFXXNV3C_cjs.writeDebug("Determining the current release versions...", config5);
3764
3771
  const { workspaceVersion, projectsVersionData, releaseGraph } = await releaseClient.releaseVersion({
3765
3772
  dryRun,
3766
- verbose: chunkZBLIE7F7_cjs.isVerbose(config5.logLevel),
3773
+ verbose: chunkDFXXNV3C_cjs.isVerbose(config5.logLevel),
3767
3774
  preid: config5.preid,
3768
3775
  stageChanges: true,
3769
3776
  gitCommit: false
@@ -3772,14 +3779,14 @@ var runRelease = async (config5, {
3772
3779
  version: releaseConfig?.projectsRelationship === "fixed" ? workspaceVersion : void 0,
3773
3780
  versionData: projectsVersionData,
3774
3781
  dryRun,
3775
- verbose: chunkZBLIE7F7_cjs.isVerbose(config5.logLevel),
3782
+ verbose: chunkDFXXNV3C_cjs.isVerbose(config5.logLevel),
3776
3783
  to,
3777
3784
  from,
3778
3785
  releaseGraph
3779
3786
  });
3780
- chunkZBLIE7F7_cjs.writeDebug("Tagging commit with git", config5);
3787
+ chunkDFXXNV3C_cjs.writeDebug("Tagging commit with git", config5);
3781
3788
  if (skipPublish) {
3782
- chunkZBLIE7F7_cjs.writeWarning(
3789
+ chunkDFXXNV3C_cjs.writeWarning(
3783
3790
  "Skipping publishing packages since `skipPublish` was provided as `true` in the release options.",
3784
3791
  config5
3785
3792
  );
@@ -3788,7 +3795,7 @@ var runRelease = async (config5, {
3788
3795
  (key) => projectsVersionData[key]?.newVersion
3789
3796
  );
3790
3797
  if (changedProjects.length > 0) {
3791
- chunkZBLIE7F7_cjs.writeInfo(
3798
+ chunkDFXXNV3C_cjs.writeInfo(
3792
3799
  `Publishing release for ${changedProjects.length} ${changedProjects.length === 1 ? "project" : "projects"}:
3793
3800
  ${changedProjects.map((changedProject) => ` - ${changedProject}`).join("\n")}
3794
3801
  `,
@@ -3797,7 +3804,7 @@ ${changedProjects.map((changedProject) => ` - ${changedProject}`).join("\n")}
3797
3804
  await updatePackageManifests(projectsVersionData, config5);
3798
3805
  const result = await releaseClient.releasePublish({
3799
3806
  dryRun,
3800
- verbose: chunkZBLIE7F7_cjs.isVerbose(config5.logLevel)
3807
+ verbose: chunkDFXXNV3C_cjs.isVerbose(config5.logLevel)
3801
3808
  });
3802
3809
  const failedProjects = Object.keys(result).filter(
3803
3810
  (key) => result[key]?.code && result[key]?.code > 0
@@ -3812,10 +3819,10 @@ ${failedProjects.map((failedProject) => ` - ${failedProject} (Error Code: ${res
3812
3819
  );
3813
3820
  }
3814
3821
  } else {
3815
- chunkZBLIE7F7_cjs.writeWarning("Skipped publishing packages.", config5);
3822
+ chunkDFXXNV3C_cjs.writeWarning("Skipped publishing packages.", config5);
3816
3823
  }
3817
3824
  }
3818
- chunkZBLIE7F7_cjs.writeSuccess("Completed the Storm workspace release process!", config5);
3825
+ chunkDFXXNV3C_cjs.writeSuccess("Completed the Storm workspace release process!", config5);
3819
3826
  };
3820
3827
  async function updatePackageManifests(projectsVersionData, config5) {
3821
3828
  let projectGraph;
@@ -3830,7 +3837,7 @@ async function updatePackageManifests(projectsVersionData, config5) {
3830
3837
  Object.keys(projectsVersionData).map(async (node) => {
3831
3838
  const projectNode = projectGraph.nodes[node];
3832
3839
  if (!projectNode?.data.root) {
3833
- chunkZBLIE7F7_cjs.writeWarning(
3840
+ chunkDFXXNV3C_cjs.writeWarning(
3834
3841
  `Project node ${node} not found in the project graph. Skipping manifest update.`,
3835
3842
  config5
3836
3843
  );
@@ -3838,17 +3845,17 @@ async function updatePackageManifests(projectsVersionData, config5) {
3838
3845
  }
3839
3846
  const versionData = projectsVersionData[node];
3840
3847
  if (projectNode?.data.root && versionData && versionData.newVersion !== null) {
3841
- chunkZBLIE7F7_cjs.writeTrace(
3848
+ chunkDFXXNV3C_cjs.writeTrace(
3842
3849
  `Writing version ${versionData.newVersion} update to manifest file for ${node}
3843
3850
  `,
3844
3851
  config5
3845
3852
  );
3846
- const projectRoot = chunkZBLIE7F7_cjs.joinPaths(
3853
+ const projectRoot = chunkDFXXNV3C_cjs.joinPaths(
3847
3854
  config5.workspaceRoot,
3848
3855
  projectNode.data.root
3849
3856
  );
3850
- const packageJsonPath = chunkZBLIE7F7_cjs.joinPaths(projectRoot, "package.json");
3851
- const cargoTomlPath = chunkZBLIE7F7_cjs.joinPaths(projectRoot, "Cargo.toml");
3857
+ const packageJsonPath = chunkDFXXNV3C_cjs.joinPaths(projectRoot, "package.json");
3858
+ const cargoTomlPath = chunkDFXXNV3C_cjs.joinPaths(projectRoot, "Cargo.toml");
3852
3859
  if (fs$1.existsSync(packageJsonPath)) {
3853
3860
  const packageJsonContent = await fs.readFile(packageJsonPath, "utf8");
3854
3861
  const packageJson = JSON.parse(packageJsonContent);
@@ -3866,7 +3873,7 @@ async function updatePackageManifests(projectsVersionData, config5) {
3866
3873
  })
3867
3874
  );
3868
3875
  } else {
3869
- chunkZBLIE7F7_cjs.writeWarning("No project nodes found. Skipping manifest updates.", config5);
3876
+ chunkDFXXNV3C_cjs.writeWarning("No project nodes found. Skipping manifest updates.", config5);
3870
3877
  }
3871
3878
  }
3872
3879
 
@@ -3874,8 +3881,8 @@ async function updatePackageManifests(projectsVersionData, config5) {
3874
3881
  var _config = {};
3875
3882
  function createProgram(config5) {
3876
3883
  _config = config5;
3877
- chunkZBLIE7F7_cjs.writeInfo(`${chunkZBLIE7F7_cjs.brandIcon(_config)} Running Storm Git Tools`, config5);
3878
- const root = chunkZBLIE7F7_cjs.findWorkspaceRootSafe(process.cwd());
3884
+ chunkDFXXNV3C_cjs.writeInfo(`${chunkDFXXNV3C_cjs.brandIcon(_config)} Running Storm Git Tools`, config5);
3885
+ const root = chunkDFXXNV3C_cjs.findWorkspaceRootSafe(process.cwd());
3879
3886
  process.env.STORM_WORKSPACE_ROOT ??= root;
3880
3887
  process.env.NX_WORKSPACE_ROOT_PATH ??= root;
3881
3888
  if (root) {
@@ -3908,6 +3915,13 @@ function createProgram(config5) {
3908
3915
  "Should the release be run in dry-run mode (no updates are made)"
3909
3916
  ).action(releaseAction);
3910
3917
  program.command("commitlint").description("Run commitlint for the workspace's commit message.").option("--config <file>", "The CommitLint config file path").option("--message <commit-message>", "The commit message to lint").option("--file <commit-file>", "The commit message to lint").action(commitLintAction);
3918
+ program.command("post-checkout").description("Run post-checkout git hook for the workspace.").option("--files <files...>", "The files changed in the commit or checkout").action(postCheckoutAction);
3919
+ program.command("post-commit").description("Run post-commit git hook for the workspace.").option("--files <files...>", "The files changed in the commit or checkout").action(postCommitAction);
3920
+ program.command("post-merge").description("Run post-merge git hook for the workspace.").option("--files <files...>", "The files changed in the merge").action(postMergeAction);
3921
+ program.command("pre-commit").description("Run pre-commit git hook for the workspace.").option("--files <files...>", "The files changed in the commit or checkout").action(preCommitAction);
3922
+ program.command("pre-push").description("Run pre-push git hook for the workspace.").option("--files <files...>", "The files changed in the push").action(prePushAction);
3923
+ program.command("pre-install").description("Run pre-install git hook for the workspace.").option("--files <files...>", "The files changed in the install");
3924
+ program.command("prepare").description("Run prepare git hook for the workspace.").action(prepareAction);
3911
3925
  return program;
3912
3926
  }
3913
3927
  async function commitAction({
@@ -3915,20 +3929,20 @@ async function commitAction({
3915
3929
  dryRun = false
3916
3930
  }) {
3917
3931
  try {
3918
- chunkZBLIE7F7_cjs.writeInfo(
3919
- `${chunkZBLIE7F7_cjs.brandIcon(config5)} Preparing to commit your changes. Please provide the requested details below...`,
3932
+ chunkDFXXNV3C_cjs.writeInfo(
3933
+ `${chunkDFXXNV3C_cjs.brandIcon(typeof config5 === "string" ? {} : config5)} Preparing to commit your changes. Please provide the requested details below...`,
3920
3934
  _config
3921
3935
  );
3922
3936
  await runCommit(config5, dryRun);
3923
- chunkZBLIE7F7_cjs.writeSuccess(
3924
- `\u2714 Storm Commit processing completed successfully!
3937
+ chunkDFXXNV3C_cjs.writeSuccess(
3938
+ ` \u2714 Storm Commit processing completed successfully!
3925
3939
 
3926
3940
  Note: Please run "pnpm push" to upload these changes to the remote ${_config.name ? _config.name : _config.namespace ? _config.namespace : _config.organization ? _config.organization : "Storm-Software"} Git repository at ${_config.repository}
3927
3941
  `,
3928
3942
  _config
3929
3943
  );
3930
3944
  } catch (error) {
3931
- chunkZBLIE7F7_cjs.writeFatal(
3945
+ chunkDFXXNV3C_cjs.writeFatal(
3932
3946
  `A fatal error occurred while running commit action:
3933
3947
 
3934
3948
  ${error.message}${error.stack ? `
@@ -3943,17 +3957,17 @@ Please fix any errors and try committing again.`,
3943
3957
  }
3944
3958
  async function readmeAction(options) {
3945
3959
  try {
3946
- chunkZBLIE7F7_cjs.writeInfo(
3947
- `${chunkZBLIE7F7_cjs.brandIcon(_config)} Formatting the workspace's README.md files`,
3960
+ chunkDFXXNV3C_cjs.writeInfo(
3961
+ `${chunkDFXXNV3C_cjs.brandIcon(_config)} Formatting the workspace's README.md files`,
3948
3962
  _config
3949
3963
  );
3950
3964
  await runReadme(options);
3951
- chunkZBLIE7F7_cjs.writeSuccess(
3952
- "Formatting of the workspace's README.md files is complete\n",
3965
+ chunkDFXXNV3C_cjs.writeSuccess(
3966
+ " \u2714 Formatting of the workspace's README.md files is complete\n",
3953
3967
  _config
3954
3968
  );
3955
3969
  } catch (error) {
3956
- chunkZBLIE7F7_cjs.writeFatal(
3970
+ chunkDFXXNV3C_cjs.writeFatal(
3957
3971
  `A fatal error occurred while running README format action:
3958
3972
 
3959
3973
  ${error.message}`
@@ -3968,8 +3982,8 @@ async function releaseAction({
3968
3982
  dryRun
3969
3983
  }) {
3970
3984
  try {
3971
- chunkZBLIE7F7_cjs.writeInfo(
3972
- `${chunkZBLIE7F7_cjs.brandIcon(_config)} Running the Storm Release and Publish process on the workspace`,
3985
+ chunkDFXXNV3C_cjs.writeInfo(
3986
+ `${chunkDFXXNV3C_cjs.brandIcon(_config)} Running the Storm Release and Publish process on the workspace`,
3973
3987
  _config
3974
3988
  );
3975
3989
  await runRelease(_config, {
@@ -3978,9 +3992,9 @@ async function releaseAction({
3978
3992
  base,
3979
3993
  head
3980
3994
  });
3981
- chunkZBLIE7F7_cjs.writeSuccess("Release completed successfully!\n", _config);
3995
+ chunkDFXXNV3C_cjs.writeSuccess(" \u2714 Release completed successfully!\n", _config);
3982
3996
  } catch (error) {
3983
- chunkZBLIE7F7_cjs.writeFatal(
3997
+ chunkDFXXNV3C_cjs.writeFatal(
3984
3998
  `A fatal error occurred while running release action:
3985
3999
 
3986
4000
  ${error.message} ${error.stack ? `
@@ -3994,19 +4008,127 @@ Stacktrace: ${error.stack}` : ""}`,
3994
4008
  }
3995
4009
  async function commitLintAction(options) {
3996
4010
  try {
3997
- chunkZBLIE7F7_cjs.writeInfo(
3998
- `${chunkZBLIE7F7_cjs.brandIcon(_config)} Linting the ${_config.repository ? _config.repository : _config.namespace ? _config.namespace : _config.name ? _config.name : typeof _config.organization === "string" ? _config.organization : _config.organization?.name ? _config.organization?.name : "Storm-Software"} repository's commit messages.`,
4011
+ chunkDFXXNV3C_cjs.writeInfo(
4012
+ `${chunkDFXXNV3C_cjs.brandIcon(_config)} Linting the ${_config.repository ? _config.repository : _config.namespace ? _config.namespace : _config.name ? _config.name : typeof _config.organization === "string" ? _config.organization : _config.organization?.name ? _config.organization?.name : "Storm-Software"} repository's commit messages.`,
3999
4013
  _config
4000
4014
  );
4001
4015
  await runCommitLint(_config, options);
4002
- chunkZBLIE7F7_cjs.writeSuccess(
4003
- "Linting the commit messages completed successfully!\n",
4016
+ chunkDFXXNV3C_cjs.writeSuccess(
4017
+ " \u2714 Linting the commit messages completed successfully!\n",
4004
4018
  _config
4005
4019
  );
4006
4020
  } catch (error) {
4007
- chunkZBLIE7F7_cjs.writeFatal(
4021
+ chunkDFXXNV3C_cjs.writeFatal(
4008
4022
  `A fatal error occurred while linting the commit messages:
4009
4023
 
4024
+ ${error.message}`,
4025
+ _config
4026
+ );
4027
+ throw new Error(error.message, { cause: error });
4028
+ }
4029
+ }
4030
+ async function postCheckoutAction({ files }) {
4031
+ try {
4032
+ chunkDFXXNV3C_cjs.writeInfo(
4033
+ `${chunkDFXXNV3C_cjs.brandIcon(_config)} Running the Storm post-checkout git hook for ${files.length} files in the workspace...`,
4034
+ _config
4035
+ );
4036
+ await chunkZW2KYP2Z_cjs.postCheckoutHook(_config, files);
4037
+ chunkDFXXNV3C_cjs.writeSuccess(" \u2714 Post-checkout hook completed successfully!\n", _config);
4038
+ } catch (error) {
4039
+ chunkDFXXNV3C_cjs.writeFatal(
4040
+ `A fatal error occurred while running the post-checkout hook:
4041
+
4042
+ ${error.message}`,
4043
+ _config
4044
+ );
4045
+ throw new Error(error.message, { cause: error });
4046
+ }
4047
+ }
4048
+ async function postCommitAction({ files }) {
4049
+ try {
4050
+ chunkDFXXNV3C_cjs.writeInfo(
4051
+ `${chunkDFXXNV3C_cjs.brandIcon(_config)} Running the Storm post-commit git hook for ${files.length} files in the workspace...`,
4052
+ _config
4053
+ );
4054
+ await chunkXHWHVOBP_cjs.postCommitHook(_config, files);
4055
+ chunkDFXXNV3C_cjs.writeSuccess(" \u2714 Post-commit hook completed successfully!\n", _config);
4056
+ } catch (error) {
4057
+ chunkDFXXNV3C_cjs.writeFatal(
4058
+ `A fatal error occurred while running the post-commit hook:
4059
+
4060
+ ${error.message}`,
4061
+ _config
4062
+ );
4063
+ throw new Error(error.message, { cause: error });
4064
+ }
4065
+ }
4066
+ async function postMergeAction({ files }) {
4067
+ try {
4068
+ chunkDFXXNV3C_cjs.writeInfo(
4069
+ `${chunkDFXXNV3C_cjs.brandIcon(_config)} Running the Storm post-merge git hook for ${files.length} files in the workspace...`,
4070
+ _config
4071
+ );
4072
+ await chunkZ64XNZ43_cjs.postMergeHook(_config, files);
4073
+ chunkDFXXNV3C_cjs.writeSuccess(" \u2714 Post-merge hook completed successfully!\n", _config);
4074
+ } catch (error) {
4075
+ chunkDFXXNV3C_cjs.writeFatal(
4076
+ `A fatal error occurred while running the post-merge hook:
4077
+
4078
+ ${error.message}`,
4079
+ _config
4080
+ );
4081
+ throw new Error(error.message, { cause: error });
4082
+ }
4083
+ }
4084
+ async function preCommitAction({ files }) {
4085
+ try {
4086
+ chunkDFXXNV3C_cjs.writeInfo(
4087
+ `${chunkDFXXNV3C_cjs.brandIcon(_config)} Running the Storm pre-commit git hook for ${files.length} files in the workspace...`,
4088
+ _config
4089
+ );
4090
+ await chunkC7APS633_cjs.preCommitHook(_config, files);
4091
+ chunkDFXXNV3C_cjs.writeSuccess(" \u2714 Pre-commit hook completed successfully!\n", _config);
4092
+ } catch (error) {
4093
+ chunkDFXXNV3C_cjs.writeFatal(
4094
+ `A fatal error occurred while running the pre-commit hook:
4095
+
4096
+ ${error.message}`,
4097
+ _config
4098
+ );
4099
+ throw new Error(error.message, { cause: error });
4100
+ }
4101
+ }
4102
+ async function prePushAction({ files }) {
4103
+ try {
4104
+ chunkDFXXNV3C_cjs.writeInfo(
4105
+ `${chunkDFXXNV3C_cjs.brandIcon(_config)} Running the Storm pre-push git hook for ${files.length} files in the workspace...`,
4106
+ _config
4107
+ );
4108
+ await chunkEI723ABQ_cjs.prePushHook(_config, files);
4109
+ chunkDFXXNV3C_cjs.writeSuccess(" \u2714 Pre-push hook completed successfully!\n", _config);
4110
+ } catch (error) {
4111
+ chunkDFXXNV3C_cjs.writeFatal(
4112
+ `A fatal error occurred while running the pre-push hook:
4113
+
4114
+ ${error.message}`,
4115
+ _config
4116
+ );
4117
+ throw new Error(error.message, { cause: error });
4118
+ }
4119
+ }
4120
+ async function prepareAction() {
4121
+ try {
4122
+ chunkDFXXNV3C_cjs.writeInfo(
4123
+ `${chunkDFXXNV3C_cjs.brandIcon(_config)} Running the Storm prepare git hook for the workspace...`,
4124
+ _config
4125
+ );
4126
+ await chunk3IBASKZ6_cjs.prepareHook(_config);
4127
+ chunkDFXXNV3C_cjs.writeSuccess(" \u2714 Prepare hook completed successfully!\n", _config);
4128
+ } catch (error) {
4129
+ chunkDFXXNV3C_cjs.writeFatal(
4130
+ `A fatal error occurred while running the prepare hook:
4131
+
4010
4132
  ${error.message}`,
4011
4133
  _config
4012
4134
  );
@@ -4016,18 +4138,18 @@ ${error.message}`,
4016
4138
 
4017
4139
  // bin/git.ts
4018
4140
  void (async () => {
4019
- const config5 = await chunkZBLIE7F7_cjs.getConfig();
4141
+ const config5 = await chunkDFXXNV3C_cjs.getConfig();
4020
4142
  try {
4021
- chunkZBLIE7F7_cjs.handleProcess(config5);
4143
+ chunkDFXXNV3C_cjs.handleProcess(config5);
4022
4144
  const program = createProgram(config5);
4023
4145
  await program.parseAsync(process.argv);
4024
- chunkZBLIE7F7_cjs.writeSuccess(
4146
+ chunkDFXXNV3C_cjs.writeSuccess(
4025
4147
  `\u2714 Git ${process.argv && process.argv.length >= 3 && process.argv[2] ? process.argv[2] : "tool"} processing completed successfully!`,
4026
4148
  config5
4027
4149
  );
4028
- chunkZBLIE7F7_cjs.exitWithSuccess(config5);
4150
+ chunkDFXXNV3C_cjs.exitWithSuccess(config5);
4029
4151
  } catch (error) {
4030
- chunkZBLIE7F7_cjs.exitWithError(config5);
4152
+ chunkDFXXNV3C_cjs.exitWithError(config5);
4031
4153
  process.exit(1);
4032
4154
  }
4033
4155
  })();