# Copyright 2026, Jiri Eischmann <jiri@eischmann.cz> and the meshy contributors
# SPDX-License-Identifier: GPL-3.0-or-later

"""Platform notification facade.

Exports ``NotificationService`` from the platform backend:
- Linux: GIO notification backend using Gio.Notification
- macOS: Native UserNotifications framework (UNUserNotificationCenter)

IMPORTANT - macOS Limitation:
The native UserNotifications framework requires a properly signed Python executable.
Homebrew Python has only ad-hoc signatures which UNUserNotificationCenter rejects.
For notifications to work on macOS, use either:
- Python from python.org (properly signed)
- Bundled Python framework (signed with Developer ID)
"""

import sys

if sys.platform == "darwin":
    from .platforms.macos.notification_native import (
        MacOSNotificationService as NotificationService,
    )
else:
    from .platforms.linux.notification_gio import (
        GioNotificationService as NotificationService,
    )

__all__ = ["NotificationService"]
