MCPcopy Index your code
hub / github.com/npmx-dev/npmx.dev / resolveVersionConstraint

Function resolveVersionConstraint

server/utils/npm.ts:55–72  ·  view source on GitHub ↗
(
  packageName: string,
  constraint: string,
)

Source from the content-addressed store, hash-verified

53 * includes a prerelease tag (e.g., "^1.0.0-beta").
54 */
55export async function resolveVersionConstraint(
56 packageName: string,
57 constraint: string,
58): Promise<string | null> {
59 try {
60 const packument = await fetchNpmPackage(packageName)
61 let versions = Object.keys(packument.versions)
62
63 // Filter out prerelease versions unless constraint explicitly includes one
64 if (!constraintIncludesPrerelease(constraint)) {
65 versions = versions.filter(v => !prerelease(v))
66 }
67
68 return maxSatisfying(versions, constraint)
69 } catch {
70 return null
71 }
72}
73
74/**
75 * Resolve multiple dependency constraints to their best matching versions.

Callers 1

Calls 1

Tested by

no test coverage detected