mirror of
https://github.com/discordjs/discord.js.git
synced 2026-03-14 10:33:30 +01:00
fix(route): Conditionally prefix package names (#9975)
fix(route): conditionally prefix package names
This commit is contained in:
@@ -3,6 +3,7 @@
|
|||||||
import type { ApiItemKind } from '@discordjs/api-extractor-model';
|
import type { ApiItemKind } from '@discordjs/api-extractor-model';
|
||||||
import { ImageResponse } from '@vercel/og';
|
import { ImageResponse } from '@vercel/og';
|
||||||
import type { NextRequest } from 'next/server';
|
import type { NextRequest } from 'next/server';
|
||||||
|
import { resolvePackageName } from '~/util/resolvePackageName';
|
||||||
|
|
||||||
export const runtime = 'edge';
|
export const runtime = 'edge';
|
||||||
|
|
||||||
@@ -87,7 +88,7 @@ export async function GET(request: NextRequest) {
|
|||||||
const hasMethods = searchParams.has('methods');
|
const hasMethods = searchParams.has('methods');
|
||||||
const hasProps = searchParams.has('props');
|
const hasProps = searchParams.has('props');
|
||||||
const hasMembers = searchParams.has('members');
|
const hasMembers = searchParams.has('members');
|
||||||
const pkg = hasPkg ? searchParams.get('pkg') : '';
|
const pkg = hasPkg ? resolvePackageName(searchParams.get('pkg')!) : '';
|
||||||
const kind = hasKind ? searchParams.get('kind')! : 'Method';
|
const kind = hasKind ? searchParams.get('kind')! : 'Method';
|
||||||
const name = hasName ? searchParams.get('name')!.slice(0, 100) : 'My default name which is super long to overflow';
|
const name = hasName ? searchParams.get('name')!.slice(0, 100) : 'My default name which is super long to overflow';
|
||||||
const methods = hasMethods ? searchParams.get('methods') : '';
|
const methods = hasMethods ? searchParams.get('methods') : '';
|
||||||
@@ -103,7 +104,7 @@ export async function GET(request: NextRequest) {
|
|||||||
tw="flex flex-row bg-[#181818] h-full w-full p-24"
|
tw="flex flex-row bg-[#181818] h-full w-full p-24"
|
||||||
>
|
>
|
||||||
<div tw="flex flex-col mx-auto h-full text-white">
|
<div tw="flex flex-col mx-auto h-full text-white">
|
||||||
<div tw="flex flex-row text-4xl text-gray-400">@discordjs/{pkg}</div>
|
<div tw="flex flex-row text-4xl text-gray-400">{pkg}</div>
|
||||||
<div tw="flex flex-col justify-between h-full w-full pt-14">
|
<div tw="flex flex-col justify-between h-full w-full pt-14">
|
||||||
<div tw="flex flex-row items-center max-w-full">
|
<div tw="flex flex-row items-center max-w-full">
|
||||||
<span tw="mr-6">{resolveIcon(kind as keyof typeof ApiItemKind)}</span>
|
<span tw="mr-6">{resolveIcon(kind as keyof typeof ApiItemKind)}</span>
|
||||||
|
|||||||
@@ -6,9 +6,10 @@ import type {
|
|||||||
Excerpt,
|
Excerpt,
|
||||||
} from '@discordjs/api-extractor-model';
|
} from '@discordjs/api-extractor-model';
|
||||||
import type { DocSection } from '@microsoft/tsdoc';
|
import type { DocSection } from '@microsoft/tsdoc';
|
||||||
|
import { resolvePackageName } from './resolvePackageName';
|
||||||
|
|
||||||
export const findMemberByKey = (model: ApiModel, packageName: string, containerKey: string) => {
|
export const findMemberByKey = (model: ApiModel, packageName: string, containerKey: string) => {
|
||||||
const pkg = model.tryGetPackageByName(packageName === 'discord.js' ? packageName : `@discordjs/${packageName}`)!;
|
const pkg = model.tryGetPackageByName(resolvePackageName(packageName))!;
|
||||||
return (pkg.members[0] as ApiEntryPoint).tryGetMemberByKey(containerKey);
|
return (pkg.members[0] as ApiEntryPoint).tryGetMemberByKey(containerKey);
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -17,7 +18,7 @@ export const findMember = (model: ApiModel, packageName: string, memberName: str
|
|||||||
return undefined;
|
return undefined;
|
||||||
}
|
}
|
||||||
|
|
||||||
const pkg = model.tryGetPackageByName(packageName === 'discord.js' ? packageName : `@discordjs/${packageName}`)!;
|
const pkg = model.tryGetPackageByName(resolvePackageName(packageName))!;
|
||||||
return pkg.entryPoints[0]?.findMembersByName(memberName)[0];
|
return pkg.entryPoints[0]?.findMembersByName(memberName)[0];
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|||||||
3
apps/website/src/util/resolvePackageName.ts
Normal file
3
apps/website/src/util/resolvePackageName.ts
Normal file
@@ -0,0 +1,3 @@
|
|||||||
|
export function resolvePackageName(packageName: string) {
|
||||||
|
return packageName === 'discord.js' ? packageName : `@discordjs/${packageName}`;
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user