mirror of
https://github.com/truewhile/MeBox.git
synced 2026-09-29 19:36:36 +08:00
feat: skip existing media in STRM tree generation
This commit is contained in:
@@ -49,6 +49,7 @@ export type GenerateSTRMTreeInput = {
|
||||
dry_run?: boolean
|
||||
batch_limit?: number
|
||||
transfer_subtitles?: boolean
|
||||
missing_only?: boolean
|
||||
refresh_library?: boolean
|
||||
}
|
||||
|
||||
|
||||
@@ -32,6 +32,7 @@ export function StrmTreeGenerateSection({
|
||||
batchLimit,
|
||||
cleanup,
|
||||
generating,
|
||||
missingOnly,
|
||||
onGenerate,
|
||||
onPreview,
|
||||
onImportTreeFile,
|
||||
@@ -46,6 +47,7 @@ export function StrmTreeGenerateSection({
|
||||
setBaseURL,
|
||||
setBatchLimit,
|
||||
setCleanup,
|
||||
setMissingOnly,
|
||||
setOutputDir,
|
||||
setOutputPrefix,
|
||||
setOverwrite,
|
||||
@@ -187,6 +189,10 @@ export function StrmTreeGenerateSection({
|
||||
<input type="checkbox" checked={transferSubtitles} onChange={(e) => setTransferSubtitles(e.target.checked)} />
|
||||
转移同名字幕链接
|
||||
</label>
|
||||
<label className="flex min-h-10 items-center gap-2 rounded-2xl border border-gray-200 bg-white/70 px-3 py-2 text-sm text-ink-50 md:col-span-4">
|
||||
<input type="checkbox" checked={missingOnly} onChange={(e) => setMissingOnly(e.target.checked)} />
|
||||
仅生成媒体库缺失
|
||||
</label>
|
||||
<label className="flex min-h-10 items-center gap-2 rounded-2xl border border-gray-200 bg-white/70 px-3 py-2 text-sm text-ink-50 md:col-span-4">
|
||||
<input type="checkbox" checked={refreshLibrary} onChange={(e) => setRefreshLibrary(e.target.checked)} />
|
||||
生成后刷新媒体库
|
||||
|
||||
@@ -18,6 +18,7 @@ export function useStrmTreeGenerateForm() {
|
||||
const [overwrite, setOverwrite] = useState(false)
|
||||
const [cleanup, setCleanup] = useState(false)
|
||||
const [transferSubtitles, setTransferSubtitles] = useState(true)
|
||||
const [missingOnly, setMissingOnly] = useState(false)
|
||||
const [refreshLibrary, setRefreshLibrary] = useState(true)
|
||||
const [runningMode, setRunningMode] = useState<'generate' | 'preview' | null>(null)
|
||||
const [result, setResult] = useState<GenerateSTRMResult | null>(null)
|
||||
@@ -72,6 +73,7 @@ export function useStrmTreeGenerateForm() {
|
||||
dry_run: dryRun,
|
||||
batch_limit: parsedBatchLimit || undefined,
|
||||
transfer_subtitles: transferSubtitles,
|
||||
missing_only: missingOnly,
|
||||
refresh_library: refreshLibrary,
|
||||
})
|
||||
setResult(next)
|
||||
@@ -104,6 +106,7 @@ export function useStrmTreeGenerateForm() {
|
||||
onImportTreeFile,
|
||||
onGenerate,
|
||||
onPreview,
|
||||
missingOnly,
|
||||
outputDir,
|
||||
outputPrefix,
|
||||
overwrite,
|
||||
@@ -115,6 +118,7 @@ export function useStrmTreeGenerateForm() {
|
||||
setBaseURL,
|
||||
setBatchLimit,
|
||||
setCleanup,
|
||||
setMissingOnly,
|
||||
setOutputDir,
|
||||
setOutputPrefix,
|
||||
setOverwrite,
|
||||
|
||||
Reference in New Issue
Block a user