# -*- coding:utf-8 -*- from flask import current_app from . import routing class OAuth2(object): def __init__(self, app=None, url_prefix=None): self._app = app if app is not None: self.init_app(app, url_prefix) @staticmethod def init_app(app, url_prefix=None): # Configuration defaults app.config.setdefault('OAUTH2_GRANT_TYPE', 'authorization_code') app.config.setdefault('OAUTH2_RESPONSE_TYPE', 'code') app.config.setdefault('OAUTH2_AFTER_LOGIN', '/') app.config.setdefault('OIDC_GRANT_TYPE', 'authorization_code') app.config.setdefault('OIDC_RESPONSE_TYPE', 'code') app.config.setdefault('OIDC_AFTER_LOGIN', '/') # Register Blueprint app.register_blueprint(routing.blueprint, url_prefix=url_prefix) @property def app(self): return self._app or current_app