@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,14 @@
|
|
|
1
|
+
import type { Application } from "../application.js";
|
|
2
|
+
import type { ProjectReflection } from "../models/index.js";
|
|
3
|
+
import { type OutputSpecification } from "../utils/options/declaration.js";
|
|
4
|
+
export declare class Outputs {
|
|
5
|
+
readonly application: Application;
|
|
6
|
+
private outputs;
|
|
7
|
+
private defaultOutput;
|
|
8
|
+
constructor(application: Application);
|
|
9
|
+
addOutput(name: string, output: (path: string, project: ProjectReflection) => Promise<void>): void;
|
|
10
|
+
setDefaultOutputName(name: string): void;
|
|
11
|
+
getOutputSpecs(): OutputSpecification[];
|
|
12
|
+
writeOutputs(project: ProjectReflection): Promise<void>;
|
|
13
|
+
writeOutput(output: OutputSpecification, project: ProjectReflection): Promise<void>;
|
|
14
|
+
}
|
|
@@ -0,0 +1,92 @@
|
|
|
1
|
+
import { i18n } from "#utils";
|
|
2
|
+
import { ParameterType } from "../utils/options/declaration.js";
|
|
3
|
+
import { nicePath } from "../utils/paths.js";
|
|
4
|
+
export class Outputs {
|
|
5
|
+
application;
|
|
6
|
+
outputs = new Map();
|
|
7
|
+
defaultOutput = "html";
|
|
8
|
+
constructor(application) {
|
|
9
|
+
this.application = application;
|
|
10
|
+
}
|
|
11
|
+
addOutput(name, output) {
|
|
12
|
+
if (this.outputs.has(name)) {
|
|
13
|
+
throw new Error(`Output type '${name}' has already been defined`);
|
|
14
|
+
}
|
|
15
|
+
this.outputs.set(name, output);
|
|
16
|
+
}
|
|
17
|
+
setDefaultOutputName(name) {
|
|
18
|
+
this.defaultOutput = name;
|
|
19
|
+
}
|
|
20
|
+
getOutputSpecs() {
|
|
21
|
+
const options = this.application.options;
|
|
22
|
+
let outputs = [];
|
|
23
|
+
const outputShortcuts = options
|
|
24
|
+
.getDeclarations()
|
|
25
|
+
.filter((decl) => decl.type === ParameterType.Path && decl.outputShortcut);
|
|
26
|
+
// --out is a special case. It isn't marked as a shortcut as what it is
|
|
27
|
+
// a shortcut for may be modified by plugins. However, it is effectively
|
|
28
|
+
// treated as an output shortcut, so check it here.
|
|
29
|
+
if (options.isSet("out")) {
|
|
30
|
+
outputs.push({
|
|
31
|
+
name: this.defaultOutput,
|
|
32
|
+
path: options.getValue("out"),
|
|
33
|
+
});
|
|
34
|
+
}
|
|
35
|
+
for (const shortcut of outputShortcuts) {
|
|
36
|
+
if (options.isSet(shortcut.name)) {
|
|
37
|
+
outputs.push({
|
|
38
|
+
name: shortcut.outputShortcut,
|
|
39
|
+
path: options.getValue(shortcut.name),
|
|
40
|
+
});
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
// If no shortcuts have been defined, use the dedicated outputs option
|
|
44
|
+
if (outputs.length === 0) {
|
|
45
|
+
outputs = options.getValue("outputs") || [];
|
|
46
|
+
}
|
|
47
|
+
// If no outputs have been defined, just write the default output.
|
|
48
|
+
if (!outputs.length) {
|
|
49
|
+
outputs.push({
|
|
50
|
+
name: this.defaultOutput,
|
|
51
|
+
path: options.getValue("out"),
|
|
52
|
+
});
|
|
53
|
+
}
|
|
54
|
+
return outputs;
|
|
55
|
+
}
|
|
56
|
+
async writeOutputs(project) {
|
|
57
|
+
const outputs = this.getOutputSpecs();
|
|
58
|
+
for (const output of outputs) {
|
|
59
|
+
await this.writeOutput(output, project);
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
async writeOutput(output, project) {
|
|
63
|
+
const options = this.application.options;
|
|
64
|
+
const snap = options.snapshot();
|
|
65
|
+
const writer = this.outputs.get(output.name);
|
|
66
|
+
if (!writer) {
|
|
67
|
+
this.application.logger.error(i18n.specified_output_0_has_not_been_defined(output.name));
|
|
68
|
+
return;
|
|
69
|
+
}
|
|
70
|
+
if (!this.application.setOptions(output.options || {}, true)) {
|
|
71
|
+
options.restore(snap);
|
|
72
|
+
return;
|
|
73
|
+
}
|
|
74
|
+
const preErrors = this.application.logger.errorCount;
|
|
75
|
+
const start = Date.now();
|
|
76
|
+
try {
|
|
77
|
+
await writer(output.path, project);
|
|
78
|
+
}
|
|
79
|
+
catch (error) {
|
|
80
|
+
const message = error instanceof Error ? error.message : String(error);
|
|
81
|
+
this.application.logger.error(message);
|
|
82
|
+
}
|
|
83
|
+
if (this.application.logger.errorCount === preErrors) {
|
|
84
|
+
this.application.logger.info(i18n.output_0_generated_at_1(output.name, nicePath(output.path)));
|
|
85
|
+
}
|
|
86
|
+
else {
|
|
87
|
+
this.application.logger.error(i18n.output_0_could_not_be_generated(output.name));
|
|
88
|
+
}
|
|
89
|
+
this.application.logger.verbose(`${output.name} took ${Date.now() - start}ms`);
|
|
90
|
+
options.restore(snap);
|
|
91
|
+
}
|
|
92
|
+
}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { RendererComponent } from "../components.js";
|
|
2
|
+
import type { Renderer } from "../index.js";
|
|
3
|
+
/**
|
|
4
|
+
* A plugin that copies the subdirectory ´assets´ from the current themes
|
|
5
|
+
* source folder to the output directory.
|
|
6
|
+
*/
|
|
7
|
+
export declare class AssetsPlugin extends RendererComponent {
|
|
8
|
+
private accessor favicon;
|
|
9
|
+
private accessor customCss;
|
|
10
|
+
private accessor customJs;
|
|
11
|
+
constructor(owner: Renderer);
|
|
12
|
+
getTranslatedStrings(): Record<string, string>;
|
|
13
|
+
private onRenderBegin;
|
|
14
|
+
/**
|
|
15
|
+
* Triggered before the renderer starts rendering a project.
|
|
16
|
+
*
|
|
17
|
+
* @param event An event object describing the current render operation.
|
|
18
|
+
*/
|
|
19
|
+
private onRenderEnd;
|
|
20
|
+
}
|
|
@@ -0,0 +1,160 @@
|
|
|
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 { RendererComponent } from "../components.js";
|
|
36
|
+
import { RendererEvent } from "../events.js";
|
|
37
|
+
import { copySync, isFile, readFile, writeFileSync } from "../../utils/fs.js";
|
|
38
|
+
import { DefaultTheme } from "../themes/default/DefaultTheme.js";
|
|
39
|
+
import { getStyles } from "../../utils/highlighter.js";
|
|
40
|
+
import { getEnumKeys, i18n } from "#utils";
|
|
41
|
+
import { existsSync } from "fs";
|
|
42
|
+
import { extname, join } from "path";
|
|
43
|
+
import { fileURLToPath } from "url";
|
|
44
|
+
import { ReflectionKind } from "../../models/index.js";
|
|
45
|
+
import { Option } from "../../utils/index.js";
|
|
46
|
+
/**
|
|
47
|
+
* A plugin that copies the subdirectory ´assets´ from the current themes
|
|
48
|
+
* source folder to the output directory.
|
|
49
|
+
*/
|
|
50
|
+
let AssetsPlugin = (() => {
|
|
51
|
+
let _classSuper = RendererComponent;
|
|
52
|
+
let _favicon_decorators;
|
|
53
|
+
let _favicon_initializers = [];
|
|
54
|
+
let _favicon_extraInitializers = [];
|
|
55
|
+
let _customCss_decorators;
|
|
56
|
+
let _customCss_initializers = [];
|
|
57
|
+
let _customCss_extraInitializers = [];
|
|
58
|
+
let _customJs_decorators;
|
|
59
|
+
let _customJs_initializers = [];
|
|
60
|
+
let _customJs_extraInitializers = [];
|
|
61
|
+
return class AssetsPlugin extends _classSuper {
|
|
62
|
+
static {
|
|
63
|
+
const _metadata = typeof Symbol === "function" && Symbol.metadata ? Object.create(_classSuper[Symbol.metadata] ?? null) : void 0;
|
|
64
|
+
_favicon_decorators = [Option("favicon")];
|
|
65
|
+
_customCss_decorators = [Option("customCss")];
|
|
66
|
+
_customJs_decorators = [Option("customJs")];
|
|
67
|
+
__esDecorate(this, null, _favicon_decorators, { kind: "accessor", name: "favicon", static: false, private: false, access: { has: obj => "favicon" in obj, get: obj => obj.favicon, set: (obj, value) => { obj.favicon = value; } }, metadata: _metadata }, _favicon_initializers, _favicon_extraInitializers);
|
|
68
|
+
__esDecorate(this, null, _customCss_decorators, { kind: "accessor", name: "customCss", static: false, private: false, access: { has: obj => "customCss" in obj, get: obj => obj.customCss, set: (obj, value) => { obj.customCss = value; } }, metadata: _metadata }, _customCss_initializers, _customCss_extraInitializers);
|
|
69
|
+
__esDecorate(this, null, _customJs_decorators, { kind: "accessor", name: "customJs", static: false, private: false, access: { has: obj => "customJs" in obj, get: obj => obj.customJs, set: (obj, value) => { obj.customJs = value; } }, metadata: _metadata }, _customJs_initializers, _customJs_extraInitializers);
|
|
70
|
+
if (_metadata) Object.defineProperty(this, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });
|
|
71
|
+
}
|
|
72
|
+
#favicon_accessor_storage = __runInitializers(this, _favicon_initializers, void 0);
|
|
73
|
+
get favicon() { return this.#favicon_accessor_storage; }
|
|
74
|
+
set favicon(value) { this.#favicon_accessor_storage = value; }
|
|
75
|
+
#customCss_accessor_storage = (__runInitializers(this, _favicon_extraInitializers), __runInitializers(this, _customCss_initializers, void 0));
|
|
76
|
+
get customCss() { return this.#customCss_accessor_storage; }
|
|
77
|
+
set customCss(value) { this.#customCss_accessor_storage = value; }
|
|
78
|
+
#customJs_accessor_storage = (__runInitializers(this, _customCss_extraInitializers), __runInitializers(this, _customJs_initializers, void 0));
|
|
79
|
+
get customJs() { return this.#customJs_accessor_storage; }
|
|
80
|
+
set customJs(value) { this.#customJs_accessor_storage = value; }
|
|
81
|
+
constructor(owner) {
|
|
82
|
+
super(owner);
|
|
83
|
+
__runInitializers(this, _customJs_extraInitializers);
|
|
84
|
+
this.owner.on(RendererEvent.BEGIN, this.onRenderBegin.bind(this));
|
|
85
|
+
this.owner.on(RendererEvent.END, this.onRenderEnd.bind(this));
|
|
86
|
+
}
|
|
87
|
+
getTranslatedStrings() {
|
|
88
|
+
const translations = {
|
|
89
|
+
copy: i18n.theme_copy(),
|
|
90
|
+
copied: i18n.theme_copied(),
|
|
91
|
+
normally_hidden: i18n.theme_normally_hidden(),
|
|
92
|
+
hierarchy_expand: i18n.theme_hierarchy_expand(),
|
|
93
|
+
hierarchy_collapse: i18n.theme_hierarchy_collapse(),
|
|
94
|
+
folder: i18n.theme_folder(),
|
|
95
|
+
search_index_not_available: i18n.theme_search_index_not_available(),
|
|
96
|
+
search_no_results_found_for_0: i18n.theme_search_no_results_found_for_0("{0}"),
|
|
97
|
+
};
|
|
98
|
+
for (const key of getEnumKeys(ReflectionKind)) {
|
|
99
|
+
const kind = ReflectionKind[key];
|
|
100
|
+
translations[`kind_${kind}`] = ReflectionKind.singularString(kind);
|
|
101
|
+
}
|
|
102
|
+
return translations;
|
|
103
|
+
}
|
|
104
|
+
onRenderBegin(event) {
|
|
105
|
+
const dest = join(event.outputDirectory, "assets");
|
|
106
|
+
if (!/^https?:\/\//i.test(this.favicon) &&
|
|
107
|
+
[".ico", ".png", ".svg"].includes(extname(this.favicon))) {
|
|
108
|
+
copySync(this.favicon, join(dest, "favicon" + extname(this.favicon)));
|
|
109
|
+
}
|
|
110
|
+
if (this.customCss) {
|
|
111
|
+
this.application.watchFile(this.customCss);
|
|
112
|
+
if (existsSync(this.customCss)) {
|
|
113
|
+
copySync(this.customCss, join(dest, "custom.css"));
|
|
114
|
+
}
|
|
115
|
+
else {
|
|
116
|
+
this.application.logger.error(i18n.custom_css_file_0_does_not_exist(this.customCss));
|
|
117
|
+
}
|
|
118
|
+
}
|
|
119
|
+
if (this.customJs) {
|
|
120
|
+
this.application.watchFile(this.customJs);
|
|
121
|
+
if (existsSync(this.customJs)) {
|
|
122
|
+
copySync(this.customJs, join(dest, "custom.js"));
|
|
123
|
+
}
|
|
124
|
+
else {
|
|
125
|
+
this.application.logger.error(i18n.custom_js_file_0_does_not_exist(this.customJs));
|
|
126
|
+
}
|
|
127
|
+
}
|
|
128
|
+
}
|
|
129
|
+
/**
|
|
130
|
+
* Triggered before the renderer starts rendering a project.
|
|
131
|
+
*
|
|
132
|
+
* @param event An event object describing the current render operation.
|
|
133
|
+
*/
|
|
134
|
+
onRenderEnd(event) {
|
|
135
|
+
if (this.owner.theme instanceof DefaultTheme) {
|
|
136
|
+
const src = join(fileURLToPath(import.meta.url), "../../../../../static");
|
|
137
|
+
const dest = join(event.outputDirectory, "assets");
|
|
138
|
+
copySync(join(src, "style.css"), join(dest, "style.css"));
|
|
139
|
+
const mainJs = readFile(join(src, "main.js"));
|
|
140
|
+
writeFileSync(join(dest, "main.js"), [
|
|
141
|
+
'"use strict";',
|
|
142
|
+
`window.translations=${JSON.stringify(this.getTranslatedStrings())};`,
|
|
143
|
+
mainJs,
|
|
144
|
+
].join("\n"));
|
|
145
|
+
writeFileSync(join(dest, "highlight.css"), getStyles());
|
|
146
|
+
const media = join(event.outputDirectory, "media");
|
|
147
|
+
const toCopy = event.project.files.getNameToAbsoluteMap();
|
|
148
|
+
for (const [fileName, absolute] of toCopy.entries()) {
|
|
149
|
+
if (isFile(absolute)) {
|
|
150
|
+
copySync(absolute, join(media, fileName));
|
|
151
|
+
}
|
|
152
|
+
else {
|
|
153
|
+
this.application.logger.warn(i18n.relative_path_0_is_not_a_file_and_will_not_be_copied_to_output(absolute));
|
|
154
|
+
}
|
|
155
|
+
}
|
|
156
|
+
}
|
|
157
|
+
}
|
|
158
|
+
};
|
|
159
|
+
})();
|
|
160
|
+
export { AssetsPlugin };
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
import * as Path from "path";
|
|
2
|
+
import { RendererComponent } from "../components.js";
|
|
3
|
+
import { RendererEvent } from "../events.js";
|
|
4
|
+
import { writeFile } from "../../utils/index.js";
|
|
5
|
+
import { DefaultTheme } from "../themes/default/DefaultTheme.js";
|
|
6
|
+
import { getHierarchyRoots, getKindClass, getUniquePath } from "../themes/lib.js";
|
|
7
|
+
import { compressJson } from "../../utils/compress.js";
|
|
8
|
+
export class HierarchyPlugin extends RendererComponent {
|
|
9
|
+
constructor(renderer) {
|
|
10
|
+
super(renderer);
|
|
11
|
+
this.owner.on(RendererEvent.BEGIN, this.onRendererBegin.bind(this));
|
|
12
|
+
}
|
|
13
|
+
onRendererBegin(_event) {
|
|
14
|
+
if (!(this.owner.theme instanceof DefaultTheme)) {
|
|
15
|
+
return;
|
|
16
|
+
}
|
|
17
|
+
this.owner.preRenderAsyncJobs.push((event) => this.buildHierarchy(event));
|
|
18
|
+
}
|
|
19
|
+
async buildHierarchy(event) {
|
|
20
|
+
const project = event.project;
|
|
21
|
+
const hierarchy = {
|
|
22
|
+
roots: getHierarchyRoots(project).map((refl) => refl.id),
|
|
23
|
+
reflections: {},
|
|
24
|
+
};
|
|
25
|
+
const queue = [...hierarchy.roots];
|
|
26
|
+
while (queue.length) {
|
|
27
|
+
const id = queue.pop();
|
|
28
|
+
const refl = project.getReflectionById(id);
|
|
29
|
+
if (id in hierarchy.reflections)
|
|
30
|
+
continue;
|
|
31
|
+
const url = this.owner.router.getFullUrl(refl);
|
|
32
|
+
if (!url)
|
|
33
|
+
continue;
|
|
34
|
+
const jsonRecord = {
|
|
35
|
+
name: refl.name,
|
|
36
|
+
kind: refl.kind,
|
|
37
|
+
url,
|
|
38
|
+
class: getKindClass(refl),
|
|
39
|
+
};
|
|
40
|
+
const path = getUniquePath(refl);
|
|
41
|
+
if (path.length > 1) {
|
|
42
|
+
jsonRecord.uniqueNameParents = path
|
|
43
|
+
.slice(0, -1)
|
|
44
|
+
.map((r) => r.id);
|
|
45
|
+
queue.push(...jsonRecord.uniqueNameParents);
|
|
46
|
+
}
|
|
47
|
+
const children = [
|
|
48
|
+
...(refl.implementedBy || []),
|
|
49
|
+
...(refl.extendedBy || []),
|
|
50
|
+
];
|
|
51
|
+
for (const child of children) {
|
|
52
|
+
if (child.reflection) {
|
|
53
|
+
jsonRecord.children ||= [];
|
|
54
|
+
jsonRecord.children.push(child.reflection.id);
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
if (jsonRecord.children) {
|
|
58
|
+
queue.push(...jsonRecord.children);
|
|
59
|
+
}
|
|
60
|
+
hierarchy.reflections[id] = jsonRecord;
|
|
61
|
+
}
|
|
62
|
+
const hierarchyJs = Path.join(event.outputDirectory, "assets", "hierarchy.js");
|
|
63
|
+
await writeFile(hierarchyJs, `window.hierarchyData = "${await compressJson(hierarchy)}"`);
|
|
64
|
+
}
|
|
65
|
+
}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { RendererComponent } from "../components.js";
|
|
2
|
+
import type { Renderer } from "../index.js";
|
|
3
|
+
/**
|
|
4
|
+
* Plugin which is responsible for creating an icons.js file that embeds the icon SVGs
|
|
5
|
+
* within the page on page load to reduce page sizes.
|
|
6
|
+
*/
|
|
7
|
+
export declare class IconsPlugin extends RendererComponent {
|
|
8
|
+
iconHtml?: string;
|
|
9
|
+
constructor(owner: Renderer);
|
|
10
|
+
private onBeginRender;
|
|
11
|
+
private onRenderEnd;
|
|
12
|
+
}
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
import { RendererComponent } from "../components.js";
|
|
2
|
+
import { RendererEvent } from "../events.js";
|
|
3
|
+
import { writeFile } from "../../utils/fs.js";
|
|
4
|
+
import { DefaultTheme } from "../themes/default/DefaultTheme.js";
|
|
5
|
+
import { join } from "path";
|
|
6
|
+
import { JSX } from "#utils";
|
|
7
|
+
const ICONS_JS = `
|
|
8
|
+
(function() {
|
|
9
|
+
addIcons();
|
|
10
|
+
function addIcons() {
|
|
11
|
+
if (document.readyState === "loading") return document.addEventListener("DOMContentLoaded", addIcons);
|
|
12
|
+
const svg = document.body.appendChild(document.createElementNS("http://www.w3.org/2000/svg", "svg"));
|
|
13
|
+
svg.innerHTML = \`SVG_HTML\`;
|
|
14
|
+
svg.style.display = "none";
|
|
15
|
+
if (location.protocol === "file:") updateUseElements();
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
function updateUseElements() {
|
|
19
|
+
document.querySelectorAll("use").forEach(el => {
|
|
20
|
+
if (el.getAttribute("href").includes("#icon-")) {
|
|
21
|
+
el.setAttribute("href", el.getAttribute("href").replace(/.*#/, "#"));
|
|
22
|
+
}
|
|
23
|
+
});
|
|
24
|
+
}
|
|
25
|
+
})()
|
|
26
|
+
`.trim();
|
|
27
|
+
/**
|
|
28
|
+
* Plugin which is responsible for creating an icons.js file that embeds the icon SVGs
|
|
29
|
+
* within the page on page load to reduce page sizes.
|
|
30
|
+
*/
|
|
31
|
+
export class IconsPlugin extends RendererComponent {
|
|
32
|
+
iconHtml;
|
|
33
|
+
constructor(owner) {
|
|
34
|
+
super(owner);
|
|
35
|
+
this.owner.on(RendererEvent.BEGIN, this.onBeginRender.bind(this));
|
|
36
|
+
}
|
|
37
|
+
onBeginRender(_event) {
|
|
38
|
+
if (this.owner.theme instanceof DefaultTheme) {
|
|
39
|
+
this.owner.postRenderAsyncJobs.push((event) => this.onRenderEnd(event));
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
async onRenderEnd(event) {
|
|
43
|
+
const children = [];
|
|
44
|
+
const icons = this.owner.theme.icons;
|
|
45
|
+
for (const [name, icon] of Object.entries(icons)) {
|
|
46
|
+
children.push(JSX.createElement("g", { id: `icon-${name}`, class: "tsd-no-select" }, icon.call(icons).children));
|
|
47
|
+
}
|
|
48
|
+
const svg = JSX.renderElement(JSX.createElement("svg", { xmlns: "http://www.w3.org/2000/svg" }, children));
|
|
49
|
+
const js = ICONS_JS.replace("SVG_HTML", JSX.renderElement(JSX.createElement(JSX.Fragment, null, children)).replaceAll("`", "\\`"));
|
|
50
|
+
const svgPath = join(event.outputDirectory, "assets/icons.svg");
|
|
51
|
+
const jsPath = join(event.outputDirectory, "assets/icons.js");
|
|
52
|
+
await Promise.all([writeFile(svgPath, svg), writeFile(jsPath, js)]);
|
|
53
|
+
}
|
|
54
|
+
}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { RendererComponent } from "../components.js";
|
|
2
|
+
import type { Renderer } from "../index.js";
|
|
3
|
+
/**
|
|
4
|
+
* A plugin that exports an index of the project to a javascript file.
|
|
5
|
+
*
|
|
6
|
+
* The resulting javascript file can be used to build a simple search function.
|
|
7
|
+
*/
|
|
8
|
+
export declare class JavascriptIndexPlugin extends RendererComponent {
|
|
9
|
+
private accessor searchComments;
|
|
10
|
+
private accessor searchDocuments;
|
|
11
|
+
private accessor searchGroupBoosts;
|
|
12
|
+
private accessor searchCategoryBoosts;
|
|
13
|
+
accessor groupReferencesByType: boolean;
|
|
14
|
+
private unusedGroupBoosts;
|
|
15
|
+
private unusedCatBoosts;
|
|
16
|
+
constructor(owner: Renderer);
|
|
17
|
+
private onRendererBegin;
|
|
18
|
+
private buildSearchIndex;
|
|
19
|
+
private getBoost;
|
|
20
|
+
private getCommentSearchText;
|
|
21
|
+
private getDocumentSearchText;
|
|
22
|
+
}
|