wxt 0.10.4 → 0.11.1
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/browser.d.ts +1 -1
- package/dist/{chunk-RSHXTUF4.js → chunk-65FJ5ESC.js} +950 -892
- package/dist/cli.cjs +1441 -1397
- package/dist/client.d.ts +2 -2
- package/dist/client.js +59 -5
- package/dist/{execa-Z7B33P3C.js → execa-4F7CCWCA.js} +3 -3
- package/dist/{external-9107db91.d.ts → external-PmmO6xnl.d.ts} +20 -4
- package/dist/{external-32209cff.d.ts → external-irU6kFSB.d.cts} +126 -35
- package/dist/external-irU6kFSB.d.ts +710 -0
- package/dist/index.cjs +1441 -1397
- package/dist/index.d.cts +5 -4
- package/dist/index.d.ts +5 -4
- package/dist/index.js +75 -91
- package/dist/sandbox.d.ts +1 -1
- package/dist/storage.d.cts +1 -1
- package/dist/storage.d.ts +1 -1
- package/dist/storage.js +1 -1
- package/dist/testing.cjs +372 -110
- package/dist/testing.d.cts +2 -1
- package/dist/testing.d.ts +2 -1
- package/dist/testing.js +2 -2
- package/dist/virtual/content-script-entrypoint.js +59 -5
- package/dist/virtual/mock-browser.js +9 -14
- package/package.json +18 -17
- /package/dist/{chunk-YUG22S6W.js → chunk-VBXJIVYU.js} +0 -0
package/dist/client.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { B as BackgroundDefinition, C as ContentScriptContext, a as ContentScriptDefinition } from './external-
|
|
1
|
+
import { B as BackgroundDefinition, C as ContentScriptContext, a as ContentScriptDefinition } from './external-PmmO6xnl.js';
|
|
2
2
|
import * as wxt_browser from 'wxt/browser';
|
|
3
3
|
import 'webextension-polyfill';
|
|
4
4
|
|
|
@@ -181,4 +181,4 @@ type ContentScriptIframeOptions = ContentScriptPositioningOptions & ContentScrip
|
|
|
181
181
|
|
|
182
182
|
declare function defineContentScript(definition: ContentScriptDefinition): ContentScriptDefinition;
|
|
183
183
|
|
|
184
|
-
export { ContentScriptContext, ContentScriptIframe, ContentScriptIframeOptions, ContentScriptUi, ContentScriptUiOptions, createContentScriptIframe, createContentScriptUi, defineBackground, defineContentScript };
|
|
184
|
+
export { ContentScriptContext, type ContentScriptIframe, type ContentScriptIframeOptions, type ContentScriptUi, type ContentScriptUiOptions, createContentScriptIframe, createContentScriptUi, defineBackground, defineContentScript };
|
package/dist/client.js
CHANGED
|
@@ -27,6 +27,44 @@ var logger = {
|
|
|
27
27
|
error: (...args) => print(console.error, ...args)
|
|
28
28
|
};
|
|
29
29
|
|
|
30
|
+
// src/client/content-scripts/custom-events.ts
|
|
31
|
+
var WxtLocationChangeEvent = class _WxtLocationChangeEvent extends Event {
|
|
32
|
+
constructor(newUrl, oldUrl) {
|
|
33
|
+
super(_WxtLocationChangeEvent.EVENT_NAME, {});
|
|
34
|
+
this.newUrl = newUrl;
|
|
35
|
+
this.oldUrl = oldUrl;
|
|
36
|
+
}
|
|
37
|
+
static EVENT_NAME = getUniqueEventName("wxt:locationchange");
|
|
38
|
+
};
|
|
39
|
+
function getUniqueEventName(eventName) {
|
|
40
|
+
const entrypointName = typeof __ENTRYPOINT__ === "undefined" ? "build" : __ENTRYPOINT__;
|
|
41
|
+
return `${browser.runtime.id}:${entrypointName}:${eventName}`;
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
// src/client/content-scripts/location-watcher.ts
|
|
45
|
+
function createLocationWatcher(ctx) {
|
|
46
|
+
let interval;
|
|
47
|
+
let oldUrl;
|
|
48
|
+
return {
|
|
49
|
+
/**
|
|
50
|
+
* Ensure the location watcher is actively looking for URL changes. If it's already watching,
|
|
51
|
+
* this is a noop.
|
|
52
|
+
*/
|
|
53
|
+
run() {
|
|
54
|
+
if (interval != null)
|
|
55
|
+
return;
|
|
56
|
+
oldUrl = new URL(location.href);
|
|
57
|
+
interval = ctx.setInterval(() => {
|
|
58
|
+
let newUrl = new URL(location.href);
|
|
59
|
+
if (newUrl.href !== oldUrl.href) {
|
|
60
|
+
window.dispatchEvent(new WxtLocationChangeEvent(newUrl, oldUrl));
|
|
61
|
+
oldUrl = newUrl;
|
|
62
|
+
}
|
|
63
|
+
}, 1e3);
|
|
64
|
+
}
|
|
65
|
+
};
|
|
66
|
+
}
|
|
67
|
+
|
|
30
68
|
// src/client/content-scripts/content-script-context.ts
|
|
31
69
|
var ContentScriptContext = class _ContentScriptContext {
|
|
32
70
|
constructor(contentScriptName, options) {
|
|
@@ -43,6 +81,7 @@ var ContentScriptContext = class _ContentScriptContext {
|
|
|
43
81
|
static SCRIPT_STARTED_MESSAGE_TYPE = "wxt:content-script-started";
|
|
44
82
|
#isTopFrame = window.self === window.top;
|
|
45
83
|
#abortController;
|
|
84
|
+
#locationWatcher = createLocationWatcher(this);
|
|
46
85
|
get signal() {
|
|
47
86
|
return this.#abortController.signal;
|
|
48
87
|
}
|
|
@@ -139,18 +178,33 @@ var ContentScriptContext = class _ContentScriptContext {
|
|
|
139
178
|
/**
|
|
140
179
|
* Call `target.addEventListener` and remove the event listener when the context is invalidated.
|
|
141
180
|
*
|
|
181
|
+
* Includes additional events useful for content scripts:
|
|
182
|
+
*
|
|
183
|
+
* - `"wxt:locationchange"` - Triggered when HTML5 history mode is used to change URL. Content
|
|
184
|
+
* scripts are not reloaded when navigating this way, so this can be used to reset the content
|
|
185
|
+
* script state on URL change, or run custom code.
|
|
186
|
+
*
|
|
142
187
|
* @example
|
|
143
|
-
* ctx.addEventListener(
|
|
188
|
+
* ctx.addEventListener(document, "visibilitychange", () => {
|
|
144
189
|
* // ...
|
|
145
190
|
* });
|
|
146
|
-
* ctx.addEventListener(document, "
|
|
191
|
+
* ctx.addEventListener(document, "wxt:locationchange", () => {
|
|
147
192
|
* // ...
|
|
148
193
|
* });
|
|
149
194
|
*/
|
|
150
195
|
addEventListener(target, type, handler, options) {
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
196
|
+
if (type === "wxt:locationchange") {
|
|
197
|
+
if (this.isValid)
|
|
198
|
+
this.#locationWatcher.run();
|
|
199
|
+
}
|
|
200
|
+
target.addEventListener?.(
|
|
201
|
+
type.startsWith("wxt:") ? getUniqueEventName(type) : type,
|
|
202
|
+
// @ts-expect-error: Event don't match, but that's OK, EventTarget doesn't allow custom types in the callback
|
|
203
|
+
handler,
|
|
204
|
+
{
|
|
205
|
+
...options,
|
|
206
|
+
signal: this.signal
|
|
207
|
+
}
|
|
154
208
|
);
|
|
155
209
|
}
|
|
156
210
|
/**
|
|
@@ -2,7 +2,7 @@ import {
|
|
|
2
2
|
__commonJS,
|
|
3
3
|
__require,
|
|
4
4
|
__toESM
|
|
5
|
-
} from "./chunk-
|
|
5
|
+
} from "./chunk-VBXJIVYU.js";
|
|
6
6
|
|
|
7
7
|
// node_modules/.pnpm/isexe@2.0.0/node_modules/isexe/windows.js
|
|
8
8
|
var require_windows = __commonJS({
|
|
@@ -1816,8 +1816,8 @@ var getSpawnedResult = async ({ stdout, stderr, all }, { encoding, buffer, maxBu
|
|
|
1816
1816
|
};
|
|
1817
1817
|
|
|
1818
1818
|
// node_modules/.pnpm/execa@8.0.1/node_modules/execa/lib/promise.js
|
|
1819
|
-
var nativePromisePrototype = (
|
|
1820
|
-
})()
|
|
1819
|
+
var nativePromisePrototype = (async () => {
|
|
1820
|
+
})().constructor.prototype;
|
|
1821
1821
|
var descriptors = ["then", "catch", "finally"].map((property) => [
|
|
1822
1822
|
property,
|
|
1823
1823
|
Reflect.getOwnPropertyDescriptor(nativePromisePrototype, property)
|
|
@@ -1,5 +1,12 @@
|
|
|
1
1
|
import { Manifest } from 'webextension-polyfill';
|
|
2
2
|
|
|
3
|
+
declare class WxtLocationChangeEvent extends Event {
|
|
4
|
+
readonly newUrl: URL;
|
|
5
|
+
readonly oldUrl: URL;
|
|
6
|
+
static EVENT_NAME: string;
|
|
7
|
+
constructor(newUrl: URL, oldUrl: URL);
|
|
8
|
+
}
|
|
9
|
+
|
|
3
10
|
/**
|
|
4
11
|
* Implements [`AbortController`](https://developer.mozilla.org/en-US/docs/Web/API/AbortController).
|
|
5
12
|
* Used to detect and stop content script code when the script is invalidated.
|
|
@@ -64,21 +71,30 @@ declare class ContentScriptContext implements AbortController {
|
|
|
64
71
|
/**
|
|
65
72
|
* Call `target.addEventListener` and remove the event listener when the context is invalidated.
|
|
66
73
|
*
|
|
74
|
+
* Includes additional events useful for content scripts:
|
|
75
|
+
*
|
|
76
|
+
* - `"wxt:locationchange"` - Triggered when HTML5 history mode is used to change URL. Content
|
|
77
|
+
* scripts are not reloaded when navigating this way, so this can be used to reset the content
|
|
78
|
+
* script state on URL change, or run custom code.
|
|
79
|
+
*
|
|
67
80
|
* @example
|
|
68
|
-
* ctx.addEventListener(
|
|
81
|
+
* ctx.addEventListener(document, "visibilitychange", () => {
|
|
69
82
|
* // ...
|
|
70
83
|
* });
|
|
71
|
-
* ctx.addEventListener(document, "
|
|
84
|
+
* ctx.addEventListener(document, "wxt:locationchange", () => {
|
|
72
85
|
* // ...
|
|
73
86
|
* });
|
|
74
87
|
*/
|
|
75
|
-
addEventListener(target:
|
|
88
|
+
addEventListener<TTarget extends EventTarget, TType extends keyof WxtContentScriptEventMap>(target: TTarget, type: TType, handler: (event: WxtContentScriptEventMap[TType]) => void, options?: AddEventListenerOptions): void;
|
|
76
89
|
/**
|
|
77
90
|
* @internal
|
|
78
91
|
* Abort the abort controller and execute all `onInvalidated` listeners.
|
|
79
92
|
*/
|
|
80
93
|
notifyInvalidated(): void;
|
|
81
94
|
}
|
|
95
|
+
interface WxtContentScriptEventMap extends WindowEventMap {
|
|
96
|
+
'wxt:locationchange': WxtLocationChangeEvent;
|
|
97
|
+
}
|
|
82
98
|
|
|
83
99
|
type TargetBrowser = string;
|
|
84
100
|
interface ContentScriptDefinition extends ExcludableEntrypoint {
|
|
@@ -173,4 +189,4 @@ interface ExcludableEntrypoint {
|
|
|
173
189
|
exclude?: TargetBrowser[];
|
|
174
190
|
}
|
|
175
191
|
|
|
176
|
-
export { BackgroundDefinition as B, ContentScriptContext as C, UnlistedScriptDefinition as U, ContentScriptDefinition as a };
|
|
192
|
+
export { type BackgroundDefinition as B, ContentScriptContext as C, type UnlistedScriptDefinition as U, type ContentScriptDefinition as a };
|
|
@@ -3,6 +3,14 @@ import { Manifest, Scripting } from 'webextension-polyfill';
|
|
|
3
3
|
import { UnimportOptions } from 'unimport';
|
|
4
4
|
import { LogLevel } from 'consola';
|
|
5
5
|
import { PluginVisualizerOptions } from 'rollup-plugin-visualizer';
|
|
6
|
+
import { FSWatcher } from 'chokidar';
|
|
7
|
+
|
|
8
|
+
declare class WxtLocationChangeEvent extends Event {
|
|
9
|
+
readonly newUrl: URL;
|
|
10
|
+
readonly oldUrl: URL;
|
|
11
|
+
static EVENT_NAME: string;
|
|
12
|
+
constructor(newUrl: URL, oldUrl: URL);
|
|
13
|
+
}
|
|
6
14
|
|
|
7
15
|
/**
|
|
8
16
|
* Implements [`AbortController`](https://developer.mozilla.org/en-US/docs/Web/API/AbortController).
|
|
@@ -68,21 +76,30 @@ declare class ContentScriptContext implements AbortController {
|
|
|
68
76
|
/**
|
|
69
77
|
* Call `target.addEventListener` and remove the event listener when the context is invalidated.
|
|
70
78
|
*
|
|
79
|
+
* Includes additional events useful for content scripts:
|
|
80
|
+
*
|
|
81
|
+
* - `"wxt:locationchange"` - Triggered when HTML5 history mode is used to change URL. Content
|
|
82
|
+
* scripts are not reloaded when navigating this way, so this can be used to reset the content
|
|
83
|
+
* script state on URL change, or run custom code.
|
|
84
|
+
*
|
|
71
85
|
* @example
|
|
72
|
-
* ctx.addEventListener(
|
|
86
|
+
* ctx.addEventListener(document, "visibilitychange", () => {
|
|
73
87
|
* // ...
|
|
74
88
|
* });
|
|
75
|
-
* ctx.addEventListener(document, "
|
|
89
|
+
* ctx.addEventListener(document, "wxt:locationchange", () => {
|
|
76
90
|
* // ...
|
|
77
91
|
* });
|
|
78
92
|
*/
|
|
79
|
-
addEventListener(target:
|
|
93
|
+
addEventListener<TTarget extends EventTarget, TType extends keyof WxtContentScriptEventMap>(target: TTarget, type: TType, handler: (event: WxtContentScriptEventMap[TType]) => void, options?: AddEventListenerOptions): void;
|
|
80
94
|
/**
|
|
81
95
|
* @internal
|
|
82
96
|
* Abort the abort controller and execute all `onInvalidated` listeners.
|
|
83
97
|
*/
|
|
84
98
|
notifyInvalidated(): void;
|
|
85
99
|
}
|
|
100
|
+
interface WxtContentScriptEventMap extends WindowEventMap {
|
|
101
|
+
'wxt:locationchange': WxtLocationChangeEvent;
|
|
102
|
+
}
|
|
86
103
|
|
|
87
104
|
interface InlineConfig {
|
|
88
105
|
/**
|
|
@@ -168,17 +185,6 @@ interface InlineConfig {
|
|
|
168
185
|
* consola
|
|
169
186
|
*/
|
|
170
187
|
logger?: Logger;
|
|
171
|
-
/**
|
|
172
|
-
* Return custom Vite options from a function. See
|
|
173
|
-
* <https://vitejs.dev/config/shared-options.html>.
|
|
174
|
-
*
|
|
175
|
-
* [`root`](#root), [`configFile`](#configfile), and [`mode`](#mode) should be set in WXT's config
|
|
176
|
-
* instead of Vite's.
|
|
177
|
-
*
|
|
178
|
-
* This is a function because any vite plugins added need to be recreated for each individual
|
|
179
|
-
* build step, incase they have internal state causing them to fail when reused.
|
|
180
|
-
*/
|
|
181
|
-
vite?: (env: ConfigEnv) => WxtViteConfig | Promise<WxtViteConfig>;
|
|
182
188
|
/**
|
|
183
189
|
* Customize the `manifest.json` output. Can be an object, promise, or function that returns an
|
|
184
190
|
* object or promise.
|
|
@@ -278,10 +284,6 @@ interface InlineConfig {
|
|
|
278
284
|
* Add additional paths to the `.wxt/tsconfig.json`. Use this instead of overwriting the `paths`
|
|
279
285
|
* in the root `tsconfig.json` if you want to add new paths.
|
|
280
286
|
*
|
|
281
|
-
* Passed into Vite's
|
|
282
|
-
* [`resolve.alias`](https://vitejs.dev/config/shared-options.html#resolve-alias) option and used
|
|
283
|
-
* to generate the `.wxt/tsconfig.json`.
|
|
284
|
-
*
|
|
285
287
|
* The key is the import alias and the value is either a relative path to the root directory or an absolute path.
|
|
286
288
|
*
|
|
287
289
|
* @example
|
|
@@ -316,39 +318,65 @@ interface InlineConfig {
|
|
|
316
318
|
includeBrowserPolyfill?: boolean;
|
|
317
319
|
};
|
|
318
320
|
}
|
|
319
|
-
interface
|
|
320
|
-
|
|
321
|
+
interface InlineConfig {
|
|
322
|
+
/**
|
|
323
|
+
* Return custom Vite options from a function. See
|
|
324
|
+
* <https://vitejs.dev/config/shared-options.html>.
|
|
325
|
+
*
|
|
326
|
+
* [`root`](#root), [`configFile`](#configfile), and [`mode`](#mode) should be set in WXT's config
|
|
327
|
+
* instead of Vite's.
|
|
328
|
+
*
|
|
329
|
+
* This is a function because any vite plugins added need to be recreated for each individual
|
|
330
|
+
* build step, incase they have internal state causing them to fail when reused.
|
|
331
|
+
*/
|
|
332
|
+
vite?: (env: ConfigEnv) => WxtViteConfig | Promise<WxtViteConfig>;
|
|
321
333
|
}
|
|
334
|
+
type WxtViteConfig = Omit<vite.UserConfig, 'root' | 'configFile' | 'mode'>;
|
|
322
335
|
interface BuildOutput {
|
|
323
336
|
manifest: Manifest.WebExtensionManifest;
|
|
324
|
-
publicAssets:
|
|
337
|
+
publicAssets: OutputAsset[];
|
|
325
338
|
steps: BuildStepOutput[];
|
|
326
339
|
}
|
|
327
|
-
|
|
328
|
-
|
|
329
|
-
|
|
330
|
-
}
|
|
331
|
-
interface WxtDevServer extends vite.ViteDevServer {
|
|
340
|
+
type OutputFile = OutputChunk | OutputAsset;
|
|
341
|
+
interface OutputChunk {
|
|
342
|
+
type: 'chunk';
|
|
332
343
|
/**
|
|
333
|
-
*
|
|
344
|
+
* Relative, normalized path relative to the output directory.
|
|
345
|
+
*
|
|
346
|
+
* Ex: "content-scripts/overlay.js"
|
|
334
347
|
*/
|
|
335
|
-
|
|
348
|
+
fileName: string;
|
|
336
349
|
/**
|
|
337
|
-
*
|
|
350
|
+
* Absolute, normalized paths to all dependencies this chunk relies on.
|
|
338
351
|
*/
|
|
339
|
-
|
|
352
|
+
moduleIds: string[];
|
|
353
|
+
}
|
|
354
|
+
interface OutputAsset {
|
|
355
|
+
type: 'asset';
|
|
340
356
|
/**
|
|
341
|
-
*
|
|
357
|
+
* Relative, normalized path relative to the output directory.
|
|
358
|
+
*
|
|
359
|
+
* Ex: "icons/16.png"
|
|
342
360
|
*/
|
|
343
|
-
|
|
361
|
+
fileName: string;
|
|
362
|
+
}
|
|
363
|
+
interface BuildStepOutput {
|
|
364
|
+
entrypoints: EntrypointGroup;
|
|
365
|
+
chunks: OutputFile[];
|
|
366
|
+
}
|
|
367
|
+
interface WxtDevServer extends Omit<WxtBuilderServer, 'listen'>, ServerInfo {
|
|
344
368
|
/**
|
|
345
369
|
* Stores the current build output of the server.
|
|
346
370
|
*/
|
|
347
371
|
currentOutput: BuildOutput;
|
|
348
372
|
/**
|
|
349
|
-
* Start the server
|
|
373
|
+
* Start the server.
|
|
350
374
|
*/
|
|
351
375
|
start(): Promise<void>;
|
|
376
|
+
/**
|
|
377
|
+
* Transform the HTML for dev mode.
|
|
378
|
+
*/
|
|
379
|
+
transformHtml(url: string, html: string, originalUrl?: string | undefined): Promise<string>;
|
|
352
380
|
/**
|
|
353
381
|
* Tell the extension to reload by running `browser.runtime.reload`.
|
|
354
382
|
*/
|
|
@@ -614,6 +642,69 @@ interface ExtensionRunnerConfig {
|
|
|
614
642
|
*/
|
|
615
643
|
startUrls?: string[];
|
|
616
644
|
}
|
|
617
|
-
|
|
645
|
+
interface WxtBuilder {
|
|
646
|
+
/**
|
|
647
|
+
* Name of tool used to build. Ex: "Vite" or "Webpack".
|
|
648
|
+
*/
|
|
649
|
+
name: string;
|
|
650
|
+
/**
|
|
651
|
+
* Version of tool used to build. Ex: "5.0.2"
|
|
652
|
+
*/
|
|
653
|
+
version: string;
|
|
654
|
+
/**
|
|
655
|
+
* Build a single entrypoint group. This is effectively one of the multiple "steps" during the
|
|
656
|
+
* build process.
|
|
657
|
+
*/
|
|
658
|
+
build(group: EntrypointGroup): Promise<BuildStepOutput>;
|
|
659
|
+
/**
|
|
660
|
+
* Start a dev server at the provided port.
|
|
661
|
+
*/
|
|
662
|
+
createServer(info: ServerInfo): Promise<WxtBuilderServer>;
|
|
663
|
+
}
|
|
664
|
+
interface WxtBuilderServer {
|
|
665
|
+
/**
|
|
666
|
+
* Start the server.
|
|
667
|
+
*/
|
|
668
|
+
listen(): Promise<void>;
|
|
669
|
+
/**
|
|
670
|
+
* Transform the HTML for dev mode.
|
|
671
|
+
*/
|
|
672
|
+
transformHtml(url: string, html: string, originalUrl?: string | undefined): Promise<string>;
|
|
673
|
+
/**
|
|
674
|
+
* The web socket server used to communicate with the extension.
|
|
675
|
+
*/
|
|
676
|
+
ws: {
|
|
677
|
+
/**
|
|
678
|
+
* Send a message via the server's websocket, with an optional payload.
|
|
679
|
+
*
|
|
680
|
+
* @example
|
|
681
|
+
* ws.send("wxt:reload-extension");
|
|
682
|
+
* ws.send("wxt:reload-content-script", { ... });
|
|
683
|
+
*/
|
|
684
|
+
send(message: string, payload?: any): void;
|
|
685
|
+
/**
|
|
686
|
+
* Listen for messages over the server's websocket.
|
|
687
|
+
*/
|
|
688
|
+
on(message: string, cb: (payload: any) => void): void;
|
|
689
|
+
};
|
|
690
|
+
/**
|
|
691
|
+
* Chokidar file watcher instance.
|
|
692
|
+
*/
|
|
693
|
+
watcher: FSWatcher;
|
|
694
|
+
}
|
|
695
|
+
interface ServerInfo {
|
|
696
|
+
/**
|
|
697
|
+
* Ex: `3000`
|
|
698
|
+
*/
|
|
699
|
+
port: number;
|
|
700
|
+
/**
|
|
701
|
+
* Ex: `"localhost"`
|
|
702
|
+
*/
|
|
703
|
+
hostname: string;
|
|
704
|
+
/**
|
|
705
|
+
* Ex: `"http://localhost:3000"`
|
|
706
|
+
*/
|
|
707
|
+
origin: string;
|
|
708
|
+
}
|
|
618
709
|
|
|
619
|
-
export { BuildOutput as B, ContentScriptEntrypoint as C, ExtensionRunnerConfig as E, GenericEntrypoint as G, InlineConfig as I, Logger as L,
|
|
710
|
+
export type { BuildOutput as B, ContentScriptEntrypoint as C, ExtensionRunnerConfig as E, GenericEntrypoint as G, InlineConfig as I, Logger as L, OutputFile as O, PopupEntrypoint as P, ServerInfo as S, TargetBrowser as T, UserConfig as U, WxtDevServer as W, WxtViteConfig as a, OutputChunk as b, OutputAsset as c, BuildStepOutput as d, TargetManifestVersion as e, BaseEntrypointOptions as f, BaseEntrypoint as g, BackgroundEntrypoint as h, OptionsEntrypoint as i, Entrypoint as j, EntrypointGroup as k, OnContentScriptStopped as l, ContentScriptDefinition as m, BackgroundDefinition as n, UnlistedScriptDefinition as o, PerBrowserOption as p, ExcludableEntrypoint as q, UserManifest as r, UserManifestFn as s, ConfigEnv as t, WxtBuilder as u, WxtBuilderServer as v };
|