Compare commits

...

10 Commits

Author SHA1 Message Date
Aaron Klinker 8447f9aa7c Release version for testing 2023-12-17 09:53:27 -06:00
Aaron Klinker ee768f84bb Remove wxt/client inline for vitest 2023-12-17 09:49:38 -06:00
Aaron Klinker cfd4979a7a Fix docs 2023-12-17 09:41:43 -06:00
Aaron Klinker de5b4e16cd cleanup 2023-12-17 09:32:55 -06:00
Aaron Klinker 5c696da6e2 Fix build 2023-12-17 09:30:28 -06:00
Aaron Klinker 2363144bb6 Cleanup 2023-12-17 09:15:05 -06:00
Aaron Klinker 9e2d11d8db List imports by hand 2023-12-16 12:37:13 -06:00
Aaron Klinker f2523c778f Only export types for polyfill 2023-12-16 12:29:15 -06:00
Aaron Klinker 04a51581fc Fix tests, don't auto-import WebextensionPolyfill namespace 2023-12-16 12:28:25 -06:00
Aaron Klinker bb40db78e3 Import all dependencies from WXT 2023-12-16 12:20:15 -06:00
17 changed files with 82 additions and 19 deletions
+1 -1
View File
@@ -1,7 +1,7 @@
{ {
"name": "wxt", "name": "wxt",
"type": "module", "type": "module",
"version": "0.12.1", "version": "0.12.2-alpha1",
"description": "Next gen framework for developing web extensions", "description": "Next gen framework for developing web extensions",
"engines": { "engines": {
"node": ">=18", "node": ">=18",
-1
View File
@@ -21,7 +21,6 @@ const preset: tsup.Options = {
silent: true, silent: true,
sourcemap: false, sourcemap: false,
external: [ external: [
'vite',
'virtual:user-unlisted-script', 'virtual:user-unlisted-script',
'virtual:user-content-script-isolated-world', 'virtual:user-content-script-isolated-world',
'virtual:user-content-script-main-world', 'virtual:user-content-script-main-world',
+62
View File
@@ -17,3 +17,65 @@ export interface WxtI18n extends I18n.Static {
} }
export const browser: AugmentedBrowser = originalBrowser; export const browser: AugmentedBrowser = originalBrowser;
// re-export all the types from webextension-polyfill
// Because webextension-polyfill uses a weird namespace with "import export", there isn't a good way
// to get these types without re-listing them.
/** @ignore */
export type {
ActivityLog,
Alarms,
Bookmarks,
Action,
BrowserAction,
BrowserSettings,
BrowsingData,
CaptivePortal,
Clipboard,
Commands,
ContentScripts,
ContextualIdentities,
Cookies,
DeclarativeNetRequest,
Devtools,
Dns,
Downloads,
Events,
Experiments,
Extension,
ExtensionTypes,
Find,
GeckoProfiler,
History,
I18n,
Identity,
Idle,
Management,
Manifest,
ContextMenus,
Menus,
NetworkStatus,
NormandyAddonStudy,
Notifications,
Omnibox,
PageAction,
Permissions,
Pkcs11,
Privacy,
Proxy,
Runtime,
Scripting,
Search,
Sessions,
SidebarAction,
Storage,
Tabs,
Theme,
TopSites,
Types,
Urlbar,
UserScripts,
WebNavigation,
WebRequest,
Windows,
} from 'webextension-polyfill';
@@ -1,4 +1,4 @@
import browser from 'webextension-polyfill'; import { browser } from '~/browser';
import { import {
ContentScriptAnchoredOptions, ContentScriptAnchoredOptions,
ContentScriptPositioningOptions, ContentScriptPositioningOptions,
@@ -1,4 +1,4 @@
import browser from 'webextension-polyfill'; import { browser } from '~/browser';
/** /**
* https://developer.chrome.com/blog/longer-esw-lifetimes/ * https://developer.chrome.com/blog/longer-esw-lifetimes/
+2 -2
View File
@@ -1,6 +1,6 @@
import browser, { Manifest } from 'webextension-polyfill'; import { browser, Manifest } from '~/browser';
import { logger } from './logger'; import { logger } from './logger';
import { MatchPattern } from '@webext-core/match-patterns'; import { MatchPattern } from '~/sandbox';
export function reloadContentScript(contentScript: Manifest.ContentScript) { export function reloadContentScript(contentScript: Manifest.ContentScript) {
const manifest = browser.runtime.getManifest(); const manifest = browser.runtime.getManifest();
@@ -9,7 +9,7 @@ export function webextensionPolyfillInlineDeps(): vite.PluginOption {
return { return {
name: 'wxt:testing-inline-deps', name: 'wxt:testing-inline-deps',
config() { config() {
const wxtModules = ['wxt/browser', 'wxt/client']; const wxtModules = ['wxt/browser'];
return { return {
test: { test: {
server: { server: {
+1 -1
View File
@@ -1,4 +1,4 @@
import type { Manifest } from 'webextension-polyfill'; import type { Manifest } from '~/browser';
import { BuildOutput, EntrypointGroup, InternalConfig } from '~/types'; import { BuildOutput, EntrypointGroup, InternalConfig } from '~/types';
import { findEntrypoints } from './find-entrypoints'; import { findEntrypoints } from './find-entrypoints';
import { generateTypesDir } from './generate-wxt-dir'; import { generateTypesDir } from './generate-wxt-dir';
+1 -1
View File
@@ -1,4 +1,4 @@
import type { Manifest } from 'webextension-polyfill'; import type { Manifest } from '~/browser';
import { ContentScriptEntrypoint, InternalConfig } from '~/types'; import { ContentScriptEntrypoint, InternalConfig } from '~/types';
import { resolvePerBrowserOption } from './entrypoints'; import { resolvePerBrowserOption } from './entrypoints';
+1 -1
View File
@@ -1,4 +1,4 @@
import type { Manifest } from 'webextension-polyfill'; import type { Manifest } from '~/browser';
import { import {
Entrypoint, Entrypoint,
BackgroundEntrypoint, BackgroundEntrypoint,
+1 -1
View File
@@ -4,7 +4,7 @@
import { resolve } from 'path'; import { resolve } from 'path';
import { faker } from '@faker-js/faker'; import { faker } from '@faker-js/faker';
import merge from 'lodash.merge'; import merge from 'lodash.merge';
import type { Manifest } from 'webextension-polyfill'; import type { Manifest } from '~/browser';
import { import {
FsCache, FsCache,
InternalConfig, InternalConfig,
+1
View File
@@ -6,3 +6,4 @@
export * from './define-unlisted-script'; export * from './define-unlisted-script';
export * from './define-background'; export * from './define-background';
export * from './define-content-script'; export * from './define-content-script';
export * from './match-patterns';
+1
View File
@@ -0,0 +1 @@
export * from '@webext-core/match-patterns';
+1 -1
View File
@@ -8,7 +8,7 @@ import {
defineDriver, defineDriver,
Storage, Storage,
} from 'unstorage'; } from 'unstorage';
import browser, { Storage as BrowserStorage } from 'webextension-polyfill'; import { browser, Storage as BrowserStorage } from '~/browser';
export interface WebExtensionDriverOptions { export interface WebExtensionDriverOptions {
storageArea: 'sync' | 'local' | 'managed' | 'session'; storageArea: 'sync' | 'local' | 'managed' | 'session';
+1 -1
View File
@@ -1,5 +1,5 @@
import type * as vite from 'vite'; import type * as vite from 'vite';
import type { Manifest, Scripting } from 'webextension-polyfill'; import type { Manifest, Scripting } from '~/browser';
import { UnimportOptions } from 'unimport'; import { UnimportOptions } from 'unimport';
import { LogLevel } from 'consola'; import { LogLevel } from 'consola';
import { ContentScriptContext } from '../client/content-scripts/content-script-context'; import { ContentScriptContext } from '../client/content-scripts/content-script-context';
+1 -1
View File
@@ -11,7 +11,7 @@ import {
} from './external'; } from './external';
import { UnimportOptions } from 'unimport'; import { UnimportOptions } from 'unimport';
import { ResolvedConfig } from 'c12'; import { ResolvedConfig } from 'c12';
import type { Manifest } from 'webextension-polyfill'; import type { Manifest } from '~/browser';
import type { PluginVisualizerOptions } from 'rollup-plugin-visualizer'; import type { PluginVisualizerOptions } from 'rollup-plugin-visualizer';
export interface InternalConfig { export interface InternalConfig {
+5 -5
View File
@@ -1,9 +1,9 @@
import definition from 'virtual:user-background'; import definition from 'virtual:user-background';
import { setupWebSocket } from '../client/utils/setup-web-socket'; import { setupWebSocket } from '~/client/utils/setup-web-socket';
import { logger } from '../client/utils/logger'; import { logger } from '~/client/utils/logger';
import browser from 'webextension-polyfill'; import { browser } from '~/browser';
import { keepServiceWorkerAlive } from '../client/utils/keep-service-worker-alive'; import { keepServiceWorkerAlive } from '~/client/utils/keep-service-worker-alive';
import { reloadContentScript } from '../client/utils/reload-content-scripts'; import { reloadContentScript } from '~/client/utils/reload-content-scripts';
if (__COMMAND__ === 'serve') { if (__COMMAND__ === 'serve') {
try { try {