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,241 +0,0 @@
1
- import ts from "typescript";
2
- import { Comment, ReflectionKind } from "../../models/index.js";
3
- import { lexBlockComment } from "./blockLexer.js";
4
- import { discoverComment, discoverFileComments, discoverNodeComment, discoverSignatureComment, } from "./discovery.js";
5
- import { lexLineComments } from "./lineLexer.js";
6
- import { parseComment } from "./parser.js";
7
- import { assertNever, i18n, Logger, setUnion } from "#utils";
8
- const jsDocCommentKinds = [
9
- ts.SyntaxKind.JSDocPropertyTag,
10
- ts.SyntaxKind.JSDocCallbackTag,
11
- ts.SyntaxKind.JSDocTypedefTag,
12
- ts.SyntaxKind.JSDocTemplateTag,
13
- ts.SyntaxKind.JSDocEnumTag,
14
- ];
15
- let commentDiscoveryId = 0;
16
- let commentCache = new WeakMap();
17
- // We need to do this for tests so that changing the tsLinkResolution option
18
- // actually works. Without it, we'd get the old parsed comment which doesn't
19
- // have the TS symbols attached.
20
- export function clearCommentCache() {
21
- commentCache = new WeakMap();
22
- commentDiscoveryId = 0;
23
- }
24
- function getCommentIgnoringCacheNoDiscoveryId(discovered, context) {
25
- if (!discovered)
26
- return;
27
- const { file, ranges, jsDoc } = discovered;
28
- let comment;
29
- switch (ranges[0].kind) {
30
- case ts.SyntaxKind.MultiLineCommentTrivia:
31
- comment = parseComment(lexBlockComment(file.text, ranges[0].pos, ranges[0].end, context.createSymbolId, jsDoc, context.checker), file, context);
32
- break;
33
- case ts.SyntaxKind.SingleLineCommentTrivia:
34
- comment = parseComment(lexLineComments(file.text, ranges), file, context);
35
- break;
36
- default:
37
- assertNever(ranges[0].kind);
38
- }
39
- comment.inheritedFromParentDeclaration = discovered.inheritedFromParentDeclaration;
40
- return comment;
41
- }
42
- function getCommentWithCache(discovered, context) {
43
- if (!discovered)
44
- return;
45
- const { file, ranges } = discovered;
46
- const cache = commentCache.get(file) || new Map();
47
- if (cache.has(ranges[0].pos)) {
48
- const clone = cache.get(ranges[0].pos).clone();
49
- clone.inheritedFromParentDeclaration = discovered.inheritedFromParentDeclaration;
50
- return clone;
51
- }
52
- const comment = getCommentIgnoringCacheNoDiscoveryId(discovered, context);
53
- if (!comment)
54
- return;
55
- comment.discoveryId = ++commentDiscoveryId;
56
- cache.set(ranges[0].pos, comment);
57
- commentCache.set(file, cache);
58
- return comment.clone();
59
- }
60
- function getCommentImpl(commentSource, moduleComment, context) {
61
- const comment = getCommentWithCache(commentSource, {
62
- ...context,
63
- checker: context.config.useTsLinkResolution ? context.checker : undefined,
64
- });
65
- if (comment?.getTag("@import") || comment?.getTag("@license")) {
66
- return;
67
- }
68
- if (moduleComment && comment) {
69
- // Module comment, make sure it is tagged with @packageDocumentation or @module.
70
- // If it isn't then the comment applies to the first statement in the file, so throw it away.
71
- if (!comment.hasModifier("@packageDocumentation") &&
72
- !comment.getTag("@module")) {
73
- return;
74
- }
75
- }
76
- if (!moduleComment && comment) {
77
- // Ensure module comments are not attached to non-module reflections.
78
- if (comment.hasModifier("@packageDocumentation") ||
79
- comment.getTag("@module")) {
80
- return;
81
- }
82
- }
83
- return comment;
84
- }
85
- export function getComment(symbol, kind, context) {
86
- const declarations = symbol.declarations || [];
87
- if (declarations.length &&
88
- declarations.every((d) => jsDocCommentKinds.includes(d.kind))) {
89
- return getJsDocComment(declarations[0], context);
90
- }
91
- const sf = declarations.find(ts.isSourceFile);
92
- if (sf) {
93
- return getFileComment(sf, context);
94
- }
95
- const isModule = declarations.some((decl) => {
96
- if (ts.isModuleDeclaration(decl) && ts.isStringLiteral(decl.name)) {
97
- return true;
98
- }
99
- return false;
100
- });
101
- const comment = getCommentImpl(discoverComment(symbol, kind, context.logger, context.config.commentStyle, context.checker, !context.config.suppressCommentWarningsInDeclarationFiles), isModule, context);
102
- if (!comment && kind === ReflectionKind.Property) {
103
- return getConstructorParamPropertyComment(symbol, context);
104
- }
105
- return comment;
106
- }
107
- export function getNodeComment(node, moduleComment, context) {
108
- return getCommentImpl(discoverNodeComment(node, context.config.commentStyle), moduleComment, context);
109
- }
110
- export function getFileComment(file, context) {
111
- const quietContext = {
112
- ...context,
113
- logger: new Logger(),
114
- };
115
- for (const commentSource of discoverFileComments(file, context.config.commentStyle)) {
116
- // First parse the comment without adding the parse to the cache
117
- // and without logging any messages. If we end up not using this as
118
- // a file comment we want to avoid parsing it with warnings here as
119
- // it might be associated with a JSDoc parse which has special
120
- // handling to allow modifier tags to be specified as {@mod}
121
- // and if it gets added to the cache here we'll get unwanted warnings
122
- const comment = getCommentIgnoringCacheNoDiscoveryId(commentSource, quietContext);
123
- if (comment?.getTag("@license") || comment?.getTag("@import")) {
124
- continue;
125
- }
126
- if (comment?.getTag("@module") ||
127
- comment?.hasModifier("@packageDocumentation")) {
128
- return getCommentWithCache(commentSource, context);
129
- }
130
- return;
131
- }
132
- }
133
- function getConstructorParamPropertyComment(symbol, context) {
134
- const decl = symbol.declarations?.find(ts.isParameter);
135
- if (!decl)
136
- return;
137
- const ctor = decl.parent;
138
- const comment = getSignatureComment(ctor, context);
139
- const paramTag = comment?.getIdentifiedTag(symbol.name, "@param");
140
- if (paramTag) {
141
- const result = new Comment(paramTag.content);
142
- result.sourcePath = comment.sourcePath;
143
- return result;
144
- }
145
- }
146
- export function getSignatureComment(declaration, context) {
147
- return getCommentImpl(discoverSignatureComment(declaration, context.checker, context.config.commentStyle), false, context);
148
- }
149
- function buildJsDocCommentFromParts(declaration, parts, sourceComment, context) {
150
- if (!parts) {
151
- return undefined;
152
- }
153
- const comment = new Comment(Comment.cloneDisplayParts(parts));
154
- comment.sourcePath = sourceComment.sourcePath;
155
- for (let i = 0; i < comment.summary.length;) {
156
- const part = comment.summary[i];
157
- if (part.kind === "inline-tag" &&
158
- !part.text.trim() &&
159
- context.config.modifierTags.has(part.tag)) {
160
- comment.modifierTags.add(part.tag);
161
- comment.summary.splice(i, 1);
162
- }
163
- else if (part.kind === "inline-tag" &&
164
- part.text.trim() &&
165
- context.config.modifierTags.has(part.tag) &&
166
- !context.config.inlineTags.has(part.tag)) {
167
- context.logger.warn(i18n.inline_tag_0_not_parsed_as_modifier_tag_1(part.tag, part.text.trim()), declaration);
168
- ++i;
169
- }
170
- else {
171
- ++i;
172
- }
173
- }
174
- return comment;
175
- }
176
- export function getJsDocComment(declaration, context) {
177
- const file = declaration.getSourceFile();
178
- // First, get the whole comment. We know we'll need all of it.
179
- let parent = declaration.parent;
180
- while (!ts.isJSDoc(parent)) {
181
- parent = parent.parent;
182
- }
183
- // Build a custom context to allow modifier tags to be written as inline
184
- // tags as otherwise there's no way to specify them here #2916 #3050
185
- const contextWithInline = {
186
- ...context,
187
- config: {
188
- ...context.config,
189
- inlineTags: setUnion(context.config.inlineTags, context.config.modifierTags),
190
- },
191
- };
192
- // Then parse it.
193
- const comment = getCommentWithCache({
194
- file,
195
- ranges: [
196
- {
197
- kind: ts.SyntaxKind.MultiLineCommentTrivia,
198
- pos: parent.pos,
199
- end: parent.end,
200
- },
201
- ],
202
- jsDoc: parent,
203
- inheritedFromParentDeclaration: false,
204
- }, contextWithInline);
205
- // And pull out the tag we actually care about.
206
- if (ts.isJSDocEnumTag(declaration)) {
207
- return buildJsDocCommentFromParts(declaration, comment.getTag("@enum")?.content, comment, context);
208
- }
209
- if (ts.isJSDocTemplateTag(declaration) &&
210
- declaration.comment &&
211
- declaration.typeParameters.length > 1) {
212
- // We could just put the same comment on everything, but due to how comment parsing works,
213
- // we'd have to search for any @template with a name starting with the first type parameter's name
214
- // which feels horribly hacky.
215
- context.logger.warn(i18n.multiple_type_parameters_on_template_tag_unsupported(), declaration);
216
- return;
217
- }
218
- let name;
219
- if (ts.isJSDocTemplateTag(declaration)) {
220
- // This isn't really ideal.
221
- name = declaration.typeParameters[0].name.text;
222
- }
223
- else {
224
- name = declaration.name?.getText();
225
- }
226
- if (!name) {
227
- return;
228
- }
229
- const tag = comment.getIdentifiedTag(name, `@${declaration.tagName.text}`);
230
- if (!tag) {
231
- // If this is a template tag with multiple declarations, we warned already if there
232
- // was a comment attached. If there wasn't, then don't error about failing to find
233
- // a tag because this is unsupported.
234
- if (!ts.isJSDocTemplateTag(declaration)) {
235
- context.logger.error(i18n.failed_to_find_jsdoc_tag_for_name_0(name), declaration);
236
- }
237
- }
238
- else {
239
- return buildJsDocCommentFromParts(declaration, tag.content, comment, context);
240
- }
241
- }
@@ -1,10 +0,0 @@
1
- export var TokenSyntaxKind;
2
- (function (TokenSyntaxKind) {
3
- TokenSyntaxKind["Text"] = "text";
4
- TokenSyntaxKind["NewLine"] = "new_line";
5
- TokenSyntaxKind["OpenBrace"] = "open_brace";
6
- TokenSyntaxKind["CloseBrace"] = "close_brace";
7
- TokenSyntaxKind["Tag"] = "tag";
8
- TokenSyntaxKind["Code"] = "code";
9
- TokenSyntaxKind["TypeAnnotation"] = "type";
10
- })(TokenSyntaxKind || (TokenSyntaxKind = {}));
@@ -1,279 +0,0 @@
1
- import { TokenSyntaxKind } from "./lexer.js";
2
- export function* lexLineComments(file, ranges) {
3
- // Wrapper around our real lex function to collapse adjacent text tokens.
4
- let textToken;
5
- for (const token of lexLineComments2(file, ranges[0].pos, ranges[ranges.length - 1].end)) {
6
- if (token.kind === TokenSyntaxKind.Text) {
7
- if (textToken) {
8
- textToken.text += token.text;
9
- }
10
- else {
11
- textToken = token;
12
- }
13
- }
14
- else {
15
- if (textToken) {
16
- yield textToken;
17
- textToken = void 0;
18
- }
19
- yield token;
20
- }
21
- }
22
- if (textToken) {
23
- yield textToken;
24
- }
25
- return;
26
- }
27
- function* lexLineComments2(file, pos, end) {
28
- // Trailing whitespace
29
- while (pos < end && /\s/.test(file[end - 1])) {
30
- end--;
31
- }
32
- let lineStart = true;
33
- let braceStartsType = false;
34
- for (;;) {
35
- if (lineStart) {
36
- pos = skipLeadingLineTrivia(pos);
37
- lineStart = false;
38
- }
39
- if (pos >= end) {
40
- return;
41
- }
42
- switch (file[pos]) {
43
- case "\n":
44
- yield makeToken(TokenSyntaxKind.NewLine, 1);
45
- lineStart = true;
46
- break;
47
- case "{":
48
- if (braceStartsType && nextNonWs(pos + 1) !== "@") {
49
- yield makeToken(TokenSyntaxKind.TypeAnnotation, findEndOfType(pos) - pos);
50
- braceStartsType = false;
51
- }
52
- else {
53
- yield makeToken(TokenSyntaxKind.OpenBrace, 1);
54
- }
55
- break;
56
- case "}":
57
- yield makeToken(TokenSyntaxKind.CloseBrace, 1);
58
- braceStartsType = false;
59
- break;
60
- case "`": {
61
- // Markdown's code rules are a royal pain. This could be one of several things.
62
- // 1. Inline code: <1-n ticks><text><same number of ticks>
63
- // 2. Code block: <3 ticks><language, no ticks>\n<text>\n<3 ticks>\n
64
- // 3. Unmatched tick(s), not code, but part of some text.
65
- // We don't quite handle #2 correctly yet. PR welcome!
66
- braceStartsType = false;
67
- let tickCount = 1;
68
- let lookahead = pos - 1;
69
- let atNewline = true;
70
- while (lookahead > 0 && file[lookahead] !== "\n") {
71
- if (/\S/.test(file[lookahead])) {
72
- atNewline = false;
73
- break;
74
- }
75
- --lookahead;
76
- }
77
- lookahead = pos;
78
- while (lookahead + 1 < end && file[lookahead + 1] === "`") {
79
- tickCount++;
80
- lookahead++;
81
- }
82
- const isCodeBlock = atNewline && tickCount >= 3;
83
- let lookaheadStart = pos;
84
- const codeText = [];
85
- lookahead++;
86
- while (lookahead < end) {
87
- if (lookaheadExactlyNTicks(lookahead, tickCount)) {
88
- lookahead += tickCount;
89
- codeText.push(file.substring(lookaheadStart, lookahead));
90
- const codeTextStr = codeText.join("");
91
- if (isCodeBlock || !/\n\s*\n/.test(codeTextStr)) {
92
- yield {
93
- kind: TokenSyntaxKind.Code,
94
- text: codeTextStr,
95
- pos,
96
- };
97
- pos = lookahead;
98
- }
99
- else {
100
- yield makeToken(TokenSyntaxKind.Text, tickCount);
101
- }
102
- break;
103
- }
104
- else if (file[lookahead] === "`") {
105
- while (lookahead < end && file[lookahead] === "`") {
106
- lookahead++;
107
- }
108
- }
109
- else if (file[lookahead] === "\\" &&
110
- lookahead + 1 < end &&
111
- file[lookahead + 1] !== "\n") {
112
- lookahead += 2;
113
- }
114
- else if (file[lookahead] === "\n") {
115
- lookahead++;
116
- codeText.push(file.substring(lookaheadStart, lookahead));
117
- lookahead = skipLeadingLineTrivia(lookahead);
118
- lookaheadStart = lookahead;
119
- }
120
- else {
121
- lookahead++;
122
- }
123
- }
124
- if (lookahead >= end && pos !== lookahead) {
125
- if (tickCount === 3 &&
126
- file.substring(pos, end).includes("\n")) {
127
- codeText.push(file.substring(lookaheadStart, end));
128
- yield {
129
- kind: TokenSyntaxKind.Code,
130
- text: codeText.join(""),
131
- pos,
132
- };
133
- pos = lookahead;
134
- }
135
- else {
136
- yield makeToken(TokenSyntaxKind.Text, tickCount);
137
- }
138
- }
139
- break;
140
- }
141
- case "@": {
142
- let lookahead = pos + 1;
143
- while (lookahead < end && /[a-z]/i.test(file[lookahead])) {
144
- lookahead++;
145
- }
146
- if (lookahead !== pos + 1) {
147
- while (lookahead < end &&
148
- /[a-z0-9-]/i.test(file[lookahead])) {
149
- lookahead++;
150
- }
151
- }
152
- if (lookahead !== pos + 1 &&
153
- (lookahead === end || /[\s}]/.test(file[lookahead]))) {
154
- braceStartsType = true;
155
- yield makeToken(TokenSyntaxKind.Tag, lookahead - pos);
156
- break;
157
- }
158
- }
159
- // fall through if we didn't find something that looks like a tag
160
- default: {
161
- const textParts = [];
162
- let lookaheadStart = pos;
163
- let lookahead = pos;
164
- while (lookahead < end) {
165
- if ("{}\n`".includes(file[lookahead]))
166
- break;
167
- if (lookahead !== pos &&
168
- file[lookahead] === "@" &&
169
- /\s/.test(file[lookahead - 1])) {
170
- // Probably the start of a modifier tag
171
- break;
172
- }
173
- if (file[lookahead] === "\\" &&
174
- lookahead + 1 < end &&
175
- "{}@`".includes(file[lookahead + 1])) {
176
- textParts.push(file.substring(lookaheadStart, lookahead), file[lookahead + 1]);
177
- lookahead++;
178
- lookaheadStart = lookahead + 1;
179
- }
180
- lookahead++;
181
- }
182
- textParts.push(file.substring(lookaheadStart, lookahead));
183
- if (textParts.some((part) => /\S/.test(part))) {
184
- braceStartsType = false;
185
- }
186
- // This piece of text had line continuations or escaped text
187
- yield {
188
- kind: TokenSyntaxKind.Text,
189
- text: textParts.join(""),
190
- pos,
191
- };
192
- pos = lookahead;
193
- break;
194
- }
195
- }
196
- }
197
- function makeToken(kind, size) {
198
- const start = pos;
199
- pos += size;
200
- return {
201
- kind,
202
- text: file.substring(start, pos),
203
- pos: start,
204
- };
205
- }
206
- function skipLeadingLineTrivia(pos) {
207
- let lookahead = pos;
208
- while (lookahead < end && /\s/.test(file[lookahead])) {
209
- lookahead++;
210
- }
211
- while (lookahead < end && file[lookahead] === "/") {
212
- lookahead++;
213
- }
214
- if (lookahead < end && file[lookahead] === " ") {
215
- lookahead++;
216
- }
217
- return lookahead;
218
- }
219
- function lookaheadExactlyNTicks(pos, n) {
220
- if (pos + n > end) {
221
- return false;
222
- }
223
- return file.startsWith("`".repeat(n), pos) && file[pos + n] !== "`";
224
- }
225
- function findEndOfType(pos) {
226
- let openBraces = 0;
227
- while (pos < end) {
228
- if (file[pos] === "{") {
229
- openBraces++;
230
- }
231
- else if (file[pos] === "}") {
232
- if (--openBraces === 0) {
233
- break;
234
- }
235
- }
236
- else if ("`'\"".includes(file[pos])) {
237
- pos = findEndOfString(pos);
238
- }
239
- pos++;
240
- }
241
- if (pos < end && file[pos] === "}") {
242
- pos++;
243
- }
244
- return pos;
245
- }
246
- function findEndOfString(pos) {
247
- const endOfString = file[pos];
248
- pos++;
249
- while (pos < end) {
250
- if (file[pos] === endOfString) {
251
- break;
252
- }
253
- else if (file[pos] === "\\") {
254
- pos++; // Skip escaped character
255
- }
256
- else if (endOfString === "`" &&
257
- file[pos] === "$" &&
258
- file[pos + 1] === "{") {
259
- // Template literal with data inside a ${}
260
- while (pos < end && file[pos] !== "}") {
261
- if ("`'\"".includes(file[pos])) {
262
- pos = findEndOfString(pos) + 1;
263
- }
264
- else {
265
- pos++;
266
- }
267
- }
268
- }
269
- pos++;
270
- }
271
- return pos;
272
- }
273
- function nextNonWs(pos) {
274
- while (pos < end && /\s/.test(file[pos])) {
275
- pos++;
276
- }
277
- return file[pos];
278
- }
279
- }