globals.py 661 B

12345678910111213141516171819202122
  1. from __future__ import annotations
  2. import asyncio
  3. import logging
  4. from typing import TYPE_CHECKING, Awaitable, Callable, List, Union
  5. if TYPE_CHECKING:
  6. import justpy as jp
  7. from starlette.applications import Starlette
  8. from .config import Config
  9. from .elements.page import Page
  10. app: 'Starlette'
  11. config: 'Config'
  12. page_stack: List['Page'] = []
  13. view_stack: List['jp.HTMLBaseComponent'] = []
  14. tasks: List[asyncio.tasks.Task] = []
  15. log: logging.Logger = logging.getLogger('nicegui')
  16. connect_handlers: List[Union[Callable, Awaitable]] = []
  17. startup_handlers: List[Union[Callable, Awaitable]] = []
  18. shutdown_handlers: List[Union[Callable, Awaitable]] = []