Files
2026-03-11 09:39:41 +01:00

36 lines
1.1 KiB
Python

from __future__ import annotations
from fastapi import APIRouter, Depends
from backend.app.api.schemas import (
BookmarkCreateRequest,
BookmarkDeleteResponse,
BookmarkItem,
BookmarkListResponse,
)
from backend.app.dependencies import get_bookmark_service
from backend.app.services.bookmark_service import BookmarkService
router = APIRouter(prefix="/bookmarks")
@router.post("", response_model=BookmarkItem)
async def create_bookmark(
request: BookmarkCreateRequest,
service: BookmarkService = Depends(get_bookmark_service),
) -> BookmarkItem:
return service.create_bookmark(path=request.path, label=request.label)
@router.get("", response_model=BookmarkListResponse)
async def list_bookmarks(service: BookmarkService = Depends(get_bookmark_service)) -> BookmarkListResponse:
return service.list_bookmarks()
@router.delete("/{bookmark_id}", response_model=BookmarkDeleteResponse)
async def delete_bookmark(
bookmark_id: int,
service: BookmarkService = Depends(get_bookmark_service),
) -> BookmarkDeleteResponse:
return service.delete_bookmark(bookmark_id)