extension 4.0.20 → 4.0.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/49.cjs +13 -0
- package/dist/browsers.cjs +38 -21
- package/dist/cli.cjs +38 -21
- package/dist/extension/browsers/browsers-lib/messages.d.ts +2 -0
- package/dist/extension/browsers/run-chromium/cdp/cdp-extension-controller/ensure.d.ts +1 -0
- package/dist/extension/helpers/messaging.d.ts +1 -0
- package/package.json +4 -4
package/dist/49.cjs
CHANGED
|
@@ -74,6 +74,10 @@ exports.modules = {
|
|
|
74
74
|
} : {
|
|
75
75
|
status: 'unknown'
|
|
76
76
|
};
|
|
77
|
+
if (-32601 === result.code) return {
|
|
78
|
+
status: 'unknown',
|
|
79
|
+
unsupported: true
|
|
80
|
+
};
|
|
77
81
|
if (PROTOCOL_ERROR_CODES.has(result.code) || !result.message) return {
|
|
78
82
|
status: 'unknown'
|
|
79
83
|
};
|
|
@@ -1098,6 +1102,15 @@ exports.modules = {
|
|
|
1098
1102
|
const loadOutcome = await cdpExtensionController.verifyGuestLoaded?.() ?? {
|
|
1099
1103
|
status: 'unknown'
|
|
1100
1104
|
};
|
|
1105
|
+
if ('unknown' === loadOutcome.status && loadOutcome.unsupported) {
|
|
1106
|
+
const unconfirmedPath = extensionOutputPath || selectedExtensionPaths[0] || '';
|
|
1107
|
+
console.warn(messages.SH(unconfirmedPath));
|
|
1108
|
+
plugin.logSink?.({
|
|
1109
|
+
level: 'warn',
|
|
1110
|
+
text: `extension_load_unconfirmed: ${unconfirmedPath}`,
|
|
1111
|
+
source: 'browser'
|
|
1112
|
+
});
|
|
1113
|
+
}
|
|
1101
1114
|
if ('refused' === loadOutcome.status) {
|
|
1102
1115
|
const refusedPath = extensionOutputPath || selectedExtensionPaths[0] || '';
|
|
1103
1116
|
console.error(messages.M6(refusedPath, loadOutcome.reason));
|
package/dist/browsers.cjs
CHANGED
|
@@ -158,7 +158,7 @@ var __webpack_modules__ = {
|
|
|
158
158
|
async function printProdBannerOnce(opts) {
|
|
159
159
|
const k = keyFor(opts.browser, opts.outPath);
|
|
160
160
|
if (printedKeys.has(k) || (0, _helpers_messaging__rspack_import_3.VR)(baseKeyFor(opts.browser, opts.outPath))) return true;
|
|
161
|
-
const browserLabel =
|
|
161
|
+
const browserLabel = (0, _helpers_messaging__rspack_import_3.A6)(String(opts.browser || 'unknown'), _messages__rspack_import_5.GK(String(opts.browser || ''), opts.browserVersionLine));
|
|
162
162
|
try {
|
|
163
163
|
const manifestPath = node_path__rspack_import_2.join(opts.outPath, 'manifest.json');
|
|
164
164
|
const manifest = JSON.parse(node_fs__rspack_import_1.readFileSync(manifestPath, 'utf-8'));
|
|
@@ -433,6 +433,28 @@ var __webpack_modules__ = {
|
|
|
433
433
|
function capitalizedBrowserName(browser) {
|
|
434
434
|
return `${browser.charAt(0).toUpperCase() + browser.slice(1)}`;
|
|
435
435
|
}
|
|
436
|
+
function resolveBrowserVersionLine(browser, pinnedLine) {
|
|
437
|
+
const pinned = String(pinnedLine || '').trim();
|
|
438
|
+
if (pinned) return pinned;
|
|
439
|
+
try {
|
|
440
|
+
if ('chromium' === browser || 'chromium-based' === browser) {
|
|
441
|
+
const p = chromium_location__rspack_import_5_default()();
|
|
442
|
+
if (p && 'string' == typeof p && node_fs__rspack_import_0.existsSync(p)) return (0, chromium_location__rspack_import_5.getChromiumVersion)(p) || 'Chromium';
|
|
443
|
+
} else if ('chrome' === browser) {
|
|
444
|
+
const p = (0, chrome_location2__rspack_import_4.locateChromeOrExplain)({
|
|
445
|
+
allowFallback: true
|
|
446
|
+
});
|
|
447
|
+
if (p && node_fs__rspack_import_0.existsSync(p)) return (0, chrome_location2__rspack_import_4.getChromeVersion)(p) || 'Chrome';
|
|
448
|
+
} else if ('edge' === browser) {
|
|
449
|
+
const p = edge_location__rspack_import_6_default()();
|
|
450
|
+
if (p && node_fs__rspack_import_0.existsSync(p)) return (0, edge_location__rspack_import_6.getEdgeVersion)(p) || 'Microsoft Edge';
|
|
451
|
+
} else if ('firefox' === browser) {
|
|
452
|
+
const p = firefox_location2__rspack_import_7_default()(true);
|
|
453
|
+
if (p && 'string' == typeof p && node_fs__rspack_import_0.existsSync(p)) return (0, firefox_location2__rspack_import_7.getFirefoxVersion)(p) || 'Firefox';
|
|
454
|
+
}
|
|
455
|
+
} catch {}
|
|
456
|
+
return '';
|
|
457
|
+
}
|
|
436
458
|
function creatingUserProfile(profilePath) {
|
|
437
459
|
return `${getLoggingPrefix('debug')} browser profile=fresh path=${profilePath}`;
|
|
438
460
|
}
|
|
@@ -488,6 +510,9 @@ var __webpack_modules__ = {
|
|
|
488
510
|
function chromiumExtensionLoadRefused(extensionPath, reason) {
|
|
489
511
|
return `${getLoggingPrefix('error')} ${pintor__rspack_import_8_default().red('The browser refused to load this extension, so it is NOT running.')}\n${pintor__rspack_import_8_default().gray('PATH')} ${pintor__rspack_import_8_default().underline(extensionPath)}\n` + (reason ? `${pintor__rspack_import_8_default().gray('REASON')} ${pintor__rspack_import_8_default().red(reason)}\n` : '') + `No service worker, content script, or page from this extension will run, and no Extension ID was assigned.\n` + `Fix the reason above and save.\n` + "If the browser does not pick it up, restart the dev session.";
|
|
490
512
|
}
|
|
513
|
+
function chromiumExtensionLoadUnconfirmed(extensionPath) {
|
|
514
|
+
return `${getLoggingPrefix('warn')} Extension.js could not confirm that the browser loaded this extension.\n${pintor__rspack_import_8_default().gray('PATH')} ${pintor__rspack_import_8_default().underline(extensionPath)}\nThis browser rejected the debugging call that loads and verifies it, so the extension may be missing.\nChrome ignores the --load-extension switch unless the DisableLoadExtensionCommandLineSwitch policy is disabled.\nOpen chrome://extensions to check whether the extension is there, and report this if it is not.`;
|
|
515
|
+
}
|
|
491
516
|
function geckoAddonLoadRefused(addonPath, reason) {
|
|
492
517
|
return `${getLoggingPrefix('error')} ${pintor__rspack_import_8_default().red('The browser refused to load this add-on, so it is NOT running.')}\n${pintor__rspack_import_8_default().gray('PATH')} ${pintor__rspack_import_8_default().underline(addonPath)}\n` + (reason ? `${pintor__rspack_import_8_default().gray('REASON')} ${pintor__rspack_import_8_default().red(reason)}\n` : '') + `No background script, content script, or page from this add-on will run, and no Extension ID was assigned.\n` + `Fix the reason above and save.\n` + "If the browser does not pick it up, restart the dev session.";
|
|
493
518
|
}
|
|
@@ -762,26 +787,7 @@ var __webpack_modules__ = {
|
|
|
762
787
|
return 'unknown';
|
|
763
788
|
}
|
|
764
789
|
})();
|
|
765
|
-
|
|
766
|
-
if (!effectiveBrowserLine) try {
|
|
767
|
-
if ('chromium' === browser || 'chromium-based' === browser) {
|
|
768
|
-
const p = chromium_location__rspack_import_5_default()();
|
|
769
|
-
if (p && 'string' == typeof p && node_fs__rspack_import_0.existsSync(p)) effectiveBrowserLine = (0, chromium_location__rspack_import_5.getChromiumVersion)(p) || 'Chromium';
|
|
770
|
-
} else if ('chrome' === browser) {
|
|
771
|
-
const p = (0, chrome_location2__rspack_import_4.locateChromeOrExplain)({
|
|
772
|
-
allowFallback: true
|
|
773
|
-
});
|
|
774
|
-
if (p && node_fs__rspack_import_0.existsSync(p)) effectiveBrowserLine = (0, chrome_location2__rspack_import_4.getChromeVersion)(p) || 'Chrome';
|
|
775
|
-
} else if ('edge' === browser) {
|
|
776
|
-
const p = edge_location__rspack_import_6_default()();
|
|
777
|
-
if (p && node_fs__rspack_import_0.existsSync(p)) effectiveBrowserLine = (0, edge_location__rspack_import_6.getEdgeVersion)(p) || 'Microsoft Edge';
|
|
778
|
-
} else if ('firefox' === browser) {
|
|
779
|
-
const p = firefox_location2__rspack_import_7_default()(true);
|
|
780
|
-
if (p && 'string' == typeof p && node_fs__rspack_import_0.existsSync(p)) effectiveBrowserLine = (0, firefox_location2__rspack_import_7.getFirefoxVersion)(p) || 'Firefox';
|
|
781
|
-
}
|
|
782
|
-
} catch {}
|
|
783
|
-
let browserLabel = effectiveBrowserLine && effectiveBrowserLine.trim().length > 0 ? effectiveBrowserLine.trim() : capitalize(String(browser || 'unknown'));
|
|
784
|
-
if (browserLabel && !/[a-zA-Z]/.test(browserLabel)) browserLabel = `${capitalize(String(browser || 'unknown'))} ${browserLabel}`;
|
|
790
|
+
const browserLabel = (0, _helpers_messaging__rspack_import_9.A6)(String(browser || 'unknown'), resolveBrowserVersionLine(browser, browserVersionLine));
|
|
785
791
|
const cleanId = String(id || '').trim();
|
|
786
792
|
const includeExtensionId = opts?.includeExtensionId !== false;
|
|
787
793
|
const updateNotice = updateSuffix ? ` ${updateSuffix}` : '';
|
|
@@ -879,6 +885,7 @@ var __webpack_modules__ = {
|
|
|
879
885
|
Fm: ()=>connectionClosedError,
|
|
880
886
|
G3: ()=>safariRequiresMacOS,
|
|
881
887
|
GB: ()=>waitingForBrowserDebugger,
|
|
888
|
+
GK: ()=>resolveBrowserVersionLine,
|
|
882
889
|
Gq: ()=>locatingBrowser,
|
|
883
890
|
H1: ()=>safariRegenerationDiscards,
|
|
884
891
|
HH: ()=>messageWithoutSenderError,
|
|
@@ -897,6 +904,7 @@ var __webpack_modules__ = {
|
|
|
897
904
|
Nk: ()=>chromiumDryRunNotLaunching,
|
|
898
905
|
Q0: ()=>chromiumDryRunBinary,
|
|
899
906
|
Rl: ()=>safariBuilt,
|
|
907
|
+
SH: ()=>chromiumExtensionLoadUnconfirmed,
|
|
900
908
|
Sp: ()=>invalidChromiumBinaryPath,
|
|
901
909
|
TF: ()=>enhancedProcessManagementCleanupError,
|
|
902
910
|
Te: ()=>cdpClientTargetWebSocketUrlStored,
|
|
@@ -5709,6 +5717,14 @@ var __webpack_modules__ = {
|
|
|
5709
5717
|
...body
|
|
5710
5718
|
].join('\n');
|
|
5711
5719
|
}
|
|
5720
|
+
function browserRowValue(browser, versionLine) {
|
|
5721
|
+
const name = String(browser || '').trim() || 'unknown';
|
|
5722
|
+
const display = name.charAt(0).toUpperCase() + name.slice(1);
|
|
5723
|
+
const line = String(versionLine || '').trim();
|
|
5724
|
+
if (!line) return display;
|
|
5725
|
+
if (!/[a-zA-Z]/.test(line)) return `${display} ${line}`;
|
|
5726
|
+
return line.charAt(0).toUpperCase() + line.slice(1);
|
|
5727
|
+
}
|
|
5712
5728
|
const CARD_KEYS_ENV = 'EXTENSION_CLI_CARD_KEYS';
|
|
5713
5729
|
const CARD_KEYS_SEPARATOR = '\u001f';
|
|
5714
5730
|
function isCardKeyClaimed(key) {
|
|
@@ -5736,6 +5752,7 @@ var __webpack_modules__ = {
|
|
|
5736
5752
|
return 'Extension';
|
|
5737
5753
|
}
|
|
5738
5754
|
__webpack_require__.d(__webpack_exports__, {
|
|
5755
|
+
A6: ()=>browserRowValue,
|
|
5739
5756
|
Nr: ()=>card,
|
|
5740
5757
|
Pl: ()=>prefix,
|
|
5741
5758
|
T_: ()=>artifactNoun,
|
package/dist/cli.cjs
CHANGED
|
@@ -159,7 +159,7 @@ var __webpack_modules__ = {
|
|
|
159
159
|
async function printProdBannerOnce(opts) {
|
|
160
160
|
const k = keyFor(opts.browser, opts.outPath);
|
|
161
161
|
if (printedKeys.has(k) || (0, _helpers_messaging__rspack_import_3.VR)(baseKeyFor(opts.browser, opts.outPath))) return true;
|
|
162
|
-
const browserLabel =
|
|
162
|
+
const browserLabel = (0, _helpers_messaging__rspack_import_3.A6)(String(opts.browser || 'unknown'), _messages__rspack_import_5.GK(String(opts.browser || ''), opts.browserVersionLine));
|
|
163
163
|
try {
|
|
164
164
|
const manifestPath = node_path__rspack_import_2.join(opts.outPath, 'manifest.json');
|
|
165
165
|
const manifest = JSON.parse(node_fs__rspack_import_1.readFileSync(manifestPath, 'utf-8'));
|
|
@@ -434,6 +434,28 @@ var __webpack_modules__ = {
|
|
|
434
434
|
function capitalizedBrowserName(browser) {
|
|
435
435
|
return `${browser.charAt(0).toUpperCase() + browser.slice(1)}`;
|
|
436
436
|
}
|
|
437
|
+
function resolveBrowserVersionLine(browser, pinnedLine) {
|
|
438
|
+
const pinned = String(pinnedLine || '').trim();
|
|
439
|
+
if (pinned) return pinned;
|
|
440
|
+
try {
|
|
441
|
+
if ('chromium' === browser || 'chromium-based' === browser) {
|
|
442
|
+
const p = chromium_location__rspack_import_5_default()();
|
|
443
|
+
if (p && 'string' == typeof p && node_fs__rspack_import_0.existsSync(p)) return (0, chromium_location__rspack_import_5.getChromiumVersion)(p) || 'Chromium';
|
|
444
|
+
} else if ('chrome' === browser) {
|
|
445
|
+
const p = (0, chrome_location2__rspack_import_4.locateChromeOrExplain)({
|
|
446
|
+
allowFallback: true
|
|
447
|
+
});
|
|
448
|
+
if (p && node_fs__rspack_import_0.existsSync(p)) return (0, chrome_location2__rspack_import_4.getChromeVersion)(p) || 'Chrome';
|
|
449
|
+
} else if ('edge' === browser) {
|
|
450
|
+
const p = edge_location__rspack_import_6_default()();
|
|
451
|
+
if (p && node_fs__rspack_import_0.existsSync(p)) return (0, edge_location__rspack_import_6.getEdgeVersion)(p) || 'Microsoft Edge';
|
|
452
|
+
} else if ('firefox' === browser) {
|
|
453
|
+
const p = firefox_location2__rspack_import_7_default()(true);
|
|
454
|
+
if (p && 'string' == typeof p && node_fs__rspack_import_0.existsSync(p)) return (0, firefox_location2__rspack_import_7.getFirefoxVersion)(p) || 'Firefox';
|
|
455
|
+
}
|
|
456
|
+
} catch {}
|
|
457
|
+
return '';
|
|
458
|
+
}
|
|
437
459
|
function creatingUserProfile(profilePath) {
|
|
438
460
|
return `${getLoggingPrefix('debug')} browser profile=fresh path=${profilePath}`;
|
|
439
461
|
}
|
|
@@ -489,6 +511,9 @@ var __webpack_modules__ = {
|
|
|
489
511
|
function chromiumExtensionLoadRefused(extensionPath, reason) {
|
|
490
512
|
return `${getLoggingPrefix('error')} ${pintor__rspack_import_8_default().red('The browser refused to load this extension, so it is NOT running.')}\n${pintor__rspack_import_8_default().gray('PATH')} ${pintor__rspack_import_8_default().underline(extensionPath)}\n` + (reason ? `${pintor__rspack_import_8_default().gray('REASON')} ${pintor__rspack_import_8_default().red(reason)}\n` : '') + `No service worker, content script, or page from this extension will run, and no Extension ID was assigned.\n` + `Fix the reason above and save.\n` + "If the browser does not pick it up, restart the dev session.";
|
|
491
513
|
}
|
|
514
|
+
function chromiumExtensionLoadUnconfirmed(extensionPath) {
|
|
515
|
+
return `${getLoggingPrefix('warn')} Extension.js could not confirm that the browser loaded this extension.\n${pintor__rspack_import_8_default().gray('PATH')} ${pintor__rspack_import_8_default().underline(extensionPath)}\nThis browser rejected the debugging call that loads and verifies it, so the extension may be missing.\nChrome ignores the --load-extension switch unless the DisableLoadExtensionCommandLineSwitch policy is disabled.\nOpen chrome://extensions to check whether the extension is there, and report this if it is not.`;
|
|
516
|
+
}
|
|
492
517
|
function geckoAddonLoadRefused(addonPath, reason) {
|
|
493
518
|
return `${getLoggingPrefix('error')} ${pintor__rspack_import_8_default().red('The browser refused to load this add-on, so it is NOT running.')}\n${pintor__rspack_import_8_default().gray('PATH')} ${pintor__rspack_import_8_default().underline(addonPath)}\n` + (reason ? `${pintor__rspack_import_8_default().gray('REASON')} ${pintor__rspack_import_8_default().red(reason)}\n` : '') + `No background script, content script, or page from this add-on will run, and no Extension ID was assigned.\n` + `Fix the reason above and save.\n` + "If the browser does not pick it up, restart the dev session.";
|
|
494
519
|
}
|
|
@@ -763,26 +788,7 @@ var __webpack_modules__ = {
|
|
|
763
788
|
return 'unknown';
|
|
764
789
|
}
|
|
765
790
|
})();
|
|
766
|
-
|
|
767
|
-
if (!effectiveBrowserLine) try {
|
|
768
|
-
if ('chromium' === browser || 'chromium-based' === browser) {
|
|
769
|
-
const p = chromium_location__rspack_import_5_default()();
|
|
770
|
-
if (p && 'string' == typeof p && node_fs__rspack_import_0.existsSync(p)) effectiveBrowserLine = (0, chromium_location__rspack_import_5.getChromiumVersion)(p) || 'Chromium';
|
|
771
|
-
} else if ('chrome' === browser) {
|
|
772
|
-
const p = (0, chrome_location2__rspack_import_4.locateChromeOrExplain)({
|
|
773
|
-
allowFallback: true
|
|
774
|
-
});
|
|
775
|
-
if (p && node_fs__rspack_import_0.existsSync(p)) effectiveBrowserLine = (0, chrome_location2__rspack_import_4.getChromeVersion)(p) || 'Chrome';
|
|
776
|
-
} else if ('edge' === browser) {
|
|
777
|
-
const p = edge_location__rspack_import_6_default()();
|
|
778
|
-
if (p && node_fs__rspack_import_0.existsSync(p)) effectiveBrowserLine = (0, edge_location__rspack_import_6.getEdgeVersion)(p) || 'Microsoft Edge';
|
|
779
|
-
} else if ('firefox' === browser) {
|
|
780
|
-
const p = firefox_location2__rspack_import_7_default()(true);
|
|
781
|
-
if (p && 'string' == typeof p && node_fs__rspack_import_0.existsSync(p)) effectiveBrowserLine = (0, firefox_location2__rspack_import_7.getFirefoxVersion)(p) || 'Firefox';
|
|
782
|
-
}
|
|
783
|
-
} catch {}
|
|
784
|
-
let browserLabel = effectiveBrowserLine && effectiveBrowserLine.trim().length > 0 ? effectiveBrowserLine.trim() : capitalize(String(browser || 'unknown'));
|
|
785
|
-
if (browserLabel && !/[a-zA-Z]/.test(browserLabel)) browserLabel = `${capitalize(String(browser || 'unknown'))} ${browserLabel}`;
|
|
791
|
+
const browserLabel = (0, _helpers_messaging__rspack_import_9.A6)(String(browser || 'unknown'), resolveBrowserVersionLine(browser, browserVersionLine));
|
|
786
792
|
const cleanId = String(id || '').trim();
|
|
787
793
|
const includeExtensionId = opts?.includeExtensionId !== false;
|
|
788
794
|
const updateNotice = updateSuffix ? ` ${updateSuffix}` : '';
|
|
@@ -880,6 +886,7 @@ var __webpack_modules__ = {
|
|
|
880
886
|
Fm: ()=>connectionClosedError,
|
|
881
887
|
G3: ()=>safariRequiresMacOS,
|
|
882
888
|
GB: ()=>waitingForBrowserDebugger,
|
|
889
|
+
GK: ()=>resolveBrowserVersionLine,
|
|
883
890
|
Gq: ()=>locatingBrowser,
|
|
884
891
|
H1: ()=>safariRegenerationDiscards,
|
|
885
892
|
HH: ()=>messageWithoutSenderError,
|
|
@@ -898,6 +905,7 @@ var __webpack_modules__ = {
|
|
|
898
905
|
Nk: ()=>chromiumDryRunNotLaunching,
|
|
899
906
|
Q0: ()=>chromiumDryRunBinary,
|
|
900
907
|
Rl: ()=>safariBuilt,
|
|
908
|
+
SH: ()=>chromiumExtensionLoadUnconfirmed,
|
|
901
909
|
Sp: ()=>invalidChromiumBinaryPath,
|
|
902
910
|
TF: ()=>enhancedProcessManagementCleanupError,
|
|
903
911
|
Te: ()=>cdpClientTargetWebSocketUrlStored,
|
|
@@ -5721,6 +5729,14 @@ var __webpack_modules__ = {
|
|
|
5721
5729
|
...body
|
|
5722
5730
|
].join('\n');
|
|
5723
5731
|
}
|
|
5732
|
+
function browserRowValue(browser, versionLine) {
|
|
5733
|
+
const name = String(browser || '').trim() || 'unknown';
|
|
5734
|
+
const display = name.charAt(0).toUpperCase() + name.slice(1);
|
|
5735
|
+
const line = String(versionLine || '').trim();
|
|
5736
|
+
if (!line) return display;
|
|
5737
|
+
if (!/[a-zA-Z]/.test(line)) return `${display} ${line}`;
|
|
5738
|
+
return line.charAt(0).toUpperCase() + line.slice(1);
|
|
5739
|
+
}
|
|
5724
5740
|
const CARD_KEYS_ENV = 'EXTENSION_CLI_CARD_KEYS';
|
|
5725
5741
|
const CARD_KEYS_SEPARATOR = '\u001f';
|
|
5726
5742
|
function isCardKeyClaimed(key) {
|
|
@@ -5912,6 +5928,7 @@ var __webpack_modules__ = {
|
|
|
5912
5928
|
}
|
|
5913
5929
|
};
|
|
5914
5930
|
__webpack_require__.d(__webpack_exports__, {
|
|
5931
|
+
A6: ()=>browserRowValue,
|
|
5915
5932
|
Nr: ()=>card,
|
|
5916
5933
|
Pl: ()=>prefix,
|
|
5917
5934
|
T_: ()=>artifactNoun,
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import type { BrowserType } from '../browsers-types';
|
|
2
2
|
type Browser = BrowserType;
|
|
3
3
|
export declare function capitalizedBrowserName(browser: Browser): string;
|
|
4
|
+
export declare function resolveBrowserVersionLine(browser: string, pinnedLine?: string): string;
|
|
4
5
|
export declare function creatingUserProfile(profilePath: string): string;
|
|
5
6
|
export declare function browserInstanceExited(browser: Browser): string;
|
|
6
7
|
export declare function cdpClientAttachedToTarget(sessionId: string, targetType: string): string;
|
|
@@ -17,6 +18,7 @@ export declare function unsupportedManifestVersionOnChromium(extensionPath: stri
|
|
|
17
18
|
export declare function chromiumInvalidMatchPatterns(extensionPath: string, patterns: string[]): string;
|
|
18
19
|
export declare function chromiumManifestLoadBlockers(extensionPath: string, blockers: string[]): string;
|
|
19
20
|
export declare function chromiumExtensionLoadRefused(extensionPath: string, reason: string): string;
|
|
21
|
+
export declare function chromiumExtensionLoadUnconfirmed(extensionPath: string): string;
|
|
20
22
|
export declare function geckoAddonLoadRefused(addonPath: string, reason: string): string;
|
|
21
23
|
export declare function devChannelSnapshotInUse(binaryPath: string): string;
|
|
22
24
|
export declare function browserLaunchError(browser: Browser, error: unknown): string;
|
|
@@ -9,6 +9,7 @@ export type LoadUnpackedOutcome = {
|
|
|
9
9
|
reason: string;
|
|
10
10
|
} | {
|
|
11
11
|
status: 'unknown';
|
|
12
|
+
unsupported?: boolean;
|
|
12
13
|
};
|
|
13
14
|
export declare function loadUnpacked(cdp: CDPClient, outPath: string): Promise<LoadUnpackedOutcome>;
|
|
14
15
|
export declare function loadUnpackedIfNeeded(cdp: CDPClient, outPath: string): Promise<string | null>;
|
|
@@ -20,6 +20,7 @@ export interface CardInput {
|
|
|
20
20
|
rows?: CardRow[];
|
|
21
21
|
}
|
|
22
22
|
export declare function card(input?: CardInput): string;
|
|
23
|
+
export declare function browserRowValue(browser: string, versionLine?: string): string;
|
|
23
24
|
export declare function isCardKeyClaimed(key: string): boolean;
|
|
24
25
|
export declare function claimCardKey(key: string): boolean;
|
|
25
26
|
export declare function artifactNoun(browser: string): 'Add-on' | 'Extension';
|
package/package.json
CHANGED
|
@@ -38,7 +38,7 @@
|
|
|
38
38
|
"extension": "./bin/extension.cjs"
|
|
39
39
|
},
|
|
40
40
|
"name": "extension",
|
|
41
|
-
"version": "4.0.
|
|
41
|
+
"version": "4.0.21",
|
|
42
42
|
"description": "The cross-browser extension framework. Build Chrome, Edge, Firefox, and Safari extensions with no build configuration.",
|
|
43
43
|
"homepage": "https://extension.js.org/",
|
|
44
44
|
"bugs": {
|
|
@@ -106,9 +106,9 @@
|
|
|
106
106
|
"vivaldi-location2": "2.1.0",
|
|
107
107
|
"waterfox-location": "2.1.0",
|
|
108
108
|
"yandex-location": "2.1.0",
|
|
109
|
-
"extension-create": "4.0.
|
|
110
|
-
"extension-develop": "4.0.
|
|
111
|
-
"extension-install": "4.0.
|
|
109
|
+
"extension-create": "4.0.21",
|
|
110
|
+
"extension-develop": "4.0.21",
|
|
111
|
+
"extension-install": "4.0.21",
|
|
112
112
|
"commander": "^15.0.0",
|
|
113
113
|
"pintor": "0.3.0",
|
|
114
114
|
"semver": "^7.7.3",
|