extension 4.1.20 → 4.1.22
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/README.md +18 -16
- package/dist/{84.cjs → 597.cjs} +80 -2
- package/dist/browsers.cjs +408 -103
- package/dist/cli.cjs +558 -148
- package/dist/extension/browsers/__spec__/safari-fake-tools.d.ts +27 -0
- package/dist/extension/browsers/browsers-lib/messages.d.ts +2 -1
- package/dist/extension/browsers/browsers-lib/process-teardown.d.ts +3 -0
- package/dist/extension/browsers/browsers-lib/ready-stamp.d.ts +1 -0
- package/dist/extension/browsers/browsers-lib/resolve-live-pid.d.ts +25 -0
- package/dist/extension/browsers/browsers-lib/write-json-atomic.d.ts +1 -0
- package/dist/extension/browsers/browsers-types.d.ts +1 -1
- package/dist/extension/browsers/index.d.ts +1 -1
- package/dist/extension/browsers/run-chromium/cdp/cdp-extension-controller/index.d.ts +2 -0
- package/dist/extension/browsers/run-chromium/cdp/ensure-developer-mode.d.ts +12 -0
- package/dist/extension/browsers/run-firefox/firefox-launch/index.d.ts +9 -0
- package/dist/extension/browsers/run-firefox/firefox-launch/process-handlers.d.ts +1 -1
- package/dist/extension/browsers/run-safari/safari-launch/index.d.ts +1 -1
- package/dist/extension/browsers/run-safari/safari-launch/tools.d.ts +17 -0
- package/dist/extension/browsers/run-safari/safari-packager.d.ts +2 -1
- package/dist/extension/browsers/run-safari/safari-types.d.ts +2 -0
- package/dist/extension/config-types.d.ts +5 -2
- package/dist/extension/helpers/messages.d.ts +7 -0
- package/dist/extension/helpers/messaging.d.ts +1 -0
- package/dist/extension/helpers/node-version-guard.d.ts +3 -1
- package/dist/extension/helpers/template-catalog.d.ts +1 -1
- package/dist/extension/helpers/template-corpus.generated.d.ts +1 -1
- package/package.json +5 -7
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import type { SafariPipelineTools } from '../run-safari/safari-launch/index.js';
|
|
2
|
+
export interface FakeSafariToolsOptions {
|
|
3
|
+
platformOk?: boolean;
|
|
4
|
+
toolchainOk?: boolean;
|
|
5
|
+
converter?: {
|
|
6
|
+
code?: number;
|
|
7
|
+
output?: string;
|
|
8
|
+
};
|
|
9
|
+
xcodebuild?: {
|
|
10
|
+
code?: number;
|
|
11
|
+
output?: string;
|
|
12
|
+
};
|
|
13
|
+
pid?: number | null;
|
|
14
|
+
registered?: boolean;
|
|
15
|
+
}
|
|
16
|
+
export interface FakeSafariTools extends SafariPipelineTools {
|
|
17
|
+
calls: {
|
|
18
|
+
converter: string[][];
|
|
19
|
+
xcodebuild: string[][];
|
|
20
|
+
openApp: string[];
|
|
21
|
+
openSafari: string[];
|
|
22
|
+
resolvePid: string[];
|
|
23
|
+
pluginkit: number;
|
|
24
|
+
};
|
|
25
|
+
events: string[];
|
|
26
|
+
}
|
|
27
|
+
export declare function fakeSafariTools(options?: FakeSafariToolsOptions): FakeSafariTools;
|
|
@@ -78,6 +78,7 @@ export declare function safariDryRunConverter(cmd: string): string;
|
|
|
78
78
|
export declare function safariDryRunXcodebuild(cmd: string): string;
|
|
79
79
|
export declare function safariNextSteps(appName: string, signed?: boolean): string;
|
|
80
80
|
export declare function safariRegistered(appName: string): string;
|
|
81
|
+
export declare function safariPidUnresolved(appName: string): string;
|
|
81
82
|
export declare function safariNotYetRegistered(appName: string): string;
|
|
82
83
|
export declare function safariRebuilt(appName: string): string;
|
|
83
84
|
export declare function safariProjectStale(): string;
|
|
@@ -119,7 +120,7 @@ export interface DevClientMessage {
|
|
|
119
120
|
};
|
|
120
121
|
}
|
|
121
122
|
export declare function collapseHomeDirInCardValue(value: string): string;
|
|
122
|
-
export declare function binaryProvenanceNote(provenance?: 'managed' | 'pinned' | 'system' | 'snapshot'): string;
|
|
123
|
+
export declare function binaryProvenanceNote(provenance?: 'managed' | 'pinned' | 'system' | 'snapshot', browser?: BrowserType | string): string;
|
|
123
124
|
export declare function runningInDevelopment(manifest: DevManifestInfo, browser: BrowserType, message: DevClientMessage, browserVersionLine?: string, updateSuffix?: string, opts?: {
|
|
124
125
|
includeExtensionId?: boolean;
|
|
125
126
|
runLabel?: string;
|
|
@@ -2,6 +2,9 @@ import { type ChildProcess } from 'node:child_process';
|
|
|
2
2
|
import type { BrowserType } from '../browsers-types.js';
|
|
3
3
|
export declare const FORCE_KILL_GRACE_MS = 5000;
|
|
4
4
|
export declare function wasTerminatedByUs(child: ChildProcess | null): boolean;
|
|
5
|
+
export declare function wasPidTerminatedByUs(pid: number | null | undefined): boolean;
|
|
6
|
+
export declare function gracefulTerminatePid(pid: number | null | undefined, browser: BrowserType): void;
|
|
7
|
+
export declare function forceKillPidOnExit(pid: number | null | undefined, browser: BrowserType): void;
|
|
5
8
|
export declare function gracefulTerminateChild(child: ChildProcess | null, browser: BrowserType): void;
|
|
6
9
|
export declare function forceKillChildOnExit(child: ChildProcess | null, browser: BrowserType): void;
|
|
7
10
|
export declare function isBenignSocketTeardown(value: unknown): boolean;
|
|
@@ -2,6 +2,7 @@ export declare function stampReadyRdpPort(extensionOutputPath: string | undefine
|
|
|
2
2
|
export declare function stampReadyBrowserLaunch(extensionOutputPath: string | undefined, details: {
|
|
3
3
|
profilePath?: string;
|
|
4
4
|
browserPid?: number;
|
|
5
|
+
launcherPid?: number;
|
|
5
6
|
extensionId?: string;
|
|
6
7
|
binary?: string;
|
|
7
8
|
binaryProvenance?: 'managed' | 'pinned' | 'system' | 'snapshot';
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
export interface ProcessRow {
|
|
2
|
+
pid: number;
|
|
3
|
+
ppid: number;
|
|
4
|
+
command: string;
|
|
5
|
+
}
|
|
6
|
+
export type ProcessLister = () => ProcessRow[];
|
|
7
|
+
export declare function parseProcessRows(output: string): ProcessRow[];
|
|
8
|
+
export declare function listProcesses(platform?: NodeJS.Platform): ProcessRow[];
|
|
9
|
+
export declare function executableOf(command: string): string;
|
|
10
|
+
export declare function findLiveBrowserPid(input: {
|
|
11
|
+
profilePath: string;
|
|
12
|
+
binary: string;
|
|
13
|
+
launcherPid?: number;
|
|
14
|
+
rows: ProcessRow[];
|
|
15
|
+
}): number | null;
|
|
16
|
+
export declare function isPidAlive(pid: number | null | undefined): boolean;
|
|
17
|
+
export declare function resolveLiveBrowserPid(input: {
|
|
18
|
+
profilePath: string;
|
|
19
|
+
binary: string;
|
|
20
|
+
launcherPid?: number;
|
|
21
|
+
list?: ProcessLister;
|
|
22
|
+
attempts?: number;
|
|
23
|
+
intervalMs?: number;
|
|
24
|
+
sleep?: (ms: number) => Promise<void>;
|
|
25
|
+
}): Promise<number | null>;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare function writeJsonAtomic(filePath: string, value: unknown): boolean;
|
|
@@ -29,7 +29,7 @@ export interface BrowserConfig {
|
|
|
29
29
|
browserFlags: string[];
|
|
30
30
|
startingUrl: string | undefined;
|
|
31
31
|
}
|
|
32
|
-
export type DefaultBrowserFlags = '--no-first-run' | '--disable-client-side-phishing-detection' | '--disable-component-extensions-with-background-pages' | '--disable-default-apps' | '--disable-features=InterestFeedContentSuggestions' | '--disable-features=Translate' | '--hide-scrollbars' | '--mute-audio' | '--no-default-browser-check' | '--ash-no-nudges' | '--disable-search-engine-choice-screen' | '--disable-features=MediaRoute' | '--use-mock-keychain' | '--disable-background-networking' | '--disable-breakpad' | '--disable-component-update' | '--disable-domain-reliability' | '--disable-features=AutofillServerCommunicatio' | '--disable-features=CertificateTransparencyComponentUpdate' | '--disable-sync' | '--disable-features=OptimizationHints' | '--disable-features=DialMediaRouteProvider' | '--no-pings' | '--enable-features=SidePanelUpdates' | '--disable-features=DisableLoadExtensionCommandLineSwitch' | '--disable-features=ExtensionDisableUnsupportedDeveloper' | '--enable-unsafe-extension-debugging' | '--silent-debugger-extension-api';
|
|
32
|
+
export type DefaultBrowserFlags = '--no-first-run' | '--disable-client-side-phishing-detection' | '--disable-component-extensions-with-background-pages' | '--disable-default-apps' | '--disable-features=InterestFeedContentSuggestions' | '--disable-features=Translate' | '--hide-scrollbars' | '--mute-audio' | '--no-default-browser-check' | '--ash-no-nudges' | '--disable-search-engine-choice-screen' | '--disable-features=MediaRoute' | '--use-mock-keychain' | '--disable-background-networking' | '--disable-breakpad' | '--disable-component-update' | '--disable-domain-reliability' | '--disable-features=AutofillServerCommunicatio' | '--disable-features=CertificateTransparencyComponentUpdate' | '--disable-sync' | '--disable-features=OptimizationHints' | '--disable-features=DialMediaRouteProvider' | '--no-pings' | '--enable-features=SidePanelUpdates' | '--disable-features=DisableLoadExtensionCommandLineSwitch' | '--disable-features=ExtensionDisableUnsupportedDeveloper' | '--disable-features=SafetyHubExtensionsOffStoreTrigger' | '--enable-unsafe-extension-debugging' | '--silent-debugger-extension-api';
|
|
33
33
|
export interface PluginOptions {
|
|
34
34
|
/**
|
|
35
35
|
* @default false
|
|
@@ -46,7 +46,7 @@ export interface BrowserController {
|
|
|
46
46
|
}
|
|
47
47
|
export declare function launchBrowser(opts: BrowserLaunchOptions): Promise<BrowserController>;
|
|
48
48
|
export { runOnlyPreviewBrowser } from './run-only.js';
|
|
49
|
-
export { packageSafariExtension, type SafariBuildPreflight, type SafariPackageResult, type SafariPipelineMode, safariBuildPreflight, safariPreflightError } from './run-safari/safari-launch/index.js';
|
|
49
|
+
export { packageSafariExtension, type SafariBuildPreflight, type SafariPackageResult, type SafariPipelineMode, type SafariPipelineTools, type SafariToolResult, safariBuildPreflight, safariPreflightError } from './run-safari/safari-launch/index.js';
|
|
50
50
|
export { builtAppPath, isValidBundleId, macOsSchemeName, resolveSafariBuildConfig, xcodeProjectPath } from './run-safari/safari-launch/safari-config.js';
|
|
51
51
|
export { createSafariPackager, type SafariPackagerFn, type SafariPackagerOptions, type SafariPackagerOverrides } from './run-safari/safari-packager.js';
|
|
52
52
|
export type { SafariBuildConfig, SafariPluginLike } from './run-safari/safari-types.js';
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import type { Readable, Writable } from 'node:stream';
|
|
2
2
|
import type { BrowserLogSink } from '../../../browsers-types.js';
|
|
3
3
|
import type { CdpProtocolMessage } from '../../chromium-types.js';
|
|
4
|
+
import { type DeveloperModeOutcome } from '../ensure-developer-mode.js';
|
|
4
5
|
import { type LoadUnpackedOutcome } from './ensure.js';
|
|
5
6
|
interface ExtensionInfoResult {
|
|
6
7
|
extensionId: string;
|
|
@@ -29,6 +30,7 @@ export declare class CDPExtensionController {
|
|
|
29
30
|
logSink?: BrowserLogSink;
|
|
30
31
|
});
|
|
31
32
|
connect(): Promise<void>;
|
|
33
|
+
ensureDeveloperMode(): Promise<DeveloperModeOutcome>;
|
|
32
34
|
openTab(url: string): Promise<void>;
|
|
33
35
|
closeSelfOpenedTabs(): Promise<number>;
|
|
34
36
|
verifyGuestLoaded(): Promise<LoadUnpackedOutcome>;
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
export type DeveloperModeOutcome = 'already-on' | 'enabled' | 'skipped' | 'unavailable';
|
|
2
|
+
export interface DeveloperModeTransport {
|
|
3
|
+
sendCommand(method: string, params?: Record<string, unknown>, sessionId?: string): Promise<unknown>;
|
|
4
|
+
}
|
|
5
|
+
export declare function developerModeFromProfile(profilePath: string): boolean;
|
|
6
|
+
export declare function developerModeFlipIsSafe(browserArgs: string[]): boolean;
|
|
7
|
+
export declare function ensureDeveloperMode(options: {
|
|
8
|
+
transport: DeveloperModeTransport;
|
|
9
|
+
attempts?: number;
|
|
10
|
+
delayMs?: number;
|
|
11
|
+
sleep?: (ms: number) => Promise<void>;
|
|
12
|
+
}): Promise<DeveloperModeOutcome>;
|
|
@@ -18,6 +18,10 @@ export declare class FirefoxLaunchPlugin {
|
|
|
18
18
|
private child;
|
|
19
19
|
private watchTimeout?;
|
|
20
20
|
private extensionOutputPath?;
|
|
21
|
+
private livePid;
|
|
22
|
+
private liveExitWatcher?;
|
|
23
|
+
private browserGone;
|
|
24
|
+
private disposeProcessHandlers?;
|
|
21
25
|
constructor(host: FirefoxPluginRuntime, ctx: FirefoxContext);
|
|
22
26
|
runOnce(compilation: CompilationLike, options: LaunchOptions): Promise<void>;
|
|
23
27
|
apply(compiler: unknown): void;
|
|
@@ -27,6 +31,11 @@ export declare class FirefoxLaunchPlugin {
|
|
|
27
31
|
private spawnFirefoxChild;
|
|
28
32
|
private pipeChildOutput;
|
|
29
33
|
private wireChildLifecycle;
|
|
34
|
+
private onBrowserGone;
|
|
35
|
+
private trackLiveBrowserPid;
|
|
36
|
+
private adoptHandedOffBrowser;
|
|
37
|
+
private adoptLivePid;
|
|
38
|
+
private watchLivePidExit;
|
|
30
39
|
private retryAddonInstall;
|
|
31
40
|
private reportAddonLoadRefused;
|
|
32
41
|
private cleanupInstance;
|
|
@@ -2,4 +2,4 @@ import type { ChildProcess } from 'node:child_process';
|
|
|
2
2
|
export type FirefoxBrowserKind = 'firefox' | 'chrome' | 'edge' | 'chromium-based';
|
|
3
3
|
export declare function __activeFirefoxInstanceCount(): number;
|
|
4
4
|
export declare function __resetFirefoxProcessHandlersForTest(): void;
|
|
5
|
-
export declare function setupFirefoxProcessHandlers(browser: FirefoxBrowserKind, childRef: () => ChildProcess | null, cleanupInstance: () => Promise<void
|
|
5
|
+
export declare function setupFirefoxProcessHandlers(browser: FirefoxBrowserKind, childRef: () => ChildProcess | null, cleanupInstance: () => Promise<void>, livePidRef?: () => number | null): () => void;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import type { BrowserLogger } from '../../browsers-types.js';
|
|
2
2
|
import type { SafariPluginLike } from '../safari-types.js';
|
|
3
|
-
export
|
|
3
|
+
export { type SafariPipelineTools, type SafariToolResult, toolOutputTail } from './tools.js';
|
|
4
4
|
export declare function converterWarnings(output: string): string[];
|
|
5
5
|
export type SafariPipelineMode = 'full' | 'resync';
|
|
6
6
|
export interface SafariPackageResult {
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { type SafariToolchain } from './toolchain.js';
|
|
2
|
+
export declare function toolOutputTail(output: string): string;
|
|
3
|
+
export interface SafariToolResult {
|
|
4
|
+
ok: boolean;
|
|
5
|
+
code: number | null;
|
|
6
|
+
output: string;
|
|
7
|
+
}
|
|
8
|
+
export interface SafariPipelineTools {
|
|
9
|
+
detectToolchain(): SafariToolchain;
|
|
10
|
+
runConverter(args: string[]): Promise<SafariToolResult>;
|
|
11
|
+
runXcodebuild(args: string[]): Promise<SafariToolResult>;
|
|
12
|
+
openApp(target: string): Promise<SafariToolResult>;
|
|
13
|
+
openSafari(binary: string): Promise<SafariToolResult>;
|
|
14
|
+
resolvePid(bundleId: string): Promise<number | null>;
|
|
15
|
+
pluginkitList(): Promise<string>;
|
|
16
|
+
}
|
|
17
|
+
export declare function createSafariTools(): SafariPipelineTools;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type { BrowserLogger } from '../browsers-types.js';
|
|
2
|
-
import { type SafariPackageResult, type SafariPipelineMode } from './safari-launch/index.js';
|
|
2
|
+
import { type SafariPackageResult, type SafariPipelineMode, type SafariPipelineTools } from './safari-launch/index.js';
|
|
3
3
|
export interface SafariPackagerOverrides {
|
|
4
4
|
appName?: string;
|
|
5
5
|
bundleId?: string;
|
|
@@ -14,6 +14,7 @@ export interface SafariPackagerOptions extends SafariPackagerOverrides {
|
|
|
14
14
|
noOpen?: boolean;
|
|
15
15
|
dryRun?: boolean;
|
|
16
16
|
logger?: BrowserLogger;
|
|
17
|
+
tools?: SafariPipelineTools;
|
|
17
18
|
}
|
|
18
19
|
export type SafariPackagerFn = (distPath: string, mode?: SafariPipelineMode, overrides?: SafariPackagerOverrides) => Promise<SafariPackageResult>;
|
|
19
20
|
export declare function createSafariPackager(options?: SafariPackagerOptions): SafariPackagerFn;
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import type { PluginInterface } from '../browsers-types.js';
|
|
2
|
+
import type { SafariPipelineTools } from './safari-launch/tools.js';
|
|
2
3
|
export type SafariPluginLike = Pick<PluginInterface, 'extension' | 'noOpen' | 'instanceId' | 'dryRun'> & {
|
|
3
4
|
browser: PluginInterface['browser'];
|
|
4
5
|
safariBinary?: string;
|
|
@@ -8,6 +9,7 @@ export type SafariPluginLike = Pick<PluginInterface, 'extension' | 'noOpen' | 'i
|
|
|
8
9
|
macOsOnly?: boolean;
|
|
9
10
|
forceRegenerate?: boolean;
|
|
10
11
|
announceDevReady?: boolean;
|
|
12
|
+
tools?: SafariPipelineTools;
|
|
11
13
|
};
|
|
12
14
|
export interface SafariBuildConfig {
|
|
13
15
|
extensionDir: string;
|
|
@@ -50,8 +50,11 @@ export interface BrowserConfig extends BrowserLaunchConfig {
|
|
|
50
50
|
geckoBinary?: string;
|
|
51
51
|
firefoxBinary?: string;
|
|
52
52
|
}
|
|
53
|
-
/**
|
|
54
|
-
|
|
53
|
+
/**
|
|
54
|
+
* Asset categories the perf-budgets plugin recognizes. `runtime` covers
|
|
55
|
+
* wasm cores and root-level runtime helpers emitted outside a surface folder.
|
|
56
|
+
*/
|
|
57
|
+
export type PerfBudgetCategory = 'content-script' | 'service-worker' | 'page' | 'runtime' | 'ignored';
|
|
55
58
|
/**
|
|
56
59
|
* Per-category asset size budgets (bytes) for compiling commands.
|
|
57
60
|
* Set at the top level, or per command via `commands.dev|build.perfBudgets`.
|
|
@@ -280,9 +280,16 @@ export declare function programAIHelpJSON(version: string): ProgramAIHelpJSON;
|
|
|
280
280
|
export declare function invalidAIHelpFormat(value: string): string;
|
|
281
281
|
export declare function removedNoRunnerFlag(): string;
|
|
282
282
|
export declare function deprecatedOutputAlias(flag: string): string;
|
|
283
|
+
export declare function openedSurface(surface: string): string;
|
|
284
|
+
export declare function replayedActionClick(listeners: number): string;
|
|
285
|
+
export declare function replayedCommand(listeners: number, command?: string): string;
|
|
286
|
+
export declare function openSurfaceWarning(warning: string): string;
|
|
287
|
+
export declare function openSurfaceFailed(surface: string, reason: string, engine?: string, remedy?: string): string;
|
|
283
288
|
export declare function openSurfaceGestureStep(surface: string): string;
|
|
284
289
|
export declare function openSurfaceNeedsGesturePlain(surface: string): string;
|
|
285
290
|
export declare function openSurfaceNeedsGesture(surface: string): string;
|
|
291
|
+
export declare function doctorHeader(browser: string, passes: number, total: number): string;
|
|
292
|
+
export declare function doctorRemedy(check: string, remediation: string): string;
|
|
286
293
|
export declare function controlDisabledInSessionPlain(browser: string, port: number | undefined, flag: string): string;
|
|
287
294
|
export declare function controlDisabledInSession(browser: string, port: number | undefined, flag: string): string;
|
|
288
295
|
export declare function noBrowserNotSupportedForCommand(command?: string): string;
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
export type Channel = 'info' | 'success' | 'warn' | 'error' | 'debug';
|
|
2
2
|
export declare function isDebug(): boolean;
|
|
3
3
|
export declare function prefix(type: Channel): string;
|
|
4
|
+
export declare function hasChannelPrefix(text: string): boolean;
|
|
4
5
|
export declare function isMachineOutput(): boolean;
|
|
5
6
|
export declare function humanLine(...parts: unknown[]): void;
|
|
6
7
|
export declare function humanWarn(...parts: unknown[]): void;
|
|
@@ -1,7 +1,9 @@
|
|
|
1
1
|
export declare function isSupportedNodeVersion(version: string): boolean;
|
|
2
2
|
export declare function isSupportedDenoVersion(version: string): boolean;
|
|
3
|
+
export declare function isSupportedBunVersion(version: string): boolean;
|
|
3
4
|
export declare function detectBunVersion(versions?: NodeJS.ProcessVersions): string | undefined;
|
|
4
5
|
export declare function detectDenoVersion(versions?: NodeJS.ProcessVersions): string | undefined;
|
|
5
6
|
export declare function unsupportedDenoVersionMessage(version: string): string;
|
|
6
|
-
export declare function
|
|
7
|
+
export declare function unsupportedBunVersionMessage(version: string): string;
|
|
8
|
+
export declare function unsupportedNodeVersionMessage(version: string): string;
|
|
7
9
|
export declare function enforceSupportedNodeVersion(version?: string, bunVersion?: string | undefined, denoVersion?: string | undefined): void;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
export declare const DEFAULT_TEMPLATE = "typescript";
|
|
2
2
|
export declare const BUNDLED_TEMPLATES: readonly string[];
|
|
3
|
-
export declare const TEMPLATE_CATALOG_URL = "https://github.com/extension-js/examples/tree/
|
|
3
|
+
export declare const TEMPLATE_CATALOG_URL = "https://github.com/extension-js/examples/tree/f8087f012cf195cba9aa2e3c32fd5a6729da33f0/examples";
|
|
4
4
|
export interface TemplateGroup {
|
|
5
5
|
title: string;
|
|
6
6
|
summary: string;
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
export declare const TEMPLATE_CORPUS_REPO = "extension-js/examples";
|
|
2
|
-
export declare const TEMPLATE_CORPUS_REF = "
|
|
2
|
+
export declare const TEMPLATE_CORPUS_REF = "f8087f012cf195cba9aa2e3c32fd5a6729da33f0";
|
|
3
3
|
export declare const TEMPLATE_CORPUS_SLUGS: readonly string[];
|
package/package.json
CHANGED
|
@@ -38,7 +38,7 @@
|
|
|
38
38
|
"extension": "./bin/extension.cjs"
|
|
39
39
|
},
|
|
40
40
|
"name": "extension",
|
|
41
|
-
"version": "4.1.
|
|
41
|
+
"version": "4.1.22",
|
|
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": {
|
|
@@ -54,7 +54,7 @@
|
|
|
54
54
|
"registry": "https://registry.npmjs.org"
|
|
55
55
|
},
|
|
56
56
|
"scripts": {
|
|
57
|
-
"pretest": "pnpm run compile",
|
|
57
|
+
"pretest": "node ../../scripts/ensure-workspace-deps.mjs && pnpm run compile",
|
|
58
58
|
"prepublishOnly": "pnpm run compile",
|
|
59
59
|
"compile": "rslib build",
|
|
60
60
|
"watch": "rslib build --watch",
|
|
@@ -98,7 +98,6 @@
|
|
|
98
98
|
"brave-location": "3.1.1",
|
|
99
99
|
"chrome-location2": "4.1.1",
|
|
100
100
|
"chromium-location": "2.1.2",
|
|
101
|
-
"cross-spawn": "^7.0.6",
|
|
102
101
|
"edge-location": "2.3.1",
|
|
103
102
|
"firefox-location2": "3.1.1",
|
|
104
103
|
"librewolf-location": "1.2.1",
|
|
@@ -106,9 +105,9 @@
|
|
|
106
105
|
"vivaldi-location2": "2.1.1",
|
|
107
106
|
"waterfox-location": "2.1.1",
|
|
108
107
|
"yandex-location": "2.1.1",
|
|
109
|
-
"extension-create": "4.1.
|
|
110
|
-
"extension-develop": "4.1.
|
|
111
|
-
"extension-install": "4.1.
|
|
108
|
+
"extension-create": "4.1.22",
|
|
109
|
+
"extension-develop": "4.1.22",
|
|
110
|
+
"extension-install": "4.1.22",
|
|
112
111
|
"commander": "^15.0.0",
|
|
113
112
|
"pintor": "0.3.0",
|
|
114
113
|
"semver": "^7.7.3",
|
|
@@ -122,7 +121,6 @@
|
|
|
122
121
|
},
|
|
123
122
|
"devDependencies": {
|
|
124
123
|
"@rslib/core": "^1.0.0",
|
|
125
|
-
"@types/cross-spawn": "^6.0.6",
|
|
126
124
|
"@types/semver": "^7.7.1",
|
|
127
125
|
"@types/ws": "^8.18.1",
|
|
128
126
|
"webextension-polyfill": "^0.12.0",
|