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,92 +0,0 @@
1
- import { i18n } from "#utils";
2
- import { ParameterType } from "../utils/options/declaration.js";
3
- import { nicePath } from "../utils/paths.js";
4
- export class Outputs {
5
- application;
6
- outputs = new Map();
7
- defaultOutput = "html";
8
- constructor(application) {
9
- this.application = application;
10
- }
11
- addOutput(name, output) {
12
- if (this.outputs.has(name)) {
13
- throw new Error(`Output type '${name}' has already been defined`);
14
- }
15
- this.outputs.set(name, output);
16
- }
17
- setDefaultOutputName(name) {
18
- this.defaultOutput = name;
19
- }
20
- getOutputSpecs() {
21
- const options = this.application.options;
22
- let outputs = [];
23
- const outputShortcuts = options
24
- .getDeclarations()
25
- .filter((decl) => decl.type === ParameterType.Path && decl.outputShortcut);
26
- // --out is a special case. It isn't marked as a shortcut as what it is
27
- // a shortcut for may be modified by plugins. However, it is effectively
28
- // treated as an output shortcut, so check it here.
29
- if (options.isSet("out")) {
30
- outputs.push({
31
- name: this.defaultOutput,
32
- path: options.getValue("out"),
33
- });
34
- }
35
- for (const shortcut of outputShortcuts) {
36
- if (options.isSet(shortcut.name)) {
37
- outputs.push({
38
- name: shortcut.outputShortcut,
39
- path: options.getValue(shortcut.name),
40
- });
41
- }
42
- }
43
- // If no shortcuts have been defined, use the dedicated outputs option
44
- if (outputs.length === 0) {
45
- outputs = options.getValue("outputs") || [];
46
- }
47
- // If no outputs have been defined, just write the default output.
48
- if (!outputs.length) {
49
- outputs.push({
50
- name: this.defaultOutput,
51
- path: options.getValue("out"),
52
- });
53
- }
54
- return outputs;
55
- }
56
- async writeOutputs(project) {
57
- const outputs = this.getOutputSpecs();
58
- for (const output of outputs) {
59
- await this.writeOutput(output, project);
60
- }
61
- }
62
- async writeOutput(output, project) {
63
- const options = this.application.options;
64
- const snap = options.snapshot();
65
- const writer = this.outputs.get(output.name);
66
- if (!writer) {
67
- this.application.logger.error(i18n.specified_output_0_has_not_been_defined(output.name));
68
- return;
69
- }
70
- if (!this.application.setOptions(output.options || {}, true)) {
71
- options.restore(snap);
72
- return;
73
- }
74
- const preErrors = this.application.logger.errorCount;
75
- const start = Date.now();
76
- try {
77
- await writer(output.path, project);
78
- }
79
- catch (error) {
80
- const message = error instanceof Error ? error.message : String(error);
81
- this.application.logger.error(message);
82
- }
83
- if (this.application.logger.errorCount === preErrors) {
84
- this.application.logger.info(i18n.output_0_generated_at_1(output.name, nicePath(output.path)));
85
- }
86
- else {
87
- this.application.logger.error(i18n.output_0_could_not_be_generated(output.name));
88
- }
89
- this.application.logger.verbose(`${output.name} took ${Date.now() - start}ms`);
90
- options.restore(snap);
91
- }
92
- }
@@ -1,160 +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 { RendererComponent } from "../components.js";
36
- import { RendererEvent } from "../events.js";
37
- import { copySync, isFile, readFile, writeFileSync } from "../../utils/fs.js";
38
- import { DefaultTheme } from "../themes/default/DefaultTheme.js";
39
- import { getStyles } from "../../utils/highlighter.js";
40
- import { getEnumKeys, i18n } from "#utils";
41
- import { existsSync } from "fs";
42
- import { extname, join } from "path";
43
- import { fileURLToPath } from "url";
44
- import { ReflectionKind } from "../../models/index.js";
45
- import { Option } from "../../utils/index.js";
46
- /**
47
- * A plugin that copies the subdirectory ´assets´ from the current themes
48
- * source folder to the output directory.
49
- */
50
- let AssetsPlugin = (() => {
51
- let _classSuper = RendererComponent;
52
- let _favicon_decorators;
53
- let _favicon_initializers = [];
54
- let _favicon_extraInitializers = [];
55
- let _customCss_decorators;
56
- let _customCss_initializers = [];
57
- let _customCss_extraInitializers = [];
58
- let _customJs_decorators;
59
- let _customJs_initializers = [];
60
- let _customJs_extraInitializers = [];
61
- return class AssetsPlugin extends _classSuper {
62
- static {
63
- const _metadata = typeof Symbol === "function" && Symbol.metadata ? Object.create(_classSuper[Symbol.metadata] ?? null) : void 0;
64
- _favicon_decorators = [Option("favicon")];
65
- _customCss_decorators = [Option("customCss")];
66
- _customJs_decorators = [Option("customJs")];
67
- __esDecorate(this, null, _favicon_decorators, { kind: "accessor", name: "favicon", static: false, private: false, access: { has: obj => "favicon" in obj, get: obj => obj.favicon, set: (obj, value) => { obj.favicon = value; } }, metadata: _metadata }, _favicon_initializers, _favicon_extraInitializers);
68
- __esDecorate(this, null, _customCss_decorators, { kind: "accessor", name: "customCss", static: false, private: false, access: { has: obj => "customCss" in obj, get: obj => obj.customCss, set: (obj, value) => { obj.customCss = value; } }, metadata: _metadata }, _customCss_initializers, _customCss_extraInitializers);
69
- __esDecorate(this, null, _customJs_decorators, { kind: "accessor", name: "customJs", static: false, private: false, access: { has: obj => "customJs" in obj, get: obj => obj.customJs, set: (obj, value) => { obj.customJs = value; } }, metadata: _metadata }, _customJs_initializers, _customJs_extraInitializers);
70
- if (_metadata) Object.defineProperty(this, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });
71
- }
72
- #favicon_accessor_storage = __runInitializers(this, _favicon_initializers, void 0);
73
- get favicon() { return this.#favicon_accessor_storage; }
74
- set favicon(value) { this.#favicon_accessor_storage = value; }
75
- #customCss_accessor_storage = (__runInitializers(this, _favicon_extraInitializers), __runInitializers(this, _customCss_initializers, void 0));
76
- get customCss() { return this.#customCss_accessor_storage; }
77
- set customCss(value) { this.#customCss_accessor_storage = value; }
78
- #customJs_accessor_storage = (__runInitializers(this, _customCss_extraInitializers), __runInitializers(this, _customJs_initializers, void 0));
79
- get customJs() { return this.#customJs_accessor_storage; }
80
- set customJs(value) { this.#customJs_accessor_storage = value; }
81
- constructor(owner) {
82
- super(owner);
83
- __runInitializers(this, _customJs_extraInitializers);
84
- this.owner.on(RendererEvent.BEGIN, this.onRenderBegin.bind(this));
85
- this.owner.on(RendererEvent.END, this.onRenderEnd.bind(this));
86
- }
87
- getTranslatedStrings() {
88
- const translations = {
89
- copy: i18n.theme_copy(),
90
- copied: i18n.theme_copied(),
91
- normally_hidden: i18n.theme_normally_hidden(),
92
- hierarchy_expand: i18n.theme_hierarchy_expand(),
93
- hierarchy_collapse: i18n.theme_hierarchy_collapse(),
94
- folder: i18n.theme_folder(),
95
- search_index_not_available: i18n.theme_search_index_not_available(),
96
- search_no_results_found_for_0: i18n.theme_search_no_results_found_for_0("{0}"),
97
- };
98
- for (const key of getEnumKeys(ReflectionKind)) {
99
- const kind = ReflectionKind[key];
100
- translations[`kind_${kind}`] = ReflectionKind.singularString(kind);
101
- }
102
- return translations;
103
- }
104
- onRenderBegin(event) {
105
- const dest = join(event.outputDirectory, "assets");
106
- if (!/^https?:\/\//i.test(this.favicon) &&
107
- [".ico", ".png", ".svg"].includes(extname(this.favicon))) {
108
- copySync(this.favicon, join(dest, "favicon" + extname(this.favicon)));
109
- }
110
- if (this.customCss) {
111
- this.application.watchFile(this.customCss);
112
- if (existsSync(this.customCss)) {
113
- copySync(this.customCss, join(dest, "custom.css"));
114
- }
115
- else {
116
- this.application.logger.error(i18n.custom_css_file_0_does_not_exist(this.customCss));
117
- }
118
- }
119
- if (this.customJs) {
120
- this.application.watchFile(this.customJs);
121
- if (existsSync(this.customJs)) {
122
- copySync(this.customJs, join(dest, "custom.js"));
123
- }
124
- else {
125
- this.application.logger.error(i18n.custom_js_file_0_does_not_exist(this.customJs));
126
- }
127
- }
128
- }
129
- /**
130
- * Triggered before the renderer starts rendering a project.
131
- *
132
- * @param event An event object describing the current render operation.
133
- */
134
- onRenderEnd(event) {
135
- if (this.owner.theme instanceof DefaultTheme) {
136
- const src = join(fileURLToPath(import.meta.url), "../../../../../static");
137
- const dest = join(event.outputDirectory, "assets");
138
- copySync(join(src, "style.css"), join(dest, "style.css"));
139
- const mainJs = readFile(join(src, "main.js"));
140
- writeFileSync(join(dest, "main.js"), [
141
- '"use strict";',
142
- `window.translations=${JSON.stringify(this.getTranslatedStrings())};`,
143
- mainJs,
144
- ].join("\n"));
145
- writeFileSync(join(dest, "highlight.css"), getStyles());
146
- const media = join(event.outputDirectory, "media");
147
- const toCopy = event.project.files.getNameToAbsoluteMap();
148
- for (const [fileName, absolute] of toCopy.entries()) {
149
- if (isFile(absolute)) {
150
- copySync(absolute, join(media, fileName));
151
- }
152
- else {
153
- this.application.logger.warn(i18n.relative_path_0_is_not_a_file_and_will_not_be_copied_to_output(absolute));
154
- }
155
- }
156
- }
157
- }
158
- };
159
- })();
160
- export { AssetsPlugin };
@@ -1,65 +0,0 @@
1
- import * as Path from "path";
2
- import { RendererComponent } from "../components.js";
3
- import { RendererEvent } from "../events.js";
4
- import { writeFile } from "../../utils/index.js";
5
- import { DefaultTheme } from "../themes/default/DefaultTheme.js";
6
- import { getHierarchyRoots, getKindClass, getUniquePath } from "../themes/lib.js";
7
- import { compressJson } from "../../utils/compress.js";
8
- export class HierarchyPlugin extends RendererComponent {
9
- constructor(renderer) {
10
- super(renderer);
11
- this.owner.on(RendererEvent.BEGIN, this.onRendererBegin.bind(this));
12
- }
13
- onRendererBegin(_event) {
14
- if (!(this.owner.theme instanceof DefaultTheme)) {
15
- return;
16
- }
17
- this.owner.preRenderAsyncJobs.push((event) => this.buildHierarchy(event));
18
- }
19
- async buildHierarchy(event) {
20
- const project = event.project;
21
- const hierarchy = {
22
- roots: getHierarchyRoots(project).map((refl) => refl.id),
23
- reflections: {},
24
- };
25
- const queue = [...hierarchy.roots];
26
- while (queue.length) {
27
- const id = queue.pop();
28
- const refl = project.getReflectionById(id);
29
- if (id in hierarchy.reflections)
30
- continue;
31
- const url = this.owner.router.getFullUrl(refl);
32
- if (!url)
33
- continue;
34
- const jsonRecord = {
35
- name: refl.name,
36
- kind: refl.kind,
37
- url,
38
- class: getKindClass(refl),
39
- };
40
- const path = getUniquePath(refl);
41
- if (path.length > 1) {
42
- jsonRecord.uniqueNameParents = path
43
- .slice(0, -1)
44
- .map((r) => r.id);
45
- queue.push(...jsonRecord.uniqueNameParents);
46
- }
47
- const children = [
48
- ...(refl.implementedBy || []),
49
- ...(refl.extendedBy || []),
50
- ];
51
- for (const child of children) {
52
- if (child.reflection) {
53
- jsonRecord.children ||= [];
54
- jsonRecord.children.push(child.reflection.id);
55
- }
56
- }
57
- if (jsonRecord.children) {
58
- queue.push(...jsonRecord.children);
59
- }
60
- hierarchy.reflections[id] = jsonRecord;
61
- }
62
- const hierarchyJs = Path.join(event.outputDirectory, "assets", "hierarchy.js");
63
- await writeFile(hierarchyJs, `window.hierarchyData = "${await compressJson(hierarchy)}"`);
64
- }
65
- }
@@ -1,58 +0,0 @@
1
- import { RendererComponent } from "../components.js";
2
- import { RendererEvent } from "../events.js";
3
- import { writeFile } from "../../utils/fs.js";
4
- import { DefaultTheme } from "../themes/default/DefaultTheme.js";
5
- import { join } from "path";
6
- import { JSX } from "#utils";
7
- const ICONS_JS = `
8
- (function() {
9
- addIcons();
10
- function addIcons() {
11
- if (document.readyState === "loading") return document.addEventListener("DOMContentLoaded", addIcons);
12
- const svg = document.body.appendChild(document.createElementNS("http://www.w3.org/2000/svg", "svg"));
13
- svg.innerHTML = \`SVG_HTML\`;
14
- svg.style.display = "none";
15
- if (location.protocol === "file:") updateUseElements();
16
- }
17
-
18
- function updateUseElements() {
19
- document.querySelectorAll("use").forEach(el => {
20
- if (el.getAttribute("href").includes("#icon-")) {
21
- el.setAttribute("href", el.getAttribute("href").replace(/.*#/, "#"));
22
- }
23
- });
24
- }
25
- })()
26
- `.trim();
27
- /**
28
- * Plugin which is responsible for creating an icons.js file that embeds the icon SVGs
29
- * within the page on page load to reduce page sizes.
30
- */
31
- export class IconsPlugin extends RendererComponent {
32
- iconHtml;
33
- constructor(owner) {
34
- super(owner);
35
- this.owner.on(RendererEvent.BEGIN, this.onBeginRender.bind(this));
36
- }
37
- onBeginRender(_event) {
38
- if (this.owner.theme instanceof DefaultTheme) {
39
- this.owner.postRenderAsyncJobs.push((event) => this.onRenderEnd(event));
40
- }
41
- }
42
- async onRenderEnd(event) {
43
- const children = [];
44
- const icons = this.owner.theme.icons;
45
- for (const [name, icon] of Object.entries(icons)) {
46
- const svg = icon.call(icons);
47
- const className = svg.props && "class" in svg.props
48
- ? String(svg.props.class) + " tsd-no-select"
49
- : "tsd-no-select";
50
- children.push(JSX.createElement("symbol", { ...(svg.props || {}), id: `icon-${name}`, class: className }, svg.children));
51
- }
52
- const svg = JSX.renderElement(JSX.createElement("svg", { xmlns: "http://www.w3.org/2000/svg" }, children));
53
- const js = ICONS_JS.replace("SVG_HTML", JSX.renderElement(JSX.createElement(JSX.Fragment, null, children)).replaceAll("`", "\\`"));
54
- const svgPath = join(event.outputDirectory, "assets/icons.svg");
55
- const jsPath = join(event.outputDirectory, "assets/icons.js");
56
- await Promise.all([writeFile(svgPath, svg), writeFile(jsPath, js)]);
57
- }
58
- }
@@ -1,222 +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 * as Path from "path";
36
- import lunr from "lunr";
37
- import { Reflection } from "../../models/index.js";
38
- import { RendererComponent } from "../components.js";
39
- import { IndexEvent, RendererEvent } from "../events.js";
40
- import { Option, writeFile } from "../../utils/index.js";
41
- import { DefaultTheme } from "../themes/default/DefaultTheme.js";
42
- import { GroupPlugin } from "../../converter/plugins/GroupPlugin.js";
43
- import { CategoryPlugin } from "../../converter/plugins/CategoryPlugin.js";
44
- import { compressJson } from "../../utils/compress.js";
45
- import { i18n } from "#utils";
46
- /**
47
- * A plugin that exports an index of the project to a javascript file.
48
- *
49
- * The resulting javascript file can be used to build a simple search function.
50
- */
51
- let JavascriptIndexPlugin = (() => {
52
- let _classSuper = RendererComponent;
53
- let _searchComments_decorators;
54
- let _searchComments_initializers = [];
55
- let _searchComments_extraInitializers = [];
56
- let _searchDocuments_decorators;
57
- let _searchDocuments_initializers = [];
58
- let _searchDocuments_extraInitializers = [];
59
- let _searchGroupBoosts_decorators;
60
- let _searchGroupBoosts_initializers = [];
61
- let _searchGroupBoosts_extraInitializers = [];
62
- let _searchCategoryBoosts_decorators;
63
- let _searchCategoryBoosts_initializers = [];
64
- let _searchCategoryBoosts_extraInitializers = [];
65
- let _groupReferencesByType_decorators;
66
- let _groupReferencesByType_initializers = [];
67
- let _groupReferencesByType_extraInitializers = [];
68
- return class JavascriptIndexPlugin extends _classSuper {
69
- static {
70
- const _metadata = typeof Symbol === "function" && Symbol.metadata ? Object.create(_classSuper[Symbol.metadata] ?? null) : void 0;
71
- _searchComments_decorators = [Option("searchInComments")];
72
- _searchDocuments_decorators = [Option("searchInDocuments")];
73
- _searchGroupBoosts_decorators = [Option("searchGroupBoosts")];
74
- _searchCategoryBoosts_decorators = [Option("searchCategoryBoosts")];
75
- _groupReferencesByType_decorators = [Option("groupReferencesByType")];
76
- __esDecorate(this, null, _searchComments_decorators, { kind: "accessor", name: "searchComments", static: false, private: false, access: { has: obj => "searchComments" in obj, get: obj => obj.searchComments, set: (obj, value) => { obj.searchComments = value; } }, metadata: _metadata }, _searchComments_initializers, _searchComments_extraInitializers);
77
- __esDecorate(this, null, _searchDocuments_decorators, { kind: "accessor", name: "searchDocuments", static: false, private: false, access: { has: obj => "searchDocuments" in obj, get: obj => obj.searchDocuments, set: (obj, value) => { obj.searchDocuments = value; } }, metadata: _metadata }, _searchDocuments_initializers, _searchDocuments_extraInitializers);
78
- __esDecorate(this, null, _searchGroupBoosts_decorators, { kind: "accessor", name: "searchGroupBoosts", static: false, private: false, access: { has: obj => "searchGroupBoosts" in obj, get: obj => obj.searchGroupBoosts, set: (obj, value) => { obj.searchGroupBoosts = value; } }, metadata: _metadata }, _searchGroupBoosts_initializers, _searchGroupBoosts_extraInitializers);
79
- __esDecorate(this, null, _searchCategoryBoosts_decorators, { kind: "accessor", name: "searchCategoryBoosts", static: false, private: false, access: { has: obj => "searchCategoryBoosts" in obj, get: obj => obj.searchCategoryBoosts, set: (obj, value) => { obj.searchCategoryBoosts = value; } }, metadata: _metadata }, _searchCategoryBoosts_initializers, _searchCategoryBoosts_extraInitializers);
80
- __esDecorate(this, null, _groupReferencesByType_decorators, { kind: "accessor", name: "groupReferencesByType", static: false, private: false, access: { has: obj => "groupReferencesByType" in obj, get: obj => obj.groupReferencesByType, set: (obj, value) => { obj.groupReferencesByType = value; } }, metadata: _metadata }, _groupReferencesByType_initializers, _groupReferencesByType_extraInitializers);
81
- if (_metadata) Object.defineProperty(this, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });
82
- }
83
- #searchComments_accessor_storage = __runInitializers(this, _searchComments_initializers, void 0);
84
- get searchComments() { return this.#searchComments_accessor_storage; }
85
- set searchComments(value) { this.#searchComments_accessor_storage = value; }
86
- #searchDocuments_accessor_storage = (__runInitializers(this, _searchComments_extraInitializers), __runInitializers(this, _searchDocuments_initializers, void 0));
87
- get searchDocuments() { return this.#searchDocuments_accessor_storage; }
88
- set searchDocuments(value) { this.#searchDocuments_accessor_storage = value; }
89
- #searchGroupBoosts_accessor_storage = (__runInitializers(this, _searchDocuments_extraInitializers), __runInitializers(this, _searchGroupBoosts_initializers, void 0));
90
- get searchGroupBoosts() { return this.#searchGroupBoosts_accessor_storage; }
91
- set searchGroupBoosts(value) { this.#searchGroupBoosts_accessor_storage = value; }
92
- #searchCategoryBoosts_accessor_storage = (__runInitializers(this, _searchGroupBoosts_extraInitializers), __runInitializers(this, _searchCategoryBoosts_initializers, void 0));
93
- get searchCategoryBoosts() { return this.#searchCategoryBoosts_accessor_storage; }
94
- set searchCategoryBoosts(value) { this.#searchCategoryBoosts_accessor_storage = value; }
95
- #groupReferencesByType_accessor_storage = (__runInitializers(this, _searchCategoryBoosts_extraInitializers), __runInitializers(this, _groupReferencesByType_initializers, void 0));
96
- get groupReferencesByType() { return this.#groupReferencesByType_accessor_storage; }
97
- set groupReferencesByType(value) { this.#groupReferencesByType_accessor_storage = value; }
98
- unusedGroupBoosts = (__runInitializers(this, _groupReferencesByType_extraInitializers), new Set());
99
- unusedCatBoosts = new Set();
100
- constructor(owner) {
101
- super(owner);
102
- this.owner.on(RendererEvent.BEGIN, this.onRendererBegin.bind(this));
103
- }
104
- onRendererBegin(_event) {
105
- this.unusedGroupBoosts = new Set(Object.keys(this.searchGroupBoosts));
106
- this.unusedCatBoosts = new Set(Object.keys(this.searchCategoryBoosts));
107
- if (!(this.owner.theme instanceof DefaultTheme)) {
108
- return;
109
- }
110
- this.owner.preRenderAsyncJobs.push((event) => this.buildSearchIndex(event));
111
- }
112
- async buildSearchIndex(event) {
113
- const theme = this.owner.theme;
114
- const rows = [];
115
- const initialSearchResults = this.owner
116
- .router.getLinkTargets()
117
- .filter((refl) => refl instanceof Reflection &&
118
- (refl.isDeclaration() || refl.isDocument()) &&
119
- refl.name &&
120
- !refl.flags.isExternal);
121
- const indexEvent = new IndexEvent(initialSearchResults);
122
- this.owner.trigger(IndexEvent.PREPARE_INDEX, indexEvent);
123
- const builder = new lunr.Builder();
124
- builder.pipeline.add(lunr.trimmer);
125
- builder.ref("id");
126
- for (const [key, boost] of Object.entries(indexEvent.searchFieldWeights)) {
127
- builder.field(key, { boost });
128
- }
129
- for (const reflection of indexEvent.searchResults) {
130
- const boost = this.getBoost(reflection);
131
- if (boost <= 0) {
132
- continue;
133
- }
134
- let parent = reflection.parent;
135
- if (parent?.isProject()) {
136
- parent = undefined;
137
- }
138
- const row = {
139
- kind: reflection.kind,
140
- name: reflection.name,
141
- url: theme.router.getFullUrl(reflection),
142
- classes: theme.getReflectionClasses(reflection),
143
- };
144
- const icon = theme.getReflectionIcon(reflection);
145
- if (icon !== reflection.kind) {
146
- row.icon = icon;
147
- }
148
- if (parent) {
149
- row.parent = parent.getFullName();
150
- }
151
- builder.add({
152
- name: reflection.name,
153
- comment: this.getCommentSearchText(reflection),
154
- document: this.getDocumentSearchText(reflection),
155
- ...indexEvent.searchFields[rows.length],
156
- id: rows.length,
157
- }, { boost });
158
- rows.push(row);
159
- }
160
- const index = builder.build();
161
- const jsonFileName = Path.join(event.outputDirectory, "assets", "search.js");
162
- const data = {
163
- rows,
164
- index,
165
- };
166
- await writeFile(jsonFileName, `window.searchData = "${await compressJson(data)}";`);
167
- if (this.unusedGroupBoosts.size &&
168
- this.application.options.isSet("searchGroupBoosts")) {
169
- this.application.logger.warn(i18n.not_all_search_group_boosts_used_0(Array.from(this.unusedGroupBoosts).join("\n\t")));
170
- }
171
- if (this.unusedCatBoosts.size &&
172
- this.application.options.isSet("searchCategoryBoosts")) {
173
- this.application.logger.warn(i18n.not_all_search_category_boosts_used_0(Array.from(this.unusedCatBoosts).join("\n\t")));
174
- }
175
- }
176
- getBoost(refl) {
177
- let boost = refl.relevanceBoost ?? 1;
178
- for (const group of GroupPlugin.getGroups(refl, this.groupReferencesByType)) {
179
- boost *= this.searchGroupBoosts[group] ?? 1;
180
- this.unusedGroupBoosts.delete(group);
181
- }
182
- for (const cat of CategoryPlugin.getCategories(refl)) {
183
- boost *= this.searchCategoryBoosts[cat] ?? 1;
184
- this.unusedCatBoosts.delete(cat);
185
- }
186
- return boost;
187
- }
188
- getCommentSearchText(reflection) {
189
- if (!this.searchComments)
190
- return;
191
- const comments = [];
192
- if (reflection.comment)
193
- comments.push(reflection.comment);
194
- if (reflection.isDeclaration()) {
195
- reflection.signatures?.forEach((s) => s.comment && comments.push(s.comment));
196
- if (reflection.getSignature?.comment) {
197
- comments.push(reflection.getSignature.comment);
198
- }
199
- if (reflection.setSignature?.comment) {
200
- comments.push(reflection.setSignature.comment);
201
- }
202
- }
203
- if (!comments.length) {
204
- return;
205
- }
206
- return comments
207
- .flatMap((c) => {
208
- return [...c.summary, ...c.blockTags.flatMap((t) => t.content)];
209
- })
210
- .map((part) => part.text)
211
- .join("\n");
212
- }
213
- getDocumentSearchText(reflection) {
214
- if (!this.searchDocuments)
215
- return;
216
- if (reflection.isDocument()) {
217
- return reflection.content.flatMap((c) => c.text).join("\n");
218
- }
219
- }
220
- };
221
- })();
222
- export { JavascriptIndexPlugin };
@@ -1,23 +0,0 @@
1
- import * as Path from "path";
2
- import { RendererComponent } from "../components.js";
3
- import { RendererEvent } from "../events.js";
4
- import { writeFile } from "../../utils/index.js";
5
- import { DefaultTheme } from "../themes/default/DefaultTheme.js";
6
- import { compressJson } from "../../utils/compress.js";
7
- export class NavigationPlugin extends RendererComponent {
8
- constructor(owner) {
9
- super(owner);
10
- this.owner.on(RendererEvent.BEGIN, this.onRendererBegin.bind(this));
11
- }
12
- onRendererBegin(_event) {
13
- if (!(this.owner.theme instanceof DefaultTheme)) {
14
- return;
15
- }
16
- this.owner.preRenderAsyncJobs.push((event) => this.buildNavigationIndex(event));
17
- }
18
- async buildNavigationIndex(event) {
19
- const navigationJs = Path.join(event.outputDirectory, "assets", "navigation.js");
20
- const nav = this.owner.theme.getNavigation(event.project);
21
- await writeFile(navigationJs, `window.navigationData = "${await compressJson(nav)}"`);
22
- }
23
- }