Releases: TypeStrong/typedoc
Releases Β· TypeStrong/typedoc
v0.24.3
v0.24.2
Features
- Added semantic link coloring for reflection names & links, #2227.
Note: This resulted in function signatures becoming too busy for easy scanning with even slightly
complicated signatures as such, TypeDoc now only renders parameter names in the signature title
and includes the type in the parameter details as usual. This can be controlled with the new
--hideParameterTypesInTitle
option. - Conditional types will now render their branches on the next line for easier comprehension.
Bug Fixes
- Fixed
&
showing as&
and HTML text showing up in page contents navigation, #2224. - Increased padding between sections when one navigation column is displayed, #2225.
- Correct padding for navigation elements with a displayed icon, #2229.
- Fixed
source-order
sort strategy failing to compare reflections within a file. - Added
enum-member-source-order
specialization of thesource-order
sort strategy which only compares enum members, #2237. - Updated highlight colors for semantic links to meet WCAG AA contrast requirements, #2228.
- Type parameters are now highlighted consistently, #2230.
- Fixed semantic coloring in type and function signatures, #2227.
- Fixed issue where removing a reflection indirectly containing an object/function type would only partially remove the reflection, #2231.
- Fixed "Implementation of X.y" links if a mixture of methods and property-methods are used, #2233.
- "Implementation of" text to symbol-properties not contained in the documentation will now use the resolved name instead of a
__@
symbol name, #2234. - Fix expansion of globs if a single entry point is provided, #2235.
- Validation will no longer be skipped for sub packages when running with
--entryPointStrategy packages
. - Fixed broken theme toggle if the page contained a member named "theme".
Thanks!
v0.24.1
v0.24.0
Breaking Changes
@link
,@linkcode
and@linkplain
tags will now be resolved with TypeScript's link resolution by default. TheuseTsLinkResolution
option
can be used to turn this behavior off, but be aware that doing so will mean your links will be resolved differently by editor tooling and TypeDoc.- TypeDoc will no longer automatically load plugins from
node_modules
. Specify the--plugin
option to indicate which modules should be loaded. - The
packages
entry point strategy will now run TypeDoc in each provided package directory and then merge the results together.
The previouspackages
strategy has been preserved underlegacy-packages
and will be removed in 0.25. If the new strategy does not work
for your use case, please open an issue. - Removed
--logger
option, to disable all logging, set thelogLevel
option tonone
. - Dropped support for legacy
[[link]]
s, removed deprecatedReflection.findReflectionByName
. - Added
@overload
to default ignored tags.
API Breaking Changes
- The
label
property onReflection
has moved toComment
. - The default value of the
out
option has been changed from""
to"./docs"
, #2195. - Renamed
DeclarationReflection#version
toDeclarationReflection#projectVersion
to match property onProjectReflection
. - Removed unused
Reflection#originalName
. - Removed
Reflection#kindString
, useReflectionKind.singularString(reflection.kind)
orReflectionKind.pluralString(reflection.kind)
instead. - The
named-tuple-member
andtemplate-literal
type kind have been replaced withnamedTupleMember
andtemplateLiteral
, #2100. - Properties related to rendering are no longer stored on
Reflection
, includingurl
,anchor
,hasOwnDocument
, andcssClasses
. Application.bootstrap
will no longer load plugins. If you want to load plugins, useApplication.bootstrapWithPlugins
instead, #1635.- The options passed to
Application.bootstrap
will now be applied both before and after reading options files, which may cause a change in configuration
if using a custom script to run TypeDoc that includes some options, but other options are set in config files. - Moved
sources
property previously declared on baseReflection
class toDeclarationReflection
andSignatureReflection
. - Moved
relevanceBoost
fromContainerReflection
toDeclarationReflection
since setting it on the parent class has no effect. - Removed internal
ReferenceType.getSymbol
, reference types no longer reference thets.Symbol
to enable generation from serialized JSON. OptionsReader.priority
has been renamed toOptionsReader.order
to more accurately reflect how it works.ReferenceType
s which point to type parameters will now always be intentionally broken since they were never linked and should not be warned about when validating exports.ReferenceType
s now longer include anid
property for their target. They now instead include atarget
property.- Removed
Renderer.addExternalSymbolResolver
, useConverter.addExternalSymbolResolver
instead. - Removed
CallbackLogger
. - Removed
SerializeEventData
from serialization events. - A
PageEvent
is now required forgetRenderContext
. If caching the context object,page
must be updated whengetRenderContext
is called. PageEvent
no longer includes thetemplate
property. TheTheme.render
method is now expected to take the template to render the page with as its second argument.- Removed
secondaryNavigation
member onDefaultThemeRenderContext
. - Renamed
navigation
tosidebar
onDefaultThemeRenderContext
andnavigation.begin
/navigation.end
hooks tosidebar.begin
/sidebar.end
.
Features
- Added
--useTsLinkResolution
option (on by default) which tells TypeDoc to use TypeScript's@link
resolution. - Added
--jsDocCompatibility
option (on by default) which controls TypeDoc's automatic detection of code blocks in@example
and@default
tags. - Reworked default theme navigation to add support for a page table of contents, #1478, #2189.
- Added support for
@interface
on type aliases to tell TypeDoc to convert the fully resolved type as an interface, #1519 - Added support for
@namespace
on variable declarations to tell TypeDoc to convert the variable as a namespace, #2055. - Added support for
@prop
/@property
to specify documentation for a child property of a symbol, intended for use with@interface
. - TypeDoc will now produce more informative error messages for options which cannot be set from the cli, #2022.
- TypeDoc will now attempt to guess what option you may have meant if given an invalid option name.
- Plugins may now return a
Promise<void>
from theirload
function, #185. - TypeDoc now supports plugins written with ESM, #1635.
- Added
Renderer.preRenderAsyncJobs
andRenderer.postRenderAsyncJobs
, which may be used by plugins to perform async processing for rendering, #185.
Note: Conversion is still intentionally a synchronous process to ensure stability of converted projects between runs. - TypeDoc options may now be set under the
typedocOptions
key inpackage.json
, #2112. - Added
--cacheBust
option to tell TypeDoc to include include the generation time in files, #2124. - Added
--excludeReferences
option to tell TypeDoc to omit re-exports of a symbol already included from the documentation. - Introduced new render hooks
pageSidebar.begin
andpageSidebar.end
.
Bug Fixes
- TypeDoc will now ignore package.json files not containing a
name
field, #2190. - Fixed
@inheritDoc
on signatures (functions, methods, constructors, getters, setters) being unable to inherit from a non-signature. - Interfaces/classes created via extending a module will no longer contain variables/functions where the member should have been converted as properties/methods, #2150.
- TypeDoc will now ignore a leading
v
in versions, #2212. - Category titles now render with the same format in the page index and heading title, #2196.
- Fixed crash when using
typeof
on a reference with type arguments, #2220. - Fixed broken anchor links generated to signatures nested within objects.
Thanks!
- @bodil
- @futurGH
- @jm4rtinez
- @muratgozel
v0.23.28
v0.23.27
Features
- Added
--treatValidationWarningsAsErrors
to treat only validation warnings as errors without treating all warnings as errors, #2199.
Bug Fixes
- Fixed a bug where optional properties were not appropriately marked as optional, #2200.
- Fixed shifted navigation pane on devices 1024px wide, #2191.
- Add missing
@private
and@protected
tags totypedoc/tsdoc.json
, #2187.
Thanks!
v0.23.26
Features
- Added
Application.EVENT_VALIDATE_PROJECT
event for plugins which implement custom validation, #2183. - Plugins may now return an object from external symbol resolvers, #2066.
- Expose
Comment.displayPartsToMarkdown
on for themes overwriting thecomment
helper, #2115.
Bug Fixes
- Fix crash when converting
export default undefined
, #2175. - Fix error in console when clicking on headings in the readme, #2170.
- TypeDoc will now ignore parameters of callback parameters when validating that all parameters have documentation, #2154.
Thanks!
v0.23.25
Breaking Changes
- Upgraded Shiki, if your highlight theme was set to
material-<theme>
, the value will need to be changed to
material-theme-<theme>
, see the Shiki release notes.
Features
- Added new
excludeNotDocumentedKinds
variable to control which reflection types can be removed
by theexcludeNotDocumented
option, #2162. - Added
typedoc.jsonc
,typedoc.config.js
,typedoc.config.cjs
,typedoc.cjs
to the list of files
which TypeDoc will automatically use as configuration files.
Bug Fixes
- Entry points under
node_modules
will no longer be ignored, #2151. - Corrected behavior of
excludeNotDocumented
on arrow function-variables, #2156. - Added
package.json
to exports declaration.
Thanks!
- @boneskull
- @Mikkal24
- @Zamiell