feat(frontend): added more localized strings

This commit is contained in:
sct
2020-11-27 06:59:22 +00:00
parent 45d6a1e1c0
commit 659a601877
25 changed files with 646 additions and 268 deletions

View File

@@ -1,6 +1,17 @@
import React from 'react';
import Link from 'next/link';
import { useRouter } from 'next/router';
import { defineMessages, useIntl } from 'react-intl';
const messages = defineMessages({
menuGeneralSettings: 'General Settings',
menuPlexSettings: 'Plex',
menuServices: 'Services',
menuNotifications: 'Notifications',
menuLogs: 'Logs',
menuJobs: 'Jobs',
menuAbout: 'About',
});
interface SettingsRoute {
text: string;
@@ -8,46 +19,48 @@ interface SettingsRoute {
regex: RegExp;
}
const settingsRoutes: SettingsRoute[] = [
{
text: 'General Settings',
route: '/settings/main',
regex: /^\/settings(\/main)?$/,
},
{
text: 'Plex',
route: '/settings/plex',
regex: /^\/settings\/plex/,
},
{
text: 'Services',
route: '/settings/services',
regex: /^\/settings\/services/,
},
{
text: 'Notifications',
route: '/settings/notifications/email',
regex: /^\/settings\/notifications/,
},
{
text: 'Logs',
route: '/settings/logs',
regex: /^\/settings\/logs/,
},
{
text: 'Jobs',
route: '/settings/jobs',
regex: /^\/settings\/jobs/,
},
{
text: 'About',
route: '/settings/about',
regex: /^\/settings\/about/,
},
];
const SettingsLayout: React.FC = ({ children }) => {
const router = useRouter();
const intl = useIntl();
const settingsRoutes: SettingsRoute[] = [
{
text: intl.formatMessage(messages.menuGeneralSettings),
route: '/settings/main',
regex: /^\/settings(\/main)?$/,
},
{
text: intl.formatMessage(messages.menuPlexSettings),
route: '/settings/plex',
regex: /^\/settings\/plex/,
},
{
text: intl.formatMessage(messages.menuServices),
route: '/settings/services',
regex: /^\/settings\/services/,
},
{
text: intl.formatMessage(messages.menuNotifications),
route: '/settings/notifications/email',
regex: /^\/settings\/notifications/,
},
{
text: intl.formatMessage(messages.menuLogs),
route: '/settings/logs',
regex: /^\/settings\/logs/,
},
{
text: intl.formatMessage(messages.menuJobs),
route: '/settings/jobs',
regex: /^\/settings\/jobs/,
},
{
text: intl.formatMessage(messages.menuAbout),
route: '/settings/about',
regex: /^\/settings\/about/,
},
];
const activeLinkColor =
'border-indigo-600 text-indigo-500 focus:outline-none focus:text-indigo-500 focus:border-indigo-500';