fix: Correct @link tags that involve parents (#9351)

This commit is contained in:
Jiralite
2023-04-09 10:22:07 +01:00
committed by GitHub
parent b2eec5f9fc
commit fbbce3eb4b
3 changed files with 8 additions and 3 deletions

View File

@@ -8,6 +8,7 @@ import type {
ApiPropertySignature, ApiPropertySignature,
} from '@microsoft/api-extractor-model'; } from '@microsoft/api-extractor-model';
import type { TableOfContentsSerialized } from '../TableOfContentItems'; import type { TableOfContentsSerialized } from '../TableOfContentItems';
import { METHOD_SEPARATOR, OVERLOAD_SEPARATOR } from '~/util/constants';
import { resolveMembers } from '~/util/members'; import { resolveMembers } from '~/util/members';
export function hasProperties(item: ApiItemContainerMixin) { export function hasProperties(item: ApiItemContainerMixin) {
@@ -23,7 +24,9 @@ export function hasMethods(item: ApiItemContainerMixin) {
} }
export function resolveItemURI(item: ApiItem): string { export function resolveItemURI(item: ApiItem): string {
return `${item.displayName}:${item.kind}`; return !item.parent || item.parent.kind === ApiItemKind.EntryPoint
? `${item.displayName}${OVERLOAD_SEPARATOR}${item.kind}`
: `${item.parent.displayName}${OVERLOAD_SEPARATOR}${item.parent.kind}${METHOD_SEPARATOR}${item.displayName}`;
} }
function memberPredicate(item: ApiItem): item is ApiMethod | ApiMethodSignature | ApiProperty | ApiPropertySignature { function memberPredicate(item: ApiItem): item is ApiMethod | ApiMethodSignature | ApiProperty | ApiPropertySignature {

View File

@@ -16,6 +16,8 @@ export const N_RECENT_VERSIONS = 2;
export const OVERLOAD_SEPARATOR = ':'; export const OVERLOAD_SEPARATOR = ':';
export const METHOD_SEPARATOR = '#';
export const DESCRIPTION = export const DESCRIPTION =
"discord.js is a powerful Node.js module that allows you to interact with the Discord API very easily. It takes a much more object-oriented approach than most other JS Discord libraries, making your bot's code significantly tidier and easier to comprehend."; "discord.js is a powerful Node.js module that allows you to interact with the Discord API very easily. It takes a much more object-oriented approach than most other JS Discord libraries, making your bot's code significantly tidier and easier to comprehend.";

View File

@@ -50,7 +50,7 @@ export class SlashCommandBuilder {
* Whether the command is enabled by default when the app is added to a guild * Whether the command is enabled by default when the app is added to a guild
* *
* @deprecated This property is deprecated and will be removed in the future. * @deprecated This property is deprecated and will be removed in the future.
* You should use {@link (SlashCommandBuilder:class).setDefaultMemberPermissions} or {@link (SlashCommandBuilder:class).setDMPermission} instead. * You should use {@link SlashCommandBuilder.setDefaultMemberPermissions} or {@link SlashCommandBuilder.setDMPermission} instead.
*/ */
public readonly default_permission: boolean | undefined = undefined; public readonly default_permission: boolean | undefined = undefined;
@@ -96,7 +96,7 @@ export class SlashCommandBuilder {
* If set to `false`, you will have to later `PUT` the permissions for this command. * If set to `false`, you will have to later `PUT` the permissions for this command.
* @param value - Whether or not to enable this command by default * @param value - Whether or not to enable this command by default
* @see {@link https://discord.com/developers/docs/interactions/application-commands#permissions} * @see {@link https://discord.com/developers/docs/interactions/application-commands#permissions}
* @deprecated Use {@link (SlashCommandBuilder:class).setDefaultMemberPermissions} or {@link (SlashCommandBuilder:class).setDMPermission} instead. * @deprecated Use {@link SlashCommandBuilder.setDefaultMemberPermissions} or {@link SlashCommandBuilder.setDMPermission} instead.
*/ */
public setDefaultPermission(value: boolean) { public setDefaultPermission(value: boolean) {
// Assert the value matches the conditions // Assert the value matches the conditions