"""
Generic container concept — replaces hard-wired post_id FKs
with container_type + container_id soft references.
"""
from __future__ import annotations


class ContainerType:
    PAGE = "page"
    # Future: GROUP = "group", MARKET = "market", etc.


def container_filter(model, container_type: str, container_id: int):
    """Return SQLAlchemy filter clauses for a container reference."""
    return [model.container_type == container_type, model.container_id == container_id]


def content_filter(model, content_type: str, content_id: int):
    """Return SQLAlchemy filter clauses for a content reference (e.g. CalendarEntryContent)."""
    return [model.content_type == content_type, model.content_id == content_id]
