mirror of
https://github.com/idanoo/autobrr
synced 2025-07-23 16:59:12 +00:00
fix(web): actions ratio limit support decimal values (#1100)
fix(web): make NumberField support decimal values
This commit is contained in:
parent
bdea9599d2
commit
1215036d89
2 changed files with 11 additions and 4 deletions
|
@ -609,6 +609,7 @@ interface NumberFieldProps {
|
||||||
min?: number;
|
min?: number;
|
||||||
max?: number;
|
max?: number;
|
||||||
tooltip?: JSX.Element;
|
tooltip?: JSX.Element;
|
||||||
|
isDecimal?: boolean;
|
||||||
}
|
}
|
||||||
|
|
||||||
export const NumberField = ({
|
export const NumberField = ({
|
||||||
|
@ -620,7 +621,8 @@ export const NumberField = ({
|
||||||
max,
|
max,
|
||||||
tooltip,
|
tooltip,
|
||||||
disabled,
|
disabled,
|
||||||
required
|
required,
|
||||||
|
isDecimal
|
||||||
}: NumberFieldProps) => (
|
}: NumberFieldProps) => (
|
||||||
<div className="col-span-12 sm:col-span-6">
|
<div className="col-span-12 sm:col-span-6">
|
||||||
<label
|
<label
|
||||||
|
@ -642,7 +644,7 @@ export const NumberField = ({
|
||||||
step={step}
|
step={step}
|
||||||
min={min}
|
min={min}
|
||||||
max={max}
|
max={max}
|
||||||
inputMode="numeric"
|
inputMode={isDecimal ? "decimal" : "numeric"}
|
||||||
required={required}
|
required={required}
|
||||||
className={classNames(
|
className={classNames(
|
||||||
meta.touched && meta.error
|
meta.touched && meta.error
|
||||||
|
@ -660,7 +662,11 @@ export const NumberField = ({
|
||||||
form.setFieldValue(field.name, 0);
|
form.setFieldValue(field.name, 0);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
form.setFieldValue(field.name, parseInt(event.target.value)); // Convert the input value to an integer using parseInt() to ensure that the backend can properly parse the numberfield as an integer.
|
if (isDecimal) {
|
||||||
|
form.setFieldValue(field.name, parseFloat(event.target.value));
|
||||||
|
} else {
|
||||||
|
form.setFieldValue(field.name, parseInt(event.target.value));
|
||||||
|
}
|
||||||
}}
|
}}
|
||||||
onWheel={(event) => {
|
onWheel={(event) => {
|
||||||
if (event.currentTarget === document.activeElement) {
|
if (event.currentTarget === document.activeElement) {
|
||||||
|
|
|
@ -263,7 +263,8 @@ const TypeForm = ({ action, idx, clients }: TypeFormProps) => {
|
||||||
name={`actions.${idx}.limit_ratio`}
|
name={`actions.${idx}.limit_ratio`}
|
||||||
label="Ratio limit"
|
label="Ratio limit"
|
||||||
placeholder="Takes any number (0 is no limit)"
|
placeholder="Takes any number (0 is no limit)"
|
||||||
step={1} // 0.5 does not work
|
step={0.25}
|
||||||
|
isDecimal
|
||||||
/>
|
/>
|
||||||
<NumberField
|
<NumberField
|
||||||
name={`actions.${idx}.limit_seed_time`}
|
name={`actions.${idx}.limit_seed_time`}
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue