Skip to content

Commit b219252

Browse files
committed
chore: rewrite version resolver
1 parent 2688747 commit b219252

File tree

2 files changed

+15
-13
lines changed

2 files changed

+15
-13
lines changed
Lines changed: 14 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -1,18 +1,20 @@
11
import type { ResolvedPackageVersion } from 'fast-npm-meta'
22

3-
export async function useResolvedVersion(
3+
export function useResolvedVersion(
44
packageName: MaybeRefOrGetter<string>,
55
requestedVersion: MaybeRefOrGetter<string | null>,
66
) {
7-
const versionData = useState<string | null>('versionData')
8-
9-
await callOnce(async () => {
10-
const version = toValue(requestedVersion)
11-
const name = toValue(packageName)
12-
const url = version
13-
? `https://npm.antfu.dev/${name}@${version}`
14-
: `https://npm.antfu.dev/${name}`
15-
versionData.value = await $fetch<ResolvedPackageVersion>(url).then(data => data.version)
16-
})
17-
return versionData
7+
return useAsyncData(
8+
() => `resolved-version:${toValue(packageName)}:${toValue(requestedVersion) ?? 'latest'}`,
9+
async () => {
10+
const version = toValue(requestedVersion)
11+
const name = toValue(packageName)
12+
const url = version
13+
? `https://npm.antfu.dev/${name}@${version}`
14+
: `https://npm.antfu.dev/${name}`
15+
const data = await $fetch<ResolvedPackageVersion>(url)
16+
return data.version
17+
},
18+
{ default: () => null },
19+
)
1820
}

app/pages/package/[[org]]/[name].vue

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -194,7 +194,7 @@ const { data: skillsData } = useLazyFetch<SkillsListResponse>(
194194
const { data: packageAnalysis } = usePackageAnalysis(packageName, requestedVersion)
195195
const { data: moduleReplacement } = useModuleReplacement(packageName)
196196
197-
const resolvedVersion = await useResolvedVersion(packageName, requestedVersion)
197+
const { data: resolvedVersion } = await useResolvedVersion(packageName, requestedVersion)
198198
199199
if (resolvedVersion.value === null) {
200200
throw createError({

0 commit comments

Comments
 (0)