Fire automation events across API routers
FlowDeck CI / lint (push) Failing after 1m12s
FlowDeck CI / test (push) Failing after 3h3m3s
FlowDeck CI / docker (push) Skipped

This commit is contained in:
2026-09-21 20:30:05 -04:00
parent 189ed5bbca
commit e0237e576f
8 changed files with 202 additions and 2 deletions
+35 -2
View File
@@ -561,6 +561,11 @@ async def update_page_api(request: Request, page_id: int):
"icon": icon,
"properties": props,
})
await fire_event("collection.page.updated", {
"page_id": page_id,
"collection_id": existing["collection_id"],
"title": title,
})
# Notify newly assigned people (person properties) — v5.8.0.
from app.services.notifications import notify_assignment
user = _current_user(request)
@@ -589,6 +594,10 @@ async def delete_page_api(request: Request, page_id: int):
"collection_id": existing["collection_id"],
"title": existing["title"],
})
await fire_event("collection.page.deleted", {
"page_id": page_id,
"collection_id": existing["collection_id"],
})
return {"id": page_id, "status": "deleted"}
@@ -1185,8 +1194,15 @@ async def save_view_as(request: Request, collection_id: int):
(collection_id, name, view_type, json.dumps(config), max_pos, user_id),
)
conn.commit()
new_view_id = cur.lastrowid
return {"id": cur.lastrowid, "name": name, "view_type": view_type,
await fire_event("collection.view.created", {
"view_id": new_view_id,
"collection_id": collection_id,
"name": name,
"view_type": view_type,
})
return {"id": new_view_id, "name": name, "view_type": view_type,
"config_json": json.dumps(config), "created_by": user_id, "status": "saved"}
@@ -1256,8 +1272,15 @@ async def duplicate_view_api(request: Request, view_id: int):
existing["config_json"], max_pos, user_id),
)
conn.commit()
dup_view_id = cur.lastrowid
return {"id": cur.lastrowid, "name": name, "view_type": existing["view_type"],
await fire_event("collection.view.created", {
"view_id": dup_view_id,
"collection_id": existing["collection_id"],
"name": name,
"view_type": existing["view_type"],
})
return {"id": dup_view_id, "name": name, "view_type": existing["view_type"],
"status": "duplicated"}
@@ -1319,6 +1342,11 @@ async def create_sub_item(request: Request, collection_id: int, page_id: int):
"title": title,
"properties": body.get("properties", {}),
})
await fire_event("collection.page.created", {
"page_id": new_id,
"collection_id": collection_id,
"title": title,
})
return {"id": new_id, "title": title, "parent_id": page_id, "status": "created"}
@@ -2485,4 +2513,9 @@ async def create_page_api(request: Request, collection_id: int):
"icon": icon,
"properties": property_values,
})
await fire_event("collection.page.created", {
"page_id": page_id,
"collection_id": collection_id,
"title": title,
})
return {"id": page_id, "title": title, "status": "created"}