Source code for oauth_dropins.pixelfed

"""Pixelfed OAuth drop-in.

Pixelfed's API is a clone of Mastodon's v1 API:
https://docs.pixelfed.org/technical-documentation/api-v1.html
"""
from . import mastodon


[docs]class PixelfedApp(mastodon.MastodonApp): """A Pixelfed API OAuth2 app registered with a specific instance.""" pass
[docs]class PixelfedAuth(mastodon.MastodonAuth): """An authenticated Pixelfed user."""
[docs] def site_name(self): return 'Pixelfed'
[docs]class StartHandler(mastodon.StartHandler): """Starts Pixelfed auth. Requests an auth code and expects a redirect back.""" NAME = 'pixelfed' LABEL = 'Pixelfed' DEFAULT_SCOPE = 'read' APP_CLASS = PixelfedApp @classmethod def _version_ok(cls, version): return 'Pixelfed' in version
[docs]class CallbackHandler(mastodon.CallbackHandler): """The OAuth callback. Fetches an access token and stores it.""" AUTH_CLASS = PixelfedAuth