@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,635 @@
|
|
|
1
|
+
import { assertNever } from "#utils";
|
|
2
|
+
import { htmlEntities } from "./html-entities.js";
|
|
3
|
+
const htmlEntitiesTrie = {};
|
|
4
|
+
for (const [name, data] of Object.entries(htmlEntities)) {
|
|
5
|
+
let current = htmlEntitiesTrie;
|
|
6
|
+
for (let i = 0; i < name.length; ++i) {
|
|
7
|
+
current.children ||= {};
|
|
8
|
+
current = current.children[name.charCodeAt(i)] ||= {};
|
|
9
|
+
}
|
|
10
|
+
current.data = data;
|
|
11
|
+
}
|
|
12
|
+
/**
|
|
13
|
+
* Replaces non-[URL code points](https://url.spec.whatwg.org/#url-code-points)
|
|
14
|
+
* with an underscore. Also disallows some additional special characters which either
|
|
15
|
+
* result in confusing file names or invalid file names on some platform.
|
|
16
|
+
*
|
|
17
|
+
* Ref: #2714
|
|
18
|
+
*/
|
|
19
|
+
export function createNormalizedUrl(url) {
|
|
20
|
+
// We are intentionally operating on code points here.
|
|
21
|
+
// eslint-disable-next-line @typescript-eslint/no-misused-spread
|
|
22
|
+
const codePoints = [...url].map((c) => c.codePointAt(0));
|
|
23
|
+
for (let i = 0; i < codePoints.length; ++i) {
|
|
24
|
+
if (isalnum(codePoints[i]))
|
|
25
|
+
continue;
|
|
26
|
+
switch (codePoints[i]) {
|
|
27
|
+
// case Chars.BANG: // commonly used for shell history access
|
|
28
|
+
// case Chars.DOLLAR: // variable reference in shells
|
|
29
|
+
// case Chars.AMPERSAND: // confusing in urls with params
|
|
30
|
+
// case Chars.APOSTROPHE: // sometimes permitted for quoting
|
|
31
|
+
case Chars.LEFT_PAREN:
|
|
32
|
+
case Chars.RIGHT_PAREN:
|
|
33
|
+
// case Chars.ASTERISK: // not allowed in file names on windows
|
|
34
|
+
case Chars.PLUS:
|
|
35
|
+
case Chars.COMMA:
|
|
36
|
+
case Chars.DASH:
|
|
37
|
+
case Chars.DOT:
|
|
38
|
+
// case Chars.SOLIDUS: // not allowed in file names
|
|
39
|
+
// case Chars.COLON: // not allowed in file names on windows
|
|
40
|
+
// case Chars.SEMICOLON: // appears suspiciously close to colon
|
|
41
|
+
// case Chars.EQUALS: // confusing in urls with params
|
|
42
|
+
// case Chars.QUESTION_MARK: // not allowed in file names on windows
|
|
43
|
+
// case Chars.AT: // avoid confusing some (bad) software that thinks this is an email
|
|
44
|
+
case Chars.UNDERSCORE:
|
|
45
|
+
// case Chars.TILDE: // reference to $HOME on Linux
|
|
46
|
+
continue;
|
|
47
|
+
}
|
|
48
|
+
if (0xa0 <= codePoints[i] && codePoints[i] <= 0x10fffd) {
|
|
49
|
+
if (!isSurrogate(codePoints[i])) {
|
|
50
|
+
continue;
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
codePoints[i] = Chars.UNDERSCORE;
|
|
54
|
+
}
|
|
55
|
+
return String.fromCodePoint(...codePoints);
|
|
56
|
+
}
|
|
57
|
+
var Chars;
|
|
58
|
+
(function (Chars) {
|
|
59
|
+
Chars[Chars["EOF"] = -1] = "EOF";
|
|
60
|
+
Chars[Chars["NULL"] = 0] = "NULL";
|
|
61
|
+
Chars[Chars["TAB"] = 9] = "TAB";
|
|
62
|
+
Chars[Chars["LF"] = 10] = "LF";
|
|
63
|
+
Chars[Chars["FF"] = 12] = "FF";
|
|
64
|
+
Chars[Chars["SPACE"] = 32] = "SPACE";
|
|
65
|
+
Chars[Chars["NUMBER_SIGN"] = 35] = "NUMBER_SIGN";
|
|
66
|
+
Chars[Chars["BANG"] = 33] = "BANG";
|
|
67
|
+
Chars[Chars["QUOTATION_MARK"] = 34] = "QUOTATION_MARK";
|
|
68
|
+
Chars[Chars["DOLLAR"] = 36] = "DOLLAR";
|
|
69
|
+
Chars[Chars["AMPERSAND"] = 38] = "AMPERSAND";
|
|
70
|
+
Chars[Chars["APOSTROPHE"] = 39] = "APOSTROPHE";
|
|
71
|
+
Chars[Chars["LEFT_PAREN"] = 40] = "LEFT_PAREN";
|
|
72
|
+
Chars[Chars["RIGHT_PAREN"] = 41] = "RIGHT_PAREN";
|
|
73
|
+
Chars[Chars["ASTERISK"] = 42] = "ASTERISK";
|
|
74
|
+
Chars[Chars["PLUS"] = 43] = "PLUS";
|
|
75
|
+
Chars[Chars["COMMA"] = 44] = "COMMA";
|
|
76
|
+
Chars[Chars["DASH"] = 45] = "DASH";
|
|
77
|
+
Chars[Chars["DOT"] = 46] = "DOT";
|
|
78
|
+
Chars[Chars["SOLIDUS"] = 47] = "SOLIDUS";
|
|
79
|
+
Chars[Chars["ZERO"] = 48] = "ZERO";
|
|
80
|
+
Chars[Chars["NINE"] = 57] = "NINE";
|
|
81
|
+
Chars[Chars["COLON"] = 58] = "COLON";
|
|
82
|
+
Chars[Chars["SEMICOLON"] = 59] = "SEMICOLON";
|
|
83
|
+
Chars[Chars["LESS_THAN"] = 60] = "LESS_THAN";
|
|
84
|
+
Chars[Chars["EQUALS"] = 61] = "EQUALS";
|
|
85
|
+
Chars[Chars["GREATER_THAN"] = 62] = "GREATER_THAN";
|
|
86
|
+
Chars[Chars["QUESTION_MARK"] = 63] = "QUESTION_MARK";
|
|
87
|
+
Chars[Chars["AT"] = 64] = "AT";
|
|
88
|
+
Chars[Chars["UPPERCASE_A"] = 65] = "UPPERCASE_A";
|
|
89
|
+
Chars[Chars["UPPERCASE_F"] = 70] = "UPPERCASE_F";
|
|
90
|
+
Chars[Chars["UPPERCASE_X"] = 88] = "UPPERCASE_X";
|
|
91
|
+
Chars[Chars["UPPERCASE_Z"] = 90] = "UPPERCASE_Z";
|
|
92
|
+
Chars[Chars["UNDERSCORE"] = 95] = "UNDERSCORE";
|
|
93
|
+
Chars[Chars["GRAVE_ACCENT"] = 96] = "GRAVE_ACCENT";
|
|
94
|
+
Chars[Chars["LOWERCASE_A"] = 97] = "LOWERCASE_A";
|
|
95
|
+
Chars[Chars["LOWERCASE_F"] = 102] = "LOWERCASE_F";
|
|
96
|
+
Chars[Chars["LOWERCASE_X"] = 120] = "LOWERCASE_X";
|
|
97
|
+
Chars[Chars["LOWERCASE_Z"] = 122] = "LOWERCASE_Z";
|
|
98
|
+
Chars[Chars["TILDE"] = 126] = "TILDE";
|
|
99
|
+
})(Chars || (Chars = {}));
|
|
100
|
+
function isalpha(ch) {
|
|
101
|
+
return Chars.LOWERCASE_A <= (ch | 0x20) && (ch | 0x20) <= Chars.LOWERCASE_Z;
|
|
102
|
+
}
|
|
103
|
+
function isdigit(ch) {
|
|
104
|
+
return Chars.ZERO <= ch && ch <= Chars.NINE;
|
|
105
|
+
}
|
|
106
|
+
function isalnum(ch) {
|
|
107
|
+
return isalpha(ch) || isdigit(ch);
|
|
108
|
+
}
|
|
109
|
+
function isxdigit(ch) {
|
|
110
|
+
return (isdigit(ch) ||
|
|
111
|
+
(Chars.LOWERCASE_A <= (ch | 0x20) && (ch | 0x20) <= Chars.LOWERCASE_F));
|
|
112
|
+
}
|
|
113
|
+
export var ParserState;
|
|
114
|
+
(function (ParserState) {
|
|
115
|
+
ParserState[ParserState["BeforeAttributeName"] = 0] = "BeforeAttributeName";
|
|
116
|
+
ParserState[ParserState["AfterAttributeName"] = 1] = "AfterAttributeName";
|
|
117
|
+
ParserState[ParserState["BeforeAttributeValue"] = 2] = "BeforeAttributeValue";
|
|
118
|
+
ParserState[ParserState["END"] = 3] = "END";
|
|
119
|
+
})(ParserState || (ParserState = {}));
|
|
120
|
+
/**
|
|
121
|
+
* Parser for HTML attributes, each call to {@link step} will
|
|
122
|
+
* pause the parser at key points used to extract relative links from markdown
|
|
123
|
+
*
|
|
124
|
+
* The parser will pause at the points marked with `^`:
|
|
125
|
+
*
|
|
126
|
+
* ```text
|
|
127
|
+
* attr="value" attr='value' attr=value attr attr2 />
|
|
128
|
+
* ^ ^ ^ ^ ^ ^ ^ ^^
|
|
129
|
+
* BeforeValue | | | | | ||
|
|
130
|
+
* BeforeName | | | | ||
|
|
131
|
+
* BeforeValue | | | ||
|
|
132
|
+
* BeforeName | | ||
|
|
133
|
+
* BeforeValue| ||
|
|
134
|
+
* BeforeName ||
|
|
135
|
+
* AfterName
|
|
136
|
+
* AfterName
|
|
137
|
+
* END
|
|
138
|
+
* ```
|
|
139
|
+
*/
|
|
140
|
+
export class HtmlAttributeParser {
|
|
141
|
+
text;
|
|
142
|
+
pos;
|
|
143
|
+
state = ParserState.BeforeAttributeName;
|
|
144
|
+
currentAttributeName = "";
|
|
145
|
+
currentAttributeValueStart = -1;
|
|
146
|
+
currentAttributeValueEnd = -1;
|
|
147
|
+
currentAttributeValue = "";
|
|
148
|
+
temporaryBuffer = [];
|
|
149
|
+
characterReferenceCode = 0;
|
|
150
|
+
constructor(text, pos = 0) {
|
|
151
|
+
this.text = text;
|
|
152
|
+
this.pos = pos;
|
|
153
|
+
}
|
|
154
|
+
step() {
|
|
155
|
+
switch (this.state) {
|
|
156
|
+
case ParserState.BeforeAttributeName:
|
|
157
|
+
this.beforeAttributeName();
|
|
158
|
+
return;
|
|
159
|
+
case ParserState.AfterAttributeName:
|
|
160
|
+
this.afterAttributeName();
|
|
161
|
+
return;
|
|
162
|
+
case ParserState.BeforeAttributeValue:
|
|
163
|
+
this.beforeAttributeValue();
|
|
164
|
+
return;
|
|
165
|
+
case ParserState.END:
|
|
166
|
+
return; // Do nothing
|
|
167
|
+
}
|
|
168
|
+
/* c8 ignore next */
|
|
169
|
+
assertNever(this.state);
|
|
170
|
+
}
|
|
171
|
+
peek() {
|
|
172
|
+
const ch = this.text.charCodeAt(this.pos);
|
|
173
|
+
return isNaN(ch) ? Chars.EOF : ch;
|
|
174
|
+
}
|
|
175
|
+
consume() {
|
|
176
|
+
const ch = this.peek();
|
|
177
|
+
++this.pos;
|
|
178
|
+
return ch;
|
|
179
|
+
}
|
|
180
|
+
// https://html.spec.whatwg.org/multipage/parsing.html#before-attribute-name-state
|
|
181
|
+
beforeAttributeName() {
|
|
182
|
+
this.currentAttributeName = "";
|
|
183
|
+
this.currentAttributeValue = "";
|
|
184
|
+
loop: for (;;) {
|
|
185
|
+
switch (this.consume()) {
|
|
186
|
+
case Chars.TAB:
|
|
187
|
+
case Chars.LF:
|
|
188
|
+
case Chars.FF:
|
|
189
|
+
case Chars.SPACE:
|
|
190
|
+
break;
|
|
191
|
+
case Chars.SOLIDUS:
|
|
192
|
+
case Chars.GREATER_THAN:
|
|
193
|
+
case Chars.EOF:
|
|
194
|
+
--this.pos;
|
|
195
|
+
this.afterAttributeName();
|
|
196
|
+
break loop;
|
|
197
|
+
case Chars.EQUALS:
|
|
198
|
+
// Unexpected equals sign before attribute name parse error.
|
|
199
|
+
// fall through
|
|
200
|
+
default:
|
|
201
|
+
--this.pos;
|
|
202
|
+
this.attributeName();
|
|
203
|
+
break loop;
|
|
204
|
+
}
|
|
205
|
+
}
|
|
206
|
+
}
|
|
207
|
+
// https://html.spec.whatwg.org/multipage/parsing.html#attribute-name-state
|
|
208
|
+
attributeName() {
|
|
209
|
+
const startPos = this.pos;
|
|
210
|
+
loop: for (;;) {
|
|
211
|
+
const ch = this.consume();
|
|
212
|
+
switch (ch) {
|
|
213
|
+
case Chars.TAB:
|
|
214
|
+
case Chars.LF:
|
|
215
|
+
case Chars.FF:
|
|
216
|
+
case Chars.SPACE:
|
|
217
|
+
case Chars.SOLIDUS:
|
|
218
|
+
case Chars.GREATER_THAN:
|
|
219
|
+
case Chars.EOF:
|
|
220
|
+
--this.pos;
|
|
221
|
+
this.state = ParserState.AfterAttributeName;
|
|
222
|
+
break loop;
|
|
223
|
+
case Chars.EQUALS:
|
|
224
|
+
this.state = ParserState.BeforeAttributeValue;
|
|
225
|
+
break loop;
|
|
226
|
+
case Chars.QUOTATION_MARK:
|
|
227
|
+
case Chars.APOSTROPHE:
|
|
228
|
+
case Chars.LESS_THAN:
|
|
229
|
+
// This is an unexpected-character-in-attribute-name parse error. Treat it as per the "anything else" entry below.
|
|
230
|
+
// fall through
|
|
231
|
+
default:
|
|
232
|
+
// Do nothing, we collect the attribute name after the loop
|
|
233
|
+
break;
|
|
234
|
+
}
|
|
235
|
+
}
|
|
236
|
+
if (this.state === ParserState.BeforeAttributeValue) {
|
|
237
|
+
this.currentAttributeName = this.text
|
|
238
|
+
.substring(startPos, this.pos - 1)
|
|
239
|
+
.toLowerCase();
|
|
240
|
+
}
|
|
241
|
+
else {
|
|
242
|
+
this.currentAttributeName = this.text
|
|
243
|
+
.substring(startPos, this.pos)
|
|
244
|
+
.toLowerCase();
|
|
245
|
+
}
|
|
246
|
+
}
|
|
247
|
+
// https://html.spec.whatwg.org/multipage/parsing.html#after-attribute-name-state
|
|
248
|
+
afterAttributeName() {
|
|
249
|
+
loop: for (;;) {
|
|
250
|
+
switch (this.consume()) {
|
|
251
|
+
case Chars.TAB:
|
|
252
|
+
case Chars.LF:
|
|
253
|
+
case Chars.FF:
|
|
254
|
+
case Chars.SPACE:
|
|
255
|
+
break; // Ignore the character
|
|
256
|
+
case Chars.SOLIDUS:
|
|
257
|
+
this.state = ParserState.END; // self-closing start tag state
|
|
258
|
+
break loop;
|
|
259
|
+
case Chars.EQUALS:
|
|
260
|
+
this.state = ParserState.BeforeAttributeValue;
|
|
261
|
+
break loop;
|
|
262
|
+
case Chars.GREATER_THAN:
|
|
263
|
+
this.state = ParserState.END; // data state
|
|
264
|
+
break loop;
|
|
265
|
+
case Chars.EOF:
|
|
266
|
+
this.state = ParserState.END; // eof-in-tag parse error
|
|
267
|
+
break loop;
|
|
268
|
+
default:
|
|
269
|
+
--this.pos;
|
|
270
|
+
this.attributeName();
|
|
271
|
+
break loop;
|
|
272
|
+
}
|
|
273
|
+
}
|
|
274
|
+
}
|
|
275
|
+
// https://html.spec.whatwg.org/multipage/parsing.html#before-attribute-value-state
|
|
276
|
+
beforeAttributeValue() {
|
|
277
|
+
loop: for (;;) {
|
|
278
|
+
switch (this.consume()) {
|
|
279
|
+
case Chars.TAB:
|
|
280
|
+
case Chars.LF:
|
|
281
|
+
case Chars.FF:
|
|
282
|
+
case Chars.SPACE:
|
|
283
|
+
break; // Ignore the character
|
|
284
|
+
case Chars.QUOTATION_MARK:
|
|
285
|
+
this.attributeValueDoubleQuoted();
|
|
286
|
+
break loop;
|
|
287
|
+
case Chars.APOSTROPHE:
|
|
288
|
+
this.attributeValueSingleQuoted();
|
|
289
|
+
break loop;
|
|
290
|
+
case Chars.GREATER_THAN:
|
|
291
|
+
this.state = ParserState.END; // missing-attribute-value parse error
|
|
292
|
+
break loop;
|
|
293
|
+
default:
|
|
294
|
+
--this.pos;
|
|
295
|
+
this.attributeValueUnquoted();
|
|
296
|
+
break loop;
|
|
297
|
+
}
|
|
298
|
+
}
|
|
299
|
+
}
|
|
300
|
+
// https://html.spec.whatwg.org/multipage/parsing.html#attribute-value-(double-quoted)-state
|
|
301
|
+
attributeValueDoubleQuoted() {
|
|
302
|
+
this.currentAttributeValueStart = this.pos;
|
|
303
|
+
loop: for (;;) {
|
|
304
|
+
switch (this.consume()) {
|
|
305
|
+
case Chars.QUOTATION_MARK:
|
|
306
|
+
this.currentAttributeValueEnd = this.pos - 1;
|
|
307
|
+
this.afterAttributeValueQuoted();
|
|
308
|
+
break loop;
|
|
309
|
+
case Chars.AMPERSAND:
|
|
310
|
+
this.characterReference();
|
|
311
|
+
break;
|
|
312
|
+
case Chars.NULL:
|
|
313
|
+
this.currentAttributeValue += String.fromCharCode(0xfffd);
|
|
314
|
+
break;
|
|
315
|
+
case Chars.EOF:
|
|
316
|
+
this.currentAttributeValueEnd = this.pos;
|
|
317
|
+
this.state = ParserState.END; // eof-in-tag parse error
|
|
318
|
+
break loop;
|
|
319
|
+
default:
|
|
320
|
+
this.currentAttributeValue += this.text[this.pos - 1];
|
|
321
|
+
break;
|
|
322
|
+
}
|
|
323
|
+
}
|
|
324
|
+
}
|
|
325
|
+
// https://html.spec.whatwg.org/multipage/parsing.html#attribute-value-(single-quoted)-state
|
|
326
|
+
attributeValueSingleQuoted() {
|
|
327
|
+
this.currentAttributeValueStart = this.pos;
|
|
328
|
+
loop: for (;;) {
|
|
329
|
+
switch (this.consume()) {
|
|
330
|
+
case Chars.APOSTROPHE:
|
|
331
|
+
this.currentAttributeValueEnd = this.pos - 1;
|
|
332
|
+
this.afterAttributeValueQuoted();
|
|
333
|
+
break loop;
|
|
334
|
+
case Chars.AMPERSAND:
|
|
335
|
+
this.characterReference();
|
|
336
|
+
break;
|
|
337
|
+
case Chars.NULL:
|
|
338
|
+
this.currentAttributeValue += String.fromCharCode(0xfffd);
|
|
339
|
+
break;
|
|
340
|
+
case Chars.EOF:
|
|
341
|
+
this.currentAttributeValueEnd = this.pos;
|
|
342
|
+
this.state = ParserState.END; // eof-in-tag parse error
|
|
343
|
+
break loop;
|
|
344
|
+
default:
|
|
345
|
+
this.currentAttributeValue += this.text[this.pos - 1];
|
|
346
|
+
break;
|
|
347
|
+
}
|
|
348
|
+
}
|
|
349
|
+
}
|
|
350
|
+
// https://html.spec.whatwg.org/multipage/parsing.html#attribute-value-(unquoted)-state
|
|
351
|
+
attributeValueUnquoted() {
|
|
352
|
+
this.currentAttributeValueStart = this.pos;
|
|
353
|
+
loop: for (;;) {
|
|
354
|
+
switch (this.consume()) {
|
|
355
|
+
case Chars.TAB:
|
|
356
|
+
case Chars.LF:
|
|
357
|
+
case Chars.FF:
|
|
358
|
+
case Chars.SPACE:
|
|
359
|
+
this.currentAttributeValueEnd = this.pos - 1;
|
|
360
|
+
this.state = ParserState.BeforeAttributeName;
|
|
361
|
+
break loop;
|
|
362
|
+
case Chars.AMPERSAND:
|
|
363
|
+
this.characterReference();
|
|
364
|
+
break;
|
|
365
|
+
case Chars.GREATER_THAN:
|
|
366
|
+
this.currentAttributeValueEnd = this.pos;
|
|
367
|
+
this.state = ParserState.END;
|
|
368
|
+
break loop;
|
|
369
|
+
case Chars.NULL:
|
|
370
|
+
this.currentAttributeValue += String.fromCharCode(0xfffd);
|
|
371
|
+
break;
|
|
372
|
+
case Chars.EOF:
|
|
373
|
+
this.currentAttributeValueEnd = this.pos;
|
|
374
|
+
this.state = ParserState.END; // eof-in-tag parse error
|
|
375
|
+
break loop;
|
|
376
|
+
case Chars.QUOTATION_MARK:
|
|
377
|
+
case Chars.APOSTROPHE:
|
|
378
|
+
case Chars.LESS_THAN:
|
|
379
|
+
case Chars.EQUALS:
|
|
380
|
+
case Chars.GRAVE_ACCENT:
|
|
381
|
+
// This is an unexpected-character-in-unquoted-attribute-value parse error. Treat it as per the "anything else" entry below.
|
|
382
|
+
// fall through
|
|
383
|
+
default:
|
|
384
|
+
this.currentAttributeValue += this.text[this.pos - 1];
|
|
385
|
+
break;
|
|
386
|
+
}
|
|
387
|
+
}
|
|
388
|
+
}
|
|
389
|
+
// https://html.spec.whatwg.org/multipage/parsing.html#after-attribute-value-(quoted)-state
|
|
390
|
+
afterAttributeValueQuoted() {
|
|
391
|
+
switch (this.consume()) {
|
|
392
|
+
case Chars.TAB:
|
|
393
|
+
case Chars.LF:
|
|
394
|
+
case Chars.FF:
|
|
395
|
+
case Chars.SPACE:
|
|
396
|
+
this.state = ParserState.BeforeAttributeName;
|
|
397
|
+
break;
|
|
398
|
+
case Chars.SOLIDUS:
|
|
399
|
+
case Chars.GREATER_THAN:
|
|
400
|
+
case Chars.EOF:
|
|
401
|
+
this.state = ParserState.END;
|
|
402
|
+
break;
|
|
403
|
+
default:
|
|
404
|
+
// This is a missing-whitespace-between-attributes parse error. Reconsume in the before attribute name state.
|
|
405
|
+
--this.pos;
|
|
406
|
+
this.state = ParserState.BeforeAttributeName;
|
|
407
|
+
break;
|
|
408
|
+
}
|
|
409
|
+
}
|
|
410
|
+
// https://html.spec.whatwg.org/multipage/parsing.html#character-reference-state
|
|
411
|
+
characterReference() {
|
|
412
|
+
this.temporaryBuffer = [Chars.AMPERSAND];
|
|
413
|
+
const next = this.consume();
|
|
414
|
+
if (isalnum(next)) {
|
|
415
|
+
--this.pos;
|
|
416
|
+
this.namedCharacterReference();
|
|
417
|
+
}
|
|
418
|
+
else if (next == Chars.NUMBER_SIGN) {
|
|
419
|
+
this.temporaryBuffer.push(next);
|
|
420
|
+
this.numericCharacterReference();
|
|
421
|
+
}
|
|
422
|
+
else {
|
|
423
|
+
--this.pos;
|
|
424
|
+
this.flushTemporaryBuffer();
|
|
425
|
+
}
|
|
426
|
+
}
|
|
427
|
+
// https://html.spec.whatwg.org/multipage/parsing.html#named-character-reference-state
|
|
428
|
+
// Intentionally only handling part of an attribute
|
|
429
|
+
namedCharacterReference() {
|
|
430
|
+
// Consume the maximum number of characters possible, where the consumed
|
|
431
|
+
// characters are one of the identifiers in the first column of the named
|
|
432
|
+
// character references table. Append each character to the temporary buffer
|
|
433
|
+
// when it's consumed.
|
|
434
|
+
let currentTrie = htmlEntitiesTrie;
|
|
435
|
+
for (;;) {
|
|
436
|
+
const ch = this.consume();
|
|
437
|
+
this.temporaryBuffer.push(ch);
|
|
438
|
+
if (currentTrie.children && ch in currentTrie.children) {
|
|
439
|
+
currentTrie = currentTrie.children[ch];
|
|
440
|
+
}
|
|
441
|
+
else {
|
|
442
|
+
--this.pos;
|
|
443
|
+
this.temporaryBuffer.pop();
|
|
444
|
+
const lastChar = this.temporaryBuffer[this.temporaryBuffer.length - 1];
|
|
445
|
+
// If there is a match
|
|
446
|
+
if (currentTrie.data) {
|
|
447
|
+
// If the character reference was consumed as part of an attribute,
|
|
448
|
+
// and the last character matched is not a U+003B SEMICOLON character (;),
|
|
449
|
+
// and the next input character is either a U+003D EQUALS SIGN character (=)
|
|
450
|
+
// or an ASCII alphanumeric, then, for historical reasons, flush code points
|
|
451
|
+
// consumed as a character reference and switch to the return state.
|
|
452
|
+
if (lastChar != Chars.SEMICOLON &&
|
|
453
|
+
(this.peek() == Chars.EQUALS || isalpha(this.peek()))) {
|
|
454
|
+
this.flushTemporaryBuffer();
|
|
455
|
+
return;
|
|
456
|
+
}
|
|
457
|
+
else {
|
|
458
|
+
// missing-semicolon-after-character-reference parse error
|
|
459
|
+
this.temporaryBuffer = currentTrie.data.p;
|
|
460
|
+
this.flushTemporaryBuffer();
|
|
461
|
+
return;
|
|
462
|
+
}
|
|
463
|
+
}
|
|
464
|
+
else {
|
|
465
|
+
this.flushTemporaryBuffer();
|
|
466
|
+
this.ambiguousAmpersand();
|
|
467
|
+
return;
|
|
468
|
+
}
|
|
469
|
+
}
|
|
470
|
+
}
|
|
471
|
+
}
|
|
472
|
+
// https://html.spec.whatwg.org/multipage/parsing.html#ambiguous-ampersand-state
|
|
473
|
+
ambiguousAmpersand() {
|
|
474
|
+
const ch = this.consume();
|
|
475
|
+
if (isalnum(ch)) {
|
|
476
|
+
this.currentAttributeValue += String.fromCharCode(ch);
|
|
477
|
+
}
|
|
478
|
+
else {
|
|
479
|
+
--this.pos;
|
|
480
|
+
return;
|
|
481
|
+
}
|
|
482
|
+
}
|
|
483
|
+
// https://html.spec.whatwg.org/multipage/parsing.html#numeric-character-reference-state
|
|
484
|
+
numericCharacterReference() {
|
|
485
|
+
this.characterReferenceCode = 0;
|
|
486
|
+
const ch = this.consume();
|
|
487
|
+
switch (ch) {
|
|
488
|
+
case Chars.LOWERCASE_X:
|
|
489
|
+
case Chars.UPPERCASE_X:
|
|
490
|
+
this.temporaryBuffer.push(ch);
|
|
491
|
+
this.hexadecimalCharacterReferenceStart();
|
|
492
|
+
break;
|
|
493
|
+
default:
|
|
494
|
+
--this.pos;
|
|
495
|
+
this.decimalCharacterReferenceStart();
|
|
496
|
+
break;
|
|
497
|
+
}
|
|
498
|
+
}
|
|
499
|
+
// https://html.spec.whatwg.org/multipage/parsing.html#hexadecimal-character-reference-start-state
|
|
500
|
+
hexadecimalCharacterReferenceStart() {
|
|
501
|
+
const ch = this.consume();
|
|
502
|
+
if (isxdigit(ch)) {
|
|
503
|
+
--this.pos;
|
|
504
|
+
this.hexadecimalCharacterReference();
|
|
505
|
+
}
|
|
506
|
+
else {
|
|
507
|
+
--this.pos;
|
|
508
|
+
this.flushTemporaryBuffer();
|
|
509
|
+
}
|
|
510
|
+
}
|
|
511
|
+
// https://html.spec.whatwg.org/multipage/parsing.html#decimal-character-reference-start-state
|
|
512
|
+
decimalCharacterReferenceStart() {
|
|
513
|
+
const ch = this.consume();
|
|
514
|
+
if (isdigit(ch)) {
|
|
515
|
+
--this.pos;
|
|
516
|
+
this.decimalCharacterReference();
|
|
517
|
+
}
|
|
518
|
+
else {
|
|
519
|
+
--this.pos;
|
|
520
|
+
this.flushTemporaryBuffer();
|
|
521
|
+
}
|
|
522
|
+
}
|
|
523
|
+
// https://html.spec.whatwg.org/multipage/parsing.html#hexadecimal-character-reference-state
|
|
524
|
+
hexadecimalCharacterReference() {
|
|
525
|
+
for (;;) {
|
|
526
|
+
const ch = this.consume();
|
|
527
|
+
if (isdigit(ch)) {
|
|
528
|
+
this.characterReferenceCode *= 16;
|
|
529
|
+
this.characterReferenceCode += ch - 0x30;
|
|
530
|
+
}
|
|
531
|
+
else if (Chars.UPPERCASE_A <= ch && ch <= Chars.UPPERCASE_F) {
|
|
532
|
+
this.characterReferenceCode *= 16;
|
|
533
|
+
this.characterReferenceCode += ch - 0x37;
|
|
534
|
+
}
|
|
535
|
+
else if (Chars.LOWERCASE_A <= ch && ch <= Chars.LOWERCASE_F) {
|
|
536
|
+
this.characterReferenceCode *= 16;
|
|
537
|
+
this.characterReferenceCode += ch - 0x57;
|
|
538
|
+
}
|
|
539
|
+
else if (ch === Chars.SEMICOLON) {
|
|
540
|
+
this.numericCharacterReferenceEndState();
|
|
541
|
+
return;
|
|
542
|
+
}
|
|
543
|
+
else {
|
|
544
|
+
--this.pos;
|
|
545
|
+
this.numericCharacterReferenceEndState();
|
|
546
|
+
return;
|
|
547
|
+
}
|
|
548
|
+
}
|
|
549
|
+
}
|
|
550
|
+
// https://html.spec.whatwg.org/multipage/parsing.html#decimal-character-reference-state
|
|
551
|
+
decimalCharacterReference() {
|
|
552
|
+
for (;;) {
|
|
553
|
+
const ch = this.consume();
|
|
554
|
+
if (isdigit(ch)) {
|
|
555
|
+
this.characterReferenceCode *= 10;
|
|
556
|
+
this.characterReferenceCode += ch - 0x30;
|
|
557
|
+
}
|
|
558
|
+
else if (ch === Chars.SEMICOLON) {
|
|
559
|
+
this.numericCharacterReferenceEndState();
|
|
560
|
+
return;
|
|
561
|
+
}
|
|
562
|
+
else {
|
|
563
|
+
--this.pos;
|
|
564
|
+
this.numericCharacterReferenceEndState();
|
|
565
|
+
return;
|
|
566
|
+
}
|
|
567
|
+
}
|
|
568
|
+
}
|
|
569
|
+
// https://html.spec.whatwg.org/multipage/parsing.html#numeric-character-reference-end-state
|
|
570
|
+
numericCharacterReferenceEndState() {
|
|
571
|
+
if (this.characterReferenceCode == 0) {
|
|
572
|
+
// null-character-reference parse error
|
|
573
|
+
this.characterReferenceCode = 0xfffd;
|
|
574
|
+
}
|
|
575
|
+
if (this.characterReferenceCode > 0x10ffff) {
|
|
576
|
+
// character-reference-outside-unicode-range parse error
|
|
577
|
+
this.characterReferenceCode = 0xfffd;
|
|
578
|
+
}
|
|
579
|
+
if (isSurrogate(this.characterReferenceCode)) {
|
|
580
|
+
// surrogate-character-reference parse error
|
|
581
|
+
this.characterReferenceCode = 0xfffd;
|
|
582
|
+
}
|
|
583
|
+
// If the number is a noncharacter, then this is a noncharacter-character-reference parse error.
|
|
584
|
+
// ... and do nothing, so don't bother checking.
|
|
585
|
+
// Handle replacements
|
|
586
|
+
this.characterReferenceCode = characterReferenceCodePointReplacements.get(this.characterReferenceCode) ?? this.characterReferenceCode;
|
|
587
|
+
this.temporaryBuffer = [this.characterReferenceCode];
|
|
588
|
+
this.flushTemporaryBuffer();
|
|
589
|
+
}
|
|
590
|
+
flushTemporaryBuffer() {
|
|
591
|
+
this.currentAttributeValue += String.fromCodePoint(...this.temporaryBuffer);
|
|
592
|
+
this.temporaryBuffer = [];
|
|
593
|
+
}
|
|
594
|
+
}
|
|
595
|
+
// https://infra.spec.whatwg.org/#leading-surrogate
|
|
596
|
+
function isLeadingSurrogate(ch) {
|
|
597
|
+
return 0xd800 <= ch && ch <= 0xdbff;
|
|
598
|
+
}
|
|
599
|
+
// https://infra.spec.whatwg.org/#trailing-surrogate
|
|
600
|
+
function isTrailingSurrogate(ch) {
|
|
601
|
+
return 0xdc00 <= ch && ch <= 0xdfff;
|
|
602
|
+
}
|
|
603
|
+
// https://infra.spec.whatwg.org/#surrogate
|
|
604
|
+
function isSurrogate(ch) {
|
|
605
|
+
return isLeadingSurrogate(ch) || isTrailingSurrogate(ch);
|
|
606
|
+
}
|
|
607
|
+
const characterReferenceCodePointReplacements = new Map([
|
|
608
|
+
[0x80, 0x20ac], // EURO SIGN (€)
|
|
609
|
+
[0x82, 0x201a], // SINGLE LOW-9 QUOTATION MARK (‚)
|
|
610
|
+
[0x83, 0x0192], // LATIN SMALL LETTER F WITH HOOK (ƒ)
|
|
611
|
+
[0x84, 0x201e], // DOUBLE LOW-9 QUOTATION MARK („)
|
|
612
|
+
[0x85, 0x2026], // HORIZONTAL ELLIPSIS (…)
|
|
613
|
+
[0x86, 0x2020], // DAGGER (†)
|
|
614
|
+
[0x87, 0x2021], // DOUBLE DAGGER (‡)
|
|
615
|
+
[0x88, 0x02c6], // MODIFIER LETTER CIRCUMFLEX ACCENT (ˆ)
|
|
616
|
+
[0x89, 0x2030], // PER MILLE SIGN (‰)
|
|
617
|
+
[0x8a, 0x0160], // LATIN CAPITAL LETTER S WITH CARON (Š)
|
|
618
|
+
[0x8b, 0x2039], // SINGLE LEFT-POINTING ANGLE QUOTATION MARK (‹)
|
|
619
|
+
[0x8c, 0x0152], // LATIN CAPITAL LIGATURE OE (Œ)
|
|
620
|
+
[0x8e, 0x017d], // LATIN CAPITAL LETTER Z WITH CARON (Ž)
|
|
621
|
+
[0x91, 0x2018], // LEFT SINGLE QUOTATION MARK (‘)
|
|
622
|
+
[0x92, 0x2019], // RIGHT SINGLE QUOTATION MARK (’)
|
|
623
|
+
[0x93, 0x201c], // LEFT DOUBLE QUOTATION MARK (“)
|
|
624
|
+
[0x94, 0x201d], // RIGHT DOUBLE QUOTATION MARK (”)
|
|
625
|
+
[0x95, 0x2022], // BULLET (•)
|
|
626
|
+
[0x96, 0x2013], // EN DASH (–)
|
|
627
|
+
[0x97, 0x2014], // EM DASH (—)
|
|
628
|
+
[0x98, 0x02dc], // SMALL TILDE (˜)
|
|
629
|
+
[0x99, 0x2122], // TRADE MARK SIGN (™)
|
|
630
|
+
[0x9a, 0x0161], // LATIN SMALL LETTER S WITH CARON (š)
|
|
631
|
+
[0x9b, 0x203a], // SINGLE RIGHT-POINTING ANGLE QUOTATION MARK (›)
|
|
632
|
+
[0x9c, 0x0153], // LATIN SMALL LIGATURE OE (œ)
|
|
633
|
+
[0x9e, 0x017e], // LATIN SMALL LETTER Z WITH CARON (ž)
|
|
634
|
+
[0x9f, 0x0178], // LATIN CAPITAL LETTER Y WITH DIAERESIS (Ÿ)
|
|
635
|
+
]);
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
export { AbstractComponent } from "./component.js";
|
|
2
|
+
export * from "./fs.js";
|
|
3
|
+
export { getLoadedPaths, hasBeenLoadedMultipleTimes, TYPEDOC_ROOT } from "./general.js";
|
|
4
|
+
export { FancyConsoleLogger } from "./loggers.js";
|
|
5
|
+
export { ArgumentsReader, CommentStyle, Option, OptionDefaults, Options, PackageJsonReader, ParameterHint, ParameterType, TSConfigReader, TypeDocReader, } from "./options/index.js";
|
|
6
|
+
export type { ArrayDeclarationOption, BooleanDeclarationOption, DeclarationOption, DeclarationOptionBase, DeclarationOptionToOptionType, FlagsDeclarationOption, JsDocCompatibility, KeyToDeclaration, ManuallyValidatedOption, MapDeclarationOption, MixedDeclarationOption, NumberDeclarationOption, ObjectDeclarationOption, OptionsReader, OutputSpecification, ParameterTypeToOptionTypeMap, StringDeclarationOption, TypeDocOptionMap, TypeDocOptions, TypeDocOptionValues, ValidationOptions, } from "./options/index.js";
|
|
7
|
+
export * from "./paths.js";
|
|
8
|
+
export { loadPlugins } from "./plugins.js";
|
|
9
|
+
export { getSortFunction } from "./sort.js";
|
|
10
|
+
export type { SortStrategy } from "./sort.js";
|
|
11
|
+
export * from "./entry-point.js";
|
|
12
|
+
export * from "./declaration-maps.js";
|
|
13
|
+
export * from "./highlighter.js";
|
|
14
|
+
export * from "./html.js";
|
|
15
|
+
export * from "./tsconfig.js";
|
|
16
|
+
export * from "./tsutils.js";
|
|
17
|
+
export * from "./ValidatingFileRegistry.js";
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
export { AbstractComponent } from "./component.js";
|
|
2
|
+
export * from "./fs.js";
|
|
3
|
+
export { getLoadedPaths, hasBeenLoadedMultipleTimes, TYPEDOC_ROOT } from "./general.js";
|
|
4
|
+
export { FancyConsoleLogger } from "./loggers.js";
|
|
5
|
+
export { ArgumentsReader, CommentStyle, Option, OptionDefaults, Options, PackageJsonReader, ParameterHint, ParameterType, TSConfigReader, TypeDocReader, } from "./options/index.js";
|
|
6
|
+
export * from "./paths.js";
|
|
7
|
+
export { loadPlugins } from "./plugins.js";
|
|
8
|
+
export { getSortFunction } from "./sort.js";
|
|
9
|
+
export * from "./entry-point.js";
|
|
10
|
+
export * from "./declaration-maps.js";
|
|
11
|
+
export * from "./highlighter.js";
|
|
12
|
+
export * from "./html.js";
|
|
13
|
+
export * from "./tsconfig.js";
|
|
14
|
+
export * from "./tsutils.js";
|
|
15
|
+
export * from "./ValidatingFileRegistry.js";
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import ts from "typescript";
|
|
2
|
+
import { ConsoleLogger, type Logger, LogLevel, type MinimalNode, type MinimalSourceFile } from "#utils";
|
|
3
|
+
export declare function diagnostics(logger: Logger, diagnostics: readonly ts.Diagnostic[]): void;
|
|
4
|
+
export declare function diagnostic(logger: Logger, diagnostic: ts.Diagnostic): void;
|
|
5
|
+
/**
|
|
6
|
+
* A logger that outputs all messages to the console.
|
|
7
|
+
*/
|
|
8
|
+
export declare class FancyConsoleLogger extends ConsoleLogger {
|
|
9
|
+
protected addContext(message: string, level: Exclude<LogLevel, LogLevel.None>, ...args: [MinimalNode?] | [number, MinimalSourceFile]): string;
|
|
10
|
+
}
|