typedoc-better-json
Version:
Transforms typedoc's json output to a format that is better for creating custom documentation website
23 lines (19 loc) • 599 B
text/typescript
import type { JSONOutput } from "typedoc";
export function isComponentType(data: JSONOutput.DeclarationReflection) {
return (
data.signatures &&
data.signatures[0] &&
data.signatures[0].type?.type === "reference" &&
data.signatures[0].type.name &&
isComponentName(data.signatures[0].type.name) &&
(data.signatures[0].type.name === "ReactNode" ||
data.signatures[0].type.name === "Element")
);
}
function isComponentName(str: string) {
const firstChar = str[0];
if (firstChar && firstChar === firstChar.toUpperCase()) {
return true;
}
return false;
}