use ValidatedTextField

This commit is contained in:
proddy
2025-11-17 12:25:52 +01:00
parent 9669a044ba
commit 88afd3f453

View File

@@ -14,7 +14,6 @@ import {
Grid, Grid,
InputAdornment, InputAdornment,
MenuItem, MenuItem,
TextField,
Typography Typography
} from '@mui/material'; } from '@mui/material';
@@ -193,12 +192,11 @@ const SensorsAnalogDialog = ({
label={LL.NAME(0)} label={LL.NAME(0)}
value={editItem.n} value={editItem.n}
fullWidth fullWidth
variant="outlined"
onChange={updateFormValue} onChange={updateFormValue}
/> />
</Grid> </Grid>
<Grid> <Grid>
<TextField <ValidatedTextField
name="t" name="t"
label={LL.TYPE(0)} label={LL.TYPE(0)}
value={editItem.t} value={editItem.t}
@@ -208,11 +206,11 @@ const SensorsAnalogDialog = ({
disabled={editItem.s} disabled={editItem.s}
> >
{analogTypeMenuItems} {analogTypeMenuItems}
</TextField> </ValidatedTextField>
</Grid> </Grid>
{(isCounterOrRate || isFreqType) && ( {(isCounterOrRate || isFreqType) && (
<Grid> <Grid>
<TextField <ValidatedTextField
name="u" name="u"
label={LL.UNIT()} label={LL.UNIT()}
value={editItem.u} value={editItem.u}
@@ -222,18 +220,17 @@ const SensorsAnalogDialog = ({
disabled={editItem.s} disabled={editItem.s}
> >
{uomMenuItems} {uomMenuItems}
</TextField> </ValidatedTextField>
</Grid> </Grid>
)} )}
{editItem.t === AnalogType.ADC && ( {editItem.t === AnalogType.ADC && (
<Grid> <Grid>
<TextField <ValidatedTextField
name="o" name="o"
label={LL.OFFSET()} label={LL.OFFSET()}
value={numberValue(editItem.o)} value={numberValue(editItem.o)}
type="number" type="number"
sx={{ width: '11ch' }} sx={{ width: '11ch' }}
variant="outlined"
onChange={updateFormValue} onChange={updateFormValue}
disabled={editItem.s} disabled={editItem.s}
slotProps={{ slotProps={{
@@ -249,13 +246,12 @@ const SensorsAnalogDialog = ({
)} )}
{editItem.t === AnalogType.NTC && ( {editItem.t === AnalogType.NTC && (
<Grid> <Grid>
<TextField <ValidatedTextField
name="o" name="o"
label={LL.OFFSET()} label={LL.OFFSET()}
value={numberValue(editItem.o)} value={numberValue(editItem.o)}
sx={{ width: '11ch' }} sx={{ width: '11ch' }}
type="number" type="number"
variant="outlined"
onChange={updateFormValue} onChange={updateFormValue}
disabled={editItem.s} disabled={editItem.s}
slotProps={{ slotProps={{
@@ -271,13 +267,12 @@ const SensorsAnalogDialog = ({
)} )}
{editItem.t === AnalogType.COUNTER && ( {editItem.t === AnalogType.COUNTER && (
<Grid> <Grid>
<TextField <ValidatedTextField
name="o" name="o"
label={LL.STARTVALUE()} label={LL.STARTVALUE()}
value={numberValue(editItem.o)} value={numberValue(editItem.o)}
type="number" type="number"
sx={{ width: '11ch' }} sx={{ width: '11ch' }}
variant="outlined"
onChange={updateFormValue} onChange={updateFormValue}
disabled={editItem.s} disabled={editItem.s}
slotProps={{ slotProps={{
@@ -288,13 +283,12 @@ const SensorsAnalogDialog = ({
)} )}
{editItem.t === AnalogType.RGB && ( {editItem.t === AnalogType.RGB && (
<Grid> <Grid>
<TextField <ValidatedTextField
name="o" name="o"
label={'RGB ' + LL.VALUE(0)} label={'RGB ' + LL.VALUE(0)}
value={numberValue(editItem.o)} value={numberValue(editItem.o)}
type="number" type="number"
sx={{ width: '11ch' }} sx={{ width: '11ch' }}
variant="outlined"
onChange={updateFormValue} onChange={updateFormValue}
disabled={editItem.s} disabled={editItem.s}
/> />
@@ -302,13 +296,12 @@ const SensorsAnalogDialog = ({
)} )}
{isCounterOrRate && ( {isCounterOrRate && (
<Grid> <Grid>
<TextField <ValidatedTextField
name="f" name="f"
label={LL.FACTOR()} label={LL.FACTOR()}
value={numberValue(editItem.f)} value={numberValue(editItem.f)}
sx={{ width: '14ch' }} sx={{ width: '14ch' }}
type="number" type="number"
variant="outlined"
onChange={updateFormValue} onChange={updateFormValue}
disabled={editItem.s} disabled={editItem.s}
slotProps={{ slotProps={{
@@ -319,13 +312,12 @@ const SensorsAnalogDialog = ({
)} )}
{isDigitalOutGPIO && ( {isDigitalOutGPIO && (
<Grid> <Grid>
<TextField <ValidatedTextField
name="o" name="o"
label={LL.VALUE(0)} label={LL.VALUE(0)}
value={numberValue(editItem.o)} value={numberValue(editItem.o)}
sx={{ width: '11ch' }} sx={{ width: '11ch' }}
type="number" type="number"
variant="outlined"
onChange={updateFormValue} onChange={updateFormValue}
disabled={editItem.s} disabled={editItem.s}
slotProps={{ slotProps={{
@@ -337,21 +329,20 @@ const SensorsAnalogDialog = ({
{isDigitalOutNonGPIO && ( {isDigitalOutNonGPIO && (
<> <>
<Grid> <Grid>
<TextField <ValidatedTextField
name="o" name="o"
label={LL.VALUE(0)} label={LL.VALUE(0)}
value={numberValue(editItem.o)} value={numberValue(editItem.o)}
select select
variant="outlined"
onChange={updateFormValue} onChange={updateFormValue}
disabled={editItem.s} disabled={editItem.s}
> >
<MenuItem value={0}>{LL.OFF()}</MenuItem> <MenuItem value={0}>{LL.OFF()}</MenuItem>
<MenuItem value={1}>{LL.ON()}</MenuItem> <MenuItem value={1}>{LL.ON()}</MenuItem>
</TextField> </ValidatedTextField>
</Grid> </Grid>
<Grid> <Grid>
<TextField <ValidatedTextField
name="f" name="f"
label={LL.POLARITY()} label={LL.POLARITY()}
value={editItem.f} value={editItem.f}
@@ -362,10 +353,10 @@ const SensorsAnalogDialog = ({
> >
<MenuItem value={1}>{LL.ACTIVEHIGH()}</MenuItem> <MenuItem value={1}>{LL.ACTIVEHIGH()}</MenuItem>
<MenuItem value={-1}>{LL.ACTIVELOW()}</MenuItem> <MenuItem value={-1}>{LL.ACTIVELOW()}</MenuItem>
</TextField> </ValidatedTextField>
</Grid> </Grid>
<Grid> <Grid>
<TextField <ValidatedTextField
name="u" name="u"
label={LL.STARTVALUE()} label={LL.STARTVALUE()}
sx={{ width: '15ch' }} sx={{ width: '15ch' }}
@@ -381,19 +372,18 @@ const SensorsAnalogDialog = ({
<MenuItem value={2}> <MenuItem value={2}>
{LL.ALWAYS()}&nbsp;{LL.ON()} {LL.ALWAYS()}&nbsp;{LL.ON()}
</MenuItem> </MenuItem>
</TextField> </ValidatedTextField>
</Grid> </Grid>
</> </>
)} )}
{isPWM && ( {isPWM && (
<> <>
<Grid> <Grid>
<TextField <ValidatedTextField
name="f" name="f"
label={LL.FREQ()} label={LL.FREQ()}
value={numberValue(editItem.f)} value={numberValue(editItem.f)}
type="number" type="number"
variant="outlined"
sx={{ width: '11ch' }} sx={{ width: '11ch' }}
onChange={updateFormValue} onChange={updateFormValue}
disabled={editItem.s} disabled={editItem.s}
@@ -408,13 +398,12 @@ const SensorsAnalogDialog = ({
/> />
</Grid> </Grid>
<Grid> <Grid>
<TextField <ValidatedTextField
name="o" name="o"
label={LL.DUTY_CYCLE()} label={LL.DUTY_CYCLE()}
value={numberValue(editItem.o)} value={numberValue(editItem.o)}
type="number" type="number"
sx={{ width: '11ch' }} sx={{ width: '11ch' }}
variant="outlined"
onChange={updateFormValue} onChange={updateFormValue}
disabled={editItem.s} disabled={editItem.s}
slotProps={{ slotProps={{
@@ -432,7 +421,7 @@ const SensorsAnalogDialog = ({
{editItem.t === AnalogType.PULSE && ( {editItem.t === AnalogType.PULSE && (
<> <>
<Grid> <Grid>
<TextField <ValidatedTextField
name="o" name="o"
label={LL.POLARITY()} label={LL.POLARITY()}
value={editItem.o} value={editItem.o}
@@ -443,16 +432,15 @@ const SensorsAnalogDialog = ({
> >
<MenuItem value={0}>{LL.ACTIVEHIGH()}</MenuItem> <MenuItem value={0}>{LL.ACTIVEHIGH()}</MenuItem>
<MenuItem value={1}>{LL.ACTIVELOW()}</MenuItem> <MenuItem value={1}>{LL.ACTIVELOW()}</MenuItem>
</TextField> </ValidatedTextField>
</Grid> </Grid>
<Grid> <Grid>
<TextField <ValidatedTextField
name="f" name="f"
label="Pulse" label="Pulse"
value={numberValue(editItem.f)} value={numberValue(editItem.f)}
type="number" type="number"
sx={{ width: '15ch' }} sx={{ width: '15ch' }}
variant="outlined"
onChange={updateFormValue} onChange={updateFormValue}
disabled={editItem.s} disabled={editItem.s}
slotProps={{ slotProps={{