ig-typedoc-theme
Version:
infragistics theme for typedoc API documentation with versioning and localization
31 lines (30 loc) • 1.85 kB
JavaScript
import { JSX, ReflectionType } from 'typedoc';
import { renderFlags } from '../utils/lib.js';
import { localize } from 'typedoc-plugin-localization';
export const memberSignatureBody = (context, props, { hideSources = false } = {}) => (JSX.createElement(JSX.Fragment, null,
!hideSources && context.memberSources(props),
context.commentSummary(props),
context.commentTags(props),
!!props.typeParameters && (JSX.createElement(JSX.Fragment, null,
JSX.createElement("h4", { class: "tsd-type-parameters-title" }, localize('Type parameters')),
context.typeParameters(props.typeParameters))),
props.parameters && props.parameters.length > 0 && (JSX.createElement(JSX.Fragment, null,
JSX.createElement("h4", { class: "tsd-parameters-title" }, localize('Parameters')),
JSX.createElement("ul", { class: "tsd-parameters" }, props.parameters.map((item) => (JSX.createElement("li", null,
JSX.createElement("h5", null,
renderFlags(item.flags),
!!item.flags.isRest && JSX.createElement("span", { class: "tsd-signature-symbol" }, "..."),
item.name,
": ",
context.type(item.type),
item.defaultValue != null && (JSX.createElement("span", { class: "tsd-signature-symbol" },
" = ",
item.defaultValue))),
context.commentSummary(item),
context.commentTags(item),
item.type instanceof ReflectionType && context.typeDeclaration(item.type))))))),
props.type && (JSX.createElement(JSX.Fragment, null,
JSX.createElement("h4", { class: "tsd-returns-title" },
localize('Returns') + ' ',
context.type(props.type)),
props.type instanceof ReflectionType && context.typeDeclaration(props.type)))));