@umituz/react-native-localization 1.6.3 → 1.6.5
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/package.json
CHANGED
|
@@ -132,19 +132,19 @@ export const useLocalization = () => {
|
|
|
132
132
|
const currentLanguageObject = getLanguageByCode(currentLanguage);
|
|
133
133
|
|
|
134
134
|
// Always call useTranslation hook (React hooks rules - must be unconditional)
|
|
135
|
-
//
|
|
136
|
-
|
|
135
|
+
// Pass i18n instance explicitly to ensure react-i18next finds it
|
|
136
|
+
// This fixes the "NO_I18NEXT_INSTANCE" error
|
|
137
|
+
// Even if i18n is not fully initialized, useTranslation will handle it gracefully
|
|
138
|
+
// with the explicit i18n instance passed
|
|
139
|
+
const translationResult = useTranslation(undefined, { i18n });
|
|
137
140
|
|
|
138
|
-
//
|
|
139
|
-
//
|
|
140
|
-
const
|
|
141
|
-
|
|
142
|
-
// Use translation function from react-i18next if available, otherwise use direct i18n.t
|
|
143
|
-
// This handles the case where react-i18next is not yet initialized
|
|
144
|
-
const t: (key: string, options?: any) => string = (translationResult?.t && typeof translationResult.t === 'function')
|
|
141
|
+
// Use translation function from react-i18next if available and valid
|
|
142
|
+
// Otherwise fallback to direct i18n.t
|
|
143
|
+
const t: (key: string, options?: any) => string = (translationResult?.t && typeof translationResult.t === 'function' && i18n.isInitialized)
|
|
145
144
|
? translationResult.t
|
|
146
145
|
: ((key: string, options?: any) => {
|
|
147
|
-
if
|
|
146
|
+
// Fallback to direct i18n.t if react-i18next is not ready
|
|
147
|
+
if (i18n.isInitialized && typeof i18n.t === 'function') {
|
|
148
148
|
return i18n.t(key, options);
|
|
149
149
|
}
|
|
150
150
|
// Final fallback: return key if i18n is not ready
|