|
@ -1,6 +1,6 @@ |
|
|
from typing import Union |
|
|
from typing import Union |
|
|
|
|
|
|
|
|
from pydantic import BaseModel, EmailStr |
|
|
from pydantic import EmailStr |
|
|
from sqlmodel import Field, Relationship, SQLModel |
|
|
from sqlmodel import Field, Relationship, SQLModel |
|
|
|
|
|
|
|
|
|
|
|
|
|
@ -29,11 +29,12 @@ class UserUpdate(UserBase): |
|
|
password: Union[str, None] = None |
|
|
password: Union[str, None] = None |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
class UserUpdateMe(BaseModel): |
|
|
class UserUpdateMe(SQLModel): |
|
|
password: Union[str, None] = None |
|
|
password: Union[str, None] = None |
|
|
full_name: Union[str, None] = None |
|
|
full_name: Union[str, None] = None |
|
|
email: Union[EmailStr, None] = None |
|
|
email: Union[EmailStr, None] = None |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
# Database model, database table inferred from class name |
|
|
# Database model, database table inferred from class name |
|
|
class User(UserBase, table=True): |
|
|
class User(UserBase, table=True): |
|
|
id: Union[int, None] = Field(default=None, primary_key=True) |
|
|
id: Union[int, None] = Field(default=None, primary_key=True) |
|
@ -78,21 +79,21 @@ class ItemOut(ItemBase): |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
# Generic message |
|
|
# Generic message |
|
|
class Message(BaseModel): |
|
|
class Message(SQLModel): |
|
|
message: str |
|
|
message: str |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
# JSON payload containing access token |
|
|
# JSON payload containing access token |
|
|
class Token(BaseModel): |
|
|
class Token(SQLModel): |
|
|
access_token: str |
|
|
access_token: str |
|
|
token_type: str = "bearer" |
|
|
token_type: str = "bearer" |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
# Contents of JWT token |
|
|
# Contents of JWT token |
|
|
class TokenPayload(BaseModel): |
|
|
class TokenPayload(SQLModel): |
|
|
sub: Union[int, None] = None |
|
|
sub: Union[int, None] = None |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
class NewPassword(BaseModel): |
|
|
class NewPassword(SQLModel): |
|
|
token: str |
|
|
token: str |
|
|
new_password: str |
|
|
new_password: str |
|
|