typedoc 0.28.18 → 0.28.20

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (397) hide show
  1. package/README.md +12 -13
  2. package/bin/typedoc +1 -1
  3. package/dist/browser-locales/fr.d.ts +2 -0
  4. package/dist/browser-locales/fr.js +62 -0
  5. package/dist/browser-utils.js +29 -2
  6. package/dist/cli.js +111 -0
  7. package/dist/index.js +17888 -44
  8. package/dist/models.js +3736 -0
  9. package/dist/node-utils.js +7018 -0
  10. package/dist/serialization.js +430 -0
  11. package/dist/{lib → types}/application-events.d.ts +2 -0
  12. package/dist/{lib → types}/application.d.ts +51 -8
  13. package/dist/{lib → types}/converter/comments/declarationReferenceResolver.d.ts +1 -1
  14. package/dist/{lib → types}/converter/comments/discovery.d.ts +3 -3
  15. package/dist/{lib → types}/converter/comments/index.d.ts +4 -4
  16. package/dist/{lib → types}/converter/comments/lexer.d.ts +1 -1
  17. package/dist/{lib → types}/converter/comments/linkResolver.d.ts +1 -1
  18. package/dist/{lib → types}/converter/comments/parser.d.ts +3 -4
  19. package/dist/{lib → types}/converter/comments/textParser.d.ts +8 -2
  20. package/dist/{lib → types}/converter/components.d.ts +1 -1
  21. package/dist/{lib → types}/converter/context.d.ts +2 -2
  22. package/dist/{lib → types}/converter/converter.d.ts +6 -8
  23. package/dist/{lib → types}/converter/factories/signature.d.ts +1 -1
  24. package/dist/{lib → types}/converter/index.d.ts +1 -0
  25. package/dist/{lib → types}/converter/plugins/CategoryPlugin.d.ts +2 -2
  26. package/dist/{lib → types}/converter/plugins/GroupPlugin.d.ts +2 -3
  27. package/dist/{lib → types}/converter/plugins/IncludePlugin.d.ts +1 -1
  28. package/dist/{lib → types}/converter/plugins/InheritDocPlugin.d.ts +1 -1
  29. package/dist/{lib → types}/converter/plugins/LinkResolverPlugin.d.ts +3 -3
  30. package/dist/{lib → types}/converter/plugins/SourcePlugin.d.ts +1 -2
  31. package/dist/{lib → types}/converter/plugins/TypePlugin.d.ts +1 -1
  32. package/dist/{lib → types}/converter/types.d.ts +1 -1
  33. package/dist/{lib/converter/utils → types/converter/utilities}/reflections.d.ts +1 -1
  34. package/dist/{lib/converter/utils → types/converter/utilities}/repository.d.ts +14 -13
  35. package/dist/{index.d.ts → types/index.d.ts} +15 -16
  36. package/dist/{lib → types}/internationalization/internationalization.d.ts +0 -8
  37. package/dist/types/internationalization/locale-utils.d.ts +3 -0
  38. package/dist/types/internationalization/locales/de.d.ts +368 -0
  39. package/dist/{lib/internationalization/locales/en.d.cts → types/internationalization/locales/en.d.ts} +2 -1
  40. package/dist/types/internationalization/locales/fr.d.ts +346 -0
  41. package/dist/types/internationalization/locales/ja.d.ts +307 -0
  42. package/dist/types/internationalization/locales/ko.d.ts +221 -0
  43. package/dist/types/internationalization/locales/zh.d.ts +452 -0
  44. package/dist/{lib → types}/internationalization/translatable.d.ts +1 -1
  45. package/dist/{lib → types}/models/FileRegistry.d.ts +6 -1
  46. package/dist/{lib → types}/models/ReflectionSymbolId.d.ts +9 -3
  47. package/dist/{lib → types}/models/SourceReference.d.ts +5 -3
  48. package/dist/types/models.d.ts +1 -0
  49. package/dist/types/node-utils.d.ts +1 -0
  50. package/dist/{lib → types}/output/components.d.ts +3 -3
  51. package/dist/{lib → types}/output/events.d.ts +1 -2
  52. package/dist/{lib → types}/output/formatter.d.ts +1 -2
  53. package/dist/{lib → types}/output/output.d.ts +2 -2
  54. package/dist/{lib → types}/output/renderer.d.ts +4 -5
  55. package/dist/{lib → types}/output/router.d.ts +3 -2
  56. package/dist/{lib → types}/output/themes/MarkedPlugin.d.ts +3 -3
  57. package/dist/{lib → types}/output/themes/default/DefaultTheme.d.ts +1 -1
  58. package/dist/{lib → types}/output/themes/default/DefaultThemeRenderContext.d.ts +25 -25
  59. package/dist/{lib → types}/output/themes/default/layouts/default.d.ts +1 -1
  60. package/dist/{lib → types}/output/themes/default/partials/anchor-icon.d.ts +1 -1
  61. package/dist/{lib → types}/output/themes/default/partials/breadcrumb.d.ts +1 -1
  62. package/dist/{lib → types}/output/themes/default/partials/comment.d.ts +1 -1
  63. package/dist/{lib → types}/output/themes/default/partials/header.d.ts +1 -1
  64. package/dist/{lib → types}/output/themes/default/partials/hierarchy.d.ts +1 -1
  65. package/dist/{lib → types}/output/themes/default/partials/icon.d.ts +1 -1
  66. package/dist/{lib → types}/output/themes/default/partials/index.d.ts +1 -1
  67. package/dist/{lib → types}/output/themes/default/partials/member.d.ts +1 -1
  68. package/dist/{lib → types}/output/themes/default/partials/member.getterSetter.d.ts +1 -1
  69. package/dist/{lib → types}/output/themes/default/partials/member.signature.body.d.ts +1 -1
  70. package/dist/{lib → types}/output/themes/default/partials/member.signature.title.d.ts +2 -2
  71. package/dist/{lib → types}/output/themes/default/partials/member.signatures.d.ts +1 -1
  72. package/dist/{lib → types}/output/themes/default/partials/member.sources.d.ts +1 -1
  73. package/dist/{lib → types}/output/themes/default/partials/members.d.ts +1 -1
  74. package/dist/{lib → types}/output/themes/default/partials/moduleReflection.d.ts +1 -1
  75. package/dist/{lib → types}/output/themes/default/partials/navigation.d.ts +1 -1
  76. package/dist/{lib → types}/output/themes/default/partials/reflectionPreview.d.ts +1 -1
  77. package/dist/{lib → types}/output/themes/default/partials/toolbar.d.ts +1 -1
  78. package/dist/{lib → types}/output/themes/default/partials/type.d.ts +2 -2
  79. package/dist/{lib → types}/output/themes/default/partials/typeDetails.d.ts +2 -2
  80. package/dist/{lib → types}/output/themes/default/partials/typeParameters.d.ts +1 -1
  81. package/dist/{lib → types}/output/themes/default/templates/document.d.ts +1 -1
  82. package/dist/{lib → types}/output/themes/default/templates/hierarchy.d.ts +1 -1
  83. package/dist/{lib → types}/output/themes/default/templates/index.d.ts +1 -1
  84. package/dist/{lib → types}/output/themes/default/templates/reflection.d.ts +1 -1
  85. package/dist/{lib → types}/output/themes/lib.d.ts +1 -1
  86. package/dist/types/serialization.d.ts +1 -0
  87. package/dist/types/tsconfig.tsbuildinfo +1 -0
  88. package/dist/{lib → types}/utils/ValidatingFileRegistry.d.ts +1 -1
  89. package/dist/{lib → types}/utils/entry-point.d.ts +2 -2
  90. package/dist/{lib → types}/utils/general.d.ts +3 -0
  91. package/dist/types/utils/index.d.ts +22 -0
  92. package/dist/{lib → types}/utils/options/declaration.d.ts +2 -1
  93. package/dist/{lib → types}/utils/options/defaults.d.ts +1 -1
  94. package/dist/{lib → types}/utils/options/index.d.ts +2 -1
  95. package/dist/{lib → types}/utils/options/options.d.ts +1 -1
  96. package/dist/{lib → types}/utils/options/tsdoc-defaults.d.ts +1 -1
  97. package/dist/{lib → types}/utils/reflections.d.ts +1 -1
  98. package/dist/{lib → types}/utils/sort.d.ts +1 -2
  99. package/dist/{lib → types}/utils-common/general.d.ts +4 -4
  100. package/dist/{lib → types}/utils-common/jsx.elements.d.ts +16 -0
  101. package/dist/types/utils-common.d.ts +1 -0
  102. package/dist/{lib → types}/validation/documentation.d.ts +1 -1
  103. package/dist/{lib → types}/validation/exports.d.ts +1 -1
  104. package/dist/types/validation/filePaths.d.ts +3 -0
  105. package/dist/{lib → types}/validation/links.d.ts +1 -1
  106. package/dist/{lib → types}/validation/unusedMergeModuleWith.d.ts +1 -1
  107. package/dist/utils-common.js +1311 -0
  108. package/package.json +46 -37
  109. package/static/main.js +4 -4
  110. package/static/style.css +18 -3
  111. package/tsdoc.json +4 -0
  112. package/typedoc-config.schema.json +2 -0
  113. package/dist/lib/application-events.js +0 -5
  114. package/dist/lib/application.js +0 -716
  115. package/dist/lib/cli.js +0 -111
  116. package/dist/lib/converter/comments/blockLexer.js +0 -391
  117. package/dist/lib/converter/comments/declarationReferenceResolver.js +0 -218
  118. package/dist/lib/converter/comments/discovery.js +0 -563
  119. package/dist/lib/converter/comments/index.js +0 -241
  120. package/dist/lib/converter/comments/lexer.js +0 -10
  121. package/dist/lib/converter/comments/lineLexer.js +0 -279
  122. package/dist/lib/converter/comments/linkResolver.js +0 -186
  123. package/dist/lib/converter/comments/parser.js +0 -538
  124. package/dist/lib/converter/comments/rawLexer.js +0 -218
  125. package/dist/lib/converter/comments/tagName.js +0 -58
  126. package/dist/lib/converter/comments/textParser.js +0 -372
  127. package/dist/lib/converter/components.js +0 -3
  128. package/dist/lib/converter/context.js +0 -311
  129. package/dist/lib/converter/convert-expression.js +0 -58
  130. package/dist/lib/converter/converter-events.js +0 -13
  131. package/dist/lib/converter/converter.js +0 -705
  132. package/dist/lib/converter/factories/index-signature.js +0 -50
  133. package/dist/lib/converter/factories/signature.js +0 -353
  134. package/dist/lib/converter/factories/symbol-id.js +0 -50
  135. package/dist/lib/converter/index.js +0 -3
  136. package/dist/lib/converter/jsdoc.js +0 -135
  137. package/dist/lib/converter/plugins/CategoryPlugin.js +0 -278
  138. package/dist/lib/converter/plugins/CommentPlugin.js +0 -770
  139. package/dist/lib/converter/plugins/GroupPlugin.js +0 -281
  140. package/dist/lib/converter/plugins/ImplementsPlugin.js +0 -438
  141. package/dist/lib/converter/plugins/IncludePlugin.js +0 -254
  142. package/dist/lib/converter/plugins/InheritDocPlugin.js +0 -220
  143. package/dist/lib/converter/plugins/LinkResolverPlugin.js +0 -88
  144. package/dist/lib/converter/plugins/MergeModuleWithPlugin.js +0 -50
  145. package/dist/lib/converter/plugins/PackagePlugin.js +0 -188
  146. package/dist/lib/converter/plugins/SourcePlugin.js +0 -215
  147. package/dist/lib/converter/plugins/TypePlugin.js +0 -108
  148. package/dist/lib/converter/plugins/index.js +0 -10
  149. package/dist/lib/converter/symbols.js +0 -861
  150. package/dist/lib/converter/types.js +0 -833
  151. package/dist/lib/converter/utils/nodes.js +0 -26
  152. package/dist/lib/converter/utils/reflections.js +0 -17
  153. package/dist/lib/converter/utils/repository.js +0 -295
  154. package/dist/lib/converter/utils/symbols.js +0 -12
  155. package/dist/lib/debug/index.js +0 -2
  156. package/dist/lib/debug/reflectionLifetimes.js +0 -27
  157. package/dist/lib/debug/rendererUrls.js +0 -68
  158. package/dist/lib/internationalization/index.js +0 -7
  159. package/dist/lib/internationalization/internationalization.js +0 -64
  160. package/dist/lib/internationalization/locale-utils.cjs +0 -8
  161. package/dist/lib/internationalization/locale-utils.d.cts +0 -8
  162. package/dist/lib/internationalization/locales/de.cjs +0 -401
  163. package/dist/lib/internationalization/locales/de.d.cts +0 -368
  164. package/dist/lib/internationalization/locales/en.cjs +0 -411
  165. package/dist/lib/internationalization/locales/ja.cjs +0 -320
  166. package/dist/lib/internationalization/locales/ja.d.cts +0 -307
  167. package/dist/lib/internationalization/locales/ko.cjs +0 -233
  168. package/dist/lib/internationalization/locales/ko.d.cts +0 -221
  169. package/dist/lib/internationalization/locales/zh.cjs +0 -488
  170. package/dist/lib/internationalization/locales/zh.d.cts +0 -452
  171. package/dist/lib/internationalization/translatable.js +0 -8
  172. package/dist/lib/models/Comment.js +0 -534
  173. package/dist/lib/models/ContainerReflection.js +0 -159
  174. package/dist/lib/models/DeclarationReflection.js +0 -287
  175. package/dist/lib/models/DocumentReflection.js +0 -66
  176. package/dist/lib/models/FileRegistry.js +0 -133
  177. package/dist/lib/models/ParameterReflection.js +0 -39
  178. package/dist/lib/models/ProjectReflection.js +0 -417
  179. package/dist/lib/models/ReferenceReflection.js +0 -85
  180. package/dist/lib/models/Reflection.js +0 -495
  181. package/dist/lib/models/ReflectionCategory.js +0 -56
  182. package/dist/lib/models/ReflectionGroup.js +0 -72
  183. package/dist/lib/models/ReflectionSymbolId.js +0 -85
  184. package/dist/lib/models/SignatureReflection.js +0 -96
  185. package/dist/lib/models/SourceReference.js +0 -50
  186. package/dist/lib/models/TypeParameterReflection.js +0 -45
  187. package/dist/lib/models/index.js +0 -19
  188. package/dist/lib/models/kind.js +0 -231
  189. package/dist/lib/models/types.js +0 -1296
  190. package/dist/lib/models/utils.js +0 -26
  191. package/dist/lib/models/variant.js +0 -1
  192. package/dist/lib/output/components.js +0 -133
  193. package/dist/lib/output/events.js +0 -195
  194. package/dist/lib/output/formatter.js +0 -660
  195. package/dist/lib/output/index.js +0 -7
  196. package/dist/lib/output/output.js +0 -92
  197. package/dist/lib/output/plugins/AssetsPlugin.js +0 -160
  198. package/dist/lib/output/plugins/HierarchyPlugin.js +0 -65
  199. package/dist/lib/output/plugins/IconsPlugin.js +0 -54
  200. package/dist/lib/output/plugins/JavascriptIndexPlugin.js +0 -222
  201. package/dist/lib/output/plugins/NavigationPlugin.js +0 -23
  202. package/dist/lib/output/plugins/SitemapPlugin.js +0 -82
  203. package/dist/lib/output/plugins/index.js +0 -7
  204. package/dist/lib/output/renderer.js +0 -387
  205. package/dist/lib/output/router.js +0 -520
  206. package/dist/lib/output/theme.js +0 -17
  207. package/dist/lib/output/themes/MarkedPlugin.js +0 -461
  208. package/dist/lib/output/themes/default/DefaultTheme.js +0 -367
  209. package/dist/lib/output/themes/default/DefaultThemeRenderContext.js +0 -151
  210. package/dist/lib/output/themes/default/Slugger.js +0 -60
  211. package/dist/lib/output/themes/default/layouts/default.js +0 -89
  212. package/dist/lib/output/themes/default/partials/anchor-icon.js +0 -9
  213. package/dist/lib/output/themes/default/partials/breadcrumb.js +0 -11
  214. package/dist/lib/output/themes/default/partials/comment.js +0 -80
  215. package/dist/lib/output/themes/default/partials/footer.js +0 -37
  216. package/dist/lib/output/themes/default/partials/header.js +0 -39
  217. package/dist/lib/output/themes/default/partials/hierarchy.js +0 -32
  218. package/dist/lib/output/themes/default/partials/icon.js +0 -101
  219. package/dist/lib/output/themes/default/partials/index.js +0 -24
  220. package/dist/lib/output/themes/default/partials/member.declaration.js +0 -35
  221. package/dist/lib/output/themes/default/partials/member.getterSetter.js +0 -12
  222. package/dist/lib/output/themes/default/partials/member.js +0 -36
  223. package/dist/lib/output/themes/default/partials/member.signature.body.js +0 -33
  224. package/dist/lib/output/themes/default/partials/member.signature.title.js +0 -9
  225. package/dist/lib/output/themes/default/partials/member.signatures.js +0 -9
  226. package/dist/lib/output/themes/default/partials/member.sources.js +0 -55
  227. package/dist/lib/output/themes/default/partials/members.js +0 -17
  228. package/dist/lib/output/themes/default/partials/moduleReflection.js +0 -68
  229. package/dist/lib/output/themes/default/partials/navigation.js +0 -144
  230. package/dist/lib/output/themes/default/partials/reflectionPreview.js +0 -26
  231. package/dist/lib/output/themes/default/partials/toolbar.js +0 -13
  232. package/dist/lib/output/themes/default/partials/type.js +0 -9
  233. package/dist/lib/output/themes/default/partials/typeAndParent.js +0 -28
  234. package/dist/lib/output/themes/default/partials/typeDetails.js +0 -284
  235. package/dist/lib/output/themes/default/partials/typeParameters.js +0 -26
  236. package/dist/lib/output/themes/default/templates/document.js +0 -3
  237. package/dist/lib/output/themes/default/templates/hierarchy.js +0 -31
  238. package/dist/lib/output/themes/default/templates/index.js +0 -3
  239. package/dist/lib/output/themes/default/templates/reflection.js +0 -53
  240. package/dist/lib/output/themes/lib.js +0 -218
  241. package/dist/lib/serialization/components.js +0 -1
  242. package/dist/lib/serialization/deserializer.js +0 -235
  243. package/dist/lib/serialization/events.js +0 -18
  244. package/dist/lib/serialization/index.js +0 -4
  245. package/dist/lib/serialization/schema.js +0 -32
  246. package/dist/lib/serialization/serializer.js +0 -65
  247. package/dist/lib/utils/ValidatingFileRegistry.js +0 -52
  248. package/dist/lib/utils/component.js +0 -41
  249. package/dist/lib/utils/compress.js +0 -13
  250. package/dist/lib/utils/declaration-maps.js +0 -51
  251. package/dist/lib/utils/entry-point.js +0 -330
  252. package/dist/lib/utils/fs.js +0 -372
  253. package/dist/lib/utils/general.js +0 -25
  254. package/dist/lib/utils/highlighter.js +0 -150
  255. package/dist/lib/utils/html-entities.js +0 -2329
  256. package/dist/lib/utils/html.js +0 -635
  257. package/dist/lib/utils/index.d.ts +0 -17
  258. package/dist/lib/utils/index.js +0 -15
  259. package/dist/lib/utils/loggers.js +0 -71
  260. package/dist/lib/utils/options/declaration.js +0 -443
  261. package/dist/lib/utils/options/defaults.js +0 -104
  262. package/dist/lib/utils/options/help.js +0 -63
  263. package/dist/lib/utils/options/index.js +0 -4
  264. package/dist/lib/utils/options/options.js +0 -273
  265. package/dist/lib/utils/options/readers/arguments.js +0 -109
  266. package/dist/lib/utils/options/readers/index.js +0 -4
  267. package/dist/lib/utils/options/readers/package-json.js +0 -40
  268. package/dist/lib/utils/options/readers/tsconfig.js +0 -172
  269. package/dist/lib/utils/options/readers/typedoc.js +0 -136
  270. package/dist/lib/utils/options/sources/index.js +0 -1
  271. package/dist/lib/utils/options/sources/typedoc.js +0 -876
  272. package/dist/lib/utils/options/tsdoc-defaults.js +0 -94
  273. package/dist/lib/utils/package-manifest.js +0 -84
  274. package/dist/lib/utils/paths.js +0 -127
  275. package/dist/lib/utils/perf.js +0 -86
  276. package/dist/lib/utils/plugins.js +0 -61
  277. package/dist/lib/utils/reflections.js +0 -64
  278. package/dist/lib/utils/sort.js +0 -153
  279. package/dist/lib/utils/tsconfig.js +0 -60
  280. package/dist/lib/utils/tsutils.js +0 -23
  281. package/dist/lib/utils-common/array.js +0 -152
  282. package/dist/lib/utils-common/declarationReference.js +0 -341
  283. package/dist/lib/utils-common/enum.js +0 -27
  284. package/dist/lib/utils-common/events.js +0 -49
  285. package/dist/lib/utils-common/general.js +0 -22
  286. package/dist/lib/utils-common/hooks.js +0 -90
  287. package/dist/lib/utils-common/i18n.js +0 -39
  288. package/dist/lib/utils-common/index.js +0 -17
  289. package/dist/lib/utils-common/jsx.elements.js +0 -3
  290. package/dist/lib/utils-common/jsx.js +0 -187
  291. package/dist/lib/utils-common/logger.js +0 -129
  292. package/dist/lib/utils-common/map.js +0 -63
  293. package/dist/lib/utils-common/minimalSourceFile.js +0 -43
  294. package/dist/lib/utils-common/path.js +0 -130
  295. package/dist/lib/utils-common/set.js +0 -23
  296. package/dist/lib/utils-common/string.js +0 -84
  297. package/dist/lib/utils-common/validation.js +0 -50
  298. package/dist/lib/validation/documentation.js +0 -91
  299. package/dist/lib/validation/exports.js +0 -65
  300. package/dist/lib/validation/links.js +0 -78
  301. package/dist/lib/validation/unusedMergeModuleWith.js +0 -12
  302. /package/dist/{browser-utils.d.ts → types/browser-utils.d.ts} +0 -0
  303. /package/dist/{lib → types}/cli.d.ts +0 -0
  304. /package/dist/{lib → types}/converter/comments/blockLexer.d.ts +0 -0
  305. /package/dist/{lib → types}/converter/comments/lineLexer.d.ts +0 -0
  306. /package/dist/{lib → types}/converter/comments/rawLexer.d.ts +0 -0
  307. /package/dist/{lib → types}/converter/comments/tagName.d.ts +0 -0
  308. /package/dist/{lib → types}/converter/convert-expression.d.ts +0 -0
  309. /package/dist/{lib → types}/converter/converter-events.d.ts +0 -0
  310. /package/dist/{lib → types}/converter/factories/index-signature.d.ts +0 -0
  311. /package/dist/{lib → types}/converter/factories/symbol-id.d.ts +0 -0
  312. /package/dist/{lib → types}/converter/jsdoc.d.ts +0 -0
  313. /package/dist/{lib → types}/converter/plugins/CommentPlugin.d.ts +0 -0
  314. /package/dist/{lib → types}/converter/plugins/ImplementsPlugin.d.ts +0 -0
  315. /package/dist/{lib → types}/converter/plugins/MergeModuleWithPlugin.d.ts +0 -0
  316. /package/dist/{lib → types}/converter/plugins/PackagePlugin.d.ts +0 -0
  317. /package/dist/{lib → types}/converter/plugins/index.d.ts +0 -0
  318. /package/dist/{lib → types}/converter/symbols.d.ts +0 -0
  319. /package/dist/{lib/converter/utils → types/converter/utilities}/nodes.d.ts +0 -0
  320. /package/dist/{lib/converter/utils → types/converter/utilities}/symbols.d.ts +0 -0
  321. /package/dist/{lib → types}/debug/index.d.ts +0 -0
  322. /package/dist/{lib → types}/debug/reflectionLifetimes.d.ts +0 -0
  323. /package/dist/{lib → types}/debug/rendererUrls.d.ts +0 -0
  324. /package/dist/{lib → types}/internationalization/index.d.ts +0 -0
  325. /package/dist/{lib → types}/models/Comment.d.ts +0 -0
  326. /package/dist/{lib → types}/models/ContainerReflection.d.ts +0 -0
  327. /package/dist/{lib → types}/models/DeclarationReflection.d.ts +0 -0
  328. /package/dist/{lib → types}/models/DocumentReflection.d.ts +0 -0
  329. /package/dist/{lib → types}/models/ParameterReflection.d.ts +0 -0
  330. /package/dist/{lib → types}/models/ProjectReflection.d.ts +0 -0
  331. /package/dist/{lib → types}/models/ReferenceReflection.d.ts +0 -0
  332. /package/dist/{lib → types}/models/Reflection.d.ts +0 -0
  333. /package/dist/{lib → types}/models/ReflectionCategory.d.ts +0 -0
  334. /package/dist/{lib → types}/models/ReflectionGroup.d.ts +0 -0
  335. /package/dist/{lib → types}/models/SignatureReflection.d.ts +0 -0
  336. /package/dist/{lib → types}/models/TypeParameterReflection.d.ts +0 -0
  337. /package/dist/{lib → types}/models/index.d.ts +0 -0
  338. /package/dist/{lib → types}/models/kind.d.ts +0 -0
  339. /package/dist/{lib → types}/models/types.d.ts +0 -0
  340. /package/dist/{lib → types}/models/utils.d.ts +0 -0
  341. /package/dist/{lib → types}/models/variant.d.ts +0 -0
  342. /package/dist/{lib → types}/output/index.d.ts +0 -0
  343. /package/dist/{lib → types}/output/plugins/AssetsPlugin.d.ts +0 -0
  344. /package/dist/{lib → types}/output/plugins/HierarchyPlugin.d.ts +0 -0
  345. /package/dist/{lib → types}/output/plugins/IconsPlugin.d.ts +0 -0
  346. /package/dist/{lib → types}/output/plugins/JavascriptIndexPlugin.d.ts +0 -0
  347. /package/dist/{lib → types}/output/plugins/NavigationPlugin.d.ts +0 -0
  348. /package/dist/{lib → types}/output/plugins/SitemapPlugin.d.ts +0 -0
  349. /package/dist/{lib → types}/output/plugins/index.d.ts +0 -0
  350. /package/dist/{lib → types}/output/theme.d.ts +0 -0
  351. /package/dist/{lib → types}/output/themes/default/Slugger.d.ts +0 -0
  352. /package/dist/{lib → types}/output/themes/default/partials/footer.d.ts +0 -0
  353. /package/dist/{lib → types}/output/themes/default/partials/member.declaration.d.ts +0 -0
  354. /package/dist/{lib → types}/output/themes/default/partials/typeAndParent.d.ts +0 -0
  355. /package/dist/{lib → types}/serialization/components.d.ts +0 -0
  356. /package/dist/{lib → types}/serialization/deserializer.d.ts +0 -0
  357. /package/dist/{lib → types}/serialization/events.d.ts +0 -0
  358. /package/dist/{lib → types}/serialization/index.d.ts +0 -0
  359. /package/dist/{lib → types}/serialization/schema.d.ts +0 -0
  360. /package/dist/{lib → types}/serialization/serializer.d.ts +0 -0
  361. /package/dist/{lib → types}/utils/component.d.ts +0 -0
  362. /package/dist/{lib → types}/utils/compress.d.ts +0 -0
  363. /package/dist/{lib → types}/utils/declaration-maps.d.ts +0 -0
  364. /package/dist/{lib → types}/utils/fs.d.ts +0 -0
  365. /package/dist/{lib → types}/utils/highlighter.d.ts +0 -0
  366. /package/dist/{lib → types}/utils/html-entities.d.ts +0 -0
  367. /package/dist/{lib → types}/utils/html.d.ts +0 -0
  368. /package/dist/{lib → types}/utils/loggers.d.ts +0 -0
  369. /package/dist/{lib → types}/utils/options/help.d.ts +0 -0
  370. /package/dist/{lib → types}/utils/options/readers/arguments.d.ts +0 -0
  371. /package/dist/{lib → types}/utils/options/readers/index.d.ts +0 -0
  372. /package/dist/{lib → types}/utils/options/readers/package-json.d.ts +0 -0
  373. /package/dist/{lib → types}/utils/options/readers/tsconfig.d.ts +0 -0
  374. /package/dist/{lib → types}/utils/options/readers/typedoc.d.ts +0 -0
  375. /package/dist/{lib → types}/utils/options/sources/index.d.ts +0 -0
  376. /package/dist/{lib → types}/utils/options/sources/typedoc.d.ts +0 -0
  377. /package/dist/{lib → types}/utils/package-manifest.d.ts +0 -0
  378. /package/dist/{lib → types}/utils/paths.d.ts +0 -0
  379. /package/dist/{lib → types}/utils/perf.d.ts +0 -0
  380. /package/dist/{lib → types}/utils/plugins.d.ts +0 -0
  381. /package/dist/{lib → types}/utils/tsconfig.d.ts +0 -0
  382. /package/dist/{lib → types}/utils/tsutils.d.ts +0 -0
  383. /package/dist/{lib → types}/utils-common/array.d.ts +0 -0
  384. /package/dist/{lib → types}/utils-common/declarationReference.d.ts +0 -0
  385. /package/dist/{lib → types}/utils-common/enum.d.ts +0 -0
  386. /package/dist/{lib → types}/utils-common/events.d.ts +0 -0
  387. /package/dist/{lib → types}/utils-common/hooks.d.ts +0 -0
  388. /package/dist/{lib → types}/utils-common/i18n.d.ts +0 -0
  389. /package/dist/{lib → types}/utils-common/index.d.ts +0 -0
  390. /package/dist/{lib → types}/utils-common/jsx.d.ts +0 -0
  391. /package/dist/{lib → types}/utils-common/logger.d.ts +0 -0
  392. /package/dist/{lib → types}/utils-common/map.d.ts +0 -0
  393. /package/dist/{lib → types}/utils-common/minimalSourceFile.d.ts +0 -0
  394. /package/dist/{lib → types}/utils-common/path.d.ts +0 -0
  395. /package/dist/{lib → types}/utils-common/set.d.ts +0 -0
  396. /package/dist/{lib → types}/utils-common/string.d.ts +0 -0
  397. /package/dist/{lib → types}/utils-common/validation.d.ts +0 -0
@@ -1,534 +0,0 @@
1
- var __esDecorate = (this && this.__esDecorate) || function (ctor, descriptorIn, decorators, contextIn, initializers, extraInitializers) {
2
- function accept(f) { if (f !== void 0 && typeof f !== "function") throw new TypeError("Function expected"); return f; }
3
- var kind = contextIn.kind, key = kind === "getter" ? "get" : kind === "setter" ? "set" : "value";
4
- var target = !descriptorIn && ctor ? contextIn["static"] ? ctor : ctor.prototype : null;
5
- var descriptor = descriptorIn || (target ? Object.getOwnPropertyDescriptor(target, contextIn.name) : {});
6
- var _, done = false;
7
- for (var i = decorators.length - 1; i >= 0; i--) {
8
- var context = {};
9
- for (var p in contextIn) context[p] = p === "access" ? {} : contextIn[p];
10
- for (var p in contextIn.access) context.access[p] = contextIn.access[p];
11
- context.addInitializer = function (f) { if (done) throw new TypeError("Cannot add initializers after decoration has completed"); extraInitializers.push(accept(f || null)); };
12
- var result = (0, decorators[i])(kind === "accessor" ? { get: descriptor.get, set: descriptor.set } : descriptor[key], context);
13
- if (kind === "accessor") {
14
- if (result === void 0) continue;
15
- if (result === null || typeof result !== "object") throw new TypeError("Object expected");
16
- if (_ = accept(result.get)) descriptor.get = _;
17
- if (_ = accept(result.set)) descriptor.set = _;
18
- if (_ = accept(result.init)) initializers.unshift(_);
19
- }
20
- else if (_ = accept(result)) {
21
- if (kind === "field") initializers.unshift(_);
22
- else descriptor[key] = _;
23
- }
24
- }
25
- if (target) Object.defineProperty(target, contextIn.name, descriptor);
26
- done = true;
27
- };
28
- var __runInitializers = (this && this.__runInitializers) || function (thisArg, initializers, value) {
29
- var useValue = arguments.length > 2;
30
- for (var i = 0; i < initializers.length; i++) {
31
- value = useValue ? initializers[i].call(thisArg, value) : initializers[i].call(thisArg);
32
- }
33
- return useValue ? value : void 0;
34
- };
35
- import { assertNever, i18n, NonEnumerable, removeIf } from "#utils";
36
- import { ReflectionSymbolId } from "./ReflectionSymbolId.js";
37
- /**
38
- * A model that represents a single TypeDoc comment tag.
39
- *
40
- * Tags are stored in the {@link Comment.blockTags} property.
41
- * @category Comments
42
- */
43
- export class CommentTag {
44
- /**
45
- * The name of this tag, e.g. `@returns`, `@example`
46
- */
47
- tag;
48
- /**
49
- * Some tags, (`@typedef`, `@param`, `@property`, etc.) may have a user defined identifier associated with them.
50
- * If this tag is one of those, it will be parsed out and included here.
51
- */
52
- name;
53
- /**
54
- * Optional type annotation associated with this tag. TypeDoc will remove type annotations unless explicitly
55
- * requested by the user with the `preservedTypeAnnotationTags` option.
56
- */
57
- typeAnnotation;
58
- /**
59
- * The actual body text of this tag.
60
- */
61
- content;
62
- /**
63
- * A flag which may be set by plugins to prevent TypeDoc from rendering this tag, if the plugin provides
64
- * custom rendering. Note: This flag is **not** serialized, it is expected to be set just before the comment
65
- * is rendered.
66
- */
67
- skipRendering = false;
68
- /**
69
- * Create a new CommentTag instance.
70
- */
71
- constructor(tag, text) {
72
- this.tag = tag;
73
- this.content = text;
74
- }
75
- /**
76
- * Checks if this block tag is roughly equal to the other tag.
77
- * This isn't exactly equal, but just "roughly equal" by the tag
78
- * text.
79
- */
80
- similarTo(other) {
81
- return (this.tag === other.tag &&
82
- this.name === other.name &&
83
- Comment.combineDisplayParts(this.content) ===
84
- Comment.combineDisplayParts(other.content));
85
- }
86
- clone() {
87
- const tag = new CommentTag(this.tag, Comment.cloneDisplayParts(this.content));
88
- if (this.name) {
89
- tag.name = this.name;
90
- }
91
- if (this.typeAnnotation) {
92
- tag.typeAnnotation = this.typeAnnotation;
93
- }
94
- return tag;
95
- }
96
- toObject() {
97
- return {
98
- tag: this.tag,
99
- name: this.name,
100
- content: Comment.serializeDisplayParts(this.content),
101
- typeAnnotation: this.typeAnnotation,
102
- };
103
- }
104
- fromObject(de, obj) {
105
- // tag already set by Comment.fromObject
106
- this.name = obj.name;
107
- this.typeAnnotation = obj.typeAnnotation;
108
- this.content = Comment.deserializeDisplayParts(de, obj.content);
109
- }
110
- }
111
- /**
112
- * A model that represents a comment.
113
- *
114
- * Instances of this model are created by the CommentPlugin. You can retrieve comments
115
- * through the {@link DeclarationReflection.comment} property.
116
- * @category Comments
117
- */
118
- let Comment = (() => {
119
- let _sourcePath_decorators;
120
- let _sourcePath_initializers = [];
121
- let _sourcePath_extraInitializers = [];
122
- let _discoveryId_decorators;
123
- let _discoveryId_initializers = [];
124
- let _discoveryId_extraInitializers = [];
125
- let _inheritedFromParentDeclaration_decorators;
126
- let _inheritedFromParentDeclaration_initializers = [];
127
- let _inheritedFromParentDeclaration_extraInitializers = [];
128
- return class Comment {
129
- static {
130
- const _metadata = typeof Symbol === "function" && Symbol.metadata ? Object.create(null) : void 0;
131
- _sourcePath_decorators = [NonEnumerable];
132
- _discoveryId_decorators = [NonEnumerable];
133
- _inheritedFromParentDeclaration_decorators = [NonEnumerable];
134
- __esDecorate(null, null, _sourcePath_decorators, { kind: "field", name: "sourcePath", static: false, private: false, access: { has: obj => "sourcePath" in obj, get: obj => obj.sourcePath, set: (obj, value) => { obj.sourcePath = value; } }, metadata: _metadata }, _sourcePath_initializers, _sourcePath_extraInitializers);
135
- __esDecorate(null, null, _discoveryId_decorators, { kind: "field", name: "discoveryId", static: false, private: false, access: { has: obj => "discoveryId" in obj, get: obj => obj.discoveryId, set: (obj, value) => { obj.discoveryId = value; } }, metadata: _metadata }, _discoveryId_initializers, _discoveryId_extraInitializers);
136
- __esDecorate(null, null, _inheritedFromParentDeclaration_decorators, { kind: "field", name: "inheritedFromParentDeclaration", static: false, private: false, access: { has: obj => "inheritedFromParentDeclaration" in obj, get: obj => obj.inheritedFromParentDeclaration, set: (obj, value) => { obj.inheritedFromParentDeclaration = value; } }, metadata: _metadata }, _inheritedFromParentDeclaration_initializers, _inheritedFromParentDeclaration_extraInitializers);
137
- if (_metadata) Object.defineProperty(this, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });
138
- }
139
- /**
140
- * Debugging utility for combining parts into a simple string. Not suitable for
141
- * rendering, but can be useful in tests.
142
- */
143
- static combineDisplayParts(parts) {
144
- let result = "";
145
- for (const item of parts || []) {
146
- switch (item.kind) {
147
- case "text":
148
- case "code":
149
- case "relative-link":
150
- result += item.text;
151
- break;
152
- case "inline-tag":
153
- result += `{${item.tag} ${item.text}}`;
154
- break;
155
- default:
156
- assertNever(item);
157
- }
158
- }
159
- return result;
160
- }
161
- /**
162
- * Helper utility to clone {@link Comment#summary} or {@link CommentTag#content}
163
- */
164
- static cloneDisplayParts(parts) {
165
- return parts.map((p) => ({ ...p }));
166
- }
167
- static serializeDisplayParts(parts) {
168
- return parts?.map((part) => {
169
- switch (part.kind) {
170
- case "text":
171
- case "code":
172
- return { ...part };
173
- case "inline-tag": {
174
- let target;
175
- if (typeof part.target === "string") {
176
- target = part.target;
177
- }
178
- else if (part.target) {
179
- if ("id" in part.target) {
180
- target = part.target.id;
181
- }
182
- else {
183
- target = part.target.toObject();
184
- }
185
- }
186
- return {
187
- ...part,
188
- target,
189
- };
190
- }
191
- case "relative-link": {
192
- return {
193
- ...part,
194
- };
195
- }
196
- }
197
- });
198
- }
199
- // Since display parts are plain objects, this lives here
200
- static deserializeDisplayParts(de, parts) {
201
- const links = [];
202
- const files = [];
203
- const result = parts.map((part) => {
204
- switch (part.kind) {
205
- case "text":
206
- case "code":
207
- return { ...part };
208
- case "inline-tag": {
209
- if (typeof part.target === "number") {
210
- const part2 = {
211
- kind: part.kind,
212
- tag: part.tag,
213
- text: part.text,
214
- target: undefined,
215
- tsLinkText: part.tsLinkText,
216
- };
217
- links.push([part.target, part2]);
218
- return part2;
219
- }
220
- else if (typeof part.target === "string" ||
221
- part.target === undefined) {
222
- return {
223
- kind: "inline-tag",
224
- tag: part.tag,
225
- text: part.text,
226
- target: part.target,
227
- tsLinkText: part.tsLinkText,
228
- };
229
- }
230
- else if (typeof part.target === "object") {
231
- return {
232
- kind: "inline-tag",
233
- tag: part.tag,
234
- text: part.text,
235
- target: new ReflectionSymbolId(part.target),
236
- tsLinkText: part.tsLinkText,
237
- };
238
- }
239
- else {
240
- assertNever(part.target);
241
- }
242
- break;
243
- }
244
- case "relative-link": {
245
- if (part.target) {
246
- const part2 = {
247
- kind: "relative-link",
248
- text: part.text,
249
- target: null,
250
- targetAnchor: part.targetAnchor,
251
- };
252
- files.push([part.target, part2]);
253
- return part2;
254
- }
255
- return {
256
- ...part,
257
- target: undefined,
258
- targetAnchor: part.targetAnchor,
259
- };
260
- }
261
- }
262
- });
263
- if (links.length || files.length) {
264
- de.defer((project) => {
265
- for (const [oldFileId, part] of files) {
266
- part.target = de.oldFileIdToNewFileId[oldFileId];
267
- }
268
- for (const [oldId, part] of links) {
269
- part.target = project.getReflectionById(de.oldIdToNewId[oldId] ?? -1);
270
- if (!part.target) {
271
- de.logger.warn(i18n.serialized_project_referenced_0_not_part_of_project(oldId.toString()));
272
- }
273
- }
274
- });
275
- }
276
- return result;
277
- }
278
- /**
279
- * Splits the provided parts into a header (first line, as a string)
280
- * and body (remaining lines). If the header line contains inline tags
281
- * they will be serialized to a string.
282
- */
283
- static splitPartsToHeaderAndBody(parts) {
284
- let index = parts.findIndex((part) => {
285
- switch (part.kind) {
286
- case "text":
287
- case "code":
288
- return part.text.includes("\n");
289
- case "inline-tag":
290
- case "relative-link":
291
- return false;
292
- }
293
- });
294
- if (index === -1) {
295
- return {
296
- header: Comment.combineDisplayParts(parts),
297
- body: [],
298
- };
299
- }
300
- // Do not split a code block, stop the header at the end of the previous block
301
- if (parts[index].kind === "code") {
302
- --index;
303
- }
304
- if (index === -1) {
305
- return { header: "", body: Comment.cloneDisplayParts(parts) };
306
- }
307
- let header = Comment.combineDisplayParts(parts.slice(0, index));
308
- const split = parts[index].text.indexOf("\n");
309
- let body;
310
- if (split === -1) {
311
- header += parts[index].text;
312
- body = Comment.cloneDisplayParts(parts.slice(index + 1));
313
- }
314
- else {
315
- header += parts[index].text.substring(0, split);
316
- body = Comment.cloneDisplayParts(parts.slice(index));
317
- body[0].text = body[0].text.substring(split + 1);
318
- }
319
- if (!body[0].text) {
320
- body.shift();
321
- }
322
- return { header: header.trim(), body };
323
- }
324
- /**
325
- * The content of the comment which is not associated with a block tag.
326
- */
327
- summary;
328
- /**
329
- * All associated block level tags.
330
- */
331
- blockTags = [];
332
- /**
333
- * All modifier tags present on the comment, e.g. `@alpha`, `@beta`.
334
- */
335
- modifierTags = new Set();
336
- /**
337
- * Label associated with this reflection, if any (https://tsdoc.org/pages/tags/label/)
338
- */
339
- label;
340
- /**
341
- * Full path to the file where this comment originated from, if any.
342
- * This field will not be serialized, so will not be present when handling JSON-revived reflections.
343
- *
344
- * Note: This field is non-enumerable to make testing comment contents with `deepEqual` easier.
345
- */
346
- sourcePath = __runInitializers(this, _sourcePath_initializers, void 0);
347
- /**
348
- * Internal discovery ID used to prevent symbol comments from
349
- * being duplicated on signatures. Only set when the comment was created
350
- * from a `ts.CommentRange`.
351
- * @internal
352
- */
353
- discoveryId = (__runInitializers(this, _sourcePath_extraInitializers), __runInitializers(this, _discoveryId_initializers, void 0));
354
- /**
355
- * If the comment was inherited from a different "parent" declaration
356
- * (see #2545), then it is desirable to know this as any `@param` tags
357
- * which do not apply should not cause warnings. This is not serialized,
358
- * and only set when the comment was created from a `ts.CommentRange`.
359
- */
360
- inheritedFromParentDeclaration = (__runInitializers(this, _discoveryId_extraInitializers), __runInitializers(this, _inheritedFromParentDeclaration_initializers, void 0));
361
- /**
362
- * Creates a new Comment instance.
363
- */
364
- constructor(summary = [], blockTags = [], modifierTags = new Set()) {
365
- __runInitializers(this, _inheritedFromParentDeclaration_extraInitializers);
366
- this.summary = summary;
367
- this.blockTags = blockTags;
368
- this.modifierTags = modifierTags;
369
- extractLabelTag(this);
370
- }
371
- /**
372
- * Gets either the `@summary` tag, or a short version of the comment summary
373
- * section for rendering in module/namespace pages.
374
- */
375
- getShortSummary(useFirstParagraph) {
376
- const tag = this.getTag("@summary");
377
- if (tag)
378
- return tag.content;
379
- if (!useFirstParagraph)
380
- return [];
381
- let partsEnd = this.summary.findIndex((part) => {
382
- switch (part.kind) {
383
- case "text":
384
- return part.text.includes("\n\n");
385
- case "code":
386
- return part.text.includes("\n");
387
- case "inline-tag":
388
- case "relative-link":
389
- return false;
390
- default:
391
- assertNever(part);
392
- }
393
- });
394
- const foundEnd = partsEnd !== -1;
395
- if (partsEnd === -1) {
396
- partsEnd = this.summary.length - 1;
397
- }
398
- const summaryParts = this.summary.slice(0, partsEnd);
399
- if (partsEnd !== -1) {
400
- const text = this.summary[partsEnd].text;
401
- const paragraphEnd = text.indexOf("\n\n");
402
- if (paragraphEnd !== -1) {
403
- summaryParts.push({
404
- ...this.summary[partsEnd],
405
- text: text.slice(0, paragraphEnd),
406
- });
407
- }
408
- else if (!foundEnd) {
409
- summaryParts.push(this.summary[partsEnd]);
410
- }
411
- }
412
- return summaryParts;
413
- }
414
- /**
415
- * Checks if this comment is roughly equal to the other comment.
416
- * This isn't exactly equal, but just "roughly equal" by the comment
417
- * text.
418
- */
419
- similarTo(other) {
420
- if (Comment.combineDisplayParts(this.summary) !==
421
- Comment.combineDisplayParts(other.summary)) {
422
- return false;
423
- }
424
- // Ignore modifier tags, as they could cause false negatives
425
- // if a cascaded modifier tag is present in one comment but not the other.
426
- if (this.blockTags.length !== other.blockTags.length) {
427
- return false;
428
- }
429
- for (let i = 0; i < this.blockTags.length; ++i) {
430
- if (!this.blockTags[i].similarTo(other.blockTags[i])) {
431
- return false;
432
- }
433
- }
434
- return true;
435
- }
436
- /**
437
- * Create a deep clone of this comment.
438
- */
439
- clone() {
440
- const comment = new Comment(Comment.cloneDisplayParts(this.summary), this.blockTags.map((tag) => tag.clone()), new Set(this.modifierTags));
441
- comment.discoveryId = this.discoveryId;
442
- comment.sourcePath = this.sourcePath;
443
- comment.inheritedFromParentDeclaration = this.inheritedFromParentDeclaration;
444
- return comment;
445
- }
446
- /**
447
- * Returns true if this comment is completely empty.
448
- * @internal
449
- */
450
- isEmpty() {
451
- return !this.hasVisibleComponent() && this.modifierTags.size === 0;
452
- }
453
- /**
454
- * Checks if this comment contains any visible text.
455
- *
456
- * @returns TRUE when this reflection has a visible comment.
457
- */
458
- hasVisibleComponent(notRenderedTags) {
459
- if (this.summary.some((x) => x.kind !== "text" || x.text !== "")) {
460
- return true;
461
- }
462
- if (notRenderedTags) {
463
- return this.blockTags.some(tag => !notRenderedTags.includes(tag.tag));
464
- }
465
- else {
466
- return this.blockTags.length > 0;
467
- }
468
- }
469
- /**
470
- * Test whether this comment contains a tag with the given name.
471
- *
472
- * @param tagName The name of the tag to look for.
473
- * @returns TRUE when this comment contains a tag with the given name, otherwise FALSE.
474
- */
475
- hasModifier(tagName) {
476
- return this.modifierTags.has(tagName);
477
- }
478
- removeModifier(tagName) {
479
- this.modifierTags.delete(tagName);
480
- }
481
- /**
482
- * Return the first tag with the given name.
483
- *
484
- * @param tagName The name of the tag to look for.
485
- * @returns The found tag or undefined.
486
- */
487
- getTag(tagName) {
488
- return this.blockTags.find((tag) => tag.tag === tagName);
489
- }
490
- /**
491
- * Get all tags with the given tag name.
492
- */
493
- getTags(tagName) {
494
- return this.blockTags.filter((tag) => tag.tag === tagName);
495
- }
496
- getIdentifiedTag(identifier, tagName) {
497
- return this.blockTags.find((tag) => tag.tag === tagName && tag.name === identifier);
498
- }
499
- /**
500
- * Removes all block tags with the given tag name from the comment.
501
- * @param tagName
502
- */
503
- removeTags(tagName) {
504
- removeIf(this.blockTags, (tag) => tag.tag === tagName);
505
- }
506
- toObject(serializer) {
507
- return {
508
- summary: Comment.serializeDisplayParts(this.summary),
509
- blockTags: serializer.toObjectsOptional(this.blockTags),
510
- modifierTags: this.modifierTags.size > 0
511
- ? Array.from(this.modifierTags)
512
- : undefined,
513
- label: this.label,
514
- };
515
- }
516
- fromObject(de, obj) {
517
- this.summary = Comment.deserializeDisplayParts(de, obj.summary);
518
- this.blockTags = obj.blockTags?.map((tagObj) => {
519
- const tag = new CommentTag(tagObj.tag, []);
520
- de.fromObject(tag, tagObj);
521
- return tag;
522
- }) || [];
523
- this.modifierTags = new Set(obj.modifierTags);
524
- this.label = obj.label;
525
- }
526
- };
527
- })();
528
- export { Comment };
529
- function extractLabelTag(comment) {
530
- const index = comment.summary.findIndex((part) => part.kind === "inline-tag" && part.tag === "@label");
531
- if (index !== -1) {
532
- comment.label = comment.summary.splice(index, 1)[0].text;
533
- }
534
- }
@@ -1,159 +0,0 @@
1
- import { Reflection, TraverseProperty } from "./Reflection.js";
2
- import { ReflectionCategory } from "./ReflectionCategory.js";
3
- import { ReflectionGroup } from "./ReflectionGroup.js";
4
- import { ReflectionKind } from "./kind.js";
5
- import { assertNever, removeIfPresent } from "#utils";
6
- /**
7
- * @category Reflections
8
- */
9
- export class ContainerReflection extends Reflection {
10
- /**
11
- * The children of this reflection. Do not add reflections to this array
12
- * manually. Instead call {@link addChild}.
13
- */
14
- children;
15
- /**
16
- * Documents associated with this reflection.
17
- *
18
- * These are not children as including them as children requires code handle both
19
- * types, despite being mostly unrelated and handled separately.
20
- *
21
- * Including them here in a separate array neatly handles that problem, but also
22
- * introduces another one for rendering. When rendering, documents should really
23
- * actually be considered part of the "children" of a reflection. For this reason,
24
- * we also maintain a list of child declarations with child documents which is used
25
- * when rendering.
26
- */
27
- documents;
28
- /**
29
- * Union of the {@link children} and {@link documents} arrays which dictates the
30
- * sort order for rendering.
31
- */
32
- childrenIncludingDocuments;
33
- /**
34
- * All children grouped by their kind.
35
- */
36
- groups;
37
- /**
38
- * All children grouped by their category.
39
- */
40
- categories;
41
- /**
42
- * Return a list of all children of a certain kind.
43
- *
44
- * @param kind The desired kind of children.
45
- * @returns An array containing all children with the desired kind.
46
- */
47
- getChildrenByKind(kind) {
48
- return (this.children || []).filter((child) => child.kindOf(kind));
49
- }
50
- addChild(child) {
51
- if (child.isDeclaration()) {
52
- this.children ||= [];
53
- this.children.push(child);
54
- this.childrenIncludingDocuments ||= [];
55
- this.childrenIncludingDocuments.push(child);
56
- }
57
- else if (child.isDocument()) {
58
- this.documents ||= [];
59
- this.documents.push(child);
60
- this.childrenIncludingDocuments ||= [];
61
- this.childrenIncludingDocuments.push(child);
62
- }
63
- else if (this.isDeclaration() && child.isSignature()) {
64
- switch (child.kind) {
65
- case ReflectionKind.CallSignature:
66
- case ReflectionKind.ConstructorSignature:
67
- this.signatures ||= [];
68
- this.signatures.push(child);
69
- break;
70
- case ReflectionKind.IndexSignature:
71
- this.indexSignatures ||= [];
72
- this.indexSignatures.push(child);
73
- break;
74
- case ReflectionKind.GetSignature:
75
- case ReflectionKind.SetSignature:
76
- throw new Error("Unsupported child type: " + ReflectionKind[child.kind]);
77
- default:
78
- assertNever(child.kind);
79
- }
80
- }
81
- else {
82
- throw new Error("Unsupported child type: " + ReflectionKind[child.kind]);
83
- }
84
- }
85
- removeChild(child) {
86
- if (child.isDeclaration()) {
87
- removeIfPresent(this.children, child);
88
- if (this.children?.length === 0) {
89
- delete this.children;
90
- }
91
- }
92
- else {
93
- removeIfPresent(this.documents, child);
94
- if (this.documents?.length === 0) {
95
- delete this.documents;
96
- }
97
- }
98
- removeIfPresent(this.childrenIncludingDocuments, child);
99
- if (this.childrenIncludingDocuments?.length === 0) {
100
- delete this.childrenIncludingDocuments;
101
- }
102
- }
103
- isContainer() {
104
- return true;
105
- }
106
- traverse(callback) {
107
- for (const child of this.children?.slice() || []) {
108
- if (callback(child, TraverseProperty.Children) === false) {
109
- return;
110
- }
111
- }
112
- for (const child of this.documents?.slice() || []) {
113
- if (callback(child, TraverseProperty.Documents) === false) {
114
- return;
115
- }
116
- }
117
- }
118
- toObject(serializer) {
119
- return {
120
- ...super.toObject(serializer),
121
- children: serializer.toObjectsOptional(this.children),
122
- documents: serializer.toObjectsOptional(this.documents),
123
- // If we only have one type of child, don't bother writing the duplicate info about
124
- // ordering with documents to the serialized file.
125
- childrenIncludingDocuments: this.children?.length && this.documents?.length
126
- ? this.childrenIncludingDocuments?.map((refl) => refl.id)
127
- : undefined,
128
- groups: serializer.toObjectsOptional(this.groups),
129
- categories: serializer.toObjectsOptional(this.categories),
130
- };
131
- }
132
- fromObject(de, obj) {
133
- super.fromObject(de, obj);
134
- this.children = de.reviveMany(obj.children, (child) => de.constructReflection(child));
135
- this.documents = de.reviveMany(obj.documents, (child) => de.constructReflection(child));
136
- const byId = new Map();
137
- for (const child of this.children || []) {
138
- byId.set(child.id, child);
139
- }
140
- for (const child of this.documents || []) {
141
- byId.set(child.id, child);
142
- }
143
- for (const id of obj.childrenIncludingDocuments || []) {
144
- const child = byId.get(de.oldIdToNewId[id] ?? -1);
145
- if (child) {
146
- this.childrenIncludingDocuments ||= [];
147
- this.childrenIncludingDocuments.push(child);
148
- byId.delete(de.oldIdToNewId[id] ?? -1);
149
- }
150
- }
151
- if (byId.size) {
152
- // Anything left in byId wasn't included in the childrenIncludingDocuments array.
153
- this.childrenIncludingDocuments ||= [];
154
- this.childrenIncludingDocuments.push(...byId.values());
155
- }
156
- this.groups = de.reviveMany(obj.groups, (group) => new ReflectionGroup(group.title, this));
157
- this.categories = de.reviveMany(obj.categories, (cat) => new ReflectionCategory(cat.title));
158
- }
159
- }