Skip to content

Commit cbf8f98

Browse files
committed
feat: implement package-playground button
1 parent a281be6 commit cbf8f98

1 file changed

Lines changed: 10 additions & 4 deletions

File tree

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

Lines changed: 10 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
<script setup lang="ts">
22
import { joinURL } from 'ufo'
3-
import type { PackumentVersion, NpmVersionDist } from '#shared/types'
3+
import type { PackumentVersion, NpmVersionDist, ReadmeResponse } from '#shared/types'
44
import type { JsrPackageInfo } from '#shared/types/jsr'
55
import { assertValidPackageName } from '#shared/utils/npm'
66
@@ -56,13 +56,13 @@ const { data: downloads } = usePackageDownloads(packageName, 'last-week')
5656
const { data: weeklyDownloads } = usePackageWeeklyDownloadEvolution(packageName, { weeks: 52 })
5757
5858
// Fetch README for specific version if requested, otherwise latest
59-
const { data: readmeData } = useLazyFetch<{ html: string }>(
59+
const { data: readmeData } = useLazyFetch<ReadmeResponse>(
6060
() => {
6161
const base = `/api/registry/readme/${packageName.value}`
6262
const version = requestedVersion.value
6363
return version ? `${base}/v/${version}` : base
6464
},
65-
{ default: () => ({ html: '' }) },
65+
{ default: () => ({ html: '', playgroundLinks: [] }) },
6666
)
6767
6868
// Check if package exists on JSR (only for scoped packages)
@@ -664,9 +664,15 @@ defineOgImageComponent('Package', {
664664
</ul>
665665
</section>
666666

667-
<!-- Donwload stats -->
667+
<!-- Download stats -->
668668
<PackageDownloadStats :downloads="weeklyDownloads" />
669669

670+
<!-- Playground links -->
671+
<PackagePlaygrounds
672+
v-if="readmeData?.playgroundLinks?.length"
673+
:links="readmeData.playgroundLinks"
674+
/>
675+
670676
<section
671677
v-if="
672678
displayVersion?.engines && (displayVersion.engines.node || displayVersion.engines.npm)

0 commit comments

Comments
 (0)