mirror of
https://github.com/discordjs/discord.js.git
synced 2026-03-11 09:03:29 +01:00
feat(website): add extends clauses, enum members and automatic -types links (#8270)
* feat(website): add extends clauses, enum members and automatic -types links * chore: remove vscode settings * refactor: remove util file
This commit is contained in:
@@ -13,6 +13,7 @@ import {
|
||||
type TypeParameter,
|
||||
} from '@microsoft/api-extractor-model';
|
||||
import type { DocNode, DocParagraph, DocPlainText } from '@microsoft/tsdoc';
|
||||
import { Meaning, ModuleSource } from '@microsoft/tsdoc/lib-commonjs/beta/DeclarationReference';
|
||||
|
||||
export function findPackage(model: ApiModel, name: string): ApiPackage | undefined {
|
||||
return (model.findMembersByName(name)[0] ?? model.findMembersByName(`@discordjs/${name}`)[0]) as
|
||||
@@ -135,6 +136,17 @@ export interface ParameterDocumentation {
|
||||
tokens: TokenDocumentation[];
|
||||
}
|
||||
|
||||
function createDapiTypesURL(meaning: Meaning, name: string) {
|
||||
const base = 'https://discord-api-types.dev/api/discord-api-types-v10';
|
||||
|
||||
switch (meaning) {
|
||||
case 'type':
|
||||
return `${base}#${name}`;
|
||||
default:
|
||||
return `${base}/${meaning}/${name}`;
|
||||
}
|
||||
}
|
||||
|
||||
export function genReference(item: ApiItem) {
|
||||
return {
|
||||
name: resolveName(item),
|
||||
@@ -148,6 +160,19 @@ export function genToken(model: ApiModel, token: ExcerptToken) {
|
||||
token.canonicalReference._navigation = '.';
|
||||
}
|
||||
|
||||
if (
|
||||
token.canonicalReference?.source instanceof ModuleSource &&
|
||||
token.canonicalReference.symbol &&
|
||||
token.canonicalReference.source.packageName === 'discord-api-types' &&
|
||||
token.canonicalReference.symbol.meaning
|
||||
) {
|
||||
return {
|
||||
kind: token.kind,
|
||||
text: token.text,
|
||||
path: createDapiTypesURL(token.canonicalReference.symbol.meaning, token.text),
|
||||
};
|
||||
}
|
||||
|
||||
const item = token.canonicalReference
|
||||
? model.resolveDeclarationReference(token.canonicalReference, undefined).resolvedApiItem ?? null
|
||||
: null;
|
||||
|
||||
Reference in New Issue
Block a user