This commit is contained in:
ennmichael 2023-02-08 21:16:35 +01:00 committed by Kieran
parent 8bacda27a9
commit 1033ccfeed
Signed by: Kieran
GPG Key ID: DE71CEB3925BE941
5 changed files with 38 additions and 38 deletions

1
.prettierignore Normal file
View File

@ -0,0 +1 @@
build/

View File

@ -1,42 +1,42 @@
import { type ReactNode } from 'react' import { type ReactNode } from "react";
import { IntlProvider as ReactIntlProvider } from 'react-intl' import { IntlProvider as ReactIntlProvider } from "react-intl";
import enMessages from 'translations/en.json' import enMessages from "translations/en.json";
import esMessages from 'translations/es.json' import esMessages from "translations/es.json";
import zhMessages from 'translations/zh.json' import zhMessages from "translations/zh.json";
import jaMessages from 'translations/ja.json' import jaMessages from "translations/ja.json";
const DEFAULT_LOCALE = 'en-US' const DEFAULT_LOCALE = "en-US";
const getMessages = (locale: string) => { const getMessages = (locale: string) => {
const truncatedLocale = locale.toLowerCase().split(/[_-]+/)[0] const truncatedLocale = locale.toLowerCase().split(/[_-]+/)[0];
switch (truncatedLocale) { switch (truncatedLocale) {
case 'en': case "en":
return enMessages return enMessages;
case 'es': case "es":
return esMessages return esMessages;
case 'zh': case "zh":
return zhMessages return zhMessages;
case 'ja': case "ja":
return jaMessages return jaMessages;
default: default:
return enMessages return enMessages;
} }
} };
export const IntlProvider = ({ children }: { children: ReactNode }) => { export const IntlProvider = ({ children }: { children: ReactNode }) => {
const getLocale = () => { const getLocale = () => {
return (
(navigator.languages && navigator.languages[0]) ||
navigator.language ||
DEFAULT_LOCALE
)
}
const locale = getLocale()
return ( return (
<ReactIntlProvider locale={locale} messages={getMessages(locale)}> (navigator.languages && navigator.languages[0]) ||
{children} navigator.language ||
</ReactIntlProvider> DEFAULT_LOCALE
) );
} };
const locale = getLocale();
return (
<ReactIntlProvider locale={locale} messages={getMessages(locale)}>
{children}
</ReactIntlProvider>
);
};

View File

@ -1,6 +1,6 @@
import { HexKey, TaggedRawEvent } from "Nostr"; import { HexKey, TaggedRawEvent } from "Nostr";
import { ProfileCacheExpire } from "Const"; import { ProfileCacheExpire } from "Const";
import { mapEventToProfile, MetadataCache, UsersDb } from "State/Users"; import { mapEventToProfile, UsersDb } from "State/Users";
import Connection, { RelaySettings } from "Nostr/Connection"; import Connection, { RelaySettings } from "Nostr/Connection";
import Event from "Nostr/Event"; import Event from "Nostr/Event";
import EventKind from "Nostr/EventKind"; import EventKind from "Nostr/EventKind";

View File

@ -22,7 +22,7 @@ import { NoteCreator } from "Element/NoteCreator";
import Plus from "Icons/Plus"; import Plus from "Icons/Plus";
import { RelaySettings } from "Nostr/Connection"; import { RelaySettings } from "Nostr/Connection";
import { FormattedMessage } from "react-intl"; import { FormattedMessage } from "react-intl";
import messages from './messages' import messages from "./messages";
export default function Layout() { export default function Layout() {
const location = useLocation(); const location = useLocation();

View File

@ -4,7 +4,6 @@ import { MetadataCache } from "State/Users";
import type { RootState } from "State/Store"; import type { RootState } from "State/Store";
import { HexKey } from "Nostr"; import { HexKey } from "Nostr";
import { useDb } from "./Db"; import { useDb } from "./Db";
import { unwrap } from "Util";
export function useQuery(query: string) { export function useQuery(query: string) {
const db = useDb(); const db = useDb();