release: publish Multi-Debrid Downloader v2.0.14
Add live English and German localization, queue availability and metadata resolution, responsive package controls, polished navigation and drag interactions, clearer history and account states, and a rebuilt public README. Harden Windows packaging with verified icons and version metadata, archive inspection, and expanded release tests.
This commit is contained in:
@@ -1,6 +1,19 @@
|
||||
import type { SessionState } from "../shared/types";
|
||||
|
||||
/**
|
||||
import type { SessionState } from "../shared/types";
|
||||
|
||||
const DOWNLOAD_SELECTION_PRESERVE_SELECTOR = ".downloads-package-card, .downloads-item-row, .downloads-selection-cell, .package-card, .ctx-menu, .modal-backdrop, .modal-card";
|
||||
|
||||
export function shouldClearDownloadSelection(target: Pick<Element, "closest">): boolean {
|
||||
return !target.closest(DOWNLOAD_SELECTION_PRESERVE_SELECTOR);
|
||||
}
|
||||
|
||||
export function shouldClearDownloadSelectionOnEscape(tagName: string, inputType = ""): boolean {
|
||||
const normalizedTag = tagName.toUpperCase();
|
||||
if (normalizedTag === "TEXTAREA") return false;
|
||||
if (normalizedTag !== "INPUT") return true;
|
||||
return ["checkbox", "radio", "button"].includes(inputType.toLowerCase());
|
||||
}
|
||||
|
||||
/**
|
||||
* Drop selected ids whose package OR item no longer exists in the session.
|
||||
* The selection set mixes package and item ids; when entries vanish (delta
|
||||
* removal, backup-driven session swap, completed-cleanup) a stale id would
|
||||
|
||||
Reference in New Issue
Block a user