adnbn 0.2.4 → 0.2.6
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/bin/adnbn.js +1 -1
- package/dist/cli/builders/app/command.d.ts +6 -0
- package/dist/cli/builders/app/command.js +59 -0
- package/dist/cli/builders/app/command.js.map +1 -0
- package/dist/cli/builders/app/index.d.ts +18 -0
- package/dist/cli/builders/app/index.js +30 -0
- package/dist/cli/builders/app/index.js.map +1 -0
- package/dist/cli/builders/locale/LocaleBuilder.d.ts +23 -0
- package/dist/cli/builders/locale/LocaleBuilder.js +116 -0
- package/dist/cli/builders/locale/LocaleBuilder.js.map +1 -0
- package/dist/cli/builders/locale/LocaleValidator.d.ts +24 -0
- package/dist/cli/builders/locale/LocaleValidator.js +81 -0
- package/dist/cli/builders/locale/LocaleValidator.js.map +1 -0
- package/dist/cli/builders/locale/index.d.ts +20 -0
- package/dist/cli/builders/locale/index.js +14 -0
- package/dist/cli/builders/locale/index.js.map +1 -0
- package/dist/cli/builders/manifest/ManifestBase.d.ts +87 -0
- package/dist/cli/builders/manifest/ManifestBase.js +324 -0
- package/dist/cli/builders/manifest/ManifestBase.js.map +1 -0
- package/dist/cli/builders/manifest/ManifestV2.d.ts +25 -0
- package/dist/cli/builders/manifest/ManifestV2.js +75 -0
- package/dist/cli/builders/manifest/ManifestV2.js.map +1 -0
- package/dist/cli/builders/manifest/ManifestV3.d.ts +24 -0
- package/dist/cli/builders/manifest/ManifestV3.js +86 -0
- package/dist/cli/builders/manifest/ManifestV3.js.map +1 -0
- package/dist/cli/builders/manifest/index.d.ts +18 -0
- package/dist/cli/builders/manifest/index.js +13 -0
- package/dist/cli/builders/manifest/index.js.map +1 -0
- package/dist/cli/builders/manifest/utils.d.ts +12 -0
- package/dist/cli/builders/manifest/utils.js +69 -0
- package/dist/cli/builders/manifest/utils.js.map +1 -0
- package/dist/cli/bundler/index.d.ts +19 -0
- package/dist/cli/bundler/index.js +3 -0
- package/dist/cli/bundler/index.js.map +1 -0
- package/dist/cli/bundler/plugins/EntrypointPlugin.d.ts +42 -0
- package/dist/cli/bundler/plugins/EntrypointPlugin.js +137 -0
- package/dist/cli/bundler/plugins/EntrypointPlugin.js.map +1 -0
- package/dist/cli/bundler/plugins/GenerateJsonPlugin.d.ts +20 -0
- package/dist/cli/bundler/plugins/GenerateJsonPlugin.js +43 -0
- package/dist/cli/bundler/plugins/GenerateJsonPlugin.js.map +1 -0
- package/dist/cli/bundler/plugins/ManifestPlugin.d.ts +21 -0
- package/dist/cli/bundler/plugins/ManifestPlugin.js +77 -0
- package/dist/cli/bundler/plugins/ManifestPlugin.js.map +1 -0
- package/dist/cli/bundler/plugins/ReplacePlugin.d.ts +12 -0
- package/dist/cli/bundler/plugins/ReplacePlugin.js +41 -0
- package/dist/cli/bundler/plugins/ReplacePlugin.js.map +1 -0
- package/dist/cli/bundler/plugins/WatchPlugin.d.ts +10 -0
- package/dist/cli/bundler/plugins/WatchPlugin.js +20 -0
- package/dist/cli/bundler/plugins/WatchPlugin.js.map +1 -0
- package/dist/cli/bundler/plugins/index.d.ts +17 -0
- package/dist/cli/bundler/plugins/index.js +17 -0
- package/dist/cli/bundler/plugins/index.js.map +1 -0
- package/dist/cli/bundler/utils/index.d.ts +3 -0
- package/dist/cli/bundler/utils/index.js +3 -0
- package/dist/cli/bundler/utils/index.js.map +1 -0
- package/dist/cli/bundler/utils/optimization.d.ts +6 -0
- package/dist/cli/bundler/utils/optimization.js +106 -0
- package/dist/cli/bundler/utils/optimization.js.map +1 -0
- package/dist/cli/bundler/utils/output.d.ts +5 -0
- package/dist/cli/bundler/utils/output.js +15 -0
- package/dist/cli/bundler/utils/output.js.map +1 -0
- package/dist/cli/entrypoint/file/ExpressionFile.d.ts +54 -0
- package/dist/cli/entrypoint/file/ExpressionFile.js +271 -0
- package/dist/cli/entrypoint/file/ExpressionFile.js.map +1 -0
- package/dist/cli/entrypoint/file/OptionFile.d.ts +20 -0
- package/dist/cli/entrypoint/file/OptionFile.js +75 -0
- package/dist/cli/entrypoint/file/OptionFile.js.map +1 -0
- package/dist/cli/entrypoint/file/SourceFile.d.ts +26 -0
- package/dist/cli/entrypoint/file/SourceFile.js +235 -0
- package/dist/cli/entrypoint/file/SourceFile.js.map +1 -0
- package/dist/cli/entrypoint/file/index.d.ts +8 -0
- package/dist/cli/entrypoint/file/index.js +10 -0
- package/dist/cli/entrypoint/file/index.js.map +1 -0
- package/dist/cli/entrypoint/file/injectors/core.d.ts +5 -0
- package/dist/cli/entrypoint/file/injectors/core.js +52 -0
- package/dist/cli/entrypoint/file/injectors/core.js.map +1 -0
- package/dist/cli/entrypoint/file/injectors/index.d.ts +5 -0
- package/dist/cli/entrypoint/file/injectors/index.js +11 -0
- package/dist/cli/entrypoint/file/injectors/index.js.map +1 -0
- package/dist/cli/entrypoint/file/parsers/AbstractParser.d.ts +42 -0
- package/dist/cli/entrypoint/file/parsers/AbstractParser.js +39 -0
- package/dist/cli/entrypoint/file/parsers/AbstractParser.js.map +1 -0
- package/dist/cli/entrypoint/file/parsers/ClassParser.d.ts +46 -0
- package/dist/cli/entrypoint/file/parsers/ClassParser.js +137 -0
- package/dist/cli/entrypoint/file/parsers/ClassParser.js.map +1 -0
- package/dist/cli/entrypoint/file/parsers/FunctionParser.d.ts +40 -0
- package/dist/cli/entrypoint/file/parsers/FunctionParser.js +76 -0
- package/dist/cli/entrypoint/file/parsers/FunctionParser.js.map +1 -0
- package/dist/cli/entrypoint/file/parsers/JSDocParser.d.ts +81 -0
- package/dist/cli/entrypoint/file/parsers/JSDocParser.js +313 -0
- package/dist/cli/entrypoint/file/parsers/JSDocParser.js.map +1 -0
- package/dist/cli/entrypoint/file/parsers/NodeFinder.d.ts +63 -0
- package/dist/cli/entrypoint/file/parsers/NodeFinder.js +98 -0
- package/dist/cli/entrypoint/file/parsers/NodeFinder.js.map +1 -0
- package/dist/cli/entrypoint/file/parsers/ObjectParser.d.ts +41 -0
- package/dist/cli/entrypoint/file/parsers/ObjectParser.js +96 -0
- package/dist/cli/entrypoint/file/parsers/ObjectParser.js.map +1 -0
- package/dist/cli/entrypoint/file/parsers/SignatureBuilder.d.ts +45 -0
- package/dist/cli/entrypoint/file/parsers/SignatureBuilder.js +99 -0
- package/dist/cli/entrypoint/file/parsers/SignatureBuilder.js.map +1 -0
- package/dist/cli/entrypoint/file/parsers/TypeResolver.d.ts +89 -0
- package/dist/cli/entrypoint/file/parsers/TypeResolver.js +347 -0
- package/dist/cli/entrypoint/file/parsers/TypeResolver.js.map +1 -0
- package/dist/cli/entrypoint/file/parsers/helpers/memberFilters.d.ts +3 -0
- package/dist/cli/entrypoint/file/parsers/helpers/memberFilters.js +7 -0
- package/dist/cli/entrypoint/file/parsers/helpers/memberFilters.js.map +1 -0
- package/dist/cli/entrypoint/file/parsers/index.d.ts +14 -0
- package/dist/cli/entrypoint/file/parsers/index.js +17 -0
- package/dist/cli/entrypoint/file/parsers/index.js.map +1 -0
- package/dist/cli/entrypoint/file/parsers/types.d.ts +31 -0
- package/dist/cli/entrypoint/file/parsers/types.js +1 -0
- package/dist/cli/entrypoint/file/parsers/types.js.map +1 -0
- package/dist/cli/entrypoint/file/resolvers/ImportResolver.d.ts +13 -0
- package/dist/cli/entrypoint/file/resolvers/ImportResolver.js +72 -0
- package/dist/cli/entrypoint/file/resolvers/ImportResolver.js.map +1 -0
- package/dist/cli/entrypoint/file/resolvers/TsResolver.d.ts +17 -0
- package/dist/cli/entrypoint/file/resolvers/TsResolver.js +60 -0
- package/dist/cli/entrypoint/file/resolvers/TsResolver.js.map +1 -0
- package/dist/cli/entrypoint/file/resolvers/index.d.ts +3 -0
- package/dist/cli/entrypoint/file/resolvers/index.js +7 -0
- package/dist/cli/entrypoint/file/resolvers/index.js.map +1 -0
- package/dist/cli/entrypoint/file/types.d.ts +16 -0
- package/dist/cli/entrypoint/file/types.js +1 -0
- package/dist/cli/entrypoint/file/types.js.map +1 -0
- package/dist/cli/entrypoint/finder/AbstractAssetFinder.d.ts +28 -0
- package/dist/cli/entrypoint/finder/AbstractAssetFinder.js +58 -0
- package/dist/cli/entrypoint/finder/AbstractAssetFinder.js.map +1 -0
- package/dist/cli/entrypoint/finder/AbstractEntrypointFinder.d.ts +29 -0
- package/dist/cli/entrypoint/finder/AbstractEntrypointFinder.js +107 -0
- package/dist/cli/entrypoint/finder/AbstractEntrypointFinder.js.map +1 -0
- package/dist/cli/entrypoint/finder/AbstractFinder.d.ts +33 -0
- package/dist/cli/entrypoint/finder/AbstractFinder.js +76 -0
- package/dist/cli/entrypoint/finder/AbstractFinder.js.map +1 -0
- package/dist/cli/entrypoint/finder/AbstractOptionsFinder.d.ts +32 -0
- package/dist/cli/entrypoint/finder/AbstractOptionsFinder.js +57 -0
- package/dist/cli/entrypoint/finder/AbstractOptionsFinder.js.map +1 -0
- package/dist/cli/entrypoint/finder/AbstractPluginFinder.d.ts +28 -0
- package/dist/cli/entrypoint/finder/AbstractPluginFinder.js +21 -0
- package/dist/cli/entrypoint/finder/AbstractPluginFinder.js.map +1 -0
- package/dist/cli/entrypoint/finder/AbstractTransportFinder.d.ts +39 -0
- package/dist/cli/entrypoint/finder/AbstractTransportFinder.js +59 -0
- package/dist/cli/entrypoint/finder/AbstractTransportFinder.js.map +1 -0
- package/dist/cli/entrypoint/finder/AbstractViewFinder.d.ts +51 -0
- package/dist/cli/entrypoint/finder/AbstractViewFinder.js +97 -0
- package/dist/cli/entrypoint/finder/AbstractViewFinder.js.map +1 -0
- package/dist/cli/entrypoint/finder/AssetPluginFinder.d.ts +26 -0
- package/dist/cli/entrypoint/finder/AssetPluginFinder.js +69 -0
- package/dist/cli/entrypoint/finder/AssetPluginFinder.js.map +1 -0
- package/dist/cli/entrypoint/finder/BackgroundFinder.d.ts +28 -0
- package/dist/cli/entrypoint/finder/BackgroundFinder.js +25 -0
- package/dist/cli/entrypoint/finder/BackgroundFinder.js.map +1 -0
- package/dist/cli/entrypoint/finder/CommandFinder.d.ts +35 -0
- package/dist/cli/entrypoint/finder/CommandFinder.js +48 -0
- package/dist/cli/entrypoint/finder/CommandFinder.js.map +1 -0
- package/dist/cli/entrypoint/finder/ContentFinder.d.ts +28 -0
- package/dist/cli/entrypoint/finder/ContentFinder.js +25 -0
- package/dist/cli/entrypoint/finder/ContentFinder.js.map +1 -0
- package/dist/cli/entrypoint/finder/IconFinder.d.ts +48 -0
- package/dist/cli/entrypoint/finder/IconFinder.js +78 -0
- package/dist/cli/entrypoint/finder/IconFinder.js.map +1 -0
- package/dist/cli/entrypoint/finder/LocaleFinder.d.ts +41 -0
- package/dist/cli/entrypoint/finder/LocaleFinder.js +100 -0
- package/dist/cli/entrypoint/finder/LocaleFinder.js.map +1 -0
- package/dist/cli/entrypoint/finder/OffscreenFinder.d.ts +35 -0
- package/dist/cli/entrypoint/finder/OffscreenFinder.js +25 -0
- package/dist/cli/entrypoint/finder/OffscreenFinder.js.map +1 -0
- package/dist/cli/entrypoint/finder/OffscreenViewFinder.d.ts +37 -0
- package/dist/cli/entrypoint/finder/OffscreenViewFinder.js +24 -0
- package/dist/cli/entrypoint/finder/OffscreenViewFinder.js.map +1 -0
- package/dist/cli/entrypoint/finder/PageFinder.d.ts +33 -0
- package/dist/cli/entrypoint/finder/PageFinder.js +39 -0
- package/dist/cli/entrypoint/finder/PageFinder.js.map +1 -0
- package/dist/cli/entrypoint/finder/PluginFinder.d.ts +27 -0
- package/dist/cli/entrypoint/finder/PluginFinder.js +44 -0
- package/dist/cli/entrypoint/finder/PluginFinder.js.map +1 -0
- package/dist/cli/entrypoint/finder/PopupFinder.d.ts +32 -0
- package/dist/cli/entrypoint/finder/PopupFinder.js +28 -0
- package/dist/cli/entrypoint/finder/PopupFinder.js.map +1 -0
- package/dist/cli/entrypoint/finder/RelayFinder.d.ts +34 -0
- package/dist/cli/entrypoint/finder/RelayFinder.js +25 -0
- package/dist/cli/entrypoint/finder/RelayFinder.js.map +1 -0
- package/dist/cli/entrypoint/finder/ServiceFinder.d.ts +34 -0
- package/dist/cli/entrypoint/finder/ServiceFinder.js +25 -0
- package/dist/cli/entrypoint/finder/ServiceFinder.js.map +1 -0
- package/dist/cli/entrypoint/finder/SidebarFinder.d.ts +32 -0
- package/dist/cli/entrypoint/finder/SidebarFinder.js +28 -0
- package/dist/cli/entrypoint/finder/SidebarFinder.js.map +1 -0
- package/dist/cli/entrypoint/finder/index.d.ts +46 -0
- package/dist/cli/entrypoint/finder/index.js +41 -0
- package/dist/cli/entrypoint/finder/index.js.map +1 -0
- package/dist/cli/entrypoint/index.d.ts +66 -0
- package/dist/cli/entrypoint/index.js +5 -0
- package/dist/cli/entrypoint/index.js.map +1 -0
- package/dist/cli/entrypoint/name/InlineNameGenerator.d.ts +10 -0
- package/dist/cli/entrypoint/name/InlineNameGenerator.js +23 -0
- package/dist/cli/entrypoint/name/InlineNameGenerator.js.map +1 -0
- package/dist/cli/entrypoint/name/NameGenerator.d.ts +17 -0
- package/dist/cli/entrypoint/name/NameGenerator.js +61 -0
- package/dist/cli/entrypoint/name/NameGenerator.js.map +1 -0
- package/dist/cli/entrypoint/name/index.d.ts +4 -0
- package/dist/cli/entrypoint/name/index.js +7 -0
- package/dist/cli/entrypoint/name/index.js.map +1 -0
- package/dist/cli/entrypoint/parser/AbstractParser.d.ts +52 -0
- package/dist/cli/entrypoint/parser/AbstractParser.js +54 -0
- package/dist/cli/entrypoint/parser/AbstractParser.js.map +1 -0
- package/dist/cli/entrypoint/parser/BackgroundParser.d.ts +29 -0
- package/dist/cli/entrypoint/parser/BackgroundParser.js +17 -0
- package/dist/cli/entrypoint/parser/BackgroundParser.js.map +1 -0
- package/dist/cli/entrypoint/parser/CommandParser.d.ts +32 -0
- package/dist/cli/entrypoint/parser/CommandParser.js +52 -0
- package/dist/cli/entrypoint/parser/CommandParser.js.map +1 -0
- package/dist/cli/entrypoint/parser/ContentParser.d.ts +30 -0
- package/dist/cli/entrypoint/parser/ContentParser.js +35 -0
- package/dist/cli/entrypoint/parser/ContentParser.js.map +1 -0
- package/dist/cli/entrypoint/parser/OffscreenParser.d.ts +35 -0
- package/dist/cli/entrypoint/parser/OffscreenParser.js +33 -0
- package/dist/cli/entrypoint/parser/OffscreenParser.js.map +1 -0
- package/dist/cli/entrypoint/parser/PageParser.d.ts +32 -0
- package/dist/cli/entrypoint/parser/PageParser.js +17 -0
- package/dist/cli/entrypoint/parser/PageParser.js.map +1 -0
- package/dist/cli/entrypoint/parser/PopupParser.d.ts +32 -0
- package/dist/cli/entrypoint/parser/PopupParser.js +17 -0
- package/dist/cli/entrypoint/parser/PopupParser.js.map +1 -0
- package/dist/cli/entrypoint/parser/RelayParser.d.ts +35 -0
- package/dist/cli/entrypoint/parser/RelayParser.js +24 -0
- package/dist/cli/entrypoint/parser/RelayParser.js.map +1 -0
- package/dist/cli/entrypoint/parser/ServiceParser.d.ts +34 -0
- package/dist/cli/entrypoint/parser/ServiceParser.js +21 -0
- package/dist/cli/entrypoint/parser/ServiceParser.js.map +1 -0
- package/dist/cli/entrypoint/parser/SidebarParser.d.ts +32 -0
- package/dist/cli/entrypoint/parser/SidebarParser.js +17 -0
- package/dist/cli/entrypoint/parser/SidebarParser.js.map +1 -0
- package/dist/cli/entrypoint/parser/ViewParser.d.ts +1271 -0
- package/dist/cli/entrypoint/parser/ViewParser.js +86 -0
- package/dist/cli/entrypoint/parser/ViewParser.js.map +1 -0
- package/dist/cli/entrypoint/parser/index.d.ts +41 -0
- package/dist/cli/entrypoint/parser/index.js +21 -0
- package/dist/cli/entrypoint/parser/index.js.map +1 -0
- package/dist/cli/entrypoint/utils/file.d.ts +7 -0
- package/dist/cli/entrypoint/utils/file.js +11 -0
- package/dist/cli/entrypoint/utils/file.js.map +1 -0
- package/dist/cli/entrypoint/utils/index.d.ts +4 -0
- package/dist/cli/entrypoint/utils/index.js +2 -0
- package/dist/cli/entrypoint/utils/index.js.map +1 -0
- package/dist/cli/index.d.ts +2 -0
- package/dist/cli/index.js +50 -0
- package/dist/cli/index.js.map +1 -0
- package/dist/cli/plugins/asset.d.ts +18 -0
- package/dist/cli/plugins/asset.js +54 -0
- package/dist/cli/plugins/asset.js.map +1 -0
- package/dist/cli/plugins/background/Background.d.ts +26 -0
- package/dist/cli/plugins/background/Background.js +11 -0
- package/dist/cli/plugins/background/Background.js.map +1 -0
- package/dist/cli/plugins/background/BackgroundEntry.d.ts +29 -0
- package/dist/cli/plugins/background/BackgroundEntry.js +29 -0
- package/dist/cli/plugins/background/BackgroundEntry.js.map +1 -0
- package/dist/cli/plugins/background/BackgroundManifest.d.ts +29 -0
- package/dist/cli/plugins/background/BackgroundManifest.js +35 -0
- package/dist/cli/plugins/background/BackgroundManifest.js.map +1 -0
- package/dist/cli/plugins/background/Command.d.ts +36 -0
- package/dist/cli/plugins/background/Command.js +36 -0
- package/dist/cli/plugins/background/Command.js.map +1 -0
- package/dist/cli/plugins/background/Service.d.ts +38 -0
- package/dist/cli/plugins/background/Service.js +25 -0
- package/dist/cli/plugins/background/Service.js.map +1 -0
- package/dist/cli/plugins/background/ServiceDeclaration.d.ts +22 -0
- package/dist/cli/plugins/background/ServiceDeclaration.js +10 -0
- package/dist/cli/plugins/background/ServiceDeclaration.js.map +1 -0
- package/dist/cli/plugins/background/index.d.ts +18 -0
- package/dist/cli/plugins/background/index.js +78 -0
- package/dist/cli/plugins/background/index.js.map +1 -0
- package/dist/cli/plugins/bundler.d.ts +18 -0
- package/dist/cli/plugins/bundler.js +29 -0
- package/dist/cli/plugins/bundler.js.map +1 -0
- package/dist/cli/plugins/content/Content.d.ts +31 -0
- package/dist/cli/plugins/content/Content.js +27 -0
- package/dist/cli/plugins/content/Content.js.map +1 -0
- package/dist/cli/plugins/content/ContentDriver.d.ts +31 -0
- package/dist/cli/plugins/content/ContentDriver.js +29 -0
- package/dist/cli/plugins/content/ContentDriver.js.map +1 -0
- package/dist/cli/plugins/content/ContentManager.d.ts +37 -0
- package/dist/cli/plugins/content/ContentManager.js +97 -0
- package/dist/cli/plugins/content/ContentManager.js.map +1 -0
- package/dist/cli/plugins/content/ContentName.d.ts +26 -0
- package/dist/cli/plugins/content/ContentName.js +32 -0
- package/dist/cli/plugins/content/ContentName.js.map +1 -0
- package/dist/cli/plugins/content/Relay.d.ts +40 -0
- package/dist/cli/plugins/content/Relay.js +30 -0
- package/dist/cli/plugins/content/Relay.js.map +1 -0
- package/dist/cli/plugins/content/RelayDeclaration.d.ts +23 -0
- package/dist/cli/plugins/content/RelayDeclaration.js +13 -0
- package/dist/cli/plugins/content/RelayDeclaration.js.map +1 -0
- package/dist/cli/plugins/content/index.d.ts +18 -0
- package/dist/cli/plugins/content/index.js +71 -0
- package/dist/cli/plugins/content/index.js.map +1 -0
- package/dist/cli/plugins/content/types.d.ts +26 -0
- package/dist/cli/plugins/content/types.js +1 -0
- package/dist/cli/plugins/content/types.js.map +1 -0
- package/dist/cli/plugins/content/utils.d.ts +10 -0
- package/dist/cli/plugins/content/utils.js +18 -0
- package/dist/cli/plugins/content/utils.js.map +1 -0
- package/dist/cli/plugins/dotenv/index.d.ts +19 -0
- package/dist/cli/plugins/dotenv/index.js +34 -0
- package/dist/cli/plugins/dotenv/index.js.map +1 -0
- package/dist/cli/plugins/dotenv/utils.d.ts +5 -0
- package/dist/cli/plugins/dotenv/utils.js +31 -0
- package/dist/cli/plugins/dotenv/utils.js.map +1 -0
- package/dist/cli/plugins/html.d.ts +18 -0
- package/dist/cli/plugins/html.js +29 -0
- package/dist/cli/plugins/html.js.map +1 -0
- package/dist/cli/plugins/icon/Icon.d.ts +31 -0
- package/dist/cli/plugins/icon/Icon.js +52 -0
- package/dist/cli/plugins/icon/Icon.js.map +1 -0
- package/dist/cli/plugins/icon/declaration/IconDeclaration.d.ts +26 -0
- package/dist/cli/plugins/icon/declaration/IconDeclaration.js +29 -0
- package/dist/cli/plugins/icon/declaration/IconDeclaration.js.map +1 -0
- package/dist/cli/plugins/icon/declaration/icon.d.ts +7 -0
- package/dist/cli/plugins/icon/declaration/index.d.ts +16 -0
- package/dist/cli/plugins/icon/declaration/index.js +5 -0
- package/dist/cli/plugins/icon/declaration/index.js.map +1 -0
- package/dist/cli/plugins/icon/index.d.ts +24 -0
- package/dist/cli/plugins/icon/index.js +36 -0
- package/dist/cli/plugins/icon/index.js.map +1 -0
- package/dist/cli/plugins/index.d.ts +61 -0
- package/dist/cli/plugins/index.js +48 -0
- package/dist/cli/plugins/index.js.map +1 -0
- package/dist/cli/plugins/locale/Locale.d.ts +25 -0
- package/dist/cli/plugins/locale/Locale.js +16 -0
- package/dist/cli/plugins/locale/Locale.js.map +1 -0
- package/dist/cli/plugins/locale/declaration/LocaleDeclaration.d.ts +26 -0
- package/dist/cli/plugins/locale/declaration/LocaleDeclaration.js +30 -0
- package/dist/cli/plugins/locale/declaration/LocaleDeclaration.js.map +1 -0
- package/dist/cli/plugins/locale/declaration/index.d.ts +16 -0
- package/dist/cli/plugins/locale/declaration/index.js +5 -0
- package/dist/cli/plugins/locale/declaration/index.js.map +1 -0
- package/dist/cli/plugins/locale/declaration/locale.d.ts +79 -0
- package/dist/cli/plugins/locale/index.d.ts +18 -0
- package/dist/cli/plugins/locale/index.js +104 -0
- package/dist/cli/plugins/locale/index.js.map +1 -0
- package/dist/cli/plugins/meta/AbstractMeta.d.ts +25 -0
- package/dist/cli/plugins/meta/AbstractMeta.js +30 -0
- package/dist/cli/plugins/meta/AbstractMeta.js.map +1 -0
- package/dist/cli/plugins/meta/Author.d.ts +24 -0
- package/dist/cli/plugins/meta/Author.js +29 -0
- package/dist/cli/plugins/meta/Author.js.map +1 -0
- package/dist/cli/plugins/meta/Email.d.ts +23 -0
- package/dist/cli/plugins/meta/Email.js +17 -0
- package/dist/cli/plugins/meta/Email.js.map +1 -0
- package/dist/cli/plugins/meta/Homepage.d.ts +23 -0
- package/dist/cli/plugins/meta/Homepage.js +17 -0
- package/dist/cli/plugins/meta/Homepage.js.map +1 -0
- package/dist/cli/plugins/meta/Incognito.d.ts +23 -0
- package/dist/cli/plugins/meta/Incognito.js +17 -0
- package/dist/cli/plugins/meta/Incognito.js.map +1 -0
- package/dist/cli/plugins/meta/index.d.ts +23 -0
- package/dist/cli/plugins/meta/index.js +21 -0
- package/dist/cli/plugins/meta/index.js.map +1 -0
- package/dist/cli/plugins/offscreen/Offscreen.d.ts +49 -0
- package/dist/cli/plugins/offscreen/Offscreen.js +66 -0
- package/dist/cli/plugins/offscreen/Offscreen.js.map +1 -0
- package/dist/cli/plugins/offscreen/OffscreenDeclaration.d.ts +22 -0
- package/dist/cli/plugins/offscreen/OffscreenDeclaration.js +10 -0
- package/dist/cli/plugins/offscreen/OffscreenDeclaration.js.map +1 -0
- package/dist/cli/plugins/offscreen/index.d.ts +18 -0
- package/dist/cli/plugins/offscreen/index.js +87 -0
- package/dist/cli/plugins/offscreen/index.js.map +1 -0
- package/dist/cli/plugins/optimization.d.ts +18 -0
- package/dist/cli/plugins/optimization.js +48 -0
- package/dist/cli/plugins/optimization.js.map +1 -0
- package/dist/cli/plugins/output.d.ts +18 -0
- package/dist/cli/plugins/output.js +31 -0
- package/dist/cli/plugins/output.js.map +1 -0
- package/dist/cli/plugins/page/Page.d.ts +33 -0
- package/dist/cli/plugins/page/Page.js +31 -0
- package/dist/cli/plugins/page/Page.js.map +1 -0
- package/dist/cli/plugins/page/declaration/PageDeclaration.d.ts +26 -0
- package/dist/cli/plugins/page/declaration/PageDeclaration.js +29 -0
- package/dist/cli/plugins/page/declaration/PageDeclaration.js.map +1 -0
- package/dist/cli/plugins/page/declaration/index.d.ts +16 -0
- package/dist/cli/plugins/page/declaration/index.js +5 -0
- package/dist/cli/plugins/page/declaration/index.js.map +1 -0
- package/dist/cli/plugins/page/declaration/page.d.ts +7 -0
- package/dist/cli/plugins/page/index.d.ts +18 -0
- package/dist/cli/plugins/page/index.js +57 -0
- package/dist/cli/plugins/page/index.js.map +1 -0
- package/dist/cli/plugins/popup/Popup.d.ts +35 -0
- package/dist/cli/plugins/popup/Popup.js +47 -0
- package/dist/cli/plugins/popup/Popup.js.map +1 -0
- package/dist/cli/plugins/popup/declaration/PopupDeclaration.d.ts +26 -0
- package/dist/cli/plugins/popup/declaration/PopupDeclaration.js +29 -0
- package/dist/cli/plugins/popup/declaration/PopupDeclaration.js.map +1 -0
- package/dist/cli/plugins/popup/declaration/index.d.ts +16 -0
- package/dist/cli/plugins/popup/declaration/index.js +5 -0
- package/dist/cli/plugins/popup/declaration/index.js.map +1 -0
- package/dist/cli/plugins/popup/declaration/popup.d.ts +7 -0
- package/dist/cli/plugins/popup/index.d.ts +18 -0
- package/dist/cli/plugins/popup/index.js +57 -0
- package/dist/cli/plugins/popup/index.js.map +1 -0
- package/dist/cli/plugins/public.d.ts +18 -0
- package/dist/cli/plugins/public.js +41 -0
- package/dist/cli/plugins/public.js.map +1 -0
- package/dist/cli/plugins/react.d.ts +18 -0
- package/dist/cli/plugins/react.js +55 -0
- package/dist/cli/plugins/react.js.map +1 -0
- package/dist/cli/plugins/sidebar/Sidebar.d.ts +35 -0
- package/dist/cli/plugins/sidebar/Sidebar.js +47 -0
- package/dist/cli/plugins/sidebar/Sidebar.js.map +1 -0
- package/dist/cli/plugins/sidebar/declaration/SidebarDeclaration.d.ts +26 -0
- package/dist/cli/plugins/sidebar/declaration/SidebarDeclaration.js +29 -0
- package/dist/cli/plugins/sidebar/declaration/SidebarDeclaration.js.map +1 -0
- package/dist/cli/plugins/sidebar/declaration/index.d.ts +16 -0
- package/dist/cli/plugins/sidebar/declaration/index.js +5 -0
- package/dist/cli/plugins/sidebar/declaration/index.js.map +1 -0
- package/dist/cli/plugins/sidebar/declaration/sidebar.d.ts +7 -0
- package/dist/cli/plugins/sidebar/index.d.ts +18 -0
- package/dist/cli/plugins/sidebar/index.js +74 -0
- package/dist/cli/plugins/sidebar/index.js.map +1 -0
- package/dist/cli/plugins/style.d.ts +18 -0
- package/dist/cli/plugins/style.js +105 -0
- package/dist/cli/plugins/style.js.map +1 -0
- package/dist/cli/plugins/typescript/FileBuilder.d.ts +31 -0
- package/dist/cli/plugins/typescript/FileBuilder.js +43 -0
- package/dist/cli/plugins/typescript/FileBuilder.js.map +1 -0
- package/dist/cli/plugins/typescript/TypescriptConfig.d.ts +29 -0
- package/dist/cli/plugins/typescript/TypescriptConfig.js +76 -0
- package/dist/cli/plugins/typescript/TypescriptConfig.js.map +1 -0
- package/dist/cli/plugins/typescript/declaration/VendorDeclaration.d.ts +23 -0
- package/dist/cli/plugins/typescript/declaration/VendorDeclaration.js +19 -0
- package/dist/cli/plugins/typescript/declaration/VendorDeclaration.js.map +1 -0
- package/dist/cli/plugins/typescript/declaration/index.d.ts +17 -0
- package/dist/cli/plugins/typescript/declaration/index.js +6 -0
- package/dist/cli/plugins/typescript/declaration/index.js.map +1 -0
- package/dist/cli/plugins/typescript/declaration/transport/TransportDeclaration.d.ts +33 -0
- package/dist/cli/plugins/typescript/declaration/transport/TransportDeclaration.js +45 -0
- package/dist/cli/plugins/typescript/declaration/transport/TransportDeclaration.js.map +1 -0
- package/dist/cli/plugins/typescript/declaration/transport/index.d.ts +16 -0
- package/dist/cli/plugins/typescript/declaration/transport/index.js +6 -0
- package/dist/cli/plugins/typescript/declaration/transport/index.js.map +1 -0
- package/dist/cli/plugins/typescript/declaration/transport/transport.d.ts +15 -0
- package/dist/cli/plugins/typescript/index.d.ts +23 -0
- package/dist/cli/plugins/typescript/index.js +49 -0
- package/dist/cli/plugins/typescript/index.js.map +1 -0
- package/dist/cli/plugins/version/AbstractVersion.d.ts +24 -0
- package/dist/cli/plugins/version/AbstractVersion.js +19 -0
- package/dist/cli/plugins/version/AbstractVersion.js.map +1 -0
- package/dist/cli/plugins/version/AddonVersion.d.ts +22 -0
- package/dist/cli/plugins/version/AddonVersion.js +34 -0
- package/dist/cli/plugins/version/AddonVersion.js.map +1 -0
- package/dist/cli/plugins/version/BrowserMinimumVersion.d.ts +23 -0
- package/dist/cli/plugins/version/BrowserMinimumVersion.js +28 -0
- package/dist/cli/plugins/version/BrowserMinimumVersion.js.map +1 -0
- package/dist/cli/plugins/version/index.d.ts +21 -0
- package/dist/cli/plugins/version/index.js +17 -0
- package/dist/cli/plugins/version/index.js.map +1 -0
- package/dist/cli/plugins/view/View.d.ts +31 -0
- package/dist/cli/plugins/view/View.js +57 -0
- package/dist/cli/plugins/view/View.js.map +1 -0
- package/dist/cli/plugins/view/index.d.ts +25 -0
- package/dist/cli/plugins/view/index.js +29 -0
- package/dist/cli/plugins/view/index.js.map +1 -0
- package/dist/cli/resolvers/bundler.d.ts +18 -0
- package/dist/cli/resolvers/bundler.js +78 -0
- package/dist/cli/resolvers/bundler.js.map +1 -0
- package/dist/cli/resolvers/config.d.ts +18 -0
- package/dist/cli/resolvers/config.js +278 -0
- package/dist/cli/resolvers/config.js.map +1 -0
- package/dist/cli/resolvers/path.d.ts +25 -0
- package/dist/cli/resolvers/path.js +40 -0
- package/dist/cli/resolvers/path.js.map +1 -0
- package/dist/cli/resolvers/plugin.d.ts +21 -0
- package/dist/cli/resolvers/plugin.js +26 -0
- package/dist/cli/resolvers/plugin.js.map +1 -0
- package/dist/cli/utils/path.d.ts +4 -0
- package/dist/cli/utils/path.js +20 -0
- package/dist/cli/utils/path.js.map +1 -0
- package/dist/cli/utils/string.d.ts +4 -0
- package/dist/cli/utils/string.js +15 -0
- package/dist/cli/utils/string.js.map +1 -0
- package/dist/cli/virtual/index.js +75 -0
- package/dist/cli/virtual/virtual.d.ts +110 -0
- package/dist/{index.d.mts → config-DzmiK3GH.d.ts} +109 -300
- package/dist/entry/background/Builder.d.ts +14 -0
- package/dist/entry/background/Builder.js +21 -0
- package/dist/entry/background/Builder.js.map +1 -0
- package/dist/entry/background/index.d.ts +6 -6
- package/dist/entry/background/index.js +5 -40
- package/dist/entry/background/index.js.map +1 -1
- package/dist/entry/background/resolvers/definition.d.ts +9 -0
- package/dist/entry/background/resolvers/definition.js +11 -0
- package/dist/entry/background/resolvers/definition.js.map +1 -0
- package/dist/entry/background/resolvers/index.d.ts +5 -0
- package/dist/entry/background/resolvers/index.js +2 -0
- package/dist/entry/background/resolvers/index.js.map +1 -0
- package/dist/entry/command/Builder.d.ts +19 -0
- package/dist/entry/command/Builder.js +58 -0
- package/dist/entry/command/Builder.js.map +1 -0
- package/dist/entry/command/index.d.ts +8 -8
- package/dist/entry/command/index.js +5 -83
- package/dist/entry/command/index.js.map +1 -1
- package/dist/entry/command/resolvers/definition.d.ts +12 -0
- package/dist/entry/command/resolvers/definition.js +15 -0
- package/dist/entry/command/resolvers/definition.js.map +1 -0
- package/dist/entry/command/resolvers/index.d.ts +7 -0
- package/dist/entry/command/resolvers/index.js +2 -0
- package/dist/entry/command/resolvers/index.js.map +1 -0
- package/dist/entry/content/adapters/react/Builder.d.ts +20 -0
- package/dist/entry/content/adapters/react/Builder.js +28 -0
- package/dist/entry/content/adapters/react/Builder.js.map +1 -0
- package/dist/entry/content/adapters/react/Node.d.ts +20 -0
- package/dist/entry/content/adapters/react/Node.js +37 -0
- package/dist/entry/content/adapters/react/Node.js.map +1 -0
- package/dist/entry/content/adapters/react/index.d.ts +17 -0
- package/dist/entry/content/adapters/react/index.js +7 -0
- package/dist/entry/content/adapters/react/index.js.map +1 -0
- package/dist/entry/content/adapters/react/resolvers/render.d.ts +10 -0
- package/dist/entry/content/adapters/react/resolvers/render.js +11 -0
- package/dist/entry/content/adapters/react/resolvers/render.js.map +1 -0
- package/dist/entry/content/adapters/vanilla/Builder.d.ts +19 -0
- package/dist/entry/content/adapters/vanilla/Builder.js +21 -0
- package/dist/entry/content/adapters/vanilla/Builder.js.map +1 -0
- package/dist/entry/content/adapters/vanilla/Node.d.ts +19 -0
- package/dist/entry/content/adapters/vanilla/Node.js +40 -0
- package/dist/entry/content/adapters/vanilla/Node.js.map +1 -0
- package/dist/entry/content/adapters/vanilla/index.d.ts +17 -0
- package/dist/entry/content/adapters/vanilla/index.js +7 -0
- package/dist/entry/content/adapters/vanilla/index.js.map +1 -0
- package/dist/entry/content/core/Builder.d.ts +33 -0
- package/dist/entry/content/core/Builder.js +93 -0
- package/dist/entry/content/core/Builder.js.map +1 -0
- package/dist/entry/content/core/Context.d.ts +19 -0
- package/dist/entry/content/core/Context.js +42 -0
- package/dist/entry/content/core/Context.js.map +1 -0
- package/dist/entry/content/core/EventEmitter.d.ts +22 -0
- package/dist/entry/content/core/EventEmitter.js +42 -0
- package/dist/entry/content/core/EventEmitter.js.map +1 -0
- package/dist/entry/content/core/EventNode.d.ts +18 -0
- package/dist/entry/content/core/EventNode.js +30 -0
- package/dist/entry/content/core/EventNode.js.map +1 -0
- package/dist/entry/content/core/ManagedContext.d.ts +13 -0
- package/dist/entry/content/core/ManagedContext.js +12 -0
- package/dist/entry/content/core/ManagedContext.js.map +1 -0
- package/dist/entry/content/core/MountBuilder.d.ts +22 -0
- package/dist/entry/content/core/MountBuilder.js +39 -0
- package/dist/entry/content/core/MountBuilder.js.map +1 -0
- package/dist/entry/content/core/MountNode.d.ts +19 -0
- package/dist/entry/content/core/MountNode.js +37 -0
- package/dist/entry/content/core/MountNode.js.map +1 -0
- package/dist/entry/content/core/Node.d.ts +20 -0
- package/dist/entry/content/core/Node.js +48 -0
- package/dist/entry/content/core/Node.js.map +1 -0
- package/dist/entry/content/core/resolvers/anchor.d.ts +11 -0
- package/dist/entry/content/core/resolvers/anchor.js +42 -0
- package/dist/entry/content/core/resolvers/anchor.js.map +1 -0
- package/dist/entry/content/core/resolvers/container.d.ts +10 -0
- package/dist/entry/content/core/resolvers/container.js +21 -0
- package/dist/entry/content/core/resolvers/container.js.map +1 -0
- package/dist/entry/content/core/resolvers/definition.d.ts +11 -0
- package/dist/entry/content/core/resolvers/definition.js +12 -0
- package/dist/entry/content/core/resolvers/definition.js.map +1 -0
- package/dist/entry/content/core/resolvers/mount.d.ts +10 -0
- package/dist/entry/content/core/resolvers/mount.js +27 -0
- package/dist/entry/content/core/resolvers/mount.js.map +1 -0
- package/dist/entry/content/core/resolvers/render.d.ts +11 -0
- package/dist/entry/content/core/resolvers/render.js +18 -0
- package/dist/entry/content/core/resolvers/render.js.map +1 -0
- package/dist/entry/content/core/resolvers/watch.d.ts +12 -0
- package/dist/entry/content/core/resolvers/watch.js +62 -0
- package/dist/entry/content/core/resolvers/watch.js.map +1 -0
- package/dist/entry/content/index.d.ts +6 -9
- package/dist/entry/content/index.js +2 -39
- package/dist/entry/content/index.js.map +1 -1
- package/dist/{Builder-Df1LUO_f.d.mts → entry/core/Builder.d.ts} +3 -2
- package/dist/entry/core/Builder.js +13 -0
- package/dist/entry/core/Builder.js.map +1 -0
- package/dist/entry/offscreen/Builder.d.ts +32 -0
- package/dist/entry/offscreen/Builder.js +31 -0
- package/dist/entry/offscreen/Builder.js.map +1 -0
- package/dist/entry/offscreen/TransportBuilder.d.ts +27 -0
- package/dist/entry/offscreen/TransportBuilder.js +15 -0
- package/dist/entry/offscreen/TransportBuilder.js.map +1 -0
- package/dist/entry/offscreen/index.d.ts +21 -27
- package/dist/entry/offscreen/index.js +5 -472
- package/dist/entry/offscreen/index.js.map +1 -1
- package/dist/entry/relay/Builder.d.ts +27 -0
- package/dist/entry/relay/Builder.js +37 -0
- package/dist/entry/relay/Builder.js.map +1 -0
- package/dist/entry/relay/TransportBuilder.d.ts +21 -0
- package/dist/entry/relay/TransportBuilder.js +16 -0
- package/dist/entry/relay/TransportBuilder.js.map +1 -0
- package/dist/entry/relay/index.d.ts +16 -26
- package/dist/entry/relay/index.js +5 -212
- package/dist/entry/relay/index.js.map +1 -1
- package/dist/entry/service/Builder.d.ts +25 -0
- package/dist/entry/service/Builder.js +15 -0
- package/dist/entry/service/Builder.js.map +1 -0
- package/dist/entry/service/index.d.ts +7 -5
- package/dist/entry/service/index.js +4 -379
- package/dist/entry/service/index.js.map +1 -1
- package/dist/{AbstractBuilder-BN4TmNJG.d.ts → entry/transport/AbstractBuilder.d.ts} +8 -4
- package/dist/entry/transport/AbstractBuilder.js +49 -0
- package/dist/entry/transport/AbstractBuilder.js.map +1 -0
- package/dist/entry/transport/index.d.ts +10 -15
- package/dist/entry/transport/index.js +1 -16
- package/dist/entry/transport/index.js.map +1 -1
- package/dist/entry/transport/resolvers/definition.d.ts +19 -0
- package/dist/entry/transport/resolvers/definition.js +19 -0
- package/dist/entry/transport/resolvers/definition.js.map +1 -0
- package/dist/entry/transport/resolvers/index.d.ts +13 -0
- package/dist/entry/transport/resolvers/index.js +2 -0
- package/dist/entry/transport/resolvers/index.js.map +1 -0
- package/dist/entry/view/{react/index.d.ts → adapters/react/Builder.d.ts} +7 -7
- package/dist/entry/view/adapters/react/Builder.js +40 -0
- package/dist/entry/view/adapters/react/Builder.js.map +1 -0
- package/dist/entry/view/adapters/react/index.d.ts +15 -0
- package/dist/entry/view/adapters/react/index.js +7 -0
- package/dist/entry/view/adapters/react/index.js.map +1 -0
- package/dist/entry/view/adapters/react/resolvers/render.d.ts +11 -0
- package/dist/entry/view/adapters/react/resolvers/render.js +11 -0
- package/dist/entry/view/adapters/react/resolvers/render.js.map +1 -0
- package/dist/entry/view/adapters/vanilla/Builder.d.ts +18 -0
- package/dist/entry/view/adapters/vanilla/Builder.js +36 -0
- package/dist/entry/view/adapters/vanilla/Builder.js.map +1 -0
- package/dist/entry/view/adapters/vanilla/index.d.ts +14 -0
- package/dist/entry/view/adapters/vanilla/index.js +7 -0
- package/dist/entry/view/adapters/vanilla/index.js.map +1 -0
- package/dist/{Builder-BOLvGGqp.d.ts → entry/view/core/Builder.d.ts} +9 -3
- package/dist/entry/view/core/Builder.js +35 -0
- package/dist/entry/view/core/Builder.js.map +1 -0
- package/dist/entry/view/core/resolvers/container.d.ts +11 -0
- package/dist/entry/view/core/resolvers/container.js +21 -0
- package/dist/entry/view/core/resolvers/container.js.map +1 -0
- package/dist/entry/view/{index.d.mts → core/resolvers/definition.d.ts} +4 -2
- package/dist/entry/view/core/resolvers/definition.js +12 -0
- package/dist/entry/view/core/resolvers/definition.js.map +1 -0
- package/dist/entry/view/core/resolvers/render.d.ts +12 -0
- package/dist/entry/view/core/resolvers/render.js +18 -0
- package/dist/entry/view/core/resolvers/render.js.map +1 -0
- package/dist/entry/view/index.d.ts +5 -7
- package/dist/entry/view/index.js +1 -15
- package/dist/entry/view/index.js.map +1 -1
- package/dist/index.d.ts +40 -882
- package/dist/index.js +1 -1019
- package/dist/index.js.map +1 -1
- package/dist/locale/adapters/react/context.d.ts +18 -0
- package/dist/locale/adapters/react/context.js +27 -0
- package/dist/locale/adapters/react/context.js.map +1 -0
- package/dist/locale/adapters/react/index.d.ts +12 -0
- package/dist/locale/adapters/react/index.js +7 -0
- package/dist/locale/adapters/react/index.js.map +1 -0
- package/dist/locale/{index.d.mts → helpers.d.ts} +4 -35
- package/dist/locale/helpers.js +29 -0
- package/dist/locale/helpers.js.map +1 -0
- package/dist/locale/index.d.ts +9 -78
- package/dist/locale/index.js +11 -556
- package/dist/locale/index.js.map +1 -1
- package/dist/locale/providers/AbstractLocale.d.ts +14 -0
- package/dist/locale/providers/AbstractLocale.js +109 -0
- package/dist/locale/providers/AbstractLocale.js.map +1 -0
- package/dist/locale/providers/CustomLocale.d.ts +17 -0
- package/dist/locale/providers/CustomLocale.js +38 -0
- package/dist/locale/providers/CustomLocale.js.map +1 -0
- package/dist/locale/providers/DynamicLocale.d.ts +25 -0
- package/dist/locale/providers/DynamicLocale.js +89 -0
- package/dist/locale/providers/DynamicLocale.js.map +1 -0
- package/dist/locale/providers/NativeLocale.d.ts +15 -0
- package/dist/locale/providers/NativeLocale.js +53 -0
- package/dist/locale/providers/NativeLocale.js.map +1 -0
- package/dist/locale/providers/index.d.ts +8 -0
- package/dist/locale/providers/index.js +9 -0
- package/dist/locale/providers/index.js.map +1 -0
- package/dist/locale/utils.d.ts +13 -0
- package/dist/locale/utils.js +55 -0
- package/dist/locale/utils.js.map +1 -0
- package/dist/main/app.d.ts +1 -0
- package/dist/main/app.js +6 -0
- package/dist/main/app.js.map +1 -0
- package/dist/main/background.d.ts +9 -0
- package/dist/main/background.js +7 -0
- package/dist/main/background.js.map +1 -0
- package/dist/main/browser.d.ts +1 -0
- package/dist/main/browser.js +5 -0
- package/dist/main/browser.js.map +1 -0
- package/dist/main/command.d.ts +12 -0
- package/dist/main/command.js +15 -0
- package/dist/main/command.js.map +1 -0
- package/dist/main/config.d.ts +19 -0
- package/dist/main/config.js +7 -0
- package/dist/main/config.js.map +1 -0
- package/dist/main/content.d.ts +14 -0
- package/dist/main/content.js +18 -0
- package/dist/main/content.js.map +1 -0
- package/dist/main/env.d.ts +21 -0
- package/dist/main/env.js +43 -0
- package/dist/main/env.js.map +1 -0
- package/dist/main/icon.d.ts +5 -0
- package/dist/main/icon.js +28 -0
- package/dist/main/icon.js.map +1 -0
- package/dist/main/index.d.ts +42 -0
- package/dist/main/index.js +18 -0
- package/dist/main/index.js.map +1 -0
- package/dist/main/manifest.d.ts +10 -0
- package/dist/main/manifest.js +5 -0
- package/dist/main/manifest.js.map +1 -0
- package/dist/main/offscreen.d.ts +21 -0
- package/dist/main/offscreen.js +30 -0
- package/dist/main/offscreen.js.map +1 -0
- package/dist/main/page.d.ts +17 -0
- package/dist/main/page.js +29 -0
- package/dist/main/page.js.map +1 -0
- package/dist/main/plugin.d.ts +19 -0
- package/dist/main/plugin.js +7 -0
- package/dist/main/plugin.js.map +1 -0
- package/dist/main/popup.d.ts +22 -0
- package/dist/main/popup.js +43 -0
- package/dist/main/popup.js.map +1 -0
- package/dist/main/relay.d.ts +19 -0
- package/dist/main/relay.js +12 -0
- package/dist/main/relay.js.map +1 -0
- package/dist/main/service.d.ts +13 -0
- package/dist/main/service.js +12 -0
- package/dist/main/service.js.map +1 -0
- package/dist/main/sidebar.d.ts +22 -0
- package/dist/main/sidebar.js +39 -0
- package/dist/main/sidebar.js.map +1 -0
- package/dist/main/view.d.ts +7 -0
- package/dist/main/view.js +1 -0
- package/dist/main/view.js.map +1 -0
- package/dist/message/MessageManager.d.ts +15 -0
- package/dist/message/MessageManager.js +62 -0
- package/dist/message/MessageManager.js.map +1 -0
- package/dist/message/adapters/react/index.d.ts +2 -0
- package/dist/message/adapters/react/index.js +5 -0
- package/dist/message/adapters/react/index.js.map +1 -0
- package/dist/message/{react/index.d.ts → adapters/react/useMessageHandler.d.ts} +2 -2
- package/dist/message/adapters/react/useMessageHandler.js +13 -0
- package/dist/message/adapters/react/useMessageHandler.js.map +1 -0
- package/dist/message/handlers/AbstractHandler.d.ts +7 -0
- package/dist/message/handlers/AbstractHandler.js +6 -0
- package/dist/message/handlers/AbstractHandler.js.map +1 -0
- package/dist/message/handlers/GeneralHandler.d.ts +10 -0
- package/dist/message/handlers/GeneralHandler.js +14 -0
- package/dist/message/handlers/GeneralHandler.js.map +1 -0
- package/dist/message/handlers/MapHandler.d.ts +10 -0
- package/dist/message/handlers/MapHandler.js +21 -0
- package/dist/message/handlers/MapHandler.js.map +1 -0
- package/dist/message/handlers/SingleHandler.d.ts +11 -0
- package/dist/message/handlers/SingleHandler.js +17 -0
- package/dist/message/handlers/SingleHandler.js.map +1 -0
- package/dist/message/handlers/index.d.ts +5 -0
- package/dist/message/handlers/index.js +9 -0
- package/dist/message/handlers/index.js.map +1 -0
- package/dist/message/index.d.ts +6 -4
- package/dist/message/index.js +8 -163
- package/dist/message/index.js.map +1 -1
- package/dist/message/providers/AbstractMessage.d.ts +11 -0
- package/dist/message/providers/AbstractMessage.js +15 -0
- package/dist/message/providers/AbstractMessage.js.map +1 -0
- package/dist/message/providers/Message.d.ts +18 -0
- package/dist/message/providers/Message.js +42 -0
- package/dist/message/providers/Message.js.map +1 -0
- package/dist/message/providers/index.d.ts +4 -0
- package/dist/message/providers/index.js +5 -0
- package/dist/message/providers/index.js.map +1 -0
- package/dist/offscreen/OffscreenBackground.d.ts +11 -0
- package/dist/offscreen/OffscreenBackground.js +10 -0
- package/dist/offscreen/OffscreenBackground.js.map +1 -0
- package/dist/offscreen/OffscreenBridge.d.ts +17 -0
- package/dist/offscreen/OffscreenBridge.js +37 -0
- package/dist/offscreen/OffscreenBridge.js.map +1 -0
- package/dist/offscreen/OffscreenManager.d.ts +13 -0
- package/dist/offscreen/OffscreenManager.js +12 -0
- package/dist/offscreen/OffscreenManager.js.map +1 -0
- package/dist/offscreen/OffscreenMessage.d.ts +17 -0
- package/dist/offscreen/OffscreenMessage.js +13 -0
- package/dist/offscreen/OffscreenMessage.js.map +1 -0
- package/dist/offscreen/index.d.ts +19 -36
- package/dist/offscreen/index.js +9 -700
- package/dist/offscreen/index.js.map +1 -1
- package/dist/offscreen/providers/Offscreen.d.ts +15 -0
- package/dist/offscreen/providers/Offscreen.js +21 -0
- package/dist/offscreen/providers/Offscreen.js.map +1 -0
- package/dist/offscreen/providers/ProxyOffscreen.d.ts +21 -0
- package/dist/offscreen/providers/ProxyOffscreen.js +49 -0
- package/dist/offscreen/providers/ProxyOffscreen.js.map +1 -0
- package/dist/offscreen/providers/RegisterOffscreen.d.ts +23 -0
- package/dist/offscreen/providers/RegisterOffscreen.js +26 -0
- package/dist/offscreen/providers/RegisterOffscreen.js.map +1 -0
- package/dist/offscreen/providers/index.d.ts +17 -0
- package/dist/offscreen/providers/index.js +9 -0
- package/dist/offscreen/providers/index.js.map +1 -0
- package/dist/offscreen/utils.d.ts +3 -0
- package/dist/offscreen/utils.js +8 -0
- package/dist/offscreen/utils.js.map +1 -0
- package/dist/relay/RelayManager.d.ts +20 -0
- package/dist/relay/RelayManager.js +25 -0
- package/dist/relay/RelayManager.js.map +1 -0
- package/dist/relay/index.d.ts +11 -8
- package/dist/relay/index.js +7 -172
- package/dist/relay/index.js.map +1 -1
- package/dist/{ProxyRelay-DDOSZE3h.d.ts → relay/providers/ProxyRelay.d.ts} +9 -4
- package/dist/relay/providers/ProxyRelay.js +53 -0
- package/dist/relay/providers/ProxyRelay.js.map +1 -0
- package/dist/relay/providers/RegisterRelay.d.ts +16 -0
- package/dist/relay/providers/RegisterRelay.js +19 -0
- package/dist/relay/providers/RegisterRelay.js.map +1 -0
- package/dist/relay/providers/Relay.d.ts +15 -0
- package/dist/relay/providers/Relay.js +21 -0
- package/dist/relay/providers/Relay.js.map +1 -0
- package/dist/relay/providers/index.d.ts +12 -0
- package/dist/relay/providers/index.js +9 -0
- package/dist/relay/providers/index.js.map +1 -0
- package/dist/relay/utils.d.ts +4 -0
- package/dist/relay/utils.js +28 -0
- package/dist/relay/utils.js.map +1 -0
- package/dist/service/ServiceManager.d.ts +13 -0
- package/dist/service/ServiceManager.js +12 -0
- package/dist/service/ServiceManager.js.map +1 -0
- package/dist/service/ServiceMessage.d.ts +17 -0
- package/dist/service/ServiceMessage.js +13 -0
- package/dist/service/ServiceMessage.js.map +1 -0
- package/dist/service/index.d.ts +17 -30
- package/dist/service/index.js +7 -366
- package/dist/service/index.js.map +1 -1
- package/dist/service/providers/ProxyService.d.ts +18 -0
- package/dist/service/providers/ProxyService.js +29 -0
- package/dist/service/providers/ProxyService.js.map +1 -0
- package/dist/service/providers/RegisterService.d.ts +23 -0
- package/dist/service/providers/RegisterService.js +26 -0
- package/dist/service/providers/RegisterService.js.map +1 -0
- package/dist/service/providers/Service.d.ts +15 -0
- package/dist/service/providers/Service.js +21 -0
- package/dist/service/providers/Service.js.map +1 -0
- package/dist/service/providers/index.d.ts +17 -0
- package/dist/service/providers/index.js +9 -0
- package/dist/service/providers/index.js.map +1 -0
- package/dist/storage/adapters/react/index.d.ts +2 -0
- package/dist/storage/adapters/react/index.js +5 -0
- package/dist/storage/adapters/react/index.js.map +1 -0
- package/dist/storage/{react/index.d.mts → adapters/react/useStorage.d.ts} +2 -2
- package/dist/storage/adapters/react/useStorage.js +49 -0
- package/dist/storage/adapters/react/useStorage.js.map +1 -0
- package/dist/storage/index.d.ts +4 -31
- package/dist/storage/index.js +2 -231
- package/dist/storage/index.js.map +1 -1
- package/dist/{Storage-DDIFjeu_.d.ts → storage/providers/AbstractStorage.d.ts} +5 -19
- package/dist/storage/providers/AbstractStorage.js +102 -0
- package/dist/storage/providers/AbstractStorage.js.map +1 -0
- package/dist/storage/{index.d.mts → providers/SecureStorage.d.ts} +3 -5
- package/dist/storage/providers/SecureStorage.js +93 -0
- package/dist/storage/providers/SecureStorage.js.map +1 -0
- package/dist/storage/providers/Storage.d.ts +18 -0
- package/dist/storage/providers/Storage.js +41 -0
- package/dist/storage/providers/Storage.js.map +1 -0
- package/dist/storage/providers/index.d.ts +4 -0
- package/dist/storage/providers/index.js +7 -0
- package/dist/storage/providers/index.js.map +1 -0
- package/dist/transport/BaseTransport.d.ts +16 -0
- package/dist/transport/BaseTransport.js +15 -0
- package/dist/transport/BaseTransport.js.map +1 -0
- package/dist/transport/ProxyTransport.d.ts +15 -0
- package/dist/transport/ProxyTransport.js +26 -0
- package/dist/transport/ProxyTransport.js.map +1 -0
- package/dist/transport/RegisterTransport.d.ts +18 -0
- package/dist/transport/RegisterTransport.js +58 -0
- package/dist/transport/RegisterTransport.js.map +1 -0
- package/dist/transport/TransportManager.d.ts +17 -0
- package/dist/transport/TransportManager.js +26 -0
- package/dist/transport/TransportManager.js.map +1 -0
- package/dist/transport/TransportMessage.d.ts +18 -0
- package/dist/transport/TransportMessage.js +14 -0
- package/dist/transport/TransportMessage.js.map +1 -0
- package/dist/transport/index.d.ts +6 -0
- package/dist/transport/index.js +1 -0
- package/dist/transport/index.js.map +1 -0
- package/dist/types/app.d.ts +13 -0
- package/dist/types/app.js +20 -0
- package/dist/types/app.js.map +1 -0
- package/dist/{background-CpVjDFHQ.d.ts → types/background.d.ts} +6 -2
- package/dist/types/background.js +5 -0
- package/dist/types/background.js.map +1 -0
- package/dist/types/browser.d.ts +10 -0
- package/dist/types/browser.js +13 -0
- package/dist/types/browser.js.map +1 -0
- package/dist/{command-S2dcqx6Q.d.mts → types/command.d.ts} +8 -3
- package/dist/types/command.js +5 -0
- package/dist/types/command.js.map +1 -0
- package/dist/types/config.d.ts +14 -0
- package/dist/types/config.js +1 -0
- package/dist/types/config.js.map +1 -0
- package/dist/{content-B0znLIjr.d.ts → types/content.d.ts} +5 -3
- package/dist/types/content.js +22 -0
- package/dist/types/content.js.map +1 -0
- package/dist/types/entrypoint.d.ts +89 -0
- package/dist/types/entrypoint.js +19 -0
- package/dist/types/entrypoint.js.map +1 -0
- package/dist/types/framework.d.ts +6 -0
- package/dist/types/framework.js +9 -0
- package/dist/types/framework.js.map +1 -0
- package/dist/types/helpers.d.ts +14 -0
- package/dist/types/helpers.js +1 -0
- package/dist/types/helpers.js.map +1 -0
- package/dist/types/icon.d.ts +3 -0
- package/dist/types/icon.js +5 -0
- package/dist/types/icon.js.map +1 -0
- package/dist/{locale-Do4kUmgC.d.mts → types/locale.d.ts} +32 -1
- package/dist/types/locale.js +84 -0
- package/dist/types/locale.js.map +1 -0
- package/dist/types/manifest.d.ts +151 -0
- package/dist/types/manifest.js +23 -0
- package/dist/types/manifest.js.map +1 -0
- package/dist/{message-jsmkeGHC.d.mts → types/message.d.ts} +3 -1
- package/dist/types/message.js +9 -0
- package/dist/types/message.js.map +1 -0
- package/dist/{offscreen-2EP-rRfx.d.mts → types/offscreen.d.ts} +12 -4
- package/dist/types/offscreen.js +26 -0
- package/dist/types/offscreen.js.map +1 -0
- package/dist/types/page.d.ts +17 -0
- package/dist/types/page.js +1 -0
- package/dist/types/page.js.map +1 -0
- package/dist/types/plugin.d.ts +14 -0
- package/dist/types/plugin.js +1 -0
- package/dist/types/plugin.js.map +1 -0
- package/dist/types/popup.d.ts +17 -0
- package/dist/types/popup.js +1 -0
- package/dist/types/popup.js.map +1 -0
- package/dist/{relay-DT46Ltms.d.ts → types/relay.d.ts} +10 -4
- package/dist/types/relay.js +5 -0
- package/dist/types/relay.js.map +1 -0
- package/dist/types/service.d.ts +16 -0
- package/dist/types/service.js +5 -0
- package/dist/types/service.js.map +1 -0
- package/dist/types/sidebar.d.ts +18 -0
- package/dist/types/sidebar.js +6 -0
- package/dist/types/sidebar.js.map +1 -0
- package/dist/{storage-DNeobNzz.d.mts → types/storage.d.ts} +1 -1
- package/dist/types/storage.js +1 -0
- package/dist/types/storage.js.map +1 -0
- package/dist/{transport-Co9Oxp0-.d.ts → types/transport.d.ts} +5 -3
- package/dist/types/transport.js +1 -0
- package/dist/types/transport.js.map +1 -0
- package/dist/{view-Bs26Jcvi.d.mts → types/view.d.ts} +5 -2
- package/dist/types/view.js +1 -0
- package/dist/types/view.js.map +1 -0
- package/package.json +62 -59
- package/dist/AbstractBuilder-C81kWZzQ.d.mts +0 -15
- package/dist/BaseTransport-DNZ28gFF.d.mts +0 -11
- package/dist/BaseTransport-Ecy2Kzti.d.ts +0 -11
- package/dist/Builder-BP8SDHO1.d.mts +0 -13
- package/dist/Builder-Bc8US0PY.d.ts +0 -9
- package/dist/Message-Bnritk3D.d.mts +0 -36
- package/dist/Message-DFDaS7mV.d.ts +0 -36
- package/dist/MountBuilder-BTltgVF2.d.mts +0 -64
- package/dist/MountBuilder-C9Q-7PeI.d.ts +0 -64
- package/dist/NativeLocale-BwVCqh2v.d.mts +0 -25
- package/dist/NativeLocale-C_gjXClM.d.ts +0 -25
- package/dist/ProxyRelay-Uel0ATcx.d.mts +0 -19
- package/dist/ProxyTransport-35rU8xqa.d.mts +0 -11
- package/dist/ProxyTransport-D4jv5SFh.d.ts +0 -11
- package/dist/RegisterOffscreen-DT0gN5xN.d.mts +0 -17
- package/dist/RegisterOffscreen-df3W5HqA.d.ts +0 -17
- package/dist/RegisterRelay-DCVZ2_NI.d.mts +0 -16
- package/dist/RegisterRelay-PFT2ac4v.d.ts +0 -16
- package/dist/Storage-DSqFjJAp.d.mts +0 -43
- package/dist/TransportMessage-CIKrv3DG.d.mts +0 -22
- package/dist/TransportMessage-CsObvTPq.d.ts +0 -22
- package/dist/background-cxLBji1Q.d.mts +0 -15
- package/dist/cli/index.cjs +0 -7395
- package/dist/cli/index.cjs.map +0 -1
- package/dist/command-TJ2JUrVd.d.ts +0 -25
- package/dist/content-DrrPH4ri.d.mts +0 -156
- package/dist/entry/background/index.cjs +0 -48
- package/dist/entry/background/index.cjs.map +0 -1
- package/dist/entry/background/index.d.mts +0 -9
- package/dist/entry/command/index.cjs +0 -92
- package/dist/entry/command/index.cjs.map +0 -1
- package/dist/entry/command/index.d.mts +0 -11
- package/dist/entry/content/index.cjs +0 -44
- package/dist/entry/content/index.cjs.map +0 -1
- package/dist/entry/content/index.d.mts +0 -11
- package/dist/entry/content/react/index.cjs +0 -543
- package/dist/entry/content/react/index.cjs.map +0 -1
- package/dist/entry/content/react/index.d.mts +0 -16
- package/dist/entry/content/react/index.d.ts +0 -16
- package/dist/entry/content/react/index.js +0 -534
- package/dist/entry/content/react/index.js.map +0 -1
- package/dist/entry/content/vanilla/index.cjs +0 -533
- package/dist/entry/content/vanilla/index.cjs.map +0 -1
- package/dist/entry/content/vanilla/index.d.mts +0 -15
- package/dist/entry/content/vanilla/index.d.ts +0 -15
- package/dist/entry/content/vanilla/index.js +0 -524
- package/dist/entry/content/vanilla/index.js.map +0 -1
- package/dist/entry/offscreen/index.cjs +0 -483
- package/dist/entry/offscreen/index.cjs.map +0 -1
- package/dist/entry/offscreen/index.d.mts +0 -32
- package/dist/entry/relay/index.cjs +0 -223
- package/dist/entry/relay/index.cjs.map +0 -1
- package/dist/entry/relay/index.d.mts +0 -30
- package/dist/entry/service/index.cjs +0 -387
- package/dist/entry/service/index.cjs.map +0 -1
- package/dist/entry/service/index.d.mts +0 -10
- package/dist/entry/transport/index.cjs +0 -22
- package/dist/entry/transport/index.cjs.map +0 -1
- package/dist/entry/transport/index.d.mts +0 -18
- package/dist/entry/view/index.cjs +0 -19
- package/dist/entry/view/index.cjs.map +0 -1
- package/dist/entry/view/react/index.cjs +0 -131
- package/dist/entry/view/react/index.cjs.map +0 -1
- package/dist/entry/view/react/index.d.mts +0 -21
- package/dist/entry/view/react/index.js +0 -126
- package/dist/entry/view/react/index.js.map +0 -1
- package/dist/entry/view/vanilla/index.cjs +0 -119
- package/dist/entry/view/vanilla/index.cjs.map +0 -1
- package/dist/entry/view/vanilla/index.d.mts +0 -18
- package/dist/entry/view/vanilla/index.d.ts +0 -18
- package/dist/entry/view/vanilla/index.js +0 -114
- package/dist/entry/view/vanilla/index.js.map +0 -1
- package/dist/helpers-YDFORuZz.d.mts +0 -64
- package/dist/helpers-YDFORuZz.d.ts +0 -64
- package/dist/index.cjs +0 -1068
- package/dist/index.cjs.map +0 -1
- package/dist/locale/index.cjs +0 -569
- package/dist/locale/index.cjs.map +0 -1
- package/dist/locale/react/index.cjs +0 -595
- package/dist/locale/react/index.cjs.map +0 -1
- package/dist/locale/react/index.d.mts +0 -20
- package/dist/locale/react/index.d.ts +0 -20
- package/dist/locale/react/index.js +0 -588
- package/dist/locale/react/index.js.map +0 -1
- package/dist/locale-Do4kUmgC.d.ts +0 -95
- package/dist/message/index.cjs +0 -172
- package/dist/message/index.cjs.map +0 -1
- package/dist/message/index.d.mts +0 -13
- package/dist/message/react/index.cjs +0 -172
- package/dist/message/react/index.cjs.map +0 -1
- package/dist/message/react/index.d.mts +0 -5
- package/dist/message/react/index.js +0 -170
- package/dist/message/react/index.js.map +0 -1
- package/dist/message-jsmkeGHC.d.ts +0 -33
- package/dist/offscreen/index.cjs +0 -712
- package/dist/offscreen/index.cjs.map +0 -1
- package/dist/offscreen/index.d.mts +0 -40
- package/dist/offscreen-aHdkogKj.d.ts +0 -49
- package/dist/relay/index.cjs +0 -184
- package/dist/relay/index.cjs.map +0 -1
- package/dist/relay/index.d.mts +0 -14
- package/dist/relay-vaJ5R2iC.d.mts +0 -14
- package/dist/service/index.cjs +0 -377
- package/dist/service/index.cjs.map +0 -1
- package/dist/service/index.d.mts +0 -34
- package/dist/service-6FdoYGNC.d.ts +0 -10
- package/dist/service-C9HbDQPE.d.mts +0 -10
- package/dist/storage/index.cjs +0 -235
- package/dist/storage/index.cjs.map +0 -1
- package/dist/storage/react/index.cjs +0 -190
- package/dist/storage/react/index.cjs.map +0 -1
- package/dist/storage/react/index.d.ts +0 -12
- package/dist/storage/react/index.js +0 -188
- package/dist/storage/react/index.js.map +0 -1
- package/dist/storage-DNeobNzz.d.ts +0 -14
- package/dist/transport-BrbirhXv.d.mts +0 -50
- package/dist/view-u9w7nMgw.d.ts +0 -33
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../../src/cli/entrypoint/file/parsers/JSDocParser.ts"],"sourcesContent":["import ts from \"typescript\";\n\n/**\n * Parses JSDoc comments to extract type information.\n */\nexport default class JSDocParser {\n /**\n * Extracts a type from a JSDoc tag with @type annotation.\n *\n * @param node The node to extract JSDoc type from\n * @returns The extracted type or undefined if no JSDoc type is found\n */\n public getJSDocType(node: ts.Node): string | undefined {\n const jsDocTags = this.getJSDocTags(node);\n\n // Look for @type tag\n for (const tag of jsDocTags) {\n if (ts.isJSDocTypeTag(tag) && tag.typeExpression) {\n return this.parseJSDocTypeExpression(tag.typeExpression);\n }\n }\n\n return undefined;\n }\n\n /**\n * Extracts parameter types from JSDoc @param annotations.\n *\n * @param node The function-like node to extract parameter types from\n * @returns A map of parameter names to their JSDoc types\n */\n public getJSDocParameterTypes(node: ts.SignatureDeclaration): Map<string, string> {\n const result = new Map<string, string>();\n const nestedParams = new Map<string, Map<string, string>>();\n const jsDocTags = this.getJSDocTags(node);\n\n // Get custom type definitions\n const typeDefinitions = this.getJSDocTypeDefinitions(node);\n\n // First pass: collect all parameters and their types\n for (const tag of jsDocTags) {\n if (ts.isJSDocParameterTag(tag) && tag.typeExpression && tag.name) {\n // Extract just the parameter name without any JSDoc comments\n let paramName = tag.name.getText();\n\n // Clean up the parameter name to remove any JSDoc comments\n // This handles both regular parameters and nested parameters like options.method\n const match = paramName.match(/(\\w+)(?:\\.(\\w+))?/);\n if (match) {\n if (match[2]) {\n // This is a nested parameter like options.method\n const parentParam = match[1];\n const childProp = match[2];\n\n // Create or update the nested parameter map\n if (!nestedParams.has(parentParam)) {\n nestedParams.set(parentParam, new Map<string, string>());\n }\n\n let paramType = this.parseJSDocTypeExpression(tag.typeExpression);\n\n // Check if the parameter type is a custom type definition\n if (typeDefinitions.has(paramType)) {\n paramType = typeDefinitions.get(paramType)!;\n }\n\n nestedParams.get(parentParam)!.set(childProp, paramType);\n } else {\n // This is a regular parameter\n paramName = match[1];\n\n // If this parameter already has nested properties, don't override it\n if (!nestedParams.has(paramName)) {\n let paramType = this.parseJSDocTypeExpression(tag.typeExpression);\n\n // Check if the parameter type is a custom type definition\n if (typeDefinitions.has(paramType)) {\n paramType = typeDefinitions.get(paramType)!;\n }\n\n result.set(paramName, paramType);\n }\n }\n }\n }\n }\n\n // Second pass: build object types for nested parameters\n for (const [parentParam, childParams] of nestedParams.entries()) {\n const properties: string[] = [];\n\n for (const [childProp, childType] of childParams.entries()) {\n properties.push(`${childProp}: ${childType}`);\n }\n\n // Create the object type\n result.set(parentParam, `{${properties.join(\"; \")};}`);\n }\n\n return result;\n }\n\n /**\n * Extracts the return type from a JSDoc @returns annotation.\n *\n * @param node The function-like node to extract return type from\n * @returns The extracted return type or undefined if no JSDoc return type is found\n */\n public getJSDocReturnType(node: ts.SignatureDeclaration): string | undefined {\n const jsDocTags = this.getJSDocTags(node);\n\n // Look for @returns tag\n for (const tag of jsDocTags) {\n if (ts.isJSDocReturnTag(tag) && tag.typeExpression) {\n return this.parseJSDocTypeExpression(tag.typeExpression);\n }\n }\n\n return undefined;\n }\n\n /**\n * Gets all JSDoc tags for a node.\n *\n * @param node The node to get JSDoc tags for\n * @returns An array of JSDoc tags\n */\n private getJSDocTags(node: ts.Node): ts.JSDocTag[] {\n const jsDocTags: ts.JSDocTag[] = [];\n\n // Get all JSDoc comments attached to the node\n const jsDocComments = ts.getJSDocTags(node);\n if (jsDocComments) {\n jsDocTags.push(...jsDocComments);\n }\n\n return jsDocTags;\n }\n\n /**\n * Extracts type parameters from JSDoc @template annotations.\n *\n * @param node The function-like node to extract type parameters from\n * @returns An array of type parameter names\n */\n public getJSDocTypeParameters(node: ts.SignatureDeclaration): string[] {\n const result: string[] = [];\n const jsDocTags = this.getJSDocTags(node);\n\n // Look for @template tags\n for (const tag of jsDocTags) {\n if (ts.isJSDocTemplateTag(tag) && tag.typeParameters) {\n // Iterate through each type parameter and extract its name\n for (const typeParam of tag.typeParameters) {\n if (typeParam.name) {\n const typeName = typeParam.name.getText();\n result.push(typeName);\n }\n }\n }\n }\n\n return result;\n }\n\n /**\n * Extracts custom type definitions from JSDoc @typedef annotations.\n *\n * @param node The node to extract custom type definitions from\n * @returns A map of type names to their definitions\n */\n public getJSDocTypeDefinitions(node: ts.Node): Map<string, string> {\n const result = new Map<string, string>();\n const jsDocTags = this.getJSDocTags(node);\n\n // Look for @typedef tags\n for (const tag of jsDocTags) {\n if (ts.isJSDocTypedefTag(tag) && tag.name && tag.typeExpression) {\n const typeName = tag.name.getText();\n const typeExpression = this.parseJSDocTypeExpression(tag.typeExpression);\n\n // Store the type definition\n result.set(typeName, typeExpression);\n }\n }\n\n // Look for @property tags to build object type definitions\n const typedefProperties = new Map<string, Map<string, string>>();\n\n for (const tag of jsDocTags) {\n if (ts.isJSDocPropertyTag(tag) && tag.name && tag.typeExpression) {\n // The property tag should be associated with a typedef\n const comment = tag.parent?.getText() || \"\";\n const typedefMatch = comment.match(/@typedef\\s+\\{[^}]+\\}\\s+(\\w+)/);\n\n if (typedefMatch) {\n const typedefName = typedefMatch[1];\n const propName = tag.name.getText();\n const propType = this.parseJSDocTypeExpression(tag.typeExpression);\n const isOptional = tag.isBracketed || comment.includes(`[${propName}]`);\n\n // Create or update the property map for this typedef\n if (!typedefProperties.has(typedefName)) {\n typedefProperties.set(typedefName, new Map<string, string>());\n }\n\n // Add the property to the map\n typedefProperties\n .get(typedefName)!\n .set(propName, `${propName}${isOptional ? \"?\" : \"\"}: ${propType}`);\n }\n }\n }\n\n // Build object type definitions from properties\n for (const [typedefName, properties] of typedefProperties.entries()) {\n const props = Array.from(properties.values());\n if (props.length > 0) {\n result.set(typedefName, `{ ${props.join(\"; \")}; }`);\n }\n }\n\n return result;\n }\n\n /**\n * Parses a JSDoc type expression into a string representation.\n *\n * @param typeExpression The JSDoc type expression to parse\n * @returns The parsed type as a string\n */\n private parseJSDocTypeExpression(typeExpression: ts.JSDocTypeExpression | ts.JSDocTypeLiteral): string {\n // Handle JSDocTypeLiteral\n if (ts.isJSDocTypeLiteral(typeExpression)) {\n // For JSDocTypeLiteral, we need to build a type string from its properties\n if (typeExpression.jsDocPropertyTags && typeExpression.jsDocPropertyTags.length > 0) {\n const props = typeExpression.jsDocPropertyTags.map(tag => {\n const name = tag.name.getText();\n const type = tag.typeExpression ? this.parseJSDocTypeExpression(tag.typeExpression) : \"any\";\n const optional = tag.isBracketed;\n return `${name}${optional ? \"?\" : \"\"}: ${type}`;\n });\n return `{ ${props.join(\"; \")}; }`;\n }\n // If it's an array type, return array of any\n if (typeExpression.isArrayType) {\n return \"any[]\";\n }\n // Default to any for empty type literals\n return \"any\";\n }\n\n // Extract the type from the JSDoc type expression (for JSDocTypeExpression)\n const typeNode = typeExpression.type;\n\n // Check if typeNode is undefined\n if (!typeNode) {\n return \"any\";\n }\n\n // Simple approach: extract the text directly from the JSDoc comment\n // This handles most common JSDoc type formats\n const text = typeNode.getText();\n\n // Handle special cases for common JSDoc types\n if (text === \"*\") {\n return \"any\";\n }\n\n // Handle array types (e.g., string[])\n if (text.endsWith(\"[]\")) {\n return text;\n }\n\n // Handle object types (e.g., {foo: string, bar: number})\n if (text.startsWith(\"{\") && text.endsWith(\"}\")) {\n return this.formatObjectType(text);\n }\n\n // Handle union types (e.g., string|number)\n if (text.includes(\"|\")) {\n return text;\n }\n\n // Handle function types (e.g., function(string): number)\n if (text.includes(\"function(\")) {\n return text;\n }\n\n // Handle import types (e.g., import('somelib').SomeType)\n if (text.includes(\"import(\")) {\n return text;\n }\n\n // Handle generic types (e.g., Array<string>, Promise<Object>)\n if (text.includes(\"<\") && text.includes(\">\")) {\n // Extract the type name and arguments\n const typeName = text.substring(0, text.indexOf(\"<\"));\n const typeArgs = text.substring(text.indexOf(\"<\") + 1, text.lastIndexOf(\">\"));\n\n // Check if the type arguments contain an object type\n if (typeArgs.includes(\"{\") && typeArgs.includes(\"}\")) {\n // Format the object type in the type arguments\n const formattedTypeArgs = this.formatNestedTypes(typeArgs);\n return `${typeName}<${formattedTypeArgs}>`;\n }\n\n return `${typeName}<${typeArgs}>`;\n }\n\n // For simple types, just return the text\n return text;\n }\n\n /**\n * Formats an object type string to match the expected format.\n *\n * @param objectType The object type string to format\n * @returns The formatted object type string\n */\n private formatObjectType(objectType: string): string {\n // Remove the braces and get the content\n const content = objectType.substring(1, objectType.length - 1).trim();\n\n // Split by commas, but only at the top level (not inside nested objects)\n const properties: string[] = [];\n let depth = 0;\n let currentProp = \"\";\n\n for (let i = 0; i < content.length; i++) {\n const char = content[i];\n\n if (char === \"{\") {\n depth++;\n currentProp += char;\n } else if (char === \"}\") {\n depth--;\n currentProp += char;\n } else if (char === \",\" && depth === 0) {\n properties.push(currentProp.trim());\n currentProp = \"\";\n } else {\n currentProp += char;\n }\n }\n\n if (currentProp.trim()) {\n properties.push(currentProp.trim());\n }\n\n // Process each property to handle nested objects\n const formattedProperties = properties.map(prop => {\n const colonIndex = prop.indexOf(\":\");\n if (colonIndex === -1) return prop;\n\n const propName = prop.substring(0, colonIndex).trim();\n let propType = prop.substring(colonIndex + 1).trim();\n\n // If the property type is an object, format it recursively\n if (propType.startsWith(\"{\") && propType.endsWith(\"}\")) {\n propType = this.formatObjectType(propType);\n }\n\n return `${propName}: ${propType}`;\n });\n\n // Join properties with semicolons\n return `{ ${formattedProperties.join(\"; \")}; }`;\n }\n\n /**\n * Formats nested types in a type string.\n *\n * @param typeString The type string to format\n * @returns The formatted type string\n */\n private formatNestedTypes(typeString: string): string {\n // Check if the type string contains an object type\n if (typeString.includes(\"{\") && typeString.includes(\"}\")) {\n // Find all object types in the type string\n let result = typeString;\n let startIndex = result.indexOf(\"{\");\n\n while (startIndex !== -1) {\n // Find the matching closing brace\n let depth = 1;\n let endIndex = startIndex + 1;\n\n while (depth > 0 && endIndex < result.length) {\n if (result[endIndex] === \"{\") {\n depth++;\n } else if (result[endIndex] === \"}\") {\n depth--;\n }\n endIndex++;\n }\n\n if (depth === 0) {\n // Extract the object type\n const objectType = result.substring(startIndex, endIndex);\n // Format the object type\n const formattedObjectType = this.formatObjectType(objectType);\n // Replace the object type in the result\n result = result.substring(0, startIndex) + formattedObjectType + result.substring(endIndex);\n // Find the next object type\n startIndex = result.indexOf(\"{\", startIndex + formattedObjectType.length);\n } else {\n // No matching closing brace found, break the loop\n break;\n }\n }\n\n return result;\n }\n\n return typeString;\n }\n\n /**\n * Adds a property to an object type string.\n *\n * @param objectType The object type string to add the property to\n * @param propertyName The name of the property to add\n * @param propertyType The type of the property to add\n * @returns The updated object type string\n */\n private addPropertyToObjectType(objectType: string, propertyName: string, propertyType: string): string {\n // Remove the braces and split by semicolons\n const content = objectType.substring(1, objectType.length - 1).trim();\n const properties = content\n ? content\n .split(\";\")\n .map(p => p.trim())\n .filter(Boolean)\n : [];\n\n // Check if the property already exists\n const propIndex = properties.findIndex(p => p.startsWith(`${propertyName}:`));\n\n if (propIndex >= 0) {\n // Update the existing property\n properties[propIndex] = `${propertyName}: ${propertyType}`;\n } else {\n // Add the new property\n properties.push(`${propertyName}: ${propertyType}`);\n }\n\n // Reconstruct the object type\n return `{ ${properties.join(\"; \")}; }`;\n }\n}\n"],"mappings":"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","names":[]}
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
import ts from 'typescript';
|
|
2
|
+
import EntryFile from '../SourceFile.js';
|
|
3
|
+
import '../resolvers/ImportResolver.js';
|
|
4
|
+
import '../resolvers/TsResolver.js';
|
|
5
|
+
import '../types.js';
|
|
6
|
+
|
|
7
|
+
/**
|
|
8
|
+
* Finds nodes in the TypeScript AST.
|
|
9
|
+
*/
|
|
10
|
+
declare class NodeFinder {
|
|
11
|
+
private sourceFile;
|
|
12
|
+
/**
|
|
13
|
+
* Constructor for the NodeFinder.
|
|
14
|
+
*
|
|
15
|
+
* @param sourceFile The source file to find nodes in
|
|
16
|
+
*/
|
|
17
|
+
constructor(sourceFile: EntryFile);
|
|
18
|
+
/**
|
|
19
|
+
* Generic method to find a node of a specific type by name in the AST.
|
|
20
|
+
*
|
|
21
|
+
* @param predicate The predicate to match the node
|
|
22
|
+
* @param name The name to search for
|
|
23
|
+
* @returns The found node or undefined if not found
|
|
24
|
+
*/
|
|
25
|
+
findNodeByName<T extends ts.Node>(predicate: (node: ts.Node, name: string) => node is T, name: string): T | undefined;
|
|
26
|
+
/**
|
|
27
|
+
* Searches the AST of this file for a class declaration by name.
|
|
28
|
+
*
|
|
29
|
+
* @param name The name of the class to find
|
|
30
|
+
* @returns The class declaration or undefined if not found
|
|
31
|
+
*/
|
|
32
|
+
findClassDeclaration(name: string): ts.ClassDeclaration | undefined;
|
|
33
|
+
/**
|
|
34
|
+
* Searches the AST of this file for a type alias declaration by name.
|
|
35
|
+
*
|
|
36
|
+
* @param name The name of the type alias to find
|
|
37
|
+
* @returns The type alias declaration or undefined if not found
|
|
38
|
+
*/
|
|
39
|
+
findTypeAliasDeclaration(name: string): ts.TypeAliasDeclaration | undefined;
|
|
40
|
+
/**
|
|
41
|
+
* Searches the AST of this file for an interface declaration by name.
|
|
42
|
+
*
|
|
43
|
+
* @param name The name of the interface to find
|
|
44
|
+
* @returns The interface declaration or undefined if not found
|
|
45
|
+
*/
|
|
46
|
+
findInterfaceDeclaration(name: string): ts.InterfaceDeclaration | undefined;
|
|
47
|
+
/**
|
|
48
|
+
* Searches the AST of this file for a variable declaration by name.
|
|
49
|
+
*
|
|
50
|
+
* @param name The name of the variable to find
|
|
51
|
+
* @returns The variable declaration or undefined if not found
|
|
52
|
+
*/
|
|
53
|
+
findVariableDeclaration(name: string): ts.VariableDeclaration | undefined;
|
|
54
|
+
/**
|
|
55
|
+
* Searches the AST of this file for an import equals declaration by name.
|
|
56
|
+
*
|
|
57
|
+
* @param name The name of the import equals declaration to find
|
|
58
|
+
* @returns The import equals declaration or undefined if not found
|
|
59
|
+
*/
|
|
60
|
+
findImportEqualsDeclaration(name: string): ts.ImportEqualsDeclaration | undefined;
|
|
61
|
+
}
|
|
62
|
+
|
|
63
|
+
export { NodeFinder as default };
|
|
@@ -0,0 +1,98 @@
|
|
|
1
|
+
import ts from "typescript";
|
|
2
|
+
class NodeFinder {
|
|
3
|
+
/**
|
|
4
|
+
* Constructor for the NodeFinder.
|
|
5
|
+
*
|
|
6
|
+
* @param sourceFile The source file to find nodes in
|
|
7
|
+
*/
|
|
8
|
+
constructor(sourceFile) {
|
|
9
|
+
this.sourceFile = sourceFile;
|
|
10
|
+
}
|
|
11
|
+
/**
|
|
12
|
+
* Generic method to find a node of a specific type by name in the AST.
|
|
13
|
+
*
|
|
14
|
+
* @param predicate The predicate to match the node
|
|
15
|
+
* @param name The name to search for
|
|
16
|
+
* @returns The found node or undefined if not found
|
|
17
|
+
*/
|
|
18
|
+
findNodeByName(predicate, name) {
|
|
19
|
+
const sf = this.sourceFile.getSourceFile();
|
|
20
|
+
let found;
|
|
21
|
+
const visit = (node) => {
|
|
22
|
+
if (predicate(node, name)) {
|
|
23
|
+
found = node;
|
|
24
|
+
} else {
|
|
25
|
+
ts.forEachChild(node, visit);
|
|
26
|
+
}
|
|
27
|
+
};
|
|
28
|
+
ts.forEachChild(sf, visit);
|
|
29
|
+
return found;
|
|
30
|
+
}
|
|
31
|
+
/**
|
|
32
|
+
* Searches the AST of this file for a class declaration by name.
|
|
33
|
+
*
|
|
34
|
+
* @param name The name of the class to find
|
|
35
|
+
* @returns The class declaration or undefined if not found
|
|
36
|
+
*/
|
|
37
|
+
findClassDeclaration(name) {
|
|
38
|
+
return this.findNodeByName(
|
|
39
|
+
(node, searchName) => {
|
|
40
|
+
var _a;
|
|
41
|
+
return ts.isClassDeclaration(node) && ((_a = node.name) == null ? void 0 : _a.text) === searchName;
|
|
42
|
+
},
|
|
43
|
+
name
|
|
44
|
+
);
|
|
45
|
+
}
|
|
46
|
+
/**
|
|
47
|
+
* Searches the AST of this file for a type alias declaration by name.
|
|
48
|
+
*
|
|
49
|
+
* @param name The name of the type alias to find
|
|
50
|
+
* @returns The type alias declaration or undefined if not found
|
|
51
|
+
*/
|
|
52
|
+
findTypeAliasDeclaration(name) {
|
|
53
|
+
return this.findNodeByName(
|
|
54
|
+
(node, searchName) => ts.isTypeAliasDeclaration(node) && node.name.text === searchName,
|
|
55
|
+
name
|
|
56
|
+
);
|
|
57
|
+
}
|
|
58
|
+
/**
|
|
59
|
+
* Searches the AST of this file for an interface declaration by name.
|
|
60
|
+
*
|
|
61
|
+
* @param name The name of the interface to find
|
|
62
|
+
* @returns The interface declaration or undefined if not found
|
|
63
|
+
*/
|
|
64
|
+
findInterfaceDeclaration(name) {
|
|
65
|
+
return this.findNodeByName(
|
|
66
|
+
(node, searchName) => ts.isInterfaceDeclaration(node) && node.name.text === searchName,
|
|
67
|
+
name
|
|
68
|
+
);
|
|
69
|
+
}
|
|
70
|
+
/**
|
|
71
|
+
* Searches the AST of this file for a variable declaration by name.
|
|
72
|
+
*
|
|
73
|
+
* @param name The name of the variable to find
|
|
74
|
+
* @returns The variable declaration or undefined if not found
|
|
75
|
+
*/
|
|
76
|
+
findVariableDeclaration(name) {
|
|
77
|
+
return this.findNodeByName(
|
|
78
|
+
(node, searchName) => ts.isVariableDeclaration(node) && ts.isIdentifier(node.name) && node.name.text === searchName,
|
|
79
|
+
name
|
|
80
|
+
);
|
|
81
|
+
}
|
|
82
|
+
/**
|
|
83
|
+
* Searches the AST of this file for an import equals declaration by name.
|
|
84
|
+
*
|
|
85
|
+
* @param name The name of the import equals declaration to find
|
|
86
|
+
* @returns The import equals declaration or undefined if not found
|
|
87
|
+
*/
|
|
88
|
+
findImportEqualsDeclaration(name) {
|
|
89
|
+
return this.findNodeByName(
|
|
90
|
+
(node, searchName) => ts.isImportEqualsDeclaration(node) && ts.isIdentifier(node.name) && node.name.text === searchName,
|
|
91
|
+
name
|
|
92
|
+
);
|
|
93
|
+
}
|
|
94
|
+
}
|
|
95
|
+
export {
|
|
96
|
+
NodeFinder as default
|
|
97
|
+
};
|
|
98
|
+
//# sourceMappingURL=NodeFinder.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../../src/cli/entrypoint/file/parsers/NodeFinder.ts"],"sourcesContent":["import ts from \"typescript\";\nimport SourceFile from \"../SourceFile\";\n\n/**\n * Finds nodes in the TypeScript AST.\n */\nexport default class NodeFinder {\n /**\n * Constructor for the NodeFinder.\n *\n * @param sourceFile The source file to find nodes in\n */\n constructor(private sourceFile: SourceFile) {}\n\n /**\n * Generic method to find a node of a specific type by name in the AST.\n *\n * @param predicate The predicate to match the node\n * @param name The name to search for\n * @returns The found node or undefined if not found\n */\n public findNodeByName<T extends ts.Node>(\n predicate: (node: ts.Node, name: string) => node is T,\n name: string\n ): T | undefined {\n const sf = this.sourceFile.getSourceFile();\n let found: T | undefined;\n\n const visit = (node: ts.Node) => {\n if (predicate(node, name)) {\n found = node;\n } else {\n ts.forEachChild(node, visit);\n }\n };\n\n ts.forEachChild(sf, visit);\n return found;\n }\n\n /**\n * Searches the AST of this file for a class declaration by name.\n *\n * @param name The name of the class to find\n * @returns The class declaration or undefined if not found\n */\n public findClassDeclaration(name: string): ts.ClassDeclaration | undefined {\n return this.findNodeByName<ts.ClassDeclaration>(\n (node, searchName): node is ts.ClassDeclaration =>\n ts.isClassDeclaration(node) && node.name?.text === searchName,\n name\n );\n }\n\n /**\n * Searches the AST of this file for a type alias declaration by name.\n *\n * @param name The name of the type alias to find\n * @returns The type alias declaration or undefined if not found\n */\n public findTypeAliasDeclaration(name: string): ts.TypeAliasDeclaration | undefined {\n return this.findNodeByName<ts.TypeAliasDeclaration>(\n (node, searchName): node is ts.TypeAliasDeclaration =>\n ts.isTypeAliasDeclaration(node) && node.name.text === searchName,\n name\n );\n }\n\n /**\n * Searches the AST of this file for an interface declaration by name.\n *\n * @param name The name of the interface to find\n * @returns The interface declaration or undefined if not found\n */\n public findInterfaceDeclaration(name: string): ts.InterfaceDeclaration | undefined {\n return this.findNodeByName<ts.InterfaceDeclaration>(\n (node, searchName): node is ts.InterfaceDeclaration =>\n ts.isInterfaceDeclaration(node) && node.name.text === searchName,\n name\n );\n }\n\n /**\n * Searches the AST of this file for a variable declaration by name.\n *\n * @param name The name of the variable to find\n * @returns The variable declaration or undefined if not found\n */\n public findVariableDeclaration(name: string): ts.VariableDeclaration | undefined {\n return this.findNodeByName<ts.VariableDeclaration>(\n (node, searchName): node is ts.VariableDeclaration =>\n ts.isVariableDeclaration(node) && ts.isIdentifier(node.name) && node.name.text === searchName,\n name\n );\n }\n\n /**\n * Searches the AST of this file for an import equals declaration by name.\n *\n * @param name The name of the import equals declaration to find\n * @returns The import equals declaration or undefined if not found\n */\n public findImportEqualsDeclaration(name: string): ts.ImportEqualsDeclaration | undefined {\n return this.findNodeByName<ts.ImportEqualsDeclaration>(\n (node, searchName): node is ts.ImportEqualsDeclaration =>\n ts.isImportEqualsDeclaration(node) && ts.isIdentifier(node.name) && node.name.text === searchName,\n name\n );\n }\n}\n"],"mappings":"AAAA,OAAO,QAAQ;AAMf,MAAO,WAAyB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAM5B,YAAoB,YAAwB;AAAxB;AAAA,EAAyB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAStC,eACH,WACA,MACa;AACb,UAAM,KAAK,KAAK,WAAW,cAAc;AACzC,QAAI;AAEJ,UAAM,QAAQ,CAAC,SAAkB;AAC7B,UAAI,UAAU,MAAM,IAAI,GAAG;AACvB,gBAAQ;AAAA,MACZ,OAAO;AACH,WAAG,aAAa,MAAM,KAAK;AAAA,MAC/B;AAAA,IACJ;AAEA,OAAG,aAAa,IAAI,KAAK;AACzB,WAAO;AAAA,EACX;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAQO,qBAAqB,MAA+C;AACvE,WAAO,KAAK;AAAA,MACR,CAAC,MAAM,eAAyC;AAhD5D;AAiDgB,kBAAG,mBAAmB,IAAI,OAAK,UAAK,SAAL,mBAAW,UAAS;AAAA;AAAA,MACvD;AAAA,IACJ;AAAA,EACJ;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAQO,yBAAyB,MAAmD;AAC/E,WAAO,KAAK;AAAA,MACR,CAAC,MAAM,eACH,GAAG,uBAAuB,IAAI,KAAK,KAAK,KAAK,SAAS;AAAA,MAC1D;AAAA,IACJ;AAAA,EACJ;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAQO,yBAAyB,MAAmD;AAC/E,WAAO,KAAK;AAAA,MACR,CAAC,MAAM,eACH,GAAG,uBAAuB,IAAI,KAAK,KAAK,KAAK,SAAS;AAAA,MAC1D;AAAA,IACJ;AAAA,EACJ;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAQO,wBAAwB,MAAkD;AAC7E,WAAO,KAAK;AAAA,MACR,CAAC,MAAM,eACH,GAAG,sBAAsB,IAAI,KAAK,GAAG,aAAa,KAAK,IAAI,KAAK,KAAK,KAAK,SAAS;AAAA,MACvF;AAAA,IACJ;AAAA,EACJ;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAQO,4BAA4B,MAAsD;AACrF,WAAO,KAAK;AAAA,MACR,CAAC,MAAM,eACH,GAAG,0BAA0B,IAAI,KAAK,GAAG,aAAa,KAAK,IAAI,KAAK,KAAK,KAAK,SAAS;AAAA,MAC3F;AAAA,IACJ;AAAA,EACJ;AACJ;","names":[]}
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
import ts from 'typescript';
|
|
2
|
+
import EntryFile from '../SourceFile.js';
|
|
3
|
+
import AbstractParser from './AbstractParser.js';
|
|
4
|
+
import SignatureBuilder from './SignatureBuilder.js';
|
|
5
|
+
import { MemberSignature } from './types.js';
|
|
6
|
+
import '../resolvers/ImportResolver.js';
|
|
7
|
+
import '../resolvers/TsResolver.js';
|
|
8
|
+
import '../types.js';
|
|
9
|
+
import './TypeResolver.js';
|
|
10
|
+
import './NodeFinder.js';
|
|
11
|
+
|
|
12
|
+
/**
|
|
13
|
+
* Parses object literal expressions.
|
|
14
|
+
*/
|
|
15
|
+
declare class ObjectParser extends AbstractParser {
|
|
16
|
+
private readonly signatureBuilder;
|
|
17
|
+
/**
|
|
18
|
+
* Constructor for the ObjectParser.
|
|
19
|
+
*
|
|
20
|
+
* @param sourceFile The source file to parse
|
|
21
|
+
* @param signatureBuilder The signature builder to use for building signatures
|
|
22
|
+
*/
|
|
23
|
+
private readonly jsDocParser;
|
|
24
|
+
constructor(sourceFile: EntryFile, signatureBuilder: SignatureBuilder);
|
|
25
|
+
/**
|
|
26
|
+
* Parses an object literal: each property becomes a member signature.
|
|
27
|
+
*
|
|
28
|
+
* @param obj The object literal expression to parse
|
|
29
|
+
* @returns A record of member signatures
|
|
30
|
+
*/
|
|
31
|
+
parse(obj: ts.ObjectLiteralExpression): Record<string, MemberSignature>;
|
|
32
|
+
/**
|
|
33
|
+
* Infers a type string from an expression.
|
|
34
|
+
*
|
|
35
|
+
* @param expr The expression to infer a type from
|
|
36
|
+
* @returns The inferred type as a string
|
|
37
|
+
*/
|
|
38
|
+
inferTypeFromExpression(expr: ts.Expression): string;
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
export { ObjectParser as default };
|
|
@@ -0,0 +1,96 @@
|
|
|
1
|
+
import ts from "typescript";
|
|
2
|
+
import _ from "lodash";
|
|
3
|
+
import AbstractParser from "./AbstractParser.js";
|
|
4
|
+
import JSDocParser from "./JSDocParser.js";
|
|
5
|
+
import { shouldIncludeMember } from "./helpers/memberFilters.js";
|
|
6
|
+
class ObjectParser extends AbstractParser {
|
|
7
|
+
constructor(sourceFile, signatureBuilder) {
|
|
8
|
+
super(sourceFile);
|
|
9
|
+
this.signatureBuilder = signatureBuilder;
|
|
10
|
+
this.jsDocParser = new JSDocParser();
|
|
11
|
+
}
|
|
12
|
+
/**
|
|
13
|
+
* Constructor for the ObjectParser.
|
|
14
|
+
*
|
|
15
|
+
* @param sourceFile The source file to parse
|
|
16
|
+
* @param signatureBuilder The signature builder to use for building signatures
|
|
17
|
+
*/
|
|
18
|
+
jsDocParser;
|
|
19
|
+
/**
|
|
20
|
+
* Parses an object literal: each property becomes a member signature.
|
|
21
|
+
*
|
|
22
|
+
* @param obj The object literal expression to parse
|
|
23
|
+
* @returns A record of member signatures
|
|
24
|
+
*/
|
|
25
|
+
parse(obj) {
|
|
26
|
+
const result = {};
|
|
27
|
+
for (const prop of obj.properties) {
|
|
28
|
+
const key = this.getName(prop.name ?? prop);
|
|
29
|
+
if (!shouldIncludeMember(key)) {
|
|
30
|
+
continue;
|
|
31
|
+
}
|
|
32
|
+
if (ts.isPropertyAssignment(prop)) {
|
|
33
|
+
const init = prop.initializer;
|
|
34
|
+
if (ts.isFunctionExpression(init) || ts.isArrowFunction(init)) {
|
|
35
|
+
result[key] = this.signatureBuilder.getMethodSignature(init);
|
|
36
|
+
} else {
|
|
37
|
+
const jsDocType = this.jsDocParser.getJSDocType(prop);
|
|
38
|
+
const tsType = this.inferTypeFromExpression(init);
|
|
39
|
+
result[key] = {
|
|
40
|
+
kind: "property",
|
|
41
|
+
type: jsDocType || tsType
|
|
42
|
+
};
|
|
43
|
+
}
|
|
44
|
+
} else if (ts.isMethodDeclaration(prop)) {
|
|
45
|
+
result[key] = this.signatureBuilder.getMethodSignature(prop);
|
|
46
|
+
} else if (ts.isShorthandPropertyAssignment(prop)) {
|
|
47
|
+
const name = prop.name.text;
|
|
48
|
+
const variable = this.sourceFile.getVariables().get(name);
|
|
49
|
+
const val = variable ? variable.value : void 0;
|
|
50
|
+
let type = "any";
|
|
51
|
+
if (!_.isUndefined(val)) {
|
|
52
|
+
if (_.isString(val)) {
|
|
53
|
+
type = "string";
|
|
54
|
+
} else if (_.isNumber(val)) {
|
|
55
|
+
type = "number";
|
|
56
|
+
} else if (_.isBoolean(val)) {
|
|
57
|
+
type = "boolean";
|
|
58
|
+
} else if (_.isArray(val)) {
|
|
59
|
+
type = "array";
|
|
60
|
+
} else if (_.isPlainObject(val)) {
|
|
61
|
+
type = "object";
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
result[key] = { kind: "property", type };
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
return result;
|
|
68
|
+
}
|
|
69
|
+
/**
|
|
70
|
+
* Infers a type string from an expression.
|
|
71
|
+
*
|
|
72
|
+
* @param expr The expression to infer a type from
|
|
73
|
+
* @returns The inferred type as a string
|
|
74
|
+
*/
|
|
75
|
+
inferTypeFromExpression(expr) {
|
|
76
|
+
const val = this.sourceFile.parseNode(expr);
|
|
77
|
+
switch (typeof val) {
|
|
78
|
+
case "string":
|
|
79
|
+
return "string";
|
|
80
|
+
case "number":
|
|
81
|
+
return "number";
|
|
82
|
+
case "boolean":
|
|
83
|
+
return "boolean";
|
|
84
|
+
case "object":
|
|
85
|
+
if (val === null) return "null";
|
|
86
|
+
if (_.isArray(val)) return "array";
|
|
87
|
+
return "object";
|
|
88
|
+
default:
|
|
89
|
+
return "any";
|
|
90
|
+
}
|
|
91
|
+
}
|
|
92
|
+
}
|
|
93
|
+
export {
|
|
94
|
+
ObjectParser as default
|
|
95
|
+
};
|
|
96
|
+
//# sourceMappingURL=ObjectParser.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../../src/cli/entrypoint/file/parsers/ObjectParser.ts"],"sourcesContent":["import ts from \"typescript\";\nimport _ from \"lodash\";\n\nimport SourceFile from \"../SourceFile\";\nimport AbstractParser from \"./AbstractParser\";\nimport SignatureBuilder from \"./SignatureBuilder\";\nimport JSDocParser from \"./JSDocParser\";\n\nimport {shouldIncludeMember} from \"./helpers/memberFilters\";\n\nimport {MemberSignature} from \"./types\";\n\n/**\n * Parses object literal expressions.\n */\nexport default class ObjectParser extends AbstractParser {\n /**\n * Constructor for the ObjectParser.\n *\n * @param sourceFile The source file to parse\n * @param signatureBuilder The signature builder to use for building signatures\n */\n private readonly jsDocParser: JSDocParser;\n\n constructor(\n sourceFile: SourceFile,\n private readonly signatureBuilder: SignatureBuilder\n ) {\n super(sourceFile);\n\n this.jsDocParser = new JSDocParser();\n }\n\n /**\n * Parses an object literal: each property becomes a member signature.\n *\n * @param obj The object literal expression to parse\n * @returns A record of member signatures\n */\n public parse(obj: ts.ObjectLiteralExpression): Record<string, MemberSignature> {\n const result: Record<string, MemberSignature> = {};\n\n for (const prop of obj.properties) {\n // key name helper\n const key = this.getName(prop.name ?? prop);\n\n // Skip members that start with underscore\n if (!shouldIncludeMember(key)) {\n continue;\n }\n\n if (ts.isPropertyAssignment(prop)) {\n const init = prop.initializer;\n\n if (ts.isFunctionExpression(init) || ts.isArrowFunction(init)) {\n result[key] = this.signatureBuilder.getMethodSignature(init);\n } else {\n // Check for JSDoc @type annotation\n const jsDocType = this.jsDocParser.getJSDocType(prop);\n const tsType = this.inferTypeFromExpression(init);\n\n result[key] = {\n kind: \"property\",\n type: jsDocType || tsType,\n };\n }\n } else if (ts.isMethodDeclaration(prop)) {\n result[key] = this.signatureBuilder.getMethodSignature(prop);\n } else if (ts.isShorthandPropertyAssignment(prop)) {\n const name = prop.name.text;\n const variable = this.sourceFile.getVariables().get(name);\n const val = variable ? variable.value : undefined;\n\n let type = \"any\";\n\n if (!_.isUndefined(val)) {\n if (_.isString(val)) {\n type = \"string\";\n } else if (_.isNumber(val)) {\n type = \"number\";\n } else if (_.isBoolean(val)) {\n type = \"boolean\";\n } else if (_.isArray(val)) {\n type = \"array\";\n } else if (_.isPlainObject(val)) {\n type = \"object\";\n }\n }\n\n result[key] = {kind: \"property\", type};\n }\n }\n\n return result;\n }\n\n /**\n * Infers a type string from an expression.\n *\n * @param expr The expression to infer a type from\n * @returns The inferred type as a string\n */\n public inferTypeFromExpression(expr: ts.Expression): string {\n const val = this.sourceFile.parseNode(expr);\n\n switch (typeof val) {\n case \"string\":\n return \"string\";\n case \"number\":\n return \"number\";\n case \"boolean\":\n return \"boolean\";\n case \"object\":\n if (val === null) return \"null\";\n if (_.isArray(val)) return \"array\";\n return \"object\";\n default:\n return \"any\";\n }\n }\n}\n"],"mappings":"AAAA,OAAO,QAAQ;AACf,OAAO,OAAO;AAGd,OAAO,oBAAoB;AAE3B,OAAO,iBAAiB;AAExB,SAAQ,2BAA0B;AAOlC,MAAO,qBAAmC,eAAe;AAAA,EASrD,YACI,YACiB,kBACnB;AACE,UAAM,UAAU;AAFC;AAIjB,SAAK,cAAc,IAAI,YAAY;AAAA,EACvC;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EATiB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAiBV,MAAM,KAAkE;AAC3E,UAAM,SAA0C,CAAC;AAEjD,eAAW,QAAQ,IAAI,YAAY;AAE/B,YAAM,MAAM,KAAK,QAAQ,KAAK,QAAQ,IAAI;AAG1C,UAAI,CAAC,oBAAoB,GAAG,GAAG;AAC3B;AAAA,MACJ;AAEA,UAAI,GAAG,qBAAqB,IAAI,GAAG;AAC/B,cAAM,OAAO,KAAK;AAElB,YAAI,GAAG,qBAAqB,IAAI,KAAK,GAAG,gBAAgB,IAAI,GAAG;AAC3D,iBAAO,GAAG,IAAI,KAAK,iBAAiB,mBAAmB,IAAI;AAAA,QAC/D,OAAO;AAEH,gBAAM,YAAY,KAAK,YAAY,aAAa,IAAI;AACpD,gBAAM,SAAS,KAAK,wBAAwB,IAAI;AAEhD,iBAAO,GAAG,IAAI;AAAA,YACV,MAAM;AAAA,YACN,MAAM,aAAa;AAAA,UACvB;AAAA,QACJ;AAAA,MACJ,WAAW,GAAG,oBAAoB,IAAI,GAAG;AACrC,eAAO,GAAG,IAAI,KAAK,iBAAiB,mBAAmB,IAAI;AAAA,MAC/D,WAAW,GAAG,8BAA8B,IAAI,GAAG;AAC/C,cAAM,OAAO,KAAK,KAAK;AACvB,cAAM,WAAW,KAAK,WAAW,aAAa,EAAE,IAAI,IAAI;AACxD,cAAM,MAAM,WAAW,SAAS,QAAQ;AAExC,YAAI,OAAO;AAEX,YAAI,CAAC,EAAE,YAAY,GAAG,GAAG;AACrB,cAAI,EAAE,SAAS,GAAG,GAAG;AACjB,mBAAO;AAAA,UACX,WAAW,EAAE,SAAS,GAAG,GAAG;AACxB,mBAAO;AAAA,UACX,WAAW,EAAE,UAAU,GAAG,GAAG;AACzB,mBAAO;AAAA,UACX,WAAW,EAAE,QAAQ,GAAG,GAAG;AACvB,mBAAO;AAAA,UACX,WAAW,EAAE,cAAc,GAAG,GAAG;AAC7B,mBAAO;AAAA,UACX;AAAA,QACJ;AAEA,eAAO,GAAG,IAAI,EAAC,MAAM,YAAY,KAAI;AAAA,MACzC;AAAA,IACJ;AAEA,WAAO;AAAA,EACX;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAQO,wBAAwB,MAA6B;AACxD,UAAM,MAAM,KAAK,WAAW,UAAU,IAAI;AAE1C,YAAQ,OAAO,KAAK;AAAA,MAChB,KAAK;AACD,eAAO;AAAA,MACX,KAAK;AACD,eAAO;AAAA,MACX,KAAK;AACD,eAAO;AAAA,MACX,KAAK;AACD,YAAI,QAAQ,KAAM,QAAO;AACzB,YAAI,EAAE,QAAQ,GAAG,EAAG,QAAO;AAC3B,eAAO;AAAA,MACX;AACI,eAAO;AAAA,IACf;AAAA,EACJ;AACJ;","names":[]}
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
import ts from 'typescript';
|
|
2
|
+
import { MethodSignature, MemberSignature } from './types.js';
|
|
3
|
+
import TypeResolver from './TypeResolver.js';
|
|
4
|
+
import '../SourceFile.js';
|
|
5
|
+
import '../resolvers/ImportResolver.js';
|
|
6
|
+
import '../resolvers/TsResolver.js';
|
|
7
|
+
import '../types.js';
|
|
8
|
+
import './NodeFinder.js';
|
|
9
|
+
|
|
10
|
+
/**
|
|
11
|
+
* Builds method and property signatures from TypeScript nodes.
|
|
12
|
+
*/
|
|
13
|
+
declare class SignatureBuilder {
|
|
14
|
+
private readonly typeResolver;
|
|
15
|
+
/**
|
|
16
|
+
* Constructor for the SignatureBuilder.
|
|
17
|
+
*
|
|
18
|
+
* @param typeResolver The type resolver to use for resolving types
|
|
19
|
+
*/
|
|
20
|
+
private readonly jsDocParser;
|
|
21
|
+
constructor(typeResolver: TypeResolver);
|
|
22
|
+
/**
|
|
23
|
+
* Builds a method signature from a function-like node.
|
|
24
|
+
*
|
|
25
|
+
* @param method The function-like node to build a signature from
|
|
26
|
+
* @returns The method signature
|
|
27
|
+
*/
|
|
28
|
+
getMethodSignature(method: ts.MethodDeclaration | ts.GetAccessorDeclaration | ts.FunctionExpression | ts.ArrowFunction): MethodSignature;
|
|
29
|
+
/**
|
|
30
|
+
* Builds a function type string from a method signature.
|
|
31
|
+
*
|
|
32
|
+
* @param sig The method signature to build a function type from
|
|
33
|
+
* @returns The function type as a string
|
|
34
|
+
*/
|
|
35
|
+
buildFunctionType(sig: MethodSignature): string;
|
|
36
|
+
/**
|
|
37
|
+
* Formats a record of member signatures into a string representation.
|
|
38
|
+
*
|
|
39
|
+
* @param members The record of member signatures to format
|
|
40
|
+
* @returns The formatted members as a string
|
|
41
|
+
*/
|
|
42
|
+
formatMembers(members: Record<string, MemberSignature>): string;
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
export { SignatureBuilder as default };
|
|
@@ -0,0 +1,99 @@
|
|
|
1
|
+
import ts from "typescript";
|
|
2
|
+
import JSDocParser from "./JSDocParser.js";
|
|
3
|
+
class SignatureBuilder {
|
|
4
|
+
constructor(typeResolver) {
|
|
5
|
+
this.typeResolver = typeResolver;
|
|
6
|
+
this.jsDocParser = new JSDocParser();
|
|
7
|
+
}
|
|
8
|
+
/**
|
|
9
|
+
* Constructor for the SignatureBuilder.
|
|
10
|
+
*
|
|
11
|
+
* @param typeResolver The type resolver to use for resolving types
|
|
12
|
+
*/
|
|
13
|
+
jsDocParser;
|
|
14
|
+
/**
|
|
15
|
+
* Builds a method signature from a function-like node.
|
|
16
|
+
*
|
|
17
|
+
* @param method The function-like node to build a signature from
|
|
18
|
+
* @returns The method signature
|
|
19
|
+
*/
|
|
20
|
+
getMethodSignature(method) {
|
|
21
|
+
const jsDocParamTypes = "parameters" in method ? this.jsDocParser.getJSDocParameterTypes(method) : /* @__PURE__ */ new Map();
|
|
22
|
+
const params = ("parameters" in method ? method.parameters : []).map((p) => {
|
|
23
|
+
const name = ts.isIdentifier(p.name) ? p.name.text : p.name.getText();
|
|
24
|
+
const tsType = p.type ? this.typeResolver.resolveTypeNode(p.type) : "any";
|
|
25
|
+
const jsDocType = jsDocParamTypes.get(name);
|
|
26
|
+
const type = jsDocType || tsType;
|
|
27
|
+
const formattedType = type.replace(/\{\s+/g, "{").replace(/\s+\}/g, "}");
|
|
28
|
+
const optional = p.questionToken !== void 0 || p.initializer !== void 0;
|
|
29
|
+
return { name, type: formattedType, optional };
|
|
30
|
+
});
|
|
31
|
+
let typeParams = [];
|
|
32
|
+
if ("parameters" in method) {
|
|
33
|
+
const jsDocTypeParams = this.jsDocParser.getJSDocTypeParameters(method);
|
|
34
|
+
if (jsDocTypeParams.length > 0) {
|
|
35
|
+
typeParams = jsDocTypeParams;
|
|
36
|
+
} else if (method.typeParameters) {
|
|
37
|
+
typeParams = method.typeParameters.map((tp) => tp.getText());
|
|
38
|
+
}
|
|
39
|
+
} else {
|
|
40
|
+
const methodWithTypeParams = method;
|
|
41
|
+
if (methodWithTypeParams.typeParameters) {
|
|
42
|
+
typeParams = methodWithTypeParams.typeParameters.map((tp) => tp.getText());
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
const jsDocReturnType = "parameters" in method ? this.jsDocParser.getJSDocReturnType(method) : void 0;
|
|
46
|
+
const returnNode = method.type;
|
|
47
|
+
const tsReturnType = returnNode ? this.typeResolver.resolveTypeNode(returnNode) : "any";
|
|
48
|
+
const returnType = jsDocReturnType || tsReturnType;
|
|
49
|
+
const formattedReturnType = returnType.replace(/\{\s+/g, "{").replace(/\s+\}/g, "}");
|
|
50
|
+
return {
|
|
51
|
+
kind: "method",
|
|
52
|
+
typeParameters: typeParams,
|
|
53
|
+
parameters: params,
|
|
54
|
+
returnType: formattedReturnType
|
|
55
|
+
};
|
|
56
|
+
}
|
|
57
|
+
/**
|
|
58
|
+
* Builds a function type string from a method signature.
|
|
59
|
+
*
|
|
60
|
+
* @param sig The method signature to build a function type from
|
|
61
|
+
* @returns The function type as a string
|
|
62
|
+
*/
|
|
63
|
+
buildFunctionType(sig) {
|
|
64
|
+
const params = sig.parameters.map((p) => `${p.name}${p.optional ? "?" : ""}: ${p.type}`).join(", ");
|
|
65
|
+
return `(${params}) => ${sig.returnType}`;
|
|
66
|
+
}
|
|
67
|
+
/**
|
|
68
|
+
* Formats a record of member signatures into a string representation.
|
|
69
|
+
*
|
|
70
|
+
* @param members The record of member signatures to format
|
|
71
|
+
* @returns The formatted members as a string
|
|
72
|
+
*/
|
|
73
|
+
formatMembers(members) {
|
|
74
|
+
const parts = [];
|
|
75
|
+
for (const [name, member] of Object.entries(members)) {
|
|
76
|
+
if (member.kind === "method") {
|
|
77
|
+
const typeParams = member.typeParameters.length ? `<${member.typeParameters.join(", ")}>` : "";
|
|
78
|
+
const params = member.parameters.map((p) => {
|
|
79
|
+
let paramType = p.type;
|
|
80
|
+
if (paramType.includes("@param")) {
|
|
81
|
+
const match = paramType.match(/\{([^}]+)\}/);
|
|
82
|
+
if (match) {
|
|
83
|
+
paramType = match[1];
|
|
84
|
+
}
|
|
85
|
+
}
|
|
86
|
+
return `${p.name}${p.optional ? "?" : ""}: ${paramType}`;
|
|
87
|
+
}).join(", ");
|
|
88
|
+
parts.push(`${name}${typeParams}(${params}): ${member.returnType};`);
|
|
89
|
+
} else {
|
|
90
|
+
parts.push(`${name}${member.optional ? "?" : ""}: ${member.type};`);
|
|
91
|
+
}
|
|
92
|
+
}
|
|
93
|
+
return `{ ${parts.join(" ")} }`;
|
|
94
|
+
}
|
|
95
|
+
}
|
|
96
|
+
export {
|
|
97
|
+
SignatureBuilder as default
|
|
98
|
+
};
|
|
99
|
+
//# sourceMappingURL=SignatureBuilder.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../../src/cli/entrypoint/file/parsers/SignatureBuilder.ts"],"sourcesContent":["import ts from \"typescript\";\nimport {MemberSignature, MethodSignature, ParameterSignature} from \"./types\";\nimport TypeResolver from \"./TypeResolver\";\nimport JSDocParser from \"./JSDocParser\";\n\n/**\n * Builds method and property signatures from TypeScript nodes.\n */\nexport default class SignatureBuilder {\n /**\n * Constructor for the SignatureBuilder.\n *\n * @param typeResolver The type resolver to use for resolving types\n */\n private readonly jsDocParser: JSDocParser;\n\n constructor(private readonly typeResolver: TypeResolver) {\n this.jsDocParser = new JSDocParser();\n }\n\n /**\n * Builds a method signature from a function-like node.\n *\n * @param method The function-like node to build a signature from\n * @returns The method signature\n */\n public getMethodSignature(\n method: ts.MethodDeclaration | ts.GetAccessorDeclaration | ts.FunctionExpression | ts.ArrowFunction\n ): MethodSignature {\n // Get JSDoc parameter types if available\n const jsDocParamTypes =\n \"parameters\" in method\n ? this.jsDocParser.getJSDocParameterTypes(method as ts.SignatureDeclaration)\n : new Map<string, string>();\n\n // parameters\n const params: ParameterSignature[] = (\"parameters\" in method ? method.parameters : []).map(p => {\n const name = ts.isIdentifier(p.name) ? p.name.text : p.name.getText();\n\n // Use JSDoc type if available, otherwise use TypeScript type\n const tsType = p.type ? this.typeResolver.resolveTypeNode(p.type) : \"any\";\n const jsDocType = jsDocParamTypes.get(name);\n const type = jsDocType || tsType;\n\n // Remove spaces in object types to match expected format\n const formattedType = type.replace(/\\{\\s+/g, \"{\").replace(/\\s+\\}/g, \"}\");\n const optional = p.questionToken !== undefined || p.initializer !== undefined;\n return {name, type: formattedType, optional};\n });\n\n // Get JSDoc type parameters if available, otherwise use TypeScript type parameters\n let typeParams: string[] = [];\n\n if (\"parameters\" in method) {\n const jsDocTypeParams = this.jsDocParser.getJSDocTypeParameters(method as ts.SignatureDeclaration);\n if (jsDocTypeParams.length > 0) {\n typeParams = jsDocTypeParams;\n } else if (method.typeParameters) {\n typeParams = method.typeParameters.map(tp => tp.getText());\n }\n } else {\n // For non-SignatureDeclaration types, check if typeParameters exists\n const methodWithTypeParams = method as {typeParameters?: ts.NodeArray<ts.TypeParameterDeclaration>};\n if (methodWithTypeParams.typeParameters) {\n typeParams = methodWithTypeParams.typeParameters.map(tp => tp.getText());\n }\n }\n\n // Get JSDoc return type if available\n const jsDocReturnType =\n \"parameters\" in method ? this.jsDocParser.getJSDocReturnType(method as ts.SignatureDeclaration) : undefined;\n\n // return type (inline aliases when possible)\n const returnNode = (method as ts.MethodDeclaration).type;\n const tsReturnType = returnNode ? this.typeResolver.resolveTypeNode(returnNode) : \"any\";\n\n // Use JSDoc return type if available, otherwise use TypeScript return type\n const returnType = jsDocReturnType || tsReturnType;\n\n // Remove spaces in object types to match expected format\n const formattedReturnType = returnType.replace(/\\{\\s+/g, \"{\").replace(/\\s+\\}/g, \"}\");\n\n return {\n kind: \"method\",\n typeParameters: typeParams,\n parameters: params,\n returnType: formattedReturnType,\n };\n }\n\n /**\n * Builds a function type string from a method signature.\n *\n * @param sig The method signature to build a function type from\n * @returns The function type as a string\n */\n public buildFunctionType(sig: MethodSignature): string {\n const params = sig.parameters.map(p => `${p.name}${p.optional ? \"?\" : \"\"}: ${p.type}`).join(\", \");\n return `(${params}) => ${sig.returnType}`;\n }\n\n /**\n * Formats a record of member signatures into a string representation.\n *\n * @param members The record of member signatures to format\n * @returns The formatted members as a string\n */\n public formatMembers(members: Record<string, MemberSignature>): string {\n const parts: string[] = [];\n\n for (const [name, member] of Object.entries(members)) {\n if (member.kind === \"method\") {\n const typeParams = member.typeParameters.length ? `<${member.typeParameters.join(\", \")}>` : \"\";\n\n // Clean up parameter types to remove any JSDoc comments\n const params = member.parameters\n .map(p => {\n // If the parameter type contains JSDoc comments, extract just the type\n let paramType = p.type;\n if (paramType.includes(\"@param\")) {\n // This is a parameter with JSDoc comments, extract just the type\n const match = paramType.match(/\\{([^}]+)\\}/);\n if (match) {\n paramType = match[1];\n }\n }\n\n return `${p.name}${p.optional ? \"?\" : \"\"}: ${paramType}`;\n })\n .join(\", \");\n\n parts.push(`${name}${typeParams}(${params}): ${member.returnType};`);\n } else {\n parts.push(`${name}${member.optional ? \"?\" : \"\"}: ${member.type};`);\n }\n }\n\n return `{ ${parts.join(\" \")} }`;\n }\n}\n"],"mappings":"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","names":[]}
|
|
@@ -0,0 +1,89 @@
|
|
|
1
|
+
import ts from 'typescript';
|
|
2
|
+
import EntryFile from '../SourceFile.js';
|
|
3
|
+
import NodeFinder from './NodeFinder.js';
|
|
4
|
+
import '../resolvers/ImportResolver.js';
|
|
5
|
+
import '../resolvers/TsResolver.js';
|
|
6
|
+
import '../types.js';
|
|
7
|
+
|
|
8
|
+
/**
|
|
9
|
+
* Resolves TypeScript type nodes to string representations.
|
|
10
|
+
*/
|
|
11
|
+
declare class TypeResolver {
|
|
12
|
+
private readonly sourceFile;
|
|
13
|
+
private readonly nodeFinder?;
|
|
14
|
+
/**
|
|
15
|
+
* Constructor for the TypeResolver.
|
|
16
|
+
*
|
|
17
|
+
* @param sourceFile The source file to resolve types from
|
|
18
|
+
* @param nodeFinder Optional NodeFinder instance to use for finding nodes
|
|
19
|
+
*/
|
|
20
|
+
constructor(sourceFile: EntryFile, nodeFinder?: NodeFinder | undefined);
|
|
21
|
+
/**
|
|
22
|
+
* Resolves a TypeScript type node to a string, inlining type aliases when possible.
|
|
23
|
+
*
|
|
24
|
+
* @param typeNode The type node to resolve
|
|
25
|
+
* @returns The resolved type as a string
|
|
26
|
+
*/
|
|
27
|
+
resolveTypeNode(typeNode: ts.TypeNode): string;
|
|
28
|
+
/**
|
|
29
|
+
* Resolves a union type node to a string.
|
|
30
|
+
*
|
|
31
|
+
* @param typeNode The union type node to resolve
|
|
32
|
+
* @returns The resolved union type as a string
|
|
33
|
+
*/
|
|
34
|
+
resolveUnionType(typeNode: ts.UnionTypeNode): string;
|
|
35
|
+
/**
|
|
36
|
+
* Resolves an array type node to a string.
|
|
37
|
+
*
|
|
38
|
+
* @param typeNode The array type node to resolve
|
|
39
|
+
* @returns The resolved array type as a string
|
|
40
|
+
*/
|
|
41
|
+
resolveArrayType(typeNode: ts.ArrayTypeNode): string;
|
|
42
|
+
/**
|
|
43
|
+
* Resolves a type reference node to a string, inlining type aliases when possible.
|
|
44
|
+
*
|
|
45
|
+
* @param typeNode The type reference node to resolve
|
|
46
|
+
* @returns The resolved type reference as a string
|
|
47
|
+
*/
|
|
48
|
+
resolveTypeReference(typeNode: ts.TypeReferenceNode): string;
|
|
49
|
+
/**
|
|
50
|
+
* Attempts to inline a type alias.
|
|
51
|
+
*
|
|
52
|
+
* @param name The name of the type alias
|
|
53
|
+
* @returns The inlined type alias or undefined if it cannot be inlined
|
|
54
|
+
*/
|
|
55
|
+
inlineAliasType(name: string): string | undefined;
|
|
56
|
+
/**
|
|
57
|
+
* Processes an intersection type node by flattening its members
|
|
58
|
+
*/
|
|
59
|
+
private processIntersectionType;
|
|
60
|
+
/**
|
|
61
|
+
* Extracts segments from a type string, handling nested braces
|
|
62
|
+
*/
|
|
63
|
+
private extractSegmentsFromType;
|
|
64
|
+
/**
|
|
65
|
+
* Extracts a textual property name.
|
|
66
|
+
*/
|
|
67
|
+
private getName;
|
|
68
|
+
/**
|
|
69
|
+
* Extracts properties from an interface declaration
|
|
70
|
+
*/
|
|
71
|
+
extractInterfaceProperties(interfaceDecl: ts.InterfaceDeclaration, parser?: TypeResolver): string[];
|
|
72
|
+
/**
|
|
73
|
+
* Searches the AST of this file for a type alias declaration by name.
|
|
74
|
+
*
|
|
75
|
+
* @param name The name of the type alias to find
|
|
76
|
+
* @returns The type alias declaration or undefined if not found
|
|
77
|
+
*/
|
|
78
|
+
private findTypeAliasDeclaration;
|
|
79
|
+
/**
|
|
80
|
+
* Generic method to find a node of a specific type by name in the AST.
|
|
81
|
+
*
|
|
82
|
+
* @param predicate The predicate to match the node
|
|
83
|
+
* @param name The name to search for
|
|
84
|
+
* @returns The found node or undefined if not found
|
|
85
|
+
*/
|
|
86
|
+
private findNodeByName;
|
|
87
|
+
}
|
|
88
|
+
|
|
89
|
+
export { TypeResolver as default };
|