mirror of
https://github.com/idanoo/autobrr
synced 2025-07-23 16:59:12 +00:00
fix(filters): Set NumberFields to required (#651)
* Set log score default to 0 NumberField: min={0} required={true} To avoid errors when user clears the field * removed max value by mistake * set max downloads default to 0 * Added requirements number fields in Action rules
This commit is contained in:
parent
362aa8f9d0
commit
5c7d2349d3
2 changed files with 15 additions and 4 deletions
|
@ -199,10 +199,14 @@ const TypeForm = ({ action, idx, clients }: TypeFormProps) => {
|
||||||
<NumberField
|
<NumberField
|
||||||
name={`actions.${idx}.limit_download_speed`}
|
name={`actions.${idx}.limit_download_speed`}
|
||||||
label="Limit download speed (KiB/s)"
|
label="Limit download speed (KiB/s)"
|
||||||
|
placeholder="Takes any number (0 is no limit)"
|
||||||
|
min={0} required={true}
|
||||||
/>
|
/>
|
||||||
<NumberField
|
<NumberField
|
||||||
name={`actions.${idx}.limit_upload_speed`}
|
name={`actions.${idx}.limit_upload_speed`}
|
||||||
label="Limit upload speed (KiB/s)"
|
label="Limit upload speed (KiB/s)"
|
||||||
|
placeholder="Takes any number (0 is no limit)"
|
||||||
|
min={0} required={true}
|
||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
@ -210,11 +214,15 @@ const TypeForm = ({ action, idx, clients }: TypeFormProps) => {
|
||||||
<NumberField
|
<NumberField
|
||||||
name={`actions.${idx}.limit_ratio`}
|
name={`actions.${idx}.limit_ratio`}
|
||||||
label="Ratio limit"
|
label="Ratio limit"
|
||||||
|
placeholder="Takes any number (0 is no limit)"
|
||||||
|
min={0} required={true}
|
||||||
step={0.5}
|
step={0.5}
|
||||||
/>
|
/>
|
||||||
<NumberField
|
<NumberField
|
||||||
name={`actions.${idx}.limit_seed_time`}
|
name={`actions.${idx}.limit_seed_time`}
|
||||||
label="Seed time limit (minutes)"
|
label="Seed time limit (minutes)"
|
||||||
|
placeholder="Takes any number (0 is no limit)"
|
||||||
|
min={0} required={true}
|
||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
@ -253,10 +261,13 @@ const TypeForm = ({ action, idx, clients }: TypeFormProps) => {
|
||||||
<NumberField
|
<NumberField
|
||||||
name={`actions.${idx}.reannounce_interval`}
|
name={`actions.${idx}.reannounce_interval`}
|
||||||
label="Reannounce interval. Run every X seconds"
|
label="Reannounce interval. Run every X seconds"
|
||||||
|
placeholder="7 is default and recommended"
|
||||||
|
min={1} required={true}
|
||||||
/>
|
/>
|
||||||
<NumberField
|
<NumberField
|
||||||
name={`actions.${idx}.reannounce_max_attempts`}
|
name={`actions.${idx}.reannounce_max_attempts`}
|
||||||
label="Run reannounce Y times"
|
label="Run reannounce Y times"
|
||||||
|
min={1} required={true}
|
||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
|
@ -237,7 +237,7 @@ export default function FilterDetails() {
|
||||||
max_size: filter.max_size,
|
max_size: filter.max_size,
|
||||||
delay: filter.delay,
|
delay: filter.delay,
|
||||||
priority: filter.priority ?? 0,
|
priority: filter.priority ?? 0,
|
||||||
max_downloads: filter.max_downloads,
|
max_downloads: filter.max_downloads ?? 0,
|
||||||
max_downloads_unit: filter.max_downloads_unit,
|
max_downloads_unit: filter.max_downloads_unit,
|
||||||
use_regex: filter.use_regex || false,
|
use_regex: filter.use_regex || false,
|
||||||
shows: filter.shows,
|
shows: filter.shows,
|
||||||
|
@ -274,7 +274,7 @@ export default function FilterDetails() {
|
||||||
quality: filter.quality || [],
|
quality: filter.quality || [],
|
||||||
media: filter.media || [],
|
media: filter.media || [],
|
||||||
match_release_types: filter.match_release_types || [],
|
match_release_types: filter.match_release_types || [],
|
||||||
log_score: filter.log_score,
|
log_score: filter.log_score ?? 0,
|
||||||
log: filter.log,
|
log: filter.log,
|
||||||
cue: filter.cue,
|
cue: filter.cue,
|
||||||
perfect_flac: filter.perfect_flac,
|
perfect_flac: filter.perfect_flac,
|
||||||
|
@ -351,7 +351,7 @@ export function General() {
|
||||||
<NumberField name="delay" label="Delay" placeholder="Number of seconds to delay actions" />
|
<NumberField name="delay" label="Delay" placeholder="Number of seconds to delay actions" />
|
||||||
<NumberField name="priority" label="Priority" placeholder="Higher number = higher prio" min={0} required={true} />
|
<NumberField name="priority" label="Priority" placeholder="Higher number = higher prio" min={0} required={true} />
|
||||||
|
|
||||||
<NumberField name="max_downloads" label="Max downloads" placeholder="Takes any number (0 is infinite)" />
|
<NumberField name="max_downloads" label="Max downloads" placeholder="Takes any number (0 is infinite)" min={0} required={true} />
|
||||||
<Select name="max_downloads_unit" label="Max downloads per" options={downloadsPerUnitOptions} optionDefaultText="Select unit" />
|
<Select name="max_downloads_unit" label="Max downloads per" options={downloadsPerUnitOptions} optionDefaultText="Select unit" />
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
@ -435,7 +435,7 @@ export function Music({ values }: AdvancedProps) {
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div className="mt-6 grid grid-cols-12 gap-6">
|
<div className="mt-6 grid grid-cols-12 gap-6">
|
||||||
<NumberField name="log_score" label="Log score" placeholder="eg. 100" min={0} max={100} disabled={values.perfect_flac} />
|
<NumberField name="log_score" label="Log score" placeholder="eg. 100" min={0} max={100} required={true} disabled={values.perfect_flac} />
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue