mirror of
https://github.com/blakeblackshear/frigate.git
synced 2026-04-05 22:57:40 +03:00
frontend
This commit is contained in:
parent
102be124d4
commit
9cdbf2efff
@ -1253,6 +1253,8 @@
|
|||||||
"dryRunDisabled": "Files will be deleted",
|
"dryRunDisabled": "Files will be deleted",
|
||||||
"force": "Force",
|
"force": "Force",
|
||||||
"forceDesc": "Bypass safety threshold and complete sync even if more than 50% of the files would be deleted.",
|
"forceDesc": "Bypass safety threshold and complete sync even if more than 50% of the files would be deleted.",
|
||||||
|
"verbose": "Verbose",
|
||||||
|
"verboseDesc": "Write a full list of orphaned files to disk for review.",
|
||||||
"running": "Sync Running...",
|
"running": "Sync Running...",
|
||||||
"start": "Start Sync",
|
"start": "Start Sync",
|
||||||
"inProgress": "Sync is in progress. This page is disabled.",
|
"inProgress": "Sync is in progress. This page is disabled.",
|
||||||
|
|||||||
@ -22,6 +22,7 @@ export default function MediaSyncSettingsView() {
|
|||||||
]);
|
]);
|
||||||
const [dryRun, setDryRun] = useState(true);
|
const [dryRun, setDryRun] = useState(true);
|
||||||
const [force, setForce] = useState(false);
|
const [force, setForce] = useState(false);
|
||||||
|
const [verbose, setVerbose] = useState(false);
|
||||||
const [isSubmitting, setIsSubmitting] = useState(false);
|
const [isSubmitting, setIsSubmitting] = useState(false);
|
||||||
|
|
||||||
const MEDIA_TYPES = [
|
const MEDIA_TYPES = [
|
||||||
@ -67,6 +68,7 @@ export default function MediaSyncSettingsView() {
|
|||||||
dry_run: dryRun,
|
dry_run: dryRun,
|
||||||
media_types: selectedMediaTypes,
|
media_types: selectedMediaTypes,
|
||||||
force: force,
|
force: force,
|
||||||
|
verbose: verbose,
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
headers: {
|
headers: {
|
||||||
@ -94,7 +96,7 @@ export default function MediaSyncSettingsView() {
|
|||||||
} finally {
|
} finally {
|
||||||
setIsSubmitting(false);
|
setIsSubmitting(false);
|
||||||
}
|
}
|
||||||
}, [selectedMediaTypes, dryRun, force, t]);
|
}, [selectedMediaTypes, dryRun, force, verbose, t]);
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<>
|
<>
|
||||||
@ -205,6 +207,25 @@ export default function MediaSyncSettingsView() {
|
|||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
<div className="flex flex-col">
|
||||||
|
<div className="flex flex-row items-center justify-between gap-4">
|
||||||
|
<div className="space-y-0.5">
|
||||||
|
<Label htmlFor="verbose" className="cursor-pointer">
|
||||||
|
{t("maintenance.sync.verbose")}
|
||||||
|
</Label>
|
||||||
|
<p className="text-xs text-muted-foreground">
|
||||||
|
{t("maintenance.sync.verboseDesc")}
|
||||||
|
</p>
|
||||||
|
</div>
|
||||||
|
<Switch
|
||||||
|
id="verbose"
|
||||||
|
checked={verbose}
|
||||||
|
onCheckedChange={setVerbose}
|
||||||
|
disabled={isJobRunning}
|
||||||
|
/>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
{/* Action Buttons */}
|
{/* Action Buttons */}
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user