This commit is contained in:
2026-05-26 19:00:04 -07:00
parent 0db899d0c3
commit cdae571385
24 changed files with 119 additions and 241 deletions
+16 -18
View File
@@ -10,7 +10,7 @@ from datetime import datetime, timedelta
from urllib.parse import urlparse, parse_qs
from pathlib import Path
from SYS.cmdlet_spec import Cmdlet, CmdletArg, parse_cmdlet_args
from PluginCore.registry import get_plugin, get_plugin_for_url, list_plugin_names_with_capability
from PluginCore.registry import get_plugin, get_plugin_for_url
from SYS.logger import debug, get_thread_stream, is_debug_enabled, set_debug, set_thread_stream
from SYS.result_table import Table
from plugins.mpv.mpv_ipc import MPV
@@ -566,34 +566,32 @@ def _iter_provider_hook_candidates(
providers: List[Any] = []
seen: set[str] = set()
for target in targets or ():
try:
provider = get_plugin_for_url(str(target or ""), config or {})
except Exception:
provider = None
def _append_provider(provider: Any) -> None:
if provider is None:
continue
return
name = str(getattr(provider, "name", "") or "").strip().lower()
if name and name not in seen:
seen.add(name)
providers.append(provider)
try:
provider_names = list_plugin_names_with_capability(capability)
except Exception:
provider_names = []
for target in targets or ():
try:
provider = get_plugin_for_url(str(target or ""), config or {})
except Exception:
provider = None
_append_provider(provider)
for provider_name in provider_names:
fallback_provider_names = {
"pipe-item-context": ("hydrusnetwork",),
"playlist-store": ("hydrusnetwork",),
}.get(str(capability or "").strip().lower(), ())
for provider_name in fallback_provider_names:
try:
provider = get_plugin(provider_name, config or {})
except Exception:
provider = None
if provider is None:
continue
name = str(getattr(provider, "name", provider_name) or provider_name).strip().lower()
if name and name not in seen:
seen.add(name)
providers.append(provider)
_append_provider(provider)
return providers