Spaces:
Sleeping
Sleeping
| """ | |
| Базовый класс для всех спуф-модулей | |
| """ | |
| from abc import ABC, abstractmethod | |
| from typing import TYPE_CHECKING | |
| if TYPE_CHECKING: | |
| from .profile import SpoofProfile | |
| class BaseSpoofModule(ABC): | |
| """ | |
| Базовый класс спуф-модуля. | |
| Каждый модуль: | |
| - Принимает SpoofProfile | |
| - Возвращает JS-код через get_js() | |
| - Имеет name и description для логирования | |
| """ | |
| name: str = "base" | |
| description: str = "Base spoof module" | |
| def __init__(self, profile: "SpoofProfile"): | |
| self.profile = profile | |
| def get_js(self) -> str: | |
| """ | |
| Возвращает JS-код для инжекта. | |
| JS должен быть обёрнут в IIFE: (function() { ... })(); | |
| Использовать self.profile для доступа к параметрам. | |
| """ | |
| pass | |
| def __repr__(self): | |
| return f"<{self.__class__.__name__}: {self.description}>" | |