@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.
- package/ARCHITECTURE.md +593 -0
- package/CHANGELOG.md +35 -0
- package/FUNDING.md +141 -0
- package/LICENSE.md +21 -0
- package/README.md +195 -0
- package/SECURITY.md +82 -0
- package/changelog/compare/diff.d.ts +128 -0
- package/changelog/compare/diff.d.ts.map +1 -0
- package/changelog/compare/index.cjs.js +628 -0
- package/changelog/compare/index.cjs.js.map +1 -0
- package/changelog/compare/index.d.ts +4 -0
- package/changelog/compare/index.d.ts.map +1 -0
- package/changelog/compare/index.esm.js +612 -0
- package/changelog/compare/index.esm.js.map +1 -0
- package/changelog/compare/is-equal.d.ts +114 -0
- package/changelog/compare/is-equal.d.ts.map +1 -0
- package/changelog/index.cjs.js +6448 -0
- package/changelog/index.cjs.js.map +1 -0
- package/changelog/index.d.ts +6 -0
- package/changelog/index.d.ts.map +1 -0
- package/changelog/index.esm.js +6358 -0
- package/changelog/index.esm.js.map +1 -0
- package/changelog/models/changelog.d.ts +86 -0
- package/changelog/models/changelog.d.ts.map +1 -0
- package/changelog/models/commit-ref.d.ts +51 -0
- package/changelog/models/commit-ref.d.ts.map +1 -0
- package/changelog/models/entry.d.ts +84 -0
- package/changelog/models/entry.d.ts.map +1 -0
- package/changelog/models/index.cjs.js +2043 -0
- package/changelog/models/index.cjs.js.map +1 -0
- package/changelog/models/index.d.ts +11 -0
- package/changelog/models/index.d.ts.map +1 -0
- package/changelog/models/index.esm.js +2026 -0
- package/changelog/models/index.esm.js.map +1 -0
- package/changelog/models/schema.d.ts +68 -0
- package/changelog/models/schema.d.ts.map +1 -0
- package/changelog/models/section.d.ts +25 -0
- package/changelog/models/section.d.ts.map +1 -0
- package/changelog/operations/add-entry.d.ts +56 -0
- package/changelog/operations/add-entry.d.ts.map +1 -0
- package/changelog/operations/add-item.d.ts +18 -0
- package/changelog/operations/add-item.d.ts.map +1 -0
- package/changelog/operations/filter-by-predicate.d.ts +81 -0
- package/changelog/operations/filter-by-predicate.d.ts.map +1 -0
- package/changelog/operations/filter-by-range.d.ts +63 -0
- package/changelog/operations/filter-by-range.d.ts.map +1 -0
- package/changelog/operations/filter-entries.d.ts +9 -0
- package/changelog/operations/filter-entries.d.ts.map +1 -0
- package/changelog/operations/index.cjs.js +2455 -0
- package/changelog/operations/index.cjs.js.map +1 -0
- package/changelog/operations/index.d.ts +15 -0
- package/changelog/operations/index.d.ts.map +1 -0
- package/changelog/operations/index.esm.js +2411 -0
- package/changelog/operations/index.esm.js.map +1 -0
- package/changelog/operations/merge.d.ts +88 -0
- package/changelog/operations/merge.d.ts.map +1 -0
- package/changelog/operations/remove-entry.d.ts +45 -0
- package/changelog/operations/remove-entry.d.ts.map +1 -0
- package/changelog/operations/remove-section.d.ts +50 -0
- package/changelog/operations/remove-section.d.ts.map +1 -0
- package/changelog/operations/transform.d.ts +143 -0
- package/changelog/operations/transform.d.ts.map +1 -0
- package/changelog/parse/index.cjs.js +1282 -0
- package/changelog/parse/index.cjs.js.map +1 -0
- package/changelog/parse/index.d.ts +5 -0
- package/changelog/parse/index.d.ts.map +1 -0
- package/changelog/parse/index.esm.js +1275 -0
- package/changelog/parse/index.esm.js.map +1 -0
- package/changelog/parse/line.d.ts +48 -0
- package/changelog/parse/line.d.ts.map +1 -0
- package/changelog/parse/parser.d.ts +16 -0
- package/changelog/parse/parser.d.ts.map +1 -0
- package/changelog/parse/tokenizer.d.ts +49 -0
- package/changelog/parse/tokenizer.d.ts.map +1 -0
- package/changelog/serialize/index.cjs.js +574 -0
- package/changelog/serialize/index.cjs.js.map +1 -0
- package/changelog/serialize/index.d.ts +6 -0
- package/changelog/serialize/index.d.ts.map +1 -0
- package/changelog/serialize/index.esm.js +564 -0
- package/changelog/serialize/index.esm.js.map +1 -0
- package/changelog/serialize/templates.d.ts +81 -0
- package/changelog/serialize/templates.d.ts.map +1 -0
- package/changelog/serialize/to-json.d.ts +57 -0
- package/changelog/serialize/to-json.d.ts.map +1 -0
- package/changelog/serialize/to-string.d.ts +30 -0
- package/changelog/serialize/to-string.d.ts.map +1 -0
- package/commits/index.cjs.js +648 -0
- package/commits/index.cjs.js.map +1 -0
- package/commits/index.d.ts +3 -0
- package/commits/index.d.ts.map +1 -0
- package/commits/index.esm.js +629 -0
- package/commits/index.esm.js.map +1 -0
- package/commits/models/breaking.d.ts +39 -0
- package/commits/models/breaking.d.ts.map +1 -0
- package/commits/models/commit-type.d.ts +32 -0
- package/commits/models/commit-type.d.ts.map +1 -0
- package/commits/models/conventional.d.ts +49 -0
- package/commits/models/conventional.d.ts.map +1 -0
- package/commits/models/index.cjs.js +207 -0
- package/commits/models/index.cjs.js.map +1 -0
- package/commits/models/index.d.ts +7 -0
- package/commits/models/index.d.ts.map +1 -0
- package/commits/models/index.esm.js +193 -0
- package/commits/models/index.esm.js.map +1 -0
- package/commits/parse/body.d.ts +18 -0
- package/commits/parse/body.d.ts.map +1 -0
- package/commits/parse/footer.d.ts +16 -0
- package/commits/parse/footer.d.ts.map +1 -0
- package/commits/parse/header.d.ts +15 -0
- package/commits/parse/header.d.ts.map +1 -0
- package/commits/parse/index.cjs.js +505 -0
- package/commits/parse/index.cjs.js.map +1 -0
- package/commits/parse/index.d.ts +5 -0
- package/commits/parse/index.d.ts.map +1 -0
- package/commits/parse/index.esm.js +499 -0
- package/commits/parse/index.esm.js.map +1 -0
- package/commits/parse/message.d.ts +17 -0
- package/commits/parse/message.d.ts.map +1 -0
- package/commits/utils/replace-char.d.ts +19 -0
- package/commits/utils/replace-char.d.ts.map +1 -0
- package/flow/executor/execute.d.ts +72 -0
- package/flow/executor/execute.d.ts.map +1 -0
- package/flow/executor/index.cjs.js +4402 -0
- package/flow/executor/index.cjs.js.map +1 -0
- package/flow/executor/index.d.ts +3 -0
- package/flow/executor/index.d.ts.map +1 -0
- package/flow/executor/index.esm.js +4398 -0
- package/flow/executor/index.esm.js.map +1 -0
- package/flow/factory.d.ts +58 -0
- package/flow/factory.d.ts.map +1 -0
- package/flow/index.cjs.js +8506 -0
- package/flow/index.cjs.js.map +1 -0
- package/flow/index.d.ts +7 -0
- package/flow/index.d.ts.map +1 -0
- package/flow/index.esm.js +8451 -0
- package/flow/index.esm.js.map +1 -0
- package/flow/models/flow.d.ts +130 -0
- package/flow/models/flow.d.ts.map +1 -0
- package/flow/models/index.cjs.js +285 -0
- package/flow/models/index.cjs.js.map +1 -0
- package/flow/models/index.d.ts +7 -0
- package/flow/models/index.d.ts.map +1 -0
- package/flow/models/index.esm.js +268 -0
- package/flow/models/index.esm.js.map +1 -0
- package/flow/models/step.d.ts +108 -0
- package/flow/models/step.d.ts.map +1 -0
- package/flow/models/types.d.ts +150 -0
- package/flow/models/types.d.ts.map +1 -0
- package/flow/presets/conventional.d.ts +59 -0
- package/flow/presets/conventional.d.ts.map +1 -0
- package/flow/presets/independent.d.ts +61 -0
- package/flow/presets/independent.d.ts.map +1 -0
- package/flow/presets/index.cjs.js +3903 -0
- package/flow/presets/index.cjs.js.map +1 -0
- package/flow/presets/index.d.ts +4 -0
- package/flow/presets/index.d.ts.map +1 -0
- package/flow/presets/index.esm.js +3889 -0
- package/flow/presets/index.esm.js.map +1 -0
- package/flow/presets/synced.d.ts +65 -0
- package/flow/presets/synced.d.ts.map +1 -0
- package/flow/steps/analyze-commits.d.ts +19 -0
- package/flow/steps/analyze-commits.d.ts.map +1 -0
- package/flow/steps/calculate-bump.d.ts +27 -0
- package/flow/steps/calculate-bump.d.ts.map +1 -0
- package/flow/steps/create-commit.d.ts +16 -0
- package/flow/steps/create-commit.d.ts.map +1 -0
- package/flow/steps/create-tag.d.ts +22 -0
- package/flow/steps/create-tag.d.ts.map +1 -0
- package/flow/steps/fetch-registry.d.ts +19 -0
- package/flow/steps/fetch-registry.d.ts.map +1 -0
- package/flow/steps/generate-changelog.d.ts +25 -0
- package/flow/steps/generate-changelog.d.ts.map +1 -0
- package/flow/steps/index.cjs.js +3523 -0
- package/flow/steps/index.cjs.js.map +1 -0
- package/flow/steps/index.d.ts +8 -0
- package/flow/steps/index.d.ts.map +1 -0
- package/flow/steps/index.esm.js +3504 -0
- package/flow/steps/index.esm.js.map +1 -0
- package/flow/steps/update-packages.d.ts +25 -0
- package/flow/steps/update-packages.d.ts.map +1 -0
- package/flow/utils/interpolate.d.ts +11 -0
- package/flow/utils/interpolate.d.ts.map +1 -0
- package/git/factory.d.ts +233 -0
- package/git/factory.d.ts.map +1 -0
- package/git/index.cjs.js +2863 -0
- package/git/index.cjs.js.map +1 -0
- package/git/index.d.ts +5 -0
- package/git/index.d.ts.map +1 -0
- package/git/index.esm.js +2785 -0
- package/git/index.esm.js.map +1 -0
- package/git/models/commit.d.ts +129 -0
- package/git/models/commit.d.ts.map +1 -0
- package/git/models/index.cjs.js +755 -0
- package/git/models/index.cjs.js.map +1 -0
- package/git/models/index.d.ts +7 -0
- package/git/models/index.d.ts.map +1 -0
- package/git/models/index.esm.js +729 -0
- package/git/models/index.esm.js.map +1 -0
- package/git/models/ref.d.ts +120 -0
- package/git/models/ref.d.ts.map +1 -0
- package/git/models/tag.d.ts +141 -0
- package/git/models/tag.d.ts.map +1 -0
- package/git/operations/commit.d.ts +97 -0
- package/git/operations/commit.d.ts.map +1 -0
- package/git/operations/head-info.d.ts +29 -0
- package/git/operations/head-info.d.ts.map +1 -0
- package/git/operations/index.cjs.js +1954 -0
- package/git/operations/index.cjs.js.map +1 -0
- package/git/operations/index.d.ts +14 -0
- package/git/operations/index.d.ts.map +1 -0
- package/git/operations/index.esm.js +1903 -0
- package/git/operations/index.esm.js.map +1 -0
- package/git/operations/log.d.ts +104 -0
- package/git/operations/log.d.ts.map +1 -0
- package/git/operations/manage-tags.d.ts +60 -0
- package/git/operations/manage-tags.d.ts.map +1 -0
- package/git/operations/query-tags.d.ts +88 -0
- package/git/operations/query-tags.d.ts.map +1 -0
- package/git/operations/stage.d.ts +66 -0
- package/git/operations/stage.d.ts.map +1 -0
- package/git/operations/status.d.ts +173 -0
- package/git/operations/status.d.ts.map +1 -0
- package/index.cjs.js +16761 -0
- package/index.cjs.js.map +1 -0
- package/index.d.ts +102 -0
- package/index.d.ts.map +1 -0
- package/index.esm.js +16427 -0
- package/index.esm.js.map +1 -0
- package/package.json +200 -0
- package/registry/factory.d.ts +18 -0
- package/registry/factory.d.ts.map +1 -0
- package/registry/index.cjs.js +543 -0
- package/registry/index.cjs.js.map +1 -0
- package/registry/index.d.ts +5 -0
- package/registry/index.d.ts.map +1 -0
- package/registry/index.esm.js +535 -0
- package/registry/index.esm.js.map +1 -0
- package/registry/models/index.cjs.js +69 -0
- package/registry/models/index.cjs.js.map +1 -0
- package/registry/models/index.d.ts +6 -0
- package/registry/models/index.d.ts.map +1 -0
- package/registry/models/index.esm.js +66 -0
- package/registry/models/index.esm.js.map +1 -0
- package/registry/models/package-info.d.ts +55 -0
- package/registry/models/package-info.d.ts.map +1 -0
- package/registry/models/registry.d.ts +62 -0
- package/registry/models/registry.d.ts.map +1 -0
- package/registry/models/version-info.d.ts +67 -0
- package/registry/models/version-info.d.ts.map +1 -0
- package/registry/npm/cache.d.ts +50 -0
- package/registry/npm/cache.d.ts.map +1 -0
- package/registry/npm/client.d.ts +30 -0
- package/registry/npm/client.d.ts.map +1 -0
- package/registry/npm/index.cjs.js +456 -0
- package/registry/npm/index.cjs.js.map +1 -0
- package/registry/npm/index.d.ts +4 -0
- package/registry/npm/index.d.ts.map +1 -0
- package/registry/npm/index.esm.js +451 -0
- package/registry/npm/index.esm.js.map +1 -0
- package/semver/compare/compare.d.ts +100 -0
- package/semver/compare/compare.d.ts.map +1 -0
- package/semver/compare/index.cjs.js +386 -0
- package/semver/compare/index.cjs.js.map +1 -0
- package/semver/compare/index.d.ts +3 -0
- package/semver/compare/index.d.ts.map +1 -0
- package/semver/compare/index.esm.js +370 -0
- package/semver/compare/index.esm.js.map +1 -0
- package/semver/compare/sort.d.ts +36 -0
- package/semver/compare/sort.d.ts.map +1 -0
- package/semver/format/index.cjs.js +58 -0
- package/semver/format/index.cjs.js.map +1 -0
- package/semver/format/index.d.ts +2 -0
- package/semver/format/index.d.ts.map +1 -0
- package/semver/format/index.esm.js +53 -0
- package/semver/format/index.esm.js.map +1 -0
- package/semver/format/to-string.d.ts +31 -0
- package/semver/format/to-string.d.ts.map +1 -0
- package/semver/increment/bump.d.ts +37 -0
- package/semver/increment/bump.d.ts.map +1 -0
- package/semver/increment/index.cjs.js +223 -0
- package/semver/increment/index.cjs.js.map +1 -0
- package/semver/increment/index.d.ts +2 -0
- package/semver/increment/index.d.ts.map +1 -0
- package/semver/increment/index.esm.js +219 -0
- package/semver/increment/index.esm.js.map +1 -0
- package/semver/index.cjs.js +1499 -0
- package/semver/index.cjs.js.map +1 -0
- package/semver/index.d.ts +6 -0
- package/semver/index.d.ts.map +1 -0
- package/semver/index.esm.js +1458 -0
- package/semver/index.esm.js.map +1 -0
- package/semver/models/index.cjs.js +153 -0
- package/semver/models/index.cjs.js.map +1 -0
- package/semver/models/index.d.ts +5 -0
- package/semver/models/index.d.ts.map +1 -0
- package/semver/models/index.esm.js +139 -0
- package/semver/models/index.esm.js.map +1 -0
- package/semver/models/range.d.ts +83 -0
- package/semver/models/range.d.ts.map +1 -0
- package/semver/models/version.d.ts +78 -0
- package/semver/models/version.d.ts.map +1 -0
- package/semver/parse/index.cjs.js +799 -0
- package/semver/parse/index.cjs.js.map +1 -0
- package/semver/parse/index.d.ts +5 -0
- package/semver/parse/index.d.ts.map +1 -0
- package/semver/parse/index.esm.js +793 -0
- package/semver/parse/index.esm.js.map +1 -0
- package/semver/parse/range.d.ts +38 -0
- package/semver/parse/range.d.ts.map +1 -0
- package/semver/parse/version.d.ts +49 -0
- package/semver/parse/version.d.ts.map +1 -0
- package/workspace/discovery/changelog-path.d.ts +21 -0
- package/workspace/discovery/changelog-path.d.ts.map +1 -0
- package/workspace/discovery/dependencies.d.ts +145 -0
- package/workspace/discovery/dependencies.d.ts.map +1 -0
- package/workspace/discovery/discover-changelogs.d.ts +76 -0
- package/workspace/discovery/discover-changelogs.d.ts.map +1 -0
- package/workspace/discovery/index.cjs.js +2300 -0
- package/workspace/discovery/index.cjs.js.map +1 -0
- package/workspace/discovery/index.d.ts +13 -0
- package/workspace/discovery/index.d.ts.map +1 -0
- package/workspace/discovery/index.esm.js +2283 -0
- package/workspace/discovery/index.esm.js.map +1 -0
- package/workspace/discovery/packages.d.ts +83 -0
- package/workspace/discovery/packages.d.ts.map +1 -0
- package/workspace/index.cjs.js +4445 -0
- package/workspace/index.cjs.js.map +1 -0
- package/workspace/index.d.ts +52 -0
- package/workspace/index.d.ts.map +1 -0
- package/workspace/index.esm.js +4394 -0
- package/workspace/index.esm.js.map +1 -0
- package/workspace/models/index.cjs.js +284 -0
- package/workspace/models/index.cjs.js.map +1 -0
- package/workspace/models/index.d.ts +10 -0
- package/workspace/models/index.d.ts.map +1 -0
- package/workspace/models/index.esm.js +261 -0
- package/workspace/models/index.esm.js.map +1 -0
- package/workspace/models/project.d.ts +118 -0
- package/workspace/models/project.d.ts.map +1 -0
- package/workspace/models/workspace.d.ts +139 -0
- package/workspace/models/workspace.d.ts.map +1 -0
- package/workspace/operations/batch-update.d.ts +99 -0
- package/workspace/operations/batch-update.d.ts.map +1 -0
- package/workspace/operations/cascade-bump.d.ts +125 -0
- package/workspace/operations/cascade-bump.d.ts.map +1 -0
- package/workspace/operations/index.cjs.js +2675 -0
- package/workspace/operations/index.cjs.js.map +1 -0
- package/workspace/operations/index.d.ts +12 -0
- package/workspace/operations/index.d.ts.map +1 -0
- package/workspace/operations/index.esm.js +2663 -0
- package/workspace/operations/index.esm.js.map +1 -0
- package/workspace/operations/validate.d.ts +85 -0
- package/workspace/operations/validate.d.ts.map +1 -0
|
@@ -0,0 +1,612 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Safe copies of Set built-in via factory function.
|
|
3
|
+
*
|
|
4
|
+
* Since constructors cannot be safely captured via Object.assign, this module
|
|
5
|
+
* provides a factory function that uses Reflect.construct internally.
|
|
6
|
+
*
|
|
7
|
+
* These references are captured at module initialization time to protect against
|
|
8
|
+
* prototype pollution attacks. Import only what you need for tree-shaking.
|
|
9
|
+
*
|
|
10
|
+
* @module @hyperfrontend/immutable-api-utils/built-in-copy/set
|
|
11
|
+
*/
|
|
12
|
+
// Capture references at module initialization time
|
|
13
|
+
const _Set = globalThis.Set;
|
|
14
|
+
const _Reflect$1 = globalThis.Reflect;
|
|
15
|
+
/**
|
|
16
|
+
* (Safe copy) Creates a new Set using the captured Set constructor.
|
|
17
|
+
* Use this instead of `new Set()`.
|
|
18
|
+
*
|
|
19
|
+
* @param iterable - Optional iterable of values.
|
|
20
|
+
* @returns A new Set instance.
|
|
21
|
+
*/
|
|
22
|
+
const createSet = (iterable) => _Reflect$1.construct(_Set, iterable ? [iterable] : []);
|
|
23
|
+
|
|
24
|
+
/**
|
|
25
|
+
* Changelog Equality Comparison
|
|
26
|
+
*
|
|
27
|
+
* Functions for comparing changelogs for structural equality.
|
|
28
|
+
* Uses deep comparison without relying on JSON serialization.
|
|
29
|
+
*/
|
|
30
|
+
/**
|
|
31
|
+
* Checks if two changelogs are structurally identical.
|
|
32
|
+
*
|
|
33
|
+
* @param a - First changelog
|
|
34
|
+
* @param b - Second changelog
|
|
35
|
+
* @returns True if changelogs are identical
|
|
36
|
+
*
|
|
37
|
+
* @example
|
|
38
|
+
* ```ts
|
|
39
|
+
* if (isChangelogEqual(mainChangelog, branchChangelog)) {
|
|
40
|
+
* console.log('Changelogs are identical')
|
|
41
|
+
* }
|
|
42
|
+
* ```
|
|
43
|
+
*/
|
|
44
|
+
function isChangelogEqual(a, b) {
|
|
45
|
+
// Check source (optional field)
|
|
46
|
+
if (a.source !== b.source)
|
|
47
|
+
return false;
|
|
48
|
+
// Check header
|
|
49
|
+
if (!isHeaderEqual(a.header, b.header))
|
|
50
|
+
return false;
|
|
51
|
+
// Check entries
|
|
52
|
+
if (a.entries.length !== b.entries.length)
|
|
53
|
+
return false;
|
|
54
|
+
for (let i = 0; i < a.entries.length; i++) {
|
|
55
|
+
if (!isEntryEqual(a.entries[i], b.entries[i]))
|
|
56
|
+
return false;
|
|
57
|
+
}
|
|
58
|
+
// Check metadata
|
|
59
|
+
if (!isMetadataEqual(a.metadata, b.metadata))
|
|
60
|
+
return false;
|
|
61
|
+
return true;
|
|
62
|
+
}
|
|
63
|
+
/**
|
|
64
|
+
* Checks if two changelog headers are equal.
|
|
65
|
+
*
|
|
66
|
+
* @param a - First header
|
|
67
|
+
* @param b - Second header
|
|
68
|
+
* @returns True if headers are equal
|
|
69
|
+
*/
|
|
70
|
+
function isHeaderEqual(a, b) {
|
|
71
|
+
if (a.title !== b.title)
|
|
72
|
+
return false;
|
|
73
|
+
// Check description
|
|
74
|
+
if (a.description.length !== b.description.length)
|
|
75
|
+
return false;
|
|
76
|
+
for (let i = 0; i < a.description.length; i++) {
|
|
77
|
+
if (a.description[i] !== b.description[i])
|
|
78
|
+
return false;
|
|
79
|
+
}
|
|
80
|
+
// Check links
|
|
81
|
+
if (a.links.length !== b.links.length)
|
|
82
|
+
return false;
|
|
83
|
+
for (let i = 0; i < a.links.length; i++) {
|
|
84
|
+
if (!isLinkEqual(a.links[i], b.links[i]))
|
|
85
|
+
return false;
|
|
86
|
+
}
|
|
87
|
+
return true;
|
|
88
|
+
}
|
|
89
|
+
/**
|
|
90
|
+
* Checks if two changelog links are equal.
|
|
91
|
+
*
|
|
92
|
+
* @param a - First link
|
|
93
|
+
* @param b - Second link
|
|
94
|
+
* @returns True if links are equal
|
|
95
|
+
*/
|
|
96
|
+
function isLinkEqual(a, b) {
|
|
97
|
+
return a.label === b.label && a.url === b.url;
|
|
98
|
+
}
|
|
99
|
+
/**
|
|
100
|
+
* Checks if two changelog entries are equal.
|
|
101
|
+
*
|
|
102
|
+
* @param a - First entry
|
|
103
|
+
* @param b - Second entry
|
|
104
|
+
* @returns True if entries are equal
|
|
105
|
+
*/
|
|
106
|
+
function isEntryEqual(a, b) {
|
|
107
|
+
if (a.version !== b.version)
|
|
108
|
+
return false;
|
|
109
|
+
if (a.date !== b.date)
|
|
110
|
+
return false;
|
|
111
|
+
if (a.unreleased !== b.unreleased)
|
|
112
|
+
return false;
|
|
113
|
+
if (a.compareUrl !== b.compareUrl)
|
|
114
|
+
return false;
|
|
115
|
+
if (a.rawContent !== b.rawContent)
|
|
116
|
+
return false;
|
|
117
|
+
// Check sections
|
|
118
|
+
if (a.sections.length !== b.sections.length)
|
|
119
|
+
return false;
|
|
120
|
+
for (let i = 0; i < a.sections.length; i++) {
|
|
121
|
+
if (!isSectionEqual(a.sections[i], b.sections[i]))
|
|
122
|
+
return false;
|
|
123
|
+
}
|
|
124
|
+
return true;
|
|
125
|
+
}
|
|
126
|
+
/**
|
|
127
|
+
* Checks if two changelog sections are equal.
|
|
128
|
+
*
|
|
129
|
+
* @param a - First section
|
|
130
|
+
* @param b - Second section
|
|
131
|
+
* @returns True if sections are equal
|
|
132
|
+
*/
|
|
133
|
+
function isSectionEqual(a, b) {
|
|
134
|
+
if (a.type !== b.type)
|
|
135
|
+
return false;
|
|
136
|
+
if (a.heading !== b.heading)
|
|
137
|
+
return false;
|
|
138
|
+
// Check items
|
|
139
|
+
if (a.items.length !== b.items.length)
|
|
140
|
+
return false;
|
|
141
|
+
for (let i = 0; i < a.items.length; i++) {
|
|
142
|
+
if (!isItemEqual(a.items[i], b.items[i]))
|
|
143
|
+
return false;
|
|
144
|
+
}
|
|
145
|
+
return true;
|
|
146
|
+
}
|
|
147
|
+
/**
|
|
148
|
+
* Checks if two changelog items are equal.
|
|
149
|
+
*
|
|
150
|
+
* @param a - First item
|
|
151
|
+
* @param b - Second item
|
|
152
|
+
* @returns True if items are equal
|
|
153
|
+
*/
|
|
154
|
+
function isItemEqual(a, b) {
|
|
155
|
+
if (a.scope !== b.scope)
|
|
156
|
+
return false;
|
|
157
|
+
if (a.description !== b.description)
|
|
158
|
+
return false;
|
|
159
|
+
if (a.breaking !== b.breaking)
|
|
160
|
+
return false;
|
|
161
|
+
// Check commits
|
|
162
|
+
if (a.commits.length !== b.commits.length)
|
|
163
|
+
return false;
|
|
164
|
+
for (let i = 0; i < a.commits.length; i++) {
|
|
165
|
+
if (!isCommitRefEqual(a.commits[i], b.commits[i]))
|
|
166
|
+
return false;
|
|
167
|
+
}
|
|
168
|
+
// Check references
|
|
169
|
+
if (a.references.length !== b.references.length)
|
|
170
|
+
return false;
|
|
171
|
+
for (let i = 0; i < a.references.length; i++) {
|
|
172
|
+
if (!isIssueRefEqual(a.references[i], b.references[i]))
|
|
173
|
+
return false;
|
|
174
|
+
}
|
|
175
|
+
return true;
|
|
176
|
+
}
|
|
177
|
+
/**
|
|
178
|
+
* Checks if two commit references are equal.
|
|
179
|
+
*
|
|
180
|
+
* @param a - First commit ref
|
|
181
|
+
* @param b - Second commit ref
|
|
182
|
+
* @returns True if commit refs are equal
|
|
183
|
+
*/
|
|
184
|
+
function isCommitRefEqual(a, b) {
|
|
185
|
+
return a.hash === b.hash && a.shortHash === b.shortHash && a.url === b.url;
|
|
186
|
+
}
|
|
187
|
+
/**
|
|
188
|
+
* Checks if two issue references are equal.
|
|
189
|
+
*
|
|
190
|
+
* @param a - First issue ref
|
|
191
|
+
* @param b - Second issue ref
|
|
192
|
+
* @returns True if issue refs are equal
|
|
193
|
+
*/
|
|
194
|
+
function isIssueRefEqual(a, b) {
|
|
195
|
+
return a.number === b.number && a.type === b.type && a.url === b.url;
|
|
196
|
+
}
|
|
197
|
+
/**
|
|
198
|
+
* Checks if two changelog metadata objects are equal.
|
|
199
|
+
*
|
|
200
|
+
* @param a - First metadata
|
|
201
|
+
* @param b - Second metadata
|
|
202
|
+
* @returns True if metadata are equal
|
|
203
|
+
*/
|
|
204
|
+
function isMetadataEqual(a, b) {
|
|
205
|
+
if (a.format !== b.format)
|
|
206
|
+
return false;
|
|
207
|
+
if (a.isConventional !== b.isConventional)
|
|
208
|
+
return false;
|
|
209
|
+
if (a.repositoryUrl !== b.repositoryUrl)
|
|
210
|
+
return false;
|
|
211
|
+
if (a.packageName !== b.packageName)
|
|
212
|
+
return false;
|
|
213
|
+
// Check warnings
|
|
214
|
+
if (a.warnings.length !== b.warnings.length)
|
|
215
|
+
return false;
|
|
216
|
+
for (let i = 0; i < a.warnings.length; i++) {
|
|
217
|
+
if (a.warnings[i] !== b.warnings[i])
|
|
218
|
+
return false;
|
|
219
|
+
}
|
|
220
|
+
return true;
|
|
221
|
+
}
|
|
222
|
+
/**
|
|
223
|
+
* Checks if two changelogs have the same entries (by version).
|
|
224
|
+
* Does not compare entry contents, only versions present.
|
|
225
|
+
*
|
|
226
|
+
* @param a - First changelog
|
|
227
|
+
* @param b - Second changelog
|
|
228
|
+
* @returns True if both changelogs have the same versions
|
|
229
|
+
*/
|
|
230
|
+
function haveSameVersions(a, b) {
|
|
231
|
+
if (a.entries.length !== b.entries.length)
|
|
232
|
+
return false;
|
|
233
|
+
const versionsA = createSet(a.entries.map((e) => e.version));
|
|
234
|
+
const versionsB = createSet(b.entries.map((e) => e.version));
|
|
235
|
+
if (versionsA.size !== versionsB.size)
|
|
236
|
+
return false;
|
|
237
|
+
for (const version of versionsA) {
|
|
238
|
+
if (!versionsB.has(version))
|
|
239
|
+
return false;
|
|
240
|
+
}
|
|
241
|
+
return true;
|
|
242
|
+
}
|
|
243
|
+
/**
|
|
244
|
+
* Checks if a changelog contains a specific version.
|
|
245
|
+
*
|
|
246
|
+
* @param changelog - The changelog to search
|
|
247
|
+
* @param version - The version to look for
|
|
248
|
+
* @returns True if the version exists in the changelog
|
|
249
|
+
*/
|
|
250
|
+
function hasVersion(changelog, version) {
|
|
251
|
+
return changelog.entries.some((e) => e.version === version);
|
|
252
|
+
}
|
|
253
|
+
/**
|
|
254
|
+
* Gets an entry by version from a changelog.
|
|
255
|
+
*
|
|
256
|
+
* @param changelog - The changelog to search
|
|
257
|
+
* @param version - The version to find
|
|
258
|
+
* @returns The entry if found, undefined otherwise
|
|
259
|
+
*/
|
|
260
|
+
function getEntryByVersion(changelog, version) {
|
|
261
|
+
return changelog.entries.find((e) => e.version === version);
|
|
262
|
+
}
|
|
263
|
+
|
|
264
|
+
/**
|
|
265
|
+
* Safe copies of Map built-in via factory function.
|
|
266
|
+
*
|
|
267
|
+
* Since constructors cannot be safely captured via Object.assign, this module
|
|
268
|
+
* provides a factory function that uses Reflect.construct internally.
|
|
269
|
+
*
|
|
270
|
+
* These references are captured at module initialization time to protect against
|
|
271
|
+
* prototype pollution attacks. Import only what you need for tree-shaking.
|
|
272
|
+
*
|
|
273
|
+
* @module @hyperfrontend/immutable-api-utils/built-in-copy/map
|
|
274
|
+
*/
|
|
275
|
+
// Capture references at module initialization time
|
|
276
|
+
const _Map = globalThis.Map;
|
|
277
|
+
const _Reflect = globalThis.Reflect;
|
|
278
|
+
/**
|
|
279
|
+
* (Safe copy) Creates a new Map using the captured Map constructor.
|
|
280
|
+
* Use this instead of `new Map()`.
|
|
281
|
+
*
|
|
282
|
+
* @param iterable - Optional iterable of key-value pairs.
|
|
283
|
+
* @returns A new Map instance.
|
|
284
|
+
*/
|
|
285
|
+
const createMap = (iterable) => _Reflect.construct(_Map, iterable ? [iterable] : []);
|
|
286
|
+
|
|
287
|
+
/**
|
|
288
|
+
* Changelog Diff Algorithm
|
|
289
|
+
*
|
|
290
|
+
* Computes structural differences between two changelogs.
|
|
291
|
+
* Identifies added, removed, and modified entries with detailed change tracking.
|
|
292
|
+
*/
|
|
293
|
+
/**
|
|
294
|
+
* Computes the diff between two changelogs.
|
|
295
|
+
*
|
|
296
|
+
* @param source - The source/original changelog
|
|
297
|
+
* @param target - The target/modified changelog
|
|
298
|
+
* @returns Detailed diff of changes
|
|
299
|
+
*
|
|
300
|
+
* @example
|
|
301
|
+
* ```ts
|
|
302
|
+
* const diff = diffChangelogs(mainChangelog, branchChangelog)
|
|
303
|
+
* console.log(`Added: ${diff.added.length}, Removed: ${diff.removed.length}`)
|
|
304
|
+
* ```
|
|
305
|
+
*/
|
|
306
|
+
function diffChangelogs(source, target) {
|
|
307
|
+
// Build version maps for efficient lookup
|
|
308
|
+
const sourceVersions = createMap();
|
|
309
|
+
const targetVersions = createMap();
|
|
310
|
+
for (const entry of source.entries) {
|
|
311
|
+
sourceVersions.set(entry.version, entry);
|
|
312
|
+
}
|
|
313
|
+
for (const entry of target.entries) {
|
|
314
|
+
targetVersions.set(entry.version, entry);
|
|
315
|
+
}
|
|
316
|
+
const added = [];
|
|
317
|
+
const removed = [];
|
|
318
|
+
const modified = [];
|
|
319
|
+
// Find added entries (in target but not in source)
|
|
320
|
+
for (const [version, entry] of targetVersions) {
|
|
321
|
+
if (!sourceVersions.has(version)) {
|
|
322
|
+
added.push(entry);
|
|
323
|
+
}
|
|
324
|
+
}
|
|
325
|
+
// Find removed entries (in source but not in target)
|
|
326
|
+
for (const [version, entry] of sourceVersions) {
|
|
327
|
+
if (!targetVersions.has(version)) {
|
|
328
|
+
removed.push(entry);
|
|
329
|
+
}
|
|
330
|
+
}
|
|
331
|
+
// Find modified entries (in both but different)
|
|
332
|
+
for (const [version, sourceEntry] of sourceVersions) {
|
|
333
|
+
const targetEntry = targetVersions.get(version);
|
|
334
|
+
if (targetEntry && !isEntryEqual(sourceEntry, targetEntry)) {
|
|
335
|
+
const entryDiff = diffEntries(sourceEntry, targetEntry);
|
|
336
|
+
modified.push(entryDiff);
|
|
337
|
+
}
|
|
338
|
+
}
|
|
339
|
+
const identical = added.length === 0 && removed.length === 0 && modified.length === 0;
|
|
340
|
+
const totalChanges = modified.reduce((sum, m) => sum +
|
|
341
|
+
m.changes.length +
|
|
342
|
+
m.addedSections.length +
|
|
343
|
+
m.removedSections.length +
|
|
344
|
+
m.modifiedSections.reduce((s, ms) => s + ms.addedItems.length + ms.removedItems.length + ms.modifiedItems.length, 0), 0);
|
|
345
|
+
return {
|
|
346
|
+
added,
|
|
347
|
+
removed,
|
|
348
|
+
modified,
|
|
349
|
+
identical,
|
|
350
|
+
stats: {
|
|
351
|
+
addedCount: added.length,
|
|
352
|
+
removedCount: removed.length,
|
|
353
|
+
modifiedCount: modified.length,
|
|
354
|
+
totalChanges,
|
|
355
|
+
},
|
|
356
|
+
};
|
|
357
|
+
}
|
|
358
|
+
/**
|
|
359
|
+
* Computes the diff between two changelog entries.
|
|
360
|
+
*
|
|
361
|
+
* @param source - The source entry
|
|
362
|
+
* @param target - The target entry
|
|
363
|
+
* @returns Detailed entry diff
|
|
364
|
+
*/
|
|
365
|
+
function diffEntries(source, target) {
|
|
366
|
+
const changes = [];
|
|
367
|
+
// Check scalar properties
|
|
368
|
+
if (source.date !== target.date) {
|
|
369
|
+
changes.push({
|
|
370
|
+
path: ['date'],
|
|
371
|
+
type: source.date === null ? 'added' : target.date === null ? 'removed' : 'changed',
|
|
372
|
+
oldValue: source.date,
|
|
373
|
+
newValue: target.date,
|
|
374
|
+
});
|
|
375
|
+
}
|
|
376
|
+
if (source.unreleased !== target.unreleased) {
|
|
377
|
+
changes.push({
|
|
378
|
+
path: ['unreleased'],
|
|
379
|
+
type: 'changed',
|
|
380
|
+
oldValue: source.unreleased,
|
|
381
|
+
newValue: target.unreleased,
|
|
382
|
+
});
|
|
383
|
+
}
|
|
384
|
+
if (source.compareUrl !== target.compareUrl) {
|
|
385
|
+
changes.push({
|
|
386
|
+
path: ['compareUrl'],
|
|
387
|
+
type: source.compareUrl === undefined ? 'added' : target.compareUrl === undefined ? 'removed' : 'changed',
|
|
388
|
+
oldValue: source.compareUrl,
|
|
389
|
+
newValue: target.compareUrl,
|
|
390
|
+
});
|
|
391
|
+
}
|
|
392
|
+
if (source.rawContent !== target.rawContent) {
|
|
393
|
+
changes.push({
|
|
394
|
+
path: ['rawContent'],
|
|
395
|
+
type: source.rawContent === undefined ? 'added' : target.rawContent === undefined ? 'removed' : 'changed',
|
|
396
|
+
oldValue: source.rawContent,
|
|
397
|
+
newValue: target.rawContent,
|
|
398
|
+
});
|
|
399
|
+
}
|
|
400
|
+
// Diff sections
|
|
401
|
+
const { added: addedSections, removed: removedSections, modified: modifiedSections } = diffSections(source.sections, target.sections);
|
|
402
|
+
return {
|
|
403
|
+
version: source.version,
|
|
404
|
+
source,
|
|
405
|
+
target,
|
|
406
|
+
changes,
|
|
407
|
+
addedSections,
|
|
408
|
+
removedSections,
|
|
409
|
+
modifiedSections,
|
|
410
|
+
};
|
|
411
|
+
}
|
|
412
|
+
/**
|
|
413
|
+
* Diffs two section arrays.
|
|
414
|
+
*
|
|
415
|
+
* @param sourceSections - Array of sections from the source changelog
|
|
416
|
+
* @param targetSections - Array of sections from the target changelog
|
|
417
|
+
* @returns Diff result with added, removed, and modified sections
|
|
418
|
+
*/
|
|
419
|
+
function diffSections(sourceSections, targetSections) {
|
|
420
|
+
// Map by type for comparison
|
|
421
|
+
const sourceByType = createMap();
|
|
422
|
+
const targetByType = createMap();
|
|
423
|
+
for (const section of sourceSections) {
|
|
424
|
+
sourceByType.set(section.type, section);
|
|
425
|
+
}
|
|
426
|
+
for (const section of targetSections) {
|
|
427
|
+
targetByType.set(section.type, section);
|
|
428
|
+
}
|
|
429
|
+
const added = [];
|
|
430
|
+
const removed = [];
|
|
431
|
+
const modified = [];
|
|
432
|
+
// Find added sections
|
|
433
|
+
for (const [type, section] of targetByType) {
|
|
434
|
+
if (!sourceByType.has(type)) {
|
|
435
|
+
added.push(section);
|
|
436
|
+
}
|
|
437
|
+
}
|
|
438
|
+
// Find removed sections
|
|
439
|
+
for (const [type, section] of sourceByType) {
|
|
440
|
+
if (!targetByType.has(type)) {
|
|
441
|
+
removed.push(section);
|
|
442
|
+
}
|
|
443
|
+
}
|
|
444
|
+
// Find modified sections
|
|
445
|
+
for (const [type, sourceSection] of sourceByType) {
|
|
446
|
+
const targetSection = targetByType.get(type);
|
|
447
|
+
if (targetSection && !isSectionEqual(sourceSection, targetSection)) {
|
|
448
|
+
const sectionDiff = diffSection(sourceSection, targetSection);
|
|
449
|
+
modified.push(sectionDiff);
|
|
450
|
+
}
|
|
451
|
+
}
|
|
452
|
+
return { added, removed, modified };
|
|
453
|
+
}
|
|
454
|
+
/**
|
|
455
|
+
* Diffs two sections.
|
|
456
|
+
*
|
|
457
|
+
* @param source - Section from the source changelog to compare
|
|
458
|
+
* @param target - Section from the target changelog to compare against
|
|
459
|
+
* @returns Detailed section diff
|
|
460
|
+
*/
|
|
461
|
+
function diffSection(source, target) {
|
|
462
|
+
// Use description as key for matching items
|
|
463
|
+
const sourceByDesc = createMap();
|
|
464
|
+
const targetByDesc = createMap();
|
|
465
|
+
for (const item of source.items) {
|
|
466
|
+
sourceByDesc.set(item.description, item);
|
|
467
|
+
}
|
|
468
|
+
for (const item of target.items) {
|
|
469
|
+
targetByDesc.set(item.description, item);
|
|
470
|
+
}
|
|
471
|
+
const addedItems = [];
|
|
472
|
+
const removedItems = [];
|
|
473
|
+
const modifiedItems = [];
|
|
474
|
+
// Find added items
|
|
475
|
+
for (const [desc, item] of targetByDesc) {
|
|
476
|
+
if (!sourceByDesc.has(desc)) {
|
|
477
|
+
addedItems.push(item);
|
|
478
|
+
}
|
|
479
|
+
}
|
|
480
|
+
// Find removed items
|
|
481
|
+
for (const [desc, item] of sourceByDesc) {
|
|
482
|
+
if (!targetByDesc.has(desc)) {
|
|
483
|
+
removedItems.push(item);
|
|
484
|
+
}
|
|
485
|
+
}
|
|
486
|
+
// Find modified items
|
|
487
|
+
for (const [desc, sourceItem] of sourceByDesc) {
|
|
488
|
+
const targetItem = targetByDesc.get(desc);
|
|
489
|
+
if (targetItem && !isItemEqual(sourceItem, targetItem)) {
|
|
490
|
+
const itemDiff = diffItem(sourceItem, targetItem);
|
|
491
|
+
modifiedItems.push(itemDiff);
|
|
492
|
+
}
|
|
493
|
+
}
|
|
494
|
+
return {
|
|
495
|
+
type: source.type,
|
|
496
|
+
source,
|
|
497
|
+
target,
|
|
498
|
+
addedItems,
|
|
499
|
+
removedItems,
|
|
500
|
+
modifiedItems,
|
|
501
|
+
};
|
|
502
|
+
}
|
|
503
|
+
/**
|
|
504
|
+
* Diffs two changelog items.
|
|
505
|
+
*
|
|
506
|
+
* @param source - The item from the source changelog to compare
|
|
507
|
+
* @param target - The item from the target changelog to compare against
|
|
508
|
+
* @returns Detailed item diff
|
|
509
|
+
*/
|
|
510
|
+
function diffItem(source, target) {
|
|
511
|
+
const changes = [];
|
|
512
|
+
if (source.scope !== target.scope) {
|
|
513
|
+
changes.push({
|
|
514
|
+
path: ['scope'],
|
|
515
|
+
type: source.scope === undefined ? 'added' : target.scope === undefined ? 'removed' : 'changed',
|
|
516
|
+
oldValue: source.scope,
|
|
517
|
+
newValue: target.scope,
|
|
518
|
+
});
|
|
519
|
+
}
|
|
520
|
+
if (source.breaking !== target.breaking) {
|
|
521
|
+
changes.push({
|
|
522
|
+
path: ['breaking'],
|
|
523
|
+
type: 'changed',
|
|
524
|
+
oldValue: source.breaking,
|
|
525
|
+
newValue: target.breaking,
|
|
526
|
+
});
|
|
527
|
+
}
|
|
528
|
+
// Check commits
|
|
529
|
+
if (!areCommitRefsEqual(source.commits, target.commits)) {
|
|
530
|
+
changes.push({
|
|
531
|
+
path: ['commits'],
|
|
532
|
+
type: 'changed',
|
|
533
|
+
oldValue: source.commits,
|
|
534
|
+
newValue: target.commits,
|
|
535
|
+
});
|
|
536
|
+
}
|
|
537
|
+
// Check references
|
|
538
|
+
if (!areIssueRefsEqual(source.references, target.references)) {
|
|
539
|
+
changes.push({
|
|
540
|
+
path: ['references'],
|
|
541
|
+
type: 'changed',
|
|
542
|
+
oldValue: source.references,
|
|
543
|
+
newValue: target.references,
|
|
544
|
+
});
|
|
545
|
+
}
|
|
546
|
+
return {
|
|
547
|
+
sourceDescription: source.description,
|
|
548
|
+
source,
|
|
549
|
+
target,
|
|
550
|
+
changes,
|
|
551
|
+
};
|
|
552
|
+
}
|
|
553
|
+
/**
|
|
554
|
+
* Checks if two commit ref arrays are equal.
|
|
555
|
+
*
|
|
556
|
+
* @param a - First array of commit references to compare
|
|
557
|
+
* @param b - Second array of commit references to compare
|
|
558
|
+
* @returns True if both arrays contain equivalent commit refs
|
|
559
|
+
*/
|
|
560
|
+
function areCommitRefsEqual(a, b) {
|
|
561
|
+
if (a.length !== b.length)
|
|
562
|
+
return false;
|
|
563
|
+
for (let i = 0; i < a.length; i++) {
|
|
564
|
+
if (!isCommitRefEqual(a[i], b[i]))
|
|
565
|
+
return false;
|
|
566
|
+
}
|
|
567
|
+
return true;
|
|
568
|
+
}
|
|
569
|
+
/**
|
|
570
|
+
* Checks if two issue ref arrays are equal.
|
|
571
|
+
*
|
|
572
|
+
* @param a - First array of issue references to compare
|
|
573
|
+
* @param b - Second array of issue references to compare
|
|
574
|
+
* @returns True if both arrays contain equivalent issue refs
|
|
575
|
+
*/
|
|
576
|
+
function areIssueRefsEqual(a, b) {
|
|
577
|
+
if (a.length !== b.length)
|
|
578
|
+
return false;
|
|
579
|
+
for (let i = 0; i < a.length; i++) {
|
|
580
|
+
if (!isIssueRefEqual(a[i], b[i]))
|
|
581
|
+
return false;
|
|
582
|
+
}
|
|
583
|
+
return true;
|
|
584
|
+
}
|
|
585
|
+
/**
|
|
586
|
+
* Creates a human-readable summary of a changelog diff.
|
|
587
|
+
*
|
|
588
|
+
* @param diff - The diff to summarize
|
|
589
|
+
* @returns A string summary of the changes
|
|
590
|
+
*/
|
|
591
|
+
function summarizeDiff(diff) {
|
|
592
|
+
if (diff.identical) {
|
|
593
|
+
return 'Changelogs are identical';
|
|
594
|
+
}
|
|
595
|
+
const parts = [];
|
|
596
|
+
if (diff.added.length > 0) {
|
|
597
|
+
const versions = diff.added.map((e) => e.version).join(', ');
|
|
598
|
+
parts.push(`Added ${diff.added.length} version(s): ${versions}`);
|
|
599
|
+
}
|
|
600
|
+
if (diff.removed.length > 0) {
|
|
601
|
+
const versions = diff.removed.map((e) => e.version).join(', ');
|
|
602
|
+
parts.push(`Removed ${diff.removed.length} version(s): ${versions}`);
|
|
603
|
+
}
|
|
604
|
+
if (diff.modified.length > 0) {
|
|
605
|
+
const versions = diff.modified.map((e) => e.version).join(', ');
|
|
606
|
+
parts.push(`Modified ${diff.modified.length} version(s): ${versions}`);
|
|
607
|
+
}
|
|
608
|
+
return parts.join('; ');
|
|
609
|
+
}
|
|
610
|
+
|
|
611
|
+
export { diffChangelogs, diffEntries, getEntryByVersion, hasVersion, haveSameVersions, isChangelogEqual, isCommitRefEqual, isEntryEqual, isHeaderEqual, isIssueRefEqual, isItemEqual, isLinkEqual, isMetadataEqual, isSectionEqual, summarizeDiff };
|
|
612
|
+
//# sourceMappingURL=index.esm.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.esm.js","sources":["../../../../../../../../../../libs/utils/immutable-api/src/built-in-copy/set/index.ts","../../../../../../../../../../libs/versioning/src/changelog/compare/is-equal.ts","../../../../../../../../../../libs/utils/immutable-api/src/built-in-copy/map/index.ts","../../../../../../../../../../libs/versioning/src/changelog/compare/diff.ts"],"sourcesContent":[null,null,null,null],"names":["_Reflect"],"mappings":"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"}
|