extension-develop 4.1.19 → 4.1.21
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/672~0.mjs +24 -1
- package/dist/747~0.mjs +4 -2
- package/dist/832~0.mjs +26 -6
- package/dist/840~0.mjs +507 -26
- package/dist/950~0.mjs +18 -26
- package/dist/dev-server/control-bridge/actions-file.d.ts +0 -1
- package/dist/dev-server/control-bridge/broker.d.ts +6 -4
- package/dist/dev-server/control-bridge/contracts.d.ts +1 -1
- package/dist/dev-server/control-bridge/logs-file.d.ts +0 -1
- package/dist/dev-server/control-bridge/producer-runtime.d.ts +1 -2
- package/dist/dev-server~0.mjs +19 -5
- package/dist/extension-js-devtools/edge/manifest.json +0 -1
- package/dist/lib/addon-lint.d.ts +4 -1
- package/dist/lib/chunk-dependency-provenance.d.ts +14 -0
- package/dist/lib/constants.d.ts +1 -0
- package/dist/lib/ensure-develop-artifacts.d.ts +0 -7
- package/dist/lib/has-dependency.d.ts +0 -5
- package/dist/lib/manifest-utils.d.ts +2 -0
- package/dist/lib/merge-options.d.ts +0 -40
- package/dist/lib/messages.d.ts +4 -4
- package/dist/lib/package-manager.d.ts +2 -0
- package/dist/lib/project-manifest.d.ts +0 -1
- package/dist/lib/session-paths.d.ts +0 -22
- package/dist/plugin-browsers/index.d.ts +0 -7
- package/dist/plugin-browsers/safari-dev-plugin.d.ts +4 -0
- package/dist/plugin-compatibility/feature-polyfill.d.ts +0 -4
- package/dist/plugin-compilation/env.d.ts +2 -5
- package/dist/plugin-css/css-lib/dead-url-refs.d.ts +0 -6
- package/dist/plugin-css/css-lib/inline-content-script-css.d.ts +0 -15
- package/dist/plugin-css/css-lib/resolve-css-asset.d.ts +0 -8
- package/dist/plugin-js-frameworks/js-frameworks-lib/messages.d.ts +1 -0
- package/dist/plugin-js-frameworks/js-tools/solid.d.ts +3 -0
- package/dist/plugin-js-frameworks/js-tools/typescript.d.ts +16 -0
- package/dist/plugin-perf-budgets/categorize.d.ts +2 -1
- package/dist/plugin-perf-budgets/index.d.ts +1 -22
- package/dist/plugin-playwright/index.d.ts +3 -2
- package/dist/plugin-reload/index.d.ts +1 -1
- package/dist/plugin-reload/reload-dispatch.d.ts +6 -3
- package/dist/plugin-reload/steps/setup-chunk-loading-target.d.ts +0 -13
- package/dist/plugin-special-folders/index.d.ts +0 -9
- package/dist/plugin-web-extension/feature-html/html-lib/utils.d.ts +0 -1
- package/dist/plugin-web-extension/feature-html/index.d.ts +0 -27
- package/dist/plugin-web-extension/feature-icons/index.d.ts +0 -12
- package/dist/plugin-web-extension/feature-json/index.d.ts +0 -9
- package/dist/plugin-web-extension/feature-locales/index.d.ts +0 -4
- package/dist/plugin-web-extension/feature-manifest/index.d.ts +0 -10
- package/dist/plugin-web-extension/feature-manifest/manifest-lib/filter-key-edge.d.ts +5 -0
- package/dist/plugin-web-extension/feature-manifest/manifest-lib/filter-keys-safari.d.ts +11 -0
- package/dist/plugin-web-extension/feature-manifest/manifest-lib/gecko-data-collection.d.ts +0 -12
- package/dist/plugin-web-extension/feature-manifest/manifest-lib/legacy-paths.d.ts +0 -13
- package/dist/plugin-web-extension/feature-manifest/manifest-lib/sanitize-fatal-shapes.d.ts +0 -36
- package/dist/plugin-web-extension/feature-manifest/messages.d.ts +20 -0
- package/dist/plugin-web-extension/feature-manifest/steps/apply-dev-defaults-lib/dev-injected-hosts.d.ts +0 -5
- package/dist/plugin-web-extension/feature-manifest/steps/apply-dev-defaults-lib/emitted-evidence.d.ts +22 -0
- package/dist/plugin-web-extension/feature-manifest/steps/apply-dev-defaults-lib/patch-background.d.ts +9 -0
- package/dist/plugin-web-extension/feature-manifest/steps/apply-dev-defaults-lib/patch-web-resources.d.ts +7 -16
- package/dist/plugin-web-extension/feature-manifest/steps/apply-dev-defaults.d.ts +6 -2
- package/dist/plugin-web-extension/feature-manifest/steps/patch-war.d.ts +0 -5
- package/dist/plugin-web-extension/feature-manifest/steps/patch-webkit-background.d.ts +2 -0
- package/dist/plugin-web-extension/feature-manifest/steps/update-manifest.d.ts +1 -0
- package/dist/plugin-web-extension/feature-manifest/steps/warn-gecko-unsupported-apis.d.ts +119 -26
- package/dist/plugin-web-extension/feature-scripts/index.d.ts +0 -10
- package/dist/plugin-web-extension/feature-scripts/messages.d.ts +5 -0
- package/dist/plugin-web-extension/feature-scripts/steps/native-geturl-import-loader.d.ts +0 -3
- package/dist/plugin-web-extension/feature-scripts/steps/warn-page-context-worker.d.ts +5 -0
- package/dist/plugin-web-extension/feature-web-resources/collect-entry-imports.d.ts +1 -0
- package/dist/plugin-web-extension/feature-web-resources/index.d.ts +0 -10
- package/dist/plugin-web-extension/feature-web-resources/web-resources-lib/clean-matches.d.ts +0 -6
- package/dist/plugin-web-extension/feature-web-resources/web-resources-lib/messages.d.ts +1 -0
- package/dist/plugin-web-extension/feature-web-resources/web-resources-lib/unreachable-resources.d.ts +9 -0
- package/dist/plugin-web-extension/shared/discover-devtools-panels.d.ts +0 -6
- package/dist/plugin-web-extension/shared/paths.d.ts +0 -1
- package/dist/rspack-config.d.ts +1 -1
- package/dist/rspack-config~0.mjs +1074 -574
- package/package.json +1 -1
- package/runtime/process-shim.cjs +2 -0
package/dist/672~0.mjs
CHANGED
|
@@ -104,6 +104,16 @@ function findDroppedVendorKeys(manifest, browser) {
|
|
|
104
104
|
walk(manifest, '');
|
|
105
105
|
return found;
|
|
106
106
|
}
|
|
107
|
+
function isValidManifestVersion(value) {
|
|
108
|
+
return 2 === value || 3 === value;
|
|
109
|
+
}
|
|
110
|
+
function findPrefixedManifestVersionKeys(manifest) {
|
|
111
|
+
if (!manifest || 'object' != typeof manifest) return [];
|
|
112
|
+
return Object.keys(manifest).filter((key)=>{
|
|
113
|
+
const colon = key.indexOf(':');
|
|
114
|
+
return colon > 0 && 'manifest_version' === key.substring(colon + 1);
|
|
115
|
+
});
|
|
116
|
+
}
|
|
107
117
|
const THEME_DISQUALIFYING_KEYS = [
|
|
108
118
|
'background',
|
|
109
119
|
"content_scripts",
|
|
@@ -198,6 +208,19 @@ function entrySplitAcrossInitialFiles(entryName, surface, ownFile, extraFiles) {
|
|
|
198
208
|
lines.push(`Only a user-set optimization.splitChunks cache group does this. Use chunks: 'async' and import() the shared module: ${pintor.blue(SPLIT_ENTRY_RECIPE_URL)}`);
|
|
199
209
|
return lines.join('\n');
|
|
200
210
|
}
|
|
211
|
+
const PAGE_CONTEXT_SURFACES = {
|
|
212
|
+
content_script: "a content script",
|
|
213
|
+
script: "an injected script"
|
|
214
|
+
};
|
|
215
|
+
function workerStartedFromPageContext(assetName, surface) {
|
|
216
|
+
const lines = [];
|
|
217
|
+
lines.push(`${assetName} starts a worker from an extension URL, which the browser refuses in ${PAGE_CONTEXT_SURFACES[surface]}.`);
|
|
218
|
+
lines.push(`${pintor.gray('SCRIPT')} ${pintor.underline(assetName)}`);
|
|
219
|
+
lines.push("The worker file ships, but a worker script must be same-origin with the document that starts it, and this document is the page, so the worker never runs. Chromium throws a SecurityError and Firefox fires an error event on the worker.");
|
|
220
|
+
lines.push(`- Fetch the worker file first and start the worker from a blob: ${pintor.blue("new Worker(URL.createObjectURL(new Blob([await (await fetch(chrome.runtime.getURL('worker.js'))).text()])))")}`);
|
|
221
|
+
lines.push("- Or start the worker from an extension page, where the document is the extension and this spelling works as written.");
|
|
222
|
+
return lines.join('\n');
|
|
223
|
+
}
|
|
201
224
|
function fetchedFileDependencyMissing(assetName, literal, expectedPath) {
|
|
202
225
|
const lines = [];
|
|
203
226
|
lines.push(`${assetName} loads '${literal}' at runtime (fetch/XMLHttpRequest/new URL), but the file isn't in the output.`);
|
|
@@ -243,4 +266,4 @@ function compiledSourceSpelling(assetName, api, literal, emittedPath) {
|
|
|
243
266
|
lines.push(`Reference the emitted path: ${pintor.blue(emittedPath)}.`);
|
|
244
267
|
return lines.join('\n');
|
|
245
268
|
}
|
|
246
|
-
export { compiledSourceSpelling, entrySplitAcrossInitialFiles, fetchedFileDependencyMissing, filterKeysForThisBrowser, findDroppedVendorKeys, getURLDependencyMissing, importScriptsDependencyMissing, injectedCompiledSourceLiteral, injectedFileDependencyMissing, isStaticTheme, isStaticThemeSource, reservedScriptsFolder, runtimeSetSurfaceDependencyMissing, staticImportDependencyMissing };
|
|
269
|
+
export { compiledSourceSpelling, entrySplitAcrossInitialFiles, fetchedFileDependencyMissing, filterKeysForThisBrowser, findDroppedVendorKeys, findPrefixedManifestVersionKeys, getURLDependencyMissing, importScriptsDependencyMissing, injectedCompiledSourceLiteral, injectedFileDependencyMissing, isStaticTheme, isStaticThemeSource, isValidManifestVersion, reservedScriptsFolder, runtimeSetSurfaceDependencyMissing, staticImportDependencyMissing, workerStartedFromPageContext };
|
package/dist/747~0.mjs
CHANGED
|
@@ -69,10 +69,12 @@ function toRuntimeStylesheetModule(css) {
|
|
|
69
69
|
`var __extjsCssText = ${JSON.stringify(css)};`,
|
|
70
70
|
'function __extjsExtensionRoot() {',
|
|
71
71
|
' try {',
|
|
72
|
-
'
|
|
72
|
+
' var b = globalThis.browser;',
|
|
73
|
+
' if (typeof b === "object" && b && b.runtime && typeof b.runtime.getURL === "function") return String(b.runtime.getURL("/"));',
|
|
73
74
|
' } catch (error) {}',
|
|
74
75
|
' try {',
|
|
75
|
-
'
|
|
76
|
+
' var c = globalThis.chrome;',
|
|
77
|
+
' if (typeof c === "object" && c && c.runtime && typeof c.runtime.getURL === "function") return String(c.runtime.getURL("/"));',
|
|
76
78
|
' } catch (error) {}',
|
|
77
79
|
' try {',
|
|
78
80
|
' var base = (typeof globalThis === "object" && globalThis && globalThis.__EXTJS_EXTENSION_BASE__) ? String(globalThis.__EXTJS_EXTENSION_BASE__) : "";',
|
package/dist/832~0.mjs
CHANGED
|
@@ -19,7 +19,7 @@ import * as __rspack_external_node_fs_1b05aee1 from "node:fs";
|
|
|
19
19
|
import * as __rspack_external_node_os_4f3c9d58 from "node:os";
|
|
20
20
|
import * as __rspack_external_node_path_806ed179 from "node:path";
|
|
21
21
|
import * as __rspack_external_node_vm_ef240610 from "node:vm";
|
|
22
|
-
var package_namespaceObject = /*#__PURE__*/ JSON.parse('{"rE":"4.1.
|
|
22
|
+
var package_namespaceObject = /*#__PURE__*/ JSON.parse('{"rE":"4.1.21","El":{"@prefresh/core":"1.5.9","@prefresh/utils":"1.2.1","@rspack/core":"^2.2.3","@rspack/dev-server":"2.1.0","@rspack/plugin-preact-refresh":"2.0.1","@rspack/plugin-react-refresh":"2.0.2","@vue/compiler-sfc":"3.5.26","acorn":"^8.16.0","browser-extension-manifest-fields":"^3.0.1","case-sensitive-paths-webpack-plugin":"^2.4.0","content-security-policy-parser":"^0.6.0","cross-spawn":"^7.0.6","dotenv":"^17.2.3","es-module-lexer":"^3.0.2","extension-from-store":"^0.2.5","fflate":"^0.8.3","go-git-it":"^5.1.5","ignore":"^7.0.5","less":"4.6.7","less-loader":"13.0.0","parse5-utilities":"^1.0.0","pintor":"0.3.0","postcss":"8.5.23","postcss-loader":"8.2.1","postcss-preset-env":"11.1.1","postcss-scss":"4.0.9","preact":"10.27.3","prefers-yarn":"2.0.1","react-refresh":"0.18.0","sass-loader":"17.0.0","schema-utils":"^4.3.3","svelte-loader":"3.2.4","tiny-glob":"^0.2.9","vue":"3.5.26","vue-loader":"17.4.2","webextension-polyfill":"^0.12.0","webpack-merge":"^6.0.1","webpack-target-webextension":"^2.1.3","ws":"^8.20.1"}}');
|
|
23
23
|
const preloadedEnvKeys = new Set();
|
|
24
24
|
function getPreloadedEnvKeys() {
|
|
25
25
|
return preloadedEnvKeys;
|
|
@@ -682,7 +682,8 @@ function createPlaywrightMetadataWriter(options) {
|
|
|
682
682
|
}
|
|
683
683
|
if ('string' == typeof prev.executorAttachedAt) {
|
|
684
684
|
payload.executorAttachedAt = prev.executorAttachedAt;
|
|
685
|
-
payload.runtime = 'attached';
|
|
685
|
+
payload.runtime = 'detached' === prev.runtime ? 'detached' : 'attached';
|
|
686
|
+
if ('string' == typeof prev.executorDetachedAt) payload.executorDetachedAt = prev.executorDetachedAt;
|
|
686
687
|
}
|
|
687
688
|
if ('starting' !== status && 'string' == typeof prev.extensionLoadRefusedAt) {
|
|
688
689
|
const target = payload;
|
|
@@ -738,14 +739,25 @@ function createPlaywrightMetadataWriter(options) {
|
|
|
738
739
|
compiledAt: null
|
|
739
740
|
});
|
|
740
741
|
},
|
|
741
|
-
writeShutdown () {
|
|
742
|
+
writeShutdown (message = 'the dev session ended (watch closed)') {
|
|
742
743
|
if (foreignLiveDevSession) return;
|
|
743
744
|
try {
|
|
744
745
|
if (!__rspack_external_node_fs_1b05aee1.existsSync(readyPath)) return;
|
|
745
746
|
const prev = JSON.parse(__rspack_external_node_fs_1b05aee1.readFileSync(readyPath, 'utf-8'));
|
|
746
747
|
prev.status = 'stopped';
|
|
747
748
|
prev.code = 'shutdown';
|
|
748
|
-
prev.message =
|
|
749
|
+
prev.message = message;
|
|
750
|
+
prev.ts = nowISO();
|
|
751
|
+
writeJsonAtomic(readyPath, prev);
|
|
752
|
+
} catch {}
|
|
753
|
+
},
|
|
754
|
+
stampExecutorDetached () {
|
|
755
|
+
try {
|
|
756
|
+
if (!__rspack_external_node_fs_1b05aee1.existsSync(readyPath)) return;
|
|
757
|
+
const prev = JSON.parse(__rspack_external_node_fs_1b05aee1.readFileSync(readyPath, 'utf-8'));
|
|
758
|
+
if ('string' != typeof prev.executorAttachedAt) return;
|
|
759
|
+
prev.runtime = 'detached';
|
|
760
|
+
prev.executorDetachedAt = nowISO();
|
|
749
761
|
prev.ts = nowISO();
|
|
750
762
|
writeJsonAtomic(readyPath, prev);
|
|
751
763
|
} catch {}
|
|
@@ -754,9 +766,14 @@ function createPlaywrightMetadataWriter(options) {
|
|
|
754
766
|
try {
|
|
755
767
|
if (!__rspack_external_node_fs_1b05aee1.existsSync(readyPath)) return;
|
|
756
768
|
const prev = JSON.parse(__rspack_external_node_fs_1b05aee1.readFileSync(readyPath, 'utf-8'));
|
|
757
|
-
if ('string' == typeof prev.executorAttachedAt) return;
|
|
758
|
-
prev.executorAttachedAt = nowISO();
|
|
759
769
|
prev.runtime = 'attached';
|
|
770
|
+
delete prev.executorDetachedAt;
|
|
771
|
+
if ('string' == typeof prev.executorAttachedAt) {
|
|
772
|
+
prev.ts = nowISO();
|
|
773
|
+
writeJsonAtomic(readyPath, prev);
|
|
774
|
+
return;
|
|
775
|
+
}
|
|
776
|
+
prev.executorAttachedAt = nowISO();
|
|
760
777
|
if ('string' == typeof prev.extensionLoadRefusedAt) {
|
|
761
778
|
delete prev.extensionLoadRefusedAt;
|
|
762
779
|
delete prev.extensionLoadRefusedReason;
|
|
@@ -1854,5 +1871,8 @@ async function extensionPreview(pathOrRemoteUrl, previewOptions, browserLauncher
|
|
|
1854
1871
|
if (!browserLauncher) throw new Error("extensionPreview requires a browserLauncher callback. The browser launch code has moved to programs/extension/browsers/.");
|
|
1855
1872
|
await browserLauncher(resolvedOpts);
|
|
1856
1873
|
metadata.writeReady();
|
|
1874
|
+
process.once('exit', ()=>{
|
|
1875
|
+
metadata.writeShutdown(`the ${metadataCommand} session ended`);
|
|
1876
|
+
});
|
|
1857
1877
|
}
|
|
1858
1878
|
export { BUILD_COMMAND_DEFAULTS, DEV_COMMAND_DEFAULTS, PlaywrightPlugin, START_BUILD_DEFAULTS, assertNoManagedDependencyConflicts, autoExitForceKill, autoExitModeEnabled, autoExitTriggered, browserRunnerDisabled, bundlerFatalError, bundlerRecompiling, computeExtensionsToLoad, createPlaywrightMetadataWriter, devServerRestarting, devServerStartTimeout, extensionJsRunnerError, extensionPreview, getPreloadedEnvKeys, getSessionRunId, getSpecialFoldersDataForCompiler, getSpecialFoldersDataForProjectRoot, loadBrowserConfig, loadCommandConfig, loadCustomConfig, loadProjectConfigDefaults, mergeOptionLayers, messages_ready, noEntrypointsDetected, package_namespaceObject, portInUse, publicFolderShadowed, publicMustBeAtProjectRoot, resolveCompanionExtensionDirs, resolveCompanionExtensionsConfig, runnerCleanupError, runnerUncaughtException, runnerUnhandledRejection, sanitize, serverRestartRequiredFromSpecialFolderMessageOnly, shouldWarnPortConflict, spacerLine, specialFolderChangeDetected, specialFoldersSetupSummary, stampReadyDistExtensionId, stampReadyKnownExtensionId, withDarkMode };
|