mirror of
https://github.com/Omni-guides/Jackify.git
synced 2026-01-17 11:37:01 +01:00
44 lines
1.1 KiB
Python
44 lines
1.1 KiB
Python
"""
|
|
Utilities for detecting Nexus Premium requirement messages in engine output.
|
|
"""
|
|
|
|
from __future__ import annotations
|
|
|
|
_KEYWORD_PHRASES = (
|
|
"buy nexus premium",
|
|
"requires nexus premium",
|
|
"requires a nexus premium",
|
|
"nexus premium is required",
|
|
"nexus premium required",
|
|
"nexus mods premium is required",
|
|
"manual download", # Evaluated with additional context
|
|
)
|
|
|
|
|
|
def is_non_premium_indicator(line: str) -> bool:
|
|
"""
|
|
Return True if the engine output line indicates a Nexus non-premium scenario.
|
|
|
|
Args:
|
|
line: Raw line emitted from the jackify-engine process.
|
|
"""
|
|
if not line:
|
|
return False
|
|
|
|
normalized = line.strip().lower()
|
|
if not normalized:
|
|
return False
|
|
|
|
# Direct phrase detection
|
|
for phrase in _KEYWORD_PHRASES[:6]:
|
|
if phrase in normalized:
|
|
return True
|
|
|
|
# Manual download + Nexus URL implies premium requirement in current workflows.
|
|
if "manual download" in normalized and ("nexusmods.com" in normalized or "nexus mods" in normalized):
|
|
return True
|
|
|
|
return False
|
|
|
|
|