fix(website): members only on interfaces and classes

This commit is contained in:
iCrawl
2023-04-09 19:12:42 +02:00
parent 7d3827ebd1
commit 250eccf118

View File

@@ -1,7 +1,7 @@
import { generatePath } from '@discordjs/api-extractor-utils'; import { generatePath } from '@discordjs/api-extractor-utils';
import { tryResolveSummaryText } from '@discordjs/scripts'; import { tryResolveSummaryText } from '@discordjs/scripts';
import type { ApiClass, ApiDeclaredItem, ApiItemContainerMixin } from '@microsoft/api-extractor-model'; import type { ApiClass, ApiDeclaredItem, ApiItemContainerMixin } from '@microsoft/api-extractor-model';
import { ExcerptTokenKind } from '@microsoft/api-extractor-model'; import { ApiItemKind, ExcerptTokenKind } from '@microsoft/api-extractor-model';
import type { NextRequest } from 'next/server'; import type { NextRequest } from 'next/server';
import { NextResponse } from 'next/server'; import { NextResponse } from 'next/server';
import { memberPredicate } from '~/components/documentation/util'; import { memberPredicate } from '~/components/documentation/util';
@@ -50,31 +50,34 @@ export async function GET(_: NextRequest, { params }: { params: { item: string;
.filter(Boolean) ?? null, .filter(Boolean) ?? null,
summary: tryResolveSummaryText(member as ApiDeclaredItem) ?? '', summary: tryResolveSummaryText(member as ApiDeclaredItem) ?? '',
path: generatePath(member.getHierarchy(), params.version), path: generatePath(member.getHierarchy(), params.version),
members: resolveMembers(member as ApiItemContainerMixin, memberPredicate).map((member) => { members:
const isDeprecated = Boolean(member.item.tsdocComment?.deprecatedBlock); member.kind === ApiItemKind.Class || member.kind === ApiItemKind.Interface
? resolveMembers(member as ApiItemContainerMixin, memberPredicate).map((member) => {
const isDeprecated = Boolean(member.item.tsdocComment?.deprecatedBlock);
return { return {
inheritedFrom: member.inherited inheritedFrom: member.inherited
? { ? {
name: member.inherited.displayName, name: member.inherited.displayName,
kind: member.inherited.kind, kind: member.inherited.kind,
summary: tryResolveSummaryText(member.inherited as unknown as ApiDeclaredItem) ?? '', summary: tryResolveSummaryText(member.inherited as unknown as ApiDeclaredItem) ?? '',
path: generatePath(member.inherited.getHierarchy(), params.version), path: generatePath(member.inherited.getHierarchy(), params.version),
} }
: null, : null,
name: member.item.displayName, name: member.item.displayName,
kind: member.item.kind, kind: member.item.kind,
deprecated: isDeprecated, deprecated: isDeprecated,
// @ts-expect-error: Typings // @ts-expect-error: Typings
readonly: member.item.isReadonly ?? false, readonly: member.item.isReadonly ?? false,
optional: member.item.isOptional, optional: member.item.isOptional,
// @ts-expect-error: Typings // @ts-expect-error: Typings
static: member.item.isStatic ?? false, static: member.item.isStatic ?? false,
// @ts-expect-error: Typings // @ts-expect-error: Typings
protected: member.item.isProtected ?? false, protected: member.item.isProtected ?? false,
summary: tryResolveSummaryText(member.item as ApiDeclaredItem) ?? '', summary: tryResolveSummaryText(member.item as ApiDeclaredItem) ?? '',
path: generatePath(member.item.getHierarchy(), params.version), path: generatePath(member.item.getHierarchy(), params.version),
}; };
}), })
: null,
}); });
} }