@depup/typedoc 0.28.17-depup.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +201 -0
- package/README.md +34 -0
- package/bin/package.json +3 -0
- package/bin/typedoc +24 -0
- package/changes.json +22 -0
- package/dist/browser-locales/de.d.ts +2 -0
- package/dist/browser-locales/de.js +62 -0
- package/dist/browser-locales/en.d.ts +2 -0
- package/dist/browser-locales/en.js +62 -0
- package/dist/browser-locales/ja.d.ts +2 -0
- package/dist/browser-locales/ja.js +62 -0
- package/dist/browser-locales/ko.d.ts +2 -0
- package/dist/browser-locales/ko.js +62 -0
- package/dist/browser-locales/zh.d.ts +2 -0
- package/dist/browser-locales/zh.js +62 -0
- package/dist/browser-utils.d.ts +3 -0
- package/dist/browser-utils.js +3 -0
- package/dist/index.d.ts +49 -0
- package/dist/index.js +46 -0
- package/dist/lib/application-events.d.ts +5 -0
- package/dist/lib/application-events.js +5 -0
- package/dist/lib/application.d.ts +195 -0
- package/dist/lib/application.js +715 -0
- package/dist/lib/cli.d.ts +1 -0
- package/dist/lib/cli.js +111 -0
- package/dist/lib/converter/comments/blockLexer.d.ts +4 -0
- package/dist/lib/converter/comments/blockLexer.js +391 -0
- package/dist/lib/converter/comments/declarationReferenceResolver.d.ts +3 -0
- package/dist/lib/converter/comments/declarationReferenceResolver.js +218 -0
- package/dist/lib/converter/comments/discovery.d.ts +14 -0
- package/dist/lib/converter/comments/discovery.js +563 -0
- package/dist/lib/converter/comments/index.d.ts +37 -0
- package/dist/lib/converter/comments/index.js +241 -0
- package/dist/lib/converter/comments/lexer.d.ts +17 -0
- package/dist/lib/converter/comments/lexer.js +10 -0
- package/dist/lib/converter/comments/lineLexer.d.ts +3 -0
- package/dist/lib/converter/comments/lineLexer.js +279 -0
- package/dist/lib/converter/comments/linkResolver.d.ts +20 -0
- package/dist/lib/converter/comments/linkResolver.js +186 -0
- package/dist/lib/converter/comments/parser.d.ts +18 -0
- package/dist/lib/converter/comments/parser.js +538 -0
- package/dist/lib/converter/comments/rawLexer.d.ts +8 -0
- package/dist/lib/converter/comments/rawLexer.js +218 -0
- package/dist/lib/converter/comments/tagName.d.ts +8 -0
- package/dist/lib/converter/comments/tagName.js +58 -0
- package/dist/lib/converter/comments/textParser.d.ts +33 -0
- package/dist/lib/converter/comments/textParser.js +372 -0
- package/dist/lib/converter/components.d.ts +4 -0
- package/dist/lib/converter/components.js +3 -0
- package/dist/lib/converter/context.d.ts +101 -0
- package/dist/lib/converter/context.js +311 -0
- package/dist/lib/converter/convert-expression.d.ts +9 -0
- package/dist/lib/converter/convert-expression.js +58 -0
- package/dist/lib/converter/converter-events.d.ts +13 -0
- package/dist/lib/converter/converter-events.js +13 -0
- package/dist/lib/converter/converter.d.ts +238 -0
- package/dist/lib/converter/converter.js +705 -0
- package/dist/lib/converter/factories/index-signature.d.ts +3 -0
- package/dist/lib/converter/factories/index-signature.js +50 -0
- package/dist/lib/converter/factories/signature.d.ts +14 -0
- package/dist/lib/converter/factories/signature.js +353 -0
- package/dist/lib/converter/factories/symbol-id.d.ts +3 -0
- package/dist/lib/converter/factories/symbol-id.js +47 -0
- package/dist/lib/converter/index.d.ts +5 -0
- package/dist/lib/converter/index.js +3 -0
- package/dist/lib/converter/jsdoc.d.ts +4 -0
- package/dist/lib/converter/jsdoc.js +135 -0
- package/dist/lib/converter/plugins/CategoryPlugin.d.ts +48 -0
- package/dist/lib/converter/plugins/CategoryPlugin.js +278 -0
- package/dist/lib/converter/plugins/CommentPlugin.d.ts +128 -0
- package/dist/lib/converter/plugins/CommentPlugin.js +770 -0
- package/dist/lib/converter/plugins/GroupPlugin.d.ts +48 -0
- package/dist/lib/converter/plugins/GroupPlugin.js +281 -0
- package/dist/lib/converter/plugins/ImplementsPlugin.d.ts +42 -0
- package/dist/lib/converter/plugins/ImplementsPlugin.js +438 -0
- package/dist/lib/converter/plugins/IncludePlugin.d.ts +14 -0
- package/dist/lib/converter/plugins/IncludePlugin.js +254 -0
- package/dist/lib/converter/plugins/InheritDocPlugin.d.ts +32 -0
- package/dist/lib/converter/plugins/InheritDocPlugin.js +220 -0
- package/dist/lib/converter/plugins/LinkResolverPlugin.d.ts +13 -0
- package/dist/lib/converter/plugins/LinkResolverPlugin.js +88 -0
- package/dist/lib/converter/plugins/MergeModuleWithPlugin.d.ts +12 -0
- package/dist/lib/converter/plugins/MergeModuleWithPlugin.js +50 -0
- package/dist/lib/converter/plugins/PackagePlugin.d.ts +31 -0
- package/dist/lib/converter/plugins/PackagePlugin.js +188 -0
- package/dist/lib/converter/plugins/SourcePlugin.d.ts +36 -0
- package/dist/lib/converter/plugins/SourcePlugin.js +215 -0
- package/dist/lib/converter/plugins/TypePlugin.d.ts +16 -0
- package/dist/lib/converter/plugins/TypePlugin.js +108 -0
- package/dist/lib/converter/plugins/index.d.ts +10 -0
- package/dist/lib/converter/plugins/index.js +10 -0
- package/dist/lib/converter/symbols.d.ts +3 -0
- package/dist/lib/converter/symbols.js +861 -0
- package/dist/lib/converter/types.d.ts +10 -0
- package/dist/lib/converter/types.js +833 -0
- package/dist/lib/converter/utils/nodes.d.ts +7 -0
- package/dist/lib/converter/utils/nodes.js +26 -0
- package/dist/lib/converter/utils/reflections.d.ts +2 -0
- package/dist/lib/converter/utils/reflections.js +17 -0
- package/dist/lib/converter/utils/repository.d.ts +96 -0
- package/dist/lib/converter/utils/repository.js +295 -0
- package/dist/lib/converter/utils/symbols.d.ts +2 -0
- package/dist/lib/converter/utils/symbols.js +12 -0
- package/dist/lib/debug/index.d.ts +2 -0
- package/dist/lib/debug/index.js +2 -0
- package/dist/lib/debug/reflectionLifetimes.d.ts +3 -0
- package/dist/lib/debug/reflectionLifetimes.js +27 -0
- package/dist/lib/debug/rendererUrls.d.ts +6 -0
- package/dist/lib/debug/rendererUrls.js +68 -0
- package/dist/lib/internationalization/index.d.ts +7 -0
- package/dist/lib/internationalization/index.js +7 -0
- package/dist/lib/internationalization/internationalization.d.ts +65 -0
- package/dist/lib/internationalization/internationalization.js +64 -0
- package/dist/lib/internationalization/locale-utils.cjs +8 -0
- package/dist/lib/internationalization/locale-utils.d.cts +8 -0
- package/dist/lib/internationalization/locales/de.cjs +401 -0
- package/dist/lib/internationalization/locales/de.d.cts +368 -0
- package/dist/lib/internationalization/locales/en.cjs +411 -0
- package/dist/lib/internationalization/locales/en.d.cts +380 -0
- package/dist/lib/internationalization/locales/ja.cjs +320 -0
- package/dist/lib/internationalization/locales/ja.d.cts +307 -0
- package/dist/lib/internationalization/locales/ko.cjs +233 -0
- package/dist/lib/internationalization/locales/ko.d.cts +221 -0
- package/dist/lib/internationalization/locales/zh.cjs +488 -0
- package/dist/lib/internationalization/locales/zh.d.cts +452 -0
- package/dist/lib/internationalization/translatable.d.ts +21 -0
- package/dist/lib/internationalization/translatable.js +8 -0
- package/dist/lib/models/Comment.d.ts +241 -0
- package/dist/lib/models/Comment.js +534 -0
- package/dist/lib/models/ContainerReflection.d.ts +56 -0
- package/dist/lib/models/ContainerReflection.js +159 -0
- package/dist/lib/models/DeclarationReflection.d.ts +149 -0
- package/dist/lib/models/DeclarationReflection.js +287 -0
- package/dist/lib/models/DocumentReflection.d.ts +32 -0
- package/dist/lib/models/DocumentReflection.js +66 -0
- package/dist/lib/models/FileRegistry.d.ts +46 -0
- package/dist/lib/models/FileRegistry.js +133 -0
- package/dist/lib/models/ParameterReflection.d.ts +21 -0
- package/dist/lib/models/ParameterReflection.js +39 -0
- package/dist/lib/models/ProjectReflection.d.ts +112 -0
- package/dist/lib/models/ProjectReflection.js +417 -0
- package/dist/lib/models/ReferenceReflection.d.ts +49 -0
- package/dist/lib/models/ReferenceReflection.js +85 -0
- package/dist/lib/models/Reflection.d.ts +229 -0
- package/dist/lib/models/Reflection.js +495 -0
- package/dist/lib/models/ReflectionCategory.d.ts +31 -0
- package/dist/lib/models/ReflectionCategory.js +56 -0
- package/dist/lib/models/ReflectionGroup.d.ts +38 -0
- package/dist/lib/models/ReflectionGroup.js +72 -0
- package/dist/lib/models/ReflectionSymbolId.d.ts +63 -0
- package/dist/lib/models/ReflectionSymbolId.js +85 -0
- package/dist/lib/models/SignatureReflection.d.ts +50 -0
- package/dist/lib/models/SignatureReflection.js +96 -0
- package/dist/lib/models/SourceReference.d.ts +33 -0
- package/dist/lib/models/SourceReference.js +50 -0
- package/dist/lib/models/TypeParameterReflection.d.ts +30 -0
- package/dist/lib/models/TypeParameterReflection.js +45 -0
- package/dist/lib/models/index.d.ts +19 -0
- package/dist/lib/models/index.js +19 -0
- package/dist/lib/models/kind.d.ts +84 -0
- package/dist/lib/models/kind.js +231 -0
- package/dist/lib/models/types.d.ts +553 -0
- package/dist/lib/models/types.js +1296 -0
- package/dist/lib/models/utils.d.ts +1 -0
- package/dist/lib/models/utils.js +26 -0
- package/dist/lib/models/variant.d.ts +21 -0
- package/dist/lib/models/variant.js +1 -0
- package/dist/lib/output/components.d.ts +53 -0
- package/dist/lib/output/components.js +133 -0
- package/dist/lib/output/events.d.ts +175 -0
- package/dist/lib/output/events.js +195 -0
- package/dist/lib/output/formatter.d.ts +88 -0
- package/dist/lib/output/formatter.js +660 -0
- package/dist/lib/output/index.d.ts +9 -0
- package/dist/lib/output/index.js +7 -0
- package/dist/lib/output/output.d.ts +14 -0
- package/dist/lib/output/output.js +92 -0
- package/dist/lib/output/plugins/AssetsPlugin.d.ts +20 -0
- package/dist/lib/output/plugins/AssetsPlugin.js +160 -0
- package/dist/lib/output/plugins/HierarchyPlugin.d.ts +7 -0
- package/dist/lib/output/plugins/HierarchyPlugin.js +65 -0
- package/dist/lib/output/plugins/IconsPlugin.d.ts +12 -0
- package/dist/lib/output/plugins/IconsPlugin.js +54 -0
- package/dist/lib/output/plugins/JavascriptIndexPlugin.d.ts +22 -0
- package/dist/lib/output/plugins/JavascriptIndexPlugin.js +222 -0
- package/dist/lib/output/plugins/NavigationPlugin.d.ts +7 -0
- package/dist/lib/output/plugins/NavigationPlugin.js +23 -0
- package/dist/lib/output/plugins/SitemapPlugin.d.ts +8 -0
- package/dist/lib/output/plugins/SitemapPlugin.js +82 -0
- package/dist/lib/output/plugins/index.d.ts +7 -0
- package/dist/lib/output/plugins/index.js +7 -0
- package/dist/lib/output/renderer.d.ts +227 -0
- package/dist/lib/output/renderer.js +387 -0
- package/dist/lib/output/router.d.ts +187 -0
- package/dist/lib/output/router.js +520 -0
- package/dist/lib/output/theme.d.ts +22 -0
- package/dist/lib/output/theme.js +17 -0
- package/dist/lib/output/themes/MarkedPlugin.d.ts +62 -0
- package/dist/lib/output/themes/MarkedPlugin.js +461 -0
- package/dist/lib/output/themes/default/DefaultTheme.d.ts +72 -0
- package/dist/lib/output/themes/default/DefaultTheme.js +367 -0
- package/dist/lib/output/themes/default/DefaultThemeRenderContext.d.ts +105 -0
- package/dist/lib/output/themes/default/DefaultThemeRenderContext.js +151 -0
- package/dist/lib/output/themes/default/Slugger.d.ts +13 -0
- package/dist/lib/output/themes/default/Slugger.js +60 -0
- package/dist/lib/output/themes/default/layouts/default.d.ts +6 -0
- package/dist/lib/output/themes/default/layouts/default.js +89 -0
- package/dist/lib/output/themes/default/partials/anchor-icon.d.ts +5 -0
- package/dist/lib/output/themes/default/partials/anchor-icon.js +9 -0
- package/dist/lib/output/themes/default/partials/breadcrumb.d.ts +4 -0
- package/dist/lib/output/themes/default/partials/breadcrumb.js +11 -0
- package/dist/lib/output/themes/default/partials/comment.d.ts +8 -0
- package/dist/lib/output/themes/default/partials/comment.js +80 -0
- package/dist/lib/output/themes/default/partials/footer.d.ts +3 -0
- package/dist/lib/output/themes/default/partials/footer.js +37 -0
- package/dist/lib/output/themes/default/partials/header.d.ts +5 -0
- package/dist/lib/output/themes/default/partials/header.js +39 -0
- package/dist/lib/output/themes/default/partials/hierarchy.d.ts +4 -0
- package/dist/lib/output/themes/default/partials/hierarchy.js +32 -0
- package/dist/lib/output/themes/default/partials/icon.d.ts +20 -0
- package/dist/lib/output/themes/default/partials/icon.js +101 -0
- package/dist/lib/output/themes/default/partials/index.d.ts +4 -0
- package/dist/lib/output/themes/default/partials/index.js +24 -0
- package/dist/lib/output/themes/default/partials/member.d.ts +4 -0
- package/dist/lib/output/themes/default/partials/member.declaration.d.ts +4 -0
- package/dist/lib/output/themes/default/partials/member.declaration.js +35 -0
- package/dist/lib/output/themes/default/partials/member.getterSetter.d.ts +4 -0
- package/dist/lib/output/themes/default/partials/member.getterSetter.js +12 -0
- package/dist/lib/output/themes/default/partials/member.js +36 -0
- package/dist/lib/output/themes/default/partials/member.signature.body.d.ts +6 -0
- package/dist/lib/output/themes/default/partials/member.signature.body.js +33 -0
- package/dist/lib/output/themes/default/partials/member.signature.title.d.ts +5 -0
- package/dist/lib/output/themes/default/partials/member.signature.title.js +9 -0
- package/dist/lib/output/themes/default/partials/member.signatures.d.ts +4 -0
- package/dist/lib/output/themes/default/partials/member.signatures.js +9 -0
- package/dist/lib/output/themes/default/partials/member.sources.d.ts +4 -0
- package/dist/lib/output/themes/default/partials/member.sources.js +55 -0
- package/dist/lib/output/themes/default/partials/members.d.ts +4 -0
- package/dist/lib/output/themes/default/partials/members.js +17 -0
- package/dist/lib/output/themes/default/partials/moduleReflection.d.ts +5 -0
- package/dist/lib/output/themes/default/partials/moduleReflection.js +68 -0
- package/dist/lib/output/themes/default/partials/navigation.d.ts +10 -0
- package/dist/lib/output/themes/default/partials/navigation.js +144 -0
- package/dist/lib/output/themes/default/partials/reflectionPreview.d.ts +4 -0
- package/dist/lib/output/themes/default/partials/reflectionPreview.js +26 -0
- package/dist/lib/output/themes/default/partials/toolbar.d.ts +5 -0
- package/dist/lib/output/themes/default/partials/toolbar.js +13 -0
- package/dist/lib/output/themes/default/partials/type.d.ts +5 -0
- package/dist/lib/output/themes/default/partials/type.js +9 -0
- package/dist/lib/output/themes/default/partials/typeAndParent.d.ts +4 -0
- package/dist/lib/output/themes/default/partials/typeAndParent.js +28 -0
- package/dist/lib/output/themes/default/partials/typeDetails.d.ts +8 -0
- package/dist/lib/output/themes/default/partials/typeDetails.js +284 -0
- package/dist/lib/output/themes/default/partials/typeParameters.d.ts +4 -0
- package/dist/lib/output/themes/default/partials/typeParameters.js +26 -0
- package/dist/lib/output/themes/default/templates/document.d.ts +5 -0
- package/dist/lib/output/themes/default/templates/document.js +3 -0
- package/dist/lib/output/themes/default/templates/hierarchy.d.ts +5 -0
- package/dist/lib/output/themes/default/templates/hierarchy.js +31 -0
- package/dist/lib/output/themes/default/templates/index.d.ts +5 -0
- package/dist/lib/output/themes/default/templates/index.js +3 -0
- package/dist/lib/output/themes/default/templates/reflection.d.ts +5 -0
- package/dist/lib/output/themes/default/templates/reflection.js +53 -0
- package/dist/lib/output/themes/lib.d.ts +44 -0
- package/dist/lib/output/themes/lib.js +218 -0
- package/dist/lib/serialization/components.d.ts +22 -0
- package/dist/lib/serialization/components.js +1 -0
- package/dist/lib/serialization/deserializer.d.ts +70 -0
- package/dist/lib/serialization/deserializer.js +235 -0
- package/dist/lib/serialization/events.d.ts +17 -0
- package/dist/lib/serialization/events.js +18 -0
- package/dist/lib/serialization/index.d.ts +5 -0
- package/dist/lib/serialization/index.js +4 -0
- package/dist/lib/serialization/schema.d.ts +283 -0
- package/dist/lib/serialization/schema.js +32 -0
- package/dist/lib/serialization/serializer.d.ts +52 -0
- package/dist/lib/serialization/serializer.js +65 -0
- package/dist/lib/utils/ValidatingFileRegistry.d.ts +12 -0
- package/dist/lib/utils/ValidatingFileRegistry.js +52 -0
- package/dist/lib/utils/component.d.ts +38 -0
- package/dist/lib/utils/component.js +41 -0
- package/dist/lib/utils/compress.d.ts +7 -0
- package/dist/lib/utils/compress.js +13 -0
- package/dist/lib/utils/declaration-maps.d.ts +3 -0
- package/dist/lib/utils/declaration-maps.js +51 -0
- package/dist/lib/utils/entry-point.d.ts +50 -0
- package/dist/lib/utils/entry-point.js +330 -0
- package/dist/lib/utils/fs.d.ts +65 -0
- package/dist/lib/utils/fs.js +372 -0
- package/dist/lib/utils/general.d.ts +4 -0
- package/dist/lib/utils/general.js +25 -0
- package/dist/lib/utils/highlighter.d.ts +9 -0
- package/dist/lib/utils/highlighter.js +150 -0
- package/dist/lib/utils/html-entities.d.ts +8926 -0
- package/dist/lib/utils/html-entities.js +2329 -0
- package/dist/lib/utils/html.d.ts +67 -0
- package/dist/lib/utils/html.js +635 -0
- package/dist/lib/utils/index.d.ts +17 -0
- package/dist/lib/utils/index.js +15 -0
- package/dist/lib/utils/loggers.d.ts +10 -0
- package/dist/lib/utils/loggers.js +71 -0
- package/dist/lib/utils/options/declaration.d.ts +514 -0
- package/dist/lib/utils/options/declaration.js +443 -0
- package/dist/lib/utils/options/defaults.d.ts +20 -0
- package/dist/lib/utils/options/defaults.js +104 -0
- package/dist/lib/utils/options/help.d.ts +7 -0
- package/dist/lib/utils/options/help.js +63 -0
- package/dist/lib/utils/options/index.d.ts +6 -0
- package/dist/lib/utils/options/index.js +4 -0
- package/dist/lib/utils/options/options.d.ts +199 -0
- package/dist/lib/utils/options/options.js +273 -0
- package/dist/lib/utils/options/readers/arguments.d.ts +15 -0
- package/dist/lib/utils/options/readers/arguments.js +109 -0
- package/dist/lib/utils/options/readers/index.d.ts +4 -0
- package/dist/lib/utils/options/readers/index.js +4 -0
- package/dist/lib/utils/options/readers/package-json.d.ts +9 -0
- package/dist/lib/utils/options/readers/package-json.js +40 -0
- package/dist/lib/utils/options/readers/tsconfig.d.ts +14 -0
- package/dist/lib/utils/options/readers/tsconfig.js +172 -0
- package/dist/lib/utils/options/readers/typedoc.d.ts +33 -0
- package/dist/lib/utils/options/readers/typedoc.js +136 -0
- package/dist/lib/utils/options/sources/index.d.ts +1 -0
- package/dist/lib/utils/options/sources/index.js +1 -0
- package/dist/lib/utils/options/sources/typedoc.d.ts +2 -0
- package/dist/lib/utils/options/sources/typedoc.js +876 -0
- package/dist/lib/utils/options/tsdoc-defaults.d.ts +6 -0
- package/dist/lib/utils/options/tsdoc-defaults.js +94 -0
- package/dist/lib/utils/package-manifest.d.ts +11 -0
- package/dist/lib/utils/package-manifest.js +84 -0
- package/dist/lib/utils/paths.d.ts +27 -0
- package/dist/lib/utils/paths.js +127 -0
- package/dist/lib/utils/perf.d.ts +6 -0
- package/dist/lib/utils/perf.js +86 -0
- package/dist/lib/utils/plugins.d.ts +3 -0
- package/dist/lib/utils/plugins.js +61 -0
- package/dist/lib/utils/reflections.d.ts +5 -0
- package/dist/lib/utils/reflections.js +64 -0
- package/dist/lib/utils/sort.d.ts +11 -0
- package/dist/lib/utils/sort.js +153 -0
- package/dist/lib/utils/tsconfig.d.ts +5 -0
- package/dist/lib/utils/tsconfig.js +60 -0
- package/dist/lib/utils/tsutils.d.ts +3 -0
- package/dist/lib/utils/tsutils.js +23 -0
- package/dist/lib/utils-common/array.d.ts +57 -0
- package/dist/lib/utils-common/array.js +152 -0
- package/dist/lib/utils-common/declarationReference.d.ts +42 -0
- package/dist/lib/utils-common/declarationReference.js +341 -0
- package/dist/lib/utils-common/enum.d.ts +9 -0
- package/dist/lib/utils-common/enum.js +27 -0
- package/dist/lib/utils-common/events.d.ts +29 -0
- package/dist/lib/utils-common/events.js +49 -0
- package/dist/lib/utils-common/general.d.ts +40 -0
- package/dist/lib/utils-common/general.js +22 -0
- package/dist/lib/utils-common/hooks.d.ts +51 -0
- package/dist/lib/utils-common/hooks.js +90 -0
- package/dist/lib/utils-common/i18n.d.ts +18 -0
- package/dist/lib/utils-common/i18n.js +39 -0
- package/dist/lib/utils-common/index.d.ts +16 -0
- package/dist/lib/utils-common/index.js +17 -0
- package/dist/lib/utils-common/jsx.d.ts +53 -0
- package/dist/lib/utils-common/jsx.elements.d.ts +949 -0
- package/dist/lib/utils-common/jsx.elements.js +3 -0
- package/dist/lib/utils-common/jsx.js +187 -0
- package/dist/lib/utils-common/logger.d.ts +97 -0
- package/dist/lib/utils-common/logger.js +129 -0
- package/dist/lib/utils-common/map.d.ts +23 -0
- package/dist/lib/utils-common/map.js +63 -0
- package/dist/lib/utils-common/minimalSourceFile.d.ts +12 -0
- package/dist/lib/utils-common/minimalSourceFile.js +43 -0
- package/dist/lib/utils-common/path.d.ts +42 -0
- package/dist/lib/utils-common/path.js +130 -0
- package/dist/lib/utils-common/set.d.ts +3 -0
- package/dist/lib/utils-common/set.js +23 -0
- package/dist/lib/utils-common/string.d.ts +11 -0
- package/dist/lib/utils-common/string.js +84 -0
- package/dist/lib/utils-common/validation.d.ts +33 -0
- package/dist/lib/utils-common/validation.js +50 -0
- package/dist/lib/validation/documentation.d.ts +3 -0
- package/dist/lib/validation/documentation.js +91 -0
- package/dist/lib/validation/exports.d.ts +3 -0
- package/dist/lib/validation/exports.js +65 -0
- package/dist/lib/validation/links.d.ts +3 -0
- package/dist/lib/validation/links.js +78 -0
- package/dist/lib/validation/unusedMergeModuleWith.d.ts +3 -0
- package/dist/lib/validation/unusedMergeModuleWith.js +12 -0
- package/package.json +161 -0
- package/static/main.js +58 -0
- package/static/style.css +1633 -0
- package/tsdoc.json +247 -0
- package/typedoc-config.schema.json +941 -0
|
@@ -0,0 +1,534 @@
|
|
|
1
|
+
var __esDecorate = (this && this.__esDecorate) || function (ctor, descriptorIn, decorators, contextIn, initializers, extraInitializers) {
|
|
2
|
+
function accept(f) { if (f !== void 0 && typeof f !== "function") throw new TypeError("Function expected"); return f; }
|
|
3
|
+
var kind = contextIn.kind, key = kind === "getter" ? "get" : kind === "setter" ? "set" : "value";
|
|
4
|
+
var target = !descriptorIn && ctor ? contextIn["static"] ? ctor : ctor.prototype : null;
|
|
5
|
+
var descriptor = descriptorIn || (target ? Object.getOwnPropertyDescriptor(target, contextIn.name) : {});
|
|
6
|
+
var _, done = false;
|
|
7
|
+
for (var i = decorators.length - 1; i >= 0; i--) {
|
|
8
|
+
var context = {};
|
|
9
|
+
for (var p in contextIn) context[p] = p === "access" ? {} : contextIn[p];
|
|
10
|
+
for (var p in contextIn.access) context.access[p] = contextIn.access[p];
|
|
11
|
+
context.addInitializer = function (f) { if (done) throw new TypeError("Cannot add initializers after decoration has completed"); extraInitializers.push(accept(f || null)); };
|
|
12
|
+
var result = (0, decorators[i])(kind === "accessor" ? { get: descriptor.get, set: descriptor.set } : descriptor[key], context);
|
|
13
|
+
if (kind === "accessor") {
|
|
14
|
+
if (result === void 0) continue;
|
|
15
|
+
if (result === null || typeof result !== "object") throw new TypeError("Object expected");
|
|
16
|
+
if (_ = accept(result.get)) descriptor.get = _;
|
|
17
|
+
if (_ = accept(result.set)) descriptor.set = _;
|
|
18
|
+
if (_ = accept(result.init)) initializers.unshift(_);
|
|
19
|
+
}
|
|
20
|
+
else if (_ = accept(result)) {
|
|
21
|
+
if (kind === "field") initializers.unshift(_);
|
|
22
|
+
else descriptor[key] = _;
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
if (target) Object.defineProperty(target, contextIn.name, descriptor);
|
|
26
|
+
done = true;
|
|
27
|
+
};
|
|
28
|
+
var __runInitializers = (this && this.__runInitializers) || function (thisArg, initializers, value) {
|
|
29
|
+
var useValue = arguments.length > 2;
|
|
30
|
+
for (var i = 0; i < initializers.length; i++) {
|
|
31
|
+
value = useValue ? initializers[i].call(thisArg, value) : initializers[i].call(thisArg);
|
|
32
|
+
}
|
|
33
|
+
return useValue ? value : void 0;
|
|
34
|
+
};
|
|
35
|
+
import { assertNever, i18n, NonEnumerable, removeIf } from "#utils";
|
|
36
|
+
import { ReflectionSymbolId } from "./ReflectionSymbolId.js";
|
|
37
|
+
/**
|
|
38
|
+
* A model that represents a single TypeDoc comment tag.
|
|
39
|
+
*
|
|
40
|
+
* Tags are stored in the {@link Comment.blockTags} property.
|
|
41
|
+
* @category Comments
|
|
42
|
+
*/
|
|
43
|
+
export class CommentTag {
|
|
44
|
+
/**
|
|
45
|
+
* The name of this tag, e.g. `@returns`, `@example`
|
|
46
|
+
*/
|
|
47
|
+
tag;
|
|
48
|
+
/**
|
|
49
|
+
* Some tags, (`@typedef`, `@param`, `@property`, etc.) may have a user defined identifier associated with them.
|
|
50
|
+
* If this tag is one of those, it will be parsed out and included here.
|
|
51
|
+
*/
|
|
52
|
+
name;
|
|
53
|
+
/**
|
|
54
|
+
* Optional type annotation associated with this tag. TypeDoc will remove type annotations unless explicitly
|
|
55
|
+
* requested by the user with the `preservedTypeAnnotationTags` option.
|
|
56
|
+
*/
|
|
57
|
+
typeAnnotation;
|
|
58
|
+
/**
|
|
59
|
+
* The actual body text of this tag.
|
|
60
|
+
*/
|
|
61
|
+
content;
|
|
62
|
+
/**
|
|
63
|
+
* A flag which may be set by plugins to prevent TypeDoc from rendering this tag, if the plugin provides
|
|
64
|
+
* custom rendering. Note: This flag is **not** serialized, it is expected to be set just before the comment
|
|
65
|
+
* is rendered.
|
|
66
|
+
*/
|
|
67
|
+
skipRendering = false;
|
|
68
|
+
/**
|
|
69
|
+
* Create a new CommentTag instance.
|
|
70
|
+
*/
|
|
71
|
+
constructor(tag, text) {
|
|
72
|
+
this.tag = tag;
|
|
73
|
+
this.content = text;
|
|
74
|
+
}
|
|
75
|
+
/**
|
|
76
|
+
* Checks if this block tag is roughly equal to the other tag.
|
|
77
|
+
* This isn't exactly equal, but just "roughly equal" by the tag
|
|
78
|
+
* text.
|
|
79
|
+
*/
|
|
80
|
+
similarTo(other) {
|
|
81
|
+
return (this.tag === other.tag &&
|
|
82
|
+
this.name === other.name &&
|
|
83
|
+
Comment.combineDisplayParts(this.content) ===
|
|
84
|
+
Comment.combineDisplayParts(other.content));
|
|
85
|
+
}
|
|
86
|
+
clone() {
|
|
87
|
+
const tag = new CommentTag(this.tag, Comment.cloneDisplayParts(this.content));
|
|
88
|
+
if (this.name) {
|
|
89
|
+
tag.name = this.name;
|
|
90
|
+
}
|
|
91
|
+
if (this.typeAnnotation) {
|
|
92
|
+
tag.typeAnnotation = this.typeAnnotation;
|
|
93
|
+
}
|
|
94
|
+
return tag;
|
|
95
|
+
}
|
|
96
|
+
toObject() {
|
|
97
|
+
return {
|
|
98
|
+
tag: this.tag,
|
|
99
|
+
name: this.name,
|
|
100
|
+
content: Comment.serializeDisplayParts(this.content),
|
|
101
|
+
typeAnnotation: this.typeAnnotation,
|
|
102
|
+
};
|
|
103
|
+
}
|
|
104
|
+
fromObject(de, obj) {
|
|
105
|
+
// tag already set by Comment.fromObject
|
|
106
|
+
this.name = obj.name;
|
|
107
|
+
this.typeAnnotation = obj.typeAnnotation;
|
|
108
|
+
this.content = Comment.deserializeDisplayParts(de, obj.content);
|
|
109
|
+
}
|
|
110
|
+
}
|
|
111
|
+
/**
|
|
112
|
+
* A model that represents a comment.
|
|
113
|
+
*
|
|
114
|
+
* Instances of this model are created by the CommentPlugin. You can retrieve comments
|
|
115
|
+
* through the {@link DeclarationReflection.comment} property.
|
|
116
|
+
* @category Comments
|
|
117
|
+
*/
|
|
118
|
+
let Comment = (() => {
|
|
119
|
+
let _sourcePath_decorators;
|
|
120
|
+
let _sourcePath_initializers = [];
|
|
121
|
+
let _sourcePath_extraInitializers = [];
|
|
122
|
+
let _discoveryId_decorators;
|
|
123
|
+
let _discoveryId_initializers = [];
|
|
124
|
+
let _discoveryId_extraInitializers = [];
|
|
125
|
+
let _inheritedFromParentDeclaration_decorators;
|
|
126
|
+
let _inheritedFromParentDeclaration_initializers = [];
|
|
127
|
+
let _inheritedFromParentDeclaration_extraInitializers = [];
|
|
128
|
+
return class Comment {
|
|
129
|
+
static {
|
|
130
|
+
const _metadata = typeof Symbol === "function" && Symbol.metadata ? Object.create(null) : void 0;
|
|
131
|
+
_sourcePath_decorators = [NonEnumerable];
|
|
132
|
+
_discoveryId_decorators = [NonEnumerable];
|
|
133
|
+
_inheritedFromParentDeclaration_decorators = [NonEnumerable];
|
|
134
|
+
__esDecorate(null, null, _sourcePath_decorators, { kind: "field", name: "sourcePath", static: false, private: false, access: { has: obj => "sourcePath" in obj, get: obj => obj.sourcePath, set: (obj, value) => { obj.sourcePath = value; } }, metadata: _metadata }, _sourcePath_initializers, _sourcePath_extraInitializers);
|
|
135
|
+
__esDecorate(null, null, _discoveryId_decorators, { kind: "field", name: "discoveryId", static: false, private: false, access: { has: obj => "discoveryId" in obj, get: obj => obj.discoveryId, set: (obj, value) => { obj.discoveryId = value; } }, metadata: _metadata }, _discoveryId_initializers, _discoveryId_extraInitializers);
|
|
136
|
+
__esDecorate(null, null, _inheritedFromParentDeclaration_decorators, { kind: "field", name: "inheritedFromParentDeclaration", static: false, private: false, access: { has: obj => "inheritedFromParentDeclaration" in obj, get: obj => obj.inheritedFromParentDeclaration, set: (obj, value) => { obj.inheritedFromParentDeclaration = value; } }, metadata: _metadata }, _inheritedFromParentDeclaration_initializers, _inheritedFromParentDeclaration_extraInitializers);
|
|
137
|
+
if (_metadata) Object.defineProperty(this, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });
|
|
138
|
+
}
|
|
139
|
+
/**
|
|
140
|
+
* Debugging utility for combining parts into a simple string. Not suitable for
|
|
141
|
+
* rendering, but can be useful in tests.
|
|
142
|
+
*/
|
|
143
|
+
static combineDisplayParts(parts) {
|
|
144
|
+
let result = "";
|
|
145
|
+
for (const item of parts || []) {
|
|
146
|
+
switch (item.kind) {
|
|
147
|
+
case "text":
|
|
148
|
+
case "code":
|
|
149
|
+
case "relative-link":
|
|
150
|
+
result += item.text;
|
|
151
|
+
break;
|
|
152
|
+
case "inline-tag":
|
|
153
|
+
result += `{${item.tag} ${item.text}}`;
|
|
154
|
+
break;
|
|
155
|
+
default:
|
|
156
|
+
assertNever(item);
|
|
157
|
+
}
|
|
158
|
+
}
|
|
159
|
+
return result;
|
|
160
|
+
}
|
|
161
|
+
/**
|
|
162
|
+
* Helper utility to clone {@link Comment#summary} or {@link CommentTag#content}
|
|
163
|
+
*/
|
|
164
|
+
static cloneDisplayParts(parts) {
|
|
165
|
+
return parts.map((p) => ({ ...p }));
|
|
166
|
+
}
|
|
167
|
+
static serializeDisplayParts(parts) {
|
|
168
|
+
return parts?.map((part) => {
|
|
169
|
+
switch (part.kind) {
|
|
170
|
+
case "text":
|
|
171
|
+
case "code":
|
|
172
|
+
return { ...part };
|
|
173
|
+
case "inline-tag": {
|
|
174
|
+
let target;
|
|
175
|
+
if (typeof part.target === "string") {
|
|
176
|
+
target = part.target;
|
|
177
|
+
}
|
|
178
|
+
else if (part.target) {
|
|
179
|
+
if ("id" in part.target) {
|
|
180
|
+
target = part.target.id;
|
|
181
|
+
}
|
|
182
|
+
else {
|
|
183
|
+
target = part.target.toObject();
|
|
184
|
+
}
|
|
185
|
+
}
|
|
186
|
+
return {
|
|
187
|
+
...part,
|
|
188
|
+
target,
|
|
189
|
+
};
|
|
190
|
+
}
|
|
191
|
+
case "relative-link": {
|
|
192
|
+
return {
|
|
193
|
+
...part,
|
|
194
|
+
};
|
|
195
|
+
}
|
|
196
|
+
}
|
|
197
|
+
});
|
|
198
|
+
}
|
|
199
|
+
// Since display parts are plain objects, this lives here
|
|
200
|
+
static deserializeDisplayParts(de, parts) {
|
|
201
|
+
const links = [];
|
|
202
|
+
const files = [];
|
|
203
|
+
const result = parts.map((part) => {
|
|
204
|
+
switch (part.kind) {
|
|
205
|
+
case "text":
|
|
206
|
+
case "code":
|
|
207
|
+
return { ...part };
|
|
208
|
+
case "inline-tag": {
|
|
209
|
+
if (typeof part.target === "number") {
|
|
210
|
+
const part2 = {
|
|
211
|
+
kind: part.kind,
|
|
212
|
+
tag: part.tag,
|
|
213
|
+
text: part.text,
|
|
214
|
+
target: undefined,
|
|
215
|
+
tsLinkText: part.tsLinkText,
|
|
216
|
+
};
|
|
217
|
+
links.push([part.target, part2]);
|
|
218
|
+
return part2;
|
|
219
|
+
}
|
|
220
|
+
else if (typeof part.target === "string" ||
|
|
221
|
+
part.target === undefined) {
|
|
222
|
+
return {
|
|
223
|
+
kind: "inline-tag",
|
|
224
|
+
tag: part.tag,
|
|
225
|
+
text: part.text,
|
|
226
|
+
target: part.target,
|
|
227
|
+
tsLinkText: part.tsLinkText,
|
|
228
|
+
};
|
|
229
|
+
}
|
|
230
|
+
else if (typeof part.target === "object") {
|
|
231
|
+
return {
|
|
232
|
+
kind: "inline-tag",
|
|
233
|
+
tag: part.tag,
|
|
234
|
+
text: part.text,
|
|
235
|
+
target: new ReflectionSymbolId(part.target),
|
|
236
|
+
tsLinkText: part.tsLinkText,
|
|
237
|
+
};
|
|
238
|
+
}
|
|
239
|
+
else {
|
|
240
|
+
assertNever(part.target);
|
|
241
|
+
}
|
|
242
|
+
break;
|
|
243
|
+
}
|
|
244
|
+
case "relative-link": {
|
|
245
|
+
if (part.target) {
|
|
246
|
+
const part2 = {
|
|
247
|
+
kind: "relative-link",
|
|
248
|
+
text: part.text,
|
|
249
|
+
target: null,
|
|
250
|
+
targetAnchor: part.targetAnchor,
|
|
251
|
+
};
|
|
252
|
+
files.push([part.target, part2]);
|
|
253
|
+
return part2;
|
|
254
|
+
}
|
|
255
|
+
return {
|
|
256
|
+
...part,
|
|
257
|
+
target: undefined,
|
|
258
|
+
targetAnchor: part.targetAnchor,
|
|
259
|
+
};
|
|
260
|
+
}
|
|
261
|
+
}
|
|
262
|
+
});
|
|
263
|
+
if (links.length || files.length) {
|
|
264
|
+
de.defer((project) => {
|
|
265
|
+
for (const [oldFileId, part] of files) {
|
|
266
|
+
part.target = de.oldFileIdToNewFileId[oldFileId];
|
|
267
|
+
}
|
|
268
|
+
for (const [oldId, part] of links) {
|
|
269
|
+
part.target = project.getReflectionById(de.oldIdToNewId[oldId] ?? -1);
|
|
270
|
+
if (!part.target) {
|
|
271
|
+
de.logger.warn(i18n.serialized_project_referenced_0_not_part_of_project(oldId.toString()));
|
|
272
|
+
}
|
|
273
|
+
}
|
|
274
|
+
});
|
|
275
|
+
}
|
|
276
|
+
return result;
|
|
277
|
+
}
|
|
278
|
+
/**
|
|
279
|
+
* Splits the provided parts into a header (first line, as a string)
|
|
280
|
+
* and body (remaining lines). If the header line contains inline tags
|
|
281
|
+
* they will be serialized to a string.
|
|
282
|
+
*/
|
|
283
|
+
static splitPartsToHeaderAndBody(parts) {
|
|
284
|
+
let index = parts.findIndex((part) => {
|
|
285
|
+
switch (part.kind) {
|
|
286
|
+
case "text":
|
|
287
|
+
case "code":
|
|
288
|
+
return part.text.includes("\n");
|
|
289
|
+
case "inline-tag":
|
|
290
|
+
case "relative-link":
|
|
291
|
+
return false;
|
|
292
|
+
}
|
|
293
|
+
});
|
|
294
|
+
if (index === -1) {
|
|
295
|
+
return {
|
|
296
|
+
header: Comment.combineDisplayParts(parts),
|
|
297
|
+
body: [],
|
|
298
|
+
};
|
|
299
|
+
}
|
|
300
|
+
// Do not split a code block, stop the header at the end of the previous block
|
|
301
|
+
if (parts[index].kind === "code") {
|
|
302
|
+
--index;
|
|
303
|
+
}
|
|
304
|
+
if (index === -1) {
|
|
305
|
+
return { header: "", body: Comment.cloneDisplayParts(parts) };
|
|
306
|
+
}
|
|
307
|
+
let header = Comment.combineDisplayParts(parts.slice(0, index));
|
|
308
|
+
const split = parts[index].text.indexOf("\n");
|
|
309
|
+
let body;
|
|
310
|
+
if (split === -1) {
|
|
311
|
+
header += parts[index].text;
|
|
312
|
+
body = Comment.cloneDisplayParts(parts.slice(index + 1));
|
|
313
|
+
}
|
|
314
|
+
else {
|
|
315
|
+
header += parts[index].text.substring(0, split);
|
|
316
|
+
body = Comment.cloneDisplayParts(parts.slice(index));
|
|
317
|
+
body[0].text = body[0].text.substring(split + 1);
|
|
318
|
+
}
|
|
319
|
+
if (!body[0].text) {
|
|
320
|
+
body.shift();
|
|
321
|
+
}
|
|
322
|
+
return { header: header.trim(), body };
|
|
323
|
+
}
|
|
324
|
+
/**
|
|
325
|
+
* The content of the comment which is not associated with a block tag.
|
|
326
|
+
*/
|
|
327
|
+
summary;
|
|
328
|
+
/**
|
|
329
|
+
* All associated block level tags.
|
|
330
|
+
*/
|
|
331
|
+
blockTags = [];
|
|
332
|
+
/**
|
|
333
|
+
* All modifier tags present on the comment, e.g. `@alpha`, `@beta`.
|
|
334
|
+
*/
|
|
335
|
+
modifierTags = new Set();
|
|
336
|
+
/**
|
|
337
|
+
* Label associated with this reflection, if any (https://tsdoc.org/pages/tags/label/)
|
|
338
|
+
*/
|
|
339
|
+
label;
|
|
340
|
+
/**
|
|
341
|
+
* Full path to the file where this comment originated from, if any.
|
|
342
|
+
* This field will not be serialized, so will not be present when handling JSON-revived reflections.
|
|
343
|
+
*
|
|
344
|
+
* Note: This field is non-enumerable to make testing comment contents with `deepEqual` easier.
|
|
345
|
+
*/
|
|
346
|
+
sourcePath = __runInitializers(this, _sourcePath_initializers, void 0);
|
|
347
|
+
/**
|
|
348
|
+
* Internal discovery ID used to prevent symbol comments from
|
|
349
|
+
* being duplicated on signatures. Only set when the comment was created
|
|
350
|
+
* from a `ts.CommentRange`.
|
|
351
|
+
* @internal
|
|
352
|
+
*/
|
|
353
|
+
discoveryId = (__runInitializers(this, _sourcePath_extraInitializers), __runInitializers(this, _discoveryId_initializers, void 0));
|
|
354
|
+
/**
|
|
355
|
+
* If the comment was inherited from a different "parent" declaration
|
|
356
|
+
* (see #2545), then it is desirable to know this as any `@param` tags
|
|
357
|
+
* which do not apply should not cause warnings. This is not serialized,
|
|
358
|
+
* and only set when the comment was created from a `ts.CommentRange`.
|
|
359
|
+
*/
|
|
360
|
+
inheritedFromParentDeclaration = (__runInitializers(this, _discoveryId_extraInitializers), __runInitializers(this, _inheritedFromParentDeclaration_initializers, void 0));
|
|
361
|
+
/**
|
|
362
|
+
* Creates a new Comment instance.
|
|
363
|
+
*/
|
|
364
|
+
constructor(summary = [], blockTags = [], modifierTags = new Set()) {
|
|
365
|
+
__runInitializers(this, _inheritedFromParentDeclaration_extraInitializers);
|
|
366
|
+
this.summary = summary;
|
|
367
|
+
this.blockTags = blockTags;
|
|
368
|
+
this.modifierTags = modifierTags;
|
|
369
|
+
extractLabelTag(this);
|
|
370
|
+
}
|
|
371
|
+
/**
|
|
372
|
+
* Gets either the `@summary` tag, or a short version of the comment summary
|
|
373
|
+
* section for rendering in module/namespace pages.
|
|
374
|
+
*/
|
|
375
|
+
getShortSummary(useFirstParagraph) {
|
|
376
|
+
const tag = this.getTag("@summary");
|
|
377
|
+
if (tag)
|
|
378
|
+
return tag.content;
|
|
379
|
+
if (!useFirstParagraph)
|
|
380
|
+
return [];
|
|
381
|
+
let partsEnd = this.summary.findIndex((part) => {
|
|
382
|
+
switch (part.kind) {
|
|
383
|
+
case "text":
|
|
384
|
+
return part.text.includes("\n\n");
|
|
385
|
+
case "code":
|
|
386
|
+
return part.text.includes("\n");
|
|
387
|
+
case "inline-tag":
|
|
388
|
+
case "relative-link":
|
|
389
|
+
return false;
|
|
390
|
+
default:
|
|
391
|
+
assertNever(part);
|
|
392
|
+
}
|
|
393
|
+
});
|
|
394
|
+
const foundEnd = partsEnd !== -1;
|
|
395
|
+
if (partsEnd === -1) {
|
|
396
|
+
partsEnd = this.summary.length - 1;
|
|
397
|
+
}
|
|
398
|
+
const summaryParts = this.summary.slice(0, partsEnd);
|
|
399
|
+
if (partsEnd !== -1) {
|
|
400
|
+
const text = this.summary[partsEnd].text;
|
|
401
|
+
const paragraphEnd = text.indexOf("\n\n");
|
|
402
|
+
if (paragraphEnd !== -1) {
|
|
403
|
+
summaryParts.push({
|
|
404
|
+
...this.summary[partsEnd],
|
|
405
|
+
text: text.slice(0, paragraphEnd),
|
|
406
|
+
});
|
|
407
|
+
}
|
|
408
|
+
else if (!foundEnd) {
|
|
409
|
+
summaryParts.push(this.summary[partsEnd]);
|
|
410
|
+
}
|
|
411
|
+
}
|
|
412
|
+
return summaryParts;
|
|
413
|
+
}
|
|
414
|
+
/**
|
|
415
|
+
* Checks if this comment is roughly equal to the other comment.
|
|
416
|
+
* This isn't exactly equal, but just "roughly equal" by the comment
|
|
417
|
+
* text.
|
|
418
|
+
*/
|
|
419
|
+
similarTo(other) {
|
|
420
|
+
if (Comment.combineDisplayParts(this.summary) !==
|
|
421
|
+
Comment.combineDisplayParts(other.summary)) {
|
|
422
|
+
return false;
|
|
423
|
+
}
|
|
424
|
+
// Ignore modifier tags, as they could cause false negatives
|
|
425
|
+
// if a cascaded modifier tag is present in one comment but not the other.
|
|
426
|
+
if (this.blockTags.length !== other.blockTags.length) {
|
|
427
|
+
return false;
|
|
428
|
+
}
|
|
429
|
+
for (let i = 0; i < this.blockTags.length; ++i) {
|
|
430
|
+
if (!this.blockTags[i].similarTo(other.blockTags[i])) {
|
|
431
|
+
return false;
|
|
432
|
+
}
|
|
433
|
+
}
|
|
434
|
+
return true;
|
|
435
|
+
}
|
|
436
|
+
/**
|
|
437
|
+
* Create a deep clone of this comment.
|
|
438
|
+
*/
|
|
439
|
+
clone() {
|
|
440
|
+
const comment = new Comment(Comment.cloneDisplayParts(this.summary), this.blockTags.map((tag) => tag.clone()), new Set(this.modifierTags));
|
|
441
|
+
comment.discoveryId = this.discoveryId;
|
|
442
|
+
comment.sourcePath = this.sourcePath;
|
|
443
|
+
comment.inheritedFromParentDeclaration = this.inheritedFromParentDeclaration;
|
|
444
|
+
return comment;
|
|
445
|
+
}
|
|
446
|
+
/**
|
|
447
|
+
* Returns true if this comment is completely empty.
|
|
448
|
+
* @internal
|
|
449
|
+
*/
|
|
450
|
+
isEmpty() {
|
|
451
|
+
return !this.hasVisibleComponent() && this.modifierTags.size === 0;
|
|
452
|
+
}
|
|
453
|
+
/**
|
|
454
|
+
* Checks if this comment contains any visible text.
|
|
455
|
+
*
|
|
456
|
+
* @returns TRUE when this reflection has a visible comment.
|
|
457
|
+
*/
|
|
458
|
+
hasVisibleComponent(notRenderedTags) {
|
|
459
|
+
if (this.summary.some((x) => x.kind !== "text" || x.text !== "")) {
|
|
460
|
+
return true;
|
|
461
|
+
}
|
|
462
|
+
if (notRenderedTags) {
|
|
463
|
+
return this.blockTags.some(tag => !notRenderedTags.includes(tag.tag));
|
|
464
|
+
}
|
|
465
|
+
else {
|
|
466
|
+
return this.blockTags.length > 0;
|
|
467
|
+
}
|
|
468
|
+
}
|
|
469
|
+
/**
|
|
470
|
+
* Test whether this comment contains a tag with the given name.
|
|
471
|
+
*
|
|
472
|
+
* @param tagName The name of the tag to look for.
|
|
473
|
+
* @returns TRUE when this comment contains a tag with the given name, otherwise FALSE.
|
|
474
|
+
*/
|
|
475
|
+
hasModifier(tagName) {
|
|
476
|
+
return this.modifierTags.has(tagName);
|
|
477
|
+
}
|
|
478
|
+
removeModifier(tagName) {
|
|
479
|
+
this.modifierTags.delete(tagName);
|
|
480
|
+
}
|
|
481
|
+
/**
|
|
482
|
+
* Return the first tag with the given name.
|
|
483
|
+
*
|
|
484
|
+
* @param tagName The name of the tag to look for.
|
|
485
|
+
* @returns The found tag or undefined.
|
|
486
|
+
*/
|
|
487
|
+
getTag(tagName) {
|
|
488
|
+
return this.blockTags.find((tag) => tag.tag === tagName);
|
|
489
|
+
}
|
|
490
|
+
/**
|
|
491
|
+
* Get all tags with the given tag name.
|
|
492
|
+
*/
|
|
493
|
+
getTags(tagName) {
|
|
494
|
+
return this.blockTags.filter((tag) => tag.tag === tagName);
|
|
495
|
+
}
|
|
496
|
+
getIdentifiedTag(identifier, tagName) {
|
|
497
|
+
return this.blockTags.find((tag) => tag.tag === tagName && tag.name === identifier);
|
|
498
|
+
}
|
|
499
|
+
/**
|
|
500
|
+
* Removes all block tags with the given tag name from the comment.
|
|
501
|
+
* @param tagName
|
|
502
|
+
*/
|
|
503
|
+
removeTags(tagName) {
|
|
504
|
+
removeIf(this.blockTags, (tag) => tag.tag === tagName);
|
|
505
|
+
}
|
|
506
|
+
toObject(serializer) {
|
|
507
|
+
return {
|
|
508
|
+
summary: Comment.serializeDisplayParts(this.summary),
|
|
509
|
+
blockTags: serializer.toObjectsOptional(this.blockTags),
|
|
510
|
+
modifierTags: this.modifierTags.size > 0
|
|
511
|
+
? Array.from(this.modifierTags)
|
|
512
|
+
: undefined,
|
|
513
|
+
label: this.label,
|
|
514
|
+
};
|
|
515
|
+
}
|
|
516
|
+
fromObject(de, obj) {
|
|
517
|
+
this.summary = Comment.deserializeDisplayParts(de, obj.summary);
|
|
518
|
+
this.blockTags = obj.blockTags?.map((tagObj) => {
|
|
519
|
+
const tag = new CommentTag(tagObj.tag, []);
|
|
520
|
+
de.fromObject(tag, tagObj);
|
|
521
|
+
return tag;
|
|
522
|
+
}) || [];
|
|
523
|
+
this.modifierTags = new Set(obj.modifierTags);
|
|
524
|
+
this.label = obj.label;
|
|
525
|
+
}
|
|
526
|
+
};
|
|
527
|
+
})();
|
|
528
|
+
export { Comment };
|
|
529
|
+
function extractLabelTag(comment) {
|
|
530
|
+
const index = comment.summary.findIndex((part) => part.kind === "inline-tag" && part.tag === "@label");
|
|
531
|
+
if (index !== -1) {
|
|
532
|
+
comment.label = comment.summary.splice(index, 1)[0].text;
|
|
533
|
+
}
|
|
534
|
+
}
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
import { Reflection, type TraverseCallback } from "./Reflection.js";
|
|
2
|
+
import { ReflectionCategory } from "./ReflectionCategory.js";
|
|
3
|
+
import { ReflectionGroup } from "./ReflectionGroup.js";
|
|
4
|
+
import { ReflectionKind } from "./kind.js";
|
|
5
|
+
import type { Deserializer, JSONOutput, Serializer } from "#serialization";
|
|
6
|
+
import type { DocumentReflection } from "./DocumentReflection.js";
|
|
7
|
+
import type { DeclarationReflection } from "./DeclarationReflection.js";
|
|
8
|
+
/**
|
|
9
|
+
* @category Reflections
|
|
10
|
+
*/
|
|
11
|
+
export declare abstract class ContainerReflection extends Reflection {
|
|
12
|
+
/**
|
|
13
|
+
* The children of this reflection. Do not add reflections to this array
|
|
14
|
+
* manually. Instead call {@link addChild}.
|
|
15
|
+
*/
|
|
16
|
+
children?: Array<DeclarationReflection>;
|
|
17
|
+
/**
|
|
18
|
+
* Documents associated with this reflection.
|
|
19
|
+
*
|
|
20
|
+
* These are not children as including them as children requires code handle both
|
|
21
|
+
* types, despite being mostly unrelated and handled separately.
|
|
22
|
+
*
|
|
23
|
+
* Including them here in a separate array neatly handles that problem, but also
|
|
24
|
+
* introduces another one for rendering. When rendering, documents should really
|
|
25
|
+
* actually be considered part of the "children" of a reflection. For this reason,
|
|
26
|
+
* we also maintain a list of child declarations with child documents which is used
|
|
27
|
+
* when rendering.
|
|
28
|
+
*/
|
|
29
|
+
documents?: Array<DocumentReflection>;
|
|
30
|
+
/**
|
|
31
|
+
* Union of the {@link children} and {@link documents} arrays which dictates the
|
|
32
|
+
* sort order for rendering.
|
|
33
|
+
*/
|
|
34
|
+
childrenIncludingDocuments?: Array<DeclarationReflection | DocumentReflection>;
|
|
35
|
+
/**
|
|
36
|
+
* All children grouped by their kind.
|
|
37
|
+
*/
|
|
38
|
+
groups?: ReflectionGroup[];
|
|
39
|
+
/**
|
|
40
|
+
* All children grouped by their category.
|
|
41
|
+
*/
|
|
42
|
+
categories?: ReflectionCategory[];
|
|
43
|
+
/**
|
|
44
|
+
* Return a list of all children of a certain kind.
|
|
45
|
+
*
|
|
46
|
+
* @param kind The desired kind of children.
|
|
47
|
+
* @returns An array containing all children with the desired kind.
|
|
48
|
+
*/
|
|
49
|
+
getChildrenByKind(kind: ReflectionKind): DeclarationReflection[];
|
|
50
|
+
addChild(child: Reflection): void;
|
|
51
|
+
removeChild(child: DeclarationReflection | DocumentReflection): void;
|
|
52
|
+
isContainer(): this is ContainerReflection;
|
|
53
|
+
traverse(callback: TraverseCallback): void;
|
|
54
|
+
toObject(serializer: Serializer): JSONOutput.ContainerReflection;
|
|
55
|
+
fromObject(de: Deserializer, obj: JSONOutput.ContainerReflection): void;
|
|
56
|
+
}
|