Skip to content

Commit 1ef80c0

Browse files
committed
perf: change package source caching method
1 parent ddb37be commit 1ef80c0

3 files changed

Lines changed: 8 additions & 9 deletions

File tree

server/api/registry/readme/[...pkg].get.ts

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,8 @@ import { resolvePackageReadmeSource } from '#server/utils/readme-loaders'
1313
export default defineCachedEventHandler(
1414
async event => {
1515
try {
16-
const { packageName, markdown, repoInfo } = await resolvePackageReadmeSource(event)
16+
const packagePath = getRouterParam(event, 'pkg') ?? ''
17+
const { packageName, markdown, repoInfo } = await resolvePackageReadmeSource(packagePath)
1718

1819
if (!markdown) {
1920
return { html: '', mdExists: false, playgroundLinks: [], toc: [] }

server/api/registry/readme/markdown/[...pkg].get.ts

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,8 @@ import { resolvePackageReadmeSource } from '#server/utils/readme-loaders'
44

55
export default async function getMarkdownReadme(event: H3Event) {
66
try {
7-
return await resolvePackageReadmeSource(event)
7+
const packagePath = getRouterParam(event, 'pkg') ?? ''
8+
return await resolvePackageReadmeSource(packagePath)
89
} catch (error: unknown) {
910
handleApiError(error, {
1011
statusCode: 502,

server/utils/readme-loaders.ts

Lines changed: 4 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -46,9 +46,9 @@ export async function fetchReadmeFromJsdelivr(
4646
return null
4747
}
4848

49-
export const resolvePackageReadmeSource = defineCachedEventHandler(
50-
async event => {
51-
const pkgParamSegments = getRouterParam(event, 'pkg')?.split('/') ?? []
49+
export const resolvePackageReadmeSource = defineCachedFunction(
50+
async (packagePath: string) => {
51+
const pkgParamSegments = packagePath.split('/')
5252

5353
const { rawPackageName, rawVersion } = parsePackageParams(pkgParamSegments)
5454

@@ -107,9 +107,6 @@ export const resolvePackageReadmeSource = defineCachedEventHandler(
107107
{
108108
maxAge: CACHE_MAX_AGE_ONE_HOUR,
109109
swr: true,
110-
getKey: event => {
111-
const pkg = getRouterParam(event, 'pkg') ?? ''
112-
return `readme-source:v8:${pkg.replace(/\/+$/, '').trim()}`
113-
},
110+
getKey: (packagePath: string) => packagePath,
114111
},
115112
)

0 commit comments

Comments
 (0)