You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
39 lines
1.2 KiB
39 lines
1.2 KiB
from pathlib import Path |
|
from typing import Optional, Union |
|
|
|
from fastapi import FastAPI |
|
|
|
from nicegui import globals # pylint: disable=redefined-builtin |
|
from nicegui.helpers import set_storage_secret |
|
from nicegui.language import Language |
|
from nicegui.nicegui import handle_shutdown, handle_startup |
|
|
|
|
|
def run_with( |
|
app: FastAPI, *, |
|
title: str = 'NiceGUI', |
|
viewport: str = 'width=device-width, initial-scale=1', |
|
favicon: Optional[Union[str, Path]] = None, |
|
dark: Optional[bool] = False, |
|
language: Language = 'en-US', |
|
binding_refresh_interval: float = 0.1, |
|
mount_path: str = '/', |
|
tailwind: bool = True, |
|
prod_js: bool = True, |
|
storage_secret: Optional[str] = None, |
|
) -> None: |
|
globals.ui_run_has_been_called = True |
|
globals.title = title |
|
globals.viewport = viewport |
|
globals.favicon = favicon |
|
globals.dark = dark |
|
globals.language = language |
|
globals.binding_refresh_interval = binding_refresh_interval |
|
globals.tailwind = tailwind |
|
globals.prod_js = prod_js |
|
|
|
set_storage_secret(storage_secret) |
|
app.on_event('startup')(lambda: handle_startup(with_welcome_message=False)) |
|
app.on_event('shutdown')(handle_shutdown) |
|
|
|
app.mount(mount_path, globals.app)
|
|
|