Skip to content

Commit 9923d48

Browse files
committed
feat: update
1 parent c12f507 commit 9923d48

File tree

2 files changed

+29
-17
lines changed

2 files changed

+29
-17
lines changed

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

Lines changed: 20 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -287,7 +287,7 @@ const flatItems = computed<FlatItem[]>(() => {
287287
:to="packageRoute(packageName, latestTagRow!.version)"
288288
class="text-2xl font-semibold tracking-tight after:absolute after:inset-0 after:content-['']"
289289
dir="ltr"
290-
>{{ latestTagRow!.version }}</LinkBase
290+
>v{{ latestTagRow!.version }}</LinkBase
291291
>
292292
</div>
293293
<!-- Right: date + provenance -->
@@ -344,7 +344,7 @@ const flatItems = computed<FlatItem[]>(() => {
344344
class="text-sm flex-1 min-w-0 after:absolute after:inset-0 after:content-['']"
345345
dir="ltr"
346346
>
347-
{{ row.version }}
347+
v{{ row.version }}
348348
</LinkBase>
349349

350350
<!-- Date -->
@@ -439,6 +439,9 @@ const flatItems = computed<FlatItem[]>(() => {
439439
</span>
440440
<span class="text-sm font-medium">{{ item.label }}</span>
441441
<span class="text-xs text-fg-subtle">({{ item.versions.length }})</span>
442+
<span v-if="item.versions[0]" class="text-xs text-fg-muted" dir="ltr"
443+
>v{{ item.versions[0] }}</span
444+
>
442445
<span
443446
v-if="getGroupDownloads(item.versions) !== undefined"
444447
class="ms-auto text-xs text-fg-muted tabular-nums w-24 text-end"
@@ -448,9 +451,8 @@ const flatItems = computed<FlatItem[]>(() => {
448451
{{ numberFormatter.format(getGroupDownloads(item.versions)!) }}
449452
</span>
450453
<span class="flex items-center gap-3 shrink-0">
451-
<span class="text-xs text-fg-muted" dir="ltr">{{ item.versions[0] }}</span>
452454
<DateTime
453-
v-if="getVersionTime(item.versions[0])"
455+
v-if="item.versions[0] && getVersionTime(item.versions[0])"
454456
:datetime="getVersionTime(item.versions[0])!"
455457
class="text-xs text-fg-subtle hidden sm:block"
456458
year="numeric"
@@ -487,7 +489,7 @@ const flatItems = computed<FlatItem[]>(() => {
487489
"
488490
dir="ltr"
489491
>
490-
{{ item.version }}
492+
v{{ item.version }}
491493
</LinkBase>
492494
<div
493495
v-if="versionToTagsMap.get(item.version)?.length"
@@ -511,16 +513,16 @@ const flatItems = computed<FlatItem[]>(() => {
511513
</span>
512514
</div>
513515

514-
<span
515-
v-if="getVersionDownloads(item.version) !== undefined"
516-
class="text-xs text-fg-muted tabular-nums w-24 text-end shrink-0"
517-
:aria-label="$t('package.downloads.title')"
518-
dir="ltr"
519-
>
520-
{{ numberFormatter.format(getVersionDownloads(item.version)!) }}
521-
</span>
522516
<!-- Right side -->
523-
<div class="flex items-center gap-2 shrink-0 relative z-10 w-36 justify-end">
517+
<div class="flex items-center gap-2 shrink-0 relative z-10 w-50 justify-end">
518+
<span
519+
v-if="getVersionDownloads(item.version) !== undefined"
520+
class="text-xs text-fg-muted tabular-nums w-24 text-end shrink-0"
521+
:aria-label="$t('package.downloads.title')"
522+
dir="ltr"
523+
>
524+
{{ numberFormatter.format(getVersionDownloads(item.version)!) }}
525+
</span>
524526
<!-- Metadata: date + provenance -->
525527
<DateTime
526528
v-if="getVersionTime(item.version)"
@@ -568,9 +570,11 @@ const flatItems = computed<FlatItem[]>(() => {
568570
{{ numberFormatter.format(getGroupDownloads(item.versions)!) }}
569571
</span>
570572
<span class="flex items-center gap-3 shrink-0">
571-
<span class="text-xs text-fg-muted" dir="ltr">{{ item.versions[0] }}</span>
573+
<span v-if="item.versions[0]" class="text-xs text-fg-muted" dir="ltr"
574+
>v{{ item.versions[0] }}</span
575+
>
572576
<DateTime
573-
v-if="getVersionTime(item.versions[0] ?? '')"
577+
v-if="item.versions[0] && getVersionTime(item.versions[0])"
574578
:datetime="getVersionTime(item.versions[0] ?? '')!"
575579
class="text-xs text-fg-subtle hidden sm:block"
576580
year="numeric"

server/api/registry/npmjs-versions/[...pkg].get.ts

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,15 @@ export default defineCachedEventHandler(
88
throw createError({ statusCode: 404, message: 'Package name is required' })
99
}
1010

11-
const packageName = decodeURIComponent(pkgParam)
11+
let packageName: string
12+
try {
13+
packageName = decodeURIComponent(pkgParam)
14+
} catch {
15+
throw createError({
16+
statusCode: 400,
17+
message: 'Invalid package name',
18+
})
19+
}
1220

1321
try {
1422
const versions = await fetchNpmVersionDownloadsFromApi(packageName)

0 commit comments

Comments
 (0)