Skip to content

Releases: wxt-dev/wxt

wxt v0.19.12

19 Oct 19:02

Choose a tag to compare

compare changes

🚀 Enhancements

  • Add support for WXT_ environment variable prefix (#1076)
  • config: Add outDirTemplate for customizing output directory structure (#1074)

🔥 Performance

  • Replace execa with nano-spawn for smaller package size (#1042)
  • Downgrade esbuild so a single version is shared between sub-dependencies (#1045)

🩹 Fixes

  • Use directory name when zip.name and package.json#name are not provided (#1028)
  • Ensure consistent hook execution order and add docs (#1081)

📖 Documentation

  • Rewrite and restructure the documentation website (#933)

🏡 Chore

  • Remove email from changelog (#1027)
  • deps: Bump magicast from 0.3.4 to 0.3.5 (#1017)
  • deps: Bump esbuild from 0.23.0 to 0.24.0 (#1018)
  • deps: Bump linkedom from 0.18.4 to 0.18.5 (#1034)
  • deps: Bump execa from 9.3.1 to 9.4.0 (#1031)
  • Upgrade all non-major dependencies (#1040)
  • Shrink down on dependencies (#1050)
  • Enable extensionApi: chrome in template projects (#1083)

❤️ Contributors

@wxt-dev/i18n v0.2.1

19 Oct 05:50

Choose a tag to compare

compare changes

🩹 Fixes

  • Add missing "type" keyword to type export in generated file (22b5294)

📖 Documentation

  • Rewrite and restructure the documentation website (#933)

🏡 Chore

  • Fix typo in internal function name (21894d2)

❤️ Contributors

@wxt-dev/i18n v0.2.0

04 Oct 23:12

Choose a tag to compare

compare changes

🩹 Fixes

  • ⚠️ Remove invalid options argument (#1048)

To upgrade, if you were passing a final options argument, remove it. If you used the third argument to escape < symbol... You'll need to do it yourself:

- i18n.t("someKey", ["sub1"], { escapeLt: true });
+ i18n.t("someKey", ["sub1"]).replaceAll("<", "&lt;");

❤️ Contributors

@wxt-dev/i18n v0.1.1

04 Oct 18:24

Choose a tag to compare

compare changes

🩹 Fixes

  • Friendly error messages for null and undefined values inside message files (#1041)

🏡 Chore

  • Add oxlint for linting (#947)
  • Upgrade all non-major dependencies (#1040)

❤️ Contributors

wxt v0.19.11

02 Oct 13:59

Choose a tag to compare

compare changes

🚀 Enhancements

  • zip: Hooks (#993)
  • zip: wxt zip --sources and auto sources for opera (#1014)

🩹 Fixes

  • Reverse env files priority (#1016)
  • #1005 fixed, by updating type-definations to getItem method. (#1007, #1005)

🏡 Chore

  • Move some files around (#996)

❤️ Contributors

wxt v0.19.10

22 Sep 14:20

Choose a tag to compare

compare changes

🔥 Performance

  • Reduce hypersensitive onChange of watcher (#978)

🩹 Fixes

  • Fix config manifest type (#973)

📖 Documentation

  • Examples reference outDir vs. outputDir (#982)
  • Improved docs and links (#970)

🌊 Types

  • Fix ExtensionRunnerConfig.chromiumPref type (fda1e18)

❤️ Contributors

wxt v0.19.9

04 Sep 21:39

Choose a tag to compare

compare changes

🚀 Enhancements

  • modules: Add wxt.hook alias for wxt.hooks.hook (c5f78d0)
  • Use @types/chrome for config manifest type (#969)

🩹 Fixes

  • Allow adding multiple hyphens in an entrypoint name (#949)
  • Duplicate BuildOutput.publicAssets (#951)
  • Properly overload import.meta.env with WXT's own environment globals (#966)

📖 Documentation

  • Add docs around importEntrypoint to relevant functions (143b5ac)

🌊 Types

  • modules: Use NestedHooks instead of Partial for hooks object (0ebb013)

🏡 Chore

  • Fix type error (#946)
  • Add oxlint for linting (#947)
  • deps: Bump ora from 8.0.1 to 8.1.0 (#961)
  • deps: Bump unimport from 3.9.1 to 3.11.1 (#960)
  • deps: Bump execa from 9.3.0 to 9.3.1 (#957)
  • Cleanup leftover E2E test artifacts (#968)

❤️ Contributors

wxt v0.19.8

29 Aug 11:53

Choose a tag to compare

compare changes

🔥 Performance

  • Ignore output directories for all vite.watcher (#924)

🩹 Fixes

  • Fallback to GitHub API for listing templates when ungh is down (#944)

🏡 Chore

  • types: Cleanup types in wxt/browser/chrome (#932)

❤️ Contributors

  • 1natsu

wxt v0.19.7

19 Aug 15:41

Choose a tag to compare

compare changes

🚀 Enhancements

  • testing: Run WXT modules when setting up test environment (#926)
  • modules: Add addAlias helper (#928)

🩹 Fixes

  • testing: Stub chrome and browser globals with fakeBrowser automatically (#925)
  • Ensure TSConfig paths start with ../ or ./ so they are valid (#927)

📖 Documentation

  • Fix module name for wxt/browser/chrome (751706d)

🏡 Chore

  • Remove warning log for missing public directory (5f2e1c3)

i18n-v0.1.0

19 Aug 14:32
5821ae0

Choose a tag to compare

First release of @wxt-dev/i18n! It's meant to be a simpler, type-safe alternative to the browser.i18n APIs. If you're using the browser.i18n APIs, give it a try! If you're using a different i18n library, you can try it out, but you don't have to switch to it - keep doing what's working for you.

It features:

  • Full type-safety
  • A simpler messages file format
  • Plural forms
  • Translations in the manifest (like the vanilla APIs)
  • Translations in CSS (like the vanilla APIs)
  • Support for both WXT extensions and non-WXT extensions

Coming soon:

  • Number formatting (currency, rounding, commas)
  • Support for more plural forms (like Arabic's few/many)

Quickstart with WXT

Read the docs for a full overview: https://wxt.dev/guide/i18n/introduction.html

pnpm i -D @wxt-dev/i18n
// wxt.config.ts
export default defineConfig({
  modules: ["@wxt-dev/i18n/module"],
  manifest: {
    default_locale: "en"
  }
});
# <srcDir>/locales/en.yml
helloWorld: Hello world!
// Auto-imported or import manually from:
// import { i18n } from "#i18n";

i18n.t("helloWorld"); // "Hello world!"