docusaurus-plugin-typedoc-api
Version:
Docusaurus plugin that provides source code API documentation powered by TypeDoc.
53 lines (49 loc) • 1.92 kB
JavaScript
;
const useReflectionMap = require('../hooks/useReflectionMap.js');
const visibility = require('../utils/visibility.js');
const AnchorLink = require('./AnchorLink.js');
const Member = require('./Member.js');
const MembersGroup = require('./MembersGroup.js');
const jsxRuntime = require('react/jsx-runtime');
// https://github.com/TypeStrong/typedoc-default-themes/blob/master/src/default/partials/members.hbs
function Members({
reflection
}) {
const reflections = useReflectionMap.useReflectionMap();
if (reflection.categories && reflection.categories.length > 0) {
return /*#__PURE__*/jsxRuntime.jsx(jsxRuntime.Fragment, {
children: reflection.categories.map(category => {
if (visibility.allCategoryChildrenHaveOwnDocument(category, reflections)) {
return null;
}
return /*#__PURE__*/jsxRuntime.jsxs("section", {
className: "tsd-panel-group tsd-member-group",
children: [/*#__PURE__*/jsxRuntime.jsxs("h2", {
children: [category.title === '__CATEGORY__' ? 'Other' : category.title, ' ', /*#__PURE__*/jsxRuntime.jsx(AnchorLink.AnchorLink, {
id: category.title
})]
}), category.children?.map(child => {
if (visibility.hasOwnDocument(child, reflections)) {
return null;
}
return /*#__PURE__*/jsxRuntime.jsx(Member.Member, {
id: child
}, child);
})]
}, category.title);
})
});
}
return /*#__PURE__*/jsxRuntime.jsx(jsxRuntime.Fragment, {
children: reflection.groups?.map(group => {
if (visibility.allGroupChildrenHaveOwnDocument(group, reflections)) {
return null;
}
return /*#__PURE__*/jsxRuntime.jsx(MembersGroup.MembersGroup, {
group: group
}, group.title);
})
});
}
exports.Members = Members;
//# sourceMappingURL=Members.js.map