github intlify/vue-i18n v12.0.0-alpha.4

latest release: v11.4.3
pre-release5 hours ago

What's Changed

🌟 Features

🐛 Bug Fixes

  • fix: cannot resolve the ast messages which has json path by @kazupon in #2157
  • fix(typing): n() & d() output depending "part" option by @pinguet62 in #2193
  • Fix declaration order in Number formatting with options ResourceKeys must be before OptionsType by @louis49 in #2205
  • Fix: Adjust stub file paths for accurate resolution during rolldown build by @babu-ch in #2217
  • fix: revert vue devtools timeline listening code by @kazupon in #2359
  • fix(core-base): throw error when has string prototype key by @kazupon in #2402
  • fix(core-base): key paths containing javascript built-ins are handled inconsistently by @kazupon in #2403
  • fix: wrong $d type by @kazupon in #2405
  • fix: export conditions for node.js by @kazupon in #2408
  • fix: te returns false if the key contains a do by @kazupon in #2409
  • fix: modifiers skip missing translation keys by @kazupon in #2412
  • fix: Numeric named parameter overwrites plural parameter in pluralization by @kazupon in #2413
  • fix: Suppressing automatic locale fallback with ! breaks n/$n and d/$d formatting by @kazupon in #2418
  • fix: Resource Keys completion does not work with global messages and $t by @kazupon in #2421
  • fix: $n overloads use DefineNumberFormat instead of DefineDateTimeFormat by @babu-ch in #2459
  • fix: linked messages fail to resolve keys containing dots by @babu-ch in #2458
  • fix: backport CVE-2025-53892 (escapeParameterHtml DOM XSS hardening) to master by @vulgraph in #2470

💥 Breaking Changes

  • breaking: update component injection APIs for drop legacy by @kazupon in #2176
  • breaking: change MissingHandler 2nd parameter by @kazupon in #2358
  • breaking: deprecate register* global functions in favor of createI18n options by @kazupon in #2445
  • chore!: drop Node.js 20 support by @kazupon in #2487

⚡ Improvement Features

  • fix: update slot key filtering to exclude internal keys by @edison1105 in #2167
  • fix: improvement n and $n typings by @kazupon in #2174
  • Named, list, modifier examples by @mauryapari in #2186
  • fix: error on duplicate useI18n calling on local scope by @kazupon in #2204
  • fix: typo by @kazupon in #2222
  • Emit INVALID_TOKEN_IN_PLACEHOLDER on invalid palceholder token by @lutejka in #2252
  • fix: include vitest/node types to fix Vitest 4 type errors by @haoqunjiang in #2303
  • fix: useI18n implementation with provide-inject fully by @kazupon in #2357
  • refactor: reduce variable assignments and function calls by @BobbieGoede in #2392
  • fix: display message commpiler error strictly by @kazupon in #2410
  • fix: te function returns false although fallback exists by @kazupon in #2416
  • fix: Usage of n() and $n() with undefined should not throw errors by @kazupon in #2417
  • docs: add possible errors for number/datetime formatter APIs by @mitre88 in #2424
  • fix(i18n-t): pass component children as slots by @kazupon in #2475

🔒 Security Fixes

  • security(ci): harden workflows and add zizmor audit by @kazupon in #2489

📈 Performance Fixes

📝️ Documentations

🍭 Examples

New Contributors

Full Changelog: v12.0.0-alpha.2...v12.0.0-alpha.4

Don't miss a new vue-i18n release

NewReleases is sending notifications on new releases.