47 lines
1,001 B
Python
47 lines
1,001 B
Python
from flask_sqlalchemy import SQLAlchemy, orm
|
|
import uuid
|
|
|
|
db = SQLAlchemy() # type: SQLAlchemy
|
|
|
|
|
|
def generate_uuid():
|
|
return str(uuid.uuid4())
|
|
|
|
|
|
class OAuth(db.Model):
|
|
token = db.Column(db.Text, primary_key=True)
|
|
provider = db.Column(db.Text)
|
|
provider_username = db.Column(db.Text)
|
|
|
|
|
|
class User(db.Model):
|
|
id = db.Column(db.String(length=36), primary_key=True, default=generate_uuid)
|
|
username = db.Column(db.String, unique=True)
|
|
|
|
|
|
class Client(db.Model):
|
|
key = db.Column(db.Text, primary_key=True)
|
|
value = db.Column(db.Text)
|
|
|
|
|
|
class AuthzCode(db.Model):
|
|
key = db.Column(db.Text, primary_key=True)
|
|
value = db.Column(db.Text)
|
|
|
|
|
|
class AccessToken(db.Model):
|
|
key = db.Column(db.Text, primary_key=True)
|
|
value = db.Column(db.Text)
|
|
|
|
|
|
class RefreshToken(db.Model):
|
|
key = db.Column(db.Text, primary_key=True)
|
|
value = db.Column(db.Text)
|
|
|
|
|
|
class SubjectIdentifier(db.Model):
|
|
key = db.Column(db.Text, primary_key=True)
|
|
value = db.Column(db.Text)
|
|
|
|
|