typedoc 0.28.18 → 0.28.20
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +12 -13
- package/bin/typedoc +1 -1
- package/dist/browser-locales/fr.d.ts +2 -0
- package/dist/browser-locales/fr.js +62 -0
- package/dist/browser-utils.js +29 -2
- package/dist/cli.js +111 -0
- package/dist/index.js +17888 -44
- package/dist/models.js +3736 -0
- package/dist/node-utils.js +7018 -0
- package/dist/serialization.js +430 -0
- package/dist/{lib → types}/application-events.d.ts +2 -0
- package/dist/{lib → types}/application.d.ts +51 -8
- package/dist/{lib → types}/converter/comments/declarationReferenceResolver.d.ts +1 -1
- package/dist/{lib → types}/converter/comments/discovery.d.ts +3 -3
- package/dist/{lib → types}/converter/comments/index.d.ts +4 -4
- package/dist/{lib → types}/converter/comments/lexer.d.ts +1 -1
- package/dist/{lib → types}/converter/comments/linkResolver.d.ts +1 -1
- package/dist/{lib → types}/converter/comments/parser.d.ts +3 -4
- package/dist/{lib → types}/converter/comments/textParser.d.ts +8 -2
- package/dist/{lib → types}/converter/components.d.ts +1 -1
- package/dist/{lib → types}/converter/context.d.ts +2 -2
- package/dist/{lib → types}/converter/converter.d.ts +6 -8
- package/dist/{lib → types}/converter/factories/signature.d.ts +1 -1
- package/dist/{lib → types}/converter/index.d.ts +1 -0
- package/dist/{lib → types}/converter/plugins/CategoryPlugin.d.ts +2 -2
- package/dist/{lib → types}/converter/plugins/GroupPlugin.d.ts +2 -3
- package/dist/{lib → types}/converter/plugins/IncludePlugin.d.ts +1 -1
- package/dist/{lib → types}/converter/plugins/InheritDocPlugin.d.ts +1 -1
- package/dist/{lib → types}/converter/plugins/LinkResolverPlugin.d.ts +3 -3
- package/dist/{lib → types}/converter/plugins/SourcePlugin.d.ts +1 -2
- package/dist/{lib → types}/converter/plugins/TypePlugin.d.ts +1 -1
- package/dist/{lib → types}/converter/types.d.ts +1 -1
- package/dist/{lib/converter/utils → types/converter/utilities}/reflections.d.ts +1 -1
- package/dist/{lib/converter/utils → types/converter/utilities}/repository.d.ts +14 -13
- package/dist/{index.d.ts → types/index.d.ts} +15 -16
- package/dist/{lib → types}/internationalization/internationalization.d.ts +0 -8
- package/dist/types/internationalization/locale-utils.d.ts +3 -0
- package/dist/types/internationalization/locales/de.d.ts +368 -0
- package/dist/{lib/internationalization/locales/en.d.cts → types/internationalization/locales/en.d.ts} +2 -1
- package/dist/types/internationalization/locales/fr.d.ts +346 -0
- package/dist/types/internationalization/locales/ja.d.ts +307 -0
- package/dist/types/internationalization/locales/ko.d.ts +221 -0
- package/dist/types/internationalization/locales/zh.d.ts +452 -0
- package/dist/{lib → types}/internationalization/translatable.d.ts +1 -1
- package/dist/{lib → types}/models/FileRegistry.d.ts +6 -1
- package/dist/{lib → types}/models/ReflectionSymbolId.d.ts +9 -3
- package/dist/{lib → types}/models/SourceReference.d.ts +5 -3
- package/dist/types/models.d.ts +1 -0
- package/dist/types/node-utils.d.ts +1 -0
- package/dist/{lib → types}/output/components.d.ts +3 -3
- package/dist/{lib → types}/output/events.d.ts +1 -2
- package/dist/{lib → types}/output/formatter.d.ts +1 -2
- package/dist/{lib → types}/output/output.d.ts +2 -2
- package/dist/{lib → types}/output/renderer.d.ts +4 -5
- package/dist/{lib → types}/output/router.d.ts +3 -2
- package/dist/{lib → types}/output/themes/MarkedPlugin.d.ts +3 -3
- package/dist/{lib → types}/output/themes/default/DefaultTheme.d.ts +1 -1
- package/dist/{lib → types}/output/themes/default/DefaultThemeRenderContext.d.ts +25 -25
- package/dist/{lib → types}/output/themes/default/layouts/default.d.ts +1 -1
- package/dist/{lib → types}/output/themes/default/partials/anchor-icon.d.ts +1 -1
- package/dist/{lib → types}/output/themes/default/partials/breadcrumb.d.ts +1 -1
- package/dist/{lib → types}/output/themes/default/partials/comment.d.ts +1 -1
- package/dist/{lib → types}/output/themes/default/partials/header.d.ts +1 -1
- package/dist/{lib → types}/output/themes/default/partials/hierarchy.d.ts +1 -1
- package/dist/{lib → types}/output/themes/default/partials/icon.d.ts +1 -1
- package/dist/{lib → types}/output/themes/default/partials/index.d.ts +1 -1
- package/dist/{lib → types}/output/themes/default/partials/member.d.ts +1 -1
- package/dist/{lib → types}/output/themes/default/partials/member.getterSetter.d.ts +1 -1
- package/dist/{lib → types}/output/themes/default/partials/member.signature.body.d.ts +1 -1
- package/dist/{lib → types}/output/themes/default/partials/member.signature.title.d.ts +2 -2
- package/dist/{lib → types}/output/themes/default/partials/member.signatures.d.ts +1 -1
- package/dist/{lib → types}/output/themes/default/partials/member.sources.d.ts +1 -1
- package/dist/{lib → types}/output/themes/default/partials/members.d.ts +1 -1
- package/dist/{lib → types}/output/themes/default/partials/moduleReflection.d.ts +1 -1
- package/dist/{lib → types}/output/themes/default/partials/navigation.d.ts +1 -1
- package/dist/{lib → types}/output/themes/default/partials/reflectionPreview.d.ts +1 -1
- package/dist/{lib → types}/output/themes/default/partials/toolbar.d.ts +1 -1
- package/dist/{lib → types}/output/themes/default/partials/type.d.ts +2 -2
- package/dist/{lib → types}/output/themes/default/partials/typeDetails.d.ts +2 -2
- package/dist/{lib → types}/output/themes/default/partials/typeParameters.d.ts +1 -1
- package/dist/{lib → types}/output/themes/default/templates/document.d.ts +1 -1
- package/dist/{lib → types}/output/themes/default/templates/hierarchy.d.ts +1 -1
- package/dist/{lib → types}/output/themes/default/templates/index.d.ts +1 -1
- package/dist/{lib → types}/output/themes/default/templates/reflection.d.ts +1 -1
- package/dist/{lib → types}/output/themes/lib.d.ts +1 -1
- package/dist/types/serialization.d.ts +1 -0
- package/dist/types/tsconfig.tsbuildinfo +1 -0
- package/dist/{lib → types}/utils/ValidatingFileRegistry.d.ts +1 -1
- package/dist/{lib → types}/utils/entry-point.d.ts +2 -2
- package/dist/{lib → types}/utils/general.d.ts +3 -0
- package/dist/types/utils/index.d.ts +22 -0
- package/dist/{lib → types}/utils/options/declaration.d.ts +2 -1
- package/dist/{lib → types}/utils/options/defaults.d.ts +1 -1
- package/dist/{lib → types}/utils/options/index.d.ts +2 -1
- package/dist/{lib → types}/utils/options/options.d.ts +1 -1
- package/dist/{lib → types}/utils/options/tsdoc-defaults.d.ts +1 -1
- package/dist/{lib → types}/utils/reflections.d.ts +1 -1
- package/dist/{lib → types}/utils/sort.d.ts +1 -2
- package/dist/{lib → types}/utils-common/general.d.ts +4 -4
- package/dist/{lib → types}/utils-common/jsx.elements.d.ts +16 -0
- package/dist/types/utils-common.d.ts +1 -0
- package/dist/{lib → types}/validation/documentation.d.ts +1 -1
- package/dist/{lib → types}/validation/exports.d.ts +1 -1
- package/dist/types/validation/filePaths.d.ts +3 -0
- package/dist/{lib → types}/validation/links.d.ts +1 -1
- package/dist/{lib → types}/validation/unusedMergeModuleWith.d.ts +1 -1
- package/dist/utils-common.js +1311 -0
- package/package.json +46 -37
- package/static/main.js +4 -4
- package/static/style.css +18 -3
- package/tsdoc.json +4 -0
- package/typedoc-config.schema.json +2 -0
- package/dist/lib/application-events.js +0 -5
- package/dist/lib/application.js +0 -716
- package/dist/lib/cli.js +0 -111
- package/dist/lib/converter/comments/blockLexer.js +0 -391
- package/dist/lib/converter/comments/declarationReferenceResolver.js +0 -218
- package/dist/lib/converter/comments/discovery.js +0 -563
- package/dist/lib/converter/comments/index.js +0 -241
- package/dist/lib/converter/comments/lexer.js +0 -10
- package/dist/lib/converter/comments/lineLexer.js +0 -279
- package/dist/lib/converter/comments/linkResolver.js +0 -186
- package/dist/lib/converter/comments/parser.js +0 -538
- package/dist/lib/converter/comments/rawLexer.js +0 -218
- package/dist/lib/converter/comments/tagName.js +0 -58
- package/dist/lib/converter/comments/textParser.js +0 -372
- package/dist/lib/converter/components.js +0 -3
- package/dist/lib/converter/context.js +0 -311
- package/dist/lib/converter/convert-expression.js +0 -58
- package/dist/lib/converter/converter-events.js +0 -13
- package/dist/lib/converter/converter.js +0 -705
- package/dist/lib/converter/factories/index-signature.js +0 -50
- package/dist/lib/converter/factories/signature.js +0 -353
- package/dist/lib/converter/factories/symbol-id.js +0 -50
- package/dist/lib/converter/index.js +0 -3
- package/dist/lib/converter/jsdoc.js +0 -135
- package/dist/lib/converter/plugins/CategoryPlugin.js +0 -278
- package/dist/lib/converter/plugins/CommentPlugin.js +0 -770
- package/dist/lib/converter/plugins/GroupPlugin.js +0 -281
- package/dist/lib/converter/plugins/ImplementsPlugin.js +0 -438
- package/dist/lib/converter/plugins/IncludePlugin.js +0 -254
- package/dist/lib/converter/plugins/InheritDocPlugin.js +0 -220
- package/dist/lib/converter/plugins/LinkResolverPlugin.js +0 -88
- package/dist/lib/converter/plugins/MergeModuleWithPlugin.js +0 -50
- package/dist/lib/converter/plugins/PackagePlugin.js +0 -188
- package/dist/lib/converter/plugins/SourcePlugin.js +0 -215
- package/dist/lib/converter/plugins/TypePlugin.js +0 -108
- package/dist/lib/converter/plugins/index.js +0 -10
- package/dist/lib/converter/symbols.js +0 -861
- package/dist/lib/converter/types.js +0 -833
- package/dist/lib/converter/utils/nodes.js +0 -26
- package/dist/lib/converter/utils/reflections.js +0 -17
- package/dist/lib/converter/utils/repository.js +0 -295
- package/dist/lib/converter/utils/symbols.js +0 -12
- package/dist/lib/debug/index.js +0 -2
- package/dist/lib/debug/reflectionLifetimes.js +0 -27
- package/dist/lib/debug/rendererUrls.js +0 -68
- package/dist/lib/internationalization/index.js +0 -7
- package/dist/lib/internationalization/internationalization.js +0 -64
- package/dist/lib/internationalization/locale-utils.cjs +0 -8
- package/dist/lib/internationalization/locale-utils.d.cts +0 -8
- package/dist/lib/internationalization/locales/de.cjs +0 -401
- package/dist/lib/internationalization/locales/de.d.cts +0 -368
- package/dist/lib/internationalization/locales/en.cjs +0 -411
- package/dist/lib/internationalization/locales/ja.cjs +0 -320
- package/dist/lib/internationalization/locales/ja.d.cts +0 -307
- package/dist/lib/internationalization/locales/ko.cjs +0 -233
- package/dist/lib/internationalization/locales/ko.d.cts +0 -221
- package/dist/lib/internationalization/locales/zh.cjs +0 -488
- package/dist/lib/internationalization/locales/zh.d.cts +0 -452
- package/dist/lib/internationalization/translatable.js +0 -8
- package/dist/lib/models/Comment.js +0 -534
- package/dist/lib/models/ContainerReflection.js +0 -159
- package/dist/lib/models/DeclarationReflection.js +0 -287
- package/dist/lib/models/DocumentReflection.js +0 -66
- package/dist/lib/models/FileRegistry.js +0 -133
- package/dist/lib/models/ParameterReflection.js +0 -39
- package/dist/lib/models/ProjectReflection.js +0 -417
- package/dist/lib/models/ReferenceReflection.js +0 -85
- package/dist/lib/models/Reflection.js +0 -495
- package/dist/lib/models/ReflectionCategory.js +0 -56
- package/dist/lib/models/ReflectionGroup.js +0 -72
- package/dist/lib/models/ReflectionSymbolId.js +0 -85
- package/dist/lib/models/SignatureReflection.js +0 -96
- package/dist/lib/models/SourceReference.js +0 -50
- package/dist/lib/models/TypeParameterReflection.js +0 -45
- package/dist/lib/models/index.js +0 -19
- package/dist/lib/models/kind.js +0 -231
- package/dist/lib/models/types.js +0 -1296
- package/dist/lib/models/utils.js +0 -26
- package/dist/lib/models/variant.js +0 -1
- package/dist/lib/output/components.js +0 -133
- package/dist/lib/output/events.js +0 -195
- package/dist/lib/output/formatter.js +0 -660
- package/dist/lib/output/index.js +0 -7
- package/dist/lib/output/output.js +0 -92
- package/dist/lib/output/plugins/AssetsPlugin.js +0 -160
- package/dist/lib/output/plugins/HierarchyPlugin.js +0 -65
- package/dist/lib/output/plugins/IconsPlugin.js +0 -54
- package/dist/lib/output/plugins/JavascriptIndexPlugin.js +0 -222
- package/dist/lib/output/plugins/NavigationPlugin.js +0 -23
- package/dist/lib/output/plugins/SitemapPlugin.js +0 -82
- package/dist/lib/output/plugins/index.js +0 -7
- package/dist/lib/output/renderer.js +0 -387
- package/dist/lib/output/router.js +0 -520
- package/dist/lib/output/theme.js +0 -17
- package/dist/lib/output/themes/MarkedPlugin.js +0 -461
- package/dist/lib/output/themes/default/DefaultTheme.js +0 -367
- package/dist/lib/output/themes/default/DefaultThemeRenderContext.js +0 -151
- package/dist/lib/output/themes/default/Slugger.js +0 -60
- package/dist/lib/output/themes/default/layouts/default.js +0 -89
- package/dist/lib/output/themes/default/partials/anchor-icon.js +0 -9
- package/dist/lib/output/themes/default/partials/breadcrumb.js +0 -11
- package/dist/lib/output/themes/default/partials/comment.js +0 -80
- package/dist/lib/output/themes/default/partials/footer.js +0 -37
- package/dist/lib/output/themes/default/partials/header.js +0 -39
- package/dist/lib/output/themes/default/partials/hierarchy.js +0 -32
- package/dist/lib/output/themes/default/partials/icon.js +0 -101
- package/dist/lib/output/themes/default/partials/index.js +0 -24
- package/dist/lib/output/themes/default/partials/member.declaration.js +0 -35
- package/dist/lib/output/themes/default/partials/member.getterSetter.js +0 -12
- package/dist/lib/output/themes/default/partials/member.js +0 -36
- package/dist/lib/output/themes/default/partials/member.signature.body.js +0 -33
- package/dist/lib/output/themes/default/partials/member.signature.title.js +0 -9
- package/dist/lib/output/themes/default/partials/member.signatures.js +0 -9
- package/dist/lib/output/themes/default/partials/member.sources.js +0 -55
- package/dist/lib/output/themes/default/partials/members.js +0 -17
- package/dist/lib/output/themes/default/partials/moduleReflection.js +0 -68
- package/dist/lib/output/themes/default/partials/navigation.js +0 -144
- package/dist/lib/output/themes/default/partials/reflectionPreview.js +0 -26
- package/dist/lib/output/themes/default/partials/toolbar.js +0 -13
- package/dist/lib/output/themes/default/partials/type.js +0 -9
- package/dist/lib/output/themes/default/partials/typeAndParent.js +0 -28
- package/dist/lib/output/themes/default/partials/typeDetails.js +0 -284
- package/dist/lib/output/themes/default/partials/typeParameters.js +0 -26
- package/dist/lib/output/themes/default/templates/document.js +0 -3
- package/dist/lib/output/themes/default/templates/hierarchy.js +0 -31
- package/dist/lib/output/themes/default/templates/index.js +0 -3
- package/dist/lib/output/themes/default/templates/reflection.js +0 -53
- package/dist/lib/output/themes/lib.js +0 -218
- package/dist/lib/serialization/components.js +0 -1
- package/dist/lib/serialization/deserializer.js +0 -235
- package/dist/lib/serialization/events.js +0 -18
- package/dist/lib/serialization/index.js +0 -4
- package/dist/lib/serialization/schema.js +0 -32
- package/dist/lib/serialization/serializer.js +0 -65
- package/dist/lib/utils/ValidatingFileRegistry.js +0 -52
- package/dist/lib/utils/component.js +0 -41
- package/dist/lib/utils/compress.js +0 -13
- package/dist/lib/utils/declaration-maps.js +0 -51
- package/dist/lib/utils/entry-point.js +0 -330
- package/dist/lib/utils/fs.js +0 -372
- package/dist/lib/utils/general.js +0 -25
- package/dist/lib/utils/highlighter.js +0 -150
- package/dist/lib/utils/html-entities.js +0 -2329
- package/dist/lib/utils/html.js +0 -635
- package/dist/lib/utils/index.d.ts +0 -17
- package/dist/lib/utils/index.js +0 -15
- package/dist/lib/utils/loggers.js +0 -71
- package/dist/lib/utils/options/declaration.js +0 -443
- package/dist/lib/utils/options/defaults.js +0 -104
- package/dist/lib/utils/options/help.js +0 -63
- package/dist/lib/utils/options/index.js +0 -4
- package/dist/lib/utils/options/options.js +0 -273
- package/dist/lib/utils/options/readers/arguments.js +0 -109
- package/dist/lib/utils/options/readers/index.js +0 -4
- package/dist/lib/utils/options/readers/package-json.js +0 -40
- package/dist/lib/utils/options/readers/tsconfig.js +0 -172
- package/dist/lib/utils/options/readers/typedoc.js +0 -136
- package/dist/lib/utils/options/sources/index.js +0 -1
- package/dist/lib/utils/options/sources/typedoc.js +0 -876
- package/dist/lib/utils/options/tsdoc-defaults.js +0 -94
- package/dist/lib/utils/package-manifest.js +0 -84
- package/dist/lib/utils/paths.js +0 -127
- package/dist/lib/utils/perf.js +0 -86
- package/dist/lib/utils/plugins.js +0 -61
- package/dist/lib/utils/reflections.js +0 -64
- package/dist/lib/utils/sort.js +0 -153
- package/dist/lib/utils/tsconfig.js +0 -60
- package/dist/lib/utils/tsutils.js +0 -23
- package/dist/lib/utils-common/array.js +0 -152
- package/dist/lib/utils-common/declarationReference.js +0 -341
- package/dist/lib/utils-common/enum.js +0 -27
- package/dist/lib/utils-common/events.js +0 -49
- package/dist/lib/utils-common/general.js +0 -22
- package/dist/lib/utils-common/hooks.js +0 -90
- package/dist/lib/utils-common/i18n.js +0 -39
- package/dist/lib/utils-common/index.js +0 -17
- package/dist/lib/utils-common/jsx.elements.js +0 -3
- package/dist/lib/utils-common/jsx.js +0 -187
- package/dist/lib/utils-common/logger.js +0 -129
- package/dist/lib/utils-common/map.js +0 -63
- package/dist/lib/utils-common/minimalSourceFile.js +0 -43
- package/dist/lib/utils-common/path.js +0 -130
- package/dist/lib/utils-common/set.js +0 -23
- package/dist/lib/utils-common/string.js +0 -84
- package/dist/lib/utils-common/validation.js +0 -50
- package/dist/lib/validation/documentation.js +0 -91
- package/dist/lib/validation/exports.js +0 -65
- package/dist/lib/validation/links.js +0 -78
- package/dist/lib/validation/unusedMergeModuleWith.js +0 -12
- /package/dist/{browser-utils.d.ts → types/browser-utils.d.ts} +0 -0
- /package/dist/{lib → types}/cli.d.ts +0 -0
- /package/dist/{lib → types}/converter/comments/blockLexer.d.ts +0 -0
- /package/dist/{lib → types}/converter/comments/lineLexer.d.ts +0 -0
- /package/dist/{lib → types}/converter/comments/rawLexer.d.ts +0 -0
- /package/dist/{lib → types}/converter/comments/tagName.d.ts +0 -0
- /package/dist/{lib → types}/converter/convert-expression.d.ts +0 -0
- /package/dist/{lib → types}/converter/converter-events.d.ts +0 -0
- /package/dist/{lib → types}/converter/factories/index-signature.d.ts +0 -0
- /package/dist/{lib → types}/converter/factories/symbol-id.d.ts +0 -0
- /package/dist/{lib → types}/converter/jsdoc.d.ts +0 -0
- /package/dist/{lib → types}/converter/plugins/CommentPlugin.d.ts +0 -0
- /package/dist/{lib → types}/converter/plugins/ImplementsPlugin.d.ts +0 -0
- /package/dist/{lib → types}/converter/plugins/MergeModuleWithPlugin.d.ts +0 -0
- /package/dist/{lib → types}/converter/plugins/PackagePlugin.d.ts +0 -0
- /package/dist/{lib → types}/converter/plugins/index.d.ts +0 -0
- /package/dist/{lib → types}/converter/symbols.d.ts +0 -0
- /package/dist/{lib/converter/utils → types/converter/utilities}/nodes.d.ts +0 -0
- /package/dist/{lib/converter/utils → types/converter/utilities}/symbols.d.ts +0 -0
- /package/dist/{lib → types}/debug/index.d.ts +0 -0
- /package/dist/{lib → types}/debug/reflectionLifetimes.d.ts +0 -0
- /package/dist/{lib → types}/debug/rendererUrls.d.ts +0 -0
- /package/dist/{lib → types}/internationalization/index.d.ts +0 -0
- /package/dist/{lib → types}/models/Comment.d.ts +0 -0
- /package/dist/{lib → types}/models/ContainerReflection.d.ts +0 -0
- /package/dist/{lib → types}/models/DeclarationReflection.d.ts +0 -0
- /package/dist/{lib → types}/models/DocumentReflection.d.ts +0 -0
- /package/dist/{lib → types}/models/ParameterReflection.d.ts +0 -0
- /package/dist/{lib → types}/models/ProjectReflection.d.ts +0 -0
- /package/dist/{lib → types}/models/ReferenceReflection.d.ts +0 -0
- /package/dist/{lib → types}/models/Reflection.d.ts +0 -0
- /package/dist/{lib → types}/models/ReflectionCategory.d.ts +0 -0
- /package/dist/{lib → types}/models/ReflectionGroup.d.ts +0 -0
- /package/dist/{lib → types}/models/SignatureReflection.d.ts +0 -0
- /package/dist/{lib → types}/models/TypeParameterReflection.d.ts +0 -0
- /package/dist/{lib → types}/models/index.d.ts +0 -0
- /package/dist/{lib → types}/models/kind.d.ts +0 -0
- /package/dist/{lib → types}/models/types.d.ts +0 -0
- /package/dist/{lib → types}/models/utils.d.ts +0 -0
- /package/dist/{lib → types}/models/variant.d.ts +0 -0
- /package/dist/{lib → types}/output/index.d.ts +0 -0
- /package/dist/{lib → types}/output/plugins/AssetsPlugin.d.ts +0 -0
- /package/dist/{lib → types}/output/plugins/HierarchyPlugin.d.ts +0 -0
- /package/dist/{lib → types}/output/plugins/IconsPlugin.d.ts +0 -0
- /package/dist/{lib → types}/output/plugins/JavascriptIndexPlugin.d.ts +0 -0
- /package/dist/{lib → types}/output/plugins/NavigationPlugin.d.ts +0 -0
- /package/dist/{lib → types}/output/plugins/SitemapPlugin.d.ts +0 -0
- /package/dist/{lib → types}/output/plugins/index.d.ts +0 -0
- /package/dist/{lib → types}/output/theme.d.ts +0 -0
- /package/dist/{lib → types}/output/themes/default/Slugger.d.ts +0 -0
- /package/dist/{lib → types}/output/themes/default/partials/footer.d.ts +0 -0
- /package/dist/{lib → types}/output/themes/default/partials/member.declaration.d.ts +0 -0
- /package/dist/{lib → types}/output/themes/default/partials/typeAndParent.d.ts +0 -0
- /package/dist/{lib → types}/serialization/components.d.ts +0 -0
- /package/dist/{lib → types}/serialization/deserializer.d.ts +0 -0
- /package/dist/{lib → types}/serialization/events.d.ts +0 -0
- /package/dist/{lib → types}/serialization/index.d.ts +0 -0
- /package/dist/{lib → types}/serialization/schema.d.ts +0 -0
- /package/dist/{lib → types}/serialization/serializer.d.ts +0 -0
- /package/dist/{lib → types}/utils/component.d.ts +0 -0
- /package/dist/{lib → types}/utils/compress.d.ts +0 -0
- /package/dist/{lib → types}/utils/declaration-maps.d.ts +0 -0
- /package/dist/{lib → types}/utils/fs.d.ts +0 -0
- /package/dist/{lib → types}/utils/highlighter.d.ts +0 -0
- /package/dist/{lib → types}/utils/html-entities.d.ts +0 -0
- /package/dist/{lib → types}/utils/html.d.ts +0 -0
- /package/dist/{lib → types}/utils/loggers.d.ts +0 -0
- /package/dist/{lib → types}/utils/options/help.d.ts +0 -0
- /package/dist/{lib → types}/utils/options/readers/arguments.d.ts +0 -0
- /package/dist/{lib → types}/utils/options/readers/index.d.ts +0 -0
- /package/dist/{lib → types}/utils/options/readers/package-json.d.ts +0 -0
- /package/dist/{lib → types}/utils/options/readers/tsconfig.d.ts +0 -0
- /package/dist/{lib → types}/utils/options/readers/typedoc.d.ts +0 -0
- /package/dist/{lib → types}/utils/options/sources/index.d.ts +0 -0
- /package/dist/{lib → types}/utils/options/sources/typedoc.d.ts +0 -0
- /package/dist/{lib → types}/utils/package-manifest.d.ts +0 -0
- /package/dist/{lib → types}/utils/paths.d.ts +0 -0
- /package/dist/{lib → types}/utils/perf.d.ts +0 -0
- /package/dist/{lib → types}/utils/plugins.d.ts +0 -0
- /package/dist/{lib → types}/utils/tsconfig.d.ts +0 -0
- /package/dist/{lib → types}/utils/tsutils.d.ts +0 -0
- /package/dist/{lib → types}/utils-common/array.d.ts +0 -0
- /package/dist/{lib → types}/utils-common/declarationReference.d.ts +0 -0
- /package/dist/{lib → types}/utils-common/enum.d.ts +0 -0
- /package/dist/{lib → types}/utils-common/events.d.ts +0 -0
- /package/dist/{lib → types}/utils-common/hooks.d.ts +0 -0
- /package/dist/{lib → types}/utils-common/i18n.d.ts +0 -0
- /package/dist/{lib → types}/utils-common/index.d.ts +0 -0
- /package/dist/{lib → types}/utils-common/jsx.d.ts +0 -0
- /package/dist/{lib → types}/utils-common/logger.d.ts +0 -0
- /package/dist/{lib → types}/utils-common/map.d.ts +0 -0
- /package/dist/{lib → types}/utils-common/minimalSourceFile.d.ts +0 -0
- /package/dist/{lib → types}/utils-common/path.d.ts +0 -0
- /package/dist/{lib → types}/utils-common/set.d.ts +0 -0
- /package/dist/{lib → types}/utils-common/string.d.ts +0 -0
- /package/dist/{lib → types}/utils-common/validation.d.ts +0 -0
|
@@ -1,254 +0,0 @@
|
|
|
1
|
-
import path from "path";
|
|
2
|
-
import { ConverterComponent } from "../components.js";
|
|
3
|
-
import { ConverterEvents } from "../converter-events.js";
|
|
4
|
-
import { MinimalSourceFile } from "#utils";
|
|
5
|
-
import { isFile, readFile } from "../../utils/fs.js";
|
|
6
|
-
import { dedent, escapeRegExp, i18n } from "#utils";
|
|
7
|
-
import { normalizePath } from "#node-utils";
|
|
8
|
-
/**
|
|
9
|
-
* Handles `@include` and `@includeCode` within comments/documents.
|
|
10
|
-
*/
|
|
11
|
-
export class IncludePlugin extends ConverterComponent {
|
|
12
|
-
get logger() {
|
|
13
|
-
return this.application.logger;
|
|
14
|
-
}
|
|
15
|
-
constructor(owner) {
|
|
16
|
-
super(owner);
|
|
17
|
-
const onCreate = this.onCreate.bind(this);
|
|
18
|
-
owner.on(ConverterEvents.CREATE_PROJECT, onCreate);
|
|
19
|
-
owner.on(ConverterEvents.CREATE_DOCUMENT, onCreate);
|
|
20
|
-
owner.on(ConverterEvents.CREATE_DECLARATION, onCreate);
|
|
21
|
-
owner.on(ConverterEvents.CREATE_PARAMETER, onCreate);
|
|
22
|
-
owner.on(ConverterEvents.CREATE_SIGNATURE, onCreate);
|
|
23
|
-
owner.on(ConverterEvents.CREATE_TYPE_PARAMETER, onCreate);
|
|
24
|
-
}
|
|
25
|
-
onCreate(_context, refl) {
|
|
26
|
-
if (refl.isDocument()) {
|
|
27
|
-
// We know it must be present as documents are always associated with a file.
|
|
28
|
-
const relative = this.application.files.getReflectionPath(refl);
|
|
29
|
-
this.checkIncludeTagsParts(refl, path.dirname(relative), refl.content);
|
|
30
|
-
}
|
|
31
|
-
if (!refl.comment?.sourcePath)
|
|
32
|
-
return;
|
|
33
|
-
const relative = path.dirname(refl.comment.sourcePath);
|
|
34
|
-
this.checkIncludeTagsParts(refl, relative, refl.comment.summary);
|
|
35
|
-
for (const tag of refl.comment.blockTags) {
|
|
36
|
-
this.checkIncludeTagsParts(refl, relative, tag.content);
|
|
37
|
-
}
|
|
38
|
-
}
|
|
39
|
-
checkIncludeTagsParts(refl, relative, parts, included = []) {
|
|
40
|
-
for (let i = 0; i < parts.length; ++i) {
|
|
41
|
-
const part = parts[i];
|
|
42
|
-
if (part.kind !== "inline-tag" ||
|
|
43
|
-
!["@include", "@includeCode"].includes(part.tag)) {
|
|
44
|
-
continue;
|
|
45
|
-
}
|
|
46
|
-
const { filename, regionTarget, requestedLines } = parseIncludeCodeTextPart(part.text);
|
|
47
|
-
const file = normalizePath(path.resolve(relative, filename));
|
|
48
|
-
this.application.watchFile(file);
|
|
49
|
-
if (included.includes(file) && part.tag === "@include") {
|
|
50
|
-
this.logger.error(i18n.include_0_in_1_specified_2_circular_include_3(part.tag, refl.getFriendlyFullName(), part.text, included.join("\n\t")));
|
|
51
|
-
}
|
|
52
|
-
else if (isFile(file)) {
|
|
53
|
-
const text = readFile(file).replaceAll("\r\n", "\n");
|
|
54
|
-
const ext = path.extname(file).substring(1);
|
|
55
|
-
const includedText = regionTarget
|
|
56
|
-
? this.getRegions(refl, file, ext, part.text, text, regionTarget, part.tag, part.tag === "@includeCode")
|
|
57
|
-
: requestedLines
|
|
58
|
-
? this.getLines(refl, file, part.text, text, requestedLines, part.tag)
|
|
59
|
-
: text;
|
|
60
|
-
if (part.tag === "@include") {
|
|
61
|
-
const sf = new MinimalSourceFile(includedText, file);
|
|
62
|
-
const { content } = this.owner.parseRawComment(sf, refl.project.files);
|
|
63
|
-
this.checkIncludeTagsParts(refl, path.dirname(file), content, [...included, file]);
|
|
64
|
-
parts.splice(i, 1, ...content);
|
|
65
|
-
}
|
|
66
|
-
else {
|
|
67
|
-
parts[i] = {
|
|
68
|
-
kind: "code",
|
|
69
|
-
text: makeCodeBlock(ext, includedText),
|
|
70
|
-
};
|
|
71
|
-
}
|
|
72
|
-
}
|
|
73
|
-
else {
|
|
74
|
-
this.logger.error(i18n.include_0_in_1_specified_2_resolved_to_3_does_not_exist(part.tag, refl.getFriendlyFullName(), part.text, file));
|
|
75
|
-
}
|
|
76
|
-
}
|
|
77
|
-
}
|
|
78
|
-
getRegions(refl, file, ext, textPart, text, regionTargets, tag, ignoreIndent) {
|
|
79
|
-
const regionTagsList = regionTagREsByExt[ext];
|
|
80
|
-
if (!regionTagsList) {
|
|
81
|
-
this.logger.error(i18n.include_0_tag_in_1_region_2_region_not_supported(tag, refl.getFriendlyFullName(), textPart));
|
|
82
|
-
return "";
|
|
83
|
-
}
|
|
84
|
-
const targets = regionTargets.split(",").map((s) => s.trim());
|
|
85
|
-
let content = "";
|
|
86
|
-
for (const target of targets) {
|
|
87
|
-
let found = false;
|
|
88
|
-
for (const [startTag, endTag] of regionTagsList) {
|
|
89
|
-
const safeTarget = escapeRegExp(target);
|
|
90
|
-
const start = text.match(startTag(safeTarget));
|
|
91
|
-
const end = text.match(endTag(safeTarget));
|
|
92
|
-
const foundStart = start && start.length > 0;
|
|
93
|
-
const foundEnd = end && end.length > 0;
|
|
94
|
-
if (foundStart && !foundEnd) {
|
|
95
|
-
this.logger.error(i18n.include_0_tag_in_1_specified_2_file_3_region_4_region_close_not_found(tag, refl.getFriendlyFullName(), textPart, file, target));
|
|
96
|
-
return "";
|
|
97
|
-
}
|
|
98
|
-
if (!foundStart && foundEnd) {
|
|
99
|
-
this.logger.error(i18n.include_0_tag_in_1_specified_2_file_3_region_4_region_open_not_found(tag, refl.getFriendlyFullName(), textPart, file, target));
|
|
100
|
-
return "";
|
|
101
|
-
}
|
|
102
|
-
if (foundStart && foundEnd) {
|
|
103
|
-
if (start.length > 1) {
|
|
104
|
-
this.logger.error(i18n
|
|
105
|
-
.include_0_tag_in_1_specified_2_file_3_region_4_region_open_found_multiple_times(tag, refl.getFriendlyFullName(), textPart, file, target));
|
|
106
|
-
return "";
|
|
107
|
-
}
|
|
108
|
-
if (end.length > 1) {
|
|
109
|
-
this.logger.error(i18n
|
|
110
|
-
.include_0_tag_in_1_specified_2_file_3_region_4_region_close_found_multiple_times(tag, refl.getFriendlyFullName(), textPart, file, target));
|
|
111
|
-
return "";
|
|
112
|
-
}
|
|
113
|
-
if (found) {
|
|
114
|
-
this.logger.error(i18n.include_0_tag_in_1_specified_2_file_3_region_4_region_found_multiple_times(tag, refl.getFriendlyFullName(), textPart, file, target));
|
|
115
|
-
return "";
|
|
116
|
-
}
|
|
117
|
-
found = text.substring(text.indexOf(start[0]) + start[0].length, text.indexOf(end[0]));
|
|
118
|
-
}
|
|
119
|
-
}
|
|
120
|
-
if (found === false) {
|
|
121
|
-
this.logger.error(i18n.include_0_tag_in_1_specified_2_file_3_region_4_region_not_found(tag, refl.getFriendlyFullName(), textPart, file, target));
|
|
122
|
-
return "";
|
|
123
|
-
}
|
|
124
|
-
if (found.trim() === "") {
|
|
125
|
-
this.logger.warn(i18n.include_0_tag_in_1_specified_2_file_3_region_4_region_empty(tag, refl.getFriendlyFullName(), textPart, file, target));
|
|
126
|
-
}
|
|
127
|
-
content += ignoreIndent ? dedent(found) + "\n" : found;
|
|
128
|
-
}
|
|
129
|
-
return content;
|
|
130
|
-
}
|
|
131
|
-
getLines(refl, file, textPart, text, requestedLines, tag) {
|
|
132
|
-
let output = "";
|
|
133
|
-
const lines = text.split(/\r\n|\r|\n/);
|
|
134
|
-
requestedLines.split(",").forEach((requestedLineString) => {
|
|
135
|
-
if (requestedLineString.includes("-")) {
|
|
136
|
-
const [start, end] = requestedLineString.split("-").map(Number);
|
|
137
|
-
if (start > end) {
|
|
138
|
-
this.logger.error(i18n.include_0_tag_in_1_specified_2_file_3_lines_4_invalid_range(tag, refl.getFriendlyFullName(), textPart, file, requestedLines));
|
|
139
|
-
return "";
|
|
140
|
-
}
|
|
141
|
-
if (start > lines.length || end > lines.length) {
|
|
142
|
-
this.logger.error(i18n.include_0_tag_in_1_specified_2_file_3_lines_4_but_only_5_lines(tag, refl.getFriendlyFullName(), textPart, file, requestedLines, lines.length.toString()));
|
|
143
|
-
return "";
|
|
144
|
-
}
|
|
145
|
-
output += lines.slice(start - 1, end).join("\n") + "\n";
|
|
146
|
-
}
|
|
147
|
-
else {
|
|
148
|
-
const requestedLine = Number(requestedLineString);
|
|
149
|
-
if (requestedLine > lines.length) {
|
|
150
|
-
this.logger.error(i18n.include_0_tag_in_1_specified_2_file_3_lines_4_but_only_5_lines(tag, refl.getFriendlyFullName(), textPart, file, requestedLines, lines.length.toString()));
|
|
151
|
-
return "";
|
|
152
|
-
}
|
|
153
|
-
output += lines[requestedLine - 1] + "\n";
|
|
154
|
-
}
|
|
155
|
-
});
|
|
156
|
-
return output;
|
|
157
|
-
}
|
|
158
|
-
}
|
|
159
|
-
function makeCodeBlock(lang, code) {
|
|
160
|
-
const escaped = code.replace(/`(?=`)/g, "`\u200B");
|
|
161
|
-
return "\n\n```" + lang + "\n" + escaped.trimEnd() + "\n```";
|
|
162
|
-
}
|
|
163
|
-
function parseIncludeCodeTextPart(text) {
|
|
164
|
-
let filename = text.trim();
|
|
165
|
-
let regionTarget;
|
|
166
|
-
let requestedLines;
|
|
167
|
-
if (filename.includes("#")) {
|
|
168
|
-
const parsed = filename.split("#");
|
|
169
|
-
filename = parsed[0];
|
|
170
|
-
regionTarget = parsed[1];
|
|
171
|
-
}
|
|
172
|
-
else if (filename.includes(":")) {
|
|
173
|
-
const parsed = filename.split(":");
|
|
174
|
-
filename = parsed[0];
|
|
175
|
-
requestedLines = parsed[1];
|
|
176
|
-
}
|
|
177
|
-
return { filename, regionTarget, requestedLines };
|
|
178
|
-
}
|
|
179
|
-
const regionTagREsByExt = {
|
|
180
|
-
bat: [
|
|
181
|
-
[
|
|
182
|
-
(regionName) => new RegExp(`:: *#region *${regionName} *\n`, "g"),
|
|
183
|
-
(regionName) => new RegExp(`:: *#endregion *${regionName} *\n`, "g"),
|
|
184
|
-
],
|
|
185
|
-
[
|
|
186
|
-
(regionName) => new RegExp(`REM *#region *${regionName} *\n`, "g"),
|
|
187
|
-
(regionName) => new RegExp(`REM *#endregion *${regionName} *\n`, "g"),
|
|
188
|
-
],
|
|
189
|
-
],
|
|
190
|
-
cs: [
|
|
191
|
-
[
|
|
192
|
-
(regionName) => new RegExp(`#region *${regionName} *\n`, "g"),
|
|
193
|
-
(regionName) => new RegExp(`#endregion *${regionName} *\n`, "g"),
|
|
194
|
-
],
|
|
195
|
-
],
|
|
196
|
-
c: [
|
|
197
|
-
[
|
|
198
|
-
(regionName) => new RegExp(`#pragma *region *${regionName} *\n`, "g"),
|
|
199
|
-
(regionName) => new RegExp(`#pragma *endregion *${regionName} *\n`, "g"),
|
|
200
|
-
],
|
|
201
|
-
],
|
|
202
|
-
css: [
|
|
203
|
-
[
|
|
204
|
-
(regionName) => new RegExp(`/\\* *#region *\\*/ *${regionName} *\n`, "g"),
|
|
205
|
-
(regionName) => new RegExp(`/\\* *#endregion *\\*/ *${regionName} *\n`, "g"),
|
|
206
|
-
],
|
|
207
|
-
],
|
|
208
|
-
md: [
|
|
209
|
-
[
|
|
210
|
-
(regionName) => new RegExp(`<!-- *#region *${regionName} *--> *\n`, "g"),
|
|
211
|
-
(regionName) => new RegExp(`<!-- *#endregion *${regionName} *--> *\n`, "g"),
|
|
212
|
-
],
|
|
213
|
-
],
|
|
214
|
-
ts: [
|
|
215
|
-
[
|
|
216
|
-
(regionName) => new RegExp(`// *#region *${regionName} *\n`, "g"),
|
|
217
|
-
(regionName) => new RegExp(`// *#endregion *${regionName} *\n`, "g"),
|
|
218
|
-
],
|
|
219
|
-
],
|
|
220
|
-
vb: [
|
|
221
|
-
[
|
|
222
|
-
(regionName) => new RegExp(`#Region *${regionName} *\n`, "g"),
|
|
223
|
-
(regionName) => new RegExp(`#End Region *${regionName} *\n`, "g"),
|
|
224
|
-
],
|
|
225
|
-
],
|
|
226
|
-
};
|
|
227
|
-
regionTagREsByExt["fs"] = [
|
|
228
|
-
...regionTagREsByExt["ts"],
|
|
229
|
-
[
|
|
230
|
-
(regionName) => new RegExp(`(#_region) *${regionName} *\n`, "g"),
|
|
231
|
-
(regionName) => new RegExp(`(#_endregion) *${regionName} *\n`, "g"),
|
|
232
|
-
],
|
|
233
|
-
];
|
|
234
|
-
regionTagREsByExt["java"] = [
|
|
235
|
-
...regionTagREsByExt["ts"],
|
|
236
|
-
[
|
|
237
|
-
(regionName) => new RegExp(`// *<editor-fold> *${regionName} *\n`, "g"),
|
|
238
|
-
(regionName) => new RegExp(`// *</editor-fold> *${regionName} *\n`, "g"),
|
|
239
|
-
],
|
|
240
|
-
];
|
|
241
|
-
regionTagREsByExt["cpp"] = regionTagREsByExt["c"];
|
|
242
|
-
regionTagREsByExt["less"] = regionTagREsByExt["css"];
|
|
243
|
-
regionTagREsByExt["scss"] = regionTagREsByExt["css"];
|
|
244
|
-
regionTagREsByExt["coffee"] = regionTagREsByExt["cs"];
|
|
245
|
-
regionTagREsByExt["php"] = regionTagREsByExt["cs"];
|
|
246
|
-
regionTagREsByExt["ps1"] = regionTagREsByExt["cs"];
|
|
247
|
-
regionTagREsByExt["py"] = regionTagREsByExt["cs"];
|
|
248
|
-
regionTagREsByExt["js"] = regionTagREsByExt["ts"];
|
|
249
|
-
regionTagREsByExt["mjs"] = regionTagREsByExt["ts"];
|
|
250
|
-
regionTagREsByExt["mts"] = regionTagREsByExt["ts"];
|
|
251
|
-
regionTagREsByExt["cjs"] = regionTagREsByExt["ts"];
|
|
252
|
-
regionTagREsByExt["cts"] = regionTagREsByExt["ts"];
|
|
253
|
-
regionTagREsByExt["jsx"] = regionTagREsByExt["ts"];
|
|
254
|
-
regionTagREsByExt["tsx"] = regionTagREsByExt["ts"];
|
|
@@ -1,220 +0,0 @@
|
|
|
1
|
-
var __esDecorate = (this && this.__esDecorate) || function (ctor, descriptorIn, decorators, contextIn, initializers, extraInitializers) {
|
|
2
|
-
function accept(f) { if (f !== void 0 && typeof f !== "function") throw new TypeError("Function expected"); return f; }
|
|
3
|
-
var kind = contextIn.kind, key = kind === "getter" ? "get" : kind === "setter" ? "set" : "value";
|
|
4
|
-
var target = !descriptorIn && ctor ? contextIn["static"] ? ctor : ctor.prototype : null;
|
|
5
|
-
var descriptor = descriptorIn || (target ? Object.getOwnPropertyDescriptor(target, contextIn.name) : {});
|
|
6
|
-
var _, done = false;
|
|
7
|
-
for (var i = decorators.length - 1; i >= 0; i--) {
|
|
8
|
-
var context = {};
|
|
9
|
-
for (var p in contextIn) context[p] = p === "access" ? {} : contextIn[p];
|
|
10
|
-
for (var p in contextIn.access) context.access[p] = contextIn.access[p];
|
|
11
|
-
context.addInitializer = function (f) { if (done) throw new TypeError("Cannot add initializers after decoration has completed"); extraInitializers.push(accept(f || null)); };
|
|
12
|
-
var result = (0, decorators[i])(kind === "accessor" ? { get: descriptor.get, set: descriptor.set } : descriptor[key], context);
|
|
13
|
-
if (kind === "accessor") {
|
|
14
|
-
if (result === void 0) continue;
|
|
15
|
-
if (result === null || typeof result !== "object") throw new TypeError("Object expected");
|
|
16
|
-
if (_ = accept(result.get)) descriptor.get = _;
|
|
17
|
-
if (_ = accept(result.set)) descriptor.set = _;
|
|
18
|
-
if (_ = accept(result.init)) initializers.unshift(_);
|
|
19
|
-
}
|
|
20
|
-
else if (_ = accept(result)) {
|
|
21
|
-
if (kind === "field") initializers.unshift(_);
|
|
22
|
-
else descriptor[key] = _;
|
|
23
|
-
}
|
|
24
|
-
}
|
|
25
|
-
if (target) Object.defineProperty(target, contextIn.name, descriptor);
|
|
26
|
-
done = true;
|
|
27
|
-
};
|
|
28
|
-
var __runInitializers = (this && this.__runInitializers) || function (thisArg, initializers, value) {
|
|
29
|
-
var useValue = arguments.length > 2;
|
|
30
|
-
for (var i = 0; i < initializers.length; i++) {
|
|
31
|
-
value = useValue ? initializers[i].call(thisArg, value) : initializers[i].call(thisArg);
|
|
32
|
-
}
|
|
33
|
-
return useValue ? value : void 0;
|
|
34
|
-
};
|
|
35
|
-
import { Comment, DeclarationReflection, ReflectionKind, ReflectionType, SignatureReflection, } from "../../models/index.js";
|
|
36
|
-
import { ConverterComponent } from "../components.js";
|
|
37
|
-
import { Option } from "../../utils/index.js";
|
|
38
|
-
import { DefaultMap, i18n, parseDeclarationReference, zip } from "#utils";
|
|
39
|
-
import { resolveDeclarationReference } from "../comments/declarationReferenceResolver.js";
|
|
40
|
-
import { ApplicationEvents } from "../../application-events.js";
|
|
41
|
-
import { ConverterEvents } from "../converter-events.js";
|
|
42
|
-
/**
|
|
43
|
-
* A plugin that handles `@inheritDoc` tags by copying documentation from another API item.
|
|
44
|
-
* It is NOT responsible for handling bare JSDoc style `@inheritDoc` tags which do not specify
|
|
45
|
-
* a target to inherit from. Those are handled by the ImplementsPlugin class.
|
|
46
|
-
*
|
|
47
|
-
* What gets copied:
|
|
48
|
-
* - short text
|
|
49
|
-
* - text
|
|
50
|
-
* - `@remarks` block
|
|
51
|
-
* - `@params` block
|
|
52
|
-
* - `@typeParam` block
|
|
53
|
-
* - `@return` block
|
|
54
|
-
*/
|
|
55
|
-
let InheritDocPlugin = (() => {
|
|
56
|
-
let _classSuper = ConverterComponent;
|
|
57
|
-
let _validation_decorators;
|
|
58
|
-
let _validation_initializers = [];
|
|
59
|
-
let _validation_extraInitializers = [];
|
|
60
|
-
return class InheritDocPlugin extends _classSuper {
|
|
61
|
-
static {
|
|
62
|
-
const _metadata = typeof Symbol === "function" && Symbol.metadata ? Object.create(_classSuper[Symbol.metadata] ?? null) : void 0;
|
|
63
|
-
_validation_decorators = [Option("validation")];
|
|
64
|
-
__esDecorate(this, null, _validation_decorators, { kind: "accessor", name: "validation", static: false, private: false, access: { has: obj => "validation" in obj, get: obj => obj.validation, set: (obj, value) => { obj.validation = value; } }, metadata: _metadata }, _validation_initializers, _validation_extraInitializers);
|
|
65
|
-
if (_metadata) Object.defineProperty(this, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });
|
|
66
|
-
}
|
|
67
|
-
#validation_accessor_storage = __runInitializers(this, _validation_initializers, void 0);
|
|
68
|
-
get validation() { return this.#validation_accessor_storage; }
|
|
69
|
-
set validation(value) { this.#validation_accessor_storage = value; }
|
|
70
|
-
// Key is depended on by Values
|
|
71
|
-
dependencies = (__runInitializers(this, _validation_extraInitializers), new DefaultMap(() => []));
|
|
72
|
-
/**
|
|
73
|
-
* Create a new InheritDocPlugin instance.
|
|
74
|
-
*/
|
|
75
|
-
constructor(owner) {
|
|
76
|
-
super(owner);
|
|
77
|
-
this.owner.on(ConverterEvents.RESOLVE_END, (context) => this.processInheritDoc(context.project));
|
|
78
|
-
this.application.on(ApplicationEvents.REVIVE, this.processInheritDoc.bind(this));
|
|
79
|
-
}
|
|
80
|
-
/**
|
|
81
|
-
* Traverse through reflection descendant to check for `inheritDoc` tag.
|
|
82
|
-
* If encountered, the parameter of the tag is used to determine a source reflection
|
|
83
|
-
* that will provide actual comment.
|
|
84
|
-
*/
|
|
85
|
-
processInheritDoc(project) {
|
|
86
|
-
for (const id in project.reflections) {
|
|
87
|
-
const reflection = project.reflections[id];
|
|
88
|
-
const source = extractInheritDocTagReference(reflection);
|
|
89
|
-
if (!source)
|
|
90
|
-
continue;
|
|
91
|
-
const declRef = parseDeclarationReference(source, 0, source.length);
|
|
92
|
-
if (!declRef || /\S/.test(source.substring(declRef[1]))) {
|
|
93
|
-
this.application.logger.warn(i18n.declaration_reference_in_inheritdoc_for_0_not_fully_parsed(reflection.getFriendlyFullName()));
|
|
94
|
-
}
|
|
95
|
-
let sourceRefl = declRef && resolveDeclarationReference(reflection, declRef[0]);
|
|
96
|
-
if (reflection instanceof SignatureReflection) {
|
|
97
|
-
// Assumes that if there are overloads, they are declared in the same order as the parent.
|
|
98
|
-
// TS doesn't check this, but if a user messes this up then they are almost
|
|
99
|
-
// guaranteed to run into bugs where they can't call a method on a child class
|
|
100
|
-
// but if they assign (without a type assertion) that child to a variable of the parent class
|
|
101
|
-
// then they can call the method.
|
|
102
|
-
if (sourceRefl instanceof DeclarationReflection) {
|
|
103
|
-
const index = reflection.parent
|
|
104
|
-
.getAllSignatures()
|
|
105
|
-
.indexOf(reflection);
|
|
106
|
-
sourceRefl = sourceRefl.getAllSignatures()[index] || sourceRefl;
|
|
107
|
-
}
|
|
108
|
-
}
|
|
109
|
-
if (sourceRefl instanceof DeclarationReflection &&
|
|
110
|
-
sourceRefl.kindOf(ReflectionKind.Accessor)) {
|
|
111
|
-
// Accessors, like functions, never have comments on their actual root reflection.
|
|
112
|
-
// If the user didn't specify whether to inherit from the getter or setter, then implicitly
|
|
113
|
-
// try to inherit from the getter, #1968.
|
|
114
|
-
sourceRefl = sourceRefl.getSignature || sourceRefl.setSignature;
|
|
115
|
-
}
|
|
116
|
-
if (!sourceRefl) {
|
|
117
|
-
if (this.validation.invalidLink) {
|
|
118
|
-
this.application.logger.warn(i18n.failed_to_find_0_to_inherit_comment_from_in_1(source, reflection.getFriendlyFullName()));
|
|
119
|
-
}
|
|
120
|
-
continue;
|
|
121
|
-
}
|
|
122
|
-
this.copyComment(sourceRefl, reflection);
|
|
123
|
-
}
|
|
124
|
-
this.createCircularDependencyWarnings();
|
|
125
|
-
this.dependencies.clear();
|
|
126
|
-
}
|
|
127
|
-
copyComment(source, target) {
|
|
128
|
-
if (!target.comment)
|
|
129
|
-
return;
|
|
130
|
-
if (!source.comment &&
|
|
131
|
-
source instanceof DeclarationReflection &&
|
|
132
|
-
source.signatures) {
|
|
133
|
-
source = source.signatures[0];
|
|
134
|
-
}
|
|
135
|
-
if (!source.comment &&
|
|
136
|
-
source instanceof DeclarationReflection &&
|
|
137
|
-
source.type instanceof ReflectionType &&
|
|
138
|
-
source.type.declaration.signatures) {
|
|
139
|
-
source = source.type.declaration.signatures[0];
|
|
140
|
-
}
|
|
141
|
-
if (!source.comment) {
|
|
142
|
-
this.application.logger.warn(i18n.reflection_0_tried_to_copy_comment_from_1_but_source_had_no_comment(target.getFullName(), source.getFullName()));
|
|
143
|
-
return;
|
|
144
|
-
}
|
|
145
|
-
// If the source also has a @inheritDoc tag, we can't do anything yet.
|
|
146
|
-
// We'll try again later, once we've resolved the source's @inheritDoc reference.
|
|
147
|
-
if (extractInheritDocTagReference(source)) {
|
|
148
|
-
this.dependencies.get(source).push(target);
|
|
149
|
-
return;
|
|
150
|
-
}
|
|
151
|
-
target.comment.removeTags("@inheritDoc");
|
|
152
|
-
target.comment.removeTags("@remarks");
|
|
153
|
-
target.comment.removeTags("@returns");
|
|
154
|
-
target.comment.summary = Comment.cloneDisplayParts(source.comment.summary);
|
|
155
|
-
const remarks = source.comment.getTag("@remarks");
|
|
156
|
-
if (remarks) {
|
|
157
|
-
target.comment.blockTags.unshift(remarks.clone());
|
|
158
|
-
}
|
|
159
|
-
const returns = source.comment.getTag("@returns");
|
|
160
|
-
if (returns) {
|
|
161
|
-
target.comment.blockTags.push(returns.clone());
|
|
162
|
-
}
|
|
163
|
-
if (source instanceof SignatureReflection &&
|
|
164
|
-
target instanceof SignatureReflection) {
|
|
165
|
-
copySummaries(source.parameters, target.parameters);
|
|
166
|
-
copySummaries(source.typeParameters, target.typeParameters);
|
|
167
|
-
}
|
|
168
|
-
else if (source instanceof DeclarationReflection &&
|
|
169
|
-
target instanceof DeclarationReflection) {
|
|
170
|
-
copySummaries(source.typeParameters, target.typeParameters);
|
|
171
|
-
}
|
|
172
|
-
// Now copy the comment for anyone who depends on me.
|
|
173
|
-
const dependent = this.dependencies.get(target);
|
|
174
|
-
this.dependencies.delete(target);
|
|
175
|
-
for (const target2 of dependent) {
|
|
176
|
-
this.copyComment(target, target2);
|
|
177
|
-
}
|
|
178
|
-
}
|
|
179
|
-
createCircularDependencyWarnings() {
|
|
180
|
-
const unwarned = new Set(this.dependencies.keys());
|
|
181
|
-
const generateWarning = (orig) => {
|
|
182
|
-
const parts = [orig.name];
|
|
183
|
-
unwarned.delete(orig);
|
|
184
|
-
let work = orig;
|
|
185
|
-
do {
|
|
186
|
-
work = this.dependencies.get(work)[0];
|
|
187
|
-
unwarned.delete(work);
|
|
188
|
-
parts.push(work.name);
|
|
189
|
-
} while (!this.dependencies.get(work).includes(orig));
|
|
190
|
-
parts.push(orig.name);
|
|
191
|
-
this.application.logger.warn(i18n.inheritdoc_circular_inheritance_chain_0(parts.reverse().join(" -> ")));
|
|
192
|
-
};
|
|
193
|
-
for (const orig of this.dependencies.keys()) {
|
|
194
|
-
if (unwarned.has(orig)) {
|
|
195
|
-
generateWarning(orig);
|
|
196
|
-
}
|
|
197
|
-
}
|
|
198
|
-
}
|
|
199
|
-
};
|
|
200
|
-
})();
|
|
201
|
-
export { InheritDocPlugin };
|
|
202
|
-
function copySummaries(source, target) {
|
|
203
|
-
for (const [s, t] of zip(source || [], target || [])) {
|
|
204
|
-
t.comment = new Comment(s.comment?.summary);
|
|
205
|
-
t.comment.sourcePath = s.comment?.sourcePath;
|
|
206
|
-
}
|
|
207
|
-
}
|
|
208
|
-
function extractInheritDocTagReference(reflection) {
|
|
209
|
-
const comment = reflection.comment;
|
|
210
|
-
if (!comment)
|
|
211
|
-
return;
|
|
212
|
-
const blockTag = comment.blockTags.find((tag) => tag.tag === "@inheritDoc");
|
|
213
|
-
if (blockTag) {
|
|
214
|
-
return blockTag.name;
|
|
215
|
-
}
|
|
216
|
-
const inlineTag = comment.summary.find((part) => part.kind === "inline-tag" && part.tag === "@inheritDoc");
|
|
217
|
-
if (inlineTag) {
|
|
218
|
-
return inlineTag.text;
|
|
219
|
-
}
|
|
220
|
-
}
|
|
@@ -1,88 +0,0 @@
|
|
|
1
|
-
var __esDecorate = (this && this.__esDecorate) || function (ctor, descriptorIn, decorators, contextIn, initializers, extraInitializers) {
|
|
2
|
-
function accept(f) { if (f !== void 0 && typeof f !== "function") throw new TypeError("Function expected"); return f; }
|
|
3
|
-
var kind = contextIn.kind, key = kind === "getter" ? "get" : kind === "setter" ? "set" : "value";
|
|
4
|
-
var target = !descriptorIn && ctor ? contextIn["static"] ? ctor : ctor.prototype : null;
|
|
5
|
-
var descriptor = descriptorIn || (target ? Object.getOwnPropertyDescriptor(target, contextIn.name) : {});
|
|
6
|
-
var _, done = false;
|
|
7
|
-
for (var i = decorators.length - 1; i >= 0; i--) {
|
|
8
|
-
var context = {};
|
|
9
|
-
for (var p in contextIn) context[p] = p === "access" ? {} : contextIn[p];
|
|
10
|
-
for (var p in contextIn.access) context.access[p] = contextIn.access[p];
|
|
11
|
-
context.addInitializer = function (f) { if (done) throw new TypeError("Cannot add initializers after decoration has completed"); extraInitializers.push(accept(f || null)); };
|
|
12
|
-
var result = (0, decorators[i])(kind === "accessor" ? { get: descriptor.get, set: descriptor.set } : descriptor[key], context);
|
|
13
|
-
if (kind === "accessor") {
|
|
14
|
-
if (result === void 0) continue;
|
|
15
|
-
if (result === null || typeof result !== "object") throw new TypeError("Object expected");
|
|
16
|
-
if (_ = accept(result.get)) descriptor.get = _;
|
|
17
|
-
if (_ = accept(result.set)) descriptor.set = _;
|
|
18
|
-
if (_ = accept(result.init)) initializers.unshift(_);
|
|
19
|
-
}
|
|
20
|
-
else if (_ = accept(result)) {
|
|
21
|
-
if (kind === "field") initializers.unshift(_);
|
|
22
|
-
else descriptor[key] = _;
|
|
23
|
-
}
|
|
24
|
-
}
|
|
25
|
-
if (target) Object.defineProperty(target, contextIn.name, descriptor);
|
|
26
|
-
done = true;
|
|
27
|
-
};
|
|
28
|
-
var __runInitializers = (this && this.__runInitializers) || function (thisArg, initializers, value) {
|
|
29
|
-
var useValue = arguments.length > 2;
|
|
30
|
-
for (var i = 0; i < initializers.length; i++) {
|
|
31
|
-
value = useValue ? initializers[i].call(thisArg, value) : initializers[i].call(thisArg);
|
|
32
|
-
}
|
|
33
|
-
return useValue ? value : void 0;
|
|
34
|
-
};
|
|
35
|
-
import { ConverterComponent } from "../components.js";
|
|
36
|
-
import { ConverterEvents } from "../converter-events.js";
|
|
37
|
-
import { Option } from "../../utils/index.js";
|
|
38
|
-
import { discoverAllReferenceTypes } from "../../utils/reflections.js";
|
|
39
|
-
import { ApplicationEvents } from "../../application-events.js";
|
|
40
|
-
/**
|
|
41
|
-
* A plugin that resolves `{@link Foo}` tags.
|
|
42
|
-
*/
|
|
43
|
-
let LinkResolverPlugin = (() => {
|
|
44
|
-
let _classSuper = ConverterComponent;
|
|
45
|
-
let _validation_decorators;
|
|
46
|
-
let _validation_initializers = [];
|
|
47
|
-
let _validation_extraInitializers = [];
|
|
48
|
-
return class LinkResolverPlugin extends _classSuper {
|
|
49
|
-
static {
|
|
50
|
-
const _metadata = typeof Symbol === "function" && Symbol.metadata ? Object.create(_classSuper[Symbol.metadata] ?? null) : void 0;
|
|
51
|
-
_validation_decorators = [Option("validation")];
|
|
52
|
-
__esDecorate(this, null, _validation_decorators, { kind: "accessor", name: "validation", static: false, private: false, access: { has: obj => "validation" in obj, get: obj => obj.validation, set: (obj, value) => { obj.validation = value; } }, metadata: _metadata }, _validation_initializers, _validation_extraInitializers);
|
|
53
|
-
if (_metadata) Object.defineProperty(this, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });
|
|
54
|
-
}
|
|
55
|
-
#validation_accessor_storage = __runInitializers(this, _validation_initializers, void 0);
|
|
56
|
-
get validation() { return this.#validation_accessor_storage; }
|
|
57
|
-
set validation(value) { this.#validation_accessor_storage = value; }
|
|
58
|
-
constructor(owner) {
|
|
59
|
-
super(owner);
|
|
60
|
-
__runInitializers(this, _validation_extraInitializers);
|
|
61
|
-
this.owner.on(ConverterEvents.RESOLVE_END, this.onResolve.bind(this), -300);
|
|
62
|
-
this.application.on(ApplicationEvents.REVIVE, this.resolveLinks.bind(this), -300);
|
|
63
|
-
}
|
|
64
|
-
onResolve(context) {
|
|
65
|
-
this.resolveLinks(context.project);
|
|
66
|
-
}
|
|
67
|
-
resolveLinks(project) {
|
|
68
|
-
for (const id in project.reflections) {
|
|
69
|
-
const reflection = project.reflections[id];
|
|
70
|
-
this.owner.resolveLinks(reflection);
|
|
71
|
-
}
|
|
72
|
-
for (const { type, owner } of discoverAllReferenceTypes(project, false)) {
|
|
73
|
-
if (!type.reflection) {
|
|
74
|
-
const resolveResult = this.owner.resolveExternalLink(type.toDeclarationReference(), owner, undefined, type.symbolId);
|
|
75
|
-
switch (typeof resolveResult) {
|
|
76
|
-
case "string":
|
|
77
|
-
type.externalUrl = resolveResult;
|
|
78
|
-
break;
|
|
79
|
-
case "object":
|
|
80
|
-
type.externalUrl = resolveResult.target;
|
|
81
|
-
break;
|
|
82
|
-
}
|
|
83
|
-
}
|
|
84
|
-
}
|
|
85
|
-
}
|
|
86
|
-
};
|
|
87
|
-
})();
|
|
88
|
-
export { LinkResolverPlugin };
|
|
@@ -1,50 +0,0 @@
|
|
|
1
|
-
import { ok } from "assert";
|
|
2
|
-
import { ApplicationEvents } from "../../application-events.js";
|
|
3
|
-
import { Comment, ReflectionKind } from "../../models/index.js";
|
|
4
|
-
import { ConverterComponent } from "../components.js";
|
|
5
|
-
import { ConverterEvents } from "../converter-events.js";
|
|
6
|
-
import { i18n } from "#utils";
|
|
7
|
-
/**
|
|
8
|
-
* Handles `@mergeModuleWith` tags in comments
|
|
9
|
-
* Warnings if resolution failed are emitted during the validation step, not here.
|
|
10
|
-
*/
|
|
11
|
-
export class MergeModuleWithPlugin extends ConverterComponent {
|
|
12
|
-
constructor(owner) {
|
|
13
|
-
super(owner);
|
|
14
|
-
// Note: This happens before grouping/categorizing
|
|
15
|
-
this.owner.on(ConverterEvents.RESOLVE_BEGIN, this.onResolveBegin.bind(this), 10000);
|
|
16
|
-
this.application.on(ApplicationEvents.REVIVE, this.onRevive.bind(this), 10000);
|
|
17
|
-
}
|
|
18
|
-
onResolveBegin(context) {
|
|
19
|
-
this.onRevive(context.project);
|
|
20
|
-
}
|
|
21
|
-
onRevive(project) {
|
|
22
|
-
const mods = project.getReflectionsByKind(ReflectionKind.SomeModule);
|
|
23
|
-
for (const refl of mods) {
|
|
24
|
-
this.checkAndMerge(refl);
|
|
25
|
-
}
|
|
26
|
-
}
|
|
27
|
-
checkAndMerge(refl) {
|
|
28
|
-
ok(refl.isDeclaration());
|
|
29
|
-
const tag = refl.comment?.getTag("@mergeModuleWith");
|
|
30
|
-
if (!tag)
|
|
31
|
-
return;
|
|
32
|
-
const project = refl.project;
|
|
33
|
-
const targetStr = Comment.combineDisplayParts(tag.content);
|
|
34
|
-
const target = targetStr === "<project>"
|
|
35
|
-
? project
|
|
36
|
-
: project.getChildByName(targetStr);
|
|
37
|
-
if (!target?.isDeclaration() && !target?.isProject()) {
|
|
38
|
-
return;
|
|
39
|
-
}
|
|
40
|
-
let tempRefl = refl;
|
|
41
|
-
while (tempRefl !== project) {
|
|
42
|
-
if (tempRefl === target) {
|
|
43
|
-
this.application.logger.warn(i18n.reflection_0_tried_to_merge_into_child_1(refl.getFriendlyFullName(), target.getFriendlyFullName()));
|
|
44
|
-
}
|
|
45
|
-
tempRefl = tempRefl.parent;
|
|
46
|
-
}
|
|
47
|
-
this.application.logger.verbose(`Merging ${refl.getFullName()} into ${target.getFullName()}`);
|
|
48
|
-
project.mergeReflections(refl, target);
|
|
49
|
-
}
|
|
50
|
-
}
|