fix lint formatting so GH action build doesn't break

This commit is contained in:
Proddy
2022-10-30 16:56:00 +01:00
parent f3adc13c6d
commit 805c1298fb
34 changed files with 108 additions and 105 deletions

View File

@@ -60,14 +60,14 @@ const APStatusForm: FC = () => {
<SettingsInputAntennaIcon /> <SettingsInputAntennaIcon />
</Avatar> </Avatar>
</ListItemAvatar> </ListItemAvatar>
<ListItemText primary={LL.STATUS_OF("")} secondary={apStatus(data)} /> <ListItemText primary={LL.STATUS_OF('')} secondary={apStatus(data)} />
</ListItem> </ListItem>
<Divider variant="inset" component="li" /> <Divider variant="inset" component="li" />
<ListItem> <ListItem>
<ListItemAvatar> <ListItemAvatar>
<Avatar>IP</Avatar> <Avatar>IP</Avatar>
</ListItemAvatar> </ListItemAvatar>
<ListItemText primary={LL.ADDRESS_OF("IP")} secondary={data.ip_address} /> <ListItemText primary={LL.ADDRESS_OF('IP')} secondary={data.ip_address} />
</ListItem> </ListItem>
<Divider variant="inset" component="li" /> <Divider variant="inset" component="li" />
<ListItem> <ListItem>
@@ -76,7 +76,7 @@ const APStatusForm: FC = () => {
<DeviceHubIcon /> <DeviceHubIcon />
</Avatar> </Avatar>
</ListItemAvatar> </ListItemAvatar>
<ListItemText primary={LL.ADDRESS_OF("MAC")} secondary={data.mac_address} /> <ListItemText primary={LL.ADDRESS_OF('MAC')} secondary={data.mac_address} />
</ListItem> </ListItem>
<Divider variant="inset" component="li" /> <Divider variant="inset" component="li" />
<ListItem> <ListItem>

View File

@@ -23,11 +23,7 @@ const AccessPoint: FC = () => {
<> <>
<RouterTabs value={routerTab}> <RouterTabs value={routerTab}>
<Tab value="status" label={LL.STATUS_OF(LL.ACCESS_POINT(1))} /> <Tab value="status" label={LL.STATUS_OF(LL.ACCESS_POINT(1))} />
<Tab <Tab value="settings" label={LL.SETTINGS_OF(LL.ACCESS_POINT(1))} disabled={!authenticatedContext.me.admin} />
value="settings"
label={LL.SETTINGS_OF( LL.ACCESS_POINT(1) )}
disabled={!authenticatedContext.me.admin}
/>
</RouterTabs> </RouterTabs>
<Routes> <Routes>
<Route path="status" element={<APStatusForm />} /> <Route path="status" element={<APStatusForm />} />

View File

@@ -22,8 +22,8 @@ const Mqtt: FC = () => {
return ( return (
<> <>
<RouterTabs value={routerTab}> <RouterTabs value={routerTab}>
<Tab value="status" label={LL.STATUS_OF("MQTT")} /> <Tab value="status" label={LL.STATUS_OF('MQTT')} />
<Tab value="settings" label={LL.SETTINGS_OF("MQTT")} disabled={!authenticatedContext.me.admin} /> <Tab value="settings" label={LL.SETTINGS_OF('MQTT')} disabled={!authenticatedContext.me.admin} />
</RouterTabs> </RouterTabs>
<Routes> <Routes>
<Route path="status" element={<MqttStatusForm />} /> <Route path="status" element={<MqttStatusForm />} />

View File

@@ -351,7 +351,7 @@ const MqttSettingsForm: FC = () => {
}; };
return ( return (
<SectionContent title={LL.SETTINGS_OF("MQTT")} titleGutter> <SectionContent title={LL.SETTINGS_OF('MQTT')} titleGutter>
{content()} {content()}
</SectionContent> </SectionContent>
); );

View File

@@ -121,7 +121,7 @@ const MqttStatusForm: FC = () => {
<SpeakerNotesOffIcon /> <SpeakerNotesOffIcon />
</Avatar> </Avatar>
</ListItemAvatar> </ListItemAvatar>
<ListItemText primary={LL.ERRORS_OF("MQTT")} secondary={data.mqtt_fails} /> <ListItemText primary={LL.ERRORS_OF('MQTT')} secondary={data.mqtt_fails} />
</ListItem> </ListItem>
<Divider variant="inset" component="li" /> <Divider variant="inset" component="li" />
</> </>
@@ -137,7 +137,7 @@ const MqttStatusForm: FC = () => {
<DeviceHubIcon /> <DeviceHubIcon />
</Avatar> </Avatar>
</ListItemAvatar> </ListItemAvatar>
<ListItemText primary={LL.STATUS_OF("")} secondary={mqttStatus(data)} /> <ListItemText primary={LL.STATUS_OF('')} secondary={mqttStatus(data)} />
</ListItem> </ListItem>
<Divider variant="inset" component="li" /> <Divider variant="inset" component="li" />
{data.enabled && renderConnectionStatus()} {data.enabled && renderConnectionStatus()}
@@ -152,7 +152,7 @@ const MqttStatusForm: FC = () => {
}; };
return ( return (
<SectionContent title={LL.STATUS_OF("MQTT")} titleGutter> <SectionContent title={LL.STATUS_OF('MQTT')} titleGutter>
{content()} {content()}
</SectionContent> </SectionContent>
); );

View File

@@ -124,7 +124,7 @@ const NetworkStatusForm: FC = () => {
<ListItemAvatar> <ListItemAvatar>
<Avatar>IP</Avatar> <Avatar>IP</Avatar>
</ListItemAvatar> </ListItemAvatar>
<ListItemText primary={LL.ADDRESS_OF("IP")} secondary={IPs(data)} /> <ListItemText primary={LL.ADDRESS_OF('IP')} secondary={IPs(data)} />
</ListItem> </ListItem>
<Divider variant="inset" component="li" /> <Divider variant="inset" component="li" />
<ListItem> <ListItem>
@@ -133,7 +133,7 @@ const NetworkStatusForm: FC = () => {
<DeviceHubIcon /> <DeviceHubIcon />
</Avatar> </Avatar>
</ListItemAvatar> </ListItemAvatar>
<ListItemText primary={LL.ADDRESS_OF("MAC")} secondary={data.mac_address} /> <ListItemText primary={LL.ADDRESS_OF('MAC')} secondary={data.mac_address} />
</ListItem> </ListItem>
<Divider variant="inset" component="li" /> <Divider variant="inset" component="li" />
<ListItem> <ListItem>

View File

@@ -96,7 +96,7 @@ const NTPSettingsForm: FC = () => {
}; };
return ( return (
<SectionContent title={LL.SETTINGS_OF("NTP")} titleGutter> <SectionContent title={LL.SETTINGS_OF('NTP')} titleGutter>
{content()} {content()}
</SectionContent> </SectionContent>
); );

View File

@@ -149,7 +149,7 @@ const NTPStatusForm: FC = () => {
<UpdateIcon /> <UpdateIcon />
</Avatar> </Avatar>
</ListItemAvatar> </ListItemAvatar>
<ListItemText primary={LL.STATUS_OF("")} secondary={ntpStatus(data)} /> <ListItemText primary={LL.STATUS_OF('')} secondary={ntpStatus(data)} />
</ListItem> </ListItem>
<Divider variant="inset" component="li" /> <Divider variant="inset" component="li" />
{isNtpEnabled(data) && ( {isNtpEnabled(data) && (
@@ -208,7 +208,7 @@ const NTPStatusForm: FC = () => {
}; };
return ( return (
<SectionContent title={LL.STATUS_OF("NTP")} titleGutter> <SectionContent title={LL.STATUS_OF('NTP')} titleGutter>
{content()} {content()}
</SectionContent> </SectionContent>
); );

View File

@@ -21,8 +21,8 @@ const NetworkTime: FC = () => {
return ( return (
<> <>
<RouterTabs value={routerTab}> <RouterTabs value={routerTab}>
<Tab value="status" label={LL.STATUS_OF("NTP")} /> <Tab value="status" label={LL.STATUS_OF('NTP')} />
<Tab value="settings" label={LL.SETTINGS_OF("NTP")} disabled={!authenticatedContext.me.admin} /> <Tab value="settings" label={LL.SETTINGS_OF('NTP')} disabled={!authenticatedContext.me.admin} />
</RouterTabs> </RouterTabs>
<Routes> <Routes>
<Route path="status" element={<NTPStatusForm />} /> <Route path="status" element={<NTPStatusForm />} />

View File

@@ -93,7 +93,7 @@ const GeneralFileUpload: FC<UploadFileProps> = ({ uploadGeneralFile }) => {
</Typography> </Typography>
</Box> </Box>
<Button startIcon={<DownloadIcon />} variant="outlined" color="primary" onClick={() => downloadSettings()}> <Button startIcon={<DownloadIcon />} variant="outlined" color="primary" onClick={() => downloadSettings()}>
{LL.SETTINGS_OF("")} {LL.SETTINGS_OF('')}
</Button> </Button>
<Box color="warning.main"> <Box color="warning.main">
<Typography mt={2} mb={1} variant="body2"> <Typography mt={2} mb={1} variant="body2">

View File

@@ -93,7 +93,7 @@ const OTASettingsForm: FC = () => {
}; };
return ( return (
<SectionContent title={LL.SETTINGS_OF("OTA")} titleGutter> <SectionContent title={LL.SETTINGS_OF('OTA')} titleGutter>
{content()} {content()}
</SectionContent> </SectionContent>
); );

View File

@@ -29,7 +29,7 @@ const System: FC = () => {
<Tab value="status" label={LL.STATUS_OF(LL.SYSTEM(1))} /> <Tab value="status" label={LL.STATUS_OF(LL.SYSTEM(1))} />
<Tab value="log" label={LL.LOG_OF(LL.SYSTEM(2))} /> <Tab value="log" label={LL.LOG_OF(LL.SYSTEM(2))} />
{features.ota && <Tab value="ota" label={LL.SETTINGS_OF("OTA")} disabled={!me.admin} />} {features.ota && <Tab value="ota" label={LL.SETTINGS_OF('OTA')} disabled={!me.admin} />}
{features.upload_firmware && <Tab value="upload" label={LL.UPLOAD_DOWNLOAD()} disabled={!me.admin} />} {features.upload_firmware && <Tab value="upload" label={LL.UPLOAD_DOWNLOAD()} disabled={!me.admin} />}
</RouterTabs> </RouterTabs>
<Routes> <Routes>

View File

@@ -129,7 +129,8 @@ const SystemStatusForm: FC = () => {
<MessageBox my={0} level="info" message={LL.SYSTEM_VERSION_RUNNING() + ' ' + data?.emsesp_version} /> <MessageBox my={0} level="info" message={LL.SYSTEM_VERSION_RUNNING() + ' ' + data?.emsesp_version} />
{latestVersion && ( {latestVersion && (
<Box mt={2} mb={2}> <Box mt={2} mb={2}>
{LL.THE_LATEST()}&nbsp;<u>{LL.OFFICIAL()}</u>&nbsp;{LL.VERSION_IS()}&nbsp;<b>{latestVersion.version}</b>&nbsp;( {LL.THE_LATEST()}&nbsp;<u>{LL.OFFICIAL()}</u>&nbsp;{LL.VERSION_IS()}&nbsp;<b>{latestVersion.version}</b>
&nbsp;(
<Link target="_blank" href={latestVersion.changelog} color="primary"> <Link target="_blank" href={latestVersion.changelog} color="primary">
{LL.RELEASE_NOTES()} {LL.RELEASE_NOTES()}
</Link> </Link>
@@ -143,7 +144,8 @@ const SystemStatusForm: FC = () => {
{latestDevVersion && ( {latestDevVersion && (
<Box mt={2} mb={2}> <Box mt={2} mb={2}>
{LL.THE_LATEST()}&nbsp;<u>{LL.DEVELOPMENT()}</u>&nbsp;{LL.VERSION_IS()}&nbsp;<b>{latestDevVersion.version}</b> {LL.THE_LATEST()}&nbsp;<u>{LL.DEVELOPMENT()}</u>&nbsp;{LL.VERSION_IS()}&nbsp;
<b>{latestDevVersion.version}</b>
&nbsp;( &nbsp;(
<Link target="_blank" href={latestDevVersion.changelog} color="primary"> <Link target="_blank" href={latestDevVersion.changelog} color="primary">
{LL.RELEASE_NOTES()} {LL.RELEASE_NOTES()}
@@ -272,12 +274,7 @@ const SystemStatusForm: FC = () => {
</ListItemAvatar> </ListItemAvatar>
<ListItemText <ListItemText
primary={LL.HEAP()} primary={LL.HEAP()}
secondary={ secondary={formatNumber(data.free_heap) + ' KB / ' + formatNumber(data.max_alloc_heap) + ' KB '}
formatNumber(data.free_heap) +
' KB / ' +
formatNumber(data.max_alloc_heap) +
' KB '
}
/> />
</ListItem> </ListItem>
{data.psram_size !== undefined && data.free_psram !== undefined && ( {data.psram_size !== undefined && data.free_psram !== undefined && (
@@ -305,7 +302,9 @@ const SystemStatusForm: FC = () => {
</ListItemAvatar> </ListItemAvatar>
<ListItemText <ListItemText
primary={LL.FLASH()} primary={LL.FLASH()}
secondary={formatNumber(data.flash_chip_size) + ' KB / ' + (data.flash_chip_speed / 1000000).toFixed(0) + ' MHz'} secondary={
formatNumber(data.flash_chip_size) + ' KB / ' + (data.flash_chip_speed / 1000000).toFixed(0) + ' MHz'
}
/> />
</ListItem> </ListItem>
<Divider variant="inset" component="li" /> <Divider variant="inset" component="li" />

View File

@@ -100,7 +100,8 @@ const de: Translation = {
CUSTOMIZATION: 'Anpassungen', CUSTOMIZATION: 'Anpassungen',
APPLICATION_RESTARTING: 'EMS-ESP startet neu', APPLICATION_RESTARTING: 'EMS-ESP startet neu',
INTERFACE_BOARD_PROFILE: 'Interface Platinenprofil', INTERFACE_BOARD_PROFILE: 'Interface Platinenprofil',
BOARD_PROFILE_TEXT: 'Wählen Sie ein vorkonfiguriertes Platinenprofil aus der Liste unten aus oder wählen Sie "Custom", um Ihre eigenen Hardwareeinstellungen zu konfigurieren', BOARD_PROFILE_TEXT:
'Wählen Sie ein vorkonfiguriertes Platinenprofil aus der Liste unten aus oder wählen Sie "Custom", um Ihre eigenen Hardwareeinstellungen zu konfigurieren',
BOARD_PROFILE: 'Platinenprofil', BOARD_PROFILE: 'Platinenprofil',
BUTTON: 'Taste', BUTTON: 'Taste',
TEMPERATURE: 'Temperatur', TEMPERATURE: 'Temperatur',

View File

@@ -100,7 +100,8 @@ const en: BaseTranslation = {
CUSTOMIZATION: 'Customization', CUSTOMIZATION: 'Customization',
APPLICATION_RESTARTING: 'EMS-ESP is restarting', APPLICATION_RESTARTING: 'EMS-ESP is restarting',
INTERFACE_BOARD_PROFILE: 'Interface Board Profile', INTERFACE_BOARD_PROFILE: 'Interface Board Profile',
BOARD_PROFILE_TEXT: 'Select a pre-configured interface board profile from the list below or choose Custom to configure your own hardware settings', BOARD_PROFILE_TEXT:
'Select a pre-configured interface board profile from the list below or choose Custom to configure your own hardware settings',
BOARD_PROFILE: 'Board Profile', BOARD_PROFILE: 'Board Profile',
BUTTON: 'Button', BUTTON: 'Button',
TEMPERATURE: 'Temperature', TEMPERATURE: 'Temperature',

View File

@@ -100,7 +100,8 @@ const nl: Translation = {
CUSTOMIZATION: 'Custom aanpassingen', CUSTOMIZATION: 'Custom aanpassingen',
APPLICATION_RESTARTING: 'EMS-ESP herstarten', APPLICATION_RESTARTING: 'EMS-ESP herstarten',
INTERFACE_BOARD_PROFILE: 'Interface Apparaatprofiel', INTERFACE_BOARD_PROFILE: 'Interface Apparaatprofiel',
BOARD_PROFILE_TEXT: 'Selecteer een vooraf ingesteld apparaat profiel uit de lijst of kies Eigen om zelf uw hardware te configureren', BOARD_PROFILE_TEXT:
'Selecteer een vooraf ingesteld apparaat profiel uit de lijst of kies Eigen om zelf uw hardware te configureren',
BOARD_PROFILE: 'Apparaatprofiel', BOARD_PROFILE: 'Apparaatprofiel',
BUTTON: 'Toets', BUTTON: 'Toets',
TEMPERATURE: 'Temperatuur', TEMPERATURE: 'Temperatuur',

View File

@@ -100,7 +100,8 @@ const no: Translation = {
CUSTOMIZATION: 'Tilpasninger', CUSTOMIZATION: 'Tilpasninger',
APPLICATION_RESTARTING: 'EMS-ESP restarter', APPLICATION_RESTARTING: 'EMS-ESP restarter',
INTERFACE_BOARD_PROFILE: 'Interface Prosessor Profil', INTERFACE_BOARD_PROFILE: 'Interface Prosessor Profil',
BOARD_PROFILE_TEXT: 'Velg en pre-konfigurert prosessor profil fra listen under eller velg Tilpasset for å konfigurere dine egne innstillinger', BOARD_PROFILE_TEXT:
'Velg en pre-konfigurert prosessor profil fra listen under eller velg Tilpasset for å konfigurere dine egne innstillinger',
BOARD_PROFILE: 'Prosessor Profil', BOARD_PROFILE: 'Prosessor Profil',
BUTTON: 'Knapp', BUTTON: 'Knapp',
TEMPERATURE: 'Temperatur', TEMPERATURE: 'Temperatur',

View File

@@ -112,7 +112,7 @@ const pl: Translation = {
HIDE_LED: 'Wyłącz LED', HIDE_LED: 'Wyłącz LED',
ENABLE_TELNET: 'Aktywuj dostęp dla konsoli Telnet', ENABLE_TELNET: 'Aktywuj dostęp dla konsoli Telnet',
ENABLE_ANALOG: 'Aktywuj urządzenia GPIO (czujniki analogowe i cyfrowe oraz wyjścia cyfrowe)', ENABLE_ANALOG: 'Aktywuj urządzenia GPIO (czujniki analogowe i cyfrowe oraz wyjścia cyfrowe)',
CONVERT_FAHRENHEIT: "Konwertuj temperatury do skali Fahrenheita", CONVERT_FAHRENHEIT: 'Konwertuj temperatury do skali Fahrenheita',
BYPASS_TOKEN: 'Pomiń autoryzację tokenem w wywołaniach API', BYPASS_TOKEN: 'Pomiń autoryzację tokenem w wywołaniach API',
READONLY: 'Tryb pracy "tylko do odczytu" (blokuje wszystkie komendy zapisu na magistralę EMS)', READONLY: 'Tryb pracy "tylko do odczytu" (blokuje wszystkie komendy zapisu na magistralę EMS)',
UNDERCLOCK_CPU: 'Obniż taktowanie CPU', UNDERCLOCK_CPU: 'Obniż taktowanie CPU',
@@ -159,8 +159,7 @@ const pl: Translation = {
HELP_INFORMATION_1: 'W celu znalezienia szczegółowych instrukcji jak skonfigurować EMS-ESP skorzystaj z wiki', HELP_INFORMATION_1: 'W celu znalezienia szczegółowych instrukcji jak skonfigurować EMS-ESP skorzystaj z wiki',
HELP_INFORMATION_2: 'W celu komunikacji na żywo ze społecznością skorzystaj z serwera Discord', HELP_INFORMATION_2: 'W celu komunikacji na żywo ze społecznością skorzystaj z serwera Discord',
HELP_INFORMATION_3: 'Aby zaproponować nową funkcjonalność lub zgłosić problem', HELP_INFORMATION_3: 'Aby zaproponować nową funkcjonalność lub zgłosić problem',
HELP_INFORMATION_4: HELP_INFORMATION_4: 'zgłaszając problem, nie zapomnij dołączyć informacji o swoim systemie',
'zgłaszając problem, nie zapomnij dołączyć informacji o swoim systemie',
HELP_INFORMATION_5: HELP_INFORMATION_5:
'EMS-ESP jest darmowym projektem typu open-source. Aby go wesprzeć, rozważ przyznanie nam gwiazdki na Github!', 'EMS-ESP jest darmowym projektem typu open-source. Aby go wesprzeć, rozważ przyznanie nam gwiazdki na Github!',
SUPPORT_INFO: 'Pobierz informacje', SUPPORT_INFO: 'Pobierz informacje',
@@ -179,7 +178,8 @@ const pl: Translation = {
CLOSE: 'Zamknij', CLOSE: 'Zamknij',
USE: 'Aby zaktualizować firmware skorzystaj z funkcji', USE: 'Aby zaktualizować firmware skorzystaj z funkcji',
FACTORY_RESET: 'Ustawienia fabryczne', FACTORY_RESET: 'Ustawienia fabryczne',
SYSTEM_FACTORY_TEXT: 'Interfejs EMS-ESP został przywrócony do ustawień fabrycznych i zostanie teraz ponownie uruchomiony.', SYSTEM_FACTORY_TEXT:
'Interfejs EMS-ESP został przywrócony do ustawień fabrycznych i zostanie teraz ponownie uruchomiony.',
SYSTEM_FACTORY_TEXT_DIALOG: 'Czy jesteś pewien, że chcesz przywrócić ustawienia fabryczne interfejsu EMS-ESP? ', SYSTEM_FACTORY_TEXT_DIALOG: 'Czy jesteś pewien, że chcesz przywrócić ustawienia fabryczne interfejsu EMS-ESP? ',
VERSION_CHECK: 'Sprawd{{ź|zanie|}} wersj{{ę|i|}}', VERSION_CHECK: 'Sprawd{{ź|zanie|}} wersj{{ę|i|}}',
THE_LATEST: 'Najnowsza', THE_LATEST: 'Najnowsza',

View File

@@ -100,7 +100,8 @@ const se: Translation = {
CUSTOMIZATION: 'Anpassa', CUSTOMIZATION: 'Anpassa',
APPLICATION_RESTARTING: 'EMS-ESP startar om', APPLICATION_RESTARTING: 'EMS-ESP startar om',
INTERFACE_BOARD_PROFILE: 'Interface Hårdvaruprofil', INTERFACE_BOARD_PROFILE: 'Interface Hårdvaruprofil',
BOARD_PROFILE_TEXT: 'Välj en förkonfigurerad hårdvaruprofil från listan nedan eller välj Anpassad för att konfigurera dina egna hårdvaruinställningar', BOARD_PROFILE_TEXT:
'Välj en förkonfigurerad hårdvaruprofil från listan nedan eller välj Anpassad för att konfigurera dina egna hårdvaruinställningar',
BOARD_PROFILE: 'Hårdvaruprofil', BOARD_PROFILE: 'Hårdvaruprofil',
BUTTON: 'Knapp', BUTTON: 'Knapp',
TEMPERATURE: 'Temperatur', TEMPERATURE: 'Temperatur',

View File

@@ -1077,7 +1077,13 @@ const DashboardData: FC = () => {
{analog.t >= AnalogType.COUNTER && analog.t <= AnalogType.RATE && ( {analog.t >= AnalogType.COUNTER && analog.t <= AnalogType.RATE && (
<> <>
<Grid item> <Grid item>
<ValidatedTextField name="u" label={LL.UNIT()} value={analog.u} select onChange={updateValue(setAnalog)}> <ValidatedTextField
name="u"
label={LL.UNIT()}
value={analog.u}
select
onChange={updateValue(setAnalog)}
>
{DeviceValueUOM_s.map((val, i) => ( {DeviceValueUOM_s.map((val, i) => (
<MenuItem key={i} value={i}> <MenuItem key={i} value={i}>
{val} {val}

View File

@@ -201,7 +201,10 @@ const DashboardStatus: FC = () => {
<DirectionsBusIcon /> <DirectionsBusIcon />
</Avatar> </Avatar>
</ListItemAvatar> </ListItemAvatar>
<ListItemText primary={LL.EMS_BUS_STATUS()} secondary={busStatus(data) + ' (' + formatDurationSec(data.uptime) + ')'} /> <ListItemText
primary={LL.EMS_BUS_STATUS()}
secondary={busStatus(data) + ' (' + formatDurationSec(data.uptime) + ')'}
/>
</ListItem> </ListItem>
<ListItem> <ListItem>
<ListItemAvatar> <ListItemAvatar>

View File

@@ -13,12 +13,12 @@ const Help: FC = () => {
const { LL } = useI18nContext(); const { LL } = useI18nContext();
const { routerTab } = useRouterTab(); const { routerTab } = useRouterTab();
useLayoutTitle(LL.HELP_OF("")); useLayoutTitle(LL.HELP_OF(''));
return ( return (
<> <>
<RouterTabs value={routerTab}> <RouterTabs value={routerTab}>
<Tab value="information" label={LL.HELP_OF("EMS-ESP")} /> <Tab value="information" label={LL.HELP_OF('EMS-ESP')} />
</RouterTabs> </RouterTabs>
<Routes> <Routes>
<Route path="information" element={<HelpInformation />} /> <Route path="information" element={<HelpInformation />} />

View File

@@ -22,11 +22,11 @@ const ProjectMenu: FC = () => {
<LayoutMenuItem icon={DashboardIcon} label={LL.DASHBOARD()} to={`/${PROJECT_PATH}/dashboard`} /> <LayoutMenuItem icon={DashboardIcon} label={LL.DASHBOARD()} to={`/${PROJECT_PATH}/dashboard`} />
<LayoutMenuItem <LayoutMenuItem
icon={TuneIcon} icon={TuneIcon}
label={LL.SETTINGS_OF("")} label={LL.SETTINGS_OF('')}
to={`/${PROJECT_PATH}/settings`} to={`/${PROJECT_PATH}/settings`}
disabled={!authenticatedContext.me.admin} disabled={!authenticatedContext.me.admin}
/> />
<LayoutMenuItem icon={InfoIcon} label={LL.HELP_OF("")} to={`/${PROJECT_PATH}/help`} /> <LayoutMenuItem icon={InfoIcon} label={LL.HELP_OF('')} to={`/${PROJECT_PATH}/help`} />
</List> </List>
); );
}; };

View File

@@ -14,7 +14,7 @@ const Settings: FC = () => {
const { LL } = useI18nContext(); const { LL } = useI18nContext();
const { routerTab } = useRouterTab(); const { routerTab } = useRouterTab();
useLayoutTitle(LL.SETTINGS_OF("")); useLayoutTitle(LL.SETTINGS_OF(''));
return ( return (
<> <>

View File

@@ -278,7 +278,7 @@ const SettingsApplication: FC = () => {
</> </>
)} )}
<Typography variant="h6" color="primary"> <Typography variant="h6" color="primary">
{LL.SETTINGS_OF("EMS BUS")} {LL.SETTINGS_OF('EMS BUS')}
</Typography> </Typography>
<Grid container spacing={1} direction="row" justifyContent="flex-start" alignItems="flex-start"> <Grid container spacing={1} direction="row" justifyContent="flex-start" alignItems="flex-start">
<Grid item xs={6}> <Grid item xs={6}>

View File

@@ -167,10 +167,7 @@ const SettingsCustomization: FC = () => {
function formatName(de: DeviceEntity) { function formatName(de: DeviceEntity) {
return ( return (
<> <>
{de.n && ( {de.n && (de.n[0] === '!' ? LL.COMMAND() + ': ' + de.n.slice(1) : de.cn && de.cn !== '' ? de.cn : de.n) + ' '}(
(de.n[0] === '!' ? LL.COMMAND() + ': ' + de.n.slice(1) : de.cn && de.cn !== '' ? de.cn : de.n) + ' '
)}
(
<Link target="_blank" href={APIURL + devices?.devices[selectedDevice].t + '/' + de.id}> <Link target="_blank" href={APIURL + devices?.devices[selectedDevice].t + '/' + de.id}>
{de.id} {de.id}
</Link> </Link>

View File

@@ -24,10 +24,7 @@ export const GPIO_VALIDATOR = {
export const GPIO_VALIDATORC3 = { export const GPIO_VALIDATORC3 = {
validator(rule: InternalRuleItem, value: number, callback: (error?: string) => void) { validator(rule: InternalRuleItem, value: number, callback: (error?: string) => void) {
if ( if (value && ((value >= 11 && value <= 19) || value > 21 || value < 0)) {
value &&
((value >= 11 && value <= 19) || value > 21 || value < 0)
) {
callback('Must be an valid GPIO port'); callback('Must be an valid GPIO port');
} else { } else {
callback(); callback();
@@ -37,10 +34,7 @@ export const GPIO_VALIDATORC3 = {
export const GPIO_VALIDATORS2 = { export const GPIO_VALIDATORS2 = {
validator(rule: InternalRuleItem, value: number, callback: (error?: string) => void) { validator(rule: InternalRuleItem, value: number, callback: (error?: string) => void) {
if ( if (value && ((value >= 19 && value <= 20) || (value >= 22 && value <= 32) || value > 40 || value < 0)) {
value &&
((value >= 19 && value <= 20) || (value >= 22 && value <= 32) || value > 40 || value < 0)
) {
callback('Must be an valid GPIO port'); callback('Must be an valid GPIO port');
} else { } else {
callback(); callback();
@@ -50,21 +44,24 @@ export const GPIO_VALIDATORS2 = {
export const createSettingsValidator = (settings: Settings) => export const createSettingsValidator = (settings: Settings) =>
new Schema({ new Schema({
...(settings.board_profile === 'CUSTOM' && settings.platform === 'ESP32' && { ...(settings.board_profile === 'CUSTOM' &&
settings.platform === 'ESP32' && {
led_gpio: [{ required: true, message: 'LED GPIO is required' }, GPIO_VALIDATOR], led_gpio: [{ required: true, message: 'LED GPIO is required' }, GPIO_VALIDATOR],
dallas_gpio: [{ required: true, message: 'GPIO is required' }, GPIO_VALIDATOR], dallas_gpio: [{ required: true, message: 'GPIO is required' }, GPIO_VALIDATOR],
pbutton_gpio: [{ required: true, message: 'Button GPIO is required' }, GPIO_VALIDATOR], pbutton_gpio: [{ required: true, message: 'Button GPIO is required' }, GPIO_VALIDATOR],
tx_gpio: [{ required: true, message: 'Tx GPIO is required' }, GPIO_VALIDATOR], tx_gpio: [{ required: true, message: 'Tx GPIO is required' }, GPIO_VALIDATOR],
rx_gpio: [{ required: true, message: 'Rx GPIO is required' }, GPIO_VALIDATOR] rx_gpio: [{ required: true, message: 'Rx GPIO is required' }, GPIO_VALIDATOR]
}), }),
...(settings.board_profile === 'CUSTOM' && settings.platform === 'ESP32-C3' && { ...(settings.board_profile === 'CUSTOM' &&
settings.platform === 'ESP32-C3' && {
led_gpio: [{ required: true, message: 'LED GPIO is required' }, GPIO_VALIDATORC3], led_gpio: [{ required: true, message: 'LED GPIO is required' }, GPIO_VALIDATORC3],
dallas_gpio: [{ required: true, message: 'GPIO is required' }, GPIO_VALIDATORC3], dallas_gpio: [{ required: true, message: 'GPIO is required' }, GPIO_VALIDATORC3],
pbutton_gpio: [{ required: true, message: 'Button GPIO is required' }, GPIO_VALIDATORC3], pbutton_gpio: [{ required: true, message: 'Button GPIO is required' }, GPIO_VALIDATORC3],
tx_gpio: [{ required: true, message: 'Tx GPIO is required' }, GPIO_VALIDATORC3], tx_gpio: [{ required: true, message: 'Tx GPIO is required' }, GPIO_VALIDATORC3],
rx_gpio: [{ required: true, message: 'Rx GPIO is required' }, GPIO_VALIDATORC3] rx_gpio: [{ required: true, message: 'Rx GPIO is required' }, GPIO_VALIDATORC3]
}), }),
...(settings.board_profile === 'CUSTOM' && settings.platform === 'ESP32-S2' && { ...(settings.board_profile === 'CUSTOM' &&
settings.platform === 'ESP32-S2' && {
led_gpio: [{ required: true, message: 'LED GPIO is required' }, GPIO_VALIDATORS2], led_gpio: [{ required: true, message: 'LED GPIO is required' }, GPIO_VALIDATORS2],
dallas_gpio: [{ required: true, message: 'GPIO is required' }, GPIO_VALIDATORS2], dallas_gpio: [{ required: true, message: 'GPIO is required' }, GPIO_VALIDATORS2],
pbutton_gpio: [{ required: true, message: 'Button GPIO is required' }, GPIO_VALIDATORS2], pbutton_gpio: [{ required: true, message: 'Button GPIO is required' }, GPIO_VALIDATORS2],

View File

@@ -47,7 +47,7 @@ export const useRest = <D>({ read, update }: RestRequestOptions<D>) => {
if (response.status === 202) { if (response.status === 202) {
setRestartNeeded(true); setRestartNeeded(true);
} else { } else {
enqueueSnackbar(LL.SETTINGS_OF("") + ' ' + LL.SAVED(), { variant: 'success' }); enqueueSnackbar(LL.SETTINGS_OF('') + ' ' + LL.SAVED(), { variant: 'success' });
} }
} catch (error) { } catch (error) {
const message = extractErrorMessage(error, LL.PROBLEM_UPDATING()); const message = extractErrorMessage(error, LL.PROBLEM_UPDATING());