pocketbase/pocketbase/stores/base_auth_store.py
perfalle 10496553ed
update to pocketbase version 0.8.0-rc2 (#4)
update to pocketbase version 0.8.0-rc1

fixed flake8 errors,
but there are still remaining errors:
F401 ... imported but unused
E501 line too long (... > 79 characters)
E722 do not use bare 'except'
2022-11-08 16:50:38 +01:00

45 lines
1.2 KiB
Python

from __future__ import annotations
from abc import ABC
from pocketbase.models.admin import Admin
from pocketbase.models.record import Record
class BaseAuthStore(ABC):
"""
Base AuthStore class that is intended to be extended by all other
PocketBase AuthStore implementations.
"""
base_token: str
base_model: Record | Admin | None
def __init__(
self, base_token: str = "", base_model: Record | Admin | None = None
) -> None:
super().__init__()
self.base_token = base_token
self.base_model = base_model
@property
def token(self) -> str | None:
"""Retrieves the stored token (if any)."""
return self.base_token
@property
def model(self) -> Record | Admin | None:
"""Retrieves the stored model data (if any)."""
return self.base_model
def save(self, token: str = "", model: Record | Admin | None = None) -> None:
"""Saves the provided new token and model data in the auth store."""
self.base_token = token if token else ""
self.base_model = model if model else None
def clear(self) -> None:
"""Removes the stored token and model data form the auth store."""
self.base_token = None
self.base_model = None