Files
soul_diary/soul_diary/ui/app/middleware.py
2023-12-14 15:36:45 +03:00

23 lines
699 B
Python

import flet
from flet_route import Basket, Params
from soul_diary.ui.app.local_storage import LocalStorage
from soul_diary.ui.app.models import BackendType
from soul_diary.ui.app.routes import AUTH, SENSE_LIST
async def middleware(page: flet.Page, params: Params, basket: Basket):
local_storage = LocalStorage(client_storage=page.client_storage)
auth_data = await local_storage.get_auth_data()
# await local_storage._client_storage.clear_async()
if auth_data is None:
await page.go_async(AUTH)
return
if auth_data.backend not in BackendType:
await page.go_async(AUTH)
return
if page.route == AUTH:
await page.go_async(SENSE_LIST)