@depup/typedoc 0.28.17-depup.0

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 (390) hide show
  1. package/LICENSE +201 -0
  2. package/README.md +34 -0
  3. package/bin/package.json +3 -0
  4. package/bin/typedoc +24 -0
  5. package/changes.json +22 -0
  6. package/dist/browser-locales/de.d.ts +2 -0
  7. package/dist/browser-locales/de.js +62 -0
  8. package/dist/browser-locales/en.d.ts +2 -0
  9. package/dist/browser-locales/en.js +62 -0
  10. package/dist/browser-locales/ja.d.ts +2 -0
  11. package/dist/browser-locales/ja.js +62 -0
  12. package/dist/browser-locales/ko.d.ts +2 -0
  13. package/dist/browser-locales/ko.js +62 -0
  14. package/dist/browser-locales/zh.d.ts +2 -0
  15. package/dist/browser-locales/zh.js +62 -0
  16. package/dist/browser-utils.d.ts +3 -0
  17. package/dist/browser-utils.js +3 -0
  18. package/dist/index.d.ts +49 -0
  19. package/dist/index.js +46 -0
  20. package/dist/lib/application-events.d.ts +5 -0
  21. package/dist/lib/application-events.js +5 -0
  22. package/dist/lib/application.d.ts +195 -0
  23. package/dist/lib/application.js +715 -0
  24. package/dist/lib/cli.d.ts +1 -0
  25. package/dist/lib/cli.js +111 -0
  26. package/dist/lib/converter/comments/blockLexer.d.ts +4 -0
  27. package/dist/lib/converter/comments/blockLexer.js +391 -0
  28. package/dist/lib/converter/comments/declarationReferenceResolver.d.ts +3 -0
  29. package/dist/lib/converter/comments/declarationReferenceResolver.js +218 -0
  30. package/dist/lib/converter/comments/discovery.d.ts +14 -0
  31. package/dist/lib/converter/comments/discovery.js +563 -0
  32. package/dist/lib/converter/comments/index.d.ts +37 -0
  33. package/dist/lib/converter/comments/index.js +241 -0
  34. package/dist/lib/converter/comments/lexer.d.ts +17 -0
  35. package/dist/lib/converter/comments/lexer.js +10 -0
  36. package/dist/lib/converter/comments/lineLexer.d.ts +3 -0
  37. package/dist/lib/converter/comments/lineLexer.js +279 -0
  38. package/dist/lib/converter/comments/linkResolver.d.ts +20 -0
  39. package/dist/lib/converter/comments/linkResolver.js +186 -0
  40. package/dist/lib/converter/comments/parser.d.ts +18 -0
  41. package/dist/lib/converter/comments/parser.js +538 -0
  42. package/dist/lib/converter/comments/rawLexer.d.ts +8 -0
  43. package/dist/lib/converter/comments/rawLexer.js +218 -0
  44. package/dist/lib/converter/comments/tagName.d.ts +8 -0
  45. package/dist/lib/converter/comments/tagName.js +58 -0
  46. package/dist/lib/converter/comments/textParser.d.ts +33 -0
  47. package/dist/lib/converter/comments/textParser.js +372 -0
  48. package/dist/lib/converter/components.d.ts +4 -0
  49. package/dist/lib/converter/components.js +3 -0
  50. package/dist/lib/converter/context.d.ts +101 -0
  51. package/dist/lib/converter/context.js +311 -0
  52. package/dist/lib/converter/convert-expression.d.ts +9 -0
  53. package/dist/lib/converter/convert-expression.js +58 -0
  54. package/dist/lib/converter/converter-events.d.ts +13 -0
  55. package/dist/lib/converter/converter-events.js +13 -0
  56. package/dist/lib/converter/converter.d.ts +238 -0
  57. package/dist/lib/converter/converter.js +705 -0
  58. package/dist/lib/converter/factories/index-signature.d.ts +3 -0
  59. package/dist/lib/converter/factories/index-signature.js +50 -0
  60. package/dist/lib/converter/factories/signature.d.ts +14 -0
  61. package/dist/lib/converter/factories/signature.js +353 -0
  62. package/dist/lib/converter/factories/symbol-id.d.ts +3 -0
  63. package/dist/lib/converter/factories/symbol-id.js +47 -0
  64. package/dist/lib/converter/index.d.ts +5 -0
  65. package/dist/lib/converter/index.js +3 -0
  66. package/dist/lib/converter/jsdoc.d.ts +4 -0
  67. package/dist/lib/converter/jsdoc.js +135 -0
  68. package/dist/lib/converter/plugins/CategoryPlugin.d.ts +48 -0
  69. package/dist/lib/converter/plugins/CategoryPlugin.js +278 -0
  70. package/dist/lib/converter/plugins/CommentPlugin.d.ts +128 -0
  71. package/dist/lib/converter/plugins/CommentPlugin.js +770 -0
  72. package/dist/lib/converter/plugins/GroupPlugin.d.ts +48 -0
  73. package/dist/lib/converter/plugins/GroupPlugin.js +281 -0
  74. package/dist/lib/converter/plugins/ImplementsPlugin.d.ts +42 -0
  75. package/dist/lib/converter/plugins/ImplementsPlugin.js +438 -0
  76. package/dist/lib/converter/plugins/IncludePlugin.d.ts +14 -0
  77. package/dist/lib/converter/plugins/IncludePlugin.js +254 -0
  78. package/dist/lib/converter/plugins/InheritDocPlugin.d.ts +32 -0
  79. package/dist/lib/converter/plugins/InheritDocPlugin.js +220 -0
  80. package/dist/lib/converter/plugins/LinkResolverPlugin.d.ts +13 -0
  81. package/dist/lib/converter/plugins/LinkResolverPlugin.js +88 -0
  82. package/dist/lib/converter/plugins/MergeModuleWithPlugin.d.ts +12 -0
  83. package/dist/lib/converter/plugins/MergeModuleWithPlugin.js +50 -0
  84. package/dist/lib/converter/plugins/PackagePlugin.d.ts +31 -0
  85. package/dist/lib/converter/plugins/PackagePlugin.js +188 -0
  86. package/dist/lib/converter/plugins/SourcePlugin.d.ts +36 -0
  87. package/dist/lib/converter/plugins/SourcePlugin.js +215 -0
  88. package/dist/lib/converter/plugins/TypePlugin.d.ts +16 -0
  89. package/dist/lib/converter/plugins/TypePlugin.js +108 -0
  90. package/dist/lib/converter/plugins/index.d.ts +10 -0
  91. package/dist/lib/converter/plugins/index.js +10 -0
  92. package/dist/lib/converter/symbols.d.ts +3 -0
  93. package/dist/lib/converter/symbols.js +861 -0
  94. package/dist/lib/converter/types.d.ts +10 -0
  95. package/dist/lib/converter/types.js +833 -0
  96. package/dist/lib/converter/utils/nodes.d.ts +7 -0
  97. package/dist/lib/converter/utils/nodes.js +26 -0
  98. package/dist/lib/converter/utils/reflections.d.ts +2 -0
  99. package/dist/lib/converter/utils/reflections.js +17 -0
  100. package/dist/lib/converter/utils/repository.d.ts +96 -0
  101. package/dist/lib/converter/utils/repository.js +295 -0
  102. package/dist/lib/converter/utils/symbols.d.ts +2 -0
  103. package/dist/lib/converter/utils/symbols.js +12 -0
  104. package/dist/lib/debug/index.d.ts +2 -0
  105. package/dist/lib/debug/index.js +2 -0
  106. package/dist/lib/debug/reflectionLifetimes.d.ts +3 -0
  107. package/dist/lib/debug/reflectionLifetimes.js +27 -0
  108. package/dist/lib/debug/rendererUrls.d.ts +6 -0
  109. package/dist/lib/debug/rendererUrls.js +68 -0
  110. package/dist/lib/internationalization/index.d.ts +7 -0
  111. package/dist/lib/internationalization/index.js +7 -0
  112. package/dist/lib/internationalization/internationalization.d.ts +65 -0
  113. package/dist/lib/internationalization/internationalization.js +64 -0
  114. package/dist/lib/internationalization/locale-utils.cjs +8 -0
  115. package/dist/lib/internationalization/locale-utils.d.cts +8 -0
  116. package/dist/lib/internationalization/locales/de.cjs +401 -0
  117. package/dist/lib/internationalization/locales/de.d.cts +368 -0
  118. package/dist/lib/internationalization/locales/en.cjs +411 -0
  119. package/dist/lib/internationalization/locales/en.d.cts +380 -0
  120. package/dist/lib/internationalization/locales/ja.cjs +320 -0
  121. package/dist/lib/internationalization/locales/ja.d.cts +307 -0
  122. package/dist/lib/internationalization/locales/ko.cjs +233 -0
  123. package/dist/lib/internationalization/locales/ko.d.cts +221 -0
  124. package/dist/lib/internationalization/locales/zh.cjs +488 -0
  125. package/dist/lib/internationalization/locales/zh.d.cts +452 -0
  126. package/dist/lib/internationalization/translatable.d.ts +21 -0
  127. package/dist/lib/internationalization/translatable.js +8 -0
  128. package/dist/lib/models/Comment.d.ts +241 -0
  129. package/dist/lib/models/Comment.js +534 -0
  130. package/dist/lib/models/ContainerReflection.d.ts +56 -0
  131. package/dist/lib/models/ContainerReflection.js +159 -0
  132. package/dist/lib/models/DeclarationReflection.d.ts +149 -0
  133. package/dist/lib/models/DeclarationReflection.js +287 -0
  134. package/dist/lib/models/DocumentReflection.d.ts +32 -0
  135. package/dist/lib/models/DocumentReflection.js +66 -0
  136. package/dist/lib/models/FileRegistry.d.ts +46 -0
  137. package/dist/lib/models/FileRegistry.js +133 -0
  138. package/dist/lib/models/ParameterReflection.d.ts +21 -0
  139. package/dist/lib/models/ParameterReflection.js +39 -0
  140. package/dist/lib/models/ProjectReflection.d.ts +112 -0
  141. package/dist/lib/models/ProjectReflection.js +417 -0
  142. package/dist/lib/models/ReferenceReflection.d.ts +49 -0
  143. package/dist/lib/models/ReferenceReflection.js +85 -0
  144. package/dist/lib/models/Reflection.d.ts +229 -0
  145. package/dist/lib/models/Reflection.js +495 -0
  146. package/dist/lib/models/ReflectionCategory.d.ts +31 -0
  147. package/dist/lib/models/ReflectionCategory.js +56 -0
  148. package/dist/lib/models/ReflectionGroup.d.ts +38 -0
  149. package/dist/lib/models/ReflectionGroup.js +72 -0
  150. package/dist/lib/models/ReflectionSymbolId.d.ts +63 -0
  151. package/dist/lib/models/ReflectionSymbolId.js +85 -0
  152. package/dist/lib/models/SignatureReflection.d.ts +50 -0
  153. package/dist/lib/models/SignatureReflection.js +96 -0
  154. package/dist/lib/models/SourceReference.d.ts +33 -0
  155. package/dist/lib/models/SourceReference.js +50 -0
  156. package/dist/lib/models/TypeParameterReflection.d.ts +30 -0
  157. package/dist/lib/models/TypeParameterReflection.js +45 -0
  158. package/dist/lib/models/index.d.ts +19 -0
  159. package/dist/lib/models/index.js +19 -0
  160. package/dist/lib/models/kind.d.ts +84 -0
  161. package/dist/lib/models/kind.js +231 -0
  162. package/dist/lib/models/types.d.ts +553 -0
  163. package/dist/lib/models/types.js +1296 -0
  164. package/dist/lib/models/utils.d.ts +1 -0
  165. package/dist/lib/models/utils.js +26 -0
  166. package/dist/lib/models/variant.d.ts +21 -0
  167. package/dist/lib/models/variant.js +1 -0
  168. package/dist/lib/output/components.d.ts +53 -0
  169. package/dist/lib/output/components.js +133 -0
  170. package/dist/lib/output/events.d.ts +175 -0
  171. package/dist/lib/output/events.js +195 -0
  172. package/dist/lib/output/formatter.d.ts +88 -0
  173. package/dist/lib/output/formatter.js +660 -0
  174. package/dist/lib/output/index.d.ts +9 -0
  175. package/dist/lib/output/index.js +7 -0
  176. package/dist/lib/output/output.d.ts +14 -0
  177. package/dist/lib/output/output.js +92 -0
  178. package/dist/lib/output/plugins/AssetsPlugin.d.ts +20 -0
  179. package/dist/lib/output/plugins/AssetsPlugin.js +160 -0
  180. package/dist/lib/output/plugins/HierarchyPlugin.d.ts +7 -0
  181. package/dist/lib/output/plugins/HierarchyPlugin.js +65 -0
  182. package/dist/lib/output/plugins/IconsPlugin.d.ts +12 -0
  183. package/dist/lib/output/plugins/IconsPlugin.js +54 -0
  184. package/dist/lib/output/plugins/JavascriptIndexPlugin.d.ts +22 -0
  185. package/dist/lib/output/plugins/JavascriptIndexPlugin.js +222 -0
  186. package/dist/lib/output/plugins/NavigationPlugin.d.ts +7 -0
  187. package/dist/lib/output/plugins/NavigationPlugin.js +23 -0
  188. package/dist/lib/output/plugins/SitemapPlugin.d.ts +8 -0
  189. package/dist/lib/output/plugins/SitemapPlugin.js +82 -0
  190. package/dist/lib/output/plugins/index.d.ts +7 -0
  191. package/dist/lib/output/plugins/index.js +7 -0
  192. package/dist/lib/output/renderer.d.ts +227 -0
  193. package/dist/lib/output/renderer.js +387 -0
  194. package/dist/lib/output/router.d.ts +187 -0
  195. package/dist/lib/output/router.js +520 -0
  196. package/dist/lib/output/theme.d.ts +22 -0
  197. package/dist/lib/output/theme.js +17 -0
  198. package/dist/lib/output/themes/MarkedPlugin.d.ts +62 -0
  199. package/dist/lib/output/themes/MarkedPlugin.js +461 -0
  200. package/dist/lib/output/themes/default/DefaultTheme.d.ts +72 -0
  201. package/dist/lib/output/themes/default/DefaultTheme.js +367 -0
  202. package/dist/lib/output/themes/default/DefaultThemeRenderContext.d.ts +105 -0
  203. package/dist/lib/output/themes/default/DefaultThemeRenderContext.js +151 -0
  204. package/dist/lib/output/themes/default/Slugger.d.ts +13 -0
  205. package/dist/lib/output/themes/default/Slugger.js +60 -0
  206. package/dist/lib/output/themes/default/layouts/default.d.ts +6 -0
  207. package/dist/lib/output/themes/default/layouts/default.js +89 -0
  208. package/dist/lib/output/themes/default/partials/anchor-icon.d.ts +5 -0
  209. package/dist/lib/output/themes/default/partials/anchor-icon.js +9 -0
  210. package/dist/lib/output/themes/default/partials/breadcrumb.d.ts +4 -0
  211. package/dist/lib/output/themes/default/partials/breadcrumb.js +11 -0
  212. package/dist/lib/output/themes/default/partials/comment.d.ts +8 -0
  213. package/dist/lib/output/themes/default/partials/comment.js +80 -0
  214. package/dist/lib/output/themes/default/partials/footer.d.ts +3 -0
  215. package/dist/lib/output/themes/default/partials/footer.js +37 -0
  216. package/dist/lib/output/themes/default/partials/header.d.ts +5 -0
  217. package/dist/lib/output/themes/default/partials/header.js +39 -0
  218. package/dist/lib/output/themes/default/partials/hierarchy.d.ts +4 -0
  219. package/dist/lib/output/themes/default/partials/hierarchy.js +32 -0
  220. package/dist/lib/output/themes/default/partials/icon.d.ts +20 -0
  221. package/dist/lib/output/themes/default/partials/icon.js +101 -0
  222. package/dist/lib/output/themes/default/partials/index.d.ts +4 -0
  223. package/dist/lib/output/themes/default/partials/index.js +24 -0
  224. package/dist/lib/output/themes/default/partials/member.d.ts +4 -0
  225. package/dist/lib/output/themes/default/partials/member.declaration.d.ts +4 -0
  226. package/dist/lib/output/themes/default/partials/member.declaration.js +35 -0
  227. package/dist/lib/output/themes/default/partials/member.getterSetter.d.ts +4 -0
  228. package/dist/lib/output/themes/default/partials/member.getterSetter.js +12 -0
  229. package/dist/lib/output/themes/default/partials/member.js +36 -0
  230. package/dist/lib/output/themes/default/partials/member.signature.body.d.ts +6 -0
  231. package/dist/lib/output/themes/default/partials/member.signature.body.js +33 -0
  232. package/dist/lib/output/themes/default/partials/member.signature.title.d.ts +5 -0
  233. package/dist/lib/output/themes/default/partials/member.signature.title.js +9 -0
  234. package/dist/lib/output/themes/default/partials/member.signatures.d.ts +4 -0
  235. package/dist/lib/output/themes/default/partials/member.signatures.js +9 -0
  236. package/dist/lib/output/themes/default/partials/member.sources.d.ts +4 -0
  237. package/dist/lib/output/themes/default/partials/member.sources.js +55 -0
  238. package/dist/lib/output/themes/default/partials/members.d.ts +4 -0
  239. package/dist/lib/output/themes/default/partials/members.js +17 -0
  240. package/dist/lib/output/themes/default/partials/moduleReflection.d.ts +5 -0
  241. package/dist/lib/output/themes/default/partials/moduleReflection.js +68 -0
  242. package/dist/lib/output/themes/default/partials/navigation.d.ts +10 -0
  243. package/dist/lib/output/themes/default/partials/navigation.js +144 -0
  244. package/dist/lib/output/themes/default/partials/reflectionPreview.d.ts +4 -0
  245. package/dist/lib/output/themes/default/partials/reflectionPreview.js +26 -0
  246. package/dist/lib/output/themes/default/partials/toolbar.d.ts +5 -0
  247. package/dist/lib/output/themes/default/partials/toolbar.js +13 -0
  248. package/dist/lib/output/themes/default/partials/type.d.ts +5 -0
  249. package/dist/lib/output/themes/default/partials/type.js +9 -0
  250. package/dist/lib/output/themes/default/partials/typeAndParent.d.ts +4 -0
  251. package/dist/lib/output/themes/default/partials/typeAndParent.js +28 -0
  252. package/dist/lib/output/themes/default/partials/typeDetails.d.ts +8 -0
  253. package/dist/lib/output/themes/default/partials/typeDetails.js +284 -0
  254. package/dist/lib/output/themes/default/partials/typeParameters.d.ts +4 -0
  255. package/dist/lib/output/themes/default/partials/typeParameters.js +26 -0
  256. package/dist/lib/output/themes/default/templates/document.d.ts +5 -0
  257. package/dist/lib/output/themes/default/templates/document.js +3 -0
  258. package/dist/lib/output/themes/default/templates/hierarchy.d.ts +5 -0
  259. package/dist/lib/output/themes/default/templates/hierarchy.js +31 -0
  260. package/dist/lib/output/themes/default/templates/index.d.ts +5 -0
  261. package/dist/lib/output/themes/default/templates/index.js +3 -0
  262. package/dist/lib/output/themes/default/templates/reflection.d.ts +5 -0
  263. package/dist/lib/output/themes/default/templates/reflection.js +53 -0
  264. package/dist/lib/output/themes/lib.d.ts +44 -0
  265. package/dist/lib/output/themes/lib.js +218 -0
  266. package/dist/lib/serialization/components.d.ts +22 -0
  267. package/dist/lib/serialization/components.js +1 -0
  268. package/dist/lib/serialization/deserializer.d.ts +70 -0
  269. package/dist/lib/serialization/deserializer.js +235 -0
  270. package/dist/lib/serialization/events.d.ts +17 -0
  271. package/dist/lib/serialization/events.js +18 -0
  272. package/dist/lib/serialization/index.d.ts +5 -0
  273. package/dist/lib/serialization/index.js +4 -0
  274. package/dist/lib/serialization/schema.d.ts +283 -0
  275. package/dist/lib/serialization/schema.js +32 -0
  276. package/dist/lib/serialization/serializer.d.ts +52 -0
  277. package/dist/lib/serialization/serializer.js +65 -0
  278. package/dist/lib/utils/ValidatingFileRegistry.d.ts +12 -0
  279. package/dist/lib/utils/ValidatingFileRegistry.js +52 -0
  280. package/dist/lib/utils/component.d.ts +38 -0
  281. package/dist/lib/utils/component.js +41 -0
  282. package/dist/lib/utils/compress.d.ts +7 -0
  283. package/dist/lib/utils/compress.js +13 -0
  284. package/dist/lib/utils/declaration-maps.d.ts +3 -0
  285. package/dist/lib/utils/declaration-maps.js +51 -0
  286. package/dist/lib/utils/entry-point.d.ts +50 -0
  287. package/dist/lib/utils/entry-point.js +330 -0
  288. package/dist/lib/utils/fs.d.ts +65 -0
  289. package/dist/lib/utils/fs.js +372 -0
  290. package/dist/lib/utils/general.d.ts +4 -0
  291. package/dist/lib/utils/general.js +25 -0
  292. package/dist/lib/utils/highlighter.d.ts +9 -0
  293. package/dist/lib/utils/highlighter.js +150 -0
  294. package/dist/lib/utils/html-entities.d.ts +8926 -0
  295. package/dist/lib/utils/html-entities.js +2329 -0
  296. package/dist/lib/utils/html.d.ts +67 -0
  297. package/dist/lib/utils/html.js +635 -0
  298. package/dist/lib/utils/index.d.ts +17 -0
  299. package/dist/lib/utils/index.js +15 -0
  300. package/dist/lib/utils/loggers.d.ts +10 -0
  301. package/dist/lib/utils/loggers.js +71 -0
  302. package/dist/lib/utils/options/declaration.d.ts +514 -0
  303. package/dist/lib/utils/options/declaration.js +443 -0
  304. package/dist/lib/utils/options/defaults.d.ts +20 -0
  305. package/dist/lib/utils/options/defaults.js +104 -0
  306. package/dist/lib/utils/options/help.d.ts +7 -0
  307. package/dist/lib/utils/options/help.js +63 -0
  308. package/dist/lib/utils/options/index.d.ts +6 -0
  309. package/dist/lib/utils/options/index.js +4 -0
  310. package/dist/lib/utils/options/options.d.ts +199 -0
  311. package/dist/lib/utils/options/options.js +273 -0
  312. package/dist/lib/utils/options/readers/arguments.d.ts +15 -0
  313. package/dist/lib/utils/options/readers/arguments.js +109 -0
  314. package/dist/lib/utils/options/readers/index.d.ts +4 -0
  315. package/dist/lib/utils/options/readers/index.js +4 -0
  316. package/dist/lib/utils/options/readers/package-json.d.ts +9 -0
  317. package/dist/lib/utils/options/readers/package-json.js +40 -0
  318. package/dist/lib/utils/options/readers/tsconfig.d.ts +14 -0
  319. package/dist/lib/utils/options/readers/tsconfig.js +172 -0
  320. package/dist/lib/utils/options/readers/typedoc.d.ts +33 -0
  321. package/dist/lib/utils/options/readers/typedoc.js +136 -0
  322. package/dist/lib/utils/options/sources/index.d.ts +1 -0
  323. package/dist/lib/utils/options/sources/index.js +1 -0
  324. package/dist/lib/utils/options/sources/typedoc.d.ts +2 -0
  325. package/dist/lib/utils/options/sources/typedoc.js +876 -0
  326. package/dist/lib/utils/options/tsdoc-defaults.d.ts +6 -0
  327. package/dist/lib/utils/options/tsdoc-defaults.js +94 -0
  328. package/dist/lib/utils/package-manifest.d.ts +11 -0
  329. package/dist/lib/utils/package-manifest.js +84 -0
  330. package/dist/lib/utils/paths.d.ts +27 -0
  331. package/dist/lib/utils/paths.js +127 -0
  332. package/dist/lib/utils/perf.d.ts +6 -0
  333. package/dist/lib/utils/perf.js +86 -0
  334. package/dist/lib/utils/plugins.d.ts +3 -0
  335. package/dist/lib/utils/plugins.js +61 -0
  336. package/dist/lib/utils/reflections.d.ts +5 -0
  337. package/dist/lib/utils/reflections.js +64 -0
  338. package/dist/lib/utils/sort.d.ts +11 -0
  339. package/dist/lib/utils/sort.js +153 -0
  340. package/dist/lib/utils/tsconfig.d.ts +5 -0
  341. package/dist/lib/utils/tsconfig.js +60 -0
  342. package/dist/lib/utils/tsutils.d.ts +3 -0
  343. package/dist/lib/utils/tsutils.js +23 -0
  344. package/dist/lib/utils-common/array.d.ts +57 -0
  345. package/dist/lib/utils-common/array.js +152 -0
  346. package/dist/lib/utils-common/declarationReference.d.ts +42 -0
  347. package/dist/lib/utils-common/declarationReference.js +341 -0
  348. package/dist/lib/utils-common/enum.d.ts +9 -0
  349. package/dist/lib/utils-common/enum.js +27 -0
  350. package/dist/lib/utils-common/events.d.ts +29 -0
  351. package/dist/lib/utils-common/events.js +49 -0
  352. package/dist/lib/utils-common/general.d.ts +40 -0
  353. package/dist/lib/utils-common/general.js +22 -0
  354. package/dist/lib/utils-common/hooks.d.ts +51 -0
  355. package/dist/lib/utils-common/hooks.js +90 -0
  356. package/dist/lib/utils-common/i18n.d.ts +18 -0
  357. package/dist/lib/utils-common/i18n.js +39 -0
  358. package/dist/lib/utils-common/index.d.ts +16 -0
  359. package/dist/lib/utils-common/index.js +17 -0
  360. package/dist/lib/utils-common/jsx.d.ts +53 -0
  361. package/dist/lib/utils-common/jsx.elements.d.ts +949 -0
  362. package/dist/lib/utils-common/jsx.elements.js +3 -0
  363. package/dist/lib/utils-common/jsx.js +187 -0
  364. package/dist/lib/utils-common/logger.d.ts +97 -0
  365. package/dist/lib/utils-common/logger.js +129 -0
  366. package/dist/lib/utils-common/map.d.ts +23 -0
  367. package/dist/lib/utils-common/map.js +63 -0
  368. package/dist/lib/utils-common/minimalSourceFile.d.ts +12 -0
  369. package/dist/lib/utils-common/minimalSourceFile.js +43 -0
  370. package/dist/lib/utils-common/path.d.ts +42 -0
  371. package/dist/lib/utils-common/path.js +130 -0
  372. package/dist/lib/utils-common/set.d.ts +3 -0
  373. package/dist/lib/utils-common/set.js +23 -0
  374. package/dist/lib/utils-common/string.d.ts +11 -0
  375. package/dist/lib/utils-common/string.js +84 -0
  376. package/dist/lib/utils-common/validation.d.ts +33 -0
  377. package/dist/lib/utils-common/validation.js +50 -0
  378. package/dist/lib/validation/documentation.d.ts +3 -0
  379. package/dist/lib/validation/documentation.js +91 -0
  380. package/dist/lib/validation/exports.d.ts +3 -0
  381. package/dist/lib/validation/exports.js +65 -0
  382. package/dist/lib/validation/links.d.ts +3 -0
  383. package/dist/lib/validation/links.js +78 -0
  384. package/dist/lib/validation/unusedMergeModuleWith.d.ts +3 -0
  385. package/dist/lib/validation/unusedMergeModuleWith.js +12 -0
  386. package/package.json +161 -0
  387. package/static/main.js +58 -0
  388. package/static/style.css +1633 -0
  389. package/tsdoc.json +247 -0
  390. package/typedoc-config.schema.json +941 -0
@@ -0,0 +1,283 @@
1
+ /**
2
+ * Contains interfaces which describe the JSON output. Each interface is related to a specific type of serializer.
3
+ *
4
+ * ## Plugins
5
+ * Plugins which modify the serialization process can use declaration merging
6
+ * to add custom properties to the exported interfaces.
7
+ * For example, if your custom serializer adds a property to all {@link Reflection} objects:
8
+ * ```ts
9
+ * declare module 'typedoc/dist/lib/serialization/schema' {
10
+ * export interface AbstractReflection {
11
+ * myCustomProp: boolean
12
+ * }
13
+ * }
14
+ * ```
15
+ *
16
+ * If a plugin defines a new Model type, {@link ModelToObject} will not pick up the serializer type and
17
+ * the resulting type will not be included in the return type of {@link Serializer.toObject}.
18
+ * To fix this, use declaration merging to augment the {@link Serializer} class.
19
+ * ```ts
20
+ * declare module 'typedoc/dist/lib/serialization/serializer' {
21
+ * export interface Serializer {
22
+ * toObject(value: CustomModel, obj?: Partial<CustomModel>): CustomOutput
23
+ * }
24
+ * }
25
+ * ```
26
+ *
27
+ * For documentation on the JSON output properties, view the corresponding model.
28
+ * @summary Contains interfaces which describe the JSON output.
29
+ * @module
30
+ */
31
+ import type * as M from "#models";
32
+ import type { IfInternal, NormalizedPath, TagString } from "#utils";
33
+ export declare const SCHEMA_VERSION = "2.0";
34
+ /**
35
+ * Describes the mapping from Model types to the corresponding JSON output type.
36
+ */
37
+ export type ModelToObject<T> = [T] extends [Array<infer U>] ? ModelToObject<U>[] : [
38
+ M.SomeType
39
+ ] extends [T] ? SomeType : _ModelToObject<T>;
40
+ type _ModelToObject<T> = T extends Primitive ? T : Required<T> extends Required<M.ReflectionGroup> ? ReflectionGroup : Required<T> extends Required<M.ReflectionCategory> ? ReflectionCategory : T extends M.ReflectionVariant[keyof M.ReflectionVariant] ? ReflectionVariantMap[T["variant"]] : T extends M.SomeType ? TypeKindMap[T["type"]] : T extends M.Type ? SomeType : T extends M.Comment ? Comment : T extends M.CommentTag ? CommentTag : T extends M.CommentDisplayPart ? CommentDisplayPart : T extends M.SourceReference ? SourceReference : T extends M.FileRegistry ? FileRegistry : T extends M.ReflectionSymbolId ? ReflectionSymbolId : never;
41
+ type Primitive = string | number | undefined | null | boolean;
42
+ type ToSerialized<T> = T extends Primitive ? T : T extends bigint ? {
43
+ value: string;
44
+ negative: boolean;
45
+ } : ModelToObject<T>;
46
+ /**
47
+ * Helper to describe a set of serialized properties. Primitive types are returned
48
+ * directly, while other models are first passed through ModelToObject.
49
+ * This helper removes the readonly modifier from properties since the result of serialization
50
+ * is a plain object that consumers may modify as they choose, TypeDoc doesn't care.
51
+ */
52
+ type S<T, K extends keyof T> = {
53
+ -readonly [K2 in K]: ToSerialized<T[K2]>;
54
+ };
55
+ export type ReflectionId = M.ReflectionId;
56
+ export type FileId = M.FileId;
57
+ export interface ReflectionSymbolId {
58
+ packageName: string;
59
+ packagePath: NormalizedPath;
60
+ qualifiedName: string;
61
+ }
62
+ export interface ReflectionGroup extends S<M.ReflectionGroup, "title" | "description" | "categories"> {
63
+ children?: M.ReflectionGroup["children"][number]["id"][];
64
+ }
65
+ export interface ReflectionCategory extends S<M.ReflectionCategory, "title" | "description"> {
66
+ children?: M.ReflectionCategory["children"][number]["id"][];
67
+ }
68
+ /** @category Reflections */
69
+ export interface ReflectionVariantMap {
70
+ declaration: DeclarationReflection;
71
+ param: ParameterReflection;
72
+ project: ProjectReflection;
73
+ reference: ReferenceReflection;
74
+ signature: SignatureReflection;
75
+ typeParam: TypeParameterReflection;
76
+ document: DocumentReflection;
77
+ }
78
+ /** @category Reflections */
79
+ export type SomeReflection = ReflectionVariantMap[keyof ReflectionVariantMap];
80
+ /** @category Reflections */
81
+ export interface DocumentReflection extends Omit<Reflection, "variant">, S<M.DocumentReflection, "variant" | "content" | "relevanceBoost" | "children"> {
82
+ frontmatter: Record<string, unknown>;
83
+ }
84
+ /** @category Reflections */
85
+ export interface ReferenceReflection extends Omit<DeclarationReflection, "variant">, S<M.ReferenceReflection, "variant"> {
86
+ /**
87
+ * -1 if the reference refers to a symbol that does not exist in the documentation.
88
+ * Otherwise, the reflection ID.
89
+ */
90
+ target: ReflectionId;
91
+ }
92
+ /** @category Reflections */
93
+ export interface SignatureReflection extends Omit<Reflection, "variant">, S<M.SignatureReflection, "variant" | "sources" | "parameters" | "typeParameters" | "type" | "overwrites" | "inheritedFrom" | "implementationOf"> {
94
+ }
95
+ /** @category Reflections */
96
+ export interface ParameterReflection extends Omit<Reflection, "variant">, S<M.ParameterReflection, "variant" | "type" | "defaultValue"> {
97
+ variant: "param";
98
+ }
99
+ /** @category Reflections */
100
+ export interface DeclarationReflection extends Omit<ContainerReflection, "variant">, S<M.DeclarationReflection, "variant" | "packageVersion" | "sources" | "relevanceBoost" | "type" | "signatures" | "indexSignatures" | "defaultValue" | "overwrites" | "inheritedFrom" | "implementationOf" | "extendedTypes" | "extendedBy" | "implementedTypes" | "implementedBy" | "getSignature" | "setSignature" | "typeParameters" | "readme"> {
101
+ }
102
+ /** @category Reflections */
103
+ export interface TypeParameterReflection extends Omit<Reflection, "variant">, S<M.TypeParameterReflection, "variant" | "type" | "default" | "varianceModifier"> {
104
+ }
105
+ /** @category Reflections */
106
+ export interface ProjectReflection extends Omit<ContainerReflection, "variant">, S<M.ProjectReflection, "variant" | "packageName" | "packageVersion" | "readme"> {
107
+ /**
108
+ * Used to determine if TypeDoc supports deserializing the specified json
109
+ * See {@link SCHEMA_VERSION} for the current version.
110
+ */
111
+ schemaVersion: string;
112
+ symbolIdMap: Record<ReflectionId, ReflectionSymbolId> | IfInternal<undefined, never>;
113
+ files: FileRegistry;
114
+ }
115
+ /** @category Reflections */
116
+ export interface ContainerReflection extends Reflection, S<M.ContainerReflection, "children" | "documents" | "groups" | "categories"> {
117
+ childrenIncludingDocuments?: ReflectionId[];
118
+ }
119
+ /** @category Reflections */
120
+ export interface Reflection extends S<M.Reflection, "id" | "variant" | "name" | "kind" | "comment"> {
121
+ flags: ReflectionFlags;
122
+ }
123
+ /** @category Types */
124
+ export type SomeType = TypeKindMap[keyof TypeKindMap];
125
+ /** @category Types */
126
+ export type TypeKindMap = {
127
+ array: ArrayType;
128
+ conditional: ConditionalType;
129
+ indexedAccess: IndexedAccessType;
130
+ inferred: InferredType;
131
+ intersection: IntersectionType;
132
+ intrinsic: IntrinsicType;
133
+ literal: LiteralType;
134
+ mapped: MappedType;
135
+ optional: OptionalType;
136
+ predicate: PredicateType;
137
+ query: QueryType;
138
+ reference: ReferenceType;
139
+ reflection: ReflectionType;
140
+ rest: RestType;
141
+ templateLiteral: TemplateLiteralType;
142
+ tuple: TupleType;
143
+ namedTupleMember: NamedTupleMemberType;
144
+ typeOperator: TypeOperatorType;
145
+ union: UnionType;
146
+ unknown: UnknownType;
147
+ };
148
+ /** @category Types */
149
+ export interface ArrayType extends Type, S<M.ArrayType, "type" | "elementType"> {
150
+ }
151
+ /** @category Types */
152
+ export interface ConditionalType extends Type, S<M.ConditionalType, "type" | "checkType" | "extendsType" | "trueType" | "falseType"> {
153
+ }
154
+ /** @category Types */
155
+ export interface IndexedAccessType extends Type, S<M.IndexedAccessType, "type" | "indexType" | "objectType"> {
156
+ }
157
+ /** @category Types */
158
+ export interface InferredType extends Type, S<M.InferredType, "type" | "name" | "constraint"> {
159
+ }
160
+ /** @category Types */
161
+ export interface IntersectionType extends Type, S<M.IntersectionType, "type" | "types"> {
162
+ }
163
+ /** @category Types */
164
+ export interface IntrinsicType extends Type, S<M.IntrinsicType, "type" | "name"> {
165
+ }
166
+ /** @category Types */
167
+ export interface OptionalType extends Type, S<M.OptionalType, "type" | "elementType"> {
168
+ }
169
+ /** @category Types */
170
+ export interface PredicateType extends Type, S<M.PredicateType, "type" | "name" | "asserts" | "targetType"> {
171
+ }
172
+ /** @category Types */
173
+ export interface QueryType extends Type, S<M.QueryType, "type" | "queryType"> {
174
+ }
175
+ /** @category Types */
176
+ export interface ReferenceType extends Type, S<M.ReferenceType, "type" | "name" | "typeArguments" | "package" | "externalUrl"> {
177
+ target: ReflectionId | ReflectionSymbolId;
178
+ qualifiedName?: string;
179
+ refersToTypeParameter?: boolean;
180
+ preferValues?: boolean;
181
+ highlightedProperties?: Record<string, CommentDisplayPart[]>;
182
+ }
183
+ /** @category Types */
184
+ export interface ReflectionType extends Type, S<M.ReflectionType, "type" | "declaration"> {
185
+ }
186
+ /** @category Types */
187
+ export interface RestType extends Type, S<M.RestType, "type" | "elementType"> {
188
+ }
189
+ /** @category Types */
190
+ export interface LiteralType extends Type, S<M.LiteralType, "type" | "value"> {
191
+ }
192
+ /** @category Types */
193
+ export interface TupleType extends Type, S<M.TupleType, "type"> {
194
+ elements?: ModelToObject<M.TupleType["elements"]>;
195
+ }
196
+ /** @category Types */
197
+ export interface NamedTupleMemberType extends Type, S<M.NamedTupleMember, "type" | "name" | "isOptional" | "element"> {
198
+ }
199
+ /** @category Types */
200
+ export interface TemplateLiteralType extends Type, S<M.TemplateLiteralType, "type" | "head"> {
201
+ tail: [SomeType, string][];
202
+ }
203
+ /** @category Types */
204
+ export interface MappedType extends Type, S<M.MappedType, "type" | "parameter" | "parameterType" | "templateType" | "readonlyModifier" | "optionalModifier" | "nameType"> {
205
+ }
206
+ /** @category Types */
207
+ export interface TypeOperatorType extends Type, S<M.TypeOperatorType, "type" | "operator" | "target"> {
208
+ }
209
+ /** @category Types */
210
+ export interface UnionType extends Type, S<M.UnionType, "type" | "types" | "elementSummaries"> {
211
+ }
212
+ /** @category Types */
213
+ export interface UnknownType extends Type, S<M.UnknownType, "type" | "name"> {
214
+ }
215
+ /** @category Types */
216
+ export interface Type {
217
+ }
218
+ type BoolKeys<T> = {
219
+ [K in keyof T]-?: T[K] extends boolean ? K : never;
220
+ }[keyof T];
221
+ export interface ReflectionFlags extends Partial<S<M.ReflectionFlags, BoolKeys<M.ReflectionFlags>>> {
222
+ }
223
+ /** @category Comments */
224
+ export interface Comment extends Partial<S<M.Comment, "blockTags" | "label">> {
225
+ summary: CommentDisplayPart[];
226
+ modifierTags?: TagString[];
227
+ }
228
+ /** @category Comments */
229
+ export interface CommentTag extends S<M.CommentTag, "tag" | "name" | "typeAnnotation"> {
230
+ content: CommentDisplayPart[];
231
+ }
232
+ /**
233
+ * @see {@link M.CommentDisplayPart}
234
+ * @category Comments
235
+ */
236
+ export type CommentDisplayPart = {
237
+ kind: "text";
238
+ text: string;
239
+ } | {
240
+ kind: "code";
241
+ text: string;
242
+ } | InlineTagDisplayPart | RelativeLinkDisplayPart;
243
+ /**
244
+ * If `target` is a number, it is a reflection ID. If a string, it is a URL.
245
+ * `target` will only be set for `@link`, `@linkcode`, and `@linkplain` tags.
246
+ * @category Comments
247
+ */
248
+ export interface InlineTagDisplayPart {
249
+ kind: "inline-tag";
250
+ tag: TagString;
251
+ text: string;
252
+ target?: string | ReflectionId | ReflectionSymbolId;
253
+ tsLinkText?: string;
254
+ }
255
+ /**
256
+ * This is used for relative links within comments/documents.
257
+ * It is used to mark pieces of text which need to be replaced
258
+ * to make links work properly.
259
+ */
260
+ export interface RelativeLinkDisplayPart {
261
+ kind: "relative-link";
262
+ /**
263
+ * The original relative text from the parsed comment.
264
+ */
265
+ text: string;
266
+ /**
267
+ * File ID, if present
268
+ */
269
+ target?: FileId;
270
+ /**
271
+ * Anchor within the target file, if present
272
+ */
273
+ targetAnchor?: string;
274
+ }
275
+ export interface SourceReference extends S<M.SourceReference, "fileName" | "line" | "character" | "url"> {
276
+ }
277
+ export interface FileRegistry {
278
+ /** Relative path according to the serialization root */
279
+ entries: Record<FileId, NormalizedPath>;
280
+ /** File ID to reflection ID */
281
+ reflections: Record<FileId, ReflectionId>;
282
+ }
283
+ export {};
@@ -0,0 +1,32 @@
1
+ /**
2
+ * Contains interfaces which describe the JSON output. Each interface is related to a specific type of serializer.
3
+ *
4
+ * ## Plugins
5
+ * Plugins which modify the serialization process can use declaration merging
6
+ * to add custom properties to the exported interfaces.
7
+ * For example, if your custom serializer adds a property to all {@link Reflection} objects:
8
+ * ```ts
9
+ * declare module 'typedoc/dist/lib/serialization/schema' {
10
+ * export interface AbstractReflection {
11
+ * myCustomProp: boolean
12
+ * }
13
+ * }
14
+ * ```
15
+ *
16
+ * If a plugin defines a new Model type, {@link ModelToObject} will not pick up the serializer type and
17
+ * the resulting type will not be included in the return type of {@link Serializer.toObject}.
18
+ * To fix this, use declaration merging to augment the {@link Serializer} class.
19
+ * ```ts
20
+ * declare module 'typedoc/dist/lib/serialization/serializer' {
21
+ * export interface Serializer {
22
+ * toObject(value: CustomModel, obj?: Partial<CustomModel>): CustomOutput
23
+ * }
24
+ * }
25
+ * ```
26
+ *
27
+ * For documentation on the JSON output properties, view the corresponding model.
28
+ * @summary Contains interfaces which describe the JSON output.
29
+ * @module
30
+ */
31
+ // Keep this in sync with JSON_SCHEMA_VERSION in ProjectReflection.ts
32
+ export const SCHEMA_VERSION = "2.0";
@@ -0,0 +1,52 @@
1
+ import type { ProjectReflection } from "#models";
2
+ import { SerializeEvent } from "./events.js";
3
+ import type { ModelToObject } from "./schema.js";
4
+ import type { SerializerComponent } from "./components.js";
5
+ import { EventDispatcher, type NormalizedPath } from "#utils";
6
+ export interface SerializerEvents {
7
+ begin: [SerializeEvent];
8
+ end: [SerializeEvent];
9
+ }
10
+ /**
11
+ * Serializes TypeDoc's models to JSON
12
+ *
13
+ * @group None
14
+ * @summary Serializes TypeDoc's models to JSON
15
+ */
16
+ export declare class Serializer extends EventDispatcher<SerializerEvents> {
17
+ /**
18
+ * Triggered when the {@link Serializer} begins transforming a project.
19
+ * @event
20
+ */
21
+ static readonly EVENT_BEGIN = "begin";
22
+ /**
23
+ * Triggered when the {@link Serializer} has finished transforming a project.
24
+ * @event
25
+ */
26
+ static readonly EVENT_END = "end";
27
+ private serializers;
28
+ /**
29
+ * Only set when serializing.
30
+ */
31
+ projectRoot: NormalizedPath;
32
+ /**
33
+ * Only set when serializing
34
+ */
35
+ project: ProjectReflection;
36
+ addSerializer<T extends object>(serializer: SerializerComponent<T>): void;
37
+ removeSerializer(serializer: SerializerComponent<any>): void;
38
+ toObject<T extends {
39
+ toObject(serializer: Serializer): ModelToObject<T>;
40
+ }>(value: T): ModelToObject<T>;
41
+ toObject<T extends {
42
+ toObject(serializer: Serializer): ModelToObject<T>;
43
+ }>(value: T | undefined): ModelToObject<T> | undefined;
44
+ toObjectsOptional<T extends {
45
+ toObject(serializer: Serializer): ModelToObject<T>;
46
+ }>(value: T[] | undefined): ModelToObject<T>[] | undefined;
47
+ /**
48
+ * Same as toObject but emits {@link Serializer.EVENT_BEGIN} and {@link Serializer.EVENT_END} events.
49
+ * @param value
50
+ */
51
+ projectToObject(value: ProjectReflection, projectRoot: NormalizedPath): ModelToObject<ProjectReflection>;
52
+ }
@@ -0,0 +1,65 @@
1
+ import { SerializeEvent } from "./events.js";
2
+ import { EventDispatcher, insertPrioritySorted, removeIfPresent } from "#utils";
3
+ /**
4
+ * Serializes TypeDoc's models to JSON
5
+ *
6
+ * @group None
7
+ * @summary Serializes TypeDoc's models to JSON
8
+ */
9
+ export class Serializer extends EventDispatcher {
10
+ /**
11
+ * Triggered when the {@link Serializer} begins transforming a project.
12
+ * @event
13
+ */
14
+ static EVENT_BEGIN = "begin";
15
+ /**
16
+ * Triggered when the {@link Serializer} has finished transforming a project.
17
+ * @event
18
+ */
19
+ static EVENT_END = "end";
20
+ serializers = [];
21
+ /**
22
+ * Only set when serializing.
23
+ */
24
+ projectRoot;
25
+ /**
26
+ * Only set when serializing
27
+ */
28
+ project;
29
+ addSerializer(serializer) {
30
+ insertPrioritySorted(this.serializers, serializer);
31
+ }
32
+ removeSerializer(serializer) {
33
+ removeIfPresent(this.serializers, serializer);
34
+ }
35
+ toObject(value) {
36
+ if (value === undefined) {
37
+ return undefined;
38
+ }
39
+ return this.serializers
40
+ .filter((s) => s.supports(value))
41
+ .reduce((val, s) => s.toObject(value, val, this), value.toObject(this));
42
+ }
43
+ toObjectsOptional(value) {
44
+ if (!value || value.length === 0) {
45
+ return undefined;
46
+ }
47
+ return value.map((val) => this.toObject(val));
48
+ }
49
+ /**
50
+ * Same as toObject but emits {@link Serializer.EVENT_BEGIN} and {@link Serializer.EVENT_END} events.
51
+ * @param value
52
+ */
53
+ projectToObject(value, projectRoot) {
54
+ this.projectRoot = projectRoot;
55
+ this.project = value;
56
+ const eventBegin = new SerializeEvent(value);
57
+ this.trigger(Serializer.EVENT_BEGIN, eventBegin);
58
+ const project = this.toObject(value);
59
+ const eventEnd = new SerializeEvent(value, project);
60
+ this.trigger(Serializer.EVENT_END, eventEnd);
61
+ this.project = undefined;
62
+ this.projectRoot = undefined;
63
+ return project;
64
+ }
65
+ }
@@ -0,0 +1,12 @@
1
+ import { type FileId, FileRegistry } from "../models/FileRegistry.js";
2
+ import type { Deserializer, JSONOutput } from "#serialization";
3
+ import { type NormalizedPath } from "#utils";
4
+ export declare class ValidatingFileRegistry extends FileRegistry {
5
+ basePath: NormalizedPath;
6
+ constructor(basePath?: NormalizedPath);
7
+ register(sourcePath: NormalizedPath, relativePath: NormalizedPath): {
8
+ target: FileId;
9
+ anchor: string | undefined;
10
+ } | undefined;
11
+ fromObject(de: Deserializer, obj: JSONOutput.FileRegistry): void;
12
+ }
@@ -0,0 +1,52 @@
1
+ import { FileRegistry } from "../models/FileRegistry.js";
2
+ import { i18n, NormalizedPathUtils } from "#utils";
3
+ import { existsSync } from "fs";
4
+ export class ValidatingFileRegistry extends FileRegistry {
5
+ basePath;
6
+ constructor(basePath = "") {
7
+ super();
8
+ this.basePath = basePath;
9
+ }
10
+ register(sourcePath, relativePath) {
11
+ let absolute = NormalizedPathUtils.resolve(NormalizedPathUtils.dirname(sourcePath), relativePath);
12
+ let absoluteWithoutAnchor = absolute.replace(/#.*/, "");
13
+ // Note: We allow paths to directories to be registered here, but the AssetsPlugin will not
14
+ // copy them to the output path. This is so that we can link to directories and associate them
15
+ // with reflections in packages mode.
16
+ if (!existsSync(absoluteWithoutAnchor)) {
17
+ // If the relative path didn't exist normally, also check the path relative to the assetBasePath option
18
+ if (this.basePath != "") {
19
+ absolute = NormalizedPathUtils.resolve(this.basePath, relativePath);
20
+ absoluteWithoutAnchor = absolute.replace(/#.*/, "");
21
+ if (!existsSync(absoluteWithoutAnchor)) {
22
+ return;
23
+ }
24
+ }
25
+ else {
26
+ return;
27
+ }
28
+ }
29
+ return this.registerAbsolute(absolute);
30
+ }
31
+ fromObject(de, obj) {
32
+ for (const [key, val] of Object.entries(obj.entries)) {
33
+ const absolute = NormalizedPathUtils.resolve(de.projectRoot, val);
34
+ if (!existsSync(absolute)) {
35
+ de.logger.warn(i18n.saved_relative_path_0_resolved_from_1_does_not_exist(val, de.projectRoot));
36
+ continue;
37
+ }
38
+ de.oldFileIdToNewFileId[+key] = this.registerAbsolute(absolute).target;
39
+ }
40
+ de.defer((project) => {
41
+ for (const [media, reflId] of Object.entries(obj.reflections)) {
42
+ const refl = project.getReflectionById(de.oldIdToNewId[reflId]);
43
+ if (refl) {
44
+ this.mediaToReflection.set(de.oldFileIdToNewFileId[+media], refl.id);
45
+ }
46
+ else {
47
+ de.logger.warn(i18n.serialized_project_referenced_0_not_part_of_project(reflId.toString()));
48
+ }
49
+ }
50
+ });
51
+ }
52
+ }
@@ -0,0 +1,38 @@
1
+ import type { Application } from "../application.js";
2
+ import { EventDispatcher } from "#utils";
3
+ /**
4
+ * Exposes a reference to the root Application component.
5
+ */
6
+ export interface ComponentHost {
7
+ readonly application: Application;
8
+ }
9
+ export interface Component<E extends Record<keyof E, unknown[]> = {}> extends AbstractComponent<ComponentHost, E> {
10
+ }
11
+ /**
12
+ * Component base class. Has an owner (unless it's the application root component),
13
+ * can dispatch events to its children, and has access to the root Application component.
14
+ *
15
+ * @template O type of component's owner.
16
+ */
17
+ export declare abstract class AbstractComponent<O extends ComponentHost, E extends Record<keyof E, unknown[]>> extends EventDispatcher<E> implements ComponentHost {
18
+ /**
19
+ * The owner of this component instance.
20
+ */
21
+ private _componentOwner;
22
+ /**
23
+ * The name of this component as set by the `@Component` decorator.
24
+ */
25
+ componentName: string;
26
+ /**
27
+ * Create new Component instance.
28
+ */
29
+ constructor(owner: O);
30
+ /**
31
+ * Return the application / root component instance.
32
+ */
33
+ get application(): Application;
34
+ /**
35
+ * Return the owner of this component.
36
+ */
37
+ get owner(): O;
38
+ }
@@ -0,0 +1,41 @@
1
+ import { EventDispatcher } from "#utils";
2
+ /**
3
+ * Component base class. Has an owner (unless it's the application root component),
4
+ * can dispatch events to its children, and has access to the root Application component.
5
+ *
6
+ * @template O type of component's owner.
7
+ */
8
+ export class AbstractComponent extends EventDispatcher {
9
+ /**
10
+ * The owner of this component instance.
11
+ */
12
+ _componentOwner;
13
+ /**
14
+ * The name of this component as set by the `@Component` decorator.
15
+ */
16
+ componentName;
17
+ /**
18
+ * Create new Component instance.
19
+ */
20
+ constructor(owner) {
21
+ super();
22
+ this._componentOwner = owner;
23
+ }
24
+ /**
25
+ * Return the application / root component instance.
26
+ */
27
+ get application() {
28
+ if (this._componentOwner === null) {
29
+ return this;
30
+ }
31
+ return this._componentOwner.application;
32
+ }
33
+ /**
34
+ * Return the owner of this component.
35
+ */
36
+ get owner() {
37
+ return this._componentOwner === null
38
+ ? this
39
+ : this._componentOwner;
40
+ }
41
+ }
@@ -0,0 +1,7 @@
1
+ /**
2
+ * Compresses a JSON-serializable object into a Base64-encoded deflate string.
3
+ *
4
+ * @param data - The JSON-serializable object to compress.
5
+ * @returns A promise that resolves to a Base64-encoded string of the deflate-compressed data.
6
+ */
7
+ export declare function compressJson(data: any): Promise<string>;
@@ -0,0 +1,13 @@
1
+ import { deflate } from "zlib";
2
+ import { promisify } from "util";
3
+ const deflateP = promisify(deflate);
4
+ /**
5
+ * Compresses a JSON-serializable object into a Base64-encoded deflate string.
6
+ *
7
+ * @param data - The JSON-serializable object to compress.
8
+ * @returns A promise that resolves to a Base64-encoded string of the deflate-compressed data.
9
+ */
10
+ export async function compressJson(data) {
11
+ const gz = await deflateP(Buffer.from(JSON.stringify(data)));
12
+ return gz.toString("base64");
13
+ }
@@ -0,0 +1,3 @@
1
+ import type ts from "typescript";
2
+ export declare function resolveDeclarationMaps(file: string): string;
3
+ export declare function addInferredDeclarationMapPaths(opts: ts.CompilerOptions, files: readonly string[]): void;
@@ -0,0 +1,51 @@
1
+ import { existsSync } from "fs";
2
+ import { readFile } from "./fs.js";
3
+ import { Validation } from "#utils";
4
+ import { join, relative, resolve } from "path";
5
+ import { getCommonDirectory, normalizePath } from "./paths.js";
6
+ const declarationMapCache = new Map();
7
+ export function resolveDeclarationMaps(file) {
8
+ if (!/\.d\.[cm]?ts$/.test(file))
9
+ return file;
10
+ if (declarationMapCache.has(file))
11
+ return declarationMapCache.get(file);
12
+ const mapFile = file + ".map";
13
+ if (!existsSync(mapFile))
14
+ return file;
15
+ let sourceMap;
16
+ try {
17
+ sourceMap = JSON.parse(readFile(mapFile));
18
+ }
19
+ catch {
20
+ return file;
21
+ }
22
+ if (Validation.validate({
23
+ file: String,
24
+ sourceRoot: Validation.optional(String),
25
+ sources: [Array, String],
26
+ }, sourceMap)) {
27
+ // There's a pretty large assumption in here that we only have
28
+ // 1 source file per js file. This is a pretty standard typescript approach,
29
+ // but people might do interesting things with transpilation that could break this.
30
+ let source = sourceMap.sources[0];
31
+ // If we have a sourceRoot, trim any leading slash from the source, and join them
32
+ // Similar to how it's done at https://github.com/mozilla/source-map/blob/58819f09018d56ef84dc41ba9c93f554e0645169/lib/util.js#L412
33
+ if (sourceMap.sourceRoot !== undefined) {
34
+ source = source.replace(/^\//, "");
35
+ source = join(sourceMap.sourceRoot, source);
36
+ }
37
+ const result = resolve(mapFile, "..", source);
38
+ declarationMapCache.set(file, result);
39
+ return result;
40
+ }
41
+ return file;
42
+ }
43
+ // See also: inferEntryPoints in entry-point.ts
44
+ export function addInferredDeclarationMapPaths(opts, files) {
45
+ const rootDir = opts.rootDir || getCommonDirectory(files);
46
+ const declDir = opts.declarationDir || opts.outDir || rootDir;
47
+ for (const file of files) {
48
+ const mapFile = normalizePath(resolve(declDir, relative(rootDir, file)).replace(/\.([cm]?[tj]s)x?$/, ".d.$1"));
49
+ declarationMapCache.set(mapFile, file);
50
+ }
51
+ }