@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
package/FUNDING.md ADDED
@@ -0,0 +1,141 @@
1
+ # Funding & Support
2
+
3
+ Thank you for considering supporting hyperfrontend! Your contributions help maintain and improve this project.
4
+
5
+ ## Why Support hyperfrontend?
6
+
7
+ hyperfrontend is an open-source project that provides:
8
+
9
+ - 🔧 Framework-agnostic micro-frontend architecture
10
+ - 📦 Multiple packages and tools for building scalable web applications
11
+ - 📚 Comprehensive documentation and examples
12
+ - 🆓 Free for everyone to use
13
+
14
+ Your support helps:
15
+
16
+ - ⏰ Dedicate more time to development and maintenance
17
+ - 🐛 Fix bugs and address issues faster
18
+ - ✨ Build new features and improvements
19
+ - 📖 Create better documentation and tutorials
20
+ - 🌟 Keep the project sustainable long-term
21
+
22
+ ## How to Support
23
+
24
+ ### 💖 GitHub Sponsors
25
+
26
+ You can sponsor the project through GitHub Sponsors:
27
+
28
+ **[Sponsor @AndrewRedican on GitHub](https://github.com/sponsors/AndrewRedican)**
29
+
30
+ GitHub Sponsors benefits:
31
+
32
+ - Direct support to the maintainer
33
+ - No platform fees (GitHub covers them)
34
+ - Various sponsorship tiers available
35
+ - Recognition in the project
36
+
37
+ ### 🌐 One-time Donations
38
+
39
+ You can also make a one-time contribution:
40
+
41
+ **[Donate via hyperfrontend.dev](https://hyperfrontend.dev/sponsor)**
42
+
43
+ ### 🏢 Corporate Sponsorship
44
+
45
+ If your company uses hyperfrontend in production, consider becoming a corporate sponsor:
46
+
47
+ - **Bronze Sponsor** ($100/month) - Logo in README
48
+ - **Silver Sponsor** ($500/month) - Logo in README + website
49
+ - **Gold Sponsor** ($1000/month) - Logo placement + priority support
50
+ - **Platinum Sponsor** ($2500/month) - All benefits + consulting hours
51
+
52
+ Contact: andrew.redican.mejia@gmail.com
53
+
54
+ ## Other Ways to Contribute
55
+
56
+ Not everyone can contribute financially, and that's okay! There are many other ways to support:
57
+
58
+ ### 💻 Code Contributions
59
+
60
+ - Submit bug fixes
61
+ - Add new features
62
+ - Improve documentation
63
+ - Write tests
64
+
65
+ See our [Contributing Guide](CONTRIBUTING.md) for details.
66
+
67
+ ### 📣 Spread the Word
68
+
69
+ - ⭐ Star the repository on GitHub
70
+ - 🐦 Share on social media
71
+ - 📝 Write blog posts or tutorials
72
+ - 🎤 Give talks about hyperfrontend at meetups/conferences
73
+
74
+ ### 🐛 Bug Reports
75
+
76
+ - Report issues you encounter
77
+ - Help triage existing issues
78
+ - Provide detailed reproduction steps
79
+
80
+ ### 📚 Documentation
81
+
82
+ - Improve existing docs
83
+ - Write tutorials and guides
84
+ - Translate documentation
85
+ - Create video tutorials
86
+
87
+ ### 💬 Community Support
88
+
89
+ - Answer questions in issues
90
+ - Help other users on discussions
91
+ - Share your use cases and examples
92
+
93
+ ## Current Sponsors
94
+
95
+ Thank you to all our sponsors and backers! 🙏
96
+
97
+ <!-- ALL-CONTRIBUTORS-BADGE:START - Do not remove or modify this section -->
98
+
99
+ [![All Contributors](https://img.shields.io/github/all-contributors/AndrewRedican/hyperfrontend?color=ee8449&style=flat-square)](#contributors)
100
+
101
+ <!-- ALL-CONTRIBUTORS-BADGE:END -->
102
+
103
+ ### Corporate Sponsors
104
+
105
+ <!-- Corporate sponsors will be listed here -->
106
+
107
+ _Interested in corporate sponsorship? [Contact us](mailto:andrew.redican.mejia@gmail.com)_
108
+
109
+ ### Individual Sponsors
110
+
111
+ <!-- Sponsors will be automatically listed through GitHub Sponsors -->
112
+
113
+ _Become the first sponsor!_ ❤️
114
+
115
+ ## Recognition
116
+
117
+ All sponsors and contributors are recognized in:
118
+
119
+ - Project README
120
+ - Project website (coming soon)
121
+ - Release notes (for significant contributions)
122
+
123
+ ## Transparency
124
+
125
+ All sponsorship funds are used for:
126
+
127
+ - Development time and effort
128
+ - Infrastructure costs (hosting, CI/CD, domains)
129
+ - Development tools and services
130
+ - Community building and events
131
+
132
+ ## Questions?
133
+
134
+ If you have questions about sponsorship or funding, please contact:
135
+
136
+ **Email**: andrew.redican.mejia@gmail.com
137
+ **GitHub**: [@AndrewRedican](https://github.com/AndrewRedican)
138
+
139
+ ---
140
+
141
+ Thank you for your support! Every contribution, whether code, documentation, or financial, helps make hyperfrontend better for everyone. 🚀
package/LICENSE.md ADDED
@@ -0,0 +1,21 @@
1
+ MIT License
2
+
3
+ Copyright (c) 2026 Andrew Redican
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.
package/README.md ADDED
@@ -0,0 +1,195 @@
1
+ # @hyperfrontend/versioning
2
+
3
+ <p align="center">
4
+ <a href="https://github.com/AndrewRedican/hyperfrontend/actions/workflows/ci-lib-versioning.yml">
5
+ <img src="https://img.shields.io/github/actions/workflow/status/AndrewRedican/hyperfrontend/ci-lib-versioning.yml?style=flat-square&logo=github&label=build" alt="Build">
6
+ </a>
7
+ <a href="https://codecov.io/gh/AndrewRedican/hyperfrontend/flags?flags%5B0%5D=versioning">
8
+ <img src="https://codecov.io/gh/AndrewRedican/hyperfrontend/graph/badge.svg?flag=versioning" alt="Coverage">
9
+ </a>
10
+ <a href="https://www.npmjs.com/package/@hyperfrontend/versioning">
11
+ <img src="https://img.shields.io/npm/v/@hyperfrontend/versioning?style=flat-square" alt="npm version">
12
+ </a>
13
+ <a href="https://bundlephobia.com/package/@hyperfrontend/versioning">
14
+ <img src="https://img.shields.io/bundlephobia/min/%40hyperfrontend%2Fversioning?style=flat-square" alt="npm bundle size">
15
+ </a>
16
+ </p>
17
+ <p align="center">
18
+ <a href="#contributors">
19
+ <img src="https://img.shields.io/github/all-contributors/AndrewRedican/hyperfrontend?color=ee8449&style=flat-square" alt="All Contributors">
20
+ </a>
21
+ <a href="https://github.com/AndrewRedican/hyperfrontend/blob/main/LICENSE.md">
22
+ <img src="https://img.shields.io/badge/license-MIT-blue?style=flat-square" alt="License">
23
+ </a>
24
+ <a href="https://www.npmjs.com/package/@hyperfrontend/versioning">
25
+ <img src="https://img.shields.io/npm/dm/@hyperfrontend/versioning?style=flat-square" alt="npm downloads">
26
+ </a>
27
+ <a href="https://github.com/AndrewRedican/hyperfrontend">
28
+ <img src="https://img.shields.io/github/stars/AndrewRedican/hyperfrontend?style=flat-square" alt="GitHub stars">
29
+ </a>
30
+ <img src="https://img.shields.io/badge/node-%3E%3D18.0.0-brightgreen?style=flat-square&logo=node.js" alt="Node Version">
31
+ <img src="https://img.shields.io/badge/tree%20shakeable-%E2%9C%93-success?style=flat-square" alt="Tree Shakeable">
32
+ </p>
33
+
34
+ Versioning library with changelog parsing, conventional commits, and semver flow orchestration.
35
+
36
+ • 👉 See [**documentation**](https://www.hyperfrontend.dev/docs/libraries/versioning/)
37
+
38
+ ## What is @hyperfrontend/versioning?
39
+
40
+ @hyperfrontend/versioning provides a comprehensive toolkit for managing software versioning in JavaScript/TypeScript projects. The library is built on a **purely functional architecture** with factory functions, immutable data structures, and composable operations.
41
+
42
+ ### Key Features
43
+
44
+ - **Changelog Parsing** - Parse CHANGELOG.md files into structured objects with lossless round-tripping
45
+ - **Conventional Commits** - Parse commit messages following the conventional commits specification
46
+ - **Semver Utilities** - Parse, compare, increment, and validate semantic versions
47
+ - **Registry Client** - Query npm registry for published versions and package metadata
48
+ - **Composable Operations** - Build complex versioning workflows from simple, pure functions
49
+ - **Zero External Dependencies** - Self-contained implementation with no third-party runtime dependencies
50
+
51
+ ### Architecture Highlights
52
+
53
+ Built on a purely functional architecture with factory functions and immutable data structures. All parsing uses character-by-character state machines for predictable O(n) performance. The library integrates with `@hyperfrontend/project-scope` for virtual file system operations and `@hyperfrontend/data-utils` for deep comparison.
54
+
55
+ 👉 See [ARCHITECTURE.md](./ARCHITECTURE.md) for detailed design principles, data flow diagrams, and module composition.
56
+
57
+ ## Why Use @hyperfrontend/versioning?
58
+
59
+ ### Type-Safe Changelog Manipulation
60
+
61
+ Working with CHANGELOG.md files programmatically typically involves fragile string manipulation. This library parses changelogs into fully typed data structures with factory functions for creating entries, sections, and items. Modify changelog content with confidence using immutable operations and round-trip safely back to markdown.
62
+
63
+ ### Unified Versioning Primitives
64
+
65
+ Version management requires coordinating semver parsing, commit analysis, changelog generation, and registry queries. This library provides all these primitives in one cohesive package with consistent APIs. Query npm for published versions, parse commit history, calculate version bumps, and generate changelog entries — all composable into custom release workflows.
66
+
67
+ ### Zero-Dependency CI Integration
68
+
69
+ Designed for automated pipelines where minimal attack surface matters. Zero external runtime dependencies and state-machine parsing ensure predictable performance on any input. All parsers enforce input length limits to prevent resource exhaustion.
70
+
71
+ ## Installation
72
+
73
+ ```bash
74
+ npm install @hyperfrontend/versioning
75
+ ```
76
+
77
+ ## Quick Start
78
+
79
+ ### Parsing a Changelog
80
+
81
+ ```typescript
82
+ import { parseChangelog } from '@hyperfrontend/versioning'
83
+ import fs from 'fs'
84
+
85
+ // Parse existing changelog content
86
+ const content = fs.readFileSync('CHANGELOG.md', 'utf-8')
87
+ const changelog = parseChangelog(content)
88
+
89
+ // Access entries
90
+ for (const entry of changelog.entries) {
91
+ console.log(`Version ${entry.version} - ${entry.date}`)
92
+ for (const section of entry.sections) {
93
+ console.log(` ${section.heading}: ${section.items.length} changes`)
94
+ }
95
+ }
96
+
97
+ // Access metadata
98
+ console.log(changelog.metadata.format) // 'keep-a-changelog', 'conventional', etc.
99
+ ```
100
+
101
+ ### Parsing Conventional Commits
102
+
103
+ ```typescript
104
+ import { parseConventionalCommit } from '@hyperfrontend/versioning'
105
+
106
+ const commit = parseConventionalCommit('feat(api): add user authentication')
107
+
108
+ console.log(commit.type) // 'feat'
109
+ console.log(commit.scope) // 'api'
110
+ console.log(commit.subject) // 'add user authentication'
111
+ console.log(commit.breaking) // false
112
+ ```
113
+
114
+ ### Checking for Breaking Changes
115
+
116
+ ```typescript
117
+ import { parseConventionalCommit } from '@hyperfrontend/versioning'
118
+
119
+ // Breaking change via !
120
+ const commit1 = parseConventionalCommit('feat(api)!: remove deprecated endpoint')
121
+ console.log(commit1.breaking) // true
122
+
123
+ // Breaking change via footer
124
+ const commit2 = parseConventionalCommit(\`fix: update API response format
125
+
126
+ BREAKING CHANGE: Response structure has changed\`)
127
+ console.log(commit2.breaking) // true
128
+ console.log(commit2.breakingDescription) // 'Response structure has changed'
129
+ ```
130
+
131
+ ## API Overview
132
+
133
+ ### Changelog Models
134
+
135
+ - **Changelog** - Complete representation of a CHANGELOG.md file
136
+ - **ChangelogEntry** - A single version entry with date and sections
137
+ - **ChangelogSection** - A category of changes (Features, Bug Fixes, etc.)
138
+ - **ChangelogItem** - An individual change with description and references
139
+
140
+ ### Commit Models
141
+
142
+ - **ConventionalCommit** - Parsed conventional commit message
143
+ - **CommitType** - Type constants (feat, fix, docs, etc.)
144
+ - **CommitFooter** - Parsed footer/trailer from commit message
145
+
146
+ ### Parser Functions
147
+
148
+ - **parseChangelog(content: string)** - Parse markdown changelog content
149
+ - **parseConventionalCommit(message: string)** - Parse a commit message
150
+ - **tokenize(input: string)** - Low-level tokenizer for changelog content
151
+
152
+ ## Module Documentation
153
+
154
+ | Module | Description | Documentation |
155
+ | ------------ | --------------------------------------- | ----------------------------------- |
156
+ | `changelog/` | Parse and manipulate CHANGELOG.md files | [README](./src/changelog/README.md) |
157
+ | `commits/` | Parse conventional commit messages | [README](./src/commits/README.md) |
158
+ | `semver/` | Semantic version parsing and comparison | [README](./src/semver/README.md) |
159
+ | `registry/` | npm registry client | [README](./src/registry/README.md) |
160
+ | `git/` | Git operations abstraction | [README](./src/git/README.md) |
161
+ | `workspace/` | Project discovery and package.json | [README](./src/workspace/README.md) |
162
+ | `flow/` | Version release workflow orchestration | [README](./src/flow/README.md) |
163
+
164
+ 👉 See [ARCHITECTURE.md](./ARCHITECTURE.md) for module composition diagrams and data flow.
165
+
166
+ ## Compatibility
167
+
168
+ | Platform | Support |
169
+ | -------- | :-----: |
170
+ | Node.js | ✅ |
171
+ | Browser | ❌ |
172
+
173
+ ### Output Formats
174
+
175
+ | Format | File | Tree-Shakeable |
176
+ | ------ | -------------- | :------------: |
177
+ | ESM | `index.esm.js` | ✅ |
178
+ | CJS | `index.cjs.js` | ❌ |
179
+
180
+ ## Security
181
+
182
+ All parsers use state-machine tokenization with O(n) complexity and enforce input length limits (commit messages: 10KB, changelog files: 1MB) to prevent resource exhaustion. Character-by-character parsing eliminates regex-based vulnerabilities.
183
+
184
+ ## Part of hyperfrontend
185
+
186
+ This library is part of the [hyperfrontend](https://github.com/AndrewRedican/hyperfrontend) monorepo.
187
+
188
+ **📖 [Full documentation](https://www.hyperfrontend.dev/docs/libraries/versioning)**
189
+
190
+ - Works seamlessly with [@hyperfrontend/project-scope](https://github.com/AndrewRedican/hyperfrontend/tree/main/libs/project-scope) for virtual file system operations
191
+ - Looking for cryptographic utilities? See [@hyperfrontend/cryptography](https://github.com/AndrewRedican/hyperfrontend/tree/main/libs/cryptography)
192
+
193
+ ## License
194
+
195
+ MIT
package/SECURITY.md ADDED
@@ -0,0 +1,82 @@
1
+ # Security Policy
2
+
3
+ ## Reporting a Vulnerability
4
+
5
+ We take the security of hyperfrontend seriously. If you discover a security vulnerability, please help us protect our users by following responsible disclosure practices.
6
+
7
+ ### How to Report
8
+
9
+ **Please DO NOT report security vulnerabilities through public GitHub issues.**
10
+
11
+ Instead, please report security vulnerabilities directly via email to:
12
+
13
+ **<andrew.redican.mejia@gmail.com>**
14
+
15
+ ### What to Include
16
+
17
+ To help us understand and resolve the issue quickly, please include the following information in your report:
18
+
19
+ - **Description**: A clear description of the vulnerability
20
+ - **Impact**: The potential impact and severity of the issue
21
+ - **Reproduction Steps**: Detailed steps to reproduce the vulnerability
22
+ - **Environment**: The version of hyperfrontend affected, browser/Node.js version, operating system, etc.
23
+ - **Proof of Concept**: If possible, include a minimal code example or proof of concept
24
+ - **Suggested Fix**: If you have ideas on how to fix the issue (optional)
25
+
26
+ ### Response Timeline
27
+
28
+ - **Acknowledgment**: We will acknowledge receipt of your vulnerability report within 2 business days
29
+ - **Initial Assessment**: We will provide an initial assessment within 5 business days
30
+ - **Patch Development**: We aim to develop and test a patch within 10 days of acknowledgment
31
+ - **Public Disclosure**: Please allow at least **10 days** from the initial report before making the vulnerability publicly known
32
+
33
+ This grace period gives us time to:
34
+
35
+ - Verify and reproduce the issue
36
+ - Develop and test a fix
37
+ - Release a patched version
38
+ - Notify users to update their dependencies
39
+
40
+ ### Coordinated Disclosure
41
+
42
+ We believe in coordinated disclosure and appreciate your cooperation in:
43
+
44
+ - Not exploiting the vulnerability beyond what is necessary to demonstrate it
45
+ - Not accessing, modifying, or deleting data that doesn't belong to you
46
+ - Allowing us reasonable time to address the issue before public disclosure
47
+ - Making a good faith effort to avoid privacy violations, data destruction, and service interruption
48
+
49
+ ### Recognition
50
+
51
+ Once the vulnerability is patched and publicly disclosed, we will acknowledge your responsible disclosure in:
52
+
53
+ - Our release notes
54
+ - Our security advisories (if applicable)
55
+ - This SECURITY.md file (with your permission)
56
+
57
+ Thank you for helping keep hyperfrontend and its users safe!
58
+
59
+ ## Security Best Practices
60
+
61
+ When using hyperfrontend in your applications:
62
+
63
+ 1. **Keep Dependencies Updated**: Regularly update to the latest version to receive security patches
64
+ 2. **Content Security Policy**: Implement appropriate CSP headers when embedding features
65
+ 3. **Input Validation**: Validate and sanitize all data passed between features
66
+ 4. **Origin Verification**: Always verify the origin of messages in cross-frame communication
67
+ 5. **Authentication**: Implement proper authentication and authorization for sensitive features
68
+ 6. **HTTPS**: Always serve hyperfrontend features over HTTPS in production
69
+
70
+ ## Security Updates
71
+
72
+ Security updates will be released as patch versions and documented in the [CHANGELOG](https://github.com/AndrewRedican/hyperfrontend/releases) and GitHub Security Advisories.
73
+
74
+ ## Supported Versions
75
+
76
+ We currently provide security updates for:
77
+
78
+ | Version | Supported |
79
+ | ------- | ------------------ |
80
+ | 0.0.x | :white_check_mark: |
81
+
82
+ As the project matures, we will update this table to reflect our long-term support policy.
@@ -0,0 +1,128 @@
1
+ /**
2
+ * Changelog Diff Algorithm
3
+ *
4
+ * Computes structural differences between two changelogs.
5
+ * Identifies added, removed, and modified entries with detailed change tracking.
6
+ */
7
+ import type { Changelog } from '../models/changelog';
8
+ import type { ChangelogEntry, ChangelogItem, ChangelogSection } from '../models/entry';
9
+ /**
10
+ * Represents the diff between two changelogs.
11
+ */
12
+ export interface ChangelogDiff {
13
+ /** Entries added in target but not in source */
14
+ readonly added: readonly ChangelogEntry[];
15
+ /** Entries removed from source but not in target */
16
+ readonly removed: readonly ChangelogEntry[];
17
+ /** Entries present in both but with differences */
18
+ readonly modified: readonly EntryDiff[];
19
+ /** Whether changelogs are structurally identical */
20
+ readonly identical: boolean;
21
+ /** Summary statistics */
22
+ readonly stats: DiffStats;
23
+ }
24
+ /**
25
+ * Statistics about the diff.
26
+ */
27
+ export interface DiffStats {
28
+ /** Number of added entries */
29
+ readonly addedCount: number;
30
+ /** Number of removed entries */
31
+ readonly removedCount: number;
32
+ /** Number of modified entries */
33
+ readonly modifiedCount: number;
34
+ /** Total number of property changes across all modified entries */
35
+ readonly totalChanges: number;
36
+ }
37
+ /**
38
+ * Represents differences in a single entry.
39
+ */
40
+ export interface EntryDiff {
41
+ /** Version of the entry */
42
+ readonly version: string;
43
+ /** Original entry (from source) */
44
+ readonly source: ChangelogEntry;
45
+ /** Modified entry (from target) */
46
+ readonly target: ChangelogEntry;
47
+ /** List of property differences */
48
+ readonly changes: readonly PropertyDiff[];
49
+ /** Sections added in target */
50
+ readonly addedSections: readonly ChangelogSection[];
51
+ /** Sections removed from source */
52
+ readonly removedSections: readonly ChangelogSection[];
53
+ /** Sections that were modified */
54
+ readonly modifiedSections: readonly SectionDiff[];
55
+ }
56
+ /**
57
+ * Represents differences in a single section.
58
+ */
59
+ export interface SectionDiff {
60
+ /** Section type */
61
+ readonly type: string;
62
+ /** Original section (from source) */
63
+ readonly source: ChangelogSection;
64
+ /** Modified section (from target) */
65
+ readonly target: ChangelogSection;
66
+ /** Items added in target */
67
+ readonly addedItems: readonly ChangelogItem[];
68
+ /** Items removed from source */
69
+ readonly removedItems: readonly ChangelogItem[];
70
+ /** Items that were modified */
71
+ readonly modifiedItems: readonly ItemDiff[];
72
+ }
73
+ /**
74
+ * Represents differences in a single item.
75
+ */
76
+ export interface ItemDiff {
77
+ /** Description from source */
78
+ readonly sourceDescription: string;
79
+ /** Source item */
80
+ readonly source: ChangelogItem;
81
+ /** Target item */
82
+ readonly target: ChangelogItem;
83
+ /** List of property changes */
84
+ readonly changes: readonly PropertyDiff[];
85
+ }
86
+ /**
87
+ * Represents a single property difference.
88
+ */
89
+ export interface PropertyDiff {
90
+ /** Path to the property (e.g., ['date'], ['sections', '0', 'heading']) */
91
+ readonly path: readonly string[];
92
+ /** Type of change */
93
+ readonly type: 'added' | 'removed' | 'changed';
94
+ /** Previous value (for 'removed' and 'changed') */
95
+ readonly oldValue?: unknown;
96
+ /** New value (for 'added' and 'changed') */
97
+ readonly newValue?: unknown;
98
+ }
99
+ /**
100
+ * Computes the diff between two changelogs.
101
+ *
102
+ * @param source - The source/original changelog
103
+ * @param target - The target/modified changelog
104
+ * @returns Detailed diff of changes
105
+ *
106
+ * @example
107
+ * ```ts
108
+ * const diff = diffChangelogs(mainChangelog, branchChangelog)
109
+ * console.log(`Added: ${diff.added.length}, Removed: ${diff.removed.length}`)
110
+ * ```
111
+ */
112
+ export declare function diffChangelogs(source: Changelog, target: Changelog): ChangelogDiff;
113
+ /**
114
+ * Computes the diff between two changelog entries.
115
+ *
116
+ * @param source - The source entry
117
+ * @param target - The target entry
118
+ * @returns Detailed entry diff
119
+ */
120
+ export declare function diffEntries(source: ChangelogEntry, target: ChangelogEntry): EntryDiff;
121
+ /**
122
+ * Creates a human-readable summary of a changelog diff.
123
+ *
124
+ * @param diff - The diff to summarize
125
+ * @returns A string summary of the changes
126
+ */
127
+ export declare function summarizeDiff(diff: ChangelogDiff): string;
128
+ //# sourceMappingURL=diff.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"diff.d.ts","sourceRoot":"","sources":["../../../../../../../../libs/versioning/src/changelog/compare/diff.ts"],"names":[],"mappings":"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"}