extension-develop 4.0.11 → 4.0.12

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.
Files changed (274) hide show
  1. package/dist/0~dev-server.mjs +1 -1
  2. package/dist/0~rspack-config.mjs +107 -3154
  3. package/dist/101.mjs +32 -4
  4. package/dist/266.mjs +1 -4
  5. package/dist/839.mjs +3156 -59
  6. package/dist/bridge-entry.d.ts +5 -0
  7. package/dist/command-build.d.ts +3 -0
  8. package/dist/command-dev.d.ts +5 -0
  9. package/dist/command-preview.d.ts +30 -0
  10. package/dist/dev-server/auto-exit.d.ts +1 -0
  11. package/dist/dev-server/cleanup.d.ts +11 -0
  12. package/dist/dev-server/compiler-hooks.d.ts +9 -0
  13. package/dist/dev-server/connectable-host.d.ts +2 -0
  14. package/dist/dev-server/control-bridge/actions-file.d.ts +38 -0
  15. package/dist/dev-server/control-bridge/broker.d.ts +122 -0
  16. package/dist/dev-server/control-bridge/consumer-client.d.ts +43 -0
  17. package/dist/dev-server/control-bridge/contracts.d.ts +164 -0
  18. package/dist/dev-server/control-bridge/control-port-store.d.ts +25 -0
  19. package/dist/dev-server/control-bridge/controller-client.d.ts +30 -0
  20. package/dist/dev-server/control-bridge/logs-file.d.ts +30 -0
  21. package/dist/dev-server/control-bridge/producer-runtime.d.ts +30 -0
  22. package/dist/dev-server/control-bridge/ring-buffer.d.ts +21 -0
  23. package/dist/dev-server/control-bridge/session-token.d.ts +18 -0
  24. package/dist/dev-server/control-bridge/ws-control-server.d.ts +13 -0
  25. package/dist/dev-server/frameworks.d.ts +2 -0
  26. package/dist/dev-server/index.d.ts +3 -0
  27. package/dist/dev-server/messages.d.ts +17 -0
  28. package/dist/dev-server/port-manager.d.ts +17 -0
  29. package/dist/extension-js-devtools/extension-js/chrome/events.ndjson +2 -6
  30. package/dist/extension-js-devtools/extension-js/chrome/ready.json +9 -6
  31. package/dist/extension-js-devtools/extension-js/chromium/events.ndjson +2 -6
  32. package/dist/extension-js-devtools/extension-js/chromium/ready.json +9 -6
  33. package/dist/extension-js-devtools/extension-js/edge/events.ndjson +2 -6
  34. package/dist/extension-js-devtools/extension-js/edge/ready.json +9 -6
  35. package/dist/extension-js-devtools/extension-js/firefox/events.ndjson +2 -6
  36. package/dist/extension-js-devtools/extension-js/firefox/ready.json +9 -6
  37. package/dist/extension-js-theme/extension-js/chrome/events.ndjson +2 -6
  38. package/dist/extension-js-theme/extension-js/chrome/ready.json +9 -6
  39. package/dist/extension-js-theme/extension-js/chromium/events.ndjson +2 -6
  40. package/dist/extension-js-theme/extension-js/chromium/ready.json +9 -6
  41. package/dist/extension-js-theme/extension-js/edge/events.ndjson +2 -6
  42. package/dist/extension-js-theme/extension-js/edge/ready.json +9 -6
  43. package/dist/extension-js-theme/extension-js/firefox/events.ndjson +2 -8
  44. package/dist/extension-js-theme/extension-js/firefox/ready.json +9 -6
  45. package/dist/lib/branding.d.ts +7 -0
  46. package/dist/lib/build-summary.d.ts +9 -0
  47. package/dist/lib/config-loader.d.ts +38 -0
  48. package/dist/lib/constants.d.ts +11 -0
  49. package/dist/lib/dark-mode.d.ts +9 -0
  50. package/dist/lib/dev-server-client-import.d.ts +4 -0
  51. package/dist/lib/develop-context.d.ts +3 -0
  52. package/dist/lib/ensure-develop-artifacts.d.ts +10 -0
  53. package/dist/lib/extensions-to-load.d.ts +1 -0
  54. package/dist/lib/generate-extension-types.d.ts +1 -0
  55. package/dist/lib/has-dependency.d.ts +6 -0
  56. package/dist/lib/manifest-utils.d.ts +2 -0
  57. package/dist/lib/messages.d.ts +55 -0
  58. package/dist/lib/optional-dependency-types.d.ts +14 -0
  59. package/dist/lib/optional-deps-contracts.d.ts +13 -0
  60. package/dist/lib/optional-deps-resolver.d.ts +41 -0
  61. package/dist/lib/package-json.d.ts +3 -0
  62. package/dist/lib/package-manager.d.ts +61 -0
  63. package/dist/lib/parse-json-safe.d.ts +13 -0
  64. package/dist/lib/paths.d.ts +19 -0
  65. package/dist/lib/project-manifest.d.ts +60 -0
  66. package/dist/lib/project.d.ts +7 -0
  67. package/dist/lib/resource-path.d.ts +4 -0
  68. package/dist/lib/rust-min-stack.d.ts +2 -0
  69. package/dist/lib/sanitize.d.ts +1 -0
  70. package/dist/lib/session-paths.d.ts +39 -0
  71. package/dist/lib/stats-handler.d.ts +1 -0
  72. package/dist/lib/transpile-packages.d.ts +7 -0
  73. package/dist/lib/validate-user-dependencies.d.ts +1 -0
  74. package/dist/lib/zip.d.ts +2 -0
  75. package/dist/module.d.ts +8 -0
  76. package/dist/plugin-browsers/index.d.ts +108 -0
  77. package/dist/plugin-browsers/safari-dev-plugin.d.ts +19 -0
  78. package/dist/plugin-compatibility/compatibility-lib/messages.d.ts +5 -0
  79. package/dist/plugin-compatibility/feature-polyfill.d.ts +11 -0
  80. package/dist/plugin-compatibility/index.d.ts +12 -0
  81. package/dist/plugin-compilation/boring.d.ts +11 -0
  82. package/dist/plugin-compilation/clean-dist.d.ts +8 -0
  83. package/dist/plugin-compilation/compilation-lib/messages.d.ts +11 -0
  84. package/dist/plugin-compilation/compilation-lib/shared-state.d.ts +7 -0
  85. package/dist/plugin-compilation/env.d.ts +17 -0
  86. package/dist/plugin-compilation/index.d.ts +22 -0
  87. package/dist/plugin-compilation/zip.d.ts +18 -0
  88. package/dist/plugin-css/common-style-loaders.d.ts +8 -0
  89. package/dist/plugin-css/css-in-content-script-loader.d.ts +4 -0
  90. package/dist/plugin-css/css-in-html-loader.d.ts +4 -0
  91. package/dist/plugin-css/css-lib/build-css-rules.d.ts +12 -0
  92. package/dist/plugin-css/css-lib/inject-css-link.d.ts +16 -0
  93. package/dist/plugin-css/css-lib/is-content-script.d.ts +1 -0
  94. package/dist/plugin-css/css-lib/messages.d.ts +9 -0
  95. package/dist/plugin-css/css-lib/resolve-css-asset.d.ts +21 -0
  96. package/dist/plugin-css/css-parse-guard-loader.d.ts +8 -0
  97. package/dist/plugin-css/css-tools/less.d.ts +7 -0
  98. package/dist/plugin-css/css-tools/postcss.d.ts +4 -0
  99. package/dist/plugin-css/css-tools/sass.d.ts +10 -0
  100. package/dist/plugin-css/css-tools/tailwind.d.ts +2 -0
  101. package/dist/plugin-css/index.d.ts +26 -0
  102. package/dist/plugin-css/preprocessor-passthrough-loader.d.ts +6 -0
  103. package/dist/plugin-js-frameworks/frameworks-lib/integrations.d.ts +4 -0
  104. package/dist/plugin-js-frameworks/index.d.ts +18 -0
  105. package/dist/plugin-js-frameworks/js-frameworks-lib/load-loader-options.d.ts +2 -0
  106. package/dist/plugin-js-frameworks/js-frameworks-lib/messages.d.ts +10 -0
  107. package/dist/plugin-js-frameworks/js-tools/preact.d.ts +3 -0
  108. package/dist/plugin-js-frameworks/js-tools/react.d.ts +8 -0
  109. package/dist/plugin-js-frameworks/js-tools/svelte.d.ts +4 -0
  110. package/dist/plugin-js-frameworks/js-tools/typescript.d.ts +37 -0
  111. package/dist/plugin-js-frameworks/js-tools/vue.d.ts +3 -0
  112. package/dist/plugin-perf-budgets/categorize.d.ts +3 -0
  113. package/dist/plugin-perf-budgets/index.d.ts +34 -0
  114. package/dist/plugin-perf-budgets/messages.d.ts +8 -0
  115. package/dist/plugin-playwright/index.d.ts +89 -0
  116. package/dist/plugin-reload/classify-reload.d.ts +86 -0
  117. package/dist/plugin-reload/index.d.ts +29 -0
  118. package/dist/plugin-reload/messages.d.ts +1 -0
  119. package/dist/plugin-reload/reload-dispatch.d.ts +46 -0
  120. package/dist/plugin-reload/reload-lib/minimum-files/minimum-background-file-chromium.d.ts +0 -0
  121. package/dist/plugin-reload/reload-lib/minimum-files/minimum-background-file-firefox.d.ts +0 -0
  122. package/dist/plugin-reload/reload-lib/scripts-replay-shim.d.ts +19 -0
  123. package/dist/plugin-reload/steps/inject-bridge-producer.d.ts +14 -0
  124. package/dist/plugin-reload/steps/inject-bridge-relay.d.ts +4 -0
  125. package/dist/plugin-reload/steps/inject-scripts-replay-shim.d.ts +10 -0
  126. package/dist/plugin-reload/steps/prune-stale-hot-updates.d.ts +20 -0
  127. package/dist/plugin-reload/steps/remove-content-script-dev-server-runtime.d.ts +2 -0
  128. package/dist/plugin-reload/steps/setup-reload-strategy/index.d.ts +9 -0
  129. package/dist/plugin-reload/steps/setup-reload-strategy/setup-background-entry.d.ts +13 -0
  130. package/dist/plugin-reload/steps/setup-reload-strategy/webpack-target-webextension-fork/index.d.ts +2 -0
  131. package/dist/plugin-reload/steps/setup-reload-strategy/webpack-target-webextension-fork/lib/webpack5/ChunkLoader.d.ts +9 -0
  132. package/dist/plugin-reload/steps/setup-reload-strategy/webpack-target-webextension-fork/lib/webpack5/HMRDevServer.d.ts +3 -0
  133. package/dist/plugin-reload/steps/setup-reload-strategy/webpack-target-webextension-fork/lib/webpack5/InitialChunkFile.d.ts +5 -0
  134. package/dist/plugin-reload/steps/setup-reload-strategy/webpack-target-webextension-fork/lib/webpack5/NoDangerNamePlugin.d.ts +3 -0
  135. package/dist/plugin-reload/steps/setup-reload-strategy/webpack-target-webextension-fork/lib/webpack5/RuntimeModules/AutoPublicPath.d.ts +2 -0
  136. package/dist/plugin-reload/steps/setup-reload-strategy/webpack-target-webextension-fork/lib/webpack5/RuntimeModules/BaseUri.d.ts +2 -0
  137. package/dist/plugin-reload/steps/setup-reload-strategy/webpack-target-webextension-fork/lib/webpack5/RuntimeModules/BrowserRuntime.d.ts +8 -0
  138. package/dist/plugin-reload/steps/setup-reload-strategy/webpack-target-webextension-fork/lib/webpack5/RuntimeModules/ChunkLoaderFallback.d.ts +1 -0
  139. package/dist/plugin-reload/steps/setup-reload-strategy/webpack-target-webextension-fork/lib/webpack5/RuntimeModules/EagerlyLoadChunks.d.ts +1 -0
  140. package/dist/plugin-reload/steps/setup-reload-strategy/webpack-target-webextension-fork/lib/webpack5/RuntimeModules/LoadScript.d.ts +4 -0
  141. package/dist/plugin-reload/steps/setup-reload-strategy/webpack-target-webextension-fork/lib/webpack5/RuntimeModules/PublicPath.d.ts +2 -0
  142. package/dist/plugin-reload/steps/setup-reload-strategy/webpack-target-webextension-fork/lib/webpack5/ServiceWorkerPlugin.d.ts +6 -0
  143. package/dist/plugin-reload/steps/setup-reload-strategy/webpack-target-webextension-fork/lib/webpack5/helper.d.ts +12 -0
  144. package/dist/plugin-reload/steps/setup-reload-strategy/webpack-target-webextension-fork/lib/webpack5/index.d.ts +5 -0
  145. package/dist/plugin-reload/steps/strip-content-script-dev-server-runtime.d.ts +4 -0
  146. package/dist/plugin-special-folders/check-manifest-in-public.d.ts +2 -0
  147. package/dist/plugin-special-folders/emit-root-absolute-refs.d.ts +2 -0
  148. package/dist/plugin-special-folders/folder-extensions/resolve-config.d.ts +6 -0
  149. package/dist/plugin-special-folders/folder-extensions/resolve-dirs.d.ts +5 -0
  150. package/dist/plugin-special-folders/folder-extensions/types.d.ts +17 -0
  151. package/dist/plugin-special-folders/folder-extensions/utils.d.ts +9 -0
  152. package/dist/plugin-special-folders/get-data.d.ts +12 -0
  153. package/dist/plugin-special-folders/index.d.ts +20 -0
  154. package/dist/plugin-special-folders/messages.d.ts +3 -0
  155. package/dist/plugin-special-folders/warn-upon-folder-changes.d.ts +13 -0
  156. package/dist/plugin-static-assets/index.d.ts +10 -0
  157. package/dist/plugin-static-assets/static-assets-lib/messages.d.ts +8 -0
  158. package/dist/plugin-wasm/index.d.ts +15 -0
  159. package/dist/plugin-web-extension/feature-html/html-lib/assets.d.ts +2 -0
  160. package/dist/plugin-web-extension/feature-html/html-lib/inject.d.ts +4 -0
  161. package/dist/plugin-web-extension/feature-html/html-lib/messages.d.ts +24 -0
  162. package/dist/plugin-web-extension/feature-html/html-lib/parse-html.d.ts +8 -0
  163. package/dist/plugin-web-extension/feature-html/html-lib/patch-html.d.ts +8 -0
  164. package/dist/plugin-web-extension/feature-html/html-lib/utils.d.ts +46 -0
  165. package/dist/plugin-web-extension/feature-html/index.d.ts +36 -0
  166. package/dist/plugin-web-extension/feature-html/steps/add-assets-to-compilation.d.ts +9 -0
  167. package/dist/plugin-web-extension/feature-html/steps/add-scripts-and-styles-to-compilation.d.ts +9 -0
  168. package/dist/plugin-web-extension/feature-html/steps/add-to-file-dependencies.d.ts +9 -0
  169. package/dist/plugin-web-extension/feature-html/steps/emit-html-file.d.ts +9 -0
  170. package/dist/plugin-web-extension/feature-html/steps/ensure-hmr-for-scripts.d.ts +2 -0
  171. package/dist/plugin-web-extension/feature-html/steps/handle-common-errors.d.ts +9 -0
  172. package/dist/plugin-web-extension/feature-html/steps/minimum-script-file.d.ts +1 -0
  173. package/dist/plugin-web-extension/feature-html/steps/preact-refresh-shim.d.ts +1 -0
  174. package/dist/plugin-web-extension/feature-html/steps/throw-if-recompile-is-needed.d.ts +12 -0
  175. package/dist/plugin-web-extension/feature-html/steps/update-html-file.d.ts +9 -0
  176. package/dist/plugin-web-extension/feature-icons/index.d.ts +22 -0
  177. package/dist/plugin-web-extension/feature-icons/messages.d.ts +12 -0
  178. package/dist/plugin-web-extension/feature-icons/normalize-keys.d.ts +3 -0
  179. package/dist/plugin-web-extension/feature-icons/steps/add-to-file-dependencies.d.ts +8 -0
  180. package/dist/plugin-web-extension/feature-icons/steps/emit-file.d.ts +8 -0
  181. package/dist/plugin-web-extension/feature-json/index.d.ts +18 -0
  182. package/dist/plugin-web-extension/feature-json/json-validation.d.ts +3 -0
  183. package/dist/plugin-web-extension/feature-json/messages.d.ts +17 -0
  184. package/dist/plugin-web-extension/feature-json/process-assets.d.ts +2 -0
  185. package/dist/plugin-web-extension/feature-json/track-dependencies.d.ts +2 -0
  186. package/dist/plugin-web-extension/feature-locales/compilation-error.d.ts +2 -0
  187. package/dist/plugin-web-extension/feature-locales/get-locales.d.ts +2 -0
  188. package/dist/plugin-web-extension/feature-locales/index.d.ts +12 -0
  189. package/dist/plugin-web-extension/feature-locales/messages.d.ts +13 -0
  190. package/dist/plugin-web-extension/feature-locales/process-assets.d.ts +2 -0
  191. package/dist/plugin-web-extension/feature-locales/track-dependencies.d.ts +2 -0
  192. package/dist/plugin-web-extension/feature-locales/validation.d.ts +2 -0
  193. package/dist/plugin-web-extension/feature-manifest/index.d.ts +21 -0
  194. package/dist/plugin-web-extension/feature-manifest/manifest-lib/manifest.d.ts +10 -0
  195. package/dist/plugin-web-extension/feature-manifest/manifest-lib/sanitize-fatal-shapes.d.ts +45 -0
  196. package/dist/plugin-web-extension/feature-manifest/manifest-overrides/common/background.d.ts +6 -0
  197. package/dist/plugin-web-extension/feature-manifest/manifest-overrides/common/chrome_url_overrides.d.ts +8 -0
  198. package/dist/plugin-web-extension/feature-manifest/manifest-overrides/common/commands.d.ts +16 -0
  199. package/dist/plugin-web-extension/feature-manifest/manifest-overrides/common/content_scripts.d.ts +4 -0
  200. package/dist/plugin-web-extension/feature-manifest/manifest-overrides/common/content_security_policy.d.ts +4 -0
  201. package/dist/plugin-web-extension/feature-manifest/manifest-overrides/common/devtools_page.d.ts +4 -0
  202. package/dist/plugin-web-extension/feature-manifest/manifest-overrides/common/icons.d.ts +6 -0
  203. package/dist/plugin-web-extension/feature-manifest/manifest-overrides/common/index.d.ts +2 -0
  204. package/dist/plugin-web-extension/feature-manifest/manifest-overrides/common/omnibox.d.ts +9 -0
  205. package/dist/plugin-web-extension/feature-manifest/manifest-overrides/common/options_page.d.ts +4 -0
  206. package/dist/plugin-web-extension/feature-manifest/manifest-overrides/common/options_ui.d.ts +8 -0
  207. package/dist/plugin-web-extension/feature-manifest/manifest-overrides/common/page_action.d.ts +8 -0
  208. package/dist/plugin-web-extension/feature-manifest/manifest-overrides/common/permissions.d.ts +4 -0
  209. package/dist/plugin-web-extension/feature-manifest/manifest-overrides/common/sandbox.d.ts +7 -0
  210. package/dist/plugin-web-extension/feature-manifest/manifest-overrides/common/sidebar_action.d.ts +2 -0
  211. package/dist/plugin-web-extension/feature-manifest/manifest-overrides/common/storage.d.ts +6 -0
  212. package/dist/plugin-web-extension/feature-manifest/manifest-overrides/common/theme.d.ts +2 -0
  213. package/dist/plugin-web-extension/feature-manifest/manifest-overrides/common/user_scripts.d.ts +2 -0
  214. package/dist/plugin-web-extension/feature-manifest/manifest-overrides/common/web_accessible_resources.d.ts +4 -0
  215. package/dist/plugin-web-extension/feature-manifest/manifest-overrides/index.d.ts +2 -0
  216. package/dist/plugin-web-extension/feature-manifest/manifest-overrides/mv2/background.d.ts +6 -0
  217. package/dist/plugin-web-extension/feature-manifest/manifest-overrides/mv2/browser_action.d.ts +12 -0
  218. package/dist/plugin-web-extension/feature-manifest/manifest-overrides/mv2/chrome_settings_overrides.d.ts +24 -0
  219. package/dist/plugin-web-extension/feature-manifest/manifest-overrides/mv2/index.d.ts +2 -0
  220. package/dist/plugin-web-extension/feature-manifest/manifest-overrides/mv2/theme_experiment.d.ts +7 -0
  221. package/dist/plugin-web-extension/feature-manifest/manifest-overrides/mv3/action.d.ts +8 -0
  222. package/dist/plugin-web-extension/feature-manifest/manifest-overrides/mv3/background.d.ts +6 -0
  223. package/dist/plugin-web-extension/feature-manifest/manifest-overrides/mv3/declarative_net_request.d.ts +2 -0
  224. package/dist/plugin-web-extension/feature-manifest/manifest-overrides/mv3/host_permissions.d.ts +4 -0
  225. package/dist/plugin-web-extension/feature-manifest/manifest-overrides/mv3/index.d.ts +2 -0
  226. package/dist/plugin-web-extension/feature-manifest/manifest-overrides/mv3/side_panel.d.ts +2 -0
  227. package/dist/plugin-web-extension/feature-manifest/messages.d.ts +9 -0
  228. package/dist/plugin-web-extension/feature-manifest/normalize-manifest-path.d.ts +3 -0
  229. package/dist/plugin-web-extension/feature-manifest/steps/add-dependencies.d.ts +6 -0
  230. package/dist/plugin-web-extension/feature-manifest/steps/apply-dev-defaults-lib/patch-background.d.ts +10 -0
  231. package/dist/plugin-web-extension/feature-manifest/steps/apply-dev-defaults-lib/patch-csp.d.ts +5 -0
  232. package/dist/plugin-web-extension/feature-manifest/steps/apply-dev-defaults-lib/patch-externally-connectable.d.ts +10 -0
  233. package/dist/plugin-web-extension/feature-manifest/steps/apply-dev-defaults-lib/patch-web-resources.d.ts +19 -0
  234. package/dist/plugin-web-extension/feature-manifest/steps/apply-dev-defaults.d.ts +12 -0
  235. package/dist/plugin-web-extension/feature-manifest/steps/emit-manifest.d.ts +7 -0
  236. package/dist/plugin-web-extension/feature-manifest/steps/legacy-warnings.d.ts +5 -0
  237. package/dist/plugin-web-extension/feature-manifest/steps/patch-chromium-background.d.ts +15 -0
  238. package/dist/plugin-web-extension/feature-manifest/steps/patch-dev-content-script-manifest-paths.d.ts +11 -0
  239. package/dist/plugin-web-extension/feature-manifest/steps/patch-gecko-background.d.ts +15 -0
  240. package/dist/plugin-web-extension/feature-manifest/steps/patch-war.d.ts +15 -0
  241. package/dist/plugin-web-extension/feature-manifest/steps/persist-manifest.d.ts +4 -0
  242. package/dist/plugin-web-extension/feature-manifest/steps/update-manifest.d.ts +9 -0
  243. package/dist/plugin-web-extension/feature-scripts/contracts.d.ts +12 -0
  244. package/dist/plugin-web-extension/feature-scripts/index.d.ts +19 -0
  245. package/dist/plugin-web-extension/feature-scripts/messages.d.ts +7 -0
  246. package/dist/plugin-web-extension/feature-scripts/scripts-lib/utils.d.ts +2 -0
  247. package/dist/plugin-web-extension/feature-scripts/steps/add-content-script-wrapper/classic-concat-loader.d.ts +8 -0
  248. package/dist/plugin-web-extension/feature-scripts/steps/add-content-script-wrapper/content-script-wrapper.d.ts +13 -0
  249. package/dist/plugin-web-extension/feature-scripts/steps/add-content-script-wrapper/get-bridge-scripts.d.ts +6 -0
  250. package/dist/plugin-web-extension/feature-scripts/steps/add-content-script-wrapper/index.d.ts +11 -0
  251. package/dist/plugin-web-extension/feature-scripts/steps/add-public-path-runtime-module.d.ts +4 -0
  252. package/dist/plugin-web-extension/feature-scripts/steps/add-scripts.d.ts +9 -0
  253. package/dist/plugin-web-extension/feature-scripts/steps/keep-geturl-imports-native.d.ts +15 -0
  254. package/dist/plugin-web-extension/feature-scripts/steps/native-geturl-import-loader.d.ts +3 -0
  255. package/dist/plugin-web-extension/feature-scripts/steps/trace-runtime-loaded-files.d.ts +41 -0
  256. package/dist/plugin-web-extension/feature-scripts/steps/validate-content-script-syntax.d.ts +18 -0
  257. package/dist/plugin-web-extension/feature-web-resources/collect-entry-imports.d.ts +3 -0
  258. package/dist/plugin-web-extension/feature-web-resources/index.d.ts +19 -0
  259. package/dist/plugin-web-extension/feature-web-resources/steps/collect-content-entry-imports.d.ts +10 -0
  260. package/dist/plugin-web-extension/feature-web-resources/web-resources-lib/clean-matches.d.ts +7 -0
  261. package/dist/plugin-web-extension/feature-web-resources/web-resources-lib/generate-manifest.d.ts +11 -0
  262. package/dist/plugin-web-extension/feature-web-resources/web-resources-lib/messages.d.ts +10 -0
  263. package/dist/plugin-web-extension/feature-web-resources/web-resources-lib/resolve-war.d.ts +9 -0
  264. package/dist/plugin-web-extension/feature-web-resources/web-resources-lib/shared.d.ts +4 -0
  265. package/dist/plugin-web-extension/index.d.ts +9 -0
  266. package/dist/plugin-web-extension/shared/classic-concat.d.ts +18 -0
  267. package/dist/plugin-web-extension/shared/compilation-issues.d.ts +6 -0
  268. package/dist/plugin-web-extension/shared/manifest-fields-change-detector.d.ts +12 -0
  269. package/dist/plugin-web-extension/shared/paths.d.ts +26 -0
  270. package/dist/preview-entry.d.ts +3 -0
  271. package/dist/rslib.config.d.ts +3 -0
  272. package/dist/rspack-config.d.ts +4 -0
  273. package/dist/types.d.ts +406 -0
  274. package/package.json +3 -3
@@ -0,0 +1,406 @@
1
+ import { type LoaderContext as RspackLoaderContext, type RspackPluginInstance } from '@rspack/core';
2
+ /**
3
+ * Firefox-only `theme_experiment` manifest key.
4
+ * Not present in `@types/chrome`; declared here so the manifest pipeline can
5
+ * read it type-safely instead of casting `manifest as any`.
6
+ * @see https://developer.mozilla.org/en-US/docs/Mozilla/Add-ons/WebExtensions/manifest.json/theme_experiment
7
+ */
8
+ export interface ThemeExperiment {
9
+ stylesheet?: string;
10
+ stylesheets?: string[];
11
+ [key: string]: unknown;
12
+ }
13
+ export type ChromeManifest = Partial<chrome.runtime.ManifestV2> & Partial<chrome.runtime.ManifestV3> & {
14
+ browser_action?: {
15
+ theme_icons?: ThemeIcon[];
16
+ };
17
+ omnibox?: {
18
+ keyword?: string;
19
+ default_icon?: string | Record<string, string>;
20
+ };
21
+ theme_experiment?: ThemeExperiment;
22
+ };
23
+ export type Manifest = ChromeManifest;
24
+ export interface ThemeIcon {
25
+ light: string;
26
+ dark: string;
27
+ size?: number;
28
+ }
29
+ export type PluginInterface = {
30
+ manifestPath: string;
31
+ browser?: DevOptions['browser'];
32
+ includeList?: FilepathList;
33
+ transpilePackages?: string[];
34
+ };
35
+ export interface LoaderInterface extends RspackLoaderContext<LoaderInterface> {
36
+ manifestPath: string;
37
+ includeList?: FilepathList;
38
+ }
39
+ export type FilepathList = Record<string, string | string[] | undefined>;
40
+ export type ResourceType = 'script' | 'css' | 'html' | 'static' | 'staticSrc' | 'staticHref' | 'empty';
41
+ export interface LoaderContext {
42
+ resourcePath: string;
43
+ emitFile: (name: string, content: string) => void;
44
+ emitWarning?: (error: Error | string) => void;
45
+ getOptions: () => {
46
+ test: string;
47
+ manifestPath: string;
48
+ browser?: DevOptions['browser'];
49
+ includeList?: FilepathList;
50
+ mode: string;
51
+ };
52
+ }
53
+ export interface JsFramework {
54
+ plugins: RspackPluginInstance[] | undefined;
55
+ loaders: Record<string, any>[] | undefined;
56
+ alias: Record<string, string> | undefined;
57
+ }
58
+ import { Configuration } from '@rspack/core';
59
+ import type { CompanionExtensionsConfig } from './plugin-special-folders/folder-extensions/types';
60
+ export type BrowserType = 'chrome' | 'edge' | 'firefox' | 'chromium' | 'brave' | 'opera' | 'vivaldi' | 'yandex' | 'waterfox' | 'librewolf' | 'chromium-based' | 'gecko-based' | 'firefox-based' | 'safari' | 'webkit-based';
61
+ export interface BrowserOptionsBase {
62
+ noOpen?: boolean;
63
+ profile?: string | false;
64
+ /**
65
+ * Opt-in persistent managed profile for development.
66
+ * Defaults to false (ephemeral temp profiles are used).
67
+ */
68
+ persistProfile?: boolean;
69
+ /**
70
+ * Keep the managed profile and its changes across runs (persistent `dev`
71
+ * profile, skipped by cleanup). Seeded once when combined with
72
+ * `copyFromProfile`.
73
+ */
74
+ keepProfileChanges?: boolean;
75
+ /**
76
+ * Seed the managed profile as a copy of this profile directory on first
77
+ * creation.
78
+ */
79
+ copyFromProfile?: string;
80
+ startingUrl?: string;
81
+ browser: BrowserType;
82
+ }
83
+ export interface ChromiumOptions extends BrowserOptionsBase {
84
+ browser: 'chromium-based';
85
+ chromiumBinary?: string;
86
+ }
87
+ export interface GeckoOptions extends BrowserOptionsBase {
88
+ browser: 'gecko-based';
89
+ geckoBinary?: string;
90
+ }
91
+ export interface SafariOptions extends BrowserOptionsBase {
92
+ browser: 'webkit-based';
93
+ safariBinary?: string;
94
+ /** Override the Safari app name (defaults to the manifest name). */
95
+ appName?: string;
96
+ /** User-owned bundle identifier (defaults to a dev.extensionjs.* id). */
97
+ bundleId?: string;
98
+ /** Generate the macOS-only Xcode project (default true). */
99
+ macOsOnly?: boolean;
100
+ }
101
+ /**
102
+ * Safari identity/packaging options resolved by develop (CLI flags merged
103
+ * with extension.config.js `browser.safari`) and forwarded to the packager
104
+ * the CLI injects.
105
+ */
106
+ export interface SafariPackagerOverrides {
107
+ appName?: string;
108
+ bundleId?: string;
109
+ macOsOnly?: boolean;
110
+ forceRegenerate?: boolean;
111
+ safariBinary?: string;
112
+ }
113
+ export interface NonBinaryOptions extends BrowserOptionsBase {
114
+ browser: Exclude<BrowserType, 'chromium-based' | 'gecko-based' | 'webkit-based'>;
115
+ }
116
+ export interface DevOptions extends BrowserOptionsBase {
117
+ mode: 'development' | 'production' | 'none';
118
+ polyfill?: boolean;
119
+ port?: string | number | undefined;
120
+ /**
121
+ * Host to bind the dev server to.
122
+ * Use '0.0.0.0' for Docker/devcontainer environments.
123
+ * Defaults to '127.0.0.1'.
124
+ */
125
+ host?: string;
126
+ /**
127
+ * Connectable host the browser (HMR client + control-bridge producer) dials,
128
+ * when it differs from the bind `host` (e.g. a remote/devcontainer). Defaults
129
+ * to the bind host, or 127.0.0.1 when bound to a wildcard like '0.0.0.0'.
130
+ */
131
+ publicHost?: string;
132
+ install?: boolean;
133
+ /**
134
+ * Companion extensions (load-only) for this command.
135
+ */
136
+ extensions?: CompanionExtensionsConfig;
137
+ /**
138
+ * Skip launching the browser (dev server still starts).
139
+ */
140
+ noBrowser?: boolean;
141
+ preferences?: Record<string, unknown>;
142
+ browserFlags?: string[];
143
+ excludeBrowserFlags?: string[];
144
+ chromiumBinary?: ChromiumOptions['chromiumBinary'];
145
+ geckoBinary?: GeckoOptions['geckoBinary'];
146
+ firefoxBinary?: GeckoOptions['geckoBinary'];
147
+ safariBinary?: SafariOptions['safariBinary'];
148
+ zip?: boolean;
149
+ zipSource?: boolean;
150
+ zipFilename?: string;
151
+ logLevel?: 'off' | 'error' | 'warn' | 'info' | 'debug' | 'trace' | 'all';
152
+ logContexts?: ('background' | 'content' | 'page' | 'sidebar' | 'popup' | 'options' | 'devtools')[];
153
+ logFormat?: 'pretty' | 'json' | 'ndjson';
154
+ logTimestamps?: boolean;
155
+ logColor?: boolean;
156
+ logUrl?: string;
157
+ logTab?: number | string;
158
+ hashContentScripts?: boolean;
159
+ appName?: SafariOptions['appName'];
160
+ bundleId?: SafariOptions['bundleId'];
161
+ macOsOnly?: SafariOptions['macOsOnly'];
162
+ forceRegenerate?: boolean;
163
+ safariPackager?: (distPath: string, mode: 'full' | 'resync', overrides?: SafariPackagerOverrides) => Promise<void>;
164
+ }
165
+ export interface BuildOptions {
166
+ browser: BrowserOptionsBase['browser'];
167
+ chromiumBinary?: ChromiumOptions['chromiumBinary'];
168
+ geckoBinary?: GeckoOptions['geckoBinary'];
169
+ firefoxBinary?: GeckoOptions['geckoBinary'];
170
+ safariBinary?: SafariOptions['safariBinary'];
171
+ /**
172
+ * Companion extensions (load-only) for this command.
173
+ */
174
+ extensions?: CompanionExtensionsConfig;
175
+ zipFilename?: string;
176
+ zip?: boolean;
177
+ zipSource?: boolean;
178
+ polyfill?: boolean;
179
+ silent?: boolean;
180
+ /**
181
+ * Override the bundler mode (and NODE_ENV). Defaults to 'production' to
182
+ * preserve historical behavior. Setting 'development' is useful for
183
+ * staging/QA dists that should still pass through the bundler's debug
184
+ * pipeline (sourcemaps, looser minification). Mirrors `vite build --mode`
185
+ * and `webpack --mode`.
186
+ */
187
+ mode?: 'development' | 'production' | 'none';
188
+ /**
189
+ * [internal] Auto-install project dependencies when missing.
190
+ */
191
+ install?: boolean;
192
+ failOnWarning?: boolean;
193
+ exitOnError?: boolean;
194
+ /**
195
+ * Internal: the command stamped into ready.json/events.ndjson. Defaults to
196
+ * 'build'; `extension start` passes 'start' for its build phase so the
197
+ * receipt names the command the user actually ran.
198
+ */
199
+ metadataCommand?: 'dev' | 'start' | 'preview' | 'build';
200
+ appName?: SafariOptions['appName'];
201
+ bundleId?: SafariOptions['bundleId'];
202
+ macOsOnly?: SafariOptions['macOsOnly'];
203
+ forceRegenerate?: boolean;
204
+ safariPackager?: (distPath: string, mode: 'full' | 'resync', overrides?: SafariPackagerOverrides) => Promise<void>;
205
+ }
206
+ export interface PreviewOptions extends BrowserOptionsBase {
207
+ mode: 'production';
208
+ outputPath?: string;
209
+ /**
210
+ * Internal metadata command override used by start->preview delegation.
211
+ * (Full command union so the WebpackConfigOptions intersection with
212
+ * BuildOptions.metadataCommand doesn't narrow the field.)
213
+ */
214
+ metadataCommand?: 'dev' | 'start' | 'preview' | 'build';
215
+ chromiumBinary?: ChromiumOptions['chromiumBinary'];
216
+ geckoBinary?: GeckoOptions['geckoBinary'];
217
+ firefoxBinary?: GeckoOptions['geckoBinary'];
218
+ /**
219
+ * Companion extensions (load-only) for this command.
220
+ */
221
+ extensions?: CompanionExtensionsConfig;
222
+ /**
223
+ * Skip launching the browser (no preview window).
224
+ */
225
+ noBrowser?: boolean;
226
+ /**
227
+ * Internal auto-generated instance ID, not user-configurable.
228
+ */
229
+ instanceId?: string;
230
+ /**
231
+ * Dry run mode (no browser launch) for diagnostics.
232
+ */
233
+ dryRun?: boolean;
234
+ port?: string | number;
235
+ /**
236
+ * Host to bind the dev server to.
237
+ * Use '0.0.0.0' for Docker/devcontainer environments.
238
+ * Defaults to '127.0.0.1'.
239
+ */
240
+ host?: string;
241
+ /**
242
+ * Connectable host the browser (HMR client + control-bridge producer) dials,
243
+ * when it differs from the bind `host` (e.g. a remote/devcontainer). Defaults
244
+ * to the bind host, or 127.0.0.1 when bound to a wildcard like '0.0.0.0'.
245
+ */
246
+ publicHost?: string;
247
+ logLevel?: 'off' | 'error' | 'warn' | 'info' | 'debug' | 'trace' | 'all';
248
+ logContexts?: ('background' | 'content' | 'page' | 'sidebar' | 'popup' | 'options' | 'devtools')[];
249
+ logFormat?: 'pretty' | 'json' | 'ndjson';
250
+ logTimestamps?: boolean;
251
+ logColor?: boolean;
252
+ logUrl?: string;
253
+ logTab?: number | string;
254
+ }
255
+ export interface StartOptions extends BrowserOptionsBase {
256
+ mode: 'production';
257
+ polyfill?: boolean;
258
+ chromiumBinary?: ChromiumOptions['chromiumBinary'];
259
+ geckoBinary?: GeckoOptions['geckoBinary'];
260
+ firefoxBinary?: GeckoOptions['geckoBinary'];
261
+ /**
262
+ * Companion extensions (load-only) for this command.
263
+ */
264
+ extensions?: CompanionExtensionsConfig;
265
+ /**
266
+ * [internal] Auto-install project dependencies when missing.
267
+ */
268
+ install?: boolean;
269
+ /**
270
+ * Skip launching the browser (build still runs).
271
+ */
272
+ noBrowser?: boolean;
273
+ port?: string | number;
274
+ /**
275
+ * Host to bind the dev server to.
276
+ * Use '0.0.0.0' for Docker/devcontainer environments.
277
+ * Defaults to '127.0.0.1'.
278
+ */
279
+ host?: string;
280
+ /**
281
+ * Connectable host the browser (HMR client + control-bridge producer) dials,
282
+ * when it differs from the bind `host` (e.g. a remote/devcontainer). Defaults
283
+ * to the bind host, or 127.0.0.1 when bound to a wildcard like '0.0.0.0'.
284
+ */
285
+ publicHost?: string;
286
+ logLevel?: 'off' | 'error' | 'warn' | 'info' | 'debug' | 'trace' | 'all';
287
+ logContexts?: ('background' | 'content' | 'page' | 'sidebar' | 'popup' | 'options' | 'devtools')[];
288
+ logFormat?: 'pretty' | 'json' | 'ndjson';
289
+ logTimestamps?: boolean;
290
+ logColor?: boolean;
291
+ logUrl?: string;
292
+ logTab?: number | string;
293
+ }
294
+ export interface BrowserConfig extends BrowserOptionsBase {
295
+ browserFlags?: string[];
296
+ excludeBrowserFlags?: string[];
297
+ preferences?: Record<string, unknown>;
298
+ chromiumBinary?: ChromiumOptions['chromiumBinary'];
299
+ geckoBinary?: GeckoOptions['geckoBinary'];
300
+ firefoxBinary?: GeckoOptions['geckoBinary'];
301
+ safariBinary?: SafariOptions['safariBinary'];
302
+ appName?: SafariOptions['appName'];
303
+ bundleId?: SafariOptions['bundleId'];
304
+ macOsOnly?: SafariOptions['macOsOnly'];
305
+ /**
306
+ * Companion extensions (load-only) scoped to a browser config.
307
+ * Useful for per-browser store URLs or local unpacked extensions.
308
+ */
309
+ extensions?: CompanionExtensionsConfig;
310
+ }
311
+ export type OutputConfig = {
312
+ clean: boolean;
313
+ path: string;
314
+ };
315
+ export interface CommonWebpackOptions {
316
+ output: OutputConfig;
317
+ preferences?: Record<string, unknown>;
318
+ browserFlags?: string[];
319
+ excludeBrowserFlags?: string[];
320
+ /**
321
+ * Workspace/dependency packages that should be transpiled from source.
322
+ * Useful for monorepos where package exports point to TS/TSX files.
323
+ */
324
+ transpilePackages?: string[];
325
+ perfBudgets?: Partial<Record<import('./plugin-perf-budgets').AssetCategory, number>>;
326
+ /**
327
+ * Companion extensions (load-only). Each entry must be an unpacked extension root
328
+ * containing a manifest.json. These are loaded alongside the user extension in
329
+ * dev/preview/start (and can also be applied to build for packaging scenarios).
330
+ */
331
+ extensions?: CompanionExtensionsConfig;
332
+ /**
333
+ * Internal auto-generated instance ID, not user-configurable
334
+ */
335
+ instanceId?: string;
336
+ /**
337
+ * Agent-bridge control channel (Slice 1). Injected by dev-server so the
338
+ * PlaywrightPlugin can advertise them in ready.json (agent bridge).
339
+ * Not user-configurable.
340
+ */
341
+ controlPort?: number | null;
342
+ controlPath?: string;
343
+ logsPath?: string;
344
+ }
345
+ /**
346
+ * Canonical options type for webpack-config consumers.
347
+ * Accepts any of the command option fields (dev/preview/start/build),
348
+ * while requiring browser and mode, and the common output settings.
349
+ *
350
+ * `mode` is omitted from the partial intersection because PreviewOptions
351
+ * and StartOptions narrow it to `'production'`. Without the omit the
352
+ * outer override below becomes ineffective: TypeScript intersects the
353
+ * outer `'development' | 'production' | 'none'` with the inner
354
+ * `'production'` and the input is locked back to `'production'`.
355
+ */
356
+ export type WebpackConfigOptions = CommonWebpackOptions & Omit<Partial<DevOptions & PreviewOptions & StartOptions & BuildOptions>, 'mode'> & {
357
+ browser: BrowserType;
358
+ mode: 'development' | 'production' | 'none';
359
+ browsersPlugin?: import('./plugin-browsers').RunnerPlugin;
360
+ };
361
+ export interface FileConfig {
362
+ browser?: {
363
+ [K in BrowserType]?: BrowserConfig;
364
+ };
365
+ commands?: {
366
+ dev?: Pick<DevOptions, 'browser' | 'profile' | 'chromiumBinary' | 'geckoBinary' | 'noOpen' | 'noBrowser' | 'polyfill'> & Pick<DevOptions, 'logLevel' | 'logContexts' | 'logFormat' | 'logTimestamps' | 'logColor' | 'logUrl' | 'logTab' | 'hashContentScripts'> & {
367
+ browserFlags?: string[];
368
+ excludeBrowserFlags?: string[];
369
+ preferences?: Record<string, unknown>;
370
+ persistProfile?: boolean;
371
+ extensions?: CompanionExtensionsConfig;
372
+ transpilePackages?: string[];
373
+ };
374
+ start?: Pick<StartOptions, 'browser' | 'profile' | 'chromiumBinary' | 'geckoBinary' | 'polyfill' | 'noBrowser' | 'port' | 'host' | 'publicHost' | 'logLevel' | 'logContexts' | 'logFormat' | 'logTimestamps' | 'logColor' | 'logUrl' | 'logTab'> & {
375
+ browserFlags?: string[];
376
+ excludeBrowserFlags?: string[];
377
+ preferences?: Record<string, unknown>;
378
+ persistProfile?: boolean;
379
+ extensions?: CompanionExtensionsConfig;
380
+ transpilePackages?: string[];
381
+ };
382
+ preview?: Pick<PreviewOptions, 'browser' | 'profile' | 'chromiumBinary' | 'geckoBinary' | 'noBrowser' | 'port' | 'host' | 'publicHost' | 'logLevel' | 'logContexts' | 'logFormat' | 'logTimestamps' | 'logColor' | 'logUrl' | 'logTab'> & {
383
+ browserFlags?: string[];
384
+ excludeBrowserFlags?: string[];
385
+ preferences?: Record<string, unknown>;
386
+ persistProfile?: boolean;
387
+ extensions?: CompanionExtensionsConfig;
388
+ transpilePackages?: string[];
389
+ };
390
+ build?: Pick<BuildOptions, 'browser' | 'zipFilename' | 'zip' | 'zipSource' | 'polyfill'> & {
391
+ extensions?: CompanionExtensionsConfig;
392
+ transpilePackages?: string[];
393
+ };
394
+ };
395
+ /**
396
+ * Companion extensions (load-only) applied to commands unless overridden per-command.
397
+ * This is merged into `commands.dev|start|preview|build` by the config loader.
398
+ */
399
+ extensions?: CompanionExtensionsConfig;
400
+ /**
401
+ * Default transpile allowlist for all commands.
402
+ * Per-command `commands.<name>.transpilePackages` overrides this value.
403
+ */
404
+ transpilePackages?: string[];
405
+ config?: (config: Configuration) => Configuration;
406
+ }
package/package.json CHANGED
@@ -17,12 +17,12 @@
17
17
  },
18
18
  "./preview": {
19
19
  "development": "./preview-entry.ts",
20
- "types": "./dist/preview.d.ts",
20
+ "types": "./dist/preview-entry.d.ts",
21
21
  "import": "./dist/preview.mjs"
22
22
  },
23
23
  "./bridge": {
24
24
  "development": "./bridge-entry.ts",
25
- "types": "./dist/bridge.d.ts",
25
+ "types": "./dist/bridge-entry.d.ts",
26
26
  "import": "./dist/bridge.mjs"
27
27
  },
28
28
  "./package.json": "./package.json"
@@ -34,7 +34,7 @@
34
34
  "runtime"
35
35
  ],
36
36
  "name": "extension-develop",
37
- "version": "4.0.11",
37
+ "version": "4.0.12",
38
38
  "description": "Develop, build, preview, and package Extension.js projects.",
39
39
  "author": {
40
40
  "name": "Cezar Augusto",