@better-i18n/expo 0.7.6 → 0.8.0

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.
@@ -1 +1 @@
1
- {"version":3,"file":"helpers.d.ts","sourceRoot":"","sources":["../src/helpers.ts"],"names":[],"mappings":"AAAA,OAAoB,EAAE,KAAK,IAAI,EAAE,KAAK,WAAW,EAAE,MAAM,SAAS,CAAC;AAEnE,OAAO,KAAK,EAAE,QAAQ,EAAE,cAAc,EAAY,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAG5F,OAAO,KAAK,EAAiC,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAWpF;;;GAGG;AACH,wBAAgB,kBAAkB,CAAC,QAAQ,EAAE,MAAM,IAAI,GAAG,MAAM,IAAI,CAGnE;AAED;;;GAGG;AACH,wBAAgB,oBAAoB,IAAI,cAAc,EAAE,CAEvD;AAED,MAAM,WAAW,qBAAqB;IACpC,iDAAiD;IACjD,OAAO,EAAE,MAAM,CAAC;IAEhB;;;OAGG;IACH,IAAI,CAAC,EAAE,IAAI,CAAC;IAEZ,4CAA4C;IAC5C,aAAa,CAAC,EAAE,MAAM,CAAC;IAEvB,mGAAmG;IACnG,OAAO,CAAC,EAAE,kBAAkB,CAAC;IAE7B;;;;;;;;;;OAUG;IACH,UAAU,CAAC,EAAE,cAAc,CAAC,YAAY,CAAC,CAAC;IAE1C,uDAAuD;IACvD,YAAY,CAAC,EAAE,MAAM,CAAC;IAEtB,+DAA+D;IAC/D,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB,qEAAqE;IACrE,eAAe,CAAC,EAAE,OAAO,CAAC;IAE1B,0CAA0C;IAC1C,KAAK,CAAC,EAAE,OAAO,CAAC;IAEhB,iEAAiE;IACjE,cAAc,CAAC,EAAE,OAAO,CAAC,WAAW,CAAC,CAAC;CACvC;AAED,MAAM,WAAW,gBAAgB;IAC/B,4DAA4D;IAC5D,IAAI,EAAE,QAAQ,CAAC;IAEf,gDAAgD;IAChD,SAAS,EAAE,cAAc,EAAE,CAAC;CAC7B;AA4BD;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,wBAAsB,cAAc,CAClC,OAAO,EAAE,qBAAqB,GAC7B,OAAO,CAAC,gBAAgB,CAAC,CAyL3B;AAED;;;GAGG;AACH,wBAAgB,YAAY,IAAI,cAAc,EAAE,CAE/C;AAID;;;;;;GAMG;AACH,wBAAsB,gBAAgB,IAAI,OAAO,CAAC,cAAc,EAAE,CAAC,CAMlE"}
1
+ {"version":3,"file":"helpers.d.ts","sourceRoot":"","sources":["../src/helpers.ts"],"names":[],"mappings":"AAAA,OAAoB,EAAE,KAAK,IAAI,EAAE,KAAK,WAAW,EAAE,MAAM,SAAS,CAAC;AAEnE,OAAO,KAAK,EAAE,QAAQ,EAAE,cAAc,EAAY,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAG5F,OAAO,KAAK,EAAiC,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAWpF;;;GAGG;AACH,wBAAgB,kBAAkB,CAAC,QAAQ,EAAE,MAAM,IAAI,GAAG,MAAM,IAAI,CAGnE;AAED;;;GAGG;AACH,wBAAgB,oBAAoB,IAAI,cAAc,EAAE,CAEvD;AAED,MAAM,WAAW,qBAAqB;IACpC,iDAAiD;IACjD,OAAO,EAAE,MAAM,CAAC;IAEhB;;;OAGG;IACH,IAAI,CAAC,EAAE,IAAI,CAAC;IAEZ,4CAA4C;IAC5C,aAAa,CAAC,EAAE,MAAM,CAAC;IAEvB,mGAAmG;IACnG,OAAO,CAAC,EAAE,kBAAkB,CAAC;IAE7B;;;;;;;;;;OAUG;IACH,UAAU,CAAC,EAAE,cAAc,CAAC,YAAY,CAAC,CAAC;IAE1C,uDAAuD;IACvD,YAAY,CAAC,EAAE,MAAM,CAAC;IAEtB,+DAA+D;IAC/D,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB,qEAAqE;IACrE,eAAe,CAAC,EAAE,OAAO,CAAC;IAE1B,0CAA0C;IAC1C,KAAK,CAAC,EAAE,OAAO,CAAC;IAEhB,iEAAiE;IACjE,cAAc,CAAC,EAAE,OAAO,CAAC,WAAW,CAAC,CAAC;CACvC;AAED,MAAM,WAAW,gBAAgB;IAC/B,4DAA4D;IAC5D,IAAI,EAAE,QAAQ,CAAC;IAEf,gDAAgD;IAChD,SAAS,EAAE,cAAc,EAAE,CAAC;CAC7B;AA4BD;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,wBAAsB,cAAc,CAClC,OAAO,EAAE,qBAAqB,GAC7B,OAAO,CAAC,gBAAgB,CAAC,CA6T3B;AAED;;;GAGG;AACH,wBAAgB,YAAY,IAAI,cAAc,EAAE,CAE/C;AAID;;;;;;GAMG;AACH,wBAAsB,gBAAgB,IAAI,OAAO,CAAC,cAAc,EAAE,CAAC,CAMlE"}
package/dist/helpers.js CHANGED
@@ -75,6 +75,61 @@ export async function initBetterI18n(options) {
75
75
  // Fall back to the global i18next singleton when no instance provided.
76
76
  // In React Native, this is always the same module instance — safe to use.
77
77
  const i18nInstance = i18nOpt ?? i18nDefault;
78
+ // ── Defense-in-depth warnings ─────────────────────────────────────
79
+ // Mobile apps MUST have offline fallbacks. Without persistent storage
80
+ // AND bundled translations, a single CDN timeout = raw keys on screen.
81
+ if (!userStorage) {
82
+ console.warn(`${LOG_PREFIX} ⚠️ No persistent storage provided. Translations won't survive app restarts ` +
83
+ `and every launch will depend on CDN availability. Pass a storage adapter for offline support:\n` +
84
+ ` storage: storageAdapter(new MMKV()) // or storageAdapter(AsyncStorage)`);
85
+ }
86
+ if (!staticData) {
87
+ console.warn(`${LOG_PREFIX} ⚠️ No staticData (bundled translations) provided. If CDN is unreachable ` +
88
+ `on first launch (e.g. Apple App Review, airplane mode), the app will show raw translation keys.\n` +
89
+ ` staticData: { en: require('./locales/en.json') }`);
90
+ }
91
+ else {
92
+ // Check for empty staticData — catches the subtle bug where locale JSON files
93
+ // were cleared but the import still exists (staticData: { en: {}, tr: {} })
94
+ const emptyLocales = [];
95
+ const resolvedData = typeof staticData === "function" ? null : staticData;
96
+ if (resolvedData) {
97
+ for (const [locale, messages] of Object.entries(resolvedData)) {
98
+ if (!messages || typeof messages !== "object" || Object.keys(messages).length === 0) {
99
+ emptyLocales.push(locale);
100
+ }
101
+ }
102
+ }
103
+ if (emptyLocales.length > 0) {
104
+ console.warn(`${LOG_PREFIX} ⚠️ staticData has empty translations for: ${emptyLocales.join(", ")}. ` +
105
+ `Bundled fallback will not work for these locales. ` +
106
+ `Make sure your locale JSON files contain actual translations, not empty objects.\n` +
107
+ ` Tip: Run "npx @better-i18n/cli pull" to sync bundled translations from CDN.`);
108
+ }
109
+ }
110
+ if (!userStorage && !staticData) {
111
+ console.warn(`${LOG_PREFIX} 🚨 CRITICAL: No storage AND no staticData. Your app has zero offline fallback. ` +
112
+ `If CDN is unreachable (App Store Review, airplane mode, slow network), ` +
113
+ `users will see raw translation keys. This WILL cause App Store rejection.\n` +
114
+ ` Fix: Add at least one of:\n` +
115
+ ` storage: storageAdapter(new MMKV())\n` +
116
+ ` staticData: { en: require('./locales/en.json') }`);
117
+ }
118
+ // useDeviceLocale without localeKey = user's in-app language choice is lost on every restart.
119
+ // Two valid patterns:
120
+ // 1. useDeviceLocale: true + localeKey → SDK detects device lang on first launch, persists user choice after
121
+ // 2. useDeviceLocale: false + app passes its own resolved locale via defaultLocale → app manages persistence
122
+ if (useDeviceLocale && userStorage) {
123
+ const hasLocaleKey = "readLocale" in userStorage && typeof userStorage.readLocale === "function";
124
+ if (!hasLocaleKey) {
125
+ console.warn(`${LOG_PREFIX} ⚠️ useDeviceLocale is enabled but storage has no localeKey. ` +
126
+ `The user's in-app language choice will be lost on every app restart — device locale will be used instead.\n` +
127
+ ` Fix: Pass localeKey to storageAdapter:\n` +
128
+ ` storage: storageAdapter(mmkv, { localeKey: '@app:locale' })\n` +
129
+ ` Or manage locale yourself:\n` +
130
+ ` useDeviceLocale: false, defaultLocale: yourResolvedLocale`);
131
+ }
132
+ }
78
133
  const storage = await resolveStorage(userStorage, debug);
79
134
  const core = createI18nCore({
80
135
  project,
@@ -88,7 +143,6 @@ export async function initBetterI18n(options) {
88
143
  set: (key, value) => storage.setItem(key, value),
89
144
  },
90
145
  });
91
- const lng = await resolveInitialLocale(storage, useDeviceLocale, defaultLocale);
92
146
  /**
93
147
  * Fetch translations from CDN with persistent cache fallback (network-first).
94
148
  * On success, writes to cache in the background for offline use.
@@ -131,30 +185,83 @@ export async function initBetterI18n(options) {
131
185
  function addTranslationBundle(locale, msgs) {
132
186
  i18nInstance.addResourceBundle(locale, "translation", msgs, true, true);
133
187
  }
134
- // Fetch manifest + initial translations in parallel
135
- const [languages, messages] = await Promise.all([
136
- core.getLanguages().catch(() => []),
137
- loadMessages(lng),
138
- ]);
188
+ // ── Step 1: Fetch manifest to know which languages exist ──────────
189
+ const languages = await core.getLanguages().catch(() => []);
139
190
  const supportedLngs = languages.map((l) => l.code);
191
+ // ── Step 2: Resolve locale with support check ─────────────────────
192
+ // Resolve the requested locale, then verify it actually exists in the
193
+ // project. If the device locale (e.g. "es") isn't supported, fall back
194
+ // to defaultLocale immediately — don't waste a CDN call on a locale
195
+ // that will return empty translations.
196
+ const requestedLng = await resolveInitialLocale(storage, useDeviceLocale, defaultLocale);
197
+ // Also check if the user overrode lng via i18nextOptions
198
+ const overrideLng = i18nextOptions?.lng
199
+ ? normalizeLocale(i18nextOptions.lng)
200
+ : null;
201
+ // The locale we actually want to use (user override > resolved > default)
202
+ const candidateLng = overrideLng ?? requestedLng;
203
+ // If this locale isn't supported, fall back to defaultLocale
204
+ const isSupported = supportedLngs.length === 0 || supportedLngs.includes(candidateLng);
205
+ const effectiveLng = isSupported ? candidateLng : defaultLocale;
206
+ if (!isSupported && debug) {
207
+ console.debug(`${LOG_PREFIX} Locale "${candidateLng}" is not in supported languages ` +
208
+ `[${supportedLngs.join(", ")}], falling back to "${defaultLocale}"`);
209
+ }
210
+ // ── Step 3: Load messages for the effective locale ────────────────
211
+ const messages = await loadMessages(effectiveLng);
140
212
  const namespaces = Object.keys(messages);
213
+ // ── Step 4: Also load defaultLocale if effective is different ──────
214
+ // Ensures fallbackLng always has resources available in i18next.
215
+ const resources = {
216
+ [effectiveLng]: { translation: messages, ...messages },
217
+ };
218
+ if (effectiveLng !== defaultLocale) {
219
+ try {
220
+ const fallbackMessages = await loadMessages(defaultLocale);
221
+ resources[defaultLocale] = { translation: fallbackMessages, ...fallbackMessages };
222
+ }
223
+ catch {
224
+ // Best-effort — defaultLocale fallback is still configured in i18next
225
+ // even if we can't pre-load it here
226
+ }
227
+ }
228
+ // ── Step 5: Init i18next ──────────────────────────────────────────
229
+ // i18nextOptions is spread but we protect lng/fallbackLng/supportedLngs
230
+ // from being overridden with unsupported values
231
+ const { lng: _userLng, supportedLngs: _userSupported, ...safeI18nextOptions } = (i18nextOptions ?? {});
141
232
  await i18nInstance.init({
142
- resources: { [lng]: { translation: messages, ...messages } },
233
+ resources,
143
234
  // "translation" = tüm namespace'ler merged (dot-notation: t('section.key') çalışır)
144
235
  // ...messages = bireysel namespace'ler (colon-notation: t('ns:key') çalışır)
145
- lng,
236
+ lng: effectiveLng,
146
237
  fallbackLng: defaultLocale,
147
- supportedLngs: supportedLngs.length > 0 ? supportedLngs : false,
238
+ supportedLngs: supportedLngs.length > 0 ? [...supportedLngs, defaultLocale] : false,
148
239
  lowerCaseLng: true, // CDN lowercase — match i18next BCP 47 normalization
149
240
  defaultNS: "translation",
150
241
  fallbackNS: "translation",
151
242
  interpolation: { escapeValue: false },
152
243
  react: { useSuspense: false },
153
- ...i18nextOptions,
244
+ ...safeI18nextOptions,
154
245
  });
155
246
  if (debug) {
156
247
  console.debug(`${LOG_PREFIX} Ready: ${namespaces.length} namespaces, ${supportedLngs.length} languages (${supportedLngs.join(", ")})`);
157
248
  }
249
+ // ── staticData drift detection ────────────────────────────────────
250
+ // After successful CDN load, compare with staticData to warn about
251
+ // missing namespaces that won't be available offline.
252
+ if (staticData && typeof staticData !== "function") {
253
+ const bundled = staticData[effectiveLng];
254
+ if (bundled && typeof bundled === "object") {
255
+ const cdnKeys = new Set(namespaces);
256
+ const bundledKeys = new Set(Object.keys(bundled));
257
+ const missing = [...cdnKeys].filter((k) => !bundledKeys.has(k));
258
+ if (missing.length > 0) {
259
+ console.warn(`${LOG_PREFIX} ⚠️ staticData["${effectiveLng}"] is missing ${missing.length} namespace(s) that exist on CDN: ` +
260
+ `${missing.join(", ")}. These won't be available offline.\n` +
261
+ ` Run "npx @better-i18n/cli pull" to update your bundled translations.`);
262
+ }
263
+ }
264
+ }
158
265
  // Override changeLanguage to pre-load translations BEFORE the language switch.
159
266
  // This prevents the race condition where i18next switches the language
160
267
  // before CDN translations arrive, causing fallback to English.
@@ -1 +1 @@
1
- {"version":3,"file":"helpers.js","sourceRoot":"","sources":["../src/helpers.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"helpers.js","sourceRoot":"","sources":["../src/helpers.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@better-i18n/expo",
3
- "version": "0.7.6",
3
+ "version": "0.8.0",
4
4
  "description": "Better i18n backend plugin for i18next in Expo/React Native",
5
5
  "license": "MIT",
6
6
  "repository": {
@@ -50,7 +50,7 @@
50
50
  "prepublishOnly": "bun run build"
51
51
  },
52
52
  "dependencies": {
53
- "@better-i18n/core": "0.6.0"
53
+ "@better-i18n/core": "0.6.1"
54
54
  },
55
55
  "peerDependencies": {
56
56
  "react": ">=18.0.0",