-
-
Notifications
You must be signed in to change notification settings - Fork 750
Description
Creating an issue to track the work that I'm doing.
Search Terms
jsx, theme, handlebars
Problem
Themes implemented in handlebars, do not use native TS language features. Themes can be typechecked, compiled, and rendered with less tooling if they are written natively in TS.
Suggested Solution
Implement themes as JSX components which can be rendered at build time to static HTML.
Theme is an object with functions/methods. Default themes are implemented as a class, so they can be subclassed, but themes can also use {...defaultTheme, ...overrideFunctions} if they prefer to avoid classes.
Some "extension points" in the theme can be implemented as stubbed methods which return void. Theme implementers can choose to implement these methods to inject markup into the emitted docs.
Related issues:
#1266
TypeStrong/typedoc-default-themes#137
#1543