@hyperfrontend/versioning 0.1.0 → 0.3.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 +50 -1
- package/CHANGELOG.md +37 -23
- package/README.md +19 -14
- package/changelog/index.cjs.js +38 -6
- package/changelog/index.cjs.js.map +1 -1
- package/changelog/index.esm.js +38 -6
- package/changelog/index.esm.js.map +1 -1
- package/changelog/models/entry.d.ts +5 -0
- package/changelog/models/entry.d.ts.map +1 -1
- package/changelog/models/index.cjs.js +2 -0
- package/changelog/models/index.cjs.js.map +1 -1
- package/changelog/models/index.esm.js +2 -0
- package/changelog/models/index.esm.js.map +1 -1
- package/changelog/operations/index.cjs.js.map +1 -1
- package/changelog/operations/index.esm.js.map +1 -1
- package/changelog/parse/index.cjs.js +85 -6
- package/changelog/parse/index.cjs.js.map +1 -1
- package/changelog/parse/index.esm.js +85 -6
- package/changelog/parse/index.esm.js.map +1 -1
- package/changelog/parse/line.d.ts.map +1 -1
- package/changelog/parse/parser.d.ts +0 -6
- package/changelog/parse/parser.d.ts.map +1 -1
- package/commits/classify/classifier.d.ts +73 -0
- package/commits/classify/classifier.d.ts.map +1 -0
- package/commits/classify/index.cjs.js +707 -0
- package/commits/classify/index.cjs.js.map +1 -0
- package/commits/classify/index.d.ts +8 -0
- package/commits/classify/index.d.ts.map +1 -0
- package/commits/classify/index.esm.js +679 -0
- package/commits/classify/index.esm.js.map +1 -0
- package/commits/classify/infrastructure.d.ts +205 -0
- package/commits/classify/infrastructure.d.ts.map +1 -0
- package/commits/classify/models.d.ts +108 -0
- package/commits/classify/models.d.ts.map +1 -0
- package/commits/classify/project-scopes.d.ts +69 -0
- package/commits/classify/project-scopes.d.ts.map +1 -0
- package/commits/index.cjs.js +704 -0
- package/commits/index.cjs.js.map +1 -1
- package/commits/index.d.ts +1 -0
- package/commits/index.d.ts.map +1 -1
- package/commits/index.esm.js +678 -1
- package/commits/index.esm.js.map +1 -1
- package/flow/executor/execute.d.ts +6 -0
- package/flow/executor/execute.d.ts.map +1 -1
- package/flow/executor/index.cjs.js +1617 -43
- package/flow/executor/index.cjs.js.map +1 -1
- package/flow/executor/index.esm.js +1623 -49
- package/flow/executor/index.esm.js.map +1 -1
- package/flow/index.cjs.js +6749 -2938
- package/flow/index.cjs.js.map +1 -1
- package/flow/index.esm.js +6751 -2944
- package/flow/index.esm.js.map +1 -1
- package/flow/models/index.cjs.js +138 -0
- package/flow/models/index.cjs.js.map +1 -1
- package/flow/models/index.d.ts +1 -1
- package/flow/models/index.d.ts.map +1 -1
- package/flow/models/index.esm.js +138 -1
- package/flow/models/index.esm.js.map +1 -1
- package/flow/models/types.d.ts +180 -3
- package/flow/models/types.d.ts.map +1 -1
- package/flow/presets/conventional.d.ts +9 -8
- package/flow/presets/conventional.d.ts.map +1 -1
- package/flow/presets/independent.d.ts.map +1 -1
- package/flow/presets/index.cjs.js +3641 -303
- package/flow/presets/index.cjs.js.map +1 -1
- package/flow/presets/index.esm.js +3641 -303
- package/flow/presets/index.esm.js.map +1 -1
- package/flow/presets/synced.d.ts.map +1 -1
- package/flow/steps/analyze-commits.d.ts +9 -6
- package/flow/steps/analyze-commits.d.ts.map +1 -1
- package/flow/steps/calculate-bump.d.ts.map +1 -1
- package/flow/steps/fetch-registry.d.ts.map +1 -1
- package/flow/steps/generate-changelog.d.ts +5 -0
- package/flow/steps/generate-changelog.d.ts.map +1 -1
- package/flow/steps/index.cjs.js +3663 -328
- package/flow/steps/index.cjs.js.map +1 -1
- package/flow/steps/index.d.ts +2 -1
- package/flow/steps/index.d.ts.map +1 -1
- package/flow/steps/index.esm.js +3661 -329
- package/flow/steps/index.esm.js.map +1 -1
- package/flow/steps/resolve-repository.d.ts +36 -0
- package/flow/steps/resolve-repository.d.ts.map +1 -0
- package/flow/steps/update-packages.d.ts.map +1 -1
- package/git/factory.d.ts +14 -0
- package/git/factory.d.ts.map +1 -1
- package/git/index.cjs.js +65 -0
- package/git/index.cjs.js.map +1 -1
- package/git/index.esm.js +66 -2
- package/git/index.esm.js.map +1 -1
- package/git/operations/index.cjs.js +40 -0
- package/git/operations/index.cjs.js.map +1 -1
- package/git/operations/index.d.ts +1 -1
- package/git/operations/index.d.ts.map +1 -1
- package/git/operations/index.esm.js +41 -2
- package/git/operations/index.esm.js.map +1 -1
- package/git/operations/log.d.ts +23 -0
- package/git/operations/log.d.ts.map +1 -1
- package/index.cjs.js +7547 -4947
- package/index.cjs.js.map +1 -1
- package/index.d.ts +3 -1
- package/index.d.ts.map +1 -1
- package/index.esm.js +7550 -4954
- package/index.esm.js.map +1 -1
- package/package.json +39 -1
- package/registry/index.cjs.js +3 -3
- package/registry/index.cjs.js.map +1 -1
- package/registry/index.esm.js +3 -3
- package/registry/index.esm.js.map +1 -1
- package/registry/models/index.cjs.js +2 -0
- package/registry/models/index.cjs.js.map +1 -1
- package/registry/models/index.esm.js +2 -0
- package/registry/models/index.esm.js.map +1 -1
- package/registry/models/version-info.d.ts +10 -0
- package/registry/models/version-info.d.ts.map +1 -1
- package/registry/npm/client.d.ts.map +1 -1
- package/registry/npm/index.cjs.js +1 -3
- package/registry/npm/index.cjs.js.map +1 -1
- package/registry/npm/index.esm.js +1 -3
- package/registry/npm/index.esm.js.map +1 -1
- package/repository/index.cjs.js +998 -0
- package/repository/index.cjs.js.map +1 -0
- package/repository/index.d.ts +4 -0
- package/repository/index.d.ts.map +1 -0
- package/repository/index.esm.js +981 -0
- package/repository/index.esm.js.map +1 -0
- package/repository/models/index.cjs.js +301 -0
- package/repository/models/index.cjs.js.map +1 -0
- package/repository/models/index.d.ts +7 -0
- package/repository/models/index.d.ts.map +1 -0
- package/repository/models/index.esm.js +290 -0
- package/repository/models/index.esm.js.map +1 -0
- package/repository/models/platform.d.ts +58 -0
- package/repository/models/platform.d.ts.map +1 -0
- package/repository/models/repository-config.d.ts +132 -0
- package/repository/models/repository-config.d.ts.map +1 -0
- package/repository/models/resolution.d.ts +121 -0
- package/repository/models/resolution.d.ts.map +1 -0
- package/repository/parse/index.cjs.js +755 -0
- package/repository/parse/index.cjs.js.map +1 -0
- package/repository/parse/index.d.ts +5 -0
- package/repository/parse/index.d.ts.map +1 -0
- package/repository/parse/index.esm.js +749 -0
- package/repository/parse/index.esm.js.map +1 -0
- package/repository/parse/package-json.d.ts +100 -0
- package/repository/parse/package-json.d.ts.map +1 -0
- package/repository/parse/url.d.ts +81 -0
- package/repository/parse/url.d.ts.map +1 -0
- package/repository/url/compare.d.ts +84 -0
- package/repository/url/compare.d.ts.map +1 -0
- package/repository/url/index.cjs.js +178 -0
- package/repository/url/index.cjs.js.map +1 -0
- package/repository/url/index.d.ts +3 -0
- package/repository/url/index.d.ts.map +1 -0
- package/repository/url/index.esm.js +176 -0
- package/repository/url/index.esm.js.map +1 -0
- package/workspace/discovery/changelog-path.d.ts +3 -7
- package/workspace/discovery/changelog-path.d.ts.map +1 -1
- package/workspace/discovery/index.cjs.js +408 -335
- package/workspace/discovery/index.cjs.js.map +1 -1
- package/workspace/discovery/index.esm.js +408 -335
- package/workspace/discovery/index.esm.js.map +1 -1
- package/workspace/discovery/packages.d.ts +0 -6
- package/workspace/discovery/packages.d.ts.map +1 -1
- package/workspace/index.cjs.js +84 -11
- package/workspace/index.cjs.js.map +1 -1
- package/workspace/index.esm.js +84 -11
- package/workspace/index.esm.js.map +1 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.esm.js","sources":["../../../../../../../../libs/utils/immutable-api/src/built-in-copy/map/index.ts","../../../../../../../../libs/versioning/src/repository/models/platform.ts","../../../../../../../../libs/utils/immutable-api/src/built-in-copy/error/index.ts","../../../../../../../../libs/versioning/src/repository/models/repository-config.ts","../../../../../../../../libs/versioning/src/repository/models/resolution.ts","../../../../../../../../libs/utils/immutable-api/src/built-in-copy/math/index.ts","../../../../../../../../libs/utils/immutable-api/src/built-in-copy/url/index.ts","../../../../../../../../libs/versioning/src/repository/parse/url.ts","../../../../../../../../libs/utils/immutable-api/src/built-in-copy/json/index.ts","../../../../../../../../libs/versioning/src/repository/parse/package-json.ts","../../../../../../../../libs/versioning/src/repository/url/compare.ts"],"sourcesContent":[null,null,null,null,null,null,null,null,null,null,null],"names":["_Reflect"],"mappings":"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"}
|
|
@@ -0,0 +1,301 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Safe copies of Map built-in via factory function.
|
|
5
|
+
*
|
|
6
|
+
* Since constructors cannot be safely captured via Object.assign, this module
|
|
7
|
+
* provides a factory function that uses Reflect.construct internally.
|
|
8
|
+
*
|
|
9
|
+
* These references are captured at module initialization time to protect against
|
|
10
|
+
* prototype pollution attacks. Import only what you need for tree-shaking.
|
|
11
|
+
*
|
|
12
|
+
* @module @hyperfrontend/immutable-api-utils/built-in-copy/map
|
|
13
|
+
*/
|
|
14
|
+
// Capture references at module initialization time
|
|
15
|
+
const _Map = globalThis.Map;
|
|
16
|
+
const _Reflect$1 = globalThis.Reflect;
|
|
17
|
+
/**
|
|
18
|
+
* (Safe copy) Creates a new Map using the captured Map constructor.
|
|
19
|
+
* Use this instead of `new Map()`.
|
|
20
|
+
*
|
|
21
|
+
* @param iterable - Optional iterable of key-value pairs.
|
|
22
|
+
* @returns A new Map instance.
|
|
23
|
+
*/
|
|
24
|
+
const createMap = (iterable) => _Reflect$1.construct(_Map, iterable ? [iterable] : []);
|
|
25
|
+
|
|
26
|
+
/**
|
|
27
|
+
* Checks if a platform identifier is a known platform with built-in support.
|
|
28
|
+
*
|
|
29
|
+
* @param platform - Platform identifier to check
|
|
30
|
+
* @returns True if the platform is a known platform
|
|
31
|
+
*
|
|
32
|
+
* @example
|
|
33
|
+
* ```typescript
|
|
34
|
+
* isKnownPlatform('github') // true
|
|
35
|
+
* isKnownPlatform('gitlab') // true
|
|
36
|
+
* isKnownPlatform('custom') // false
|
|
37
|
+
* isKnownPlatform('unknown') // false
|
|
38
|
+
* ```
|
|
39
|
+
*/
|
|
40
|
+
function isKnownPlatform(platform) {
|
|
41
|
+
return platform === 'github' || platform === 'gitlab' || platform === 'bitbucket' || platform === 'azure-devops';
|
|
42
|
+
}
|
|
43
|
+
/**
|
|
44
|
+
* Known platform hostnames mapped to their platform type.
|
|
45
|
+
* Used for automatic platform detection from repository URLs.
|
|
46
|
+
*
|
|
47
|
+
* Includes both standard SaaS domains and common patterns for self-hosted instances.
|
|
48
|
+
*/
|
|
49
|
+
const PLATFORM_HOSTNAMES = createMap([
|
|
50
|
+
// GitHub
|
|
51
|
+
['github.com', 'github'],
|
|
52
|
+
// GitLab
|
|
53
|
+
['gitlab.com', 'gitlab'],
|
|
54
|
+
// Bitbucket
|
|
55
|
+
['bitbucket.org', 'bitbucket'],
|
|
56
|
+
// Azure DevOps
|
|
57
|
+
['dev.azure.com', 'azure-devops'],
|
|
58
|
+
['visualstudio.com', 'azure-devops'],
|
|
59
|
+
]);
|
|
60
|
+
/**
|
|
61
|
+
* Detects platform from a hostname.
|
|
62
|
+
*
|
|
63
|
+
* First checks for exact match in known platforms, then applies heuristics
|
|
64
|
+
* for self-hosted instances (e.g., `github.company.com` → `github`).
|
|
65
|
+
*
|
|
66
|
+
* @param hostname - Hostname to detect platform from (e.g., "github.com")
|
|
67
|
+
* @returns Detected platform or 'unknown' if not recognized
|
|
68
|
+
*
|
|
69
|
+
* @example
|
|
70
|
+
* ```typescript
|
|
71
|
+
* detectPlatformFromHostname('github.com') // 'github'
|
|
72
|
+
* detectPlatformFromHostname('gitlab.mycompany.com') // 'gitlab'
|
|
73
|
+
* detectPlatformFromHostname('custom-git.internal') // 'unknown'
|
|
74
|
+
* ```
|
|
75
|
+
*/
|
|
76
|
+
function detectPlatformFromHostname(hostname) {
|
|
77
|
+
const normalized = hostname.toLowerCase();
|
|
78
|
+
// Check exact matches first
|
|
79
|
+
const exactMatch = PLATFORM_HOSTNAMES.get(normalized);
|
|
80
|
+
if (exactMatch) {
|
|
81
|
+
return exactMatch;
|
|
82
|
+
}
|
|
83
|
+
// Check for Azure DevOps legacy domain pattern
|
|
84
|
+
if (normalized.endsWith('.visualstudio.com')) {
|
|
85
|
+
return 'azure-devops';
|
|
86
|
+
}
|
|
87
|
+
// Check for Azure DevOps modern domain pattern (includes ssh.dev.azure.com)
|
|
88
|
+
if (normalized.endsWith('.azure.com')) {
|
|
89
|
+
return 'azure-devops';
|
|
90
|
+
}
|
|
91
|
+
// Heuristics for self-hosted instances
|
|
92
|
+
// GitHub Enterprise typically uses "github" in the hostname
|
|
93
|
+
if (normalized.includes('github')) {
|
|
94
|
+
return 'github';
|
|
95
|
+
}
|
|
96
|
+
// GitLab self-hosted typically uses "gitlab" in the hostname
|
|
97
|
+
if (normalized.includes('gitlab')) {
|
|
98
|
+
return 'gitlab';
|
|
99
|
+
}
|
|
100
|
+
// Bitbucket Data Center/Server might use "bitbucket" in hostname
|
|
101
|
+
if (normalized.includes('bitbucket')) {
|
|
102
|
+
return 'bitbucket';
|
|
103
|
+
}
|
|
104
|
+
return 'unknown';
|
|
105
|
+
}
|
|
106
|
+
|
|
107
|
+
/**
|
|
108
|
+
* Safe copies of Error built-ins via factory functions.
|
|
109
|
+
*
|
|
110
|
+
* Since constructors cannot be safely captured via Object.assign, this module
|
|
111
|
+
* provides factory functions that use Reflect.construct internally.
|
|
112
|
+
*
|
|
113
|
+
* These references are captured at module initialization time to protect against
|
|
114
|
+
* prototype pollution attacks. Import only what you need for tree-shaking.
|
|
115
|
+
*
|
|
116
|
+
* @module @hyperfrontend/immutable-api-utils/built-in-copy/error
|
|
117
|
+
*/
|
|
118
|
+
// Capture references at module initialization time
|
|
119
|
+
const _Error = globalThis.Error;
|
|
120
|
+
const _Reflect = globalThis.Reflect;
|
|
121
|
+
/**
|
|
122
|
+
* (Safe copy) Creates a new Error using the captured Error constructor.
|
|
123
|
+
* Use this instead of `new Error()`.
|
|
124
|
+
*
|
|
125
|
+
* @param message - Optional error message.
|
|
126
|
+
* @param options - Optional error options.
|
|
127
|
+
* @returns A new Error instance.
|
|
128
|
+
*/
|
|
129
|
+
const createError = (message, options) => _Reflect.construct(_Error, [message, options]);
|
|
130
|
+
|
|
131
|
+
/**
|
|
132
|
+
* Creates a new RepositoryConfig.
|
|
133
|
+
*
|
|
134
|
+
* Normalizes the base URL by stripping trailing slashes and validating
|
|
135
|
+
* that custom platforms have a formatter function.
|
|
136
|
+
*
|
|
137
|
+
* @param options - Repository configuration options
|
|
138
|
+
* @returns A new RepositoryConfig object
|
|
139
|
+
* @throws {Error} if platform is 'custom' but no formatCompareUrl is provided
|
|
140
|
+
*
|
|
141
|
+
* @example
|
|
142
|
+
* ```typescript
|
|
143
|
+
* // GitHub repository
|
|
144
|
+
* const config = createRepositoryConfig({
|
|
145
|
+
* platform: 'github',
|
|
146
|
+
* baseUrl: 'https://github.com/owner/repo'
|
|
147
|
+
* })
|
|
148
|
+
*
|
|
149
|
+
* // Custom platform
|
|
150
|
+
* const customConfig = createRepositoryConfig({
|
|
151
|
+
* platform: 'custom',
|
|
152
|
+
* baseUrl: 'https://my-git.internal/repo',
|
|
153
|
+
* formatCompareUrl: (from, to) => `https://my-git.internal/diff/${from}/${to}`
|
|
154
|
+
* })
|
|
155
|
+
* ```
|
|
156
|
+
*/
|
|
157
|
+
function createRepositoryConfig(options) {
|
|
158
|
+
const { platform, formatCompareUrl } = options;
|
|
159
|
+
// Validate custom platform has formatter
|
|
160
|
+
if (platform === 'custom' && !formatCompareUrl) {
|
|
161
|
+
throw createError("Repository config with platform 'custom' requires a formatCompareUrl function");
|
|
162
|
+
}
|
|
163
|
+
// Normalize base URL - strip trailing slashes
|
|
164
|
+
const baseUrl = normalizeBaseUrl(options.baseUrl);
|
|
165
|
+
return {
|
|
166
|
+
platform,
|
|
167
|
+
baseUrl,
|
|
168
|
+
formatCompareUrl,
|
|
169
|
+
};
|
|
170
|
+
}
|
|
171
|
+
/**
|
|
172
|
+
* Checks if a value is a RepositoryConfig object.
|
|
173
|
+
*
|
|
174
|
+
* @param value - Value to check
|
|
175
|
+
* @returns True if the value is a RepositoryConfig
|
|
176
|
+
*
|
|
177
|
+
* @example
|
|
178
|
+
* ```typescript
|
|
179
|
+
* const config = { platform: 'github', baseUrl: 'https://...' }
|
|
180
|
+
* if (isRepositoryConfig(config)) {
|
|
181
|
+
* // config is typed as RepositoryConfig
|
|
182
|
+
* }
|
|
183
|
+
* ```
|
|
184
|
+
*/
|
|
185
|
+
function isRepositoryConfig(value) {
|
|
186
|
+
if (typeof value !== 'object' || value === null) {
|
|
187
|
+
return false;
|
|
188
|
+
}
|
|
189
|
+
const obj = value;
|
|
190
|
+
return (typeof obj['platform'] === 'string' &&
|
|
191
|
+
typeof obj['baseUrl'] === 'string' &&
|
|
192
|
+
(obj['formatCompareUrl'] === undefined || typeof obj['formatCompareUrl'] === 'function'));
|
|
193
|
+
}
|
|
194
|
+
/**
|
|
195
|
+
* Normalizes a base URL by stripping trailing slashes and .git suffix.
|
|
196
|
+
*
|
|
197
|
+
* @param url - URL to normalize
|
|
198
|
+
* @returns Normalized URL
|
|
199
|
+
*
|
|
200
|
+
* @internal
|
|
201
|
+
*/
|
|
202
|
+
function normalizeBaseUrl(url) {
|
|
203
|
+
let normalized = url.trim();
|
|
204
|
+
// Remove trailing slashes
|
|
205
|
+
while (normalized.endsWith('/')) {
|
|
206
|
+
normalized = normalized.slice(0, -1);
|
|
207
|
+
}
|
|
208
|
+
// Remove .git suffix if present
|
|
209
|
+
if (normalized.endsWith('.git')) {
|
|
210
|
+
normalized = normalized.slice(0, -4);
|
|
211
|
+
}
|
|
212
|
+
return normalized;
|
|
213
|
+
}
|
|
214
|
+
|
|
215
|
+
/**
|
|
216
|
+
* Creates a disabled repository resolution configuration.
|
|
217
|
+
*
|
|
218
|
+
* No compare URLs will be generated.
|
|
219
|
+
*
|
|
220
|
+
* @returns A RepositoryResolution with mode 'disabled'
|
|
221
|
+
*
|
|
222
|
+
* @example
|
|
223
|
+
* ```typescript
|
|
224
|
+
* const config = createDisabledResolution()
|
|
225
|
+
* // { mode: 'disabled' }
|
|
226
|
+
* ```
|
|
227
|
+
*/
|
|
228
|
+
function createDisabledResolution() {
|
|
229
|
+
return { mode: 'disabled' };
|
|
230
|
+
}
|
|
231
|
+
/**
|
|
232
|
+
* Creates an explicit repository resolution configuration.
|
|
233
|
+
*
|
|
234
|
+
* @param repository - The repository config to use
|
|
235
|
+
* @returns A RepositoryResolution with mode 'explicit'
|
|
236
|
+
*
|
|
237
|
+
* @example
|
|
238
|
+
* ```typescript
|
|
239
|
+
* const config = createExplicitResolution({
|
|
240
|
+
* platform: 'github',
|
|
241
|
+
* baseUrl: 'https://github.com/owner/repo'
|
|
242
|
+
* })
|
|
243
|
+
* ```
|
|
244
|
+
*/
|
|
245
|
+
function createExplicitResolution(repository) {
|
|
246
|
+
return {
|
|
247
|
+
mode: 'explicit',
|
|
248
|
+
repository,
|
|
249
|
+
};
|
|
250
|
+
}
|
|
251
|
+
/**
|
|
252
|
+
* Creates an inferred repository resolution configuration.
|
|
253
|
+
*
|
|
254
|
+
* @param inferenceOrder - Order to try inference sources (default: package-json first)
|
|
255
|
+
* @returns A RepositoryResolution with mode 'inferred'
|
|
256
|
+
*
|
|
257
|
+
* @example
|
|
258
|
+
* ```typescript
|
|
259
|
+
* // Default order: package.json → git remote
|
|
260
|
+
* const config = createInferredResolution()
|
|
261
|
+
*
|
|
262
|
+
* // Custom order: git remote → package.json
|
|
263
|
+
* const customOrder = createInferredResolution(['git-remote', 'package-json'])
|
|
264
|
+
* ```
|
|
265
|
+
*/
|
|
266
|
+
function createInferredResolution(inferenceOrder = ['package-json', 'git-remote']) {
|
|
267
|
+
return {
|
|
268
|
+
mode: 'inferred',
|
|
269
|
+
inferenceOrder,
|
|
270
|
+
};
|
|
271
|
+
}
|
|
272
|
+
/**
|
|
273
|
+
* Checks if a value is a RepositoryResolution object.
|
|
274
|
+
*
|
|
275
|
+
* @param value - Value to check
|
|
276
|
+
* @returns True if the value is a RepositoryResolution
|
|
277
|
+
*/
|
|
278
|
+
function isRepositoryResolution(value) {
|
|
279
|
+
if (typeof value !== 'object' || value === null) {
|
|
280
|
+
return false;
|
|
281
|
+
}
|
|
282
|
+
const obj = value;
|
|
283
|
+
const mode = obj['mode'];
|
|
284
|
+
return mode === 'explicit' || mode === 'inferred' || mode === 'disabled';
|
|
285
|
+
}
|
|
286
|
+
/**
|
|
287
|
+
* Default inference order when mode is 'inferred'.
|
|
288
|
+
*/
|
|
289
|
+
const DEFAULT_INFERENCE_ORDER = ['package-json', 'git-remote'];
|
|
290
|
+
|
|
291
|
+
exports.DEFAULT_INFERENCE_ORDER = DEFAULT_INFERENCE_ORDER;
|
|
292
|
+
exports.PLATFORM_HOSTNAMES = PLATFORM_HOSTNAMES;
|
|
293
|
+
exports.createDisabledResolution = createDisabledResolution;
|
|
294
|
+
exports.createExplicitResolution = createExplicitResolution;
|
|
295
|
+
exports.createInferredResolution = createInferredResolution;
|
|
296
|
+
exports.createRepositoryConfig = createRepositoryConfig;
|
|
297
|
+
exports.detectPlatformFromHostname = detectPlatformFromHostname;
|
|
298
|
+
exports.isKnownPlatform = isKnownPlatform;
|
|
299
|
+
exports.isRepositoryConfig = isRepositoryConfig;
|
|
300
|
+
exports.isRepositoryResolution = isRepositoryResolution;
|
|
301
|
+
//# sourceMappingURL=index.cjs.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.cjs.js","sources":["../../../../../../../../../../libs/utils/immutable-api/src/built-in-copy/map/index.ts","../../../../../../../../../../libs/versioning/src/repository/models/platform.ts","../../../../../../../../../../libs/utils/immutable-api/src/built-in-copy/error/index.ts","../../../../../../../../../../libs/versioning/src/repository/models/repository-config.ts","../../../../../../../../../../libs/versioning/src/repository/models/resolution.ts"],"sourcesContent":[null,null,null,null,null],"names":["_Reflect"],"mappings":"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"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
export type { KnownPlatform, RepositoryPlatform } from './platform';
|
|
2
|
+
export type { RepositoryResolutionMode, RepositoryInferenceSource, RepositoryResolution } from './resolution';
|
|
3
|
+
export type { CompareUrlFormatter, RepositoryConfig, CreateRepositoryConfigOptions } from './repository-config';
|
|
4
|
+
export { isKnownPlatform, detectPlatformFromHostname, PLATFORM_HOSTNAMES } from './platform';
|
|
5
|
+
export { createRepositoryConfig, isRepositoryConfig } from './repository-config';
|
|
6
|
+
export { createDisabledResolution, createExplicitResolution, createInferredResolution, isRepositoryResolution, DEFAULT_INFERENCE_ORDER, } from './resolution';
|
|
7
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../../libs/versioning/src/repository/models/index.ts"],"names":[],"mappings":"AAAA,YAAY,EAAE,aAAa,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAA;AACnE,YAAY,EAAE,wBAAwB,EAAE,yBAAyB,EAAE,oBAAoB,EAAE,MAAM,cAAc,CAAA;AAC7G,YAAY,EAAE,mBAAmB,EAAE,gBAAgB,EAAE,6BAA6B,EAAE,MAAM,qBAAqB,CAAA;AAC/G,OAAO,EAAE,eAAe,EAAE,0BAA0B,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAA;AAC5F,OAAO,EAAE,sBAAsB,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAA;AAChF,OAAO,EACL,wBAAwB,EACxB,wBAAwB,EACxB,wBAAwB,EACxB,sBAAsB,EACtB,uBAAuB,GACxB,MAAM,cAAc,CAAA"}
|
|
@@ -0,0 +1,290 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Safe copies of Map 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/map
|
|
11
|
+
*/
|
|
12
|
+
// Capture references at module initialization time
|
|
13
|
+
const _Map = globalThis.Map;
|
|
14
|
+
const _Reflect$1 = globalThis.Reflect;
|
|
15
|
+
/**
|
|
16
|
+
* (Safe copy) Creates a new Map using the captured Map constructor.
|
|
17
|
+
* Use this instead of `new Map()`.
|
|
18
|
+
*
|
|
19
|
+
* @param iterable - Optional iterable of key-value pairs.
|
|
20
|
+
* @returns A new Map instance.
|
|
21
|
+
*/
|
|
22
|
+
const createMap = (iterable) => _Reflect$1.construct(_Map, iterable ? [iterable] : []);
|
|
23
|
+
|
|
24
|
+
/**
|
|
25
|
+
* Checks if a platform identifier is a known platform with built-in support.
|
|
26
|
+
*
|
|
27
|
+
* @param platform - Platform identifier to check
|
|
28
|
+
* @returns True if the platform is a known platform
|
|
29
|
+
*
|
|
30
|
+
* @example
|
|
31
|
+
* ```typescript
|
|
32
|
+
* isKnownPlatform('github') // true
|
|
33
|
+
* isKnownPlatform('gitlab') // true
|
|
34
|
+
* isKnownPlatform('custom') // false
|
|
35
|
+
* isKnownPlatform('unknown') // false
|
|
36
|
+
* ```
|
|
37
|
+
*/
|
|
38
|
+
function isKnownPlatform(platform) {
|
|
39
|
+
return platform === 'github' || platform === 'gitlab' || platform === 'bitbucket' || platform === 'azure-devops';
|
|
40
|
+
}
|
|
41
|
+
/**
|
|
42
|
+
* Known platform hostnames mapped to their platform type.
|
|
43
|
+
* Used for automatic platform detection from repository URLs.
|
|
44
|
+
*
|
|
45
|
+
* Includes both standard SaaS domains and common patterns for self-hosted instances.
|
|
46
|
+
*/
|
|
47
|
+
const PLATFORM_HOSTNAMES = createMap([
|
|
48
|
+
// GitHub
|
|
49
|
+
['github.com', 'github'],
|
|
50
|
+
// GitLab
|
|
51
|
+
['gitlab.com', 'gitlab'],
|
|
52
|
+
// Bitbucket
|
|
53
|
+
['bitbucket.org', 'bitbucket'],
|
|
54
|
+
// Azure DevOps
|
|
55
|
+
['dev.azure.com', 'azure-devops'],
|
|
56
|
+
['visualstudio.com', 'azure-devops'],
|
|
57
|
+
]);
|
|
58
|
+
/**
|
|
59
|
+
* Detects platform from a hostname.
|
|
60
|
+
*
|
|
61
|
+
* First checks for exact match in known platforms, then applies heuristics
|
|
62
|
+
* for self-hosted instances (e.g., `github.company.com` → `github`).
|
|
63
|
+
*
|
|
64
|
+
* @param hostname - Hostname to detect platform from (e.g., "github.com")
|
|
65
|
+
* @returns Detected platform or 'unknown' if not recognized
|
|
66
|
+
*
|
|
67
|
+
* @example
|
|
68
|
+
* ```typescript
|
|
69
|
+
* detectPlatformFromHostname('github.com') // 'github'
|
|
70
|
+
* detectPlatformFromHostname('gitlab.mycompany.com') // 'gitlab'
|
|
71
|
+
* detectPlatformFromHostname('custom-git.internal') // 'unknown'
|
|
72
|
+
* ```
|
|
73
|
+
*/
|
|
74
|
+
function detectPlatformFromHostname(hostname) {
|
|
75
|
+
const normalized = hostname.toLowerCase();
|
|
76
|
+
// Check exact matches first
|
|
77
|
+
const exactMatch = PLATFORM_HOSTNAMES.get(normalized);
|
|
78
|
+
if (exactMatch) {
|
|
79
|
+
return exactMatch;
|
|
80
|
+
}
|
|
81
|
+
// Check for Azure DevOps legacy domain pattern
|
|
82
|
+
if (normalized.endsWith('.visualstudio.com')) {
|
|
83
|
+
return 'azure-devops';
|
|
84
|
+
}
|
|
85
|
+
// Check for Azure DevOps modern domain pattern (includes ssh.dev.azure.com)
|
|
86
|
+
if (normalized.endsWith('.azure.com')) {
|
|
87
|
+
return 'azure-devops';
|
|
88
|
+
}
|
|
89
|
+
// Heuristics for self-hosted instances
|
|
90
|
+
// GitHub Enterprise typically uses "github" in the hostname
|
|
91
|
+
if (normalized.includes('github')) {
|
|
92
|
+
return 'github';
|
|
93
|
+
}
|
|
94
|
+
// GitLab self-hosted typically uses "gitlab" in the hostname
|
|
95
|
+
if (normalized.includes('gitlab')) {
|
|
96
|
+
return 'gitlab';
|
|
97
|
+
}
|
|
98
|
+
// Bitbucket Data Center/Server might use "bitbucket" in hostname
|
|
99
|
+
if (normalized.includes('bitbucket')) {
|
|
100
|
+
return 'bitbucket';
|
|
101
|
+
}
|
|
102
|
+
return 'unknown';
|
|
103
|
+
}
|
|
104
|
+
|
|
105
|
+
/**
|
|
106
|
+
* Safe copies of Error built-ins via factory functions.
|
|
107
|
+
*
|
|
108
|
+
* Since constructors cannot be safely captured via Object.assign, this module
|
|
109
|
+
* provides factory functions that use Reflect.construct internally.
|
|
110
|
+
*
|
|
111
|
+
* These references are captured at module initialization time to protect against
|
|
112
|
+
* prototype pollution attacks. Import only what you need for tree-shaking.
|
|
113
|
+
*
|
|
114
|
+
* @module @hyperfrontend/immutable-api-utils/built-in-copy/error
|
|
115
|
+
*/
|
|
116
|
+
// Capture references at module initialization time
|
|
117
|
+
const _Error = globalThis.Error;
|
|
118
|
+
const _Reflect = globalThis.Reflect;
|
|
119
|
+
/**
|
|
120
|
+
* (Safe copy) Creates a new Error using the captured Error constructor.
|
|
121
|
+
* Use this instead of `new Error()`.
|
|
122
|
+
*
|
|
123
|
+
* @param message - Optional error message.
|
|
124
|
+
* @param options - Optional error options.
|
|
125
|
+
* @returns A new Error instance.
|
|
126
|
+
*/
|
|
127
|
+
const createError = (message, options) => _Reflect.construct(_Error, [message, options]);
|
|
128
|
+
|
|
129
|
+
/**
|
|
130
|
+
* Creates a new RepositoryConfig.
|
|
131
|
+
*
|
|
132
|
+
* Normalizes the base URL by stripping trailing slashes and validating
|
|
133
|
+
* that custom platforms have a formatter function.
|
|
134
|
+
*
|
|
135
|
+
* @param options - Repository configuration options
|
|
136
|
+
* @returns A new RepositoryConfig object
|
|
137
|
+
* @throws {Error} if platform is 'custom' but no formatCompareUrl is provided
|
|
138
|
+
*
|
|
139
|
+
* @example
|
|
140
|
+
* ```typescript
|
|
141
|
+
* // GitHub repository
|
|
142
|
+
* const config = createRepositoryConfig({
|
|
143
|
+
* platform: 'github',
|
|
144
|
+
* baseUrl: 'https://github.com/owner/repo'
|
|
145
|
+
* })
|
|
146
|
+
*
|
|
147
|
+
* // Custom platform
|
|
148
|
+
* const customConfig = createRepositoryConfig({
|
|
149
|
+
* platform: 'custom',
|
|
150
|
+
* baseUrl: 'https://my-git.internal/repo',
|
|
151
|
+
* formatCompareUrl: (from, to) => `https://my-git.internal/diff/${from}/${to}`
|
|
152
|
+
* })
|
|
153
|
+
* ```
|
|
154
|
+
*/
|
|
155
|
+
function createRepositoryConfig(options) {
|
|
156
|
+
const { platform, formatCompareUrl } = options;
|
|
157
|
+
// Validate custom platform has formatter
|
|
158
|
+
if (platform === 'custom' && !formatCompareUrl) {
|
|
159
|
+
throw createError("Repository config with platform 'custom' requires a formatCompareUrl function");
|
|
160
|
+
}
|
|
161
|
+
// Normalize base URL - strip trailing slashes
|
|
162
|
+
const baseUrl = normalizeBaseUrl(options.baseUrl);
|
|
163
|
+
return {
|
|
164
|
+
platform,
|
|
165
|
+
baseUrl,
|
|
166
|
+
formatCompareUrl,
|
|
167
|
+
};
|
|
168
|
+
}
|
|
169
|
+
/**
|
|
170
|
+
* Checks if a value is a RepositoryConfig object.
|
|
171
|
+
*
|
|
172
|
+
* @param value - Value to check
|
|
173
|
+
* @returns True if the value is a RepositoryConfig
|
|
174
|
+
*
|
|
175
|
+
* @example
|
|
176
|
+
* ```typescript
|
|
177
|
+
* const config = { platform: 'github', baseUrl: 'https://...' }
|
|
178
|
+
* if (isRepositoryConfig(config)) {
|
|
179
|
+
* // config is typed as RepositoryConfig
|
|
180
|
+
* }
|
|
181
|
+
* ```
|
|
182
|
+
*/
|
|
183
|
+
function isRepositoryConfig(value) {
|
|
184
|
+
if (typeof value !== 'object' || value === null) {
|
|
185
|
+
return false;
|
|
186
|
+
}
|
|
187
|
+
const obj = value;
|
|
188
|
+
return (typeof obj['platform'] === 'string' &&
|
|
189
|
+
typeof obj['baseUrl'] === 'string' &&
|
|
190
|
+
(obj['formatCompareUrl'] === undefined || typeof obj['formatCompareUrl'] === 'function'));
|
|
191
|
+
}
|
|
192
|
+
/**
|
|
193
|
+
* Normalizes a base URL by stripping trailing slashes and .git suffix.
|
|
194
|
+
*
|
|
195
|
+
* @param url - URL to normalize
|
|
196
|
+
* @returns Normalized URL
|
|
197
|
+
*
|
|
198
|
+
* @internal
|
|
199
|
+
*/
|
|
200
|
+
function normalizeBaseUrl(url) {
|
|
201
|
+
let normalized = url.trim();
|
|
202
|
+
// Remove trailing slashes
|
|
203
|
+
while (normalized.endsWith('/')) {
|
|
204
|
+
normalized = normalized.slice(0, -1);
|
|
205
|
+
}
|
|
206
|
+
// Remove .git suffix if present
|
|
207
|
+
if (normalized.endsWith('.git')) {
|
|
208
|
+
normalized = normalized.slice(0, -4);
|
|
209
|
+
}
|
|
210
|
+
return normalized;
|
|
211
|
+
}
|
|
212
|
+
|
|
213
|
+
/**
|
|
214
|
+
* Creates a disabled repository resolution configuration.
|
|
215
|
+
*
|
|
216
|
+
* No compare URLs will be generated.
|
|
217
|
+
*
|
|
218
|
+
* @returns A RepositoryResolution with mode 'disabled'
|
|
219
|
+
*
|
|
220
|
+
* @example
|
|
221
|
+
* ```typescript
|
|
222
|
+
* const config = createDisabledResolution()
|
|
223
|
+
* // { mode: 'disabled' }
|
|
224
|
+
* ```
|
|
225
|
+
*/
|
|
226
|
+
function createDisabledResolution() {
|
|
227
|
+
return { mode: 'disabled' };
|
|
228
|
+
}
|
|
229
|
+
/**
|
|
230
|
+
* Creates an explicit repository resolution configuration.
|
|
231
|
+
*
|
|
232
|
+
* @param repository - The repository config to use
|
|
233
|
+
* @returns A RepositoryResolution with mode 'explicit'
|
|
234
|
+
*
|
|
235
|
+
* @example
|
|
236
|
+
* ```typescript
|
|
237
|
+
* const config = createExplicitResolution({
|
|
238
|
+
* platform: 'github',
|
|
239
|
+
* baseUrl: 'https://github.com/owner/repo'
|
|
240
|
+
* })
|
|
241
|
+
* ```
|
|
242
|
+
*/
|
|
243
|
+
function createExplicitResolution(repository) {
|
|
244
|
+
return {
|
|
245
|
+
mode: 'explicit',
|
|
246
|
+
repository,
|
|
247
|
+
};
|
|
248
|
+
}
|
|
249
|
+
/**
|
|
250
|
+
* Creates an inferred repository resolution configuration.
|
|
251
|
+
*
|
|
252
|
+
* @param inferenceOrder - Order to try inference sources (default: package-json first)
|
|
253
|
+
* @returns A RepositoryResolution with mode 'inferred'
|
|
254
|
+
*
|
|
255
|
+
* @example
|
|
256
|
+
* ```typescript
|
|
257
|
+
* // Default order: package.json → git remote
|
|
258
|
+
* const config = createInferredResolution()
|
|
259
|
+
*
|
|
260
|
+
* // Custom order: git remote → package.json
|
|
261
|
+
* const customOrder = createInferredResolution(['git-remote', 'package-json'])
|
|
262
|
+
* ```
|
|
263
|
+
*/
|
|
264
|
+
function createInferredResolution(inferenceOrder = ['package-json', 'git-remote']) {
|
|
265
|
+
return {
|
|
266
|
+
mode: 'inferred',
|
|
267
|
+
inferenceOrder,
|
|
268
|
+
};
|
|
269
|
+
}
|
|
270
|
+
/**
|
|
271
|
+
* Checks if a value is a RepositoryResolution object.
|
|
272
|
+
*
|
|
273
|
+
* @param value - Value to check
|
|
274
|
+
* @returns True if the value is a RepositoryResolution
|
|
275
|
+
*/
|
|
276
|
+
function isRepositoryResolution(value) {
|
|
277
|
+
if (typeof value !== 'object' || value === null) {
|
|
278
|
+
return false;
|
|
279
|
+
}
|
|
280
|
+
const obj = value;
|
|
281
|
+
const mode = obj['mode'];
|
|
282
|
+
return mode === 'explicit' || mode === 'inferred' || mode === 'disabled';
|
|
283
|
+
}
|
|
284
|
+
/**
|
|
285
|
+
* Default inference order when mode is 'inferred'.
|
|
286
|
+
*/
|
|
287
|
+
const DEFAULT_INFERENCE_ORDER = ['package-json', 'git-remote'];
|
|
288
|
+
|
|
289
|
+
export { DEFAULT_INFERENCE_ORDER, PLATFORM_HOSTNAMES, createDisabledResolution, createExplicitResolution, createInferredResolution, createRepositoryConfig, detectPlatformFromHostname, isKnownPlatform, isRepositoryConfig, isRepositoryResolution };
|
|
290
|
+
//# sourceMappingURL=index.esm.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.esm.js","sources":["../../../../../../../../../../libs/utils/immutable-api/src/built-in-copy/map/index.ts","../../../../../../../../../../libs/versioning/src/repository/models/platform.ts","../../../../../../../../../../libs/utils/immutable-api/src/built-in-copy/error/index.ts","../../../../../../../../../../libs/versioning/src/repository/models/repository-config.ts","../../../../../../../../../../libs/versioning/src/repository/models/resolution.ts"],"sourcesContent":[null,null,null,null,null],"names":["_Reflect"],"mappings":"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"}
|