Skip to content

Commit c3c3ba3

Browse files
committed
feat(i18n): fallback to null to avoid setting undetermined values
1 parent 9e630be commit c3c3ba3

File tree

2 files changed

+10
-10
lines changed

2 files changed

+10
-10
lines changed

packages/clerk-js/src/utils/__tests__/locale.test.ts

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -12,30 +12,30 @@ describe('getBrowserLocale()', () => {
1212
expect(getBrowserLocale()).toBe('es-ES');
1313
});
1414

15-
it('returns en-US as default when navigator.language is not available', () => {
15+
it('returns null as default when navigator.language is not available', () => {
1616
Object.defineProperty(window.navigator, 'language', {
1717
value: undefined,
1818
configurable: true,
1919
});
2020

21-
expect(getBrowserLocale()).toBe('en-US');
21+
expect(getBrowserLocale()).toBeNull();
2222
});
2323

24-
it('returns en-US when navigator.language is empty string', () => {
24+
it('returns null as default when navigator.language is empty string', () => {
2525
Object.defineProperty(window.navigator, 'language', {
2626
value: '',
2727
configurable: true,
2828
});
2929

30-
expect(getBrowserLocale()).toBe('en-US');
30+
expect(getBrowserLocale()).toBeNull();
3131
});
3232

33-
it('returns en-US when navigator object is not defined', () => {
33+
it('returns null as default when navigator object is not defined', () => {
3434
Object.defineProperty(window, 'navigator', {
3535
value: undefined,
3636
configurable: true,
3737
});
3838

39-
expect(getBrowserLocale()).toBe('en-US');
39+
expect(getBrowserLocale()).toBeNull();
4040
});
4141
});

packages/clerk-js/src/utils/locale.ts

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,14 @@
11
import { inBrowser } from '@clerk/shared/browser';
22

3-
const DEFAULT_LOCALE = 'en-US';
3+
const DEFAULT_LOCALE = null;
44

55
/**
66
* Detects the user's preferred locale from the browser.
7-
* Falls back to 'en-US' if locale cannot be determined.
7+
* Falls back to null if locale cannot be determined.
88
*
9-
* @returns The detected locale string in BCP 47 format (e.g., 'en-US', 'es-ES')
9+
* @returns The detected locale string in BCP 47 format (e.g., 'en-US', 'es-ES') or null if locale cannot be determined.
1010
*/
11-
export function getBrowserLocale(): string {
11+
export function getBrowserLocale(): string | null {
1212
if (!inBrowser()) {
1313
return DEFAULT_LOCALE;
1414
}

0 commit comments

Comments
 (0)