"""Neo4j queries for product contributors and participations.""" from typing import Any from ddtrace import tracer from neo4j import Session from contributor.queries.neo4j import product_participations get_label_participants_by_product_ids = ( product_participations.get_label_participants_by_product_ids ) get_product_participations_by_label_participant_uuid = ( product_participations.get_product_participations_by_label_participant_uuid ) @tracer.wrap() def get_by_product_id( session: Session, product_id: int, profile_ids: list[int], is_admin: bool = False, ) -> dict[str, Any] | None: return product_participations.get_by_product_id( session=session, product_id=product_id, profile_ids=profile_ids, is_admin=is_admin, ) @tracer.wrap() def get_by_product_ids( session: Session, product_ids: list[int], profile_ids: list[int], is_admin: bool = False, ) -> list[dict[str, Any]]: return product_participations.get_by_product_ids( session=session, product_ids=product_ids, profile_ids=profile_ids, is_admin=is_admin, ) @tracer.wrap() def get_by_label_participant_uuid( session: Session, uuid: str, profile_ids: list[int], is_admin: bool = False, ) -> dict[str, Any] | None: return product_participations.get_by_label_participant_uuid( session=session, uuid=uuid, profile_ids=profile_ids, is_admin=is_admin, )