grants.auto_login
User Objects
class User(BaseModel)
A user model
StoredUser Objects
class StoredUser(BaseModel)
A wrapping cl
UserStore Objects
@runtime_checkable
class UserStore(Protocol)
A protocol for a user store
This protocol is implemented by the user store. It can be used to type hint a user store. This is used by the AutoLoginGrant to store the user.
aget_default_user
async def aget_default_user() -> Optional[StoredUser]
Gets the default user
Returns
Optional[StoredUser] A stored user, with the token and the user
aput_default_user
async def aput_default_user(user: Optional[StoredUser]) -> None
Stores the default user
Parameters
user : Optional[StoredUser] A stored user, with the token and the user, if None, the user should be deleted
AutoLoginWidget Objects
@runtime_checkable
class AutoLoginWidget(Protocol)
A protocol for a login widget
This protocol is implemented by the login widget. It can be used to type hint a login widget. This is used by the AutoLoginGrant to show the login widget and ask the user if they want to save the user.
ashould_we_save
async def ashould_we_save(store: StoredUser) -> bool
Should ask the user if we should save the user
AutoLoginGrant Objects
class AutoLoginGrant(BaseGrant)
A grant that uses a Qt login screen to authenticate the user.
The user is presented with a login screen that allows them to select a user from a list of previously logged in users. If the user is not in the list, they can click a button to start the login flow.
store
this is the login widget (protocol)
widget
this is the login widget (protocol)
grant
The grant to use for the login flow.
afetch_token
async def afetch_token(request: TokenRequest) -> Token
Fetches the token
This function will only delegate to the grant if the user has not previously logged in (aka there is no token in the storage) Or if the force_refresh flag is set.
Arguments:
force_refresh
bool, optional - description. Defaults to False.
Raises:
e
- description
Returns:
Token
- description
Config Objects
class Config()
Pydantic config