in repo-scripts/api-documenter/src/documenters/MarkdownDocumenterHelpers.ts [121:169]
function getHeadingAnchorForApiItem(apiItem: ApiItem): string {
const scopedName: string = lowercaseAndRemoveSymbols(
apiItem.getScopedNameWithinPackage()
);
switch (apiItem.kind) {
case ApiItemKind.Function:
return `${scopedName}`;
case ApiItemKind.Variable:
return `${scopedName}`;
case ApiItemKind.TypeAlias:
return `${scopedName}`;
case ApiItemKind.Enum:
return `${scopedName}`;
case ApiItemKind.Method:
case ApiItemKind.MethodSignature:
return `${scopedName}`;
case ApiItemKind.Property:
case ApiItemKind.PropertySignature:
return `${scopedName}`;
case ApiItemKind.Constructor:
case ApiItemKind.ConstructSignature:
return `${scopedName}`;
case ApiItemKind.Class:
return `${scopedName}_class`;
case ApiItemKind.Interface:
return `${scopedName}_interface`;
case ApiItemKind.Model:
return `api-reference`;
case ApiItemKind.Namespace:
return `${scopedName}_namespace`;
case ApiItemKind.Package:
const unscopedPackageName: string = lowercaseAndRemoveSymbols(
PackageName.getUnscopedName(apiItem.displayName)
);
return `${unscopedPackageName}_package`;
case ApiItemKind.EntryPoint:
const packageName: string = apiItem.parent!.displayName;
return lowercaseAndRemoveSymbols(
`${packageName}${apiItem.displayName && '/' + apiItem.displayName}`
);
case ApiItemKind.EnumMember:
return `${scopedName}_enummember`;
default:
throw new Error(
'Unsupported API item kind:3 ' + apiItem.kind + apiItem.displayName
);
}
}