diff --git a/requirements.txt b/requirements.txt index 8dc7048..7775f6f 100644 --- a/requirements.txt +++ b/requirements.txt @@ -1,4 +1,5 @@ git+https://github.com/rambros3d/fluxer.py.git # API wrapper for Fluxer +git+https://github.com/MCausc78/stoat.py # API wrapper for Stoat discord.py # API wrapper for Discord rich # Terminal formatting and rich text PyYAML # YAML parsing and serialization diff --git a/src/core/base.py b/src/core/base.py index 95e3c04..e00733f 100644 --- a/src/core/base.py +++ b/src/core/base.py @@ -4,7 +4,7 @@ from typing import Dict, Any from src.core.configuration import AppConfig from src.core.state import MigrationState from src.core.discord_reader import DiscordReader -from src.core.fluxer_writer import FluxerWriter +from src.fluxer.writer import FluxerWriter logger = logging.getLogger(__name__) diff --git a/src/fluxer/__init__.py b/src/fluxer/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/src/core/clone_server.py b/src/fluxer/clone_server.py similarity index 100% rename from src/core/clone_server.py rename to src/fluxer/clone_server.py diff --git a/src/core/danger_zone.py b/src/fluxer/danger_zone.py similarity index 100% rename from src/core/danger_zone.py rename to src/fluxer/danger_zone.py diff --git a/src/core/emoji_stickers.py b/src/fluxer/emoji_stickers.py similarity index 100% rename from src/core/emoji_stickers.py rename to src/fluxer/emoji_stickers.py diff --git a/src/core/migrate_message.py b/src/fluxer/migrate_message.py similarity index 100% rename from src/core/migrate_message.py rename to src/fluxer/migrate_message.py diff --git a/src/core/roles_permissions.py b/src/fluxer/roles_permissions.py similarity index 100% rename from src/core/roles_permissions.py rename to src/fluxer/roles_permissions.py diff --git a/src/core/server_metadata.py b/src/fluxer/server_metadata.py similarity index 100% rename from src/core/server_metadata.py rename to src/fluxer/server_metadata.py diff --git a/src/core/fluxer_writer.py b/src/fluxer/writer.py similarity index 100% rename from src/core/fluxer_writer.py rename to src/fluxer/writer.py diff --git a/src/stoat/__init__.py b/src/stoat/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/src/stoat/writer.py b/src/stoat/writer.py new file mode 100644 index 0000000..044e4f4 --- /dev/null +++ b/src/stoat/writer.py @@ -0,0 +1,23 @@ +import logging + +logger = logging.getLogger(__name__) + +class StoatWriter: + def __init__(self, token: str, community_id: str): + self.token = token + self.community_id = str(community_id) + + async def start(self): + logger.info("StoatWriter start (Not implemented)") + + async def validate(self) -> dict: + return { + "token": True, + "community": True, + "bot_name": "Stoat Dummy", + "community_name": "Stoat Community Dummy", + "permissions": {} + } + + async def close(self): + pass diff --git a/src/ui/app.py b/src/ui/app.py index d211819..f42f9d2 100644 --- a/src/ui/app.py +++ b/src/ui/app.py @@ -9,12 +9,12 @@ from rich.panel import Panel from rich.progress import Progress, SpinnerColumn, TextColumn, BarColumn, TaskProgressColumn from src.core.configuration import load_config, save_config from src.core.base import MigrationContext -from src.core.clone_server import sync_channel_state, migrate_channels -from src.core.roles_permissions import sync_roles_state, sync_permissions, migrate_roles -from src.core.emoji_stickers import sync_assets_state, migrate_emojis -from src.core.server_metadata import sync_server_metadata -from src.core.migrate_message import analyze_migration, migrate_messages -from src.core.danger_zone import danger_remove_logo_and_banner, danger_delete_all_channels, danger_reset_channel_permissions, danger_delete_all_roles, danger_delete_all_emojis_and_stickers +from src.fluxer.clone_server import sync_channel_state, migrate_channels +from src.fluxer.roles_permissions import sync_roles_state, sync_permissions, migrate_roles +from src.fluxer.emoji_stickers import sync_assets_state, migrate_emojis +from src.fluxer.server_metadata import sync_server_metadata +from src.fluxer.migrate_message import analyze_migration, migrate_messages +from src.fluxer.danger_zone import danger_remove_logo_and_banner, danger_delete_all_channels, danger_reset_channel_permissions, danger_delete_all_roles, danger_delete_all_emojis_and_stickers from src.core.audit import log_audit_event class RateLimitHandler(logging.Handler):