@hyperfrontend/versioning 0.1.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 (353) hide show
  1. package/ARCHITECTURE.md +593 -0
  2. package/CHANGELOG.md +35 -0
  3. package/FUNDING.md +141 -0
  4. package/LICENSE.md +21 -0
  5. package/README.md +195 -0
  6. package/SECURITY.md +82 -0
  7. package/changelog/compare/diff.d.ts +128 -0
  8. package/changelog/compare/diff.d.ts.map +1 -0
  9. package/changelog/compare/index.cjs.js +628 -0
  10. package/changelog/compare/index.cjs.js.map +1 -0
  11. package/changelog/compare/index.d.ts +4 -0
  12. package/changelog/compare/index.d.ts.map +1 -0
  13. package/changelog/compare/index.esm.js +612 -0
  14. package/changelog/compare/index.esm.js.map +1 -0
  15. package/changelog/compare/is-equal.d.ts +114 -0
  16. package/changelog/compare/is-equal.d.ts.map +1 -0
  17. package/changelog/index.cjs.js +6448 -0
  18. package/changelog/index.cjs.js.map +1 -0
  19. package/changelog/index.d.ts +6 -0
  20. package/changelog/index.d.ts.map +1 -0
  21. package/changelog/index.esm.js +6358 -0
  22. package/changelog/index.esm.js.map +1 -0
  23. package/changelog/models/changelog.d.ts +86 -0
  24. package/changelog/models/changelog.d.ts.map +1 -0
  25. package/changelog/models/commit-ref.d.ts +51 -0
  26. package/changelog/models/commit-ref.d.ts.map +1 -0
  27. package/changelog/models/entry.d.ts +84 -0
  28. package/changelog/models/entry.d.ts.map +1 -0
  29. package/changelog/models/index.cjs.js +2043 -0
  30. package/changelog/models/index.cjs.js.map +1 -0
  31. package/changelog/models/index.d.ts +11 -0
  32. package/changelog/models/index.d.ts.map +1 -0
  33. package/changelog/models/index.esm.js +2026 -0
  34. package/changelog/models/index.esm.js.map +1 -0
  35. package/changelog/models/schema.d.ts +68 -0
  36. package/changelog/models/schema.d.ts.map +1 -0
  37. package/changelog/models/section.d.ts +25 -0
  38. package/changelog/models/section.d.ts.map +1 -0
  39. package/changelog/operations/add-entry.d.ts +56 -0
  40. package/changelog/operations/add-entry.d.ts.map +1 -0
  41. package/changelog/operations/add-item.d.ts +18 -0
  42. package/changelog/operations/add-item.d.ts.map +1 -0
  43. package/changelog/operations/filter-by-predicate.d.ts +81 -0
  44. package/changelog/operations/filter-by-predicate.d.ts.map +1 -0
  45. package/changelog/operations/filter-by-range.d.ts +63 -0
  46. package/changelog/operations/filter-by-range.d.ts.map +1 -0
  47. package/changelog/operations/filter-entries.d.ts +9 -0
  48. package/changelog/operations/filter-entries.d.ts.map +1 -0
  49. package/changelog/operations/index.cjs.js +2455 -0
  50. package/changelog/operations/index.cjs.js.map +1 -0
  51. package/changelog/operations/index.d.ts +15 -0
  52. package/changelog/operations/index.d.ts.map +1 -0
  53. package/changelog/operations/index.esm.js +2411 -0
  54. package/changelog/operations/index.esm.js.map +1 -0
  55. package/changelog/operations/merge.d.ts +88 -0
  56. package/changelog/operations/merge.d.ts.map +1 -0
  57. package/changelog/operations/remove-entry.d.ts +45 -0
  58. package/changelog/operations/remove-entry.d.ts.map +1 -0
  59. package/changelog/operations/remove-section.d.ts +50 -0
  60. package/changelog/operations/remove-section.d.ts.map +1 -0
  61. package/changelog/operations/transform.d.ts +143 -0
  62. package/changelog/operations/transform.d.ts.map +1 -0
  63. package/changelog/parse/index.cjs.js +1282 -0
  64. package/changelog/parse/index.cjs.js.map +1 -0
  65. package/changelog/parse/index.d.ts +5 -0
  66. package/changelog/parse/index.d.ts.map +1 -0
  67. package/changelog/parse/index.esm.js +1275 -0
  68. package/changelog/parse/index.esm.js.map +1 -0
  69. package/changelog/parse/line.d.ts +48 -0
  70. package/changelog/parse/line.d.ts.map +1 -0
  71. package/changelog/parse/parser.d.ts +16 -0
  72. package/changelog/parse/parser.d.ts.map +1 -0
  73. package/changelog/parse/tokenizer.d.ts +49 -0
  74. package/changelog/parse/tokenizer.d.ts.map +1 -0
  75. package/changelog/serialize/index.cjs.js +574 -0
  76. package/changelog/serialize/index.cjs.js.map +1 -0
  77. package/changelog/serialize/index.d.ts +6 -0
  78. package/changelog/serialize/index.d.ts.map +1 -0
  79. package/changelog/serialize/index.esm.js +564 -0
  80. package/changelog/serialize/index.esm.js.map +1 -0
  81. package/changelog/serialize/templates.d.ts +81 -0
  82. package/changelog/serialize/templates.d.ts.map +1 -0
  83. package/changelog/serialize/to-json.d.ts +57 -0
  84. package/changelog/serialize/to-json.d.ts.map +1 -0
  85. package/changelog/serialize/to-string.d.ts +30 -0
  86. package/changelog/serialize/to-string.d.ts.map +1 -0
  87. package/commits/index.cjs.js +648 -0
  88. package/commits/index.cjs.js.map +1 -0
  89. package/commits/index.d.ts +3 -0
  90. package/commits/index.d.ts.map +1 -0
  91. package/commits/index.esm.js +629 -0
  92. package/commits/index.esm.js.map +1 -0
  93. package/commits/models/breaking.d.ts +39 -0
  94. package/commits/models/breaking.d.ts.map +1 -0
  95. package/commits/models/commit-type.d.ts +32 -0
  96. package/commits/models/commit-type.d.ts.map +1 -0
  97. package/commits/models/conventional.d.ts +49 -0
  98. package/commits/models/conventional.d.ts.map +1 -0
  99. package/commits/models/index.cjs.js +207 -0
  100. package/commits/models/index.cjs.js.map +1 -0
  101. package/commits/models/index.d.ts +7 -0
  102. package/commits/models/index.d.ts.map +1 -0
  103. package/commits/models/index.esm.js +193 -0
  104. package/commits/models/index.esm.js.map +1 -0
  105. package/commits/parse/body.d.ts +18 -0
  106. package/commits/parse/body.d.ts.map +1 -0
  107. package/commits/parse/footer.d.ts +16 -0
  108. package/commits/parse/footer.d.ts.map +1 -0
  109. package/commits/parse/header.d.ts +15 -0
  110. package/commits/parse/header.d.ts.map +1 -0
  111. package/commits/parse/index.cjs.js +505 -0
  112. package/commits/parse/index.cjs.js.map +1 -0
  113. package/commits/parse/index.d.ts +5 -0
  114. package/commits/parse/index.d.ts.map +1 -0
  115. package/commits/parse/index.esm.js +499 -0
  116. package/commits/parse/index.esm.js.map +1 -0
  117. package/commits/parse/message.d.ts +17 -0
  118. package/commits/parse/message.d.ts.map +1 -0
  119. package/commits/utils/replace-char.d.ts +19 -0
  120. package/commits/utils/replace-char.d.ts.map +1 -0
  121. package/flow/executor/execute.d.ts +72 -0
  122. package/flow/executor/execute.d.ts.map +1 -0
  123. package/flow/executor/index.cjs.js +4402 -0
  124. package/flow/executor/index.cjs.js.map +1 -0
  125. package/flow/executor/index.d.ts +3 -0
  126. package/flow/executor/index.d.ts.map +1 -0
  127. package/flow/executor/index.esm.js +4398 -0
  128. package/flow/executor/index.esm.js.map +1 -0
  129. package/flow/factory.d.ts +58 -0
  130. package/flow/factory.d.ts.map +1 -0
  131. package/flow/index.cjs.js +8506 -0
  132. package/flow/index.cjs.js.map +1 -0
  133. package/flow/index.d.ts +7 -0
  134. package/flow/index.d.ts.map +1 -0
  135. package/flow/index.esm.js +8451 -0
  136. package/flow/index.esm.js.map +1 -0
  137. package/flow/models/flow.d.ts +130 -0
  138. package/flow/models/flow.d.ts.map +1 -0
  139. package/flow/models/index.cjs.js +285 -0
  140. package/flow/models/index.cjs.js.map +1 -0
  141. package/flow/models/index.d.ts +7 -0
  142. package/flow/models/index.d.ts.map +1 -0
  143. package/flow/models/index.esm.js +268 -0
  144. package/flow/models/index.esm.js.map +1 -0
  145. package/flow/models/step.d.ts +108 -0
  146. package/flow/models/step.d.ts.map +1 -0
  147. package/flow/models/types.d.ts +150 -0
  148. package/flow/models/types.d.ts.map +1 -0
  149. package/flow/presets/conventional.d.ts +59 -0
  150. package/flow/presets/conventional.d.ts.map +1 -0
  151. package/flow/presets/independent.d.ts +61 -0
  152. package/flow/presets/independent.d.ts.map +1 -0
  153. package/flow/presets/index.cjs.js +3903 -0
  154. package/flow/presets/index.cjs.js.map +1 -0
  155. package/flow/presets/index.d.ts +4 -0
  156. package/flow/presets/index.d.ts.map +1 -0
  157. package/flow/presets/index.esm.js +3889 -0
  158. package/flow/presets/index.esm.js.map +1 -0
  159. package/flow/presets/synced.d.ts +65 -0
  160. package/flow/presets/synced.d.ts.map +1 -0
  161. package/flow/steps/analyze-commits.d.ts +19 -0
  162. package/flow/steps/analyze-commits.d.ts.map +1 -0
  163. package/flow/steps/calculate-bump.d.ts +27 -0
  164. package/flow/steps/calculate-bump.d.ts.map +1 -0
  165. package/flow/steps/create-commit.d.ts +16 -0
  166. package/flow/steps/create-commit.d.ts.map +1 -0
  167. package/flow/steps/create-tag.d.ts +22 -0
  168. package/flow/steps/create-tag.d.ts.map +1 -0
  169. package/flow/steps/fetch-registry.d.ts +19 -0
  170. package/flow/steps/fetch-registry.d.ts.map +1 -0
  171. package/flow/steps/generate-changelog.d.ts +25 -0
  172. package/flow/steps/generate-changelog.d.ts.map +1 -0
  173. package/flow/steps/index.cjs.js +3523 -0
  174. package/flow/steps/index.cjs.js.map +1 -0
  175. package/flow/steps/index.d.ts +8 -0
  176. package/flow/steps/index.d.ts.map +1 -0
  177. package/flow/steps/index.esm.js +3504 -0
  178. package/flow/steps/index.esm.js.map +1 -0
  179. package/flow/steps/update-packages.d.ts +25 -0
  180. package/flow/steps/update-packages.d.ts.map +1 -0
  181. package/flow/utils/interpolate.d.ts +11 -0
  182. package/flow/utils/interpolate.d.ts.map +1 -0
  183. package/git/factory.d.ts +233 -0
  184. package/git/factory.d.ts.map +1 -0
  185. package/git/index.cjs.js +2863 -0
  186. package/git/index.cjs.js.map +1 -0
  187. package/git/index.d.ts +5 -0
  188. package/git/index.d.ts.map +1 -0
  189. package/git/index.esm.js +2785 -0
  190. package/git/index.esm.js.map +1 -0
  191. package/git/models/commit.d.ts +129 -0
  192. package/git/models/commit.d.ts.map +1 -0
  193. package/git/models/index.cjs.js +755 -0
  194. package/git/models/index.cjs.js.map +1 -0
  195. package/git/models/index.d.ts +7 -0
  196. package/git/models/index.d.ts.map +1 -0
  197. package/git/models/index.esm.js +729 -0
  198. package/git/models/index.esm.js.map +1 -0
  199. package/git/models/ref.d.ts +120 -0
  200. package/git/models/ref.d.ts.map +1 -0
  201. package/git/models/tag.d.ts +141 -0
  202. package/git/models/tag.d.ts.map +1 -0
  203. package/git/operations/commit.d.ts +97 -0
  204. package/git/operations/commit.d.ts.map +1 -0
  205. package/git/operations/head-info.d.ts +29 -0
  206. package/git/operations/head-info.d.ts.map +1 -0
  207. package/git/operations/index.cjs.js +1954 -0
  208. package/git/operations/index.cjs.js.map +1 -0
  209. package/git/operations/index.d.ts +14 -0
  210. package/git/operations/index.d.ts.map +1 -0
  211. package/git/operations/index.esm.js +1903 -0
  212. package/git/operations/index.esm.js.map +1 -0
  213. package/git/operations/log.d.ts +104 -0
  214. package/git/operations/log.d.ts.map +1 -0
  215. package/git/operations/manage-tags.d.ts +60 -0
  216. package/git/operations/manage-tags.d.ts.map +1 -0
  217. package/git/operations/query-tags.d.ts +88 -0
  218. package/git/operations/query-tags.d.ts.map +1 -0
  219. package/git/operations/stage.d.ts +66 -0
  220. package/git/operations/stage.d.ts.map +1 -0
  221. package/git/operations/status.d.ts +173 -0
  222. package/git/operations/status.d.ts.map +1 -0
  223. package/index.cjs.js +16761 -0
  224. package/index.cjs.js.map +1 -0
  225. package/index.d.ts +102 -0
  226. package/index.d.ts.map +1 -0
  227. package/index.esm.js +16427 -0
  228. package/index.esm.js.map +1 -0
  229. package/package.json +200 -0
  230. package/registry/factory.d.ts +18 -0
  231. package/registry/factory.d.ts.map +1 -0
  232. package/registry/index.cjs.js +543 -0
  233. package/registry/index.cjs.js.map +1 -0
  234. package/registry/index.d.ts +5 -0
  235. package/registry/index.d.ts.map +1 -0
  236. package/registry/index.esm.js +535 -0
  237. package/registry/index.esm.js.map +1 -0
  238. package/registry/models/index.cjs.js +69 -0
  239. package/registry/models/index.cjs.js.map +1 -0
  240. package/registry/models/index.d.ts +6 -0
  241. package/registry/models/index.d.ts.map +1 -0
  242. package/registry/models/index.esm.js +66 -0
  243. package/registry/models/index.esm.js.map +1 -0
  244. package/registry/models/package-info.d.ts +55 -0
  245. package/registry/models/package-info.d.ts.map +1 -0
  246. package/registry/models/registry.d.ts +62 -0
  247. package/registry/models/registry.d.ts.map +1 -0
  248. package/registry/models/version-info.d.ts +67 -0
  249. package/registry/models/version-info.d.ts.map +1 -0
  250. package/registry/npm/cache.d.ts +50 -0
  251. package/registry/npm/cache.d.ts.map +1 -0
  252. package/registry/npm/client.d.ts +30 -0
  253. package/registry/npm/client.d.ts.map +1 -0
  254. package/registry/npm/index.cjs.js +456 -0
  255. package/registry/npm/index.cjs.js.map +1 -0
  256. package/registry/npm/index.d.ts +4 -0
  257. package/registry/npm/index.d.ts.map +1 -0
  258. package/registry/npm/index.esm.js +451 -0
  259. package/registry/npm/index.esm.js.map +1 -0
  260. package/semver/compare/compare.d.ts +100 -0
  261. package/semver/compare/compare.d.ts.map +1 -0
  262. package/semver/compare/index.cjs.js +386 -0
  263. package/semver/compare/index.cjs.js.map +1 -0
  264. package/semver/compare/index.d.ts +3 -0
  265. package/semver/compare/index.d.ts.map +1 -0
  266. package/semver/compare/index.esm.js +370 -0
  267. package/semver/compare/index.esm.js.map +1 -0
  268. package/semver/compare/sort.d.ts +36 -0
  269. package/semver/compare/sort.d.ts.map +1 -0
  270. package/semver/format/index.cjs.js +58 -0
  271. package/semver/format/index.cjs.js.map +1 -0
  272. package/semver/format/index.d.ts +2 -0
  273. package/semver/format/index.d.ts.map +1 -0
  274. package/semver/format/index.esm.js +53 -0
  275. package/semver/format/index.esm.js.map +1 -0
  276. package/semver/format/to-string.d.ts +31 -0
  277. package/semver/format/to-string.d.ts.map +1 -0
  278. package/semver/increment/bump.d.ts +37 -0
  279. package/semver/increment/bump.d.ts.map +1 -0
  280. package/semver/increment/index.cjs.js +223 -0
  281. package/semver/increment/index.cjs.js.map +1 -0
  282. package/semver/increment/index.d.ts +2 -0
  283. package/semver/increment/index.d.ts.map +1 -0
  284. package/semver/increment/index.esm.js +219 -0
  285. package/semver/increment/index.esm.js.map +1 -0
  286. package/semver/index.cjs.js +1499 -0
  287. package/semver/index.cjs.js.map +1 -0
  288. package/semver/index.d.ts +6 -0
  289. package/semver/index.d.ts.map +1 -0
  290. package/semver/index.esm.js +1458 -0
  291. package/semver/index.esm.js.map +1 -0
  292. package/semver/models/index.cjs.js +153 -0
  293. package/semver/models/index.cjs.js.map +1 -0
  294. package/semver/models/index.d.ts +5 -0
  295. package/semver/models/index.d.ts.map +1 -0
  296. package/semver/models/index.esm.js +139 -0
  297. package/semver/models/index.esm.js.map +1 -0
  298. package/semver/models/range.d.ts +83 -0
  299. package/semver/models/range.d.ts.map +1 -0
  300. package/semver/models/version.d.ts +78 -0
  301. package/semver/models/version.d.ts.map +1 -0
  302. package/semver/parse/index.cjs.js +799 -0
  303. package/semver/parse/index.cjs.js.map +1 -0
  304. package/semver/parse/index.d.ts +5 -0
  305. package/semver/parse/index.d.ts.map +1 -0
  306. package/semver/parse/index.esm.js +793 -0
  307. package/semver/parse/index.esm.js.map +1 -0
  308. package/semver/parse/range.d.ts +38 -0
  309. package/semver/parse/range.d.ts.map +1 -0
  310. package/semver/parse/version.d.ts +49 -0
  311. package/semver/parse/version.d.ts.map +1 -0
  312. package/workspace/discovery/changelog-path.d.ts +21 -0
  313. package/workspace/discovery/changelog-path.d.ts.map +1 -0
  314. package/workspace/discovery/dependencies.d.ts +145 -0
  315. package/workspace/discovery/dependencies.d.ts.map +1 -0
  316. package/workspace/discovery/discover-changelogs.d.ts +76 -0
  317. package/workspace/discovery/discover-changelogs.d.ts.map +1 -0
  318. package/workspace/discovery/index.cjs.js +2300 -0
  319. package/workspace/discovery/index.cjs.js.map +1 -0
  320. package/workspace/discovery/index.d.ts +13 -0
  321. package/workspace/discovery/index.d.ts.map +1 -0
  322. package/workspace/discovery/index.esm.js +2283 -0
  323. package/workspace/discovery/index.esm.js.map +1 -0
  324. package/workspace/discovery/packages.d.ts +83 -0
  325. package/workspace/discovery/packages.d.ts.map +1 -0
  326. package/workspace/index.cjs.js +4445 -0
  327. package/workspace/index.cjs.js.map +1 -0
  328. package/workspace/index.d.ts +52 -0
  329. package/workspace/index.d.ts.map +1 -0
  330. package/workspace/index.esm.js +4394 -0
  331. package/workspace/index.esm.js.map +1 -0
  332. package/workspace/models/index.cjs.js +284 -0
  333. package/workspace/models/index.cjs.js.map +1 -0
  334. package/workspace/models/index.d.ts +10 -0
  335. package/workspace/models/index.d.ts.map +1 -0
  336. package/workspace/models/index.esm.js +261 -0
  337. package/workspace/models/index.esm.js.map +1 -0
  338. package/workspace/models/project.d.ts +118 -0
  339. package/workspace/models/project.d.ts.map +1 -0
  340. package/workspace/models/workspace.d.ts +139 -0
  341. package/workspace/models/workspace.d.ts.map +1 -0
  342. package/workspace/operations/batch-update.d.ts +99 -0
  343. package/workspace/operations/batch-update.d.ts.map +1 -0
  344. package/workspace/operations/cascade-bump.d.ts +125 -0
  345. package/workspace/operations/cascade-bump.d.ts.map +1 -0
  346. package/workspace/operations/index.cjs.js +2675 -0
  347. package/workspace/operations/index.cjs.js.map +1 -0
  348. package/workspace/operations/index.d.ts +12 -0
  349. package/workspace/operations/index.d.ts.map +1 -0
  350. package/workspace/operations/index.esm.js +2663 -0
  351. package/workspace/operations/index.esm.js.map +1 -0
  352. package/workspace/operations/validate.d.ts +85 -0
  353. package/workspace/operations/validate.d.ts.map +1 -0
@@ -0,0 +1,629 @@
1
+ /**
2
+ * Creates a commit footer.
3
+ *
4
+ * @param key - Footer identifier such as 'Refs', 'Fixes', or 'BREAKING CHANGE'
5
+ * @param value - Associated content for the footer entry
6
+ * @param separator - Delimiter between key and value (':' or ' #')
7
+ * @returns A new CommitFooter object
8
+ */
9
+ function createCommitFooter(key, value, separator = ':') {
10
+ return {
11
+ key,
12
+ value,
13
+ separator,
14
+ };
15
+ }
16
+ /**
17
+ * Creates a conventional commit.
18
+ *
19
+ * @param type - The commit type (e.g., 'feat', 'fix')
20
+ * @param subject - The commit subject line
21
+ * @param options - Optional configuration for scope, body, footers, etc.
22
+ * @returns A new ConventionalCommit object
23
+ */
24
+ function createConventionalCommit(type, subject, options) {
25
+ const raw = options?.raw ?? buildRaw(type, subject, options);
26
+ return {
27
+ type,
28
+ subject,
29
+ scope: options?.scope,
30
+ body: options?.body,
31
+ footers: options?.footers ?? [],
32
+ breaking: options?.breaking ?? false,
33
+ breakingDescription: options?.breakingDescription,
34
+ raw,
35
+ };
36
+ }
37
+ /**
38
+ * Builds the raw commit message from parts.
39
+ *
40
+ * @param type - The commit type
41
+ * @param subject - The commit subject
42
+ * @param options - Optional configuration for building the message
43
+ * @returns The formatted raw commit message string
44
+ */
45
+ function buildRaw(type, subject, options) {
46
+ let header = type;
47
+ if (options?.scope) {
48
+ header += `(${options.scope})`;
49
+ }
50
+ if (options?.breaking) {
51
+ header += '!';
52
+ }
53
+ header += `: ${subject}`;
54
+ const parts = [header];
55
+ if (options?.body) {
56
+ parts.push('');
57
+ parts.push(options.body);
58
+ }
59
+ if (options?.footers?.length) {
60
+ parts.push('');
61
+ for (const footer of options.footers) {
62
+ parts.push(`${footer.key}${footer.separator}${footer.separator === ':' ? ' ' : ''}${footer.value}`);
63
+ }
64
+ }
65
+ return parts.join('\n');
66
+ }
67
+
68
+ const COMMIT_TYPES = {
69
+ feat: { description: 'A new feature', semverBump: 'minor' },
70
+ fix: { description: 'A bug fix', semverBump: 'patch' },
71
+ docs: { description: 'Documentation only changes', semverBump: 'none' },
72
+ style: { description: 'Code style changes (formatting, etc.)', semverBump: 'none' },
73
+ refactor: { description: 'Code refactoring without feature or fix', semverBump: 'none' },
74
+ perf: { description: 'Performance improvements', semverBump: 'patch' },
75
+ test: { description: 'Adding or updating tests', semverBump: 'none' },
76
+ build: { description: 'Build system or dependencies', semverBump: 'none' },
77
+ ci: { description: 'CI/CD configuration', semverBump: 'none' },
78
+ chore: { description: 'Other changes', semverBump: 'none' },
79
+ revert: { description: 'Revert a previous commit', semverBump: 'patch' },
80
+ };
81
+ const RELEASE_TYPES = ['feat', 'fix', 'perf', 'revert'];
82
+ const MINOR_TYPES = ['feat'];
83
+ const PATCH_TYPES = ['fix', 'perf', 'revert'];
84
+ /**
85
+ * Checks if a commit type is a standard type.
86
+ *
87
+ * @param type - The commit type to check
88
+ * @returns True if the type is a standard conventional commit type
89
+ */
90
+ function isStandardType(type) {
91
+ return type in COMMIT_TYPES;
92
+ }
93
+ /**
94
+ * Checks if a commit type triggers a release.
95
+ *
96
+ * @param type - The commit type to check
97
+ * @returns True if the type triggers a release
98
+ */
99
+ function isReleaseType(type) {
100
+ return RELEASE_TYPES.includes(type);
101
+ }
102
+ /**
103
+ * Gets the semver bump level for a commit type.
104
+ * Returns 'none' for types that don't trigger a bump.
105
+ *
106
+ * @param type - The commit type
107
+ * @param breaking - Whether this is a breaking change
108
+ * @returns The semver bump level ('major', 'minor', 'patch', or 'none')
109
+ */
110
+ function getSemverBump(type, breaking) {
111
+ if (breaking)
112
+ return 'major';
113
+ const info = COMMIT_TYPES[type];
114
+ return info?.semverBump ?? 'none';
115
+ }
116
+
117
+ /**
118
+ * Replaces all occurrences of a character in a string.
119
+ * Uses character-by-character iteration to avoid regex (ReDoS-safe).
120
+ *
121
+ * @param input - The input string
122
+ * @param target - The character to replace
123
+ * @param replacement - The replacement character
124
+ * @returns String with all occurrences replaced
125
+ */
126
+ function replaceChar(input, target, replacement) {
127
+ const result = [];
128
+ for (let i = 0; i < input.length; i++) {
129
+ result.push(input[i] === target ? replacement : input[i]);
130
+ }
131
+ return result.join('');
132
+ }
133
+ /**
134
+ * Replaces all hyphens with spaces.
135
+ * Convenience wrapper for normalizing footer keys.
136
+ *
137
+ * @param input - The input string
138
+ * @returns String with hyphens replaced by spaces
139
+ */
140
+ function hyphenToSpace(input) {
141
+ return replaceChar(input, '-', ' ');
142
+ }
143
+
144
+ /**
145
+ * Creates a breaking change from a subject indicator (!).
146
+ *
147
+ * @param description - Optional description of the breaking change
148
+ * @returns A BreakingChange object with source 'subject'
149
+ */
150
+ function createBreakingFromSubject(description) {
151
+ return {
152
+ isBreaking: true,
153
+ description,
154
+ source: 'subject',
155
+ };
156
+ }
157
+ /**
158
+ * Creates a breaking change from a footer.
159
+ *
160
+ * @param description - The description of the breaking change
161
+ * @returns A BreakingChange object with source 'footer'
162
+ */
163
+ function createBreakingFromFooter(description) {
164
+ return {
165
+ isBreaking: true,
166
+ description,
167
+ source: 'footer',
168
+ };
169
+ }
170
+ /**
171
+ * Creates a non-breaking change.
172
+ *
173
+ * @returns A BreakingChange object indicating no breaking change
174
+ */
175
+ function createNonBreaking() {
176
+ return {
177
+ isBreaking: false,
178
+ source: 'none',
179
+ };
180
+ }
181
+ /**
182
+ * Checks if a footer key indicates a breaking change.
183
+ *
184
+ * @param key - The footer key to check
185
+ * @returns True if the key indicates a breaking change
186
+ */
187
+ function isBreakingFooterKey(key) {
188
+ const normalized = hyphenToSpace(key.toUpperCase());
189
+ return normalized === 'BREAKING CHANGE';
190
+ }
191
+
192
+ /**
193
+ * Safe copies of Error built-ins via factory functions.
194
+ *
195
+ * Since constructors cannot be safely captured via Object.assign, this module
196
+ * provides factory functions that use Reflect.construct internally.
197
+ *
198
+ * These references are captured at module initialization time to protect against
199
+ * prototype pollution attacks. Import only what you need for tree-shaking.
200
+ *
201
+ * @module @hyperfrontend/immutable-api-utils/built-in-copy/error
202
+ */
203
+ // Capture references at module initialization time
204
+ const _Error = globalThis.Error;
205
+ const _Reflect = globalThis.Reflect;
206
+ /**
207
+ * (Safe copy) Creates a new Error using the captured Error constructor.
208
+ * Use this instead of `new Error()`.
209
+ *
210
+ * @param message - Optional error message.
211
+ * @param options - Optional error options.
212
+ * @returns A new Error instance.
213
+ */
214
+ const createError = (message, options) => _Reflect.construct(_Error, [message, options]);
215
+
216
+ /**
217
+ * Parses the body section of a commit message.
218
+ *
219
+ * The body starts after the first blank line and continues until
220
+ * we encounter a footer (key: value or key #value pattern) or end of message.
221
+ *
222
+ * @param lines - All lines of the commit message
223
+ * @param startIndex - Index to start looking for body (after header)
224
+ * @returns Parsed body or undefined if no body
225
+ */
226
+ function parseBody(lines, startIndex) {
227
+ // Skip blank lines to find body start
228
+ let pos = startIndex;
229
+ while (pos < lines.length && lines[pos].trim() === '') {
230
+ pos++;
231
+ }
232
+ if (pos >= lines.length) {
233
+ return undefined;
234
+ }
235
+ // If the first non-blank line is a footer, there's no body
236
+ if (isFooterLine(lines[pos])) {
237
+ return undefined;
238
+ }
239
+ const bodyLines = [];
240
+ // Collect body lines until we hit a footer or end
241
+ while (pos < lines.length) {
242
+ const line = lines[pos];
243
+ // Check if this line looks like a footer
244
+ if (isFooterLine(line)) {
245
+ break;
246
+ }
247
+ // Check for blank line followed by a footer
248
+ if (line.trim() === '' && pos + 1 < lines.length && isFooterLine(lines[pos + 1])) {
249
+ break;
250
+ }
251
+ bodyLines.push(line);
252
+ pos++;
253
+ }
254
+ // Trim trailing blank lines from body
255
+ while (bodyLines.length > 0 && bodyLines[bodyLines.length - 1].trim() === '') {
256
+ bodyLines.pop();
257
+ }
258
+ if (bodyLines.length === 0) {
259
+ return undefined;
260
+ }
261
+ return {
262
+ body: bodyLines.join('\n'),
263
+ endIndex: pos,
264
+ };
265
+ }
266
+ /**
267
+ * Checks if a line looks like a footer.
268
+ *
269
+ * Footer format:
270
+ * - key: value
271
+ * - key #value (for issue references)
272
+ * - BREAKING CHANGE: description
273
+ * - BREAKING-CHANGE: description
274
+ *
275
+ * @param line - The line to check
276
+ * @returns True if the line looks like a footer
277
+ */
278
+ function isFooterLine(line) {
279
+ if (!line)
280
+ return false;
281
+ const trimmed = line.trim();
282
+ if (trimmed === '')
283
+ return false;
284
+ // Check for BREAKING CHANGE or BREAKING-CHANGE
285
+ if (trimmed.startsWith('BREAKING CHANGE:') || trimmed.startsWith('BREAKING-CHANGE:')) {
286
+ return true;
287
+ }
288
+ // Check for token: value or token #value pattern
289
+ let pos = 0;
290
+ // Skip leading whitespace
291
+ while (pos < trimmed.length && trimmed[pos] === ' ') {
292
+ pos++;
293
+ }
294
+ // Read token (alphanumeric and hyphens)
295
+ const tokenStart = pos;
296
+ while (pos < trimmed.length) {
297
+ const char = trimmed[pos];
298
+ const code = char.charCodeAt(0);
299
+ if ((code >= 97 && code <= 122) || // a-z
300
+ (code >= 65 && code <= 90) || // A-Z
301
+ (code >= 48 && code <= 57) || // 0-9
302
+ code === 45 // -
303
+ ) {
304
+ pos++;
305
+ }
306
+ else {
307
+ break;
308
+ }
309
+ }
310
+ // Must have at least one character in token
311
+ if (pos === tokenStart)
312
+ return false;
313
+ // Must be followed by : or space-#
314
+ if (trimmed[pos] === ':') {
315
+ return true;
316
+ }
317
+ if (trimmed[pos] === ' ' && trimmed[pos + 1] === '#') {
318
+ return true;
319
+ }
320
+ return false;
321
+ }
322
+
323
+ /**
324
+ * Parses the footer section of a commit message.
325
+ *
326
+ * @param lines - All lines of the commit message
327
+ * @param startIndex - Index where footers start
328
+ * @returns Parsed footers
329
+ */
330
+ function parseFooters(lines, startIndex) {
331
+ const footers = [];
332
+ let breakingDescription;
333
+ let pos = startIndex;
334
+ // Skip blank lines
335
+ while (pos < lines.length && lines[pos].trim() === '') {
336
+ pos++;
337
+ }
338
+ while (pos < lines.length) {
339
+ const line = lines[pos];
340
+ const footer = parseFooterLine(line);
341
+ if (footer) {
342
+ footers.push(footer);
343
+ // Check for breaking change
344
+ if (isBreakingFooterKey(footer.key)) {
345
+ breakingDescription = footer.value;
346
+ // Breaking description may span multiple lines
347
+ pos++;
348
+ while (pos < lines.length && !isNewFooter(lines[pos])) {
349
+ const nextLine = lines[pos];
350
+ if (nextLine.trim() !== '') {
351
+ breakingDescription += '\n' + nextLine;
352
+ }
353
+ pos++;
354
+ }
355
+ continue;
356
+ }
357
+ }
358
+ pos++;
359
+ }
360
+ return { footers, breakingDescription };
361
+ }
362
+ /**
363
+ * Parses a single footer line.
364
+ *
365
+ * @param line - The line to parse
366
+ * @returns The parsed CommitFooter or null if not a valid footer
367
+ */
368
+ function parseFooterLine(line) {
369
+ if (!line)
370
+ return null;
371
+ const trimmed = line.trim();
372
+ if (trimmed === '')
373
+ return null;
374
+ // Check for BREAKING CHANGE or BREAKING-CHANGE
375
+ if (trimmed.startsWith('BREAKING CHANGE:')) {
376
+ return {
377
+ key: 'BREAKING CHANGE',
378
+ value: trimmed.slice(16).trim(),
379
+ separator: ':',
380
+ };
381
+ }
382
+ if (trimmed.startsWith('BREAKING-CHANGE:')) {
383
+ return {
384
+ key: 'BREAKING-CHANGE',
385
+ value: trimmed.slice(16).trim(),
386
+ separator: ':',
387
+ };
388
+ }
389
+ // Parse token: value or token #value
390
+ let pos = 0;
391
+ // Read token
392
+ const tokenStart = pos;
393
+ while (pos < trimmed.length) {
394
+ const char = trimmed[pos];
395
+ const code = char.charCodeAt(0);
396
+ if ((code >= 97 && code <= 122) || // a-z
397
+ (code >= 65 && code <= 90) || // A-Z
398
+ (code >= 48 && code <= 57) || // 0-9
399
+ code === 45 // -
400
+ ) {
401
+ pos++;
402
+ }
403
+ else {
404
+ break;
405
+ }
406
+ }
407
+ if (pos === tokenStart)
408
+ return null;
409
+ const key = trimmed.slice(tokenStart, pos);
410
+ // Check separator
411
+ let separator;
412
+ let valueStart;
413
+ if (trimmed[pos] === ':') {
414
+ separator = ':';
415
+ valueStart = pos + 1;
416
+ }
417
+ else if (trimmed[pos] === ' ' && trimmed[pos + 1] === '#') {
418
+ separator = ' #';
419
+ valueStart = pos + 2;
420
+ }
421
+ else {
422
+ return null;
423
+ }
424
+ // Skip whitespace after separator (for : case)
425
+ if (separator === ':') {
426
+ while (valueStart < trimmed.length && trimmed[valueStart] === ' ') {
427
+ valueStart++;
428
+ }
429
+ }
430
+ const value = trimmed.slice(valueStart);
431
+ return { key, value, separator };
432
+ }
433
+ /**
434
+ * Checks if a line starts a new footer.
435
+ *
436
+ * @param line - The line to check
437
+ * @returns True if the line starts a new footer
438
+ */
439
+ function isNewFooter(line) {
440
+ if (!line)
441
+ return false;
442
+ return parseFooterLine(line) !== null;
443
+ }
444
+
445
+ /**
446
+ * Parses a conventional commit header line.
447
+ *
448
+ * @param line - The first line of the commit message
449
+ * @returns Parsed header with type, scope, subject, and breaking flag
450
+ */
451
+ function parseHeader(line) {
452
+ let pos = 0;
453
+ const len = line.length;
454
+ // Extract type (alphanumeric characters until ( or : or !)
455
+ const typeStart = pos;
456
+ while (pos < len) {
457
+ const char = line[pos];
458
+ const code = char.charCodeAt(0);
459
+ // a-z, A-Z, 0-9
460
+ if ((code >= 97 && code <= 122) || (code >= 65 && code <= 90) || (code >= 48 && code <= 57)) {
461
+ pos++;
462
+ }
463
+ else {
464
+ break;
465
+ }
466
+ }
467
+ const type = line.slice(typeStart, pos).toLowerCase();
468
+ // Check for scope in parentheses
469
+ let scope;
470
+ if (line[pos] === '(') {
471
+ pos++; // skip (
472
+ const scopeStart = pos;
473
+ while (pos < len && line[pos] !== ')') {
474
+ pos++;
475
+ }
476
+ scope = line.slice(scopeStart, pos);
477
+ if (line[pos] === ')') {
478
+ pos++; // skip )
479
+ }
480
+ }
481
+ // Check for breaking change indicator (!)
482
+ const breaking = line[pos] === '!';
483
+ if (breaking) {
484
+ pos++;
485
+ }
486
+ // Expect colon
487
+ if (line[pos] === ':') {
488
+ pos++;
489
+ }
490
+ // Skip whitespace after colon
491
+ while (pos < len && line[pos] === ' ') {
492
+ pos++;
493
+ }
494
+ // Rest is subject
495
+ const subject = line.slice(pos).trim();
496
+ return {
497
+ type,
498
+ scope,
499
+ subject,
500
+ breaking,
501
+ };
502
+ }
503
+
504
+ /**
505
+ * Maximum commit message length (10KB)
506
+ */
507
+ const MAX_MESSAGE_LENGTH = 10 * 1024;
508
+ /**
509
+ * Parses a conventional commit message.
510
+ *
511
+ * @param message - The complete commit message
512
+ * @returns Parsed ConventionalCommit object
513
+ * @throws {Error} If message exceeds maximum length
514
+ */
515
+ function parseConventionalCommit(message) {
516
+ if (message.length > MAX_MESSAGE_LENGTH) {
517
+ throw createError(`Commit message exceeds maximum length of ${MAX_MESSAGE_LENGTH} characters`);
518
+ }
519
+ const lines = splitLines(message);
520
+ if (lines.length === 0) {
521
+ return {
522
+ type: '',
523
+ subject: '',
524
+ footers: [],
525
+ breaking: false,
526
+ raw: message,
527
+ };
528
+ }
529
+ // Parse header (first line)
530
+ const header = parseHeader(lines[0]);
531
+ // Parse body and footers
532
+ let body;
533
+ let footersStartIndex = 1;
534
+ if (lines.length > 1) {
535
+ const bodyResult = parseBody(lines, 1);
536
+ if (bodyResult) {
537
+ body = bodyResult.body;
538
+ footersStartIndex = bodyResult.endIndex;
539
+ }
540
+ }
541
+ // Parse footers
542
+ const footersResult = parseFooters(lines, footersStartIndex);
543
+ const breakingDescriptionFromFooter = footersResult.breakingDescription;
544
+ // Determine breaking status
545
+ const breaking = header.breaking || footersResult.footers.some((f) => hyphenToSpace(f.key.toUpperCase()) === 'BREAKING CHANGE');
546
+ // Determine breaking description
547
+ let breakingDescription;
548
+ if (header.breaking && header.subject) {
549
+ // If breaking via !, the subject may describe the breaking change
550
+ breakingDescription = header.subject;
551
+ }
552
+ if (breakingDescriptionFromFooter) {
553
+ breakingDescription = breakingDescriptionFromFooter;
554
+ }
555
+ return {
556
+ type: header.type,
557
+ scope: header.scope,
558
+ subject: header.subject,
559
+ body,
560
+ footers: footersResult.footers,
561
+ breaking,
562
+ breakingDescription,
563
+ raw: message,
564
+ };
565
+ }
566
+ /**
567
+ * Splits a message into lines, handling different line endings.
568
+ *
569
+ * @param message - The message to split into lines
570
+ * @returns An array of lines from the message
571
+ */
572
+ function splitLines(message) {
573
+ const lines = [];
574
+ let currentLine = '';
575
+ let i = 0;
576
+ while (i < message.length) {
577
+ const char = message[i];
578
+ if (char === '\r') {
579
+ lines.push(currentLine);
580
+ currentLine = '';
581
+ // Skip \n if this is \r\n
582
+ if (message[i + 1] === '\n') {
583
+ i++;
584
+ }
585
+ }
586
+ else if (char === '\n') {
587
+ lines.push(currentLine);
588
+ currentLine = '';
589
+ }
590
+ else {
591
+ currentLine += char;
592
+ }
593
+ i++;
594
+ }
595
+ // Add final line if not empty
596
+ if (currentLine || message.endsWith('\n') || message.endsWith('\r')) {
597
+ lines.push(currentLine);
598
+ }
599
+ return lines;
600
+ }
601
+ /**
602
+ * Checks if a commit message follows conventional commit format.
603
+ *
604
+ * @param message - The commit message to check
605
+ * @returns true if the message appears to be a conventional commit
606
+ */
607
+ function isConventionalCommit(message) {
608
+ if (!message || message.trim() === '') {
609
+ return false;
610
+ }
611
+ const firstLine = message.split('\n')[0] ?? '';
612
+ const header = parseHeader(firstLine);
613
+ // Must have a type and subject
614
+ if (!header.type || !header.subject) {
615
+ return false;
616
+ }
617
+ // Type should not be too long (indicates not a type)
618
+ if (header.type.length > 20) {
619
+ return false;
620
+ }
621
+ // Type should be a recognized conventional commit type
622
+ if (!isStandardType(header.type)) {
623
+ return false;
624
+ }
625
+ return true;
626
+ }
627
+
628
+ export { COMMIT_TYPES, MINOR_TYPES, PATCH_TYPES, RELEASE_TYPES, createBreakingFromFooter, createBreakingFromSubject, createCommitFooter, createConventionalCommit, createNonBreaking, getSemverBump, isBreakingFooterKey, isConventionalCommit, isReleaseType, isStandardType, parseBody, parseConventionalCommit, parseFooters, parseHeader };
629
+ //# sourceMappingURL=index.esm.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.esm.js","sources":["../../../../../../../../libs/versioning/src/commits/models/conventional.ts","../../../../../../../../libs/versioning/src/commits/models/commit-type.ts","../../../../../../../../libs/versioning/src/commits/utils/replace-char.ts","../../../../../../../../libs/versioning/src/commits/models/breaking.ts","../../../../../../../../libs/utils/immutable-api/src/built-in-copy/error/index.ts","../../../../../../../../libs/versioning/src/commits/parse/body.ts","../../../../../../../../libs/versioning/src/commits/parse/footer.ts","../../../../../../../../libs/versioning/src/commits/parse/header.ts","../../../../../../../../libs/versioning/src/commits/parse/message.ts"],"sourcesContent":[null,null,null,null,null,null,null,null,null],"names":[],"mappings":"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"}
@@ -0,0 +1,39 @@
1
+ /**
2
+ * Breaking change information.
3
+ */
4
+ export interface BreakingChange {
5
+ /** Whether this is a breaking change */
6
+ readonly isBreaking: boolean;
7
+ /** Description of the breaking change */
8
+ readonly description?: string;
9
+ /** Source of the breaking change indicator */
10
+ readonly source: 'subject' | 'footer' | 'none';
11
+ }
12
+ /**
13
+ * Creates a breaking change from a subject indicator (!).
14
+ *
15
+ * @param description - Optional description of the breaking change
16
+ * @returns A BreakingChange object with source 'subject'
17
+ */
18
+ export declare function createBreakingFromSubject(description?: string): BreakingChange;
19
+ /**
20
+ * Creates a breaking change from a footer.
21
+ *
22
+ * @param description - The description of the breaking change
23
+ * @returns A BreakingChange object with source 'footer'
24
+ */
25
+ export declare function createBreakingFromFooter(description: string): BreakingChange;
26
+ /**
27
+ * Creates a non-breaking change.
28
+ *
29
+ * @returns A BreakingChange object indicating no breaking change
30
+ */
31
+ export declare function createNonBreaking(): BreakingChange;
32
+ /**
33
+ * Checks if a footer key indicates a breaking change.
34
+ *
35
+ * @param key - The footer key to check
36
+ * @returns True if the key indicates a breaking change
37
+ */
38
+ export declare function isBreakingFooterKey(key: string): boolean;
39
+ //# sourceMappingURL=breaking.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"breaking.d.ts","sourceRoot":"","sources":["../../../../../../../../libs/versioning/src/commits/models/breaking.ts"],"names":[],"mappings":"AAEA;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B,wCAAwC;IACxC,QAAQ,CAAC,UAAU,EAAE,OAAO,CAAA;IAE5B,yCAAyC;IACzC,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAA;IAE7B,8CAA8C;IAC9C,QAAQ,CAAC,MAAM,EAAE,SAAS,GAAG,QAAQ,GAAG,MAAM,CAAA;CAC/C;AAED;;;;;GAKG;AACH,wBAAgB,yBAAyB,CAAC,WAAW,CAAC,EAAE,MAAM,GAAG,cAAc,CAM9E;AAED;;;;;GAKG;AACH,wBAAgB,wBAAwB,CAAC,WAAW,EAAE,MAAM,GAAG,cAAc,CAM5E;AAED;;;;GAIG;AACH,wBAAgB,iBAAiB,IAAI,cAAc,CAKlD;AAED;;;;;GAKG;AACH,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAGxD"}