Skip to content
+

Event Timeline - Localization

Translate UI labels and date formats to support a global audience.

The default locale of MUI X is English (United States).

Translation keys

Use the localeText prop to pass in your own text and translations. You can find all supported translation keys in the source on GitHub. The demo below customizes the resource column header and loading text.

Locale text

Use the theme to configure the locale text:

import { createTheme, ThemeProvider } from '@mui/material/styles';
import { EventTimelinePremium } from '@mui/x-scheduler-premium/event-timeline-premium';
import { frFR } from '@mui/x-scheduler/locales';
// Or import { frFR } from '@mui/x-scheduler-premium/locales';

const theme = createTheme(
  {
    palette: {
      primary: { main: '#1976d2' },
    },
  },
  frFR,
);

<ThemeProvider theme={theme}>
  <EventTimelinePremium />
</ThemeProvider>;

The createTheme() function accepts any number of arguments. If you're already using the translations of the core components, you can add frFR as a new argument.

import { createTheme, ThemeProvider } from '@mui/material/styles';
import { EventTimelinePremium } from '@mui/x-scheduler-premium/event-timeline-premium';
import { frFR } from '@mui/x-scheduler/locales';
import { frFR as pickersFrFR } from '@mui/x-date-pickers/locales';
import { frFR as coreFrFR } from '@mui/material/locale';

const theme = createTheme(
  {
    palette: {
      primary: { main: '#1976d2' },
    },
  },
  frFR, // x-scheduler translations
  pickersFrFR, // x-date-pickers translations
  coreFrFR, // core translations
);

<ThemeProvider theme={theme}>
  <EventTimelinePremium />
</ThemeProvider>;

To pass language translations directly to the Event Timeline without using createTheme() and ThemeProvider, load them from @mui/x-scheduler/locales.

import { EventTimelinePremium } from '@mui/x-scheduler-premium/event-timeline-premium';
import { frFR } from '@mui/x-scheduler/locales';

<EventTimelinePremium
  localeText={frFR.components.MuiEventTimeline.defaultProps.localeText}
/>;

Date locale

The localeText prop only translates the UI labels (button text, menu items, etc.). To also translate formatted dates (day names, month names, and week start day), pass a locale to the dateLocale prop, such as "fr-FR". The dates are formatted with Intl.DateTimeFormat, so dateLocale accepts the same locales, and they need no import. The dates always use the Gregorian calendar, even when the default calendar of the locale is another one.

The locale also sets the numbering of the weeks, the first day of the week unless the weekStartsOn preference is set, and the 12-hour or 24-hour clock unless the ampm preference is set. The first day of the week comes from Intl.Locale.prototype.getWeekInfo(), or from the week data of the region of the locale in the browsers that don't support it, like Firefox. The Unicode extensions of the locale change these settings: "en-US-u-ca-iso8601" numbers the weeks like ISO 8601, "en-US-u-fw-mon" starts them on Monday, and "fr-FR-u-hc-h12" shows the times on a 12-hour clock.

Use the createDateLocaleTheme helper to set the date locale globally via the theme, alongside localeText translations:

import { createTheme, ThemeProvider } from '@mui/material/styles';
import { frFR, createDateLocaleTheme } from '@mui/x-scheduler/locales';
import { EventTimelinePremium } from '@mui/x-scheduler-premium/event-timeline-premium';

const theme = createTheme(
  {
    palette: {
      primary: { main: '#1976d2' },
    },
  },
  frFR,
  createDateLocaleTheme('fr-FR'),
);

<ThemeProvider theme={theme}>
  <EventTimelinePremium />
</ThemeProvider>;

You can also pass the dateLocale prop directly to the component to override the theme value or avoid using a theme:

import { EventTimelinePremium } from '@mui/x-scheduler-premium/event-timeline-premium';

<EventTimelinePremium dateLocale="fr-FR" />;
LocaleBCP 47 language tagImport nameCompletionSource file
Arabic (Sudan)ar-SDarSD
0/159
Edit
Armenianhy-AMhyAM
0/159
Edit
Banglabn-BDbnBD
0/159
Edit
Belarusianbe-BYbeBY
0/159
Edit
Bulgarianbg-BGbgBG
0/159
Edit
Catalanca-EScaES
0/159
Edit
Chinese (Hong Kong)zh-HKzhHK
0/159
Edit
Chinese (Simplified)zh-CNzhCN
0/159
Edit
Chinese (Taiwan)zh-TWzhTW
0/159
Edit
Croatianhr-HRhrHR
0/159
Edit
Czechcs-CZcsCZ
0/159
Edit
Danishda-DKdaDK
0/159
Edit
Dutchnl-NLnlNL
0/159
Edit
Finnishfi-FIfiFI
0/159
Edit
Frenchfr-FRfrFR
92/159
Edit
Germande-DEdeDE
88/159
Edit
Greekel-GRelGR
0/159
Edit
Hebrewhe-ILheIL
109/159
Edit
Hungarianhu-HUhuHU
0/159
Edit
Icelandicis-ISisIS
0/159
Edit
Indonesianid-IDidID
0/159
Edit
Italianit-ITitIT
88/159
Edit
Japaneseja-JPjaJP
0/159
Edit
Koreanko-KRkoKR
0/159
Edit
Norwegian (Bokmål)nb-NOnbNO
88/159
Edit
Norwegian (Nynorsk)nn-NOnnNO
0/159
Edit
Persianfa-IRfaIR
0/159
Edit
Polishpl-PLplPL
95/159
Edit
Portuguesept-PTptPT
88/159
Edit
Portuguese (Brazil)pt-BRptBR
88/159
Edit
Romanianro-ROroRO
88/159
Edit
Russianru-RUruRU
107/159
Edit
Slovaksk-SKskSK
0/159
Edit
Spanishes-ESesES
95/159
Edit
Swedishsv-SEsvSE
0/159
Edit
Thaith-THthTH
0/159
Edit
Turkishtr-TRtrTR
115/159
Edit
Ukrainianuk-UAukUA
0/159
Edit
Urdu (Pakistan)ur-PKurPK
0/159
Edit
Vietnamesevi-VNviVN
0/159
Edit

To create your own translation or customize the English text, copy this file to your project, make any needed changes, and import the locale from there. These translations follow the Localization strategy of the whole library.

RTL support

Right-to-left languages such as Arabic, Persian, or Hebrew are supported. Follow the right-to-left guide to set them up.

Set dir="rtl" on the <html> or <body> element, not on a wrapper around the Event Timeline. The Event Timeline renders its dialogs and popovers in a portal at the end of <body>, so a dir attribute on a wrapper element doesn't apply to them.

The demo below uses the Hebrew translations (heIL) and the he-IL date locale. The documentation page is left-to-right, so this demo sets dir="rtl" on its container instead, and its dialogs and popovers stay left-to-right.

Press Enter to start editing

API

See the documentation below for a complete reference to all of the props and classes available to the components mentioned here.