@@ -5,13 +5,15 @@ import { assertValidPackageName, fetchLatestVersion } from '#shared/utils/npm'
55
66definePageMeta ({
77 name: ' docs' ,
8+ path: ' /package-docs/:path+' ,
9+ alias: [' /package/docs/:path+' , ' /docs/:path+' ],
810})
911
1012const route = useRoute (' docs' )
1113const router = useRouter ()
1214
1315const parsedRoute = computed (() => {
14- const segments = route .params .path ?.filter (Boolean ) || []
16+ const segments = route .params .path ?.filter (Boolean )
1517 const vIndex = segments .indexOf (' v' )
1618
1719 if (vIndex === - 1 || vIndex >= segments .length - 1 ) {
@@ -45,7 +47,7 @@ if (import.meta.server && !requestedVersion.value && packageName.value) {
4547 if (version ) {
4648 setResponseHeader (useRequestEvent ()! , ' Cache-Control' , ' no-cache' )
4749 app .runWithContext (() =>
48- navigateTo (' /docs/' + packageName .value + ' /v/' + version , { redirectCode: 302 }),
50+ navigateTo (' /package- docs/' + packageName .value + ' /v/' + version , { redirectCode: 302 }),
4951 )
5052 }
5153}
5456 [requestedVersion , latestVersion , packageName ],
5557 ([version , latest , name ]) => {
5658 if (! version && latest && name ) {
57- router .replace (` /docs/${name }/v/${latest } ` )
59+ router .replace (` /package- docs/${name }/v/${latest } ` )
5860 }
5961 },
6062 { immediate: true },
@@ -120,7 +122,7 @@ const showEmptyState = computed(() => docsData.value?.status !== 'ok')
120122 <div class =" flex items-center gap-3 min-w-0" >
121123 <NuxtLink
122124 v-if =" packageName"
123- :to =" `/${ packageName}` "
125+ :to =" { name: 'package', params: { package: [ packageName] } } "
124126 class =" font-mono text-lg sm:text-xl font-semibold text-fg hover:text-fg-muted transition-colors truncate"
125127 >
126128 {{ packageName }}
@@ -131,7 +133,7 @@ const showEmptyState = computed(() => docsData.value?.status !== 'ok')
131133 :current-version =" resolvedVersion"
132134 :versions =" pkg.versions"
133135 :dist-tags =" pkg['dist-tags']"
134- :url-pattern =" `/docs/${packageName}/v/{version}`"
136+ :url-pattern =" `/package- docs/${packageName}/v/{version}`"
135137 />
136138 <span v-else-if =" resolvedVersion" class =" text-fg-subtle font-mono text-sm shrink-0" >
137139 {{ resolvedVersion }}
@@ -179,7 +181,7 @@ const showEmptyState = computed(() => docsData.value?.status !== 'ok')
179181 <div class =" flex gap-4 mt-4" >
180182 <NuxtLink
181183 v-if =" packageName"
182- :to =" `/${ packageName}` "
184+ :to =" { name: 'package', params: { package: [ packageName] } } "
183185 class =" link-subtle font-mono text-sm"
184186 >
185187 View package
0 commit comments