You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
fix(types): <Trans i18nKey={$ => ...}> now typechecks under enableSelector: 'strict'. The Trans component's conditional type was gated on _EnableSelector extends true | 'optimize', excluding 'strict' and falling back to the legacy string-key signature. Runtime was already correct (it calls keyFromSelector(i18nKey) whenever typeof i18nKey === 'function'); this is a type-only fix that widens the conditional to include 'strict'. Thanks @Faithfinder (#1921)
feat: useTranslation([nsA, nsB, ...]) now passes its full namespace list to getFixedT via the new scopeNs opt (requires i18next ≥ v26.0.10). This makes selector calls with a secondary-namespace prefix resolve correctly under default nsMode: t($ => $.nsB.foo) previously missed silently because the bound ns was the primary string only and i18next's selector rewrite needed an array. Resolution semantics are unchanged — plain t('key') lookups still stay isolated to the primary namespace by default; use nsMode: 'fallback' to opt into multi-ns fallback resolution as before. Fixes i18next#2429 for useTranslation-based callers.
fix: restore the v17 nodesToString output format consumed by i18next-cli's extractor while still rendering 1919 correctly
17.0.5 fixed 1919 by changing what nodesToString produced, which inadvertently changed the extracted translation strings for keep-tags wrapping non-keep React elements
The fix now lives in the renderer: indexed <N> placeholders nested inside a keep-tag are scoped to that tag's own original React children (matching kept tags by name and positional occurrence at each level), so the translation string format produced by nodesToString is unchanged
fix: <Trans /> no longer breaks child rendering when a kept HTML node (transKeepBasicHtmlNodesFor) wraps a non-keep React element 1919 — superseded by 17.0.6, which keeps the same runtime fix without changing the nodesToString output
fix: transKeepBasicHtmlNodesFor now correctly preserves HTML tag names when children contain interpolations or mixed content 230
Previously, <strong>{{name}}</strong> was incorrectly serialized as <1>{{name}}</1> — the tag name was only preserved for plain string children
This bug existed since the feature was introduced and affects auto-generated keys (when no explicit i18nKey is provided)
If you rely on auto-generated Trans keys containing indexed tags for kept HTML elements with interpolation children, you will need to update your translation files
Other changes
updated dev dependencies (vitest, rollup plugins, happy-dom, typescript, etc.)
16.6.6
fix(peer-deps): bump i18next peer dependency to >= 25.10.9 to match required type exports (ConstrainTarget, ApplyTarget, GetSource) used by TransSelector1911
16.6.5
fix(types): selector keyPrefix overload in useTranslation no longer matches when keyPrefix is absent, fixing defaultNS: false with explicit ns option 2412
fix(types): merge TransSelector overloads into a single signature so typeof Trans remains extendable 1909
16.6.2
feat(types): useTranslation now accepts selector functions as keyPrefix with full type-safe key narrowing when enableSelector is enabled 2367
16.6.1
feat(types): i18nKey of <Trans i18nKey={sk} /> to accept a SelectorKey2364
16.6.0
warn when t is called before ready with useSuspense: false1896
type-safe values prop on <Trans /> component — interpolation variables are now inferred from the translation string when custom types are configured 1772
16.5.8
A selector function cannot be resolved without an i18n instance... returning empty string is safer than leaking the raw function reference. 1907
16.5.7
fix: <Trans> component with enableSelector: true does not support multiple selectors for fallbacks 1907
16.5.6
fix: prevent crash in useSSR when init() hasn't been called before useSSR — now logs a warning instead of throwing 1604
16.5.5
fix: prevent crash in useSSR, getInitialProps and Translation when no i18next instance is available (e.g. in monorepo setups with duplicate react-i18next copies) — now logs a clear warning instead of throwing 1604
16.5.4
fix: Overriding React component props not working 1902
fix: Type errors when you've declared a resources type 1899 via 1900
16.5.1
fix: export nodesToString (runtime + TypeScript typings) to support i18next-cli (i18next/i18next-cli#155)
16.5.0
Add configuration option transDefaultProps to set default props for the Trans component (e.g. tOptions, shouldUnescape, values) 1895
16.4.1
fix(Trans): prevent double-escaping of interpolated values in component props (e.g. title). Unescape HTML entities before passing prop values to React to avoid rendered output like &quot; / &#​39;. 1893
16.4.0
<Trans count> prop: optional - infer count from children 1891
Fix: avoid the "ref is not a prop" warning when a user ref is placed on an element inside <Trans>1887, by still trying to fix element.ref access issue with react 19 1846
16.3.3
improve useTranslation to fix "Maximum update depth exceeded" but still support new react-compiler 18851863
feat: use const type parameters for useTranslation() 1842
15.4.1
fix: unique key warning on componentized element 1835
15.4.0
feat: add meta with codes on warnings to allow conditional logging 1826
15.3.0
Uses the i18next logger instead of the default console logger, if there is a valid i18next instance. Now the debug i18next option is respected, and you can also inject your own logger module: https://www.i18next.com/misc/creating-own-plugins#logger
15.2.0
This version may be breaking if you still use React < v18 with TypeScript.
For JS users this version is equal to v15.1.4
fix: Global JSX namespace is deprecated 1823 with 1822
15.1.4
Fix: warning each child should have a unique key 1820
15.1.3
fix: Self-closing REACT components in translation strings should not attempt to replace the component's children 18151816
15.1.2
fix: Attempted to assign to readonly property 1813
15.1.1
fix: Not all namespaces are loaded when passing the lng option to useTranslate 1809
15.1.0
fix: <Trans /> warns 'Each child in a list should have a unique "key" prop.' for react 19 1806
optimization for optional lng prop for useTranslation, should now prevent missings when lazy loading translations 1637
12.3.0
optional lng prop for useTranslation (helping on server side 1637)
12.2.2
try to fix conditional exports in package.json
12.2.1
type fix: the type of defaultNS in I18nextProvider should support string[] 1633
12.2.0
if defaultValue is passed in not ready t functio (via useTranslation) return that instead of the key, even though the user-land could should be fixed 1618
12.1.5
fix react merged types 1606 originally introduced with #1531 to address #1506
Only pass forwardedRef to children if options.withRef is false 999
11.2.1
remove used jsx in withTranslation to avoid issues while compiling 994
11.2.0
withTranslation allow not only passing a ref with option withRef but also passing a forwardedRef from outside as props (before forwardedRef was only added to wrapped component if the withRef option was set) 992
11.1.0
Update rollup.config.js for IE11 Transpilations 988
11.0.1
typescript: Use updated ts export default from i18next 984
11.0.0
Breaking based on i18next changes made in v18.0.0 changing the language should not trigger a Suspense anylonger. The state will be ready and t bound to the previous language until languageChanged get triggered -> this results in a nicer experience for users (no flickering Suspense while changing the language). Based on issue "Suspence is fired during lang change when useTranslation called in between" 975
the default bindI18n is now languageChanged and languageChanging was removed from that default
Adding languageChanging to bindI18n will bring back old behaviour where a language change will trigger a Suspense / ready: false while loading those new translations
You can now override the defaults in i18next.options.react for bindI18n, bindI18nStore and useSuspense in the hook by useTranslation(ns, { bindI18n, bindI18nStore, useSuspense}) or in the HOC by passing those as props.
10.13.2
typescript: Add t function to TransProps types 969
assert context get destructed of empty object if context gets used falsely on a component got pulled out of main tree from react-portal or similar
10.11.3
only apply initial values in useSSR, withSSR on i18next instances not being a clone (eg. created by express middleware on server) ==> don't apply on serverside
10.11.2
Reload translations whenever namespaces passed to useTranslation() change 878
10.11.1
fixes a regression in Trans component taking namespace from passed t function 867
10.11.0
Restore support passing the defaultNS via I18nextProvider prop 860
10.10.0
HOC: expose wrapped component as WrappedComponent property 853
trigger suspense on languageChanging by add listening to that event too (new in i18next@15.1.0) - if you do not like this behaviour of suspending during languageChange - remove it from bindI18n
Support taking values for interpolation not only from content but the props count, values too: Replace count prop from in translation string automatically 826
useTranslation useEffect also guard against unmounted for bound events...seems unmount and actual call to useEffect cleanup are not in correct order (component is first unmounted and then unbound - should be vice versa)
Adding support for nested component inside Trans that are a list.map like <ul>{['a', 'b'].map(item => ( <li key={item}>{item}</li> ))}</ul>784 (Adding <ul i18nIsDynamicList> will also create correct missing string)
10.4.2
typescript: updated typescript definition of the UseTranslationOptions interface, added the useSuspense configuration property 778
10.4.1
allow p in Trans
10.4.0
allow br, strong, i tags be used for translations handled by Trans
10.3.1
IE11 sending console as the first argument to apply 774
10.3.0
Allow to enable/disable useSuspense at a hook or component level 769
translate HOC was renamed to "withNamespaces" as it controls which namespaces should be loaded
I18n render prop was renamed to "NamespacesConsumer" as it controls which namespaces should be "consumed"
there is a new context.consuming HOC "withI18n" adds i18n, t to component props (without the extra options of withNamespaces)
there is a simplification for interpolation in translations
'Hello <1><0>{{name}}</0></1>, you have <3>{{count}}</3> message. Open <5>hear</5>.'
can be written as:
'Hello <1>{{name}}</1>, you have {{count}} message. Open <5>hear</5>.'
=> there is no need to add <0>...</0> around interpolated values anylonger
=> your old files having those extra pseudo tags will still work without needing to change them
there is a new I18nContext -> I18nContext.provider, I18next.consumer using new react context api
Using react's new context api
should be non breaking in most cases, with following exceptions:
using preact you will have to use preact.createContext plugin (or eventual hope the provided polyfill works for preact too)
you used the translate.getWrappedInstance function -> you will need to use instance.getWrappedInstance().getWrappedInstance() now as the translate hoc is now wrapped in an additional I18nContext.Consumer
still we prefer to increase this to a major version as beside the described egde cases there might be other effects we not have covered with our tests
7.13.0
Load missing namespaces when updating ns prop on I18n component 523
7.12.0
pass down lng via props in I18n and translate HOC - for use cases like 508
7.11.1
fix related to issue #504: also report default Namespace with translate() 506
7.11.0
Added reportNS function to I18NextProvider to report used namespaces 500
7.10.1
fix small issue in icu.macro introduced on refactoring
7.10.0
Adds import { Trans, Plural, Select } from react-i18next/icu.macro a babel macro to allow nicer components used with ICU format (which as default would result in invalid JSX). discussion
7.9.1
Skip custom html tags in Trans component translation PR482
7.9.0
Support defaultNS from I18nextProvider props PR478
passes down tReady from translate hoc for cases you prefer showing a placeholder instead of default return null in case of wait: true and not yet loaded translations PR400
I18n render prop calls with ready as third param
7.4.0
enables setting prop ns on Trans component to override namespace passed by render prop or hoc
allows trans component with no children just returning the string getting from translations
7.3.6
reorder selection of i18n in I18n render prop
7.3.5
reorder selection of i18n in I18n render prop
7.3.4
more save access to options in general
7.3.3
more save access to options.react
7.3.2
replace Interpolate PureComponent with Component to assert it gets rerendered on lng change
7.3.1
remove react-dom from peer dependencies as module is used in react-native too
7.3.0
Allow translate HOC to take a function for getting namespaces 372
Render empty string on empty string as Trans child PR364
7.1.1
fixes: bring back Trans component t fc from context
7.1.0
optional take i18n.t in Trans component if non t function passed in via props or context
7.0.2
fixes rendering in Trans component in case of no parent
7.0.1
working Trans component without the need of setting options.react
7.0.0
[BREAKING] As with react 16 you can return multiple elements from render - based on that we do not need to return a wrapper any longer from Trans component.
✂ Note
PR body was truncated to here.
Configuration
📅 Schedule: (UTC)
Branch creation
Between 12:00 AM and 03:59 AM, only on Monday (* 0-3 * * 1)
Automerge
At any time (no schedule defined)
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
If you want to rebase/retry this PR, check this box
✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 80.19%. Comparing base (73d3300) to head (a3d66fc). ⚠️ Report is 3 commits behind head on master.
Renovate failed to update an artifact related to this branch. You probably do not want to merge this PR as-is.
♻ Renovate will retry this branch, including artifacts, only when one of the following happens:
any of the package files in this branch needs updating, or
the branch becomes conflicted, or
you click the rebase/retry checkbox if found above, or
you rename this PR's title to start with "rebase!" to trigger it manually
The artifact failure details are included below:
File name: ui/package-lock.json
npm warn Unknown env config "store". This will stop working in the next major version of npm. See `npm help npmrc` for supported config options.
npm error code ERESOLVE
npm error ERESOLVE unable to resolve dependency tree
npm error
npm error While resolving: lamassu-ui@0.0.0
npm error Found: i18next@25.10.10
npm error node_modules/i18next
npm error i18next@"25.10.10" from the root project
npm error
npm error Could not resolve dependency:
npm error peer i18next@">= 26.2.0" from react-i18next@17.0.8
npm error node_modules/react-i18next
npm error react-i18next@"17.0.8" from the root project
npm error
npm error Fix the upstream dependency conflict, or retry this command with --force or --legacy-peer-deps to accept an incorrect (and potentially broken) dependency resolution.
npm error
npm error
npm error For a full report see:
npm error /runner/cache/others/npm/_logs/2026-05-28T22_50_43_558Z-eresolve-report.txt
npm error A complete log of this run can be found in: /runner/cache/others/npm/_logs/2026-05-28T22_50_43_558Z-debug-0.log
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This PR contains the following updates:
16.6.6→17.0.8Warning
Some dependencies could not be looked up. Check the Dependency Dashboard for more information.
Release Notes
i18next/react-i18next (react-i18next)
v17.0.8Compare Source
<Trans i18nKey={$ => ...}>now typechecks underenableSelector: 'strict'. TheTranscomponent's conditional type was gated on_EnableSelector extends true | 'optimize', excluding'strict'and falling back to the legacy string-key signature. Runtime was already correct (it callskeyFromSelector(i18nKey)whenevertypeof i18nKey === 'function'); this is a type-only fix that widens the conditional to include'strict'. Thanks @Faithfinder (#1921)v17.0.7Compare Source
useTranslation([nsA, nsB, ...])now passes its full namespace list togetFixedTvia the newscopeNsopt (requiresi18next≥ v26.0.10). This makes selector calls with a secondary-namespace prefix resolve correctly under defaultnsMode:t($ => $.nsB.foo)previously missed silently because the boundnswas the primary string only and i18next's selector rewrite needed an array. Resolution semantics are unchanged — plaint('key')lookups still stay isolated to the primary namespace by default; usensMode: 'fallback'to opt into multi-ns fallback resolution as before. Fixes i18next#2429 foruseTranslation-based callers.v17.0.6Compare Source
nodesToStringoutput format consumed byi18next-cli's extractor while still rendering 1919 correctlynodesToStringproduced, which inadvertently changed the extracted translation strings for keep-tags wrapping non-keep React elements<N>placeholders nested inside a keep-tag are scoped to that tag's own original React children (matching kept tags by name and positional occurrence at each level), so the translation string format produced bynodesToStringis unchangedv17.0.5Compare Source
<Trans />no longer breaks child rendering when a kept HTML node (transKeepBasicHtmlNodesFor) wraps a non-keep React element 1919 — superseded by 17.0.6, which keeps the same runtime fix without changing thenodesToStringoutputv17.0.4Compare Source
React does not recognize the 'i18nIsDynamicList' prop on a DOM elementwarning 1915v17.0.3Compare Source
React.Fragmentinside<Trans />1914v17.0.2Compare Source
valuesprop on<Trans />now only requires interpolation variables for the specifici18nKey, not all variables in the namespace 1913v17.0.1Compare Source
>= 26.0.1(forgot to do it in last version)interpolation.formattoi18n.services.formatter.add()(i18next v26)v17.0.0Compare Source
Potentially breaking changes
transKeepBasicHtmlNodesFornow correctly preserves HTML tag names when children contain interpolations or mixed content 230<strong>{{name}}</strong>was incorrectly serialized as<1>{{name}}</1>— the tag name was only preserved for plain string childreni18nKeyis provided)Other changes
16.6.6
>= 25.10.9to match required type exports (ConstrainTarget,ApplyTarget,GetSource) used byTransSelector191116.6.5
useTranslationno longer matches whenkeyPrefixis absent, fixingdefaultNS: falsewith explicitnsoption 241216.6.4
16.6.3
TransSelectoroverloads into a single signature sotypeof Transremains extendable 190916.6.2
useTranslationnow accepts selector functions askeyPrefixwith full type-safe key narrowing whenenableSelectoris enabled 236716.6.1
<Trans i18nKey={sk} />to accept aSelectorKey236416.6.0
tis called beforereadywithuseSuspense: false1896valuesprop on<Trans />component — interpolation variables are now inferred from the translation string when custom types are configured 177216.5.8
16.5.7
<Trans>component withenableSelector: truedoes not support multiple selectors for fallbacks 190716.5.6
useSSRwheninit()hasn't been called beforeuseSSR— now logs a warning instead of throwing 160416.5.5
useSSR,getInitialPropsandTranslationwhen no i18next instance is available (e.g. in monorepo setups with duplicatereact-i18nextcopies) — now logs a clear warning instead of throwing 160416.5.4
16.5.3
16.5.2
16.5.1
nodesToString(runtime + TypeScript typings) to supporti18next-cli(i18next/i18next-cli#155)16.5.0
transDefaultPropsto set default props for the Trans component (e.g.tOptions,shouldUnescape,values) 189516.4.1
&quot;/&#​39;. 189316.4.0
<Trans count>prop: optional - infer count from children 189116.3.5
16.3.4
<Trans>1887, by still trying to fix element.ref access issue with react 19 184616.3.3
16.3.2
16.3.1
16.3.0
16.2.4
16.2.3
16.2.2
16.2.1
16.2.0
16.1.6
16.1.5
16.1.4
16.1.3
16.1.2
16.1.1
IcuTranscomponent 187316.1.0
IcuTranscomponent 186916.0.1
16.0.0
15.7.4
15.7.3
15.7.2
15.7.1
15.7.0
15.6.1
avoid exception when passing bindI18n: false 1856
15.6.0
fix: passing components as object should still allow for indexed matching of children 1854
15.5.3
chore: update
@babel/runtime185115.5.2
fix element.ref access issue with react 19 1846
15.5.1
add typescript as optional peer dependency 1843
15.5.0
feat: use const type parameters for useTranslation() 1842
15.4.1
fix: unique key warning on componentized element 1835
15.4.0
feat: add meta with codes on warnings to allow conditional logging 1826
15.3.0
Uses the i18next logger instead of the default console logger, if there is a valid i18next instance. Now the debug i18next option is respected, and you can also inject your own logger module: https://www.i18next.com/misc/creating-own-plugins#logger
15.2.0
This version may be breaking if you still use React < v18 with TypeScript.
For JS users this version is equal to v15.1.4
15.1.4
15.1.3
15.1.2
15.1.1
15.1.0
<Trans />warns 'Each child in a list should have a unique "key" prop.' for react 19 180615.0.3
15.0.2
15.0.1
15.0.0
14.1.3
14.1.2
14.1.1
14.1.0
Trans): add typechecking on context prop 1732 (might break if using "internal"TransorTransProps)14.0.8
14.0.7
14.0.6
14.0.5
14.0.4
14.0.3
14.0.2
14.0.1
CustomInstanceExtensions171314.0.0
13.5.0
13.4.1
13.4.0
13.3.2
13.3.1
13.3.0
13.2.2
13.2.1
13.2.0
13.1.2
13.1.1
13.1.0
13.0.3
13.0.2
13.0.1
13.0.0
12.3.1
12.3.0
12.2.2
12.2.1
12.2.0
12.1.5
12.1.4
12.1.3
12.1.2
12.1.1
12.1.0
12.0.0
11.18.6
11.18.5
11.18.4
11.18.3
11.18.2
11.18.1
11.18.0
11.17.4
11.17.3
11.17.2
11.17.1
11.17.0
11.16.11
11.16.10
11.16.9
11.16.8
11.16.7
11.16.6
11.16.5
11.16.4
11.16.3
11.16.2
11.16.1
11.16.0
11.15.7
11.15.6
11.15.5
11.15.4
11.15.3
11.15.2
11.15.1
11.15.0
11.14.3
11.14.2
11.14.1
11.14.0
11.13.0
11.12.0
11.11.4
11.11.3
11.11.2
11.11.1
11.11.0
CustomTypeOptionstype definition and deprecate theResourcestype definition 132811.10.0
11.9.0
11.8.15
11.8.14
11.8.13
11.8.12
11.8.11
11.8.10
11.8.9
11.8.8
TFuncKeyto be used without specifying the namespace, in the same way TFunction and useTranslation work 126211.8.7
11.8.6
11.8.5
11.8.4
11.8.3
11.8.2
11.8.1
11.8.0
11.7.4
11.7.3
11.7.2
11.7.1
11.7.0
11.6.0
11.5.1
11.5.0
11.4.0
11.3.5
11.3.4
tfunction if the component is unmounted. (1051)[#1051]11.3.3
11.3.2
11.3.1
11.3.0
11.2.7
parenttype 102111.2.6
parentprop type 101911.2.5
11.2.4
11.2.3
11.2.2
11.2.1
11.2.0
11.1.0
rollup.config.jsfor IE11 Transpilations 98811.0.1
11.0.0
tbound to the previous language untillanguageChangedget triggered -> this results in a nicer experience for users (no flickering Suspense while changing the language). Based on issue "Suspence is fired during lang change when useTranslation called in between" 975languageChangedandlanguageChangingwas removed from that defaultlanguageChangingto bindI18n will bring back old behaviour where a language change will trigger a Suspense / ready: false while loading those new translationsbindI18n,bindI18nStoreanduseSuspensein the hook byuseTranslation(ns, { bindI18n, bindI18nStore, useSuspense})or in the HOC by passing those as props.10.13.2
10.13.1
10.13.0
valuesobject passed to Trans if passed - else use the one on props 94710.12.5
10.12.4
10.12.3
10.12.2
10.12.1
10.12.0
10.11.5
10.11.4
10.11.3
10.11.2
10.11.1
10.11.0
10.10.0
10.9.1
10.9.0
10.8.1
10.8.0
10.7.0
10.6.2
10.6.1
10.6.0
10.5.3
10.5.2
10.5.1
10.5.0
<ul>{['a', 'b'].map(item => ( <li key={item}>{item}</li> ))}</ul>784 (Adding<ul i18nIsDynamicList>will also create correct missing string)10.4.2
10.4.1
10.4.0
10.3.1
10.3.0
10.2.1
10.2.0
10.1.2
10.1.1
10.1.0
10.0.5
10.0.4
10.0.3
10.0.2
10.0.1
const { t } = useTranslation()71410.0.0
10.0.0-alpha.3
10.0.0-alpha.2
10.0.0-alpha.1
9.0.10
9.0.9
9.0.8
9.0.7
9.0.6
9.0.5
9.0.4
9.0.3
9.0.2
9.0.1
9.0.0
transEmptyNodeValuein i18next.options.react to set a default fallback value for empty nodes to allow i18next fallback flow 462BREAKING
Using react >= 16.3.0 will be save - in other cases you will need to polyfill react.createContext yourself!!
8.4.0
8.3.9
8.3.8
8.3.7
8.3.6
8.3.5
8.3.4
8.3.3
8.3.2
8.3.1
8.3.0
8.2.0
8.1.2
8.1.1
8.1.0
8.0.8
8.0.7
8.0.6
8.0.5
8.0.4
8.0.3
8.0.2
8.0.1
8.0.0
translate HOC was renamed to "withNamespaces" as it controls which namespaces should be loaded
I18n render prop was renamed to "NamespacesConsumer" as it controls which namespaces should be "consumed"
there is a new context.consuming HOC "withI18n" adds i18n, t to component props (without the extra options of withNamespaces)
there is a simplification for interpolation in translations
'Hello <1><0>{{name}}</0></1>, you have <3>{{count}}</3> message. Open <5>hear</5>.'can be written as:
'Hello <1>{{name}}</1>, you have {{count}} message. Open <5>hear</5>.'=> there is no need to add
<0>...</0>around interpolated values anylonger=> your old files having those extra pseudo tags will still work without needing to change them
Using react's new context api
should be non breaking in most cases, with following exceptions:
still we prefer to increase this to a major version as beside the described egde cases there might be other effects we not have covered with our tests
7.13.0
7.12.0
7.11.1
7.11.0
7.10.1
7.10.0
react-i18next/icu.macroa babel macro to allow nicer components used with ICU format (which as default would result in invalid JSX). discussion7.9.1
7.9.0
7.8.1
7.8.0
7.7.0
7.6.1
7.6.0
7.5.1
7.5.0
7.4.0
nson Trans component to override namespace passed by render prop or hoc7.3.6
7.3.5
7.3.4
7.3.3
7.3.2
7.3.1
7.3.0
7.2.0
7.1.1
7.1.0
7.0.2
7.0.1
7.0.0
Configuration
📅 Schedule: (UTC)
* 0-3 * * 1)🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
This PR was generated by Mend Renovate. View the repository job log.