@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,520 @@
|
|
|
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 { CategoryPlugin } from "../converter/plugins/CategoryPlugin.js";
|
|
36
|
+
import { GroupPlugin } from "../converter/plugins/GroupPlugin.js";
|
|
37
|
+
import { ProjectReflection, Reflection, ReflectionKind } from "../models/index.js";
|
|
38
|
+
import { createNormalizedUrl } from "#node-utils";
|
|
39
|
+
import { Option } from "../utils/index.js";
|
|
40
|
+
import { Slugger } from "./themes/default/Slugger.js";
|
|
41
|
+
import { getHierarchyRoots } from "./themes/lib.js";
|
|
42
|
+
/**
|
|
43
|
+
* The type of page which should be rendered. This may be extended in the future.
|
|
44
|
+
*
|
|
45
|
+
* Note: TypeDoc any string may be used as the page kind. TypeDoc defines a few
|
|
46
|
+
* described by this object.
|
|
47
|
+
* @enum
|
|
48
|
+
*/
|
|
49
|
+
export const PageKind = {
|
|
50
|
+
Index: "index",
|
|
51
|
+
Reflection: "reflection",
|
|
52
|
+
Document: "document",
|
|
53
|
+
Hierarchy: "hierarchy",
|
|
54
|
+
};
|
|
55
|
+
function getFullName(target) {
|
|
56
|
+
if (target instanceof ProjectReflection) {
|
|
57
|
+
return target.name;
|
|
58
|
+
}
|
|
59
|
+
const parts = [target.name];
|
|
60
|
+
let current = target;
|
|
61
|
+
while (!(current instanceof ProjectReflection)) {
|
|
62
|
+
parts.unshift(current.name);
|
|
63
|
+
current = current.parent;
|
|
64
|
+
}
|
|
65
|
+
return parts.join(".");
|
|
66
|
+
}
|
|
67
|
+
/**
|
|
68
|
+
* Base router class intended to make it easier to implement a router.
|
|
69
|
+
*
|
|
70
|
+
* Child classes need only {@link getIdealBaseName}, this class will take care
|
|
71
|
+
* of the recursing through child reflections.
|
|
72
|
+
* @group Routers
|
|
73
|
+
*/
|
|
74
|
+
let BaseRouter = (() => {
|
|
75
|
+
let _sluggerConfiguration_decorators;
|
|
76
|
+
let _sluggerConfiguration_initializers = [];
|
|
77
|
+
let _sluggerConfiguration_extraInitializers = [];
|
|
78
|
+
let _includeHierarchySummary_decorators;
|
|
79
|
+
let _includeHierarchySummary_initializers = [];
|
|
80
|
+
let _includeHierarchySummary_extraInitializers = [];
|
|
81
|
+
return class BaseRouter {
|
|
82
|
+
static {
|
|
83
|
+
const _metadata = typeof Symbol === "function" && Symbol.metadata ? Object.create(null) : void 0;
|
|
84
|
+
_sluggerConfiguration_decorators = [Option("sluggerConfiguration")];
|
|
85
|
+
_includeHierarchySummary_decorators = [Option("includeHierarchySummary")];
|
|
86
|
+
__esDecorate(this, null, _sluggerConfiguration_decorators, { kind: "accessor", name: "sluggerConfiguration", static: false, private: false, access: { has: obj => "sluggerConfiguration" in obj, get: obj => obj.sluggerConfiguration, set: (obj, value) => { obj.sluggerConfiguration = value; } }, metadata: _metadata }, _sluggerConfiguration_initializers, _sluggerConfiguration_extraInitializers);
|
|
87
|
+
__esDecorate(this, null, _includeHierarchySummary_decorators, { kind: "accessor", name: "includeHierarchySummary", static: false, private: false, access: { has: obj => "includeHierarchySummary" in obj, get: obj => obj.includeHierarchySummary, set: (obj, value) => { obj.includeHierarchySummary = value; } }, metadata: _metadata }, _includeHierarchySummary_initializers, _includeHierarchySummary_extraInitializers);
|
|
88
|
+
if (_metadata) Object.defineProperty(this, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });
|
|
89
|
+
}
|
|
90
|
+
application;
|
|
91
|
+
extension = ".html";
|
|
92
|
+
// Note: This will always contain lowercased names to avoid issues with
|
|
93
|
+
// case-insensitive file systems.
|
|
94
|
+
usedFileNames = new Set();
|
|
95
|
+
sluggers = new Map();
|
|
96
|
+
fullUrls = new Map();
|
|
97
|
+
anchors = new Map();
|
|
98
|
+
#sluggerConfiguration_accessor_storage = __runInitializers(this, _sluggerConfiguration_initializers, void 0);
|
|
99
|
+
get sluggerConfiguration() { return this.#sluggerConfiguration_accessor_storage; }
|
|
100
|
+
set sluggerConfiguration(value) { this.#sluggerConfiguration_accessor_storage = value; }
|
|
101
|
+
#includeHierarchySummary_accessor_storage = (__runInitializers(this, _sluggerConfiguration_extraInitializers), __runInitializers(this, _includeHierarchySummary_initializers, void 0));
|
|
102
|
+
get includeHierarchySummary() { return this.#includeHierarchySummary_accessor_storage; }
|
|
103
|
+
set includeHierarchySummary(value) { this.#includeHierarchySummary_accessor_storage = value; }
|
|
104
|
+
constructor(application) {
|
|
105
|
+
__runInitializers(this, _includeHierarchySummary_extraInitializers);
|
|
106
|
+
this.application = application;
|
|
107
|
+
}
|
|
108
|
+
buildPages(project) {
|
|
109
|
+
this.usedFileNames = new Set();
|
|
110
|
+
this.sluggers = new Map([
|
|
111
|
+
[project, new Slugger(this.sluggerConfiguration)],
|
|
112
|
+
]);
|
|
113
|
+
const pages = [];
|
|
114
|
+
if (project.readme?.length) {
|
|
115
|
+
pages.push({
|
|
116
|
+
url: this.getFileName("index"),
|
|
117
|
+
kind: PageKind.Index,
|
|
118
|
+
model: project,
|
|
119
|
+
});
|
|
120
|
+
pages.push({
|
|
121
|
+
url: this.getFileName("modules"),
|
|
122
|
+
kind: PageKind.Reflection,
|
|
123
|
+
model: project,
|
|
124
|
+
});
|
|
125
|
+
}
|
|
126
|
+
else {
|
|
127
|
+
pages.push({
|
|
128
|
+
url: this.getFileName("index"),
|
|
129
|
+
kind: PageKind.Reflection,
|
|
130
|
+
model: project,
|
|
131
|
+
});
|
|
132
|
+
}
|
|
133
|
+
this.fullUrls.set(project, pages[pages.length - 1].url);
|
|
134
|
+
if (this.includeHierarchySummary && getHierarchyRoots(project)) {
|
|
135
|
+
pages.push({
|
|
136
|
+
url: this.getFileName("hierarchy"),
|
|
137
|
+
kind: PageKind.Hierarchy,
|
|
138
|
+
model: project,
|
|
139
|
+
});
|
|
140
|
+
}
|
|
141
|
+
for (const child of project.childrenIncludingDocuments || []) {
|
|
142
|
+
this.buildChildPages(child, pages);
|
|
143
|
+
}
|
|
144
|
+
return pages;
|
|
145
|
+
}
|
|
146
|
+
hasUrl(target) {
|
|
147
|
+
return this.fullUrls.has(target);
|
|
148
|
+
}
|
|
149
|
+
getLinkTargets() {
|
|
150
|
+
return Array.from(this.fullUrls.keys());
|
|
151
|
+
}
|
|
152
|
+
getAnchor(target) {
|
|
153
|
+
if (!this.anchors.has(target)) {
|
|
154
|
+
this.application.logger.verbose(`${getFullName(target)} does not have an anchor but one was requested, this is a bug in the theme`);
|
|
155
|
+
}
|
|
156
|
+
return this.anchors.get(target);
|
|
157
|
+
}
|
|
158
|
+
hasOwnDocument(target) {
|
|
159
|
+
return this.anchors.get(target) === undefined && this.hasUrl(target);
|
|
160
|
+
}
|
|
161
|
+
relativeUrl(from, to) {
|
|
162
|
+
let slashes = 0;
|
|
163
|
+
while (!this.hasOwnDocument(from)) {
|
|
164
|
+
// We know we must have a parent here as the Project is the only
|
|
165
|
+
// root level element without a parent, and the project always has
|
|
166
|
+
// an own document.
|
|
167
|
+
from = from.parent;
|
|
168
|
+
}
|
|
169
|
+
let toPage = to;
|
|
170
|
+
while (!this.hasOwnDocument(toPage)) {
|
|
171
|
+
toPage = toPage.parent;
|
|
172
|
+
}
|
|
173
|
+
// We unfortunately have to special case ProjectReflection as it is
|
|
174
|
+
// the model used twice for rendering. This should be changed in a
|
|
175
|
+
// future version to remove this hackery.
|
|
176
|
+
if (from === toPage && !(to instanceof ProjectReflection)) {
|
|
177
|
+
return to === toPage ? "" : `#${this.getAnchor(to)}`;
|
|
178
|
+
}
|
|
179
|
+
const fromUrl = this.getFullUrl(from);
|
|
180
|
+
const toUrl = this.getFullUrl(to);
|
|
181
|
+
let equal = true;
|
|
182
|
+
let start = 0;
|
|
183
|
+
for (let i = 0; i < fromUrl.length; ++i) {
|
|
184
|
+
equal = equal && fromUrl[i] === toUrl[i];
|
|
185
|
+
if (fromUrl[i] === "/") {
|
|
186
|
+
if (equal) {
|
|
187
|
+
start = i + 1;
|
|
188
|
+
}
|
|
189
|
+
else {
|
|
190
|
+
++slashes;
|
|
191
|
+
}
|
|
192
|
+
}
|
|
193
|
+
}
|
|
194
|
+
// If equal is still set, we're going to a page either in
|
|
195
|
+
// the same directory as this page, or a lower directory,
|
|
196
|
+
// don't bother going up directories just to come back down.
|
|
197
|
+
if (equal) {
|
|
198
|
+
return toUrl.substring(start);
|
|
199
|
+
}
|
|
200
|
+
// Otherwise, go up until we get to the common directory
|
|
201
|
+
// and then back down to the target path.
|
|
202
|
+
return "../".repeat(slashes) + toUrl.substring(start);
|
|
203
|
+
}
|
|
204
|
+
baseRelativeUrl(from, target) {
|
|
205
|
+
let slashes = 0;
|
|
206
|
+
const full = this.getFullUrl(from);
|
|
207
|
+
for (let i = 0; i < full.length; ++i) {
|
|
208
|
+
if (full[i] === "/")
|
|
209
|
+
++slashes;
|
|
210
|
+
}
|
|
211
|
+
// #2910 avoid urls like ".././"
|
|
212
|
+
if (target == "./" && slashes !== 0) {
|
|
213
|
+
return "../".repeat(slashes);
|
|
214
|
+
}
|
|
215
|
+
return "../".repeat(slashes) + target;
|
|
216
|
+
}
|
|
217
|
+
getFullUrl(target) {
|
|
218
|
+
const url = this.fullUrls.get(target);
|
|
219
|
+
if (!url) {
|
|
220
|
+
throw new Error(`Tried to get a URL of a router target ${getFullName(target)} which did not receive a URL`);
|
|
221
|
+
}
|
|
222
|
+
return url;
|
|
223
|
+
}
|
|
224
|
+
getSlugger(target) {
|
|
225
|
+
if (this.sluggers.has(target)) {
|
|
226
|
+
return this.sluggers.get(target);
|
|
227
|
+
}
|
|
228
|
+
// A slugger should always be defined at least for the project
|
|
229
|
+
return this.getSlugger(target.parent);
|
|
230
|
+
}
|
|
231
|
+
/**
|
|
232
|
+
* Should the page kind to use if a reflection should have its own rendered
|
|
233
|
+
* page in the output. Note that once `undefined` is returned, children of
|
|
234
|
+
* that reflection will not have their own document.
|
|
235
|
+
*/
|
|
236
|
+
getPageKind(target) {
|
|
237
|
+
if (!(target instanceof Reflection)) {
|
|
238
|
+
return undefined;
|
|
239
|
+
}
|
|
240
|
+
const pageReflectionKinds = ReflectionKind.Class |
|
|
241
|
+
ReflectionKind.Interface |
|
|
242
|
+
ReflectionKind.Enum |
|
|
243
|
+
ReflectionKind.Module |
|
|
244
|
+
ReflectionKind.Namespace |
|
|
245
|
+
ReflectionKind.TypeAlias |
|
|
246
|
+
ReflectionKind.Function |
|
|
247
|
+
ReflectionKind.Variable;
|
|
248
|
+
const documentReflectionKinds = ReflectionKind.Document;
|
|
249
|
+
if (target.kindOf(pageReflectionKinds)) {
|
|
250
|
+
return PageKind.Reflection;
|
|
251
|
+
}
|
|
252
|
+
if (target.kindOf(documentReflectionKinds)) {
|
|
253
|
+
return PageKind.Document;
|
|
254
|
+
}
|
|
255
|
+
}
|
|
256
|
+
buildChildPages(target, outPages) {
|
|
257
|
+
const kind = this.getPageKind(target);
|
|
258
|
+
if (kind) {
|
|
259
|
+
const idealName = this.getIdealBaseName(target);
|
|
260
|
+
const actualName = this.getFileName(idealName);
|
|
261
|
+
this.fullUrls.set(target, actualName);
|
|
262
|
+
this.sluggers.set(target, new Slugger(this.sluggerConfiguration));
|
|
263
|
+
outPages.push({
|
|
264
|
+
kind,
|
|
265
|
+
model: target,
|
|
266
|
+
url: actualName,
|
|
267
|
+
});
|
|
268
|
+
if (target instanceof Reflection) {
|
|
269
|
+
target.traverse((child) => {
|
|
270
|
+
this.buildChildPages(child, outPages);
|
|
271
|
+
return true;
|
|
272
|
+
});
|
|
273
|
+
}
|
|
274
|
+
}
|
|
275
|
+
else {
|
|
276
|
+
this.buildAnchors(target, target.parent);
|
|
277
|
+
}
|
|
278
|
+
}
|
|
279
|
+
buildAnchors(target, pageTarget) {
|
|
280
|
+
if (!(target instanceof Reflection) || !(pageTarget instanceof Reflection)) {
|
|
281
|
+
return;
|
|
282
|
+
}
|
|
283
|
+
if (!target.isDeclaration() &&
|
|
284
|
+
!target.isSignature() &&
|
|
285
|
+
!target.isTypeParameter()) {
|
|
286
|
+
return;
|
|
287
|
+
}
|
|
288
|
+
// We support linking to reflections for types directly contained within an export
|
|
289
|
+
// but not any deeper. This is because TypeDoc may or may not render the type details
|
|
290
|
+
// for a property depending on whether or not it is deemed useful, and defining a link
|
|
291
|
+
// which might not be used may result in a link being generated which isn't valid. #2808.
|
|
292
|
+
// This should be kept in sync with the renderingChildIsUseful function.
|
|
293
|
+
if (target.kindOf(ReflectionKind.TypeLiteral) &&
|
|
294
|
+
(!target.parent?.kindOf(ReflectionKind.SomeExport) ||
|
|
295
|
+
target.parent.type?.type !==
|
|
296
|
+
"reflection")) {
|
|
297
|
+
return;
|
|
298
|
+
}
|
|
299
|
+
if (!target.kindOf(ReflectionKind.TypeLiteral)) {
|
|
300
|
+
let refl = target;
|
|
301
|
+
const parts = [refl.name];
|
|
302
|
+
while (refl.parent && refl.parent !== pageTarget) {
|
|
303
|
+
refl = refl.parent;
|
|
304
|
+
// Avoid duplicate names for signatures and useless __type in anchors
|
|
305
|
+
if (!refl.kindOf(ReflectionKind.TypeLiteral |
|
|
306
|
+
ReflectionKind.FunctionOrMethod)) {
|
|
307
|
+
parts.unshift(refl.name);
|
|
308
|
+
}
|
|
309
|
+
}
|
|
310
|
+
const anchor = this.getSlugger(pageTarget).slug(parts.join("."));
|
|
311
|
+
this.fullUrls.set(target, this.fullUrls.get(pageTarget) + "#" + anchor);
|
|
312
|
+
this.anchors.set(target, anchor);
|
|
313
|
+
}
|
|
314
|
+
target.traverse((child) => {
|
|
315
|
+
this.buildAnchors(child, pageTarget);
|
|
316
|
+
return true;
|
|
317
|
+
});
|
|
318
|
+
}
|
|
319
|
+
/** Strip non-url safe characters from the specified string. */
|
|
320
|
+
getUrlSafeName(name) {
|
|
321
|
+
return createNormalizedUrl(name);
|
|
322
|
+
}
|
|
323
|
+
getFileName(baseName) {
|
|
324
|
+
const lowerBaseName = baseName.toLocaleLowerCase();
|
|
325
|
+
if (this.usedFileNames.has(lowerBaseName)) {
|
|
326
|
+
let index = 1;
|
|
327
|
+
while (this.usedFileNames.has(`${lowerBaseName}-${index}`)) {
|
|
328
|
+
++index;
|
|
329
|
+
}
|
|
330
|
+
this.usedFileNames.add(`${lowerBaseName}-${index}`);
|
|
331
|
+
return `${baseName}-${index}${this.extension}`;
|
|
332
|
+
}
|
|
333
|
+
this.usedFileNames.add(lowerBaseName);
|
|
334
|
+
return `${baseName}${this.extension}`;
|
|
335
|
+
}
|
|
336
|
+
};
|
|
337
|
+
})();
|
|
338
|
+
export { BaseRouter };
|
|
339
|
+
/**
|
|
340
|
+
* Router which places reflections in folders according to their kind.
|
|
341
|
+
* @group Routers
|
|
342
|
+
*/
|
|
343
|
+
export class KindRouter extends BaseRouter {
|
|
344
|
+
directories = new Map([
|
|
345
|
+
[ReflectionKind.Class, "classes"],
|
|
346
|
+
[ReflectionKind.Interface, "interfaces"],
|
|
347
|
+
[ReflectionKind.Enum, "enums"],
|
|
348
|
+
[ReflectionKind.Namespace, "modules"],
|
|
349
|
+
[ReflectionKind.Module, "modules"],
|
|
350
|
+
[ReflectionKind.TypeAlias, "types"],
|
|
351
|
+
[ReflectionKind.Function, "functions"],
|
|
352
|
+
[ReflectionKind.Variable, "variables"],
|
|
353
|
+
[ReflectionKind.Document, "documents"],
|
|
354
|
+
]);
|
|
355
|
+
getIdealBaseName(reflection) {
|
|
356
|
+
const dir = this.directories.get(reflection.kind);
|
|
357
|
+
const parts = [createNormalizedUrl(reflection.name)];
|
|
358
|
+
while (reflection.parent && !reflection.parent.isProject()) {
|
|
359
|
+
reflection = reflection.parent;
|
|
360
|
+
parts.unshift(createNormalizedUrl(reflection.name));
|
|
361
|
+
}
|
|
362
|
+
const baseName = parts.join(".");
|
|
363
|
+
return `${dir}/${baseName}`;
|
|
364
|
+
}
|
|
365
|
+
}
|
|
366
|
+
/**
|
|
367
|
+
* Router which places reflections in folders according to their kind,
|
|
368
|
+
* but creates each page as `/index.html` to allow for clean URLs.
|
|
369
|
+
* @group Routers
|
|
370
|
+
*/
|
|
371
|
+
export class KindDirRouter extends KindRouter {
|
|
372
|
+
fixLink(link) {
|
|
373
|
+
return link.replace(/\/index\.html(#|$)/, "/$1");
|
|
374
|
+
}
|
|
375
|
+
buildChildPages(reflection, outPages) {
|
|
376
|
+
this.extension = `/index.html`;
|
|
377
|
+
return super.buildChildPages(reflection, outPages);
|
|
378
|
+
}
|
|
379
|
+
getFullUrl(refl) {
|
|
380
|
+
return this.fixLink(super.getFullUrl(refl));
|
|
381
|
+
}
|
|
382
|
+
relativeUrl(from, to) {
|
|
383
|
+
return this.fixLink(super.relativeUrl(from, to));
|
|
384
|
+
}
|
|
385
|
+
}
|
|
386
|
+
/**
|
|
387
|
+
* Router which places reflections in folders according to the module structure.
|
|
388
|
+
* @group Routers
|
|
389
|
+
*/
|
|
390
|
+
export class StructureRouter extends BaseRouter {
|
|
391
|
+
getIdealBaseName(reflection) {
|
|
392
|
+
// Special case: Modules allow slashes in their name. We actually want
|
|
393
|
+
// to allow that here to mirror file structures.
|
|
394
|
+
const parts = [...reflection.name.split("/").map(createNormalizedUrl)];
|
|
395
|
+
while (reflection.parent && !reflection.parent.isProject()) {
|
|
396
|
+
reflection = reflection.parent;
|
|
397
|
+
parts.unshift(...reflection.name.split("/").map(createNormalizedUrl));
|
|
398
|
+
}
|
|
399
|
+
// This should only happen if someone tries to break things with @module
|
|
400
|
+
// I don't think it will ever occur in normal usage.
|
|
401
|
+
if (parts.includes("..")) {
|
|
402
|
+
throw new Error("structure router cannot be used with a project that has a name containing '..'");
|
|
403
|
+
}
|
|
404
|
+
return parts.join("/");
|
|
405
|
+
}
|
|
406
|
+
}
|
|
407
|
+
/**
|
|
408
|
+
* Router which places reflections in folders according to the module structure,
|
|
409
|
+
* but creates each page as `/index.html` to allow for clean URLs.
|
|
410
|
+
* @group Routers
|
|
411
|
+
*/
|
|
412
|
+
export class StructureDirRouter extends StructureRouter {
|
|
413
|
+
fixLink(link) {
|
|
414
|
+
return link.replace(/\/index\.html(#|$)/, "/$1");
|
|
415
|
+
}
|
|
416
|
+
buildChildPages(reflection, outPages) {
|
|
417
|
+
this.extension = `/index.html`;
|
|
418
|
+
return super.buildChildPages(reflection, outPages);
|
|
419
|
+
}
|
|
420
|
+
getFullUrl(refl) {
|
|
421
|
+
return this.fixLink(super.getFullUrl(refl));
|
|
422
|
+
}
|
|
423
|
+
relativeUrl(from, to) {
|
|
424
|
+
return this.fixLink(super.relativeUrl(from, to));
|
|
425
|
+
}
|
|
426
|
+
}
|
|
427
|
+
/**
|
|
428
|
+
* Router which places reflections in folders according to `@group` tags.
|
|
429
|
+
* @group Routers
|
|
430
|
+
*/
|
|
431
|
+
let GroupRouter = (() => {
|
|
432
|
+
let _classSuper = BaseRouter;
|
|
433
|
+
let _groupReferencesByType_decorators;
|
|
434
|
+
let _groupReferencesByType_initializers = [];
|
|
435
|
+
let _groupReferencesByType_extraInitializers = [];
|
|
436
|
+
return class GroupRouter extends _classSuper {
|
|
437
|
+
static {
|
|
438
|
+
const _metadata = typeof Symbol === "function" && Symbol.metadata ? Object.create(_classSuper[Symbol.metadata] ?? null) : void 0;
|
|
439
|
+
_groupReferencesByType_decorators = [Option("groupReferencesByType")];
|
|
440
|
+
__esDecorate(this, null, _groupReferencesByType_decorators, { kind: "accessor", name: "groupReferencesByType", static: false, private: false, access: { has: obj => "groupReferencesByType" in obj, get: obj => obj.groupReferencesByType, set: (obj, value) => { obj.groupReferencesByType = value; } }, metadata: _metadata }, _groupReferencesByType_initializers, _groupReferencesByType_extraInitializers);
|
|
441
|
+
if (_metadata) Object.defineProperty(this, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });
|
|
442
|
+
}
|
|
443
|
+
#groupReferencesByType_accessor_storage = __runInitializers(this, _groupReferencesByType_initializers, void 0);
|
|
444
|
+
get groupReferencesByType() { return this.#groupReferencesByType_accessor_storage; }
|
|
445
|
+
set groupReferencesByType(value) { this.#groupReferencesByType_accessor_storage = value; }
|
|
446
|
+
getGroup(reflection) {
|
|
447
|
+
if (reflection.isDeclaration() || reflection.isDocument()) {
|
|
448
|
+
const group = GroupPlugin.getGroups(reflection, this.groupReferencesByType);
|
|
449
|
+
return group.values().next().value;
|
|
450
|
+
}
|
|
451
|
+
throw new Error("Tried to render a non declaration/document to a page, not supported by GroupRouter");
|
|
452
|
+
}
|
|
453
|
+
getIdealBaseName(reflection) {
|
|
454
|
+
const group = this.getGroup(reflection)
|
|
455
|
+
.split("/")
|
|
456
|
+
.map(createNormalizedUrl)
|
|
457
|
+
.join("/");
|
|
458
|
+
const parts = [createNormalizedUrl(reflection.name)];
|
|
459
|
+
while (reflection.parent && !reflection.parent.isProject()) {
|
|
460
|
+
reflection = reflection.parent;
|
|
461
|
+
parts.unshift(createNormalizedUrl(reflection.name));
|
|
462
|
+
}
|
|
463
|
+
const baseName = parts.join(".");
|
|
464
|
+
return `${group}/${baseName}`;
|
|
465
|
+
}
|
|
466
|
+
constructor() {
|
|
467
|
+
super(...arguments);
|
|
468
|
+
__runInitializers(this, _groupReferencesByType_extraInitializers);
|
|
469
|
+
}
|
|
470
|
+
};
|
|
471
|
+
})();
|
|
472
|
+
export { GroupRouter };
|
|
473
|
+
/**
|
|
474
|
+
* Router which places reflections in folders according to `@category` tags.
|
|
475
|
+
* @group Routers
|
|
476
|
+
*/
|
|
477
|
+
let CategoryRouter = (() => {
|
|
478
|
+
let _classSuper = BaseRouter;
|
|
479
|
+
let _defaultCategory_decorators;
|
|
480
|
+
let _defaultCategory_initializers = [];
|
|
481
|
+
let _defaultCategory_extraInitializers = [];
|
|
482
|
+
return class CategoryRouter extends _classSuper {
|
|
483
|
+
static {
|
|
484
|
+
const _metadata = typeof Symbol === "function" && Symbol.metadata ? Object.create(_classSuper[Symbol.metadata] ?? null) : void 0;
|
|
485
|
+
_defaultCategory_decorators = [Option("defaultCategory")];
|
|
486
|
+
__esDecorate(this, null, _defaultCategory_decorators, { kind: "accessor", name: "defaultCategory", static: false, private: false, access: { has: obj => "defaultCategory" in obj, get: obj => obj.defaultCategory, set: (obj, value) => { obj.defaultCategory = value; } }, metadata: _metadata }, _defaultCategory_initializers, _defaultCategory_extraInitializers);
|
|
487
|
+
if (_metadata) Object.defineProperty(this, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });
|
|
488
|
+
}
|
|
489
|
+
#defaultCategory_accessor_storage = __runInitializers(this, _defaultCategory_initializers, void 0);
|
|
490
|
+
get defaultCategory() { return this.#defaultCategory_accessor_storage; }
|
|
491
|
+
set defaultCategory(value) { this.#defaultCategory_accessor_storage = value; }
|
|
492
|
+
getCategory(reflection) {
|
|
493
|
+
if (reflection.isDeclaration() || reflection.isDocument()) {
|
|
494
|
+
const cats = CategoryPlugin.getCategories(reflection);
|
|
495
|
+
return cats.size
|
|
496
|
+
? cats.values().next().value
|
|
497
|
+
: this.defaultCategory;
|
|
498
|
+
}
|
|
499
|
+
throw new Error("Tried to render a non declaration/document to a page, not supported by GroupRouter");
|
|
500
|
+
}
|
|
501
|
+
getIdealBaseName(reflection) {
|
|
502
|
+
const cat = this.getCategory(reflection)
|
|
503
|
+
.split("/")
|
|
504
|
+
.map(createNormalizedUrl)
|
|
505
|
+
.join("/");
|
|
506
|
+
const parts = [createNormalizedUrl(reflection.name)];
|
|
507
|
+
while (reflection.parent && !reflection.parent.isProject()) {
|
|
508
|
+
reflection = reflection.parent;
|
|
509
|
+
parts.unshift(createNormalizedUrl(reflection.name));
|
|
510
|
+
}
|
|
511
|
+
const baseName = parts.join(".");
|
|
512
|
+
return `${cat}/${baseName}`;
|
|
513
|
+
}
|
|
514
|
+
constructor() {
|
|
515
|
+
super(...arguments);
|
|
516
|
+
__runInitializers(this, _defaultCategory_extraInitializers);
|
|
517
|
+
}
|
|
518
|
+
};
|
|
519
|
+
})();
|
|
520
|
+
export { CategoryRouter };
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { RendererComponent } from "./components.js";
|
|
2
|
+
import type { PageEvent, RendererEvent } from "./events.js";
|
|
3
|
+
/**
|
|
4
|
+
* Base class of all themes.
|
|
5
|
+
*
|
|
6
|
+
* The theme class determines how a page is rendered. It is loosely coupled with a router
|
|
7
|
+
* class instance which is also created by the {@link Renderer} class.
|
|
8
|
+
*/
|
|
9
|
+
export declare abstract class Theme extends RendererComponent {
|
|
10
|
+
/**
|
|
11
|
+
* Renders the provided page to a string, which will be written to disk by the {@link Renderer}
|
|
12
|
+
*/
|
|
13
|
+
abstract render(event: PageEvent): string;
|
|
14
|
+
/**
|
|
15
|
+
* Optional hook to call pre-render jobs
|
|
16
|
+
*/
|
|
17
|
+
preRender(_event: RendererEvent): Promise<void>;
|
|
18
|
+
/**
|
|
19
|
+
* Optional hook to call post-render jobs
|
|
20
|
+
*/
|
|
21
|
+
postRender(_event: RendererEvent): Promise<void>;
|
|
22
|
+
}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { RendererComponent } from "./components.js";
|
|
2
|
+
/**
|
|
3
|
+
* Base class of all themes.
|
|
4
|
+
*
|
|
5
|
+
* The theme class determines how a page is rendered. It is loosely coupled with a router
|
|
6
|
+
* class instance which is also created by the {@link Renderer} class.
|
|
7
|
+
*/
|
|
8
|
+
export class Theme extends RendererComponent {
|
|
9
|
+
/**
|
|
10
|
+
* Optional hook to call pre-render jobs
|
|
11
|
+
*/
|
|
12
|
+
async preRender(_event) { }
|
|
13
|
+
/**
|
|
14
|
+
* Optional hook to call post-render jobs
|
|
15
|
+
*/
|
|
16
|
+
async postRender(_event) { }
|
|
17
|
+
}
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
import { ContextAwareRendererComponent } from "../components.js";
|
|
2
|
+
import { MarkdownEvent, type PageEvent, RendererEvent } from "../events.js";
|
|
3
|
+
import { type ValidationOptions } from "../../utils/index.js";
|
|
4
|
+
import type { BundledTheme } from "@gerrit0/mini-shiki";
|
|
5
|
+
import type { DefaultThemeRenderContext, Renderer } from "../index.js";
|
|
6
|
+
import { type CommentDisplayPart } from "../../models/index.js";
|
|
7
|
+
/**
|
|
8
|
+
* Implements markdown and relativeURL helpers for templates.
|
|
9
|
+
* @internal
|
|
10
|
+
*/
|
|
11
|
+
export declare class MarkedPlugin extends ContextAwareRendererComponent {
|
|
12
|
+
accessor lightTheme: BundledTheme;
|
|
13
|
+
accessor darkTheme: BundledTheme;
|
|
14
|
+
accessor markdownItOptions: Record<string, unknown>;
|
|
15
|
+
accessor markdownLinkExternal: boolean;
|
|
16
|
+
accessor validation: ValidationOptions;
|
|
17
|
+
private parser?;
|
|
18
|
+
private renderedRelativeLinks;
|
|
19
|
+
/**
|
|
20
|
+
* This needing to be here really feels hacky... probably some nicer way to do this.
|
|
21
|
+
* Revisit in 0.28.
|
|
22
|
+
*/
|
|
23
|
+
private renderContext;
|
|
24
|
+
private lastHeaderSlug;
|
|
25
|
+
constructor(owner: Renderer);
|
|
26
|
+
/**
|
|
27
|
+
* Highlight the syntax of the given text using Shiki.
|
|
28
|
+
*
|
|
29
|
+
* @param text The text that should be highlighted.
|
|
30
|
+
* @param lang The language that should be used to highlight the string.
|
|
31
|
+
* @return A html string with syntax highlighting.
|
|
32
|
+
*/
|
|
33
|
+
getHighlighted(text: string, lang?: string): string;
|
|
34
|
+
/**
|
|
35
|
+
* Parse the given markdown string and return the resulting html.
|
|
36
|
+
*
|
|
37
|
+
* @param input The markdown string that should be parsed.
|
|
38
|
+
* @returns The resulting html string.
|
|
39
|
+
*/
|
|
40
|
+
parseMarkdown(input: string | readonly CommentDisplayPart[], page: PageEvent<any>, context: DefaultThemeRenderContext): string;
|
|
41
|
+
private displayPartsToMarkdown;
|
|
42
|
+
private onEnd;
|
|
43
|
+
/**
|
|
44
|
+
* Triggered before the renderer starts rendering a project.
|
|
45
|
+
*
|
|
46
|
+
* @param event An event object describing the current render operation.
|
|
47
|
+
*/
|
|
48
|
+
protected onBeginRenderer(event: RendererEvent): void;
|
|
49
|
+
private getSlugger;
|
|
50
|
+
/**
|
|
51
|
+
* Creates an object with options that are passed to the markdown parser.
|
|
52
|
+
*
|
|
53
|
+
* @returns The options object for the markdown parser.
|
|
54
|
+
*/
|
|
55
|
+
private setupParser;
|
|
56
|
+
/**
|
|
57
|
+
* Triggered when {@link MarkedPlugin} parses a markdown string.
|
|
58
|
+
*
|
|
59
|
+
* @param event
|
|
60
|
+
*/
|
|
61
|
+
onParseMarkdown(event: MarkdownEvent): void;
|
|
62
|
+
}
|