Progress on translations (#9703)
Start adding a few translations on setting pages, introduce pseudo-locale, switch to dynamic import, add eslint rule
This commit is contained in:
@ -11,14 +11,12 @@ import { HelmetProvider } from 'react-helmet-async';
|
||||
import { RecoilRoot } from 'recoil';
|
||||
import { RecoilURLSyncJSON } from 'recoil-sync';
|
||||
import { IconsProvider } from 'twenty-ui';
|
||||
import { messages as enMessages } from '../../../locales/en/messages';
|
||||
import { messages as frMessages } from '../../../locales/fr/messages';
|
||||
import { messages as enMessages } from '../../../locales/generated/en';
|
||||
|
||||
i18n.load({
|
||||
en: enMessages,
|
||||
fr: frMessages,
|
||||
});
|
||||
i18n.activate('fr');
|
||||
i18n.activate('en');
|
||||
|
||||
export const App = () => {
|
||||
return (
|
||||
|
||||
@ -60,8 +60,8 @@ import { useRedirectToWorkspaceDomain } from '@/domain-manager/hooks/useRedirect
|
||||
import { domainConfigurationState } from '@/domain-manager/states/domainConfigurationState';
|
||||
import { isAppWaitingForFreshObjectMetadataState } from '@/object-metadata/states/isAppWaitingForFreshObjectMetadataState';
|
||||
import { workspaceAuthProvidersState } from '@/workspace/states/workspaceAuthProvidersState';
|
||||
import { i18n } from '@lingui/core';
|
||||
import { useSearchParams } from 'react-router-dom';
|
||||
import { dynamicActivate } from '~/utils/i18n/dynamicActivate';
|
||||
|
||||
export const useAuth = () => {
|
||||
const setTokenPair = useSetRecoilState(tokenPairState);
|
||||
@ -280,7 +280,7 @@ export const useAuth = () => {
|
||||
)
|
||||
: TimeFormat[detectTimeFormat()],
|
||||
});
|
||||
i18n.activate(workspaceMember.locale ?? 'en');
|
||||
dynamicActivate(workspaceMember.locale ?? 'en');
|
||||
}
|
||||
|
||||
const workspace = user.currentWorkspace ?? null;
|
||||
|
||||
@ -16,9 +16,9 @@ import { detectTimeZone } from '@/localization/utils/detectTimeZone';
|
||||
import { getDateFormatFromWorkspaceDateFormat } from '@/localization/utils/getDateFormatFromWorkspaceDateFormat';
|
||||
import { getTimeFormatFromWorkspaceTimeFormat } from '@/localization/utils/getTimeFormatFromWorkspaceTimeFormat';
|
||||
import { ColorScheme } from '@/workspace-member/types/WorkspaceMember';
|
||||
import { i18n } from '@lingui/core';
|
||||
import { WorkspaceMember } from '~/generated-metadata/graphql';
|
||||
import { useGetCurrentUserQuery } from '~/generated/graphql';
|
||||
import { dynamicActivate } from '~/utils/i18n/dynamicActivate';
|
||||
import { isDefined } from '~/utils/isDefined';
|
||||
|
||||
export const UserProviderEffect = () => {
|
||||
@ -93,7 +93,7 @@ export const UserProviderEffect = () => {
|
||||
: TimeFormat[detectTimeFormat()],
|
||||
});
|
||||
|
||||
i18n.activate(workspaceMember.locale ?? 'en');
|
||||
dynamicActivate(workspaceMember.locale ?? 'en');
|
||||
}
|
||||
|
||||
if (isDefined(workspaceMembers)) {
|
||||
|
||||
Reference in New Issue
Block a user