Skip to content

Commit 53aeaf6

Browse files
committed
fix: use url from mapping when provided
1 parent 01d39ff commit 53aeaf6

File tree

5 files changed

+26
-13
lines changed

5 files changed

+26
-13
lines changed

app/components/Package/Replacement.vue

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,10 +3,13 @@ import type { ModuleReplacement } from 'module-replacements'
33
import { resolveReplacementUrl } from '~/utils/resolve-replacement-url'
44
55
const props = defineProps<{
6+
mapping: ModuleReplacementMapping
67
replacement: ModuleReplacement
78
}>()
89
9-
const externalUrl = computed(() => resolveReplacementUrl(props.replacement.url))
10+
const externalUrl = computed(() =>
11+
resolveReplacementUrl(props.mapping.url ?? props.replacement.url),
12+
)
1013
1114
const nodeVersion = computed(() => {
1215
const nodeEngine = props.replacement.engines?.find(e => e.engine === 'nodejs')

app/composables/npm/useReplacementDependencies.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ async function fetchReplacements(
88
const results = await Promise.all(
99
names.map(async name => {
1010
try {
11-
const replacement = await $fetch<ModuleReplacement | null>(`/api/replacements/${name}`)
11+
const { replacement } = await $fetch<ModuleReplacement | null>(`/api/replacements/${name}`)
1212
return { name, replacement }
1313
} catch {
1414
return { name, replacement: null }
Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,7 @@
11
import type { ModuleReplacement } from 'module-replacements'
22

33
export function useModuleReplacement(packageName: MaybeRefOrGetter<string>) {
4-
return useLazyFetch<ModuleReplacement | null>(() => `/api/replacements/${toValue(packageName)}`)
4+
return useLazyFetch<{ mapping: ModuleReplacementMapping; replacement: ModuleReplacement } | null>(
5+
() => `/api/replacements/${toValue(packageName)}`,
6+
)
57
}

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

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -876,7 +876,11 @@ const showSkeleton = shallowRef(false)
876876

877877
<div class="space-y-6" :class="$style.areaVulns">
878878
<!-- Bad package warning -->
879-
<PackageReplacement v-if="moduleReplacement" :replacement="moduleReplacement" />
879+
<PackageReplacement
880+
v-if="moduleReplacement"
881+
:mapping="moduleReplacement.mapping"
882+
:replacement="moduleReplacement.replacement"
883+
/>
880884
<!-- Size / dependency increase notice -->
881885
<PackageSizeIncrease v-if="sizeDiff" :diff="sizeDiff" />
882886
<!-- Vulnerability scan -->
Lines changed: 13 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,15 @@
11
import { all, type ModuleReplacement } from 'module-replacements'
22

3-
export default defineEventHandler((event): ModuleReplacement | null => {
4-
const pkg = getRouterParam(event, 'pkg')
5-
if (!pkg) return null
6-
const mapping = all.mappings[pkg]
7-
if (!mapping) return null
8-
const replacementId = mapping.replacements[0]
9-
if (!replacementId) return null
10-
return all.replacements[replacementId] ?? null
11-
})
3+
export default defineEventHandler(
4+
(event): { mapping: ModuleReplacementMapping; replacement: ModuleReplacement } | null => {
5+
const pkg = getRouterParam(event, 'pkg')
6+
if (!pkg) return null
7+
const mapping = all.mappings[pkg]
8+
if (!mapping) return null
9+
const replacementId = mapping.replacements[0]
10+
if (!replacementId) return null
11+
const replacement = all.replacements[replacementId]
12+
if (!replacement) return null
13+
return { mapping, replacement }
14+
},
15+
)

0 commit comments

Comments
 (0)