typedoc 0.28.19 → 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 (396) hide show
  1. package/bin/typedoc +1 -1
  2. package/dist/browser-utils.js +29 -2
  3. package/dist/cli.js +111 -0
  4. package/dist/index.js +17888 -44
  5. package/dist/models.js +3736 -0
  6. package/dist/node-utils.js +7018 -0
  7. package/dist/serialization.js +430 -0
  8. package/dist/{lib → types}/application-events.d.ts +2 -0
  9. package/dist/{lib → types}/application.d.ts +51 -8
  10. package/dist/{lib → types}/converter/comments/declarationReferenceResolver.d.ts +1 -1
  11. package/dist/{lib → types}/converter/comments/discovery.d.ts +3 -3
  12. package/dist/{lib → types}/converter/comments/index.d.ts +4 -4
  13. package/dist/{lib → types}/converter/comments/lexer.d.ts +1 -1
  14. package/dist/{lib → types}/converter/comments/linkResolver.d.ts +1 -1
  15. package/dist/{lib → types}/converter/comments/parser.d.ts +3 -4
  16. package/dist/{lib → types}/converter/comments/textParser.d.ts +8 -2
  17. package/dist/{lib → types}/converter/components.d.ts +1 -1
  18. package/dist/{lib → types}/converter/context.d.ts +2 -2
  19. package/dist/{lib → types}/converter/converter.d.ts +6 -8
  20. package/dist/{lib → types}/converter/factories/signature.d.ts +1 -1
  21. package/dist/{lib → types}/converter/index.d.ts +1 -0
  22. package/dist/{lib → types}/converter/plugins/CategoryPlugin.d.ts +2 -2
  23. package/dist/{lib → types}/converter/plugins/GroupPlugin.d.ts +2 -3
  24. package/dist/{lib → types}/converter/plugins/IncludePlugin.d.ts +1 -1
  25. package/dist/{lib → types}/converter/plugins/InheritDocPlugin.d.ts +1 -1
  26. package/dist/{lib → types}/converter/plugins/LinkResolverPlugin.d.ts +3 -3
  27. package/dist/{lib → types}/converter/plugins/SourcePlugin.d.ts +1 -2
  28. package/dist/{lib → types}/converter/plugins/TypePlugin.d.ts +1 -1
  29. package/dist/{lib → types}/converter/types.d.ts +1 -1
  30. package/dist/{lib/converter/utils → types/converter/utilities}/reflections.d.ts +1 -1
  31. package/dist/{lib/converter/utils → types/converter/utilities}/repository.d.ts +14 -13
  32. package/dist/{index.d.ts → types/index.d.ts} +15 -16
  33. package/dist/{lib → types}/internationalization/internationalization.d.ts +0 -8
  34. package/dist/types/internationalization/locale-utils.d.ts +3 -0
  35. package/dist/types/internationalization/locales/de.d.ts +368 -0
  36. package/dist/{lib/internationalization/locales/en.d.cts → types/internationalization/locales/en.d.ts} +2 -1
  37. package/dist/types/internationalization/locales/fr.d.ts +346 -0
  38. package/dist/types/internationalization/locales/ja.d.ts +307 -0
  39. package/dist/types/internationalization/locales/ko.d.ts +221 -0
  40. package/dist/types/internationalization/locales/zh.d.ts +452 -0
  41. package/dist/{lib → types}/internationalization/translatable.d.ts +1 -1
  42. package/dist/{lib → types}/models/FileRegistry.d.ts +5 -0
  43. package/dist/{lib → types}/models/ReflectionSymbolId.d.ts +9 -3
  44. package/dist/{lib → types}/models/SourceReference.d.ts +5 -3
  45. package/dist/types/models.d.ts +1 -0
  46. package/dist/types/node-utils.d.ts +1 -0
  47. package/dist/{lib → types}/output/components.d.ts +3 -3
  48. package/dist/{lib → types}/output/events.d.ts +1 -2
  49. package/dist/{lib → types}/output/formatter.d.ts +1 -2
  50. package/dist/{lib → types}/output/output.d.ts +2 -2
  51. package/dist/{lib → types}/output/renderer.d.ts +4 -5
  52. package/dist/{lib → types}/output/router.d.ts +2 -2
  53. package/dist/{lib → types}/output/themes/MarkedPlugin.d.ts +3 -3
  54. package/dist/{lib → types}/output/themes/default/DefaultTheme.d.ts +1 -1
  55. package/dist/{lib → types}/output/themes/default/DefaultThemeRenderContext.d.ts +25 -25
  56. package/dist/{lib → types}/output/themes/default/layouts/default.d.ts +1 -1
  57. package/dist/{lib → types}/output/themes/default/partials/anchor-icon.d.ts +1 -1
  58. package/dist/{lib → types}/output/themes/default/partials/breadcrumb.d.ts +1 -1
  59. package/dist/{lib → types}/output/themes/default/partials/comment.d.ts +1 -1
  60. package/dist/{lib → types}/output/themes/default/partials/header.d.ts +1 -1
  61. package/dist/{lib → types}/output/themes/default/partials/hierarchy.d.ts +1 -1
  62. package/dist/{lib → types}/output/themes/default/partials/icon.d.ts +1 -1
  63. package/dist/{lib → types}/output/themes/default/partials/index.d.ts +1 -1
  64. package/dist/{lib → types}/output/themes/default/partials/member.d.ts +1 -1
  65. package/dist/{lib → types}/output/themes/default/partials/member.getterSetter.d.ts +1 -1
  66. package/dist/{lib → types}/output/themes/default/partials/member.signature.body.d.ts +1 -1
  67. package/dist/{lib → types}/output/themes/default/partials/member.signature.title.d.ts +2 -2
  68. package/dist/{lib → types}/output/themes/default/partials/member.signatures.d.ts +1 -1
  69. package/dist/{lib → types}/output/themes/default/partials/member.sources.d.ts +1 -1
  70. package/dist/{lib → types}/output/themes/default/partials/members.d.ts +1 -1
  71. package/dist/{lib → types}/output/themes/default/partials/moduleReflection.d.ts +1 -1
  72. package/dist/{lib → types}/output/themes/default/partials/navigation.d.ts +1 -1
  73. package/dist/{lib → types}/output/themes/default/partials/reflectionPreview.d.ts +1 -1
  74. package/dist/{lib → types}/output/themes/default/partials/toolbar.d.ts +1 -1
  75. package/dist/{lib → types}/output/themes/default/partials/type.d.ts +2 -2
  76. package/dist/{lib → types}/output/themes/default/partials/typeDetails.d.ts +2 -2
  77. package/dist/{lib → types}/output/themes/default/partials/typeParameters.d.ts +1 -1
  78. package/dist/{lib → types}/output/themes/default/templates/document.d.ts +1 -1
  79. package/dist/{lib → types}/output/themes/default/templates/hierarchy.d.ts +1 -1
  80. package/dist/{lib → types}/output/themes/default/templates/index.d.ts +1 -1
  81. package/dist/{lib → types}/output/themes/default/templates/reflection.d.ts +1 -1
  82. package/dist/{lib → types}/output/themes/lib.d.ts +1 -1
  83. package/dist/types/serialization.d.ts +1 -0
  84. package/dist/types/tsconfig.tsbuildinfo +1 -0
  85. package/dist/{lib → types}/utils/ValidatingFileRegistry.d.ts +1 -1
  86. package/dist/{lib → types}/utils/entry-point.d.ts +2 -2
  87. package/dist/{lib → types}/utils/general.d.ts +3 -0
  88. package/dist/types/utils/index.d.ts +22 -0
  89. package/dist/{lib → types}/utils/options/declaration.d.ts +1 -1
  90. package/dist/{lib → types}/utils/options/defaults.d.ts +1 -1
  91. package/dist/{lib → types}/utils/options/index.d.ts +2 -1
  92. package/dist/{lib → types}/utils/options/options.d.ts +1 -1
  93. package/dist/{lib → types}/utils/options/tsdoc-defaults.d.ts +1 -1
  94. package/dist/{lib → types}/utils/reflections.d.ts +1 -1
  95. package/dist/{lib → types}/utils/sort.d.ts +1 -2
  96. package/dist/{lib → types}/utils-common/general.d.ts +4 -4
  97. package/dist/types/utils-common.d.ts +1 -0
  98. package/dist/{lib → types}/validation/documentation.d.ts +1 -1
  99. package/dist/{lib → types}/validation/exports.d.ts +1 -1
  100. package/dist/types/validation/filePaths.d.ts +3 -0
  101. package/dist/{lib → types}/validation/links.d.ts +1 -1
  102. package/dist/{lib → types}/validation/unusedMergeModuleWith.d.ts +1 -1
  103. package/dist/utils-common.js +1311 -0
  104. package/package.json +45 -36
  105. package/static/main.js +1 -1
  106. package/static/style.css +18 -3
  107. package/tsdoc.json +4 -0
  108. package/typedoc-config.schema.json +1 -0
  109. package/dist/lib/application-events.js +0 -5
  110. package/dist/lib/application.js +0 -716
  111. package/dist/lib/cli.js +0 -111
  112. package/dist/lib/converter/comments/blockLexer.js +0 -391
  113. package/dist/lib/converter/comments/declarationReferenceResolver.js +0 -218
  114. package/dist/lib/converter/comments/discovery.js +0 -567
  115. package/dist/lib/converter/comments/index.js +0 -241
  116. package/dist/lib/converter/comments/lexer.js +0 -10
  117. package/dist/lib/converter/comments/lineLexer.js +0 -279
  118. package/dist/lib/converter/comments/linkResolver.js +0 -186
  119. package/dist/lib/converter/comments/parser.js +0 -538
  120. package/dist/lib/converter/comments/rawLexer.js +0 -218
  121. package/dist/lib/converter/comments/tagName.js +0 -58
  122. package/dist/lib/converter/comments/textParser.js +0 -372
  123. package/dist/lib/converter/components.js +0 -3
  124. package/dist/lib/converter/context.js +0 -311
  125. package/dist/lib/converter/convert-expression.js +0 -58
  126. package/dist/lib/converter/converter-events.js +0 -13
  127. package/dist/lib/converter/converter.js +0 -705
  128. package/dist/lib/converter/factories/index-signature.js +0 -50
  129. package/dist/lib/converter/factories/signature.js +0 -353
  130. package/dist/lib/converter/factories/symbol-id.js +0 -50
  131. package/dist/lib/converter/index.js +0 -3
  132. package/dist/lib/converter/jsdoc.js +0 -135
  133. package/dist/lib/converter/plugins/CategoryPlugin.js +0 -278
  134. package/dist/lib/converter/plugins/CommentPlugin.js +0 -770
  135. package/dist/lib/converter/plugins/GroupPlugin.js +0 -281
  136. package/dist/lib/converter/plugins/ImplementsPlugin.js +0 -438
  137. package/dist/lib/converter/plugins/IncludePlugin.js +0 -254
  138. package/dist/lib/converter/plugins/InheritDocPlugin.js +0 -220
  139. package/dist/lib/converter/plugins/LinkResolverPlugin.js +0 -88
  140. package/dist/lib/converter/plugins/MergeModuleWithPlugin.js +0 -50
  141. package/dist/lib/converter/plugins/PackagePlugin.js +0 -188
  142. package/dist/lib/converter/plugins/SourcePlugin.js +0 -215
  143. package/dist/lib/converter/plugins/TypePlugin.js +0 -108
  144. package/dist/lib/converter/plugins/index.js +0 -10
  145. package/dist/lib/converter/symbols.js +0 -861
  146. package/dist/lib/converter/types.js +0 -833
  147. package/dist/lib/converter/utils/nodes.js +0 -26
  148. package/dist/lib/converter/utils/reflections.js +0 -17
  149. package/dist/lib/converter/utils/repository.js +0 -295
  150. package/dist/lib/converter/utils/symbols.js +0 -12
  151. package/dist/lib/debug/index.js +0 -2
  152. package/dist/lib/debug/reflectionLifetimes.js +0 -27
  153. package/dist/lib/debug/rendererUrls.js +0 -68
  154. package/dist/lib/internationalization/index.js +0 -7
  155. package/dist/lib/internationalization/internationalization.js +0 -64
  156. package/dist/lib/internationalization/locale-utils.cjs +0 -8
  157. package/dist/lib/internationalization/locale-utils.d.cts +0 -8
  158. package/dist/lib/internationalization/locales/de.cjs +0 -401
  159. package/dist/lib/internationalization/locales/de.d.cts +0 -368
  160. package/dist/lib/internationalization/locales/en.cjs +0 -411
  161. package/dist/lib/internationalization/locales/fr.cjs +0 -347
  162. package/dist/lib/internationalization/locales/fr.d.cts +0 -346
  163. package/dist/lib/internationalization/locales/ja.cjs +0 -320
  164. package/dist/lib/internationalization/locales/ja.d.cts +0 -307
  165. package/dist/lib/internationalization/locales/ko.cjs +0 -233
  166. package/dist/lib/internationalization/locales/ko.d.cts +0 -221
  167. package/dist/lib/internationalization/locales/zh.cjs +0 -488
  168. package/dist/lib/internationalization/locales/zh.d.cts +0 -452
  169. package/dist/lib/internationalization/translatable.js +0 -8
  170. package/dist/lib/models/Comment.js +0 -534
  171. package/dist/lib/models/ContainerReflection.js +0 -159
  172. package/dist/lib/models/DeclarationReflection.js +0 -287
  173. package/dist/lib/models/DocumentReflection.js +0 -66
  174. package/dist/lib/models/FileRegistry.js +0 -133
  175. package/dist/lib/models/ParameterReflection.js +0 -39
  176. package/dist/lib/models/ProjectReflection.js +0 -417
  177. package/dist/lib/models/ReferenceReflection.js +0 -85
  178. package/dist/lib/models/Reflection.js +0 -495
  179. package/dist/lib/models/ReflectionCategory.js +0 -56
  180. package/dist/lib/models/ReflectionGroup.js +0 -72
  181. package/dist/lib/models/ReflectionSymbolId.js +0 -85
  182. package/dist/lib/models/SignatureReflection.js +0 -96
  183. package/dist/lib/models/SourceReference.js +0 -50
  184. package/dist/lib/models/TypeParameterReflection.js +0 -45
  185. package/dist/lib/models/index.js +0 -19
  186. package/dist/lib/models/kind.js +0 -231
  187. package/dist/lib/models/types.js +0 -1296
  188. package/dist/lib/models/utils.js +0 -26
  189. package/dist/lib/models/variant.js +0 -1
  190. package/dist/lib/output/components.js +0 -133
  191. package/dist/lib/output/events.js +0 -195
  192. package/dist/lib/output/formatter.js +0 -660
  193. package/dist/lib/output/index.js +0 -7
  194. package/dist/lib/output/output.js +0 -92
  195. package/dist/lib/output/plugins/AssetsPlugin.js +0 -160
  196. package/dist/lib/output/plugins/HierarchyPlugin.js +0 -65
  197. package/dist/lib/output/plugins/IconsPlugin.js +0 -58
  198. package/dist/lib/output/plugins/JavascriptIndexPlugin.js +0 -222
  199. package/dist/lib/output/plugins/NavigationPlugin.js +0 -23
  200. package/dist/lib/output/plugins/SitemapPlugin.js +0 -82
  201. package/dist/lib/output/plugins/index.js +0 -7
  202. package/dist/lib/output/renderer.js +0 -387
  203. package/dist/lib/output/router.js +0 -522
  204. package/dist/lib/output/theme.js +0 -17
  205. package/dist/lib/output/themes/MarkedPlugin.js +0 -461
  206. package/dist/lib/output/themes/default/DefaultTheme.js +0 -367
  207. package/dist/lib/output/themes/default/DefaultThemeRenderContext.js +0 -151
  208. package/dist/lib/output/themes/default/Slugger.js +0 -60
  209. package/dist/lib/output/themes/default/layouts/default.js +0 -89
  210. package/dist/lib/output/themes/default/partials/anchor-icon.js +0 -9
  211. package/dist/lib/output/themes/default/partials/breadcrumb.js +0 -11
  212. package/dist/lib/output/themes/default/partials/comment.js +0 -80
  213. package/dist/lib/output/themes/default/partials/footer.js +0 -37
  214. package/dist/lib/output/themes/default/partials/header.js +0 -39
  215. package/dist/lib/output/themes/default/partials/hierarchy.js +0 -32
  216. package/dist/lib/output/themes/default/partials/icon.js +0 -101
  217. package/dist/lib/output/themes/default/partials/index.js +0 -24
  218. package/dist/lib/output/themes/default/partials/member.declaration.js +0 -35
  219. package/dist/lib/output/themes/default/partials/member.getterSetter.js +0 -12
  220. package/dist/lib/output/themes/default/partials/member.js +0 -36
  221. package/dist/lib/output/themes/default/partials/member.signature.body.js +0 -33
  222. package/dist/lib/output/themes/default/partials/member.signature.title.js +0 -9
  223. package/dist/lib/output/themes/default/partials/member.signatures.js +0 -9
  224. package/dist/lib/output/themes/default/partials/member.sources.js +0 -55
  225. package/dist/lib/output/themes/default/partials/members.js +0 -17
  226. package/dist/lib/output/themes/default/partials/moduleReflection.js +0 -68
  227. package/dist/lib/output/themes/default/partials/navigation.js +0 -144
  228. package/dist/lib/output/themes/default/partials/reflectionPreview.js +0 -26
  229. package/dist/lib/output/themes/default/partials/toolbar.js +0 -13
  230. package/dist/lib/output/themes/default/partials/type.js +0 -9
  231. package/dist/lib/output/themes/default/partials/typeAndParent.js +0 -28
  232. package/dist/lib/output/themes/default/partials/typeDetails.js +0 -284
  233. package/dist/lib/output/themes/default/partials/typeParameters.js +0 -26
  234. package/dist/lib/output/themes/default/templates/document.js +0 -3
  235. package/dist/lib/output/themes/default/templates/hierarchy.js +0 -31
  236. package/dist/lib/output/themes/default/templates/index.js +0 -3
  237. package/dist/lib/output/themes/default/templates/reflection.js +0 -53
  238. package/dist/lib/output/themes/lib.js +0 -218
  239. package/dist/lib/serialization/components.js +0 -1
  240. package/dist/lib/serialization/deserializer.js +0 -235
  241. package/dist/lib/serialization/events.js +0 -18
  242. package/dist/lib/serialization/index.js +0 -4
  243. package/dist/lib/serialization/schema.js +0 -32
  244. package/dist/lib/serialization/serializer.js +0 -65
  245. package/dist/lib/utils/ValidatingFileRegistry.js +0 -52
  246. package/dist/lib/utils/component.js +0 -41
  247. package/dist/lib/utils/compress.js +0 -13
  248. package/dist/lib/utils/declaration-maps.js +0 -51
  249. package/dist/lib/utils/entry-point.js +0 -330
  250. package/dist/lib/utils/fs.js +0 -372
  251. package/dist/lib/utils/general.js +0 -25
  252. package/dist/lib/utils/highlighter.js +0 -150
  253. package/dist/lib/utils/html-entities.js +0 -2329
  254. package/dist/lib/utils/html.js +0 -635
  255. package/dist/lib/utils/index.d.ts +0 -17
  256. package/dist/lib/utils/index.js +0 -15
  257. package/dist/lib/utils/loggers.js +0 -71
  258. package/dist/lib/utils/options/declaration.js +0 -444
  259. package/dist/lib/utils/options/defaults.js +0 -104
  260. package/dist/lib/utils/options/help.js +0 -63
  261. package/dist/lib/utils/options/index.js +0 -4
  262. package/dist/lib/utils/options/options.js +0 -273
  263. package/dist/lib/utils/options/readers/arguments.js +0 -109
  264. package/dist/lib/utils/options/readers/index.js +0 -4
  265. package/dist/lib/utils/options/readers/package-json.js +0 -40
  266. package/dist/lib/utils/options/readers/tsconfig.js +0 -172
  267. package/dist/lib/utils/options/readers/typedoc.js +0 -136
  268. package/dist/lib/utils/options/sources/index.js +0 -1
  269. package/dist/lib/utils/options/sources/typedoc.js +0 -876
  270. package/dist/lib/utils/options/tsdoc-defaults.js +0 -94
  271. package/dist/lib/utils/package-manifest.js +0 -84
  272. package/dist/lib/utils/paths.js +0 -127
  273. package/dist/lib/utils/perf.js +0 -86
  274. package/dist/lib/utils/plugins.js +0 -61
  275. package/dist/lib/utils/reflections.js +0 -64
  276. package/dist/lib/utils/sort.js +0 -153
  277. package/dist/lib/utils/tsconfig.js +0 -60
  278. package/dist/lib/utils/tsutils.js +0 -23
  279. package/dist/lib/utils-common/array.js +0 -152
  280. package/dist/lib/utils-common/declarationReference.js +0 -341
  281. package/dist/lib/utils-common/enum.js +0 -27
  282. package/dist/lib/utils-common/events.js +0 -49
  283. package/dist/lib/utils-common/general.js +0 -22
  284. package/dist/lib/utils-common/hooks.js +0 -90
  285. package/dist/lib/utils-common/i18n.js +0 -39
  286. package/dist/lib/utils-common/index.js +0 -17
  287. package/dist/lib/utils-common/jsx.elements.js +0 -3
  288. package/dist/lib/utils-common/jsx.js +0 -187
  289. package/dist/lib/utils-common/logger.js +0 -129
  290. package/dist/lib/utils-common/map.js +0 -63
  291. package/dist/lib/utils-common/minimalSourceFile.js +0 -43
  292. package/dist/lib/utils-common/path.js +0 -130
  293. package/dist/lib/utils-common/set.js +0 -23
  294. package/dist/lib/utils-common/string.js +0 -84
  295. package/dist/lib/utils-common/validation.js +0 -50
  296. package/dist/lib/validation/documentation.js +0 -91
  297. package/dist/lib/validation/exports.js +0 -65
  298. package/dist/lib/validation/links.js +0 -78
  299. package/dist/lib/validation/unusedMergeModuleWith.js +0 -12
  300. /package/dist/{browser-utils.d.ts → types/browser-utils.d.ts} +0 -0
  301. /package/dist/{lib → types}/cli.d.ts +0 -0
  302. /package/dist/{lib → types}/converter/comments/blockLexer.d.ts +0 -0
  303. /package/dist/{lib → types}/converter/comments/lineLexer.d.ts +0 -0
  304. /package/dist/{lib → types}/converter/comments/rawLexer.d.ts +0 -0
  305. /package/dist/{lib → types}/converter/comments/tagName.d.ts +0 -0
  306. /package/dist/{lib → types}/converter/convert-expression.d.ts +0 -0
  307. /package/dist/{lib → types}/converter/converter-events.d.ts +0 -0
  308. /package/dist/{lib → types}/converter/factories/index-signature.d.ts +0 -0
  309. /package/dist/{lib → types}/converter/factories/symbol-id.d.ts +0 -0
  310. /package/dist/{lib → types}/converter/jsdoc.d.ts +0 -0
  311. /package/dist/{lib → types}/converter/plugins/CommentPlugin.d.ts +0 -0
  312. /package/dist/{lib → types}/converter/plugins/ImplementsPlugin.d.ts +0 -0
  313. /package/dist/{lib → types}/converter/plugins/MergeModuleWithPlugin.d.ts +0 -0
  314. /package/dist/{lib → types}/converter/plugins/PackagePlugin.d.ts +0 -0
  315. /package/dist/{lib → types}/converter/plugins/index.d.ts +0 -0
  316. /package/dist/{lib → types}/converter/symbols.d.ts +0 -0
  317. /package/dist/{lib/converter/utils → types/converter/utilities}/nodes.d.ts +0 -0
  318. /package/dist/{lib/converter/utils → types/converter/utilities}/symbols.d.ts +0 -0
  319. /package/dist/{lib → types}/debug/index.d.ts +0 -0
  320. /package/dist/{lib → types}/debug/reflectionLifetimes.d.ts +0 -0
  321. /package/dist/{lib → types}/debug/rendererUrls.d.ts +0 -0
  322. /package/dist/{lib → types}/internationalization/index.d.ts +0 -0
  323. /package/dist/{lib → types}/models/Comment.d.ts +0 -0
  324. /package/dist/{lib → types}/models/ContainerReflection.d.ts +0 -0
  325. /package/dist/{lib → types}/models/DeclarationReflection.d.ts +0 -0
  326. /package/dist/{lib → types}/models/DocumentReflection.d.ts +0 -0
  327. /package/dist/{lib → types}/models/ParameterReflection.d.ts +0 -0
  328. /package/dist/{lib → types}/models/ProjectReflection.d.ts +0 -0
  329. /package/dist/{lib → types}/models/ReferenceReflection.d.ts +0 -0
  330. /package/dist/{lib → types}/models/Reflection.d.ts +0 -0
  331. /package/dist/{lib → types}/models/ReflectionCategory.d.ts +0 -0
  332. /package/dist/{lib → types}/models/ReflectionGroup.d.ts +0 -0
  333. /package/dist/{lib → types}/models/SignatureReflection.d.ts +0 -0
  334. /package/dist/{lib → types}/models/TypeParameterReflection.d.ts +0 -0
  335. /package/dist/{lib → types}/models/index.d.ts +0 -0
  336. /package/dist/{lib → types}/models/kind.d.ts +0 -0
  337. /package/dist/{lib → types}/models/types.d.ts +0 -0
  338. /package/dist/{lib → types}/models/utils.d.ts +0 -0
  339. /package/dist/{lib → types}/models/variant.d.ts +0 -0
  340. /package/dist/{lib → types}/output/index.d.ts +0 -0
  341. /package/dist/{lib → types}/output/plugins/AssetsPlugin.d.ts +0 -0
  342. /package/dist/{lib → types}/output/plugins/HierarchyPlugin.d.ts +0 -0
  343. /package/dist/{lib → types}/output/plugins/IconsPlugin.d.ts +0 -0
  344. /package/dist/{lib → types}/output/plugins/JavascriptIndexPlugin.d.ts +0 -0
  345. /package/dist/{lib → types}/output/plugins/NavigationPlugin.d.ts +0 -0
  346. /package/dist/{lib → types}/output/plugins/SitemapPlugin.d.ts +0 -0
  347. /package/dist/{lib → types}/output/plugins/index.d.ts +0 -0
  348. /package/dist/{lib → types}/output/theme.d.ts +0 -0
  349. /package/dist/{lib → types}/output/themes/default/Slugger.d.ts +0 -0
  350. /package/dist/{lib → types}/output/themes/default/partials/footer.d.ts +0 -0
  351. /package/dist/{lib → types}/output/themes/default/partials/member.declaration.d.ts +0 -0
  352. /package/dist/{lib → types}/output/themes/default/partials/typeAndParent.d.ts +0 -0
  353. /package/dist/{lib → types}/serialization/components.d.ts +0 -0
  354. /package/dist/{lib → types}/serialization/deserializer.d.ts +0 -0
  355. /package/dist/{lib → types}/serialization/events.d.ts +0 -0
  356. /package/dist/{lib → types}/serialization/index.d.ts +0 -0
  357. /package/dist/{lib → types}/serialization/schema.d.ts +0 -0
  358. /package/dist/{lib → types}/serialization/serializer.d.ts +0 -0
  359. /package/dist/{lib → types}/utils/component.d.ts +0 -0
  360. /package/dist/{lib → types}/utils/compress.d.ts +0 -0
  361. /package/dist/{lib → types}/utils/declaration-maps.d.ts +0 -0
  362. /package/dist/{lib → types}/utils/fs.d.ts +0 -0
  363. /package/dist/{lib → types}/utils/highlighter.d.ts +0 -0
  364. /package/dist/{lib → types}/utils/html-entities.d.ts +0 -0
  365. /package/dist/{lib → types}/utils/html.d.ts +0 -0
  366. /package/dist/{lib → types}/utils/loggers.d.ts +0 -0
  367. /package/dist/{lib → types}/utils/options/help.d.ts +0 -0
  368. /package/dist/{lib → types}/utils/options/readers/arguments.d.ts +0 -0
  369. /package/dist/{lib → types}/utils/options/readers/index.d.ts +0 -0
  370. /package/dist/{lib → types}/utils/options/readers/package-json.d.ts +0 -0
  371. /package/dist/{lib → types}/utils/options/readers/tsconfig.d.ts +0 -0
  372. /package/dist/{lib → types}/utils/options/readers/typedoc.d.ts +0 -0
  373. /package/dist/{lib → types}/utils/options/sources/index.d.ts +0 -0
  374. /package/dist/{lib → types}/utils/options/sources/typedoc.d.ts +0 -0
  375. /package/dist/{lib → types}/utils/package-manifest.d.ts +0 -0
  376. /package/dist/{lib → types}/utils/paths.d.ts +0 -0
  377. /package/dist/{lib → types}/utils/perf.d.ts +0 -0
  378. /package/dist/{lib → types}/utils/plugins.d.ts +0 -0
  379. /package/dist/{lib → types}/utils/tsconfig.d.ts +0 -0
  380. /package/dist/{lib → types}/utils/tsutils.d.ts +0 -0
  381. /package/dist/{lib → types}/utils-common/array.d.ts +0 -0
  382. /package/dist/{lib → types}/utils-common/declarationReference.d.ts +0 -0
  383. /package/dist/{lib → types}/utils-common/enum.d.ts +0 -0
  384. /package/dist/{lib → types}/utils-common/events.d.ts +0 -0
  385. /package/dist/{lib → types}/utils-common/hooks.d.ts +0 -0
  386. /package/dist/{lib → types}/utils-common/i18n.d.ts +0 -0
  387. /package/dist/{lib → types}/utils-common/index.d.ts +0 -0
  388. /package/dist/{lib → types}/utils-common/jsx.d.ts +0 -0
  389. /package/dist/{lib → types}/utils-common/jsx.elements.d.ts +0 -0
  390. /package/dist/{lib → types}/utils-common/logger.d.ts +0 -0
  391. /package/dist/{lib → types}/utils-common/map.d.ts +0 -0
  392. /package/dist/{lib → types}/utils-common/minimalSourceFile.d.ts +0 -0
  393. /package/dist/{lib → types}/utils-common/path.d.ts +0 -0
  394. /package/dist/{lib → types}/utils-common/set.d.ts +0 -0
  395. /package/dist/{lib → types}/utils-common/string.d.ts +0 -0
  396. /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 /\r?\n\r?\n/.test(part.text);
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.match(/\r?\n\r?\n/);
402
- if (paragraphEnd) {
403
- summaryParts.push({
404
- ...this.summary[partsEnd],
405
- text: text.slice(0, paragraphEnd.index),
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
- }