From 199bda2e0fd89d527591d514060dfde9d6d60cc5 Mon Sep 17 00:00:00 2001 From: bahmcloud Date: Thu, 15 Jan 2026 06:11:34 +0000 Subject: [PATCH] =?UTF-8?q?custom=5Fcomponents/bahmcloud=5Fstore/custom=5F?= =?UTF-8?q?repo=5Fview.py=20hinzugef=C3=BCgt?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../bahmcloud_store/custom_repo_view.py | 25 +++++++++++++++++++ 1 file changed, 25 insertions(+) create mode 100644 custom_components/bahmcloud_store/custom_repo_view.py diff --git a/custom_components/bahmcloud_store/custom_repo_view.py b/custom_components/bahmcloud_store/custom_repo_view.py new file mode 100644 index 0000000..348b4b2 --- /dev/null +++ b/custom_components/bahmcloud_store/custom_repo_view.py @@ -0,0 +1,25 @@ +from __future__ import annotations + +from homeassistant.components.http import HomeAssistantView + +from .core import BCSCore + + +class BCSCustomRepoView(HomeAssistantView): + """ + DELETE /api/bcs/custom_repo?id=... + """ + requires_auth = True + name = "bcs_custom_repo_api" + url = "/api/bcs/custom_repo" + + def __init__(self, core: BCSCore) -> None: + self.core = core + + async def delete(self, request): + repo_id = request.query.get("id", "").strip() + if not repo_id: + return self.json({"error": "id missing"}, status_code=400) + + await self.core.remove_custom_repo(repo_id) + return self.json({"ok": True})