adnbn 0.12.0 → 0.14.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cli/builders/manifest/ManifestBase.d.ts +4 -1
- package/dist/cli/builders/manifest/ManifestBase.js +14 -0
- package/dist/cli/builders/manifest/ManifestBase.js.map +1 -1
- package/dist/cli/bundler/layers.d.ts +3 -3
- package/dist/cli/bundler/layers.js +6 -7
- package/dist/cli/bundler/layers.js.map +1 -1
- package/dist/cli/bundler/plugins/build-assets-map/BuildAssetsMapPlugin.js +42 -14
- package/dist/cli/bundler/plugins/build-assets-map/BuildAssetsMapPlugin.js.map +1 -1
- package/dist/cli/bundler/plugins/build-assets-map/normalize.d.ts +3 -0
- package/dist/cli/bundler/plugins/build-assets-map/normalize.js +24 -0
- package/dist/cli/bundler/plugins/build-assets-map/normalize.js.map +1 -0
- package/dist/cli/bundler/plugins/build-assets-map/templates/runtime.template.d.ts +2 -0
- package/dist/cli/bundler/plugins/build-assets-map/templates.d.ts +9 -0
- package/dist/cli/bundler/plugins/build-assets-map/templates.js +32 -0
- package/dist/cli/bundler/plugins/entrypoint/EntrypointPlugin.js +11 -0
- package/dist/cli/bundler/plugins/entrypoint/EntrypointPlugin.js.map +1 -1
- package/dist/cli/bundler/plugins/isolated-styles/IsolatedStylesPlugin.d.ts +1 -1
- package/dist/cli/bundler/plugins/isolated-styles/IsolatedStylesPlugin.js +38 -13
- package/dist/cli/bundler/plugins/isolated-styles/IsolatedStylesPlugin.js.map +1 -1
- package/dist/cli/bundler/plugins/isolated-styles/chunks.d.ts +5 -1
- package/dist/cli/bundler/plugins/isolated-styles/chunks.js +17 -16
- package/dist/cli/bundler/plugins/isolated-styles/chunks.js.map +1 -1
- package/dist/cli/bundler/plugins/isolated-styles/split-chunks.d.ts +4 -0
- package/dist/cli/bundler/plugins/isolated-styles/split-chunks.js +51 -0
- package/dist/cli/bundler/plugins/isolated-styles/split-chunks.js.map +1 -0
- package/dist/cli/bundler/plugins/isolated-styles/templates.js +36 -6
- package/dist/cli/entrypoint/finder/AbstractOverrideFinder.d.ts +15 -0
- package/dist/cli/entrypoint/finder/AbstractOverrideFinder.js +20 -0
- package/dist/cli/entrypoint/finder/AbstractOverrideFinder.js.map +1 -0
- package/dist/cli/entrypoint/finder/AbstractViewFinder.d.ts +6 -1
- package/dist/cli/entrypoint/finder/AbstractViewFinder.js +15 -0
- package/dist/cli/entrypoint/finder/AbstractViewFinder.js.map +1 -1
- package/dist/cli/entrypoint/finder/BookmarksFinder.d.ts +9 -0
- package/dist/cli/entrypoint/finder/BookmarksFinder.js +18 -0
- package/dist/cli/entrypoint/finder/BookmarksFinder.js.map +1 -0
- package/dist/cli/entrypoint/finder/CommandFinder.d.ts +4 -0
- package/dist/cli/entrypoint/finder/CommandFinder.js +20 -6
- package/dist/cli/entrypoint/finder/CommandFinder.js.map +1 -1
- package/dist/cli/entrypoint/finder/HistoryFinder.d.ts +9 -0
- package/dist/cli/entrypoint/finder/HistoryFinder.js +18 -0
- package/dist/cli/entrypoint/finder/HistoryFinder.js.map +1 -0
- package/dist/cli/entrypoint/finder/NewtabFinder.d.ts +9 -0
- package/dist/cli/entrypoint/finder/NewtabFinder.js +18 -0
- package/dist/cli/entrypoint/finder/NewtabFinder.js.map +1 -0
- package/dist/cli/entrypoint/finder/OptionsFinder.d.ts +2 -2
- package/dist/cli/entrypoint/finder/OptionsFinder.js +2 -2
- package/dist/cli/entrypoint/finder/OptionsFinder.js.map +1 -1
- package/dist/cli/entrypoint/finder/PageFinder.js +1 -1
- package/dist/cli/entrypoint/finder/PageFinder.js.map +1 -1
- package/dist/cli/entrypoint/finder/PopupFinder.d.ts +2 -2
- package/dist/cli/entrypoint/finder/PopupFinder.js +2 -2
- package/dist/cli/entrypoint/finder/PopupFinder.js.map +1 -1
- package/dist/cli/entrypoint/finder/SidebarFinder.d.ts +2 -2
- package/dist/cli/entrypoint/finder/SidebarFinder.js +2 -2
- package/dist/cli/entrypoint/finder/SidebarFinder.js.map +1 -1
- package/dist/cli/entrypoint/finder/ViewCspFinder.d.ts +2 -3
- package/dist/cli/entrypoint/finder/ViewCspFinder.js.map +1 -1
- package/dist/cli/entrypoint/finder/ViewPermissionsFinder.d.ts +22 -0
- package/dist/cli/entrypoint/finder/ViewPermissionsFinder.js +43 -0
- package/dist/cli/entrypoint/finder/ViewPermissionsFinder.js.map +1 -0
- package/dist/cli/entrypoint/finder/index.d.ts +5 -0
- package/dist/cli/entrypoint/finder/index.js +50 -40
- package/dist/cli/entrypoint/finder/index.js.map +1 -1
- package/dist/cli/entrypoint/name/NameGenerator.d.ts +2 -0
- package/dist/cli/entrypoint/name/NameGenerator.js +5 -1
- package/dist/cli/entrypoint/name/NameGenerator.js.map +1 -1
- package/dist/cli/entrypoint/parser/AbstractOverrideParser.d.ts +9 -0
- package/dist/cli/entrypoint/parser/AbstractOverrideParser.js +11 -0
- package/dist/cli/entrypoint/parser/AbstractOverrideParser.js.map +1 -0
- package/dist/cli/entrypoint/parser/BackgroundParser.js +3 -6
- package/dist/cli/entrypoint/parser/BackgroundParser.js.map +1 -1
- package/dist/cli/entrypoint/parser/BookmarksParser.d.ts +5 -0
- package/dist/cli/entrypoint/parser/BookmarksParser.js +10 -0
- package/dist/cli/entrypoint/parser/BookmarksParser.js.map +1 -0
- package/dist/cli/entrypoint/parser/HistoryParser.d.ts +5 -0
- package/dist/cli/entrypoint/parser/HistoryParser.js +10 -0
- package/dist/cli/entrypoint/parser/HistoryParser.js.map +1 -0
- package/dist/cli/entrypoint/parser/NewtabParser.d.ts +5 -0
- package/dist/cli/entrypoint/parser/NewtabParser.js +10 -0
- package/dist/cli/entrypoint/parser/NewtabParser.js.map +1 -0
- package/dist/cli/entrypoint/parser/OptionsParser.js +2 -1
- package/dist/cli/entrypoint/parser/OptionsParser.js.map +1 -1
- package/dist/cli/entrypoint/parser/PopupParser.js +2 -1
- package/dist/cli/entrypoint/parser/PopupParser.js.map +1 -1
- package/dist/cli/entrypoint/parser/SidebarParser.js +2 -1
- package/dist/cli/entrypoint/parser/SidebarParser.js.map +1 -1
- package/dist/cli/entrypoint/parser/ViewCspParser.d.ts +1 -1
- package/dist/cli/entrypoint/parser/ViewParser.d.ts +1 -1243
- package/dist/cli/entrypoint/parser/ViewParser.js +2 -72
- package/dist/cli/entrypoint/parser/ViewParser.js.map +1 -1
- package/dist/cli/entrypoint/parser/index.d.ts +4 -0
- package/dist/cli/entrypoint/parser/index.js +28 -20
- package/dist/cli/entrypoint/parser/index.js.map +1 -1
- package/dist/cli/entrypoint/parser/schemas/html.d.ts +903 -0
- package/dist/cli/entrypoint/parser/schemas/html.js +64 -0
- package/dist/cli/entrypoint/parser/schemas/html.js.map +1 -0
- package/dist/cli/entrypoint/parser/schemas/permissions.d.ts +23 -0
- package/dist/cli/entrypoint/parser/schemas/permissions.js +11 -0
- package/dist/cli/entrypoint/parser/schemas/permissions.js.map +1 -0
- package/dist/cli/plugins/content/bundler.d.ts +0 -3
- package/dist/cli/plugins/content/bundler.js +4 -20
- package/dist/cli/plugins/content/bundler.js.map +1 -1
- package/dist/cli/plugins/content/index.js +2 -3
- package/dist/cli/plugins/content/index.js.map +1 -1
- package/dist/cli/plugins/index.d.ts +1 -0
- package/dist/cli/plugins/index.js +22 -20
- package/dist/cli/plugins/index.js.map +1 -1
- package/dist/cli/plugins/locale/Locale.js +5 -2
- package/dist/cli/plugins/locale/Locale.js.map +1 -1
- package/dist/cli/plugins/options/index.js +1 -1
- package/dist/cli/plugins/options/index.js.map +1 -1
- package/dist/cli/plugins/override/Override.d.ts +31 -0
- package/dist/cli/plugins/override/Override.js +112 -0
- package/dist/cli/plugins/override/Override.js.map +1 -0
- package/dist/cli/plugins/override/index.d.ts +2 -0
- package/dist/cli/plugins/override/index.js +48 -0
- package/dist/cli/plugins/override/index.js.map +1 -0
- package/dist/cli/plugins/popup/index.js +1 -1
- package/dist/cli/plugins/popup/index.js.map +1 -1
- package/dist/cli/plugins/sidebar/index.js +1 -2
- package/dist/cli/plugins/sidebar/index.js.map +1 -1
- package/dist/cli/plugins/style/index.d.ts +1 -2
- package/dist/cli/plugins/style/index.js +19 -30
- package/dist/cli/plugins/style/index.js.map +1 -1
- package/dist/cli/plugins/view/View.d.ts +1 -1
- package/dist/cli/plugins/view/View.js +2 -10
- package/dist/cli/plugins/view/View.js.map +1 -1
- package/dist/cli/plugins/view/index.js +10 -1
- package/dist/cli/plugins/view/index.js.map +1 -1
- package/dist/cli/resolvers/config.js +3 -2
- package/dist/cli/resolvers/config.js.map +1 -1
- package/dist/cli/virtual/index.js +14 -17
- package/dist/cli/virtual/virtual.d.ts +7 -127
- package/dist/entry/background/Builder.js +1 -1
- package/dist/entry/background/Builder.js.map +1 -1
- package/dist/entry/background/index.d.ts +1 -1
- package/dist/entry/background/index.js +3 -2
- package/dist/entry/background/index.js.map +1 -1
- package/dist/entry/background/resolvers/definition.d.ts +5 -1
- package/dist/entry/background/resolvers/definition.js +15 -4
- package/dist/entry/background/resolvers/definition.js.map +1 -1
- package/dist/entry/command/Builder.js +1 -1
- package/dist/entry/command/Builder.js.map +1 -1
- package/dist/entry/command/index.d.ts +1 -1
- package/dist/entry/command/index.js +3 -2
- package/dist/entry/command/index.js.map +1 -1
- package/dist/entry/command/resolvers/definition.d.ts +6 -2
- package/dist/entry/command/resolvers/definition.js +14 -4
- package/dist/entry/command/resolvers/definition.js.map +1 -1
- package/dist/entry/content/adapters/react/Builder.d.ts +4 -2
- package/dist/entry/content/adapters/react/Builder.js +13 -5
- package/dist/entry/content/adapters/react/Builder.js.map +1 -1
- package/dist/entry/content/adapters/react/Node.js +13 -8
- package/dist/entry/content/adapters/react/Node.js.map +1 -1
- package/dist/entry/content/adapters/react/definition.d.ts +2 -0
- package/dist/entry/content/adapters/react/definition.js +13 -0
- package/dist/entry/content/adapters/react/definition.js.map +1 -0
- package/dist/entry/content/adapters/react/index.d.ts +1 -1
- package/dist/entry/content/adapters/react/index.js +1 -1
- package/dist/entry/content/adapters/react/index.js.map +1 -1
- package/dist/entry/content/adapters/vanilla/Builder.d.ts +4 -2
- package/dist/entry/content/adapters/vanilla/Builder.js +14 -5
- package/dist/entry/content/adapters/vanilla/Builder.js.map +1 -1
- package/dist/entry/content/adapters/vanilla/Node.js +3 -5
- package/dist/entry/content/adapters/vanilla/Node.js.map +1 -1
- package/dist/entry/content/adapters/vanilla/definition.d.ts +2 -0
- package/dist/entry/content/adapters/vanilla/definition.js +9 -0
- package/dist/entry/content/adapters/vanilla/definition.js.map +1 -0
- package/dist/entry/content/adapters/vanilla/index.d.ts +1 -1
- package/dist/entry/content/adapters/vanilla/index.js +1 -1
- package/dist/entry/content/adapters/vanilla/index.js.map +1 -1
- package/dist/entry/content/lifecycle/Builder.d.ts +10 -4
- package/dist/entry/content/lifecycle/Builder.js +107 -69
- package/dist/entry/content/lifecycle/Builder.js.map +1 -1
- package/dist/entry/content/lifecycle/MountBuilder.d.ts +6 -3
- package/dist/entry/content/lifecycle/MountBuilder.js +32 -16
- package/dist/entry/content/lifecycle/MountBuilder.js.map +1 -1
- package/dist/entry/content/lifecycle/context/ContainerRegistry.d.ts +7 -0
- package/dist/entry/content/lifecycle/context/ContainerRegistry.js +45 -0
- package/dist/entry/content/lifecycle/context/ContainerRegistry.js.map +1 -0
- package/dist/entry/content/lifecycle/context/Context.d.ts +6 -3
- package/dist/entry/content/lifecycle/context/Context.js +21 -6
- package/dist/entry/content/lifecycle/context/Context.js.map +1 -1
- package/dist/entry/content/lifecycle/context/ManagedContext.d.ts +4 -1
- package/dist/entry/content/lifecycle/context/ManagedContext.js +7 -0
- package/dist/entry/content/lifecycle/context/ManagedContext.js.map +1 -1
- package/dist/entry/content/lifecycle/context/index.d.ts +1 -0
- package/dist/entry/content/lifecycle/context/index.js +6 -4
- package/dist/entry/content/lifecycle/context/index.js.map +1 -1
- package/dist/entry/content/lifecycle/markers/AttributeMarker.js +3 -1
- package/dist/entry/content/lifecycle/markers/AttributeMarker.js.map +1 -1
- package/dist/entry/content/lifecycle/nodes/EventNode.d.ts +4 -2
- package/dist/entry/content/lifecycle/nodes/EventNode.js +7 -2
- package/dist/entry/content/lifecycle/nodes/EventNode.js.map +1 -1
- package/dist/entry/content/lifecycle/nodes/FrameNode.d.ts +2 -1
- package/dist/entry/content/lifecycle/nodes/FrameNode.js +3 -0
- package/dist/entry/content/lifecycle/nodes/FrameNode.js.map +1 -1
- package/dist/entry/content/lifecycle/nodes/MarkerNode.d.ts +1 -1
- package/dist/entry/content/lifecycle/nodes/MarkerNode.js.map +1 -1
- package/dist/entry/content/lifecycle/nodes/MountNode.d.ts +7 -3
- package/dist/entry/content/lifecycle/nodes/MountNode.js +47 -12
- package/dist/entry/content/lifecycle/nodes/MountNode.js.map +1 -1
- package/dist/entry/content/lifecycle/nodes/Node.d.ts +1 -1
- package/dist/entry/content/lifecycle/nodes/Node.js.map +1 -1
- package/dist/entry/content/lifecycle/nodes/RenderNode.d.ts +13 -4
- package/dist/entry/content/lifecycle/nodes/RenderNode.js +71 -6
- package/dist/entry/content/lifecycle/nodes/RenderNode.js.map +1 -1
- package/dist/entry/content/lifecycle/nodes/ShadowNode.d.ts +2 -1
- package/dist/entry/content/lifecycle/nodes/ShadowNode.js +3 -0
- package/dist/entry/content/lifecycle/nodes/ShadowNode.js.map +1 -1
- package/dist/entry/content/lifecycle/types.d.ts +28 -0
- package/dist/entry/content/resolvers/watch.d.ts +1 -1
- package/dist/entry/content/resolvers/watch.js +29 -14
- package/dist/entry/content/resolvers/watch.js.map +1 -1
- package/dist/entry/core/react.d.ts +6 -0
- package/dist/entry/core/react.js +16 -0
- package/dist/entry/core/react.js.map +1 -0
- package/dist/entry/core/render.d.ts +5 -0
- package/dist/entry/core/render.js +16 -0
- package/dist/entry/core/render.js.map +1 -0
- package/dist/entry/offscreen/Builder.d.ts +6 -7
- package/dist/entry/offscreen/Builder.js +12 -13
- package/dist/entry/offscreen/Builder.js.map +1 -1
- package/dist/entry/offscreen/TransportBuilder.d.ts +1 -1
- package/dist/entry/offscreen/TransportBuilder.js +4 -3
- package/dist/entry/offscreen/TransportBuilder.js.map +1 -1
- package/dist/entry/offscreen/index.d.ts +5 -2
- package/dist/entry/offscreen/index.js +8 -2
- package/dist/entry/offscreen/index.js.map +1 -1
- package/dist/entry/offscreen/resolvers/definition.d.ts +4 -0
- package/dist/entry/offscreen/resolvers/definition.js +8 -0
- package/dist/entry/offscreen/resolvers/definition.js.map +1 -0
- package/dist/entry/relay/index.js.map +1 -1
- package/dist/entry/relay/resolvers/definition.d.ts +1 -1
- package/dist/entry/relay/resolvers/definition.js +2 -10
- package/dist/entry/relay/resolvers/definition.js.map +1 -1
- package/dist/entry/sandbox/Builder.d.ts +6 -7
- package/dist/entry/sandbox/Builder.js +8 -12
- package/dist/entry/sandbox/Builder.js.map +1 -1
- package/dist/entry/sandbox/TransportBuilder.d.ts +1 -1
- package/dist/entry/sandbox/TransportBuilder.js +4 -3
- package/dist/entry/sandbox/TransportBuilder.js.map +1 -1
- package/dist/entry/sandbox/index.d.ts +7 -2
- package/dist/entry/sandbox/index.js +10 -4
- package/dist/entry/sandbox/index.js.map +1 -1
- package/dist/entry/sandbox/resolvers/definition.d.ts +4 -0
- package/dist/entry/sandbox/resolvers/definition.js +8 -0
- package/dist/entry/sandbox/resolvers/definition.js.map +1 -0
- package/dist/entry/service/index.d.ts +1 -0
- package/dist/entry/service/index.js +3 -1
- package/dist/entry/service/index.js.map +1 -1
- package/dist/entry/service/resolvers/definition.d.ts +3 -0
- package/dist/entry/service/resolvers/definition.js +8 -0
- package/dist/entry/service/resolvers/definition.js.map +1 -0
- package/dist/entry/transport/AbstractBuilder.js +1 -1
- package/dist/entry/transport/AbstractBuilder.js.map +1 -1
- package/dist/entry/transport/resolvers/definition.d.ts +7 -5
- package/dist/entry/transport/resolvers/definition.js +15 -4
- package/dist/entry/transport/resolvers/definition.js.map +1 -1
- package/dist/entry/view/{core/Builder.d.ts → Builder.d.ts} +9 -4
- package/dist/entry/view/Builder.js +62 -0
- package/dist/entry/view/Builder.js.map +1 -0
- package/dist/entry/view/adapters/react/Builder.d.ts +6 -7
- package/dist/entry/view/adapters/react/Builder.js +20 -23
- package/dist/entry/view/adapters/react/Builder.js.map +1 -1
- package/dist/entry/view/adapters/react/definition.d.ts +2 -0
- package/dist/entry/view/adapters/react/definition.js +13 -0
- package/dist/entry/view/adapters/react/definition.js.map +1 -0
- package/dist/entry/view/adapters/react/index.d.ts +2 -1
- package/dist/entry/view/adapters/react/index.js +3 -1
- package/dist/entry/view/adapters/react/index.js.map +1 -1
- package/dist/entry/view/adapters/vanilla/Builder.d.ts +5 -6
- package/dist/entry/view/adapters/vanilla/Builder.js +14 -25
- package/dist/entry/view/adapters/vanilla/Builder.js.map +1 -1
- package/dist/entry/view/adapters/vanilla/definition.d.ts +2 -0
- package/dist/entry/view/adapters/vanilla/definition.js +9 -0
- package/dist/entry/view/adapters/vanilla/definition.js.map +1 -0
- package/dist/entry/view/adapters/vanilla/index.d.ts +2 -1
- package/dist/entry/view/adapters/vanilla/index.js +3 -1
- package/dist/entry/view/adapters/vanilla/index.js.map +1 -1
- package/dist/entry/view/{core/resolvers → resolvers}/container.d.ts +1 -1
- package/dist/entry/view/resolvers/container.js.map +1 -0
- package/dist/entry/view/resolvers/definition.d.ts +3 -0
- package/dist/entry/view/resolvers/definition.js +18 -0
- package/dist/entry/view/resolvers/definition.js.map +1 -0
- package/dist/main/index.d.ts +2 -0
- package/dist/main/index.js +2 -0
- package/dist/main/index.js.map +1 -1
- package/dist/main/override.d.ts +5 -0
- package/dist/main/override.js +15 -0
- package/dist/main/override.js.map +1 -0
- package/dist/main/permissions.d.ts +1 -0
- package/dist/main/permissions.js +1 -0
- package/dist/main/view.d.ts +1 -1
- package/dist/shared/locale/index.d.ts +1 -1
- package/dist/shared/locale/index.js +3 -1
- package/dist/shared/locale/index.js.map +1 -1
- package/dist/shared/locale/messages.d.ts +4 -0
- package/dist/shared/locale/messages.js +12 -0
- package/dist/shared/locale/messages.js.map +1 -1
- package/dist/types/background.d.ts +2 -8
- package/dist/types/background.js.map +1 -1
- package/dist/types/content/common.d.ts +8 -0
- package/dist/types/content/common.js.map +1 -1
- package/dist/types/content/definition.d.ts +5 -0
- package/dist/types/entrypoint.d.ts +5 -1
- package/dist/types/entrypoint.js +3 -0
- package/dist/types/entrypoint.js.map +1 -1
- package/dist/types/locale.d.ts +3 -0
- package/dist/types/locale.js.map +1 -1
- package/dist/types/manifest.d.ts +20 -2
- package/dist/types/manifest.js.map +1 -1
- package/dist/types/offscreen.d.ts +2 -2
- package/dist/types/offscreen.js.map +1 -1
- package/dist/types/options.d.ts +3 -2
- package/dist/types/override.d.ts +22 -0
- package/dist/types/override.js +1 -0
- package/dist/types/override.js.map +1 -0
- package/dist/types/page.d.ts +1 -1
- package/dist/types/permissions.d.ts +39 -0
- package/dist/types/permissions.js +1 -0
- package/dist/types/permissions.js.map +1 -0
- package/dist/types/plugin.d.ts +4 -1
- package/dist/types/popup.d.ts +3 -2
- package/dist/types/sandbox.d.ts +2 -2
- package/dist/types/sandbox.js.map +1 -1
- package/dist/types/sidebar.d.ts +3 -2
- package/dist/types/sidebar.js.map +1 -1
- package/dist/types/view/adapters/index.d.ts +2 -0
- package/dist/types/view/adapters/index.js +1 -0
- package/dist/types/view/adapters/index.js.map +1 -0
- package/dist/types/view/adapters/react.d.ts +4 -0
- package/dist/types/view/adapters/react.js +1 -0
- package/dist/types/view/adapters/react.js.map +1 -0
- package/dist/types/view/adapters/vanilla.d.ts +1 -0
- package/dist/types/view/adapters/vanilla.js +1 -0
- package/dist/types/view/adapters/vanilla.js.map +1 -0
- package/dist/types/{view.d.ts → view/common.d.ts} +2 -14
- package/dist/types/view/common.js +1 -0
- package/dist/types/view/common.js.map +1 -0
- package/dist/types/view/definition.d.ts +15 -0
- package/dist/types/view/definition.js +1 -0
- package/dist/types/view/definition.js.map +1 -0
- package/dist/types/view/index.d.ts +4 -0
- package/dist/types/view/index.js +1 -0
- package/dist/types/view/index.js.map +1 -0
- package/dist/types/view/render.d.ts +7 -0
- package/dist/types/view/render.js +1 -0
- package/dist/types/view/render.js.map +1 -0
- package/package.json +1 -3
- package/types/client.d.ts +3 -3
- package/dist/cli/plugins/style/types.d.ts +0 -5
- package/dist/entry/background/resolvers/index.d.ts +0 -1
- package/dist/entry/background/resolvers/index.js +0 -2
- package/dist/entry/background/resolvers/index.js.map +0 -1
- package/dist/entry/command/resolvers/index.d.ts +0 -1
- package/dist/entry/command/resolvers/index.js +0 -2
- package/dist/entry/command/resolvers/index.js.map +0 -1
- package/dist/entry/content/adapters/react/resolvers/definition.d.ts +0 -2
- package/dist/entry/content/adapters/react/resolvers/definition.js +0 -12
- package/dist/entry/content/adapters/react/resolvers/definition.js.map +0 -1
- package/dist/entry/content/adapters/react/resolvers/render.d.ts +0 -2
- package/dist/entry/content/adapters/react/resolvers/render.js +0 -9
- package/dist/entry/content/adapters/react/resolvers/render.js.map +0 -1
- package/dist/entry/content/adapters/vanilla/resolvers/definition.d.ts +0 -2
- package/dist/entry/content/adapters/vanilla/resolvers/definition.js +0 -9
- package/dist/entry/content/adapters/vanilla/resolvers/definition.js.map +0 -1
- package/dist/entry/content/adapters/vanilla/resolvers/render.d.ts +0 -3
- package/dist/entry/content/adapters/vanilla/resolvers/render.js +0 -15
- package/dist/entry/content/adapters/vanilla/resolvers/render.js.map +0 -1
- package/dist/entry/content/resolvers/index.d.ts +0 -6
- package/dist/entry/content/resolvers/index.js +0 -7
- package/dist/entry/content/resolvers/index.js.map +0 -1
- package/dist/entry/transport/index.d.ts +0 -1
- package/dist/entry/transport/index.js +0 -2
- package/dist/entry/transport/index.js.map +0 -1
- package/dist/entry/transport/resolvers/index.d.ts +0 -1
- package/dist/entry/transport/resolvers/index.js +0 -2
- package/dist/entry/transport/resolvers/index.js.map +0 -1
- package/dist/entry/view/adapters/react/resolvers/render.d.ts +0 -2
- package/dist/entry/view/adapters/react/resolvers/render.js +0 -11
- package/dist/entry/view/adapters/react/resolvers/render.js.map +0 -1
- package/dist/entry/view/core/Builder.js +0 -35
- package/dist/entry/view/core/Builder.js.map +0 -1
- package/dist/entry/view/core/resolvers/container.js.map +0 -1
- package/dist/entry/view/core/resolvers/definition.d.ts +0 -3
- package/dist/entry/view/core/resolvers/definition.js +0 -12
- package/dist/entry/view/core/resolvers/definition.js.map +0 -1
- package/dist/entry/view/core/resolvers/render.d.ts +0 -3
- package/dist/entry/view/core/resolvers/render.js +0 -18
- package/dist/entry/view/core/resolvers/render.js.map +0 -1
- package/dist/entry/view/index.d.ts +0 -1
- package/dist/entry/view/index.js +0 -2
- package/dist/entry/view/index.js.map +0 -1
- package/dist/types/view.js +0 -1
- /package/dist/cli/virtual/{transport.d.ts → service.d.ts} +0 -0
- /package/dist/{cli/plugins/style → entry/content/lifecycle}/types.js +0 -0
- /package/dist/{cli/plugins/style → entry/content/lifecycle}/types.js.map +0 -0
- /package/dist/entry/view/{core/resolvers → resolvers}/container.js +0 -0
- /package/dist/{types/view.js.map → main/permissions.js.map} +0 -0
|
@@ -1,32 +1,33 @@
|
|
|
1
|
-
import {
|
|
2
|
-
|
|
1
|
+
import { DocumentStylesLayer } from "./../../../../cli/bundler/layers.js";
|
|
2
|
+
import { DocumentStylesCacheGroup } from "./split-chunks.js";
|
|
3
|
+
const isDocumentStylesModule = (module) => module.layer === DocumentStylesLayer;
|
|
3
4
|
const isIsolatedStylesChunk = (compilation, chunk) => {
|
|
4
5
|
const modules = [...compilation.chunkGraph.getChunkModulesIterable(chunk)].filter(
|
|
5
6
|
(module) => module.type === "css/mini-extract"
|
|
6
7
|
);
|
|
7
|
-
const
|
|
8
|
-
if (
|
|
8
|
+
const document = modules.some(isDocumentStylesModule);
|
|
9
|
+
if (document && !modules.every(isDocumentStylesModule)) {
|
|
9
10
|
throw new Error(
|
|
10
|
-
`CSS chunk "${chunk.name ?? chunk.id}" mixes document and
|
|
11
|
+
`CSS chunk "${chunk.name ?? chunk.id}" mixes document and default styles for isolated delivery. Preserve the ${DocumentStylesCacheGroup} CSS cache group in your bundler configuration.`
|
|
11
12
|
);
|
|
12
13
|
}
|
|
13
|
-
return
|
|
14
|
+
return modules.length > 0 && !document;
|
|
14
15
|
};
|
|
15
|
-
const
|
|
16
|
-
const
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
16
|
+
const getStylesFiles = (compilation, chunks) => {
|
|
17
|
+
const document = /* @__PURE__ */ new Set();
|
|
18
|
+
const defaults = /* @__PURE__ */ new Set();
|
|
19
|
+
for (const chunk of chunks) {
|
|
20
|
+
const files = isIsolatedStylesChunk(compilation, chunk) ? defaults : document;
|
|
21
|
+
for (const file of chunk.files) {
|
|
22
|
+
if (file.endsWith(".css")) {
|
|
23
|
+
files.add(file);
|
|
23
24
|
}
|
|
24
25
|
}
|
|
25
26
|
}
|
|
26
|
-
return
|
|
27
|
+
return { document, defaults };
|
|
27
28
|
};
|
|
28
29
|
export {
|
|
29
|
-
|
|
30
|
+
getStylesFiles,
|
|
30
31
|
isIsolatedStylesChunk
|
|
31
32
|
};
|
|
32
33
|
//# sourceMappingURL=chunks.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../../src/cli/bundler/plugins/isolated-styles/chunks.ts"],"sourcesContent":["import type {Chunk, Compilation, Module} from \"@rspack/core\";\n\nimport {
|
|
1
|
+
{"version":3,"sources":["../../../../../src/cli/bundler/plugins/isolated-styles/chunks.ts"],"sourcesContent":["import type {Chunk, Compilation, Module} from \"@rspack/core\";\n\nimport {DocumentStylesLayer} from \"@cli/bundler/layers\";\nimport {DocumentStylesCacheGroup} from \"./split-chunks\";\n\nconst isDocumentStylesModule = (module: Module): boolean => module.layer === DocumentStylesLayer;\n\n/** Only call for chunks reachable by an entry with isolated delivery. Other entries may mix CSS categories. */\nexport const isIsolatedStylesChunk = (compilation: Compilation, chunk: Chunk): boolean => {\n const modules = [...compilation.chunkGraph.getChunkModulesIterable(chunk)].filter(\n module => module.type === \"css/mini-extract\"\n );\n\n const document = modules.some(isDocumentStylesModule);\n\n if (document && !modules.every(isDocumentStylesModule)) {\n throw new Error(\n `CSS chunk \"${chunk.name ?? chunk.id}\" mixes document and default styles for isolated delivery. Preserve the ${DocumentStylesCacheGroup} CSS cache group in your bundler configuration.`\n );\n }\n\n return modules.length > 0 && !document;\n};\n\nexport const getStylesFiles = (\n compilation: Compilation,\n chunks: Iterable<Chunk>\n): {document: ReadonlySet<string>; defaults: ReadonlySet<string>} => {\n const document = new Set<string>();\n const defaults = new Set<string>();\n\n for (const chunk of chunks) {\n const files = isIsolatedStylesChunk(compilation, chunk) ? defaults : document;\n\n for (const file of chunk.files) {\n if (file.endsWith(\".css\")) {\n files.add(file);\n }\n }\n }\n\n return {document, defaults};\n};\n"],"mappings":"AAEA,SAAQ,2BAA0B;AAClC,SAAQ,gCAA+B;AAEvC,MAAM,yBAAyB,CAAC,WAA4B,OAAO,UAAU;AAGtE,MAAM,wBAAwB,CAAC,aAA0B,UAA0B;AACtF,QAAM,UAAU,CAAC,GAAG,YAAY,WAAW,wBAAwB,KAAK,CAAC,EAAE;AAAA,IACvE,YAAU,OAAO,SAAS;AAAA,EAC9B;AAEA,QAAM,WAAW,QAAQ,KAAK,sBAAsB;AAEpD,MAAI,YAAY,CAAC,QAAQ,MAAM,sBAAsB,GAAG;AACpD,UAAM,IAAI;AAAA,MACN,cAAc,MAAM,QAAQ,MAAM,EAAE,2EAA2E,wBAAwB;AAAA,IAC3I;AAAA,EACJ;AAEA,SAAO,QAAQ,SAAS,KAAK,CAAC;AAClC;AAEO,MAAM,iBAAiB,CAC1B,aACA,WACiE;AACjE,QAAM,WAAW,oBAAI,IAAY;AACjC,QAAM,WAAW,oBAAI,IAAY;AAEjC,aAAW,SAAS,QAAQ;AACxB,UAAM,QAAQ,sBAAsB,aAAa,KAAK,IAAI,WAAW;AAErE,eAAW,QAAQ,MAAM,OAAO;AAC5B,UAAI,KAAK,SAAS,MAAM,GAAG;AACvB,cAAM,IAAI,IAAI;AAAA,MAClB;AAAA,IACJ;AAAA,EACJ;AAEA,SAAO,EAAC,UAAU,SAAQ;AAC9B;","names":[]}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import type { Compiler, OptimizationSplitChunksCacheGroup } from "@rspack/core";
|
|
2
|
+
export declare const DocumentStylesCacheGroup = "adnbnDocumentStyles";
|
|
3
|
+
/** Partition CSS only where an entry needs separate document and isolated delivery. */
|
|
4
|
+
export declare const createStylesCacheGroup: (compiler: Compiler, test: (entry: string) => boolean) => OptimizationSplitChunksCacheGroup;
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
import { DocumentStylesLayer } from "./../../../../cli/bundler/layers.js";
|
|
2
|
+
const DocumentStylesCacheGroup = "adnbnDocumentStyles";
|
|
3
|
+
const createStylesCacheGroup = (compiler, test) => {
|
|
4
|
+
let compilation;
|
|
5
|
+
let selectedGroups = /* @__PURE__ */ new WeakMap();
|
|
6
|
+
compiler.hooks.thisCompilation.tap("IsolatedStylesPlugin", (current) => {
|
|
7
|
+
compilation = current;
|
|
8
|
+
selectedGroups = /* @__PURE__ */ new WeakMap();
|
|
9
|
+
});
|
|
10
|
+
const selected = (group) => {
|
|
11
|
+
const cached = selectedGroups.get(group);
|
|
12
|
+
if (cached !== void 0) {
|
|
13
|
+
return cached;
|
|
14
|
+
}
|
|
15
|
+
const pending = [group];
|
|
16
|
+
const visited = /* @__PURE__ */ new Set();
|
|
17
|
+
while (pending.length) {
|
|
18
|
+
const parent = pending.pop();
|
|
19
|
+
if (visited.has(parent)) {
|
|
20
|
+
continue;
|
|
21
|
+
}
|
|
22
|
+
visited.add(parent);
|
|
23
|
+
if (parent.isInitial() && parent.name !== void 0 && test(parent.name)) {
|
|
24
|
+
selectedGroups.set(group, true);
|
|
25
|
+
return true;
|
|
26
|
+
}
|
|
27
|
+
pending.push(...parent.getParents());
|
|
28
|
+
}
|
|
29
|
+
selectedGroups.set(group, false);
|
|
30
|
+
return false;
|
|
31
|
+
};
|
|
32
|
+
return {
|
|
33
|
+
type: "css/mini-extract",
|
|
34
|
+
layer: DocumentStylesLayer,
|
|
35
|
+
chunks: (chunk) => {
|
|
36
|
+
const modules = compilation.chunkGraph.getChunkModulesIterable(chunk);
|
|
37
|
+
if (![...modules].some((module) => module.type === "css/mini-extract")) {
|
|
38
|
+
return false;
|
|
39
|
+
}
|
|
40
|
+
return [...chunk.groupsIterable].some(selected);
|
|
41
|
+
},
|
|
42
|
+
enforce: true,
|
|
43
|
+
name: false,
|
|
44
|
+
priority: 100
|
|
45
|
+
};
|
|
46
|
+
};
|
|
47
|
+
export {
|
|
48
|
+
DocumentStylesCacheGroup,
|
|
49
|
+
createStylesCacheGroup
|
|
50
|
+
};
|
|
51
|
+
//# sourceMappingURL=split-chunks.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../../src/cli/bundler/plugins/isolated-styles/split-chunks.ts"],"sourcesContent":["import type {Chunk, ChunkGroup, Compilation, Compiler, OptimizationSplitChunksCacheGroup} from \"@rspack/core\";\n\nimport {DocumentStylesLayer} from \"@cli/bundler/layers\";\n\nexport const DocumentStylesCacheGroup = \"adnbnDocumentStyles\";\n\n/** Partition CSS only where an entry needs separate document and isolated delivery. */\nexport const createStylesCacheGroup = (\n compiler: Compiler,\n test: (entry: string) => boolean\n): OptimizationSplitChunksCacheGroup => {\n let compilation: Compilation;\n let selectedGroups = new WeakMap<ChunkGroup, boolean>();\n\n compiler.hooks.thisCompilation.tap(\"IsolatedStylesPlugin\", current => {\n compilation = current;\n selectedGroups = new WeakMap();\n });\n\n const selected = (group: ChunkGroup): boolean => {\n const cached = selectedGroups.get(group);\n\n if (cached !== undefined) {\n return cached;\n }\n\n const pending = [group];\n const visited = new Set<ChunkGroup>();\n\n while (pending.length) {\n const parent = pending.pop()!;\n\n if (visited.has(parent)) {\n continue;\n }\n\n visited.add(parent);\n\n if (parent.isInitial() && parent.name !== undefined && test(parent.name)) {\n selectedGroups.set(group, true);\n\n return true;\n }\n\n pending.push(...parent.getParents());\n }\n\n selectedGroups.set(group, false);\n\n return false;\n };\n\n return {\n type: \"css/mini-extract\",\n layer: DocumentStylesLayer,\n chunks: (chunk: Chunk): boolean => {\n const modules = compilation.chunkGraph.getChunkModulesIterable(chunk);\n\n if (![...modules].some(module => module.type === \"css/mini-extract\")) {\n return false;\n }\n\n return [...chunk.groupsIterable].some(selected);\n },\n enforce: true,\n name: false,\n priority: 100,\n };\n};\n"],"mappings":"AAEA,SAAQ,2BAA0B;AAE3B,MAAM,2BAA2B;AAGjC,MAAM,yBAAyB,CAClC,UACA,SACoC;AACpC,MAAI;AACJ,MAAI,iBAAiB,oBAAI,QAA6B;AAEtD,WAAS,MAAM,gBAAgB,IAAI,wBAAwB,aAAW;AAClE,kBAAc;AACd,qBAAiB,oBAAI,QAAQ;AAAA,EACjC,CAAC;AAED,QAAM,WAAW,CAAC,UAA+B;AAC7C,UAAM,SAAS,eAAe,IAAI,KAAK;AAEvC,QAAI,WAAW,QAAW;AACtB,aAAO;AAAA,IACX;AAEA,UAAM,UAAU,CAAC,KAAK;AACtB,UAAM,UAAU,oBAAI,IAAgB;AAEpC,WAAO,QAAQ,QAAQ;AACnB,YAAM,SAAS,QAAQ,IAAI;AAE3B,UAAI,QAAQ,IAAI,MAAM,GAAG;AACrB;AAAA,MACJ;AAEA,cAAQ,IAAI,MAAM;AAElB,UAAI,OAAO,UAAU,KAAK,OAAO,SAAS,UAAa,KAAK,OAAO,IAAI,GAAG;AACtE,uBAAe,IAAI,OAAO,IAAI;AAE9B,eAAO;AAAA,MACX;AAEA,cAAQ,KAAK,GAAG,OAAO,WAAW,CAAC;AAAA,IACvC;AAEA,mBAAe,IAAI,OAAO,KAAK;AAE/B,WAAO;AAAA,EACX;AAEA,SAAO;AAAA,IACH,MAAM;AAAA,IACN,OAAO;AAAA,IACP,QAAQ,CAAC,UAA0B;AAC/B,YAAM,UAAU,YAAY,WAAW,wBAAwB,KAAK;AAEpE,UAAI,CAAC,CAAC,GAAG,OAAO,EAAE,KAAK,YAAU,OAAO,SAAS,kBAAkB,GAAG;AAClE,eAAO;AAAA,MACX;AAEA,aAAO,CAAC,GAAG,MAAM,cAAc,EAAE,KAAK,QAAQ;AAAA,IAClD;AAAA,IACA,SAAS;AAAA,IACT,MAAM;AAAA,IACN,UAAU;AAAA,EACd;AACJ;","names":[]}
|
|
@@ -25,6 +25,8 @@ var attachStyle = function (root, url, retry) {
|
|
|
25
25
|
|
|
26
26
|
if (existing) return existing.promise;
|
|
27
27
|
|
|
28
|
+
rootState.order.add(url);
|
|
29
|
+
|
|
28
30
|
var resolveStyle;
|
|
29
31
|
var rejectStyle;
|
|
30
32
|
var promise = new Promise(function (resolve, reject) {
|
|
@@ -52,6 +54,7 @@ var attachStyle = function (root, url, retry) {
|
|
|
52
54
|
if (error) {
|
|
53
55
|
rootState.styles.delete(url);
|
|
54
56
|
record.link.remove();
|
|
57
|
+
console.error(error);
|
|
55
58
|
rejectStyle(error);
|
|
56
59
|
} else {
|
|
57
60
|
resolveStyle();
|
|
@@ -78,8 +81,26 @@ var attachStyle = function (root, url, retry) {
|
|
|
78
81
|
settle(createStyleError(url, type));
|
|
79
82
|
}
|
|
80
83
|
};
|
|
81
|
-
//
|
|
82
|
-
|
|
84
|
+
// A failed link may be retried after later styles succeeded. Preserve its original position.
|
|
85
|
+
var next = previous || rootState.target;
|
|
86
|
+
var after = false;
|
|
87
|
+
|
|
88
|
+
if (!previous) {
|
|
89
|
+
for (var file of rootState.order) {
|
|
90
|
+
if (file === url) {
|
|
91
|
+
after = true;
|
|
92
|
+
} else if (after) {
|
|
93
|
+
var following = rootState.styles.get(file);
|
|
94
|
+
|
|
95
|
+
if (following && following.link) {
|
|
96
|
+
next = following.link;
|
|
97
|
+
break;
|
|
98
|
+
}
|
|
99
|
+
}
|
|
100
|
+
}
|
|
101
|
+
}
|
|
102
|
+
|
|
103
|
+
root.insertBefore(link, next);
|
|
83
104
|
if (previous) previous.remove();
|
|
84
105
|
};
|
|
85
106
|
// One budget for both attempts, never another timer for the retry.
|
|
@@ -101,14 +122,23 @@ __ADNBN_REQUIRE__[__ADNBN_PROPERTY__] = {
|
|
|
101
122
|
if (!isolatedInitialStyles)
|
|
102
123
|
throw new Error('Isolated stylesheet URLs for entrypoint "' + isolatedStyleEntry + '" are not initialized');
|
|
103
124
|
|
|
104
|
-
isolatedStyleRoots.set(root, {target: target, styles: new Map()});
|
|
125
|
+
isolatedStyleRoots.set(root, {target: target, styles: new Map(), order: new Set()});
|
|
105
126
|
|
|
106
127
|
isolatedInitialStyles.concat(Array.from(isolatedRequestedStyles)).forEach(function (url) {
|
|
107
|
-
attachStyle(root, url, retry).catch(function (
|
|
108
|
-
console.error(error);
|
|
109
|
-
});
|
|
128
|
+
attachStyle(root, url, retry).catch(function () {});
|
|
110
129
|
});
|
|
111
130
|
},
|
|
131
|
+
ready: function (root) {
|
|
132
|
+
if (!isolatedStyleRoots.has(root)) {
|
|
133
|
+
return Promise.resolve();
|
|
134
|
+
}
|
|
135
|
+
|
|
136
|
+
return Promise.all(
|
|
137
|
+
isolatedInitialStyles.concat(Array.from(isolatedRequestedStyles)).map(function (url) {
|
|
138
|
+
return attachStyle(root, url);
|
|
139
|
+
})
|
|
140
|
+
).then(function () {});
|
|
141
|
+
},
|
|
112
142
|
delete: function (root) {
|
|
113
143
|
var rootState = isolatedStyleRoots.get(root);
|
|
114
144
|
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import ViewPermissionsFinder from "./ViewPermissionsFinder.js";
|
|
2
|
+
import { ReadonlyConfig } from "../../../types/config.js";
|
|
3
|
+
import { EntrypointOptionsFinder } from "../../../types/entrypoint.js";
|
|
4
|
+
import { OverrideEntrypointOptions, OverrideEntrypointType } from "../../../types/override.js";
|
|
5
|
+
/**
|
|
6
|
+
* Override pages are singletons: app files replace shared ones instead of merging with them,
|
|
7
|
+
* and only the highest-precedence candidate becomes a view.
|
|
8
|
+
*/
|
|
9
|
+
export default abstract class AbstractOverrideFinder<O extends OverrideEntrypointOptions> extends ViewPermissionsFinder<O> {
|
|
10
|
+
protected constructor(config: ReadonlyConfig);
|
|
11
|
+
abstract type(): OverrideEntrypointType;
|
|
12
|
+
protected getPlugin(): EntrypointOptionsFinder<O>;
|
|
13
|
+
canMerge(): boolean;
|
|
14
|
+
allowMultiple(): boolean;
|
|
15
|
+
}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import ViewPermissionsFinder from "./ViewPermissionsFinder.js";
|
|
2
|
+
import PluginFinder from "./PluginFinder.js";
|
|
3
|
+
class AbstractOverrideFinder extends ViewPermissionsFinder {
|
|
4
|
+
constructor(config) {
|
|
5
|
+
super(config);
|
|
6
|
+
}
|
|
7
|
+
getPlugin() {
|
|
8
|
+
return new PluginFinder(this.config, `${this.type()}`, this);
|
|
9
|
+
}
|
|
10
|
+
canMerge() {
|
|
11
|
+
return false;
|
|
12
|
+
}
|
|
13
|
+
allowMultiple() {
|
|
14
|
+
return false;
|
|
15
|
+
}
|
|
16
|
+
}
|
|
17
|
+
export {
|
|
18
|
+
AbstractOverrideFinder as default
|
|
19
|
+
};
|
|
20
|
+
//# sourceMappingURL=AbstractOverrideFinder.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../src/cli/entrypoint/finder/AbstractOverrideFinder.ts"],"sourcesContent":["import ViewPermissionsFinder from \"./ViewPermissionsFinder\";\nimport PluginFinder from \"./PluginFinder\";\n\nimport {ReadonlyConfig} from \"@typing/config\";\nimport {EntrypointOptionsFinder} from \"@typing/entrypoint\";\nimport {OverrideEntrypointOptions, OverrideEntrypointType} from \"@typing/override\";\n\n/**\n * Override pages are singletons: app files replace shared ones instead of merging with them,\n * and only the highest-precedence candidate becomes a view.\n */\nexport default abstract class AbstractOverrideFinder<\n O extends OverrideEntrypointOptions,\n> extends ViewPermissionsFinder<O> {\n protected constructor(config: ReadonlyConfig) {\n super(config);\n }\n\n public abstract type(): OverrideEntrypointType;\n\n protected getPlugin(): EntrypointOptionsFinder<O> {\n // Plugin handlers of override pages are keyed by their entrypoint type.\n return new PluginFinder(this.config, `${this.type()}` as const, this);\n }\n\n public canMerge(): boolean {\n return false;\n }\n\n public allowMultiple(): boolean {\n return false;\n }\n}\n"],"mappings":"AAAA,OAAO,2BAA2B;AAClC,OAAO,kBAAkB;AAUzB,MAAO,+BAEG,sBAAyB;AAAA,EACrB,YAAY,QAAwB;AAC1C,UAAM,MAAM;AAAA,EAChB;AAAA,EAIU,YAAwC;AAE9C,WAAO,IAAI,aAAa,KAAK,QAAQ,GAAG,KAAK,KAAK,CAAC,IAAa,IAAI;AAAA,EACxE;AAAA,EAEO,WAAoB;AACvB,WAAO;AAAA,EACX;AAAA,EAEO,gBAAyB;AAC5B,WAAO;AAAA,EACX;AACJ;","names":[]}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import AbstractPluginFinder from "./AbstractPluginFinder.js";
|
|
2
2
|
import { ReadonlyConfig } from "../../../types/config.js";
|
|
3
|
-
import { ViewEntrypointOptions } from "../../../types/view.js";
|
|
3
|
+
import { ViewEntrypointOptions } from "../../../types/view/index.js";
|
|
4
4
|
import { EntrypointFile, EntrypointNameGenerator } from "../../../types/entrypoint.js";
|
|
5
5
|
export interface ViewItem<O extends ViewEntrypointOptions> {
|
|
6
6
|
filename: string;
|
|
@@ -26,6 +26,11 @@ export default abstract class<O extends ViewEntrypointOptions> extends AbstractP
|
|
|
26
26
|
protected createViewName(file: EntrypointFile, options: O): string;
|
|
27
27
|
views(): Promise<ViewItems<O>>;
|
|
28
28
|
allowMultiple(): boolean;
|
|
29
|
+
/**
|
|
30
|
+
* Parsed options of the entrypoints that became views.
|
|
31
|
+
* Candidates that lost the selection are excluded, and the options keep manifest-only settings.
|
|
32
|
+
*/
|
|
33
|
+
selectedOptions(): Promise<O[]>;
|
|
29
34
|
getAliasToFilename(): Promise<ViewAliasToFilename>;
|
|
30
35
|
getAlias(): Promise<Set<string>>;
|
|
31
36
|
getFilenames(): Promise<ViewFileToFilename>;
|
|
@@ -58,6 +58,21 @@ class AbstractViewFinder_default extends AbstractPluginFinder {
|
|
|
58
58
|
allowMultiple() {
|
|
59
59
|
return true;
|
|
60
60
|
}
|
|
61
|
+
/**
|
|
62
|
+
* Parsed options of the entrypoints that became views.
|
|
63
|
+
* Candidates that lost the selection are excluded, and the options keep manifest-only settings.
|
|
64
|
+
*/
|
|
65
|
+
async selectedOptions() {
|
|
66
|
+
const options = await this.plugin().options();
|
|
67
|
+
const selected = [];
|
|
68
|
+
for (const { file } of (await this.views()).values()) {
|
|
69
|
+
const option = options.get(file);
|
|
70
|
+
if (option) {
|
|
71
|
+
selected.push(option);
|
|
72
|
+
}
|
|
73
|
+
}
|
|
74
|
+
return selected;
|
|
75
|
+
}
|
|
61
76
|
async getAliasToFilename() {
|
|
62
77
|
return Array.from(await this.views()).reduce((aliases, [_, item]) => {
|
|
63
78
|
return {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/cli/entrypoint/finder/AbstractViewFinder.ts"],"sourcesContent":["import path from \"path\";\n\nimport {InlineNameGenerator, NameGenerator} from \"../name\";\n\nimport AbstractPluginFinder from \"./AbstractPluginFinder\";\n\nimport {ReadonlyConfig} from \"@typing/config\";\nimport {ViewEntrypointOptions} from \"@typing/view\";\nimport {EntrypointFile, EntrypointNameGenerator} from \"@typing/entrypoint\";\n\nexport interface ViewItem<O extends ViewEntrypointOptions> {\n filename: string;\n alias: string;\n file: EntrypointFile;\n options: O;\n}\n\nexport type ViewItems<O extends ViewEntrypointOptions> = Map<string, ViewItem<O>>;\n\nexport type ViewAliasToFilename = Map<string, string>;\n\nexport type ViewFileToFilename = Map<EntrypointFile, string>;\n\nexport default abstract class<O extends ViewEntrypointOptions> extends AbstractPluginFinder<O> {\n protected _views?: ViewItems<O>;\n\n protected readonly names: EntrypointNameGenerator;\n protected readonly aliases: EntrypointNameGenerator;\n protected readonly filenames: EntrypointNameGenerator;\n\n protected constructor(config: ReadonlyConfig) {\n super(config);\n\n this.names = this.createNameGenerator();\n this.aliases = this.createAliasGenerator();\n this.filenames = this.createFilenameGenerator();\n }\n\n protected createNameGenerator(): EntrypointNameGenerator {\n return new NameGenerator(this.type());\n }\n\n protected createAliasGenerator(): EntrypointNameGenerator {\n return new InlineNameGenerator(this.type());\n }\n\n protected createFilenameGenerator(): EntrypointNameGenerator {\n return new NameGenerator(this.type());\n }\n\n protected async getViews(): Promise<ViewItems<O>> {\n const views: ViewItems<O> = new Map();\n const entries = [...(await this.plugin().options())];\n const candidates = this.allowMultiple() ? entries : entries.slice(-1);\n\n for (const [file, options] of candidates) {\n views.set(this.createViewName(file, options), {\n alias: this.createViewAlias(file, options),\n filename: this.createViewFilename(file, options),\n file,\n options,\n });\n }\n\n return views;\n }\n\n protected createViewFilename(file: EntrypointFile, options: O): string {\n const {as} = options;\n\n const filename = as ? this.filenames.name(as) : this.filenames.file(file);\n\n return path.posix.join(this.config.htmlDir, filename + \".html\");\n }\n\n protected createViewAlias(file: EntrypointFile, options: O): string {\n const {as} = options;\n\n let alias = as ? this.aliases.name(as) : this.aliases.file(file);\n\n if (file.external) {\n alias = file.import;\n }\n\n return alias;\n }\n\n protected createViewName(file: EntrypointFile, options: O): string {\n const {as} = options;\n\n return as ? this.names.name(as) : this.names.file(file);\n }\n\n public async views(): Promise<ViewItems<O>> {\n return (this._views ??= await this.getViews());\n }\n\n public allowMultiple(): boolean {\n return true;\n }\n\n public async getAliasToFilename(): Promise<ViewAliasToFilename> {\n return Array.from(await this.views()).reduce((aliases, [_, item]) => {\n return {\n ...aliases,\n [item.alias]: item.filename,\n };\n }, new Map() as ViewAliasToFilename);\n }\n\n public async getAlias(): Promise<Set<string>> {\n const aliases = new Set<string>();\n\n const views = await this.views();\n\n for (const item of views.values()) {\n aliases.add(item.alias);\n }\n\n return aliases;\n }\n\n public async getFilenames(): Promise<ViewFileToFilename> {\n const views = await this.views();\n\n const filenames: ViewFileToFilename = new Map();\n\n for (const {file, filename} of views.values()) {\n filenames.set(file, filename);\n }\n\n return filenames;\n }\n\n public clear(): this {\n this._views = undefined;\n\n this.names.reset();\n this.aliases.reset();\n this.filenames.reset();\n\n return super.clear();\n }\n}\n"],"mappings":"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","names":[]}
|
|
1
|
+
{"version":3,"sources":["../../../../src/cli/entrypoint/finder/AbstractViewFinder.ts"],"sourcesContent":["import path from \"path\";\n\nimport {InlineNameGenerator, NameGenerator} from \"../name\";\n\nimport AbstractPluginFinder from \"./AbstractPluginFinder\";\n\nimport {ReadonlyConfig} from \"@typing/config\";\nimport {ViewEntrypointOptions} from \"@typing/view\";\nimport {EntrypointFile, EntrypointNameGenerator} from \"@typing/entrypoint\";\n\nexport interface ViewItem<O extends ViewEntrypointOptions> {\n filename: string;\n alias: string;\n file: EntrypointFile;\n options: O;\n}\n\nexport type ViewItems<O extends ViewEntrypointOptions> = Map<string, ViewItem<O>>;\n\nexport type ViewAliasToFilename = Map<string, string>;\n\nexport type ViewFileToFilename = Map<EntrypointFile, string>;\n\nexport default abstract class<O extends ViewEntrypointOptions> extends AbstractPluginFinder<O> {\n protected _views?: ViewItems<O>;\n\n protected readonly names: EntrypointNameGenerator;\n protected readonly aliases: EntrypointNameGenerator;\n protected readonly filenames: EntrypointNameGenerator;\n\n protected constructor(config: ReadonlyConfig) {\n super(config);\n\n this.names = this.createNameGenerator();\n this.aliases = this.createAliasGenerator();\n this.filenames = this.createFilenameGenerator();\n }\n\n protected createNameGenerator(): EntrypointNameGenerator {\n return new NameGenerator(this.type());\n }\n\n protected createAliasGenerator(): EntrypointNameGenerator {\n return new InlineNameGenerator(this.type());\n }\n\n protected createFilenameGenerator(): EntrypointNameGenerator {\n return new NameGenerator(this.type());\n }\n\n protected async getViews(): Promise<ViewItems<O>> {\n const views: ViewItems<O> = new Map();\n const entries = [...(await this.plugin().options())];\n const candidates = this.allowMultiple() ? entries : entries.slice(-1);\n\n for (const [file, options] of candidates) {\n views.set(this.createViewName(file, options), {\n alias: this.createViewAlias(file, options),\n filename: this.createViewFilename(file, options),\n file,\n options,\n });\n }\n\n return views;\n }\n\n protected createViewFilename(file: EntrypointFile, options: O): string {\n const {as} = options;\n\n const filename = as ? this.filenames.name(as) : this.filenames.file(file);\n\n return path.posix.join(this.config.htmlDir, filename + \".html\");\n }\n\n protected createViewAlias(file: EntrypointFile, options: O): string {\n const {as} = options;\n\n let alias = as ? this.aliases.name(as) : this.aliases.file(file);\n\n if (file.external) {\n alias = file.import;\n }\n\n return alias;\n }\n\n protected createViewName(file: EntrypointFile, options: O): string {\n const {as} = options;\n\n return as ? this.names.name(as) : this.names.file(file);\n }\n\n public async views(): Promise<ViewItems<O>> {\n return (this._views ??= await this.getViews());\n }\n\n public allowMultiple(): boolean {\n return true;\n }\n\n /**\n * Parsed options of the entrypoints that became views.\n * Candidates that lost the selection are excluded, and the options keep manifest-only settings.\n */\n public async selectedOptions(): Promise<O[]> {\n const options = await this.plugin().options();\n const selected: O[] = [];\n\n for (const {file} of (await this.views()).values()) {\n const option = options.get(file);\n\n if (option) {\n selected.push(option);\n }\n }\n\n return selected;\n }\n\n public async getAliasToFilename(): Promise<ViewAliasToFilename> {\n return Array.from(await this.views()).reduce((aliases, [_, item]) => {\n return {\n ...aliases,\n [item.alias]: item.filename,\n };\n }, new Map() as ViewAliasToFilename);\n }\n\n public async getAlias(): Promise<Set<string>> {\n const aliases = new Set<string>();\n\n const views = await this.views();\n\n for (const item of views.values()) {\n aliases.add(item.alias);\n }\n\n return aliases;\n }\n\n public async getFilenames(): Promise<ViewFileToFilename> {\n const views = await this.views();\n\n const filenames: ViewFileToFilename = new Map();\n\n for (const {file, filename} of views.values()) {\n filenames.set(file, filename);\n }\n\n return filenames;\n }\n\n public clear(): this {\n this._views = undefined;\n\n this.names.reset();\n this.aliases.reset();\n this.filenames.reset();\n\n return super.clear();\n }\n}\n"],"mappings":"AAAA,OAAO,UAAU;AAEjB,SAAQ,qBAAqB,qBAAoB;AAEjD,OAAO,0BAA0B;AAmBjC,MAAO,mCAAgE,qBAAwB;AAAA,EACjF;AAAA,EAES;AAAA,EACA;AAAA,EACA;AAAA,EAET,YAAY,QAAwB;AAC1C,UAAM,MAAM;AAEZ,SAAK,QAAQ,KAAK,oBAAoB;AACtC,SAAK,UAAU,KAAK,qBAAqB;AACzC,SAAK,YAAY,KAAK,wBAAwB;AAAA,EAClD;AAAA,EAEU,sBAA+C;AACrD,WAAO,IAAI,cAAc,KAAK,KAAK,CAAC;AAAA,EACxC;AAAA,EAEU,uBAAgD;AACtD,WAAO,IAAI,oBAAoB,KAAK,KAAK,CAAC;AAAA,EAC9C;AAAA,EAEU,0BAAmD;AACzD,WAAO,IAAI,cAAc,KAAK,KAAK,CAAC;AAAA,EACxC;AAAA,EAEA,MAAgB,WAAkC;AAC9C,UAAM,QAAsB,oBAAI,IAAI;AACpC,UAAM,UAAU,CAAC,GAAI,MAAM,KAAK,OAAO,EAAE,QAAQ,CAAE;AACnD,UAAM,aAAa,KAAK,cAAc,IAAI,UAAU,QAAQ,MAAM,EAAE;AAEpE,eAAW,CAAC,MAAM,OAAO,KAAK,YAAY;AACtC,YAAM,IAAI,KAAK,eAAe,MAAM,OAAO,GAAG;AAAA,QAC1C,OAAO,KAAK,gBAAgB,MAAM,OAAO;AAAA,QACzC,UAAU,KAAK,mBAAmB,MAAM,OAAO;AAAA,QAC/C;AAAA,QACA;AAAA,MACJ,CAAC;AAAA,IACL;AAEA,WAAO;AAAA,EACX;AAAA,EAEU,mBAAmB,MAAsB,SAAoB;AACnE,UAAM,EAAC,GAAE,IAAI;AAEb,UAAM,WAAW,KAAK,KAAK,UAAU,KAAK,EAAE,IAAI,KAAK,UAAU,KAAK,IAAI;AAExE,WAAO,KAAK,MAAM,KAAK,KAAK,OAAO,SAAS,WAAW,OAAO;AAAA,EAClE;AAAA,EAEU,gBAAgB,MAAsB,SAAoB;AAChE,UAAM,EAAC,GAAE,IAAI;AAEb,QAAI,QAAQ,KAAK,KAAK,QAAQ,KAAK,EAAE,IAAI,KAAK,QAAQ,KAAK,IAAI;AAE/D,QAAI,KAAK,UAAU;AACf,cAAQ,KAAK;AAAA,IACjB;AAEA,WAAO;AAAA,EACX;AAAA,EAEU,eAAe,MAAsB,SAAoB;AAC/D,UAAM,EAAC,GAAE,IAAI;AAEb,WAAO,KAAK,KAAK,MAAM,KAAK,EAAE,IAAI,KAAK,MAAM,KAAK,IAAI;AAAA,EAC1D;AAAA,EAEA,MAAa,QAA+B;AACxC,WAAQ,KAAK,WAAL,KAAK,SAAW,MAAM,KAAK,SAAS;AAAA,EAChD;AAAA,EAEO,gBAAyB;AAC5B,WAAO;AAAA,EACX;AAAA;AAAA;AAAA;AAAA;AAAA,EAMA,MAAa,kBAAgC;AACzC,UAAM,UAAU,MAAM,KAAK,OAAO,EAAE,QAAQ;AAC5C,UAAM,WAAgB,CAAC;AAEvB,eAAW,EAAC,KAAI,MAAM,MAAM,KAAK,MAAM,GAAG,OAAO,GAAG;AAChD,YAAM,SAAS,QAAQ,IAAI,IAAI;AAE/B,UAAI,QAAQ;AACR,iBAAS,KAAK,MAAM;AAAA,MACxB;AAAA,IACJ;AAEA,WAAO;AAAA,EACX;AAAA,EAEA,MAAa,qBAAmD;AAC5D,WAAO,MAAM,KAAK,MAAM,KAAK,MAAM,CAAC,EAAE,OAAO,CAAC,SAAS,CAAC,GAAG,IAAI,MAAM;AACjE,aAAO;AAAA,QACH,GAAG;AAAA,QACH,CAAC,KAAK,KAAK,GAAG,KAAK;AAAA,MACvB;AAAA,IACJ,GAAG,oBAAI,IAAI,CAAwB;AAAA,EACvC;AAAA,EAEA,MAAa,WAAiC;AAC1C,UAAM,UAAU,oBAAI,IAAY;AAEhC,UAAM,QAAQ,MAAM,KAAK,MAAM;AAE/B,eAAW,QAAQ,MAAM,OAAO,GAAG;AAC/B,cAAQ,IAAI,KAAK,KAAK;AAAA,IAC1B;AAEA,WAAO;AAAA,EACX;AAAA,EAEA,MAAa,eAA4C;AACrD,UAAM,QAAQ,MAAM,KAAK,MAAM;AAE/B,UAAM,YAAgC,oBAAI,IAAI;AAE9C,eAAW,EAAC,MAAM,SAAQ,KAAK,MAAM,OAAO,GAAG;AAC3C,gBAAU,IAAI,MAAM,QAAQ;AAAA,IAChC;AAEA,WAAO;AAAA,EACX;AAAA,EAEO,QAAc;AACjB,SAAK,SAAS;AAEd,SAAK,MAAM,MAAM;AACjB,SAAK,QAAQ,MAAM;AACnB,SAAK,UAAU,MAAM;AAErB,WAAO,MAAM,MAAM;AAAA,EACvB;AACJ;","names":[]}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import AbstractOverrideFinder from "./AbstractOverrideFinder.js";
|
|
2
|
+
import { ReadonlyConfig } from "../../../types/config.js";
|
|
3
|
+
import { EntrypointParser } from "../../../types/entrypoint.js";
|
|
4
|
+
import { BookmarksEntrypointOptions, OverrideEntrypointType } from "../../../types/override.js";
|
|
5
|
+
export default class BookmarksFinder extends AbstractOverrideFinder<BookmarksEntrypointOptions> {
|
|
6
|
+
constructor(config: ReadonlyConfig);
|
|
7
|
+
type(): OverrideEntrypointType;
|
|
8
|
+
protected getParser(): EntrypointParser<BookmarksEntrypointOptions>;
|
|
9
|
+
}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import AbstractOverrideFinder from "./AbstractOverrideFinder.js";
|
|
2
|
+
import { BookmarksParser } from "../parser/index.js";
|
|
3
|
+
import { EntrypointType } from "./../../../types/entrypoint.js";
|
|
4
|
+
class BookmarksFinder extends AbstractOverrideFinder {
|
|
5
|
+
constructor(config) {
|
|
6
|
+
super(config);
|
|
7
|
+
}
|
|
8
|
+
type() {
|
|
9
|
+
return EntrypointType.Bookmarks;
|
|
10
|
+
}
|
|
11
|
+
getParser() {
|
|
12
|
+
return new BookmarksParser(this.config);
|
|
13
|
+
}
|
|
14
|
+
}
|
|
15
|
+
export {
|
|
16
|
+
BookmarksFinder as default
|
|
17
|
+
};
|
|
18
|
+
//# sourceMappingURL=BookmarksFinder.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../src/cli/entrypoint/finder/BookmarksFinder.ts"],"sourcesContent":["import AbstractOverrideFinder from \"./AbstractOverrideFinder\";\n\nimport {BookmarksParser} from \"../parser\";\n\nimport {ReadonlyConfig} from \"@typing/config\";\nimport {EntrypointParser, EntrypointType} from \"@typing/entrypoint\";\nimport {BookmarksEntrypointOptions, OverrideEntrypointType} from \"@typing/override\";\n\nexport default class BookmarksFinder extends AbstractOverrideFinder<BookmarksEntrypointOptions> {\n public constructor(config: ReadonlyConfig) {\n super(config);\n }\n\n public type(): OverrideEntrypointType {\n return EntrypointType.Bookmarks;\n }\n\n protected getParser(): EntrypointParser<BookmarksEntrypointOptions> {\n return new BookmarksParser(this.config);\n }\n}\n"],"mappings":"AAAA,OAAO,4BAA4B;AAEnC,SAAQ,uBAAsB;AAG9B,SAA0B,sBAAqB;AAG/C,MAAO,wBAAsC,uBAAmD;AAAA,EACrF,YAAY,QAAwB;AACvC,UAAM,MAAM;AAAA,EAChB;AAAA,EAEO,OAA+B;AAClC,WAAO,eAAe;AAAA,EAC1B;AAAA,EAEU,YAA0D;AAChE,WAAO,IAAI,gBAAgB,KAAK,MAAM;AAAA,EAC1C;AACJ;","names":[]}
|
|
@@ -10,6 +10,10 @@ export default class extends AbstractPluginFinder<CommandEntrypointOptions> {
|
|
|
10
10
|
type(): EntrypointType;
|
|
11
11
|
protected getParser(): EntrypointParser<CommandEntrypointOptions>;
|
|
12
12
|
protected getPlugin(): EntrypointOptionsFinder<CommandEntrypointOptions>;
|
|
13
|
+
/**
|
|
14
|
+
* A command name is its identity in the manifest and in the browser's shortcut settings,
|
|
15
|
+
* so a collision fails the build instead of renaming one of the commands.
|
|
16
|
+
*/
|
|
13
17
|
protected getCommands(): Promise<Map<EntrypointFile, CommandOptions>>;
|
|
14
18
|
commands(): Promise<Map<EntrypointFile, CommandOptions>>;
|
|
15
19
|
canMerge(): boolean;
|
|
@@ -2,6 +2,7 @@ import AbstractPluginFinder from "./AbstractPluginFinder.js";
|
|
|
2
2
|
import PluginFinder from "./PluginFinder.js";
|
|
3
3
|
import { CommandParser } from "../parser/index.js";
|
|
4
4
|
import { InlineNameGenerator } from "../name/index.js";
|
|
5
|
+
import { CommandExecuteActionName } from "./../../../types/command.js";
|
|
5
6
|
import { EntrypointType } from "./../../../types/entrypoint.js";
|
|
6
7
|
class CommandFinder_default extends AbstractPluginFinder {
|
|
7
8
|
_commands;
|
|
@@ -19,14 +20,28 @@ class CommandFinder_default extends AbstractPluginFinder {
|
|
|
19
20
|
getPlugin() {
|
|
20
21
|
return new PluginFinder(this.config, "command", this);
|
|
21
22
|
}
|
|
23
|
+
/**
|
|
24
|
+
* A command name is its identity in the manifest and in the browser's shortcut settings,
|
|
25
|
+
* so a collision fails the build instead of renaming one of the commands.
|
|
26
|
+
*/
|
|
22
27
|
async getCommands() {
|
|
23
28
|
const commands = /* @__PURE__ */ new Map();
|
|
29
|
+
const owners = /* @__PURE__ */ new Map();
|
|
24
30
|
for (const [file, option] of await this.plugin().options()) {
|
|
25
|
-
const { name, ...definition } = option;
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
31
|
+
const { name = this.names.derive(file), ...definition } = option;
|
|
32
|
+
const owner = owners.get(name);
|
|
33
|
+
if (owner && name === CommandExecuteActionName) {
|
|
34
|
+
throw new Error(
|
|
35
|
+
`Invalid command options in "${file.file}": An action command is already defined in "${owner.file}". Only one action command is allowed`
|
|
36
|
+
);
|
|
37
|
+
}
|
|
38
|
+
if (owner) {
|
|
39
|
+
throw new Error(
|
|
40
|
+
`Invalid command options in "${file.file}": Command name "${name}" is already used by "${owner.file}". Command names must be unique, set a distinct "name"`
|
|
41
|
+
);
|
|
42
|
+
}
|
|
43
|
+
owners.set(name, file);
|
|
44
|
+
commands.set(file, { name, ...definition });
|
|
30
45
|
}
|
|
31
46
|
return commands;
|
|
32
47
|
}
|
|
@@ -37,7 +52,6 @@ class CommandFinder_default extends AbstractPluginFinder {
|
|
|
37
52
|
return this.config.mergeCommands;
|
|
38
53
|
}
|
|
39
54
|
clear() {
|
|
40
|
-
this.names.reset();
|
|
41
55
|
this._commands = void 0;
|
|
42
56
|
return super.clear();
|
|
43
57
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/cli/entrypoint/finder/CommandFinder.ts"],"sourcesContent":["import AbstractPluginFinder from \"./AbstractPluginFinder\";\nimport PluginFinder from \"./PluginFinder\";\n\nimport {CommandParser} from \"../parser\";\nimport {InlineNameGenerator} from \"../name\";\n\nimport {ReadonlyConfig} from \"@typing/config\";\nimport {CommandEntrypointOptions, CommandOptions} from \"@typing/command\";\nimport {EntrypointFile, EntrypointOptionsFinder, EntrypointParser, EntrypointType} from \"@typing/entrypoint\";\n\nexport default class extends AbstractPluginFinder<CommandEntrypointOptions> {\n protected _commands?: Map<EntrypointFile, CommandOptions>;\n\n protected readonly names: InlineNameGenerator;\n\n public constructor(config: ReadonlyConfig) {\n super(config);\n\n this.names = new InlineNameGenerator(this.type());\n }\n\n public type(): EntrypointType {\n return EntrypointType.Command;\n }\n\n protected getParser(): EntrypointParser<CommandEntrypointOptions> {\n return new CommandParser(this.config);\n }\n\n protected getPlugin(): EntrypointOptionsFinder<CommandEntrypointOptions> {\n return new PluginFinder(this.config, \"command\", this);\n }\n\n protected async getCommands(): Promise<Map<EntrypointFile, CommandOptions>> {\n const commands = new Map<EntrypointFile, CommandOptions>();\n\n for (const [file, option] of await this.plugin().options()) {\n const {name, ...definition} = option;\n\n
|
|
1
|
+
{"version":3,"sources":["../../../../src/cli/entrypoint/finder/CommandFinder.ts"],"sourcesContent":["import AbstractPluginFinder from \"./AbstractPluginFinder\";\nimport PluginFinder from \"./PluginFinder\";\n\nimport {CommandParser} from \"../parser\";\nimport {InlineNameGenerator} from \"../name\";\n\nimport {ReadonlyConfig} from \"@typing/config\";\nimport {CommandEntrypointOptions, CommandExecuteActionName, CommandOptions} from \"@typing/command\";\nimport {EntrypointFile, EntrypointOptionsFinder, EntrypointParser, EntrypointType} from \"@typing/entrypoint\";\n\nexport default class extends AbstractPluginFinder<CommandEntrypointOptions> {\n protected _commands?: Map<EntrypointFile, CommandOptions>;\n\n protected readonly names: InlineNameGenerator;\n\n public constructor(config: ReadonlyConfig) {\n super(config);\n\n this.names = new InlineNameGenerator(this.type());\n }\n\n public type(): EntrypointType {\n return EntrypointType.Command;\n }\n\n protected getParser(): EntrypointParser<CommandEntrypointOptions> {\n return new CommandParser(this.config);\n }\n\n protected getPlugin(): EntrypointOptionsFinder<CommandEntrypointOptions> {\n return new PluginFinder(this.config, \"command\", this);\n }\n\n /**\n * A command name is its identity in the manifest and in the browser's shortcut settings,\n * so a collision fails the build instead of renaming one of the commands.\n */\n protected async getCommands(): Promise<Map<EntrypointFile, CommandOptions>> {\n const commands = new Map<EntrypointFile, CommandOptions>();\n const owners = new Map<string, EntrypointFile>();\n\n for (const [file, option] of await this.plugin().options()) {\n const {name = this.names.derive(file), ...definition} = option;\n const owner = owners.get(name);\n\n if (owner && name === CommandExecuteActionName) {\n throw new Error(\n `Invalid command options in \"${file.file}\": An action command is already defined in \"${owner.file}\". Only one action command is allowed`\n );\n }\n\n if (owner) {\n throw new Error(\n `Invalid command options in \"${file.file}\": Command name \"${name}\" is already used by \"${owner.file}\". Command names must be unique, set a distinct \"name\"`\n );\n }\n\n owners.set(name, file);\n commands.set(file, {name, ...definition});\n }\n\n return commands;\n }\n\n public async commands(): Promise<Map<EntrypointFile, CommandOptions>> {\n return (this._commands ??= await this.getCommands());\n }\n\n public canMerge(): boolean {\n return this.config.mergeCommands;\n }\n\n public clear(): this {\n this._commands = undefined;\n\n return super.clear();\n }\n}\n"],"mappings":"AAAA,OAAO,0BAA0B;AACjC,OAAO,kBAAkB;AAEzB,SAAQ,qBAAoB;AAC5B,SAAQ,2BAA0B;AAGlC,SAAkC,gCAA+C;AACjF,SAAmE,sBAAqB;AAExF,MAAO,8BAAsB,qBAA+C;AAAA,EAC9D;AAAA,EAES;AAAA,EAEZ,YAAY,QAAwB;AACvC,UAAM,MAAM;AAEZ,SAAK,QAAQ,IAAI,oBAAoB,KAAK,KAAK,CAAC;AAAA,EACpD;AAAA,EAEO,OAAuB;AAC1B,WAAO,eAAe;AAAA,EAC1B;AAAA,EAEU,YAAwD;AAC9D,WAAO,IAAI,cAAc,KAAK,MAAM;AAAA,EACxC;AAAA,EAEU,YAA+D;AACrE,WAAO,IAAI,aAAa,KAAK,QAAQ,WAAW,IAAI;AAAA,EACxD;AAAA;AAAA;AAAA;AAAA;AAAA,EAMA,MAAgB,cAA4D;AACxE,UAAM,WAAW,oBAAI,IAAoC;AACzD,UAAM,SAAS,oBAAI,IAA4B;AAE/C,eAAW,CAAC,MAAM,MAAM,KAAK,MAAM,KAAK,OAAO,EAAE,QAAQ,GAAG;AACxD,YAAM,EAAC,OAAO,KAAK,MAAM,OAAO,IAAI,GAAG,GAAG,WAAU,IAAI;AACxD,YAAM,QAAQ,OAAO,IAAI,IAAI;AAE7B,UAAI,SAAS,SAAS,0BAA0B;AAC5C,cAAM,IAAI;AAAA,UACN,+BAA+B,KAAK,IAAI,+CAA+C,MAAM,IAAI;AAAA,QACrG;AAAA,MACJ;AAEA,UAAI,OAAO;AACP,cAAM,IAAI;AAAA,UACN,+BAA+B,KAAK,IAAI,oBAAoB,IAAI,yBAAyB,MAAM,IAAI;AAAA,QACvG;AAAA,MACJ;AAEA,aAAO,IAAI,MAAM,IAAI;AACrB,eAAS,IAAI,MAAM,EAAC,MAAM,GAAG,WAAU,CAAC;AAAA,IAC5C;AAEA,WAAO;AAAA,EACX;AAAA,EAEA,MAAa,WAAyD;AAClE,WAAQ,KAAK,cAAL,KAAK,YAAc,MAAM,KAAK,YAAY;AAAA,EACtD;AAAA,EAEO,WAAoB;AACvB,WAAO,KAAK,OAAO;AAAA,EACvB;AAAA,EAEO,QAAc;AACjB,SAAK,YAAY;AAEjB,WAAO,MAAM,MAAM;AAAA,EACvB;AACJ;","names":[]}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import AbstractOverrideFinder from "./AbstractOverrideFinder.js";
|
|
2
|
+
import { ReadonlyConfig } from "../../../types/config.js";
|
|
3
|
+
import { EntrypointParser } from "../../../types/entrypoint.js";
|
|
4
|
+
import { HistoryEntrypointOptions, OverrideEntrypointType } from "../../../types/override.js";
|
|
5
|
+
export default class HistoryFinder extends AbstractOverrideFinder<HistoryEntrypointOptions> {
|
|
6
|
+
constructor(config: ReadonlyConfig);
|
|
7
|
+
type(): OverrideEntrypointType;
|
|
8
|
+
protected getParser(): EntrypointParser<HistoryEntrypointOptions>;
|
|
9
|
+
}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import AbstractOverrideFinder from "./AbstractOverrideFinder.js";
|
|
2
|
+
import { HistoryParser } from "../parser/index.js";
|
|
3
|
+
import { EntrypointType } from "./../../../types/entrypoint.js";
|
|
4
|
+
class HistoryFinder extends AbstractOverrideFinder {
|
|
5
|
+
constructor(config) {
|
|
6
|
+
super(config);
|
|
7
|
+
}
|
|
8
|
+
type() {
|
|
9
|
+
return EntrypointType.History;
|
|
10
|
+
}
|
|
11
|
+
getParser() {
|
|
12
|
+
return new HistoryParser(this.config);
|
|
13
|
+
}
|
|
14
|
+
}
|
|
15
|
+
export {
|
|
16
|
+
HistoryFinder as default
|
|
17
|
+
};
|
|
18
|
+
//# sourceMappingURL=HistoryFinder.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../src/cli/entrypoint/finder/HistoryFinder.ts"],"sourcesContent":["import AbstractOverrideFinder from \"./AbstractOverrideFinder\";\n\nimport {HistoryParser} from \"../parser\";\n\nimport {ReadonlyConfig} from \"@typing/config\";\nimport {EntrypointParser, EntrypointType} from \"@typing/entrypoint\";\nimport {HistoryEntrypointOptions, OverrideEntrypointType} from \"@typing/override\";\n\nexport default class HistoryFinder extends AbstractOverrideFinder<HistoryEntrypointOptions> {\n public constructor(config: ReadonlyConfig) {\n super(config);\n }\n\n public type(): OverrideEntrypointType {\n return EntrypointType.History;\n }\n\n protected getParser(): EntrypointParser<HistoryEntrypointOptions> {\n return new HistoryParser(this.config);\n }\n}\n"],"mappings":"AAAA,OAAO,4BAA4B;AAEnC,SAAQ,qBAAoB;AAG5B,SAA0B,sBAAqB;AAG/C,MAAO,sBAAoC,uBAAiD;AAAA,EACjF,YAAY,QAAwB;AACvC,UAAM,MAAM;AAAA,EAChB;AAAA,EAEO,OAA+B;AAClC,WAAO,eAAe;AAAA,EAC1B;AAAA,EAEU,YAAwD;AAC9D,WAAO,IAAI,cAAc,KAAK,MAAM;AAAA,EACxC;AACJ;","names":[]}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import AbstractOverrideFinder from "./AbstractOverrideFinder.js";
|
|
2
|
+
import { ReadonlyConfig } from "../../../types/config.js";
|
|
3
|
+
import { EntrypointParser } from "../../../types/entrypoint.js";
|
|
4
|
+
import { NewtabEntrypointOptions, OverrideEntrypointType } from "../../../types/override.js";
|
|
5
|
+
export default class NewtabFinder extends AbstractOverrideFinder<NewtabEntrypointOptions> {
|
|
6
|
+
constructor(config: ReadonlyConfig);
|
|
7
|
+
type(): OverrideEntrypointType;
|
|
8
|
+
protected getParser(): EntrypointParser<NewtabEntrypointOptions>;
|
|
9
|
+
}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import AbstractOverrideFinder from "./AbstractOverrideFinder.js";
|
|
2
|
+
import { NewtabParser } from "../parser/index.js";
|
|
3
|
+
import { EntrypointType } from "./../../../types/entrypoint.js";
|
|
4
|
+
class NewtabFinder extends AbstractOverrideFinder {
|
|
5
|
+
constructor(config) {
|
|
6
|
+
super(config);
|
|
7
|
+
}
|
|
8
|
+
type() {
|
|
9
|
+
return EntrypointType.Newtab;
|
|
10
|
+
}
|
|
11
|
+
getParser() {
|
|
12
|
+
return new NewtabParser(this.config);
|
|
13
|
+
}
|
|
14
|
+
}
|
|
15
|
+
export {
|
|
16
|
+
NewtabFinder as default
|
|
17
|
+
};
|
|
18
|
+
//# sourceMappingURL=NewtabFinder.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../src/cli/entrypoint/finder/NewtabFinder.ts"],"sourcesContent":["import AbstractOverrideFinder from \"./AbstractOverrideFinder\";\n\nimport {NewtabParser} from \"../parser\";\n\nimport {ReadonlyConfig} from \"@typing/config\";\nimport {EntrypointParser, EntrypointType} from \"@typing/entrypoint\";\nimport {NewtabEntrypointOptions, OverrideEntrypointType} from \"@typing/override\";\n\nexport default class NewtabFinder extends AbstractOverrideFinder<NewtabEntrypointOptions> {\n public constructor(config: ReadonlyConfig) {\n super(config);\n }\n\n public type(): OverrideEntrypointType {\n return EntrypointType.Newtab;\n }\n\n protected getParser(): EntrypointParser<NewtabEntrypointOptions> {\n return new NewtabParser(this.config);\n }\n}\n"],"mappings":"AAAA,OAAO,4BAA4B;AAEnC,SAAQ,oBAAmB;AAG3B,SAA0B,sBAAqB;AAG/C,MAAO,qBAAmC,uBAAgD;AAAA,EAC/E,YAAY,QAAwB;AACvC,UAAM,MAAM;AAAA,EAChB;AAAA,EAEO,OAA+B;AAClC,WAAO,eAAe;AAAA,EAC1B;AAAA,EAEU,YAAuD;AAC7D,WAAO,IAAI,aAAa,KAAK,MAAM;AAAA,EACvC;AACJ;","names":[]}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import
|
|
1
|
+
import ViewPermissionsFinder from "./ViewPermissionsFinder.js";
|
|
2
2
|
import type { ViewItems } from "./AbstractViewFinder.js";
|
|
3
3
|
import type { ReadonlyConfig } from "../../../types/config.js";
|
|
4
4
|
import type { OptionsEntrypointOptions } from "../../../types/options.js";
|
|
5
5
|
import { EntrypointOptionsFinder, EntrypointParser, EntrypointType } from "../../../types/entrypoint.js";
|
|
6
|
-
export default class extends
|
|
6
|
+
export default class extends ViewPermissionsFinder<OptionsEntrypointOptions> {
|
|
7
7
|
constructor(config: ReadonlyConfig);
|
|
8
8
|
type(): EntrypointType;
|
|
9
9
|
protected getParser(): EntrypointParser<OptionsEntrypointOptions>;
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import
|
|
1
|
+
import ViewPermissionsFinder from "./ViewPermissionsFinder.js";
|
|
2
2
|
import PluginFinder from "./PluginFinder.js";
|
|
3
3
|
import { OptionsParser } from "../parser/index.js";
|
|
4
4
|
import { EntrypointType } from "./../../../types/entrypoint.js";
|
|
5
|
-
class OptionsFinder_default extends
|
|
5
|
+
class OptionsFinder_default extends ViewPermissionsFinder {
|
|
6
6
|
constructor(config) {
|
|
7
7
|
super(config);
|
|
8
8
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/cli/entrypoint/finder/OptionsFinder.ts"],"sourcesContent":["import
|
|
1
|
+
{"version":3,"sources":["../../../../src/cli/entrypoint/finder/OptionsFinder.ts"],"sourcesContent":["import ViewPermissionsFinder from \"./ViewPermissionsFinder\";\nimport PluginFinder from \"./PluginFinder\";\n\nimport {OptionsParser} from \"../parser\";\n\nimport type {ViewItems} from \"./AbstractViewFinder\";\nimport type {ReadonlyConfig} from \"@typing/config\";\nimport type {OptionsEntrypointOptions} from \"@typing/options\";\nimport {EntrypointOptionsFinder, EntrypointParser, EntrypointType} from \"@typing/entrypoint\";\n\nexport default class extends ViewPermissionsFinder<OptionsEntrypointOptions> {\n public constructor(config: ReadonlyConfig) {\n super(config);\n }\n\n public type(): EntrypointType {\n return EntrypointType.Options;\n }\n\n protected getParser(): EntrypointParser<OptionsEntrypointOptions> {\n return new OptionsParser(this.config);\n }\n\n protected getPlugin(): EntrypointOptionsFinder<OptionsEntrypointOptions> {\n return new PluginFinder(this.config, \"options\", this);\n }\n\n protected async getViews(): Promise<ViewItems<OptionsEntrypointOptions>> {\n const views = await super.getViews();\n\n for (const view of views.values()) {\n const {openInTab, ...options} = view.options;\n\n view.options = options;\n }\n\n return views;\n }\n\n public allowMultiple(): boolean {\n return false;\n }\n}\n"],"mappings":"AAAA,OAAO,2BAA2B;AAClC,OAAO,kBAAkB;AAEzB,SAAQ,qBAAoB;AAK5B,SAAmD,sBAAqB;AAExE,MAAO,8BAAsB,sBAAgD;AAAA,EAClE,YAAY,QAAwB;AACvC,UAAM,MAAM;AAAA,EAChB;AAAA,EAEO,OAAuB;AAC1B,WAAO,eAAe;AAAA,EAC1B;AAAA,EAEU,YAAwD;AAC9D,WAAO,IAAI,cAAc,KAAK,MAAM;AAAA,EACxC;AAAA,EAEU,YAA+D;AACrE,WAAO,IAAI,aAAa,KAAK,QAAQ,WAAW,IAAI;AAAA,EACxD;AAAA,EAEA,MAAgB,WAAyD;AACrE,UAAM,QAAQ,MAAM,MAAM,SAAS;AAEnC,eAAW,QAAQ,MAAM,OAAO,GAAG;AAC/B,YAAM,EAAC,WAAW,GAAG,QAAO,IAAI,KAAK;AAErC,WAAK,UAAU;AAAA,IACnB;AAEA,WAAO;AAAA,EACX;AAAA,EAEO,gBAAyB;AAC5B,WAAO;AAAA,EACX;AACJ;","names":[]}
|
|
@@ -13,7 +13,7 @@ class PageFinder_default extends ViewCspFinder {
|
|
|
13
13
|
return EntrypointType.Page;
|
|
14
14
|
}
|
|
15
15
|
createFilenameGenerator() {
|
|
16
|
-
return new InlineNameGenerator(this.type()).reserve(EntrypointType.Background).reserve(EntrypointType.Command).reserve(EntrypointType.ContentScript).reserve(EntrypointType.Sidebar).reserve(EntrypointType.Popup).reserve(EntrypointType.Offscreen).reserve(EntrypointType.Sandbox).reserve(EntrypointType.Options);
|
|
16
|
+
return new InlineNameGenerator(this.type()).reserve(EntrypointType.Background).reserve(EntrypointType.Command).reserve(EntrypointType.ContentScript).reserve(EntrypointType.Sidebar).reserve(EntrypointType.Popup).reserve(EntrypointType.Offscreen).reserve(EntrypointType.Sandbox).reserve(EntrypointType.Options).reserve(EntrypointType.Newtab).reserve(EntrypointType.Bookmarks).reserve(EntrypointType.History);
|
|
17
17
|
}
|
|
18
18
|
createViewAlias(file, options) {
|
|
19
19
|
const { name } = options;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/cli/entrypoint/finder/PageFinder.ts"],"sourcesContent":["import ViewCspFinder from \"./ViewCspFinder\";\nimport PluginFinder from \"./PluginFinder\";\n\nimport {PageParser} from \"../parser\";\nimport {InlineNameGenerator} from \"../name\";\n\nimport {ReadonlyConfig} from \"@typing/config\";\nimport {PageEntrypointOptions} from \"@typing/page\";\nimport {\n EntrypointFile,\n EntrypointNameGenerator,\n EntrypointOptionsFinder,\n EntrypointParser,\n EntrypointType,\n} from \"@typing/entrypoint\";\n\nexport default class extends ViewCspFinder<PageEntrypointOptions> {\n constructor(config: ReadonlyConfig) {\n super(config);\n }\n\n public type(): EntrypointType {\n return EntrypointType.Page;\n }\n\n protected createFilenameGenerator(): EntrypointNameGenerator {\n return new InlineNameGenerator(this.type())\n .reserve(EntrypointType.Background)\n .reserve(EntrypointType.Command)\n .reserve(EntrypointType.ContentScript)\n .reserve(EntrypointType.Sidebar)\n .reserve(EntrypointType.Popup)\n .reserve(EntrypointType.Offscreen)\n .reserve(EntrypointType.Sandbox)\n .reserve(EntrypointType.Options);\n }\n\n protected createViewAlias(file: EntrypointFile, options: PageEntrypointOptions): string {\n const {name} = options;\n\n let alias = name ? this.aliases.name(name) : this.aliases.file(file);\n\n if (file.external) {\n alias = file.import;\n }\n\n return alias;\n }\n\n protected getParser(): EntrypointParser<PageEntrypointOptions> {\n return new PageParser(this.config);\n }\n\n protected getPlugin(): EntrypointOptionsFinder<PageEntrypointOptions> {\n return new PluginFinder(this.config, \"page\", this);\n }\n\n public canMerge(): boolean {\n return this.config.mergePages;\n }\n}\n"],"mappings":"AAAA,OAAO,mBAAmB;AAC1B,OAAO,kBAAkB;AAEzB,SAAQ,kBAAiB;AACzB,SAAQ,2BAA0B;AAIlC;AAAA,EAKI;AAAA,OACG;AAEP,MAAO,2BAAsB,cAAqC;AAAA,EAC9D,YAAY,QAAwB;AAChC,UAAM,MAAM;AAAA,EAChB;AAAA,EAEO,OAAuB;AAC1B,WAAO,eAAe;AAAA,EAC1B;AAAA,EAEU,0BAAmD;AACzD,WAAO,IAAI,oBAAoB,KAAK,KAAK,CAAC,EACrC,QAAQ,eAAe,UAAU,EACjC,QAAQ,eAAe,OAAO,EAC9B,QAAQ,eAAe,aAAa,EACpC,QAAQ,eAAe,OAAO,EAC9B,QAAQ,eAAe,KAAK,EAC5B,QAAQ,eAAe,SAAS,EAChC,QAAQ,eAAe,OAAO,EAC9B,QAAQ,eAAe,OAAO;AAAA,EACvC;AAAA,EAEU,gBAAgB,MAAsB,SAAwC;AACpF,UAAM,EAAC,KAAI,IAAI;AAEf,QAAI,QAAQ,OAAO,KAAK,QAAQ,KAAK,IAAI,IAAI,KAAK,QAAQ,KAAK,IAAI;AAEnE,QAAI,KAAK,UAAU;AACf,cAAQ,KAAK;AAAA,IACjB;AAEA,WAAO;AAAA,EACX;AAAA,EAEU,YAAqD;AAC3D,WAAO,IAAI,WAAW,KAAK,MAAM;AAAA,EACrC;AAAA,EAEU,YAA4D;AAClE,WAAO,IAAI,aAAa,KAAK,QAAQ,QAAQ,IAAI;AAAA,EACrD;AAAA,EAEO,WAAoB;AACvB,WAAO,KAAK,OAAO;AAAA,EACvB;AACJ;","names":[]}
|
|
1
|
+
{"version":3,"sources":["../../../../src/cli/entrypoint/finder/PageFinder.ts"],"sourcesContent":["import ViewCspFinder from \"./ViewCspFinder\";\nimport PluginFinder from \"./PluginFinder\";\n\nimport {PageParser} from \"../parser\";\nimport {InlineNameGenerator} from \"../name\";\n\nimport {ReadonlyConfig} from \"@typing/config\";\nimport {PageEntrypointOptions} from \"@typing/page\";\nimport {\n EntrypointFile,\n EntrypointNameGenerator,\n EntrypointOptionsFinder,\n EntrypointParser,\n EntrypointType,\n} from \"@typing/entrypoint\";\n\nexport default class extends ViewCspFinder<PageEntrypointOptions> {\n constructor(config: ReadonlyConfig) {\n super(config);\n }\n\n public type(): EntrypointType {\n return EntrypointType.Page;\n }\n\n protected createFilenameGenerator(): EntrypointNameGenerator {\n return new InlineNameGenerator(this.type())\n .reserve(EntrypointType.Background)\n .reserve(EntrypointType.Command)\n .reserve(EntrypointType.ContentScript)\n .reserve(EntrypointType.Sidebar)\n .reserve(EntrypointType.Popup)\n .reserve(EntrypointType.Offscreen)\n .reserve(EntrypointType.Sandbox)\n .reserve(EntrypointType.Options)\n .reserve(EntrypointType.Newtab)\n .reserve(EntrypointType.Bookmarks)\n .reserve(EntrypointType.History);\n }\n\n protected createViewAlias(file: EntrypointFile, options: PageEntrypointOptions): string {\n const {name} = options;\n\n let alias = name ? this.aliases.name(name) : this.aliases.file(file);\n\n if (file.external) {\n alias = file.import;\n }\n\n return alias;\n }\n\n protected getParser(): EntrypointParser<PageEntrypointOptions> {\n return new PageParser(this.config);\n }\n\n protected getPlugin(): EntrypointOptionsFinder<PageEntrypointOptions> {\n return new PluginFinder(this.config, \"page\", this);\n }\n\n public canMerge(): boolean {\n return this.config.mergePages;\n }\n}\n"],"mappings":"AAAA,OAAO,mBAAmB;AAC1B,OAAO,kBAAkB;AAEzB,SAAQ,kBAAiB;AACzB,SAAQ,2BAA0B;AAIlC;AAAA,EAKI;AAAA,OACG;AAEP,MAAO,2BAAsB,cAAqC;AAAA,EAC9D,YAAY,QAAwB;AAChC,UAAM,MAAM;AAAA,EAChB;AAAA,EAEO,OAAuB;AAC1B,WAAO,eAAe;AAAA,EAC1B;AAAA,EAEU,0BAAmD;AACzD,WAAO,IAAI,oBAAoB,KAAK,KAAK,CAAC,EACrC,QAAQ,eAAe,UAAU,EACjC,QAAQ,eAAe,OAAO,EAC9B,QAAQ,eAAe,aAAa,EACpC,QAAQ,eAAe,OAAO,EAC9B,QAAQ,eAAe,KAAK,EAC5B,QAAQ,eAAe,SAAS,EAChC,QAAQ,eAAe,OAAO,EAC9B,QAAQ,eAAe,OAAO,EAC9B,QAAQ,eAAe,MAAM,EAC7B,QAAQ,eAAe,SAAS,EAChC,QAAQ,eAAe,OAAO;AAAA,EACvC;AAAA,EAEU,gBAAgB,MAAsB,SAAwC;AACpF,UAAM,EAAC,KAAI,IAAI;AAEf,QAAI,QAAQ,OAAO,KAAK,QAAQ,KAAK,IAAI,IAAI,KAAK,QAAQ,KAAK,IAAI;AAEnE,QAAI,KAAK,UAAU;AACf,cAAQ,KAAK;AAAA,IACjB;AAEA,WAAO;AAAA,EACX;AAAA,EAEU,YAAqD;AAC3D,WAAO,IAAI,WAAW,KAAK,MAAM;AAAA,EACrC;AAAA,EAEU,YAA4D;AAClE,WAAO,IAAI,aAAa,KAAK,QAAQ,QAAQ,IAAI;AAAA,EACrD;AAAA,EAEO,WAAoB;AACvB,WAAO,KAAK,OAAO;AAAA,EACvB;AACJ;","names":[]}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import
|
|
1
|
+
import ViewPermissionsFinder from "./ViewPermissionsFinder.js";
|
|
2
2
|
import { ReadonlyConfig } from "../../../types/config.js";
|
|
3
3
|
import { PopupEntrypointOptions } from "../../../types/popup.js";
|
|
4
4
|
import { EntrypointOptionsFinder, EntrypointParser, EntrypointType } from "../../../types/entrypoint.js";
|
|
5
|
-
export default class extends
|
|
5
|
+
export default class extends ViewPermissionsFinder<PopupEntrypointOptions> {
|
|
6
6
|
constructor(config: ReadonlyConfig);
|
|
7
7
|
type(): EntrypointType;
|
|
8
8
|
protected getParser(): EntrypointParser<PopupEntrypointOptions>;
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import
|
|
1
|
+
import ViewPermissionsFinder from "./ViewPermissionsFinder.js";
|
|
2
2
|
import PluginFinder from "./PluginFinder.js";
|
|
3
3
|
import { PopupParser } from "../parser/index.js";
|
|
4
4
|
import { EntrypointType } from "./../../../types/entrypoint.js";
|
|
5
|
-
class PopupFinder_default extends
|
|
5
|
+
class PopupFinder_default extends ViewPermissionsFinder {
|
|
6
6
|
constructor(config) {
|
|
7
7
|
super(config);
|
|
8
8
|
}
|