2024-08-01 22:57:35 +08:00
|
|
|
import logging
|
|
|
|
|
|
|
|
from felicity.core.events import subscribe
|
|
|
|
|
|
|
|
logging.basicConfig(level=logging.INFO)
|
|
|
|
logger = logging.getLogger(__name__)
|
|
|
|
|
|
|
|
|
2024-09-02 00:49:10 +08:00
|
|
|
def change_tracker(action: str, table_name: str, metadata):
|
2024-09-20 22:34:42 +08:00
|
|
|
# logger.info(f"Event fired: {action}:{table_name} --> NotUsed")
|
2024-08-02 23:29:19 +08:00
|
|
|
if not metadata:
|
|
|
|
return
|
|
|
|
|
2024-08-01 22:57:35 +08:00
|
|
|
if action == "after-update":
|
2024-08-02 23:29:19 +08:00
|
|
|
metadata = {
|
|
|
|
"uid": metadata["uid"],
|
|
|
|
**metadata.get("state_after")
|
2024-08-01 22:57:35 +08:00
|
|
|
}
|
|
|
|
|
2024-09-20 22:34:42 +08:00
|
|
|
# Hook thinks like meilisearch here etc
|
2024-09-02 00:49:10 +08:00
|
|
|
# SomeHandler().on_event(action, table_name, metadata)
|
2024-08-01 22:57:35 +08:00
|
|
|
|
|
|
|
|
|
|
|
def init_entity_tracker_events():
|
2024-09-02 00:49:10 +08:00
|
|
|
subscribe("entity-tracker", change_tracker)
|