diff --git a/mealie/app.py b/mealie/app.py index 63434b445ecf..069d0f7e3163 100644 --- a/mealie/app.py +++ b/mealie/app.py @@ -17,18 +17,14 @@ from mealie.services.scheduler import SchedulerRegistry, SchedulerService, tasks settings = get_app_settings() -description = f""" +description = """ Mealie is a web application for managing your recipes, meal plans, and shopping lists. This is the Restful API interactive documentation that can be used to explore the API. If you're justing getting started with the API and want to get started quickly, you can use the -[API Usage | Mealie Docs](https://nightly.mealie.io/documentation/getting-started/api-usage/) +[API Usage | Mealie Docs](https://docs.mealie.io/documentation/getting-started/api-usage/) as a reference for how to get started. -As of this release {APP_VERSION}, Mealie is still in rapid development and therefore some of these APIs may -change from version to version. - - If you have any questions or comments about mealie, please use the discord server to talk to the developers or other community members. If you'd like to file an issue, please use the [GitHub Issue Tracker | Mealie](https://github.com/mealie-recipes/mealie/issues/new/choose) @@ -36,10 +32,9 @@ community members. If you'd like to file an issue, please use the ## Helpful Links - [Home Page](https://mealie.io) -- [Documentation](https://nightly.mealie.io) +- [Documentation](https://docs.mealie.io) - [Discord](https://discord.gg/QuStdQGSGK) - [Demo](https://demo.mealie.io) -- [Beta](https://demo.mealie.io) """ logger = get_logger() diff --git a/mealie/routes/_base/base_controllers.py b/mealie/routes/_base/base_controllers.py index b0420870257c..5ef1678cd389 100644 --- a/mealie/routes/_base/base_controllers.py +++ b/mealie/routes/_base/base_controllers.py @@ -131,7 +131,7 @@ class BaseCrudController(BaseUserController): Base class for all CRUD controllers to facilitate common CRUD functions. """ - event_bus: EventBusService = Depends(EventBusService.create) + event_bus: EventBusService = Depends(EventBusService.as_dependency) def publish_event(self, event_type: EventTypes, document_data: EventDocumentDataBase, message: str = "") -> None: self.event_bus.dispatch( diff --git a/mealie/routes/admin/admin_analytics.py b/mealie/routes/admin/admin_analytics.py index 14691d5be6ea..f9b571f792ba 100644 --- a/mealie/routes/admin/admin_analytics.py +++ b/mealie/routes/admin/admin_analytics.py @@ -6,7 +6,7 @@ from mealie.routes._base import BaseAdminController, controller from mealie.schema.analytics.analytics import MealieAnalytics from mealie.services.analytics.service_analytics import AnalyticsService -router = APIRouter(prefix="/analytics") +router = APIRouter(prefix="/analytics", include_in_schema=False) # deprecated - use statistics route instead @controller(router) diff --git a/mealie/routes/groups/controller_group_notifications.py b/mealie/routes/groups/controller_group_notifications.py index fe3576ed6b43..1162f925047c 100644 --- a/mealie/routes/groups/controller_group_notifications.py +++ b/mealie/routes/groups/controller_group_notifications.py @@ -35,7 +35,7 @@ router = APIRouter( @controller(router) class GroupEventsNotifierController(BaseUserController): - event_bus: EventBusService = Depends(EventBusService.create) + event_bus: EventBusService = Depends(EventBusService.as_dependency) @cached_property def repo(self): diff --git a/mealie/routes/spa/__init__.py b/mealie/routes/spa/__init__.py index 3ec82eaea248..9ce813c1d047 100644 --- a/mealie/routes/spa/__init__.py +++ b/mealie/routes/spa/__init__.py @@ -221,6 +221,6 @@ def mount_spa(app: FastAPI): global __contents __contents = pathlib.Path(__app_settings.STATIC_FILES).joinpath("index.html").read_text() - app.get("/g/{group_slug}/r/{recipe_slug}")(serve_recipe_with_meta) - app.get("/g/{group_slug}/shared/r/{token_id}")(serve_shared_recipe_with_meta) + app.get("/g/{group_slug}/r/{recipe_slug}", include_in_schema=False)(serve_recipe_with_meta) + app.get("/g/{group_slug}/shared/r/{token_id}", include_in_schema=False)(serve_shared_recipe_with_meta) app.mount("/", SPAStaticFiles(directory=__app_settings.STATIC_FILES, html=True), name="spa") diff --git a/mealie/routes/users/registration.py b/mealie/routes/users/registration.py index dd30684edc99..4d66b55e3b84 100644 --- a/mealie/routes/users/registration.py +++ b/mealie/routes/users/registration.py @@ -15,7 +15,7 @@ router = APIRouter(prefix="/register") @controller(router) class RegistrationController(BasePublicController): - event_bus: EventBusService = Depends(EventBusService.create) + event_bus: EventBusService = Depends(EventBusService.as_dependency) @router.post("", response_model=UserOut, status_code=status.HTTP_201_CREATED) def register_new_user(self, data: CreateUserRegistration): diff --git a/mealie/routes/validators/__init__.py b/mealie/routes/validators/__init__.py index a133c15a713f..b90243b152f4 100644 --- a/mealie/routes/validators/__init__.py +++ b/mealie/routes/validators/__init__.py @@ -6,4 +6,4 @@ prefix = "/validators" router = APIRouter() -router.include_router(validators.router, prefix=prefix, tags=["Validators"]) +router.include_router(validators.router, prefix=prefix, tags=["Validators"], include_in_schema=False) diff --git a/mealie/services/event_bus_service/event_bus_service.py b/mealie/services/event_bus_service/event_bus_service.py index c97d73952bad..d37d3ce090ca 100644 --- a/mealie/services/event_bus_service/event_bus_service.py +++ b/mealie/services/event_bus_service/event_bus_service.py @@ -1,4 +1,4 @@ -from fastapi import BackgroundTasks, Depends +from fastapi import BackgroundTasks, Depends, Query from pydantic import UUID4 from sqlalchemy.orm.session import Session @@ -84,5 +84,11 @@ class EventBusService: listener.publish_to_subscribers(event, subscribers) @classmethod - def create(cls, bg: BackgroundTasks, session=Depends(generate_session), group_id: UUID4 | None = None): + def as_dependency( + cls, + bg: BackgroundTasks, + session=Depends(generate_session), + group_id: UUID4 | None = Query(None, include_in_schema=False), + ): + """Convenience method to use as a dependency in FastAPI routes""" return cls(bg, session, group_id)